import { PageWrapper } from '@/components/shared/state/PageWrapper'; import { HomeTemplate, type HomeViewData } from '@/templates/HomeTemplate'; import { PageDataFetcher } from '@/lib/page/PageDataFetcher'; import { HomeService } from '@/lib/services/home/HomeService'; // @server-safe import { notFound, redirect } from 'next/navigation'; import { routes } from '@/lib/routing/RouteConfig'; export default async function Page() { const homeService = new HomeService(); if (await homeService.shouldRedirectToDashboard()) { redirect(routes.protected.dashboard); } const data = await PageDataFetcher.fetchManual(async () => { const result = await homeService.getHomeData(); return result.isOk() ? result.unwrap() : null; }); if (!data) { notFound(); } const Template = ({ data }: { data: HomeViewData }) => ; return ; }