import type { Metadata } from "next";
import { getTranslations, setRequestLocale } from "next-intl/server";
import { Locale } from "@/i18n/config";
import { createPageMetadata } from "@/lib/seo";
import TechHeroSection from "@/components/TechHeroSection";
import ArchitectureSection from "@/components/ArchitectureSection";
import AICapabilitiesSection from "@/components/AICapabilitiesSection";
import Web3CapabilitiesSection from "@/components/Web3CapabilitiesSection";
import BlockchainSection from "@/components/BlockchainSection";
import TechCTASection from "@/components/TechCTASection";

export async function generateMetadata({
  params,
}: {
  params: Promise<{ locale: string }>;
}): Promise<Metadata> {
  const { locale } = await params;
  const t = await getTranslations({ locale, namespace: "metadata" });

  return createPageMetadata({
    locale: locale as Locale,
    pathname: "/tech",
    title: t("techTitle"),
    description: t("techDescription"),
    siteName: t("title"),
  });
}

export default async function TechPage({
  params,
}: {
  params: Promise<{ locale: string }>;
}) {
  const { locale } = await params;
  setRequestLocale(locale);

  return (
    <main>
      <TechHeroSection />
      <ArchitectureSection />
      <AICapabilitiesSection />
      <Web3CapabilitiesSection />
      <BlockchainSection />
      <TechCTASection />
    </main>
  );
}
