house/backend/log.go
2025-06-14 23:47:44 -04:00

37 lines
909 B
Go

package main
import (
"strings"
"git.red-panda.pet/pandaware/lipgloss-catppuccin"
"github.com/charmbracelet/lipgloss"
"github.com/charmbracelet/log"
)
var (
palette = catppuccin.Mocha
styles *log.Styles
)
func levelStyle(level log.Level, color lipgloss.Color) lipgloss.Style {
return lipgloss.NewStyle().
Bold(true).
SetString(strings.TrimSpace(strings.ToUpper(level.String()))).
MaxWidth(6).
Align(lipgloss.Center).
Padding(0, 1).
Foreground(palette.Base).
Background(color)
}
func init() {
styles = log.DefaultStyles()
styles.Levels = map[log.Level]lipgloss.Style{
log.DebugLevel: levelStyle(log.DebugLevel, palette.Teal),
log.InfoLevel: levelStyle(log.InfoLevel, palette.Sapphire),
log.WarnLevel: levelStyle(log.WarnLevel, palette.Yellow),
log.ErrorLevel: levelStyle(log.ErrorLevel, palette.Red),
log.FatalLevel: levelStyle(log.FatalLevel, palette.Lavender),
}
}