Files
medreport_mrb2b/app/home/[account]/page.tsx
Danel Kungla c48a4b482f feat(dashboard): add dynamic loading for dashboard component
feat(team-account-benefit-statistics): implement benefit statistics card with budget and booking details

feat(team-account-health-details): create health details component displaying account health metrics

feat(team-account-statistics): develop team account statistics page with charts and customer table

feat(load-team-account-health-details): add server-side function to retrieve account health details

chore(migrations): create trigger for logging changes in account memberships
2025-08-18 14:54:46 +03:00

56 lines
1.5 KiB
TypeScript

'use server';
import { use } from 'react';
import { CompanyGuard } from '@/packages/features/team-accounts/src/components';
import { createTeamAccountsApi } from '@/packages/features/team-accounts/src/server/api';
import { getSupabaseServerClient } from '@/packages/supabase/src/clients/server-client';
import { PageBody } from '@kit/ui/page';
import { Trans } from '@kit/ui/trans';
import { createI18nServerInstance } from '~/lib/i18n/i18n.server';
import { withI18n } from '~/lib/i18n/with-i18n';
import { Dashboard } from './_components/dashboard';
import { TeamAccountLayoutPageHeader } from './_components/team-account-layout-page-header';
interface TeamAccountHomePageProps {
params: Promise<{ account: string }>;
}
export const generateMetadata = async () => {
const i18n = await createI18nServerInstance();
const title = i18n.t('teams:home.pageTitle');
return {
title,
};
};
function TeamAccountHomePage({ params }: TeamAccountHomePageProps) {
const account = use(params).account;
const client = getSupabaseServerClient();
const api = createTeamAccountsApi(client);
const teamAccount = use(api.getTeamAccount(account));
console.log('teamAccount', teamAccount);
return (
<>
<TeamAccountLayoutPageHeader
title={
<Trans
i18nKey={'teams:home.headerTitle'}
values={{ companyName: account }}
/>
}
/>
<PageBody>
<Dashboard teamAccount={teamAccount} />
</PageBody>
</>
);
}
export default withI18n(CompanyGuard(TeamAccountHomePage));