23 lines
495 B
Go
23 lines
495 B
Go
package templates
|
|
|
|
import (
|
|
"git.soup.land/soup/shelves"
|
|
"git.soup.land/soup/shelves/internal/errorsx"
|
|
"html/template"
|
|
"strings"
|
|
)
|
|
|
|
var files = shelves.Templates
|
|
|
|
func MustParseEmbed(path string) *template.Template {
|
|
return template.Must(template.ParseFS(files, path))
|
|
}
|
|
|
|
func HTML(t *template.Template, name string, data any) template.HTML {
|
|
out := strings.Builder{}
|
|
err := t.ExecuteTemplate(&out, name, data)
|
|
out.WriteString(errorsx.String(err))
|
|
|
|
return template.HTML(out.String())
|
|
}
|