Documentation
¶
Index ¶
- func CalculateConversationHeight(totalHeight int) int
- func CalculateInputHeight(totalHeight int) int
- func CalculateStatusHeight(totalHeight int) int
- func FormatCurrentTokenUsage(conversationRepo domain.ConversationRepository) string
- func FormatResponsiveMessage(content string, width int) string
- func FormatToolCall(toolName string, args map[string]any) string
- func FormatToolCallWithOptions(toolName string, args map[string]any, expanded bool) string
- func FormatWarning(message string) string
- func GetResponsiveWidth(terminalWidth int) int
- func TruncateText(text string, maxLength int) string
- func WrapText(text string, width int) string
- type ApprovalComponent
- type ApprovalRequestMsg
- type ApprovalResponseMsg
- type AutocompleteInterface
- type ClearErrorMsg
- type ClearInputMsg
- type ConversationLineFormatter
- type ConversationRenderer
- type DebugKeyMsg
- type ExitSelectionModeMsg
- type FileSelectedMsg
- type FileSelectionRequestMsg
- type FocusRequestMsg
- type HelpBarComponent
- type HideHelpBarMsg
- type InitializeTextSelectionMsg
- type InputComponent
- type KeyShortcut
- type ModelSelectedMsg
- type ResizeMsg
- type ScrollDirection
- type ScrollRequestMsg
- type SetInputMsg
- type SetStatusMsg
- type SetupFileSelectionMsg
- type ShowErrorMsg
- type StatusComponent
- type StatusProgress
- type StatusType
- type Theme
- type ToggleHelpBarMsg
- type UpdateHistoryMsg
- type UpdateStatusMsg
- type UserInputMsg
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func CalculateConversationHeight ¶ added in v0.27.0
Layout calculation utilities
func CalculateInputHeight ¶ added in v0.27.0
func CalculateStatusHeight ¶ added in v0.27.0
func FormatCurrentTokenUsage ¶ added in v0.33.2
func FormatCurrentTokenUsage(conversationRepo domain.ConversationRepository) string
FormatCurrentTokenUsage returns current session token usage string
func FormatResponsiveMessage ¶
FormatResponsiveMessage formats a message with responsive text wrapping
func FormatToolCall ¶
FormatToolCall formats a tool call for consistent display across the application
func FormatToolCallWithOptions ¶ added in v0.33.3
FormatToolCallWithOptions formats a tool call with options for expansion
func FormatWarning ¶ added in v0.27.0
FormatWarning creates a properly formatted warning message
func GetResponsiveWidth ¶
GetResponsiveWidth calculates appropriate width based on terminal size
func TruncateText ¶ added in v0.29.6
TruncateText truncates text to fit within maxLength, adding "..." if needed
Types ¶
type ApprovalComponent ¶ added in v0.27.0
type ApprovalComponent interface { SetWidth(width int) SetHeight(height int) Render(toolExecution *domain.ToolExecutionSession, selectedIndex int) string }
ApprovalComponent interface for approval display
type ApprovalRequestMsg ¶
ApprovalRequestMsg requests user approval for an action
type ApprovalResponseMsg ¶
ApprovalResponseMsg provides approval response
type AutocompleteInterface ¶
type AutocompleteInterface interface { Update(inputText string, cursorPos int) HandleKey(key tea.KeyMsg) (bool, string) IsVisible() bool SetWidth(width int) Render() string GetSelectedShortcut() string Hide() }
AutocompleteInterface defines the interface for autocomplete functionality
type ConversationLineFormatter ¶ added in v0.38.0
type ConversationLineFormatter struct {
// contains filtered or unexported fields
}
ConversationLineFormatter converts conversation entries to text lines
func NewConversationLineFormatter ¶ added in v0.38.0
func NewConversationLineFormatter(width int, toolFormatter domain.ToolFormatter) *ConversationLineFormatter
NewConversationLineFormatter creates a new conversation line formatter
func (*ConversationLineFormatter) FormatConversationToLines ¶ added in v0.38.0
func (f *ConversationLineFormatter) FormatConversationToLines(conversation []domain.ConversationEntry) []string
FormatConversationToLines converts conversation entries to plain text lines
func (*ConversationLineFormatter) SetWidth ¶ added in v0.38.0
func (f *ConversationLineFormatter) SetWidth(width int)
SetWidth updates the formatter width
type ConversationRenderer ¶ added in v0.27.0
type ConversationRenderer interface { SetConversation([]domain.ConversationEntry) GetScrollOffset() int CanScrollUp() bool CanScrollDown() bool ToggleToolResultExpansion(index int) ToggleAllToolResultsExpansion() IsToolResultExpanded(index int) bool SetWidth(width int) SetHeight(height int) Render() string }
ConversationRenderer interface for conversation display
type DebugKeyMsg ¶
DebugKeyMsg provides debug information about key presses
type ExitSelectionModeMsg ¶ added in v0.38.0
type ExitSelectionModeMsg struct{}
ExitSelectionModeMsg exits text selection mode
type FileSelectedMsg ¶
type FileSelectedMsg struct {
FilePath string
}
FileSelectedMsg indicates file selection
type FileSelectionRequestMsg ¶
type FileSelectionRequestMsg struct{}
FileSelectionRequestMsg requests file selection UI
type FocusRequestMsg ¶
type FocusRequestMsg struct {
ComponentID string
}
FocusRequestMsg requests focus change
type HelpBarComponent ¶ added in v0.27.0
type HelpBarComponent interface { SetShortcuts(shortcuts []KeyShortcut) IsEnabled() bool SetEnabled(enabled bool) SetWidth(width int) SetHeight(height int) Render() string }
HelpBarComponent interface for help bar
type HideHelpBarMsg ¶
type HideHelpBarMsg struct{}
HideHelpBarMsg hides the help bar when typing other characters
type InitializeTextSelectionMsg ¶ added in v0.38.0
type InitializeTextSelectionMsg struct{}
InitializeTextSelectionMsg initializes text selection mode with current conversation
type InputComponent ¶ added in v0.27.0
type InputComponent interface { GetInput() string ClearInput() SetPlaceholder(text string) GetCursor() int SetCursor(position int) SetText(text string) SetWidth(width int) SetHeight(height int) Render() string HandleKey(key tea.KeyMsg) (tea.Model, tea.Cmd) CanHandle(key tea.KeyMsg) bool IsAutocompleteVisible() bool TryHandleAutocomplete(key tea.KeyMsg) (handled bool, completion string) AddToHistory(text string) error SetTextSelectionMode(enabled bool) IsTextSelectionMode() bool }
InputComponent interface for input handling
type KeyShortcut ¶
KeyShortcut represents a keyboard shortcut with description
type ModelSelectedMsg ¶
type ModelSelectedMsg struct {
Model string
}
ModelSelectedMsg indicates model selection
type ScrollDirection ¶
type ScrollDirection int
ScrollDirection represents different scroll directions
const ( ScrollUp ScrollDirection = iota ScrollDown ScrollToTop ScrollToBottom )
type ScrollRequestMsg ¶
type ScrollRequestMsg struct { ComponentID string Direction ScrollDirection Amount int }
ScrollRequestMsg requests scrolling in a component
type SetStatusMsg ¶
type SetStatusMsg struct { Message string Spinner bool TokenUsage string StatusType StatusType Progress *StatusProgress }
SetStatusMsg sets a status message
type SetupFileSelectionMsg ¶ added in v0.27.0
type SetupFileSelectionMsg struct {
Files []string
}
SetupFileSelectionMsg sets up file selection state with files
type ShowErrorMsg ¶
ShowErrorMsg displays an error message
type StatusComponent ¶ added in v0.27.0
type StatusComponent interface { ShowStatus(message string) ShowError(message string) ShowSpinner(message string) ClearStatus() IsShowingError() bool IsShowingSpinner() bool SetTokenUsage(usage string) SetWidth(width int) SetHeight(height int) Render() string SaveCurrentState() RestoreSavedState() tea.Cmd HasSavedState() bool }
StatusComponent interface for status display
type StatusProgress ¶ added in v0.27.0
StatusProgress represents progress information for status messages
type StatusType ¶ added in v0.27.0
type StatusType int
StatusType represents different types of status messages
const ( StatusDefault StatusType = iota StatusThinking StatusGenerating StatusWorking StatusProcessing StatusPreparing )
type Theme ¶ added in v0.27.0
type Theme interface { GetUserColor() string GetAssistantColor() string GetErrorColor() string GetStatusColor() string GetAccentColor() string GetDimColor() string GetBorderColor() string GetDiffAddColor() string GetDiffRemoveColor() string }
Theme interface for UI theming
type ToggleHelpBarMsg ¶
type ToggleHelpBarMsg struct{}
ToggleHelpBarMsg toggles the help bar visibility
type UpdateHistoryMsg ¶
type UpdateHistoryMsg struct {
History []domain.ConversationEntry
}
UpdateHistoryMsg updates the conversation history display
type UpdateStatusMsg ¶ added in v0.27.0
type UpdateStatusMsg struct { Message string StatusType StatusType }
UpdateStatusMsg updates an existing status message without resetting timer
type UserInputMsg ¶
type UserInputMsg struct {
Content string
}
UserInputMsg represents user input submission