@@ -2,6 +2,7 @@ import { BrowserRouter, Routes, Route, Navigate } from 'react-router'
22import { useAuthStore } from './features/auth/store'
33import OAuthCallback from './features/auth/OAuthCallback'
44import ProtectedRoute from './features/auth/ProtectedRoute'
5+ import { AppShell } from './shared/components'
56import InstallationList from './features/dashboard/InstallationList'
67import InstallationDetail from './features/dashboard/InstallationDetail'
78import SessionReplay from './features/dashboard/SessionReplay'
@@ -20,14 +21,17 @@ export default function App() {
2021 return (
2122 < BrowserRouter >
2223 < Routes >
24+ { /* Public routes — no shell */ }
2325 < Route path = "/" element = { < AuthRedirect /> } />
2426 < Route path = "/auth/callback" element = { < OAuthCallback /> } />
25- < Route path = "/installations" element = { < ProtectedRoute > < InstallationList /> </ ProtectedRoute > } />
26- < Route path = "/installations/:installationId" element = { < ProtectedRoute > < InstallationDetail /> </ ProtectedRoute > } />
27- < Route path = "/installations/:installationId/sessions/:sessionId" element = { < ProtectedRoute > < SessionReplay /> </ ProtectedRoute > } />
28- < Route path = "/installations/:installationId/setup" element = { < ProtectedRoute > < SetupView /> </ ProtectedRoute > } />
29- < Route path = "/installations/:installationId/settings" element = { < ProtectedRoute > < SettingsView /> </ ProtectedRoute > } />
30- < Route path = "/session/:installationId/*" element = { < ProtectedRoute > < SessionView /> </ ProtectedRoute > } />
27+
28+ { /* Protected routes — wrapped in AppShell */ }
29+ < Route path = "/installations" element = { < ProtectedRoute > < AppShell > < InstallationList /> </ AppShell > </ ProtectedRoute > } />
30+ < Route path = "/installations/:installationId" element = { < ProtectedRoute > < AppShell > < InstallationDetail /> </ AppShell > </ ProtectedRoute > } />
31+ < Route path = "/installations/:installationId/sessions/:sessionId" element = { < ProtectedRoute > < AppShell > < SessionReplay /> </ AppShell > </ ProtectedRoute > } />
32+ < Route path = "/installations/:installationId/setup" element = { < ProtectedRoute > < AppShell > < SetupView /> </ AppShell > </ ProtectedRoute > } />
33+ < Route path = "/installations/:installationId/settings" element = { < ProtectedRoute > < AppShell > < SettingsView /> </ AppShell > </ ProtectedRoute > } />
34+ < Route path = "/session/:installationId/*" element = { < ProtectedRoute > < AppShell > < SessionView /> </ AppShell > </ ProtectedRoute > } />
3135 </ Routes >
3236 </ BrowserRouter >
3337 )
0 commit comments