"use client"; import type { LucideIcon } from "lucide-react"; import { ArrowLeft, ArrowRight, Palette, Sparkles, Star } from "lucide-react"; import { startTransition, useEffect, useState } from "react"; import { Button } from "@/components/ui/button"; import type { CarouselApi } from "@/components/ui/carousel"; import { Carousel, CarouselContent, CarouselItem, } from "@/components/ui/carousel"; import { cn } from "@/lib/utils"; interface DataItem { src: string; title: string; description: string; icon: LucideIcon; } const DATA: DataItem[] = [ { src: "/block-media/shadcnblocks/block/placeholder-1.svg", title: "طراحی ظریف", description: "طراحی‌هایی زیبا و دقیق که استایل و کارایی را در هم می‌آمیزند کشف کنید.", icon: Palette, }, { src: "/block-media/shadcnblocks/block/placeholder-2.svg", title: "کیفیت برتر", description: "بهترین مواد و کیفیت ساخت را در هر قطعه تجربه کنید.", icon: Star, }, { src: "/block-media/shadcnblocks/block/placeholder-3.svg", title: "زیبایی‌شناسی معاصر", description: "با مجموعه‌های معاصر و ترند از دیگران پیشی بگیرید.", icon: Sparkles, }, ]; interface Gallery13Props { className?: string; } const Gallery13 = ({ className }: Gallery13Props) => { const [api, setApi] = useState(); const [activeIndex, setActiveIndex] = useState(0); const [canScrollPrev, setCanScrollPrev] = useState(false); const [canScrollNext, setCanScrollNext] = useState(false); useEffect(() => { if (!api) { return; } const updateSelection = () => { startTransition(() => { setActiveIndex(api.selectedScrollSnap()); setCanScrollPrev(api.canScrollPrev()); setCanScrollNext(api.canScrollNext()); }); }; updateSelection(); api.on("select", updateSelection); return () => { api.off("select", updateSelection); }; }, [api]); useEffect(() => { if (!api) { return; } api.reInit(); }, [api]); const ActiveIcon = DATA[activeIndex].icon; return (

{DATA[activeIndex].title}

{DATA[activeIndex].description}

{DATA.map((image, index) => (
{image.title}
))}
); }; export { Gallery13 };