Wire customergroup/entity APIs, Lieferungen detail editing, and Angebot/Bestellung/Ausliefern/Retoure placeholders.
81 lines
3.5 KiB
JavaScript
81 lines
3.5 KiB
JavaScript
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 LieferungListePage = lazy(() => import('./pages/lieferung/index'));
|
|
const LieferungNeuPage = lazy(() => import('./pages/lieferung/neu'));
|
|
const LieferungLieferantenPage = lazy(() => import('./pages/lieferung/lieferanten'));
|
|
const LieferungEditPage = lazy(() => import('./pages/lieferung/edit'));
|
|
const AuftragAngebotPage = lazy(() => import('./pages/auftrag/index'));
|
|
const AuftragBestellungPage = lazy(() => import('./pages/auftrag/bestellung'));
|
|
const AuftragAusliefernPage = lazy(() => import('./pages/auftrag/ausliefern'));
|
|
const AuftragRetourePage = lazy(() => import('./pages/auftrag/retoure'));
|
|
const KundeListePage = lazy(() => import('./pages/kunde/index'));
|
|
const KundeNeuPage = lazy(() => import('./pages/kunde/neu'));
|
|
const KundeGruppenPage = lazy(() => import('./pages/kunde/gruppen'));
|
|
const KundeEditPage = lazy(() => import('./pages/kunde/edit'));
|
|
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: <SectionLayout sectionPath="/lieferung" />,
|
|
children: [
|
|
{ index: true, element: <LieferungListePage /> },
|
|
{ path: 'neu', element: <LieferungNeuPage /> },
|
|
{ path: 'lieferanten', element: <LieferungLieferantenPage /> },
|
|
{ path: ':deliveryId', element: <LieferungEditPage /> },
|
|
],
|
|
},
|
|
{ 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: <AuftragAngebotPage /> },
|
|
{ path: 'bestellung', element: <AuftragBestellungPage /> },
|
|
{ path: 'ausliefern', element: <AuftragAusliefernPage /> },
|
|
{ path: 'retoure', element: <AuftragRetourePage /> },
|
|
],
|
|
},
|
|
{
|
|
path: 'kunde',
|
|
element: <SectionLayout sectionPath="/kunde" />,
|
|
children: [
|
|
{ index: true, element: <KundeListePage /> },
|
|
{ path: 'neu', element: <KundeNeuPage /> },
|
|
{ path: 'gruppen', element: <KundeGruppenPage /> },
|
|
{ path: ':entityId', element: <KundeEditPage /> },
|
|
],
|
|
},
|
|
{ path: '*', element: <Navigate to="/artikel" replace /> },
|
|
],
|
|
},
|
|
]);
|