import { redirect } from 'next/navigation';
import { toTitleCase } from '@/lib/utils';
import { getSupabaseServerClient } from '@/packages/supabase/src/clients/server-client';
import { PageBody, PageHeader } from '@kit/ui/page';
import { Trans } from '@kit/ui/trans';
import { createUserAnalysesApi } from '@kit/user-analyses/api';
import { createI18nServerInstance } from '~/lib/i18n/i18n.server';
import { withI18n } from '~/lib/i18n/with-i18n';
import AIBlocks from '../_components/ai/ai-blocks';
import Dashboard from '../_components/dashboard';
import DashboardCards from '../_components/dashboard-cards';
import { loadCurrentUserAccount } from '../_lib/server/load-user-account';
export const generateMetadata = async () => {
const i18n = await createI18nServerInstance();
const title = i18n.t('account:homePage');
return {
title,
};
};
async function UserHomePage() {
const client = getSupabaseServerClient();
const { account } = await loadCurrentUserAccount();
const api = createUserAnalysesApi(client);
const userAnalysesApi = createUserAnalysesApi(client);
const bmiThresholds = await api.fetchBmiThresholds();
const analysisResponses = await userAnalysesApi.getAllUserAnalysisResponses();
if (!account) {
redirect('/');
}
return (
<>
{account.name ? `, ${toTitleCase(account.name)}` : ''}
>
}
description={}
/>
>
);
}
export default withI18n(UserHomePage);