"use client"; import { ArrowLeft, ArrowRight } from "lucide-react"; import { startTransition, useEffect, useState } from "react"; import { Button } from "@/components/ui/button"; import { Carousel, CarouselContent, CarouselItem, type CarouselApi, } from "@/components/ui/carousel"; import { cn } from "@/lib/utils"; const IMAGES = [ { src: "/block-media/shadcnblocks/block/placeholder-dark-1.svg", alt: "تصویر گالری ۱", }, { src: "/block-media/shadcnblocks/block/placeholder-dark-2.svg", alt: "تصویر گالری ۲", }, { src: "/block-media/shadcnblocks/block/placeholder-dark-3.svg", alt: "تصویر گالری ۳", }, { src: "/block-media/shadcnblocks/block/placeholder-dark-4.svg", alt: "تصویر گالری ۴", }, { src: "/block-media/shadcnblocks/block/placeholder-dark-5.svg", alt: "تصویر گالری ۵", }, { src: "/block-media/shadcnblocks/block/placeholder-dark-1.svg", alt: "تصویر گالری ۶", }, { src: "/block-media/shadcnblocks/block/placeholder-dark-2.svg", alt: "تصویر گالری ۷", }, { src: "/block-media/shadcnblocks/block/placeholder-dark-3.svg", alt: "تصویر گالری ۸", }, { src: "/block-media/shadcnblocks/block/placeholder-dark-4.svg", alt: "تصویر گالری ۹", }, { src: "/block-media/shadcnblocks/block/placeholder-dark-5.svg", alt: "تصویر گالری ۱۰", }, ]; interface Gallery17Props { className?: string; } const Gallery17 = ({ className }: Gallery17Props) => { const [api, setApi] = useState(); const [current, setCurrent] = useState(0); const [count, setCount] = useState(0); const [canScrollPrev, setCanScrollPrev] = useState(false); const [canScrollNext, setCanScrollNext] = useState(false); useEffect(() => { if (!api) { return; } const updateSelection = () => { startTransition(() => { setCount(api.scrollSnapList().length); setCurrent(api.selectedScrollSnap() + 1); setCanScrollPrev(api.canScrollPrev()); setCanScrollNext(api.canScrollNext()); }); }; updateSelection(); api.on("select", updateSelection); return () => { api.off("select", updateSelection); }; }, [api]); useEffect(() => { if (!api) { return; } api.reInit(); }, [api]); return (
{IMAGES.map((img, index) => (
{img.alt}
))}
{Array.from({ length: count }).map((_, index) => ( ))}
); }; export { Gallery17 };