making progress
This commit is contained in:
+19
-19
@@ -17,18 +17,20 @@ const queryClient = new QueryClient({
|
||||
},
|
||||
})
|
||||
|
||||
const LoginPage = lazy(() => import('./pages/LoginPage'))
|
||||
const RegisterPage = lazy(() => import('./pages/RegisterPage'))
|
||||
const DashboardPage = lazy(() => import('./pages/DashboardPage'))
|
||||
const ReposPage = lazy(() => import('./pages/ReposPage'))
|
||||
const RepoPage = lazy(() => import('./pages/RepoPage'))
|
||||
const RepoPRsPage = lazy(() => import('./pages/RepoPRsPage'))
|
||||
const PRDetailPage = lazy(() => import('./pages/PRDetailPage'))
|
||||
const PRsPage = lazy(() => import('./pages/PRsPage'))
|
||||
const PipelinesPage = lazy(() => import('./pages/PipelinesPage'))
|
||||
const ProfilePage = lazy(() => import('./pages/ProfilePage'))
|
||||
const ExplorePage = lazy(() => import('./pages/ExplorePage'))
|
||||
const SettingsPage = lazy(() => import('./pages/SettingsPage'))
|
||||
const LoginPage = lazy(() => import('./pages/LoginPage'))
|
||||
const RegisterPage = lazy(() => import('./pages/RegisterPage'))
|
||||
const DashboardPage = lazy(() => import('./pages/DashboardPage'))
|
||||
const ReposPage = lazy(() => import('./pages/ReposPage'))
|
||||
const RepoPage = lazy(() => import('./pages/RepoPage'))
|
||||
const RepoSettingsPage = lazy(() => import('./pages/RepoSettingsPage'))
|
||||
const RepoIssuesPage = lazy(() => import('./pages/RepoIssuesPage'))
|
||||
const RepoPRsPage = lazy(() => import('./pages/RepoPRsPage'))
|
||||
const PRDetailPage = lazy(() => import('./pages/PRDetailPage'))
|
||||
const PRsPage = lazy(() => import('./pages/PRsPage'))
|
||||
const PipelinesPage = lazy(() => import('./pages/PipelinesPage'))
|
||||
const ProfilePage = lazy(() => import('./pages/ProfilePage'))
|
||||
const ExplorePage = lazy(() => import('./pages/ExplorePage'))
|
||||
const SettingsPage = lazy(() => import('./pages/SettingsPage'))
|
||||
|
||||
function S({ children }: { children: React.ReactNode }) {
|
||||
return <Suspense fallback={<div className="p-6"><RepoListSkeleton /></div>}>{children}</Suspense>
|
||||
@@ -55,19 +57,18 @@ export default function App() {
|
||||
<CSRFBootstrap />
|
||||
<AuthProvider>
|
||||
<Routes>
|
||||
{/* Auth pages — full screen, no shell */}
|
||||
<Route path="/login" element={<S><LoginPage /></S>} />
|
||||
<Route path="/register" element={<S><RegisterPage /></S>} />
|
||||
|
||||
{/* Shell layout — explicit root path prevents ambiguous wildcard matching */}
|
||||
<Route path="/" element={<AppShell />}>
|
||||
<Route index element={<S><DashboardPage /></S>} />
|
||||
|
||||
{/* Repos — nested so /repos/:owner/:repo is unambiguous */}
|
||||
<Route path="repos" element={<S><ReposPage /></S>} />
|
||||
<Route path="repos/:owner/:repo" element={<S><RepoPage /></S>} />
|
||||
<Route path="repos/:owner/:repo/pulls" element={<S><RepoPRsPage /></S>} />
|
||||
<Route path="repos/:owner/:repo/pulls/:prId" element={<S><PRDetailPage /></S>} />
|
||||
<Route path="repos/:owner/:repo" element={<S><RepoPage /></S>} />
|
||||
<Route path="repos/:owner/:repo/settings" element={<S><RepoSettingsPage /></S>} />
|
||||
<Route path="repos/:owner/:repo/issues" element={<S><RepoIssuesPage /></S>} />
|
||||
<Route path="repos/:owner/:repo/pulls" element={<S><RepoPRsPage /></S>} />
|
||||
<Route path="repos/:owner/:repo/pulls/:prId" element={<S><PRDetailPage /></S>} />
|
||||
|
||||
<Route path="pulls" element={<S><PRsPage /></S>} />
|
||||
<Route path="pipelines" element={<S><PipelinesPage /></S>} />
|
||||
@@ -75,7 +76,6 @@ export default function App() {
|
||||
<Route path="profile" element={<S><ProfilePage /></S>} />
|
||||
<Route path="settings" element={<S><SettingsPage /></S>} />
|
||||
|
||||
{/* 404 within shell — shows a message, does NOT redirect */}
|
||||
<Route path="*" element={<NotFound />} />
|
||||
</Route>
|
||||
</Routes>
|
||||
|
||||
Reference in New Issue
Block a user