website refactor

This commit is contained in:
2026-01-14 16:28:39 +01:00
parent 85e09b6f4d
commit 4b7d82ab43
119 changed files with 2403 additions and 1615 deletions

View File

@@ -4,43 +4,25 @@ import { DriverProfilePageQuery } from '@/lib/page-queries/page-queries/DriverPr
import { DriverProfilePageClient } from '@/components/drivers/DriverProfilePageClient';
export default async function DriverProfilePage({ params }: { params: { id: string } }) {
// Execute the page query
const result = await DriverProfilePageQuery.execute(params.id);
// Handle different result statuses
switch (result.status) {
case 'notFound':
if (result.isErr()) {
const error = result.getError();
if (error === 'NotFound') {
redirect(routes.error.notFound);
case 'redirect':
redirect(result.to);
case 'error':
// Pass error to client component
return (
<DriverProfilePageClient
pageDto={null}
error={result.errorId}
/>
);
case 'ok':
const viewModel = result.dto;
const hasData = !!viewModel.currentDriver;
if (!hasData) {
return (
<DriverProfilePageClient
pageDto={null}
empty={{
title: 'Driver not found',
description: 'The driver profile may not exist or you may not have access',
}}
/>
);
}
return (
<DriverProfilePageClient
pageDto={viewModel}
/>
);
}
return (
<DriverProfilePageClient
pageDto={null}
error={error}
/>
);
}
const viewData = result.unwrap();
return (
<DriverProfilePageClient
pageDto={viewData}
/>
);
}

View File

@@ -4,43 +4,25 @@ import { DriversPageQuery } from '@/lib/page-queries/page-queries/DriversPageQue
import { DriversPageClient } from '@/components/drivers/DriversPageClient';
export default async function Page() {
// Execute the page query
const result = await DriversPageQuery.execute();
// Handle different result statuses
switch (result.status) {
case 'notFound':
if (result.isErr()) {
const error = result.getError();
if (error === 'NotFound') {
redirect(routes.error.notFound);
case 'redirect':
redirect(result.to);
case 'error':
// Pass error to client component
return (
<DriversPageClient
pageDto={null}
error={result.errorId}
/>
);
case 'ok':
const viewModel = result.dto;
const hasData = (viewModel.drivers?.length ?? 0) > 0;
if (!hasData) {
return (
<DriversPageClient
pageDto={null}
empty={{
title: 'No drivers found',
description: 'There are no drivers in the system yet.',
}}
/>
);
}
return (
<DriversPageClient
pageDto={viewModel}
/>
);
}
return (
<DriversPageClient
pageDto={null}
error={error}
/>
);
}
const viewData = result.unwrap();
return (
<DriversPageClient
pageDto={viewData}
/>
);
}