Skip to main content

Module components

Module components 

Source
Expand description

UI components that make up the Wisp terminal interface.

All components implement the Component trait from the tui crate, following its event-message pattern: on_event handles input and produces typed messages, render produces a Frame.

§Component tree

App
 ├─ ScreenRouter
 │   ├─ ConversationScreen
 │   │   ├─ ConversationWindow (message history)
 │   │   ├─ PromptComposer
 │   │   │   ├─ TextInput
 │   │   │   ├─ CommandPicker (modal)
 │   │   │   └─ FilePicker (modal)
 │   │   ├─ ToolCallStatuses
 │   │   ├─ PlanTracker / PlanView
 │   │   ├─ ProgressIndicator
 │   │   ├─ ElicitationForm (modal)
 │   │   └─ SessionPicker (modal)
 │   └─ GitDiffView
 │       ├─ PatchRenderer
 │       └─ SplitPatchRenderer
 ├─ SettingsOverlay (modal)
 └─ StatusLine

§Visibility

Components marked pub are part of the public API. Components marked pub(crate) are internal implementation details used only within wisp.

Modules§

app
command_picker
conversation_window
elicitation_form
file_list_panel
file_picker
file_tree
input_prompt
model_selector
patch_renderer
plan_view
progress_indicator
provider_login
server_status
status_line
text_input
thought_message
tool_call_status_view
tool_call_statuses

Functions§

wrap_selection
Wrapping navigation helper for selection indices. delta of -1 moves up, +1 moves down, wrapping at boundaries.