33 lines
765 B
TypeScript
33 lines
765 B
TypeScript
import { cache } from 'react';
|
|
|
|
import { AdminAccountPage } from '@kit/admin/components/admin-account-page';
|
|
import { AdminGuard } from '@kit/admin/components/admin-guard';
|
|
|
|
import { getAccount } from '~/lib/services/account.service';
|
|
|
|
interface Params {
|
|
params: Promise<{
|
|
id: string;
|
|
}>;
|
|
}
|
|
|
|
export const generateMetadata = async (props: Params) => {
|
|
const params = await props.params;
|
|
const account = await loadAccount(params.id);
|
|
|
|
return {
|
|
title: `Admin | ${account.name}`,
|
|
};
|
|
};
|
|
|
|
async function AccountPage(props: Params) {
|
|
const params = await props.params;
|
|
const account = await loadAccount(params.id);
|
|
|
|
return <AdminAccountPage account={account} />;
|
|
}
|
|
|
|
export default AdminGuard(AccountPage);
|
|
|
|
const loadAccount = cache(getAccount);
|