import { IModuleClient } from "@erp/core/client"; import { AppLayout } from "@repo/rdx-ui/components"; import { createBrowserRouter, createRoutesFromElements, Navigate, Route } from "react-router-dom"; import { ModuleRoutes } from "@/components/module-routes"; import { ErrorPage, LoginForm } from "../pages"; import { modules } from "../register-modules"; // AquĆ­ ca function groupModulesByLayout(modules: IModuleClient[]) { const groups: Record = { auth: [], app: [], }; if (modules) { for (const module of modules) { if (typeof module.layout !== "string") continue; const layout = module.layout || "app"; groups[layout] = groups[layout] || []; groups[layout].push(module); } } return groups; } export const getAppRouter = () => { const params = { ...import.meta.env, }; const grouped = groupModulesByLayout(modules); return createBrowserRouter( createRoutesFromElements( {/* Auth Layout */} } /> } /> } /> {/* App Layout */} }> {/* Dynamic Module Routes */} } /> {/* Main Layout */} } /> } /> } /> } /> ) ); };