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