import Image from 'next/image'; import Link from 'next/link'; import { products } from '@/data/products'; import { notFound } from 'next/navigation'; // Pre-generate all product detail pages at build time export function generateStaticParams() { return products.map((product) => ({ slug: product.slug, })); } // In Next.js 15+/16, params is a Promise and must be awaited export default async function ProductDetailPage({ params, }: { params: Promise<{ slug: string }>; }) { const { slug } = await params; const product = products.find((p) => p.slug === slug); if (!product) { notFound(); } return (
{/* ── INNER BANNER ── */}

{product.name}

Home / Products / {product.name}
Back to Catalog
{/* Left: Image */}
{product!.name}
{/* Right: Info */}
{product!.category}

{product!.name}

{product!.price}

Description

{product!.description}

{/*
Category: {product!.category}
Availability: In Stock (Same-day Delivery)
*/}
Contact for Quote & Specs → {/*

Bulk ordering and contractor pricing available on request.

*/}
); }