import { lazy, Suspense } from 'react'; import { BrowserRouter, Routes, Route, Navigate } from 'react-router-dom'; import { QueryClient, QueryClientProvider } from '@tanstack/react-query'; import { Loader2 } from 'lucide-react'; import { MainLayout } from './components/layout'; import { ToastContainer } from './components/ui'; import { useAuthStore } from './store/authStore'; // Lazy load pages for code splitting const Login = lazy(() => import('./pages/Login').then(m => ({ default: m.Login }))); const Register = lazy(() => import('./pages/Register').then(m => ({ default: m.Register }))); const Dashboard = lazy(() => import('./pages/Dashboard').then(m => ({ default: m.Dashboard }))); const UsersPage = lazy(() => import('./pages/Users').then(m => ({ default: m.UsersPage }))); const ServiceOrdersPage = lazy(() => import('./pages/ServiceOrders').then(m => ({ default: m.ServiceOrdersPage }))); const ServiceOrdersKanbanPage = lazy(() => import('./pages/ServiceOrdersKanban').then(m => ({ default: m.ServiceOrdersKanbanPage }))); const ServiceOrderNewPage = lazy(() => import('./pages/ServiceOrderNew').then(m => ({ default: m.ServiceOrderNewPage }))); const ServiceOrderDetailPage = lazy(() => import('./pages/ServiceOrderDetail').then(m => ({ default: m.ServiceOrderDetailPage }))); const VehiclesPage = lazy(() => import('./pages/Vehicles').then(m => ({ default: m.VehiclesPage }))); const VehicleDetailPage = lazy(() => import('./pages/VehicleDetail').then(m => ({ default: m.VehicleDetailPage }))); const InventoryPage = lazy(() => import('./pages/Inventory').then(m => ({ default: m.InventoryPage }))); const InventoryDetailPage = lazy(() => import('./pages/InventoryDetail').then(m => ({ default: m.InventoryDetailPage }))); const CustomersPage = lazy(() => import('./pages/Customers').then(m => ({ default: m.CustomersPage }))); const CustomerDetailPage = lazy(() => import('./pages/CustomerDetail').then(m => ({ default: m.CustomerDetailPage }))); const QuotesPage = lazy(() => import('./pages/Quotes').then(m => ({ default: m.QuotesPage }))); const QuoteDetailPage = lazy(() => import('./pages/QuoteDetail').then(m => ({ default: m.QuoteDetailPage }))); const SettingsPage = lazy(() => import('./pages/Settings').then(m => ({ default: m.SettingsPage }))); const DiagnosticsPage = lazy(() => import('./pages/Diagnostics').then(m => ({ default: m.DiagnosticsPage }))); const DiagnosticsNewPage = lazy(() => import('./pages/DiagnosticsNew').then(m => ({ default: m.DiagnosticsNewPage }))); const DiagnosticDetailPage = lazy(() => import('./pages/DiagnosticDetail').then(m => ({ default: m.DiagnosticDetailPage }))); // Loading fallback component function PageLoader() { return (
Pagina no encontrada