Files
PrintControl/go/internal/tui/style.go

33 lines
1.4 KiB
Go

package tui
import "github.com/charmbracelet/lipgloss"
// Colours are deliberately ANSI 16-colour where possible so the terminal theme
// (Tokyo Night / Catppuccin / whatever Omarchy is wearing today) drives the look.
var (
colAccent = lipgloss.AdaptiveColor{Light: "5", Dark: "13"} // magenta
colOK = lipgloss.AdaptiveColor{Light: "2", Dark: "10"} // green
colWarn = lipgloss.AdaptiveColor{Light: "3", Dark: "11"} // yellow
colErr = lipgloss.AdaptiveColor{Light: "1", Dark: "9"} // red
colMuted = lipgloss.AdaptiveColor{Light: "8", Dark: "8"} // bright black
colInfo = lipgloss.AdaptiveColor{Light: "4", Dark: "12"} // blue
panelStyle = lipgloss.NewStyle().
Border(lipgloss.RoundedBorder()).
BorderForeground(colAccent).
Padding(0, 1)
titleStyle = lipgloss.NewStyle().Foreground(colAccent).Bold(true)
labelStyle = lipgloss.NewStyle().Foreground(colMuted)
valueStyle = lipgloss.NewStyle().Bold(true)
dimStyle = lipgloss.NewStyle().Foreground(colMuted)
pillIdle = lipgloss.NewStyle().Padding(0, 1).Foreground(colMuted)
pillPrint = lipgloss.NewStyle().Padding(0, 1).Foreground(colOK).Bold(true)
pillPause = lipgloss.NewStyle().Padding(0, 1).Foreground(colWarn).Bold(true)
pillError = lipgloss.NewStyle().Padding(0, 1).Foreground(colErr).Bold(true)
keyHintStyle = lipgloss.NewStyle().Foreground(colMuted)
keyStyle = lipgloss.NewStyle().Foreground(colInfo).Bold(true)
)