polish(tui): responsive column hiding — 3-tier priority-based layout
CI / test (pull_request) Successful in 2m29s
CI / lint (pull_request) Successful in 57s
CI / vulncheck (pull_request) Successful in 46s

Columns drop progressively as terminal narrows:
- Compact (<90): #, NAME, STATUS, LATENCY
- Medium (90-119): + TYPE, UPTIME, HISTORY
- Wide (120+): + SSL, RETRIES

Column definitions are data-driven via siteColumns slice.
Row builder uses pickCols() helper so headers and cells can't drift.

Closes #68
This commit was merged in pull request #95.
This commit is contained in:
2026-06-05 17:50:57 -04:00
parent 69a8e0f7ba
commit 33dc84449b
2 changed files with 125 additions and 42 deletions
+4 -1
View File
@@ -15,7 +15,10 @@ var (
type StyleOverride func(row, col int) *lipgloss.Style
const wideBreakpoint = 120
const (
wideBreakpoint = 120
mediumBreakpoint = 90
)
func (m Model) isWide() bool {
return m.termWidth >= wideBreakpoint