2024-08-11 03:51:22 +02:00
|
|
|
package note_handler
|
|
|
|
|
|
|
|
|
|
import (
|
|
|
|
|
"github.com/go-logr/logr"
|
|
|
|
|
"github.com/gofiber/fiber/v2"
|
2024-08-28 00:25:25 +02:00
|
|
|
"github.com/versia-pub/versia-go/config"
|
|
|
|
|
"github.com/versia-pub/versia-go/internal/service"
|
|
|
|
|
"github.com/versia-pub/versia-go/internal/validators"
|
|
|
|
|
"github.com/versia-pub/versia-go/pkg/webfinger"
|
2024-08-11 03:51:22 +02:00
|
|
|
)
|
|
|
|
|
|
|
|
|
|
type Handler struct {
|
|
|
|
|
noteService service.NoteService
|
|
|
|
|
bodyValidator validators.BodyValidator
|
2024-08-27 19:59:12 +02:00
|
|
|
requestSigner service.RequestSigner
|
2024-08-11 03:51:22 +02:00
|
|
|
|
|
|
|
|
hostMeta webfinger.HostMeta
|
|
|
|
|
|
|
|
|
|
log logr.Logger
|
|
|
|
|
}
|
|
|
|
|
|
2024-08-27 19:59:12 +02:00
|
|
|
func New(noteService service.NoteService, bodyValidator validators.BodyValidator, requestSigner service.RequestSigner, log logr.Logger) *Handler {
|
2024-08-11 03:51:22 +02:00
|
|
|
return &Handler{
|
|
|
|
|
noteService: noteService,
|
|
|
|
|
bodyValidator: bodyValidator,
|
2024-08-27 19:59:12 +02:00
|
|
|
requestSigner: requestSigner,
|
2024-08-11 03:51:22 +02:00
|
|
|
|
|
|
|
|
hostMeta: webfinger.NewHostMeta(config.C.PublicAddress),
|
|
|
|
|
|
|
|
|
|
log: log.WithName("users"),
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
func (i *Handler) Register(r fiber.Router) {
|
|
|
|
|
r.Get("/api/app/notes/:id", i.GetNote)
|
|
|
|
|
r.Post("/api/app/notes/", i.CreateNote)
|
|
|
|
|
}
|