import React, { Suspense } from 'react'; import { Routes, Route, Navigate, useLocation } from 'react-router-dom'; import { Loader2 } from 'lucide-react'; import Layout from './components/Layout'; import { isAuthenticated } from './dataService'; const Dashboard = React.lazy(() => import('./pages/Dashboard')); const Products = React.lazy(() => import('./pages/Products')); const ProductDetails = React.lazy(() => import('./pages/ProductDetails')); const Clients = React.lazy(() => import('./pages/Clients')); const ClientDetails = React.lazy(() => import('./pages/ClientDetails')); const Campaigns = React.lazy(() => import('./pages/Campaigns')); const Rfm = React.lazy(() => import('./pages/Rfm')); const Login = React.lazy(() => import('./pages/Login')); function PrivateRoute({ children }: { children: React.ReactNode }) { const location = useLocation(); if (!isAuthenticated()) { return ; } return children; } const RouteFallback = () => (
); function App() { return ( }> } /> } /> }> } /> } /> } /> } /> } /> } /> } /> ); } export default App;