// Package cardart renders playing-card style ASCII art used by the admin // dashboard. package cardart import ( "fmt" "os" "gopkg.in/yaml.v3" ) type Store struct { Cards map[string]map[int][]string `yaml:"cards"` } func Load(path string) *Store { store := &Store{Cards: make(map[string]map[int][]string)} data, err := os.ReadFile(path) if err != nil { if !os.IsNotExist(err) { fmt.Fprintf(os.Stderr, "cardart: read %s: %v\n", path, err) } return store } if err := yaml.Unmarshal(data, store); err != nil { fmt.Fprintf(os.Stderr, "cardart: parse %s: %v\n", path, err) } return store } func (s *Store) Art(key string, size int) []string { if s == nil || s.Cards == nil { return nil } return s.Cards[key][size] }