import { EmptyStateCard } from "@/components/ui/empty-state-card";
import { PageContainer } from "@/components/layout/page-container";
import { BenefitsSection } from "@/components/sections/home/benefits-section";
import { NewsletterSection } from "@/components/sections/home/newsletter-section";
import { ProductDetailSection } from "@/components/sections/product/product-detail-section";
import { ProductRailSection } from "@/components/sections/shared/product-rail-section";
import { getProductBySlug } from "@/lib/starter-data";

export default async function ProductPage({
  params,
}: {
  params: Promise<{ slug: string }>;
}) {
  const { slug } = await params;
  const product = await getProductBySlug(slug);

  if (!product) {
    return (
      <PageContainer className="py-20">
        <EmptyStateCard
          title="Proizvod nije pronađen"
          description="Provjeri slug proizvoda u WooCommerceu i sinkronizaciju podataka prema storefrontu."
        />
      </PageContainer>
    );
  }

  return (
    <>
      <PageContainer>
        <ProductDetailSection product={product} />
      </PageContainer>
      {product.relatedProducts.length > 0 ? (
        <ProductRailSection
          title="Povezani proizvodi"
          products={product.relatedProducts}
        />
      ) : null}
      <NewsletterSection />
      <BenefitsSection />
    </>
  );
}
