import { FC, MouseEvent } from "react"; import StyledMenu from "./styled/Menu"; export interface Item { title: string; icon: string; handler: (e: MouseEvent) => void; underline?: boolean; danger?: boolean; } interface Props { items: Item[]; hideMenu?: () => void; } const ContextMenu: FC = ({ items = [], hideMenu = null }) => { return ( {items.map((item) => { if (!item) return null; const { title, icon = null, handler = (evt) => { evt.preventDefault(); if (hideMenu) { hideMenu(); } }, underline = false, danger = false } = item; return (
  • { evt.stopPropagation(); evt.preventDefault(); handler(evt); if (hideMenu) { hideMenu(); } }} > {icon} {title}
  • ); })}
    ); }; export default ContextMenu;