Files
medreport_mrb2b/app/home/[account]/page.tsx
Helena 195af1db3d MED-137: add doctor other jobs view (#55)
* add doctor jobs view

* change translation

* another translation change

* clean up

* add analaysis detail view to paths config

* translation

* merge fix

* fix path

* move components to shared

* refactor

* imports

* clean up
2025-08-25 11:12:57 +03:00

57 lines
1.6 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 { Dashboard } from './_components/dashboard';
import { TeamAccountLayoutPageHeader } from './_components/team-account-layout-page-header';
import { withI18n } from '~/lib/i18n/with-i18n';
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));
const { memberParams } = use(api.getMembers(account));
return (
<>
<TeamAccountLayoutPageHeader
title={
<Trans
i18nKey={'teams:home.headerTitle'}
values={{ companyName: account }}
/>
}
/>
<PageBody>
<Dashboard teamAccount={teamAccount} memberParams={memberParams} />
</PageBody>
</>
);
}
export default withI18n(CompanyGuard(TeamAccountHomePage));