♻️ Imported urls namespace into templateutil
This commit is contained in:
parent
70853bc665
commit
dd9cc5b2d1
|
@ -5,9 +5,11 @@ import (
|
|||
"html/template"
|
||||
"io/fs"
|
||||
|
||||
"source.toby3d.me/toby3d/home/internal/site"
|
||||
"source.toby3d.me/toby3d/home/internal/templateutil/partials"
|
||||
"source.toby3d.me/toby3d/home/internal/templateutil/safe"
|
||||
"source.toby3d.me/toby3d/home/internal/templateutil/strings"
|
||||
"source.toby3d.me/toby3d/home/internal/templateutil/urls"
|
||||
)
|
||||
|
||||
type Function struct {
|
||||
|
@ -16,7 +18,7 @@ type Function struct {
|
|||
Name string
|
||||
}
|
||||
|
||||
func New(dir fs.FS) (template.FuncMap, error) {
|
||||
func New(dir fs.FS, siter site.UseCase) (template.FuncMap, error) {
|
||||
partialDir, err := fs.Sub(dir, "partials")
|
||||
if err != nil {
|
||||
return nil, fmt.Errorf("cannot substitute into partials subdirectory: %w", err)
|
||||
|
@ -41,12 +43,21 @@ func New(dir fs.FS) (template.FuncMap, error) {
|
|||
"safeHTML": safeNamespace.HTML,
|
||||
},
|
||||
})
|
||||
partialNamespace := partials.New(partialDir, funcMap)
|
||||
partialsNamespace := partials.New(partialDir, funcMap)
|
||||
funcs = append(funcs, Function{
|
||||
Name: "partials",
|
||||
Handler: func(v ...any) any { return partialNamespace },
|
||||
Handler: func(v ...any) any { return partialsNamespace },
|
||||
Methods: template.FuncMap{
|
||||
"partial": partialNamespace.Include,
|
||||
"partial": partialsNamespace.Include,
|
||||
},
|
||||
})
|
||||
urlsNamespace := urls.New(siter)
|
||||
funcs = append(funcs, Function{
|
||||
Name: "urls",
|
||||
Handler: func(v ...any) any { return urlsNamespace },
|
||||
Methods: template.FuncMap{
|
||||
"absURL": urlsNamespace.AbsURL,
|
||||
"relURL": urlsNamespace.RelURL,
|
||||
},
|
||||
})
|
||||
|
||||
|
|
Loading…
Reference in New Issue