feat(tui): consolidate 6 tabs to 3, add log sidebar
Tab bar: Monitors | Maint | Settings (was 6 tabs). Settings tab merges Alerts, Nodes, Users as sub-sections with left/right arrow navigation. Each section keeps its own cursor, keybindings, and CRUD operations. Monitors tab now shows a log sidebar at >= 120 cols (70/30 split). Under 120 cols, monitors render full-width without logs. - Introduced tab constants (tabMonitors, tabMaint, tabSettings) - Introduced section constants (sectionAlerts, sectionNodes, sectionUsers) - Removed stateLogs and stateUsers states - All magic tab numbers replaced with named constants
This commit is contained in:
+23
-10
@@ -84,6 +84,18 @@ const (
|
||||
detailSparkWidth = 40
|
||||
)
|
||||
|
||||
const (
|
||||
tabMonitors = 0
|
||||
tabMaint = 1
|
||||
tabSettings = 2
|
||||
)
|
||||
|
||||
const (
|
||||
sectionAlerts = 0
|
||||
sectionNodes = 1
|
||||
sectionUsers = 2
|
||||
)
|
||||
|
||||
type sessionState int
|
||||
|
||||
const (
|
||||
@@ -102,16 +114,17 @@ const (
|
||||
)
|
||||
|
||||
type Model struct {
|
||||
state sessionState
|
||||
currentTab int
|
||||
cursor int
|
||||
selectedID int
|
||||
tableOffset int
|
||||
maxTableRows int
|
||||
termWidth int
|
||||
termHeight int
|
||||
editID int
|
||||
editToken string
|
||||
state sessionState
|
||||
currentTab int
|
||||
settingsSection int
|
||||
cursor int
|
||||
selectedID int
|
||||
tableOffset int
|
||||
maxTableRows int
|
||||
termWidth int
|
||||
termHeight int
|
||||
editID int
|
||||
editToken string
|
||||
|
||||
huhForm *huh.Form
|
||||
siteFormData *siteFormData
|
||||
|
||||
Reference in New Issue
Block a user