Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type App ¶
type App struct {
UpdatedTo string // set on successful self-update; read by main after p.Run()
// contains filtered or unexported fields
}
App is the root bubbletea model.
func (App) Update ¶
Update is the Bubble Tea entry point. It routes messages through four progressively-narrower stages: (1) monitor consumes its own poll/tick messages; (2) any open modal dialog claims key events while visible; (3) tea framework messages (focus/blur/resize/key) take their typed branches; (4) everything else is forwarded to handleTypedMessage and its per-concern handler methods.
type AppConfig ¶ added in v0.4.0
type AppConfig struct {
// Theme
Theme theme.Theme
BaseTheme theme.Theme
ThemeID theme.ThemeID
ColorblindnessType theme.ColorblindnessType
// Input
Keys KeyMap
// Infrastructure
Client jmodel.JenkinsClient
Store *cache.Store
DiskStoreFn func(serverURL string) *cache.DiskStore
// User identity
Username string
FriendlyName string
GitUsernames []string
// Timing
RefreshInterval time.Duration
SlowRefreshInterval time.Duration
// UI components (pre-constructed by the composition root)
Header component.Header
Breadcrumb component.Breadcrumb
StatusBar component.StatusBar
// Navigation
InitialView view.View
// Feature flags
Debug bool
SponsorKey string
Notifications bool
MaxLogLines int
LogLevel string
// Context management
Contexts []config.ContextConfig
CurrentContextName string
AddContextFn func(config.ContextConfig) error
DeleteContextFn func(string) error
SetContextFn func(string) error
// Persistence callbacks
SaveColorblindnessFn func(theme.ColorblindnessType) error
SaveThemeFn func(string) error
SavePrefsFn func(notifications bool, gitUsernames []string, refreshInterval, slowInterval time.Duration, maxLogLines int, logLevel string, textArtifactExtensions []string) error
}
AppConfig holds all constructor parameters for NewApp. Using a struct instead of a long positional argument list makes call sites readable and allows new fields to be added without touching every caller.
Click to show internal directories.
Click to hide internal directories.