@@ -2,18 +2,22 @@ package resthome
|
||||
|
||||
import (
|
||||
"context"
|
||||
"io"
|
||||
"net/http"
|
||||
|
||||
"git.schreifuchs.ch/schreifuchs/schreifuchs.ch/internal/components/page"
|
||||
"github.com/a-h/templ"
|
||||
)
|
||||
|
||||
type Handler struct {
|
||||
src pageService
|
||||
r renderer
|
||||
}
|
||||
|
||||
func New(mux *http.ServeMux, srv pageService) *Handler {
|
||||
func New(mux *http.ServeMux, renderer renderer, srv pageService) *Handler {
|
||||
h := &Handler{
|
||||
src: srv,
|
||||
r: renderer,
|
||||
}
|
||||
|
||||
mux.HandleFunc("GET /{$}", h.home)
|
||||
@@ -25,3 +29,6 @@ type pageService interface {
|
||||
GetPages(ctx context.Context) ([]page.PageHeader, error)
|
||||
GetPage(ctx context.Context, uid string) (page.Page, error)
|
||||
}
|
||||
type renderer interface {
|
||||
Render(ctx context.Context, w io.Writer, r *http.Request, component templ.Component)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user