package admin import ( "fmt" "strconv" "strings" "thehouseoficarus/internal/color" ) func XtermToCSS(xtermHex string) string { xtermHex = strings.TrimPrefix(xtermHex, "#") idx, err := strconv.ParseUint(xtermHex, 16, 8) if err != nil || idx > 255 { return "#808080" } r, g, b := color.Xterm256ToRGB(int(idx)) return fmt.Sprintf("#%02x%02x%02x", r, g, b) } func XtermColorForCSS(idx int) string { if idx < 0 || idx > 255 { return "#808080" } r, g, b := color.Xterm256ToRGB(idx) return fmt.Sprintf("#%02x%02x%02x", r, g, b) } func xtermColorList() []map[string]any { var list []map[string]any for i := 0; i < 256; i++ { r, g, b := color.Xterm256ToRGB(i) list = append(list, map[string]any{ "index": i, "hex": fmt.Sprintf("%02X%02X%02X", r, g, b), "color": fmt.Sprintf("#%02x%02x%02x", r, g, b), }) } return list }