"use client"; import { Mail, MoreHorizontal, Shield, UserPlus } from "lucide-react"; import { useState } from "react"; import { Avatar, AvatarFallback, AvatarImage } from "@/components/ui/avatar"; import { Badge } from "@/components/ui/badge"; import { Button } from "@/components/ui/button"; import { Card, CardContent, CardDescription, CardHeader, CardTitle, } from "@/components/ui/card"; import { Dialog, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogTitle, DialogTrigger, } from "@/components/ui/dialog"; import { DropdownMenu, DropdownMenuContent, DropdownMenuItem, DropdownMenuSeparator, DropdownMenuTrigger, } from "@/components/ui/dropdown-menu"; import { Input } from "@/components/ui/input"; import { Label } from "@/components/ui/label"; import { Select, SelectContent, SelectItem, SelectTrigger, SelectValue, } from "@/components/ui/select"; import { cn } from "@/lib/utils"; interface Member { id: string; name: string; email: string; role: "admin" | "member" | "viewer"; avatar?: string; joinedAt: string; } interface SettingsMembers3Props { heading?: string; description?: string; members?: Member[]; className?: string; } const roleColors = { admin: "bg-amber-100 text-amber-800 dark:bg-amber-900/30 dark:text-amber-400", member: "bg-blue-100 text-blue-800 dark:bg-blue-900/30 dark:text-blue-400", viewer: "bg-zinc-100 text-zinc-700 dark:bg-zinc-800 dark:text-zinc-300", }; const getRoleLabel = (role: Member["role"]) => { const labels: Record = { admin: "مدیر سیستم", member: "کارشناس فروش", viewer: "فقط مشاهده", }; return labels[role]; }; const SettingsMembers3 = ({ heading = "تیم فروش", description = "اعضای تیم و سطح دسترسی هر نفر به سامانه مدیریت ارتباط با مشتری را مدیریت کنید.", members = [ { id: "1", name: "مریم چناری", email: "sarah.chen@company.io", role: "admin", avatar: "/block-media/shadcnblocks/block/avatar/avatar2.jpg", joinedAt: "ژانویه ۲۰۲۴", }, { id: "2", name: "مهدی جعفری", email: "marcus.j@company.io", role: "member", avatar: "/block-media/shadcnblocks/block/avatar/avatar5.jpg", joinedAt: "مارس ۲۰۲۴", }, { id: "3", name: "النا محمدی", email: "elena.r@company.io", role: "member", avatar: "/block-media/shadcnblocks/block/avatar/avatar4.jpg", joinedAt: "آوریل ۲۰۲۴", }, { id: "4", name: "داوود پارک", email: "david.p@company.io", role: "viewer", joinedAt: "ژوئن ۲۰۲۴", }, { id: "5", name: "آیدا پناهی", email: "aisha.p@company.io", role: "member", avatar: "/block-media/shadcnblocks/block/avatar/avatar6.jpg", joinedAt: "اوت ۲۰۲۴", }, { id: "6", name: "توماس رضایی", email: "thomas.w@company.io", role: "viewer", avatar: "/block-media/shadcnblocks/block/avatar/avatar7.jpg", joinedAt: "اکتبر ۲۰۲۴", }, ], className, }: SettingsMembers3Props) => { const [isInviteOpen, setIsInviteOpen] = useState(false); return (

{heading}

{description}

دعوت عضو جدید دعوتنامه برای پیوستن به فضای کاری سامانه مدیریت ارتباط با مشتری ارسال کنید.
{ e.preventDefault(); setIsInviteOpen(false); }} className="space-y-4" >
{members.map((member) => (
{member.name .split(" ") .map((n) => n[0]) .join("")}
{member.name} {getRoleLabel(member.role)}
تغییر سطح دسترسی مشاهده فعالیت اخیر حذف از فضای کاری
{member.email}

عضو از {member.joinedAt}

))}
); }; export { SettingsMembers3 };