| 1 | package main |
| 2 | |
| 3 | import ( |
| 4 | "charm.land/bubbles/v2/key" |
| 5 | sharedtui "github.com/stevedylandev/andromeda/pkg/tui" |
| 6 | ) |
| 7 | |
| 8 | type tuiKeyMap struct { |
| 9 | sharedtui.KeyMap |
| 10 | Upload key.Binding |
| 11 | Buckets key.Binding |
| 12 | Preview key.Binding |
| 13 | CopyKey key.Binding |
| 14 | } |
| 15 | |
| 16 | func defaultTUIKeys() tuiKeyMap { |
| 17 | return tuiKeyMap{ |
| 18 | KeyMap: sharedtui.DefaultKeys(), |
| 19 | Upload: key.NewBinding(key.WithKeys("u"), key.WithHelp("u", "upload")), |
| 20 | Buckets: key.NewBinding(key.WithKeys("b"), key.WithHelp("b", "buckets")), |
| 21 | Preview: key.NewBinding(key.WithKeys(" "), key.WithHelp("space", "toggle preview")), |
| 22 | CopyKey: key.NewBinding(key.WithKeys("K"), key.WithHelp("K", "copy key")), |
| 23 | } |
| 24 | } |
| 25 | |
| 26 | func (k tuiKeyMap) ShortHelp() []key.Binding { |
| 27 | return []key.Binding{k.Open, k.Back, k.Copy, k.CopyLink, k.OpenBrowser, k.Upload, k.Delete, k.Quit, k.Help} |
| 28 | } |
| 29 | |
| 30 | func (k tuiKeyMap) FullHelp() [][]key.Binding { |
| 31 | return [][]key.Binding{ |
| 32 | {k.Open, k.Back, k.Buckets, k.Refresh}, |
| 33 | {k.Copy, k.CopyLink, k.CopyKey, k.OpenBrowser}, |
| 34 | {k.Upload, k.Delete, k.Preview, k.Help}, |
| 35 | {k.ScrollUp, k.ScrollDown, k.Quit}, |
| 36 | } |
| 37 | } |