"use client"; import { ArrowRight, Check, Plus, ShoppingCart, X as XIcon, } from "lucide-react"; import { useState } from "react"; import { Button } from "@/components/ui/button"; import { Card, CardContent } from "@/components/ui/card"; import { ScrollArea, ScrollBar } from "@/components/ui/scroll-area"; import { Separator } from "@/components/ui/separator"; import { cn } from "@/lib/utils"; interface Product { id: string; name: string; image: string; price: number; originalPrice?: number; rating: number; reviews: number; highlights: string[]; } interface CompareProducts3Props { products?: Product[]; maxProducts?: number; className?: string; } const DEFAULT_PRODUCTS: Product[] = [ { id: "1", name: "ایرباد بی‌سیم پریمیوم", image: "/block-media/shadcnblocks/block/ecommerce/electronics/Modern-White-Headphones-1.png", price: 199, rating: 4.8, reviews: 2341, highlights: [ "حذف نویز فعال", "۳۰ ساعت باتری با کیس", "صدای فضایی", "مقاوم در برابر آب IPX4", ], }, { id: "2", name: "ایرباد ورزشی پرو", image: "/block-media/shadcnblocks/block/ecommerce/electronics/Sleek-Black-Headphones-1.jpeg", price: 149, originalPrice: 179, rating: 4.5, reviews: 1892, highlights: [ "ماندگاری مطمئن برای ورزش", "۲۴ ساعت باتری با کیس", "ضدآب IPX7", "حالت صدای محیط", ], }, { id: "3", name: "ایرباد بی‌سیم سری پایه", image: "/block-media/shadcnblocks/block/ecommerce/electronics/Modern-Headphones-1.jpeg", price: 79, rating: 4.2, reviews: 956, highlights: [ "کنترل لمسی", "۱۸ ساعت باتری با کیس", "دستیار صوتی", "طراحی جمع‌وجور", ], }, ]; const formatPrice = (price: number) => new Intl.NumberFormat("fa-IR", { style: "currency", currency: "IRR", maximumFractionDigits: 0, }).format(price); const formatRating = (rating: number) => rating.toLocaleString("fa-IR", { minimumFractionDigits: 1, maximumFractionDigits: 1, }); const CompareProducts3 = ({ products = DEFAULT_PRODUCTS, maxProducts = 4, className, }: CompareProducts3Props) => { const [selectedProducts, setSelectedProducts] = useState(products); const removeProduct = (id: string) => { setSelectedProducts((prev) => prev.filter((p) => p.id !== id)); }; const canAddMore = selectedProducts.length < maxProducts; return (

مقایسه مشخصات محصولات

حداکثر ۴{" "} {maxProducts.toLocaleString("fa-IR")} محصول را برای مقایسه انتخاب کنید.

{selectedProducts.length > 0 && ( )}
{selectedProducts.map((product) => (
{product.name}

{product.name}

{formatPrice(product.price)} {product.originalPrice && ( {formatPrice(product.originalPrice)} )}
{formatRating(product.rating)} ({product.reviews.toLocaleString("fa-IR")} دیدگاه)
{product.highlights.map((highlight, index) => (
))}
))} {canAddMore && (

افزودن محصول جدید

برای مقایسه بهتر، محصول دیگری را نیز انتخاب کنید.

)}
); }; export { CompareProducts3 };