import { useState } from 'react'; import { Routes, Route } from 'react-router-dom'; import Landing from './pages/Landing'; import SectorSelect from './pages/SectorSelect'; import AppShell from './components/AppShell'; import Dashboard from './pages/Dashboard'; import ShockDetail from './pages/ShockDetail'; import Drugs from './pages/Drugs'; import Alerts from './pages/Alerts'; import Graph from './pages/Graph'; import Query from './pages/Query'; import Simulate from './pages/Simulate'; import MapView from './pages/Map'; export default function App() { // Track whether user has selected sectors (persisted in sessionStorage) const [sectors, setSectors] = useState(() => { try { return JSON.parse(sessionStorage.getItem('shockmap_sectors') || 'null'); } catch { return null; } }); const [guest, setGuest] = useState(() => sessionStorage.getItem('shockmap_guest') === '1'); function enterGuest() { sessionStorage.setItem('shockmap_guest', '1'); setGuest(true); } function selectSectors(s) { sessionStorage.setItem('shockmap_sectors', JSON.stringify(s)); setSectors(s); } return ( {/* Public landing — always accessible */} : } /> {/* Sector selection */} } /> {/* App shell routes */} }> } /> } /> } /> } /> } /> } /> } /> } /> } /> ); }