refactor(routes): scope the guestOrDashboardRedirect preHandler in a var higher
+ 7
- 5
this way its only created once (micro-optimisation)

@@ -87,6 +87,8 @@ export const AppRoutesSchemas: Record<AppRoute, undefined | FastifySchema> = {
   [AppRoute.USER_DASHBOARD]: undefined,
 };
 
+const guestOrDashboardRedirect = guestOrRedirect("/dashboard");
+
 const RootAppRouter: AppRouter = () => (
   <Router.Root>
     <></>

...
@@ -103,7 +105,7 @@ const RootAppRouter: AppRouter = () => (
         name={AppRoute.HOME}
         method={"GET"}
         path={"/"}
-        preHandler={guestOrRedirect("/dashboard")}
+        preHandler={guestOrDashboardRedirect}
         handler={HomeController.getHomeView}
       />
       {/* --- */}

...
@@ -111,7 +113,7 @@ const RootAppRouter: AppRouter = () => (
         name={AppRoute.AUTH_REGISTER}
         method={"GET"}
         path={"/auth/register"}
-        preHandler={guestOrRedirect("/dashboard")}
+        preHandler={guestOrDashboardRedirect}
         handler={AuthController.getRegisterView}
       />
       <Router.Route

...
@@ -119,7 +121,7 @@ const RootAppRouter: AppRouter = () => (
         method={"POST"}
         path={"/auth/register"}
         schema={AppRoutesSchemas[AppRoute.AUTH_REGISTER_ACTION]}
-        preHandler={guestOrRedirect("/dashboard")}
+        preHandler={guestOrDashboardRedirect}
         handler={AuthController.postRegisterAction}
       />
       {/* --- */}

...
@@ -127,7 +129,7 @@ const RootAppRouter: AppRouter = () => (
         name={AppRoute.AUTH_LOGIN}
         method={"GET"}
         path={"/auth/login"}
-        preHandler={guestOrRedirect("/dashboard")}
+        preHandler={guestOrDashboardRedirect}
         handler={AuthController.getLoginView}
       />
       <Router.Route

...
@@ -135,7 +137,7 @@ const RootAppRouter: AppRouter = () => (
         method={"POST"}
         path={"/auth/login"}
         schema={AppRoutesSchemas[AppRoute.AUTH_LOGIN_ACTION]}
-        preHandler={guestOrRedirect("/dashboard")}
+        preHandler={guestOrDashboardRedirect}
         handler={AuthController.postLoginAction}
       />
       {/* --- */}