keys.go

 1package mcp
 2
 3import (
 4	"github.com/charmbracelet/bubbles/v2/key"
 5)
 6
 7type KeyMap struct {
 8	Close  key.Binding
 9	Select key.Binding
10}
11
12func DefaultKeyMap() KeyMap {
13	return KeyMap{
14		Close: key.NewBinding(
15			key.WithKeys("esc"),
16			key.WithHelp("esc", "close"),
17		),
18		Select: key.NewBinding(
19			key.WithKeys("enter"),
20			key.WithHelp("enter", "select"),
21		),
22	}
23}
24
25func (k KeyMap) ShortHelp() []key.Binding {
26	return []key.Binding{k.Select, k.Close}
27}
28
29func (k KeyMap) FullHelp() [][]key.Binding {
30	return [][]key.Binding{
31		{k.Select, k.Close},
32	}
33}