package main
import "github.com/charmbracelet/lipgloss"
// Palette mirrors gitfed-web's own CSS tokens (cmd/gitfed-web/render.go),
// same as cmd/gitfed-install/styles.go — duplicated here rather than shared
// since these are separate `package main` binaries.
var (
colCanvas = lipgloss.Color("#0d0f13")
colBorder = lipgloss.Color("#262c36")
colText = lipgloss.Color("#e8eaed")
colTextDim = lipgloss.Color("#9aa1ac")
colTextFaint = lipgloss.Color("#6b7280")
colAccent = lipgloss.Color("#6c9df5")
colOK = lipgloss.Color("#7bd6a8")
colWarn = lipgloss.Color("#e0b34e")
colDanger = lipgloss.Color("#f28b82")
)
var (
styleTitle = lipgloss.NewStyle().Bold(true).Foreground(colText)
styleTag = lipgloss.NewStyle().Foreground(colTextFaint).Border(lipgloss.RoundedBorder()).
BorderForeground(colBorder).Padding(0, 1)
styleBody = lipgloss.NewStyle().Foreground(colTextDim)
styleMuted = lipgloss.NewStyle().Foreground(colTextFaint)
styleAccent = lipgloss.NewStyle().Foreground(colAccent)
styleBold = lipgloss.NewStyle().Bold(true).Foreground(colText)
styleOK = lipgloss.NewStyle().Foreground(colOK).Bold(true)
styleWarn = lipgloss.NewStyle().Foreground(colWarn).Bold(true)
styleDanger = lipgloss.NewStyle().Foreground(colDanger).Bold(true)
stylePanel = lipgloss.NewStyle().Border(lipgloss.RoundedBorder()).
BorderForeground(colBorder).Padding(0, 2).Foreground(colText)
stylePanelDanger = lipgloss.NewStyle().Border(lipgloss.RoundedBorder()).
BorderForeground(colDanger).Padding(0, 2).Foreground(colText)
styleLog = lipgloss.NewStyle().Foreground(colTextDim).Border(lipgloss.NormalBorder()).
BorderForeground(colBorder).Padding(0, 1)
styleFooter = lipgloss.NewStyle().Foreground(colTextFaint)
)
type checkStatus int
const (
statusOK checkStatus = iota
statusMissing
statusWarn
)
func glyph(status checkStatus) string {
switch status {
case statusOK:
return styleOK.Render("✓")
case statusWarn:
return styleWarn.Render("!")
default:
return styleMuted.Render("○")
}
}