This commit is contained in:
2026-03-22 10:44:24 -04:00
parent 7e96e41ba4
commit 27e651c4f5
25 changed files with 774 additions and 225 deletions

View File

@@ -538,6 +538,9 @@ type UpdateUserFormdataRequestBody UpdateUserFormdataBody
// LoginJSONRequestBody defines body for Login for application/json ContentType.
type LoginJSONRequestBody = LoginRequest
// RegisterJSONRequestBody defines body for Register for application/json ContentType.
type RegisterJSONRequestBody = LoginRequest
// CreateDocumentMultipartRequestBody defines body for CreateDocument for multipart/form-data ContentType.
type CreateDocumentMultipartRequestBody CreateDocumentMultipartBody
@@ -591,6 +594,9 @@ type ServerInterface interface {
// Get current user info
// (GET /auth/me)
GetMe(w http.ResponseWriter, r *http.Request)
// User registration
// (POST /auth/register)
Register(w http.ResponseWriter, r *http.Request)
// List documents
// (GET /documents)
GetDocuments(w http.ResponseWriter, r *http.Request, params GetDocumentsParams)
@@ -961,6 +967,20 @@ func (siw *ServerInterfaceWrapper) GetMe(w http.ResponseWriter, r *http.Request)
handler.ServeHTTP(w, r)
}
// Register operation middleware
func (siw *ServerInterfaceWrapper) Register(w http.ResponseWriter, r *http.Request) {
handler := http.Handler(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
siw.Handler.Register(w, r)
}))
for _, middleware := range siw.HandlerMiddlewares {
handler = middleware(handler)
}
handler.ServeHTTP(w, r)
}
// GetDocuments operation middleware
func (siw *ServerInterfaceWrapper) GetDocuments(w http.ResponseWriter, r *http.Request) {
@@ -1606,6 +1626,7 @@ func HandlerWithOptions(si ServerInterface, options StdHTTPServerOptions) http.H
m.HandleFunc("POST "+options.BaseURL+"/auth/login", wrapper.Login)
m.HandleFunc("POST "+options.BaseURL+"/auth/logout", wrapper.Logout)
m.HandleFunc("GET "+options.BaseURL+"/auth/me", wrapper.GetMe)
m.HandleFunc("POST "+options.BaseURL+"/auth/register", wrapper.Register)
m.HandleFunc("GET "+options.BaseURL+"/documents", wrapper.GetDocuments)
m.HandleFunc("POST "+options.BaseURL+"/documents", wrapper.CreateDocument)
m.HandleFunc("GET "+options.BaseURL+"/documents/{id}", wrapper.GetDocument)
@@ -2072,6 +2093,50 @@ func (response GetMe401JSONResponse) VisitGetMeResponse(w http.ResponseWriter) e
return json.NewEncoder(w).Encode(response)
}
type RegisterRequestObject struct {
Body *RegisterJSONRequestBody
}
type RegisterResponseObject interface {
VisitRegisterResponse(w http.ResponseWriter) error
}
type Register201JSONResponse LoginResponse
func (response Register201JSONResponse) VisitRegisterResponse(w http.ResponseWriter) error {
w.Header().Set("Content-Type", "application/json")
w.WriteHeader(201)
return json.NewEncoder(w).Encode(response)
}
type Register400JSONResponse ErrorResponse
func (response Register400JSONResponse) VisitRegisterResponse(w http.ResponseWriter) error {
w.Header().Set("Content-Type", "application/json")
w.WriteHeader(400)
return json.NewEncoder(w).Encode(response)
}
type Register403JSONResponse ErrorResponse
func (response Register403JSONResponse) VisitRegisterResponse(w http.ResponseWriter) error {
w.Header().Set("Content-Type", "application/json")
w.WriteHeader(403)
return json.NewEncoder(w).Encode(response)
}
type Register500JSONResponse ErrorResponse
func (response Register500JSONResponse) VisitRegisterResponse(w http.ResponseWriter) error {
w.Header().Set("Content-Type", "application/json")
w.WriteHeader(500)
return json.NewEncoder(w).Encode(response)
}
type GetDocumentsRequestObject struct {
Params GetDocumentsParams
}
@@ -2864,6 +2929,9 @@ type StrictServerInterface interface {
// Get current user info
// (GET /auth/me)
GetMe(ctx context.Context, request GetMeRequestObject) (GetMeResponseObject, error)
// User registration
// (POST /auth/register)
Register(ctx context.Context, request RegisterRequestObject) (RegisterResponseObject, error)
// List documents
// (GET /documents)
GetDocuments(ctx context.Context, request GetDocumentsRequestObject) (GetDocumentsResponseObject, error)
@@ -3279,6 +3347,37 @@ func (sh *strictHandler) GetMe(w http.ResponseWriter, r *http.Request) {
}
}
// Register operation middleware
func (sh *strictHandler) Register(w http.ResponseWriter, r *http.Request) {
var request RegisterRequestObject
var body RegisterJSONRequestBody
if err := json.NewDecoder(r.Body).Decode(&body); err != nil {
sh.options.RequestErrorHandlerFunc(w, r, fmt.Errorf("can't decode JSON body: %w", err))
return
}
request.Body = &body
handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, request interface{}) (interface{}, error) {
return sh.ssi.Register(ctx, request.(RegisterRequestObject))
}
for _, middleware := range sh.middlewares {
handler = middleware(handler, "Register")
}
response, err := handler(r.Context(), w, r, request)
if err != nil {
sh.options.ResponseErrorHandlerFunc(w, r, err)
} else if validResponse, ok := response.(RegisterResponseObject); ok {
if err := validResponse.VisitRegisterResponse(w); err != nil {
sh.options.ResponseErrorHandlerFunc(w, r, err)
}
} else if response != nil {
sh.options.ResponseErrorHandlerFunc(w, r, fmt.Errorf("unexpected response type: %T", response))
}
}
// GetDocuments operation middleware
func (sh *strictHandler) GetDocuments(w http.ResponseWriter, r *http.Request, params GetDocumentsParams) {
var request GetDocumentsRequestObject