Grouping route

This commit is contained in:
2024-10-02 15:33:41 +07:00
parent 5d7dc70f1b
commit 93c44f40cc
41 changed files with 1176 additions and 1158 deletions

View File

@ -1,9 +1,14 @@
package client
import (
"github.com/fossyy/filekeeper/handler/auth/forgotPassword"
"github.com/fossyy/filekeeper/handler/auth/forgotPassword/verify"
googleOauthHandler "github.com/fossyy/filekeeper/handler/auth/google"
googleOauthCallbackHandler "github.com/fossyy/filekeeper/handler/auth/google/callback"
googleOauthSetupHandler "github.com/fossyy/filekeeper/handler/auth/google/setup"
"github.com/fossyy/filekeeper/handler/auth/signin"
"github.com/fossyy/filekeeper/handler/auth/signup"
"github.com/fossyy/filekeeper/handler/auth/signup/verify"
totpHandler "github.com/fossyy/filekeeper/handler/auth/totp"
fileHandler "github.com/fossyy/filekeeper/handler/file"
deleteHandler "github.com/fossyy/filekeeper/handler/file/delete"
@ -13,62 +18,59 @@ import (
fileTableHandler "github.com/fossyy/filekeeper/handler/file/table"
uploadHandler "github.com/fossyy/filekeeper/handler/file/upload"
visibilityHandler "github.com/fossyy/filekeeper/handler/file/visibility"
forgotPasswordHandler "github.com/fossyy/filekeeper/handler/forgotPassword"
forgotPasswordVerifyHandler "github.com/fossyy/filekeeper/handler/forgotPassword/verify"
indexHandler "github.com/fossyy/filekeeper/handler/index"
logoutHandler "github.com/fossyy/filekeeper/handler/logout"
signinHandler "github.com/fossyy/filekeeper/handler/signin"
signupHandler "github.com/fossyy/filekeeper/handler/signup"
signupVerifyHandler "github.com/fossyy/filekeeper/handler/signup/verify"
userHandler "github.com/fossyy/filekeeper/handler/user"
userHandlerResetPassword "github.com/fossyy/filekeeper/handler/user/ResetPassword"
userSessionTerminateHandler "github.com/fossyy/filekeeper/handler/user/session/terminate"
userHandlerTotpSetup "github.com/fossyy/filekeeper/handler/user/totp"
websocketHandler "github.com/fossyy/filekeeper/handler/websocket"
"github.com/fossyy/filekeeper/middleware"
"net/http"
)
func SetupRoutes() *http.ServeMux {
handler := http.NewServeMux()
// Index
handler.HandleFunc("GET /{$}", indexHandler.GET)
// Auth Routes
handler.Handle("GET /auth/google", middleware.Guest(googleOauthHandler.GET))
handler.Handle("GET /auth/totp", middleware.Guest(totpHandler.GET))
handler.Handle("POST /auth/totp", middleware.Guest(totpHandler.POST))
handler.Handle("GET /auth/google/callback", middleware.Guest(googleOauthCallbackHandler.GET))
handler.Handle("GET /auth/google/setup/{code}", middleware.Guest(googleOauthSetupHandler.GET))
handler.Handle("POST /auth/google/setup/{code}", middleware.Guest(googleOauthSetupHandler.POST))
authRoute := http.NewServeMux()
handler.Handle("/auth/", http.StripPrefix("/auth", authRoute))
authRoute.Handle("GET /google", middleware.Guest(googleOauthHandler.GET))
authRoute.Handle("GET /totp", middleware.Guest(totpHandler.GET))
authRoute.Handle("POST /totp", middleware.Guest(totpHandler.POST))
authRoute.Handle("GET /google/callback", middleware.Guest(googleOauthCallbackHandler.GET))
authRoute.Handle("GET /google/setup/{code}", middleware.Guest(googleOauthSetupHandler.GET))
authRoute.Handle("POST /google/setup/{code}", middleware.Guest(googleOauthSetupHandler.POST))
authRoute.Handle("GET /signin", middleware.Guest(signinHandler.GET))
authRoute.Handle("POST /signin", middleware.Guest(signinHandler.POST))
authRoute.Handle("GET /signup", middleware.Guest(signupHandler.GET))
authRoute.Handle("POST /signup", middleware.Guest(signupHandler.POST))
authRoute.Handle("GET /signup/verify/{code}", middleware.Guest(signupVerifyHandler.GET))
authRoute.Handle("GET /forgot-password", middleware.Guest(forgotPasswordHandler.GET))
authRoute.Handle("POST /forgot-password", middleware.Guest(forgotPasswordHandler.POST))
authRoute.Handle("GET /forgot-password/verify/{code}", middleware.Guest(forgotPasswordVerifyHandler.GET))
authRoute.Handle("POST /forgot-password/verify/{code}", middleware.Guest(forgotPasswordVerifyHandler.POST))
// Signin/Signup/Forgot Password
handler.Handle("GET /signin", middleware.Guest(signinHandler.GET))
handler.Handle("POST /signin", middleware.Guest(signinHandler.POST))
handler.Handle("GET /signup", middleware.Guest(signupHandler.GET))
handler.Handle("POST /signup", middleware.Guest(signupHandler.POST))
handler.Handle("GET /signup/verify/{code}", middleware.Guest(signupVerifyHandler.GET))
handler.Handle("GET /forgot-password", middleware.Guest(forgotPasswordHandler.GET))
handler.Handle("POST /forgot-password", middleware.Guest(forgotPasswordHandler.POST))
handler.Handle("GET /forgot-password/verify/{code}", middleware.Guest(forgotPasswordVerifyHandler.GET))
handler.Handle("POST /forgot-password/verify/{code}", middleware.Guest(forgotPasswordVerifyHandler.POST))
userRoute := http.NewServeMux()
handler.Handle("/user/", http.StripPrefix("/user", userRoute))
userRoute.Handle("GET /{$}", middleware.Auth(userHandler.GET))
userRoute.Handle("POST /reset-password", middleware.Auth(userHandlerResetPassword.POST))
userRoute.Handle("DELETE /session/terminate/{id}", middleware.Auth(userSessionTerminateHandler.DELETE))
userRoute.Handle("GET /totp/setup", middleware.Auth(userHandlerTotpSetup.GET))
userRoute.Handle("POST /totp/setup", middleware.Auth(userHandlerTotpSetup.POST))
// User Routes
handler.Handle("GET /user", middleware.Auth(userHandler.GET))
handler.Handle("POST /user/reset-password", middleware.Auth(userHandlerResetPassword.POST))
handler.Handle("DELETE /user/session/terminate/{id}", middleware.Auth(userSessionTerminateHandler.DELETE))
handler.Handle("GET /user/totp/setup", middleware.Auth(userHandlerTotpSetup.GET))
handler.Handle("POST /user/totp/setup", middleware.Auth(userHandlerTotpSetup.POST))
handler.Handle("/ws", middleware.Auth(websocketHandler.GET))
// File Routes
handler.Handle("GET /file", middleware.Auth(fileHandler.GET))
handler.Handle("GET /file/table", middleware.Auth(fileTableHandler.GET))
handler.Handle("GET /file/query", middleware.Auth(queryHandler.GET))
handler.Handle("POST /file/{id}", middleware.Auth(uploadHandler.POST))
handler.Handle("DELETE /file/{id}", middleware.Auth(deleteHandler.DELETE))
handler.HandleFunc("GET /file/{id}", downloadHandler.GET)
handler.Handle("PUT /file/{id}", middleware.Auth(visibilityHandler.PUT))
handler.Handle("PATCH /file/{id}", middleware.Auth(renameFileHandler.PATCH))
fileRoute := http.NewServeMux()
handler.Handle("/file/", http.StripPrefix("/file", fileRoute))
fileRoute.Handle("GET /{$}", middleware.Auth(fileHandler.GET))
fileRoute.Handle("GET /table", middleware.Auth(fileTableHandler.GET))
fileRoute.Handle("GET /query", middleware.Auth(queryHandler.GET))
fileRoute.Handle("POST /{id}", middleware.Auth(uploadHandler.POST))
fileRoute.Handle("DELETE /{id}", middleware.Auth(deleteHandler.DELETE))
fileRoute.HandleFunc("GET /{id}", downloadHandler.GET)
fileRoute.Handle("PUT /{id}", middleware.Auth(visibilityHandler.PUT))
fileRoute.Handle("PATCH /{id}", middleware.Auth(renameFileHandler.PATCH))
handler.Handle("GET /logout", middleware.Auth(logoutHandler.GET))