1package splash
2
3import (
4 "github.com/charmbracelet/bubbles/v2/key"
5)
6
7type KeyMap struct {
8 Select,
9 Next,
10 Previous,
11 Yes,
12 No,
13 Tab,
14 LeftRight key.Binding
15}
16
17func DefaultKeyMap() KeyMap {
18 return KeyMap{
19 Select: key.NewBinding(
20 key.WithKeys("enter", "ctrl+y"),
21 key.WithHelp("enter", "confirm"),
22 ),
23 Next: key.NewBinding(
24 key.WithKeys("down", "ctrl+n"),
25 key.WithHelp("↓", "next item"),
26 ),
27 Previous: key.NewBinding(
28 key.WithKeys("up", "ctrl+p"),
29 key.WithHelp("↑", "previous item"),
30 ),
31 Yes: key.NewBinding(
32 key.WithKeys("y"),
33 key.WithHelp("y", "yes"),
34 ),
35 No: key.NewBinding(
36 key.WithKeys("n"),
37 key.WithHelp("n", "no"),
38 ),
39 Tab: key.NewBinding(
40 key.WithKeys("tab"),
41 key.WithHelp("tab", "switch"),
42 ),
43 LeftRight: key.NewBinding(
44 key.WithKeys("left", "right"),
45 key.WithHelp("←/→", "switch"),
46 ),
47 }
48}