import type { Metadata } from "next";
import { setRequestLocale } from "next-intl/server";
import { Header } from "@/components/layout/header";
import { Footer } from "@/components/layout/footer";
import { localeAlternates } from "@/lib/seo";

export async function generateMetadata({
  params,
}: {
  params: Promise<{ locale: string }>;
}): Promise<Metadata> {
  const { locale } = await params;
  const titles: Record<string, string> = {
    en: "Terms & Conditions | Original Nest",
    id: "Syarat & Ketentuan | Original Nest",
    zh: "条款与条件 | Original Nest",
  };
  const descriptions: Record<string, string> = {
    en: "Terms and Conditions of PT Original Nest Indonesia.",
    id: "Syarat dan Ketentuan PT Original Nest Indonesia.",
    zh: "PT Original Nest Indonesia 的条款与条件。",
  };
  return {
    title: titles[locale] ?? titles.en,
    description: descriptions[locale] ?? descriptions.en,
    alternates: localeAlternates(locale, "/terms"),
  };
}

export default async function TermsLayout({
  children,
  params,
}: {
  children: React.ReactNode;
  params: Promise<{ locale: string }>;
}) {
  const { locale } = await params;
  setRequestLocale(locale);
  return (
    <>
      <Header />
      {children}
      <Footer />
    </>
  );
}
