"use client"; import { ServerWithMembersWithProfiles } from "@/types"; import { MemberRole } from "@prisma/client"; import { DropdownMenu, DropdownMenuContent, DropdownMenuItem, DropdownMenuSeparator, DropdownMenuTrigger } from "@/components/ui/dropdown-menu"; import { ChevronDown, LogOut, Plus, PlusCircle, Settings, Trash, Users } from "lucide-react"; import { useModal } from "@/hooks/use-modal-store"; interface ServerHeaderProps { server: ServerWithMembersWithProfiles; role?: MemberRole; } export const SeverHeader = ({server, role}: ServerHeaderProps) => { const { onOpen } = useModal(); const isAdmin = role === MemberRole.ADMIN; const isModerator = isAdmin || role === MemberRole.MODERATOR; return ( {isModerator && ( onOpen("invite", {server})} className="text-indigo-600 dark:text-indigo-400 px-3 py-2 text-sm cursor-pointer" > Invite People )} {isAdmin && ( onOpen("editServer", {server})} className=" px-3 py-2 text-sm cursor-pointer" > Server Settings )} {isModerator && ( onOpen("members", {server})} className=" px-3 py-2 text-sm cursor-pointer" > Manage Members )} {isModerator && ( onOpen("createChannel")} className=" px-3 py-2 text-sm cursor-pointer" > Create Channel )} {isModerator && ( )} {isAdmin && ( Delete Server )} {!isAdmin && ( Leave Server )} ) }