import type { Metadata } from "next";
import { redirect } from "next/navigation";

/*
import CheckoutClient from "./CheckoutClient";
import { buildDynamicMetadata } from "@/lib/metadata";

async function getCheckoutCmsPage() {
  const base = process.env.NEXT_PUBLIC_MEDUSA_BACKEND_URL;
  if (!base) return null;
  try {
    const res = await fetch(`${base}/store/pages/check-out`, {
      headers: {
        "x-publishable-api-key": process.env.NEXT_PUBLIC_MEDUSA_PUBLISHABLE_API_KEY || "",
      },
      cache: "no-store",
    });
    if (!res.ok) return null;
    return res.json();
  } catch {
    return null;
  }
}

function getCheckoutSeoMeta(data: any) {
  const seoSection = data?.page?.sections?.find((section: any) => section.key === "seo");
  const seoComponent = seoSection?.components?.find(
    (component: any) => component?.type?.name === "seo_meta"
  );
  const seoItem = seoComponent?.instance?.data ?? {};

  const title = typeof seoItem?.title === "string" ? seoItem.title : "";
  const description = typeof seoItem?.description === "string" ? seoItem.description : "";
  const keywordsRaw = typeof seoItem?.keywords === "string" ? seoItem.keywords : "";
  const keywords = keywordsRaw
    .split(",")
    .map((keyword: string) => keyword.trim())
    .filter(Boolean);

  return { title, description, keywords };
}

export async function generateMetadata(): Promise<Metadata> {
  const data = (await getCheckoutCmsPage()) ?? { page: { sections: [] } };
  const seo = getCheckoutSeoMeta(data);
  return buildDynamicMetadata({
    seoTitle: seo.title,
    seoDescription: seo.description,
    seoKeywords: seo.keywords,
    pageUrl: "/checkout",
    ogImage: "/image.png",
    fallbackTitle: "Biomket",
    fallbackDescription: "Biomket marketplace",
  });
}

export default function CheckoutRoute() {
  return <CheckoutClient />;
}
*/

export async function generateMetadata(): Promise<Metadata> {
  return { title: "Checkout" };
}

/** Checkout route disabled — restore block comment above to re-enable. */
export default function CheckoutRoute() {
  redirect("/");
}
