use crate::app::{AgentViewTarget, Panel};
use crate::command::TuiCommand;
#[derive(Debug, Clone, Copy, PartialEq, Eq)]
#[allow(dead_code)]
pub(crate) enum ScrollDir {
Up,
Down,
}
#[derive(Debug, Clone, Copy, PartialEq, Eq)]
#[allow(dead_code)]
pub(crate) enum VertDir {
Up,
Down,
}
#[derive(Debug, Clone, PartialEq, Eq)]
#[allow(dead_code)]
pub(crate) enum PaletteEdit {
PushChar(char),
PopChar,
}
#[derive(Debug, Clone, PartialEq, Eq)]
#[allow(dead_code)]
pub(crate) enum ElicitationEdit {
PushChar(char),
PopChar,
NextField,
PrevField,
ToggleBool,
EnumNext,
EnumPrev,
}
#[derive(Debug, Clone, PartialEq, Eq)]
#[allow(dead_code)]
pub(crate) enum Action {
ScrollLines(i32),
ScrollPage(ScrollDir),
ScrollToTop,
ScrollToBottom,
ToggleToolExpanded,
CycleToolDensity,
ToggleSidePanels,
ToggleHelp,
SetHelp(bool),
CyclePanelFocus,
SetActivePanel(Panel),
TogglePanelCollapse(usize),
ToggleTaskPanel,
TogglePlanView,
SetViewTarget(AgentViewTarget),
ClearTranscript,
Quit,
CancelAgent,
EnterInsert,
EnterNormal,
InsertChar(char),
InsertNewline,
InsertText(String),
DeleteCharBackward,
DeleteCharForward,
DeleteWordBackward,
MoveCursor(CursorMove),
ClearInput,
SubmitInput,
HistoryPrev,
HistoryNext,
PrefillInput(String),
OpenCommandPalette,
CloseCommandPalette,
PaletteMove(VertDir),
PaletteInput(PaletteEdit),
PaletteAccept,
OpenFilePicker,
CloseFilePicker,
FilePickerMove(VertDir),
FilePickerInput(PaletteEdit),
FilePickerAccept,
SlashAutocompleteMove(VertDir),
SlashAutocompleteAccept,
SlashAutocompleteAcceptAndSubmit,
SlashAutocompletePopChar,
SlashAutocompletePushChar(char),
CloseSlashAutocomplete,
OpenReverseSearch,
ReverseSearchInput(PaletteEdit),
ReverseSearchNext,
ReverseSearchPrev,
ReverseSearchAccept,
CloseReverseSearch,
OpenTranscriptSearch,
TranscriptSearchInput(PaletteEdit),
TranscriptSearchNext,
TranscriptSearchPrev,
TranscriptSearchAccept,
CloseTranscriptSearch,
SettingsTabNext,
SettingsTabPrev,
SettingsSelectMove(VertDir),
ConfirmRespond(bool),
ElicitationField(ElicitationEdit),
ElicitationSubmit,
ElicitationCancel,
SetMouse(bool),
CopyLastAssistant,
CopyLastCodeBlock(usize),
Dispatch(TuiCommand),
}
#[derive(Debug, Clone, Copy, PartialEq, Eq)]
#[allow(dead_code)]
pub(crate) enum CursorMove {
Left,
Right,
WordLeft,
WordRight,
Home,
End,
}