import React, { ReactNode } from 'react'; import { Metadata } from 'next'; import { notFound } from 'next/navigation'; import { useTranslations } from 'next-intl'; import { AccountMenu } from '../../../components/Account'; type AccountLayoutProps = { children: ReactNode; params: Record; }; export const metadata: Metadata = { title: 'Bbuddy User Account' }; export function generateStaticParams({ params: { locale }, }: { params: { locale: string } }) { const result: { locale: string, userId: string }[] = []; const users = [{ userId: '1' }, { userId: '2' }]; users.forEach(({ userId }) => { result.push({ locale, userId }); }); return result; } const ROUTES = ['sessions', 'notifications', 'support', 'information', 'settings', 'messages', 'work-with-us']; const COUNTS: Record = { sessions: 12, notifications: 5, messages: 113 }; export default function AccountLayout({ children, params }: AccountLayoutProps) { if (!params?.userId || isNaN(Number(params?.userId))) notFound(); const t = useTranslations('Account'); const getMenuConfig = () => ROUTES.map((path) => ({ path, title: t(`menu.${path}`), count: COUNTS[path] || undefined })); return (
{children}
); };