(Feat): Initial Commit
This commit is contained in:
27
internal/api/router/echo_renderer.go
Normal file
27
internal/api/router/echo_renderer.go
Normal file
@@ -0,0 +1,27 @@
|
||||
package router
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"html/template"
|
||||
"io"
|
||||
|
||||
"allaboutapps.dev/aw/go-starter/internal/api/router/templates"
|
||||
"github.com/labstack/echo/v4"
|
||||
)
|
||||
|
||||
type echoRenderer struct {
|
||||
templates map[templates.ViewTemplate]*template.Template
|
||||
}
|
||||
|
||||
func (t *echoRenderer) Render(writer io.Writer, name string, data interface{}, _ echo.Context) error {
|
||||
tmplHTML, ok := t.templates[templates.ViewTemplate(name)]
|
||||
if !ok {
|
||||
return fmt.Errorf("template not found: %s", name)
|
||||
}
|
||||
|
||||
if err := tmplHTML.Execute(writer, data); err != nil {
|
||||
return fmt.Errorf("failed to execute template: %w", err)
|
||||
}
|
||||
|
||||
return nil
|
||||
}
|
||||
Reference in New Issue
Block a user