149 lines
5.9 KiB
TypeScript
149 lines
5.9 KiB
TypeScript
"use client";
|
||
|
||
import AutoScroll from "embla-carousel-auto-scroll";
|
||
import { ChevronRight, Star, Zap } from "lucide-react";
|
||
import { useRef } from "react";
|
||
|
||
import { Avatar, AvatarImage } from "@/components/ui/avatar";
|
||
import { Card } from "@/components/ui/card";
|
||
import {
|
||
Carousel,
|
||
CarouselContent,
|
||
CarouselItem,
|
||
} from "@/components/ui/carousel";
|
||
import { cn } from "@/lib/utils";
|
||
|
||
const testimonials = [
|
||
{
|
||
name: "سارا احمدی",
|
||
role: "مدیرعامل و بنیانگذار",
|
||
avatar:
|
||
"/block-media/shadcnblocks/block/avatar-1.webp",
|
||
content:
|
||
"این CRM نحوه مدیریت قیف فروش ما را متحول کرد. لیدها، فرصتها و پیگیریها در یک جریان شفاف هستند.",
|
||
},
|
||
{
|
||
name: "مازیار رضایی",
|
||
role: "مدیر عملیات درآمد",
|
||
avatar:
|
||
"/block-media/shadcnblocks/block/avatar-2.webp",
|
||
content:
|
||
"یکپارچهسازی با ابزارهای بازاریابی بینقص بود. انتقال لید به فروش بدون تأخیر و بدون داده ناقص انجام میشود.",
|
||
},
|
||
{
|
||
name: "نیلوفر حسینی",
|
||
role: "مدیر فروش",
|
||
avatar:
|
||
"/block-media/shadcnblocks/block/avatar-3.webp",
|
||
content:
|
||
"داشبورد فعالیت نمایندگان و یادآورهای پیگیری، نرخ پاسخدهی تیم را بهطور محسوسی بالا برد.",
|
||
},
|
||
{
|
||
name: "امیر محمدی",
|
||
role: "سرپرست فروش سازمانی",
|
||
avatar:
|
||
"/block-media/shadcnblocks/block/avatar-4.webp",
|
||
content:
|
||
"اتوماسیون پیگیری و قالبهای ایمیل، چرخه مذاکره را کوتاهتر و پیشبینی درآمد را دقیقتر کرد.",
|
||
},
|
||
{
|
||
name: "رؤیا کاظمی",
|
||
role: "مدیر بازاریابی",
|
||
avatar:
|
||
"/block-media/shadcnblocks/block/avatar-1.webp",
|
||
content:
|
||
"نمرهدهی لید و کمپینهای خودکار، کیفیت ورودی فروش را بالا برد و هزینه جذب مشتری را کاهش داد.",
|
||
},
|
||
{
|
||
name: "پارسا موسوی",
|
||
role: "تحلیلگر عملیات فروش",
|
||
avatar:
|
||
"/block-media/shadcnblocks/block/avatar-6.webp",
|
||
content:
|
||
"گزارشهای بلادرنگ قیف و نرخ تبدیل، جلسات هفتهای فروش را دادهمحور و کوتاهتر کرده است.",
|
||
},
|
||
];
|
||
|
||
interface Testimonial19Props {
|
||
className?: string;
|
||
}
|
||
|
||
const Testimonial19 = ({ className }: Testimonial19Props) => {
|
||
const plugin = useRef(
|
||
AutoScroll({
|
||
startDelay: 500,
|
||
speed: 0.7,
|
||
}),
|
||
);
|
||
|
||
return (
|
||
<section dir="rtl" lang="fa" className={cn("py-32", className)}>
|
||
<div className="container flex flex-col items-center gap-4">
|
||
<div className="flex items-center gap-1 text-sm font-semibold">
|
||
<Zap className="h-6 w-auto fill-primary" />
|
||
امتیاز ۵ ستاره از بیش از ۱۰۰۰ مشتری
|
||
</div>
|
||
<h2 className="text-center text-3xl font-semibold lg:text-xl">
|
||
تیمهایی که فروش را با CRM ما مقیاس دادند
|
||
</h2>
|
||
<p className="text-center text-muted-foreground lg:text-lg">
|
||
مورد اعتماد مدیران فروش، بازاریابی و عملیات درآمد
|
||
</p>
|
||
<a href="#" className="flex items-center gap-1 font-semibold">
|
||
مشاهده همه نظرات
|
||
<ChevronRight className="mt-0.5 h-4 w-auto" />
|
||
</a>
|
||
</div>
|
||
<div className="lg:container">
|
||
<div className="mt-16 space-y-4">
|
||
<Carousel
|
||
opts={{
|
||
loop: true,
|
||
}}
|
||
plugins={[plugin.current]}
|
||
onMouseLeave={() => plugin.current.play()}
|
||
className="relative before:absolute before:top-0 before:bottom-0 before:left-0 before:z-10 before:w-36 before:bg-linear-to-r before:from-background before:to-transparent after:absolute after:top-0 after:right-0 after:bottom-0 after:z-10 after:w-36 after:bg-linear-to-l after:from-background after:to-transparent"
|
||
>
|
||
<CarouselContent>
|
||
{testimonials.map((testimonial, index) => (
|
||
<CarouselItem key={index} className="basis-auto">
|
||
<Card className="max-w-96 p-6 select-none">
|
||
<div className="flex justify-between">
|
||
<div className="mb-4 flex gap-4">
|
||
<Avatar className="size-14 rounded-full ring-1 ring-input">
|
||
<AvatarImage
|
||
src={testimonial.avatar}
|
||
alt={testimonial.name}
|
||
/>
|
||
</Avatar>
|
||
<div>
|
||
<p className="font-medium">{testimonial.name}</p>
|
||
<p className="text-sm text-muted-foreground">
|
||
{testimonial.role}
|
||
</p>
|
||
</div>
|
||
</div>
|
||
<div className="flex gap-1">
|
||
<Star className="size-5 fill-amber-500 text-amber-500" />
|
||
<Star className="size-5 fill-amber-500 text-amber-500" />
|
||
<Star className="size-5 fill-amber-500 text-amber-500" />
|
||
<Star className="size-5 fill-amber-500 text-amber-500" />
|
||
<Star className="size-5 fill-amber-500 text-amber-500" />
|
||
</div>
|
||
</div>
|
||
<q className="leading-7 text-muted-foreground">
|
||
{testimonial.content}
|
||
</q>
|
||
</Card>
|
||
</CarouselItem>
|
||
))}
|
||
</CarouselContent>
|
||
</Carousel>
|
||
</div>
|
||
</div>
|
||
</section>
|
||
);
|
||
};
|
||
|
||
export { Testimonial19 };
|