import { redirect } from 'next/navigation'; import { routes } from '@/lib/routing/RouteConfig'; import { DriverProfilePageQuery } from '@/lib/page-queries/page-queries/DriverProfilePageQuery'; 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': redirect(routes.error.notFound); case 'redirect': redirect(result.to); case 'error': // Pass error to client component return ( ); case 'ok': const viewModel = result.dto; const hasData = !!viewModel.currentDriver; if (!hasData) { return ( ); } return ( ); } }