"use client"; import {Avatar, AvatarFallback, AvatarImage} from "@/components/ui/avatar"; import {Badge} from "@/components/ui/badge"; import { DropdownMenu, DropdownMenuContent, DropdownMenuItem, DropdownMenuSeparator, DropdownMenuTrigger } from "@/components/ui/dropdown-menu"; import {Button} from "@/components/ui/button"; import {MoreHorizontal, Settings, Trash2} from "lucide-react"; import { OrganizationDeleteMemberModal } from "@/features/organizations/organization-delete-member-modal"; import {useState} from "react"; import {authClient} from "@/lib/auth/auth-client"; import { OrganizationMemberChangeRoleModal } from "@/features/organizations/organization-member-change-role"; import {MemberWithUser, OrganizationWithMembersAndUsers} from "@/db/schema/03_organization"; type OrganizationMemberCardProps = { member: MemberWithUser; organization: OrganizationWithMembersAndUsers; disabled?: boolean; }; export const OrganizationMemberCard = ({member, organization, disabled}: OrganizationMemberCardProps) => { const [isModalDeleteOpen, setIsModalDeleteOpen] = useState(false); const [isModalRoleOpen, setIsModalRoleOpen] = useState(false); const {data: session, isPending, error} = authClient.useSession(); if (isPending || error) return null; const isCurrentUser = session?.user?.id === member.user.id; const isOwner = member?.role === "owner"; return (