"use client"; import { ArrowLeft, ArrowRight } from "lucide-react"; import { useEffect, useState } from "react"; import { Badge } from "@/components/ui/badge"; 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 { id: string; username: string; quote: string; author: string; image: string; bgColor: string; } const DATA: DataItem[] = [ { id: "item-1", username: "@نوآور_تکنولوژی", quote: "تیم آن‌ها دیدگاه ما را به اپلیکیشنی روان و کاربرپسند تبدیل کرد. توجه به جزئیات و تعهد به کیفیت واقعاً بی‌نظیر است!", author: "سارا", image: "/block-media/shadcnblocks/block/placeholder-4.svg", bgColor: "bg-green-300", }, { id: "item-2", username: "@بنیان‌گذار_استارتاپ", quote: "از ایده تا استقرار، راهکاری مقاوم تحویل دادند که با رشد کسب‌وکار ما مقیاس گرفت. واقعاً شریک مسیر رشد ما بودند.", author: "امیر", image: "/block-media/shadcnblocks/block/placeholder-5.svg", bgColor: "bg-orange-300", }, { id: "item-3", username: "@مدیر_سازمانی", quote: "تخصص آن‌ها در راهکارهای ابری به ما کمک کرد عملیات را بهینه کنیم و هزینه‌ها را به‌شکل چشمگیری کاهش دهیم. خدماتشان را به‌شدت توصیه می‌کنم!", author: "نیلوفر", image: "/block-media/shadcnblocks/block/placeholder-3.svg", bgColor: "bg-purple-300", }, { id: "item-4", username: "@مدیر_محصول", quote: "توانایی تیم در درک نیازهای پیچیده و تحویل به‌موقع فوق‌العاده است. فرآیند توسعه را برای ما بدون استرس کردند.", author: "میکائیل", image: "/block-media/shadcnblocks/block/placeholder-2.svg", bgColor: "bg-green-300", }, { id: "item-5", username: "@مدیر_فنی", quote: "رویکرد نوآورانه آن‌ها در توسعه نرم‌افزار برای سازمان ما تحول‌آفرین بود. از نتیجه کار بسیار راضی هستیم!", author: "لیلا", image: "/block-media/shadcnblocks/block/placeholder-1.svg", bgColor: "bg-orange-300", }, ]; interface Gallery10Props { className?: string; } const Gallery10 = ({ className }: Gallery10Props) => { const [carouselApi, setCarouselApi] = useState(); const [canScrollPrev, setCanScrollPrev] = useState(false); const [canScrollNext, setCanScrollNext] = useState(true); const [currentIndex, setCurrentIndex] = useState(0); useEffect(() => { if (!carouselApi) { return; } const updateSelection = () => { setCanScrollPrev(carouselApi.canScrollPrev()); setCanScrollNext(carouselApi.canScrollNext()); setCurrentIndex(carouselApi.selectedScrollSnap()); }; updateSelection(); carouselApi.on("select", updateSelection); return () => { carouselApi.off("select", updateSelection); }; }, [carouselApi]); useEffect(() => { if (!carouselApi) { return; } carouselApi.reInit(); }, [carouselApi]); const progressWidth = 240; const progressIndicatorWidth = progressWidth / DATA.length; const progressOffset = currentIndex * progressIndicatorWidth; return (

ساخت آینده، خط به خط کد

از استارتاپ‌ها تا سازمان‌های بزرگ، کسب‌وکارها را با راهکارهای نرم‌افزاری پیشرفته توانمند می‌کنیم. نظر مشتریان راضی ما را بخوانید.

{DATA.map((testimonial) => (
{testimonial.author}
{testimonial.username} «

{testimonial.quote}

{testimonial.author}

))}
); }; export { Gallery10 };