From c0559d8b48f329166297c9adc70ddee537ca6c38 Mon Sep 17 00:00:00 2001 From: Marc Mintel Date: Sun, 18 Jan 2026 23:43:58 +0100 Subject: [PATCH] website refactor --- apps/website/app/404/page.tsx | 2 +- .../app/500/ServerErrorPageClient.test.tsx | 50 ------------------- apps/website/app/500/page.tsx | 2 +- apps/website/app/admin/page.tsx | 2 +- apps/website/app/admin/users/page.tsx | 2 +- .../website/app/auth/forgot-password/page.tsx | 2 +- apps/website/app/auth/login/page.tsx | 2 +- apps/website/app/auth/reset-password/page.tsx | 2 +- apps/website/app/auth/signup/page.tsx | 2 +- apps/website/app/drivers/[id]/page.tsx | 2 +- apps/website/app/drivers/page.tsx | 2 +- .../website/app/leaderboards/drivers/page.tsx | 2 +- apps/website/app/leaderboards/page.tsx | 2 +- .../app/leagues/[id]/roster/admin/page.tsx | 2 +- .../app/leagues/[id]/schedule/admin/page.tsx | 2 +- .../app/leagues/[id]/stewarding/page.tsx | 2 +- .../stewarding/protests/[protestId]/page.tsx | 2 +- apps/website/app/leagues/[id]/wallet/page.tsx | 2 +- apps/website/app/leagues/create/page.tsx | 2 +- apps/website/app/leagues/page.tsx | 2 +- apps/website/app/media/avatar/page.tsx | 2 +- apps/website/app/media/leagues/page.tsx | 2 +- apps/website/app/media/page.tsx | 2 +- apps/website/app/media/sponsors/page.tsx | 2 +- apps/website/app/media/teams/page.tsx | 2 +- apps/website/app/media/tracks/page.tsx | 2 +- apps/website/app/onboarding/page.tsx | 2 +- .../app/profile/liveries/upload/page.tsx | 2 +- apps/website/app/profile/page.tsx | 2 +- apps/website/app/profile/settings/page.tsx | 2 +- .../app/profile/sponsorship-requests/page.tsx | 2 +- apps/website/app/races/[id]/page.tsx | 2 +- apps/website/app/races/[id]/results/page.tsx | 2 +- apps/website/app/races/all/page.tsx | 2 +- apps/website/app/races/page.tsx | 2 +- .../website/app/sponsor/leagues/[id]/page.tsx | 2 +- apps/website/app/sponsor/leagues/page.tsx | 2 +- apps/website/app/teams/[id]/page.tsx | 2 +- apps/website/app/teams/leaderboard/page.tsx | 2 +- apps/website/app/teams/page.tsx | 2 +- .../AdminDashboardWrapper.tsx | 0 .../AdminUsersWrapper.tsx | 0 .../CreateLeagueWizard.tsx | 0 .../DriverProfilePageClient.tsx | 0 .../DriverRankingsPageClient.tsx | 0 .../DriversPageClient.tsx | 0 .../ForgotPasswordClient.tsx | 0 .../LeaderboardsPageClient.tsx | 0 .../LeagueAdminSchedulePageClient.tsx | 0 .../LeagueRulebookPageClient.tsx | 0 .../LeagueWalletPageClient.tsx | 0 .../LeaguesPageClient.tsx | 0 .../login => client-wrapper}/LoginClient.tsx | 0 .../MediaPageClient.tsx | 0 .../NotFoundPageClient.tsx | 0 .../OnboardingWizardClient.tsx | 0 .../ProfileLiveryUploadPageClient.tsx | 0 .../ProfilePageClient.tsx | 0 .../ProfileSettingsPageClient.tsx | 0 .../ProtestDetailPageClient.tsx | 0 .../RaceDetailPageClient.tsx | 0 .../RaceResultsPageClient.tsx | 0 .../RacesAllPageClient.tsx | 0 .../RacesPageClient.tsx | 0 .../ResetPasswordClient.tsx | 0 .../RosterAdminPage.tsx | 0 .../ServerErrorPageClient.tsx | 0 .../SignupClient.tsx | 0 .../SponsorLeagueDetailPageClient.tsx | 0 .../SponsorLeaguesPageClient.tsx | 0 .../SponsorshipRequestsClient.tsx | 0 .../SponsorshipRequestsPageClient.tsx | 0 .../StewardingPageClient.tsx | 0 .../TeamDetailPageClient.tsx | 0 .../TeamLeaderboardPageWrapper.tsx | 0 .../TeamsPageClient.tsx | 0 76 files changed, 39 insertions(+), 89 deletions(-) delete mode 100644 apps/website/app/500/ServerErrorPageClient.test.tsx rename apps/website/{app/admin => client-wrapper}/AdminDashboardWrapper.tsx (100%) rename apps/website/{app/admin/users => client-wrapper}/AdminUsersWrapper.tsx (100%) rename apps/website/{app/leagues/create => client-wrapper}/CreateLeagueWizard.tsx (100%) rename apps/website/{app/drivers/[id] => client-wrapper}/DriverProfilePageClient.tsx (100%) rename apps/website/{app/leaderboards/drivers => client-wrapper}/DriverRankingsPageClient.tsx (100%) rename apps/website/{app/drivers => client-wrapper}/DriversPageClient.tsx (100%) rename apps/website/{app/auth/forgot-password => client-wrapper}/ForgotPasswordClient.tsx (100%) rename apps/website/{app/leaderboards => client-wrapper}/LeaderboardsPageClient.tsx (100%) rename apps/website/{app/leagues/[id]/schedule/admin => client-wrapper}/LeagueAdminSchedulePageClient.tsx (100%) rename apps/website/{app/leagues/[id]/rulebook => client-wrapper}/LeagueRulebookPageClient.tsx (100%) rename apps/website/{app/leagues/[id]/wallet => client-wrapper}/LeagueWalletPageClient.tsx (100%) rename apps/website/{app/leagues => client-wrapper}/LeaguesPageClient.tsx (100%) rename apps/website/{app/auth/login => client-wrapper}/LoginClient.tsx (100%) rename apps/website/{app/media => client-wrapper}/MediaPageClient.tsx (100%) rename apps/website/{app/404 => client-wrapper}/NotFoundPageClient.tsx (100%) rename apps/website/{app/onboarding => client-wrapper}/OnboardingWizardClient.tsx (100%) rename apps/website/{app/profile/liveries/upload => client-wrapper}/ProfileLiveryUploadPageClient.tsx (100%) rename apps/website/{app/profile => client-wrapper}/ProfilePageClient.tsx (100%) rename apps/website/{app/profile/settings => client-wrapper}/ProfileSettingsPageClient.tsx (100%) rename apps/website/{app/leagues/[id]/stewarding/protests/[protestId] => client-wrapper}/ProtestDetailPageClient.tsx (100%) rename apps/website/{app/races/[id] => client-wrapper}/RaceDetailPageClient.tsx (100%) rename apps/website/{app/races/[id]/results => client-wrapper}/RaceResultsPageClient.tsx (100%) rename apps/website/{app/races/all => client-wrapper}/RacesAllPageClient.tsx (100%) rename apps/website/{app/races => client-wrapper}/RacesPageClient.tsx (100%) rename apps/website/{app/auth/reset-password => client-wrapper}/ResetPasswordClient.tsx (100%) rename apps/website/{app/leagues/[id]/roster/admin => client-wrapper}/RosterAdminPage.tsx (100%) rename apps/website/{app/500 => client-wrapper}/ServerErrorPageClient.tsx (100%) rename apps/website/{app/auth/signup => client-wrapper}/SignupClient.tsx (100%) rename apps/website/{app/sponsor/leagues/[id] => client-wrapper}/SponsorLeagueDetailPageClient.tsx (100%) rename apps/website/{app/sponsor/leagues => client-wrapper}/SponsorLeaguesPageClient.tsx (100%) rename apps/website/{app/profile/sponsorship-requests => client-wrapper}/SponsorshipRequestsClient.tsx (100%) rename apps/website/{app/profile/sponsorship-requests => client-wrapper}/SponsorshipRequestsPageClient.tsx (100%) rename apps/website/{app/leagues/[id]/stewarding => client-wrapper}/StewardingPageClient.tsx (100%) rename apps/website/{app/teams/[id] => client-wrapper}/TeamDetailPageClient.tsx (100%) rename apps/website/{app/teams/leaderboard => client-wrapper}/TeamLeaderboardPageWrapper.tsx (100%) rename apps/website/{app/teams => client-wrapper}/TeamsPageClient.tsx (100%) diff --git a/apps/website/app/404/page.tsx b/apps/website/app/404/page.tsx index 280b3ffa0..03b11e3af 100644 --- a/apps/website/app/404/page.tsx +++ b/apps/website/app/404/page.tsx @@ -1,4 +1,4 @@ -import { NotFoundPageClient } from './NotFoundPageClient'; +import { NotFoundPageClient } from '@/client-wrapper/NotFoundPageClient'; /** * Custom404Page diff --git a/apps/website/app/500/ServerErrorPageClient.test.tsx b/apps/website/app/500/ServerErrorPageClient.test.tsx deleted file mode 100644 index ba5db8336..000000000 --- a/apps/website/app/500/ServerErrorPageClient.test.tsx +++ /dev/null @@ -1,50 +0,0 @@ -import { render, screen, fireEvent } from '@testing-library/react'; -import { describe, it, expect, vi } from 'vitest'; -import { ServerErrorPageClient } from './ServerErrorPageClient'; -import { useRouter } from 'next/navigation'; - -vi.mock('next/navigation', () => ({ - useRouter: vi.fn(), -})); - -describe('ServerErrorPageClient', () => { - it('renders the server error page with correct content', () => { - const push = vi.fn(); - (useRouter as any).mockReturnValue({ push }); - - render(); - - expect(screen.getByText('CRITICAL_SYSTEM_FAILURE')).toBeDefined(); - expect(screen.getByText(/The application engine encountered an unrecoverable state/)).toBeDefined(); - expect(screen.getByText(/Internal Server Error/)).toBeDefined(); - }); - - it('handles home navigation', () => { - const push = vi.fn(); - (useRouter as any).mockReturnValue({ push }); - - render(); - - const homeButton = screen.getByText('Return to Pits'); - fireEvent.click(homeButton); - - expect(push).toHaveBeenCalledWith('/'); - }); - - it('handles retry via page reload', () => { - const push = vi.fn(); - (useRouter as any).mockReturnValue({ push }); - - const reloadFn = vi.fn(); - vi.stubGlobal('location', { reload: reloadFn }); - - render(); - - const retryButton = screen.getByText('Retry Session'); - fireEvent.click(retryButton); - - expect(reloadFn).toHaveBeenCalled(); - - vi.unstubAllGlobals(); - }); -}); diff --git a/apps/website/app/500/page.tsx b/apps/website/app/500/page.tsx index bec83f4b1..34433d8b2 100644 --- a/apps/website/app/500/page.tsx +++ b/apps/website/app/500/page.tsx @@ -1,4 +1,4 @@ -import { ServerErrorPageClient } from './ServerErrorPageClient'; +import { ServerErrorPageClient } from '@/client-wrapper/ServerErrorPageClient'; /** * Custom500Page diff --git a/apps/website/app/admin/page.tsx b/apps/website/app/admin/page.tsx index 83d6467a6..b563da58b 100644 --- a/apps/website/app/admin/page.tsx +++ b/apps/website/app/admin/page.tsx @@ -1,5 +1,5 @@ import { AdminDashboardPageQuery } from '@/lib/page-queries/AdminDashboardPageQuery'; -import { AdminDashboardWrapper } from './AdminDashboardWrapper'; +import { AdminDashboardWrapper } from '@/client-wrapper/AdminDashboardWrapper'; import { ErrorBanner } from '@/ui/ErrorBanner'; export default async function AdminPage() { diff --git a/apps/website/app/admin/users/page.tsx b/apps/website/app/admin/users/page.tsx index b7221c54c..51d43d7d5 100644 --- a/apps/website/app/admin/users/page.tsx +++ b/apps/website/app/admin/users/page.tsx @@ -1,5 +1,5 @@ import { AdminUsersPageQuery } from '@/lib/page-queries/AdminUsersPageQuery'; -import { AdminUsersWrapper } from './AdminUsersWrapper'; +import { AdminUsersWrapper } from '@/client-wrapper/AdminUsersWrapper'; import { ErrorBanner } from '@/ui/ErrorBanner'; export default async function AdminUsersPage() { diff --git a/apps/website/app/auth/forgot-password/page.tsx b/apps/website/app/auth/forgot-password/page.tsx index d8db14464..f2044c7e3 100644 --- a/apps/website/app/auth/forgot-password/page.tsx +++ b/apps/website/app/auth/forgot-password/page.tsx @@ -8,7 +8,7 @@ import { AuthError } from '@/components/auth/AuthError'; import { ForgotPasswordPageQuery } from '@/lib/page-queries/auth/ForgotPasswordPageQuery'; -import { ForgotPasswordClient } from './ForgotPasswordClient'; +import { ForgotPasswordClient } from '@/client-wrapper/ForgotPasswordClient'; export default async function ForgotPasswordPage({ searchParams, diff --git a/apps/website/app/auth/login/page.tsx b/apps/website/app/auth/login/page.tsx index 435aa5d16..485a92f75 100644 --- a/apps/website/app/auth/login/page.tsx +++ b/apps/website/app/auth/login/page.tsx @@ -8,7 +8,7 @@ import { AuthError } from '@/components/auth/AuthError'; import { LoginPageQuery } from '@/lib/page-queries/auth/LoginPageQuery'; -import { LoginClient } from './LoginClient'; +import { LoginClient } from '@/client-wrapper/LoginClient'; export default async function LoginPage({ searchParams, diff --git a/apps/website/app/auth/reset-password/page.tsx b/apps/website/app/auth/reset-password/page.tsx index 2d563f1da..4780a6f79 100644 --- a/apps/website/app/auth/reset-password/page.tsx +++ b/apps/website/app/auth/reset-password/page.tsx @@ -8,7 +8,7 @@ import { AuthError } from '@/components/auth/AuthError'; import { ResetPasswordPageQuery } from '@/lib/page-queries/auth/ResetPasswordPageQuery'; -import { ResetPasswordClient } from './ResetPasswordClient'; +import { ResetPasswordClient } from '@/client-wrapper/ResetPasswordClient'; export default async function ResetPasswordPage({ searchParams, diff --git a/apps/website/app/auth/signup/page.tsx b/apps/website/app/auth/signup/page.tsx index 14b1577f4..48c5e8a8e 100644 --- a/apps/website/app/auth/signup/page.tsx +++ b/apps/website/app/auth/signup/page.tsx @@ -8,7 +8,7 @@ import { AuthError } from '@/components/auth/AuthError'; import { SignupPageQuery } from '@/lib/page-queries/auth/SignupPageQuery'; -import { SignupClient } from './SignupClient'; +import { SignupClient } from '@/client-wrapper/SignupClient'; export default async function SignupPage({ searchParams, diff --git a/apps/website/app/drivers/[id]/page.tsx b/apps/website/app/drivers/[id]/page.tsx index 92700b29e..3dae44cb3 100644 --- a/apps/website/app/drivers/[id]/page.tsx +++ b/apps/website/app/drivers/[id]/page.tsx @@ -1,7 +1,7 @@ import { redirect } from 'next/navigation'; import { routes } from '@/lib/routing/RouteConfig'; import { DriverProfilePageQuery } from '@/lib/page-queries/DriverProfilePageQuery'; -import { DriverProfilePageClient } from './DriverProfilePageClient'; +import { DriverProfilePageClient } from '@/client-wrapper/DriverProfilePageClient'; export default async function DriverProfilePage({ params }: { params: Promise<{ id: string }> }) { const { id } = await params; diff --git a/apps/website/app/drivers/page.tsx b/apps/website/app/drivers/page.tsx index 660d110d9..100dfd221 100644 --- a/apps/website/app/drivers/page.tsx +++ b/apps/website/app/drivers/page.tsx @@ -1,7 +1,7 @@ import { redirect } from 'next/navigation'; import { routes } from '@/lib/routing/RouteConfig'; import { DriversPageQuery } from '@/lib/page-queries/DriversPageQuery'; -import { DriversPageClient } from './DriversPageClient'; +import { DriversPageClient } from '@/client-wrapper/DriversPageClient'; export default async function Page() { const result = await DriversPageQuery.execute(); diff --git a/apps/website/app/leaderboards/drivers/page.tsx b/apps/website/app/leaderboards/drivers/page.tsx index 96dfae373..751a13117 100644 --- a/apps/website/app/leaderboards/drivers/page.tsx +++ b/apps/website/app/leaderboards/drivers/page.tsx @@ -1,6 +1,6 @@ import { notFound, redirect } from 'next/navigation'; import { DriverRankingsPageQuery } from '@/lib/page-queries/DriverRankingsPageQuery'; -import { DriverRankingsPageClient } from './DriverRankingsPageClient'; +import { DriverRankingsPageClient } from '@/client-wrapper/DriverRankingsPageClient'; import { routes } from '@/lib/routing/RouteConfig'; import { logger } from '@/lib/infrastructure/logging/logger'; diff --git a/apps/website/app/leaderboards/page.tsx b/apps/website/app/leaderboards/page.tsx index c67fd6b71..844d79da6 100644 --- a/apps/website/app/leaderboards/page.tsx +++ b/apps/website/app/leaderboards/page.tsx @@ -1,6 +1,6 @@ import { notFound, redirect } from 'next/navigation'; import { LeaderboardsPageQuery } from '@/lib/page-queries/LeaderboardsPageQuery'; -import { LeaderboardsPageClient } from './LeaderboardsPageClient'; +import { LeaderboardsPageClient } from '@/client-wrapper/LeaderboardsPageClient'; import { routes } from '@/lib/routing/RouteConfig'; import { logger } from '@/lib/infrastructure/logging/logger'; diff --git a/apps/website/app/leagues/[id]/roster/admin/page.tsx b/apps/website/app/leagues/[id]/roster/admin/page.tsx index 2feefd29b..bfe325e11 100644 --- a/apps/website/app/leagues/[id]/roster/admin/page.tsx +++ b/apps/website/app/leagues/[id]/roster/admin/page.tsx @@ -1,6 +1,6 @@ 'use client'; -import { RosterAdminPage } from './RosterAdminPage'; +import { RosterAdminPage } from '@/client-wrapper/RosterAdminPage'; export default function LeagueRosterAdminPage() { return ; diff --git a/apps/website/app/leagues/[id]/schedule/admin/page.tsx b/apps/website/app/leagues/[id]/schedule/admin/page.tsx index 8767362a2..358271af7 100644 --- a/apps/website/app/leagues/[id]/schedule/admin/page.tsx +++ b/apps/website/app/leagues/[id]/schedule/admin/page.tsx @@ -1,6 +1,6 @@ import { notFound } from 'next/navigation'; import { LeagueScheduleAdminPageQuery } from '@/lib/page-queries/LeagueScheduleAdminPageQuery'; -import { LeagueAdminSchedulePageClient } from './LeagueAdminSchedulePageClient'; +import { LeagueAdminSchedulePageClient } from '@/client-wrapper/LeagueAdminSchedulePageClient'; interface Props { params: Promise<{ id: string }>; diff --git a/apps/website/app/leagues/[id]/stewarding/page.tsx b/apps/website/app/leagues/[id]/stewarding/page.tsx index 9b71fa107..afb2cdb5d 100644 --- a/apps/website/app/leagues/[id]/stewarding/page.tsx +++ b/apps/website/app/leagues/[id]/stewarding/page.tsx @@ -1,5 +1,5 @@ import { LeagueStewardingPageQuery } from '@/lib/page-queries/LeagueStewardingPageQuery'; -import { StewardingPageClient } from './StewardingPageClient'; +import { StewardingPageClient } from '@/client-wrapper/StewardingPageClient'; import { notFound } from 'next/navigation'; interface Props { diff --git a/apps/website/app/leagues/[id]/stewarding/protests/[protestId]/page.tsx b/apps/website/app/leagues/[id]/stewarding/protests/[protestId]/page.tsx index 6fb3e91bf..5bcff0fbb 100644 --- a/apps/website/app/leagues/[id]/stewarding/protests/[protestId]/page.tsx +++ b/apps/website/app/leagues/[id]/stewarding/protests/[protestId]/page.tsx @@ -1,6 +1,6 @@ import { notFound } from 'next/navigation'; import { LeagueProtestDetailPageQuery } from '@/lib/page-queries/LeagueProtestDetailPageQuery'; -import { ProtestDetailPageClient } from './ProtestDetailPageClient'; +import { ProtestDetailPageClient } from '@/client-wrapper/ProtestDetailPageClient'; interface Props { params: Promise<{ id: string; protestId: string }>; diff --git a/apps/website/app/leagues/[id]/wallet/page.tsx b/apps/website/app/leagues/[id]/wallet/page.tsx index 45ced84c7..21bdeeb2b 100644 --- a/apps/website/app/leagues/[id]/wallet/page.tsx +++ b/apps/website/app/leagues/[id]/wallet/page.tsx @@ -1,5 +1,5 @@ import { LeagueWalletPageQuery } from '@/lib/page-queries/LeagueWalletPageQuery'; -import { LeagueWalletPageClient } from './LeagueWalletPageClient'; +import { LeagueWalletPageClient } from '@/client-wrapper/LeagueWalletPageClient'; import { notFound } from 'next/navigation'; interface Props { diff --git a/apps/website/app/leagues/create/page.tsx b/apps/website/app/leagues/create/page.tsx index 1c6fb9e0b..72a1af1bd 100644 --- a/apps/website/app/leagues/create/page.tsx +++ b/apps/website/app/leagues/create/page.tsx @@ -2,7 +2,7 @@ import React from 'react'; import { useRouter, useSearchParams } from 'next/navigation'; -import { CreateLeagueWizard } from './CreateLeagueWizard'; +import { CreateLeagueWizard } from '@/client-wrapper/CreateLeagueWizard'; import { Section } from '@/ui/Section'; import { Container } from '@/ui/Container'; import { SearchParamParser } from '@/lib/routing/search-params/SearchParamParser'; diff --git a/apps/website/app/leagues/page.tsx b/apps/website/app/leagues/page.tsx index b06a7e449..b53b5bea7 100644 --- a/apps/website/app/leagues/page.tsx +++ b/apps/website/app/leagues/page.tsx @@ -1,5 +1,5 @@ import { notFound } from 'next/navigation'; -import { LeaguesPageClient } from './LeaguesPageClient'; +import { LeaguesPageClient } from '@/client-wrapper/LeaguesPageClient'; import { LeaguesPageQuery } from '@/lib/page-queries/LeaguesPageQuery'; export default async function Page() { diff --git a/apps/website/app/media/avatar/page.tsx b/apps/website/app/media/avatar/page.tsx index 5c882ade7..d8b55deed 100644 --- a/apps/website/app/media/avatar/page.tsx +++ b/apps/website/app/media/avatar/page.tsx @@ -1,5 +1,5 @@ import React from 'react'; -import { MediaPageClient } from '../MediaPageClient'; +import { MediaPageClient } from '@/client-wrapper/MediaPageClient'; export default async function AvatarsPage() { const assets = [ diff --git a/apps/website/app/media/leagues/page.tsx b/apps/website/app/media/leagues/page.tsx index 6ad4745a1..45cc65875 100644 --- a/apps/website/app/media/leagues/page.tsx +++ b/apps/website/app/media/leagues/page.tsx @@ -1,5 +1,5 @@ import React from 'react'; -import { MediaPageClient } from '../MediaPageClient'; +import { MediaPageClient } from '@/client-wrapper/MediaPageClient'; export default async function LeaguesMediaPage() { const assets = [ diff --git a/apps/website/app/media/page.tsx b/apps/website/app/media/page.tsx index 66f4fdb19..cfaea7032 100644 --- a/apps/website/app/media/page.tsx +++ b/apps/website/app/media/page.tsx @@ -1,5 +1,5 @@ import React from 'react'; -import { MediaPageClient } from './MediaPageClient'; +import { MediaPageClient } from '@/client-wrapper/MediaPageClient'; export default async function MediaPage() { // In a real app, we would fetch this data from an API or database diff --git a/apps/website/app/media/sponsors/page.tsx b/apps/website/app/media/sponsors/page.tsx index 9cbbde0f2..905a9e6dc 100644 --- a/apps/website/app/media/sponsors/page.tsx +++ b/apps/website/app/media/sponsors/page.tsx @@ -1,5 +1,5 @@ import React from 'react'; -import { MediaPageClient } from '../MediaPageClient'; +import { MediaPageClient } from '@/client-wrapper/MediaPageClient'; export default async function SponsorsMediaPage() { const assets = [ diff --git a/apps/website/app/media/teams/page.tsx b/apps/website/app/media/teams/page.tsx index ebb1ebba2..972c498e4 100644 --- a/apps/website/app/media/teams/page.tsx +++ b/apps/website/app/media/teams/page.tsx @@ -1,5 +1,5 @@ import React from 'react'; -import { MediaPageClient } from '../MediaPageClient'; +import { MediaPageClient } from '@/client-wrapper/MediaPageClient'; export default async function TeamsMediaPage() { const assets = [ diff --git a/apps/website/app/media/tracks/page.tsx b/apps/website/app/media/tracks/page.tsx index ddfddcc70..ee8d10ce6 100644 --- a/apps/website/app/media/tracks/page.tsx +++ b/apps/website/app/media/tracks/page.tsx @@ -1,5 +1,5 @@ import React from 'react'; -import { MediaPageClient } from '../MediaPageClient'; +import { MediaPageClient } from '@/client-wrapper/MediaPageClient'; export default async function TracksMediaPage() { const assets = [ diff --git a/apps/website/app/onboarding/page.tsx b/apps/website/app/onboarding/page.tsx index 0bf2fb839..2f1f1288e 100644 --- a/apps/website/app/onboarding/page.tsx +++ b/apps/website/app/onboarding/page.tsx @@ -1,5 +1,5 @@ import { redirect } from 'next/navigation'; -import { OnboardingWizardClient } from './OnboardingWizardClient'; +import { OnboardingWizardClient } from '@/client-wrapper/OnboardingWizardClient'; import { OnboardingPageQuery } from '@/lib/page-queries/OnboardingPageQuery'; import { SearchParamBuilder } from '@/lib/routing/search-params/SearchParamBuilder'; import { routes } from '@/lib/routing/RouteConfig'; diff --git a/apps/website/app/profile/liveries/upload/page.tsx b/apps/website/app/profile/liveries/upload/page.tsx index 0e6c85aa5..bc909610b 100644 --- a/apps/website/app/profile/liveries/upload/page.tsx +++ b/apps/website/app/profile/liveries/upload/page.tsx @@ -1,5 +1,5 @@ import React from 'react'; -import { ProfileLiveryUploadPageClient } from './ProfileLiveryUploadPageClient'; +import { ProfileLiveryUploadPageClient } from '@/client-wrapper/ProfileLiveryUploadPageClient'; export default async function ProfileLiveryUploadPage() { return ; diff --git a/apps/website/app/profile/page.tsx b/apps/website/app/profile/page.tsx index c69bef3dd..5a1ecfd3e 100644 --- a/apps/website/app/profile/page.tsx +++ b/apps/website/app/profile/page.tsx @@ -1,6 +1,6 @@ import { ProfilePageQuery } from '@/lib/page-queries/ProfilePageQuery'; import { notFound } from 'next/navigation'; -import { ProfilePageClient } from './ProfilePageClient'; +import { ProfilePageClient } from '@/client-wrapper/ProfilePageClient'; export default async function ProfilePage() { const query = new ProfilePageQuery(); diff --git a/apps/website/app/profile/settings/page.tsx b/apps/website/app/profile/settings/page.tsx index f4136eee8..8cce15edf 100644 --- a/apps/website/app/profile/settings/page.tsx +++ b/apps/website/app/profile/settings/page.tsx @@ -1,7 +1,7 @@ import { ProfilePageQuery } from '@/lib/page-queries/ProfilePageQuery'; import { notFound } from 'next/navigation'; import { updateProfileAction } from '@/app/actions/profileActions'; -import { ProfileSettingsPageClient } from './ProfileSettingsPageClient'; +import { ProfileSettingsPageClient } from '@/client-wrapper/ProfileSettingsPageClient'; export default async function ProfileSettingsPage() { const query = new ProfilePageQuery(); diff --git a/apps/website/app/profile/sponsorship-requests/page.tsx b/apps/website/app/profile/sponsorship-requests/page.tsx index c20bbba86..630d982aa 100644 --- a/apps/website/app/profile/sponsorship-requests/page.tsx +++ b/apps/website/app/profile/sponsorship-requests/page.tsx @@ -1,6 +1,6 @@ import { notFound } from 'next/navigation'; import { SponsorshipRequestsPageQuery } from '@/lib/page-queries/SponsorshipRequestsPageQuery'; -import { SponsorshipRequestsClient } from './SponsorshipRequestsClient'; +import { SponsorshipRequestsClient } from '@/client-wrapper/SponsorshipRequestsClient'; import { acceptSponsorshipRequest, rejectSponsorshipRequest } from '@/app/actions/sponsorshipActions'; export default async function SponsorshipRequestsPage() { diff --git a/apps/website/app/races/[id]/page.tsx b/apps/website/app/races/[id]/page.tsx index 44ab5c6b3..bfec3bae5 100644 --- a/apps/website/app/races/[id]/page.tsx +++ b/apps/website/app/races/[id]/page.tsx @@ -1,7 +1,7 @@ import { notFound } from 'next/navigation'; import { PageWrapper } from '@/ui/PageWrapper'; import { RaceDetailPageQuery } from '@/lib/page-queries/races/RaceDetailPageQuery'; -import { RaceDetailPageClient } from './RaceDetailPageClient'; +import { RaceDetailPageClient } from '@/client-wrapper/RaceDetailPageClient'; interface RaceDetailPageProps { params: Promise<{ diff --git a/apps/website/app/races/[id]/results/page.tsx b/apps/website/app/races/[id]/results/page.tsx index 1a42ae803..05183e2bd 100644 --- a/apps/website/app/races/[id]/results/page.tsx +++ b/apps/website/app/races/[id]/results/page.tsx @@ -1,7 +1,7 @@ import { notFound } from 'next/navigation'; import { PageWrapper } from '@/ui/PageWrapper'; import { RaceResultsPageQuery } from '@/lib/page-queries/races/RaceResultsPageQuery'; -import { RaceResultsPageClient } from './RaceResultsPageClient'; +import { RaceResultsPageClient } from '@/client-wrapper/RaceResultsPageClient'; interface RaceResultsPageProps { params: Promise<{ diff --git a/apps/website/app/races/all/page.tsx b/apps/website/app/races/all/page.tsx index 8081fe78f..cd3843393 100644 --- a/apps/website/app/races/all/page.tsx +++ b/apps/website/app/races/all/page.tsx @@ -1,6 +1,6 @@ import { notFound } from 'next/navigation'; import { RacesAllPageQuery } from '@/lib/page-queries/races/RacesAllPageQuery'; -import { RacesAllPageClient } from './RacesAllPageClient'; +import { RacesAllPageClient } from '@/client-wrapper/RacesAllPageClient'; export default async function Page() { // Execute the PageQuery diff --git a/apps/website/app/races/page.tsx b/apps/website/app/races/page.tsx index ddd541723..97c56fe79 100644 --- a/apps/website/app/races/page.tsx +++ b/apps/website/app/races/page.tsx @@ -1,6 +1,6 @@ import { notFound } from 'next/navigation'; import { RacesPageQuery } from '@/lib/page-queries/races/RacesPageQuery'; -import { RacesPageClient } from './RacesPageClient'; +import { RacesPageClient } from '@/client-wrapper/RacesPageClient'; export default async function Page() { const query = new RacesPageQuery(); diff --git a/apps/website/app/sponsor/leagues/[id]/page.tsx b/apps/website/app/sponsor/leagues/[id]/page.tsx index 2586a3e13..cfbdfa610 100644 --- a/apps/website/app/sponsor/leagues/[id]/page.tsx +++ b/apps/website/app/sponsor/leagues/[id]/page.tsx @@ -1,6 +1,6 @@ import { notFound } from 'next/navigation'; import { PageWrapper } from '@/ui/PageWrapper'; -import { SponsorLeagueDetailPageClient } from './SponsorLeagueDetailPageClient'; +import { SponsorLeagueDetailPageClient } from '@/client-wrapper/SponsorLeagueDetailPageClient'; import { SponsorsApiClient } from '@/lib/api/sponsors/SponsorsApiClient'; import { EnhancedErrorReporter } from '@/lib/infrastructure/EnhancedErrorReporter'; import { ConsoleLogger } from '@/lib/infrastructure/logging/ConsoleLogger'; diff --git a/apps/website/app/sponsor/leagues/page.tsx b/apps/website/app/sponsor/leagues/page.tsx index c474b13f1..af1e355d4 100644 --- a/apps/website/app/sponsor/leagues/page.tsx +++ b/apps/website/app/sponsor/leagues/page.tsx @@ -1,5 +1,5 @@ import { PageWrapper } from '@/ui/PageWrapper'; -import { SponsorLeaguesPageClient } from './SponsorLeaguesPageClient'; +import { SponsorLeaguesPageClient } from '@/client-wrapper/SponsorLeaguesPageClient'; import { SponsorsApiClient } from '@/lib/api/sponsors/SponsorsApiClient'; import { EnhancedErrorReporter } from '@/lib/infrastructure/EnhancedErrorReporter'; import { ConsoleLogger } from '@/lib/infrastructure/logging/ConsoleLogger'; diff --git a/apps/website/app/teams/[id]/page.tsx b/apps/website/app/teams/[id]/page.tsx index ac22cbcd0..4d28b064c 100644 --- a/apps/website/app/teams/[id]/page.tsx +++ b/apps/website/app/teams/[id]/page.tsx @@ -1,6 +1,6 @@ import { notFound } from 'next/navigation'; import { TeamDetailPageQuery } from '@/lib/page-queries/TeamDetailPageQuery'; -import { TeamDetailPageClient } from './TeamDetailPageClient'; +import { TeamDetailPageClient } from '@/client-wrapper/TeamDetailPageClient'; export default async function Page({ params }: { params: Promise<{ id: string }> }) { const { id } = await params; diff --git a/apps/website/app/teams/leaderboard/page.tsx b/apps/website/app/teams/leaderboard/page.tsx index 8a054843f..9d97c8c74 100644 --- a/apps/website/app/teams/leaderboard/page.tsx +++ b/apps/website/app/teams/leaderboard/page.tsx @@ -1,6 +1,6 @@ import { notFound } from 'next/navigation'; import { TeamLeaderboardPageQuery } from '@/lib/page-queries/TeamLeaderboardPageQuery'; -import { TeamLeaderboardPageWrapper } from './TeamLeaderboardPageWrapper'; +import { TeamLeaderboardPageWrapper } from '@/client-wrapper/TeamLeaderboardPageWrapper'; export default async function TeamLeaderboardPage() { const query = new TeamLeaderboardPageQuery(); diff --git a/apps/website/app/teams/page.tsx b/apps/website/app/teams/page.tsx index 769e8f818..68475ac4c 100644 --- a/apps/website/app/teams/page.tsx +++ b/apps/website/app/teams/page.tsx @@ -1,6 +1,6 @@ import { notFound } from 'next/navigation'; import { TeamsPageQuery } from '@/lib/page-queries/TeamsPageQuery'; -import { TeamsPageClient } from './TeamsPageClient'; +import { TeamsPageClient } from '@/client-wrapper/TeamsPageClient'; export default async function Page() { const query = new TeamsPageQuery(); diff --git a/apps/website/app/admin/AdminDashboardWrapper.tsx b/apps/website/client-wrapper/AdminDashboardWrapper.tsx similarity index 100% rename from apps/website/app/admin/AdminDashboardWrapper.tsx rename to apps/website/client-wrapper/AdminDashboardWrapper.tsx diff --git a/apps/website/app/admin/users/AdminUsersWrapper.tsx b/apps/website/client-wrapper/AdminUsersWrapper.tsx similarity index 100% rename from apps/website/app/admin/users/AdminUsersWrapper.tsx rename to apps/website/client-wrapper/AdminUsersWrapper.tsx diff --git a/apps/website/app/leagues/create/CreateLeagueWizard.tsx b/apps/website/client-wrapper/CreateLeagueWizard.tsx similarity index 100% rename from apps/website/app/leagues/create/CreateLeagueWizard.tsx rename to apps/website/client-wrapper/CreateLeagueWizard.tsx diff --git a/apps/website/app/drivers/[id]/DriverProfilePageClient.tsx b/apps/website/client-wrapper/DriverProfilePageClient.tsx similarity index 100% rename from apps/website/app/drivers/[id]/DriverProfilePageClient.tsx rename to apps/website/client-wrapper/DriverProfilePageClient.tsx diff --git a/apps/website/app/leaderboards/drivers/DriverRankingsPageClient.tsx b/apps/website/client-wrapper/DriverRankingsPageClient.tsx similarity index 100% rename from apps/website/app/leaderboards/drivers/DriverRankingsPageClient.tsx rename to apps/website/client-wrapper/DriverRankingsPageClient.tsx diff --git a/apps/website/app/drivers/DriversPageClient.tsx b/apps/website/client-wrapper/DriversPageClient.tsx similarity index 100% rename from apps/website/app/drivers/DriversPageClient.tsx rename to apps/website/client-wrapper/DriversPageClient.tsx diff --git a/apps/website/app/auth/forgot-password/ForgotPasswordClient.tsx b/apps/website/client-wrapper/ForgotPasswordClient.tsx similarity index 100% rename from apps/website/app/auth/forgot-password/ForgotPasswordClient.tsx rename to apps/website/client-wrapper/ForgotPasswordClient.tsx diff --git a/apps/website/app/leaderboards/LeaderboardsPageClient.tsx b/apps/website/client-wrapper/LeaderboardsPageClient.tsx similarity index 100% rename from apps/website/app/leaderboards/LeaderboardsPageClient.tsx rename to apps/website/client-wrapper/LeaderboardsPageClient.tsx diff --git a/apps/website/app/leagues/[id]/schedule/admin/LeagueAdminSchedulePageClient.tsx b/apps/website/client-wrapper/LeagueAdminSchedulePageClient.tsx similarity index 100% rename from apps/website/app/leagues/[id]/schedule/admin/LeagueAdminSchedulePageClient.tsx rename to apps/website/client-wrapper/LeagueAdminSchedulePageClient.tsx diff --git a/apps/website/app/leagues/[id]/rulebook/LeagueRulebookPageClient.tsx b/apps/website/client-wrapper/LeagueRulebookPageClient.tsx similarity index 100% rename from apps/website/app/leagues/[id]/rulebook/LeagueRulebookPageClient.tsx rename to apps/website/client-wrapper/LeagueRulebookPageClient.tsx diff --git a/apps/website/app/leagues/[id]/wallet/LeagueWalletPageClient.tsx b/apps/website/client-wrapper/LeagueWalletPageClient.tsx similarity index 100% rename from apps/website/app/leagues/[id]/wallet/LeagueWalletPageClient.tsx rename to apps/website/client-wrapper/LeagueWalletPageClient.tsx diff --git a/apps/website/app/leagues/LeaguesPageClient.tsx b/apps/website/client-wrapper/LeaguesPageClient.tsx similarity index 100% rename from apps/website/app/leagues/LeaguesPageClient.tsx rename to apps/website/client-wrapper/LeaguesPageClient.tsx diff --git a/apps/website/app/auth/login/LoginClient.tsx b/apps/website/client-wrapper/LoginClient.tsx similarity index 100% rename from apps/website/app/auth/login/LoginClient.tsx rename to apps/website/client-wrapper/LoginClient.tsx diff --git a/apps/website/app/media/MediaPageClient.tsx b/apps/website/client-wrapper/MediaPageClient.tsx similarity index 100% rename from apps/website/app/media/MediaPageClient.tsx rename to apps/website/client-wrapper/MediaPageClient.tsx diff --git a/apps/website/app/404/NotFoundPageClient.tsx b/apps/website/client-wrapper/NotFoundPageClient.tsx similarity index 100% rename from apps/website/app/404/NotFoundPageClient.tsx rename to apps/website/client-wrapper/NotFoundPageClient.tsx diff --git a/apps/website/app/onboarding/OnboardingWizardClient.tsx b/apps/website/client-wrapper/OnboardingWizardClient.tsx similarity index 100% rename from apps/website/app/onboarding/OnboardingWizardClient.tsx rename to apps/website/client-wrapper/OnboardingWizardClient.tsx diff --git a/apps/website/app/profile/liveries/upload/ProfileLiveryUploadPageClient.tsx b/apps/website/client-wrapper/ProfileLiveryUploadPageClient.tsx similarity index 100% rename from apps/website/app/profile/liveries/upload/ProfileLiveryUploadPageClient.tsx rename to apps/website/client-wrapper/ProfileLiveryUploadPageClient.tsx diff --git a/apps/website/app/profile/ProfilePageClient.tsx b/apps/website/client-wrapper/ProfilePageClient.tsx similarity index 100% rename from apps/website/app/profile/ProfilePageClient.tsx rename to apps/website/client-wrapper/ProfilePageClient.tsx diff --git a/apps/website/app/profile/settings/ProfileSettingsPageClient.tsx b/apps/website/client-wrapper/ProfileSettingsPageClient.tsx similarity index 100% rename from apps/website/app/profile/settings/ProfileSettingsPageClient.tsx rename to apps/website/client-wrapper/ProfileSettingsPageClient.tsx diff --git a/apps/website/app/leagues/[id]/stewarding/protests/[protestId]/ProtestDetailPageClient.tsx b/apps/website/client-wrapper/ProtestDetailPageClient.tsx similarity index 100% rename from apps/website/app/leagues/[id]/stewarding/protests/[protestId]/ProtestDetailPageClient.tsx rename to apps/website/client-wrapper/ProtestDetailPageClient.tsx diff --git a/apps/website/app/races/[id]/RaceDetailPageClient.tsx b/apps/website/client-wrapper/RaceDetailPageClient.tsx similarity index 100% rename from apps/website/app/races/[id]/RaceDetailPageClient.tsx rename to apps/website/client-wrapper/RaceDetailPageClient.tsx diff --git a/apps/website/app/races/[id]/results/RaceResultsPageClient.tsx b/apps/website/client-wrapper/RaceResultsPageClient.tsx similarity index 100% rename from apps/website/app/races/[id]/results/RaceResultsPageClient.tsx rename to apps/website/client-wrapper/RaceResultsPageClient.tsx diff --git a/apps/website/app/races/all/RacesAllPageClient.tsx b/apps/website/client-wrapper/RacesAllPageClient.tsx similarity index 100% rename from apps/website/app/races/all/RacesAllPageClient.tsx rename to apps/website/client-wrapper/RacesAllPageClient.tsx diff --git a/apps/website/app/races/RacesPageClient.tsx b/apps/website/client-wrapper/RacesPageClient.tsx similarity index 100% rename from apps/website/app/races/RacesPageClient.tsx rename to apps/website/client-wrapper/RacesPageClient.tsx diff --git a/apps/website/app/auth/reset-password/ResetPasswordClient.tsx b/apps/website/client-wrapper/ResetPasswordClient.tsx similarity index 100% rename from apps/website/app/auth/reset-password/ResetPasswordClient.tsx rename to apps/website/client-wrapper/ResetPasswordClient.tsx diff --git a/apps/website/app/leagues/[id]/roster/admin/RosterAdminPage.tsx b/apps/website/client-wrapper/RosterAdminPage.tsx similarity index 100% rename from apps/website/app/leagues/[id]/roster/admin/RosterAdminPage.tsx rename to apps/website/client-wrapper/RosterAdminPage.tsx diff --git a/apps/website/app/500/ServerErrorPageClient.tsx b/apps/website/client-wrapper/ServerErrorPageClient.tsx similarity index 100% rename from apps/website/app/500/ServerErrorPageClient.tsx rename to apps/website/client-wrapper/ServerErrorPageClient.tsx diff --git a/apps/website/app/auth/signup/SignupClient.tsx b/apps/website/client-wrapper/SignupClient.tsx similarity index 100% rename from apps/website/app/auth/signup/SignupClient.tsx rename to apps/website/client-wrapper/SignupClient.tsx diff --git a/apps/website/app/sponsor/leagues/[id]/SponsorLeagueDetailPageClient.tsx b/apps/website/client-wrapper/SponsorLeagueDetailPageClient.tsx similarity index 100% rename from apps/website/app/sponsor/leagues/[id]/SponsorLeagueDetailPageClient.tsx rename to apps/website/client-wrapper/SponsorLeagueDetailPageClient.tsx diff --git a/apps/website/app/sponsor/leagues/SponsorLeaguesPageClient.tsx b/apps/website/client-wrapper/SponsorLeaguesPageClient.tsx similarity index 100% rename from apps/website/app/sponsor/leagues/SponsorLeaguesPageClient.tsx rename to apps/website/client-wrapper/SponsorLeaguesPageClient.tsx diff --git a/apps/website/app/profile/sponsorship-requests/SponsorshipRequestsClient.tsx b/apps/website/client-wrapper/SponsorshipRequestsClient.tsx similarity index 100% rename from apps/website/app/profile/sponsorship-requests/SponsorshipRequestsClient.tsx rename to apps/website/client-wrapper/SponsorshipRequestsClient.tsx diff --git a/apps/website/app/profile/sponsorship-requests/SponsorshipRequestsPageClient.tsx b/apps/website/client-wrapper/SponsorshipRequestsPageClient.tsx similarity index 100% rename from apps/website/app/profile/sponsorship-requests/SponsorshipRequestsPageClient.tsx rename to apps/website/client-wrapper/SponsorshipRequestsPageClient.tsx diff --git a/apps/website/app/leagues/[id]/stewarding/StewardingPageClient.tsx b/apps/website/client-wrapper/StewardingPageClient.tsx similarity index 100% rename from apps/website/app/leagues/[id]/stewarding/StewardingPageClient.tsx rename to apps/website/client-wrapper/StewardingPageClient.tsx diff --git a/apps/website/app/teams/[id]/TeamDetailPageClient.tsx b/apps/website/client-wrapper/TeamDetailPageClient.tsx similarity index 100% rename from apps/website/app/teams/[id]/TeamDetailPageClient.tsx rename to apps/website/client-wrapper/TeamDetailPageClient.tsx diff --git a/apps/website/app/teams/leaderboard/TeamLeaderboardPageWrapper.tsx b/apps/website/client-wrapper/TeamLeaderboardPageWrapper.tsx similarity index 100% rename from apps/website/app/teams/leaderboard/TeamLeaderboardPageWrapper.tsx rename to apps/website/client-wrapper/TeamLeaderboardPageWrapper.tsx diff --git a/apps/website/app/teams/TeamsPageClient.tsx b/apps/website/client-wrapper/TeamsPageClient.tsx similarity index 100% rename from apps/website/app/teams/TeamsPageClient.tsx rename to apps/website/client-wrapper/TeamsPageClient.tsx