import { Suspense, type ReactNode } from "react"; import { Navigate, Route, Routes } from "react-router-dom"; import { RoutePageFallback } from "../components/common/RoutePageFallback"; import { AppShellLayout } from "../layouts/AppShellLayout"; import { AuthLayout } from "../layouts/AuthLayout"; import { BudgetsPage } from "../pages/BudgetsPage"; import { ChangePasswordPage } from "../pages/ChangePasswordPage"; import { DashboardPage } from "../pages/DashboardPage"; import { ForbiddenPage } from "../pages/ForbiddenPage"; import { LoginPage } from "../pages/LoginPage"; import { NotFoundPage } from "../pages/NotFoundPage"; import { ProfilePage } from "../pages/ProfilePage"; import { ApOperationsPage, ApprovalRulesPage, AnnouncementsPage, AttendancePage, AssetRegistryPage, AuditLogsPage, CutoverConsolePage, EmployeeProfilePage, DelegationsPage, DepartmentsPage, ErpIntegrationPage, ExpenseStandardsPage, FeatureFlagsPage, InventoryChecksPage, InvoicePoolPage, LeaveRequestPage, MasterDataPage, MobileApprovalsPage, MobileAssetScanPage, MobileCapturePage, MobileMePage, MobilePortalPage, NotificationChannelsPage, NotificationsPage, OrganizationPage, PayrollPage, PerformancePage, PaymentBatchesPage, PeoplePage, PeopleStatsPage, PortalAnnouncementsPage, PortalHomePage, ProjectsPage, ProjectDetailPage, ContractsRegistryPage, SystemSettingsPage, TeamPresencePage, TodosPage, PurchaseRequestsPage, ReimbursementDetailPage, ReimbursementDashboardPage, ReimbursementPrintPage, ReimbursementTemplatesPage, ReimbursementsPage, TravelRequestsPage, UserManagementPage, WeeklyReportsPage, WorkspaceSetupPage, WorkflowDefinitionsPage, WorkflowTaskDetailPage, WorkflowTasksPage, } from "./lazy"; import { GuestOnly, RequireAuth, RequirePermission } from "./guards"; function withRouteFallback(node: ReactNode) { return }>{node}; } export function AppRouter() { return ( } > } /> } > } /> } > } /> )} /> )} /> )} /> {withRouteFallback()} } /> {withRouteFallback()} } /> {withRouteFallback()} } /> )} /> )} /> } /> } /> )} /> {withRouteFallback()} } /> {withRouteFallback()} } /> {withRouteFallback()} } /> {withRouteFallback()} } /> {withRouteFallback()} } /> {withRouteFallback()} } /> {withRouteFallback()} } /> {withRouteFallback()} } /> {withRouteFallback()} } /> {withRouteFallback()} } /> {withRouteFallback()} } /> {withRouteFallback()} } /> {withRouteFallback()} } /> {withRouteFallback()} } /> {withRouteFallback()} } /> )} /> )} /> {withRouteFallback()} } /> {withRouteFallback()} } /> {withRouteFallback()} } /> )} /> {withRouteFallback()} } /> {withRouteFallback()} } /> {withRouteFallback()} } /> {withRouteFallback()} } /> {withRouteFallback()} } /> {withRouteFallback()} } /> {withRouteFallback()} } /> )} /> {withRouteFallback()} } /> {withRouteFallback()} } /> {withRouteFallback()} } /> {withRouteFallback()} } /> {withRouteFallback()} } /> {withRouteFallback()} } /> {withRouteFallback()} } /> {withRouteFallback()} } /> {withRouteFallback()} } /> {withRouteFallback()} } /> {withRouteFallback()} } /> {withRouteFallback()} } /> {withRouteFallback()} } /> } /> } /> } /> ); }