package assets import ( "html/template" "os" "path/filepath" "strings" "git.tijl.dev/tijl/tijl.dev/modules/logger" ) var SVGData map[string]string func loadSVGs() { SVGData = make(map[string]string) dir := "static/assets/icons" files, err := filepath.Glob(filepath.Join(dir, "*.svg")) if err != nil { log.Fatal().Err(err) } for _, file := range files { data, err := os.ReadFile(file) if err != nil { log.Fatal().Err(err) continue } filename := filepath.Base(file) key := strings.TrimSuffix(filename, filepath.Ext(filename)) SVGData[key] = string(data) } log.Debug().Msg("Loaded SVG files") } func Svg(name string) template.HTML { if svg, ok := SVGData[name]; ok { return template.HTML(svg) } return "" }