Collapse the project/module/directory name to match the binary, so there is a single name everywhere (tuistream-play -> tsplay). The binary, config dir and Jellyfin client identity were already tsplay. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
37 lines
1.2 KiB
Go
37 lines
1.2 KiB
Go
// Styles derived from the active Omarchy theme (or the ANSI fallback). Kept in
|
|
// one place so the login, browse and playing views share a consistent look.
|
|
package tui
|
|
|
|
import (
|
|
"github.com/charmbracelet/lipgloss"
|
|
"tsplay/internal/theme"
|
|
)
|
|
|
|
type styles struct {
|
|
title lipgloss.Style
|
|
accent lipgloss.Style
|
|
muted lipgloss.Style
|
|
good lipgloss.Style
|
|
bad lipgloss.Style
|
|
help lipgloss.Style
|
|
barFill lipgloss.Style
|
|
barEmpty lipgloss.Style
|
|
box lipgloss.Style
|
|
}
|
|
|
|
func newStyles(t theme.Theme) styles {
|
|
return styles{
|
|
title: lipgloss.NewStyle().Bold(true).Foreground(lipgloss.Color(t.Accent)),
|
|
accent: lipgloss.NewStyle().Foreground(lipgloss.Color(t.Accent)),
|
|
muted: lipgloss.NewStyle().Foreground(lipgloss.Color(t.Muted)),
|
|
good: lipgloss.NewStyle().Foreground(lipgloss.Color(t.Good)),
|
|
bad: lipgloss.NewStyle().Foreground(lipgloss.Color(t.Bad)),
|
|
help: lipgloss.NewStyle().Foreground(lipgloss.Color(t.Muted)),
|
|
barFill: lipgloss.NewStyle().Foreground(lipgloss.Color(t.Accent)),
|
|
barEmpty: lipgloss.NewStyle().Foreground(lipgloss.Color(t.Muted)),
|
|
box: lipgloss.NewStyle().
|
|
Border(lipgloss.RoundedBorder()).
|
|
BorderForeground(lipgloss.Color(t.Accent)).
|
|
Padding(1, 2),
|
|
}
|
|
}
|