Moved to lazy loading modules and configured build chunking

modified:   package-lock.json
	modified:   package.json
	modified:   src/App.tsx
	modified:   src/screens/ActivePickListScreen.test.tsx
	modified:   src/screens/ActivePickListScreen.tsx
	modified:   src/screens/BarcodeScannerScreen.tsx
	modified:   src/screens/HomeScreen.tsx
	modified:   src/screens/ImportExportScreen.tsx
	modified:   src/screens/ManageAreasScreen.test.tsx
	modified:   src/screens/ManageAreasScreen.tsx
	modified:   src/screens/ManageCategoriesScreen.test.tsx
	modified:   src/screens/ManageCategoriesScreen.tsx
	modified:   src/screens/ManageProductsScreen.test.tsx
	modified:   src/screens/ManageProductsScreen.tsx
	modified:   src/screens/PickListsScreen.test.tsx
	modified:   src/screens/PickListsScreen.tsx
	modified:   src/screens/StartPickListScreen.test.tsx
	modified:   src/screens/StartPickListScreen.tsx
	modified:   tsconfig.json
	modified:   vite.config.ts
This commit is contained in:
beatzaplenty committed 2025-11-26 09:34:18 +10:00
1 parent da6992372f
commit d6b784ad11
20 files changed
+219 -39

No files matched your search

+26 -22
View File
@@ -2,16 +2,18 @@ import { CssBaseline, ThemeProvider, createTheme } from '@mui/material';
import { BrowserRouter, Route, Routes } from 'react-router-dom';
import { DBProvider } from './context/DBProvider';
import { AppLayout } from './components/AppLayout';
import { HomeScreen } from './screens/HomeScreen';
import { StartPickListScreen } from './screens/StartPickListScreen';
import { PickListsScreen } from './screens/PickListsScreen';
import { ActivePickListScreen } from './screens/ActivePickListScreen';
import { ManageProductsScreen } from './screens/ManageProductsScreen';
import { ManageAreasScreen } from './screens/ManageAreasScreen';
import { ManageCategoriesScreen } from './screens/ManageCategoriesScreen';
import { BarcodeScannerScreen } from './screens/BarcodeScannerScreen';
import React, { Suspense, lazy } from 'react';
import { useServiceWorker } from './hooks/useServiceWorker';
import { ImportExportScreen } from './screens/ImportExportScreen';
const HomeScreen = lazy(() => import('./screens/HomeScreen'));
const StartPickListScreen = lazy(() => import('./screens/StartPickListScreen'));
const PickListsScreen = lazy(() => import('./screens/PickListsScreen'));
const ActivePickListScreen = lazy(() => import('./screens/ActivePickListScreen'));
const ManageProductsScreen = lazy(() => import('./screens/ManageProductsScreen'));
const ManageAreasScreen = lazy(() => import('./screens/ManageAreasScreen'));
const ManageCategoriesScreen = lazy(() => import('./screens/ManageCategoriesScreen'));
const BarcodeScannerScreen = lazy(() => import('./screens/BarcodeScannerScreen'));
const ImportExportScreen = lazy(() => import('./screens/ImportExportScreen'));
const theme = createTheme({
palette: {
@@ -25,19 +27,21 @@ const theme = createTheme({
const AppRoutes = () => {
useServiceWorker();
return (
<Routes>
<Route element={<AppLayout />}>
<Route path="/" element={<HomeScreen />} />
<Route path="/start" element={<StartPickListScreen />} />
<Route path="/pick-lists" element={<PickListsScreen />} />
<Route path="/pick-lists/:id" element={<ActivePickListScreen />} />
<Route path="/products" element={<ManageProductsScreen />} />
<Route path="/categories" element={<ManageCategoriesScreen />} />
<Route path="/areas" element={<ManageAreasScreen />} />
<Route path="/scan" element={<BarcodeScannerScreen />} />
<Route path="/data" element={<ImportExportScreen />} />
</Route>
</Routes>
<Suspense fallback={<div>Loading…</div>}>
<Routes>
<Route element={<AppLayout />}>
<Route path="/" element={<HomeScreen />} />
<Route path="/start" element={<StartPickListScreen />} />
<Route path="/pick-lists" element={<PickListsScreen />} />
<Route path="/pick-lists/:id" element={<ActivePickListScreen />} />
<Route path="/products" element={<ManageProductsScreen />} />
<Route path="/categories" element={<ManageCategoriesScreen />} />
<Route path="/areas" element={<ManageAreasScreen />} />
<Route path="/scan" element={<BarcodeScannerScreen />} />
<Route path="/data" element={<ImportExportScreen />} />
</Route>
</Routes>
</Suspense>
);
};