import { IdCard, Mail } from "lucide-react"; import { useNavigate } from "react-router"; import { createChannel } from "~/lib/api/client/user"; import type { UserId } from "~/lib/api/types"; import { useUsersStore } from "~/stores/users-store"; import { ContextMenu, ContextMenuContent, ContextMenuItem, ContextMenuSeparator, ContextMenuTrigger, } from "./ui/context-menu"; interface UserContextMenuProps { userId: UserId; children: React.ReactNode; } export default function UserContextMenu({ userId, children }: UserContextMenuProps) { const currentUser = useUsersStore((state) => state.getCurrentUser()); const navigate = useNavigate(); const onMessage = async () => { const reponse = await createChannel([userId]); navigate(`/app/@me/channels/${reponse.id}`); }; const onCopyId = () => { navigator.clipboard.writeText(userId); }; return ( <> {children} {currentUser?.id !== userId && ( <>
Message
)}
Copy ID
); }