package ui

import (
	"io"
	"text/template"

	"github.com/labstack/echo/v4"
)

type Renderer struct {
	templates *template.Template
}

func (t *Renderer) Render(w io.Writer, name string, data any, c echo.Context) error {
	return t.templates.ExecuteTemplate(w, name, data)
}

func NewRenderer() *Renderer {
	return &Renderer{
		templates: template.Must(template.ParseFS(htmlFS, "*html")),
	}
}