@@ -87,69 +87,70 @@ export const AppRoutesSchemas: Record<AppRoute, undefined | FastifySchema> = {
[AppRoute.USER_DASHBOARD]: undefined,
};
-const guestOrDashboardRedirect = guestOrRedirect("/dashboard");
-
-const RootAppRouter: AppRouter = () => (
- <Router.Root>
- <></>
- <Router.Group type={AppRouterGroup.API}>
- <Router.Route
- name={AppRoute.SET_THEME}
- method={"GET"}
- path={"/theme/:themeScheme"}
- schema={AppRoutesSchemas[AppRoute.SET_THEME]}
- handler={ThemeController.getTheme}
- />
- {/* --- */}
- <Router.Route
- name={AppRoute.HOME}
- method={"GET"}
- path={"/"}
- preHandler={guestOrDashboardRedirect}
- handler={HomeController.getHomeView}
- />
- {/* --- */}
- <Router.Route
- name={AppRoute.AUTH_REGISTER}
- method={"GET"}
- path={"/auth/register"}
- preHandler={guestOrDashboardRedirect}
- handler={AuthController.getRegisterView}
- />
- <Router.Route
- name={AppRoute.AUTH_REGISTER_ACTION}
- method={"POST"}
- path={"/auth/register"}
- schema={AppRoutesSchemas[AppRoute.AUTH_REGISTER_ACTION]}
- preHandler={guestOrDashboardRedirect}
- handler={AuthController.postRegisterAction}
- />
- {/* --- */}
- <Router.Route
- name={AppRoute.AUTH_LOGIN}
- method={"GET"}
- path={"/auth/login"}
- preHandler={guestOrDashboardRedirect}
- handler={AuthController.getLoginView}
- />
- <Router.Route
- name={AppRoute.AUTH_LOGIN_ACTION}
- method={"POST"}
- path={"/auth/login"}
- schema={AppRoutesSchemas[AppRoute.AUTH_LOGIN_ACTION]}
- preHandler={guestOrDashboardRedirect}
- handler={AuthController.postLoginAction}
- />
- {/* --- */}
- <Router.Route
- name={AppRoute.USER_DASHBOARD}
- method={"GET"}
- path={"/dashboard"}
- preHandler={authenticatedOrLogin()}
- handler={AuthController.getDashboardView}
- />
- </Router.Group>
- </Router.Root>
-);
+const RootAppRouter: AppRouter = () => {
+ const guestOrDashboardRedirect = guestOrRedirect("/dashboard");
+ return (
+ <Router.Root>
+ <></>
+ <Router.Group type={AppRouterGroup.API}>
+ <Router.Route
+ name={AppRoute.SET_THEME}
+ method={"GET"}
+ path={"/theme/:themeScheme"}
+ schema={AppRoutesSchemas[AppRoute.SET_THEME]}
+ handler={ThemeController.getTheme}
+ />
+ {/* --- */}
+ <Router.Route
+ name={AppRoute.HOME}
+ method={"GET"}
+ path={"/"}
+ preHandler={guestOrDashboardRedirect}
+ handler={HomeController.getHomeView}
+ />
+ {/* --- */}
+ <Router.Route
+ name={AppRoute.AUTH_REGISTER}
+ method={"GET"}
+ path={"/auth/register"}
+ preHandler={guestOrDashboardRedirect}
+ handler={AuthController.getRegisterView}
+ />
+ <Router.Route
+ name={AppRoute.AUTH_REGISTER_ACTION}
+ method={"POST"}
+ path={"/auth/register"}
+ schema={AppRoutesSchemas[AppRoute.AUTH_REGISTER_ACTION]}
+ preHandler={guestOrDashboardRedirect}
+ handler={AuthController.postRegisterAction}
+ />
+ {/* --- */}
+ <Router.Route
+ name={AppRoute.AUTH_LOGIN}
+ method={"GET"}
+ path={"/auth/login"}
+ preHandler={guestOrDashboardRedirect}
+ handler={AuthController.getLoginView}
+ />
+ <Router.Route
+ name={AppRoute.AUTH_LOGIN_ACTION}
+ method={"POST"}
+ path={"/auth/login"}
+ schema={AppRoutesSchemas[AppRoute.AUTH_LOGIN_ACTION]}
+ preHandler={guestOrDashboardRedirect}
+ handler={AuthController.postLoginAction}
+ />
+ {/* --- */}
+ <Router.Route
+ name={AppRoute.USER_DASHBOARD}
+ method={"GET"}
+ path={"/dashboard"}
+ preHandler={authenticatedOrLogin()}
+ handler={AuthController.getDashboardView}
+ />
+ </Router.Group>
+ </Router.Root>
+ );
+};
export default RootAppRouter;