"use client"; import type { LucideIcon } from "lucide-react"; import { ArrowRight, Bell, Book, Brush, CalendarCheck2, CheckSquare, ClipboardList, Code, Database, FileText, GitBranch, GitPullRequest, LayoutGrid, LifeBuoy, MonitorSmartphone, PhoneCall, Server, Settings2, Slack, Users, Zap, } from "lucide-react"; import { Button } from "@/components/ui/button"; import { cn } from "@/lib/utils"; const formatPrice = (value: string | number) => `${(typeof value === "string" ? Number(value) : value).toLocaleString("fa-IR")} ریال`; interface FeatureItem { icon: LucideIcon; text: string; } interface PricingPlan { name: string; priceMonthly: number; description: string; bestFor: string; features?: FeatureItem[]; mostPopular?: boolean; cta: { text: string; href: string; }; } const PLANS: PricingPlan[] = [ { name: "شروع", priceMonthly: 90000, description: "عالی برای توسعه‌دهندگان مستقل", bestFor: "فریلنسرهای تازه‌کار", features: [ { icon: Code, text: "دسترسی به کامپوننت‌های اصلی" }, { icon: LayoutGrid, text: "بلاک‌های چیدمان پایه" }, { icon: MonitorSmartphone, text: "قالب‌های طراحی واکنش‌گرا" }, { icon: FileText, text: "مستندات مقدماتی" }, { icon: GitBranch, text: "تاریخچه نسخه‌ها" }, { icon: LifeBuoy, text: "پشتیبانی انجمن" }, { icon: Book, text: "راهنمای رابط کاربری به‌صورت پی‌دی‌اف" }, ], cta: { text: "شروع رایگان", href: "#", }, }, { name: "حرفه‌ای", priceMonthly: 290000, description: "بهترین گزینه برای تیم‌های در حال رشد", bestFor: "تیم‌های کوچک توسعه و استارتاپ‌ها", features: [ { icon: Code, text: "کتابخانه پیشرفته بلاک رابط کاربری" }, { icon: Brush, text: "پشتیبانی از تم‌های سفارشی" }, { icon: Settings2, text: "ابزارهای سیستم طراحی" }, { icon: CheckSquare, text: "شامل تست کامپوننت‌ها" }, { icon: Zap, text: "بهبودهای عملکرد" }, { icon: Server, text: "میزبانی کامپوننت‌های مشترک" }, { icon: PhoneCall, text: "پشتیبانی ایمیل و چت" }, ], cta: { text: "شروع رایگان", href: "#", }, }, { name: "تیم", mostPopular: true, priceMonthly: 590000, description: "همکاری و رشد سریع", bestFor: "تیم‌های محصول با چند پروژه", features: [ { icon: Users, text: "کنترل دسترسی تیمی" }, { icon: GitPullRequest, text: "ادغام و بازبینی بلاک‌های رابط کاربری" }, { icon: CalendarCheck2, text: "نقشه راه اولویت‌دار" }, { icon: Bell, text: "اعلان به‌روزرسانی‌ها" }, { icon: Database, text: "تحلیل استفاده از کامپوننت‌ها" }, { icon: Slack, text: "یکپارچه‌سازی پیام‌رسان تیمی" }, { icon: ClipboardList, text: "کتابخانه قالب‌های پروژه" }, ], cta: { text: "شروع رایگان", href: "#", }, }, ]; interface Pricing31Props { className?: string; } const Pricing31 = ({ className }: Pricing31Props) => { return (

طرحی برای هر پروژه‌ای که شروع می‌کنید

{PLANS.map((plan, index) => ( ))}
); }; const PlanCard = ({ plan }: { plan: PricingPlan }) => { return (
{plan.name}
{formatPrice(plan.priceMonthly)}
به ازای هر نفر در ماه
{plan.bestFor}
{plan.description}
{plan.features?.map((feature, index) => (
{feature.text}
))}
{plan.mostPopular && (
محبوب‌ترین
)}
); }; export { Pricing31 };