"use client"; import { Dropdown, DropdownItem, DropdownMenu, DropdownSection, DropdownTrigger, } from "@heroui/dropdown"; import { AddNoteBulkIcon, DeleteDocumentBulkIcon, EditDocumentBulkIcon, } from "@heroui/shared-icons"; import { Row } from "@tanstack/react-table"; import clsx from "clsx"; import { useRouter } from "next/navigation"; import { useState } from "react"; import { VerticalDotsIcon } from "@/components/icons"; import { Button } from "@/components/shadcn"; import { CustomAlertModal } from "@/components/ui/custom"; import { DeleteForm, EditForm } from "../forms"; interface DataTableRowActionsProps { row: Row; roles?: { id: string; name: string }[]; } const iconClasses = "text-2xl text-default-500 pointer-events-none shrink-0"; export function DataTableRowActions({ row, roles, }: DataTableRowActionsProps) { const router = useRouter(); const [isEditOpen, setIsEditOpen] = useState(false); const [isDeleteOpen, setIsDeleteOpen] = useState(false); const invitationId = (row.original as { id: string }).id; const invitationEmail = (row.original as any).attributes?.email; const invitationRole = (row.original as any).relationships?.role?.attributes ?.name; const invitationAccepted = (row.original as any).attributes?.state; return ( <>
} onPress={() => router.push(`/invitations/check-details?id=${invitationId}`) } > Check Details } onPress={() => setIsEditOpen(true)} isDisabled={invitationAccepted === "accepted"} > Edit Invitation } onPress={() => setIsDeleteOpen(true)} isDisabled={invitationAccepted === "accepted"} > Revoke Invitation
); }