"use client"; import { cn } from "@/lib/utils"; import { Button, DropdownMenu, DropdownMenuContent, DropdownMenuItem, DropdownMenuLabel, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuTrigger, } from "@/ui"; import { CellContext } from "@tanstack/react-table"; import { t } from "i18next"; import { MoreVerticalIcon } from "lucide-react"; export type DataTablaRowActionFunction = ( props: CellContext ) => DataTableRowActionDefinition[]; export type DataTableRowActionDefinition = { label: string | "-"; shortcut?: string; onClick?: (props: CellContext, e: React.BaseSyntheticEvent) => void; }; // eslint-disable-next-line @typescript-eslint/no-unused-vars export type DataTableRowActionsProps = { className?: string; actions?: DataTablaRowActionFunction; rowContext: CellContext; }; export function DataTableRowActions({ actions, rowContext, className, }: DataTableRowActionsProps) { return ( {t("common.actions")} {actions && actions(rowContext).map((action, index) => action.label === "-" ? ( ) : ( (action.onClick ? action.onClick(rowContext, event) : null)} > {action.label} {action.shortcut} ) )} ); }