import { ModuleRoutes } from "@/components/module-routes"; import { IModuleClient } from "@erp/core/client"; import { AppLayout, LoadingOverlay, ScrollToTop } from "@repo/rdx-ui/components"; import { JSX, Suspense } from "react"; import { Navigate, Route, BrowserRouter as Router, Routes } from "react-router-dom"; import { ErrorPage } 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 AppRoutes = (): JSX.Element => { const params = { ...import.meta.env, }; const grouped = groupModulesByLayout(modules); console.log(grouped); return ( {/* Fallback Route */} }> {/* Auth Layout */} } /> } /> {/* App Layout */} }> {/* Dynamic Module Routes */} } /> {/* Main Layout */} } /> } /> } /> } /> ); };