'use client'; import React from 'react'; import { useParams } from 'next/navigation'; import { useCollectionProducts } from '@/hooks/use-shopify-collections'; import ProductCard from './product-card'; interface CollectionDetailProps { handle?: string; } const CollectionDetail: React.FC = ({ handle: handleProp }) => { const params = useParams(); const handle = handleProp || (params?.handle as string); const { collection, loading, error, refetch } = useCollectionProducts(handle); // Format title from handle const formattedTitle = handle ? handle.replace(/-/g, ' ').replace(/\b\w/g, l => l.toUpperCase()) : 'Collection'; if (loading) { return (

{formattedTitle}

{/* Loading Skeleton */}
{Array.from({ length: 6 }).map((_, index) => (
))}
); } if (error) { return (

{formattedTitle}

Failed to Load Collection

{error}

); } const products = collection?.products || []; const title = collection?.title || formattedTitle; return (

{title}

{products.length === 0 ? (

No Products in Collection

This collection doesn't have any products yet.

) : (
{products.map((product) => ( ))}
)}
); }; export default CollectionDetail;