Routes.jsxjavascript
import { Route, Routes } from "react-router";
import { GeneralPageTracking } from "./services/tracking/GeneralPageTracking";

import { AppSelectionPage } from "./pages/AppSelection/AppSelection";
import { ValueAdvisoryServicesPage } from "./pages/ValueAdvisoryServices/ValueAdvisoryServices";
import { RadEnablementPage } from "./pages/RadEnablement/RadEnablement";
import { ValuePartnershipPage } from "./pages/ValuePartnership/ValuePartnership";

/**
 * Route table of the exhibit: "/" is the app selection, each presentation
 * mode has its own path, and GeneralPageTracking reports every route change.
 * Value Advisory Services and Rad Enablement are linear SlidePage decks
 * (optional `:viewId` slide segment); Value Partnership is a bespoke
 * interactive sub-app with its own nested routes (see ValuePartnership.jsx).
 */
const Pages = () => {
  return (
    <>
      <Routes>
        <Route path="/" element={<AppSelectionPage />} />
        <Route path="/value-advisory-services/:viewId?" element={<ValueAdvisoryServicesPage />} />
        <Route path="/rad-enablement/:viewId?" element={<RadEnablementPage />} />
        <Route path="/value-partnership/*" element={<ValuePartnershipPage />} />
      </Routes>
      <GeneralPageTracking />
    </>
  );
};

export default Pages;