UI Refresh

This commit is contained in:
2026-03-03 02:29:34 -05:00
parent cb77df0eb6
commit 95a4f755cb
13 changed files with 2541 additions and 539 deletions

View File

@@ -4,16 +4,23 @@ import "github.com/charmbracelet/bubbles/key"
// GlobalKeyMap holds keybindings that work from any tab.
type GlobalKeyMap struct {
Tab1 key.Binding
Tab2 key.Binding
Tab3 key.Binding
Tab4 key.Binding
Quit key.Binding
Up key.Binding
Down key.Binding
Enter key.Binding
Back key.Binding
Year key.Binding
Tab1 key.Binding
Tab2 key.Binding
Tab3 key.Binding
Tab4 key.Binding
NextTab key.Binding
PrevTab key.Binding
Quit key.Binding
Up key.Binding
Down key.Binding
Enter key.Binding
Back key.Binding
Year key.Binding
Retry key.Binding
GoTop key.Binding
GoBottom key.Binding
HalfUp key.Binding
HalfDown key.Binding
}
// GlobalKeys is the singleton global key map.
@@ -34,30 +41,58 @@ var GlobalKeys = GlobalKeyMap{
key.WithKeys("4"),
key.WithHelp("4", "drivers"),
),
NextTab: key.NewBinding(
key.WithKeys("tab", "right"),
key.WithHelp("tab/->", "next tab"),
),
PrevTab: key.NewBinding(
key.WithKeys("shift+tab", "left"),
key.WithHelp("shift+tab/<-", "prev tab"),
),
Quit: key.NewBinding(
key.WithKeys("q", "ctrl+c"),
key.WithHelp("q", "quit"),
),
Up: key.NewBinding(
key.WithKeys("k", "up"),
key.WithHelp("k/↑", "up"),
key.WithHelp("k", "up"),
),
Down: key.NewBinding(
key.WithKeys("j", "down"),
key.WithHelp("j/↓", "down"),
key.WithHelp("j", "down"),
),
Enter: key.NewBinding(
key.WithKeys("enter"),
key.WithHelp("enter", "select"),
),
Back: key.NewBinding(
key.WithKeys("b"),
key.WithHelp("b", "back"),
key.WithKeys("b", "esc"),
key.WithHelp("b/esc", "back"),
),
Year: key.NewBinding(
key.WithKeys("y"),
key.WithHelp("y", "switch year"),
),
Retry: key.NewBinding(
key.WithKeys("r"),
key.WithHelp("r", "retry"),
),
GoTop: key.NewBinding(
key.WithKeys("g", "home"),
key.WithHelp("g", "go to top"),
),
GoBottom: key.NewBinding(
key.WithKeys("G", "end"),
key.WithHelp("G", "go to bottom"),
),
HalfUp: key.NewBinding(
key.WithKeys("ctrl+u"),
key.WithHelp("ctrl+u", "half page up"),
),
HalfDown: key.NewBinding(
key.WithKeys("ctrl+d"),
key.WithHelp("ctrl+d", "half page down"),
),
}
// StandingsKeyMap holds standing-specific keybindings.
@@ -79,8 +114,10 @@ var StandingsKeys = StandingsKeyMap{
// RaceDetailKeyMap holds keybindings for the race detail tab.
type RaceDetailKeyMap struct {
ScrollUp key.Binding
ScrollDown key.Binding
ScrollUp key.Binding
ScrollDown key.Binding
PrevSession key.Binding
NextSession key.Binding
}
var RaceDetailKeys = RaceDetailKeyMap{
@@ -92,4 +129,12 @@ var RaceDetailKeys = RaceDetailKeyMap{
key.WithKeys("J"),
key.WithHelp("J", "scroll race control down"),
),
PrevSession: key.NewBinding(
key.WithKeys("["),
key.WithHelp("[", "previous session"),
),
NextSession: key.NewBinding(
key.WithKeys("]"),
key.WithHelp("]", "next session"),
),
}