styles

package
v0.75.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 13, 2026 License: MIT Imports: 4 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	// Primary colors
	Navy     = lipgloss.Color("#0A1029") // hsl(228 61% 10%)
	Cyan     = lipgloss.Color("#B8D9FF") // hsl(212 100% 86%)
	NavyDark = lipgloss.Color("#02081D") // hsl(227 88% 6%)
	CyanDark = lipgloss.Color("#A5C5E9") // hsl(212 60% 78%)
	Blue     = lipgloss.Color("#3392FF") // hsl(212 100% 60%)
	Magenta  = lipgloss.Color("#BC46DD") // hsl(287 69% 57%)
	Yellow   = lipgloss.Color("#B8D41C") // hsl(69 77% 47%)

	// Adaptive colors for light/dark terminals
	PrimaryColor   = lipgloss.AdaptiveColor{Light: "#0A1029", Dark: "#B8D9FF"}
	AccentColor    = lipgloss.AdaptiveColor{Light: "#3392FF", Dark: "#3392FF"}
	SuccessColor   = lipgloss.AdaptiveColor{Light: "#3392FF", Dark: "#3392FF"}
	HighlightColor = lipgloss.AdaptiveColor{Light: "#BC46DD", Dark: "#BC46DD"}
	MutedColor     = lipgloss.AdaptiveColor{Light: "#A5C5E9", Dark: "#A5C5E9"}

	// Status colors - matching frontend badge variants
	// Successful: green-300/green-800 with green-500/20 background
	StatusSuccessColor = lipgloss.AdaptiveColor{Light: "#166534", Dark: "#86efac"}
	StatusSuccessBg    = lipgloss.AdaptiveColor{Light: "#22c55e33", Dark: "#22c55e33"} // green-500/20

	// Failed: red-300/red-800 with red-500/20 background
	StatusFailedColor = lipgloss.AdaptiveColor{Light: "#991b1b", Dark: "#fca5a5"}
	StatusFailedBg    = lipgloss.AdaptiveColor{Light: "#ef444433", Dark: "#ef444433"} // red-500/20

	// In Progress: yellow-300/yellow-800 with yellow-500/20 background
	StatusInProgressColor = lipgloss.AdaptiveColor{Light: "#854d0e", Dark: "#fde047"}
	StatusInProgressBg    = lipgloss.AdaptiveColor{Light: "#eab30833", Dark: "#eab30833"} // yellow-500/20

	// Queued: slate-300/slate-800 with slate-500/20 background
	StatusQueuedColor = lipgloss.AdaptiveColor{Light: "#1e293b", Dark: "#cbd5e1"}
	StatusQueuedBg    = lipgloss.AdaptiveColor{Light: "#64748b33", Dark: "#64748b33"} // slate-500/20

	// Cancelled: orange-300/orange-800 with orange-500/20 background
	StatusCancelledColor = lipgloss.AdaptiveColor{Light: "#9a3412", Dark: "#fdba74"}
	StatusCancelledBg    = lipgloss.AdaptiveColor{Light: "#f9731633", Dark: "#f9731633"} // orange-500/20

	// Error color for general errors
	ErrorColor = lipgloss.AdaptiveColor{Light: "#dc2626", Dark: "#ff5555"}
)
View Source
var (
	// Base styles
	Bold   = lipgloss.NewStyle().Bold(true)
	Italic = lipgloss.NewStyle().Italic(true)

	// Headings
	H1 = lipgloss.NewStyle().
		Bold(true).
		Foreground(PrimaryColor).
		MarginTop(1).
		MarginBottom(1)

	H2 = lipgloss.NewStyle().
		Bold(true).
		Foreground(PrimaryColor).
		MarginBottom(1)

	// Emphasis styles
	Primary = lipgloss.NewStyle().
			Foreground(PrimaryColor).
			Bold(true)

	Accent = lipgloss.NewStyle().
			Foreground(AccentColor).
			Bold(true)

	Success = lipgloss.NewStyle().
			Foreground(SuccessColor).
			Bold(true)

	Highlight = lipgloss.NewStyle().
				Foreground(HighlightColor).
				Bold(true)

	Muted = lipgloss.NewStyle().
			Foreground(MutedColor)

	// Code/mono style
	Code = lipgloss.NewStyle().
			Foreground(AccentColor).
			Background(lipgloss.AdaptiveColor{Light: "#F5F5F5", Dark: "#1a1a1a"}).
			Padding(0, 1)

	// Box styles
	Box = lipgloss.NewStyle().
		Border(lipgloss.RoundedBorder()).
		BorderForeground(AccentColor).
		Padding(1, 2).
		MarginTop(1).
		MarginBottom(1)

	InfoBox = lipgloss.NewStyle().
			Border(lipgloss.RoundedBorder()).
			BorderForeground(AccentColor).
			Padding(0, 1).
			MarginTop(1)

	SuccessBox = lipgloss.NewStyle().
				Border(lipgloss.RoundedBorder()).
				BorderForeground(SuccessColor).
				Padding(0, 1).
				MarginTop(1)

	// List item style
	ListItem = lipgloss.NewStyle().
				PaddingLeft(2)
)

Common styles

Functions

func HatchetTheme

func HatchetTheme() *huh.Theme

HatchetTheme creates a custom huh theme using Hatchet's color scheme

func InfoMessage

func InfoMessage(message string) string

Info renders an info message with icon

func KeyValue

func KeyValue(key, value string) string

KeyValue renders a key-value pair

func List

func List(items []string) string

List renders a bulleted list

func Section

func Section(text string) string

Section renders a section header

func SuccessMessage

func SuccessMessage(message string) string

Success renders a success message with checkmark

func Title

func Title(text string) string

Title renders a large title with optional icon

func URL

func URL(url string) string

URL renders a URL in accent color

Types

This section is empty.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL