UNPKG

@ihatecode/react-context-menu

Version:

A context menu component written in React.

35 lines (34 loc) 998 B
import * as React from 'react'; interface ContextMenuState { visible: boolean; position: { x: number; y: number; }; } type ContextMenuFunctionA = (e: React.MouseEvent<HTMLDivElement, MouseEvent>) => void; type UseContextMenu = () => [ContextMenuState & { onContextMenu: ContextMenuFunctionA; onClose: () => void; }]; export interface ContextMenuItemProps { key: string | number; icon?: React.ReactNode; label: string; disabled?: boolean; children?: (ContextMenuItemProps | ContextMenuItemProps[])[]; } export interface ContextMenuProps { zIndex?: number; className?: string; items: (ContextMenuItemProps | ContextMenuItemProps[])[]; contextMenu: ContextMenuState & { onClose: () => void; }; onClick?: (key: string | number) => void; } type ContextMenuComponent = React.FC<ContextMenuProps> & { useContextMenu: UseContextMenu; }; declare const ContextMenu: ContextMenuComponent; export default ContextMenu;