package main import ( "hash/fnv" "github.com/charmbracelet/lipgloss" catppuccin "github.com/catppuccin/go" ) var Catppuccin catppuccin.Flavor = catppuccin.Mocha var catppuccinColors []string = []string{ Catppuccin.Red().Hex, Catppuccin.Green().Hex, Catppuccin.Yellow().Hex, Catppuccin.Blue().Hex, Catppuccin.Mauve().Hex, Catppuccin.Pink().Hex, Catppuccin.Flamingo().Hex, Catppuccin.Teal().Hex, Catppuccin.Sky().Hex, Catppuccin.Sapphire().Hex, Catppuccin.Maroon().Hex, Catppuccin.Peach().Hex, Catppuccin.Rosewater().Hex, Catppuccin.Lavender().Hex, } var datetimeStyle = lipgloss.NewStyle().Foreground(lipgloss.Color(Catppuccin.Subtext0().Hex)) var summaryStyle = lipgloss.NewStyle().Bold(true).Foreground(lipgloss.Color(Catppuccin.Lavender().Hex)) var bodyStyle = lipgloss.NewStyle().Foreground(lipgloss.Color(Catppuccin.Text().Hex)) func getAppNameStyle(appName string) lipgloss.Style { color := deterministicRandomString(appName, catppuccinColors) return lipgloss.NewStyle().Background(lipgloss.Color(color)).Foreground(lipgloss.Color(Catppuccin.Base().Hex)).Padding(0, 1) } func deterministicRandomString(key string, array []string) string { hasher := fnv.New32a() hasher.Write([]byte(key)) hashValue := hasher.Sum32() index := int(hashValue) % len(array) return array[index] }