Documentation
¶
Overview ¶
Package dashboard implements the dashboard pane: the project and workspace tree with keyboard and mouse navigation plus a toolbar for workspace actions.
Index ¶
- type Model
- func (m *Model) Blur()
- func (m *Model) ClearActiveRoot()
- func (m *Model) Focus()
- func (m *Model) Focused() bool
- func (m *Model) Init() tea.Cmd
- func (m *Model) InvalidateStatus(root string)
- func (m *Model) Projects() []data.Project
- func (m *Model) SelectedRow() *Row
- func (m *Model) SetActiveWorkspaces(active map[string]bool)
- func (m *Model) SetAgentStates(states map[string]activity.AgentState) tea.Cmd
- func (m *Model) SetCanFocusRight(can bool)
- func (m *Model) SetNotifyOnDone(enabled bool)
- func (m *Model) SetProjects(projects []data.Project)
- func (m *Model) SetShowKeymapHints(show bool)
- func (m *Model) SetSize(width, height int)
- func (m *Model) SetStyles(styles common.Styles)
- func (m *Model) SetWorkspaceCreating(ws *data.Workspace, creating bool) tea.Cmd
- func (m *Model) SetWorkspaceDeleting(root string, deleting bool) tea.Cmd
- func (m *Model) StartSpinnerIfNeeded() tea.Cmd
- func (m *Model) Update(msg tea.Msg) (*Model, tea.Cmd)
- func (m *Model) View() string
- type Row
- type RowType
- type SpinnerTickMsg
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Model ¶
type Model struct {
// contains filtered or unexported fields
}
Model is the Bubbletea model for the dashboard pane
func (*Model) ClearActiveRoot ¶
func (m *Model) ClearActiveRoot()
ClearActiveRoot resets the active workspace selection to "Home".
func (*Model) InvalidateStatus ¶ added in v0.0.6
InvalidateStatus marks a workspace's cached status stale. Keep dirty status sticky until a fresh clean result arrives to avoid temporary clean flicker between invalidation and refresh.
func (*Model) SelectedRow ¶
SelectedRow returns the currently selected row
func (*Model) SetActiveWorkspaces ¶ added in v0.0.5
SetActiveWorkspaces updates the set of workspaces with active agents.
func (*Model) SetAgentStates ¶ added in v0.0.20
SetAgentStates updates the per-workspace semantic agent states. It also clears the doneAcked flag for any workspace that has started working again, so the next "done" is visible to the user.
It returns a bell command exactly once per unacked Working→Done edge when notify-on-done is enabled: the previous state is compared against the new one so a workspace that stays Done across frames does not re-bell. A frame with several simultaneous edges still rings a single bell.
func (*Model) SetCanFocusRight ¶
SetCanFocusRight controls whether focus-right hints should be shown.
func (*Model) SetNotifyOnDone ¶ added in v0.0.20
SetNotifyOnDone controls whether a terminal bell fires when a workspace transitions Working→Done (the same edge the "done" indicator surfaces).
func (*Model) SetProjects ¶
SetProjects sets the projects list
func (*Model) SetShowKeymapHints ¶
SetShowKeymapHints controls whether helper text is rendered.
func (*Model) SetWorkspaceCreating ¶ added in v0.0.5
SetWorkspaceCreating marks a workspace as creating (or clears it).
func (*Model) SetWorkspaceDeleting ¶ added in v0.0.5
SetWorkspaceDeleting marks a workspace as deleting (or clears it).
func (*Model) StartSpinnerIfNeeded ¶ added in v0.0.5
StartSpinnerIfNeeded is the public version for external callers.
type Row ¶
type Row struct {
Type RowType
Project *data.Project
Workspace *data.Workspace
// ActivityWorkspaceID is precomputed to avoid per-frame path normalization.
ActivityWorkspaceID string
// MainWorkspace points to a project's primary/main workspace for project rows.
MainWorkspace *data.Workspace
}
Row represents a single row in the dashboard
type SpinnerTickMsg ¶ added in v0.0.5
type SpinnerTickMsg struct{}
SpinnerTickMsg is sent to update the spinner animation