'use client'; import { Phone, Plus, ShoppingCart, Minus, Trash2 } from "lucide-react"; import Image from "next/image"; import Link from 'next/link'; import { useCart } from "./context/cartcontext"; import { Product } from "@/public/src/types/product"; interface ProductCardProps { product: Product; } export default function ProductCard({ product }: ProductCardProps) { const { addToCart, decreaseQuantity, cart } = useCart(); const cartItem = cart.find(item => item.id === product.id); const quantity = cartItem ? cartItem.quantity : 0; const slug = product.slug; const handleIncrease = (e: React.MouseEvent) => { e.preventDefault(); e.stopPropagation(); addToCart(product); }; const handleDecrease = (e: React.MouseEvent) => { e.preventDefault(); e.stopPropagation(); decreaseQuantity(product.id); }; const formattedPrice = product.price ? Number(product.price.toString().replace(/,/g, '')).toLocaleString('fa-IR') : null; return (
{product.stock ? "موجود" : "ناموجود"} {product.title}

{product.brand}

{product.title}

{/* ✅ این بخش را تغییر می‌دهیم تا نام attribute ها را بگیریم اگر attribute اول وجود داشت، نامش را بگیر و نمایش بده اگر attribute اول نبود، نمایش نده */} {product.attributes?.[0] && (

{product.attributes[0].name}:

{/* 👈 نام attribute اول */}

{product.attributes[0].valueText || "-"}

{/* 👈 مقدار attribute اول */}
)} {/* ✅ مشابه بالا برای attribute دوم */} {product.attributes?.[1] && (

{product.attributes[1].name}:

{/* 👈 نام attribute دوم */}

{product.attributes[1].valueText || "-"}

{/* 👈 مقدار attribute دوم */}
)}
{product.price ? (
{formattedPrice} تومان {product.stock ? ( quantity > 0 ? (
{ e.preventDefault(); e.stopPropagation(); }} > {quantity}
) : ( ) ) : ( عدم موجودی )}
) : ( استعلام )} ); }