Adds a compact "Probeer een demonstratiescenario" page listing the 5 named scenarios with live readiness from the manifest, plus a Demo Guide side panel (bottom sheet on mobile) that walks an Operations Manager through all 8 steps with per-step context, live-resolved routes, sessionStorage progress, and a "Demo opnieuw voorbereiden" restart. Login's guided-demo CTA now actually opens the guide. Fixes a real mobile topbar overflow the new guide trigger introduced.
56 lines
2.4 KiB
TypeScript
56 lines
2.4 KiB
TypeScript
import { Navigate, Route, Routes } from "react-router-dom";
|
|
import { AuthProvider } from "./context/AuthContext";
|
|
import { DemoManifestProvider } from "./context/DemoManifestContext";
|
|
import { DemoGuideProvider } from "./context/DemoGuideContext";
|
|
import { Layout } from "./components/Layout";
|
|
import { RequireAuth } from "./components/RequireAuth";
|
|
import { Login } from "./pages/Login";
|
|
import { Dashboard } from "./pages/Dashboard";
|
|
import { Vehicles } from "./pages/Vehicles";
|
|
import { VehicleDetail } from "./pages/VehicleDetail";
|
|
import { Bookings } from "./pages/Bookings";
|
|
import { BookingDetail } from "./pages/BookingDetail";
|
|
import { DataQuality } from "./pages/DataQuality";
|
|
import { DataQualityIssueDetail } from "./pages/DataQualityIssueDetail";
|
|
import { Automation } from "./pages/Automation";
|
|
import { Knowledge } from "./pages/Knowledge";
|
|
import { Audit } from "./pages/Audit";
|
|
import { AboutDemo } from "./pages/AboutDemo";
|
|
import { Scenarios } from "./pages/Scenarios";
|
|
|
|
export function App() {
|
|
return (
|
|
<DemoManifestProvider>
|
|
<AuthProvider>
|
|
<DemoGuideProvider>
|
|
<Routes>
|
|
<Route path="/login" element={<Login />} />
|
|
<Route
|
|
element={
|
|
<RequireAuth>
|
|
<Layout />
|
|
</RequireAuth>
|
|
}
|
|
>
|
|
<Route path="/dashboard" element={<Dashboard />} />
|
|
<Route path="/vehicles" element={<Vehicles />} />
|
|
<Route path="/vehicles/:publicRef" element={<VehicleDetail />} />
|
|
<Route path="/bookings" element={<Bookings />} />
|
|
<Route path="/bookings/:publicRef" element={<BookingDetail />} />
|
|
<Route path="/data-quality" element={<DataQuality />} />
|
|
<Route path="/data-quality/:publicRef" element={<DataQualityIssueDetail />} />
|
|
<Route path="/automation" element={<Automation />} />
|
|
<Route path="/knowledge" element={<Knowledge />} />
|
|
<Route path="/audit" element={<Audit />} />
|
|
<Route path="/about" element={<AboutDemo />} />
|
|
<Route path="/scenarios" element={<Scenarios />} />
|
|
</Route>
|
|
<Route path="/" element={<Navigate to="/dashboard" replace />} />
|
|
<Route path="*" element={<Navigate to="/dashboard" replace />} />
|
|
</Routes>
|
|
</DemoGuideProvider>
|
|
</AuthProvider>
|
|
</DemoManifestProvider>
|
|
);
|
|
}
|