package handlers import ( "github.com/StevanFreeborn/term-tier/internal/core" "github.com/StevanFreeborn/term-tier/internal/state" tea "github.com/charmbracelet/bubbletea" ) type KeyMsgHandler interface { KeysHandled() []string Description() string Match(s state.State, msg tea.KeyMsg) bool Handle(s state.State, msg tea.KeyMsg) tea.Cmd } func GetAllKeyHandlers(saver core.Saver) []KeyMsgHandler { return []KeyMsgHandler{ NewTextInputHandler(), NewQuitHandler(), NewUpNavigationHandler(), NewDownNavigationHandler(), NewLeftNavigationHandler(), NewRightNavigationHandler(), NewDeleteItemHandler(), NewAddItemHandler(), NewUpdateItemHandler(), NewSelectItemHandler(), NewLoadHandler(saver), NewSaveHandler(saver), NewHelpHandler(), } }