diff --git a/frontend-web/src/App.tsx b/frontend-web/src/App.tsx index e2d17ea..d649067 100644 --- a/frontend-web/src/App.tsx +++ b/frontend-web/src/App.tsx @@ -1,21 +1,66 @@ +import {lazy, Suspense} from 'react'; import {BrowserRouter, Routes, Route} from 'react-router-dom'; import Layout from '@/components/Layout'; -import NetWorthPage from '@/pages/NetWorthPage'; -import CashflowPage from '@/pages/CashflowPage'; -import DebtsPage from '@/pages/DebtsPage'; -import InvoicesPage from '@/pages/InvoicesPage'; -import ClientsPage from '@/pages/ClientsPage'; + +// Code splitting: lazy load route components +const NetWorthPage = lazy(() => import('@/pages/NetWorthPage')); +const CashflowPage = lazy(() => import('@/pages/CashflowPage')); +const DebtsPage = lazy(() => import('@/pages/DebtsPage')); +const InvoicesPage = lazy(() => import('@/pages/InvoicesPage')); +const ClientsPage = lazy(() => import('@/pages/ClientsPage')); + +// Simple loading fallback +const PageLoader = () => ( +
+ An unexpected error occurred. Please try refreshing the page. +
+ {import.meta.env.DEV && this.state.error && ( ++ {this.state.error.message} +
+{errors.name}
}{errors.value}
}