diff --git a/cmd/hyprpanel-client/idle_inhibitor.go b/cmd/hyprpanel-client/idle_inhibitor.go
new file mode 100644
index 0000000..1139c48
--- /dev/null
+++ b/cmd/hyprpanel-client/idle_inhibitor.go
@@ -0,0 +1,357 @@
+package main
+
+import (
+ "encoding/xml"
+ "errors"
+
+ "github.com/jwijenbergh/puregotk/v4/gdk"
+ "github.com/jwijenbergh/puregotk/v4/gio"
+ "github.com/jwijenbergh/puregotk/v4/glib"
+ "github.com/jwijenbergh/puregotk/v4/gtk"
+ configv1 "github.com/pdf/hyprpanel/proto/hyprpanel/config/v1"
+ eventv1 "github.com/pdf/hyprpanel/proto/hyprpanel/event/v1"
+ modulev1 "github.com/pdf/hyprpanel/proto/hyprpanel/module/v1"
+ "github.com/pdf/hyprpanel/style"
+)
+
+const (
+ inhibitTargetIdleLabel = `Lock`
+ inhibitTargetSleepLabel = `Suspend`
+ inhibitTargetShutdownLabel = `Shutdown`
+ idleInhibitorActionNamespace = `idleinhibitor`
+)
+
+type idleInhibitor struct {
+ *refTracker
+ *api
+ cfg *modulev1.IdleInhibitor
+ eventCh chan *eventv1.Event
+ quitCh chan struct{}
+
+ actions map[eventv1.InhibitTarget]*gio.SimpleAction
+ active bool
+ icon *gtk.Image
+ iconContainer *gtk.CenterBox
+ container *gtk.Box
+ menuRefs *refTracker
+ actionGroup *gio.SimpleActionGroup
+ menu *gtk.PopoverMenu
+}
+
+func (i *idleInhibitor) build(container *gtk.Box) error {
+
+ i.container = gtk.NewBox(i.orientation, 0)
+ i.AddRef(i.container.Unref)
+ i.container.SetName(style.IdleInhibitorID)
+ i.container.AddCssClass(style.ModuleClass)
+
+ icon, err := createIcon(
+ `inhibit`,
+ int(i.cfg.IconSize),
+ i.cfg.IconSymbolic,
+ nil,
+ )
+ if err != nil {
+ return err
+ }
+ i.icon = icon
+ i.iconContainer = gtk.NewCenterBox()
+ i.AddRef(i.iconContainer.Unref)
+ i.iconContainer.SetCenterWidget(&i.icon.Widget)
+ i.container.SetTooltipMarkup(`Idle inhibitor is inactive`)
+ i.container.Append(&i.iconContainer.Widget)
+
+ if err := i.buildMenu(); err != nil {
+ return err
+ }
+
+ clickCb := func(ctrl gtk.GestureClick, nPress int, x, y float64) {
+ switch ctrl.GetCurrentButton() {
+ case uint(gdk.BUTTON_PRIMARY):
+ defaultTarget := eventv1.InhibitTarget_INHIBIT_TARGET_IDLE
+ if v := i.cfg.DefaultTarget; v > 1 {
+ defaultTarget = eventv1.InhibitTarget(v)
+ }
+ if !i.active {
+ if err := i.host.IdleInhibitorInhibit(defaultTarget); err != nil {
+ log.Warn(`error uninhibiting target`, defaultTarget, err)
+ }
+ return
+ }
+ for t, a := range i.actions {
+ if a.GetState().GetBoolean() {
+ if err := i.host.IdleInhibitorUninhibit(t); err != nil {
+ log.Warn(`error uninhibiting target`, t, err)
+ }
+ }
+ }
+ case uint(gdk.BUTTON_SECONDARY):
+ if i.menu != nil {
+ i.menu.SetPointingTo(nil)
+ i.menu.Popup()
+ }
+ }
+ }
+
+ i.AddRef(func() {
+ unrefCallback(&clickCb)
+ })
+
+ clickController := gtk.NewGestureClick()
+ i.AddRef(clickController.Unref)
+ clickController.SetButton(0)
+ clickController.ConnectReleased(&clickCb)
+ i.container.AddController(&clickController.EventController)
+
+ container.Append(&i.container.Widget)
+
+ go i.watch()
+
+ return nil
+}
+
+func (i *idleInhibitor) events() chan<- *eventv1.Event {
+ return i.eventCh
+}
+
+func (i *idleInhibitor) close(container *gtk.Box) {
+ defer i.Unref()
+ container.Remove(&i.container.Widget)
+ if i.icon != nil {
+ i.icon.Unref()
+ }
+}
+
+func (i *idleInhibitor) watch() {
+ for {
+ select {
+ case <-i.quitCh:
+ return
+ default:
+ }
+ select {
+ case <-i.quitCh:
+ return
+ case evt := <-i.eventCh:
+ switch evt.Kind {
+ case eventv1.EventKind_EVENT_KIND_IDLE_INHIBITOR_INHIBIT, eventv1.EventKind_EVENT_KIND_IDLE_INHIBITOR_UNINHIBIT:
+ data := &eventv1.IdleInhibitorValue{}
+ if !evt.Data.MessageIs(data) {
+ log.Warn(`Invalid event`, `module`, style.AudioID, `evt`, evt)
+ continue
+ }
+ if err := evt.Data.UnmarshalTo(data); err != nil {
+ log.Warn(`Invalid event`, `module`, style.AudioID, `err`, err, `evt`, evt)
+ continue
+ }
+ var cb glib.SourceFunc
+ cb = func(uintptr) bool {
+ defer unrefCallback(&cb)
+ if evt.Kind == eventv1.EventKind_EVENT_KIND_IDLE_INHIBITOR_INHIBIT {
+ if err := i.inhibit(data.Target); err != nil {
+ log.Warn(`Failed to toggle idle inhibitor`, `err`, err)
+ }
+ } else {
+ if err := i.uninhibit(data.Target); err != nil {
+ log.Warn(`Failed to toggle idle inhibitor`, `err`, err)
+ }
+ }
+ return false
+ }
+ glib.IdleAdd(&cb, 0)
+ }
+ }
+ }
+
+}
+
+func (i *idleInhibitor) inhibit(target eventv1.InhibitTarget) error {
+ if i.icon != nil {
+ old := i.icon
+ defer old.Unref()
+ i.icon = nil
+ }
+
+ icon, err := createIcon(
+ `inhibit-active`,
+ int(i.cfg.IconSize),
+ i.cfg.IconSymbolic,
+ nil,
+ )
+ if err != nil {
+ return err
+ }
+ i.container.SetTooltipMarkup(`Idle inhibitor is active`)
+ i.icon = icon
+ i.iconContainer.SetCenterWidget(&i.icon.Widget)
+ i.actions[target].SetState(glib.NewVariantBoolean(true))
+ i.active = true
+ return nil
+}
+
+func (i *idleInhibitor) uninhibit(target eventv1.InhibitTarget) error {
+ toggleIcon := true
+ for t, a := range i.actions {
+ active := a.GetState().GetBoolean()
+ if t == target && active {
+ a.SetState(glib.NewVariantBoolean(false))
+ } else if active {
+ toggleIcon = false
+ }
+ }
+
+ if !toggleIcon {
+ return nil
+ }
+
+ if i.icon != nil {
+ old := i.icon
+ defer old.Unref()
+ i.icon = nil
+ }
+ icon, err := createIcon(
+ `inhibit`,
+ int(i.cfg.IconSize),
+ i.cfg.IconSymbolic,
+ nil,
+ )
+ if err != nil {
+ return err
+ }
+ i.container.SetTooltipMarkup(`Idle inhibitor is inactive`)
+ i.icon = icon
+ i.iconContainer.SetCenterWidget(&i.icon.Widget)
+ i.actions[target].SetState(glib.NewVariantBoolean(false))
+ i.active = false
+ return nil
+}
+
+func (i *idleInhibitor) buildMenu() error {
+ i.actionGroup = gio.NewSimpleActionGroup()
+ i.AddRef(i.actionGroup.Unref)
+ id, menuXML, err := i.buildMenuXML()
+ if err != nil {
+ return err
+ }
+
+ builder := gtk.NewBuilderFromString(string(menuXML), len(menuXML))
+ defer builder.Unref()
+ menuObj := builder.GetObject(id)
+ if menuObj == nil {
+ return errors.New(`menu object not found`)
+ }
+ defer menuObj.Unref()
+ if menuObj != nil {
+ menuModel := &gio.MenuModel{}
+ menuObj.Cast(menuModel)
+ i.menu = gtk.NewPopoverMenuFromModel(menuModel)
+ i.AddRef(i.menu.Unref)
+ switch i.panelCfg.Edge {
+ case configv1.Edge_EDGE_TOP:
+ i.menu.SetPosition(gtk.PosBottomValue)
+ case configv1.Edge_EDGE_RIGHT:
+ i.menu.SetPosition(gtk.PosLeftValue)
+ case configv1.Edge_EDGE_BOTTOM:
+ i.menu.SetPosition(gtk.PosTopValue)
+ case configv1.Edge_EDGE_LEFT:
+ i.menu.SetPosition(gtk.PosRightValue)
+ }
+ }
+
+ i.menu.SetHasArrow(true)
+ i.menu.SetAutohide(true)
+ i.menu.SetParent(&i.container.Widget)
+ i.container.InsertActionGroup(idleInhibitorActionNamespace, i.actionGroup)
+
+ return nil
+}
+
+func (i *idleInhibitor) buildMenuXML() (string, []byte, error) {
+ x := menuXMLInterface{
+ Menu: &menuXMLMenu{
+ ID: `idle-inhibitor-menu`,
+ },
+ }
+ section := new(menuXMLMenuSection)
+ targets := []struct {
+ value eventv1.InhibitTarget
+ label string
+ }{
+ {
+ value: eventv1.InhibitTarget_INHIBIT_TARGET_IDLE,
+ label: `Lock`,
+ },
+ {
+ value: eventv1.InhibitTarget_INHIBIT_TARGET_SLEEP,
+ label: `Suspend`,
+ },
+ {
+ value: eventv1.InhibitTarget_INHIBIT_TARGET_SHUTDOWN,
+ label: `Shutdown`,
+ },
+ }
+ for _, t := range targets {
+ section.Items = append(section.Items, &menuXMLItem{
+ Attributes: []*menuXMLAttribute{
+ {
+ Name: `label`,
+ Value: t.label,
+ },
+ {
+ Name: `action`,
+ Value: idleInhibitorActionNamespace + `.` + t.label,
+ },
+ },
+ })
+ cb := func(a gio.SimpleAction, param uintptr) {
+ enabled := a.GetState().GetBoolean()
+ if enabled {
+ if err := i.host.IdleInhibitorUninhibit(t.value); err != nil {
+ log.Warn(`Failed toggling idle inhibitor`, `target`, t, `err`, err)
+ return
+ }
+ } else {
+ if err := i.host.IdleInhibitorInhibit(t.value); err != nil {
+ log.Warn(`Failed toggling idle inhibitor`, `target`, t, `err`, err)
+ return
+ }
+ }
+ }
+ act := gio.NewSimpleActionStateful(t.label, nil, glib.NewVariantBoolean(false))
+ act.ConnectActivate(&cb)
+ i.actionGroup.AddAction(act)
+ i.actions[t.value] = act
+ i.menuRefs.AddRef(func() {
+ unrefCallback(&cb)
+ })
+ }
+
+ x.Menu.Sections = append(x.Menu.Sections, section)
+
+ if len(x.Menu.Sections) == 0 {
+ return ``, nil, errors.New(`empty menu`)
+ }
+
+ b, err := xml.Marshal(x)
+ return x.Menu.ID, b, err
+}
+
+func newIdleInhibitor(cfg *modulev1.IdleInhibitor, a *api) *idleInhibitor {
+ i := &idleInhibitor{
+ cfg: cfg,
+ refTracker: newRefTracker(),
+ api: a,
+ eventCh: make(chan *eventv1.Event),
+ quitCh: make(chan struct{}),
+ menuRefs: newRefTracker(),
+ actions: make(map[eventv1.InhibitTarget]*gio.SimpleAction),
+ }
+ i.AddRef(func() {
+ close(i.quitCh)
+ close(i.eventCh)
+ if i.menuRefs != nil {
+ i.menuRefs.Unref()
+ }
+ })
+ return i
+}
diff --git a/cmd/hyprpanel-client/media_player.go b/cmd/hyprpanel-client/media_player.go
new file mode 100644
index 0000000..ec08b39
--- /dev/null
+++ b/cmd/hyprpanel-client/media_player.go
@@ -0,0 +1,350 @@
+package main
+
+import (
+ "github.com/jwijenbergh/puregotk/v4/gdk"
+ "github.com/jwijenbergh/puregotk/v4/gio"
+ "github.com/jwijenbergh/puregotk/v4/gtk"
+ configv1 "github.com/pdf/hyprpanel/proto/hyprpanel/config/v1"
+ eventv1 "github.com/pdf/hyprpanel/proto/hyprpanel/event/v1"
+ modulev1 "github.com/pdf/hyprpanel/proto/hyprpanel/module/v1"
+ "github.com/pdf/hyprpanel/style"
+)
+
+const mediaPlayerActionNamespace = `mediaplayer`
+
+type mediaPlayer struct {
+ *refTracker
+ *api
+ cfg *modulev1.MediaPlayer
+ eventCh chan *eventv1.Event
+ quitCh chan struct{}
+
+ titleLabel *gtk.Label
+ artistLabel *gtk.Label
+ playButton *gtk.Button
+ prevButton *gtk.Button
+ nextButton *gtk.Button
+ icon *gtk.Image
+ iconContainer *gtk.CenterBox
+ container *gtk.Box
+ menuRefs *refTracker
+ actionGroup *gio.SimpleActionGroup
+ popover *gtk.Popover
+}
+
+func (m *mediaPlayer) build(container *gtk.Box) error {
+ m.container = gtk.NewBox(m.orientation, 0)
+ m.AddRef(m.container.Unref)
+ m.container.SetName(style.MediaPlayerID)
+ m.container.AddCssClass(style.ModuleClass)
+
+ icon, err := createIcon(
+ `media-audio`,
+ int(m.cfg.IconSize),
+ m.cfg.IconSymbolic,
+ nil,
+ )
+ if err != nil {
+ return err
+ }
+ m.icon = icon
+ m.iconContainer = gtk.NewCenterBox()
+ m.AddRef(m.iconContainer.Unref)
+ m.iconContainer.SetCenterWidget(&icon.Widget)
+
+ m.container.Append(&m.iconContainer.Widget)
+
+ m.initActions()
+
+ if err := m.buildMenu(); err != nil {
+ return err
+ }
+
+ m.container.InsertActionGroup(mediaPlayerActionNamespace, m.actionGroup)
+
+ clickCb := func(ctrl gtk.GestureClick, nPress int, x, y float64) {
+ switch ctrl.GetCurrentButton() {
+ case uint(gdk.BUTTON_PRIMARY):
+ if err := m.host.MediaPlayerPlayPause(); err != nil {
+ log.Warn(`Media player play/pause failed`, `err`, err)
+ }
+ case uint(gdk.BUTTON_SECONDARY):
+ if m.popover != nil {
+ m.popover.SetPointingTo(nil)
+ m.popover.Popup()
+ }
+ case uint(gdk.BUTTON_MIDDLE):
+ if err := m.host.MediaPlayerStop(); err != nil {
+ log.Warn(`Media player stop failed`, `err`, err)
+ }
+ }
+ }
+
+ m.AddRef(func() {
+ unrefCallback(&clickCb)
+ })
+ clickController := gtk.NewGestureClick()
+ m.AddRef(clickController.Unref)
+ clickController.SetButton(0)
+ clickController.ConnectReleased(&clickCb)
+ m.container.AddController(&clickController.EventController)
+
+ scrollCb := func(_ gtk.EventControllerScroll, dx, dy float64) bool {
+ if err := m.host.MediaPlayerSeek(int64(dy - dy*2)); err != nil {
+ log.Warn(`Media player seek failed`, `err`, err)
+ }
+ return true
+ }
+
+ m.AddRef(func() {
+ unrefCallback(&scrollCb)
+ })
+
+ scrollController := gtk.NewEventControllerScroll(gtk.EventControllerScrollDiscreteValue | gtk.EventControllerScrollVerticalValue)
+ scrollController.ConnectScroll(&scrollCb)
+ m.container.AddController(&scrollController.EventController)
+ m.AddRef(scrollController.Unref)
+
+ container.Append(&m.container.Widget)
+
+ go m.watch()
+
+ return nil
+}
+
+func (m *mediaPlayer) watch() {
+ for {
+ select {
+ case <-m.quitCh:
+ return
+ default:
+ }
+ select {
+ case <-m.quitCh:
+ return
+ case evt := <-m.eventCh:
+ switch evt.Kind {
+ case eventv1.EventKind_EVENT_KIND_MEDIA_PLAYER_CHANGE:
+ log.Info(`Media player change`, evt.Kind)
+ data := &eventv1.MediaPlayerValueChange{}
+ if !evt.Data.MessageIs(data) {
+ log.Warn(`Invalid event`, `module`, style.AudioID, `evt`, evt)
+ continue
+ }
+ if err := evt.Data.UnmarshalTo(data); err != nil {
+ log.Warn(`Invalid event`, `module`, style.AudioID, `err`, err, `evt`, evt)
+ continue
+ }
+ m.update(data)
+ }
+ }
+ }
+}
+
+func (m *mediaPlayer) update(e *eventv1.MediaPlayerValueChange) {
+ log.Info(`Media player state`, e.State)
+ switch e.State {
+ case eventv1.MediaPlayerState_MEDIA_PLAYER_STATE_UNSPECIFIED:
+ m.setDefaultState(e)
+
+ case eventv1.MediaPlayerState_MEDIA_PLAYER_STATE_PLAYING:
+ m.setPlayingState(e)
+
+ case eventv1.MediaPlayerState_MEDIA_PLAYER_STATE_PAUSED:
+ m.setPausedState(e)
+
+ case eventv1.MediaPlayerState_MEDIA_PLAYER_STATE_STOPPED:
+ m.setDefaultState(e)
+ }
+}
+
+func (m *mediaPlayer) setDefaultState(e *eventv1.MediaPlayerValueChange) {
+ m.container.SetTooltipMarkup(`Nothing playing`)
+
+ m.titleLabel.SetLabel(`Nothing playing`)
+ m.artistLabel.SetLabel(``)
+
+ m.prevButton.SetSensitive(false)
+ m.playButton.SetSensitive(false)
+ m.nextButton.SetSensitive(false)
+
+ m.playButton.SetIconName(`media-playback-start-symbolic`)
+
+ m.icon.SetFromIconName(`media-audio-symbolic`)
+}
+
+func (m *mediaPlayer) setPlayingState(e *eventv1.MediaPlayerValueChange) {
+ title := valueOr(e.Title, `Unknown title`)
+ artist := valueOr(e.Artist, ``)
+
+ m.titleLabel.SetLabel(title)
+ m.artistLabel.SetLabel(artist)
+
+ m.container.SetTooltipMarkup(title)
+
+ m.prevButton.SetSensitive(e.CanGoPrevious)
+ m.nextButton.SetSensitive(e.CanGoNext)
+ m.playButton.SetSensitive(true)
+
+ m.playButton.SetIconName(`media-playback-pause-symbolic`)
+ m.icon.SetFromIconName(`mediaplayer-app-symbolic`)
+}
+
+func (m *mediaPlayer) setPausedState(e *eventv1.MediaPlayerValueChange) {
+ title := valueOr(e.Title, `Unknown title`)
+ artist := valueOr(e.Artist, ``)
+
+ m.titleLabel.SetLabel(title)
+ m.artistLabel.SetLabel(artist)
+
+ m.container.SetTooltipMarkup(`Paused: ` + title)
+
+ m.prevButton.SetSensitive(e.CanGoPrevious)
+ m.nextButton.SetSensitive(e.CanGoNext)
+ m.playButton.SetSensitive(true)
+
+ m.playButton.SetIconName(`media-playback-start-symbolic`)
+
+ m.icon.SetFromIconName(`media-playback-pause-symbolic`)
+}
+
+func (m *mediaPlayer) buildMenu() error {
+ popover := gtk.NewPopover()
+ m.AddRef(popover.Unref)
+
+ popover.SetAutohide(true)
+ popover.SetHasArrow(true)
+ popover.SetParent(&m.container.Widget)
+
+ switch m.panelCfg.Edge {
+ case configv1.Edge_EDGE_TOP:
+ popover.SetPosition(gtk.PosBottomValue)
+ case configv1.Edge_EDGE_RIGHT:
+ popover.SetPosition(gtk.PosLeftValue)
+ case configv1.Edge_EDGE_BOTTOM:
+ popover.SetPosition(gtk.PosTopValue)
+ case configv1.Edge_EDGE_LEFT:
+ popover.SetPosition(gtk.PosRightValue)
+ }
+
+ root := gtk.NewBox(gtk.OrientationVerticalValue, 12)
+ root.SetMarginTop(16)
+ root.SetMarginBottom(16)
+ root.SetMarginStart(16)
+ root.SetMarginEnd(16)
+
+ title := gtk.NewLabel(`Nothing playing`)
+ title.AddCssClass(style.MediaPlayerTitleClass)
+
+ artist := gtk.NewLabel(``)
+ artist.AddCssClass(style.MediaPlayerArtistClass)
+
+ controls := gtk.NewBox(gtk.OrientationHorizontalValue, 12)
+ controls.SetHalign(gtk.AlignCenterValue)
+
+ prev := gtk.NewButtonFromIconName(`media-skip-backward-symbolic`)
+ play := gtk.NewButtonFromIconName(`media-playback-start-symbolic`)
+ next := gtk.NewButtonFromIconName(`media-skip-forward-symbolic`)
+
+ play.SetActionName(mediaPlayerActionNamespace + `.play-pause`)
+ play.AddCssClass(style.MediaPlayerButtonClass)
+ play.SetSensitive(false)
+
+ prev.SetActionName(mediaPlayerActionNamespace + `.previous`)
+ prev.SetSensitive(false)
+
+ next.SetActionName(mediaPlayerActionNamespace + `.next`)
+ next.SetSensitive(false)
+
+ controls.Append(&prev.Widget)
+ controls.Append(&play.Widget)
+ controls.Append(&next.Widget)
+
+ root.Append(&title.Widget)
+ root.Append(&artist.Widget)
+ root.Append(&controls.Widget)
+
+ popover.SetChild(&root.Widget)
+ m.container.Append(&popover.Widget)
+ m.titleLabel = title
+ m.artistLabel = artist
+ m.playButton = play
+ m.prevButton = prev
+ m.nextButton = next
+ m.popover = popover
+
+ return nil
+}
+
+func (m *mediaPlayer) initActions() {
+ m.actionGroup = gio.NewSimpleActionGroup()
+ m.AddRef(m.actionGroup.Unref)
+
+ actions := []string{
+ `previous`,
+ `play-pause`,
+ `next`,
+ }
+
+ for _, name := range actions {
+ act := gio.NewSimpleAction(name, nil)
+
+ cb := func(a gio.SimpleAction, _ uintptr) {
+ switch a.GetName() {
+ case `previous`:
+ if err := m.host.MediaPlayerPrevious(); err != nil {
+ log.Error(`Media player previous failed`, `err`, err)
+ }
+ case `play-pause`:
+ if err := m.host.MediaPlayerPlayPause(); err != nil {
+ log.Error(`Media player play/pause failed`, `err`, err)
+ }
+ case `next`:
+ if err := m.host.MediaPlayerNext(); err != nil {
+ log.Error(`Media player next failed`, `err`, err)
+ }
+ }
+ }
+
+ act.ConnectActivate(&cb)
+ m.actionGroup.AddAction(act)
+ }
+}
+
+func (m *mediaPlayer) events() chan<- *eventv1.Event {
+ return m.eventCh
+}
+
+func newMediaPlayer(cfg *modulev1.MediaPlayer, a *api) *mediaPlayer {
+ m := &mediaPlayer{
+ cfg: cfg,
+ refTracker: newRefTracker(),
+ api: a,
+ eventCh: make(chan *eventv1.Event),
+ quitCh: make(chan struct{}),
+ menuRefs: newRefTracker(),
+ }
+ m.AddRef(func() {
+ close(m.quitCh)
+ close(m.eventCh)
+ if m.menuRefs != nil {
+ m.menuRefs.Unref()
+ }
+ })
+ return m
+}
+
+func (m *mediaPlayer) close(container *gtk.Box) {
+ defer m.Unref()
+ container.Remove(&m.container.Widget)
+ if m.icon != nil {
+ m.icon.Unref()
+ }
+}
+
+func valueOr(v *string, fallback string) string {
+ if v == nil || *v == `` {
+ return fallback
+ }
+ return *v
+}
diff --git a/cmd/hyprpanel-client/panel.go b/cmd/hyprpanel-client/panel.go
index 42f19e3..2ac1b3e 100644
--- a/cmd/hyprpanel-client/panel.go
+++ b/cmd/hyprpanel-client/panel.go
@@ -218,6 +218,14 @@ func (p *panel) build() error {
for _, modCfg := range p.panelCfg.Modules {
modCfg := modCfg
switch modCfg.Kind.(type) {
+ case *modulev1.Module_MediaPlayer:
+ cfg := modCfg.GetMediaPlayer()
+ mod := newMediaPlayer(cfg, p.api)
+ p.modules = append(p.modules, mod)
+ case *modulev1.Module_IdleInhibitor:
+ cfg := modCfg.GetIdleInhibitor()
+ mod := newIdleInhibitor(cfg, p.api)
+ p.modules = append(p.modules, mod)
case *modulev1.Module_Pager:
cfg := modCfg.GetPager()
mod := newPager(cfg, p.api)
diff --git a/cmd/hyprpanel-client/taskbar_item.go b/cmd/hyprpanel-client/taskbar_item.go
index 5197d87..237ba28 100644
--- a/cmd/hyprpanel-client/taskbar_item.go
+++ b/cmd/hyprpanel-client/taskbar_item.go
@@ -333,7 +333,7 @@ func (i *taskbarItem) launchIndicator() {
spinner.Start()
i.indicator.Append(&spinner.Widget)
go func() {
- <-time.After(7 * time.Second)
+ <-time.After(3 * time.Second)
var cb glib.SourceFunc
cb = func(uintptr) bool {
@@ -347,13 +347,13 @@ func (i *taskbarItem) launchIndicator() {
}
func (i *taskbarItem) updateIndicator() {
- if i.cfg.HideIndicators {
- return
- }
for c := i.indicator.GetLastChild(); c != nil; c = i.indicator.GetFirstChild() {
i.indicator.Remove(c)
c.Unref()
}
+ if i.cfg.HideIndicators {
+ return
+ }
for n := range i.sortedClients {
c := gtk.NewBox(i.orientation, 0)
diff --git a/cmd/hyprpanel/host.go b/cmd/hyprpanel/host.go
index 8ec4814..6769527 100644
--- a/cmd/hyprpanel/host.go
+++ b/cmd/hyprpanel/host.go
@@ -176,6 +176,86 @@ func (h *host) BrightnessAdjust(devName string, direction eventv1.Direction) err
return h.dbus.Brightness().Adjust(devName, direction)
}
+func (h *host) IdleInhibitorInhibit(target eventv1.InhibitTarget) error {
+ if h.cfg.Dbus == nil || !h.cfg.Dbus.Enabled || h.cfg.Dbus.IdleInhibitor == nil || !h.cfg.Dbus.IdleInhibitor.Enabled {
+ return errDisabled
+ }
+
+ return h.dbus.IdleInhibitor().Inhibit(target)
+}
+
+func (h *host) IdleInhibitorUninhibit(target eventv1.InhibitTarget) error {
+ if h.cfg.Dbus == nil || !h.cfg.Dbus.Enabled || h.cfg.Dbus.IdleInhibitor == nil || !h.cfg.Dbus.IdleInhibitor.Enabled {
+ return errDisabled
+ }
+
+ return h.dbus.IdleInhibitor().Uninhibit(target)
+}
+
+func (h *host) MediaPlayerPlayPause() error {
+ if h.cfg.Dbus == nil || !h.cfg.Dbus.Enabled || h.cfg.Dbus.MediaPlayer == nil || !h.cfg.Dbus.MediaPlayer.Enabled {
+ return errDisabled
+ }
+
+ return h.dbus.MediaPlayer().PlayPause()
+}
+
+func (h *host) MediaPlayerPause() error {
+ if h.cfg.Dbus == nil || !h.cfg.Dbus.Enabled || h.cfg.Dbus.MediaPlayer == nil || !h.cfg.Dbus.MediaPlayer.Enabled {
+ return errDisabled
+ }
+
+ return h.dbus.MediaPlayer().Pause()
+}
+
+func (h *host) MediaPlayerPlay() error {
+ if h.cfg.Dbus == nil || !h.cfg.Dbus.Enabled || h.cfg.Dbus.MediaPlayer == nil || !h.cfg.Dbus.MediaPlayer.Enabled {
+ return errDisabled
+ }
+
+ return h.dbus.MediaPlayer().Play()
+}
+
+func (h *host) MediaPlayerStop() error {
+ if h.cfg.Dbus == nil || !h.cfg.Dbus.Enabled || h.cfg.Dbus.MediaPlayer == nil || !h.cfg.Dbus.MediaPlayer.Enabled {
+ return errDisabled
+ }
+
+ return h.dbus.MediaPlayer().Stop()
+}
+
+func (h *host) MediaPlayerNext() error {
+ if h.cfg.Dbus == nil || !h.cfg.Dbus.Enabled || h.cfg.Dbus.MediaPlayer == nil || !h.cfg.Dbus.MediaPlayer.Enabled {
+ return errDisabled
+ }
+
+ return h.dbus.MediaPlayer().Next()
+}
+
+func (h *host) MediaPlayerPrevious() error {
+ if h.cfg.Dbus == nil || !h.cfg.Dbus.Enabled || h.cfg.Dbus.MediaPlayer == nil || !h.cfg.Dbus.MediaPlayer.Enabled {
+ return errDisabled
+ }
+
+ return h.dbus.MediaPlayer().Previous()
+}
+
+func (h *host) MediaPlayerSeek(offset int64) error {
+ if h.cfg.Dbus == nil || !h.cfg.Dbus.Enabled || h.cfg.Dbus.MediaPlayer == nil || !h.cfg.Dbus.MediaPlayer.Enabled {
+ return errDisabled
+ }
+
+ return h.dbus.MediaPlayer().Seek(offset)
+}
+
+func (h *host) MediaPlayerSetPosition(trackId string, pos int64) error {
+ if h.cfg.Dbus == nil || !h.cfg.Dbus.Enabled || h.cfg.Dbus.MediaPlayer == nil || !h.cfg.Dbus.MediaPlayer.Enabled {
+ return errDisabled
+ }
+
+ return h.dbus.MediaPlayer().SetPostion(trackId, pos)
+}
+
func (h *host) CaptureFrame(address uint64, width, height int32) (*hyprpanelv1.ImageNRGBA, error) {
if h.wl == nil {
return nil, fmt.Errorf(`wl app not available`)
diff --git a/config/default.json b/config/default.json
index c2af22e..1dac96b 100644
--- a/config/default.json
+++ b/config/default.json
@@ -1,195 +1,216 @@
{
- "log_level": "LOG_LEVEL_INFO",
- "dbus": {
- "enabled": true,
- "connect_timeout": "20s",
- "connect_interval": "0.200s",
- "notifications": {
- "enabled": true
- },
- "systray": {
- "enabled": true
- },
- "shortcuts": {
- "enabled": true
- },
- "brightness": {
- "enabled": true,
- "adjust_step_percent": 5,
- "min_brightness": 1,
- "enable_logind": true,
- "hud_notifications": true
- },
- "power": {
- "enabled": true,
- "low_percent": 10,
- "critical_percent": 5,
- "low_command": "",
- "critical_command": "",
- "hud_notifications": true
- }
- },
- "audio": {
- "enabled": true,
- "volume_step_percent": 5,
- "volume_exceed_maximum": false,
- "hud_notifications": true
- },
- "icon_overrides": [],
- "launch_wrapper": ["sh", "-c"],
- "panels": [
- {
- "id": "panel0",
- "edge": "EDGE_RIGHT",
- "size": 64,
- "monitor": "",
- "modules": [
- {
- "pager": {
- "icon_size": 12,
- "active_monitor_only": false,
- "scroll_wrap_workspaces": true,
- "scroll_include_inactive": true,
- "enable_workspace_names": false,
- "pinned": [
- 1,
- 2,
- 3,
- 4,
- 5,
- 6
- ],
- "ignore_windows": [],
- "preview_width": 256,
- "follow_window_on_move": false
- }
- },
- {
- "spacer": {
- "size": 16,
- "expand": false
- }
- },
- {
- "taskbar": {
- "icon_size": 48,
- "active_workspace_only": true,
- "active_monitor_only": true,
- "group_tasks": true,
- "hide_indicators": false,
- "expand": true,
- "max_size": 0,
- "pinned": [],
- "preview_width": 256
- }
- },
- {
- "spacer": {
- "size": 16,
- "expand": false
- }
- },
- {
- "systray": {
- "icon_size": 22,
- "menu_icon_size": 22,
- "auto_hide_statuses": [
- "STATUS_UNSPECIFIED",
- "STATUS_PASSIVE",
- "STATUS_ACTIVE"
- ],
- "auto_hide_delay": "4s",
- "pinned": [
- "nm-applet",
- "chrome_status_icon_1"
- ],
- "modules": [
- {
- "power": {
- "icon_size": 22,
- "icon_symbolic": true
- }
- }
- ]
- }
- },
- {
- "notifications": {
- "icon_size": 24,
- "notification_icon_size": 48,
- "default_timeout": "7s",
- "position": "POSITION_TOP_RIGHT",
- "margin": 24,
- "persistent": []
- }
- },
- {
- "hud": {
- "notification_icon_size": 64,
- "timeout": "2s",
- "position": "POSITION_BOTTOM",
- "margin": 256
- }
- },
- {
- "spacer": {
- "size": 16,
- "expand": false
- }
- },
- {
- "audio": {
- "icon_size": 32,
- "icon_symbolic": true,
- "command_mixer": "pavucontrol",
- "enable_source": true
- }
- },
- {
- "spacer": {
- "size": 16,
- "expand": false
- }
- },
- {
- "clock": {
- "time_format": "15:04",
- "date_format": "2006-01-02",
- "tooltip_time_format": "15:04",
- "tooltip_date_format": "Mon, 02 Jan 2006 MST",
- "additional_regions": [
- "America/Los_Angeles",
- "America/Chicago",
- "America/New_York",
- "Europe/London"
- ]
- }
- },
- {
- "spacer": {
- "size": 16,
- "expand": false
- }
- },
- {
- "session": {
- "icon_size": 48,
- "icon_symbolic": true,
- "overlay_icon_size": 96,
- "overlay_icon_symbolic": true,
- "command_logout": "loginctl terminate-session $XDG_SESSION_ID",
- "command_reboot": "systemctl reboot",
- "command_suspend": "systemctl suspend",
- "command_shutdown": "systemctl poweroff"
- }
- },
- {
- "spacer": {
- "size": 16,
- "expand": false
- }
- }
- ]
- }
- ]
+ "log_level": "LOG_LEVEL_INFO",
+ "dbus": {
+ "enabled": true,
+ "connect_timeout": "20s",
+ "connect_interval": "0.200s",
+ "notifications": {
+ "enabled": true
+ },
+ "systray": {
+ "enabled": true
+ },
+ "shortcuts": {
+ "enabled": true
+ },
+ "brightness": {
+ "enabled": true,
+ "adjust_step_percent": 5,
+ "min_brightness": 1,
+ "enable_logind": true,
+ "hud_notifications": true
+ },
+ "power": {
+ "enabled": true,
+ "low_percent": 10,
+ "critical_percent": 5,
+ "low_command": "",
+ "critical_command": "",
+ "hud_notifications": true
+ },
+ "idle_inhibitor": {
+ "enabled": true
+ },
+ "media_player": {
+ "enabled": true
+ }
+ },
+ "audio": {
+ "enabled": true,
+ "volume_step_percent": 5,
+ "volume_exceed_maximum": false,
+ "hud_notifications": true
+ },
+ "icon_overrides": [],
+ "launch_wrapper": ["sh", "-c"],
+ "panels": [
+ {
+ "id": "panel0",
+ "edge": "EDGE_RIGHT",
+ "size": 64,
+ "monitor": "",
+ "modules": [
+ {
+ "pager": {
+ "icon_size": 12,
+ "active_monitor_only": false,
+ "scroll_wrap_workspaces": true,
+ "scroll_include_inactive": true,
+ "enable_workspace_names": false,
+ "pinned": [1, 2, 3, 4, 5, 6],
+ "ignore_windows": [],
+ "preview_width": 256,
+ "follow_window_on_move": false
+ }
+ },
+ {
+ "spacer": {
+ "size": 16,
+ "expand": false
+ }
+ },
+ {
+ "taskbar": {
+ "icon_size": 48,
+ "active_workspace_only": true,
+ "active_monitor_only": true,
+ "group_tasks": true,
+ "hide_indicators": false,
+ "expand": true,
+ "max_size": 0,
+ "pinned": [],
+ "preview_width": 256
+ }
+ },
+ {
+ "spacer": {
+ "size": 16,
+ "expand": false
+ }
+ },
+ {
+ "systray": {
+ "icon_size": 22,
+ "menu_icon_size": 22,
+ "auto_hide_statuses": [
+ "STATUS_UNSPECIFIED",
+ "STATUS_PASSIVE",
+ "STATUS_ACTIVE"
+ ],
+ "auto_hide_delay": "4s",
+ "pinned": ["nm-applet", "chrome_status_icon_1"],
+ "modules": [
+ {
+ "power": {
+ "icon_size": 22,
+ "icon_symbolic": true
+ }
+ }
+ ]
+ }
+ },
+ {
+ "notifications": {
+ "icon_size": 24,
+ "notification_icon_size": 48,
+ "default_timeout": "7s",
+ "position": "POSITION_TOP_RIGHT",
+ "margin": 24,
+ "persistent": []
+ }
+ },
+ {
+ "hud": {
+ "notification_icon_size": 64,
+ "timeout": "2s",
+ "position": "POSITION_BOTTOM",
+ "margin": 256
+ }
+ },
+ {
+ "spacer": {
+ "size": 16,
+ "expand": false
+ }
+ },
+ {
+ "idle_inhibitor": {
+ "icon_size": 24,
+ "icon_symbolic": true,
+ "default_target": 1
+ }
+ },
+ {
+ "spacer": {
+ "size": 16,
+ "expand": false
+ }
+ },
+ {
+ "audio": {
+ "icon_size": 32,
+ "icon_symbolic": true,
+ "command_mixer": "pavucontrol",
+ "enable_source": true
+ }
+ },
+ {
+ "spacer": {
+ "size": 16,
+ "expand": false
+ }
+ },
+ {
+ "media_player": {
+ "icon_size": 24,
+ "icon_symbolic": true
+ }
+ },
+ {
+ "spacer": {
+ "size": 16,
+ "expand": false
+ }
+ },
+ {
+ "clock": {
+ "time_format": "15:04",
+ "date_format": "2006-01-02",
+ "tooltip_time_format": "15:04",
+ "tooltip_date_format": "Mon, 02 Jan 2006 MST",
+ "additional_regions": [
+ "America/Los_Angeles",
+ "America/Chicago",
+ "America/New_York",
+ "Europe/London"
+ ]
+ }
+ },
+ {
+ "spacer": {
+ "size": 16,
+ "expand": false
+ }
+ },
+ {
+ "session": {
+ "icon_size": 48,
+ "icon_symbolic": true,
+ "overlay_icon_size": 96,
+ "overlay_icon_symbolic": true,
+ "command_logout": "loginctl terminate-session $XDG_SESSION_ID",
+ "command_reboot": "systemctl reboot",
+ "command_suspend": "systemctl suspend",
+ "command_shutdown": "systemctl poweroff"
+ }
+ },
+ {
+ "spacer": {
+ "size": 16,
+ "expand": false
+ }
+ }
+ ]
+ }
+ ]
}
diff --git a/go.mod b/go.mod
index d348444..cc5919f 100644
--- a/go.mod
+++ b/go.mod
@@ -22,7 +22,7 @@ require (
golang.org/x/sync v0.16.0
golang.org/x/sys v0.35.0
google.golang.org/grpc v1.75.0
- google.golang.org/protobuf v1.36.8
+ google.golang.org/protobuf v1.36.10
)
require (
diff --git a/go.sum b/go.sum
index 2d2a93f..b57f907 100644
--- a/go.sum
+++ b/go.sum
@@ -116,8 +116,8 @@ google.golang.org/genproto/googleapis/rpc v0.0.0-20250826171959-ef028d996bc1 h1:
google.golang.org/genproto/googleapis/rpc v0.0.0-20250826171959-ef028d996bc1/go.mod h1:GmFNa4BdJZ2a8G+wCe9Bg3wwThLrJun751XstdJt5Og=
google.golang.org/grpc v1.75.0 h1:+TW+dqTd2Biwe6KKfhE5JpiYIBWq865PhKGSXiivqt4=
google.golang.org/grpc v1.75.0/go.mod h1:JtPAzKiq4v1xcAB2hydNlWI2RnF85XXcV0mhKXr2ecQ=
-google.golang.org/protobuf v1.36.8 h1:xHScyCOEuuwZEc6UtSOvPbAT4zRh0xcNRYekJwfqyMc=
-google.golang.org/protobuf v1.36.8/go.mod h1:fuxRtAxBytpl4zzqUh6/eyUujkJdNiuEkXntxiD/uRU=
+google.golang.org/protobuf v1.36.10 h1:AYd7cD/uASjIL6Q9LiTjz8JLcrh/88q5UObnmY3aOOE=
+google.golang.org/protobuf v1.36.10/go.mod h1:HTf+CrKn2C3g5S8VImy6tdcUvCska2kB7j23XfzDpco=
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
gopkg.in/yaml.v2 v2.4.0 h1:D8xgwECY7CYvx+Y2n4sBz93Jn9JRvxdiyyo8CTfuKaY=
gopkg.in/yaml.v2 v2.4.0/go.mod h1:RDklbk79AGWmwhnvt/jBztapEOGDOx6ZbXqjP6csGnQ=
diff --git a/internal/dbus/dbus.go b/internal/dbus/dbus.go
index 584debc..0f2c931 100644
--- a/internal/dbus/dbus.go
+++ b/internal/dbus/dbus.go
@@ -43,6 +43,23 @@ type Brightness interface {
Adjust(devName string, direction eventv1.Direction) error
}
+// IdleInhibitor DBUS API, may return nil if IdleInhibitor is disabled.
+type IdleInhibitor interface {
+ Inhibit(target eventv1.InhibitTarget) error
+ Uninhibit(target eventv1.InhibitTarget) error
+}
+
+type MediaPlayer interface {
+ PlayPause() error
+ Play() error
+ Pause() error
+ Stop() error
+ Next() error
+ Previous() error
+ Seek(offset int64) error
+ SetPostion(trackId string, pos int64) error
+}
+
// Client for DBUS.
type Client struct {
cfg *configv1.Config_DBUS
@@ -56,6 +73,8 @@ type Client struct {
notifications *notifications
brightness *brightness
power *power
+ idleInhibitor *idleInhibitor
+ mediaPlayer *mediaPlayer
}
// Systray API.
@@ -73,6 +92,15 @@ func (c *Client) Brightness() Brightness {
return c.brightness
}
+// IdleInhibitor API.
+func (c *Client) IdleInhibitor() IdleInhibitor {
+ return c.idleInhibitor
+}
+
+func (c *Client) MediaPlayer() MediaPlayer {
+ return c.mediaPlayer
+}
+
// Events channel will deliver events from DBUS.
func (c *Client) Events() <-chan *eventv1.Event {
return c.eventCh
@@ -86,6 +114,16 @@ func (c *Client) Close() error {
c.log.Warn(`Failed closing SNW session`, `err`, err)
}
}
+ if c.idleInhibitor != nil {
+ if err := c.idleInhibitor.close(); err != nil {
+ c.log.Warn(`Failed closing IdleInhibitor session`, `err`, err)
+ }
+ }
+ if c.mediaPlayer != nil {
+ if err := c.mediaPlayer.close(); err != nil {
+ c.log.Warn(`Failed closing MediaPlayer session`, `err`, err)
+ }
+ }
if c.notifications != nil {
if err := c.notifications.close(); err != nil {
c.log.Warn(`Failed closing Notifications session`, `err`, err)
@@ -155,6 +193,18 @@ func New(cfg *configv1.Config_DBUS, logger hclog.Logger) (*Client, <-chan *event
}
}
+ if cfg.IdleInhibitor.Enabled {
+ if c.idleInhibitor, err = newIdleInhibitor(systemConn, logger, c.eventCh, cfg.IdleInhibitor); err != nil {
+ return nil, nil, err
+ }
+ }
+
+ if cfg.MediaPlayer.Enabled {
+ if c.mediaPlayer, err = newMediaPlayer(sessionConn, logger, c.eventCh, cfg.MediaPlayer); err != nil {
+ return nil, nil, err
+ }
+ }
+
if err := c.init(); err != nil {
return nil, nil, err
}
diff --git a/internal/dbus/fdo.go b/internal/dbus/fdo.go
index 8482922..9b9fa17 100644
--- a/internal/dbus/fdo.go
+++ b/internal/dbus/fdo.go
@@ -10,7 +10,8 @@ import (
const (
fdoName = `org.freedesktop.DBus`
fdoPath = dbus.ObjectPath(`/org/freedesktop/DBus`)
- fdoSignalNameOwnerChanged = fdoName + `.NameOwnerChanged`
+ fdoMemberNameOwnerChanged = `NameOwnerChanged`
+ fdoSignalNameOwnerChanged = fdoName + `.` + fdoMemberNameOwnerChanged
fdoIntrospectableName = fdoName + `.Introspectable`
fdoPropertiesName = fdoName + `.Properties`
@@ -18,9 +19,14 @@ const (
fdoPropertiesMemberPropertiesChanged = `PropertiesChanged`
fdoPropertiesSignalPropertiesChanged = fdoPropertiesName + `.` + fdoPropertiesMemberPropertiesChanged
- fdoLogindName = `org.freedesktop.login1`
+ fdoLogindName = `org.freedesktop.login1`
+ fdoLogindPath = `/org/freedesktop/login1`
+
+ fdoLogindManagerName = fdoLogindName + `.Manager`
+ fdoLogindManagerMethodInhibit = fdoLogindManagerName + `.Inhibit`
+
fdoLogindSessionName = fdoLogindName + `.Session`
- fdoLogindSessionPath = `/org/freedesktop/login1/session/auto`
+ fdoLogindSessionPath = fdoLogindPath + `/session/auto`
fdoLogindSessionMethodSetBrightness = fdoLogindSessionName + `.SetBrightness`
fdoSystemdName = `org.freedesktop.systemd1`
@@ -31,6 +37,26 @@ const (
fdoUPowerPath = `/org/freedesktop/UPower`
fdoUPowerMethodGetDisplayDevice = fdoUPowerName + `.GetDisplayDevice`
+ fdoMediaPlayerPath = `/org/mpris/MediaPlayer2`
+ fdoMediaPlayerName = `org.mpris.MediaPlayer2`
+ fdoPlayerName = fdoMediaPlayerName + ".Player"
+
+ fdoPlayerMethodPlayPause = fdoPlayerName + `.PlayPause`
+ fdoPlayerMethodPlay = fdoPlayerName + `.Play`
+ fdoPlayerMethodPause = fdoPlayerName + `.Pause`
+ fdoPlayerMethodNext = fdoPlayerName + `.Next`
+ fdoPlayerMethodPrevious = fdoPlayerName + `.Previous`
+ fdoPlayerMethodStop = fdoPlayerName + `.Stop`
+ fdoPlayerMethodSeek = fdoPlayerName + `.Seek`
+ fdoPlayerMethodSetPosition = fdoPlayerName + `.SetPosition`
+
+ fdoPlayerPropertyPlaybackStatus = `PlaybackStatus`
+ fdoPlayerPropertyCanGoNext = `CanGoNext`
+ fdoPlayerPropertyCanGoPrevious = `CanGoPrevious`
+ fdoPlayerPropertyIdentity = `Identity`
+ fdoPlayerPropertyDesktopEntry = `DesktopEntry`
+ fdoPlayerPropertyMetadata = `Metadata`
+
fdoUPowerDeviceName = fdoUPowerName + `.Device`
fdoUPowerDevicePropertyVendor = `Vendor`
fdoUPowerDevicePropertyModel = `Model`
@@ -46,6 +72,10 @@ const (
fdoUPowerDevicePropertyEnergy = `Energy`
fdoUPowerDevicePropertyEnergyEmpty = `EnergyEmpty`
fdoUPowerDevicePropertyEnergyFull = `EnergyFull`
+
+ fdoIdleInhibitorPropertyShutdown = `shutdown`
+ fdoIdleInhibitorPropertySleep = `sleep`
+ fdoIdleInhibitorPropertyIdle = `idle`
)
func systemdUnitToObjectPath(unitName string) (dbus.ObjectPath, error) {
diff --git a/internal/dbus/idle_inhibitor.go b/internal/dbus/idle_inhibitor.go
new file mode 100644
index 0000000..a63f54e
--- /dev/null
+++ b/internal/dbus/idle_inhibitor.go
@@ -0,0 +1,230 @@
+package dbus
+
+import (
+ "fmt"
+ "strings"
+ "sync"
+ "syscall"
+
+ "github.com/godbus/dbus/v5"
+ "github.com/hashicorp/go-hclog"
+ configv1 "github.com/pdf/hyprpanel/proto/hyprpanel/config/v1"
+ eventv1 "github.com/pdf/hyprpanel/proto/hyprpanel/event/v1"
+ "google.golang.org/protobuf/types/known/anypb"
+)
+
+type idleInhibitor struct {
+ conn *dbus.Conn
+ log hclog.Logger
+ cfg *configv1.Config_DBUS_IdleInhibitor
+
+ mu sync.RWMutex
+ targets map[eventv1.InhibitTarget]dbus.UnixFD
+ eventCh chan *eventv1.Event
+ signals chan *dbus.Signal
+ readyCh chan struct{}
+ quitCh chan struct{}
+}
+
+func (i *idleInhibitor) init() error {
+ go i.watch()
+ close(i.readyCh)
+ return nil
+}
+
+func (i *idleInhibitor) Inhibit(target eventv1.InhibitTarget) error {
+ var what string
+ switch target {
+ case eventv1.InhibitTarget_INHIBIT_TARGET_SHUTDOWN:
+ what = fdoIdleInhibitorPropertyShutdown
+ case eventv1.InhibitTarget_INHIBIT_TARGET_SLEEP:
+ what = fdoIdleInhibitorPropertySleep
+ case eventv1.InhibitTarget_INHIBIT_TARGET_IDLE:
+ what = fdoIdleInhibitorPropertyIdle
+ default:
+ return fmt.Errorf(`invalid inhibit target: %v`, target)
+ }
+ var fd dbus.UnixFD
+ obj := i.conn.Object(fdoLogindName, fdoLogindPath)
+ if err := obj.Call(
+ fdoLogindManagerMethodInhibit,
+ 0,
+ what,
+ `hyprpanel`,
+ `user request`,
+ `block`,
+ ).Store(&fd); err != nil {
+ return err
+ }
+ i.mu.Lock()
+ defer i.mu.Unlock()
+ i.targets[target] = fd
+ return nil
+}
+
+func (i *idleInhibitor) Uninhibit(t eventv1.InhibitTarget) error {
+ i.mu.Lock()
+ defer i.mu.Unlock()
+ if i.targets[t] == 0 {
+ return nil
+ } else if fd, ok := i.targets[t]; ok {
+ if err := syscall.Close(int(fd)); err != nil {
+ return err
+ }
+ i.targets[t] = 0
+ return nil
+ }
+ return fmt.Errorf(`could not find file descriptior for target: %d`, t)
+}
+
+func (i *idleInhibitor) watch() {
+ select {
+ case <-i.quitCh:
+ return
+ default:
+ }
+ for {
+ select {
+ case <-i.readyCh:
+ i.readyCh = nil
+ continue
+ case <-i.quitCh:
+ return
+ case sig, ok := <-i.signals:
+ if !ok {
+ return
+ }
+ switch sig.Name {
+ case fdoPropertiesSignalPropertiesChanged:
+ kind, ok := sig.Body[0].(string)
+ if !ok {
+ i.log.Warn(`Failed asserting DBUS PropertiesChanged body kind`, `kind`, sig.Body[0])
+ continue
+ }
+ if kind != fdoLogindManagerName {
+ continue
+ }
+
+ properties, ok := sig.Body[1].(map[string]dbus.Variant)
+ if !ok {
+ i.log.Warn(`Failed asserting DBUS PropertiesChanged body properties`, `properties`, sig.Body[1])
+ continue
+ }
+ if len(properties) == 0 {
+ continue
+ }
+ pathVar, ok := properties[`BlockInhibited`]
+ if !ok {
+ continue
+ }
+ var targets string
+ if err := pathVar.Store(&targets); err != nil {
+ i.log.Warn(`Failed parsing SysFSPath`, `pathVar`, pathVar, `err`, err)
+ continue
+ }
+
+ if err := i.updateTargets(targets); err != nil {
+ i.log.Warn(`error updating targets: %v`, err)
+ }
+ }
+ }
+ }
+}
+
+func (i *idleInhibitor) updateTargets(raw string) error {
+ active := map[eventv1.InhibitTarget]bool{}
+ for _, part := range strings.Split(raw, ":") {
+ switch part {
+ case fdoIdleInhibitorPropertyShutdown:
+ active[eventv1.InhibitTarget_INHIBIT_TARGET_SHUTDOWN] = true
+ case fdoIdleInhibitorPropertySleep:
+ active[eventv1.InhibitTarget_INHIBIT_TARGET_SLEEP] = true
+ case fdoIdleInhibitorPropertyIdle:
+ active[eventv1.InhibitTarget_INHIBIT_TARGET_IDLE] = true
+ }
+ }
+
+ i.mu.RLock()
+ defer i.mu.RUnlock()
+ for t := range i.targets {
+ if active[t] {
+ i.eventCh <- i.mustEvent(t, true)
+ } else {
+ i.eventCh <- i.mustEvent(t, false)
+ }
+ }
+
+ return nil
+}
+
+func (i *idleInhibitor) mustEvent(t eventv1.InhibitTarget, enable bool) *eventv1.Event {
+ v := &eventv1.IdleInhibitorValue{
+ Target: t,
+ }
+ data, err := anypb.New(v)
+ if err != nil {
+ i.log.Error(`error creating event`, err)
+ return nil
+ }
+ kind := eventv1.EventKind_EVENT_KIND_IDLE_INHIBITOR_UNINHIBIT
+ if enable {
+ kind = eventv1.EventKind_EVENT_KIND_IDLE_INHIBITOR_INHIBIT
+ }
+ return &eventv1.Event{
+ Kind: kind,
+ Data: data,
+ }
+}
+
+func newIdleInhibitor(conn *dbus.Conn, logger hclog.Logger, eventCh chan *eventv1.Event, cfg *configv1.Config_DBUS_IdleInhibitor) (*idleInhibitor, error) {
+ i := &idleInhibitor{
+ conn: conn,
+ log: logger,
+ cfg: cfg,
+ eventCh: eventCh,
+ signals: make(chan *dbus.Signal),
+ readyCh: make(chan struct{}),
+ quitCh: make(chan struct{}),
+ mu: sync.RWMutex{},
+ targets: map[eventv1.InhibitTarget]dbus.UnixFD{
+ eventv1.InhibitTarget_INHIBIT_TARGET_IDLE: 0,
+ eventv1.InhibitTarget_INHIBIT_TARGET_SLEEP: 0,
+ eventv1.InhibitTarget_INHIBIT_TARGET_SHUTDOWN: 0,
+ },
+ }
+
+ if err := i.conn.AddMatchSignal(
+ dbus.WithMatchInterface(fdoPropertiesName),
+ dbus.WithMatchObjectPath(fdoLogindPath),
+ ); err != nil {
+ return nil, err
+ }
+
+ i.conn.Signal(i.signals)
+ if err := i.init(); err != nil {
+ return nil, err
+ }
+ return i, nil
+}
+
+func (i *idleInhibitor) close() error {
+ select {
+ case <-i.quitCh:
+ default:
+ }
+ close(i.quitCh)
+
+ i.mu.Lock()
+ defer i.mu.Unlock()
+
+ for t, fd := range i.targets {
+ if fd != 0 {
+ _ = syscall.Close(int(fd))
+ i.targets[t] = 0
+ }
+ }
+
+ i.conn.RemoveSignal(i.signals)
+
+ return i.conn.Close()
+}
diff --git a/internal/dbus/media_player.go b/internal/dbus/media_player.go
new file mode 100644
index 0000000..d8f82a7
--- /dev/null
+++ b/internal/dbus/media_player.go
@@ -0,0 +1,476 @@
+package dbus
+
+import (
+ "strings"
+ "sync"
+ "time"
+
+ "github.com/godbus/dbus/v5"
+ "github.com/hashicorp/go-hclog"
+ configv1 "github.com/pdf/hyprpanel/proto/hyprpanel/config/v1"
+ eventv1 "github.com/pdf/hyprpanel/proto/hyprpanel/event/v1"
+ "google.golang.org/protobuf/types/known/anypb"
+ "google.golang.org/protobuf/types/known/timestamppb"
+)
+
+const (
+ playbackPlaying = `Playing`
+ playbackPaused = `Paused`
+)
+
+type mediaPlayer struct {
+ cfg *configv1.Config_DBUS_MediaPlayer
+ log hclog.Logger
+
+ conn *dbus.Conn
+ players map[string]*player
+ signals chan *dbus.Signal
+
+ mu sync.RWMutex
+
+ eventCh chan *eventv1.Event
+ readyCh chan struct{}
+ quitCh chan struct{}
+}
+
+type player struct {
+ metadata metadata
+ identity string
+ desktopEntry string
+ playback string
+ canGoNext bool
+ canGoPrevious bool
+ updatedAt time.Time
+
+ // indicates that the next signal of a player should be skipped
+ skipNextSignal bool
+}
+
+func (p player) isPlaying() bool {
+ return p.playback == playbackPlaying
+}
+
+func (p player) eventState() eventv1.MediaPlayerState {
+ switch p.playback {
+ case playbackPlaying:
+ return eventv1.MediaPlayerState_MEDIA_PLAYER_STATE_PLAYING
+ case playbackPaused:
+ return eventv1.MediaPlayerState_MEDIA_PLAYER_STATE_PAUSED
+ }
+ return eventv1.MediaPlayerState_MEDIA_PLAYER_STATE_UNSPECIFIED
+}
+
+type metadata struct {
+ title string
+ artist string
+ album string
+ artUrl string
+ url string
+ trackId dbus.ObjectPath
+ length int64
+}
+
+func (m *mediaPlayer) PlayPause() error {
+ _, sender, ok := m.latestPlayerCopy()
+ if !ok {
+ return nil
+ }
+ return m.callMediaPlayer(sender, fdoPlayerMethodPlayPause)
+}
+
+func (m *mediaPlayer) Pause() error {
+ _, sender, ok := m.latestPlayerCopy()
+ if !ok {
+ return nil
+ }
+ return m.callMediaPlayer(sender, fdoPlayerMethodPause)
+}
+
+func (m *mediaPlayer) Next() error {
+ _, sender, ok := m.latestPlayerCopy()
+
+ if !ok {
+ return nil
+ }
+ return m.callMediaPlayer(sender, fdoPlayerMethodNext)
+}
+
+func (m *mediaPlayer) Previous() error {
+ _, sender, ok := m.latestPlayerCopy()
+
+ if !ok {
+ return nil
+ }
+ return m.callMediaPlayer(sender, fdoPlayerMethodPrevious)
+}
+
+func (m *mediaPlayer) Play() error {
+ _, sender, ok := m.latestPlayerCopy()
+ if !ok {
+ return nil
+ }
+ return m.callMediaPlayer(sender, fdoPlayerMethodPlay)
+}
+
+func (m *mediaPlayer) Stop() error {
+ _, sender, ok := m.latestPlayerCopy()
+ if !ok {
+ return nil
+ }
+ return m.callMediaPlayer(sender, fdoPlayerMethodStop)
+}
+
+func (m *mediaPlayer) Seek(offset int64) error {
+ _, sender, ok := m.latestPlayerCopy()
+ if !ok {
+ return nil
+ }
+ return m.callMediaPlayer(sender, fdoPlayerMethodSeek, offset)
+}
+
+func (m *mediaPlayer) SetPostion(trackId string, pos int64) error {
+ _, sender, ok := m.latestPlayerCopy()
+ if !ok {
+ return nil
+ }
+ return m.callMediaPlayer(sender, fdoPlayerMethodSetPosition, trackId, pos)
+}
+
+func (m *mediaPlayer) watch() {
+ select {
+ case <-m.quitCh:
+ return
+ default:
+ }
+ for {
+ select {
+ case <-m.readyCh:
+ m.readyCh = nil
+ continue
+ case <-m.quitCh:
+ return
+ case sig, ok := <-m.signals:
+ if !ok {
+ m.log.Warn(`signal channel closed`)
+ return
+ }
+ var p player
+ switch sig.Name {
+ case fdoPropertiesSignalPropertiesChanged:
+ p, ok = m.handlePropertiesChanged(sig)
+ case fdoSignalNameOwnerChanged:
+ p, ok = m.handleNameOwnerChanged(sig)
+ default:
+ continue
+ }
+ if ok {
+ m.eventCh <- m.mustEvent(p)
+ }
+ }
+ }
+}
+
+func (m *mediaPlayer) handleNameOwnerChanged(sig *dbus.Signal) (player, bool) {
+ name := sig.Body[0].(string)
+ oldOwner := sig.Body[1].(string)
+ newOwner := sig.Body[2].(string)
+
+ if !strings.Contains(name, `MediaPlayer2`) {
+ return player{}, false
+ }
+
+ if newOwner == `` {
+ m.mu.Lock()
+ delete(m.players, oldOwner)
+ m.mu.Unlock()
+
+ p, _, ok := m.latestPlayerCopy()
+ return p, ok
+ }
+
+ if oldOwner == `` {
+
+ newPlayer := &player{playback: playbackPlaying}
+
+ defer func() {
+ m.mu.Lock()
+ m.players[newOwner] = newPlayer
+ m.mu.Unlock()
+ }()
+
+ var props map[string]dbus.Variant
+
+ err := m.conn.Object(name, fdoMediaPlayerPath).
+ Call(fdoPropertiesMethodGetAll, 0, fdoMediaPlayerName).
+ Store(&props)
+
+ if err != nil {
+ m.log.Warn(`failed fetching initial state`, `player`, name, `err`, err)
+ return player{}, false
+ }
+
+ latestPlayer, _, ok := m.latestPlayerCopy()
+
+ m.mu.Lock()
+ defer m.mu.Unlock()
+
+ m.mustApplyPlayerProperties(newPlayer, props)
+
+ // check if new player overlaps with the last one
+ if ok && latestPlayer.isPlaying() && newPlayer.isPlaying() {
+ m.pauseOthersLocked(newOwner)
+ }
+
+ return *newPlayer, true
+ }
+
+ return player{}, false
+}
+
+func (m *mediaPlayer) handlePropertiesChanged(sig *dbus.Signal) (player, bool) {
+ changed := sig.Body[1].(map[string]dbus.Variant)
+ if _, ok := changed[`Rate`]; ok {
+ p, _, ok := m.latestPlayerCopy()
+ return p, ok
+ }
+
+ sender := sig.Sender
+
+ m.mu.RLock()
+ p, ok := m.players[sender]
+ m.mu.RUnlock()
+ if !ok {
+ p = &player{playback: playbackPlaying}
+ defer func() {
+ m.mu.Lock()
+ m.players[sender] = p
+ m.mu.Unlock()
+ }()
+ } else if p.skipNextSignal {
+ p.skipNextSignal = false
+ return player{}, false
+ }
+
+ latestPlayer, latestSender, ok := m.latestPlayerCopy()
+
+ m.mu.Lock()
+ defer m.mu.Unlock()
+
+ m.mustApplyPlayerProperties(p, changed)
+
+ // check if two different players overlap
+ if ok && latestSender != sender && latestPlayer.isPlaying() && p.isPlaying() {
+ m.pauseOthersLocked(sender)
+ }
+
+ return *p, true
+}
+
+func (m *mediaPlayer) pauseOthersLocked(current string) {
+ for sender, other := range m.players {
+ if sender != current && other.isPlaying() {
+
+ // manually set "Paused" playback state and skip the
+ // next signal to keep ui in sync
+ other.playback = playbackPaused
+ other.skipNextSignal = true
+
+ // force the overlapping player to stop
+ go m.callMediaPlayer(sender, fdoPlayerMethodPause)
+ }
+ }
+}
+
+func (m *mediaPlayer) callMediaPlayer(sender, method string, args ...interface{}) error {
+ return m.conn.Object(sender, fdoMediaPlayerPath).Call(method, 0, args...).Err
+}
+
+func (m *mediaPlayer) mustApplyPlayerProperties(p *player, props map[string]dbus.Variant) {
+
+ defer func() {
+ p.updatedAt = time.Now()
+ }()
+
+ for k, v := range props {
+ switch k {
+ case fdoPlayerPropertyPlaybackStatus:
+ p.playback = v.Value().(string)
+ case fdoPlayerPropertyCanGoNext:
+ p.canGoNext = v.Value().(bool)
+ case fdoPlayerPropertyCanGoPrevious:
+ p.canGoPrevious = v.Value().(bool)
+ case fdoPlayerPropertyIdentity:
+ p.identity = v.Value().(string)
+ case fdoPlayerPropertyDesktopEntry:
+ p.desktopEntry = v.Value().(string)
+ case fdoPlayerPropertyMetadata:
+ m.mustParseMetadata(p, v.Value().(map[string]dbus.Variant))
+ }
+ }
+}
+
+func (m *mediaPlayer) mustParseMetadata(p *player, md map[string]dbus.Variant) {
+ for k, v := range md {
+ switch k {
+ case `xesam:title`:
+ p.metadata.title = v.Value().(string)
+ case `xesam:artist`:
+ arr := v.Value().([]string)
+ if len(arr) > 0 {
+ p.metadata.artist = arr[0]
+ }
+ case `xesam:album`:
+ p.metadata.album = v.Value().(string)
+ case `xesam:url`:
+ p.metadata.url = v.Value().(string)
+ case `mpris:length`:
+ p.metadata.length = v.Value().(int64)
+ case `mpris:artUrl`:
+ p.metadata.artUrl = v.Value().(string)
+ case `mpris:trackid`:
+ trackId := v.Value().(dbus.ObjectPath)
+ p.metadata.trackId = trackId
+ }
+
+ }
+}
+
+func (m *mediaPlayer) mustEvent(p player) *eventv1.Event {
+ event := &eventv1.MediaPlayerValueChange{
+ State: p.eventState(),
+ TrackId: string(p.metadata.trackId),
+ CanGoNext: p.canGoNext,
+ CanGoPrevious: p.canGoPrevious,
+ UpdatedAt: timestamppb.New(p.updatedAt),
+ }
+
+ if v := p.metadata.title; v != `` {
+ event.Title = &v
+ }
+
+ if v := p.metadata.artist; v != `` {
+ event.Artist = &v
+ }
+
+ if v := p.metadata.album; v != `` {
+ event.Album = &v
+ }
+
+ if v := p.desktopEntry; v != `` {
+ event.DesktopEntry = &v
+ }
+
+ if v := p.identity; v != `` {
+ event.Identity = &v
+ }
+
+ if v := p.metadata.length; v != 0 {
+ event.LengthUs = &v
+ }
+
+ if v := p.metadata.artUrl; v != "" {
+ event.ArtUrl = &v
+ }
+
+ if v := p.metadata.url; v != "" {
+ event.Url = &v
+ }
+
+ data, err := anypb.New(event)
+ if err != nil {
+ m.log.Error(`error creating event`, err)
+ return &eventv1.Event{}
+ }
+ return &eventv1.Event{
+ Kind: eventv1.EventKind_EVENT_KIND_MEDIA_PLAYER_CHANGE,
+ Data: data,
+ }
+
+}
+func (m *mediaPlayer) latestPlayerCopy() (player, string, bool) {
+ m.mu.RLock()
+ defer m.mu.RUnlock()
+
+ var (
+ playingPlayer, recentPlayer *player
+ playingSender, recentSender string
+ )
+
+ for sender, p := range m.players {
+
+ if p.isPlaying() {
+ if playingPlayer == nil || p.updatedAt.After(playingPlayer.updatedAt) {
+ playingPlayer = p
+ playingSender = sender
+ }
+ }
+
+ if recentPlayer == nil || p.updatedAt.After(recentPlayer.updatedAt) {
+ recentPlayer = p
+ recentSender = sender
+ }
+ }
+
+ if playingSender != `` {
+ return *playingPlayer, playingSender, true
+ }
+
+ if recentSender != `` {
+ return *recentPlayer, recentSender, true
+ }
+
+ return player{}, ``, false
+}
+
+func newMediaPlayer(conn *dbus.Conn, logger hclog.Logger, eventCh chan *eventv1.Event, cfg *configv1.Config_DBUS_MediaPlayer) (*mediaPlayer, error) {
+ m := &mediaPlayer{
+ conn: conn,
+ cfg: cfg,
+ log: logger,
+ eventCh: eventCh,
+ signals: make(chan *dbus.Signal, 10),
+ readyCh: make(chan struct{}),
+ quitCh: make(chan struct{}),
+ players: make(map[string]*player),
+ mu: sync.RWMutex{},
+ }
+
+ err := m.conn.AddMatchSignal(
+ dbus.WithMatchInterface(fdoPropertiesName),
+ dbus.WithMatchMember(fdoPropertiesMemberPropertiesChanged),
+ dbus.WithMatchObjectPath(fdoMediaPlayerPath),
+ )
+ if err != nil {
+ return nil, err
+ }
+
+ err = conn.AddMatchSignal(
+ dbus.WithMatchInterface(fdoName),
+ dbus.WithMatchMember(fdoMemberNameOwnerChanged),
+ )
+ if err != nil {
+ return nil, err
+ }
+
+ m.conn.Signal(m.signals)
+
+ return m, m.init()
+}
+
+func (m *mediaPlayer) init() error {
+ go m.watch()
+ close(m.readyCh)
+ return nil
+}
+
+func (m *mediaPlayer) close() error {
+ select {
+ case <-m.quitCh:
+ default:
+ }
+ close(m.quitCh)
+
+ m.conn.RemoveSignal(m.signals)
+
+ return m.conn.Close()
+}
diff --git a/internal/panelplugin/grpc.go b/internal/panelplugin/grpc.go
index 5893af3..676d992 100644
--- a/internal/panelplugin/grpc.go
+++ b/internal/panelplugin/grpc.go
@@ -108,6 +108,87 @@ type HostGRPCClient struct {
client hyprpanelv1.HostServiceClient
}
+func (c *HostGRPCClient) IdleInhibitorInhibit(target eventv1.InhibitTarget) error {
+ if _, err := c.client.IdleInhibitorInhibit(context.Background(), &hyprpanelv1.HostServiceIdleInhibitorRequest{
+ Target: target,
+ }); err != nil {
+ return err
+ }
+ return nil
+}
+
+func (c *HostGRPCClient) IdleInhibitorUninhibit(target eventv1.InhibitTarget) error {
+ if _, err := c.client.IdleInhibitorUninhibit(context.Background(), &hyprpanelv1.HostServiceIdleInhibitorRequest{
+ Target: target,
+ }); err != nil {
+ return err
+ }
+ return nil
+}
+
+func (c *HostGRPCClient) MediaPlayerPlayPause() error {
+ if _, err := c.client.MediaPlayerPlayPause(context.Background(), &hyprpanelv1.HostServiceMediaPlayerRequest{}); err != nil {
+ return err
+ }
+ return nil
+}
+
+func (c *HostGRPCClient) MediaPlayerPlay() error {
+ if _, err := c.client.MediaPlayerPlay(context.Background(), &hyprpanelv1.HostServiceMediaPlayerRequest{}); err != nil {
+ return err
+ }
+ return nil
+}
+
+func (c *HostGRPCClient) MediaPlayerPause() error {
+ if _, err := c.client.MediaPlayerPause(context.Background(), &hyprpanelv1.HostServiceMediaPlayerRequest{}); err != nil {
+ return err
+ }
+ return nil
+}
+
+func (c *HostGRPCClient) MediaPlayerStop() error {
+ if _, err := c.client.MediaPlayerStop(context.Background(), &hyprpanelv1.HostServiceMediaPlayerRequest{}); err != nil {
+ return err
+ }
+ return nil
+}
+
+func (c *HostGRPCClient) MediaPlayerNext() error {
+ if _, err := c.client.MediaPlayerNext(context.Background(), &hyprpanelv1.HostServiceMediaPlayerRequest{}); err != nil {
+ return err
+ }
+ return nil
+}
+
+func (c *HostGRPCClient) MediaPlayerPrevious() error {
+ if _, err := c.client.MediaPlayerPrevious(context.Background(), &hyprpanelv1.HostServiceMediaPlayerRequest{}); err != nil {
+ return err
+ }
+ return nil
+}
+
+func (c *HostGRPCClient) MediaPlayerSeek(offset int64) error {
+ if _, err := c.client.MediaPlayerSeek(context.Background(),
+ &hyprpanelv1.HostServiceMediaPlayerSeekRequest{
+ OffsetUs: offset,
+ }); err != nil {
+ return err
+ }
+ return nil
+}
+
+func (c *HostGRPCClient) MediaPlayerSetPosition(trackId string, pos int64) error {
+ if _, err := c.client.MediaPlayerSetPosition(context.Background(),
+ &hyprpanelv1.HostServiceMediaPlayerSetPostionRequest{
+ TrackId: trackId,
+ PositionUs: pos,
+ }); err != nil {
+ return err
+ }
+ return nil
+}
+
// Exec implmenetation.
func (c *HostGRPCClient) Exec(action *hyprpanelv1.AppInfo_Action) error {
_, err := c.client.Exec(context.Background(), &hyprpanelv1.HostServiceExecRequest{
@@ -269,6 +350,86 @@ type HostGRPCServer struct {
Impl Host
}
+func (s *HostGRPCServer) IdleInhibitorInhibit(ctx context.Context, req *hyprpanelv1.HostServiceIdleInhibitorRequest) (*hyprpanelv1.HostServiceIdleInhibitorResponse, error) {
+ err := s.Impl.IdleInhibitorInhibit(req.Target)
+ if err != nil {
+ return &hyprpanelv1.HostServiceIdleInhibitorResponse{}, err
+ }
+ return &hyprpanelv1.HostServiceIdleInhibitorResponse{}, nil
+}
+
+func (s *HostGRPCServer) IdleInhibitorUninhibit(ctx context.Context, req *hyprpanelv1.HostServiceIdleInhibitorRequest) (*hyprpanelv1.HostServiceIdleInhibitorResponse, error) {
+ err := s.Impl.IdleInhibitorUninhibit(req.Target)
+ if err != nil {
+ return &hyprpanelv1.HostServiceIdleInhibitorResponse{}, err
+ }
+ return &hyprpanelv1.HostServiceIdleInhibitorResponse{}, nil
+}
+
+func (s *HostGRPCServer) MediaPlayerPlayPause(ctx context.Context, req *hyprpanelv1.HostServiceMediaPlayerRequest) (*hyprpanelv1.HostServiceMediaPlayerResponse, error) {
+ err := s.Impl.MediaPlayerPlayPause()
+ if err != nil {
+ return &hyprpanelv1.HostServiceMediaPlayerResponse{}, err
+ }
+ return &hyprpanelv1.HostServiceMediaPlayerResponse{}, nil
+}
+
+func (s *HostGRPCServer) MediaPlayerPlay(ctx context.Context, req *hyprpanelv1.HostServiceMediaPlayerRequest) (*hyprpanelv1.HostServiceMediaPlayerResponse, error) {
+ err := s.Impl.MediaPlayerPlay()
+ if err != nil {
+ return &hyprpanelv1.HostServiceMediaPlayerResponse{}, err
+ }
+ return &hyprpanelv1.HostServiceMediaPlayerResponse{}, nil
+}
+
+func (s *HostGRPCServer) MediaPlayerPause(ctx context.Context, req *hyprpanelv1.HostServiceMediaPlayerRequest) (*hyprpanelv1.HostServiceMediaPlayerResponse, error) {
+ err := s.Impl.MediaPlayerPause()
+ if err != nil {
+ return &hyprpanelv1.HostServiceMediaPlayerResponse{}, err
+ }
+ return &hyprpanelv1.HostServiceMediaPlayerResponse{}, nil
+}
+
+func (s *HostGRPCServer) MediaPlayerNext(ctx context.Context, req *hyprpanelv1.HostServiceMediaPlayerRequest) (*hyprpanelv1.HostServiceMediaPlayerResponse, error) {
+ err := s.Impl.MediaPlayerNext()
+ if err != nil {
+ return &hyprpanelv1.HostServiceMediaPlayerResponse{}, err
+ }
+ return &hyprpanelv1.HostServiceMediaPlayerResponse{}, nil
+}
+
+func (s *HostGRPCServer) MediaPlayerPrevious(ctx context.Context, req *hyprpanelv1.HostServiceMediaPlayerRequest) (*hyprpanelv1.HostServiceMediaPlayerResponse, error) {
+ err := s.Impl.MediaPlayerPrevious()
+ if err != nil {
+ return &hyprpanelv1.HostServiceMediaPlayerResponse{}, err
+ }
+ return &hyprpanelv1.HostServiceMediaPlayerResponse{}, nil
+}
+
+func (s *HostGRPCServer) MediaPlayerStop(ctx context.Context, req *hyprpanelv1.HostServiceMediaPlayerRequest) (*hyprpanelv1.HostServiceMediaPlayerResponse, error) {
+ err := s.Impl.MediaPlayerStop()
+ if err != nil {
+ return &hyprpanelv1.HostServiceMediaPlayerResponse{}, err
+ }
+ return &hyprpanelv1.HostServiceMediaPlayerResponse{}, nil
+}
+
+func (s *HostGRPCServer) MediaPlayerSeek(ctx context.Context, req *hyprpanelv1.HostServiceMediaPlayerSeekRequest) (*hyprpanelv1.HostServiceMediaPlayerResponse, error) {
+ err := s.Impl.MediaPlayerSeek(req.OffsetUs)
+ if err != nil {
+ return &hyprpanelv1.HostServiceMediaPlayerResponse{}, err
+ }
+ return &hyprpanelv1.HostServiceMediaPlayerResponse{}, nil
+}
+
+func (s *HostGRPCServer) MediaPlayerSetPosition(ctx context.Context, req *hyprpanelv1.HostServiceMediaPlayerSetPostionRequest) (*hyprpanelv1.HostServiceMediaPlayerResponse, error) {
+ err := s.Impl.MediaPlayerSetPosition(req.TrackId, req.PositionUs)
+ if err != nil {
+ return &hyprpanelv1.HostServiceMediaPlayerResponse{}, err
+ }
+ return &hyprpanelv1.HostServiceMediaPlayerResponse{}, nil
+}
+
// Exec implementation.
func (s *HostGRPCServer) Exec(_ context.Context, req *hyprpanelv1.HostServiceExecRequest) (*hyprpanelv1.HostServiceExecResponse, error) {
err := s.Impl.Exec(req.Action)
diff --git a/internal/panelplugin/interface.go b/internal/panelplugin/interface.go
index dceec6b..510f5e8 100644
--- a/internal/panelplugin/interface.go
+++ b/internal/panelplugin/interface.go
@@ -49,6 +49,16 @@ type Host interface {
AudioSourceMuteToggle(id string) error
BrightnessAdjust(devName string, direction eventv1.Direction) error
CaptureFrame(address uint64, width, height int32) (*hyprpanelv1.ImageNRGBA, error)
+ IdleInhibitorInhibit(target eventv1.InhibitTarget) error
+ IdleInhibitorUninhibit(target eventv1.InhibitTarget) error
+ MediaPlayerPlayPause() error
+ MediaPlayerPlay() error
+ MediaPlayerPause() error
+ MediaPlayerStop() error
+ MediaPlayerNext() error
+ MediaPlayerPrevious() error
+ MediaPlayerSeek(offset int64) error
+ MediaPlayerSetPosition(trackId string, pos int64) error
}
// Panel interface.
diff --git a/proto/doc/hyprpanel/config/v1/doc.md b/proto/doc/hyprpanel/config/v1/doc.md
index 3fafdfa..c7afba8 100644
--- a/proto/doc/hyprpanel/config/v1/doc.md
+++ b/proto/doc/hyprpanel/config/v1/doc.md
@@ -8,6 +8,8 @@
- [Config.Audio](#hyprpanel-config-v1-Config-Audio)
- [Config.DBUS](#hyprpanel-config-v1-Config-DBUS)
- [Config.DBUS.Brightness](#hyprpanel-config-v1-Config-DBUS-Brightness)
+ - [Config.DBUS.IdleInhibitor](#hyprpanel-config-v1-Config-DBUS-IdleInhibitor)
+ - [Config.DBUS.MediaPlayer](#hyprpanel-config-v1-Config-DBUS-MediaPlayer)
- [Config.DBUS.Notifications](#hyprpanel-config-v1-Config-DBUS-Notifications)
- [Config.DBUS.Power](#hyprpanel-config-v1-Config-DBUS-Power)
- [Config.DBUS.Shortcuts](#hyprpanel-config-v1-Config-DBUS-Shortcuts)
@@ -84,6 +86,8 @@
| shortcuts | [Config.DBUS.Shortcuts](#hyprpanel-config-v1-Config-DBUS-Shortcuts) | | shortcuts configuration. |
| brightness | [Config.DBUS.Brightness](#hyprpanel-config-v1-Config-DBUS-Brightness) | | brightness configuration. |
| power | [Config.DBUS.Power](#hyprpanel-config-v1-Config-DBUS-Power) | | power configuration. |
+| idle_inhibitor | [Config.DBUS.IdleInhibitor](#hyprpanel-config-v1-Config-DBUS-IdleInhibitor) | | idle inhibitor configuration. |
+| media_player | [Config.DBUS.MediaPlayer](#hyprpanel-config-v1-Config-DBUS-MediaPlayer) | | media player configuration. |
@@ -109,6 +113,36 @@
+
+
+### Config.DBUS.IdleInhibitor
+
+
+
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| enabled | [bool](#bool) | | toggles the idle inhibitor functionality, required for "idle_inhibitor" module. |
+
+
+
+
+
+
+
+
+### Config.DBUS.MediaPlayer
+
+
+
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| enabled | [bool](#bool) | | toggles the MediaPlayer functionality, required for "media_player" module. |
+
+
+
+
+
+
### Config.DBUS.Notifications
diff --git a/proto/doc/hyprpanel/event/v1/doc.md b/proto/doc/hyprpanel/event/v1/doc.md
index b0c936a..7340442 100644
--- a/proto/doc/hyprpanel/event/v1/doc.md
+++ b/proto/doc/hyprpanel/event/v1/doc.md
@@ -24,6 +24,8 @@
- [HyprOpenWindowValue](#hyprpanel-event-v1-HyprOpenWindowValue)
- [HyprRenameWorkspaceValue](#hyprpanel-event-v1-HyprRenameWorkspaceValue)
- [HyprWorkspaceV2Value](#hyprpanel-event-v1-HyprWorkspaceV2Value)
+ - [IdleInhibitorValue](#hyprpanel-event-v1-IdleInhibitorValue)
+ - [MediaPlayerValueChange](#hyprpanel-event-v1-MediaPlayerValueChange)
- [NotificationValue](#hyprpanel-event-v1-NotificationValue)
- [NotificationValue.Action](#hyprpanel-event-v1-NotificationValue-Action)
- [NotificationValue.Hint](#hyprpanel-event-v1-NotificationValue-Hint)
@@ -43,6 +45,8 @@
- [Direction](#hyprpanel-event-v1-Direction)
- [EventKind](#hyprpanel-event-v1-EventKind)
+ - [InhibitTarget](#hyprpanel-event-v1-InhibitTarget)
+ - [MediaPlayerState](#hyprpanel-event-v1-MediaPlayerState)
- [PowerState](#hyprpanel-event-v1-PowerState)
- [PowerType](#hyprpanel-event-v1-PowerType)
@@ -396,6 +400,49 @@
+
+
+### IdleInhibitorValue
+
+
+
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| target | [InhibitTarget](#hyprpanel-event-v1-InhibitTarget) | | |
+
+
+
+
+
+
+
+
+### MediaPlayerValueChange
+
+
+
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| state | [MediaPlayerState](#hyprpanel-event-v1-MediaPlayerState) | | |
+| can_go_next | [bool](#bool) | | |
+| can_go_previous | [bool](#bool) | | |
+| track_id | [string](#string) | | |
+| updated_at | [google.protobuf.Timestamp](#google-protobuf-Timestamp) | | |
+| position_us | [int64](#int64) | optional | |
+| length_us | [int64](#int64) | optional | |
+| title | [string](#string) | optional | |
+| artist | [string](#string) | optional | |
+| album | [string](#string) | optional | |
+| desktop_entry | [string](#string) | optional | |
+| identity | [string](#string) | optional | |
+| art_url | [string](#string) | optional | |
+| url | [string](#string) | optional | |
+
+
+
+
+
+
### NotificationValue
@@ -777,6 +824,37 @@
| EVENT_KIND_HYPR_DESTROYWORKSPACEV2 | 57 | |
| EVENT_KIND_HYPR_WORKSPACEV2 | 58 | |
| EVENT_KIND_EXEC | 59 | |
+| EVENT_KIND_IDLE_INHIBITOR_INHIBIT | 60 | |
+| EVENT_KIND_IDLE_INHIBITOR_UNINHIBIT | 61 | |
+| EVENT_KIND_MEDIA_PLAYER_CHANGE | 62 | |
+
+
+
+
+
+### InhibitTarget
+
+
+| Name | Number | Description |
+| ---- | ------ | ----------- |
+| INHIBIT_TARGET_UNSPECIFIED | 0 | |
+| INHIBIT_TARGET_IDLE | 1 | |
+| INHIBIT_TARGET_SLEEP | 2 | |
+| INHIBIT_TARGET_SHUTDOWN | 3 | |
+
+
+
+
+
+### MediaPlayerState
+
+
+| Name | Number | Description |
+| ---- | ------ | ----------- |
+| MEDIA_PLAYER_STATE_UNSPECIFIED | 0 | |
+| MEDIA_PLAYER_STATE_PLAYING | 1 | |
+| MEDIA_PLAYER_STATE_PAUSED | 2 | |
+| MEDIA_PLAYER_STATE_STOPPED | 3 | |
diff --git a/proto/doc/hyprpanel/module/v1/doc.md b/proto/doc/hyprpanel/module/v1/doc.md
index 3c0a821..19758bd 100644
--- a/proto/doc/hyprpanel/module/v1/doc.md
+++ b/proto/doc/hyprpanel/module/v1/doc.md
@@ -7,6 +7,8 @@
- [Audio](#hyprpanel-module-v1-Audio)
- [Clock](#hyprpanel-module-v1-Clock)
- [Hud](#hyprpanel-module-v1-Hud)
+ - [IdleInhibitor](#hyprpanel-module-v1-IdleInhibitor)
+ - [MediaPlayer](#hyprpanel-module-v1-MediaPlayer)
- [Module](#hyprpanel-module-v1-Module)
- [Notifications](#hyprpanel-module-v1-Notifications)
- [Pager](#hyprpanel-module-v1-Pager)
@@ -17,6 +19,7 @@
- [SystrayModule](#hyprpanel-module-v1-SystrayModule)
- [Taskbar](#hyprpanel-module-v1-Taskbar)
+ - [IdleInhibitor.DefaultTarget](#hyprpanel-module-v1-IdleInhibitor-DefaultTarget)
- [Position](#hyprpanel-module-v1-Position)
- [Systray.Status](#hyprpanel-module-v1-Systray-Status)
@@ -86,6 +89,39 @@
+
+
+### IdleInhibitor
+
+
+
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| icon_size | [uint32](#uint32) | | size in pixels for panel icon. |
+| icon_symbolic | [bool](#bool) | | display symbolic or coloured icon in panel. |
+| default_target | [IdleInhibitor.DefaultTarget](#hyprpanel-module-v1-IdleInhibitor-DefaultTarget) | | default inhibit target for left click action. |
+
+
+
+
+
+
+
+
+### MediaPlayer
+
+
+
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| icon_size | [uint32](#uint32) | | |
+| icon_symbolic | [bool](#bool) | | |
+
+
+
+
+
+
### Module
@@ -104,6 +140,8 @@
| clock | [Clock](#hyprpanel-module-v1-Clock) | | |
| session | [Session](#hyprpanel-module-v1-Session) | | |
| spacer | [Spacer](#hyprpanel-module-v1-Spacer) | | |
+| idle_inhibitor | [IdleInhibitor](#hyprpanel-module-v1-IdleInhibitor) | | |
+| media_player | [MediaPlayer](#hyprpanel-module-v1-MediaPlayer) | | |
@@ -268,6 +306,20 @@
+
+
+### IdleInhibitor.DefaultTarget
+
+
+| Name | Number | Description |
+| ---- | ------ | ----------- |
+| DEFAULT_TARGET_UNSPECIFIED | 0 | |
+| DEFAULT_TARGET_LOCK | 1 | |
+| DEFAULT_TARGET_SUSPEND | 2 | |
+| DEFAULT_TARGET_SHUTDOWN | 3 | |
+
+
+
### Position
diff --git a/proto/doc/hyprpanel/v1/doc.md b/proto/doc/hyprpanel/v1/doc.md
index dbef9f6..65edef5 100644
--- a/proto/doc/hyprpanel/v1/doc.md
+++ b/proto/doc/hyprpanel/v1/doc.md
@@ -22,6 +22,12 @@
- [HostServiceExecResponse](#hyprpanel-v1-HostServiceExecResponse)
- [HostServiceFindApplicationRequest](#hyprpanel-v1-HostServiceFindApplicationRequest)
- [HostServiceFindApplicationResponse](#hyprpanel-v1-HostServiceFindApplicationResponse)
+ - [HostServiceIdleInhibitorRequest](#hyprpanel-v1-HostServiceIdleInhibitorRequest)
+ - [HostServiceIdleInhibitorResponse](#hyprpanel-v1-HostServiceIdleInhibitorResponse)
+ - [HostServiceMediaPlayerRequest](#hyprpanel-v1-HostServiceMediaPlayerRequest)
+ - [HostServiceMediaPlayerResponse](#hyprpanel-v1-HostServiceMediaPlayerResponse)
+ - [HostServiceMediaPlayerSeekRequest](#hyprpanel-v1-HostServiceMediaPlayerSeekRequest)
+ - [HostServiceMediaPlayerSetPostionRequest](#hyprpanel-v1-HostServiceMediaPlayerSetPostionRequest)
- [HostServiceNotificationActionRequest](#hyprpanel-v1-HostServiceNotificationActionRequest)
- [HostServiceNotificationActionResponse](#hyprpanel-v1-HostServiceNotificationActionResponse)
- [HostServiceNotificationClosedRequest](#hyprpanel-v1-HostServiceNotificationClosedRequest)
@@ -323,6 +329,82 @@
+
+
+### HostServiceIdleInhibitorRequest
+
+
+
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| target | [hyprpanel.event.v1.InhibitTarget](#hyprpanel-event-v1-InhibitTarget) | | |
+
+
+
+
+
+
+
+
+### HostServiceIdleInhibitorResponse
+
+
+
+
+
+
+
+
+
+### HostServiceMediaPlayerRequest
+
+
+
+
+
+
+
+
+
+### HostServiceMediaPlayerResponse
+
+
+
+
+
+
+
+
+
+### HostServiceMediaPlayerSeekRequest
+
+
+
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| offset_us | [int64](#int64) | | |
+
+
+
+
+
+
+
+
+### HostServiceMediaPlayerSetPostionRequest
+
+
+
+| Field | Type | Label | Description |
+| ----- | ---- | ----- | ----------- |
+| track_id | [string](#string) | | |
+| position_us | [int64](#int64) | | |
+
+
+
+
+
+
### HostServiceNotificationActionRequest
@@ -724,6 +806,16 @@
| AudioSourceMuteToggle | [HostServiceAudioSourceMuteToggleRequest](#hyprpanel-v1-HostServiceAudioSourceMuteToggleRequest) | [HostServiceAudioSourceMuteToggleResponse](#hyprpanel-v1-HostServiceAudioSourceMuteToggleResponse) | |
| BrightnessAdjust | [HostServiceBrightnessAdjustRequest](#hyprpanel-v1-HostServiceBrightnessAdjustRequest) | [HostServiceBrightnessAdjustResponse](#hyprpanel-v1-HostServiceBrightnessAdjustResponse) | |
| CaptureFrame | [HostServiceCaptureFrameRequest](#hyprpanel-v1-HostServiceCaptureFrameRequest) | [HostServiceCaptureFrameResponse](#hyprpanel-v1-HostServiceCaptureFrameResponse) | |
+| IdleInhibitorInhibit | [HostServiceIdleInhibitorRequest](#hyprpanel-v1-HostServiceIdleInhibitorRequest) | [HostServiceIdleInhibitorResponse](#hyprpanel-v1-HostServiceIdleInhibitorResponse) | |
+| IdleInhibitorUninhibit | [HostServiceIdleInhibitorRequest](#hyprpanel-v1-HostServiceIdleInhibitorRequest) | [HostServiceIdleInhibitorResponse](#hyprpanel-v1-HostServiceIdleInhibitorResponse) | |
+| MediaPlayerPlayPause | [HostServiceMediaPlayerRequest](#hyprpanel-v1-HostServiceMediaPlayerRequest) | [HostServiceMediaPlayerResponse](#hyprpanel-v1-HostServiceMediaPlayerResponse) | |
+| MediaPlayerPlay | [HostServiceMediaPlayerRequest](#hyprpanel-v1-HostServiceMediaPlayerRequest) | [HostServiceMediaPlayerResponse](#hyprpanel-v1-HostServiceMediaPlayerResponse) | |
+| MediaPlayerPause | [HostServiceMediaPlayerRequest](#hyprpanel-v1-HostServiceMediaPlayerRequest) | [HostServiceMediaPlayerResponse](#hyprpanel-v1-HostServiceMediaPlayerResponse) | |
+| MediaPlayerStop | [HostServiceMediaPlayerRequest](#hyprpanel-v1-HostServiceMediaPlayerRequest) | [HostServiceMediaPlayerResponse](#hyprpanel-v1-HostServiceMediaPlayerResponse) | |
+| MediaPlayerNext | [HostServiceMediaPlayerRequest](#hyprpanel-v1-HostServiceMediaPlayerRequest) | [HostServiceMediaPlayerResponse](#hyprpanel-v1-HostServiceMediaPlayerResponse) | |
+| MediaPlayerPrevious | [HostServiceMediaPlayerRequest](#hyprpanel-v1-HostServiceMediaPlayerRequest) | [HostServiceMediaPlayerResponse](#hyprpanel-v1-HostServiceMediaPlayerResponse) | |
+| MediaPlayerSeek | [HostServiceMediaPlayerSeekRequest](#hyprpanel-v1-HostServiceMediaPlayerSeekRequest) | [HostServiceMediaPlayerResponse](#hyprpanel-v1-HostServiceMediaPlayerResponse) | |
+| MediaPlayerSetPosition | [HostServiceMediaPlayerSetPostionRequest](#hyprpanel-v1-HostServiceMediaPlayerSetPostionRequest) | [HostServiceMediaPlayerResponse](#hyprpanel-v1-HostServiceMediaPlayerResponse) | |
diff --git a/proto/hyprpanel/config/v1/config.pb.go b/proto/hyprpanel/config/v1/config.pb.go
index 26d03f0..29f7d1c 100644
--- a/proto/hyprpanel/config/v1/config.pb.go
+++ b/proto/hyprpanel/config/v1/config.pb.go
@@ -382,6 +382,8 @@ type Config_DBUS struct {
Shortcuts *Config_DBUS_Shortcuts `protobuf:"bytes,6,opt,name=shortcuts,proto3" json:"shortcuts,omitempty"` // shortcuts configuration.
Brightness *Config_DBUS_Brightness `protobuf:"bytes,7,opt,name=brightness,proto3" json:"brightness,omitempty"` // brightness configuration.
Power *Config_DBUS_Power `protobuf:"bytes,8,opt,name=power,proto3" json:"power,omitempty"` // power configuration.
+ IdleInhibitor *Config_DBUS_IdleInhibitor `protobuf:"bytes,9,opt,name=idle_inhibitor,json=idleInhibitor,proto3" json:"idle_inhibitor,omitempty"` // idle inhibitor configuration.
+ MediaPlayer *Config_DBUS_MediaPlayer `protobuf:"bytes,10,opt,name=media_player,json=mediaPlayer,proto3" json:"media_player,omitempty"` // media player configuration.
}
func (x *Config_DBUS) Reset() {
@@ -472,6 +474,20 @@ func (x *Config_DBUS) GetPower() *Config_DBUS_Power {
return nil
}
+func (x *Config_DBUS) GetIdleInhibitor() *Config_DBUS_IdleInhibitor {
+ if x != nil {
+ return x.IdleInhibitor
+ }
+ return nil
+}
+
+func (x *Config_DBUS) GetMediaPlayer() *Config_DBUS_MediaPlayer {
+ if x != nil {
+ return x.MediaPlayer
+ }
+ return nil
+}
+
type Config_Audio struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
@@ -850,6 +866,100 @@ func (x *Config_DBUS_Power) GetHudNotifications() bool {
return false
}
+type Config_DBUS_IdleInhibitor struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Enabled bool `protobuf:"varint,1,opt,name=enabled,proto3" json:"enabled,omitempty"` // toggles the idle inhibitor functionality, required for "idle_inhibitor" module.
+}
+
+func (x *Config_DBUS_IdleInhibitor) Reset() {
+ *x = Config_DBUS_IdleInhibitor{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_hyprpanel_config_v1_config_proto_msgTypes[10]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Config_DBUS_IdleInhibitor) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Config_DBUS_IdleInhibitor) ProtoMessage() {}
+
+func (x *Config_DBUS_IdleInhibitor) ProtoReflect() protoreflect.Message {
+ mi := &file_hyprpanel_config_v1_config_proto_msgTypes[10]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use Config_DBUS_IdleInhibitor.ProtoReflect.Descriptor instead.
+func (*Config_DBUS_IdleInhibitor) Descriptor() ([]byte, []int) {
+ return file_hyprpanel_config_v1_config_proto_rawDescGZIP(), []int{2, 0, 5}
+}
+
+func (x *Config_DBUS_IdleInhibitor) GetEnabled() bool {
+ if x != nil {
+ return x.Enabled
+ }
+ return false
+}
+
+type Config_DBUS_MediaPlayer struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Enabled bool `protobuf:"varint,1,opt,name=enabled,proto3" json:"enabled,omitempty"` // toggles the MediaPlayer functionality, required for "media_player" module.
+}
+
+func (x *Config_DBUS_MediaPlayer) Reset() {
+ *x = Config_DBUS_MediaPlayer{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_hyprpanel_config_v1_config_proto_msgTypes[11]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Config_DBUS_MediaPlayer) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Config_DBUS_MediaPlayer) ProtoMessage() {}
+
+func (x *Config_DBUS_MediaPlayer) ProtoReflect() protoreflect.Message {
+ mi := &file_hyprpanel_config_v1_config_proto_msgTypes[11]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use Config_DBUS_MediaPlayer.ProtoReflect.Descriptor instead.
+func (*Config_DBUS_MediaPlayer) Descriptor() ([]byte, []int) {
+ return file_hyprpanel_config_v1_config_proto_rawDescGZIP(), []int{2, 0, 6}
+}
+
+func (x *Config_DBUS_MediaPlayer) GetEnabled() bool {
+ if x != nil {
+ return x.Enabled
+ }
+ return false
+}
+
var File_hyprpanel_config_v1_config_proto protoreflect.FileDescriptor
var file_hyprpanel_config_v1_config_proto_rawDesc = []byte{
@@ -875,8 +985,8 @@ var file_hyprpanel_config_v1_config_proto_rawDesc = []byte{
0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x77, 0x69, 0x6e, 0x64, 0x6f,
0x77, 0x5f, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x77,
0x69, 0x6e, 0x64, 0x6f, 0x77, 0x43, 0x6c, 0x61, 0x73, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x69, 0x63,
- 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x69, 0x63, 0x6f, 0x6e, 0x22, 0x9e,
- 0x0d, 0x0a, 0x06, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x3a, 0x0a, 0x09, 0x6c, 0x6f, 0x67,
+ 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x69, 0x63, 0x6f, 0x6e, 0x22, 0x9a,
+ 0x0f, 0x0a, 0x06, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x3a, 0x0a, 0x09, 0x6c, 0x6f, 0x67,
0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1d, 0x2e, 0x68,
0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e,
0x76, 0x31, 0x2e, 0x4c, 0x6f, 0x67, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x52, 0x08, 0x6c, 0x6f, 0x67,
@@ -901,7 +1011,7 @@ var file_hyprpanel_config_v1_config_proto_rawDesc = []byte{
0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x52, 0x0d, 0x69, 0x63, 0x6f, 0x6e, 0x4f, 0x76, 0x65, 0x72,
0x72, 0x69, 0x64, 0x65, 0x73, 0x12, 0x25, 0x0a, 0x0e, 0x6c, 0x61, 0x75, 0x6e, 0x63, 0x68, 0x5f,
0x77, 0x72, 0x61, 0x70, 0x70, 0x65, 0x72, 0x18, 0x08, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0d, 0x6c,
- 0x61, 0x75, 0x6e, 0x63, 0x68, 0x57, 0x72, 0x61, 0x70, 0x70, 0x65, 0x72, 0x1a, 0xcb, 0x08, 0x0a,
+ 0x61, 0x75, 0x6e, 0x63, 0x68, 0x57, 0x72, 0x61, 0x70, 0x70, 0x65, 0x72, 0x1a, 0xc7, 0x0a, 0x0a,
0x04, 0x44, 0x42, 0x55, 0x53, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64,
0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12,
0x42, 0x0a, 0x0f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x6f,
@@ -935,83 +1045,99 @@ var file_hyprpanel_config_v1_config_proto_rawDesc = []byte{
0x77, 0x65, 0x72, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x68, 0x79, 0x70, 0x72,
0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x2e,
0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x44, 0x42, 0x55, 0x53, 0x2e, 0x50, 0x6f, 0x77, 0x65,
- 0x72, 0x52, 0x05, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x1a, 0x29, 0x0a, 0x0d, 0x4e, 0x6f, 0x74, 0x69,
- 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x6e, 0x61,
- 0x62, 0x6c, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x65, 0x6e, 0x61, 0x62,
- 0x6c, 0x65, 0x64, 0x1a, 0x23, 0x0a, 0x07, 0x53, 0x79, 0x73, 0x74, 0x72, 0x61, 0x79, 0x12, 0x18,
- 0x0a, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52,
- 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x1a, 0x25, 0x0a, 0x09, 0x53, 0x68, 0x6f, 0x72,
- 0x74, 0x63, 0x75, 0x74, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64,
- 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x1a,
- 0xcf, 0x01, 0x0a, 0x0a, 0x42, 0x72, 0x69, 0x67, 0x68, 0x74, 0x6e, 0x65, 0x73, 0x73, 0x12, 0x18,
- 0x0a, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52,
- 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x2e, 0x0a, 0x13, 0x61, 0x64, 0x6a, 0x75,
- 0x73, 0x74, 0x5f, 0x73, 0x74, 0x65, 0x70, 0x5f, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x18,
- 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x61, 0x64, 0x6a, 0x75, 0x73, 0x74, 0x53, 0x74, 0x65,
- 0x70, 0x50, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x12, 0x25, 0x0a, 0x0e, 0x6d, 0x69, 0x6e, 0x5f,
- 0x62, 0x72, 0x69, 0x67, 0x68, 0x74, 0x6e, 0x65, 0x73, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d,
- 0x52, 0x0d, 0x6d, 0x69, 0x6e, 0x42, 0x72, 0x69, 0x67, 0x68, 0x74, 0x6e, 0x65, 0x73, 0x73, 0x12,
- 0x23, 0x0a, 0x0d, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x6c, 0x6f, 0x67, 0x69, 0x6e, 0x64,
- 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x4c, 0x6f,
- 0x67, 0x69, 0x6e, 0x64, 0x12, 0x2b, 0x0a, 0x11, 0x68, 0x75, 0x64, 0x5f, 0x6e, 0x6f, 0x74, 0x69,
- 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52,
- 0x10, 0x68, 0x75, 0x64, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x73, 0x1a, 0xe6, 0x01, 0x0a, 0x05, 0x50, 0x6f, 0x77, 0x65, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x65,
- 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x65, 0x6e,
- 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x6c, 0x6f, 0x77, 0x5f, 0x70, 0x65, 0x72,
- 0x63, 0x65, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x6c, 0x6f, 0x77, 0x50,
- 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x12, 0x29, 0x0a, 0x10, 0x63, 0x72, 0x69, 0x74, 0x69, 0x63,
- 0x61, 0x6c, 0x5f, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d,
- 0x52, 0x0f, 0x63, 0x72, 0x69, 0x74, 0x69, 0x63, 0x61, 0x6c, 0x50, 0x65, 0x72, 0x63, 0x65, 0x6e,
- 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x6c, 0x6f, 0x77, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64,
- 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x6c, 0x6f, 0x77, 0x43, 0x6f, 0x6d, 0x6d, 0x61,
- 0x6e, 0x64, 0x12, 0x29, 0x0a, 0x10, 0x63, 0x72, 0x69, 0x74, 0x69, 0x63, 0x61, 0x6c, 0x5f, 0x63,
- 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x63, 0x72,
- 0x69, 0x74, 0x69, 0x63, 0x61, 0x6c, 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x12, 0x2b, 0x0a,
- 0x11, 0x68, 0x75, 0x64, 0x5f, 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x10, 0x68, 0x75, 0x64, 0x4e, 0x6f, 0x74,
- 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x1a, 0xb2, 0x01, 0x0a, 0x05, 0x41,
- 0x75, 0x64, 0x69, 0x6f, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18,
- 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x2e,
- 0x0a, 0x13, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x5f, 0x73, 0x74, 0x65, 0x70, 0x5f, 0x70, 0x65,
- 0x72, 0x63, 0x65, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x76, 0x6f, 0x6c,
- 0x75, 0x6d, 0x65, 0x53, 0x74, 0x65, 0x70, 0x50, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x12, 0x32,
- 0x0a, 0x15, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x5f, 0x65, 0x78, 0x63, 0x65, 0x65, 0x64, 0x5f,
- 0x6d, 0x61, 0x78, 0x69, 0x6d, 0x75, 0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x13, 0x76,
- 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x45, 0x78, 0x63, 0x65, 0x65, 0x64, 0x4d, 0x61, 0x78, 0x69, 0x6d,
- 0x75, 0x6d, 0x12, 0x2b, 0x0a, 0x11, 0x68, 0x75, 0x64, 0x5f, 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x69,
- 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x10, 0x68,
- 0x75, 0x64, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2a,
- 0x5a, 0x0a, 0x04, 0x45, 0x64, 0x67, 0x65, 0x12, 0x14, 0x0a, 0x10, 0x45, 0x44, 0x47, 0x45, 0x5f,
- 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0c, 0x0a,
- 0x08, 0x45, 0x44, 0x47, 0x45, 0x5f, 0x54, 0x4f, 0x50, 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x45,
- 0x44, 0x47, 0x45, 0x5f, 0x52, 0x49, 0x47, 0x48, 0x54, 0x10, 0x02, 0x12, 0x0f, 0x0a, 0x0b, 0x45,
- 0x44, 0x47, 0x45, 0x5f, 0x42, 0x4f, 0x54, 0x54, 0x4f, 0x4d, 0x10, 0x03, 0x12, 0x0d, 0x0a, 0x09,
- 0x45, 0x44, 0x47, 0x45, 0x5f, 0x4c, 0x45, 0x46, 0x54, 0x10, 0x04, 0x2a, 0x9f, 0x01, 0x0a, 0x08,
- 0x4c, 0x6f, 0x67, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x19, 0x0a, 0x15, 0x4c, 0x4f, 0x47, 0x5f,
- 0x4c, 0x45, 0x56, 0x45, 0x4c, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45,
- 0x44, 0x10, 0x00, 0x12, 0x13, 0x0a, 0x0f, 0x4c, 0x4f, 0x47, 0x5f, 0x4c, 0x45, 0x56, 0x45, 0x4c,
- 0x5f, 0x54, 0x52, 0x41, 0x43, 0x45, 0x10, 0x01, 0x12, 0x13, 0x0a, 0x0f, 0x4c, 0x4f, 0x47, 0x5f,
- 0x4c, 0x45, 0x56, 0x45, 0x4c, 0x5f, 0x44, 0x45, 0x42, 0x55, 0x47, 0x10, 0x02, 0x12, 0x12, 0x0a,
- 0x0e, 0x4c, 0x4f, 0x47, 0x5f, 0x4c, 0x45, 0x56, 0x45, 0x4c, 0x5f, 0x49, 0x4e, 0x46, 0x4f, 0x10,
- 0x03, 0x12, 0x12, 0x0a, 0x0e, 0x4c, 0x4f, 0x47, 0x5f, 0x4c, 0x45, 0x56, 0x45, 0x4c, 0x5f, 0x57,
- 0x41, 0x52, 0x4e, 0x10, 0x04, 0x12, 0x13, 0x0a, 0x0f, 0x4c, 0x4f, 0x47, 0x5f, 0x4c, 0x45, 0x56,
- 0x45, 0x4c, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x10, 0x05, 0x12, 0x11, 0x0a, 0x0d, 0x4c, 0x4f,
- 0x47, 0x5f, 0x4c, 0x45, 0x56, 0x45, 0x4c, 0x5f, 0x4f, 0x46, 0x46, 0x10, 0x06, 0x42, 0xd1, 0x01,
- 0x0a, 0x17, 0x63, 0x6f, 0x6d, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e,
- 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x42, 0x0b, 0x43, 0x6f, 0x6e, 0x66, 0x69,
- 0x67, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x3b, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62,
- 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x70, 0x64, 0x66, 0x2f, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e,
- 0x65, 0x6c, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e,
- 0x65, 0x6c, 0x2f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2f, 0x76, 0x31, 0x3b, 0x63, 0x6f, 0x6e,
- 0x66, 0x69, 0x67, 0x76, 0x31, 0xa2, 0x02, 0x03, 0x48, 0x43, 0x58, 0xaa, 0x02, 0x13, 0x48, 0x79,
- 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x56,
- 0x31, 0xca, 0x02, 0x13, 0x48, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x5c, 0x43, 0x6f,
- 0x6e, 0x66, 0x69, 0x67, 0x5c, 0x56, 0x31, 0xe2, 0x02, 0x1f, 0x48, 0x79, 0x70, 0x72, 0x70, 0x61,
- 0x6e, 0x65, 0x6c, 0x5c, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x5c, 0x56, 0x31, 0x5c, 0x47, 0x50,
- 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x15, 0x48, 0x79, 0x70, 0x72,
- 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x3a, 0x3a, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x3a, 0x3a, 0x56,
- 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
+ 0x72, 0x52, 0x05, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x12, 0x55, 0x0a, 0x0e, 0x69, 0x64, 0x6c, 0x65,
+ 0x5f, 0x69, 0x6e, 0x68, 0x69, 0x62, 0x69, 0x74, 0x6f, 0x72, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b,
+ 0x32, 0x2e, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x63, 0x6f, 0x6e,
+ 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x44, 0x42,
+ 0x55, 0x53, 0x2e, 0x49, 0x64, 0x6c, 0x65, 0x49, 0x6e, 0x68, 0x69, 0x62, 0x69, 0x74, 0x6f, 0x72,
+ 0x52, 0x0d, 0x69, 0x64, 0x6c, 0x65, 0x49, 0x6e, 0x68, 0x69, 0x62, 0x69, 0x74, 0x6f, 0x72, 0x12,
+ 0x4f, 0x0a, 0x0c, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x18,
+ 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65,
+ 0x6c, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6e, 0x66,
+ 0x69, 0x67, 0x2e, 0x44, 0x42, 0x55, 0x53, 0x2e, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x50, 0x6c, 0x61,
+ 0x79, 0x65, 0x72, 0x52, 0x0b, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72,
+ 0x1a, 0x29, 0x0a, 0x0d, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
+ 0x73, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01,
+ 0x28, 0x08, 0x52, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x1a, 0x23, 0x0a, 0x07, 0x53,
+ 0x79, 0x73, 0x74, 0x72, 0x61, 0x79, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65,
+ 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64,
+ 0x1a, 0x25, 0x0a, 0x09, 0x53, 0x68, 0x6f, 0x72, 0x74, 0x63, 0x75, 0x74, 0x73, 0x12, 0x18, 0x0a,
+ 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07,
+ 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x1a, 0xcf, 0x01, 0x0a, 0x0a, 0x42, 0x72, 0x69, 0x67,
+ 0x68, 0x74, 0x6e, 0x65, 0x73, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65,
+ 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64,
+ 0x12, 0x2e, 0x0a, 0x13, 0x61, 0x64, 0x6a, 0x75, 0x73, 0x74, 0x5f, 0x73, 0x74, 0x65, 0x70, 0x5f,
+ 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x61,
+ 0x64, 0x6a, 0x75, 0x73, 0x74, 0x53, 0x74, 0x65, 0x70, 0x50, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74,
+ 0x12, 0x25, 0x0a, 0x0e, 0x6d, 0x69, 0x6e, 0x5f, 0x62, 0x72, 0x69, 0x67, 0x68, 0x74, 0x6e, 0x65,
+ 0x73, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x6d, 0x69, 0x6e, 0x42, 0x72, 0x69,
+ 0x67, 0x68, 0x74, 0x6e, 0x65, 0x73, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x65, 0x6e, 0x61, 0x62, 0x6c,
+ 0x65, 0x5f, 0x6c, 0x6f, 0x67, 0x69, 0x6e, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c,
+ 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x64, 0x12, 0x2b, 0x0a, 0x11,
+ 0x68, 0x75, 0x64, 0x5f, 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
+ 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x10, 0x68, 0x75, 0x64, 0x4e, 0x6f, 0x74, 0x69,
+ 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x1a, 0xe6, 0x01, 0x0a, 0x05, 0x50, 0x6f,
+ 0x77, 0x65, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x01,
+ 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x1f, 0x0a,
+ 0x0b, 0x6c, 0x6f, 0x77, 0x5f, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01,
+ 0x28, 0x0d, 0x52, 0x0a, 0x6c, 0x6f, 0x77, 0x50, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x12, 0x29,
+ 0x0a, 0x10, 0x63, 0x72, 0x69, 0x74, 0x69, 0x63, 0x61, 0x6c, 0x5f, 0x70, 0x65, 0x72, 0x63, 0x65,
+ 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x63, 0x72, 0x69, 0x74, 0x69, 0x63,
+ 0x61, 0x6c, 0x50, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x6c, 0x6f, 0x77,
+ 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a,
+ 0x6c, 0x6f, 0x77, 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x12, 0x29, 0x0a, 0x10, 0x63, 0x72,
+ 0x69, 0x74, 0x69, 0x63, 0x61, 0x6c, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x18, 0x05,
+ 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x63, 0x72, 0x69, 0x74, 0x69, 0x63, 0x61, 0x6c, 0x43, 0x6f,
+ 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x12, 0x2b, 0x0a, 0x11, 0x68, 0x75, 0x64, 0x5f, 0x6e, 0x6f, 0x74,
+ 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08,
+ 0x52, 0x10, 0x68, 0x75, 0x64, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
+ 0x6e, 0x73, 0x1a, 0x29, 0x0a, 0x0d, 0x49, 0x64, 0x6c, 0x65, 0x49, 0x6e, 0x68, 0x69, 0x62, 0x69,
+ 0x74, 0x6f, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x01,
+ 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x1a, 0x27, 0x0a,
+ 0x0b, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x12, 0x18, 0x0a, 0x07,
+ 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x65,
+ 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x1a, 0xb2, 0x01, 0x0a, 0x05, 0x41, 0x75, 0x64, 0x69, 0x6f,
+ 0x12, 0x18, 0x0a, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28,
+ 0x08, 0x52, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x2e, 0x0a, 0x13, 0x76, 0x6f,
+ 0x6c, 0x75, 0x6d, 0x65, 0x5f, 0x73, 0x74, 0x65, 0x70, 0x5f, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e,
+ 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x53,
+ 0x74, 0x65, 0x70, 0x50, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x12, 0x32, 0x0a, 0x15, 0x76, 0x6f,
+ 0x6c, 0x75, 0x6d, 0x65, 0x5f, 0x65, 0x78, 0x63, 0x65, 0x65, 0x64, 0x5f, 0x6d, 0x61, 0x78, 0x69,
+ 0x6d, 0x75, 0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x13, 0x76, 0x6f, 0x6c, 0x75, 0x6d,
+ 0x65, 0x45, 0x78, 0x63, 0x65, 0x65, 0x64, 0x4d, 0x61, 0x78, 0x69, 0x6d, 0x75, 0x6d, 0x12, 0x2b,
+ 0x0a, 0x11, 0x68, 0x75, 0x64, 0x5f, 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69,
+ 0x6f, 0x6e, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x10, 0x68, 0x75, 0x64, 0x4e, 0x6f,
+ 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2a, 0x5a, 0x0a, 0x04, 0x45,
+ 0x64, 0x67, 0x65, 0x12, 0x14, 0x0a, 0x10, 0x45, 0x44, 0x47, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50,
+ 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0c, 0x0a, 0x08, 0x45, 0x44, 0x47,
+ 0x45, 0x5f, 0x54, 0x4f, 0x50, 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x45, 0x44, 0x47, 0x45, 0x5f,
+ 0x52, 0x49, 0x47, 0x48, 0x54, 0x10, 0x02, 0x12, 0x0f, 0x0a, 0x0b, 0x45, 0x44, 0x47, 0x45, 0x5f,
+ 0x42, 0x4f, 0x54, 0x54, 0x4f, 0x4d, 0x10, 0x03, 0x12, 0x0d, 0x0a, 0x09, 0x45, 0x44, 0x47, 0x45,
+ 0x5f, 0x4c, 0x45, 0x46, 0x54, 0x10, 0x04, 0x2a, 0x9f, 0x01, 0x0a, 0x08, 0x4c, 0x6f, 0x67, 0x4c,
+ 0x65, 0x76, 0x65, 0x6c, 0x12, 0x19, 0x0a, 0x15, 0x4c, 0x4f, 0x47, 0x5f, 0x4c, 0x45, 0x56, 0x45,
+ 0x4c, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12,
+ 0x13, 0x0a, 0x0f, 0x4c, 0x4f, 0x47, 0x5f, 0x4c, 0x45, 0x56, 0x45, 0x4c, 0x5f, 0x54, 0x52, 0x41,
+ 0x43, 0x45, 0x10, 0x01, 0x12, 0x13, 0x0a, 0x0f, 0x4c, 0x4f, 0x47, 0x5f, 0x4c, 0x45, 0x56, 0x45,
+ 0x4c, 0x5f, 0x44, 0x45, 0x42, 0x55, 0x47, 0x10, 0x02, 0x12, 0x12, 0x0a, 0x0e, 0x4c, 0x4f, 0x47,
+ 0x5f, 0x4c, 0x45, 0x56, 0x45, 0x4c, 0x5f, 0x49, 0x4e, 0x46, 0x4f, 0x10, 0x03, 0x12, 0x12, 0x0a,
+ 0x0e, 0x4c, 0x4f, 0x47, 0x5f, 0x4c, 0x45, 0x56, 0x45, 0x4c, 0x5f, 0x57, 0x41, 0x52, 0x4e, 0x10,
+ 0x04, 0x12, 0x13, 0x0a, 0x0f, 0x4c, 0x4f, 0x47, 0x5f, 0x4c, 0x45, 0x56, 0x45, 0x4c, 0x5f, 0x45,
+ 0x52, 0x52, 0x4f, 0x52, 0x10, 0x05, 0x12, 0x11, 0x0a, 0x0d, 0x4c, 0x4f, 0x47, 0x5f, 0x4c, 0x45,
+ 0x56, 0x45, 0x4c, 0x5f, 0x4f, 0x46, 0x46, 0x10, 0x06, 0x42, 0xd1, 0x01, 0x0a, 0x17, 0x63, 0x6f,
+ 0x6d, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x63, 0x6f, 0x6e, 0x66,
+ 0x69, 0x67, 0x2e, 0x76, 0x31, 0x42, 0x0b, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x50, 0x72, 0x6f,
+ 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x3b, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d,
+ 0x2f, 0x70, 0x64, 0x66, 0x2f, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2f, 0x70,
+ 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2f, 0x63,
+ 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2f, 0x76, 0x31, 0x3b, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x76,
+ 0x31, 0xa2, 0x02, 0x03, 0x48, 0x43, 0x58, 0xaa, 0x02, 0x13, 0x48, 0x79, 0x70, 0x72, 0x70, 0x61,
+ 0x6e, 0x65, 0x6c, 0x2e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x56, 0x31, 0xca, 0x02, 0x13,
+ 0x48, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x5c, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67,
+ 0x5c, 0x56, 0x31, 0xe2, 0x02, 0x1f, 0x48, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x5c,
+ 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x5c, 0x56, 0x31, 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74,
+ 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x15, 0x48, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65,
+ 0x6c, 0x3a, 0x3a, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x3a, 0x3a, 0x56, 0x31, 0x62, 0x06, 0x70,
+ 0x72, 0x6f, 0x74, 0x6f, 0x33,
}
var (
@@ -1027,7 +1153,7 @@ func file_hyprpanel_config_v1_config_proto_rawDescGZIP() []byte {
}
var file_hyprpanel_config_v1_config_proto_enumTypes = make([]protoimpl.EnumInfo, 2)
-var file_hyprpanel_config_v1_config_proto_msgTypes = make([]protoimpl.MessageInfo, 10)
+var file_hyprpanel_config_v1_config_proto_msgTypes = make([]protoimpl.MessageInfo, 12)
var file_hyprpanel_config_v1_config_proto_goTypes = []interface{}{
(Edge)(0), // 0: hyprpanel.config.v1.Edge
(LogLevel)(0), // 1: hyprpanel.config.v1.LogLevel
@@ -1041,29 +1167,33 @@ var file_hyprpanel_config_v1_config_proto_goTypes = []interface{}{
(*Config_DBUS_Shortcuts)(nil), // 9: hyprpanel.config.v1.Config.DBUS.Shortcuts
(*Config_DBUS_Brightness)(nil), // 10: hyprpanel.config.v1.Config.DBUS.Brightness
(*Config_DBUS_Power)(nil), // 11: hyprpanel.config.v1.Config.DBUS.Power
- (*v1.Module)(nil), // 12: hyprpanel.module.v1.Module
- (*durationpb.Duration)(nil), // 13: google.protobuf.Duration
+ (*Config_DBUS_IdleInhibitor)(nil), // 12: hyprpanel.config.v1.Config.DBUS.IdleInhibitor
+ (*Config_DBUS_MediaPlayer)(nil), // 13: hyprpanel.config.v1.Config.DBUS.MediaPlayer
+ (*v1.Module)(nil), // 14: hyprpanel.module.v1.Module
+ (*durationpb.Duration)(nil), // 15: google.protobuf.Duration
}
var file_hyprpanel_config_v1_config_proto_depIdxs = []int32{
0, // 0: hyprpanel.config.v1.Panel.edge:type_name -> hyprpanel.config.v1.Edge
- 12, // 1: hyprpanel.config.v1.Panel.modules:type_name -> hyprpanel.module.v1.Module
+ 14, // 1: hyprpanel.config.v1.Panel.modules:type_name -> hyprpanel.module.v1.Module
1, // 2: hyprpanel.config.v1.Config.log_level:type_name -> hyprpanel.config.v1.LogLevel
5, // 3: hyprpanel.config.v1.Config.dbus:type_name -> hyprpanel.config.v1.Config.DBUS
6, // 4: hyprpanel.config.v1.Config.audio:type_name -> hyprpanel.config.v1.Config.Audio
2, // 5: hyprpanel.config.v1.Config.panels:type_name -> hyprpanel.config.v1.Panel
3, // 6: hyprpanel.config.v1.Config.icon_overrides:type_name -> hyprpanel.config.v1.IconOverride
- 13, // 7: hyprpanel.config.v1.Config.DBUS.connect_timeout:type_name -> google.protobuf.Duration
- 13, // 8: hyprpanel.config.v1.Config.DBUS.connect_interval:type_name -> google.protobuf.Duration
+ 15, // 7: hyprpanel.config.v1.Config.DBUS.connect_timeout:type_name -> google.protobuf.Duration
+ 15, // 8: hyprpanel.config.v1.Config.DBUS.connect_interval:type_name -> google.protobuf.Duration
7, // 9: hyprpanel.config.v1.Config.DBUS.notifications:type_name -> hyprpanel.config.v1.Config.DBUS.Notifications
8, // 10: hyprpanel.config.v1.Config.DBUS.systray:type_name -> hyprpanel.config.v1.Config.DBUS.Systray
9, // 11: hyprpanel.config.v1.Config.DBUS.shortcuts:type_name -> hyprpanel.config.v1.Config.DBUS.Shortcuts
10, // 12: hyprpanel.config.v1.Config.DBUS.brightness:type_name -> hyprpanel.config.v1.Config.DBUS.Brightness
11, // 13: hyprpanel.config.v1.Config.DBUS.power:type_name -> hyprpanel.config.v1.Config.DBUS.Power
- 14, // [14:14] is the sub-list for method output_type
- 14, // [14:14] is the sub-list for method input_type
- 14, // [14:14] is the sub-list for extension type_name
- 14, // [14:14] is the sub-list for extension extendee
- 0, // [0:14] is the sub-list for field type_name
+ 12, // 14: hyprpanel.config.v1.Config.DBUS.idle_inhibitor:type_name -> hyprpanel.config.v1.Config.DBUS.IdleInhibitor
+ 13, // 15: hyprpanel.config.v1.Config.DBUS.media_player:type_name -> hyprpanel.config.v1.Config.DBUS.MediaPlayer
+ 16, // [16:16] is the sub-list for method output_type
+ 16, // [16:16] is the sub-list for method input_type
+ 16, // [16:16] is the sub-list for extension type_name
+ 16, // [16:16] is the sub-list for extension extendee
+ 0, // [0:16] is the sub-list for field type_name
}
func init() { file_hyprpanel_config_v1_config_proto_init() }
@@ -1192,6 +1322,30 @@ func file_hyprpanel_config_v1_config_proto_init() {
return nil
}
}
+ file_hyprpanel_config_v1_config_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Config_DBUS_IdleInhibitor); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_hyprpanel_config_v1_config_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Config_DBUS_MediaPlayer); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
}
type x struct{}
out := protoimpl.TypeBuilder{
@@ -1199,7 +1353,7 @@ func file_hyprpanel_config_v1_config_proto_init() {
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: file_hyprpanel_config_v1_config_proto_rawDesc,
NumEnums: 2,
- NumMessages: 10,
+ NumMessages: 12,
NumExtensions: 0,
NumServices: 0,
},
diff --git a/proto/hyprpanel/config/v1/config.proto b/proto/hyprpanel/config/v1/config.proto
index 8185d37..c28beb7 100644
--- a/proto/hyprpanel/config/v1/config.proto
+++ b/proto/hyprpanel/config/v1/config.proto
@@ -67,6 +67,14 @@ message Config {
bool hud_notifications = 6; // display HUD notifications on power state change or low power.
}
+ message IdleInhibitor {
+ bool enabled = 1; // toggles the idle inhibitor functionality, required for "idle_inhibitor" module.
+ }
+
+ message MediaPlayer {
+ bool enabled = 1; // toggles the MediaPlayer functionality, required for "media_player" module.
+ }
+
bool enabled = 1; // if false, no DBUS functionality is available.
google.protobuf.Duration connect_timeout = 2; // specifies the maximum time we will attempt to connect to the bus before failing (format: "20s").
google.protobuf.Duration connect_interval = 3; // specifies the interval that we will attempt to connect to the session bus on startup (format: "0.200s").
@@ -76,6 +84,8 @@ message Config {
Shortcuts shortcuts = 6; // shortcuts configuration.
Brightness brightness = 7; // brightness configuration.
Power power = 8; // power configuration.
+ IdleInhibitor idle_inhibitor = 9; // idle inhibitor configuration.
+ MediaPlayer media_player = 10; // media player configuration.
}
message Audio {
diff --git a/proto/hyprpanel/event/v1/event.pb.go b/proto/hyprpanel/event/v1/event.pb.go
index 769bbf1..b4850c2 100644
--- a/proto/hyprpanel/event/v1/event.pb.go
+++ b/proto/hyprpanel/event/v1/event.pb.go
@@ -12,6 +12,7 @@ import (
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
anypb "google.golang.org/protobuf/types/known/anypb"
durationpb "google.golang.org/protobuf/types/known/durationpb"
+ timestamppb "google.golang.org/protobuf/types/known/timestamppb"
reflect "reflect"
sync "sync"
)
@@ -200,6 +201,110 @@ func (PowerState) EnumDescriptor() ([]byte, []int) {
return file_hyprpanel_event_v1_event_proto_rawDescGZIP(), []int{2}
}
+type InhibitTarget int32
+
+const (
+ InhibitTarget_INHIBIT_TARGET_UNSPECIFIED InhibitTarget = 0
+ InhibitTarget_INHIBIT_TARGET_IDLE InhibitTarget = 1
+ InhibitTarget_INHIBIT_TARGET_SLEEP InhibitTarget = 2
+ InhibitTarget_INHIBIT_TARGET_SHUTDOWN InhibitTarget = 3
+)
+
+// Enum value maps for InhibitTarget.
+var (
+ InhibitTarget_name = map[int32]string{
+ 0: "INHIBIT_TARGET_UNSPECIFIED",
+ 1: "INHIBIT_TARGET_IDLE",
+ 2: "INHIBIT_TARGET_SLEEP",
+ 3: "INHIBIT_TARGET_SHUTDOWN",
+ }
+ InhibitTarget_value = map[string]int32{
+ "INHIBIT_TARGET_UNSPECIFIED": 0,
+ "INHIBIT_TARGET_IDLE": 1,
+ "INHIBIT_TARGET_SLEEP": 2,
+ "INHIBIT_TARGET_SHUTDOWN": 3,
+ }
+)
+
+func (x InhibitTarget) Enum() *InhibitTarget {
+ p := new(InhibitTarget)
+ *p = x
+ return p
+}
+
+func (x InhibitTarget) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
+}
+
+func (InhibitTarget) Descriptor() protoreflect.EnumDescriptor {
+ return file_hyprpanel_event_v1_event_proto_enumTypes[3].Descriptor()
+}
+
+func (InhibitTarget) Type() protoreflect.EnumType {
+ return &file_hyprpanel_event_v1_event_proto_enumTypes[3]
+}
+
+func (x InhibitTarget) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
+}
+
+// Deprecated: Use InhibitTarget.Descriptor instead.
+func (InhibitTarget) EnumDescriptor() ([]byte, []int) {
+ return file_hyprpanel_event_v1_event_proto_rawDescGZIP(), []int{3}
+}
+
+type MediaPlayerState int32
+
+const (
+ MediaPlayerState_MEDIA_PLAYER_STATE_UNSPECIFIED MediaPlayerState = 0
+ MediaPlayerState_MEDIA_PLAYER_STATE_PLAYING MediaPlayerState = 1
+ MediaPlayerState_MEDIA_PLAYER_STATE_PAUSED MediaPlayerState = 2
+ MediaPlayerState_MEDIA_PLAYER_STATE_STOPPED MediaPlayerState = 3
+)
+
+// Enum value maps for MediaPlayerState.
+var (
+ MediaPlayerState_name = map[int32]string{
+ 0: "MEDIA_PLAYER_STATE_UNSPECIFIED",
+ 1: "MEDIA_PLAYER_STATE_PLAYING",
+ 2: "MEDIA_PLAYER_STATE_PAUSED",
+ 3: "MEDIA_PLAYER_STATE_STOPPED",
+ }
+ MediaPlayerState_value = map[string]int32{
+ "MEDIA_PLAYER_STATE_UNSPECIFIED": 0,
+ "MEDIA_PLAYER_STATE_PLAYING": 1,
+ "MEDIA_PLAYER_STATE_PAUSED": 2,
+ "MEDIA_PLAYER_STATE_STOPPED": 3,
+ }
+)
+
+func (x MediaPlayerState) Enum() *MediaPlayerState {
+ p := new(MediaPlayerState)
+ *p = x
+ return p
+}
+
+func (x MediaPlayerState) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
+}
+
+func (MediaPlayerState) Descriptor() protoreflect.EnumDescriptor {
+ return file_hyprpanel_event_v1_event_proto_enumTypes[4].Descriptor()
+}
+
+func (MediaPlayerState) Type() protoreflect.EnumType {
+ return &file_hyprpanel_event_v1_event_proto_enumTypes[4]
+}
+
+func (x MediaPlayerState) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
+}
+
+// Deprecated: Use MediaPlayerState.Descriptor instead.
+func (MediaPlayerState) EnumDescriptor() ([]byte, []int) {
+ return file_hyprpanel_event_v1_event_proto_rawDescGZIP(), []int{4}
+}
+
type EventKind int32
const (
@@ -262,6 +367,9 @@ const (
EventKind_EVENT_KIND_HYPR_DESTROYWORKSPACEV2 EventKind = 57
EventKind_EVENT_KIND_HYPR_WORKSPACEV2 EventKind = 58
EventKind_EVENT_KIND_EXEC EventKind = 59
+ EventKind_EVENT_KIND_IDLE_INHIBITOR_INHIBIT EventKind = 60
+ EventKind_EVENT_KIND_IDLE_INHIBITOR_UNINHIBIT EventKind = 61
+ EventKind_EVENT_KIND_MEDIA_PLAYER_CHANGE EventKind = 62
)
// Enum value maps for EventKind.
@@ -326,6 +434,9 @@ var (
57: "EVENT_KIND_HYPR_DESTROYWORKSPACEV2",
58: "EVENT_KIND_HYPR_WORKSPACEV2",
59: "EVENT_KIND_EXEC",
+ 60: "EVENT_KIND_IDLE_INHIBITOR_INHIBIT",
+ 61: "EVENT_KIND_IDLE_INHIBITOR_UNINHIBIT",
+ 62: "EVENT_KIND_MEDIA_PLAYER_CHANGE",
}
EventKind_value = map[string]int32{
"EVENT_KIND_UNSPECIFIED": 0,
@@ -387,6 +498,9 @@ var (
"EVENT_KIND_HYPR_DESTROYWORKSPACEV2": 57,
"EVENT_KIND_HYPR_WORKSPACEV2": 58,
"EVENT_KIND_EXEC": 59,
+ "EVENT_KIND_IDLE_INHIBITOR_INHIBIT": 60,
+ "EVENT_KIND_IDLE_INHIBITOR_UNINHIBIT": 61,
+ "EVENT_KIND_MEDIA_PLAYER_CHANGE": 62,
}
)
@@ -401,11 +515,11 @@ func (x EventKind) String() string {
}
func (EventKind) Descriptor() protoreflect.EnumDescriptor {
- return file_hyprpanel_event_v1_event_proto_enumTypes[3].Descriptor()
+ return file_hyprpanel_event_v1_event_proto_enumTypes[5].Descriptor()
}
func (EventKind) Type() protoreflect.EnumType {
- return &file_hyprpanel_event_v1_event_proto_enumTypes[3]
+ return &file_hyprpanel_event_v1_event_proto_enumTypes[5]
}
func (x EventKind) Number() protoreflect.EnumNumber {
@@ -414,7 +528,158 @@ func (x EventKind) Number() protoreflect.EnumNumber {
// Deprecated: Use EventKind.Descriptor instead.
func (EventKind) EnumDescriptor() ([]byte, []int) {
- return file_hyprpanel_event_v1_event_proto_rawDescGZIP(), []int{3}
+ return file_hyprpanel_event_v1_event_proto_rawDescGZIP(), []int{5}
+}
+
+type MediaPlayerValueChange struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ State MediaPlayerState `protobuf:"varint,1,opt,name=state,proto3,enum=hyprpanel.event.v1.MediaPlayerState" json:"state,omitempty"`
+ CanGoNext bool `protobuf:"varint,2,opt,name=can_go_next,json=canGoNext,proto3" json:"can_go_next,omitempty"`
+ CanGoPrevious bool `protobuf:"varint,3,opt,name=can_go_previous,json=canGoPrevious,proto3" json:"can_go_previous,omitempty"`
+ TrackId string `protobuf:"bytes,4,opt,name=track_id,json=trackId,proto3" json:"track_id,omitempty"`
+ UpdatedAt *timestamppb.Timestamp `protobuf:"bytes,5,opt,name=updated_at,json=updatedAt,proto3" json:"updated_at,omitempty"`
+ PositionUs *int64 `protobuf:"varint,6,opt,name=position_us,json=positionUs,proto3,oneof" json:"position_us,omitempty"`
+ LengthUs *int64 `protobuf:"varint,7,opt,name=length_us,json=lengthUs,proto3,oneof" json:"length_us,omitempty"`
+ Title *string `protobuf:"bytes,8,opt,name=title,proto3,oneof" json:"title,omitempty"`
+ Artist *string `protobuf:"bytes,9,opt,name=artist,proto3,oneof" json:"artist,omitempty"`
+ Album *string `protobuf:"bytes,10,opt,name=album,proto3,oneof" json:"album,omitempty"`
+ DesktopEntry *string `protobuf:"bytes,11,opt,name=desktop_entry,json=desktopEntry,proto3,oneof" json:"desktop_entry,omitempty"`
+ Identity *string `protobuf:"bytes,12,opt,name=identity,proto3,oneof" json:"identity,omitempty"`
+ ArtUrl *string `protobuf:"bytes,13,opt,name=art_url,json=artUrl,proto3,oneof" json:"art_url,omitempty"`
+ Url *string `protobuf:"bytes,14,opt,name=url,proto3,oneof" json:"url,omitempty"`
+}
+
+func (x *MediaPlayerValueChange) Reset() {
+ *x = MediaPlayerValueChange{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_hyprpanel_event_v1_event_proto_msgTypes[0]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *MediaPlayerValueChange) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*MediaPlayerValueChange) ProtoMessage() {}
+
+func (x *MediaPlayerValueChange) ProtoReflect() protoreflect.Message {
+ mi := &file_hyprpanel_event_v1_event_proto_msgTypes[0]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use MediaPlayerValueChange.ProtoReflect.Descriptor instead.
+func (*MediaPlayerValueChange) Descriptor() ([]byte, []int) {
+ return file_hyprpanel_event_v1_event_proto_rawDescGZIP(), []int{0}
+}
+
+func (x *MediaPlayerValueChange) GetState() MediaPlayerState {
+ if x != nil {
+ return x.State
+ }
+ return MediaPlayerState_MEDIA_PLAYER_STATE_UNSPECIFIED
+}
+
+func (x *MediaPlayerValueChange) GetCanGoNext() bool {
+ if x != nil {
+ return x.CanGoNext
+ }
+ return false
+}
+
+func (x *MediaPlayerValueChange) GetCanGoPrevious() bool {
+ if x != nil {
+ return x.CanGoPrevious
+ }
+ return false
+}
+
+func (x *MediaPlayerValueChange) GetTrackId() string {
+ if x != nil {
+ return x.TrackId
+ }
+ return ""
+}
+
+func (x *MediaPlayerValueChange) GetUpdatedAt() *timestamppb.Timestamp {
+ if x != nil {
+ return x.UpdatedAt
+ }
+ return nil
+}
+
+func (x *MediaPlayerValueChange) GetPositionUs() int64 {
+ if x != nil && x.PositionUs != nil {
+ return *x.PositionUs
+ }
+ return 0
+}
+
+func (x *MediaPlayerValueChange) GetLengthUs() int64 {
+ if x != nil && x.LengthUs != nil {
+ return *x.LengthUs
+ }
+ return 0
+}
+
+func (x *MediaPlayerValueChange) GetTitle() string {
+ if x != nil && x.Title != nil {
+ return *x.Title
+ }
+ return ""
+}
+
+func (x *MediaPlayerValueChange) GetArtist() string {
+ if x != nil && x.Artist != nil {
+ return *x.Artist
+ }
+ return ""
+}
+
+func (x *MediaPlayerValueChange) GetAlbum() string {
+ if x != nil && x.Album != nil {
+ return *x.Album
+ }
+ return ""
+}
+
+func (x *MediaPlayerValueChange) GetDesktopEntry() string {
+ if x != nil && x.DesktopEntry != nil {
+ return *x.DesktopEntry
+ }
+ return ""
+}
+
+func (x *MediaPlayerValueChange) GetIdentity() string {
+ if x != nil && x.Identity != nil {
+ return *x.Identity
+ }
+ return ""
+}
+
+func (x *MediaPlayerValueChange) GetArtUrl() string {
+ if x != nil && x.ArtUrl != nil {
+ return *x.ArtUrl
+ }
+ return ""
+}
+
+func (x *MediaPlayerValueChange) GetUrl() string {
+ if x != nil && x.Url != nil {
+ return *x.Url
+ }
+ return ""
}
type HyprWorkspaceV2Value struct {
@@ -429,7 +694,7 @@ type HyprWorkspaceV2Value struct {
func (x *HyprWorkspaceV2Value) Reset() {
*x = HyprWorkspaceV2Value{}
if protoimpl.UnsafeEnabled {
- mi := &file_hyprpanel_event_v1_event_proto_msgTypes[0]
+ mi := &file_hyprpanel_event_v1_event_proto_msgTypes[1]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -442,7 +707,7 @@ func (x *HyprWorkspaceV2Value) String() string {
func (*HyprWorkspaceV2Value) ProtoMessage() {}
func (x *HyprWorkspaceV2Value) ProtoReflect() protoreflect.Message {
- mi := &file_hyprpanel_event_v1_event_proto_msgTypes[0]
+ mi := &file_hyprpanel_event_v1_event_proto_msgTypes[1]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -455,7 +720,7 @@ func (x *HyprWorkspaceV2Value) ProtoReflect() protoreflect.Message {
// Deprecated: Use HyprWorkspaceV2Value.ProtoReflect.Descriptor instead.
func (*HyprWorkspaceV2Value) Descriptor() ([]byte, []int) {
- return file_hyprpanel_event_v1_event_proto_rawDescGZIP(), []int{0}
+ return file_hyprpanel_event_v1_event_proto_rawDescGZIP(), []int{1}
}
func (x *HyprWorkspaceV2Value) GetId() int32 {
@@ -484,7 +749,7 @@ type HyprDestroyWorkspaceV2Value struct {
func (x *HyprDestroyWorkspaceV2Value) Reset() {
*x = HyprDestroyWorkspaceV2Value{}
if protoimpl.UnsafeEnabled {
- mi := &file_hyprpanel_event_v1_event_proto_msgTypes[1]
+ mi := &file_hyprpanel_event_v1_event_proto_msgTypes[2]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -497,7 +762,7 @@ func (x *HyprDestroyWorkspaceV2Value) String() string {
func (*HyprDestroyWorkspaceV2Value) ProtoMessage() {}
func (x *HyprDestroyWorkspaceV2Value) ProtoReflect() protoreflect.Message {
- mi := &file_hyprpanel_event_v1_event_proto_msgTypes[1]
+ mi := &file_hyprpanel_event_v1_event_proto_msgTypes[2]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -510,7 +775,7 @@ func (x *HyprDestroyWorkspaceV2Value) ProtoReflect() protoreflect.Message {
// Deprecated: Use HyprDestroyWorkspaceV2Value.ProtoReflect.Descriptor instead.
func (*HyprDestroyWorkspaceV2Value) Descriptor() ([]byte, []int) {
- return file_hyprpanel_event_v1_event_proto_rawDescGZIP(), []int{1}
+ return file_hyprpanel_event_v1_event_proto_rawDescGZIP(), []int{2}
}
func (x *HyprDestroyWorkspaceV2Value) GetId() int32 {
@@ -539,7 +804,7 @@ type HyprCreateWorkspaceV2Value struct {
func (x *HyprCreateWorkspaceV2Value) Reset() {
*x = HyprCreateWorkspaceV2Value{}
if protoimpl.UnsafeEnabled {
- mi := &file_hyprpanel_event_v1_event_proto_msgTypes[2]
+ mi := &file_hyprpanel_event_v1_event_proto_msgTypes[3]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -552,7 +817,7 @@ func (x *HyprCreateWorkspaceV2Value) String() string {
func (*HyprCreateWorkspaceV2Value) ProtoMessage() {}
func (x *HyprCreateWorkspaceV2Value) ProtoReflect() protoreflect.Message {
- mi := &file_hyprpanel_event_v1_event_proto_msgTypes[2]
+ mi := &file_hyprpanel_event_v1_event_proto_msgTypes[3]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -565,7 +830,7 @@ func (x *HyprCreateWorkspaceV2Value) ProtoReflect() protoreflect.Message {
// Deprecated: Use HyprCreateWorkspaceV2Value.ProtoReflect.Descriptor instead.
func (*HyprCreateWorkspaceV2Value) Descriptor() ([]byte, []int) {
- return file_hyprpanel_event_v1_event_proto_rawDescGZIP(), []int{2}
+ return file_hyprpanel_event_v1_event_proto_rawDescGZIP(), []int{3}
}
func (x *HyprCreateWorkspaceV2Value) GetId() int32 {
@@ -594,7 +859,7 @@ type HyprMoveWindowValue struct {
func (x *HyprMoveWindowValue) Reset() {
*x = HyprMoveWindowValue{}
if protoimpl.UnsafeEnabled {
- mi := &file_hyprpanel_event_v1_event_proto_msgTypes[3]
+ mi := &file_hyprpanel_event_v1_event_proto_msgTypes[4]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -607,7 +872,7 @@ func (x *HyprMoveWindowValue) String() string {
func (*HyprMoveWindowValue) ProtoMessage() {}
func (x *HyprMoveWindowValue) ProtoReflect() protoreflect.Message {
- mi := &file_hyprpanel_event_v1_event_proto_msgTypes[3]
+ mi := &file_hyprpanel_event_v1_event_proto_msgTypes[4]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -620,7 +885,7 @@ func (x *HyprMoveWindowValue) ProtoReflect() protoreflect.Message {
// Deprecated: Use HyprMoveWindowValue.ProtoReflect.Descriptor instead.
func (*HyprMoveWindowValue) Descriptor() ([]byte, []int) {
- return file_hyprpanel_event_v1_event_proto_rawDescGZIP(), []int{3}
+ return file_hyprpanel_event_v1_event_proto_rawDescGZIP(), []int{4}
}
func (x *HyprMoveWindowValue) GetAddress() string {
@@ -650,7 +915,7 @@ type HyprMoveWindowV2Value struct {
func (x *HyprMoveWindowV2Value) Reset() {
*x = HyprMoveWindowV2Value{}
if protoimpl.UnsafeEnabled {
- mi := &file_hyprpanel_event_v1_event_proto_msgTypes[4]
+ mi := &file_hyprpanel_event_v1_event_proto_msgTypes[5]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -663,7 +928,7 @@ func (x *HyprMoveWindowV2Value) String() string {
func (*HyprMoveWindowV2Value) ProtoMessage() {}
func (x *HyprMoveWindowV2Value) ProtoReflect() protoreflect.Message {
- mi := &file_hyprpanel_event_v1_event_proto_msgTypes[4]
+ mi := &file_hyprpanel_event_v1_event_proto_msgTypes[5]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -676,7 +941,7 @@ func (x *HyprMoveWindowV2Value) ProtoReflect() protoreflect.Message {
// Deprecated: Use HyprMoveWindowV2Value.ProtoReflect.Descriptor instead.
func (*HyprMoveWindowV2Value) Descriptor() ([]byte, []int) {
- return file_hyprpanel_event_v1_event_proto_rawDescGZIP(), []int{4}
+ return file_hyprpanel_event_v1_event_proto_rawDescGZIP(), []int{5}
}
func (x *HyprMoveWindowV2Value) GetAddress() string {
@@ -712,7 +977,7 @@ type HyprMoveWorkspaceValue struct {
func (x *HyprMoveWorkspaceValue) Reset() {
*x = HyprMoveWorkspaceValue{}
if protoimpl.UnsafeEnabled {
- mi := &file_hyprpanel_event_v1_event_proto_msgTypes[5]
+ mi := &file_hyprpanel_event_v1_event_proto_msgTypes[6]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -725,7 +990,7 @@ func (x *HyprMoveWorkspaceValue) String() string {
func (*HyprMoveWorkspaceValue) ProtoMessage() {}
func (x *HyprMoveWorkspaceValue) ProtoReflect() protoreflect.Message {
- mi := &file_hyprpanel_event_v1_event_proto_msgTypes[5]
+ mi := &file_hyprpanel_event_v1_event_proto_msgTypes[6]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -738,7 +1003,7 @@ func (x *HyprMoveWorkspaceValue) ProtoReflect() protoreflect.Message {
// Deprecated: Use HyprMoveWorkspaceValue.ProtoReflect.Descriptor instead.
func (*HyprMoveWorkspaceValue) Descriptor() ([]byte, []int) {
- return file_hyprpanel_event_v1_event_proto_rawDescGZIP(), []int{5}
+ return file_hyprpanel_event_v1_event_proto_rawDescGZIP(), []int{6}
}
func (x *HyprMoveWorkspaceValue) GetName() string {
@@ -768,7 +1033,7 @@ type HyprMoveWorkspaceV2Value struct {
func (x *HyprMoveWorkspaceV2Value) Reset() {
*x = HyprMoveWorkspaceV2Value{}
if protoimpl.UnsafeEnabled {
- mi := &file_hyprpanel_event_v1_event_proto_msgTypes[6]
+ mi := &file_hyprpanel_event_v1_event_proto_msgTypes[7]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -781,7 +1046,7 @@ func (x *HyprMoveWorkspaceV2Value) String() string {
func (*HyprMoveWorkspaceV2Value) ProtoMessage() {}
func (x *HyprMoveWorkspaceV2Value) ProtoReflect() protoreflect.Message {
- mi := &file_hyprpanel_event_v1_event_proto_msgTypes[6]
+ mi := &file_hyprpanel_event_v1_event_proto_msgTypes[7]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -794,7 +1059,7 @@ func (x *HyprMoveWorkspaceV2Value) ProtoReflect() protoreflect.Message {
// Deprecated: Use HyprMoveWorkspaceV2Value.ProtoReflect.Descriptor instead.
func (*HyprMoveWorkspaceV2Value) Descriptor() ([]byte, []int) {
- return file_hyprpanel_event_v1_event_proto_rawDescGZIP(), []int{6}
+ return file_hyprpanel_event_v1_event_proto_rawDescGZIP(), []int{7}
}
func (x *HyprMoveWorkspaceV2Value) GetId() int32 {
@@ -830,7 +1095,7 @@ type HyprRenameWorkspaceValue struct {
func (x *HyprRenameWorkspaceValue) Reset() {
*x = HyprRenameWorkspaceValue{}
if protoimpl.UnsafeEnabled {
- mi := &file_hyprpanel_event_v1_event_proto_msgTypes[7]
+ mi := &file_hyprpanel_event_v1_event_proto_msgTypes[8]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -843,7 +1108,7 @@ func (x *HyprRenameWorkspaceValue) String() string {
func (*HyprRenameWorkspaceValue) ProtoMessage() {}
func (x *HyprRenameWorkspaceValue) ProtoReflect() protoreflect.Message {
- mi := &file_hyprpanel_event_v1_event_proto_msgTypes[7]
+ mi := &file_hyprpanel_event_v1_event_proto_msgTypes[8]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -856,7 +1121,7 @@ func (x *HyprRenameWorkspaceValue) ProtoReflect() protoreflect.Message {
// Deprecated: Use HyprRenameWorkspaceValue.ProtoReflect.Descriptor instead.
func (*HyprRenameWorkspaceValue) Descriptor() ([]byte, []int) {
- return file_hyprpanel_event_v1_event_proto_rawDescGZIP(), []int{7}
+ return file_hyprpanel_event_v1_event_proto_rawDescGZIP(), []int{8}
}
func (x *HyprRenameWorkspaceValue) GetId() int32 {
@@ -885,7 +1150,7 @@ type HyprActiveWindowValue struct {
func (x *HyprActiveWindowValue) Reset() {
*x = HyprActiveWindowValue{}
if protoimpl.UnsafeEnabled {
- mi := &file_hyprpanel_event_v1_event_proto_msgTypes[8]
+ mi := &file_hyprpanel_event_v1_event_proto_msgTypes[9]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -898,7 +1163,7 @@ func (x *HyprActiveWindowValue) String() string {
func (*HyprActiveWindowValue) ProtoMessage() {}
func (x *HyprActiveWindowValue) ProtoReflect() protoreflect.Message {
- mi := &file_hyprpanel_event_v1_event_proto_msgTypes[8]
+ mi := &file_hyprpanel_event_v1_event_proto_msgTypes[9]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -911,7 +1176,7 @@ func (x *HyprActiveWindowValue) ProtoReflect() protoreflect.Message {
// Deprecated: Use HyprActiveWindowValue.ProtoReflect.Descriptor instead.
func (*HyprActiveWindowValue) Descriptor() ([]byte, []int) {
- return file_hyprpanel_event_v1_event_proto_rawDescGZIP(), []int{8}
+ return file_hyprpanel_event_v1_event_proto_rawDescGZIP(), []int{9}
}
func (x *HyprActiveWindowValue) GetClass() string {
@@ -942,7 +1207,7 @@ type HyprOpenWindowValue struct {
func (x *HyprOpenWindowValue) Reset() {
*x = HyprOpenWindowValue{}
if protoimpl.UnsafeEnabled {
- mi := &file_hyprpanel_event_v1_event_proto_msgTypes[9]
+ mi := &file_hyprpanel_event_v1_event_proto_msgTypes[10]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -955,7 +1220,7 @@ func (x *HyprOpenWindowValue) String() string {
func (*HyprOpenWindowValue) ProtoMessage() {}
func (x *HyprOpenWindowValue) ProtoReflect() protoreflect.Message {
- mi := &file_hyprpanel_event_v1_event_proto_msgTypes[9]
+ mi := &file_hyprpanel_event_v1_event_proto_msgTypes[10]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -968,7 +1233,7 @@ func (x *HyprOpenWindowValue) ProtoReflect() protoreflect.Message {
// Deprecated: Use HyprOpenWindowValue.ProtoReflect.Descriptor instead.
func (*HyprOpenWindowValue) Descriptor() ([]byte, []int) {
- return file_hyprpanel_event_v1_event_proto_rawDescGZIP(), []int{9}
+ return file_hyprpanel_event_v1_event_proto_rawDescGZIP(), []int{10}
}
func (x *HyprOpenWindowValue) GetAddress() string {
@@ -1018,7 +1283,7 @@ type StatusNotifierValue struct {
func (x *StatusNotifierValue) Reset() {
*x = StatusNotifierValue{}
if protoimpl.UnsafeEnabled {
- mi := &file_hyprpanel_event_v1_event_proto_msgTypes[10]
+ mi := &file_hyprpanel_event_v1_event_proto_msgTypes[11]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -1031,7 +1296,7 @@ func (x *StatusNotifierValue) String() string {
func (*StatusNotifierValue) ProtoMessage() {}
func (x *StatusNotifierValue) ProtoReflect() protoreflect.Message {
- mi := &file_hyprpanel_event_v1_event_proto_msgTypes[10]
+ mi := &file_hyprpanel_event_v1_event_proto_msgTypes[11]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -1044,7 +1309,7 @@ func (x *StatusNotifierValue) ProtoReflect() protoreflect.Message {
// Deprecated: Use StatusNotifierValue.ProtoReflect.Descriptor instead.
func (*StatusNotifierValue) Descriptor() ([]byte, []int) {
- return file_hyprpanel_event_v1_event_proto_rawDescGZIP(), []int{10}
+ return file_hyprpanel_event_v1_event_proto_rawDescGZIP(), []int{11}
}
func (x *StatusNotifierValue) GetBusName() string {
@@ -1122,7 +1387,7 @@ type UpdateTitleValue struct {
func (x *UpdateTitleValue) Reset() {
*x = UpdateTitleValue{}
if protoimpl.UnsafeEnabled {
- mi := &file_hyprpanel_event_v1_event_proto_msgTypes[11]
+ mi := &file_hyprpanel_event_v1_event_proto_msgTypes[12]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -1135,7 +1400,7 @@ func (x *UpdateTitleValue) String() string {
func (*UpdateTitleValue) ProtoMessage() {}
func (x *UpdateTitleValue) ProtoReflect() protoreflect.Message {
- mi := &file_hyprpanel_event_v1_event_proto_msgTypes[11]
+ mi := &file_hyprpanel_event_v1_event_proto_msgTypes[12]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -1148,7 +1413,7 @@ func (x *UpdateTitleValue) ProtoReflect() protoreflect.Message {
// Deprecated: Use UpdateTitleValue.ProtoReflect.Descriptor instead.
func (*UpdateTitleValue) Descriptor() ([]byte, []int) {
- return file_hyprpanel_event_v1_event_proto_rawDescGZIP(), []int{11}
+ return file_hyprpanel_event_v1_event_proto_rawDescGZIP(), []int{12}
}
func (x *UpdateTitleValue) GetBusName() string {
@@ -1177,7 +1442,7 @@ type UpdateTooltipValue struct {
func (x *UpdateTooltipValue) Reset() {
*x = UpdateTooltipValue{}
if protoimpl.UnsafeEnabled {
- mi := &file_hyprpanel_event_v1_event_proto_msgTypes[12]
+ mi := &file_hyprpanel_event_v1_event_proto_msgTypes[13]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -1190,7 +1455,7 @@ func (x *UpdateTooltipValue) String() string {
func (*UpdateTooltipValue) ProtoMessage() {}
func (x *UpdateTooltipValue) ProtoReflect() protoreflect.Message {
- mi := &file_hyprpanel_event_v1_event_proto_msgTypes[12]
+ mi := &file_hyprpanel_event_v1_event_proto_msgTypes[13]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -1203,7 +1468,7 @@ func (x *UpdateTooltipValue) ProtoReflect() protoreflect.Message {
// Deprecated: Use UpdateTooltipValue.ProtoReflect.Descriptor instead.
func (*UpdateTooltipValue) Descriptor() ([]byte, []int) {
- return file_hyprpanel_event_v1_event_proto_rawDescGZIP(), []int{12}
+ return file_hyprpanel_event_v1_event_proto_rawDescGZIP(), []int{13}
}
func (x *UpdateTooltipValue) GetBusName() string {
@@ -1232,7 +1497,7 @@ type UpdateIconValue struct {
func (x *UpdateIconValue) Reset() {
*x = UpdateIconValue{}
if protoimpl.UnsafeEnabled {
- mi := &file_hyprpanel_event_v1_event_proto_msgTypes[13]
+ mi := &file_hyprpanel_event_v1_event_proto_msgTypes[14]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -1245,7 +1510,7 @@ func (x *UpdateIconValue) String() string {
func (*UpdateIconValue) ProtoMessage() {}
func (x *UpdateIconValue) ProtoReflect() protoreflect.Message {
- mi := &file_hyprpanel_event_v1_event_proto_msgTypes[13]
+ mi := &file_hyprpanel_event_v1_event_proto_msgTypes[14]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -1258,7 +1523,7 @@ func (x *UpdateIconValue) ProtoReflect() protoreflect.Message {
// Deprecated: Use UpdateIconValue.ProtoReflect.Descriptor instead.
func (*UpdateIconValue) Descriptor() ([]byte, []int) {
- return file_hyprpanel_event_v1_event_proto_rawDescGZIP(), []int{13}
+ return file_hyprpanel_event_v1_event_proto_rawDescGZIP(), []int{14}
}
func (x *UpdateIconValue) GetBusName() string {
@@ -1287,7 +1552,7 @@ type UpdateStatusValue struct {
func (x *UpdateStatusValue) Reset() {
*x = UpdateStatusValue{}
if protoimpl.UnsafeEnabled {
- mi := &file_hyprpanel_event_v1_event_proto_msgTypes[14]
+ mi := &file_hyprpanel_event_v1_event_proto_msgTypes[15]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -1300,7 +1565,7 @@ func (x *UpdateStatusValue) String() string {
func (*UpdateStatusValue) ProtoMessage() {}
func (x *UpdateStatusValue) ProtoReflect() protoreflect.Message {
- mi := &file_hyprpanel_event_v1_event_proto_msgTypes[14]
+ mi := &file_hyprpanel_event_v1_event_proto_msgTypes[15]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -1313,7 +1578,7 @@ func (x *UpdateStatusValue) ProtoReflect() protoreflect.Message {
// Deprecated: Use UpdateStatusValue.ProtoReflect.Descriptor instead.
func (*UpdateStatusValue) Descriptor() ([]byte, []int) {
- return file_hyprpanel_event_v1_event_proto_rawDescGZIP(), []int{14}
+ return file_hyprpanel_event_v1_event_proto_rawDescGZIP(), []int{15}
}
func (x *UpdateStatusValue) GetBusName() string {
@@ -1342,7 +1607,7 @@ type UpdateMenuValue struct {
func (x *UpdateMenuValue) Reset() {
*x = UpdateMenuValue{}
if protoimpl.UnsafeEnabled {
- mi := &file_hyprpanel_event_v1_event_proto_msgTypes[15]
+ mi := &file_hyprpanel_event_v1_event_proto_msgTypes[16]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -1355,7 +1620,7 @@ func (x *UpdateMenuValue) String() string {
func (*UpdateMenuValue) ProtoMessage() {}
func (x *UpdateMenuValue) ProtoReflect() protoreflect.Message {
- mi := &file_hyprpanel_event_v1_event_proto_msgTypes[15]
+ mi := &file_hyprpanel_event_v1_event_proto_msgTypes[16]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -1368,7 +1633,7 @@ func (x *UpdateMenuValue) ProtoReflect() protoreflect.Message {
// Deprecated: Use UpdateMenuValue.ProtoReflect.Descriptor instead.
func (*UpdateMenuValue) Descriptor() ([]byte, []int) {
- return file_hyprpanel_event_v1_event_proto_rawDescGZIP(), []int{15}
+ return file_hyprpanel_event_v1_event_proto_rawDescGZIP(), []int{16}
}
func (x *UpdateMenuValue) GetBusName() string {
@@ -1404,7 +1669,7 @@ type NotificationValue struct {
func (x *NotificationValue) Reset() {
*x = NotificationValue{}
if protoimpl.UnsafeEnabled {
- mi := &file_hyprpanel_event_v1_event_proto_msgTypes[16]
+ mi := &file_hyprpanel_event_v1_event_proto_msgTypes[17]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -1417,7 +1682,7 @@ func (x *NotificationValue) String() string {
func (*NotificationValue) ProtoMessage() {}
func (x *NotificationValue) ProtoReflect() protoreflect.Message {
- mi := &file_hyprpanel_event_v1_event_proto_msgTypes[16]
+ mi := &file_hyprpanel_event_v1_event_proto_msgTypes[17]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -1430,7 +1695,7 @@ func (x *NotificationValue) ProtoReflect() protoreflect.Message {
// Deprecated: Use NotificationValue.ProtoReflect.Descriptor instead.
func (*NotificationValue) Descriptor() ([]byte, []int) {
- return file_hyprpanel_event_v1_event_proto_rawDescGZIP(), []int{16}
+ return file_hyprpanel_event_v1_event_proto_rawDescGZIP(), []int{17}
}
func (x *NotificationValue) GetId() uint32 {
@@ -1513,7 +1778,7 @@ type HudNotificationValue struct {
func (x *HudNotificationValue) Reset() {
*x = HudNotificationValue{}
if protoimpl.UnsafeEnabled {
- mi := &file_hyprpanel_event_v1_event_proto_msgTypes[17]
+ mi := &file_hyprpanel_event_v1_event_proto_msgTypes[18]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -1526,7 +1791,7 @@ func (x *HudNotificationValue) String() string {
func (*HudNotificationValue) ProtoMessage() {}
func (x *HudNotificationValue) ProtoReflect() protoreflect.Message {
- mi := &file_hyprpanel_event_v1_event_proto_msgTypes[17]
+ mi := &file_hyprpanel_event_v1_event_proto_msgTypes[18]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -1539,7 +1804,7 @@ func (x *HudNotificationValue) ProtoReflect() protoreflect.Message {
// Deprecated: Use HudNotificationValue.ProtoReflect.Descriptor instead.
func (*HudNotificationValue) Descriptor() ([]byte, []int) {
- return file_hyprpanel_event_v1_event_proto_rawDescGZIP(), []int{17}
+ return file_hyprpanel_event_v1_event_proto_rawDescGZIP(), []int{18}
}
func (x *HudNotificationValue) GetId() string {
@@ -1608,7 +1873,7 @@ type AudioSinkChangeValue struct {
func (x *AudioSinkChangeValue) Reset() {
*x = AudioSinkChangeValue{}
if protoimpl.UnsafeEnabled {
- mi := &file_hyprpanel_event_v1_event_proto_msgTypes[18]
+ mi := &file_hyprpanel_event_v1_event_proto_msgTypes[19]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -1621,7 +1886,7 @@ func (x *AudioSinkChangeValue) String() string {
func (*AudioSinkChangeValue) ProtoMessage() {}
func (x *AudioSinkChangeValue) ProtoReflect() protoreflect.Message {
- mi := &file_hyprpanel_event_v1_event_proto_msgTypes[18]
+ mi := &file_hyprpanel_event_v1_event_proto_msgTypes[19]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -1634,7 +1899,7 @@ func (x *AudioSinkChangeValue) ProtoReflect() protoreflect.Message {
// Deprecated: Use AudioSinkChangeValue.ProtoReflect.Descriptor instead.
func (*AudioSinkChangeValue) Descriptor() ([]byte, []int) {
- return file_hyprpanel_event_v1_event_proto_rawDescGZIP(), []int{18}
+ return file_hyprpanel_event_v1_event_proto_rawDescGZIP(), []int{19}
}
func (x *AudioSinkChangeValue) GetId() string {
@@ -1703,7 +1968,7 @@ type AudioSourceChangeValue struct {
func (x *AudioSourceChangeValue) Reset() {
*x = AudioSourceChangeValue{}
if protoimpl.UnsafeEnabled {
- mi := &file_hyprpanel_event_v1_event_proto_msgTypes[19]
+ mi := &file_hyprpanel_event_v1_event_proto_msgTypes[20]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -1716,7 +1981,7 @@ func (x *AudioSourceChangeValue) String() string {
func (*AudioSourceChangeValue) ProtoMessage() {}
func (x *AudioSourceChangeValue) ProtoReflect() protoreflect.Message {
- mi := &file_hyprpanel_event_v1_event_proto_msgTypes[19]
+ mi := &file_hyprpanel_event_v1_event_proto_msgTypes[20]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -1729,7 +1994,7 @@ func (x *AudioSourceChangeValue) ProtoReflect() protoreflect.Message {
// Deprecated: Use AudioSourceChangeValue.ProtoReflect.Descriptor instead.
func (*AudioSourceChangeValue) Descriptor() ([]byte, []int) {
- return file_hyprpanel_event_v1_event_proto_rawDescGZIP(), []int{19}
+ return file_hyprpanel_event_v1_event_proto_rawDescGZIP(), []int{20}
}
func (x *AudioSourceChangeValue) GetId() string {
@@ -1793,7 +2058,7 @@ type AudioSinkVolumeAdjust struct {
func (x *AudioSinkVolumeAdjust) Reset() {
*x = AudioSinkVolumeAdjust{}
if protoimpl.UnsafeEnabled {
- mi := &file_hyprpanel_event_v1_event_proto_msgTypes[20]
+ mi := &file_hyprpanel_event_v1_event_proto_msgTypes[21]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -1806,7 +2071,7 @@ func (x *AudioSinkVolumeAdjust) String() string {
func (*AudioSinkVolumeAdjust) ProtoMessage() {}
func (x *AudioSinkVolumeAdjust) ProtoReflect() protoreflect.Message {
- mi := &file_hyprpanel_event_v1_event_proto_msgTypes[20]
+ mi := &file_hyprpanel_event_v1_event_proto_msgTypes[21]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -1819,7 +2084,7 @@ func (x *AudioSinkVolumeAdjust) ProtoReflect() protoreflect.Message {
// Deprecated: Use AudioSinkVolumeAdjust.ProtoReflect.Descriptor instead.
func (*AudioSinkVolumeAdjust) Descriptor() ([]byte, []int) {
- return file_hyprpanel_event_v1_event_proto_rawDescGZIP(), []int{20}
+ return file_hyprpanel_event_v1_event_proto_rawDescGZIP(), []int{21}
}
func (x *AudioSinkVolumeAdjust) GetId() string {
@@ -1847,7 +2112,7 @@ type AudioSinkMuteToggle struct {
func (x *AudioSinkMuteToggle) Reset() {
*x = AudioSinkMuteToggle{}
if protoimpl.UnsafeEnabled {
- mi := &file_hyprpanel_event_v1_event_proto_msgTypes[21]
+ mi := &file_hyprpanel_event_v1_event_proto_msgTypes[22]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -1860,7 +2125,7 @@ func (x *AudioSinkMuteToggle) String() string {
func (*AudioSinkMuteToggle) ProtoMessage() {}
func (x *AudioSinkMuteToggle) ProtoReflect() protoreflect.Message {
- mi := &file_hyprpanel_event_v1_event_proto_msgTypes[21]
+ mi := &file_hyprpanel_event_v1_event_proto_msgTypes[22]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -1873,7 +2138,7 @@ func (x *AudioSinkMuteToggle) ProtoReflect() protoreflect.Message {
// Deprecated: Use AudioSinkMuteToggle.ProtoReflect.Descriptor instead.
func (*AudioSinkMuteToggle) Descriptor() ([]byte, []int) {
- return file_hyprpanel_event_v1_event_proto_rawDescGZIP(), []int{21}
+ return file_hyprpanel_event_v1_event_proto_rawDescGZIP(), []int{22}
}
func (x *AudioSinkMuteToggle) GetId() string {
@@ -1895,7 +2160,7 @@ type AudioSourceVolumeAdjust struct {
func (x *AudioSourceVolumeAdjust) Reset() {
*x = AudioSourceVolumeAdjust{}
if protoimpl.UnsafeEnabled {
- mi := &file_hyprpanel_event_v1_event_proto_msgTypes[22]
+ mi := &file_hyprpanel_event_v1_event_proto_msgTypes[23]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -1908,7 +2173,7 @@ func (x *AudioSourceVolumeAdjust) String() string {
func (*AudioSourceVolumeAdjust) ProtoMessage() {}
func (x *AudioSourceVolumeAdjust) ProtoReflect() protoreflect.Message {
- mi := &file_hyprpanel_event_v1_event_proto_msgTypes[22]
+ mi := &file_hyprpanel_event_v1_event_proto_msgTypes[23]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -1921,7 +2186,7 @@ func (x *AudioSourceVolumeAdjust) ProtoReflect() protoreflect.Message {
// Deprecated: Use AudioSourceVolumeAdjust.ProtoReflect.Descriptor instead.
func (*AudioSourceVolumeAdjust) Descriptor() ([]byte, []int) {
- return file_hyprpanel_event_v1_event_proto_rawDescGZIP(), []int{22}
+ return file_hyprpanel_event_v1_event_proto_rawDescGZIP(), []int{23}
}
func (x *AudioSourceVolumeAdjust) GetId() string {
@@ -1949,7 +2214,7 @@ type AudioSourceMuteToggle struct {
func (x *AudioSourceMuteToggle) Reset() {
*x = AudioSourceMuteToggle{}
if protoimpl.UnsafeEnabled {
- mi := &file_hyprpanel_event_v1_event_proto_msgTypes[23]
+ mi := &file_hyprpanel_event_v1_event_proto_msgTypes[24]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -1962,7 +2227,7 @@ func (x *AudioSourceMuteToggle) String() string {
func (*AudioSourceMuteToggle) ProtoMessage() {}
func (x *AudioSourceMuteToggle) ProtoReflect() protoreflect.Message {
- mi := &file_hyprpanel_event_v1_event_proto_msgTypes[23]
+ mi := &file_hyprpanel_event_v1_event_proto_msgTypes[24]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -1975,7 +2240,7 @@ func (x *AudioSourceMuteToggle) ProtoReflect() protoreflect.Message {
// Deprecated: Use AudioSourceMuteToggle.ProtoReflect.Descriptor instead.
func (*AudioSourceMuteToggle) Descriptor() ([]byte, []int) {
- return file_hyprpanel_event_v1_event_proto_rawDescGZIP(), []int{23}
+ return file_hyprpanel_event_v1_event_proto_rawDescGZIP(), []int{24}
}
func (x *AudioSourceMuteToggle) GetId() string {
@@ -1999,7 +2264,7 @@ type BrightnessChangeValue struct {
func (x *BrightnessChangeValue) Reset() {
*x = BrightnessChangeValue{}
if protoimpl.UnsafeEnabled {
- mi := &file_hyprpanel_event_v1_event_proto_msgTypes[24]
+ mi := &file_hyprpanel_event_v1_event_proto_msgTypes[25]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -2012,7 +2277,7 @@ func (x *BrightnessChangeValue) String() string {
func (*BrightnessChangeValue) ProtoMessage() {}
func (x *BrightnessChangeValue) ProtoReflect() protoreflect.Message {
- mi := &file_hyprpanel_event_v1_event_proto_msgTypes[24]
+ mi := &file_hyprpanel_event_v1_event_proto_msgTypes[25]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -2025,7 +2290,7 @@ func (x *BrightnessChangeValue) ProtoReflect() protoreflect.Message {
// Deprecated: Use BrightnessChangeValue.ProtoReflect.Descriptor instead.
func (*BrightnessChangeValue) Descriptor() ([]byte, []int) {
- return file_hyprpanel_event_v1_event_proto_rawDescGZIP(), []int{24}
+ return file_hyprpanel_event_v1_event_proto_rawDescGZIP(), []int{25}
}
func (x *BrightnessChangeValue) GetId() string {
@@ -2068,7 +2333,7 @@ type BrightnessAdjustValue struct {
func (x *BrightnessAdjustValue) Reset() {
*x = BrightnessAdjustValue{}
if protoimpl.UnsafeEnabled {
- mi := &file_hyprpanel_event_v1_event_proto_msgTypes[25]
+ mi := &file_hyprpanel_event_v1_event_proto_msgTypes[26]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -2081,7 +2346,7 @@ func (x *BrightnessAdjustValue) String() string {
func (*BrightnessAdjustValue) ProtoMessage() {}
func (x *BrightnessAdjustValue) ProtoReflect() protoreflect.Message {
- mi := &file_hyprpanel_event_v1_event_proto_msgTypes[25]
+ mi := &file_hyprpanel_event_v1_event_proto_msgTypes[26]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -2094,7 +2359,7 @@ func (x *BrightnessAdjustValue) ProtoReflect() protoreflect.Message {
// Deprecated: Use BrightnessAdjustValue.ProtoReflect.Descriptor instead.
func (*BrightnessAdjustValue) Descriptor() ([]byte, []int) {
- return file_hyprpanel_event_v1_event_proto_rawDescGZIP(), []int{25}
+ return file_hyprpanel_event_v1_event_proto_rawDescGZIP(), []int{26}
}
func (x *BrightnessAdjustValue) GetDevName() string {
@@ -2135,7 +2400,7 @@ type PowerChangeValue struct {
func (x *PowerChangeValue) Reset() {
*x = PowerChangeValue{}
if protoimpl.UnsafeEnabled {
- mi := &file_hyprpanel_event_v1_event_proto_msgTypes[26]
+ mi := &file_hyprpanel_event_v1_event_proto_msgTypes[27]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -2148,7 +2413,7 @@ func (x *PowerChangeValue) String() string {
func (*PowerChangeValue) ProtoMessage() {}
func (x *PowerChangeValue) ProtoReflect() protoreflect.Message {
- mi := &file_hyprpanel_event_v1_event_proto_msgTypes[26]
+ mi := &file_hyprpanel_event_v1_event_proto_msgTypes[27]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -2161,7 +2426,7 @@ func (x *PowerChangeValue) ProtoReflect() protoreflect.Message {
// Deprecated: Use PowerChangeValue.ProtoReflect.Descriptor instead.
func (*PowerChangeValue) Descriptor() ([]byte, []int) {
- return file_hyprpanel_event_v1_event_proto_rawDescGZIP(), []int{26}
+ return file_hyprpanel_event_v1_event_proto_rawDescGZIP(), []int{27}
}
func (x *PowerChangeValue) GetId() string {
@@ -2262,6 +2527,53 @@ func (x *PowerChangeValue) GetEnergyFull() float64 {
return 0
}
+type IdleInhibitorValue struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Target InhibitTarget `protobuf:"varint,1,opt,name=target,proto3,enum=hyprpanel.event.v1.InhibitTarget" json:"target,omitempty"`
+}
+
+func (x *IdleInhibitorValue) Reset() {
+ *x = IdleInhibitorValue{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_hyprpanel_event_v1_event_proto_msgTypes[28]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *IdleInhibitorValue) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*IdleInhibitorValue) ProtoMessage() {}
+
+func (x *IdleInhibitorValue) ProtoReflect() protoreflect.Message {
+ mi := &file_hyprpanel_event_v1_event_proto_msgTypes[28]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use IdleInhibitorValue.ProtoReflect.Descriptor instead.
+func (*IdleInhibitorValue) Descriptor() ([]byte, []int) {
+ return file_hyprpanel_event_v1_event_proto_rawDescGZIP(), []int{28}
+}
+
+func (x *IdleInhibitorValue) GetTarget() InhibitTarget {
+ if x != nil {
+ return x.Target
+ }
+ return InhibitTarget_INHIBIT_TARGET_UNSPECIFIED
+}
+
type Event struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
@@ -2274,7 +2586,7 @@ type Event struct {
func (x *Event) Reset() {
*x = Event{}
if protoimpl.UnsafeEnabled {
- mi := &file_hyprpanel_event_v1_event_proto_msgTypes[27]
+ mi := &file_hyprpanel_event_v1_event_proto_msgTypes[29]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -2287,7 +2599,7 @@ func (x *Event) String() string {
func (*Event) ProtoMessage() {}
func (x *Event) ProtoReflect() protoreflect.Message {
- mi := &file_hyprpanel_event_v1_event_proto_msgTypes[27]
+ mi := &file_hyprpanel_event_v1_event_proto_msgTypes[29]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -2300,7 +2612,7 @@ func (x *Event) ProtoReflect() protoreflect.Message {
// Deprecated: Use Event.ProtoReflect.Descriptor instead.
func (*Event) Descriptor() ([]byte, []int) {
- return file_hyprpanel_event_v1_event_proto_rawDescGZIP(), []int{27}
+ return file_hyprpanel_event_v1_event_proto_rawDescGZIP(), []int{29}
}
func (x *Event) GetKind() EventKind {
@@ -2330,7 +2642,7 @@ type StatusNotifierValue_Pixmap struct {
func (x *StatusNotifierValue_Pixmap) Reset() {
*x = StatusNotifierValue_Pixmap{}
if protoimpl.UnsafeEnabled {
- mi := &file_hyprpanel_event_v1_event_proto_msgTypes[28]
+ mi := &file_hyprpanel_event_v1_event_proto_msgTypes[30]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -2343,7 +2655,7 @@ func (x *StatusNotifierValue_Pixmap) String() string {
func (*StatusNotifierValue_Pixmap) ProtoMessage() {}
func (x *StatusNotifierValue_Pixmap) ProtoReflect() protoreflect.Message {
- mi := &file_hyprpanel_event_v1_event_proto_msgTypes[28]
+ mi := &file_hyprpanel_event_v1_event_proto_msgTypes[30]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -2356,7 +2668,7 @@ func (x *StatusNotifierValue_Pixmap) ProtoReflect() protoreflect.Message {
// Deprecated: Use StatusNotifierValue_Pixmap.ProtoReflect.Descriptor instead.
func (*StatusNotifierValue_Pixmap) Descriptor() ([]byte, []int) {
- return file_hyprpanel_event_v1_event_proto_rawDescGZIP(), []int{10, 0}
+ return file_hyprpanel_event_v1_event_proto_rawDescGZIP(), []int{11, 0}
}
func (x *StatusNotifierValue_Pixmap) GetWidth() int32 {
@@ -2394,7 +2706,7 @@ type StatusNotifierValue_Tooltip struct {
func (x *StatusNotifierValue_Tooltip) Reset() {
*x = StatusNotifierValue_Tooltip{}
if protoimpl.UnsafeEnabled {
- mi := &file_hyprpanel_event_v1_event_proto_msgTypes[29]
+ mi := &file_hyprpanel_event_v1_event_proto_msgTypes[31]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -2407,7 +2719,7 @@ func (x *StatusNotifierValue_Tooltip) String() string {
func (*StatusNotifierValue_Tooltip) ProtoMessage() {}
func (x *StatusNotifierValue_Tooltip) ProtoReflect() protoreflect.Message {
- mi := &file_hyprpanel_event_v1_event_proto_msgTypes[29]
+ mi := &file_hyprpanel_event_v1_event_proto_msgTypes[31]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -2420,7 +2732,7 @@ func (x *StatusNotifierValue_Tooltip) ProtoReflect() protoreflect.Message {
// Deprecated: Use StatusNotifierValue_Tooltip.ProtoReflect.Descriptor instead.
func (*StatusNotifierValue_Tooltip) Descriptor() ([]byte, []int) {
- return file_hyprpanel_event_v1_event_proto_rawDescGZIP(), []int{10, 1}
+ return file_hyprpanel_event_v1_event_proto_rawDescGZIP(), []int{11, 1}
}
func (x *StatusNotifierValue_Tooltip) GetIconName() string {
@@ -2464,7 +2776,7 @@ type StatusNotifierValue_Icon struct {
func (x *StatusNotifierValue_Icon) Reset() {
*x = StatusNotifierValue_Icon{}
if protoimpl.UnsafeEnabled {
- mi := &file_hyprpanel_event_v1_event_proto_msgTypes[30]
+ mi := &file_hyprpanel_event_v1_event_proto_msgTypes[32]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -2477,7 +2789,7 @@ func (x *StatusNotifierValue_Icon) String() string {
func (*StatusNotifierValue_Icon) ProtoMessage() {}
func (x *StatusNotifierValue_Icon) ProtoReflect() protoreflect.Message {
- mi := &file_hyprpanel_event_v1_event_proto_msgTypes[30]
+ mi := &file_hyprpanel_event_v1_event_proto_msgTypes[32]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -2490,7 +2802,7 @@ func (x *StatusNotifierValue_Icon) ProtoReflect() protoreflect.Message {
// Deprecated: Use StatusNotifierValue_Icon.ProtoReflect.Descriptor instead.
func (*StatusNotifierValue_Icon) Descriptor() ([]byte, []int) {
- return file_hyprpanel_event_v1_event_proto_rawDescGZIP(), []int{10, 2}
+ return file_hyprpanel_event_v1_event_proto_rawDescGZIP(), []int{11, 2}
}
func (x *StatusNotifierValue_Icon) GetIconName() string {
@@ -2527,7 +2839,7 @@ type StatusNotifierValue_Menu struct {
func (x *StatusNotifierValue_Menu) Reset() {
*x = StatusNotifierValue_Menu{}
if protoimpl.UnsafeEnabled {
- mi := &file_hyprpanel_event_v1_event_proto_msgTypes[31]
+ mi := &file_hyprpanel_event_v1_event_proto_msgTypes[33]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -2540,7 +2852,7 @@ func (x *StatusNotifierValue_Menu) String() string {
func (*StatusNotifierValue_Menu) ProtoMessage() {}
func (x *StatusNotifierValue_Menu) ProtoReflect() protoreflect.Message {
- mi := &file_hyprpanel_event_v1_event_proto_msgTypes[31]
+ mi := &file_hyprpanel_event_v1_event_proto_msgTypes[33]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -2553,7 +2865,7 @@ func (x *StatusNotifierValue_Menu) ProtoReflect() protoreflect.Message {
// Deprecated: Use StatusNotifierValue_Menu.ProtoReflect.Descriptor instead.
func (*StatusNotifierValue_Menu) Descriptor() ([]byte, []int) {
- return file_hyprpanel_event_v1_event_proto_rawDescGZIP(), []int{10, 3}
+ return file_hyprpanel_event_v1_event_proto_rawDescGZIP(), []int{11, 3}
}
func (x *StatusNotifierValue_Menu) GetId() int32 {
@@ -2597,7 +2909,7 @@ type StatusNotifierValue_Menu_Properties struct {
func (x *StatusNotifierValue_Menu_Properties) Reset() {
*x = StatusNotifierValue_Menu_Properties{}
if protoimpl.UnsafeEnabled {
- mi := &file_hyprpanel_event_v1_event_proto_msgTypes[32]
+ mi := &file_hyprpanel_event_v1_event_proto_msgTypes[34]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -2610,7 +2922,7 @@ func (x *StatusNotifierValue_Menu_Properties) String() string {
func (*StatusNotifierValue_Menu_Properties) ProtoMessage() {}
func (x *StatusNotifierValue_Menu_Properties) ProtoReflect() protoreflect.Message {
- mi := &file_hyprpanel_event_v1_event_proto_msgTypes[32]
+ mi := &file_hyprpanel_event_v1_event_proto_msgTypes[34]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -2623,7 +2935,7 @@ func (x *StatusNotifierValue_Menu_Properties) ProtoReflect() protoreflect.Messag
// Deprecated: Use StatusNotifierValue_Menu_Properties.ProtoReflect.Descriptor instead.
func (*StatusNotifierValue_Menu_Properties) Descriptor() ([]byte, []int) {
- return file_hyprpanel_event_v1_event_proto_rawDescGZIP(), []int{10, 3, 0}
+ return file_hyprpanel_event_v1_event_proto_rawDescGZIP(), []int{11, 3, 0}
}
func (x *StatusNotifierValue_Menu_Properties) GetLabel() string {
@@ -2708,7 +3020,7 @@ type NotificationValue_Hint struct {
func (x *NotificationValue_Hint) Reset() {
*x = NotificationValue_Hint{}
if protoimpl.UnsafeEnabled {
- mi := &file_hyprpanel_event_v1_event_proto_msgTypes[33]
+ mi := &file_hyprpanel_event_v1_event_proto_msgTypes[35]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -2721,7 +3033,7 @@ func (x *NotificationValue_Hint) String() string {
func (*NotificationValue_Hint) ProtoMessage() {}
func (x *NotificationValue_Hint) ProtoReflect() protoreflect.Message {
- mi := &file_hyprpanel_event_v1_event_proto_msgTypes[33]
+ mi := &file_hyprpanel_event_v1_event_proto_msgTypes[35]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -2734,7 +3046,7 @@ func (x *NotificationValue_Hint) ProtoReflect() protoreflect.Message {
// Deprecated: Use NotificationValue_Hint.ProtoReflect.Descriptor instead.
func (*NotificationValue_Hint) Descriptor() ([]byte, []int) {
- return file_hyprpanel_event_v1_event_proto_rawDescGZIP(), []int{16, 0}
+ return file_hyprpanel_event_v1_event_proto_rawDescGZIP(), []int{17, 0}
}
func (x *NotificationValue_Hint) GetKey() string {
@@ -2763,7 +3075,7 @@ type NotificationValue_Action struct {
func (x *NotificationValue_Action) Reset() {
*x = NotificationValue_Action{}
if protoimpl.UnsafeEnabled {
- mi := &file_hyprpanel_event_v1_event_proto_msgTypes[34]
+ mi := &file_hyprpanel_event_v1_event_proto_msgTypes[36]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -2776,7 +3088,7 @@ func (x *NotificationValue_Action) String() string {
func (*NotificationValue_Action) ProtoMessage() {}
func (x *NotificationValue_Action) ProtoReflect() protoreflect.Message {
- mi := &file_hyprpanel_event_v1_event_proto_msgTypes[34]
+ mi := &file_hyprpanel_event_v1_event_proto_msgTypes[36]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -2789,7 +3101,7 @@ func (x *NotificationValue_Action) ProtoReflect() protoreflect.Message {
// Deprecated: Use NotificationValue_Action.ProtoReflect.Descriptor instead.
func (*NotificationValue_Action) Descriptor() ([]byte, []int) {
- return file_hyprpanel_event_v1_event_proto_rawDescGZIP(), []int{16, 1}
+ return file_hyprpanel_event_v1_event_proto_rawDescGZIP(), []int{17, 1}
}
func (x *NotificationValue_Action) GetKey() string {
@@ -2823,7 +3135,7 @@ type NotificationValue_Pixmap struct {
func (x *NotificationValue_Pixmap) Reset() {
*x = NotificationValue_Pixmap{}
if protoimpl.UnsafeEnabled {
- mi := &file_hyprpanel_event_v1_event_proto_msgTypes[35]
+ mi := &file_hyprpanel_event_v1_event_proto_msgTypes[37]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -2836,7 +3148,7 @@ func (x *NotificationValue_Pixmap) String() string {
func (*NotificationValue_Pixmap) ProtoMessage() {}
func (x *NotificationValue_Pixmap) ProtoReflect() protoreflect.Message {
- mi := &file_hyprpanel_event_v1_event_proto_msgTypes[35]
+ mi := &file_hyprpanel_event_v1_event_proto_msgTypes[37]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -2849,7 +3161,7 @@ func (x *NotificationValue_Pixmap) ProtoReflect() protoreflect.Message {
// Deprecated: Use NotificationValue_Pixmap.ProtoReflect.Descriptor instead.
func (*NotificationValue_Pixmap) Descriptor() ([]byte, []int) {
- return file_hyprpanel_event_v1_event_proto_rawDescGZIP(), []int{16, 2}
+ return file_hyprpanel_event_v1_event_proto_rawDescGZIP(), []int{17, 2}
}
func (x *NotificationValue_Pixmap) GetWidth() int32 {
@@ -2911,502 +3223,574 @@ var file_hyprpanel_event_v1_event_proto_rawDesc = []byte{
0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x61, 0x6e, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a,
0x1e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66,
0x2f, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a,
- 0x20, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2f, 0x6d, 0x6f, 0x64, 0x75, 0x6c,
- 0x65, 0x2f, 0x76, 0x31, 0x2f, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74,
- 0x6f, 0x22, 0x3a, 0x0a, 0x14, 0x48, 0x79, 0x70, 0x72, 0x57, 0x6f, 0x72, 0x6b, 0x73, 0x70, 0x61,
- 0x63, 0x65, 0x56, 0x32, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18,
- 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d,
- 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x41, 0x0a,
- 0x1b, 0x48, 0x79, 0x70, 0x72, 0x44, 0x65, 0x73, 0x74, 0x72, 0x6f, 0x79, 0x57, 0x6f, 0x72, 0x6b,
+ 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66,
+ 0x2f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
+ 0x1a, 0x20, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2f, 0x6d, 0x6f, 0x64, 0x75,
+ 0x6c, 0x65, 0x2f, 0x76, 0x31, 0x2f, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f,
+ 0x74, 0x6f, 0x22, 0xfd, 0x04, 0x0a, 0x16, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x50, 0x6c, 0x61, 0x79,
+ 0x65, 0x72, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x12, 0x3a, 0x0a,
+ 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x24, 0x2e, 0x68,
+ 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x2e, 0x76,
+ 0x31, 0x2e, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x74, 0x61,
+ 0x74, 0x65, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x12, 0x1e, 0x0a, 0x0b, 0x63, 0x61, 0x6e,
+ 0x5f, 0x67, 0x6f, 0x5f, 0x6e, 0x65, 0x78, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09,
+ 0x63, 0x61, 0x6e, 0x47, 0x6f, 0x4e, 0x65, 0x78, 0x74, 0x12, 0x26, 0x0a, 0x0f, 0x63, 0x61, 0x6e,
+ 0x5f, 0x67, 0x6f, 0x5f, 0x70, 0x72, 0x65, 0x76, 0x69, 0x6f, 0x75, 0x73, 0x18, 0x03, 0x20, 0x01,
+ 0x28, 0x08, 0x52, 0x0d, 0x63, 0x61, 0x6e, 0x47, 0x6f, 0x50, 0x72, 0x65, 0x76, 0x69, 0x6f, 0x75,
+ 0x73, 0x12, 0x19, 0x0a, 0x08, 0x74, 0x72, 0x61, 0x63, 0x6b, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20,
+ 0x01, 0x28, 0x09, 0x52, 0x07, 0x74, 0x72, 0x61, 0x63, 0x6b, 0x49, 0x64, 0x12, 0x39, 0x0a, 0x0a,
+ 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b,
+ 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62,
+ 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 0x75, 0x70,
+ 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x24, 0x0a, 0x0b, 0x70, 0x6f, 0x73, 0x69, 0x74,
+ 0x69, 0x6f, 0x6e, 0x5f, 0x75, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x48, 0x00, 0x52, 0x0a,
+ 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x55, 0x73, 0x88, 0x01, 0x01, 0x12, 0x20, 0x0a,
+ 0x09, 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x5f, 0x75, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x03,
+ 0x48, 0x01, 0x52, 0x08, 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x55, 0x73, 0x88, 0x01, 0x01, 0x12,
+ 0x19, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x48, 0x02,
+ 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06, 0x61, 0x72,
+ 0x74, 0x69, 0x73, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x48, 0x03, 0x52, 0x06, 0x61, 0x72,
+ 0x74, 0x69, 0x73, 0x74, 0x88, 0x01, 0x01, 0x12, 0x19, 0x0a, 0x05, 0x61, 0x6c, 0x62, 0x75, 0x6d,
+ 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x48, 0x04, 0x52, 0x05, 0x61, 0x6c, 0x62, 0x75, 0x6d, 0x88,
+ 0x01, 0x01, 0x12, 0x28, 0x0a, 0x0d, 0x64, 0x65, 0x73, 0x6b, 0x74, 0x6f, 0x70, 0x5f, 0x65, 0x6e,
+ 0x74, 0x72, 0x79, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x48, 0x05, 0x52, 0x0c, 0x64, 0x65, 0x73,
+ 0x6b, 0x74, 0x6f, 0x70, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x88, 0x01, 0x01, 0x12, 0x1f, 0x0a, 0x08,
+ 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x48, 0x06,
+ 0x52, 0x08, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x88, 0x01, 0x01, 0x12, 0x1c, 0x0a,
+ 0x07, 0x61, 0x72, 0x74, 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x48, 0x07,
+ 0x52, 0x06, 0x61, 0x72, 0x74, 0x55, 0x72, 0x6c, 0x88, 0x01, 0x01, 0x12, 0x15, 0x0a, 0x03, 0x75,
+ 0x72, 0x6c, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x48, 0x08, 0x52, 0x03, 0x75, 0x72, 0x6c, 0x88,
+ 0x01, 0x01, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f,
+ 0x75, 0x73, 0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x5f, 0x75, 0x73,
+ 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x61,
+ 0x72, 0x74, 0x69, 0x73, 0x74, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x61, 0x6c, 0x62, 0x75, 0x6d, 0x42,
+ 0x10, 0x0a, 0x0e, 0x5f, 0x64, 0x65, 0x73, 0x6b, 0x74, 0x6f, 0x70, 0x5f, 0x65, 0x6e, 0x74, 0x72,
+ 0x79, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x42, 0x0a,
+ 0x0a, 0x08, 0x5f, 0x61, 0x72, 0x74, 0x5f, 0x75, 0x72, 0x6c, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x75,
+ 0x72, 0x6c, 0x22, 0x3a, 0x0a, 0x14, 0x48, 0x79, 0x70, 0x72, 0x57, 0x6f, 0x72, 0x6b, 0x73, 0x70,
+ 0x61, 0x63, 0x65, 0x56, 0x32, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64,
+ 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61,
+ 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x41,
+ 0x0a, 0x1b, 0x48, 0x79, 0x70, 0x72, 0x44, 0x65, 0x73, 0x74, 0x72, 0x6f, 0x79, 0x57, 0x6f, 0x72,
+ 0x6b, 0x73, 0x70, 0x61, 0x63, 0x65, 0x56, 0x32, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x0e, 0x0a,
+ 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a,
+ 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d,
+ 0x65, 0x22, 0x40, 0x0a, 0x1a, 0x48, 0x79, 0x70, 0x72, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x57,
+ 0x6f, 0x72, 0x6b, 0x73, 0x70, 0x61, 0x63, 0x65, 0x56, 0x32, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12,
+ 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x02, 0x69, 0x64, 0x12,
+ 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e,
+ 0x61, 0x6d, 0x65, 0x22, 0x56, 0x0a, 0x13, 0x48, 0x79, 0x70, 0x72, 0x4d, 0x6f, 0x76, 0x65, 0x57,
+ 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x64,
+ 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x64, 0x64,
+ 0x72, 0x65, 0x73, 0x73, 0x12, 0x25, 0x0a, 0x0e, 0x77, 0x6f, 0x72, 0x6b, 0x73, 0x70, 0x61, 0x63,
+ 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x77, 0x6f,
+ 0x72, 0x6b, 0x73, 0x70, 0x61, 0x63, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x7b, 0x0a, 0x15, 0x48,
+ 0x79, 0x70, 0x72, 0x4d, 0x6f, 0x76, 0x65, 0x57, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x56, 0x32, 0x56,
+ 0x61, 0x6c, 0x75, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18,
+ 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x21,
+ 0x0a, 0x0c, 0x77, 0x6f, 0x72, 0x6b, 0x73, 0x70, 0x61, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02,
+ 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x77, 0x6f, 0x72, 0x6b, 0x73, 0x70, 0x61, 0x63, 0x65, 0x49,
+ 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x77, 0x6f, 0x72, 0x6b, 0x73, 0x70, 0x61, 0x63, 0x65, 0x5f, 0x6e,
+ 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x77, 0x6f, 0x72, 0x6b, 0x73,
+ 0x70, 0x61, 0x63, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x46, 0x0a, 0x16, 0x48, 0x79, 0x70, 0x72,
+ 0x4d, 0x6f, 0x76, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x73, 0x70, 0x61, 0x63, 0x65, 0x56, 0x61, 0x6c,
+ 0x75, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
+ 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f,
+ 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72,
+ 0x22, 0x58, 0x0a, 0x18, 0x48, 0x79, 0x70, 0x72, 0x4d, 0x6f, 0x76, 0x65, 0x57, 0x6f, 0x72, 0x6b,
0x73, 0x70, 0x61, 0x63, 0x65, 0x56, 0x32, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x0e, 0x0a, 0x02,
0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04,
0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65,
- 0x22, 0x40, 0x0a, 0x1a, 0x48, 0x79, 0x70, 0x72, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x57, 0x6f,
- 0x72, 0x6b, 0x73, 0x70, 0x61, 0x63, 0x65, 0x56, 0x32, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x0e,
- 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x02, 0x69, 0x64, 0x12, 0x12,
- 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61,
- 0x6d, 0x65, 0x22, 0x56, 0x0a, 0x13, 0x48, 0x79, 0x70, 0x72, 0x4d, 0x6f, 0x76, 0x65, 0x57, 0x69,
- 0x6e, 0x64, 0x6f, 0x77, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x64, 0x64,
- 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x64, 0x64, 0x72,
- 0x65, 0x73, 0x73, 0x12, 0x25, 0x0a, 0x0e, 0x77, 0x6f, 0x72, 0x6b, 0x73, 0x70, 0x61, 0x63, 0x65,
- 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x77, 0x6f, 0x72,
- 0x6b, 0x73, 0x70, 0x61, 0x63, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x7b, 0x0a, 0x15, 0x48, 0x79,
- 0x70, 0x72, 0x4d, 0x6f, 0x76, 0x65, 0x57, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x56, 0x32, 0x56, 0x61,
- 0x6c, 0x75, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01,
- 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x21, 0x0a,
- 0x0c, 0x77, 0x6f, 0x72, 0x6b, 0x73, 0x70, 0x61, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20,
- 0x01, 0x28, 0x05, 0x52, 0x0b, 0x77, 0x6f, 0x72, 0x6b, 0x73, 0x70, 0x61, 0x63, 0x65, 0x49, 0x64,
- 0x12, 0x25, 0x0a, 0x0e, 0x77, 0x6f, 0x72, 0x6b, 0x73, 0x70, 0x61, 0x63, 0x65, 0x5f, 0x6e, 0x61,
- 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x77, 0x6f, 0x72, 0x6b, 0x73, 0x70,
- 0x61, 0x63, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x46, 0x0a, 0x16, 0x48, 0x79, 0x70, 0x72, 0x4d,
- 0x6f, 0x76, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x73, 0x70, 0x61, 0x63, 0x65, 0x56, 0x61, 0x6c, 0x75,
- 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
- 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72,
- 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x22,
- 0x58, 0x0a, 0x18, 0x48, 0x79, 0x70, 0x72, 0x4d, 0x6f, 0x76, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x73,
- 0x70, 0x61, 0x63, 0x65, 0x56, 0x32, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69,
- 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e,
- 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12,
- 0x18, 0x0a, 0x07, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09,
- 0x52, 0x07, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x22, 0x3e, 0x0a, 0x18, 0x48, 0x79, 0x70,
- 0x72, 0x52, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x73, 0x70, 0x61, 0x63, 0x65,
- 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28,
- 0x05, 0x52, 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20,
- 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x43, 0x0a, 0x15, 0x48, 0x79, 0x70,
- 0x72, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x57, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x56, 0x61, 0x6c,
- 0x75, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28,
- 0x09, 0x52, 0x05, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c,
- 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x22, 0x82,
- 0x01, 0x0a, 0x13, 0x48, 0x79, 0x70, 0x72, 0x4f, 0x70, 0x65, 0x6e, 0x57, 0x69, 0x6e, 0x64, 0x6f,
- 0x77, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73,
- 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73,
- 0x12, 0x25, 0x0a, 0x0e, 0x77, 0x6f, 0x72, 0x6b, 0x73, 0x70, 0x61, 0x63, 0x65, 0x5f, 0x6e, 0x61,
- 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x77, 0x6f, 0x72, 0x6b, 0x73, 0x70,
- 0x61, 0x63, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6c, 0x61, 0x73, 0x73,
- 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x12, 0x14, 0x0a,
- 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69,
- 0x74, 0x6c, 0x65, 0x22, 0xaf, 0x0a, 0x0a, 0x13, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x4e, 0x6f,
- 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x62,
- 0x75, 0x73, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x62,
- 0x75, 0x73, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74,
- 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x6f, 0x62, 0x6a,
- 0x65, 0x63, 0x74, 0x50, 0x61, 0x74, 0x68, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x03, 0x20,
- 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65,
- 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x3b, 0x0a,
- 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x23, 0x2e,
- 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65,
- 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x79, 0x73, 0x74, 0x72, 0x61, 0x79, 0x2e, 0x53, 0x74, 0x61, 0x74,
- 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x49, 0x0a, 0x07, 0x74, 0x6f,
- 0x6f, 0x6c, 0x74, 0x69, 0x70, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x68, 0x79,
- 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x2e, 0x76, 0x31,
- 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x56,
- 0x61, 0x6c, 0x75, 0x65, 0x2e, 0x54, 0x6f, 0x6f, 0x6c, 0x74, 0x69, 0x70, 0x52, 0x07, 0x74, 0x6f,
- 0x6f, 0x6c, 0x74, 0x69, 0x70, 0x12, 0x40, 0x0a, 0x04, 0x69, 0x63, 0x6f, 0x6e, 0x18, 0x07, 0x20,
- 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e,
- 0x65, 0x76, 0x65, 0x6e, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x4e,
- 0x6f, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x2e, 0x49, 0x63, 0x6f,
- 0x6e, 0x52, 0x04, 0x69, 0x63, 0x6f, 0x6e, 0x12, 0x40, 0x0a, 0x04, 0x6d, 0x65, 0x6e, 0x75, 0x18,
- 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65,
- 0x6c, 0x2e, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75,
- 0x73, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x2e, 0x4d,
- 0x65, 0x6e, 0x75, 0x52, 0x04, 0x6d, 0x65, 0x6e, 0x75, 0x12, 0x23, 0x0a, 0x0d, 0x6d, 0x65, 0x6e,
- 0x75, 0x5f, 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05,
- 0x52, 0x0c, 0x6d, 0x65, 0x6e, 0x75, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x1a, 0x4a,
- 0x0a, 0x06, 0x50, 0x69, 0x78, 0x6d, 0x61, 0x70, 0x12, 0x14, 0x0a, 0x05, 0x77, 0x69, 0x64, 0x74,
- 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x77, 0x69, 0x64, 0x74, 0x68, 0x12, 0x16,
- 0x0a, 0x06, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06,
- 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x03,
- 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x1a, 0xa1, 0x01, 0x0a, 0x07, 0x54,
- 0x6f, 0x6f, 0x6c, 0x74, 0x69, 0x70, 0x12, 0x1b, 0x0a, 0x09, 0x69, 0x63, 0x6f, 0x6e, 0x5f, 0x6e,
- 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x69, 0x63, 0x6f, 0x6e, 0x4e,
- 0x61, 0x6d, 0x65, 0x12, 0x4f, 0x0a, 0x0b, 0x69, 0x63, 0x6f, 0x6e, 0x5f, 0x70, 0x69, 0x78, 0x6d,
- 0x61, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70,
- 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x74,
- 0x61, 0x74, 0x75, 0x73, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x56, 0x61, 0x6c, 0x75,
- 0x65, 0x2e, 0x50, 0x69, 0x78, 0x6d, 0x61, 0x70, 0x52, 0x0a, 0x69, 0x63, 0x6f, 0x6e, 0x50, 0x69,
- 0x78, 0x6d, 0x61, 0x70, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x03, 0x20,
- 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x62, 0x6f,
- 0x64, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x1a, 0x9c,
- 0x01, 0x0a, 0x04, 0x49, 0x63, 0x6f, 0x6e, 0x12, 0x1b, 0x0a, 0x09, 0x69, 0x63, 0x6f, 0x6e, 0x5f,
- 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x69, 0x63, 0x6f, 0x6e,
- 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x26, 0x0a, 0x0f, 0x69, 0x63, 0x6f, 0x6e, 0x5f, 0x74, 0x68, 0x65,
- 0x6d, 0x65, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x69,
- 0x63, 0x6f, 0x6e, 0x54, 0x68, 0x65, 0x6d, 0x65, 0x50, 0x61, 0x74, 0x68, 0x12, 0x4f, 0x0a, 0x0b,
- 0x69, 0x63, 0x6f, 0x6e, 0x5f, 0x70, 0x69, 0x78, 0x6d, 0x61, 0x70, 0x18, 0x03, 0x20, 0x01, 0x28,
- 0x0b, 0x32, 0x2e, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x65, 0x76,
- 0x65, 0x6e, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x4e, 0x6f, 0x74,
- 0x69, 0x66, 0x69, 0x65, 0x72, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x2e, 0x50, 0x69, 0x78, 0x6d, 0x61,
- 0x70, 0x52, 0x0a, 0x69, 0x63, 0x6f, 0x6e, 0x50, 0x69, 0x78, 0x6d, 0x61, 0x70, 0x1a, 0xf5, 0x03,
- 0x0a, 0x04, 0x4d, 0x65, 0x6e, 0x75, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01,
- 0x28, 0x05, 0x52, 0x02, 0x69, 0x64, 0x12, 0x57, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72,
- 0x74, 0x69, 0x65, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x37, 0x2e, 0x68, 0x79, 0x70,
- 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x2e, 0x76, 0x31, 0x2e,
- 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x56, 0x61,
- 0x6c, 0x75, 0x65, 0x2e, 0x4d, 0x65, 0x6e, 0x75, 0x2e, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74,
- 0x69, 0x65, 0x73, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x69, 0x65, 0x73, 0x12,
- 0x48, 0x0a, 0x08, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x72, 0x65, 0x6e, 0x18, 0x03, 0x20, 0x03, 0x28,
- 0x0b, 0x32, 0x2c, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x65, 0x76,
- 0x65, 0x6e, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x4e, 0x6f, 0x74,
- 0x69, 0x66, 0x69, 0x65, 0x72, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x2e, 0x4d, 0x65, 0x6e, 0x75, 0x52,
- 0x08, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x72, 0x65, 0x6e, 0x1a, 0xb9, 0x02, 0x0a, 0x0a, 0x50, 0x72,
- 0x6f, 0x70, 0x65, 0x72, 0x74, 0x69, 0x65, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x61, 0x62, 0x65,
- 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x12, 0x1b,
- 0x0a, 0x09, 0x69, 0x63, 0x6f, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28,
- 0x09, 0x52, 0x08, 0x69, 0x63, 0x6f, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x69,
- 0x63, 0x6f, 0x6e, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x08,
- 0x69, 0x63, 0x6f, 0x6e, 0x44, 0x61, 0x74, 0x61, 0x12, 0x21, 0x0a, 0x0c, 0x74, 0x6f, 0x67, 0x67,
- 0x6c, 0x65, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b,
- 0x74, 0x6f, 0x67, 0x67, 0x6c, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x69,
- 0x73, 0x5f, 0x73, 0x65, 0x70, 0x61, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x05, 0x20, 0x01, 0x28,
- 0x08, 0x52, 0x0b, 0x69, 0x73, 0x53, 0x65, 0x70, 0x61, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x1b,
- 0x0a, 0x09, 0x69, 0x73, 0x5f, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28,
- 0x08, 0x52, 0x08, 0x69, 0x73, 0x50, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x69,
- 0x73, 0x5f, 0x68, 0x69, 0x64, 0x64, 0x65, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08,
- 0x69, 0x73, 0x48, 0x69, 0x64, 0x64, 0x65, 0x6e, 0x12, 0x1f, 0x0a, 0x0b, 0x69, 0x73, 0x5f, 0x64,
- 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x69,
- 0x73, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x69, 0x73, 0x5f,
- 0x72, 0x61, 0x64, 0x69, 0x6f, 0x18, 0x09, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x69, 0x73, 0x52,
- 0x61, 0x64, 0x69, 0x6f, 0x12, 0x1f, 0x0a, 0x0b, 0x69, 0x73, 0x5f, 0x63, 0x68, 0x65, 0x63, 0x6b,
- 0x62, 0x6f, 0x78, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x69, 0x73, 0x43, 0x68, 0x65,
- 0x63, 0x6b, 0x62, 0x6f, 0x78, 0x22, 0x43, 0x0a, 0x10, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54,
- 0x69, 0x74, 0x6c, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x62, 0x75, 0x73,
- 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x62, 0x75, 0x73,
- 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x02, 0x20,
- 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x22, 0x7a, 0x0a, 0x12, 0x55, 0x70,
- 0x64, 0x61, 0x74, 0x65, 0x54, 0x6f, 0x6f, 0x6c, 0x74, 0x69, 0x70, 0x56, 0x61, 0x6c, 0x75, 0x65,
- 0x12, 0x19, 0x0a, 0x08, 0x62, 0x75, 0x73, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01,
- 0x28, 0x09, 0x52, 0x07, 0x62, 0x75, 0x73, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x49, 0x0a, 0x07, 0x74,
- 0x6f, 0x6f, 0x6c, 0x74, 0x69, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x68,
+ 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28,
+ 0x09, 0x52, 0x07, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x22, 0x3e, 0x0a, 0x18, 0x48, 0x79,
+ 0x70, 0x72, 0x52, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x73, 0x70, 0x61, 0x63,
+ 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01,
+ 0x28, 0x05, 0x52, 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02,
+ 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x43, 0x0a, 0x15, 0x48, 0x79,
+ 0x70, 0x72, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x57, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x56, 0x61,
+ 0x6c, 0x75, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01,
+ 0x28, 0x09, 0x52, 0x05, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74,
+ 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x22,
+ 0x82, 0x01, 0x0a, 0x13, 0x48, 0x79, 0x70, 0x72, 0x4f, 0x70, 0x65, 0x6e, 0x57, 0x69, 0x6e, 0x64,
+ 0x6f, 0x77, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65,
+ 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73,
+ 0x73, 0x12, 0x25, 0x0a, 0x0e, 0x77, 0x6f, 0x72, 0x6b, 0x73, 0x70, 0x61, 0x63, 0x65, 0x5f, 0x6e,
+ 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x77, 0x6f, 0x72, 0x6b, 0x73,
+ 0x70, 0x61, 0x63, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6c, 0x61, 0x73,
+ 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x12, 0x14,
+ 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74,
+ 0x69, 0x74, 0x6c, 0x65, 0x22, 0xaf, 0x0a, 0x0a, 0x13, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x4e,
+ 0x6f, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x19, 0x0a, 0x08,
+ 0x62, 0x75, 0x73, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07,
+ 0x62, 0x75, 0x73, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x6f, 0x62, 0x6a, 0x65, 0x63,
+ 0x74, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x6f, 0x62,
+ 0x6a, 0x65, 0x63, 0x74, 0x50, 0x61, 0x74, 0x68, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x03,
+ 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c,
+ 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x3b,
+ 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x23,
+ 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x6d, 0x6f, 0x64, 0x75, 0x6c,
+ 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x79, 0x73, 0x74, 0x72, 0x61, 0x79, 0x2e, 0x53, 0x74, 0x61,
+ 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x49, 0x0a, 0x07, 0x74,
+ 0x6f, 0x6f, 0x6c, 0x74, 0x69, 0x70, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x68,
0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x2e, 0x76,
0x31, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72,
0x56, 0x61, 0x6c, 0x75, 0x65, 0x2e, 0x54, 0x6f, 0x6f, 0x6c, 0x74, 0x69, 0x70, 0x52, 0x07, 0x74,
- 0x6f, 0x6f, 0x6c, 0x74, 0x69, 0x70, 0x22, 0x6e, 0x0a, 0x0f, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65,
- 0x49, 0x63, 0x6f, 0x6e, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x62, 0x75, 0x73,
- 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x62, 0x75, 0x73,
- 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x40, 0x0a, 0x04, 0x69, 0x63, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01,
+ 0x6f, 0x6f, 0x6c, 0x74, 0x69, 0x70, 0x12, 0x40, 0x0a, 0x04, 0x69, 0x63, 0x6f, 0x6e, 0x18, 0x07,
+ 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c,
+ 0x2e, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73,
+ 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x2e, 0x49, 0x63,
+ 0x6f, 0x6e, 0x52, 0x04, 0x69, 0x63, 0x6f, 0x6e, 0x12, 0x40, 0x0a, 0x04, 0x6d, 0x65, 0x6e, 0x75,
+ 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e,
+ 0x65, 0x6c, 0x2e, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x74, 0x61, 0x74,
+ 0x75, 0x73, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x2e,
+ 0x4d, 0x65, 0x6e, 0x75, 0x52, 0x04, 0x6d, 0x65, 0x6e, 0x75, 0x12, 0x23, 0x0a, 0x0d, 0x6d, 0x65,
+ 0x6e, 0x75, 0x5f, 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x09, 0x20, 0x01, 0x28,
+ 0x05, 0x52, 0x0c, 0x6d, 0x65, 0x6e, 0x75, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x1a,
+ 0x4a, 0x0a, 0x06, 0x50, 0x69, 0x78, 0x6d, 0x61, 0x70, 0x12, 0x14, 0x0a, 0x05, 0x77, 0x69, 0x64,
+ 0x74, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x77, 0x69, 0x64, 0x74, 0x68, 0x12,
+ 0x16, 0x0a, 0x06, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52,
+ 0x06, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18,
+ 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x1a, 0xa1, 0x01, 0x0a, 0x07,
+ 0x54, 0x6f, 0x6f, 0x6c, 0x74, 0x69, 0x70, 0x12, 0x1b, 0x0a, 0x09, 0x69, 0x63, 0x6f, 0x6e, 0x5f,
+ 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x69, 0x63, 0x6f, 0x6e,
+ 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x4f, 0x0a, 0x0b, 0x69, 0x63, 0x6f, 0x6e, 0x5f, 0x70, 0x69, 0x78,
+ 0x6d, 0x61, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x68, 0x79, 0x70, 0x72,
+ 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x53,
+ 0x74, 0x61, 0x74, 0x75, 0x73, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x56, 0x61, 0x6c,
+ 0x75, 0x65, 0x2e, 0x50, 0x69, 0x78, 0x6d, 0x61, 0x70, 0x52, 0x0a, 0x69, 0x63, 0x6f, 0x6e, 0x50,
+ 0x69, 0x78, 0x6d, 0x61, 0x70, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x03,
+ 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x62,
+ 0x6f, 0x64, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x1a,
+ 0x9c, 0x01, 0x0a, 0x04, 0x49, 0x63, 0x6f, 0x6e, 0x12, 0x1b, 0x0a, 0x09, 0x69, 0x63, 0x6f, 0x6e,
+ 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x69, 0x63, 0x6f,
+ 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x26, 0x0a, 0x0f, 0x69, 0x63, 0x6f, 0x6e, 0x5f, 0x74, 0x68,
+ 0x65, 0x6d, 0x65, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d,
+ 0x69, 0x63, 0x6f, 0x6e, 0x54, 0x68, 0x65, 0x6d, 0x65, 0x50, 0x61, 0x74, 0x68, 0x12, 0x4f, 0x0a,
+ 0x0b, 0x69, 0x63, 0x6f, 0x6e, 0x5f, 0x70, 0x69, 0x78, 0x6d, 0x61, 0x70, 0x18, 0x03, 0x20, 0x01,
+ 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x65,
+ 0x76, 0x65, 0x6e, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x4e, 0x6f,
+ 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x2e, 0x50, 0x69, 0x78, 0x6d,
+ 0x61, 0x70, 0x52, 0x0a, 0x69, 0x63, 0x6f, 0x6e, 0x50, 0x69, 0x78, 0x6d, 0x61, 0x70, 0x1a, 0xf5,
+ 0x03, 0x0a, 0x04, 0x4d, 0x65, 0x6e, 0x75, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20,
+ 0x01, 0x28, 0x05, 0x52, 0x02, 0x69, 0x64, 0x12, 0x57, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x70, 0x65,
+ 0x72, 0x74, 0x69, 0x65, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x37, 0x2e, 0x68, 0x79,
+ 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x2e, 0x76, 0x31,
+ 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x56,
+ 0x61, 0x6c, 0x75, 0x65, 0x2e, 0x4d, 0x65, 0x6e, 0x75, 0x2e, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72,
+ 0x74, 0x69, 0x65, 0x73, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x69, 0x65, 0x73,
+ 0x12, 0x48, 0x0a, 0x08, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x72, 0x65, 0x6e, 0x18, 0x03, 0x20, 0x03,
0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x65,
0x76, 0x65, 0x6e, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x4e, 0x6f,
- 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x2e, 0x49, 0x63, 0x6f, 0x6e,
- 0x52, 0x04, 0x69, 0x63, 0x6f, 0x6e, 0x22, 0x6b, 0x0a, 0x11, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65,
- 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x62,
- 0x75, 0x73, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x62,
- 0x75, 0x73, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x3b, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73,
- 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x23, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e,
- 0x65, 0x6c, 0x2e, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x79, 0x73,
- 0x74, 0x72, 0x61, 0x79, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61,
- 0x74, 0x75, 0x73, 0x22, 0x6e, 0x0a, 0x0f, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x6e,
- 0x75, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x62, 0x75, 0x73, 0x5f, 0x6e, 0x61,
- 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x62, 0x75, 0x73, 0x4e, 0x61, 0x6d,
- 0x65, 0x12, 0x40, 0x0a, 0x04, 0x6d, 0x65, 0x6e, 0x75, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32,
- 0x2c, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x65, 0x76, 0x65, 0x6e,
- 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x4e, 0x6f, 0x74, 0x69, 0x66,
- 0x69, 0x65, 0x72, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x2e, 0x4d, 0x65, 0x6e, 0x75, 0x52, 0x04, 0x6d,
- 0x65, 0x6e, 0x75, 0x22, 0xac, 0x05, 0x0a, 0x11, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61,
- 0x74, 0x69, 0x6f, 0x6e, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18,
- 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x02, 0x69, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x61, 0x70, 0x70,
- 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x70, 0x70,
- 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x72, 0x65, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x73,
- 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x72, 0x65, 0x70, 0x6c, 0x61,
- 0x63, 0x65, 0x73, 0x49, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x61, 0x70, 0x70, 0x5f, 0x69, 0x63, 0x6f,
- 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x70, 0x70, 0x49, 0x63, 0x6f, 0x6e,
- 0x12, 0x18, 0x0a, 0x07, 0x73, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28,
- 0x09, 0x52, 0x07, 0x73, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x12, 0x12, 0x0a, 0x04, 0x62, 0x6f,
- 0x64, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x12, 0x46,
- 0x0a, 0x07, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32,
- 0x2c, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x65, 0x76, 0x65, 0x6e,
- 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x2e, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x07, 0x61,
- 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x40, 0x0a, 0x05, 0x68, 0x69, 0x6e, 0x74, 0x73, 0x18,
- 0x08, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65,
- 0x6c, 0x2e, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x4e, 0x6f, 0x74, 0x69, 0x66,
- 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x2e, 0x48, 0x69, 0x6e,
- 0x74, 0x52, 0x05, 0x68, 0x69, 0x6e, 0x74, 0x73, 0x12, 0x33, 0x0a, 0x07, 0x74, 0x69, 0x6d, 0x65,
- 0x6f, 0x75, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
- 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61,
- 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x07, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x1a, 0x44, 0x0a,
- 0x04, 0x48, 0x69, 0x6e, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01,
- 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x2a, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65,
- 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
- 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x41, 0x6e, 0x79, 0x52, 0x05, 0x76, 0x61,
- 0x6c, 0x75, 0x65, 0x1a, 0x30, 0x0a, 0x06, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x10, 0x0a,
- 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12,
- 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05,
- 0x76, 0x61, 0x6c, 0x75, 0x65, 0x1a, 0xca, 0x01, 0x0a, 0x06, 0x50, 0x69, 0x78, 0x6d, 0x61, 0x70,
- 0x12, 0x14, 0x0a, 0x05, 0x77, 0x69, 0x64, 0x74, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52,
- 0x05, 0x77, 0x69, 0x64, 0x74, 0x68, 0x12, 0x16, 0x0a, 0x06, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74,
- 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0x1d,
- 0x0a, 0x0a, 0x72, 0x6f, 0x77, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x64, 0x65, 0x18, 0x03, 0x20, 0x01,
- 0x28, 0x05, 0x52, 0x09, 0x72, 0x6f, 0x77, 0x53, 0x74, 0x72, 0x69, 0x64, 0x65, 0x12, 0x1b, 0x0a,
- 0x09, 0x68, 0x61, 0x73, 0x5f, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08,
- 0x52, 0x08, 0x68, 0x61, 0x73, 0x41, 0x6c, 0x70, 0x68, 0x61, 0x12, 0x26, 0x0a, 0x0f, 0x62, 0x69,
- 0x74, 0x73, 0x5f, 0x70, 0x65, 0x72, 0x5f, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x18, 0x05, 0x20,
- 0x01, 0x28, 0x05, 0x52, 0x0d, 0x62, 0x69, 0x74, 0x73, 0x50, 0x65, 0x72, 0x53, 0x61, 0x6d, 0x70,
- 0x6c, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x18, 0x06,
- 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x12, 0x12,
- 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x64, 0x61,
- 0x74, 0x61, 0x22, 0xc4, 0x01, 0x0a, 0x14, 0x48, 0x75, 0x64, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69,
- 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69,
- 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x69,
- 0x63, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x69, 0x63, 0x6f, 0x6e, 0x12,
- 0x23, 0x0a, 0x0d, 0x69, 0x63, 0x6f, 0x6e, 0x5f, 0x73, 0x79, 0x6d, 0x62, 0x6f, 0x6c, 0x69, 0x63,
- 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x69, 0x63, 0x6f, 0x6e, 0x53, 0x79, 0x6d, 0x62,
- 0x6f, 0x6c, 0x69, 0x63, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x04, 0x20,
- 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x62, 0x6f,
- 0x64, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x12, 0x18,
- 0x0a, 0x07, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x01, 0x52,
- 0x07, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x70, 0x65, 0x72, 0x63,
- 0x65, 0x6e, 0x74, 0x5f, 0x6d, 0x61, 0x78, 0x18, 0x07, 0x20, 0x01, 0x28, 0x01, 0x52, 0x0a, 0x70,
- 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x4d, 0x61, 0x78, 0x22, 0xbb, 0x01, 0x0a, 0x14, 0x41, 0x75,
- 0x64, 0x69, 0x6f, 0x53, 0x69, 0x6e, 0x6b, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x56, 0x61, 0x6c,
- 0x75, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02,
- 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09,
- 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65,
- 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x12, 0x18,
- 0x0a, 0x07, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x01, 0x52,
- 0x07, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x70, 0x65, 0x72, 0x63,
- 0x65, 0x6e, 0x74, 0x5f, 0x6d, 0x61, 0x78, 0x18, 0x05, 0x20, 0x01, 0x28, 0x01, 0x52, 0x0a, 0x70,
- 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x4d, 0x61, 0x78, 0x12, 0x12, 0x0a, 0x04, 0x6d, 0x75, 0x74,
- 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x6d, 0x75, 0x74, 0x65, 0x12, 0x18, 0x0a,
- 0x07, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07,
- 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x22, 0xbd, 0x01, 0x0a, 0x16, 0x41, 0x75, 0x64, 0x69,
- 0x6f, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x56, 0x61, 0x6c,
- 0x75, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02,
- 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09,
- 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65,
- 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x12, 0x18,
- 0x0a, 0x07, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x01, 0x52,
- 0x07, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x70, 0x65, 0x72, 0x63,
- 0x65, 0x6e, 0x74, 0x5f, 0x6d, 0x61, 0x78, 0x18, 0x05, 0x20, 0x01, 0x28, 0x01, 0x52, 0x0a, 0x70,
- 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x4d, 0x61, 0x78, 0x12, 0x12, 0x0a, 0x04, 0x6d, 0x75, 0x74,
- 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x6d, 0x75, 0x74, 0x65, 0x12, 0x18, 0x0a,
- 0x07, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07,
- 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x22, 0x64, 0x0a, 0x15, 0x41, 0x75, 0x64, 0x69, 0x6f,
- 0x53, 0x69, 0x6e, 0x6b, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x41, 0x64, 0x6a, 0x75, 0x73, 0x74,
+ 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x2e, 0x4d, 0x65, 0x6e, 0x75,
+ 0x52, 0x08, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x72, 0x65, 0x6e, 0x1a, 0xb9, 0x02, 0x0a, 0x0a, 0x50,
+ 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x69, 0x65, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x61, 0x62,
+ 0x65, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x12,
+ 0x1b, 0x0a, 0x09, 0x69, 0x63, 0x6f, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01,
+ 0x28, 0x09, 0x52, 0x08, 0x69, 0x63, 0x6f, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1b, 0x0a, 0x09,
+ 0x69, 0x63, 0x6f, 0x6e, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52,
+ 0x08, 0x69, 0x63, 0x6f, 0x6e, 0x44, 0x61, 0x74, 0x61, 0x12, 0x21, 0x0a, 0x0c, 0x74, 0x6f, 0x67,
+ 0x67, 0x6c, 0x65, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52,
+ 0x0b, 0x74, 0x6f, 0x67, 0x67, 0x6c, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x21, 0x0a, 0x0c,
+ 0x69, 0x73, 0x5f, 0x73, 0x65, 0x70, 0x61, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x05, 0x20, 0x01,
+ 0x28, 0x08, 0x52, 0x0b, 0x69, 0x73, 0x53, 0x65, 0x70, 0x61, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x12,
+ 0x1b, 0x0a, 0x09, 0x69, 0x73, 0x5f, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x06, 0x20, 0x01,
+ 0x28, 0x08, 0x52, 0x08, 0x69, 0x73, 0x50, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x1b, 0x0a, 0x09,
+ 0x69, 0x73, 0x5f, 0x68, 0x69, 0x64, 0x64, 0x65, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52,
+ 0x08, 0x69, 0x73, 0x48, 0x69, 0x64, 0x64, 0x65, 0x6e, 0x12, 0x1f, 0x0a, 0x0b, 0x69, 0x73, 0x5f,
+ 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a,
+ 0x69, 0x73, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x69, 0x73,
+ 0x5f, 0x72, 0x61, 0x64, 0x69, 0x6f, 0x18, 0x09, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x69, 0x73,
+ 0x52, 0x61, 0x64, 0x69, 0x6f, 0x12, 0x1f, 0x0a, 0x0b, 0x69, 0x73, 0x5f, 0x63, 0x68, 0x65, 0x63,
+ 0x6b, 0x62, 0x6f, 0x78, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x69, 0x73, 0x43, 0x68,
+ 0x65, 0x63, 0x6b, 0x62, 0x6f, 0x78, 0x22, 0x43, 0x0a, 0x10, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65,
+ 0x54, 0x69, 0x74, 0x6c, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x62, 0x75,
+ 0x73, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x62, 0x75,
+ 0x73, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x02,
+ 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x22, 0x7a, 0x0a, 0x12, 0x55,
+ 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x6f, 0x6f, 0x6c, 0x74, 0x69, 0x70, 0x56, 0x61, 0x6c, 0x75,
+ 0x65, 0x12, 0x19, 0x0a, 0x08, 0x62, 0x75, 0x73, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20,
+ 0x01, 0x28, 0x09, 0x52, 0x07, 0x62, 0x75, 0x73, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x49, 0x0a, 0x07,
+ 0x74, 0x6f, 0x6f, 0x6c, 0x74, 0x69, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2f, 0x2e,
+ 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x2e,
+ 0x76, 0x31, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x65,
+ 0x72, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x2e, 0x54, 0x6f, 0x6f, 0x6c, 0x74, 0x69, 0x70, 0x52, 0x07,
+ 0x74, 0x6f, 0x6f, 0x6c, 0x74, 0x69, 0x70, 0x22, 0x6e, 0x0a, 0x0f, 0x55, 0x70, 0x64, 0x61, 0x74,
+ 0x65, 0x49, 0x63, 0x6f, 0x6e, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x62, 0x75,
+ 0x73, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x62, 0x75,
+ 0x73, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x40, 0x0a, 0x04, 0x69, 0x63, 0x6f, 0x6e, 0x18, 0x02, 0x20,
+ 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e,
+ 0x65, 0x76, 0x65, 0x6e, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x4e,
+ 0x6f, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x2e, 0x49, 0x63, 0x6f,
+ 0x6e, 0x52, 0x04, 0x69, 0x63, 0x6f, 0x6e, 0x22, 0x6b, 0x0a, 0x11, 0x55, 0x70, 0x64, 0x61, 0x74,
+ 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x19, 0x0a, 0x08,
+ 0x62, 0x75, 0x73, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07,
+ 0x62, 0x75, 0x73, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x3b, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75,
+ 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x23, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61,
+ 0x6e, 0x65, 0x6c, 0x2e, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x79,
+ 0x73, 0x74, 0x72, 0x61, 0x79, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74,
+ 0x61, 0x74, 0x75, 0x73, 0x22, 0x6e, 0x0a, 0x0f, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x65,
+ 0x6e, 0x75, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x62, 0x75, 0x73, 0x5f, 0x6e,
+ 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x62, 0x75, 0x73, 0x4e, 0x61,
+ 0x6d, 0x65, 0x12, 0x40, 0x0a, 0x04, 0x6d, 0x65, 0x6e, 0x75, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b,
+ 0x32, 0x2c, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x65, 0x76, 0x65,
+ 0x6e, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x4e, 0x6f, 0x74, 0x69,
+ 0x66, 0x69, 0x65, 0x72, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x2e, 0x4d, 0x65, 0x6e, 0x75, 0x52, 0x04,
+ 0x6d, 0x65, 0x6e, 0x75, 0x22, 0xac, 0x05, 0x0a, 0x11, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63,
+ 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64,
+ 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x02, 0x69, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x61, 0x70,
+ 0x70, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x70,
+ 0x70, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x72, 0x65, 0x70, 0x6c, 0x61, 0x63, 0x65,
+ 0x73, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x72, 0x65, 0x70, 0x6c,
+ 0x61, 0x63, 0x65, 0x73, 0x49, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x61, 0x70, 0x70, 0x5f, 0x69, 0x63,
+ 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x70, 0x70, 0x49, 0x63, 0x6f,
+ 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x18, 0x05, 0x20, 0x01,
+ 0x28, 0x09, 0x52, 0x07, 0x73, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x12, 0x12, 0x0a, 0x04, 0x62,
+ 0x6f, 0x64, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x12,
+ 0x46, 0x0a, 0x07, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b,
+ 0x32, 0x2c, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x65, 0x76, 0x65,
+ 0x6e, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69,
+ 0x6f, 0x6e, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x2e, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x07,
+ 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x40, 0x0a, 0x05, 0x68, 0x69, 0x6e, 0x74, 0x73,
+ 0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e,
+ 0x65, 0x6c, 0x2e, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x4e, 0x6f, 0x74, 0x69,
+ 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x2e, 0x48, 0x69,
+ 0x6e, 0x74, 0x52, 0x05, 0x68, 0x69, 0x6e, 0x74, 0x73, 0x12, 0x33, 0x0a, 0x07, 0x74, 0x69, 0x6d,
+ 0x65, 0x6f, 0x75, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f,
+ 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72,
+ 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x07, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x1a, 0x44,
+ 0x0a, 0x04, 0x48, 0x69, 0x6e, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20,
+ 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x2a, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75,
+ 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
+ 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x41, 0x6e, 0x79, 0x52, 0x05, 0x76,
+ 0x61, 0x6c, 0x75, 0x65, 0x1a, 0x30, 0x0a, 0x06, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x10,
+ 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79,
+ 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52,
+ 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x1a, 0xca, 0x01, 0x0a, 0x06, 0x50, 0x69, 0x78, 0x6d, 0x61,
+ 0x70, 0x12, 0x14, 0x0a, 0x05, 0x77, 0x69, 0x64, 0x74, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05,
+ 0x52, 0x05, 0x77, 0x69, 0x64, 0x74, 0x68, 0x12, 0x16, 0x0a, 0x06, 0x68, 0x65, 0x69, 0x67, 0x68,
+ 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x12,
+ 0x1d, 0x0a, 0x0a, 0x72, 0x6f, 0x77, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x64, 0x65, 0x18, 0x03, 0x20,
+ 0x01, 0x28, 0x05, 0x52, 0x09, 0x72, 0x6f, 0x77, 0x53, 0x74, 0x72, 0x69, 0x64, 0x65, 0x12, 0x1b,
+ 0x0a, 0x09, 0x68, 0x61, 0x73, 0x5f, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x18, 0x04, 0x20, 0x01, 0x28,
+ 0x08, 0x52, 0x08, 0x68, 0x61, 0x73, 0x41, 0x6c, 0x70, 0x68, 0x61, 0x12, 0x26, 0x0a, 0x0f, 0x62,
+ 0x69, 0x74, 0x73, 0x5f, 0x70, 0x65, 0x72, 0x5f, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x18, 0x05,
+ 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x62, 0x69, 0x74, 0x73, 0x50, 0x65, 0x72, 0x53, 0x61, 0x6d,
+ 0x70, 0x6c, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x18,
+ 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x12,
+ 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x64,
+ 0x61, 0x74, 0x61, 0x22, 0xc4, 0x01, 0x0a, 0x14, 0x48, 0x75, 0x64, 0x4e, 0x6f, 0x74, 0x69, 0x66,
+ 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x0e, 0x0a, 0x02,
+ 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04,
+ 0x69, 0x63, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x69, 0x63, 0x6f, 0x6e,
+ 0x12, 0x23, 0x0a, 0x0d, 0x69, 0x63, 0x6f, 0x6e, 0x5f, 0x73, 0x79, 0x6d, 0x62, 0x6f, 0x6c, 0x69,
+ 0x63, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x69, 0x63, 0x6f, 0x6e, 0x53, 0x79, 0x6d,
+ 0x62, 0x6f, 0x6c, 0x69, 0x63, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x04,
+ 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x62,
+ 0x6f, 0x64, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x12,
+ 0x18, 0x0a, 0x07, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x01,
+ 0x52, 0x07, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x70, 0x65, 0x72,
+ 0x63, 0x65, 0x6e, 0x74, 0x5f, 0x6d, 0x61, 0x78, 0x18, 0x07, 0x20, 0x01, 0x28, 0x01, 0x52, 0x0a,
+ 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x4d, 0x61, 0x78, 0x22, 0xbb, 0x01, 0x0a, 0x14, 0x41,
+ 0x75, 0x64, 0x69, 0x6f, 0x53, 0x69, 0x6e, 0x6b, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x56, 0x61,
+ 0x6c, 0x75, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
+ 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28,
+ 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x76, 0x6f, 0x6c, 0x75, 0x6d,
+ 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x12,
+ 0x18, 0x0a, 0x07, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x01,
+ 0x52, 0x07, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x70, 0x65, 0x72,
+ 0x63, 0x65, 0x6e, 0x74, 0x5f, 0x6d, 0x61, 0x78, 0x18, 0x05, 0x20, 0x01, 0x28, 0x01, 0x52, 0x0a,
+ 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x4d, 0x61, 0x78, 0x12, 0x12, 0x0a, 0x04, 0x6d, 0x75,
+ 0x74, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x6d, 0x75, 0x74, 0x65, 0x12, 0x18,
+ 0x0a, 0x07, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52,
+ 0x07, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x22, 0xbd, 0x01, 0x0a, 0x16, 0x41, 0x75, 0x64,
+ 0x69, 0x6f, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x56, 0x61,
+ 0x6c, 0x75, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
+ 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28,
+ 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x76, 0x6f, 0x6c, 0x75, 0x6d,
+ 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x12,
+ 0x18, 0x0a, 0x07, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x01,
+ 0x52, 0x07, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x70, 0x65, 0x72,
+ 0x63, 0x65, 0x6e, 0x74, 0x5f, 0x6d, 0x61, 0x78, 0x18, 0x05, 0x20, 0x01, 0x28, 0x01, 0x52, 0x0a,
+ 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x4d, 0x61, 0x78, 0x12, 0x12, 0x0a, 0x04, 0x6d, 0x75,
+ 0x74, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x6d, 0x75, 0x74, 0x65, 0x12, 0x18,
+ 0x0a, 0x07, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52,
+ 0x07, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x22, 0x64, 0x0a, 0x15, 0x41, 0x75, 0x64, 0x69,
+ 0x6f, 0x53, 0x69, 0x6e, 0x6b, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x41, 0x64, 0x6a, 0x75, 0x73,
+ 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69,
+ 0x64, 0x12, 0x3b, 0x0a, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02,
+ 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1d, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c,
+ 0x2e, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74,
+ 0x69, 0x6f, 0x6e, 0x52, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x25,
+ 0x0a, 0x13, 0x41, 0x75, 0x64, 0x69, 0x6f, 0x53, 0x69, 0x6e, 0x6b, 0x4d, 0x75, 0x74, 0x65, 0x54,
+ 0x6f, 0x67, 0x67, 0x6c, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28,
+ 0x09, 0x52, 0x02, 0x69, 0x64, 0x22, 0x66, 0x0a, 0x17, 0x41, 0x75, 0x64, 0x69, 0x6f, 0x53, 0x6f,
+ 0x75, 0x72, 0x63, 0x65, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x41, 0x64, 0x6a, 0x75, 0x73, 0x74,
0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64,
0x12, 0x3b, 0x0a, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20,
0x01, 0x28, 0x0e, 0x32, 0x1d, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e,
0x65, 0x76, 0x65, 0x6e, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69,
- 0x6f, 0x6e, 0x52, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x25, 0x0a,
- 0x13, 0x41, 0x75, 0x64, 0x69, 0x6f, 0x53, 0x69, 0x6e, 0x6b, 0x4d, 0x75, 0x74, 0x65, 0x54, 0x6f,
- 0x67, 0x67, 0x6c, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
- 0x52, 0x02, 0x69, 0x64, 0x22, 0x66, 0x0a, 0x17, 0x41, 0x75, 0x64, 0x69, 0x6f, 0x53, 0x6f, 0x75,
- 0x72, 0x63, 0x65, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x41, 0x64, 0x6a, 0x75, 0x73, 0x74, 0x12,
- 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12,
+ 0x6f, 0x6e, 0x52, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x27, 0x0a,
+ 0x15, 0x41, 0x75, 0x64, 0x69, 0x6f, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x4d, 0x75, 0x74, 0x65,
+ 0x54, 0x6f, 0x67, 0x67, 0x6c, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01,
+ 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x22, 0x82, 0x01, 0x0a, 0x15, 0x42, 0x72, 0x69, 0x67, 0x68,
+ 0x74, 0x6e, 0x65, 0x73, 0x73, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65,
+ 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64,
+ 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04,
+ 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x62, 0x72, 0x69, 0x67, 0x68, 0x74, 0x6e, 0x65,
+ 0x73, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x62, 0x72, 0x69, 0x67, 0x68, 0x74,
+ 0x6e, 0x65, 0x73, 0x73, 0x12, 0x25, 0x0a, 0x0e, 0x62, 0x72, 0x69, 0x67, 0x68, 0x74, 0x6e, 0x65,
+ 0x73, 0x73, 0x5f, 0x6d, 0x61, 0x78, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x62, 0x72,
+ 0x69, 0x67, 0x68, 0x74, 0x6e, 0x65, 0x73, 0x73, 0x4d, 0x61, 0x78, 0x22, 0x6f, 0x0a, 0x15, 0x42,
+ 0x72, 0x69, 0x67, 0x68, 0x74, 0x6e, 0x65, 0x73, 0x73, 0x41, 0x64, 0x6a, 0x75, 0x73, 0x74, 0x56,
+ 0x61, 0x6c, 0x75, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x64, 0x65, 0x76, 0x5f, 0x6e, 0x61, 0x6d, 0x65,
+ 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x64, 0x65, 0x76, 0x4e, 0x61, 0x6d, 0x65, 0x12,
0x3b, 0x0a, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01,
0x28, 0x0e, 0x32, 0x1d, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x65,
0x76, 0x65, 0x6e, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f,
- 0x6e, 0x52, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x27, 0x0a, 0x15,
- 0x41, 0x75, 0x64, 0x69, 0x6f, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x4d, 0x75, 0x74, 0x65, 0x54,
- 0x6f, 0x67, 0x67, 0x6c, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28,
- 0x09, 0x52, 0x02, 0x69, 0x64, 0x22, 0x82, 0x01, 0x0a, 0x15, 0x42, 0x72, 0x69, 0x67, 0x68, 0x74,
- 0x6e, 0x65, 0x73, 0x73, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12,
- 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12,
- 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e,
- 0x61, 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x62, 0x72, 0x69, 0x67, 0x68, 0x74, 0x6e, 0x65, 0x73,
- 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x62, 0x72, 0x69, 0x67, 0x68, 0x74, 0x6e,
- 0x65, 0x73, 0x73, 0x12, 0x25, 0x0a, 0x0e, 0x62, 0x72, 0x69, 0x67, 0x68, 0x74, 0x6e, 0x65, 0x73,
- 0x73, 0x5f, 0x6d, 0x61, 0x78, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x62, 0x72, 0x69,
- 0x67, 0x68, 0x74, 0x6e, 0x65, 0x73, 0x73, 0x4d, 0x61, 0x78, 0x22, 0x6f, 0x0a, 0x15, 0x42, 0x72,
- 0x69, 0x67, 0x68, 0x74, 0x6e, 0x65, 0x73, 0x73, 0x41, 0x64, 0x6a, 0x75, 0x73, 0x74, 0x56, 0x61,
- 0x6c, 0x75, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x64, 0x65, 0x76, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18,
- 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x64, 0x65, 0x76, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x3b,
- 0x0a, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28,
- 0x0e, 0x32, 0x1d, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x65, 0x76,
- 0x65, 0x6e, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e,
- 0x52, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x80, 0x04, 0x0a, 0x10,
- 0x50, 0x6f, 0x77, 0x65, 0x72, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65,
- 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64,
- 0x12, 0x16, 0x0a, 0x06, 0x76, 0x65, 0x6e, 0x64, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09,
- 0x52, 0x06, 0x76, 0x65, 0x6e, 0x64, 0x6f, 0x72, 0x12, 0x14, 0x0a, 0x05, 0x6d, 0x6f, 0x64, 0x65,
- 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x12, 0x31,
- 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1d, 0x2e, 0x68,
- 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x2e, 0x76,
- 0x31, 0x2e, 0x50, 0x6f, 0x77, 0x65, 0x72, 0x54, 0x79, 0x70, 0x65, 0x52, 0x04, 0x74, 0x79, 0x70,
- 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x5f, 0x73, 0x75, 0x70, 0x70, 0x6c,
- 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x53, 0x75,
- 0x70, 0x70, 0x6c, 0x79, 0x12, 0x16, 0x0a, 0x06, 0x6f, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x18, 0x06,
- 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x6f, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x12, 0x3d, 0x0a, 0x0d,
- 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x74, 0x6f, 0x5f, 0x65, 0x6d, 0x70, 0x74, 0x79, 0x18, 0x07, 0x20,
- 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f,
- 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0b,
- 0x74, 0x69, 0x6d, 0x65, 0x54, 0x6f, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x3b, 0x0a, 0x0c, 0x74,
- 0x69, 0x6d, 0x65, 0x5f, 0x74, 0x6f, 0x5f, 0x66, 0x75, 0x6c, 0x6c, 0x18, 0x08, 0x20, 0x01, 0x28,
- 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
- 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0a, 0x74, 0x69,
- 0x6d, 0x65, 0x54, 0x6f, 0x46, 0x75, 0x6c, 0x6c, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x65, 0x72, 0x63,
- 0x65, 0x6e, 0x74, 0x61, 0x67, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x70, 0x65,
- 0x72, 0x63, 0x65, 0x6e, 0x74, 0x61, 0x67, 0x65, 0x12, 0x34, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74,
- 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1e, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61,
- 0x6e, 0x65, 0x6c, 0x2e, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x6f, 0x77,
- 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x12, 0x12,
- 0x0a, 0x04, 0x69, 0x63, 0x6f, 0x6e, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x69, 0x63,
- 0x6f, 0x6e, 0x12, 0x16, 0x0a, 0x06, 0x65, 0x6e, 0x65, 0x72, 0x67, 0x79, 0x18, 0x0c, 0x20, 0x01,
- 0x28, 0x01, 0x52, 0x06, 0x65, 0x6e, 0x65, 0x72, 0x67, 0x79, 0x12, 0x21, 0x0a, 0x0c, 0x65, 0x6e,
- 0x65, 0x72, 0x67, 0x79, 0x5f, 0x65, 0x6d, 0x70, 0x74, 0x79, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x01,
- 0x52, 0x0b, 0x65, 0x6e, 0x65, 0x72, 0x67, 0x79, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x1f, 0x0a,
- 0x0b, 0x65, 0x6e, 0x65, 0x72, 0x67, 0x79, 0x5f, 0x66, 0x75, 0x6c, 0x6c, 0x18, 0x0e, 0x20, 0x01,
- 0x28, 0x01, 0x52, 0x0a, 0x65, 0x6e, 0x65, 0x72, 0x67, 0x79, 0x46, 0x75, 0x6c, 0x6c, 0x22, 0x64,
- 0x0a, 0x05, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x31, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x18,
- 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1d, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65,
- 0x6c, 0x2e, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x45, 0x76, 0x65, 0x6e, 0x74,
- 0x4b, 0x69, 0x6e, 0x64, 0x52, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x12, 0x28, 0x0a, 0x04, 0x64, 0x61,
- 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
- 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x41, 0x6e, 0x79, 0x52, 0x04,
- 0x64, 0x61, 0x74, 0x61, 0x2a, 0x4c, 0x0a, 0x09, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f,
- 0x6e, 0x12, 0x19, 0x0a, 0x15, 0x44, 0x49, 0x52, 0x45, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x55,
- 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x10, 0x0a, 0x0c,
- 0x44, 0x49, 0x52, 0x45, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x55, 0x50, 0x10, 0x01, 0x12, 0x12,
- 0x0a, 0x0e, 0x44, 0x49, 0x52, 0x45, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x44, 0x4f, 0x57, 0x4e,
- 0x10, 0x02, 0x2a, 0xdf, 0x01, 0x0a, 0x09, 0x50, 0x6f, 0x77, 0x65, 0x72, 0x54, 0x79, 0x70, 0x65,
- 0x12, 0x1a, 0x0a, 0x16, 0x50, 0x4f, 0x57, 0x45, 0x52, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55,
- 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x19, 0x0a, 0x15,
- 0x50, 0x4f, 0x57, 0x45, 0x52, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x4c, 0x49, 0x4e, 0x45, 0x5f,
- 0x50, 0x4f, 0x57, 0x45, 0x52, 0x10, 0x01, 0x12, 0x16, 0x0a, 0x12, 0x50, 0x4f, 0x57, 0x45, 0x52,
- 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x42, 0x41, 0x54, 0x54, 0x45, 0x52, 0x59, 0x10, 0x02, 0x12,
- 0x12, 0x0a, 0x0e, 0x50, 0x4f, 0x57, 0x45, 0x52, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x50,
- 0x53, 0x10, 0x03, 0x12, 0x16, 0x0a, 0x12, 0x50, 0x4f, 0x57, 0x45, 0x52, 0x5f, 0x54, 0x59, 0x50,
- 0x45, 0x5f, 0x4d, 0x4f, 0x4e, 0x49, 0x54, 0x4f, 0x52, 0x10, 0x04, 0x12, 0x14, 0x0a, 0x10, 0x50,
- 0x4f, 0x57, 0x45, 0x52, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x4d, 0x4f, 0x55, 0x53, 0x45, 0x10,
- 0x05, 0x12, 0x17, 0x0a, 0x13, 0x50, 0x4f, 0x57, 0x45, 0x52, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f,
- 0x4b, 0x45, 0x59, 0x42, 0x4f, 0x41, 0x52, 0x44, 0x10, 0x06, 0x12, 0x12, 0x0a, 0x0e, 0x50, 0x4f,
- 0x57, 0x45, 0x52, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x50, 0x44, 0x41, 0x10, 0x07, 0x12, 0x14,
- 0x0a, 0x10, 0x50, 0x4f, 0x57, 0x45, 0x52, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x50, 0x48, 0x4f,
- 0x4e, 0x45, 0x10, 0x08, 0x2a, 0xd9, 0x01, 0x0a, 0x0a, 0x50, 0x6f, 0x77, 0x65, 0x72, 0x53, 0x74,
- 0x61, 0x74, 0x65, 0x12, 0x1b, 0x0a, 0x17, 0x50, 0x4f, 0x57, 0x45, 0x52, 0x5f, 0x53, 0x54, 0x41,
- 0x54, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00,
- 0x12, 0x18, 0x0a, 0x14, 0x50, 0x4f, 0x57, 0x45, 0x52, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f,
- 0x43, 0x48, 0x41, 0x52, 0x47, 0x49, 0x4e, 0x47, 0x10, 0x01, 0x12, 0x1b, 0x0a, 0x17, 0x50, 0x4f,
- 0x57, 0x45, 0x52, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x44, 0x49, 0x53, 0x43, 0x48, 0x41,
- 0x52, 0x47, 0x49, 0x4e, 0x47, 0x10, 0x02, 0x12, 0x15, 0x0a, 0x11, 0x50, 0x4f, 0x57, 0x45, 0x52,
- 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x45, 0x4d, 0x50, 0x54, 0x59, 0x10, 0x03, 0x12, 0x1d,
- 0x0a, 0x19, 0x50, 0x4f, 0x57, 0x45, 0x52, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x46, 0x55,
- 0x4c, 0x4c, 0x59, 0x5f, 0x43, 0x48, 0x41, 0x52, 0x47, 0x45, 0x44, 0x10, 0x04, 0x12, 0x1e, 0x0a,
- 0x1a, 0x50, 0x4f, 0x57, 0x45, 0x52, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x50, 0x45, 0x4e,
- 0x44, 0x49, 0x4e, 0x47, 0x5f, 0x43, 0x48, 0x41, 0x52, 0x47, 0x45, 0x10, 0x05, 0x12, 0x21, 0x0a,
- 0x1d, 0x50, 0x4f, 0x57, 0x45, 0x52, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x50, 0x45, 0x4e,
- 0x44, 0x49, 0x4e, 0x47, 0x5f, 0x44, 0x49, 0x53, 0x43, 0x48, 0x41, 0x52, 0x47, 0x45, 0x10, 0x06,
- 0x2a, 0x86, 0x10, 0x0a, 0x09, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x4b, 0x69, 0x6e, 0x64, 0x12, 0x1a,
- 0x0a, 0x16, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x55, 0x4e, 0x53,
- 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x1d, 0x0a, 0x19, 0x45, 0x56,
- 0x45, 0x4e, 0x54, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x48, 0x59, 0x50, 0x52, 0x5f, 0x57, 0x4f,
- 0x52, 0x4b, 0x53, 0x50, 0x41, 0x43, 0x45, 0x10, 0x01, 0x12, 0x1e, 0x0a, 0x1a, 0x45, 0x56, 0x45,
- 0x4e, 0x54, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x48, 0x59, 0x50, 0x52, 0x5f, 0x46, 0x4f, 0x43,
- 0x55, 0x53, 0x45, 0x44, 0x4d, 0x4f, 0x4e, 0x10, 0x02, 0x12, 0x20, 0x0a, 0x1c, 0x45, 0x56, 0x45,
- 0x4e, 0x54, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x48, 0x59, 0x50, 0x52, 0x5f, 0x41, 0x43, 0x54,
- 0x49, 0x56, 0x45, 0x57, 0x49, 0x4e, 0x44, 0x4f, 0x57, 0x10, 0x04, 0x12, 0x22, 0x0a, 0x1e, 0x45,
- 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x48, 0x59, 0x50, 0x52, 0x5f, 0x41,
- 0x43, 0x54, 0x49, 0x56, 0x45, 0x57, 0x49, 0x4e, 0x44, 0x4f, 0x57, 0x56, 0x32, 0x10, 0x05, 0x12,
- 0x1e, 0x0a, 0x1a, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x48, 0x59,
- 0x50, 0x52, 0x5f, 0x46, 0x55, 0x4c, 0x4c, 0x53, 0x43, 0x52, 0x45, 0x45, 0x4e, 0x10, 0x06, 0x12,
- 0x22, 0x0a, 0x1e, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x48, 0x59,
- 0x50, 0x52, 0x5f, 0x4d, 0x4f, 0x4e, 0x49, 0x54, 0x4f, 0x52, 0x52, 0x45, 0x4d, 0x4f, 0x56, 0x45,
- 0x44, 0x10, 0x07, 0x12, 0x20, 0x0a, 0x1c, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x4b, 0x49, 0x4e,
- 0x44, 0x5f, 0x48, 0x59, 0x50, 0x52, 0x5f, 0x4d, 0x4f, 0x4e, 0x49, 0x54, 0x4f, 0x52, 0x41, 0x44,
- 0x44, 0x45, 0x44, 0x10, 0x08, 0x12, 0x23, 0x0a, 0x1f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x4b,
- 0x49, 0x4e, 0x44, 0x5f, 0x48, 0x59, 0x50, 0x52, 0x5f, 0x43, 0x52, 0x45, 0x41, 0x54, 0x45, 0x57,
- 0x4f, 0x52, 0x4b, 0x53, 0x50, 0x41, 0x43, 0x45, 0x10, 0x09, 0x12, 0x24, 0x0a, 0x20, 0x45, 0x56,
- 0x45, 0x4e, 0x54, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x48, 0x59, 0x50, 0x52, 0x5f, 0x44, 0x45,
- 0x53, 0x54, 0x52, 0x4f, 0x59, 0x57, 0x4f, 0x52, 0x4b, 0x53, 0x50, 0x41, 0x43, 0x45, 0x10, 0x0a,
- 0x12, 0x21, 0x0a, 0x1d, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x48,
- 0x59, 0x50, 0x52, 0x5f, 0x4d, 0x4f, 0x56, 0x45, 0x57, 0x4f, 0x52, 0x4b, 0x53, 0x50, 0x41, 0x43,
- 0x45, 0x10, 0x0b, 0x12, 0x23, 0x0a, 0x1f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x4b, 0x49, 0x4e,
- 0x44, 0x5f, 0x48, 0x59, 0x50, 0x52, 0x5f, 0x52, 0x45, 0x4e, 0x41, 0x4d, 0x45, 0x57, 0x4f, 0x52,
- 0x4b, 0x53, 0x50, 0x41, 0x43, 0x45, 0x10, 0x0c, 0x12, 0x21, 0x0a, 0x1d, 0x45, 0x56, 0x45, 0x4e,
- 0x54, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x48, 0x59, 0x50, 0x52, 0x5f, 0x41, 0x43, 0x54, 0x49,
- 0x56, 0x45, 0x53, 0x50, 0x45, 0x43, 0x49, 0x41, 0x4c, 0x10, 0x0d, 0x12, 0x20, 0x0a, 0x1c, 0x45,
- 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x48, 0x59, 0x50, 0x52, 0x5f, 0x41,
- 0x43, 0x54, 0x49, 0x56, 0x45, 0x4c, 0x41, 0x59, 0x4f, 0x55, 0x54, 0x10, 0x0e, 0x12, 0x1e, 0x0a,
- 0x1a, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x48, 0x59, 0x50, 0x52,
- 0x5f, 0x4f, 0x50, 0x45, 0x4e, 0x57, 0x49, 0x4e, 0x44, 0x4f, 0x57, 0x10, 0x0f, 0x12, 0x1f, 0x0a,
- 0x1b, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x48, 0x59, 0x50, 0x52,
- 0x5f, 0x43, 0x4c, 0x4f, 0x53, 0x45, 0x57, 0x49, 0x4e, 0x44, 0x4f, 0x57, 0x10, 0x10, 0x12, 0x1e,
- 0x0a, 0x1a, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x48, 0x59, 0x50,
- 0x52, 0x5f, 0x4d, 0x4f, 0x56, 0x45, 0x57, 0x49, 0x4e, 0x44, 0x4f, 0x57, 0x10, 0x11, 0x12, 0x1d,
- 0x0a, 0x19, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x48, 0x59, 0x50,
- 0x52, 0x5f, 0x4f, 0x50, 0x45, 0x4e, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x10, 0x12, 0x12, 0x1e, 0x0a,
- 0x1a, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x48, 0x59, 0x50, 0x52,
- 0x5f, 0x43, 0x4c, 0x4f, 0x53, 0x45, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x10, 0x13, 0x12, 0x1a, 0x0a,
- 0x16, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x48, 0x59, 0x50, 0x52,
- 0x5f, 0x53, 0x55, 0x42, 0x4d, 0x41, 0x50, 0x10, 0x14, 0x12, 0x26, 0x0a, 0x22, 0x45, 0x56, 0x45,
- 0x4e, 0x54, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x48, 0x59, 0x50, 0x52, 0x5f, 0x43, 0x48, 0x41,
- 0x4e, 0x47, 0x45, 0x46, 0x4c, 0x4f, 0x41, 0x54, 0x49, 0x4e, 0x47, 0x4d, 0x4f, 0x44, 0x45, 0x10,
- 0x15, 0x12, 0x1a, 0x0a, 0x16, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f,
- 0x48, 0x59, 0x50, 0x52, 0x5f, 0x55, 0x52, 0x47, 0x45, 0x4e, 0x54, 0x10, 0x16, 0x12, 0x1c, 0x0a,
- 0x18, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x48, 0x59, 0x50, 0x52,
- 0x5f, 0x4d, 0x49, 0x4e, 0x49, 0x4d, 0x49, 0x5a, 0x45, 0x10, 0x17, 0x12, 0x1e, 0x0a, 0x1a, 0x45,
- 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x48, 0x59, 0x50, 0x52, 0x5f, 0x53,
- 0x43, 0x52, 0x45, 0x45, 0x4e, 0x43, 0x41, 0x53, 0x54, 0x10, 0x18, 0x12, 0x1f, 0x0a, 0x1b, 0x45,
- 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x48, 0x59, 0x50, 0x52, 0x5f, 0x57,
- 0x49, 0x4e, 0x44, 0x4f, 0x57, 0x54, 0x49, 0x54, 0x4c, 0x45, 0x10, 0x19, 0x12, 0x23, 0x0a, 0x1f,
+ 0x6e, 0x52, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x80, 0x04, 0x0a,
+ 0x10, 0x50, 0x6f, 0x77, 0x65, 0x72, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x56, 0x61, 0x6c, 0x75,
+ 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69,
+ 0x64, 0x12, 0x16, 0x0a, 0x06, 0x76, 0x65, 0x6e, 0x64, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28,
+ 0x09, 0x52, 0x06, 0x76, 0x65, 0x6e, 0x64, 0x6f, 0x72, 0x12, 0x14, 0x0a, 0x05, 0x6d, 0x6f, 0x64,
+ 0x65, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x12,
+ 0x31, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1d, 0x2e,
+ 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x2e,
+ 0x76, 0x31, 0x2e, 0x50, 0x6f, 0x77, 0x65, 0x72, 0x54, 0x79, 0x70, 0x65, 0x52, 0x04, 0x74, 0x79,
+ 0x70, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x5f, 0x73, 0x75, 0x70, 0x70,
+ 0x6c, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x53,
+ 0x75, 0x70, 0x70, 0x6c, 0x79, 0x12, 0x16, 0x0a, 0x06, 0x6f, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x18,
+ 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x6f, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x12, 0x3d, 0x0a,
+ 0x0d, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x74, 0x6f, 0x5f, 0x65, 0x6d, 0x70, 0x74, 0x79, 0x18, 0x07,
+ 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72,
+ 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52,
+ 0x0b, 0x74, 0x69, 0x6d, 0x65, 0x54, 0x6f, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x3b, 0x0a, 0x0c,
+ 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x74, 0x6f, 0x5f, 0x66, 0x75, 0x6c, 0x6c, 0x18, 0x08, 0x20, 0x01,
+ 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74,
+ 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0a, 0x74,
+ 0x69, 0x6d, 0x65, 0x54, 0x6f, 0x46, 0x75, 0x6c, 0x6c, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x65, 0x72,
+ 0x63, 0x65, 0x6e, 0x74, 0x61, 0x67, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x70,
+ 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x61, 0x67, 0x65, 0x12, 0x34, 0x0a, 0x05, 0x73, 0x74, 0x61,
+ 0x74, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1e, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70,
+ 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x6f,
+ 0x77, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x12,
+ 0x12, 0x0a, 0x04, 0x69, 0x63, 0x6f, 0x6e, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x69,
+ 0x63, 0x6f, 0x6e, 0x12, 0x16, 0x0a, 0x06, 0x65, 0x6e, 0x65, 0x72, 0x67, 0x79, 0x18, 0x0c, 0x20,
+ 0x01, 0x28, 0x01, 0x52, 0x06, 0x65, 0x6e, 0x65, 0x72, 0x67, 0x79, 0x12, 0x21, 0x0a, 0x0c, 0x65,
+ 0x6e, 0x65, 0x72, 0x67, 0x79, 0x5f, 0x65, 0x6d, 0x70, 0x74, 0x79, 0x18, 0x0d, 0x20, 0x01, 0x28,
+ 0x01, 0x52, 0x0b, 0x65, 0x6e, 0x65, 0x72, 0x67, 0x79, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x1f,
+ 0x0a, 0x0b, 0x65, 0x6e, 0x65, 0x72, 0x67, 0x79, 0x5f, 0x66, 0x75, 0x6c, 0x6c, 0x18, 0x0e, 0x20,
+ 0x01, 0x28, 0x01, 0x52, 0x0a, 0x65, 0x6e, 0x65, 0x72, 0x67, 0x79, 0x46, 0x75, 0x6c, 0x6c, 0x22,
+ 0x4f, 0x0a, 0x12, 0x49, 0x64, 0x6c, 0x65, 0x49, 0x6e, 0x68, 0x69, 0x62, 0x69, 0x74, 0x6f, 0x72,
+ 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x39, 0x0a, 0x06, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x18,
+ 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x21, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65,
+ 0x6c, 0x2e, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x49, 0x6e, 0x68, 0x69, 0x62,
+ 0x69, 0x74, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x52, 0x06, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74,
+ 0x22, 0x64, 0x0a, 0x05, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x31, 0x0a, 0x04, 0x6b, 0x69, 0x6e,
+ 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1d, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61,
+ 0x6e, 0x65, 0x6c, 0x2e, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x45, 0x76, 0x65,
+ 0x6e, 0x74, 0x4b, 0x69, 0x6e, 0x64, 0x52, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x12, 0x28, 0x0a, 0x04,
+ 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x67, 0x6f, 0x6f,
+ 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x41, 0x6e, 0x79,
+ 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x2a, 0x4c, 0x0a, 0x09, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74,
+ 0x69, 0x6f, 0x6e, 0x12, 0x19, 0x0a, 0x15, 0x44, 0x49, 0x52, 0x45, 0x43, 0x54, 0x49, 0x4f, 0x4e,
+ 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x10,
+ 0x0a, 0x0c, 0x44, 0x49, 0x52, 0x45, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x55, 0x50, 0x10, 0x01,
+ 0x12, 0x12, 0x0a, 0x0e, 0x44, 0x49, 0x52, 0x45, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x44, 0x4f,
+ 0x57, 0x4e, 0x10, 0x02, 0x2a, 0xdf, 0x01, 0x0a, 0x09, 0x50, 0x6f, 0x77, 0x65, 0x72, 0x54, 0x79,
+ 0x70, 0x65, 0x12, 0x1a, 0x0a, 0x16, 0x50, 0x4f, 0x57, 0x45, 0x52, 0x5f, 0x54, 0x59, 0x50, 0x45,
+ 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x19,
+ 0x0a, 0x15, 0x50, 0x4f, 0x57, 0x45, 0x52, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x4c, 0x49, 0x4e,
+ 0x45, 0x5f, 0x50, 0x4f, 0x57, 0x45, 0x52, 0x10, 0x01, 0x12, 0x16, 0x0a, 0x12, 0x50, 0x4f, 0x57,
+ 0x45, 0x52, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x42, 0x41, 0x54, 0x54, 0x45, 0x52, 0x59, 0x10,
+ 0x02, 0x12, 0x12, 0x0a, 0x0e, 0x50, 0x4f, 0x57, 0x45, 0x52, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f,
+ 0x55, 0x50, 0x53, 0x10, 0x03, 0x12, 0x16, 0x0a, 0x12, 0x50, 0x4f, 0x57, 0x45, 0x52, 0x5f, 0x54,
+ 0x59, 0x50, 0x45, 0x5f, 0x4d, 0x4f, 0x4e, 0x49, 0x54, 0x4f, 0x52, 0x10, 0x04, 0x12, 0x14, 0x0a,
+ 0x10, 0x50, 0x4f, 0x57, 0x45, 0x52, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x4d, 0x4f, 0x55, 0x53,
+ 0x45, 0x10, 0x05, 0x12, 0x17, 0x0a, 0x13, 0x50, 0x4f, 0x57, 0x45, 0x52, 0x5f, 0x54, 0x59, 0x50,
+ 0x45, 0x5f, 0x4b, 0x45, 0x59, 0x42, 0x4f, 0x41, 0x52, 0x44, 0x10, 0x06, 0x12, 0x12, 0x0a, 0x0e,
+ 0x50, 0x4f, 0x57, 0x45, 0x52, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x50, 0x44, 0x41, 0x10, 0x07,
+ 0x12, 0x14, 0x0a, 0x10, 0x50, 0x4f, 0x57, 0x45, 0x52, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x50,
+ 0x48, 0x4f, 0x4e, 0x45, 0x10, 0x08, 0x2a, 0xd9, 0x01, 0x0a, 0x0a, 0x50, 0x6f, 0x77, 0x65, 0x72,
+ 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x1b, 0x0a, 0x17, 0x50, 0x4f, 0x57, 0x45, 0x52, 0x5f, 0x53,
+ 0x54, 0x41, 0x54, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44,
+ 0x10, 0x00, 0x12, 0x18, 0x0a, 0x14, 0x50, 0x4f, 0x57, 0x45, 0x52, 0x5f, 0x53, 0x54, 0x41, 0x54,
+ 0x45, 0x5f, 0x43, 0x48, 0x41, 0x52, 0x47, 0x49, 0x4e, 0x47, 0x10, 0x01, 0x12, 0x1b, 0x0a, 0x17,
+ 0x50, 0x4f, 0x57, 0x45, 0x52, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x44, 0x49, 0x53, 0x43,
+ 0x48, 0x41, 0x52, 0x47, 0x49, 0x4e, 0x47, 0x10, 0x02, 0x12, 0x15, 0x0a, 0x11, 0x50, 0x4f, 0x57,
+ 0x45, 0x52, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x45, 0x4d, 0x50, 0x54, 0x59, 0x10, 0x03,
+ 0x12, 0x1d, 0x0a, 0x19, 0x50, 0x4f, 0x57, 0x45, 0x52, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f,
+ 0x46, 0x55, 0x4c, 0x4c, 0x59, 0x5f, 0x43, 0x48, 0x41, 0x52, 0x47, 0x45, 0x44, 0x10, 0x04, 0x12,
+ 0x1e, 0x0a, 0x1a, 0x50, 0x4f, 0x57, 0x45, 0x52, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x50,
+ 0x45, 0x4e, 0x44, 0x49, 0x4e, 0x47, 0x5f, 0x43, 0x48, 0x41, 0x52, 0x47, 0x45, 0x10, 0x05, 0x12,
+ 0x21, 0x0a, 0x1d, 0x50, 0x4f, 0x57, 0x45, 0x52, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x50,
+ 0x45, 0x4e, 0x44, 0x49, 0x4e, 0x47, 0x5f, 0x44, 0x49, 0x53, 0x43, 0x48, 0x41, 0x52, 0x47, 0x45,
+ 0x10, 0x06, 0x2a, 0x7f, 0x0a, 0x0d, 0x49, 0x6e, 0x68, 0x69, 0x62, 0x69, 0x74, 0x54, 0x61, 0x72,
+ 0x67, 0x65, 0x74, 0x12, 0x1e, 0x0a, 0x1a, 0x49, 0x4e, 0x48, 0x49, 0x42, 0x49, 0x54, 0x5f, 0x54,
+ 0x41, 0x52, 0x47, 0x45, 0x54, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45,
+ 0x44, 0x10, 0x00, 0x12, 0x17, 0x0a, 0x13, 0x49, 0x4e, 0x48, 0x49, 0x42, 0x49, 0x54, 0x5f, 0x54,
+ 0x41, 0x52, 0x47, 0x45, 0x54, 0x5f, 0x49, 0x44, 0x4c, 0x45, 0x10, 0x01, 0x12, 0x18, 0x0a, 0x14,
+ 0x49, 0x4e, 0x48, 0x49, 0x42, 0x49, 0x54, 0x5f, 0x54, 0x41, 0x52, 0x47, 0x45, 0x54, 0x5f, 0x53,
+ 0x4c, 0x45, 0x45, 0x50, 0x10, 0x02, 0x12, 0x1b, 0x0a, 0x17, 0x49, 0x4e, 0x48, 0x49, 0x42, 0x49,
+ 0x54, 0x5f, 0x54, 0x41, 0x52, 0x47, 0x45, 0x54, 0x5f, 0x53, 0x48, 0x55, 0x54, 0x44, 0x4f, 0x57,
+ 0x4e, 0x10, 0x03, 0x2a, 0x95, 0x01, 0x0a, 0x10, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x50, 0x6c, 0x61,
+ 0x79, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x22, 0x0a, 0x1e, 0x4d, 0x45, 0x44, 0x49,
+ 0x41, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x55,
+ 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x1e, 0x0a, 0x1a,
+ 0x4d, 0x45, 0x44, 0x49, 0x41, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x5f, 0x53, 0x54, 0x41,
+ 0x54, 0x45, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x49, 0x4e, 0x47, 0x10, 0x01, 0x12, 0x1d, 0x0a, 0x19,
+ 0x4d, 0x45, 0x44, 0x49, 0x41, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x5f, 0x53, 0x54, 0x41,
+ 0x54, 0x45, 0x5f, 0x50, 0x41, 0x55, 0x53, 0x45, 0x44, 0x10, 0x02, 0x12, 0x1e, 0x0a, 0x1a, 0x4d,
+ 0x45, 0x44, 0x49, 0x41, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x5f, 0x53, 0x54, 0x41, 0x54,
+ 0x45, 0x5f, 0x53, 0x54, 0x4f, 0x50, 0x50, 0x45, 0x44, 0x10, 0x03, 0x2a, 0xfa, 0x10, 0x0a, 0x09,
+ 0x45, 0x76, 0x65, 0x6e, 0x74, 0x4b, 0x69, 0x6e, 0x64, 0x12, 0x1a, 0x0a, 0x16, 0x45, 0x56, 0x45,
+ 0x4e, 0x54, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46,
+ 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x1d, 0x0a, 0x19, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x4b,
+ 0x49, 0x4e, 0x44, 0x5f, 0x48, 0x59, 0x50, 0x52, 0x5f, 0x57, 0x4f, 0x52, 0x4b, 0x53, 0x50, 0x41,
+ 0x43, 0x45, 0x10, 0x01, 0x12, 0x1e, 0x0a, 0x1a, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x4b, 0x49,
+ 0x4e, 0x44, 0x5f, 0x48, 0x59, 0x50, 0x52, 0x5f, 0x46, 0x4f, 0x43, 0x55, 0x53, 0x45, 0x44, 0x4d,
+ 0x4f, 0x4e, 0x10, 0x02, 0x12, 0x20, 0x0a, 0x1c, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x4b, 0x49,
+ 0x4e, 0x44, 0x5f, 0x48, 0x59, 0x50, 0x52, 0x5f, 0x41, 0x43, 0x54, 0x49, 0x56, 0x45, 0x57, 0x49,
+ 0x4e, 0x44, 0x4f, 0x57, 0x10, 0x04, 0x12, 0x22, 0x0a, 0x1e, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f,
+ 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x48, 0x59, 0x50, 0x52, 0x5f, 0x41, 0x43, 0x54, 0x49, 0x56, 0x45,
+ 0x57, 0x49, 0x4e, 0x44, 0x4f, 0x57, 0x56, 0x32, 0x10, 0x05, 0x12, 0x1e, 0x0a, 0x1a, 0x45, 0x56,
+ 0x45, 0x4e, 0x54, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x48, 0x59, 0x50, 0x52, 0x5f, 0x46, 0x55,
+ 0x4c, 0x4c, 0x53, 0x43, 0x52, 0x45, 0x45, 0x4e, 0x10, 0x06, 0x12, 0x22, 0x0a, 0x1e, 0x45, 0x56,
+ 0x45, 0x4e, 0x54, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x48, 0x59, 0x50, 0x52, 0x5f, 0x4d, 0x4f,
+ 0x4e, 0x49, 0x54, 0x4f, 0x52, 0x52, 0x45, 0x4d, 0x4f, 0x56, 0x45, 0x44, 0x10, 0x07, 0x12, 0x20,
+ 0x0a, 0x1c, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x48, 0x59, 0x50,
+ 0x52, 0x5f, 0x4d, 0x4f, 0x4e, 0x49, 0x54, 0x4f, 0x52, 0x41, 0x44, 0x44, 0x45, 0x44, 0x10, 0x08,
+ 0x12, 0x23, 0x0a, 0x1f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x48,
+ 0x59, 0x50, 0x52, 0x5f, 0x43, 0x52, 0x45, 0x41, 0x54, 0x45, 0x57, 0x4f, 0x52, 0x4b, 0x53, 0x50,
+ 0x41, 0x43, 0x45, 0x10, 0x09, 0x12, 0x24, 0x0a, 0x20, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x4b,
+ 0x49, 0x4e, 0x44, 0x5f, 0x48, 0x59, 0x50, 0x52, 0x5f, 0x44, 0x45, 0x53, 0x54, 0x52, 0x4f, 0x59,
+ 0x57, 0x4f, 0x52, 0x4b, 0x53, 0x50, 0x41, 0x43, 0x45, 0x10, 0x0a, 0x12, 0x21, 0x0a, 0x1d, 0x45,
+ 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x48, 0x59, 0x50, 0x52, 0x5f, 0x4d,
+ 0x4f, 0x56, 0x45, 0x57, 0x4f, 0x52, 0x4b, 0x53, 0x50, 0x41, 0x43, 0x45, 0x10, 0x0b, 0x12, 0x23,
+ 0x0a, 0x1f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x48, 0x59, 0x50,
+ 0x52, 0x5f, 0x52, 0x45, 0x4e, 0x41, 0x4d, 0x45, 0x57, 0x4f, 0x52, 0x4b, 0x53, 0x50, 0x41, 0x43,
+ 0x45, 0x10, 0x0c, 0x12, 0x21, 0x0a, 0x1d, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x4b, 0x49, 0x4e,
+ 0x44, 0x5f, 0x48, 0x59, 0x50, 0x52, 0x5f, 0x41, 0x43, 0x54, 0x49, 0x56, 0x45, 0x53, 0x50, 0x45,
+ 0x43, 0x49, 0x41, 0x4c, 0x10, 0x0d, 0x12, 0x20, 0x0a, 0x1c, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f,
+ 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x48, 0x59, 0x50, 0x52, 0x5f, 0x41, 0x43, 0x54, 0x49, 0x56, 0x45,
+ 0x4c, 0x41, 0x59, 0x4f, 0x55, 0x54, 0x10, 0x0e, 0x12, 0x1e, 0x0a, 0x1a, 0x45, 0x56, 0x45, 0x4e,
+ 0x54, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x48, 0x59, 0x50, 0x52, 0x5f, 0x4f, 0x50, 0x45, 0x4e,
+ 0x57, 0x49, 0x4e, 0x44, 0x4f, 0x57, 0x10, 0x0f, 0x12, 0x1f, 0x0a, 0x1b, 0x45, 0x56, 0x45, 0x4e,
+ 0x54, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x48, 0x59, 0x50, 0x52, 0x5f, 0x43, 0x4c, 0x4f, 0x53,
+ 0x45, 0x57, 0x49, 0x4e, 0x44, 0x4f, 0x57, 0x10, 0x10, 0x12, 0x1e, 0x0a, 0x1a, 0x45, 0x56, 0x45,
+ 0x4e, 0x54, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x48, 0x59, 0x50, 0x52, 0x5f, 0x4d, 0x4f, 0x56,
+ 0x45, 0x57, 0x49, 0x4e, 0x44, 0x4f, 0x57, 0x10, 0x11, 0x12, 0x1d, 0x0a, 0x19, 0x45, 0x56, 0x45,
+ 0x4e, 0x54, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x48, 0x59, 0x50, 0x52, 0x5f, 0x4f, 0x50, 0x45,
+ 0x4e, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x10, 0x12, 0x12, 0x1e, 0x0a, 0x1a, 0x45, 0x56, 0x45, 0x4e,
+ 0x54, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x48, 0x59, 0x50, 0x52, 0x5f, 0x43, 0x4c, 0x4f, 0x53,
+ 0x45, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x10, 0x13, 0x12, 0x1a, 0x0a, 0x16, 0x45, 0x56, 0x45, 0x4e,
+ 0x54, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x48, 0x59, 0x50, 0x52, 0x5f, 0x53, 0x55, 0x42, 0x4d,
+ 0x41, 0x50, 0x10, 0x14, 0x12, 0x26, 0x0a, 0x22, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x4b, 0x49,
+ 0x4e, 0x44, 0x5f, 0x48, 0x59, 0x50, 0x52, 0x5f, 0x43, 0x48, 0x41, 0x4e, 0x47, 0x45, 0x46, 0x4c,
+ 0x4f, 0x41, 0x54, 0x49, 0x4e, 0x47, 0x4d, 0x4f, 0x44, 0x45, 0x10, 0x15, 0x12, 0x1a, 0x0a, 0x16,
0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x48, 0x59, 0x50, 0x52, 0x5f,
- 0x49, 0x47, 0x4e, 0x4f, 0x52, 0x45, 0x47, 0x52, 0x4f, 0x55, 0x50, 0x4c, 0x4f, 0x43, 0x4b, 0x10,
- 0x1a, 0x12, 0x23, 0x0a, 0x1f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f,
- 0x48, 0x59, 0x50, 0x52, 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x4c, 0x4f, 0x43, 0x4b, 0x47, 0x52,
- 0x4f, 0x55, 0x50, 0x53, 0x10, 0x1b, 0x12, 0x2a, 0x0a, 0x26, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f,
- 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x44, 0x42, 0x55, 0x53, 0x5f, 0x52, 0x45, 0x47, 0x49, 0x53, 0x54,
- 0x45, 0x52, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x4e, 0x4f, 0x54, 0x49, 0x46, 0x49, 0x45, 0x52,
- 0x10, 0x1c, 0x12, 0x2c, 0x0a, 0x28, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x4b, 0x49, 0x4e, 0x44,
- 0x5f, 0x44, 0x42, 0x55, 0x53, 0x5f, 0x55, 0x4e, 0x52, 0x45, 0x47, 0x49, 0x53, 0x54, 0x45, 0x52,
- 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x4e, 0x4f, 0x54, 0x49, 0x46, 0x49, 0x45, 0x52, 0x10, 0x1d,
- 0x12, 0x1f, 0x0a, 0x1b, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x44,
- 0x42, 0x55, 0x53, 0x5f, 0x55, 0x50, 0x44, 0x41, 0x54, 0x45, 0x54, 0x49, 0x54, 0x4c, 0x45, 0x10,
- 0x1e, 0x12, 0x21, 0x0a, 0x1d, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f,
- 0x44, 0x42, 0x55, 0x53, 0x5f, 0x55, 0x50, 0x44, 0x41, 0x54, 0x45, 0x54, 0x4f, 0x4f, 0x4c, 0x54,
- 0x49, 0x50, 0x10, 0x1f, 0x12, 0x1e, 0x0a, 0x1a, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x4b, 0x49,
- 0x4e, 0x44, 0x5f, 0x44, 0x42, 0x55, 0x53, 0x5f, 0x55, 0x50, 0x44, 0x41, 0x54, 0x45, 0x49, 0x43,
- 0x4f, 0x4e, 0x10, 0x20, 0x12, 0x1e, 0x0a, 0x1a, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x4b, 0x49,
- 0x4e, 0x44, 0x5f, 0x44, 0x42, 0x55, 0x53, 0x5f, 0x55, 0x50, 0x44, 0x41, 0x54, 0x45, 0x4d, 0x45,
- 0x4e, 0x55, 0x10, 0x21, 0x12, 0x20, 0x0a, 0x1c, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x4b, 0x49,
- 0x4e, 0x44, 0x5f, 0x44, 0x42, 0x55, 0x53, 0x5f, 0x55, 0x50, 0x44, 0x41, 0x54, 0x45, 0x53, 0x54,
- 0x41, 0x54, 0x55, 0x53, 0x10, 0x22, 0x12, 0x20, 0x0a, 0x1c, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f,
- 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x44, 0x42, 0x55, 0x53, 0x5f, 0x4e, 0x4f, 0x54, 0x49, 0x46, 0x49,
- 0x43, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0x23, 0x12, 0x25, 0x0a, 0x21, 0x45, 0x56, 0x45, 0x4e,
- 0x54, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x44, 0x42, 0x55, 0x53, 0x5f, 0x43, 0x4c, 0x4f, 0x53,
- 0x45, 0x4e, 0x4f, 0x54, 0x49, 0x46, 0x49, 0x43, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0x24, 0x12,
- 0x25, 0x0a, 0x21, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x44, 0x42,
- 0x55, 0x53, 0x5f, 0x42, 0x52, 0x49, 0x47, 0x48, 0x54, 0x4e, 0x45, 0x53, 0x53, 0x5f, 0x43, 0x48,
- 0x41, 0x4e, 0x47, 0x45, 0x10, 0x25, 0x12, 0x25, 0x0a, 0x21, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f,
- 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x44, 0x42, 0x55, 0x53, 0x5f, 0x42, 0x52, 0x49, 0x47, 0x48, 0x54,
- 0x4e, 0x45, 0x53, 0x53, 0x5f, 0x41, 0x44, 0x4a, 0x55, 0x53, 0x54, 0x10, 0x26, 0x12, 0x1d, 0x0a,
- 0x19, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x41, 0x55, 0x44, 0x49,
- 0x4f, 0x5f, 0x53, 0x49, 0x4e, 0x4b, 0x5f, 0x4e, 0x45, 0x57, 0x10, 0x27, 0x12, 0x20, 0x0a, 0x1c,
- 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x41, 0x55, 0x44, 0x49, 0x4f,
- 0x5f, 0x53, 0x49, 0x4e, 0x4b, 0x5f, 0x43, 0x48, 0x41, 0x4e, 0x47, 0x45, 0x10, 0x28, 0x12, 0x20,
- 0x0a, 0x1c, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x41, 0x55, 0x44,
- 0x49, 0x4f, 0x5f, 0x53, 0x49, 0x4e, 0x4b, 0x5f, 0x52, 0x45, 0x4d, 0x4f, 0x56, 0x45, 0x10, 0x29,
- 0x12, 0x1f, 0x0a, 0x1b, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x41,
- 0x55, 0x44, 0x49, 0x4f, 0x5f, 0x53, 0x4f, 0x55, 0x52, 0x43, 0x45, 0x5f, 0x4e, 0x45, 0x57, 0x10,
- 0x2a, 0x12, 0x22, 0x0a, 0x1e, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f,
- 0x41, 0x55, 0x44, 0x49, 0x4f, 0x5f, 0x53, 0x4f, 0x55, 0x52, 0x43, 0x45, 0x5f, 0x43, 0x48, 0x41,
- 0x4e, 0x47, 0x45, 0x10, 0x2b, 0x12, 0x22, 0x0a, 0x1e, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x4b,
- 0x49, 0x4e, 0x44, 0x5f, 0x41, 0x55, 0x44, 0x49, 0x4f, 0x5f, 0x53, 0x4f, 0x55, 0x52, 0x43, 0x45,
- 0x5f, 0x52, 0x45, 0x4d, 0x4f, 0x56, 0x45, 0x10, 0x2c, 0x12, 0x1d, 0x0a, 0x19, 0x45, 0x56, 0x45,
- 0x4e, 0x54, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x41, 0x55, 0x44, 0x49, 0x4f, 0x5f, 0x43, 0x41,
- 0x52, 0x44, 0x5f, 0x4e, 0x45, 0x57, 0x10, 0x2d, 0x12, 0x20, 0x0a, 0x1c, 0x45, 0x56, 0x45, 0x4e,
- 0x54, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x41, 0x55, 0x44, 0x49, 0x4f, 0x5f, 0x43, 0x41, 0x52,
- 0x44, 0x5f, 0x43, 0x48, 0x41, 0x4e, 0x47, 0x45, 0x10, 0x2e, 0x12, 0x20, 0x0a, 0x1c, 0x45, 0x56,
- 0x45, 0x4e, 0x54, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x41, 0x55, 0x44, 0x49, 0x4f, 0x5f, 0x43,
- 0x41, 0x52, 0x44, 0x5f, 0x52, 0x45, 0x4d, 0x4f, 0x56, 0x45, 0x10, 0x2f, 0x12, 0x27, 0x0a, 0x23,
- 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x41, 0x55, 0x44, 0x49, 0x4f,
- 0x5f, 0x53, 0x49, 0x4e, 0x4b, 0x5f, 0x56, 0x4f, 0x4c, 0x55, 0x4d, 0x45, 0x5f, 0x41, 0x44, 0x4a,
- 0x55, 0x53, 0x54, 0x10, 0x30, 0x12, 0x25, 0x0a, 0x21, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x4b,
- 0x49, 0x4e, 0x44, 0x5f, 0x41, 0x55, 0x44, 0x49, 0x4f, 0x5f, 0x53, 0x49, 0x4e, 0x4b, 0x5f, 0x4d,
- 0x55, 0x54, 0x45, 0x5f, 0x54, 0x4f, 0x47, 0x47, 0x4c, 0x45, 0x10, 0x31, 0x12, 0x29, 0x0a, 0x25,
+ 0x55, 0x52, 0x47, 0x45, 0x4e, 0x54, 0x10, 0x16, 0x12, 0x1c, 0x0a, 0x18, 0x45, 0x56, 0x45, 0x4e,
+ 0x54, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x48, 0x59, 0x50, 0x52, 0x5f, 0x4d, 0x49, 0x4e, 0x49,
+ 0x4d, 0x49, 0x5a, 0x45, 0x10, 0x17, 0x12, 0x1e, 0x0a, 0x1a, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f,
+ 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x48, 0x59, 0x50, 0x52, 0x5f, 0x53, 0x43, 0x52, 0x45, 0x45, 0x4e,
+ 0x43, 0x41, 0x53, 0x54, 0x10, 0x18, 0x12, 0x1f, 0x0a, 0x1b, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f,
+ 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x48, 0x59, 0x50, 0x52, 0x5f, 0x57, 0x49, 0x4e, 0x44, 0x4f, 0x57,
+ 0x54, 0x49, 0x54, 0x4c, 0x45, 0x10, 0x19, 0x12, 0x23, 0x0a, 0x1f, 0x45, 0x56, 0x45, 0x4e, 0x54,
+ 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x48, 0x59, 0x50, 0x52, 0x5f, 0x49, 0x47, 0x4e, 0x4f, 0x52,
+ 0x45, 0x47, 0x52, 0x4f, 0x55, 0x50, 0x4c, 0x4f, 0x43, 0x4b, 0x10, 0x1a, 0x12, 0x23, 0x0a, 0x1f,
+ 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x48, 0x59, 0x50, 0x52, 0x5f,
+ 0x45, 0x56, 0x45, 0x4e, 0x54, 0x4c, 0x4f, 0x43, 0x4b, 0x47, 0x52, 0x4f, 0x55, 0x50, 0x53, 0x10,
+ 0x1b, 0x12, 0x2a, 0x0a, 0x26, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f,
+ 0x44, 0x42, 0x55, 0x53, 0x5f, 0x52, 0x45, 0x47, 0x49, 0x53, 0x54, 0x45, 0x52, 0x53, 0x54, 0x41,
+ 0x54, 0x55, 0x53, 0x4e, 0x4f, 0x54, 0x49, 0x46, 0x49, 0x45, 0x52, 0x10, 0x1c, 0x12, 0x2c, 0x0a,
+ 0x28, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x44, 0x42, 0x55, 0x53,
+ 0x5f, 0x55, 0x4e, 0x52, 0x45, 0x47, 0x49, 0x53, 0x54, 0x45, 0x52, 0x53, 0x54, 0x41, 0x54, 0x55,
+ 0x53, 0x4e, 0x4f, 0x54, 0x49, 0x46, 0x49, 0x45, 0x52, 0x10, 0x1d, 0x12, 0x1f, 0x0a, 0x1b, 0x45,
+ 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x44, 0x42, 0x55, 0x53, 0x5f, 0x55,
+ 0x50, 0x44, 0x41, 0x54, 0x45, 0x54, 0x49, 0x54, 0x4c, 0x45, 0x10, 0x1e, 0x12, 0x21, 0x0a, 0x1d,
+ 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x44, 0x42, 0x55, 0x53, 0x5f,
+ 0x55, 0x50, 0x44, 0x41, 0x54, 0x45, 0x54, 0x4f, 0x4f, 0x4c, 0x54, 0x49, 0x50, 0x10, 0x1f, 0x12,
+ 0x1e, 0x0a, 0x1a, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x44, 0x42,
+ 0x55, 0x53, 0x5f, 0x55, 0x50, 0x44, 0x41, 0x54, 0x45, 0x49, 0x43, 0x4f, 0x4e, 0x10, 0x20, 0x12,
+ 0x1e, 0x0a, 0x1a, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x44, 0x42,
+ 0x55, 0x53, 0x5f, 0x55, 0x50, 0x44, 0x41, 0x54, 0x45, 0x4d, 0x45, 0x4e, 0x55, 0x10, 0x21, 0x12,
+ 0x20, 0x0a, 0x1c, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x44, 0x42,
+ 0x55, 0x53, 0x5f, 0x55, 0x50, 0x44, 0x41, 0x54, 0x45, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x10,
+ 0x22, 0x12, 0x20, 0x0a, 0x1c, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f,
+ 0x44, 0x42, 0x55, 0x53, 0x5f, 0x4e, 0x4f, 0x54, 0x49, 0x46, 0x49, 0x43, 0x41, 0x54, 0x49, 0x4f,
+ 0x4e, 0x10, 0x23, 0x12, 0x25, 0x0a, 0x21, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x4b, 0x49, 0x4e,
+ 0x44, 0x5f, 0x44, 0x42, 0x55, 0x53, 0x5f, 0x43, 0x4c, 0x4f, 0x53, 0x45, 0x4e, 0x4f, 0x54, 0x49,
+ 0x46, 0x49, 0x43, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0x24, 0x12, 0x25, 0x0a, 0x21, 0x45, 0x56,
+ 0x45, 0x4e, 0x54, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x44, 0x42, 0x55, 0x53, 0x5f, 0x42, 0x52,
+ 0x49, 0x47, 0x48, 0x54, 0x4e, 0x45, 0x53, 0x53, 0x5f, 0x43, 0x48, 0x41, 0x4e, 0x47, 0x45, 0x10,
+ 0x25, 0x12, 0x25, 0x0a, 0x21, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f,
+ 0x44, 0x42, 0x55, 0x53, 0x5f, 0x42, 0x52, 0x49, 0x47, 0x48, 0x54, 0x4e, 0x45, 0x53, 0x53, 0x5f,
+ 0x41, 0x44, 0x4a, 0x55, 0x53, 0x54, 0x10, 0x26, 0x12, 0x1d, 0x0a, 0x19, 0x45, 0x56, 0x45, 0x4e,
+ 0x54, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x41, 0x55, 0x44, 0x49, 0x4f, 0x5f, 0x53, 0x49, 0x4e,
+ 0x4b, 0x5f, 0x4e, 0x45, 0x57, 0x10, 0x27, 0x12, 0x20, 0x0a, 0x1c, 0x45, 0x56, 0x45, 0x4e, 0x54,
+ 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x41, 0x55, 0x44, 0x49, 0x4f, 0x5f, 0x53, 0x49, 0x4e, 0x4b,
+ 0x5f, 0x43, 0x48, 0x41, 0x4e, 0x47, 0x45, 0x10, 0x28, 0x12, 0x20, 0x0a, 0x1c, 0x45, 0x56, 0x45,
+ 0x4e, 0x54, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x41, 0x55, 0x44, 0x49, 0x4f, 0x5f, 0x53, 0x49,
+ 0x4e, 0x4b, 0x5f, 0x52, 0x45, 0x4d, 0x4f, 0x56, 0x45, 0x10, 0x29, 0x12, 0x1f, 0x0a, 0x1b, 0x45,
+ 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x41, 0x55, 0x44, 0x49, 0x4f, 0x5f,
+ 0x53, 0x4f, 0x55, 0x52, 0x43, 0x45, 0x5f, 0x4e, 0x45, 0x57, 0x10, 0x2a, 0x12, 0x22, 0x0a, 0x1e,
0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x41, 0x55, 0x44, 0x49, 0x4f,
- 0x5f, 0x53, 0x4f, 0x55, 0x52, 0x43, 0x45, 0x5f, 0x56, 0x4f, 0x4c, 0x55, 0x4d, 0x45, 0x5f, 0x41,
- 0x44, 0x4a, 0x55, 0x53, 0x54, 0x10, 0x32, 0x12, 0x27, 0x0a, 0x23, 0x45, 0x56, 0x45, 0x4e, 0x54,
+ 0x5f, 0x53, 0x4f, 0x55, 0x52, 0x43, 0x45, 0x5f, 0x43, 0x48, 0x41, 0x4e, 0x47, 0x45, 0x10, 0x2b,
+ 0x12, 0x22, 0x0a, 0x1e, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x41,
+ 0x55, 0x44, 0x49, 0x4f, 0x5f, 0x53, 0x4f, 0x55, 0x52, 0x43, 0x45, 0x5f, 0x52, 0x45, 0x4d, 0x4f,
+ 0x56, 0x45, 0x10, 0x2c, 0x12, 0x1d, 0x0a, 0x19, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x4b, 0x49,
+ 0x4e, 0x44, 0x5f, 0x41, 0x55, 0x44, 0x49, 0x4f, 0x5f, 0x43, 0x41, 0x52, 0x44, 0x5f, 0x4e, 0x45,
+ 0x57, 0x10, 0x2d, 0x12, 0x20, 0x0a, 0x1c, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x4b, 0x49, 0x4e,
+ 0x44, 0x5f, 0x41, 0x55, 0x44, 0x49, 0x4f, 0x5f, 0x43, 0x41, 0x52, 0x44, 0x5f, 0x43, 0x48, 0x41,
+ 0x4e, 0x47, 0x45, 0x10, 0x2e, 0x12, 0x20, 0x0a, 0x1c, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x4b,
+ 0x49, 0x4e, 0x44, 0x5f, 0x41, 0x55, 0x44, 0x49, 0x4f, 0x5f, 0x43, 0x41, 0x52, 0x44, 0x5f, 0x52,
+ 0x45, 0x4d, 0x4f, 0x56, 0x45, 0x10, 0x2f, 0x12, 0x27, 0x0a, 0x23, 0x45, 0x56, 0x45, 0x4e, 0x54,
+ 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x41, 0x55, 0x44, 0x49, 0x4f, 0x5f, 0x53, 0x49, 0x4e, 0x4b,
+ 0x5f, 0x56, 0x4f, 0x4c, 0x55, 0x4d, 0x45, 0x5f, 0x41, 0x44, 0x4a, 0x55, 0x53, 0x54, 0x10, 0x30,
+ 0x12, 0x25, 0x0a, 0x21, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x41,
+ 0x55, 0x44, 0x49, 0x4f, 0x5f, 0x53, 0x49, 0x4e, 0x4b, 0x5f, 0x4d, 0x55, 0x54, 0x45, 0x5f, 0x54,
+ 0x4f, 0x47, 0x47, 0x4c, 0x45, 0x10, 0x31, 0x12, 0x29, 0x0a, 0x25, 0x45, 0x56, 0x45, 0x4e, 0x54,
0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x41, 0x55, 0x44, 0x49, 0x4f, 0x5f, 0x53, 0x4f, 0x55, 0x52,
- 0x43, 0x45, 0x5f, 0x4d, 0x55, 0x54, 0x45, 0x5f, 0x54, 0x4f, 0x47, 0x47, 0x4c, 0x45, 0x10, 0x33,
- 0x12, 0x19, 0x0a, 0x15, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x48,
- 0x55, 0x44, 0x5f, 0x4e, 0x4f, 0x54, 0x49, 0x46, 0x59, 0x10, 0x34, 0x12, 0x20, 0x0a, 0x1c, 0x45,
- 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x44, 0x42, 0x55, 0x53, 0x5f, 0x50,
- 0x4f, 0x57, 0x45, 0x52, 0x5f, 0x43, 0x48, 0x41, 0x4e, 0x47, 0x45, 0x10, 0x35, 0x12, 0x23, 0x0a,
- 0x1f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x48, 0x59, 0x50, 0x52,
- 0x5f, 0x4d, 0x4f, 0x56, 0x45, 0x57, 0x4f, 0x52, 0x4b, 0x53, 0x50, 0x41, 0x43, 0x45, 0x56, 0x32,
- 0x10, 0x36, 0x12, 0x20, 0x0a, 0x1c, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x4b, 0x49, 0x4e, 0x44,
- 0x5f, 0x48, 0x59, 0x50, 0x52, 0x5f, 0x4d, 0x4f, 0x56, 0x45, 0x57, 0x49, 0x4e, 0x44, 0x4f, 0x57,
- 0x56, 0x32, 0x10, 0x37, 0x12, 0x25, 0x0a, 0x21, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x4b, 0x49,
- 0x4e, 0x44, 0x5f, 0x48, 0x59, 0x50, 0x52, 0x5f, 0x43, 0x52, 0x45, 0x41, 0x54, 0x45, 0x57, 0x4f,
- 0x52, 0x4b, 0x53, 0x50, 0x41, 0x43, 0x45, 0x56, 0x32, 0x10, 0x38, 0x12, 0x26, 0x0a, 0x22, 0x45,
- 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x48, 0x59, 0x50, 0x52, 0x5f, 0x44,
- 0x45, 0x53, 0x54, 0x52, 0x4f, 0x59, 0x57, 0x4f, 0x52, 0x4b, 0x53, 0x50, 0x41, 0x43, 0x45, 0x56,
- 0x32, 0x10, 0x39, 0x12, 0x1f, 0x0a, 0x1b, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x4b, 0x49, 0x4e,
- 0x44, 0x5f, 0x48, 0x59, 0x50, 0x52, 0x5f, 0x57, 0x4f, 0x52, 0x4b, 0x53, 0x50, 0x41, 0x43, 0x45,
- 0x56, 0x32, 0x10, 0x3a, 0x12, 0x13, 0x0a, 0x0f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x4b, 0x49,
- 0x4e, 0x44, 0x5f, 0x45, 0x58, 0x45, 0x43, 0x10, 0x3b, 0x42, 0xc9, 0x01, 0x0a, 0x16, 0x63, 0x6f,
- 0x6d, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x65, 0x76, 0x65, 0x6e,
- 0x74, 0x2e, 0x76, 0x31, 0x42, 0x0a, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x50, 0x72, 0x6f, 0x74, 0x6f,
- 0x50, 0x01, 0x5a, 0x39, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x70,
- 0x64, 0x66, 0x2f, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2f, 0x70, 0x72, 0x6f,
- 0x74, 0x6f, 0x2f, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2f, 0x65, 0x76, 0x65,
- 0x6e, 0x74, 0x2f, 0x76, 0x31, 0x3b, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x76, 0x31, 0xa2, 0x02, 0x03,
- 0x48, 0x45, 0x58, 0xaa, 0x02, 0x12, 0x48, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e,
- 0x45, 0x76, 0x65, 0x6e, 0x74, 0x2e, 0x56, 0x31, 0xca, 0x02, 0x12, 0x48, 0x79, 0x70, 0x72, 0x70,
- 0x61, 0x6e, 0x65, 0x6c, 0x5c, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x5c, 0x56, 0x31, 0xe2, 0x02, 0x1e,
- 0x48, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x5c, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x5c,
- 0x56, 0x31, 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02,
- 0x14, 0x48, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x3a, 0x3a, 0x45, 0x76, 0x65, 0x6e,
- 0x74, 0x3a, 0x3a, 0x56, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
+ 0x43, 0x45, 0x5f, 0x56, 0x4f, 0x4c, 0x55, 0x4d, 0x45, 0x5f, 0x41, 0x44, 0x4a, 0x55, 0x53, 0x54,
+ 0x10, 0x32, 0x12, 0x27, 0x0a, 0x23, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x4b, 0x49, 0x4e, 0x44,
+ 0x5f, 0x41, 0x55, 0x44, 0x49, 0x4f, 0x5f, 0x53, 0x4f, 0x55, 0x52, 0x43, 0x45, 0x5f, 0x4d, 0x55,
+ 0x54, 0x45, 0x5f, 0x54, 0x4f, 0x47, 0x47, 0x4c, 0x45, 0x10, 0x33, 0x12, 0x19, 0x0a, 0x15, 0x45,
+ 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x48, 0x55, 0x44, 0x5f, 0x4e, 0x4f,
+ 0x54, 0x49, 0x46, 0x59, 0x10, 0x34, 0x12, 0x20, 0x0a, 0x1c, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f,
+ 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x44, 0x42, 0x55, 0x53, 0x5f, 0x50, 0x4f, 0x57, 0x45, 0x52, 0x5f,
+ 0x43, 0x48, 0x41, 0x4e, 0x47, 0x45, 0x10, 0x35, 0x12, 0x23, 0x0a, 0x1f, 0x45, 0x56, 0x45, 0x4e,
+ 0x54, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x48, 0x59, 0x50, 0x52, 0x5f, 0x4d, 0x4f, 0x56, 0x45,
+ 0x57, 0x4f, 0x52, 0x4b, 0x53, 0x50, 0x41, 0x43, 0x45, 0x56, 0x32, 0x10, 0x36, 0x12, 0x20, 0x0a,
+ 0x1c, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x48, 0x59, 0x50, 0x52,
+ 0x5f, 0x4d, 0x4f, 0x56, 0x45, 0x57, 0x49, 0x4e, 0x44, 0x4f, 0x57, 0x56, 0x32, 0x10, 0x37, 0x12,
+ 0x25, 0x0a, 0x21, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x48, 0x59,
+ 0x50, 0x52, 0x5f, 0x43, 0x52, 0x45, 0x41, 0x54, 0x45, 0x57, 0x4f, 0x52, 0x4b, 0x53, 0x50, 0x41,
+ 0x43, 0x45, 0x56, 0x32, 0x10, 0x38, 0x12, 0x26, 0x0a, 0x22, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f,
+ 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x48, 0x59, 0x50, 0x52, 0x5f, 0x44, 0x45, 0x53, 0x54, 0x52, 0x4f,
+ 0x59, 0x57, 0x4f, 0x52, 0x4b, 0x53, 0x50, 0x41, 0x43, 0x45, 0x56, 0x32, 0x10, 0x39, 0x12, 0x1f,
+ 0x0a, 0x1b, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x48, 0x59, 0x50,
+ 0x52, 0x5f, 0x57, 0x4f, 0x52, 0x4b, 0x53, 0x50, 0x41, 0x43, 0x45, 0x56, 0x32, 0x10, 0x3a, 0x12,
+ 0x13, 0x0a, 0x0f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x45, 0x58,
+ 0x45, 0x43, 0x10, 0x3b, 0x12, 0x25, 0x0a, 0x21, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x4b, 0x49,
+ 0x4e, 0x44, 0x5f, 0x49, 0x44, 0x4c, 0x45, 0x5f, 0x49, 0x4e, 0x48, 0x49, 0x42, 0x49, 0x54, 0x4f,
+ 0x52, 0x5f, 0x49, 0x4e, 0x48, 0x49, 0x42, 0x49, 0x54, 0x10, 0x3c, 0x12, 0x27, 0x0a, 0x23, 0x45,
+ 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x49, 0x44, 0x4c, 0x45, 0x5f, 0x49,
+ 0x4e, 0x48, 0x49, 0x42, 0x49, 0x54, 0x4f, 0x52, 0x5f, 0x55, 0x4e, 0x49, 0x4e, 0x48, 0x49, 0x42,
+ 0x49, 0x54, 0x10, 0x3d, 0x12, 0x22, 0x0a, 0x1e, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x4b, 0x49,
+ 0x4e, 0x44, 0x5f, 0x4d, 0x45, 0x44, 0x49, 0x41, 0x5f, 0x50, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x5f,
+ 0x43, 0x48, 0x41, 0x4e, 0x47, 0x45, 0x10, 0x3e, 0x42, 0xc9, 0x01, 0x0a, 0x16, 0x63, 0x6f, 0x6d,
+ 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x65, 0x76, 0x65, 0x6e, 0x74,
+ 0x2e, 0x76, 0x31, 0x42, 0x0a, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50,
+ 0x01, 0x5a, 0x39, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x70, 0x64,
+ 0x66, 0x2f, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2f, 0x70, 0x72, 0x6f, 0x74,
+ 0x6f, 0x2f, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2f, 0x65, 0x76, 0x65, 0x6e,
+ 0x74, 0x2f, 0x76, 0x31, 0x3b, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x76, 0x31, 0xa2, 0x02, 0x03, 0x48,
+ 0x45, 0x58, 0xaa, 0x02, 0x12, 0x48, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x45,
+ 0x76, 0x65, 0x6e, 0x74, 0x2e, 0x56, 0x31, 0xca, 0x02, 0x12, 0x48, 0x79, 0x70, 0x72, 0x70, 0x61,
+ 0x6e, 0x65, 0x6c, 0x5c, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x5c, 0x56, 0x31, 0xe2, 0x02, 0x1e, 0x48,
+ 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x5c, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x5c, 0x56,
+ 0x31, 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x14,
+ 0x48, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x3a, 0x3a, 0x45, 0x76, 0x65, 0x6e, 0x74,
+ 0x3a, 0x3a, 0x56, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}
var (
@@ -3421,84 +3805,92 @@ func file_hyprpanel_event_v1_event_proto_rawDescGZIP() []byte {
return file_hyprpanel_event_v1_event_proto_rawDescData
}
-var file_hyprpanel_event_v1_event_proto_enumTypes = make([]protoimpl.EnumInfo, 4)
-var file_hyprpanel_event_v1_event_proto_msgTypes = make([]protoimpl.MessageInfo, 36)
+var file_hyprpanel_event_v1_event_proto_enumTypes = make([]protoimpl.EnumInfo, 6)
+var file_hyprpanel_event_v1_event_proto_msgTypes = make([]protoimpl.MessageInfo, 38)
var file_hyprpanel_event_v1_event_proto_goTypes = []interface{}{
(Direction)(0), // 0: hyprpanel.event.v1.Direction
(PowerType)(0), // 1: hyprpanel.event.v1.PowerType
(PowerState)(0), // 2: hyprpanel.event.v1.PowerState
- (EventKind)(0), // 3: hyprpanel.event.v1.EventKind
- (*HyprWorkspaceV2Value)(nil), // 4: hyprpanel.event.v1.HyprWorkspaceV2Value
- (*HyprDestroyWorkspaceV2Value)(nil), // 5: hyprpanel.event.v1.HyprDestroyWorkspaceV2Value
- (*HyprCreateWorkspaceV2Value)(nil), // 6: hyprpanel.event.v1.HyprCreateWorkspaceV2Value
- (*HyprMoveWindowValue)(nil), // 7: hyprpanel.event.v1.HyprMoveWindowValue
- (*HyprMoveWindowV2Value)(nil), // 8: hyprpanel.event.v1.HyprMoveWindowV2Value
- (*HyprMoveWorkspaceValue)(nil), // 9: hyprpanel.event.v1.HyprMoveWorkspaceValue
- (*HyprMoveWorkspaceV2Value)(nil), // 10: hyprpanel.event.v1.HyprMoveWorkspaceV2Value
- (*HyprRenameWorkspaceValue)(nil), // 11: hyprpanel.event.v1.HyprRenameWorkspaceValue
- (*HyprActiveWindowValue)(nil), // 12: hyprpanel.event.v1.HyprActiveWindowValue
- (*HyprOpenWindowValue)(nil), // 13: hyprpanel.event.v1.HyprOpenWindowValue
- (*StatusNotifierValue)(nil), // 14: hyprpanel.event.v1.StatusNotifierValue
- (*UpdateTitleValue)(nil), // 15: hyprpanel.event.v1.UpdateTitleValue
- (*UpdateTooltipValue)(nil), // 16: hyprpanel.event.v1.UpdateTooltipValue
- (*UpdateIconValue)(nil), // 17: hyprpanel.event.v1.UpdateIconValue
- (*UpdateStatusValue)(nil), // 18: hyprpanel.event.v1.UpdateStatusValue
- (*UpdateMenuValue)(nil), // 19: hyprpanel.event.v1.UpdateMenuValue
- (*NotificationValue)(nil), // 20: hyprpanel.event.v1.NotificationValue
- (*HudNotificationValue)(nil), // 21: hyprpanel.event.v1.HudNotificationValue
- (*AudioSinkChangeValue)(nil), // 22: hyprpanel.event.v1.AudioSinkChangeValue
- (*AudioSourceChangeValue)(nil), // 23: hyprpanel.event.v1.AudioSourceChangeValue
- (*AudioSinkVolumeAdjust)(nil), // 24: hyprpanel.event.v1.AudioSinkVolumeAdjust
- (*AudioSinkMuteToggle)(nil), // 25: hyprpanel.event.v1.AudioSinkMuteToggle
- (*AudioSourceVolumeAdjust)(nil), // 26: hyprpanel.event.v1.AudioSourceVolumeAdjust
- (*AudioSourceMuteToggle)(nil), // 27: hyprpanel.event.v1.AudioSourceMuteToggle
- (*BrightnessChangeValue)(nil), // 28: hyprpanel.event.v1.BrightnessChangeValue
- (*BrightnessAdjustValue)(nil), // 29: hyprpanel.event.v1.BrightnessAdjustValue
- (*PowerChangeValue)(nil), // 30: hyprpanel.event.v1.PowerChangeValue
- (*Event)(nil), // 31: hyprpanel.event.v1.Event
- (*StatusNotifierValue_Pixmap)(nil), // 32: hyprpanel.event.v1.StatusNotifierValue.Pixmap
- (*StatusNotifierValue_Tooltip)(nil), // 33: hyprpanel.event.v1.StatusNotifierValue.Tooltip
- (*StatusNotifierValue_Icon)(nil), // 34: hyprpanel.event.v1.StatusNotifierValue.Icon
- (*StatusNotifierValue_Menu)(nil), // 35: hyprpanel.event.v1.StatusNotifierValue.Menu
- (*StatusNotifierValue_Menu_Properties)(nil), // 36: hyprpanel.event.v1.StatusNotifierValue.Menu.Properties
- (*NotificationValue_Hint)(nil), // 37: hyprpanel.event.v1.NotificationValue.Hint
- (*NotificationValue_Action)(nil), // 38: hyprpanel.event.v1.NotificationValue.Action
- (*NotificationValue_Pixmap)(nil), // 39: hyprpanel.event.v1.NotificationValue.Pixmap
- (v1.Systray_Status)(0), // 40: hyprpanel.module.v1.Systray.Status
- (*durationpb.Duration)(nil), // 41: google.protobuf.Duration
- (*anypb.Any)(nil), // 42: google.protobuf.Any
+ (InhibitTarget)(0), // 3: hyprpanel.event.v1.InhibitTarget
+ (MediaPlayerState)(0), // 4: hyprpanel.event.v1.MediaPlayerState
+ (EventKind)(0), // 5: hyprpanel.event.v1.EventKind
+ (*MediaPlayerValueChange)(nil), // 6: hyprpanel.event.v1.MediaPlayerValueChange
+ (*HyprWorkspaceV2Value)(nil), // 7: hyprpanel.event.v1.HyprWorkspaceV2Value
+ (*HyprDestroyWorkspaceV2Value)(nil), // 8: hyprpanel.event.v1.HyprDestroyWorkspaceV2Value
+ (*HyprCreateWorkspaceV2Value)(nil), // 9: hyprpanel.event.v1.HyprCreateWorkspaceV2Value
+ (*HyprMoveWindowValue)(nil), // 10: hyprpanel.event.v1.HyprMoveWindowValue
+ (*HyprMoveWindowV2Value)(nil), // 11: hyprpanel.event.v1.HyprMoveWindowV2Value
+ (*HyprMoveWorkspaceValue)(nil), // 12: hyprpanel.event.v1.HyprMoveWorkspaceValue
+ (*HyprMoveWorkspaceV2Value)(nil), // 13: hyprpanel.event.v1.HyprMoveWorkspaceV2Value
+ (*HyprRenameWorkspaceValue)(nil), // 14: hyprpanel.event.v1.HyprRenameWorkspaceValue
+ (*HyprActiveWindowValue)(nil), // 15: hyprpanel.event.v1.HyprActiveWindowValue
+ (*HyprOpenWindowValue)(nil), // 16: hyprpanel.event.v1.HyprOpenWindowValue
+ (*StatusNotifierValue)(nil), // 17: hyprpanel.event.v1.StatusNotifierValue
+ (*UpdateTitleValue)(nil), // 18: hyprpanel.event.v1.UpdateTitleValue
+ (*UpdateTooltipValue)(nil), // 19: hyprpanel.event.v1.UpdateTooltipValue
+ (*UpdateIconValue)(nil), // 20: hyprpanel.event.v1.UpdateIconValue
+ (*UpdateStatusValue)(nil), // 21: hyprpanel.event.v1.UpdateStatusValue
+ (*UpdateMenuValue)(nil), // 22: hyprpanel.event.v1.UpdateMenuValue
+ (*NotificationValue)(nil), // 23: hyprpanel.event.v1.NotificationValue
+ (*HudNotificationValue)(nil), // 24: hyprpanel.event.v1.HudNotificationValue
+ (*AudioSinkChangeValue)(nil), // 25: hyprpanel.event.v1.AudioSinkChangeValue
+ (*AudioSourceChangeValue)(nil), // 26: hyprpanel.event.v1.AudioSourceChangeValue
+ (*AudioSinkVolumeAdjust)(nil), // 27: hyprpanel.event.v1.AudioSinkVolumeAdjust
+ (*AudioSinkMuteToggle)(nil), // 28: hyprpanel.event.v1.AudioSinkMuteToggle
+ (*AudioSourceVolumeAdjust)(nil), // 29: hyprpanel.event.v1.AudioSourceVolumeAdjust
+ (*AudioSourceMuteToggle)(nil), // 30: hyprpanel.event.v1.AudioSourceMuteToggle
+ (*BrightnessChangeValue)(nil), // 31: hyprpanel.event.v1.BrightnessChangeValue
+ (*BrightnessAdjustValue)(nil), // 32: hyprpanel.event.v1.BrightnessAdjustValue
+ (*PowerChangeValue)(nil), // 33: hyprpanel.event.v1.PowerChangeValue
+ (*IdleInhibitorValue)(nil), // 34: hyprpanel.event.v1.IdleInhibitorValue
+ (*Event)(nil), // 35: hyprpanel.event.v1.Event
+ (*StatusNotifierValue_Pixmap)(nil), // 36: hyprpanel.event.v1.StatusNotifierValue.Pixmap
+ (*StatusNotifierValue_Tooltip)(nil), // 37: hyprpanel.event.v1.StatusNotifierValue.Tooltip
+ (*StatusNotifierValue_Icon)(nil), // 38: hyprpanel.event.v1.StatusNotifierValue.Icon
+ (*StatusNotifierValue_Menu)(nil), // 39: hyprpanel.event.v1.StatusNotifierValue.Menu
+ (*StatusNotifierValue_Menu_Properties)(nil), // 40: hyprpanel.event.v1.StatusNotifierValue.Menu.Properties
+ (*NotificationValue_Hint)(nil), // 41: hyprpanel.event.v1.NotificationValue.Hint
+ (*NotificationValue_Action)(nil), // 42: hyprpanel.event.v1.NotificationValue.Action
+ (*NotificationValue_Pixmap)(nil), // 43: hyprpanel.event.v1.NotificationValue.Pixmap
+ (*timestamppb.Timestamp)(nil), // 44: google.protobuf.Timestamp
+ (v1.Systray_Status)(0), // 45: hyprpanel.module.v1.Systray.Status
+ (*durationpb.Duration)(nil), // 46: google.protobuf.Duration
+ (*anypb.Any)(nil), // 47: google.protobuf.Any
}
var file_hyprpanel_event_v1_event_proto_depIdxs = []int32{
- 40, // 0: hyprpanel.event.v1.StatusNotifierValue.status:type_name -> hyprpanel.module.v1.Systray.Status
- 33, // 1: hyprpanel.event.v1.StatusNotifierValue.tooltip:type_name -> hyprpanel.event.v1.StatusNotifierValue.Tooltip
- 34, // 2: hyprpanel.event.v1.StatusNotifierValue.icon:type_name -> hyprpanel.event.v1.StatusNotifierValue.Icon
- 35, // 3: hyprpanel.event.v1.StatusNotifierValue.menu:type_name -> hyprpanel.event.v1.StatusNotifierValue.Menu
- 33, // 4: hyprpanel.event.v1.UpdateTooltipValue.tooltip:type_name -> hyprpanel.event.v1.StatusNotifierValue.Tooltip
- 34, // 5: hyprpanel.event.v1.UpdateIconValue.icon:type_name -> hyprpanel.event.v1.StatusNotifierValue.Icon
- 40, // 6: hyprpanel.event.v1.UpdateStatusValue.status:type_name -> hyprpanel.module.v1.Systray.Status
- 35, // 7: hyprpanel.event.v1.UpdateMenuValue.menu:type_name -> hyprpanel.event.v1.StatusNotifierValue.Menu
- 38, // 8: hyprpanel.event.v1.NotificationValue.actions:type_name -> hyprpanel.event.v1.NotificationValue.Action
- 37, // 9: hyprpanel.event.v1.NotificationValue.hints:type_name -> hyprpanel.event.v1.NotificationValue.Hint
- 41, // 10: hyprpanel.event.v1.NotificationValue.timeout:type_name -> google.protobuf.Duration
- 0, // 11: hyprpanel.event.v1.AudioSinkVolumeAdjust.direction:type_name -> hyprpanel.event.v1.Direction
- 0, // 12: hyprpanel.event.v1.AudioSourceVolumeAdjust.direction:type_name -> hyprpanel.event.v1.Direction
- 0, // 13: hyprpanel.event.v1.BrightnessAdjustValue.direction:type_name -> hyprpanel.event.v1.Direction
- 1, // 14: hyprpanel.event.v1.PowerChangeValue.type:type_name -> hyprpanel.event.v1.PowerType
- 41, // 15: hyprpanel.event.v1.PowerChangeValue.time_to_empty:type_name -> google.protobuf.Duration
- 41, // 16: hyprpanel.event.v1.PowerChangeValue.time_to_full:type_name -> google.protobuf.Duration
- 2, // 17: hyprpanel.event.v1.PowerChangeValue.state:type_name -> hyprpanel.event.v1.PowerState
- 3, // 18: hyprpanel.event.v1.Event.kind:type_name -> hyprpanel.event.v1.EventKind
- 42, // 19: hyprpanel.event.v1.Event.data:type_name -> google.protobuf.Any
- 32, // 20: hyprpanel.event.v1.StatusNotifierValue.Tooltip.icon_pixmap:type_name -> hyprpanel.event.v1.StatusNotifierValue.Pixmap
- 32, // 21: hyprpanel.event.v1.StatusNotifierValue.Icon.icon_pixmap:type_name -> hyprpanel.event.v1.StatusNotifierValue.Pixmap
- 36, // 22: hyprpanel.event.v1.StatusNotifierValue.Menu.properties:type_name -> hyprpanel.event.v1.StatusNotifierValue.Menu.Properties
- 35, // 23: hyprpanel.event.v1.StatusNotifierValue.Menu.children:type_name -> hyprpanel.event.v1.StatusNotifierValue.Menu
- 42, // 24: hyprpanel.event.v1.NotificationValue.Hint.value:type_name -> google.protobuf.Any
- 25, // [25:25] is the sub-list for method output_type
- 25, // [25:25] is the sub-list for method input_type
- 25, // [25:25] is the sub-list for extension type_name
- 25, // [25:25] is the sub-list for extension extendee
- 0, // [0:25] is the sub-list for field type_name
+ 4, // 0: hyprpanel.event.v1.MediaPlayerValueChange.state:type_name -> hyprpanel.event.v1.MediaPlayerState
+ 44, // 1: hyprpanel.event.v1.MediaPlayerValueChange.updated_at:type_name -> google.protobuf.Timestamp
+ 45, // 2: hyprpanel.event.v1.StatusNotifierValue.status:type_name -> hyprpanel.module.v1.Systray.Status
+ 37, // 3: hyprpanel.event.v1.StatusNotifierValue.tooltip:type_name -> hyprpanel.event.v1.StatusNotifierValue.Tooltip
+ 38, // 4: hyprpanel.event.v1.StatusNotifierValue.icon:type_name -> hyprpanel.event.v1.StatusNotifierValue.Icon
+ 39, // 5: hyprpanel.event.v1.StatusNotifierValue.menu:type_name -> hyprpanel.event.v1.StatusNotifierValue.Menu
+ 37, // 6: hyprpanel.event.v1.UpdateTooltipValue.tooltip:type_name -> hyprpanel.event.v1.StatusNotifierValue.Tooltip
+ 38, // 7: hyprpanel.event.v1.UpdateIconValue.icon:type_name -> hyprpanel.event.v1.StatusNotifierValue.Icon
+ 45, // 8: hyprpanel.event.v1.UpdateStatusValue.status:type_name -> hyprpanel.module.v1.Systray.Status
+ 39, // 9: hyprpanel.event.v1.UpdateMenuValue.menu:type_name -> hyprpanel.event.v1.StatusNotifierValue.Menu
+ 42, // 10: hyprpanel.event.v1.NotificationValue.actions:type_name -> hyprpanel.event.v1.NotificationValue.Action
+ 41, // 11: hyprpanel.event.v1.NotificationValue.hints:type_name -> hyprpanel.event.v1.NotificationValue.Hint
+ 46, // 12: hyprpanel.event.v1.NotificationValue.timeout:type_name -> google.protobuf.Duration
+ 0, // 13: hyprpanel.event.v1.AudioSinkVolumeAdjust.direction:type_name -> hyprpanel.event.v1.Direction
+ 0, // 14: hyprpanel.event.v1.AudioSourceVolumeAdjust.direction:type_name -> hyprpanel.event.v1.Direction
+ 0, // 15: hyprpanel.event.v1.BrightnessAdjustValue.direction:type_name -> hyprpanel.event.v1.Direction
+ 1, // 16: hyprpanel.event.v1.PowerChangeValue.type:type_name -> hyprpanel.event.v1.PowerType
+ 46, // 17: hyprpanel.event.v1.PowerChangeValue.time_to_empty:type_name -> google.protobuf.Duration
+ 46, // 18: hyprpanel.event.v1.PowerChangeValue.time_to_full:type_name -> google.protobuf.Duration
+ 2, // 19: hyprpanel.event.v1.PowerChangeValue.state:type_name -> hyprpanel.event.v1.PowerState
+ 3, // 20: hyprpanel.event.v1.IdleInhibitorValue.target:type_name -> hyprpanel.event.v1.InhibitTarget
+ 5, // 21: hyprpanel.event.v1.Event.kind:type_name -> hyprpanel.event.v1.EventKind
+ 47, // 22: hyprpanel.event.v1.Event.data:type_name -> google.protobuf.Any
+ 36, // 23: hyprpanel.event.v1.StatusNotifierValue.Tooltip.icon_pixmap:type_name -> hyprpanel.event.v1.StatusNotifierValue.Pixmap
+ 36, // 24: hyprpanel.event.v1.StatusNotifierValue.Icon.icon_pixmap:type_name -> hyprpanel.event.v1.StatusNotifierValue.Pixmap
+ 40, // 25: hyprpanel.event.v1.StatusNotifierValue.Menu.properties:type_name -> hyprpanel.event.v1.StatusNotifierValue.Menu.Properties
+ 39, // 26: hyprpanel.event.v1.StatusNotifierValue.Menu.children:type_name -> hyprpanel.event.v1.StatusNotifierValue.Menu
+ 47, // 27: hyprpanel.event.v1.NotificationValue.Hint.value:type_name -> google.protobuf.Any
+ 28, // [28:28] is the sub-list for method output_type
+ 28, // [28:28] is the sub-list for method input_type
+ 28, // [28:28] is the sub-list for extension type_name
+ 28, // [28:28] is the sub-list for extension extendee
+ 0, // [0:28] is the sub-list for field type_name
}
func init() { file_hyprpanel_event_v1_event_proto_init() }
@@ -3508,7 +3900,7 @@ func file_hyprpanel_event_v1_event_proto_init() {
}
if !protoimpl.UnsafeEnabled {
file_hyprpanel_event_v1_event_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*HyprWorkspaceV2Value); i {
+ switch v := v.(*MediaPlayerValueChange); i {
case 0:
return &v.state
case 1:
@@ -3520,7 +3912,7 @@ func file_hyprpanel_event_v1_event_proto_init() {
}
}
file_hyprpanel_event_v1_event_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*HyprDestroyWorkspaceV2Value); i {
+ switch v := v.(*HyprWorkspaceV2Value); i {
case 0:
return &v.state
case 1:
@@ -3532,7 +3924,7 @@ func file_hyprpanel_event_v1_event_proto_init() {
}
}
file_hyprpanel_event_v1_event_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*HyprCreateWorkspaceV2Value); i {
+ switch v := v.(*HyprDestroyWorkspaceV2Value); i {
case 0:
return &v.state
case 1:
@@ -3544,7 +3936,7 @@ func file_hyprpanel_event_v1_event_proto_init() {
}
}
file_hyprpanel_event_v1_event_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*HyprMoveWindowValue); i {
+ switch v := v.(*HyprCreateWorkspaceV2Value); i {
case 0:
return &v.state
case 1:
@@ -3556,7 +3948,7 @@ func file_hyprpanel_event_v1_event_proto_init() {
}
}
file_hyprpanel_event_v1_event_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*HyprMoveWindowV2Value); i {
+ switch v := v.(*HyprMoveWindowValue); i {
case 0:
return &v.state
case 1:
@@ -3568,7 +3960,7 @@ func file_hyprpanel_event_v1_event_proto_init() {
}
}
file_hyprpanel_event_v1_event_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*HyprMoveWorkspaceValue); i {
+ switch v := v.(*HyprMoveWindowV2Value); i {
case 0:
return &v.state
case 1:
@@ -3580,7 +3972,7 @@ func file_hyprpanel_event_v1_event_proto_init() {
}
}
file_hyprpanel_event_v1_event_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*HyprMoveWorkspaceV2Value); i {
+ switch v := v.(*HyprMoveWorkspaceValue); i {
case 0:
return &v.state
case 1:
@@ -3592,7 +3984,7 @@ func file_hyprpanel_event_v1_event_proto_init() {
}
}
file_hyprpanel_event_v1_event_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*HyprRenameWorkspaceValue); i {
+ switch v := v.(*HyprMoveWorkspaceV2Value); i {
case 0:
return &v.state
case 1:
@@ -3604,7 +3996,7 @@ func file_hyprpanel_event_v1_event_proto_init() {
}
}
file_hyprpanel_event_v1_event_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*HyprActiveWindowValue); i {
+ switch v := v.(*HyprRenameWorkspaceValue); i {
case 0:
return &v.state
case 1:
@@ -3616,7 +4008,7 @@ func file_hyprpanel_event_v1_event_proto_init() {
}
}
file_hyprpanel_event_v1_event_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*HyprOpenWindowValue); i {
+ switch v := v.(*HyprActiveWindowValue); i {
case 0:
return &v.state
case 1:
@@ -3628,7 +4020,7 @@ func file_hyprpanel_event_v1_event_proto_init() {
}
}
file_hyprpanel_event_v1_event_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*StatusNotifierValue); i {
+ switch v := v.(*HyprOpenWindowValue); i {
case 0:
return &v.state
case 1:
@@ -3640,7 +4032,7 @@ func file_hyprpanel_event_v1_event_proto_init() {
}
}
file_hyprpanel_event_v1_event_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*UpdateTitleValue); i {
+ switch v := v.(*StatusNotifierValue); i {
case 0:
return &v.state
case 1:
@@ -3652,7 +4044,7 @@ func file_hyprpanel_event_v1_event_proto_init() {
}
}
file_hyprpanel_event_v1_event_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*UpdateTooltipValue); i {
+ switch v := v.(*UpdateTitleValue); i {
case 0:
return &v.state
case 1:
@@ -3664,7 +4056,7 @@ func file_hyprpanel_event_v1_event_proto_init() {
}
}
file_hyprpanel_event_v1_event_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*UpdateIconValue); i {
+ switch v := v.(*UpdateTooltipValue); i {
case 0:
return &v.state
case 1:
@@ -3676,7 +4068,7 @@ func file_hyprpanel_event_v1_event_proto_init() {
}
}
file_hyprpanel_event_v1_event_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*UpdateStatusValue); i {
+ switch v := v.(*UpdateIconValue); i {
case 0:
return &v.state
case 1:
@@ -3688,7 +4080,7 @@ func file_hyprpanel_event_v1_event_proto_init() {
}
}
file_hyprpanel_event_v1_event_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*UpdateMenuValue); i {
+ switch v := v.(*UpdateStatusValue); i {
case 0:
return &v.state
case 1:
@@ -3700,7 +4092,7 @@ func file_hyprpanel_event_v1_event_proto_init() {
}
}
file_hyprpanel_event_v1_event_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*NotificationValue); i {
+ switch v := v.(*UpdateMenuValue); i {
case 0:
return &v.state
case 1:
@@ -3712,7 +4104,7 @@ func file_hyprpanel_event_v1_event_proto_init() {
}
}
file_hyprpanel_event_v1_event_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*HudNotificationValue); i {
+ switch v := v.(*NotificationValue); i {
case 0:
return &v.state
case 1:
@@ -3724,7 +4116,7 @@ func file_hyprpanel_event_v1_event_proto_init() {
}
}
file_hyprpanel_event_v1_event_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*AudioSinkChangeValue); i {
+ switch v := v.(*HudNotificationValue); i {
case 0:
return &v.state
case 1:
@@ -3736,7 +4128,7 @@ func file_hyprpanel_event_v1_event_proto_init() {
}
}
file_hyprpanel_event_v1_event_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*AudioSourceChangeValue); i {
+ switch v := v.(*AudioSinkChangeValue); i {
case 0:
return &v.state
case 1:
@@ -3748,7 +4140,7 @@ func file_hyprpanel_event_v1_event_proto_init() {
}
}
file_hyprpanel_event_v1_event_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*AudioSinkVolumeAdjust); i {
+ switch v := v.(*AudioSourceChangeValue); i {
case 0:
return &v.state
case 1:
@@ -3760,7 +4152,7 @@ func file_hyprpanel_event_v1_event_proto_init() {
}
}
file_hyprpanel_event_v1_event_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*AudioSinkMuteToggle); i {
+ switch v := v.(*AudioSinkVolumeAdjust); i {
case 0:
return &v.state
case 1:
@@ -3772,7 +4164,7 @@ func file_hyprpanel_event_v1_event_proto_init() {
}
}
file_hyprpanel_event_v1_event_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*AudioSourceVolumeAdjust); i {
+ switch v := v.(*AudioSinkMuteToggle); i {
case 0:
return &v.state
case 1:
@@ -3784,7 +4176,7 @@ func file_hyprpanel_event_v1_event_proto_init() {
}
}
file_hyprpanel_event_v1_event_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*AudioSourceMuteToggle); i {
+ switch v := v.(*AudioSourceVolumeAdjust); i {
case 0:
return &v.state
case 1:
@@ -3796,7 +4188,7 @@ func file_hyprpanel_event_v1_event_proto_init() {
}
}
file_hyprpanel_event_v1_event_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*BrightnessChangeValue); i {
+ switch v := v.(*AudioSourceMuteToggle); i {
case 0:
return &v.state
case 1:
@@ -3808,7 +4200,7 @@ func file_hyprpanel_event_v1_event_proto_init() {
}
}
file_hyprpanel_event_v1_event_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*BrightnessAdjustValue); i {
+ switch v := v.(*BrightnessChangeValue); i {
case 0:
return &v.state
case 1:
@@ -3820,7 +4212,7 @@ func file_hyprpanel_event_v1_event_proto_init() {
}
}
file_hyprpanel_event_v1_event_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*PowerChangeValue); i {
+ switch v := v.(*BrightnessAdjustValue); i {
case 0:
return &v.state
case 1:
@@ -3832,7 +4224,7 @@ func file_hyprpanel_event_v1_event_proto_init() {
}
}
file_hyprpanel_event_v1_event_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*Event); i {
+ switch v := v.(*PowerChangeValue); i {
case 0:
return &v.state
case 1:
@@ -3844,7 +4236,7 @@ func file_hyprpanel_event_v1_event_proto_init() {
}
}
file_hyprpanel_event_v1_event_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*StatusNotifierValue_Pixmap); i {
+ switch v := v.(*IdleInhibitorValue); i {
case 0:
return &v.state
case 1:
@@ -3856,7 +4248,7 @@ func file_hyprpanel_event_v1_event_proto_init() {
}
}
file_hyprpanel_event_v1_event_proto_msgTypes[29].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*StatusNotifierValue_Tooltip); i {
+ switch v := v.(*Event); i {
case 0:
return &v.state
case 1:
@@ -3868,7 +4260,7 @@ func file_hyprpanel_event_v1_event_proto_init() {
}
}
file_hyprpanel_event_v1_event_proto_msgTypes[30].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*StatusNotifierValue_Icon); i {
+ switch v := v.(*StatusNotifierValue_Pixmap); i {
case 0:
return &v.state
case 1:
@@ -3880,7 +4272,7 @@ func file_hyprpanel_event_v1_event_proto_init() {
}
}
file_hyprpanel_event_v1_event_proto_msgTypes[31].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*StatusNotifierValue_Menu); i {
+ switch v := v.(*StatusNotifierValue_Tooltip); i {
case 0:
return &v.state
case 1:
@@ -3892,7 +4284,7 @@ func file_hyprpanel_event_v1_event_proto_init() {
}
}
file_hyprpanel_event_v1_event_proto_msgTypes[32].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*StatusNotifierValue_Menu_Properties); i {
+ switch v := v.(*StatusNotifierValue_Icon); i {
case 0:
return &v.state
case 1:
@@ -3904,7 +4296,7 @@ func file_hyprpanel_event_v1_event_proto_init() {
}
}
file_hyprpanel_event_v1_event_proto_msgTypes[33].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*NotificationValue_Hint); i {
+ switch v := v.(*StatusNotifierValue_Menu); i {
case 0:
return &v.state
case 1:
@@ -3916,7 +4308,7 @@ func file_hyprpanel_event_v1_event_proto_init() {
}
}
file_hyprpanel_event_v1_event_proto_msgTypes[34].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*NotificationValue_Action); i {
+ switch v := v.(*StatusNotifierValue_Menu_Properties); i {
case 0:
return &v.state
case 1:
@@ -3928,6 +4320,30 @@ func file_hyprpanel_event_v1_event_proto_init() {
}
}
file_hyprpanel_event_v1_event_proto_msgTypes[35].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*NotificationValue_Hint); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_hyprpanel_event_v1_event_proto_msgTypes[36].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*NotificationValue_Action); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_hyprpanel_event_v1_event_proto_msgTypes[37].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*NotificationValue_Pixmap); i {
case 0:
return &v.state
@@ -3940,13 +4356,14 @@ func file_hyprpanel_event_v1_event_proto_init() {
}
}
}
+ file_hyprpanel_event_v1_event_proto_msgTypes[0].OneofWrappers = []interface{}{}
type x struct{}
out := protoimpl.TypeBuilder{
File: protoimpl.DescBuilder{
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: file_hyprpanel_event_v1_event_proto_rawDesc,
- NumEnums: 4,
- NumMessages: 36,
+ NumEnums: 6,
+ NumMessages: 38,
NumExtensions: 0,
NumServices: 0,
},
diff --git a/proto/hyprpanel/event/v1/event.proto b/proto/hyprpanel/event/v1/event.proto
index ebe7412..f3d2027 100644
--- a/proto/hyprpanel/event/v1/event.proto
+++ b/proto/hyprpanel/event/v1/event.proto
@@ -4,6 +4,7 @@ package hyprpanel.event.v1;
import "google/protobuf/any.proto";
import "google/protobuf/duration.proto";
+import "google/protobuf/timestamp.proto";
import "hyprpanel/module/v1/module.proto";
enum Direction {
@@ -34,6 +35,20 @@ enum PowerState {
POWER_STATE_PENDING_DISCHARGE = 6;
}
+enum InhibitTarget {
+ INHIBIT_TARGET_UNSPECIFIED = 0;
+ INHIBIT_TARGET_IDLE = 1;
+ INHIBIT_TARGET_SLEEP = 2;
+ INHIBIT_TARGET_SHUTDOWN = 3;
+}
+
+enum MediaPlayerState {
+ MEDIA_PLAYER_STATE_UNSPECIFIED = 0;
+ MEDIA_PLAYER_STATE_PLAYING = 1;
+ MEDIA_PLAYER_STATE_PAUSED = 2;
+ MEDIA_PLAYER_STATE_STOPPED = 3;
+}
+
enum EventKind {
EVENT_KIND_UNSPECIFIED = 0;
EVENT_KIND_HYPR_WORKSPACE = 1;
@@ -94,6 +109,26 @@ enum EventKind {
EVENT_KIND_HYPR_DESTROYWORKSPACEV2 = 57;
EVENT_KIND_HYPR_WORKSPACEV2 = 58;
EVENT_KIND_EXEC = 59;
+ EVENT_KIND_IDLE_INHIBITOR_INHIBIT = 60;
+ EVENT_KIND_IDLE_INHIBITOR_UNINHIBIT = 61;
+ EVENT_KIND_MEDIA_PLAYER_CHANGE = 62;
+}
+
+message MediaPlayerValueChange {
+ MediaPlayerState state = 1;
+ bool can_go_next = 2;
+ bool can_go_previous = 3;
+ string track_id = 4;
+ google.protobuf.Timestamp updated_at = 5;
+ optional int64 position_us = 6;
+ optional int64 length_us = 7;
+ optional string title = 8;
+ optional string artist = 9;
+ optional string album = 10;
+ optional string desktop_entry = 11;
+ optional string identity = 12;
+ optional string art_url = 13;
+ optional string url = 14;
}
message HyprWorkspaceV2Value {
@@ -333,6 +368,10 @@ message PowerChangeValue {
double energy_full = 14;
}
+message IdleInhibitorValue {
+ InhibitTarget target = 1;
+}
+
message Event {
EventKind kind = 1;
google.protobuf.Any data = 2;
diff --git a/proto/hyprpanel/module/v1/module.pb.go b/proto/hyprpanel/module/v1/module.pb.go
index 584ce44..31d2206 100644
--- a/proto/hyprpanel/module/v1/module.pb.go
+++ b/proto/hyprpanel/module/v1/module.pb.go
@@ -143,6 +143,58 @@ func (Systray_Status) EnumDescriptor() ([]byte, []int) {
return file_hyprpanel_module_v1_module_proto_rawDescGZIP(), []int{2, 0}
}
+type IdleInhibitor_DefaultTarget int32
+
+const (
+ IdleInhibitor_DEFAULT_TARGET_UNSPECIFIED IdleInhibitor_DefaultTarget = 0
+ IdleInhibitor_DEFAULT_TARGET_LOCK IdleInhibitor_DefaultTarget = 1
+ IdleInhibitor_DEFAULT_TARGET_SUSPEND IdleInhibitor_DefaultTarget = 2
+ IdleInhibitor_DEFAULT_TARGET_SHUTDOWN IdleInhibitor_DefaultTarget = 3
+)
+
+// Enum value maps for IdleInhibitor_DefaultTarget.
+var (
+ IdleInhibitor_DefaultTarget_name = map[int32]string{
+ 0: "DEFAULT_TARGET_UNSPECIFIED",
+ 1: "DEFAULT_TARGET_LOCK",
+ 2: "DEFAULT_TARGET_SUSPEND",
+ 3: "DEFAULT_TARGET_SHUTDOWN",
+ }
+ IdleInhibitor_DefaultTarget_value = map[string]int32{
+ "DEFAULT_TARGET_UNSPECIFIED": 0,
+ "DEFAULT_TARGET_LOCK": 1,
+ "DEFAULT_TARGET_SUSPEND": 2,
+ "DEFAULT_TARGET_SHUTDOWN": 3,
+ }
+)
+
+func (x IdleInhibitor_DefaultTarget) Enum() *IdleInhibitor_DefaultTarget {
+ p := new(IdleInhibitor_DefaultTarget)
+ *p = x
+ return p
+}
+
+func (x IdleInhibitor_DefaultTarget) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
+}
+
+func (IdleInhibitor_DefaultTarget) Descriptor() protoreflect.EnumDescriptor {
+ return file_hyprpanel_module_v1_module_proto_enumTypes[2].Descriptor()
+}
+
+func (IdleInhibitor_DefaultTarget) Type() protoreflect.EnumType {
+ return &file_hyprpanel_module_v1_module_proto_enumTypes[2]
+}
+
+func (x IdleInhibitor_DefaultTarget) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
+}
+
+// Deprecated: Use IdleInhibitor_DefaultTarget.Descriptor instead.
+func (IdleInhibitor_DefaultTarget) EnumDescriptor() ([]byte, []int) {
+ return file_hyprpanel_module_v1_module_proto_rawDescGZIP(), []int{11, 0}
+}
+
type Pager struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
@@ -1054,6 +1106,124 @@ func (*SystrayModule_Audio) isSystrayModule_Kind() {}
func (*SystrayModule_Power) isSystrayModule_Kind() {}
+type IdleInhibitor struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ IconSize uint32 `protobuf:"varint,1,opt,name=icon_size,json=iconSize,proto3" json:"icon_size,omitempty"` // size in pixels for panel icon.
+ IconSymbolic bool `protobuf:"varint,2,opt,name=icon_symbolic,json=iconSymbolic,proto3" json:"icon_symbolic,omitempty"` // display symbolic or coloured icon in panel.
+ DefaultTarget IdleInhibitor_DefaultTarget `protobuf:"varint,3,opt,name=default_target,json=defaultTarget,proto3,enum=hyprpanel.module.v1.IdleInhibitor_DefaultTarget" json:"default_target,omitempty"` // default inhibit target for left click action.
+}
+
+func (x *IdleInhibitor) Reset() {
+ *x = IdleInhibitor{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_hyprpanel_module_v1_module_proto_msgTypes[11]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *IdleInhibitor) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*IdleInhibitor) ProtoMessage() {}
+
+func (x *IdleInhibitor) ProtoReflect() protoreflect.Message {
+ mi := &file_hyprpanel_module_v1_module_proto_msgTypes[11]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use IdleInhibitor.ProtoReflect.Descriptor instead.
+func (*IdleInhibitor) Descriptor() ([]byte, []int) {
+ return file_hyprpanel_module_v1_module_proto_rawDescGZIP(), []int{11}
+}
+
+func (x *IdleInhibitor) GetIconSize() uint32 {
+ if x != nil {
+ return x.IconSize
+ }
+ return 0
+}
+
+func (x *IdleInhibitor) GetIconSymbolic() bool {
+ if x != nil {
+ return x.IconSymbolic
+ }
+ return false
+}
+
+func (x *IdleInhibitor) GetDefaultTarget() IdleInhibitor_DefaultTarget {
+ if x != nil {
+ return x.DefaultTarget
+ }
+ return IdleInhibitor_DEFAULT_TARGET_UNSPECIFIED
+}
+
+type MediaPlayer struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ IconSize uint32 `protobuf:"varint,1,opt,name=icon_size,json=iconSize,proto3" json:"icon_size,omitempty"`
+ IconSymbolic bool `protobuf:"varint,2,opt,name=icon_symbolic,json=iconSymbolic,proto3" json:"icon_symbolic,omitempty"`
+}
+
+func (x *MediaPlayer) Reset() {
+ *x = MediaPlayer{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_hyprpanel_module_v1_module_proto_msgTypes[12]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *MediaPlayer) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*MediaPlayer) ProtoMessage() {}
+
+func (x *MediaPlayer) ProtoReflect() protoreflect.Message {
+ mi := &file_hyprpanel_module_v1_module_proto_msgTypes[12]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use MediaPlayer.ProtoReflect.Descriptor instead.
+func (*MediaPlayer) Descriptor() ([]byte, []int) {
+ return file_hyprpanel_module_v1_module_proto_rawDescGZIP(), []int{12}
+}
+
+func (x *MediaPlayer) GetIconSize() uint32 {
+ if x != nil {
+ return x.IconSize
+ }
+ return 0
+}
+
+func (x *MediaPlayer) GetIconSymbolic() bool {
+ if x != nil {
+ return x.IconSymbolic
+ }
+ return false
+}
+
type Module struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
@@ -1071,13 +1241,15 @@ type Module struct {
// *Module_Clock
// *Module_Session
// *Module_Spacer
+ // *Module_IdleInhibitor
+ // *Module_MediaPlayer
Kind isModule_Kind `protobuf_oneof:"kind"`
}
func (x *Module) Reset() {
*x = Module{}
if protoimpl.UnsafeEnabled {
- mi := &file_hyprpanel_module_v1_module_proto_msgTypes[11]
+ mi := &file_hyprpanel_module_v1_module_proto_msgTypes[13]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -1090,7 +1262,7 @@ func (x *Module) String() string {
func (*Module) ProtoMessage() {}
func (x *Module) ProtoReflect() protoreflect.Message {
- mi := &file_hyprpanel_module_v1_module_proto_msgTypes[11]
+ mi := &file_hyprpanel_module_v1_module_proto_msgTypes[13]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -1103,7 +1275,7 @@ func (x *Module) ProtoReflect() protoreflect.Message {
// Deprecated: Use Module.ProtoReflect.Descriptor instead.
func (*Module) Descriptor() ([]byte, []int) {
- return file_hyprpanel_module_v1_module_proto_rawDescGZIP(), []int{11}
+ return file_hyprpanel_module_v1_module_proto_rawDescGZIP(), []int{13}
}
func (m *Module) GetKind() isModule_Kind {
@@ -1183,6 +1355,20 @@ func (x *Module) GetSpacer() *Spacer {
return nil
}
+func (x *Module) GetIdleInhibitor() *IdleInhibitor {
+ if x, ok := x.GetKind().(*Module_IdleInhibitor); ok {
+ return x.IdleInhibitor
+ }
+ return nil
+}
+
+func (x *Module) GetMediaPlayer() *MediaPlayer {
+ if x, ok := x.GetKind().(*Module_MediaPlayer); ok {
+ return x.MediaPlayer
+ }
+ return nil
+}
+
type isModule_Kind interface {
isModule_Kind()
}
@@ -1227,6 +1413,14 @@ type Module_Spacer struct {
Spacer *Spacer `protobuf:"bytes,10,opt,name=spacer,proto3,oneof"`
}
+type Module_IdleInhibitor struct {
+ IdleInhibitor *IdleInhibitor `protobuf:"bytes,11,opt,name=idle_inhibitor,json=idleInhibitor,proto3,oneof"`
+}
+
+type Module_MediaPlayer struct {
+ MediaPlayer *MediaPlayer `protobuf:"bytes,12,opt,name=media_player,json=mediaPlayer,proto3,oneof"`
+}
+
func (*Module_Pager) isModule_Kind() {}
func (*Module_Taskbar) isModule_Kind() {}
@@ -1247,6 +1441,10 @@ func (*Module_Session) isModule_Kind() {}
func (*Module_Spacer) isModule_Kind() {}
+func (*Module_IdleInhibitor) isModule_Kind() {}
+
+func (*Module_MediaPlayer) isModule_Kind() {}
+
var File_hyprpanel_module_v1_module_proto protoreflect.FileDescriptor
var file_hyprpanel_module_v1_module_proto_rawDesc = []byte{
@@ -1417,72 +1615,105 @@ var file_hyprpanel_module_v1_module_proto_rawDesc = []byte{
0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70,
0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x50,
0x6f, 0x77, 0x65, 0x72, 0x48, 0x00, 0x52, 0x05, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x42, 0x06, 0x0a,
- 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x22, 0xbf, 0x04, 0x0a, 0x06, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65,
- 0x12, 0x32, 0x0a, 0x05, 0x70, 0x61, 0x67, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32,
- 0x1a, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x6d, 0x6f, 0x64, 0x75,
- 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x61, 0x67, 0x65, 0x72, 0x48, 0x00, 0x52, 0x05, 0x70,
- 0x61, 0x67, 0x65, 0x72, 0x12, 0x38, 0x0a, 0x07, 0x74, 0x61, 0x73, 0x6b, 0x62, 0x61, 0x72, 0x18,
- 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65,
- 0x6c, 0x2e, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x61, 0x73, 0x6b,
- 0x62, 0x61, 0x72, 0x48, 0x00, 0x52, 0x07, 0x74, 0x61, 0x73, 0x6b, 0x62, 0x61, 0x72, 0x12, 0x38,
- 0x0a, 0x07, 0x73, 0x79, 0x73, 0x74, 0x72, 0x61, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32,
- 0x1c, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x6d, 0x6f, 0x64, 0x75,
- 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x79, 0x73, 0x74, 0x72, 0x61, 0x79, 0x48, 0x00, 0x52,
- 0x07, 0x73, 0x79, 0x73, 0x74, 0x72, 0x61, 0x79, 0x12, 0x4a, 0x0a, 0x0d, 0x6e, 0x6f, 0x74, 0x69,
- 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32,
- 0x22, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x6d, 0x6f, 0x64, 0x75,
- 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x73, 0x48, 0x00, 0x52, 0x0d, 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x2c, 0x0a, 0x03, 0x68, 0x75, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28,
- 0x0b, 0x32, 0x18, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x6d, 0x6f,
- 0x64, 0x75, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x48, 0x75, 0x64, 0x48, 0x00, 0x52, 0x03, 0x68,
- 0x75, 0x64, 0x12, 0x32, 0x0a, 0x05, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x18, 0x06, 0x20, 0x01, 0x28,
+ 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x22, 0xae, 0x02, 0x0a, 0x0d, 0x49, 0x64, 0x6c, 0x65, 0x49, 0x6e,
+ 0x68, 0x69, 0x62, 0x69, 0x74, 0x6f, 0x72, 0x12, 0x1b, 0x0a, 0x09, 0x69, 0x63, 0x6f, 0x6e, 0x5f,
+ 0x73, 0x69, 0x7a, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x69, 0x63, 0x6f, 0x6e,
+ 0x53, 0x69, 0x7a, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x69, 0x63, 0x6f, 0x6e, 0x5f, 0x73, 0x79, 0x6d,
+ 0x62, 0x6f, 0x6c, 0x69, 0x63, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x69, 0x63, 0x6f,
+ 0x6e, 0x53, 0x79, 0x6d, 0x62, 0x6f, 0x6c, 0x69, 0x63, 0x12, 0x57, 0x0a, 0x0e, 0x64, 0x65, 0x66,
+ 0x61, 0x75, 0x6c, 0x74, 0x5f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28,
+ 0x0e, 0x32, 0x30, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x6d, 0x6f,
+ 0x64, 0x75, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x49, 0x64, 0x6c, 0x65, 0x49, 0x6e, 0x68, 0x69,
+ 0x62, 0x69, 0x74, 0x6f, 0x72, 0x2e, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x54, 0x61, 0x72,
+ 0x67, 0x65, 0x74, 0x52, 0x0d, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x54, 0x61, 0x72, 0x67,
+ 0x65, 0x74, 0x22, 0x81, 0x01, 0x0a, 0x0d, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x54, 0x61,
+ 0x72, 0x67, 0x65, 0x74, 0x12, 0x1e, 0x0a, 0x1a, 0x44, 0x45, 0x46, 0x41, 0x55, 0x4c, 0x54, 0x5f,
+ 0x54, 0x41, 0x52, 0x47, 0x45, 0x54, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49,
+ 0x45, 0x44, 0x10, 0x00, 0x12, 0x17, 0x0a, 0x13, 0x44, 0x45, 0x46, 0x41, 0x55, 0x4c, 0x54, 0x5f,
+ 0x54, 0x41, 0x52, 0x47, 0x45, 0x54, 0x5f, 0x4c, 0x4f, 0x43, 0x4b, 0x10, 0x01, 0x12, 0x1a, 0x0a,
+ 0x16, 0x44, 0x45, 0x46, 0x41, 0x55, 0x4c, 0x54, 0x5f, 0x54, 0x41, 0x52, 0x47, 0x45, 0x54, 0x5f,
+ 0x53, 0x55, 0x53, 0x50, 0x45, 0x4e, 0x44, 0x10, 0x02, 0x12, 0x1b, 0x0a, 0x17, 0x44, 0x45, 0x46,
+ 0x41, 0x55, 0x4c, 0x54, 0x5f, 0x54, 0x41, 0x52, 0x47, 0x45, 0x54, 0x5f, 0x53, 0x48, 0x55, 0x54,
+ 0x44, 0x4f, 0x57, 0x4e, 0x10, 0x03, 0x22, 0x4f, 0x0a, 0x0b, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x50,
+ 0x6c, 0x61, 0x79, 0x65, 0x72, 0x12, 0x1b, 0x0a, 0x09, 0x69, 0x63, 0x6f, 0x6e, 0x5f, 0x73, 0x69,
+ 0x7a, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x69, 0x63, 0x6f, 0x6e, 0x53, 0x69,
+ 0x7a, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x69, 0x63, 0x6f, 0x6e, 0x5f, 0x73, 0x79, 0x6d, 0x62, 0x6f,
+ 0x6c, 0x69, 0x63, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x69, 0x63, 0x6f, 0x6e, 0x53,
+ 0x79, 0x6d, 0x62, 0x6f, 0x6c, 0x69, 0x63, 0x22, 0xd3, 0x05, 0x0a, 0x06, 0x4d, 0x6f, 0x64, 0x75,
+ 0x6c, 0x65, 0x12, 0x32, 0x0a, 0x05, 0x70, 0x61, 0x67, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28,
0x0b, 0x32, 0x1a, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x6d, 0x6f,
- 0x64, 0x75, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x75, 0x64, 0x69, 0x6f, 0x48, 0x00, 0x52,
- 0x05, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x12, 0x32, 0x0a, 0x05, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x18,
- 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65,
- 0x6c, 0x2e, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x6f, 0x77, 0x65,
- 0x72, 0x48, 0x00, 0x52, 0x05, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x12, 0x32, 0x0a, 0x05, 0x63, 0x6c,
- 0x6f, 0x63, 0x6b, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x68, 0x79, 0x70, 0x72,
- 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x2e,
- 0x43, 0x6c, 0x6f, 0x63, 0x6b, 0x48, 0x00, 0x52, 0x05, 0x63, 0x6c, 0x6f, 0x63, 0x6b, 0x12, 0x38,
- 0x0a, 0x07, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32,
- 0x1c, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x6d, 0x6f, 0x64, 0x75,
- 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52,
- 0x07, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x35, 0x0a, 0x06, 0x73, 0x70, 0x61, 0x63,
- 0x65, 0x72, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70,
- 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x53,
- 0x70, 0x61, 0x63, 0x65, 0x72, 0x48, 0x00, 0x52, 0x06, 0x73, 0x70, 0x61, 0x63, 0x65, 0x72, 0x42,
- 0x06, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x2a, 0xeb, 0x01, 0x0a, 0x08, 0x50, 0x6f, 0x73, 0x69,
- 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x18, 0x0a, 0x14, 0x50, 0x4f, 0x53, 0x49, 0x54, 0x49, 0x4f, 0x4e,
- 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x15,
- 0x0a, 0x11, 0x50, 0x4f, 0x53, 0x49, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x54, 0x4f, 0x50, 0x5f, 0x4c,
- 0x45, 0x46, 0x54, 0x10, 0x01, 0x12, 0x10, 0x0a, 0x0c, 0x50, 0x4f, 0x53, 0x49, 0x54, 0x49, 0x4f,
- 0x4e, 0x5f, 0x54, 0x4f, 0x50, 0x10, 0x02, 0x12, 0x16, 0x0a, 0x12, 0x50, 0x4f, 0x53, 0x49, 0x54,
- 0x49, 0x4f, 0x4e, 0x5f, 0x54, 0x4f, 0x50, 0x5f, 0x52, 0x49, 0x47, 0x48, 0x54, 0x10, 0x03, 0x12,
- 0x12, 0x0a, 0x0e, 0x50, 0x4f, 0x53, 0x49, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x52, 0x49, 0x47, 0x48,
- 0x54, 0x10, 0x04, 0x12, 0x19, 0x0a, 0x15, 0x50, 0x4f, 0x53, 0x49, 0x54, 0x49, 0x4f, 0x4e, 0x5f,
- 0x42, 0x4f, 0x54, 0x54, 0x4f, 0x4d, 0x5f, 0x52, 0x49, 0x47, 0x48, 0x54, 0x10, 0x05, 0x12, 0x13,
- 0x0a, 0x0f, 0x50, 0x4f, 0x53, 0x49, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x42, 0x4f, 0x54, 0x54, 0x4f,
- 0x4d, 0x10, 0x06, 0x12, 0x18, 0x0a, 0x14, 0x50, 0x4f, 0x53, 0x49, 0x54, 0x49, 0x4f, 0x4e, 0x5f,
- 0x42, 0x4f, 0x54, 0x54, 0x4f, 0x4d, 0x5f, 0x4c, 0x45, 0x46, 0x54, 0x10, 0x07, 0x12, 0x11, 0x0a,
- 0x0d, 0x50, 0x4f, 0x53, 0x49, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x4c, 0x45, 0x46, 0x54, 0x10, 0x08,
- 0x12, 0x13, 0x0a, 0x0f, 0x50, 0x4f, 0x53, 0x49, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x43, 0x45, 0x4e,
- 0x54, 0x45, 0x52, 0x10, 0x09, 0x42, 0xd1, 0x01, 0x0a, 0x17, 0x63, 0x6f, 0x6d, 0x2e, 0x68, 0x79,
+ 0x64, 0x75, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x61, 0x67, 0x65, 0x72, 0x48, 0x00, 0x52,
+ 0x05, 0x70, 0x61, 0x67, 0x65, 0x72, 0x12, 0x38, 0x0a, 0x07, 0x74, 0x61, 0x73, 0x6b, 0x62, 0x61,
+ 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61,
+ 0x6e, 0x65, 0x6c, 0x2e, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x61,
+ 0x73, 0x6b, 0x62, 0x61, 0x72, 0x48, 0x00, 0x52, 0x07, 0x74, 0x61, 0x73, 0x6b, 0x62, 0x61, 0x72,
+ 0x12, 0x38, 0x0a, 0x07, 0x73, 0x79, 0x73, 0x74, 0x72, 0x61, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28,
+ 0x0b, 0x32, 0x1c, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x6d, 0x6f,
+ 0x64, 0x75, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x79, 0x73, 0x74, 0x72, 0x61, 0x79, 0x48,
+ 0x00, 0x52, 0x07, 0x73, 0x79, 0x73, 0x74, 0x72, 0x61, 0x79, 0x12, 0x4a, 0x0a, 0x0d, 0x6e, 0x6f,
+ 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28,
+ 0x0b, 0x32, 0x22, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x6d, 0x6f,
+ 0x64, 0x75, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61,
+ 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x48, 0x00, 0x52, 0x0d, 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63,
+ 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x2c, 0x0a, 0x03, 0x68, 0x75, 0x64, 0x18, 0x05, 0x20,
+ 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e,
+ 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x48, 0x75, 0x64, 0x48, 0x00, 0x52,
+ 0x03, 0x68, 0x75, 0x64, 0x12, 0x32, 0x0a, 0x05, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x18, 0x06, 0x20,
+ 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e,
+ 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x75, 0x64, 0x69, 0x6f, 0x48,
+ 0x00, 0x52, 0x05, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x12, 0x32, 0x0a, 0x05, 0x70, 0x6f, 0x77, 0x65,
+ 0x72, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61,
+ 0x6e, 0x65, 0x6c, 0x2e, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x6f,
+ 0x77, 0x65, 0x72, 0x48, 0x00, 0x52, 0x05, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x12, 0x32, 0x0a, 0x05,
+ 0x63, 0x6c, 0x6f, 0x63, 0x6b, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x68, 0x79,
0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x2e, 0x76,
- 0x31, 0x42, 0x0b, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01,
- 0x5a, 0x3b, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x70, 0x64, 0x66,
- 0x2f, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f,
- 0x2f, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2f, 0x6d, 0x6f, 0x64, 0x75, 0x6c,
- 0x65, 0x2f, 0x76, 0x31, 0x3b, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x76, 0x31, 0xa2, 0x02, 0x03,
- 0x48, 0x4d, 0x58, 0xaa, 0x02, 0x13, 0x48, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e,
- 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x2e, 0x56, 0x31, 0xca, 0x02, 0x13, 0x48, 0x79, 0x70, 0x72,
- 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x5c, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x5c, 0x56, 0x31, 0xe2,
- 0x02, 0x1f, 0x48, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x5c, 0x4d, 0x6f, 0x64, 0x75,
- 0x6c, 0x65, 0x5c, 0x56, 0x31, 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74,
- 0x61, 0xea, 0x02, 0x15, 0x48, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x3a, 0x3a, 0x4d,
- 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x3a, 0x3a, 0x56, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f,
- 0x33,
+ 0x31, 0x2e, 0x43, 0x6c, 0x6f, 0x63, 0x6b, 0x48, 0x00, 0x52, 0x05, 0x63, 0x6c, 0x6f, 0x63, 0x6b,
+ 0x12, 0x38, 0x0a, 0x07, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x09, 0x20, 0x01, 0x28,
+ 0x0b, 0x32, 0x1c, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x6d, 0x6f,
+ 0x64, 0x75, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x48,
+ 0x00, 0x52, 0x07, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x35, 0x0a, 0x06, 0x73, 0x70,
+ 0x61, 0x63, 0x65, 0x72, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x68, 0x79, 0x70,
+ 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x2e, 0x76, 0x31,
+ 0x2e, 0x53, 0x70, 0x61, 0x63, 0x65, 0x72, 0x48, 0x00, 0x52, 0x06, 0x73, 0x70, 0x61, 0x63, 0x65,
+ 0x72, 0x12, 0x4b, 0x0a, 0x0e, 0x69, 0x64, 0x6c, 0x65, 0x5f, 0x69, 0x6e, 0x68, 0x69, 0x62, 0x69,
+ 0x74, 0x6f, 0x72, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x68, 0x79, 0x70, 0x72,
+ 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x2e,
+ 0x49, 0x64, 0x6c, 0x65, 0x49, 0x6e, 0x68, 0x69, 0x62, 0x69, 0x74, 0x6f, 0x72, 0x48, 0x00, 0x52,
+ 0x0d, 0x69, 0x64, 0x6c, 0x65, 0x49, 0x6e, 0x68, 0x69, 0x62, 0x69, 0x74, 0x6f, 0x72, 0x12, 0x45,
+ 0x0a, 0x0c, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x18, 0x0c,
+ 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c,
+ 0x2e, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x65, 0x64, 0x69, 0x61,
+ 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x48, 0x00, 0x52, 0x0b, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x50,
+ 0x6c, 0x61, 0x79, 0x65, 0x72, 0x42, 0x06, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x2a, 0xeb, 0x01,
+ 0x0a, 0x08, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x18, 0x0a, 0x14, 0x50, 0x4f,
+ 0x53, 0x49, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49,
+ 0x45, 0x44, 0x10, 0x00, 0x12, 0x15, 0x0a, 0x11, 0x50, 0x4f, 0x53, 0x49, 0x54, 0x49, 0x4f, 0x4e,
+ 0x5f, 0x54, 0x4f, 0x50, 0x5f, 0x4c, 0x45, 0x46, 0x54, 0x10, 0x01, 0x12, 0x10, 0x0a, 0x0c, 0x50,
+ 0x4f, 0x53, 0x49, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x54, 0x4f, 0x50, 0x10, 0x02, 0x12, 0x16, 0x0a,
+ 0x12, 0x50, 0x4f, 0x53, 0x49, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x54, 0x4f, 0x50, 0x5f, 0x52, 0x49,
+ 0x47, 0x48, 0x54, 0x10, 0x03, 0x12, 0x12, 0x0a, 0x0e, 0x50, 0x4f, 0x53, 0x49, 0x54, 0x49, 0x4f,
+ 0x4e, 0x5f, 0x52, 0x49, 0x47, 0x48, 0x54, 0x10, 0x04, 0x12, 0x19, 0x0a, 0x15, 0x50, 0x4f, 0x53,
+ 0x49, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x42, 0x4f, 0x54, 0x54, 0x4f, 0x4d, 0x5f, 0x52, 0x49, 0x47,
+ 0x48, 0x54, 0x10, 0x05, 0x12, 0x13, 0x0a, 0x0f, 0x50, 0x4f, 0x53, 0x49, 0x54, 0x49, 0x4f, 0x4e,
+ 0x5f, 0x42, 0x4f, 0x54, 0x54, 0x4f, 0x4d, 0x10, 0x06, 0x12, 0x18, 0x0a, 0x14, 0x50, 0x4f, 0x53,
+ 0x49, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x42, 0x4f, 0x54, 0x54, 0x4f, 0x4d, 0x5f, 0x4c, 0x45, 0x46,
+ 0x54, 0x10, 0x07, 0x12, 0x11, 0x0a, 0x0d, 0x50, 0x4f, 0x53, 0x49, 0x54, 0x49, 0x4f, 0x4e, 0x5f,
+ 0x4c, 0x45, 0x46, 0x54, 0x10, 0x08, 0x12, 0x13, 0x0a, 0x0f, 0x50, 0x4f, 0x53, 0x49, 0x54, 0x49,
+ 0x4f, 0x4e, 0x5f, 0x43, 0x45, 0x4e, 0x54, 0x45, 0x52, 0x10, 0x09, 0x42, 0xd1, 0x01, 0x0a, 0x17,
+ 0x63, 0x6f, 0x6d, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x6d, 0x6f,
+ 0x64, 0x75, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x42, 0x0b, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x50,
+ 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x3b, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63,
+ 0x6f, 0x6d, 0x2f, 0x70, 0x64, 0x66, 0x2f, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c,
+ 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c,
+ 0x2f, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x2f, 0x76, 0x31, 0x3b, 0x6d, 0x6f, 0x64, 0x75, 0x6c,
+ 0x65, 0x76, 0x31, 0xa2, 0x02, 0x03, 0x48, 0x4d, 0x58, 0xaa, 0x02, 0x13, 0x48, 0x79, 0x70, 0x72,
+ 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x2e, 0x56, 0x31, 0xca,
+ 0x02, 0x13, 0x48, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x5c, 0x4d, 0x6f, 0x64, 0x75,
+ 0x6c, 0x65, 0x5c, 0x56, 0x31, 0xe2, 0x02, 0x1f, 0x48, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65,
+ 0x6c, 0x5c, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x5c, 0x56, 0x31, 0x5c, 0x47, 0x50, 0x42, 0x4d,
+ 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x15, 0x48, 0x79, 0x70, 0x72, 0x70, 0x61,
+ 0x6e, 0x65, 0x6c, 0x3a, 0x3a, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x3a, 0x3a, 0x56, 0x31, 0x62,
+ 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}
var (
@@ -1497,50 +1728,56 @@ func file_hyprpanel_module_v1_module_proto_rawDescGZIP() []byte {
return file_hyprpanel_module_v1_module_proto_rawDescData
}
-var file_hyprpanel_module_v1_module_proto_enumTypes = make([]protoimpl.EnumInfo, 2)
-var file_hyprpanel_module_v1_module_proto_msgTypes = make([]protoimpl.MessageInfo, 12)
+var file_hyprpanel_module_v1_module_proto_enumTypes = make([]protoimpl.EnumInfo, 3)
+var file_hyprpanel_module_v1_module_proto_msgTypes = make([]protoimpl.MessageInfo, 14)
var file_hyprpanel_module_v1_module_proto_goTypes = []interface{}{
- (Position)(0), // 0: hyprpanel.module.v1.Position
- (Systray_Status)(0), // 1: hyprpanel.module.v1.Systray.Status
- (*Pager)(nil), // 2: hyprpanel.module.v1.Pager
- (*Taskbar)(nil), // 3: hyprpanel.module.v1.Taskbar
- (*Systray)(nil), // 4: hyprpanel.module.v1.Systray
- (*Notifications)(nil), // 5: hyprpanel.module.v1.Notifications
- (*Hud)(nil), // 6: hyprpanel.module.v1.Hud
- (*Clock)(nil), // 7: hyprpanel.module.v1.Clock
- (*Audio)(nil), // 8: hyprpanel.module.v1.Audio
- (*Power)(nil), // 9: hyprpanel.module.v1.Power
- (*Session)(nil), // 10: hyprpanel.module.v1.Session
- (*Spacer)(nil), // 11: hyprpanel.module.v1.Spacer
- (*SystrayModule)(nil), // 12: hyprpanel.module.v1.SystrayModule
- (*Module)(nil), // 13: hyprpanel.module.v1.Module
- (*durationpb.Duration)(nil), // 14: google.protobuf.Duration
+ (Position)(0), // 0: hyprpanel.module.v1.Position
+ (Systray_Status)(0), // 1: hyprpanel.module.v1.Systray.Status
+ (IdleInhibitor_DefaultTarget)(0), // 2: hyprpanel.module.v1.IdleInhibitor.DefaultTarget
+ (*Pager)(nil), // 3: hyprpanel.module.v1.Pager
+ (*Taskbar)(nil), // 4: hyprpanel.module.v1.Taskbar
+ (*Systray)(nil), // 5: hyprpanel.module.v1.Systray
+ (*Notifications)(nil), // 6: hyprpanel.module.v1.Notifications
+ (*Hud)(nil), // 7: hyprpanel.module.v1.Hud
+ (*Clock)(nil), // 8: hyprpanel.module.v1.Clock
+ (*Audio)(nil), // 9: hyprpanel.module.v1.Audio
+ (*Power)(nil), // 10: hyprpanel.module.v1.Power
+ (*Session)(nil), // 11: hyprpanel.module.v1.Session
+ (*Spacer)(nil), // 12: hyprpanel.module.v1.Spacer
+ (*SystrayModule)(nil), // 13: hyprpanel.module.v1.SystrayModule
+ (*IdleInhibitor)(nil), // 14: hyprpanel.module.v1.IdleInhibitor
+ (*MediaPlayer)(nil), // 15: hyprpanel.module.v1.MediaPlayer
+ (*Module)(nil), // 16: hyprpanel.module.v1.Module
+ (*durationpb.Duration)(nil), // 17: google.protobuf.Duration
}
var file_hyprpanel_module_v1_module_proto_depIdxs = []int32{
1, // 0: hyprpanel.module.v1.Systray.auto_hide_statuses:type_name -> hyprpanel.module.v1.Systray.Status
- 14, // 1: hyprpanel.module.v1.Systray.auto_hide_delay:type_name -> google.protobuf.Duration
- 12, // 2: hyprpanel.module.v1.Systray.modules:type_name -> hyprpanel.module.v1.SystrayModule
- 14, // 3: hyprpanel.module.v1.Notifications.default_timeout:type_name -> google.protobuf.Duration
+ 17, // 1: hyprpanel.module.v1.Systray.auto_hide_delay:type_name -> google.protobuf.Duration
+ 13, // 2: hyprpanel.module.v1.Systray.modules:type_name -> hyprpanel.module.v1.SystrayModule
+ 17, // 3: hyprpanel.module.v1.Notifications.default_timeout:type_name -> google.protobuf.Duration
0, // 4: hyprpanel.module.v1.Notifications.position:type_name -> hyprpanel.module.v1.Position
- 14, // 5: hyprpanel.module.v1.Hud.timeout:type_name -> google.protobuf.Duration
+ 17, // 5: hyprpanel.module.v1.Hud.timeout:type_name -> google.protobuf.Duration
0, // 6: hyprpanel.module.v1.Hud.position:type_name -> hyprpanel.module.v1.Position
- 8, // 7: hyprpanel.module.v1.SystrayModule.audio:type_name -> hyprpanel.module.v1.Audio
- 9, // 8: hyprpanel.module.v1.SystrayModule.power:type_name -> hyprpanel.module.v1.Power
- 2, // 9: hyprpanel.module.v1.Module.pager:type_name -> hyprpanel.module.v1.Pager
- 3, // 10: hyprpanel.module.v1.Module.taskbar:type_name -> hyprpanel.module.v1.Taskbar
- 4, // 11: hyprpanel.module.v1.Module.systray:type_name -> hyprpanel.module.v1.Systray
- 5, // 12: hyprpanel.module.v1.Module.notifications:type_name -> hyprpanel.module.v1.Notifications
- 6, // 13: hyprpanel.module.v1.Module.hud:type_name -> hyprpanel.module.v1.Hud
- 8, // 14: hyprpanel.module.v1.Module.audio:type_name -> hyprpanel.module.v1.Audio
- 9, // 15: hyprpanel.module.v1.Module.power:type_name -> hyprpanel.module.v1.Power
- 7, // 16: hyprpanel.module.v1.Module.clock:type_name -> hyprpanel.module.v1.Clock
- 10, // 17: hyprpanel.module.v1.Module.session:type_name -> hyprpanel.module.v1.Session
- 11, // 18: hyprpanel.module.v1.Module.spacer:type_name -> hyprpanel.module.v1.Spacer
- 19, // [19:19] is the sub-list for method output_type
- 19, // [19:19] is the sub-list for method input_type
- 19, // [19:19] is the sub-list for extension type_name
- 19, // [19:19] is the sub-list for extension extendee
- 0, // [0:19] is the sub-list for field type_name
+ 9, // 7: hyprpanel.module.v1.SystrayModule.audio:type_name -> hyprpanel.module.v1.Audio
+ 10, // 8: hyprpanel.module.v1.SystrayModule.power:type_name -> hyprpanel.module.v1.Power
+ 2, // 9: hyprpanel.module.v1.IdleInhibitor.default_target:type_name -> hyprpanel.module.v1.IdleInhibitor.DefaultTarget
+ 3, // 10: hyprpanel.module.v1.Module.pager:type_name -> hyprpanel.module.v1.Pager
+ 4, // 11: hyprpanel.module.v1.Module.taskbar:type_name -> hyprpanel.module.v1.Taskbar
+ 5, // 12: hyprpanel.module.v1.Module.systray:type_name -> hyprpanel.module.v1.Systray
+ 6, // 13: hyprpanel.module.v1.Module.notifications:type_name -> hyprpanel.module.v1.Notifications
+ 7, // 14: hyprpanel.module.v1.Module.hud:type_name -> hyprpanel.module.v1.Hud
+ 9, // 15: hyprpanel.module.v1.Module.audio:type_name -> hyprpanel.module.v1.Audio
+ 10, // 16: hyprpanel.module.v1.Module.power:type_name -> hyprpanel.module.v1.Power
+ 8, // 17: hyprpanel.module.v1.Module.clock:type_name -> hyprpanel.module.v1.Clock
+ 11, // 18: hyprpanel.module.v1.Module.session:type_name -> hyprpanel.module.v1.Session
+ 12, // 19: hyprpanel.module.v1.Module.spacer:type_name -> hyprpanel.module.v1.Spacer
+ 14, // 20: hyprpanel.module.v1.Module.idle_inhibitor:type_name -> hyprpanel.module.v1.IdleInhibitor
+ 15, // 21: hyprpanel.module.v1.Module.media_player:type_name -> hyprpanel.module.v1.MediaPlayer
+ 22, // [22:22] is the sub-list for method output_type
+ 22, // [22:22] is the sub-list for method input_type
+ 22, // [22:22] is the sub-list for extension type_name
+ 22, // [22:22] is the sub-list for extension extendee
+ 0, // [0:22] is the sub-list for field type_name
}
func init() { file_hyprpanel_module_v1_module_proto_init() }
@@ -1682,6 +1919,30 @@ func file_hyprpanel_module_v1_module_proto_init() {
}
}
file_hyprpanel_module_v1_module_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*IdleInhibitor); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_hyprpanel_module_v1_module_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*MediaPlayer); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_hyprpanel_module_v1_module_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*Module); i {
case 0:
return &v.state
@@ -1698,7 +1959,7 @@ func file_hyprpanel_module_v1_module_proto_init() {
(*SystrayModule_Audio)(nil),
(*SystrayModule_Power)(nil),
}
- file_hyprpanel_module_v1_module_proto_msgTypes[11].OneofWrappers = []interface{}{
+ file_hyprpanel_module_v1_module_proto_msgTypes[13].OneofWrappers = []interface{}{
(*Module_Pager)(nil),
(*Module_Taskbar)(nil),
(*Module_Systray)(nil),
@@ -1709,14 +1970,16 @@ func file_hyprpanel_module_v1_module_proto_init() {
(*Module_Clock)(nil),
(*Module_Session)(nil),
(*Module_Spacer)(nil),
+ (*Module_IdleInhibitor)(nil),
+ (*Module_MediaPlayer)(nil),
}
type x struct{}
out := protoimpl.TypeBuilder{
File: protoimpl.DescBuilder{
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: file_hyprpanel_module_v1_module_proto_rawDesc,
- NumEnums: 2,
- NumMessages: 12,
+ NumEnums: 3,
+ NumMessages: 14,
NumExtensions: 0,
NumServices: 0,
},
diff --git a/proto/hyprpanel/module/v1/module.proto b/proto/hyprpanel/module/v1/module.proto
index d92ca34..592c1fa 100644
--- a/proto/hyprpanel/module/v1/module.proto
+++ b/proto/hyprpanel/module/v1/module.proto
@@ -116,6 +116,24 @@ message SystrayModule {
}
}
+message IdleInhibitor {
+ enum DefaultTarget {
+ DEFAULT_TARGET_UNSPECIFIED = 0;
+ DEFAULT_TARGET_LOCK = 1;
+ DEFAULT_TARGET_SUSPEND = 2;
+ DEFAULT_TARGET_SHUTDOWN = 3;
+ }
+
+ uint32 icon_size = 1; // size in pixels for panel icon.
+ bool icon_symbolic = 2; // display symbolic or coloured icon in panel.
+ DefaultTarget default_target = 3; // default inhibit target for left click action.
+}
+
+message MediaPlayer {
+ uint32 icon_size = 1;
+ bool icon_symbolic = 2;
+}
+
message Module {
oneof kind {
Pager pager = 1;
@@ -128,5 +146,7 @@ message Module {
Clock clock = 8;
Session session = 9;
Spacer spacer = 10;
+ IdleInhibitor idle_inhibitor = 11;
+ MediaPlayer media_player = 12;
}
}
diff --git a/proto/hyprpanel/v1/hyprpanel.pb.go b/proto/hyprpanel/v1/hyprpanel.pb.go
index 94e3c09..a1c9404 100644
--- a/proto/hyprpanel/v1/hyprpanel.pb.go
+++ b/proto/hyprpanel/v1/hyprpanel.pb.go
@@ -2217,6 +2217,91 @@ func (x *HostServiceCaptureFrameRequest) GetHeight() int32 {
return 0
}
+type HostServiceIdleInhibitorRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Target v11.InhibitTarget `protobuf:"varint,1,opt,name=target,proto3,enum=hyprpanel.event.v1.InhibitTarget" json:"target,omitempty"`
+}
+
+func (x *HostServiceIdleInhibitorRequest) Reset() {
+ *x = HostServiceIdleInhibitorRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_hyprpanel_v1_hyprpanel_proto_msgTypes[41]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *HostServiceIdleInhibitorRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*HostServiceIdleInhibitorRequest) ProtoMessage() {}
+
+func (x *HostServiceIdleInhibitorRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_hyprpanel_v1_hyprpanel_proto_msgTypes[41]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use HostServiceIdleInhibitorRequest.ProtoReflect.Descriptor instead.
+func (*HostServiceIdleInhibitorRequest) Descriptor() ([]byte, []int) {
+ return file_hyprpanel_v1_hyprpanel_proto_rawDescGZIP(), []int{41}
+}
+
+func (x *HostServiceIdleInhibitorRequest) GetTarget() v11.InhibitTarget {
+ if x != nil {
+ return x.Target
+ }
+ return v11.InhibitTarget(0)
+}
+
+type HostServiceIdleInhibitorResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+}
+
+func (x *HostServiceIdleInhibitorResponse) Reset() {
+ *x = HostServiceIdleInhibitorResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_hyprpanel_v1_hyprpanel_proto_msgTypes[42]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *HostServiceIdleInhibitorResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*HostServiceIdleInhibitorResponse) ProtoMessage() {}
+
+func (x *HostServiceIdleInhibitorResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_hyprpanel_v1_hyprpanel_proto_msgTypes[42]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use HostServiceIdleInhibitorResponse.ProtoReflect.Descriptor instead.
+func (*HostServiceIdleInhibitorResponse) Descriptor() ([]byte, []int) {
+ return file_hyprpanel_v1_hyprpanel_proto_rawDescGZIP(), []int{42}
+}
+
type HostServiceCaptureFrameResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
@@ -2228,7 +2313,7 @@ type HostServiceCaptureFrameResponse struct {
func (x *HostServiceCaptureFrameResponse) Reset() {
*x = HostServiceCaptureFrameResponse{}
if protoimpl.UnsafeEnabled {
- mi := &file_hyprpanel_v1_hyprpanel_proto_msgTypes[41]
+ mi := &file_hyprpanel_v1_hyprpanel_proto_msgTypes[43]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -2241,7 +2326,7 @@ func (x *HostServiceCaptureFrameResponse) String() string {
func (*HostServiceCaptureFrameResponse) ProtoMessage() {}
func (x *HostServiceCaptureFrameResponse) ProtoReflect() protoreflect.Message {
- mi := &file_hyprpanel_v1_hyprpanel_proto_msgTypes[41]
+ mi := &file_hyprpanel_v1_hyprpanel_proto_msgTypes[43]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -2254,7 +2339,7 @@ func (x *HostServiceCaptureFrameResponse) ProtoReflect() protoreflect.Message {
// Deprecated: Use HostServiceCaptureFrameResponse.ProtoReflect.Descriptor instead.
func (*HostServiceCaptureFrameResponse) Descriptor() ([]byte, []int) {
- return file_hyprpanel_v1_hyprpanel_proto_rawDescGZIP(), []int{41}
+ return file_hyprpanel_v1_hyprpanel_proto_rawDescGZIP(), []int{43}
}
func (x *HostServiceCaptureFrameResponse) GetImage() *ImageNRGBA {
@@ -2264,6 +2349,184 @@ func (x *HostServiceCaptureFrameResponse) GetImage() *ImageNRGBA {
return nil
}
+type HostServiceMediaPlayerRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+}
+
+func (x *HostServiceMediaPlayerRequest) Reset() {
+ *x = HostServiceMediaPlayerRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_hyprpanel_v1_hyprpanel_proto_msgTypes[44]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *HostServiceMediaPlayerRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*HostServiceMediaPlayerRequest) ProtoMessage() {}
+
+func (x *HostServiceMediaPlayerRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_hyprpanel_v1_hyprpanel_proto_msgTypes[44]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use HostServiceMediaPlayerRequest.ProtoReflect.Descriptor instead.
+func (*HostServiceMediaPlayerRequest) Descriptor() ([]byte, []int) {
+ return file_hyprpanel_v1_hyprpanel_proto_rawDescGZIP(), []int{44}
+}
+
+type HostServiceMediaPlayerSeekRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ OffsetUs int64 `protobuf:"varint,1,opt,name=offset_us,json=offsetUs,proto3" json:"offset_us,omitempty"`
+}
+
+func (x *HostServiceMediaPlayerSeekRequest) Reset() {
+ *x = HostServiceMediaPlayerSeekRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_hyprpanel_v1_hyprpanel_proto_msgTypes[45]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *HostServiceMediaPlayerSeekRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*HostServiceMediaPlayerSeekRequest) ProtoMessage() {}
+
+func (x *HostServiceMediaPlayerSeekRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_hyprpanel_v1_hyprpanel_proto_msgTypes[45]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use HostServiceMediaPlayerSeekRequest.ProtoReflect.Descriptor instead.
+func (*HostServiceMediaPlayerSeekRequest) Descriptor() ([]byte, []int) {
+ return file_hyprpanel_v1_hyprpanel_proto_rawDescGZIP(), []int{45}
+}
+
+func (x *HostServiceMediaPlayerSeekRequest) GetOffsetUs() int64 {
+ if x != nil {
+ return x.OffsetUs
+ }
+ return 0
+}
+
+type HostServiceMediaPlayerSetPostionRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ TrackId string `protobuf:"bytes,1,opt,name=track_id,json=trackId,proto3" json:"track_id,omitempty"`
+ PositionUs int64 `protobuf:"varint,2,opt,name=position_us,json=positionUs,proto3" json:"position_us,omitempty"`
+}
+
+func (x *HostServiceMediaPlayerSetPostionRequest) Reset() {
+ *x = HostServiceMediaPlayerSetPostionRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_hyprpanel_v1_hyprpanel_proto_msgTypes[46]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *HostServiceMediaPlayerSetPostionRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*HostServiceMediaPlayerSetPostionRequest) ProtoMessage() {}
+
+func (x *HostServiceMediaPlayerSetPostionRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_hyprpanel_v1_hyprpanel_proto_msgTypes[46]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use HostServiceMediaPlayerSetPostionRequest.ProtoReflect.Descriptor instead.
+func (*HostServiceMediaPlayerSetPostionRequest) Descriptor() ([]byte, []int) {
+ return file_hyprpanel_v1_hyprpanel_proto_rawDescGZIP(), []int{46}
+}
+
+func (x *HostServiceMediaPlayerSetPostionRequest) GetTrackId() string {
+ if x != nil {
+ return x.TrackId
+ }
+ return ""
+}
+
+func (x *HostServiceMediaPlayerSetPostionRequest) GetPositionUs() int64 {
+ if x != nil {
+ return x.PositionUs
+ }
+ return 0
+}
+
+type HostServiceMediaPlayerResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+}
+
+func (x *HostServiceMediaPlayerResponse) Reset() {
+ *x = HostServiceMediaPlayerResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_hyprpanel_v1_hyprpanel_proto_msgTypes[47]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *HostServiceMediaPlayerResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*HostServiceMediaPlayerResponse) ProtoMessage() {}
+
+func (x *HostServiceMediaPlayerResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_hyprpanel_v1_hyprpanel_proto_msgTypes[47]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use HostServiceMediaPlayerResponse.ProtoReflect.Descriptor instead.
+func (*HostServiceMediaPlayerResponse) Descriptor() ([]byte, []int) {
+ return file_hyprpanel_v1_hyprpanel_proto_rawDescGZIP(), []int{47}
+}
+
type AppInfo_Action struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
@@ -2278,7 +2541,7 @@ type AppInfo_Action struct {
func (x *AppInfo_Action) Reset() {
*x = AppInfo_Action{}
if protoimpl.UnsafeEnabled {
- mi := &file_hyprpanel_v1_hyprpanel_proto_msgTypes[42]
+ mi := &file_hyprpanel_v1_hyprpanel_proto_msgTypes[48]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -2291,7 +2554,7 @@ func (x *AppInfo_Action) String() string {
func (*AppInfo_Action) ProtoMessage() {}
func (x *AppInfo_Action) ProtoReflect() protoreflect.Message {
- mi := &file_hyprpanel_v1_hyprpanel_proto_msgTypes[42]
+ mi := &file_hyprpanel_v1_hyprpanel_proto_msgTypes[48]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -2558,198 +2821,293 @@ var file_hyprpanel_v1_hyprpanel_proto_rawDesc = []byte{
0x72, 0x65, 0x73, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x77, 0x69, 0x64, 0x74, 0x68, 0x18, 0x02, 0x20,
0x01, 0x28, 0x05, 0x52, 0x05, 0x77, 0x69, 0x64, 0x74, 0x68, 0x12, 0x16, 0x0a, 0x06, 0x68, 0x65,
0x69, 0x67, 0x68, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x68, 0x65, 0x69, 0x67,
- 0x68, 0x74, 0x22, 0x51, 0x0a, 0x1f, 0x48, 0x6f, 0x73, 0x74, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63,
- 0x65, 0x43, 0x61, 0x70, 0x74, 0x75, 0x72, 0x65, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x73,
- 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2e, 0x0a, 0x05, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x18, 0x01,
- 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c,
- 0x2e, 0x76, 0x31, 0x2e, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x4e, 0x52, 0x47, 0x42, 0x41, 0x52, 0x05,
- 0x69, 0x6d, 0x61, 0x67, 0x65, 0x2a, 0x9a, 0x01, 0x0a, 0x18, 0x53, 0x79, 0x73, 0x74, 0x72, 0x61,
- 0x79, 0x53, 0x63, 0x72, 0x6f, 0x6c, 0x6c, 0x4f, 0x72, 0x69, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x12, 0x2a, 0x0a, 0x26, 0x53, 0x59, 0x53, 0x54, 0x52, 0x41, 0x59, 0x5f, 0x53, 0x43,
- 0x52, 0x4f, 0x4c, 0x4c, 0x5f, 0x4f, 0x52, 0x49, 0x45, 0x4e, 0x54, 0x41, 0x54, 0x49, 0x4f, 0x4e,
- 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x27,
- 0x0a, 0x23, 0x53, 0x59, 0x53, 0x54, 0x52, 0x41, 0x59, 0x5f, 0x53, 0x43, 0x52, 0x4f, 0x4c, 0x4c,
- 0x5f, 0x4f, 0x52, 0x49, 0x45, 0x4e, 0x54, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x56, 0x45, 0x52,
- 0x54, 0x49, 0x43, 0x41, 0x4c, 0x10, 0x01, 0x12, 0x29, 0x0a, 0x25, 0x53, 0x59, 0x53, 0x54, 0x52,
- 0x41, 0x59, 0x5f, 0x53, 0x43, 0x52, 0x4f, 0x4c, 0x4c, 0x5f, 0x4f, 0x52, 0x49, 0x45, 0x4e, 0x54,
- 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x48, 0x4f, 0x52, 0x49, 0x5a, 0x4f, 0x4e, 0x54, 0x41, 0x4c,
- 0x10, 0x02, 0x2a, 0x76, 0x0a, 0x10, 0x53, 0x79, 0x73, 0x74, 0x72, 0x61, 0x79, 0x4d, 0x65, 0x6e,
- 0x75, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x22, 0x0a, 0x1e, 0x53, 0x59, 0x53, 0x54, 0x52, 0x41,
- 0x59, 0x5f, 0x4d, 0x45, 0x4e, 0x55, 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x55, 0x4e, 0x53,
- 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x1e, 0x0a, 0x1a, 0x53, 0x59,
- 0x53, 0x54, 0x52, 0x41, 0x59, 0x5f, 0x4d, 0x45, 0x4e, 0x55, 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54,
- 0x5f, 0x43, 0x4c, 0x49, 0x43, 0x4b, 0x45, 0x44, 0x10, 0x01, 0x12, 0x1e, 0x0a, 0x1a, 0x53, 0x59,
- 0x53, 0x54, 0x52, 0x41, 0x59, 0x5f, 0x4d, 0x45, 0x4e, 0x55, 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54,
- 0x5f, 0x48, 0x4f, 0x56, 0x45, 0x52, 0x45, 0x44, 0x10, 0x02, 0x2a, 0xbf, 0x01, 0x0a, 0x18, 0x4e,
- 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6c, 0x6f, 0x73, 0x65,
- 0x64, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x12, 0x2a, 0x0a, 0x26, 0x4e, 0x4f, 0x54, 0x49, 0x46,
- 0x49, 0x43, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x43, 0x4c, 0x4f, 0x53, 0x45, 0x44, 0x5f, 0x52,
- 0x45, 0x41, 0x53, 0x4f, 0x4e, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45,
- 0x44, 0x10, 0x00, 0x12, 0x26, 0x0a, 0x22, 0x4e, 0x4f, 0x54, 0x49, 0x46, 0x49, 0x43, 0x41, 0x54,
- 0x49, 0x4f, 0x4e, 0x5f, 0x43, 0x4c, 0x4f, 0x53, 0x45, 0x44, 0x5f, 0x52, 0x45, 0x41, 0x53, 0x4f,
- 0x4e, 0x5f, 0x45, 0x58, 0x50, 0x49, 0x52, 0x45, 0x44, 0x10, 0x01, 0x12, 0x28, 0x0a, 0x24, 0x4e,
- 0x4f, 0x54, 0x49, 0x46, 0x49, 0x43, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x43, 0x4c, 0x4f, 0x53,
- 0x45, 0x44, 0x5f, 0x52, 0x45, 0x41, 0x53, 0x4f, 0x4e, 0x5f, 0x44, 0x49, 0x53, 0x4d, 0x49, 0x53,
- 0x53, 0x45, 0x44, 0x10, 0x02, 0x12, 0x25, 0x0a, 0x21, 0x4e, 0x4f, 0x54, 0x49, 0x46, 0x49, 0x43,
+ 0x68, 0x74, 0x22, 0x5c, 0x0a, 0x1f, 0x48, 0x6f, 0x73, 0x74, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63,
+ 0x65, 0x49, 0x64, 0x6c, 0x65, 0x49, 0x6e, 0x68, 0x69, 0x62, 0x69, 0x74, 0x6f, 0x72, 0x52, 0x65,
+ 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x39, 0x0a, 0x06, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x18,
+ 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x21, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65,
+ 0x6c, 0x2e, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x49, 0x6e, 0x68, 0x69, 0x62,
+ 0x69, 0x74, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x52, 0x06, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74,
+ 0x22, 0x22, 0x0a, 0x20, 0x48, 0x6f, 0x73, 0x74, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x49,
+ 0x64, 0x6c, 0x65, 0x49, 0x6e, 0x68, 0x69, 0x62, 0x69, 0x74, 0x6f, 0x72, 0x52, 0x65, 0x73, 0x70,
+ 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x51, 0x0a, 0x1f, 0x48, 0x6f, 0x73, 0x74, 0x53, 0x65, 0x72, 0x76,
+ 0x69, 0x63, 0x65, 0x43, 0x61, 0x70, 0x74, 0x75, 0x72, 0x65, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x52,
+ 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2e, 0x0a, 0x05, 0x69, 0x6d, 0x61, 0x67, 0x65,
+ 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e,
+ 0x65, 0x6c, 0x2e, 0x76, 0x31, 0x2e, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x4e, 0x52, 0x47, 0x42, 0x41,
+ 0x52, 0x05, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x22, 0x1f, 0x0a, 0x1d, 0x48, 0x6f, 0x73, 0x74, 0x53,
+ 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x50, 0x6c, 0x61, 0x79, 0x65,
+ 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x40, 0x0a, 0x21, 0x48, 0x6f, 0x73, 0x74,
+ 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x50, 0x6c, 0x61, 0x79,
+ 0x65, 0x72, 0x53, 0x65, 0x65, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a,
+ 0x09, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x5f, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03,
+ 0x52, 0x08, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x55, 0x73, 0x22, 0x65, 0x0a, 0x27, 0x48, 0x6f,
+ 0x73, 0x74, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x50, 0x6c,
+ 0x61, 0x79, 0x65, 0x72, 0x53, 0x65, 0x74, 0x50, 0x6f, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65,
+ 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x74, 0x72, 0x61, 0x63, 0x6b, 0x5f, 0x69,
+ 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x74, 0x72, 0x61, 0x63, 0x6b, 0x49, 0x64,
+ 0x12, 0x1f, 0x0a, 0x0b, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x75, 0x73, 0x18,
+ 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x55,
+ 0x73, 0x22, 0x20, 0x0a, 0x1e, 0x48, 0x6f, 0x73, 0x74, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65,
+ 0x4d, 0x65, 0x64, 0x69, 0x61, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f,
+ 0x6e, 0x73, 0x65, 0x2a, 0x9a, 0x01, 0x0a, 0x18, 0x53, 0x79, 0x73, 0x74, 0x72, 0x61, 0x79, 0x53,
+ 0x63, 0x72, 0x6f, 0x6c, 0x6c, 0x4f, 0x72, 0x69, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e,
+ 0x12, 0x2a, 0x0a, 0x26, 0x53, 0x59, 0x53, 0x54, 0x52, 0x41, 0x59, 0x5f, 0x53, 0x43, 0x52, 0x4f,
+ 0x4c, 0x4c, 0x5f, 0x4f, 0x52, 0x49, 0x45, 0x4e, 0x54, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x55,
+ 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x27, 0x0a, 0x23,
+ 0x53, 0x59, 0x53, 0x54, 0x52, 0x41, 0x59, 0x5f, 0x53, 0x43, 0x52, 0x4f, 0x4c, 0x4c, 0x5f, 0x4f,
+ 0x52, 0x49, 0x45, 0x4e, 0x54, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x56, 0x45, 0x52, 0x54, 0x49,
+ 0x43, 0x41, 0x4c, 0x10, 0x01, 0x12, 0x29, 0x0a, 0x25, 0x53, 0x59, 0x53, 0x54, 0x52, 0x41, 0x59,
+ 0x5f, 0x53, 0x43, 0x52, 0x4f, 0x4c, 0x4c, 0x5f, 0x4f, 0x52, 0x49, 0x45, 0x4e, 0x54, 0x41, 0x54,
+ 0x49, 0x4f, 0x4e, 0x5f, 0x48, 0x4f, 0x52, 0x49, 0x5a, 0x4f, 0x4e, 0x54, 0x41, 0x4c, 0x10, 0x02,
+ 0x2a, 0x76, 0x0a, 0x10, 0x53, 0x79, 0x73, 0x74, 0x72, 0x61, 0x79, 0x4d, 0x65, 0x6e, 0x75, 0x45,
+ 0x76, 0x65, 0x6e, 0x74, 0x12, 0x22, 0x0a, 0x1e, 0x53, 0x59, 0x53, 0x54, 0x52, 0x41, 0x59, 0x5f,
+ 0x4d, 0x45, 0x4e, 0x55, 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45,
+ 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x1e, 0x0a, 0x1a, 0x53, 0x59, 0x53, 0x54,
+ 0x52, 0x41, 0x59, 0x5f, 0x4d, 0x45, 0x4e, 0x55, 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x43,
+ 0x4c, 0x49, 0x43, 0x4b, 0x45, 0x44, 0x10, 0x01, 0x12, 0x1e, 0x0a, 0x1a, 0x53, 0x59, 0x53, 0x54,
+ 0x52, 0x41, 0x59, 0x5f, 0x4d, 0x45, 0x4e, 0x55, 0x5f, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x48,
+ 0x4f, 0x56, 0x45, 0x52, 0x45, 0x44, 0x10, 0x02, 0x2a, 0xbf, 0x01, 0x0a, 0x18, 0x4e, 0x6f, 0x74,
+ 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x64, 0x52,
+ 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x12, 0x2a, 0x0a, 0x26, 0x4e, 0x4f, 0x54, 0x49, 0x46, 0x49, 0x43,
0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x43, 0x4c, 0x4f, 0x53, 0x45, 0x44, 0x5f, 0x52, 0x45, 0x41,
- 0x53, 0x4f, 0x4e, 0x5f, 0x53, 0x49, 0x47, 0x4e, 0x41, 0x4c, 0x10, 0x03, 0x32, 0x9c, 0x02, 0x0a,
- 0x0c, 0x50, 0x61, 0x6e, 0x65, 0x6c, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x55, 0x0a,
- 0x04, 0x49, 0x6e, 0x69, 0x74, 0x12, 0x25, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65,
- 0x6c, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x61, 0x6e, 0x65, 0x6c, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63,
- 0x65, 0x49, 0x6e, 0x69, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x26, 0x2e, 0x68,
- 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x61, 0x6e, 0x65,
- 0x6c, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x49, 0x6e, 0x69, 0x74, 0x52, 0x65, 0x73, 0x70,
- 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5b, 0x0a, 0x06, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x79, 0x12, 0x27,
- 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x61,
- 0x6e, 0x65, 0x6c, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x79,
- 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x28, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61,
- 0x6e, 0x65, 0x6c, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x61, 0x6e, 0x65, 0x6c, 0x53, 0x65, 0x72, 0x76,
- 0x69, 0x63, 0x65, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
- 0x65, 0x12, 0x58, 0x0a, 0x05, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x12, 0x26, 0x2e, 0x68, 0x79, 0x70,
+ 0x53, 0x4f, 0x4e, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10,
+ 0x00, 0x12, 0x26, 0x0a, 0x22, 0x4e, 0x4f, 0x54, 0x49, 0x46, 0x49, 0x43, 0x41, 0x54, 0x49, 0x4f,
+ 0x4e, 0x5f, 0x43, 0x4c, 0x4f, 0x53, 0x45, 0x44, 0x5f, 0x52, 0x45, 0x41, 0x53, 0x4f, 0x4e, 0x5f,
+ 0x45, 0x58, 0x50, 0x49, 0x52, 0x45, 0x44, 0x10, 0x01, 0x12, 0x28, 0x0a, 0x24, 0x4e, 0x4f, 0x54,
+ 0x49, 0x46, 0x49, 0x43, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x43, 0x4c, 0x4f, 0x53, 0x45, 0x44,
+ 0x5f, 0x52, 0x45, 0x41, 0x53, 0x4f, 0x4e, 0x5f, 0x44, 0x49, 0x53, 0x4d, 0x49, 0x53, 0x53, 0x45,
+ 0x44, 0x10, 0x02, 0x12, 0x25, 0x0a, 0x21, 0x4e, 0x4f, 0x54, 0x49, 0x46, 0x49, 0x43, 0x41, 0x54,
+ 0x49, 0x4f, 0x4e, 0x5f, 0x43, 0x4c, 0x4f, 0x53, 0x45, 0x44, 0x5f, 0x52, 0x45, 0x41, 0x53, 0x4f,
+ 0x4e, 0x5f, 0x53, 0x49, 0x47, 0x4e, 0x41, 0x4c, 0x10, 0x03, 0x32, 0x9c, 0x02, 0x0a, 0x0c, 0x50,
+ 0x61, 0x6e, 0x65, 0x6c, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x55, 0x0a, 0x04, 0x49,
+ 0x6e, 0x69, 0x74, 0x12, 0x25, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e,
+ 0x76, 0x31, 0x2e, 0x50, 0x61, 0x6e, 0x65, 0x6c, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x49,
+ 0x6e, 0x69, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x26, 0x2e, 0x68, 0x79, 0x70,
0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x61, 0x6e, 0x65, 0x6c, 0x53,
- 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65,
- 0x73, 0x74, 0x1a, 0x27, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x76,
- 0x31, 0x2e, 0x50, 0x61, 0x6e, 0x65, 0x6c, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x43, 0x6c,
- 0x6f, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x32, 0xf5, 0x0f, 0x0a, 0x0b,
- 0x48, 0x6f, 0x73, 0x74, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x53, 0x0a, 0x04, 0x45,
- 0x78, 0x65, 0x63, 0x12, 0x24, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e,
- 0x76, 0x31, 0x2e, 0x48, 0x6f, 0x73, 0x74, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x45, 0x78,
- 0x65, 0x63, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x25, 0x2e, 0x68, 0x79, 0x70, 0x72,
- 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x76, 0x31, 0x2e, 0x48, 0x6f, 0x73, 0x74, 0x53, 0x65, 0x72,
- 0x76, 0x69, 0x63, 0x65, 0x45, 0x78, 0x65, 0x63, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
- 0x12, 0x74, 0x0a, 0x0f, 0x46, 0x69, 0x6e, 0x64, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x12, 0x2f, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e,
- 0x76, 0x31, 0x2e, 0x48, 0x6f, 0x73, 0x74, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x46, 0x69,
- 0x6e, 0x64, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71,
- 0x75, 0x65, 0x73, 0x74, 0x1a, 0x30, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c,
- 0x2e, 0x76, 0x31, 0x2e, 0x48, 0x6f, 0x73, 0x74, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x46,
- 0x69, 0x6e, 0x64, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65,
- 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x74, 0x0a, 0x0f, 0x53, 0x79, 0x73, 0x74, 0x72, 0x61,
- 0x79, 0x41, 0x63, 0x74, 0x69, 0x76, 0x61, 0x74, 0x65, 0x12, 0x2f, 0x2e, 0x68, 0x79, 0x70, 0x72,
- 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x76, 0x31, 0x2e, 0x48, 0x6f, 0x73, 0x74, 0x53, 0x65, 0x72,
- 0x76, 0x69, 0x63, 0x65, 0x53, 0x79, 0x73, 0x74, 0x72, 0x61, 0x79, 0x41, 0x63, 0x74, 0x69, 0x76,
- 0x61, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x30, 0x2e, 0x68, 0x79, 0x70,
- 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x76, 0x31, 0x2e, 0x48, 0x6f, 0x73, 0x74, 0x53, 0x65,
- 0x72, 0x76, 0x69, 0x63, 0x65, 0x53, 0x79, 0x73, 0x74, 0x72, 0x61, 0x79, 0x41, 0x63, 0x74, 0x69,
- 0x76, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x8f, 0x01, 0x0a,
- 0x18, 0x53, 0x79, 0x73, 0x74, 0x72, 0x61, 0x79, 0x53, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x61, 0x72,
- 0x79, 0x41, 0x63, 0x74, 0x69, 0x76, 0x61, 0x74, 0x65, 0x12, 0x38, 0x2e, 0x68, 0x79, 0x70, 0x72,
- 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x76, 0x31, 0x2e, 0x48, 0x6f, 0x73, 0x74, 0x53, 0x65, 0x72,
- 0x76, 0x69, 0x63, 0x65, 0x53, 0x79, 0x73, 0x74, 0x72, 0x61, 0x79, 0x53, 0x65, 0x63, 0x6f, 0x6e,
- 0x64, 0x61, 0x72, 0x79, 0x41, 0x63, 0x74, 0x69, 0x76, 0x61, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75,
- 0x65, 0x73, 0x74, 0x1a, 0x39, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e,
- 0x76, 0x31, 0x2e, 0x48, 0x6f, 0x73, 0x74, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x53, 0x79,
- 0x73, 0x74, 0x72, 0x61, 0x79, 0x53, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x61, 0x72, 0x79, 0x41, 0x63,
- 0x74, 0x69, 0x76, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x6e,
- 0x0a, 0x0d, 0x53, 0x79, 0x73, 0x74, 0x72, 0x61, 0x79, 0x53, 0x63, 0x72, 0x6f, 0x6c, 0x6c, 0x12,
- 0x2d, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x76, 0x31, 0x2e, 0x48,
- 0x6f, 0x73, 0x74, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x53, 0x79, 0x73, 0x74, 0x72, 0x61,
- 0x79, 0x53, 0x63, 0x72, 0x6f, 0x6c, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2e,
- 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x76, 0x31, 0x2e, 0x48, 0x6f,
- 0x73, 0x74, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x53, 0x79, 0x73, 0x74, 0x72, 0x61, 0x79,
- 0x53, 0x63, 0x72, 0x6f, 0x6c, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x95,
- 0x01, 0x0a, 0x1a, 0x53, 0x79, 0x73, 0x74, 0x72, 0x61, 0x79, 0x4d, 0x65, 0x6e, 0x75, 0x43, 0x6f,
- 0x6e, 0x74, 0x65, 0x78, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x61, 0x74, 0x65, 0x12, 0x3a, 0x2e,
- 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x76, 0x31, 0x2e, 0x48, 0x6f, 0x73,
- 0x74, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x53, 0x79, 0x73, 0x74, 0x72, 0x61, 0x79, 0x4d,
- 0x65, 0x6e, 0x75, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x61,
- 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3b, 0x2e, 0x68, 0x79, 0x70, 0x72,
- 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x76, 0x31, 0x2e, 0x48, 0x6f, 0x73, 0x74, 0x53, 0x65, 0x72,
- 0x76, 0x69, 0x63, 0x65, 0x53, 0x79, 0x73, 0x74, 0x72, 0x61, 0x79, 0x4d, 0x65, 0x6e, 0x75, 0x43,
- 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x61, 0x74, 0x65, 0x52, 0x65,
- 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x89, 0x01, 0x0a, 0x16, 0x53, 0x79, 0x73, 0x74, 0x72,
- 0x61, 0x79, 0x4d, 0x65, 0x6e, 0x75, 0x41, 0x62, 0x6f, 0x75, 0x74, 0x54, 0x6f, 0x53, 0x68, 0x6f,
- 0x77, 0x12, 0x36, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x76, 0x31,
+ 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x49, 0x6e, 0x69, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
+ 0x73, 0x65, 0x12, 0x5b, 0x0a, 0x06, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x79, 0x12, 0x27, 0x2e, 0x68,
+ 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x61, 0x6e, 0x65,
+ 0x6c, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x79, 0x52, 0x65,
+ 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x28, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65,
+ 0x6c, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x61, 0x6e, 0x65, 0x6c, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63,
+ 0x65, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12,
+ 0x58, 0x0a, 0x05, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x12, 0x26, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70,
+ 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x61, 0x6e, 0x65, 0x6c, 0x53, 0x65, 0x72,
+ 0x76, 0x69, 0x63, 0x65, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
+ 0x1a, 0x27, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x76, 0x31, 0x2e,
+ 0x50, 0x61, 0x6e, 0x65, 0x6c, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x43, 0x6c, 0x6f, 0x73,
+ 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x32, 0xf4, 0x18, 0x0a, 0x0b, 0x48, 0x6f,
+ 0x73, 0x74, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x53, 0x0a, 0x04, 0x45, 0x78, 0x65,
+ 0x63, 0x12, 0x24, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x76, 0x31,
+ 0x2e, 0x48, 0x6f, 0x73, 0x74, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x45, 0x78, 0x65, 0x63,
+ 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x25, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61,
+ 0x6e, 0x65, 0x6c, 0x2e, 0x76, 0x31, 0x2e, 0x48, 0x6f, 0x73, 0x74, 0x53, 0x65, 0x72, 0x76, 0x69,
+ 0x63, 0x65, 0x45, 0x78, 0x65, 0x63, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x74,
+ 0x0a, 0x0f, 0x46, 0x69, 0x6e, 0x64, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
+ 0x6e, 0x12, 0x2f, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x76, 0x31,
+ 0x2e, 0x48, 0x6f, 0x73, 0x74, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x46, 0x69, 0x6e, 0x64,
+ 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65,
+ 0x73, 0x74, 0x1a, 0x30, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x76,
+ 0x31, 0x2e, 0x48, 0x6f, 0x73, 0x74, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x46, 0x69, 0x6e,
+ 0x64, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70,
+ 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x74, 0x0a, 0x0f, 0x53, 0x79, 0x73, 0x74, 0x72, 0x61, 0x79, 0x41,
+ 0x63, 0x74, 0x69, 0x76, 0x61, 0x74, 0x65, 0x12, 0x2f, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61,
+ 0x6e, 0x65, 0x6c, 0x2e, 0x76, 0x31, 0x2e, 0x48, 0x6f, 0x73, 0x74, 0x53, 0x65, 0x72, 0x76, 0x69,
+ 0x63, 0x65, 0x53, 0x79, 0x73, 0x74, 0x72, 0x61, 0x79, 0x41, 0x63, 0x74, 0x69, 0x76, 0x61, 0x74,
+ 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x30, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70,
+ 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x76, 0x31, 0x2e, 0x48, 0x6f, 0x73, 0x74, 0x53, 0x65, 0x72, 0x76,
+ 0x69, 0x63, 0x65, 0x53, 0x79, 0x73, 0x74, 0x72, 0x61, 0x79, 0x41, 0x63, 0x74, 0x69, 0x76, 0x61,
+ 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x8f, 0x01, 0x0a, 0x18, 0x53,
+ 0x79, 0x73, 0x74, 0x72, 0x61, 0x79, 0x53, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x61, 0x72, 0x79, 0x41,
+ 0x63, 0x74, 0x69, 0x76, 0x61, 0x74, 0x65, 0x12, 0x38, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61,
+ 0x6e, 0x65, 0x6c, 0x2e, 0x76, 0x31, 0x2e, 0x48, 0x6f, 0x73, 0x74, 0x53, 0x65, 0x72, 0x76, 0x69,
+ 0x63, 0x65, 0x53, 0x79, 0x73, 0x74, 0x72, 0x61, 0x79, 0x53, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x61,
+ 0x72, 0x79, 0x41, 0x63, 0x74, 0x69, 0x76, 0x61, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
+ 0x74, 0x1a, 0x39, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x76, 0x31,
0x2e, 0x48, 0x6f, 0x73, 0x74, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x53, 0x79, 0x73, 0x74,
- 0x72, 0x61, 0x79, 0x4d, 0x65, 0x6e, 0x75, 0x41, 0x62, 0x6f, 0x75, 0x74, 0x54, 0x6f, 0x53, 0x68,
- 0x6f, 0x77, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x37, 0x2e, 0x68, 0x79, 0x70, 0x72,
- 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x76, 0x31, 0x2e, 0x48, 0x6f, 0x73, 0x74, 0x53, 0x65, 0x72,
- 0x76, 0x69, 0x63, 0x65, 0x53, 0x79, 0x73, 0x74, 0x72, 0x61, 0x79, 0x4d, 0x65, 0x6e, 0x75, 0x41,
- 0x62, 0x6f, 0x75, 0x74, 0x54, 0x6f, 0x53, 0x68, 0x6f, 0x77, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
- 0x73, 0x65, 0x12, 0x77, 0x0a, 0x10, 0x53, 0x79, 0x73, 0x74, 0x72, 0x61, 0x79, 0x4d, 0x65, 0x6e,
- 0x75, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x30, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e,
+ 0x72, 0x61, 0x79, 0x53, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x61, 0x72, 0x79, 0x41, 0x63, 0x74, 0x69,
+ 0x76, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x6e, 0x0a, 0x0d,
+ 0x53, 0x79, 0x73, 0x74, 0x72, 0x61, 0x79, 0x53, 0x63, 0x72, 0x6f, 0x6c, 0x6c, 0x12, 0x2d, 0x2e,
+ 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x76, 0x31, 0x2e, 0x48, 0x6f, 0x73,
+ 0x74, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x53, 0x79, 0x73, 0x74, 0x72, 0x61, 0x79, 0x53,
+ 0x63, 0x72, 0x6f, 0x6c, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2e, 0x2e, 0x68,
+ 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x76, 0x31, 0x2e, 0x48, 0x6f, 0x73, 0x74,
+ 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x53, 0x79, 0x73, 0x74, 0x72, 0x61, 0x79, 0x53, 0x63,
+ 0x72, 0x6f, 0x6c, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x95, 0x01, 0x0a,
+ 0x1a, 0x53, 0x79, 0x73, 0x74, 0x72, 0x61, 0x79, 0x4d, 0x65, 0x6e, 0x75, 0x43, 0x6f, 0x6e, 0x74,
+ 0x65, 0x78, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x61, 0x74, 0x65, 0x12, 0x3a, 0x2e, 0x68, 0x79,
+ 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x76, 0x31, 0x2e, 0x48, 0x6f, 0x73, 0x74, 0x53,
+ 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x53, 0x79, 0x73, 0x74, 0x72, 0x61, 0x79, 0x4d, 0x65, 0x6e,
+ 0x75, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x61, 0x74, 0x65,
+ 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3b, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61,
+ 0x6e, 0x65, 0x6c, 0x2e, 0x76, 0x31, 0x2e, 0x48, 0x6f, 0x73, 0x74, 0x53, 0x65, 0x72, 0x76, 0x69,
+ 0x63, 0x65, 0x53, 0x79, 0x73, 0x74, 0x72, 0x61, 0x79, 0x4d, 0x65, 0x6e, 0x75, 0x43, 0x6f, 0x6e,
+ 0x74, 0x65, 0x78, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70,
+ 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x89, 0x01, 0x0a, 0x16, 0x53, 0x79, 0x73, 0x74, 0x72, 0x61, 0x79,
+ 0x4d, 0x65, 0x6e, 0x75, 0x41, 0x62, 0x6f, 0x75, 0x74, 0x54, 0x6f, 0x53, 0x68, 0x6f, 0x77, 0x12,
+ 0x36, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x76, 0x31, 0x2e, 0x48,
+ 0x6f, 0x73, 0x74, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x53, 0x79, 0x73, 0x74, 0x72, 0x61,
+ 0x79, 0x4d, 0x65, 0x6e, 0x75, 0x41, 0x62, 0x6f, 0x75, 0x74, 0x54, 0x6f, 0x53, 0x68, 0x6f, 0x77,
+ 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x37, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61,
+ 0x6e, 0x65, 0x6c, 0x2e, 0x76, 0x31, 0x2e, 0x48, 0x6f, 0x73, 0x74, 0x53, 0x65, 0x72, 0x76, 0x69,
+ 0x63, 0x65, 0x53, 0x79, 0x73, 0x74, 0x72, 0x61, 0x79, 0x4d, 0x65, 0x6e, 0x75, 0x41, 0x62, 0x6f,
+ 0x75, 0x74, 0x54, 0x6f, 0x53, 0x68, 0x6f, 0x77, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
+ 0x12, 0x77, 0x0a, 0x10, 0x53, 0x79, 0x73, 0x74, 0x72, 0x61, 0x79, 0x4d, 0x65, 0x6e, 0x75, 0x45,
+ 0x76, 0x65, 0x6e, 0x74, 0x12, 0x30, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c,
+ 0x2e, 0x76, 0x31, 0x2e, 0x48, 0x6f, 0x73, 0x74, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x53,
+ 0x79, 0x73, 0x74, 0x72, 0x61, 0x79, 0x4d, 0x65, 0x6e, 0x75, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52,
+ 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x31, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e,
0x65, 0x6c, 0x2e, 0x76, 0x31, 0x2e, 0x48, 0x6f, 0x73, 0x74, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63,
0x65, 0x53, 0x79, 0x73, 0x74, 0x72, 0x61, 0x79, 0x4d, 0x65, 0x6e, 0x75, 0x45, 0x76, 0x65, 0x6e,
- 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x31, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70,
+ 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x7d, 0x0a, 0x12, 0x4e, 0x6f, 0x74,
+ 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x64, 0x12,
+ 0x32, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x76, 0x31, 0x2e, 0x48,
+ 0x6f, 0x73, 0x74, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69,
+ 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x64, 0x52, 0x65, 0x71, 0x75,
+ 0x65, 0x73, 0x74, 0x1a, 0x33, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e,
+ 0x76, 0x31, 0x2e, 0x48, 0x6f, 0x73, 0x74, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x4e, 0x6f,
+ 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x64,
+ 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x7d, 0x0a, 0x12, 0x4e, 0x6f, 0x74, 0x69,
+ 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x32,
+ 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x76, 0x31, 0x2e, 0x48, 0x6f,
+ 0x73, 0x74, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63,
+ 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65,
+ 0x73, 0x74, 0x1a, 0x33, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x76,
+ 0x31, 0x2e, 0x48, 0x6f, 0x73, 0x74, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x4e, 0x6f, 0x74,
+ 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52,
+ 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x86, 0x01, 0x0a, 0x15, 0x41, 0x75, 0x64, 0x69,
+ 0x6f, 0x53, 0x69, 0x6e, 0x6b, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x41, 0x64, 0x6a, 0x75, 0x73,
+ 0x74, 0x12, 0x35, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x76, 0x31,
+ 0x2e, 0x48, 0x6f, 0x73, 0x74, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x75, 0x64, 0x69,
+ 0x6f, 0x53, 0x69, 0x6e, 0x6b, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x41, 0x64, 0x6a, 0x75, 0x73,
+ 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x36, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70,
0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x76, 0x31, 0x2e, 0x48, 0x6f, 0x73, 0x74, 0x53, 0x65, 0x72, 0x76,
- 0x69, 0x63, 0x65, 0x53, 0x79, 0x73, 0x74, 0x72, 0x61, 0x79, 0x4d, 0x65, 0x6e, 0x75, 0x45, 0x76,
- 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x7d, 0x0a, 0x12, 0x4e,
- 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6c, 0x6f, 0x73, 0x65,
- 0x64, 0x12, 0x32, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x76, 0x31,
- 0x2e, 0x48, 0x6f, 0x73, 0x74, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x4e, 0x6f, 0x74, 0x69,
- 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x64, 0x52, 0x65,
- 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x33, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65,
- 0x6c, 0x2e, 0x76, 0x31, 0x2e, 0x48, 0x6f, 0x73, 0x74, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65,
- 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6c, 0x6f, 0x73,
- 0x65, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x7d, 0x0a, 0x12, 0x4e, 0x6f,
- 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e,
- 0x12, 0x32, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x76, 0x31, 0x2e,
- 0x48, 0x6f, 0x73, 0x74, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x4e, 0x6f, 0x74, 0x69, 0x66,
- 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71,
- 0x75, 0x65, 0x73, 0x74, 0x1a, 0x33, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c,
- 0x2e, 0x76, 0x31, 0x2e, 0x48, 0x6f, 0x73, 0x74, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x4e,
- 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x63, 0x74, 0x69, 0x6f,
- 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x86, 0x01, 0x0a, 0x15, 0x41, 0x75,
- 0x64, 0x69, 0x6f, 0x53, 0x69, 0x6e, 0x6b, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x41, 0x64, 0x6a,
- 0x75, 0x73, 0x74, 0x12, 0x35, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e,
- 0x76, 0x31, 0x2e, 0x48, 0x6f, 0x73, 0x74, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x75,
- 0x64, 0x69, 0x6f, 0x53, 0x69, 0x6e, 0x6b, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x41, 0x64, 0x6a,
- 0x75, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x36, 0x2e, 0x68, 0x79, 0x70,
- 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x76, 0x31, 0x2e, 0x48, 0x6f, 0x73, 0x74, 0x53, 0x65,
- 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x75, 0x64, 0x69, 0x6f, 0x53, 0x69, 0x6e, 0x6b, 0x56, 0x6f,
- 0x6c, 0x75, 0x6d, 0x65, 0x41, 0x64, 0x6a, 0x75, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
- 0x73, 0x65, 0x12, 0x80, 0x01, 0x0a, 0x13, 0x41, 0x75, 0x64, 0x69, 0x6f, 0x53, 0x69, 0x6e, 0x6b,
- 0x4d, 0x75, 0x74, 0x65, 0x54, 0x6f, 0x67, 0x67, 0x6c, 0x65, 0x12, 0x33, 0x2e, 0x68, 0x79, 0x70,
- 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x76, 0x31, 0x2e, 0x48, 0x6f, 0x73, 0x74, 0x53, 0x65,
- 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x75, 0x64, 0x69, 0x6f, 0x53, 0x69, 0x6e, 0x6b, 0x4d, 0x75,
- 0x74, 0x65, 0x54, 0x6f, 0x67, 0x67, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a,
- 0x34, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x76, 0x31, 0x2e, 0x48,
+ 0x69, 0x63, 0x65, 0x41, 0x75, 0x64, 0x69, 0x6f, 0x53, 0x69, 0x6e, 0x6b, 0x56, 0x6f, 0x6c, 0x75,
+ 0x6d, 0x65, 0x41, 0x64, 0x6a, 0x75, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
+ 0x12, 0x80, 0x01, 0x0a, 0x13, 0x41, 0x75, 0x64, 0x69, 0x6f, 0x53, 0x69, 0x6e, 0x6b, 0x4d, 0x75,
+ 0x74, 0x65, 0x54, 0x6f, 0x67, 0x67, 0x6c, 0x65, 0x12, 0x33, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70,
+ 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x76, 0x31, 0x2e, 0x48, 0x6f, 0x73, 0x74, 0x53, 0x65, 0x72, 0x76,
+ 0x69, 0x63, 0x65, 0x41, 0x75, 0x64, 0x69, 0x6f, 0x53, 0x69, 0x6e, 0x6b, 0x4d, 0x75, 0x74, 0x65,
+ 0x54, 0x6f, 0x67, 0x67, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x34, 0x2e,
+ 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x76, 0x31, 0x2e, 0x48, 0x6f, 0x73,
+ 0x74, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x75, 0x64, 0x69, 0x6f, 0x53, 0x69, 0x6e,
+ 0x6b, 0x4d, 0x75, 0x74, 0x65, 0x54, 0x6f, 0x67, 0x67, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f,
+ 0x6e, 0x73, 0x65, 0x12, 0x8c, 0x01, 0x0a, 0x17, 0x41, 0x75, 0x64, 0x69, 0x6f, 0x53, 0x6f, 0x75,
+ 0x72, 0x63, 0x65, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x41, 0x64, 0x6a, 0x75, 0x73, 0x74, 0x12,
+ 0x37, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x76, 0x31, 0x2e, 0x48,
0x6f, 0x73, 0x74, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x75, 0x64, 0x69, 0x6f, 0x53,
- 0x69, 0x6e, 0x6b, 0x4d, 0x75, 0x74, 0x65, 0x54, 0x6f, 0x67, 0x67, 0x6c, 0x65, 0x52, 0x65, 0x73,
- 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x8c, 0x01, 0x0a, 0x17, 0x41, 0x75, 0x64, 0x69, 0x6f, 0x53,
0x6f, 0x75, 0x72, 0x63, 0x65, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x41, 0x64, 0x6a, 0x75, 0x73,
- 0x74, 0x12, 0x37, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x76, 0x31,
- 0x2e, 0x48, 0x6f, 0x73, 0x74, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x75, 0x64, 0x69,
- 0x6f, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x41, 0x64, 0x6a,
- 0x75, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x38, 0x2e, 0x68, 0x79, 0x70,
- 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x76, 0x31, 0x2e, 0x48, 0x6f, 0x73, 0x74, 0x53, 0x65,
- 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x75, 0x64, 0x69, 0x6f, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65,
- 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x41, 0x64, 0x6a, 0x75, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70,
- 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x86, 0x01, 0x0a, 0x15, 0x41, 0x75, 0x64, 0x69, 0x6f, 0x53, 0x6f,
- 0x75, 0x72, 0x63, 0x65, 0x4d, 0x75, 0x74, 0x65, 0x54, 0x6f, 0x67, 0x67, 0x6c, 0x65, 0x12, 0x35,
- 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x76, 0x31, 0x2e, 0x48, 0x6f,
- 0x73, 0x74, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x75, 0x64, 0x69, 0x6f, 0x53, 0x6f,
- 0x75, 0x72, 0x63, 0x65, 0x4d, 0x75, 0x74, 0x65, 0x54, 0x6f, 0x67, 0x67, 0x6c, 0x65, 0x52, 0x65,
- 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x36, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65,
- 0x6c, 0x2e, 0x76, 0x31, 0x2e, 0x48, 0x6f, 0x73, 0x74, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65,
- 0x41, 0x75, 0x64, 0x69, 0x6f, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x4d, 0x75, 0x74, 0x65, 0x54,
- 0x6f, 0x67, 0x67, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x77, 0x0a,
- 0x10, 0x42, 0x72, 0x69, 0x67, 0x68, 0x74, 0x6e, 0x65, 0x73, 0x73, 0x41, 0x64, 0x6a, 0x75, 0x73,
- 0x74, 0x12, 0x30, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x76, 0x31,
+ 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x38, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70,
+ 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x76, 0x31, 0x2e, 0x48, 0x6f, 0x73, 0x74, 0x53, 0x65, 0x72, 0x76,
+ 0x69, 0x63, 0x65, 0x41, 0x75, 0x64, 0x69, 0x6f, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x56, 0x6f,
+ 0x6c, 0x75, 0x6d, 0x65, 0x41, 0x64, 0x6a, 0x75, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
+ 0x73, 0x65, 0x12, 0x86, 0x01, 0x0a, 0x15, 0x41, 0x75, 0x64, 0x69, 0x6f, 0x53, 0x6f, 0x75, 0x72,
+ 0x63, 0x65, 0x4d, 0x75, 0x74, 0x65, 0x54, 0x6f, 0x67, 0x67, 0x6c, 0x65, 0x12, 0x35, 0x2e, 0x68,
+ 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x76, 0x31, 0x2e, 0x48, 0x6f, 0x73, 0x74,
+ 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x75, 0x64, 0x69, 0x6f, 0x53, 0x6f, 0x75, 0x72,
+ 0x63, 0x65, 0x4d, 0x75, 0x74, 0x65, 0x54, 0x6f, 0x67, 0x67, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75,
+ 0x65, 0x73, 0x74, 0x1a, 0x36, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e,
+ 0x76, 0x31, 0x2e, 0x48, 0x6f, 0x73, 0x74, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x75,
+ 0x64, 0x69, 0x6f, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x4d, 0x75, 0x74, 0x65, 0x54, 0x6f, 0x67,
+ 0x67, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x77, 0x0a, 0x10, 0x42,
+ 0x72, 0x69, 0x67, 0x68, 0x74, 0x6e, 0x65, 0x73, 0x73, 0x41, 0x64, 0x6a, 0x75, 0x73, 0x74, 0x12,
+ 0x30, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x76, 0x31, 0x2e, 0x48,
+ 0x6f, 0x73, 0x74, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x42, 0x72, 0x69, 0x67, 0x68, 0x74,
+ 0x6e, 0x65, 0x73, 0x73, 0x41, 0x64, 0x6a, 0x75, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
+ 0x74, 0x1a, 0x31, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x76, 0x31,
0x2e, 0x48, 0x6f, 0x73, 0x74, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x42, 0x72, 0x69, 0x67,
- 0x68, 0x74, 0x6e, 0x65, 0x73, 0x73, 0x41, 0x64, 0x6a, 0x75, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75,
- 0x65, 0x73, 0x74, 0x1a, 0x31, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e,
- 0x76, 0x31, 0x2e, 0x48, 0x6f, 0x73, 0x74, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x42, 0x72,
- 0x69, 0x67, 0x68, 0x74, 0x6e, 0x65, 0x73, 0x73, 0x41, 0x64, 0x6a, 0x75, 0x73, 0x74, 0x52, 0x65,
- 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x6b, 0x0a, 0x0c, 0x43, 0x61, 0x70, 0x74, 0x75, 0x72,
- 0x65, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x12, 0x2c, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e,
- 0x65, 0x6c, 0x2e, 0x76, 0x31, 0x2e, 0x48, 0x6f, 0x73, 0x74, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63,
- 0x65, 0x43, 0x61, 0x70, 0x74, 0x75, 0x72, 0x65, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x71,
- 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2d, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c,
+ 0x68, 0x74, 0x6e, 0x65, 0x73, 0x73, 0x41, 0x64, 0x6a, 0x75, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70,
+ 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x6b, 0x0a, 0x0c, 0x43, 0x61, 0x70, 0x74, 0x75, 0x72, 0x65, 0x46,
+ 0x72, 0x61, 0x6d, 0x65, 0x12, 0x2c, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c,
0x2e, 0x76, 0x31, 0x2e, 0x48, 0x6f, 0x73, 0x74, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x43,
- 0x61, 0x70, 0x74, 0x75, 0x72, 0x65, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f,
- 0x6e, 0x73, 0x65, 0x42, 0xac, 0x01, 0x0a, 0x10, 0x63, 0x6f, 0x6d, 0x2e, 0x68, 0x79, 0x70, 0x72,
- 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x76, 0x31, 0x42, 0x0e, 0x48, 0x79, 0x70, 0x72, 0x70, 0x61,
- 0x6e, 0x65, 0x6c, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x37, 0x67, 0x69, 0x74, 0x68,
- 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x70, 0x64, 0x66, 0x2f, 0x68, 0x79, 0x70, 0x72, 0x70,
- 0x61, 0x6e, 0x65, 0x6c, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x68, 0x79, 0x70, 0x72, 0x70,
- 0x61, 0x6e, 0x65, 0x6c, 0x2f, 0x76, 0x31, 0x3b, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65,
- 0x6c, 0x76, 0x31, 0xa2, 0x02, 0x03, 0x48, 0x58, 0x58, 0xaa, 0x02, 0x0c, 0x48, 0x79, 0x70, 0x72,
- 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x56, 0x31, 0xca, 0x02, 0x0c, 0x48, 0x79, 0x70, 0x72, 0x70,
- 0x61, 0x6e, 0x65, 0x6c, 0x5c, 0x56, 0x31, 0xe2, 0x02, 0x18, 0x48, 0x79, 0x70, 0x72, 0x70, 0x61,
- 0x6e, 0x65, 0x6c, 0x5c, 0x56, 0x31, 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61,
- 0x74, 0x61, 0xea, 0x02, 0x0d, 0x48, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x3a, 0x3a,
- 0x56, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
+ 0x61, 0x70, 0x74, 0x75, 0x72, 0x65, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65,
+ 0x73, 0x74, 0x1a, 0x2d, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x76,
+ 0x31, 0x2e, 0x48, 0x6f, 0x73, 0x74, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x43, 0x61, 0x70,
+ 0x74, 0x75, 0x72, 0x65, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
+ 0x65, 0x12, 0x75, 0x0a, 0x14, 0x49, 0x64, 0x6c, 0x65, 0x49, 0x6e, 0x68, 0x69, 0x62, 0x69, 0x74,
+ 0x6f, 0x72, 0x49, 0x6e, 0x68, 0x69, 0x62, 0x69, 0x74, 0x12, 0x2d, 0x2e, 0x68, 0x79, 0x70, 0x72,
+ 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x76, 0x31, 0x2e, 0x48, 0x6f, 0x73, 0x74, 0x53, 0x65, 0x72,
+ 0x76, 0x69, 0x63, 0x65, 0x49, 0x64, 0x6c, 0x65, 0x49, 0x6e, 0x68, 0x69, 0x62, 0x69, 0x74, 0x6f,
+ 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2e, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70,
+ 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x76, 0x31, 0x2e, 0x48, 0x6f, 0x73, 0x74, 0x53, 0x65, 0x72, 0x76,
+ 0x69, 0x63, 0x65, 0x49, 0x64, 0x6c, 0x65, 0x49, 0x6e, 0x68, 0x69, 0x62, 0x69, 0x74, 0x6f, 0x72,
+ 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x77, 0x0a, 0x16, 0x49, 0x64, 0x6c, 0x65,
+ 0x49, 0x6e, 0x68, 0x69, 0x62, 0x69, 0x74, 0x6f, 0x72, 0x55, 0x6e, 0x69, 0x6e, 0x68, 0x69, 0x62,
+ 0x69, 0x74, 0x12, 0x2d, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x76,
+ 0x31, 0x2e, 0x48, 0x6f, 0x73, 0x74, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x49, 0x64, 0x6c,
+ 0x65, 0x49, 0x6e, 0x68, 0x69, 0x62, 0x69, 0x74, 0x6f, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
+ 0x74, 0x1a, 0x2e, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x76, 0x31,
+ 0x2e, 0x48, 0x6f, 0x73, 0x74, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x49, 0x64, 0x6c, 0x65,
+ 0x49, 0x6e, 0x68, 0x69, 0x62, 0x69, 0x74, 0x6f, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
+ 0x65, 0x12, 0x71, 0x0a, 0x14, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72,
+ 0x50, 0x6c, 0x61, 0x79, 0x50, 0x61, 0x75, 0x73, 0x65, 0x12, 0x2b, 0x2e, 0x68, 0x79, 0x70, 0x72,
+ 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x76, 0x31, 0x2e, 0x48, 0x6f, 0x73, 0x74, 0x53, 0x65, 0x72,
+ 0x76, 0x69, 0x63, 0x65, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52,
+ 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2c, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e,
+ 0x65, 0x6c, 0x2e, 0x76, 0x31, 0x2e, 0x48, 0x6f, 0x73, 0x74, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63,
+ 0x65, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70,
+ 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x6c, 0x0a, 0x0f, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x50, 0x6c, 0x61,
+ 0x79, 0x65, 0x72, 0x50, 0x6c, 0x61, 0x79, 0x12, 0x2b, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61,
+ 0x6e, 0x65, 0x6c, 0x2e, 0x76, 0x31, 0x2e, 0x48, 0x6f, 0x73, 0x74, 0x53, 0x65, 0x72, 0x76, 0x69,
+ 0x63, 0x65, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52, 0x65, 0x71,
+ 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2c, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c,
+ 0x2e, 0x76, 0x31, 0x2e, 0x48, 0x6f, 0x73, 0x74, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x4d,
+ 0x65, 0x64, 0x69, 0x61, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
+ 0x73, 0x65, 0x12, 0x6d, 0x0a, 0x10, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x50, 0x6c, 0x61, 0x79, 0x65,
+ 0x72, 0x50, 0x61, 0x75, 0x73, 0x65, 0x12, 0x2b, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e,
+ 0x65, 0x6c, 0x2e, 0x76, 0x31, 0x2e, 0x48, 0x6f, 0x73, 0x74, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63,
+ 0x65, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75,
+ 0x65, 0x73, 0x74, 0x1a, 0x2c, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e,
+ 0x76, 0x31, 0x2e, 0x48, 0x6f, 0x73, 0x74, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x4d, 0x65,
+ 0x64, 0x69, 0x61, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
+ 0x65, 0x12, 0x6c, 0x0a, 0x0f, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72,
+ 0x53, 0x74, 0x6f, 0x70, 0x12, 0x2b, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c,
+ 0x2e, 0x76, 0x31, 0x2e, 0x48, 0x6f, 0x73, 0x74, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x4d,
+ 0x65, 0x64, 0x69, 0x61, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
+ 0x74, 0x1a, 0x2c, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x76, 0x31,
+ 0x2e, 0x48, 0x6f, 0x73, 0x74, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x4d, 0x65, 0x64, 0x69,
+ 0x61, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12,
+ 0x6c, 0x0a, 0x0f, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4e, 0x65,
+ 0x78, 0x74, 0x12, 0x2b, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x76,
+ 0x31, 0x2e, 0x48, 0x6f, 0x73, 0x74, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x4d, 0x65, 0x64,
+ 0x69, 0x61, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a,
+ 0x2c, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x76, 0x31, 0x2e, 0x48,
+ 0x6f, 0x73, 0x74, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x50,
+ 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x70, 0x0a,
+ 0x13, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x50, 0x72, 0x65, 0x76,
+ 0x69, 0x6f, 0x75, 0x73, 0x12, 0x2b, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c,
+ 0x2e, 0x76, 0x31, 0x2e, 0x48, 0x6f, 0x73, 0x74, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x4d,
+ 0x65, 0x64, 0x69, 0x61, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
+ 0x74, 0x1a, 0x2c, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x76, 0x31,
+ 0x2e, 0x48, 0x6f, 0x73, 0x74, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x4d, 0x65, 0x64, 0x69,
+ 0x61, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12,
+ 0x70, 0x0a, 0x0f, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x65,
+ 0x65, 0x6b, 0x12, 0x2f, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x76,
+ 0x31, 0x2e, 0x48, 0x6f, 0x73, 0x74, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x4d, 0x65, 0x64,
+ 0x69, 0x61, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x53, 0x65, 0x65, 0x6b, 0x52, 0x65, 0x71, 0x75,
+ 0x65, 0x73, 0x74, 0x1a, 0x2c, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e,
+ 0x76, 0x31, 0x2e, 0x48, 0x6f, 0x73, 0x74, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x4d, 0x65,
+ 0x64, 0x69, 0x61, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
+ 0x65, 0x12, 0x7d, 0x0a, 0x16, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72,
+ 0x53, 0x65, 0x74, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x35, 0x2e, 0x68, 0x79,
+ 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x76, 0x31, 0x2e, 0x48, 0x6f, 0x73, 0x74, 0x53,
+ 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x50, 0x6c, 0x61, 0x79, 0x65,
+ 0x72, 0x53, 0x65, 0x74, 0x50, 0x6f, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65,
+ 0x73, 0x74, 0x1a, 0x2c, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x2e, 0x76,
+ 0x31, 0x2e, 0x48, 0x6f, 0x73, 0x74, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x4d, 0x65, 0x64,
+ 0x69, 0x61, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
+ 0x42, 0xac, 0x01, 0x0a, 0x10, 0x63, 0x6f, 0x6d, 0x2e, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e,
+ 0x65, 0x6c, 0x2e, 0x76, 0x31, 0x42, 0x0e, 0x48, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c,
+ 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x37, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e,
+ 0x63, 0x6f, 0x6d, 0x2f, 0x70, 0x64, 0x66, 0x2f, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65,
+ 0x6c, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65,
+ 0x6c, 0x2f, 0x76, 0x31, 0x3b, 0x68, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x76, 0x31,
+ 0xa2, 0x02, 0x03, 0x48, 0x58, 0x58, 0xaa, 0x02, 0x0c, 0x48, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e,
+ 0x65, 0x6c, 0x2e, 0x56, 0x31, 0xca, 0x02, 0x0c, 0x48, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65,
+ 0x6c, 0x5c, 0x56, 0x31, 0xe2, 0x02, 0x18, 0x48, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c,
+ 0x5c, 0x56, 0x31, 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea,
+ 0x02, 0x0d, 0x48, 0x79, 0x70, 0x72, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x3a, 0x3a, 0x56, 0x31, 0x62,
+ 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}
var (
@@ -2765,7 +3123,7 @@ func file_hyprpanel_v1_hyprpanel_proto_rawDescGZIP() []byte {
}
var file_hyprpanel_v1_hyprpanel_proto_enumTypes = make([]protoimpl.EnumInfo, 3)
-var file_hyprpanel_v1_hyprpanel_proto_msgTypes = make([]protoimpl.MessageInfo, 43)
+var file_hyprpanel_v1_hyprpanel_proto_msgTypes = make([]protoimpl.MessageInfo, 49)
var file_hyprpanel_v1_hyprpanel_proto_goTypes = []interface{}{
(SystrayScrollOrientation)(0), // 0: hyprpanel.v1.SystrayScrollOrientation
(SystrayMenuEvent)(0), // 1: hyprpanel.v1.SystrayMenuEvent
@@ -2811,72 +3169,100 @@ var file_hyprpanel_v1_hyprpanel_proto_goTypes = []interface{}{
(*HostServiceBrightnessAdjustRequest)(nil), // 41: hyprpanel.v1.HostServiceBrightnessAdjustRequest
(*HostServiceBrightnessAdjustResponse)(nil), // 42: hyprpanel.v1.HostServiceBrightnessAdjustResponse
(*HostServiceCaptureFrameRequest)(nil), // 43: hyprpanel.v1.HostServiceCaptureFrameRequest
- (*HostServiceCaptureFrameResponse)(nil), // 44: hyprpanel.v1.HostServiceCaptureFrameResponse
- (*AppInfo_Action)(nil), // 45: hyprpanel.v1.AppInfo.Action
- (v1.LogLevel)(0), // 46: hyprpanel.config.v1.LogLevel
- (*v1.Panel)(nil), // 47: hyprpanel.config.v1.Panel
- (*v11.Event)(nil), // 48: hyprpanel.event.v1.Event
- (*anypb.Any)(nil), // 49: google.protobuf.Any
- (v11.Direction)(0), // 50: hyprpanel.event.v1.Direction
+ (*HostServiceIdleInhibitorRequest)(nil), // 44: hyprpanel.v1.HostServiceIdleInhibitorRequest
+ (*HostServiceIdleInhibitorResponse)(nil), // 45: hyprpanel.v1.HostServiceIdleInhibitorResponse
+ (*HostServiceCaptureFrameResponse)(nil), // 46: hyprpanel.v1.HostServiceCaptureFrameResponse
+ (*HostServiceMediaPlayerRequest)(nil), // 47: hyprpanel.v1.HostServiceMediaPlayerRequest
+ (*HostServiceMediaPlayerSeekRequest)(nil), // 48: hyprpanel.v1.HostServiceMediaPlayerSeekRequest
+ (*HostServiceMediaPlayerSetPostionRequest)(nil), // 49: hyprpanel.v1.HostServiceMediaPlayerSetPostionRequest
+ (*HostServiceMediaPlayerResponse)(nil), // 50: hyprpanel.v1.HostServiceMediaPlayerResponse
+ (*AppInfo_Action)(nil), // 51: hyprpanel.v1.AppInfo.Action
+ (v1.LogLevel)(0), // 52: hyprpanel.config.v1.LogLevel
+ (*v1.Panel)(nil), // 53: hyprpanel.config.v1.Panel
+ (*v11.Event)(nil), // 54: hyprpanel.event.v1.Event
+ (*anypb.Any)(nil), // 55: google.protobuf.Any
+ (v11.Direction)(0), // 56: hyprpanel.event.v1.Direction
+ (v11.InhibitTarget)(0), // 57: hyprpanel.event.v1.InhibitTarget
}
var file_hyprpanel_v1_hyprpanel_proto_depIdxs = []int32{
- 45, // 0: hyprpanel.v1.AppInfo.actions:type_name -> hyprpanel.v1.AppInfo.Action
- 46, // 1: hyprpanel.v1.PanelServiceInitRequest.log_level:type_name -> hyprpanel.config.v1.LogLevel
- 47, // 2: hyprpanel.v1.PanelServiceInitRequest.config:type_name -> hyprpanel.config.v1.Panel
- 48, // 3: hyprpanel.v1.PanelServiceNotifyRequest.event:type_name -> hyprpanel.event.v1.Event
- 45, // 4: hyprpanel.v1.HostServiceExecRequest.action:type_name -> hyprpanel.v1.AppInfo.Action
+ 51, // 0: hyprpanel.v1.AppInfo.actions:type_name -> hyprpanel.v1.AppInfo.Action
+ 52, // 1: hyprpanel.v1.PanelServiceInitRequest.log_level:type_name -> hyprpanel.config.v1.LogLevel
+ 53, // 2: hyprpanel.v1.PanelServiceInitRequest.config:type_name -> hyprpanel.config.v1.Panel
+ 54, // 3: hyprpanel.v1.PanelServiceNotifyRequest.event:type_name -> hyprpanel.event.v1.Event
+ 51, // 4: hyprpanel.v1.HostServiceExecRequest.action:type_name -> hyprpanel.v1.AppInfo.Action
4, // 5: hyprpanel.v1.HostServiceFindApplicationResponse.app_info:type_name -> hyprpanel.v1.AppInfo
0, // 6: hyprpanel.v1.HostServiceSystrayScrollRequest.orientation:type_name -> hyprpanel.v1.SystrayScrollOrientation
1, // 7: hyprpanel.v1.HostServiceSystrayMenuEventRequest.event_id:type_name -> hyprpanel.v1.SystrayMenuEvent
- 49, // 8: hyprpanel.v1.HostServiceSystrayMenuEventRequest.data:type_name -> google.protobuf.Any
+ 55, // 8: hyprpanel.v1.HostServiceSystrayMenuEventRequest.data:type_name -> google.protobuf.Any
2, // 9: hyprpanel.v1.HostServiceNotificationClosedRequest.reason:type_name -> hyprpanel.v1.NotificationClosedReason
- 50, // 10: hyprpanel.v1.HostServiceAudioSinkVolumeAdjustRequest.direction:type_name -> hyprpanel.event.v1.Direction
- 50, // 11: hyprpanel.v1.HostServiceAudioSourceVolumeAdjustRequest.direction:type_name -> hyprpanel.event.v1.Direction
- 50, // 12: hyprpanel.v1.HostServiceBrightnessAdjustRequest.direction:type_name -> hyprpanel.event.v1.Direction
- 3, // 13: hyprpanel.v1.HostServiceCaptureFrameResponse.image:type_name -> hyprpanel.v1.ImageNRGBA
- 5, // 14: hyprpanel.v1.PanelService.Init:input_type -> hyprpanel.v1.PanelServiceInitRequest
- 7, // 15: hyprpanel.v1.PanelService.Notify:input_type -> hyprpanel.v1.PanelServiceNotifyRequest
- 11, // 16: hyprpanel.v1.PanelService.Close:input_type -> hyprpanel.v1.PanelServiceCloseRequest
- 13, // 17: hyprpanel.v1.HostService.Exec:input_type -> hyprpanel.v1.HostServiceExecRequest
- 15, // 18: hyprpanel.v1.HostService.FindApplication:input_type -> hyprpanel.v1.HostServiceFindApplicationRequest
- 17, // 19: hyprpanel.v1.HostService.SystrayActivate:input_type -> hyprpanel.v1.HostServiceSystrayActivateRequest
- 19, // 20: hyprpanel.v1.HostService.SystraySecondaryActivate:input_type -> hyprpanel.v1.HostServiceSystraySecondaryActivateRequest
- 21, // 21: hyprpanel.v1.HostService.SystrayScroll:input_type -> hyprpanel.v1.HostServiceSystrayScrollRequest
- 23, // 22: hyprpanel.v1.HostService.SystrayMenuContextActivate:input_type -> hyprpanel.v1.HostServiceSystrayMenuContextActivateRequest
- 25, // 23: hyprpanel.v1.HostService.SystrayMenuAboutToShow:input_type -> hyprpanel.v1.HostServiceSystrayMenuAboutToShowRequest
- 27, // 24: hyprpanel.v1.HostService.SystrayMenuEvent:input_type -> hyprpanel.v1.HostServiceSystrayMenuEventRequest
- 29, // 25: hyprpanel.v1.HostService.NotificationClosed:input_type -> hyprpanel.v1.HostServiceNotificationClosedRequest
- 31, // 26: hyprpanel.v1.HostService.NotificationAction:input_type -> hyprpanel.v1.HostServiceNotificationActionRequest
- 33, // 27: hyprpanel.v1.HostService.AudioSinkVolumeAdjust:input_type -> hyprpanel.v1.HostServiceAudioSinkVolumeAdjustRequest
- 35, // 28: hyprpanel.v1.HostService.AudioSinkMuteToggle:input_type -> hyprpanel.v1.HostServiceAudioSinkMuteToggleRequest
- 37, // 29: hyprpanel.v1.HostService.AudioSourceVolumeAdjust:input_type -> hyprpanel.v1.HostServiceAudioSourceVolumeAdjustRequest
- 39, // 30: hyprpanel.v1.HostService.AudioSourceMuteToggle:input_type -> hyprpanel.v1.HostServiceAudioSourceMuteToggleRequest
- 41, // 31: hyprpanel.v1.HostService.BrightnessAdjust:input_type -> hyprpanel.v1.HostServiceBrightnessAdjustRequest
- 43, // 32: hyprpanel.v1.HostService.CaptureFrame:input_type -> hyprpanel.v1.HostServiceCaptureFrameRequest
- 6, // 33: hyprpanel.v1.PanelService.Init:output_type -> hyprpanel.v1.PanelServiceInitResponse
- 8, // 34: hyprpanel.v1.PanelService.Notify:output_type -> hyprpanel.v1.PanelServiceNotifyResponse
- 12, // 35: hyprpanel.v1.PanelService.Close:output_type -> hyprpanel.v1.PanelServiceCloseResponse
- 14, // 36: hyprpanel.v1.HostService.Exec:output_type -> hyprpanel.v1.HostServiceExecResponse
- 16, // 37: hyprpanel.v1.HostService.FindApplication:output_type -> hyprpanel.v1.HostServiceFindApplicationResponse
- 18, // 38: hyprpanel.v1.HostService.SystrayActivate:output_type -> hyprpanel.v1.HostServiceSystrayActivateResponse
- 20, // 39: hyprpanel.v1.HostService.SystraySecondaryActivate:output_type -> hyprpanel.v1.HostServiceSystraySecondaryActivateResponse
- 22, // 40: hyprpanel.v1.HostService.SystrayScroll:output_type -> hyprpanel.v1.HostServiceSystrayScrollResponse
- 24, // 41: hyprpanel.v1.HostService.SystrayMenuContextActivate:output_type -> hyprpanel.v1.HostServiceSystrayMenuContextActivateResponse
- 26, // 42: hyprpanel.v1.HostService.SystrayMenuAboutToShow:output_type -> hyprpanel.v1.HostServiceSystrayMenuAboutToShowResponse
- 28, // 43: hyprpanel.v1.HostService.SystrayMenuEvent:output_type -> hyprpanel.v1.HostServiceSystrayMenuEventResponse
- 30, // 44: hyprpanel.v1.HostService.NotificationClosed:output_type -> hyprpanel.v1.HostServiceNotificationClosedResponse
- 32, // 45: hyprpanel.v1.HostService.NotificationAction:output_type -> hyprpanel.v1.HostServiceNotificationActionResponse
- 34, // 46: hyprpanel.v1.HostService.AudioSinkVolumeAdjust:output_type -> hyprpanel.v1.HostServiceAudioSinkVolumeAdjustResponse
- 36, // 47: hyprpanel.v1.HostService.AudioSinkMuteToggle:output_type -> hyprpanel.v1.HostServiceAudioSinkMuteToggleResponse
- 38, // 48: hyprpanel.v1.HostService.AudioSourceVolumeAdjust:output_type -> hyprpanel.v1.HostServiceAudioSourceVolumeAdjustResponse
- 40, // 49: hyprpanel.v1.HostService.AudioSourceMuteToggle:output_type -> hyprpanel.v1.HostServiceAudioSourceMuteToggleResponse
- 42, // 50: hyprpanel.v1.HostService.BrightnessAdjust:output_type -> hyprpanel.v1.HostServiceBrightnessAdjustResponse
- 44, // 51: hyprpanel.v1.HostService.CaptureFrame:output_type -> hyprpanel.v1.HostServiceCaptureFrameResponse
- 33, // [33:52] is the sub-list for method output_type
- 14, // [14:33] is the sub-list for method input_type
- 14, // [14:14] is the sub-list for extension type_name
- 14, // [14:14] is the sub-list for extension extendee
- 0, // [0:14] is the sub-list for field type_name
+ 56, // 10: hyprpanel.v1.HostServiceAudioSinkVolumeAdjustRequest.direction:type_name -> hyprpanel.event.v1.Direction
+ 56, // 11: hyprpanel.v1.HostServiceAudioSourceVolumeAdjustRequest.direction:type_name -> hyprpanel.event.v1.Direction
+ 56, // 12: hyprpanel.v1.HostServiceBrightnessAdjustRequest.direction:type_name -> hyprpanel.event.v1.Direction
+ 57, // 13: hyprpanel.v1.HostServiceIdleInhibitorRequest.target:type_name -> hyprpanel.event.v1.InhibitTarget
+ 3, // 14: hyprpanel.v1.HostServiceCaptureFrameResponse.image:type_name -> hyprpanel.v1.ImageNRGBA
+ 5, // 15: hyprpanel.v1.PanelService.Init:input_type -> hyprpanel.v1.PanelServiceInitRequest
+ 7, // 16: hyprpanel.v1.PanelService.Notify:input_type -> hyprpanel.v1.PanelServiceNotifyRequest
+ 11, // 17: hyprpanel.v1.PanelService.Close:input_type -> hyprpanel.v1.PanelServiceCloseRequest
+ 13, // 18: hyprpanel.v1.HostService.Exec:input_type -> hyprpanel.v1.HostServiceExecRequest
+ 15, // 19: hyprpanel.v1.HostService.FindApplication:input_type -> hyprpanel.v1.HostServiceFindApplicationRequest
+ 17, // 20: hyprpanel.v1.HostService.SystrayActivate:input_type -> hyprpanel.v1.HostServiceSystrayActivateRequest
+ 19, // 21: hyprpanel.v1.HostService.SystraySecondaryActivate:input_type -> hyprpanel.v1.HostServiceSystraySecondaryActivateRequest
+ 21, // 22: hyprpanel.v1.HostService.SystrayScroll:input_type -> hyprpanel.v1.HostServiceSystrayScrollRequest
+ 23, // 23: hyprpanel.v1.HostService.SystrayMenuContextActivate:input_type -> hyprpanel.v1.HostServiceSystrayMenuContextActivateRequest
+ 25, // 24: hyprpanel.v1.HostService.SystrayMenuAboutToShow:input_type -> hyprpanel.v1.HostServiceSystrayMenuAboutToShowRequest
+ 27, // 25: hyprpanel.v1.HostService.SystrayMenuEvent:input_type -> hyprpanel.v1.HostServiceSystrayMenuEventRequest
+ 29, // 26: hyprpanel.v1.HostService.NotificationClosed:input_type -> hyprpanel.v1.HostServiceNotificationClosedRequest
+ 31, // 27: hyprpanel.v1.HostService.NotificationAction:input_type -> hyprpanel.v1.HostServiceNotificationActionRequest
+ 33, // 28: hyprpanel.v1.HostService.AudioSinkVolumeAdjust:input_type -> hyprpanel.v1.HostServiceAudioSinkVolumeAdjustRequest
+ 35, // 29: hyprpanel.v1.HostService.AudioSinkMuteToggle:input_type -> hyprpanel.v1.HostServiceAudioSinkMuteToggleRequest
+ 37, // 30: hyprpanel.v1.HostService.AudioSourceVolumeAdjust:input_type -> hyprpanel.v1.HostServiceAudioSourceVolumeAdjustRequest
+ 39, // 31: hyprpanel.v1.HostService.AudioSourceMuteToggle:input_type -> hyprpanel.v1.HostServiceAudioSourceMuteToggleRequest
+ 41, // 32: hyprpanel.v1.HostService.BrightnessAdjust:input_type -> hyprpanel.v1.HostServiceBrightnessAdjustRequest
+ 43, // 33: hyprpanel.v1.HostService.CaptureFrame:input_type -> hyprpanel.v1.HostServiceCaptureFrameRequest
+ 44, // 34: hyprpanel.v1.HostService.IdleInhibitorInhibit:input_type -> hyprpanel.v1.HostServiceIdleInhibitorRequest
+ 44, // 35: hyprpanel.v1.HostService.IdleInhibitorUninhibit:input_type -> hyprpanel.v1.HostServiceIdleInhibitorRequest
+ 47, // 36: hyprpanel.v1.HostService.MediaPlayerPlayPause:input_type -> hyprpanel.v1.HostServiceMediaPlayerRequest
+ 47, // 37: hyprpanel.v1.HostService.MediaPlayerPlay:input_type -> hyprpanel.v1.HostServiceMediaPlayerRequest
+ 47, // 38: hyprpanel.v1.HostService.MediaPlayerPause:input_type -> hyprpanel.v1.HostServiceMediaPlayerRequest
+ 47, // 39: hyprpanel.v1.HostService.MediaPlayerStop:input_type -> hyprpanel.v1.HostServiceMediaPlayerRequest
+ 47, // 40: hyprpanel.v1.HostService.MediaPlayerNext:input_type -> hyprpanel.v1.HostServiceMediaPlayerRequest
+ 47, // 41: hyprpanel.v1.HostService.MediaPlayerPrevious:input_type -> hyprpanel.v1.HostServiceMediaPlayerRequest
+ 48, // 42: hyprpanel.v1.HostService.MediaPlayerSeek:input_type -> hyprpanel.v1.HostServiceMediaPlayerSeekRequest
+ 49, // 43: hyprpanel.v1.HostService.MediaPlayerSetPosition:input_type -> hyprpanel.v1.HostServiceMediaPlayerSetPostionRequest
+ 6, // 44: hyprpanel.v1.PanelService.Init:output_type -> hyprpanel.v1.PanelServiceInitResponse
+ 8, // 45: hyprpanel.v1.PanelService.Notify:output_type -> hyprpanel.v1.PanelServiceNotifyResponse
+ 12, // 46: hyprpanel.v1.PanelService.Close:output_type -> hyprpanel.v1.PanelServiceCloseResponse
+ 14, // 47: hyprpanel.v1.HostService.Exec:output_type -> hyprpanel.v1.HostServiceExecResponse
+ 16, // 48: hyprpanel.v1.HostService.FindApplication:output_type -> hyprpanel.v1.HostServiceFindApplicationResponse
+ 18, // 49: hyprpanel.v1.HostService.SystrayActivate:output_type -> hyprpanel.v1.HostServiceSystrayActivateResponse
+ 20, // 50: hyprpanel.v1.HostService.SystraySecondaryActivate:output_type -> hyprpanel.v1.HostServiceSystraySecondaryActivateResponse
+ 22, // 51: hyprpanel.v1.HostService.SystrayScroll:output_type -> hyprpanel.v1.HostServiceSystrayScrollResponse
+ 24, // 52: hyprpanel.v1.HostService.SystrayMenuContextActivate:output_type -> hyprpanel.v1.HostServiceSystrayMenuContextActivateResponse
+ 26, // 53: hyprpanel.v1.HostService.SystrayMenuAboutToShow:output_type -> hyprpanel.v1.HostServiceSystrayMenuAboutToShowResponse
+ 28, // 54: hyprpanel.v1.HostService.SystrayMenuEvent:output_type -> hyprpanel.v1.HostServiceSystrayMenuEventResponse
+ 30, // 55: hyprpanel.v1.HostService.NotificationClosed:output_type -> hyprpanel.v1.HostServiceNotificationClosedResponse
+ 32, // 56: hyprpanel.v1.HostService.NotificationAction:output_type -> hyprpanel.v1.HostServiceNotificationActionResponse
+ 34, // 57: hyprpanel.v1.HostService.AudioSinkVolumeAdjust:output_type -> hyprpanel.v1.HostServiceAudioSinkVolumeAdjustResponse
+ 36, // 58: hyprpanel.v1.HostService.AudioSinkMuteToggle:output_type -> hyprpanel.v1.HostServiceAudioSinkMuteToggleResponse
+ 38, // 59: hyprpanel.v1.HostService.AudioSourceVolumeAdjust:output_type -> hyprpanel.v1.HostServiceAudioSourceVolumeAdjustResponse
+ 40, // 60: hyprpanel.v1.HostService.AudioSourceMuteToggle:output_type -> hyprpanel.v1.HostServiceAudioSourceMuteToggleResponse
+ 42, // 61: hyprpanel.v1.HostService.BrightnessAdjust:output_type -> hyprpanel.v1.HostServiceBrightnessAdjustResponse
+ 46, // 62: hyprpanel.v1.HostService.CaptureFrame:output_type -> hyprpanel.v1.HostServiceCaptureFrameResponse
+ 45, // 63: hyprpanel.v1.HostService.IdleInhibitorInhibit:output_type -> hyprpanel.v1.HostServiceIdleInhibitorResponse
+ 45, // 64: hyprpanel.v1.HostService.IdleInhibitorUninhibit:output_type -> hyprpanel.v1.HostServiceIdleInhibitorResponse
+ 50, // 65: hyprpanel.v1.HostService.MediaPlayerPlayPause:output_type -> hyprpanel.v1.HostServiceMediaPlayerResponse
+ 50, // 66: hyprpanel.v1.HostService.MediaPlayerPlay:output_type -> hyprpanel.v1.HostServiceMediaPlayerResponse
+ 50, // 67: hyprpanel.v1.HostService.MediaPlayerPause:output_type -> hyprpanel.v1.HostServiceMediaPlayerResponse
+ 50, // 68: hyprpanel.v1.HostService.MediaPlayerStop:output_type -> hyprpanel.v1.HostServiceMediaPlayerResponse
+ 50, // 69: hyprpanel.v1.HostService.MediaPlayerNext:output_type -> hyprpanel.v1.HostServiceMediaPlayerResponse
+ 50, // 70: hyprpanel.v1.HostService.MediaPlayerPrevious:output_type -> hyprpanel.v1.HostServiceMediaPlayerResponse
+ 50, // 71: hyprpanel.v1.HostService.MediaPlayerSeek:output_type -> hyprpanel.v1.HostServiceMediaPlayerResponse
+ 50, // 72: hyprpanel.v1.HostService.MediaPlayerSetPosition:output_type -> hyprpanel.v1.HostServiceMediaPlayerResponse
+ 44, // [44:73] is the sub-list for method output_type
+ 15, // [15:44] is the sub-list for method input_type
+ 15, // [15:15] is the sub-list for extension type_name
+ 15, // [15:15] is the sub-list for extension extendee
+ 0, // [0:15] is the sub-list for field type_name
}
func init() { file_hyprpanel_v1_hyprpanel_proto_init() }
@@ -3378,7 +3764,7 @@ func file_hyprpanel_v1_hyprpanel_proto_init() {
}
}
file_hyprpanel_v1_hyprpanel_proto_msgTypes[41].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*HostServiceCaptureFrameResponse); i {
+ switch v := v.(*HostServiceIdleInhibitorRequest); i {
case 0:
return &v.state
case 1:
@@ -3390,6 +3776,78 @@ func file_hyprpanel_v1_hyprpanel_proto_init() {
}
}
file_hyprpanel_v1_hyprpanel_proto_msgTypes[42].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*HostServiceIdleInhibitorResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_hyprpanel_v1_hyprpanel_proto_msgTypes[43].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*HostServiceCaptureFrameResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_hyprpanel_v1_hyprpanel_proto_msgTypes[44].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*HostServiceMediaPlayerRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_hyprpanel_v1_hyprpanel_proto_msgTypes[45].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*HostServiceMediaPlayerSeekRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_hyprpanel_v1_hyprpanel_proto_msgTypes[46].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*HostServiceMediaPlayerSetPostionRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_hyprpanel_v1_hyprpanel_proto_msgTypes[47].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*HostServiceMediaPlayerResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_hyprpanel_v1_hyprpanel_proto_msgTypes[48].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*AppInfo_Action); i {
case 0:
return &v.state
@@ -3408,7 +3866,7 @@ func file_hyprpanel_v1_hyprpanel_proto_init() {
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: file_hyprpanel_v1_hyprpanel_proto_rawDesc,
NumEnums: 3,
- NumMessages: 43,
+ NumMessages: 49,
NumExtensions: 0,
NumServices: 2,
},
diff --git a/proto/hyprpanel/v1/hyprpanel.proto b/proto/hyprpanel/v1/hyprpanel.proto
index 5362c14..a0a1792 100644
--- a/proto/hyprpanel/v1/hyprpanel.proto
+++ b/proto/hyprpanel/v1/hyprpanel.proto
@@ -181,10 +181,29 @@ message HostServiceCaptureFrameRequest {
int32 height = 3;
}
+message HostServiceIdleInhibitorRequest {
+ hyprpanel.event.v1.InhibitTarget target = 1;
+}
+
+message HostServiceIdleInhibitorResponse {}
+
message HostServiceCaptureFrameResponse {
ImageNRGBA image = 1;
}
+message HostServiceMediaPlayerRequest {}
+
+message HostServiceMediaPlayerSeekRequest {
+ int64 offset_us = 1;
+}
+
+message HostServiceMediaPlayerSetPostionRequest {
+ string track_id = 1;
+ int64 position_us = 2;
+}
+
+message HostServiceMediaPlayerResponse {}
+
service HostService {
rpc Exec(HostServiceExecRequest) returns (HostServiceExecResponse);
rpc FindApplication(HostServiceFindApplicationRequest) returns (HostServiceFindApplicationResponse);
@@ -202,4 +221,14 @@ service HostService {
rpc AudioSourceMuteToggle(HostServiceAudioSourceMuteToggleRequest) returns (HostServiceAudioSourceMuteToggleResponse);
rpc BrightnessAdjust(HostServiceBrightnessAdjustRequest) returns (HostServiceBrightnessAdjustResponse);
rpc CaptureFrame(HostServiceCaptureFrameRequest) returns (HostServiceCaptureFrameResponse);
+ rpc IdleInhibitorInhibit(HostServiceIdleInhibitorRequest) returns (HostServiceIdleInhibitorResponse);
+ rpc IdleInhibitorUninhibit(HostServiceIdleInhibitorRequest) returns (HostServiceIdleInhibitorResponse);
+ rpc MediaPlayerPlayPause(HostServiceMediaPlayerRequest) returns (HostServiceMediaPlayerResponse);
+ rpc MediaPlayerPlay(HostServiceMediaPlayerRequest) returns (HostServiceMediaPlayerResponse);
+ rpc MediaPlayerPause(HostServiceMediaPlayerRequest) returns (HostServiceMediaPlayerResponse);
+ rpc MediaPlayerStop(HostServiceMediaPlayerRequest) returns (HostServiceMediaPlayerResponse);
+ rpc MediaPlayerNext(HostServiceMediaPlayerRequest) returns (HostServiceMediaPlayerResponse);
+ rpc MediaPlayerPrevious(HostServiceMediaPlayerRequest) returns (HostServiceMediaPlayerResponse);
+ rpc MediaPlayerSeek(HostServiceMediaPlayerSeekRequest) returns (HostServiceMediaPlayerResponse);
+ rpc MediaPlayerSetPosition(HostServiceMediaPlayerSetPostionRequest) returns (HostServiceMediaPlayerResponse);
}
diff --git a/proto/hyprpanel/v1/hyprpanel_grpc.pb.go b/proto/hyprpanel/v1/hyprpanel_grpc.pb.go
index dd5efe8..a4942f1 100644
--- a/proto/hyprpanel/v1/hyprpanel_grpc.pb.go
+++ b/proto/hyprpanel/v1/hyprpanel_grpc.pb.go
@@ -199,6 +199,16 @@ const (
HostService_AudioSourceMuteToggle_FullMethodName = "/hyprpanel.v1.HostService/AudioSourceMuteToggle"
HostService_BrightnessAdjust_FullMethodName = "/hyprpanel.v1.HostService/BrightnessAdjust"
HostService_CaptureFrame_FullMethodName = "/hyprpanel.v1.HostService/CaptureFrame"
+ HostService_IdleInhibitorInhibit_FullMethodName = "/hyprpanel.v1.HostService/IdleInhibitorInhibit"
+ HostService_IdleInhibitorUninhibit_FullMethodName = "/hyprpanel.v1.HostService/IdleInhibitorUninhibit"
+ HostService_MediaPlayerPlayPause_FullMethodName = "/hyprpanel.v1.HostService/MediaPlayerPlayPause"
+ HostService_MediaPlayerPlay_FullMethodName = "/hyprpanel.v1.HostService/MediaPlayerPlay"
+ HostService_MediaPlayerPause_FullMethodName = "/hyprpanel.v1.HostService/MediaPlayerPause"
+ HostService_MediaPlayerStop_FullMethodName = "/hyprpanel.v1.HostService/MediaPlayerStop"
+ HostService_MediaPlayerNext_FullMethodName = "/hyprpanel.v1.HostService/MediaPlayerNext"
+ HostService_MediaPlayerPrevious_FullMethodName = "/hyprpanel.v1.HostService/MediaPlayerPrevious"
+ HostService_MediaPlayerSeek_FullMethodName = "/hyprpanel.v1.HostService/MediaPlayerSeek"
+ HostService_MediaPlayerSetPosition_FullMethodName = "/hyprpanel.v1.HostService/MediaPlayerSetPosition"
)
// HostServiceClient is the client API for HostService service.
@@ -221,6 +231,16 @@ type HostServiceClient interface {
AudioSourceMuteToggle(ctx context.Context, in *HostServiceAudioSourceMuteToggleRequest, opts ...grpc.CallOption) (*HostServiceAudioSourceMuteToggleResponse, error)
BrightnessAdjust(ctx context.Context, in *HostServiceBrightnessAdjustRequest, opts ...grpc.CallOption) (*HostServiceBrightnessAdjustResponse, error)
CaptureFrame(ctx context.Context, in *HostServiceCaptureFrameRequest, opts ...grpc.CallOption) (*HostServiceCaptureFrameResponse, error)
+ IdleInhibitorInhibit(ctx context.Context, in *HostServiceIdleInhibitorRequest, opts ...grpc.CallOption) (*HostServiceIdleInhibitorResponse, error)
+ IdleInhibitorUninhibit(ctx context.Context, in *HostServiceIdleInhibitorRequest, opts ...grpc.CallOption) (*HostServiceIdleInhibitorResponse, error)
+ MediaPlayerPlayPause(ctx context.Context, in *HostServiceMediaPlayerRequest, opts ...grpc.CallOption) (*HostServiceMediaPlayerResponse, error)
+ MediaPlayerPlay(ctx context.Context, in *HostServiceMediaPlayerRequest, opts ...grpc.CallOption) (*HostServiceMediaPlayerResponse, error)
+ MediaPlayerPause(ctx context.Context, in *HostServiceMediaPlayerRequest, opts ...grpc.CallOption) (*HostServiceMediaPlayerResponse, error)
+ MediaPlayerStop(ctx context.Context, in *HostServiceMediaPlayerRequest, opts ...grpc.CallOption) (*HostServiceMediaPlayerResponse, error)
+ MediaPlayerNext(ctx context.Context, in *HostServiceMediaPlayerRequest, opts ...grpc.CallOption) (*HostServiceMediaPlayerResponse, error)
+ MediaPlayerPrevious(ctx context.Context, in *HostServiceMediaPlayerRequest, opts ...grpc.CallOption) (*HostServiceMediaPlayerResponse, error)
+ MediaPlayerSeek(ctx context.Context, in *HostServiceMediaPlayerSeekRequest, opts ...grpc.CallOption) (*HostServiceMediaPlayerResponse, error)
+ MediaPlayerSetPosition(ctx context.Context, in *HostServiceMediaPlayerSetPostionRequest, opts ...grpc.CallOption) (*HostServiceMediaPlayerResponse, error)
}
type hostServiceClient struct {
@@ -375,6 +395,96 @@ func (c *hostServiceClient) CaptureFrame(ctx context.Context, in *HostServiceCap
return out, nil
}
+func (c *hostServiceClient) IdleInhibitorInhibit(ctx context.Context, in *HostServiceIdleInhibitorRequest, opts ...grpc.CallOption) (*HostServiceIdleInhibitorResponse, error) {
+ out := new(HostServiceIdleInhibitorResponse)
+ err := c.cc.Invoke(ctx, HostService_IdleInhibitorInhibit_FullMethodName, in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *hostServiceClient) IdleInhibitorUninhibit(ctx context.Context, in *HostServiceIdleInhibitorRequest, opts ...grpc.CallOption) (*HostServiceIdleInhibitorResponse, error) {
+ out := new(HostServiceIdleInhibitorResponse)
+ err := c.cc.Invoke(ctx, HostService_IdleInhibitorUninhibit_FullMethodName, in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *hostServiceClient) MediaPlayerPlayPause(ctx context.Context, in *HostServiceMediaPlayerRequest, opts ...grpc.CallOption) (*HostServiceMediaPlayerResponse, error) {
+ out := new(HostServiceMediaPlayerResponse)
+ err := c.cc.Invoke(ctx, HostService_MediaPlayerPlayPause_FullMethodName, in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *hostServiceClient) MediaPlayerPlay(ctx context.Context, in *HostServiceMediaPlayerRequest, opts ...grpc.CallOption) (*HostServiceMediaPlayerResponse, error) {
+ out := new(HostServiceMediaPlayerResponse)
+ err := c.cc.Invoke(ctx, HostService_MediaPlayerPlay_FullMethodName, in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *hostServiceClient) MediaPlayerPause(ctx context.Context, in *HostServiceMediaPlayerRequest, opts ...grpc.CallOption) (*HostServiceMediaPlayerResponse, error) {
+ out := new(HostServiceMediaPlayerResponse)
+ err := c.cc.Invoke(ctx, HostService_MediaPlayerPause_FullMethodName, in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *hostServiceClient) MediaPlayerStop(ctx context.Context, in *HostServiceMediaPlayerRequest, opts ...grpc.CallOption) (*HostServiceMediaPlayerResponse, error) {
+ out := new(HostServiceMediaPlayerResponse)
+ err := c.cc.Invoke(ctx, HostService_MediaPlayerStop_FullMethodName, in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *hostServiceClient) MediaPlayerNext(ctx context.Context, in *HostServiceMediaPlayerRequest, opts ...grpc.CallOption) (*HostServiceMediaPlayerResponse, error) {
+ out := new(HostServiceMediaPlayerResponse)
+ err := c.cc.Invoke(ctx, HostService_MediaPlayerNext_FullMethodName, in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *hostServiceClient) MediaPlayerPrevious(ctx context.Context, in *HostServiceMediaPlayerRequest, opts ...grpc.CallOption) (*HostServiceMediaPlayerResponse, error) {
+ out := new(HostServiceMediaPlayerResponse)
+ err := c.cc.Invoke(ctx, HostService_MediaPlayerPrevious_FullMethodName, in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *hostServiceClient) MediaPlayerSeek(ctx context.Context, in *HostServiceMediaPlayerSeekRequest, opts ...grpc.CallOption) (*HostServiceMediaPlayerResponse, error) {
+ out := new(HostServiceMediaPlayerResponse)
+ err := c.cc.Invoke(ctx, HostService_MediaPlayerSeek_FullMethodName, in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *hostServiceClient) MediaPlayerSetPosition(ctx context.Context, in *HostServiceMediaPlayerSetPostionRequest, opts ...grpc.CallOption) (*HostServiceMediaPlayerResponse, error) {
+ out := new(HostServiceMediaPlayerResponse)
+ err := c.cc.Invoke(ctx, HostService_MediaPlayerSetPosition_FullMethodName, in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
// HostServiceServer is the server API for HostService service.
// All implementations must embed UnimplementedHostServiceServer
// for forward compatibility
@@ -395,6 +505,16 @@ type HostServiceServer interface {
AudioSourceMuteToggle(context.Context, *HostServiceAudioSourceMuteToggleRequest) (*HostServiceAudioSourceMuteToggleResponse, error)
BrightnessAdjust(context.Context, *HostServiceBrightnessAdjustRequest) (*HostServiceBrightnessAdjustResponse, error)
CaptureFrame(context.Context, *HostServiceCaptureFrameRequest) (*HostServiceCaptureFrameResponse, error)
+ IdleInhibitorInhibit(context.Context, *HostServiceIdleInhibitorRequest) (*HostServiceIdleInhibitorResponse, error)
+ IdleInhibitorUninhibit(context.Context, *HostServiceIdleInhibitorRequest) (*HostServiceIdleInhibitorResponse, error)
+ MediaPlayerPlayPause(context.Context, *HostServiceMediaPlayerRequest) (*HostServiceMediaPlayerResponse, error)
+ MediaPlayerPlay(context.Context, *HostServiceMediaPlayerRequest) (*HostServiceMediaPlayerResponse, error)
+ MediaPlayerPause(context.Context, *HostServiceMediaPlayerRequest) (*HostServiceMediaPlayerResponse, error)
+ MediaPlayerStop(context.Context, *HostServiceMediaPlayerRequest) (*HostServiceMediaPlayerResponse, error)
+ MediaPlayerNext(context.Context, *HostServiceMediaPlayerRequest) (*HostServiceMediaPlayerResponse, error)
+ MediaPlayerPrevious(context.Context, *HostServiceMediaPlayerRequest) (*HostServiceMediaPlayerResponse, error)
+ MediaPlayerSeek(context.Context, *HostServiceMediaPlayerSeekRequest) (*HostServiceMediaPlayerResponse, error)
+ MediaPlayerSetPosition(context.Context, *HostServiceMediaPlayerSetPostionRequest) (*HostServiceMediaPlayerResponse, error)
mustEmbedUnimplementedHostServiceServer()
}
@@ -450,6 +570,36 @@ func (UnimplementedHostServiceServer) BrightnessAdjust(context.Context, *HostSer
func (UnimplementedHostServiceServer) CaptureFrame(context.Context, *HostServiceCaptureFrameRequest) (*HostServiceCaptureFrameResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method CaptureFrame not implemented")
}
+func (UnimplementedHostServiceServer) IdleInhibitorInhibit(context.Context, *HostServiceIdleInhibitorRequest) (*HostServiceIdleInhibitorResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method IdleInhibitorInhibit not implemented")
+}
+func (UnimplementedHostServiceServer) IdleInhibitorUninhibit(context.Context, *HostServiceIdleInhibitorRequest) (*HostServiceIdleInhibitorResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method IdleInhibitorUninhibit not implemented")
+}
+func (UnimplementedHostServiceServer) MediaPlayerPlayPause(context.Context, *HostServiceMediaPlayerRequest) (*HostServiceMediaPlayerResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method MediaPlayerPlayPause not implemented")
+}
+func (UnimplementedHostServiceServer) MediaPlayerPlay(context.Context, *HostServiceMediaPlayerRequest) (*HostServiceMediaPlayerResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method MediaPlayerPlay not implemented")
+}
+func (UnimplementedHostServiceServer) MediaPlayerPause(context.Context, *HostServiceMediaPlayerRequest) (*HostServiceMediaPlayerResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method MediaPlayerPause not implemented")
+}
+func (UnimplementedHostServiceServer) MediaPlayerStop(context.Context, *HostServiceMediaPlayerRequest) (*HostServiceMediaPlayerResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method MediaPlayerStop not implemented")
+}
+func (UnimplementedHostServiceServer) MediaPlayerNext(context.Context, *HostServiceMediaPlayerRequest) (*HostServiceMediaPlayerResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method MediaPlayerNext not implemented")
+}
+func (UnimplementedHostServiceServer) MediaPlayerPrevious(context.Context, *HostServiceMediaPlayerRequest) (*HostServiceMediaPlayerResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method MediaPlayerPrevious not implemented")
+}
+func (UnimplementedHostServiceServer) MediaPlayerSeek(context.Context, *HostServiceMediaPlayerSeekRequest) (*HostServiceMediaPlayerResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method MediaPlayerSeek not implemented")
+}
+func (UnimplementedHostServiceServer) MediaPlayerSetPosition(context.Context, *HostServiceMediaPlayerSetPostionRequest) (*HostServiceMediaPlayerResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method MediaPlayerSetPosition not implemented")
+}
func (UnimplementedHostServiceServer) mustEmbedUnimplementedHostServiceServer() {}
// UnsafeHostServiceServer may be embedded to opt out of forward compatibility for this service.
@@ -751,6 +901,186 @@ func _HostService_CaptureFrame_Handler(srv interface{}, ctx context.Context, dec
return interceptor(ctx, in, info, handler)
}
+func _HostService_IdleInhibitorInhibit_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(HostServiceIdleInhibitorRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(HostServiceServer).IdleInhibitorInhibit(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: HostService_IdleInhibitorInhibit_FullMethodName,
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(HostServiceServer).IdleInhibitorInhibit(ctx, req.(*HostServiceIdleInhibitorRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _HostService_IdleInhibitorUninhibit_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(HostServiceIdleInhibitorRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(HostServiceServer).IdleInhibitorUninhibit(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: HostService_IdleInhibitorUninhibit_FullMethodName,
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(HostServiceServer).IdleInhibitorUninhibit(ctx, req.(*HostServiceIdleInhibitorRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _HostService_MediaPlayerPlayPause_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(HostServiceMediaPlayerRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(HostServiceServer).MediaPlayerPlayPause(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: HostService_MediaPlayerPlayPause_FullMethodName,
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(HostServiceServer).MediaPlayerPlayPause(ctx, req.(*HostServiceMediaPlayerRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _HostService_MediaPlayerPlay_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(HostServiceMediaPlayerRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(HostServiceServer).MediaPlayerPlay(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: HostService_MediaPlayerPlay_FullMethodName,
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(HostServiceServer).MediaPlayerPlay(ctx, req.(*HostServiceMediaPlayerRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _HostService_MediaPlayerPause_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(HostServiceMediaPlayerRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(HostServiceServer).MediaPlayerPause(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: HostService_MediaPlayerPause_FullMethodName,
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(HostServiceServer).MediaPlayerPause(ctx, req.(*HostServiceMediaPlayerRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _HostService_MediaPlayerStop_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(HostServiceMediaPlayerRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(HostServiceServer).MediaPlayerStop(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: HostService_MediaPlayerStop_FullMethodName,
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(HostServiceServer).MediaPlayerStop(ctx, req.(*HostServiceMediaPlayerRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _HostService_MediaPlayerNext_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(HostServiceMediaPlayerRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(HostServiceServer).MediaPlayerNext(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: HostService_MediaPlayerNext_FullMethodName,
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(HostServiceServer).MediaPlayerNext(ctx, req.(*HostServiceMediaPlayerRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _HostService_MediaPlayerPrevious_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(HostServiceMediaPlayerRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(HostServiceServer).MediaPlayerPrevious(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: HostService_MediaPlayerPrevious_FullMethodName,
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(HostServiceServer).MediaPlayerPrevious(ctx, req.(*HostServiceMediaPlayerRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _HostService_MediaPlayerSeek_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(HostServiceMediaPlayerSeekRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(HostServiceServer).MediaPlayerSeek(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: HostService_MediaPlayerSeek_FullMethodName,
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(HostServiceServer).MediaPlayerSeek(ctx, req.(*HostServiceMediaPlayerSeekRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _HostService_MediaPlayerSetPosition_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(HostServiceMediaPlayerSetPostionRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(HostServiceServer).MediaPlayerSetPosition(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: HostService_MediaPlayerSetPosition_FullMethodName,
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(HostServiceServer).MediaPlayerSetPosition(ctx, req.(*HostServiceMediaPlayerSetPostionRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
// HostService_ServiceDesc is the grpc.ServiceDesc for HostService service.
// It's only intended for direct use with grpc.RegisterService,
// and not to be introspected or modified (even as a copy)
@@ -822,6 +1152,46 @@ var HostService_ServiceDesc = grpc.ServiceDesc{
MethodName: "CaptureFrame",
Handler: _HostService_CaptureFrame_Handler,
},
+ {
+ MethodName: "IdleInhibitorInhibit",
+ Handler: _HostService_IdleInhibitorInhibit_Handler,
+ },
+ {
+ MethodName: "IdleInhibitorUninhibit",
+ Handler: _HostService_IdleInhibitorUninhibit_Handler,
+ },
+ {
+ MethodName: "MediaPlayerPlayPause",
+ Handler: _HostService_MediaPlayerPlayPause_Handler,
+ },
+ {
+ MethodName: "MediaPlayerPlay",
+ Handler: _HostService_MediaPlayerPlay_Handler,
+ },
+ {
+ MethodName: "MediaPlayerPause",
+ Handler: _HostService_MediaPlayerPause_Handler,
+ },
+ {
+ MethodName: "MediaPlayerStop",
+ Handler: _HostService_MediaPlayerStop_Handler,
+ },
+ {
+ MethodName: "MediaPlayerNext",
+ Handler: _HostService_MediaPlayerNext_Handler,
+ },
+ {
+ MethodName: "MediaPlayerPrevious",
+ Handler: _HostService_MediaPlayerPrevious_Handler,
+ },
+ {
+ MethodName: "MediaPlayerSeek",
+ Handler: _HostService_MediaPlayerSeek_Handler,
+ },
+ {
+ MethodName: "MediaPlayerSetPosition",
+ Handler: _HostService_MediaPlayerSetPosition_Handler,
+ },
},
Streams: []grpc.StreamDesc{},
Metadata: "hyprpanel/v1/hyprpanel.proto",
diff --git a/style/default.css b/style/default.css
index 808f0cf..dcaabdd 100644
--- a/style/default.css
+++ b/style/default.css
@@ -10,220 +10,252 @@
flowbox,
flowboxchild {
- padding: 0;
+ padding: 0;
}
#panel {
- background-color: @PanelBackground;
+ background-color: @PanelBackground;
}
#panel.top {
- border-bottom: @Border 1px solid;
+ border-bottom: @Border 1px solid;
}
#panel.right {
- border-left: @Border 1px solid;
+ border-left: @Border 1px solid;
}
#panel.bottom {
- border-top: @Border 1px solid;
+ border-top: @Border 1px solid;
}
#panel.left {
- border-right: @Border 1px solid;
+ border-right: @Border 1px solid;
}
.module {
- background-color: @ModuleBackground;
+ background-color: @ModuleBackground;
}
.top .module {
- border-radius: 0 0 8px 8px;
+ border-radius: 0 0 8px 8px;
}
.right .module {
- border-radius: 8px 0 0 8px;
+ border-radius: 8px 0 0 8px;
}
.bottom .module {
- border-radius: 8px 8px 0 0;
+ border-radius: 8px 8px 0 0;
}
.left .module {
- border-radius: 0 8px 8px 0;
+ border-radius: 0 8px 8px 0;
}
#pager .workspace {
- background-color: alpha(@ModuleBackground, 0.3);
- border: @Border 1px solid;
- border-radius: 4px;
- transition: background-color 300ms ease-in-out, border 300ms ease-in-out;
+ background-color: alpha(@ModuleBackground, 0.3);
+ border: @Border 1px solid;
+ border-radius: 4px;
+ transition:
+ background-color 300ms ease-in-out,
+ border 300ms ease-in-out;
}
#pager .workspace.live {
- background-color: alpha(@Highlight, 0.2);
- transition: background-color 300ms ease-in-out;
+ background-color: alpha(@Highlight, 0.2);
+ transition: background-color 300ms ease-in-out;
}
#pager .workspace.active {
- border: alpha(@Highlight, 0.8) 1px solid;
- transition: border 300ms ease-in-out;
+ border: alpha(@Highlight, 0.8) 1px solid;
+ transition: border 300ms ease-in-out;
}
#pager .workspace .workspaceLabel {
- background-color: alpha(@ModuleBackground, 0.8);
- font-size: 10px;
+ background-color: alpha(@ModuleBackground, 0.8);
+ font-size: 10px;
}
#pager .workspace .client {
- border: alpha(@Highlight, 0.4) 1px solid;
- background-color: alpha(@Highlight, 0.3);
- border-radius: 4px;
- transition: background-color 300ms ease-in-out, border 300ms ease-in-out;
+ border: alpha(@Highlight, 0.4) 1px solid;
+ background-color: alpha(@Highlight, 0.3);
+ border-radius: 4px;
+ transition:
+ background-color 300ms ease-in-out,
+ border 300ms ease-in-out;
}
#pager .workspace .client.active {
- border: alpha(@Highlight, 0.9) 1px solid;
- background-color: alpha(@Highlight, 0.7);
- transition: background-color 300ms ease-in-out, border 300ms ease-in-out;
+ border: alpha(@Highlight, 0.9) 1px solid;
+ background-color: alpha(@Highlight, 0.7);
+ transition:
+ background-color 300ms ease-in-out,
+ border 300ms ease-in-out;
}
#taskbar .client {
- border: rgba(0, 0, 0, 0) 1px solid;
- border-radius: 4px;
- transition: background-color 150ms ease-in-out, border 150ms ease-in-out;
+ border: rgba(0, 0, 0, 0) 1px solid;
+ border-radius: 4px;
+ transition:
+ background-color 150ms ease-in-out,
+ border 150ms ease-in-out;
}
#taskbar .client.hover {
- border: alpha(@Highlight, 0.3) 1px solid;
- background-color: alpha(@Highlight, 0.3);
- transition: background-color 150ms ease-in-out, border 150ms ease-in-out;
+ border: alpha(@Highlight, 0.3) 1px solid;
+ background-color: alpha(@Highlight, 0.3);
+ transition:
+ background-color 150ms ease-in-out,
+ border 150ms ease-in-out;
}
#taskbar .client.active {
- border: alpha(@Highlight, 0.6) 1px solid;
- background-color: alpha(@Highlight, 0.6);
- transition: background-color 150ms ease-in-out, border 150ms ease-in-out;
+ border: alpha(@Highlight, 0.6) 1px solid;
+ background-color: alpha(@Highlight, 0.6);
+ transition:
+ background-color 150ms ease-in-out,
+ border 150ms ease-in-out;
}
#taskbar .indicator {
- border: lighter(alpha(@Indicator, 0.9)) 1px solid;
- border-radius: 2px;
- background-color: @Indicator;
+ border: lighter(alpha(@Indicator, 0.9)) 1px solid;
+ border-radius: 2px;
+ background-color: @Indicator;
}
/* Text sizing in GTK sucks, let the user deal with it */
#clock #clockTime {
- font-size: 1.2rem;
- font-weight: 500;
+ font-size: 1.2rem;
+ font-weight: 500;
}
#clock #clockDate {
- font-size: 0.6rem;
+ font-size: 0.6rem;
}
#sessionOverlay {
- background-color: alpha(@PanelBackground, 0.7);
- font-size: 2rem;
+ background-color: alpha(@PanelBackground, 0.7);
+ font-size: 2rem;
}
#sessionOverlay button {
- border-radius: 20px;
+ border-radius: 20px;
}
#spacer {
- background-color: rgba(0, 0, 0, 0);
+ background-color: rgba(0, 0, 0, 0);
}
#audio .overlay {
- border: alpha(@Highlight, 0.90) 2px solid;
- border-radius: 2px;
- background-color: alpha(@PanelBackground, 0.95);
- transition: border 300ms ease-in-out;
+ border: alpha(@Highlight, 0.9) 2px solid;
+ border-radius: 2px;
+ background-color: alpha(@PanelBackground, 0.95);
+ transition: border 300ms ease-in-out;
}
#audio .disabled {
- border: alpha(@Border, 0.90) 2px solid;
- transition: border 300ms ease-in-out;
+ border: alpha(@Border, 0.9) 2px solid;
+ transition: border 300ms ease-in-out;
}
#notificationsOverlay {
- background-color: rgba(0, 0, 0, 0);
+ background-color: rgba(0, 0, 0, 0);
}
.notification {
- border: @Border 1px solid;
- border-width: 2px;
- background-color: alpha(@NotificationBackground, 0.7);
- border-radius: 16px;
- transition: background-color 300ms ease-in-out;
+ border: @Border 1px solid;
+ border-width: 2px;
+ background-color: alpha(@NotificationBackground, 0.7);
+ border-radius: 16px;
+ transition: background-color 300ms ease-in-out;
}
.notification.hover {
- background-color: @NotificationBackground;
- transition: background-color 300ms ease-in-out;
+ background-color: @NotificationBackground;
+ transition: background-color 300ms ease-in-out;
}
.notification .notificationIcon {
- margin: 8px 0px 8px 8px;
+ margin: 8px 0px 8px 8px;
}
.notification .notificationSummary {
- margin: 8px 12px 0px 12px;
+ margin: 8px 12px 0px 12px;
}
.notification .notificationBody {
- margin: 8px 12px 12px 12px;
+ margin: 8px 12px 12px 12px;
}
.notification button {
- border-radius: 0;
- border: 0;
+ border-radius: 0;
+ border: 0;
}
.notification .notificationActions button:first-child {
- border-bottom-left-radius: 16px;
+ border-bottom-left-radius: 16px;
}
.notification .notificationActions button:last-child {
- border-bottom-right-radius: 16px;
+ border-bottom-right-radius: 16px;
}
#hudOverlay {
- background-color: rgba(0, 0, 0, 0);
+ background-color: rgba(0, 0, 0, 0);
}
.hudNotification {
- border: @Border 1px solid;
- border-width: 2px;
- background-color: alpha(@NotificationBackground, 0.7);
- border-radius: 16px;
- transition: background-color 300ms ease-in-out;
+ border: @Border 1px solid;
+ border-width: 2px;
+ background-color: alpha(@NotificationBackground, 0.7);
+ border-radius: 16px;
+ transition: background-color 300ms ease-in-out;
}
.hudNotification .hudIcon {
- margin: 16px;
+ margin: 16px;
}
.hudNotification .hudTitle {
- margin: 0px 12px 0px 12px;
+ margin: 0px 12px 0px 12px;
}
.hudNotification .hudBody {
- margin: 8px 12px 16px 12px;
+ margin: 8px 12px 16px 12px;
}
.hudNotification .hudPercent {
- margin: 0px 12px 16px 12px;
- font-size: 2rem;
+ margin: 0px 12px 16px 12px;
+ font-size: 2rem;
}
.tooltipImage {
- margin: 8px;
- padding: 0;
+ margin: 8px;
+ padding: 0;
}
.tooltipSubtitle {
- background-color: alpha(@NotificationBackground, 0.7);
- border-radius: 4px;
-}
\ No newline at end of file
+ background-color: alpha(@NotificationBackground, 0.7);
+ border-radius: 4px;
+}
+
+.mediaPlayerButton {
+ min-width: 56px;
+ min-height: 56px;
+ background-color: @Highlight;
+ border-radius: 999px;
+}
+
+.mediaPlayerButton image {
+ -gtk-icon-size: 32px;
+}
+
+.mediaPlayerTitle {
+ font-weight: bold;
+ font-size: 1.1em;
+}
+
+.mediaPlayerArtist {
+ opacity: 0.7;
+}
diff --git a/style/style.go b/style/style.go
index 0ca6c31..f73d33a 100644
--- a/style/style.go
+++ b/style/style.go
@@ -41,6 +41,10 @@ const (
HudID = `hud`
// HudOverlayID element identifier.
HudOverlayID = `hudOverlay`
+ // IdleID element identifier.
+ IdleInhibitorID = `idleInhibitor`
+ // MediaPlayerID element identifier.
+ MediaPlayerID = `mediaPlayer`
// ModuleClass class name.
ModuleClass = `module`
@@ -84,6 +88,12 @@ const (
HudPercentClass = `hudPercent`
// HudGaugeClass class name.
HudGaugeClass = `hudGauge`
+ // MediaPlayerButtonClass class name.
+ MediaPlayerButtonClass = `mediaPlayerButton`
+ // MediaPlayerTitleClass class name.
+ MediaPlayerTitleClass = `mediaPlayerTitle`
+ // MediaPlayerArtistClass class name.
+ MediaPlayerArtistClass = `mediaPlayerArtist`
// TooltipImageClass class name.
TooltipImageClass = `tooltipImage`