This commit is contained in:
seb
2026-08-06 00:19:21 +02:00
parent 80ca59ab11
commit 855710a198
16 changed files with 270 additions and 185 deletions

62
src/appRouter.jsx Normal file
View File

@@ -0,0 +1,62 @@
import { lazy } from 'react';
import { Navigate, createBrowserRouter } from 'react-router-dom';
import AppShell from './components/AppShell';
import SectionLayout from './components/SectionLayout';
const ArtikelUebersichtPage = lazy(() => import('./pages/artikel/index'));
const ArtikelKategorienPage = lazy(() => import('./pages/artikel/kategorien'));
const RedirectArtikelKategorien = lazy(() => import('./pages/artikel/RedirectArtikelKategorien'));
const ArtikelLagerPage = lazy(() => import('./pages/artikel/lager'));
const ArtikelSkuPage = lazy(() => import('./pages/artikel/sku'));
const LieferungPage = lazy(() => import('./pages/lieferung/index'));
const AuftragAktivePage = lazy(() => import('./pages/auftrag/index'));
const AuftragArchivPage = lazy(() => import('./pages/auftrag/archiv'));
const KundeListePage = lazy(() => import('./pages/kunde/index'));
const KundeGruppenPage = lazy(() => import('./pages/kunde/gruppen'));
const KundeKontaktePage = lazy(() => import('./pages/kunde/kontakte'));
const InfosPage = lazy(() => import('./pages/infos/index'));
export const router = createBrowserRouter([
{
path: '/',
element: <AppShell />,
children: [
{ index: true, element: <Navigate to="/artikel" replace /> },
{ path: 'lieferung', element: <LieferungPage /> },
{ path: 'infos', element: <InfosPage /> },
{
path: 'kategorien/*',
element: <SectionLayout sectionPath="/artikel" />,
children: [{ path: '*', element: <ArtikelKategorienPage /> }],
},
{
path: 'artikel',
element: <SectionLayout sectionPath="/artikel" />,
children: [
{ index: true, element: <ArtikelUebersichtPage /> },
{ path: 'kategorien/*', element: <RedirectArtikelKategorien /> },
{ path: 'lager', element: <ArtikelLagerPage /> },
{ path: ':sku/:tab?', element: <ArtikelSkuPage /> },
],
},
{
path: 'auftrag',
element: <SectionLayout sectionPath="/auftrag" />,
children: [
{ index: true, element: <AuftragAktivePage /> },
{ path: 'archiv', element: <AuftragArchivPage /> },
],
},
{
path: 'kunde',
element: <SectionLayout sectionPath="/kunde" />,
children: [
{ index: true, element: <KundeListePage /> },
{ path: 'gruppen', element: <KundeGruppenPage /> },
{ path: 'kontakte', element: <KundeKontaktePage /> },
],
},
{ path: '*', element: <Navigate to="/artikel" replace /> },
],
},
]);