Documentation
¶
Index ¶
- func FormatRelativeTime(t time.Time) string
- func JSAttr(s string) string
- func NavScript(sessionID, shortcutsJSON, mode string) string
- func StreamNavScript(qw422016 *qt422016.Writer, sessionID, shortcutsJSON, mode string)
- func WriteNavScript(qq422016 qtio422016.Writer, sessionID, shortcutsJSON, mode string)
- type BasePage
- func (p *BasePage) BranchName() string
- func (p *BasePage) Footer() string
- func (p *BasePage) Header() string
- func (p *BasePage) SessionID() string
- func (p *BasePage) ShortcutsJSON() string
- func (p *BasePage) StreamFooter(qw422016 *qt422016.Writer)
- func (p *BasePage) StreamHeader(qw422016 *qt422016.Writer)
- func (p *BasePage) WorktreeName() string
- func (p *BasePage) WriteFooter(qq422016 qtio422016.Writer)
- func (p *BasePage) WriteHeader(qq422016 qtio422016.Writer)
- type CaseDetailPage
- type ClaudePage
- type CrashDetailPage
- type CrashesPage
- type DashboardPage
- type EventsPage
- type LayoutColumn
- type LinkInfo
- type LogViewerInfo
- type NotificationSettings
- type ServiceDetailPage
- type ServiceInfo
- type ShortcutInfo
- type StatusPage
- type TerminalInfo
- type TerminalPage
- type TerminalWindowPage
- func (p *TerminalWindowPage) LinksJSON() string
- func (p *TerminalWindowPage) LogViewersJSON() string
- func (p *TerminalWindowPage) NotificationsJSON() string
- func (p *TerminalWindowPage) Render() string
- func (p *TerminalWindowPage) ServicesJSON() string
- func (p *TerminalWindowPage) SessionDisplayName() string
- func (p *TerminalWindowPage) ShortcutsJSON() string
- func (p *TerminalWindowPage) StreamLinksJSON(qw422016 *qt422016.Writer)
- func (p *TerminalWindowPage) StreamLogViewersJSON(qw422016 *qt422016.Writer)
- func (p *TerminalWindowPage) StreamNotificationsJSON(qw422016 *qt422016.Writer)
- func (p *TerminalWindowPage) StreamRender(qw422016 *qt422016.Writer)
- func (p *TerminalWindowPage) StreamServicesJSON(qw422016 *qt422016.Writer)
- func (p *TerminalWindowPage) StreamShortcutsJSON(qw422016 *qt422016.Writer)
- func (p *TerminalWindowPage) WriteLinksJSON(qq422016 qtio422016.Writer)
- func (p *TerminalWindowPage) WriteLogViewersJSON(qq422016 qtio422016.Writer)
- func (p *TerminalWindowPage) WriteNotificationsJSON(qq422016 qtio422016.Writer)
- func (p *TerminalWindowPage) WriteRender(qq422016 qtio422016.Writer)
- func (p *TerminalWindowPage) WriteServicesJSON(qq422016 qtio422016.Writer)
- func (p *TerminalWindowPage) WriteShortcutsJSON(qq422016 qtio422016.Writer)
- type TracePage
- type TraceReportPage
- type WorkflowsPage
- type WorktreeHomePage
- type WorktreesPage
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func FormatRelativeTime ¶
FormatRelativeTime formats a time as a human-readable relative string.
func JSAttr ¶
JSAttr escapes a string for use in a JavaScript string literal inside an HTML attribute. It escapes single quotes, backslashes, and newlines so the result can be used in: onclick="func('{escaped}')"
func StreamNavScript ¶
func WriteNavScript ¶
func WriteNavScript(qq422016 qtio422016.Writer, sessionID, shortcutsJSON, mode string)
Types ¶
type BasePage ¶
type BasePage struct {
Title string
Worktree *worktree.WorktreeInfo
}
func (*BasePage) BranchName ¶
func (*BasePage) ShortcutsJSON ¶
func (*BasePage) StreamFooter ¶
func (*BasePage) StreamHeader ¶
func (*BasePage) WorktreeName ¶
func (*BasePage) WriteFooter ¶
func (p *BasePage) WriteFooter(qq422016 qtio422016.Writer)
func (*BasePage) WriteHeader ¶
func (p *BasePage) WriteHeader(qq422016 qtio422016.Writer)
type CaseDetailPage ¶
type CaseDetailPage struct {
BasePage
WorktreeName string
Case *cases.CaseJSON
Notes string
Traces []cases.CaseTraceSummary
}
func (*CaseDetailPage) Render ¶
func (p *CaseDetailPage) Render() string
func (*CaseDetailPage) StreamRender ¶
func (p *CaseDetailPage) StreamRender(qw422016 *qt422016.Writer)
func (*CaseDetailPage) WriteRender ¶
func (p *CaseDetailPage) WriteRender(qq422016 qtio422016.Writer)
type ClaudePage ¶
type ClaudePage struct {
BasePage
WorktreeName string
SessionID string
SessionCreatedAt string // ISO 8601 timestamp
}
func (*ClaudePage) Render ¶
func (p *ClaudePage) Render() string
func (*ClaudePage) StreamRender ¶
func (p *ClaudePage) StreamRender(qw422016 *qt422016.Writer)
func (*ClaudePage) WriteRender ¶
func (p *ClaudePage) WriteRender(qq422016 qtio422016.Writer)
type CrashDetailPage ¶
func (*CrashDetailPage) EntriesJSON ¶
func (p *CrashDetailPage) EntriesJSON() string
func (*CrashDetailPage) Render ¶
func (p *CrashDetailPage) Render() string
func (*CrashDetailPage) StreamRender ¶
func (p *CrashDetailPage) StreamRender(qw422016 *qt422016.Writer)
func (*CrashDetailPage) WriteRender ¶
func (p *CrashDetailPage) WriteRender(qq422016 qtio422016.Writer)
type CrashesPage ¶
type CrashesPage struct {
BasePage
Crashes []crashes.CrashSummary
}
func (*CrashesPage) Render ¶
func (p *CrashesPage) Render() string
func (*CrashesPage) StreamRender ¶
func (p *CrashesPage) StreamRender(qw422016 *qt422016.Writer)
func (*CrashesPage) WriteRender ¶
func (p *CrashesPage) WriteRender(qq422016 qtio422016.Writer)
type DashboardPage ¶
type DashboardPage struct {
BasePage
Services []service.ServiceInfo
Worktrees []worktree.WorktreeInfo
}
func (*DashboardPage) Render ¶
func (p *DashboardPage) Render() string
func (*DashboardPage) StreamRender ¶
func (p *DashboardPage) StreamRender(qw422016 *qt422016.Writer)
func (*DashboardPage) WriteRender ¶
func (p *DashboardPage) WriteRender(qq422016 qtio422016.Writer)
type EventsPage ¶
func (*EventsPage) Render ¶
func (p *EventsPage) Render() string
func (*EventsPage) StreamRender ¶
func (p *EventsPage) StreamRender(qw422016 *qt422016.Writer)
func (*EventsPage) WriteRender ¶
func (p *EventsPage) WriteRender(qq422016 qtio422016.Writer)
type LayoutColumn ¶
type LayoutColumn struct {
Field string `json:"field,omitempty"`
Type string `json:"type,omitempty"` // "" or "kvpairs"
Keys []string `json:"keys,omitempty"` // For kvpairs
MaxPairs int `json:"max_pairs,omitempty"` // For kvpairs (0 = all)
MinWidth int `json:"min_width,omitempty"`
MaxWidth int `json:"max_width,omitempty"`
Align string `json:"align,omitempty"`
Optional bool `json:"optional,omitempty"`
Timestamp bool `json:"timestamp,omitempty"` // Use timestamp formatting
}
LayoutColumn represents a column in the log display layout (for JSON serialization).
type LogViewerInfo ¶
type LogViewerInfo struct {
Name string `json:"name"`
Columns []string `json:"columns"` // Columns to display (empty = default) - DEPRECATED
ColumnWidths map[string]int `json:"column_widths"` // Column widths in characters (0 = fill) - DEPRECATED
Layout []LayoutColumn `json:"layout"` // Full layout configuration
TimestampField string `json:"timestamp_field"` // Parser's timestamp field name
LevelField string `json:"level_field"` // Parser's level field name
MessageField string `json:"message_field"` // Parser's message field name
FileField string `json:"file_field,omitempty"` // Parser's file field name
LineField string `json:"line_field,omitempty"` // Parser's line field name
IDField string `json:"id_field,omitempty"` // Parser's ID field name for trace expansion
}
LogViewerInfo represents a log viewer for the terminal picker.
type NotificationSettings ¶
type NotificationSettings struct {
Enabled bool `json:"enabled"`
Events []string `json:"events"`
FailuresOnly bool `json:"failures_only"`
Sound bool `json:"sound"`
}
NotificationSettings represents browser notification configuration.
type ServiceDetailPage ¶
type ServiceDetailPage struct {
BasePage
ServiceName string
Status service.ServiceStatus
Logs []string
}
func (*ServiceDetailPage) Render ¶
func (p *ServiceDetailPage) Render() string
func (*ServiceDetailPage) StreamRender ¶
func (p *ServiceDetailPage) StreamRender(qw422016 *qt422016.Writer)
func (*ServiceDetailPage) WriteRender ¶
func (p *ServiceDetailPage) WriteRender(qq422016 qtio422016.Writer)
type ServiceInfo ¶
type ServiceInfo struct {
Name string `json:"name"`
Status string `json:"status"`
ParserType string `json:"parser_type,omitempty"` // "json", "logfmt", "regex", "none"
Columns []string `json:"columns,omitempty"` // Deprecated: use Layout
ColumnWidths map[string]int `json:"column_widths,omitempty"` // Deprecated: use Layout
Layout []LayoutColumn `json:"layout,omitempty"` // Full layout configuration
TimestampField string `json:"timestamp_field,omitempty"` // Parser's timestamp field name
LevelField string `json:"level_field,omitempty"` // Parser's level field name
MessageField string `json:"message_field,omitempty"` // Parser's message field name
FileField string `json:"file_field,omitempty"` // Parser's file field name
LineField string `json:"line_field,omitempty"` // Parser's line field name
}
ServiceInfo represents a service for the terminal picker.
type ShortcutInfo ¶
ShortcutInfo represents a keyboard shortcut for the terminal page. Window must start with a prefix character indicating the target type:
~name = log viewer (e.g., ~nginx) #name = service (e.g., #api) @worktree - win = local terminal (e.g., @main - dev) !name = remote window (e.g., !admin)
type StatusPage ¶
type StatusPage struct {
BasePage
Services []service.ServiceInfo
}
func (*StatusPage) Render ¶
func (p *StatusPage) Render() string
func (*StatusPage) StreamRender ¶
func (p *StatusPage) StreamRender(qw422016 *qt422016.Writer)
func (*StatusPage) WriteRender ¶
func (p *StatusPage) WriteRender(qq422016 qtio422016.Writer)
type TerminalInfo ¶
type TerminalInfo struct {
Session string
Window string
IsRemote bool
Worktree string // Worktree name (e.g., "main", "feature-branch")
}
TerminalInfo represents a terminal window for display.
type TerminalPage ¶
type TerminalPage struct {
BasePage
Terminals []TerminalInfo
}
func (*TerminalPage) Render ¶
func (p *TerminalPage) Render() string
func (*TerminalPage) StreamRender ¶
func (p *TerminalPage) StreamRender(qw422016 *qt422016.Writer)
func (*TerminalPage) WriteRender ¶
func (p *TerminalPage) WriteRender(qq422016 qtio422016.Writer)
type TerminalWindowPage ¶
type TerminalWindowPage struct {
BasePage
Session string
Window string
IsRemote bool
ViewType string // "local", "remote", "service", "editor", "logviewer"
ServiceName string // Only for ViewType="service"
LogViewerName string // Only for ViewType="logviewer"
WorktreeName string // Current worktree name (e.g., "main", "feature-branch")
ProjectName string
Shortcuts []ShortcutInfo
Notifications NotificationSettings
Services []ServiceInfo
Links []LinkInfo
LogViewers []LogViewerInfo
}
func (*TerminalWindowPage) LinksJSON ¶
func (p *TerminalWindowPage) LinksJSON() string
func (*TerminalWindowPage) LogViewersJSON ¶
func (p *TerminalWindowPage) LogViewersJSON() string
func (*TerminalWindowPage) NotificationsJSON ¶
func (p *TerminalWindowPage) NotificationsJSON() string
func (*TerminalWindowPage) Render ¶
func (p *TerminalWindowPage) Render() string
func (*TerminalWindowPage) ServicesJSON ¶
func (p *TerminalWindowPage) ServicesJSON() string
func (*TerminalWindowPage) SessionDisplayName ¶
func (p *TerminalWindowPage) SessionDisplayName() string
SessionDisplayName returns the branch name for display (e.g., "main", "demovideos")
func (*TerminalWindowPage) ShortcutsJSON ¶
func (p *TerminalWindowPage) ShortcutsJSON() string
func (*TerminalWindowPage) StreamLinksJSON ¶
func (p *TerminalWindowPage) StreamLinksJSON(qw422016 *qt422016.Writer)
func (*TerminalWindowPage) StreamLogViewersJSON ¶
func (p *TerminalWindowPage) StreamLogViewersJSON(qw422016 *qt422016.Writer)
func (*TerminalWindowPage) StreamNotificationsJSON ¶
func (p *TerminalWindowPage) StreamNotificationsJSON(qw422016 *qt422016.Writer)
func (*TerminalWindowPage) StreamRender ¶
func (p *TerminalWindowPage) StreamRender(qw422016 *qt422016.Writer)
func (*TerminalWindowPage) StreamServicesJSON ¶
func (p *TerminalWindowPage) StreamServicesJSON(qw422016 *qt422016.Writer)
func (*TerminalWindowPage) StreamShortcutsJSON ¶
func (p *TerminalWindowPage) StreamShortcutsJSON(qw422016 *qt422016.Writer)
func (*TerminalWindowPage) WriteLinksJSON ¶
func (p *TerminalWindowPage) WriteLinksJSON(qq422016 qtio422016.Writer)
func (*TerminalWindowPage) WriteLogViewersJSON ¶
func (p *TerminalWindowPage) WriteLogViewersJSON(qq422016 qtio422016.Writer)
func (*TerminalWindowPage) WriteNotificationsJSON ¶
func (p *TerminalWindowPage) WriteNotificationsJSON(qq422016 qtio422016.Writer)
func (*TerminalWindowPage) WriteRender ¶
func (p *TerminalWindowPage) WriteRender(qq422016 qtio422016.Writer)
func (*TerminalWindowPage) WriteServicesJSON ¶
func (p *TerminalWindowPage) WriteServicesJSON(qq422016 qtio422016.Writer)
func (*TerminalWindowPage) WriteShortcutsJSON ¶
func (p *TerminalWindowPage) WriteShortcutsJSON(qq422016 qtio422016.Writer)
type TracePage ¶
type TracePage struct {
BasePage
Groups []trace.TraceGroup
Reports []trace.ReportSummary
}
func (*TracePage) StreamRender ¶
func (*TracePage) WriteRender ¶
func (p *TracePage) WriteRender(qq422016 qtio422016.Writer)
type TraceReportPage ¶
type TraceReportPage struct {
BasePage
Report *trace.TraceReport
LogViewers []LogViewerInfo
}
func (*TraceReportPage) EntriesJSON ¶
func (p *TraceReportPage) EntriesJSON() string
func (*TraceReportPage) LogViewersJSON ¶
func (p *TraceReportPage) LogViewersJSON() string
func (*TraceReportPage) Render ¶
func (p *TraceReportPage) Render() string
func (*TraceReportPage) StreamRender ¶
func (p *TraceReportPage) StreamRender(qw422016 *qt422016.Writer)
func (*TraceReportPage) WriteRender ¶
func (p *TraceReportPage) WriteRender(qq422016 qtio422016.Writer)
type WorkflowsPage ¶
type WorkflowsPage struct {
BasePage
Workflows []workflow.WorkflowConfig
}
func (*WorkflowsPage) Render ¶
func (p *WorkflowsPage) Render() string
func (*WorkflowsPage) StreamRender ¶
func (p *WorkflowsPage) StreamRender(qw422016 *qt422016.Writer)
func (*WorkflowsPage) WriteRender ¶
func (p *WorkflowsPage) WriteRender(qq422016 qtio422016.Writer)
type WorktreeHomePage ¶
type WorktreeHomePage struct {
BasePage
WorktreeName string
Branch string
Cases []cases.CaseInfo
ClaudeSessions []*claude.SessionInfo
Terminals []terminal.WindowInfo
TmuxSessionName string // Empty if no tmux session exists
}
func (*WorktreeHomePage) Render ¶
func (p *WorktreeHomePage) Render() string
func (*WorktreeHomePage) StreamRender ¶
func (p *WorktreeHomePage) StreamRender(qw422016 *qt422016.Writer)
func (*WorktreeHomePage) WriteRender ¶
func (p *WorktreeHomePage) WriteRender(qq422016 qtio422016.Writer)
type WorktreesPage ¶
type WorktreesPage struct {
BasePage
Worktrees []worktree.WorktreeInfo
Active *worktree.WorktreeInfo
ProjectName string
BinariesDir string
Version string
}
func (*WorktreesPage) Render ¶
func (p *WorktreesPage) Render() string
func (*WorktreesPage) StreamRender ¶
func (p *WorktreesPage) StreamRender(qw422016 *qt422016.Writer)
func (*WorktreesPage) WriteRender ¶
func (p *WorktreesPage) WriteRender(qq422016 qtio422016.Writer)