2024-12-05 20:36:58 -05:00
|
|
|
// Package gateway provides the default routes for the Sonr hway.
|
2024-12-02 14:27:18 -05:00
|
|
|
package gateway
|
|
|
|
|
|
|
|
|
|
import (
|
|
|
|
|
"github.com/labstack/echo/v4"
|
2024-12-10 12:52:19 -05:00
|
|
|
"github.com/onsonr/sonr/internal/gateway/config"
|
2024-12-10 13:40:41 -05:00
|
|
|
"github.com/onsonr/sonr/internal/gateway/context"
|
2024-12-10 13:12:08 -05:00
|
|
|
"github.com/onsonr/sonr/internal/gateway/handlers/index"
|
|
|
|
|
"github.com/onsonr/sonr/internal/gateway/handlers/register"
|
2024-12-05 20:36:58 -05:00
|
|
|
"github.com/onsonr/sonr/pkg/common/response"
|
2024-12-10 13:40:41 -05:00
|
|
|
"gorm.io/gorm"
|
2024-12-02 14:27:18 -05:00
|
|
|
)
|
|
|
|
|
|
2024-12-10 13:40:41 -05:00
|
|
|
func RegisterRoutes(e *echo.Echo, env config.Env, db *gorm.DB) error {
|
2024-12-02 14:27:18 -05:00
|
|
|
// Custom error handler for gateway
|
2024-12-05 20:36:58 -05:00
|
|
|
e.HTTPErrorHandler = response.RedirectOnError("http://localhost:3000")
|
|
|
|
|
|
2024-12-06 21:31:20 -05:00
|
|
|
// Inject session middleware with database connection
|
2024-12-10 13:40:41 -05:00
|
|
|
e.Use(context.Middleware(db, env))
|
2024-12-06 21:31:20 -05:00
|
|
|
|
2024-12-05 20:36:58 -05:00
|
|
|
// Register routes
|
2024-12-10 13:12:08 -05:00
|
|
|
e.GET("/", index.Handler)
|
|
|
|
|
e.GET("/register", register.HandleCreateProfile)
|
|
|
|
|
e.POST("/register/start", register.HandlePasskeyStart)
|
|
|
|
|
e.POST("/register/finish", register.HandlePasskeyFinish)
|
2024-12-06 21:31:20 -05:00
|
|
|
return nil
|
2024-12-02 14:27:18 -05:00
|
|
|
}
|