38 lines
1004 B
TypeScript
38 lines
1004 B
TypeScript
import { CabinetNav } from "@/components/cabinet/CabinetNav";
|
|
import { namedPageMetadata } from "@/lib/page-metadata";
|
|
import { getTranslations, setRequestLocale } from "next-intl/server";
|
|
import type { ReactNode } from "react";
|
|
|
|
export async function generateMetadata({
|
|
params,
|
|
}: {
|
|
params: Promise<{ locale: string }>;
|
|
}) {
|
|
const { locale } = await params;
|
|
return namedPageMetadata(locale, "cabinet");
|
|
}
|
|
|
|
export default async function CabinetLayout({
|
|
children,
|
|
params,
|
|
}: {
|
|
children: ReactNode;
|
|
params: Promise<{ locale: string }>;
|
|
}) {
|
|
const { locale } = await params;
|
|
setRequestLocale(locale);
|
|
const t = await getTranslations("cabinet");
|
|
|
|
return (
|
|
<div className="mx-auto max-w-6xl px-4 py-12 sm:px-6">
|
|
<h1 className="text-3xl font-bold text-[var(--neutral-900)]">{t("title")}</h1>
|
|
<div className="mt-8 grid gap-8 md:grid-cols-[220px_1fr]">
|
|
<aside>
|
|
<CabinetNav />
|
|
</aside>
|
|
<div>{children}</div>
|
|
</div>
|
|
</div>
|
|
);
|
|
}
|