diff --git a/src/SubMenu.js b/src/SubMenu.js index 8b0f31b..d847168 100644 --- a/src/SubMenu.js +++ b/src/SubMenu.js @@ -22,7 +22,10 @@ export default class SubMenu extends AbstractMenu { onMouseOut: PropTypes.func, forceOpen: PropTypes.bool, forceClose: PropTypes.func, - parentKeyNavigationHandler: PropTypes.func + parentKeyNavigationHandler: PropTypes.func, + onClick: PropTypes.func, + data: PropTypes.object, + preventCloseOnClick: PropTypes.bool }; static defaultProps = { @@ -36,7 +39,10 @@ export default class SubMenu extends AbstractMenu { onMouseOut: () => null, forceOpen: false, forceClose: () => null, - parentKeyNavigationHandler: () => null + parentKeyNavigationHandler: () => null, + onClick: () => null, + data: {}, + preventCloseOnClick: false }; constructor(props) { diff --git a/src/index.d.ts b/src/index.d.ts index 6f0c788..bbfc141 100644 --- a/src/index.d.ts +++ b/src/index.d.ts @@ -23,6 +23,8 @@ declare module "@firefox-devtools/react-contextmenu" { collect?: {(data: any): any}, disable?: boolean, holdToDisplay?: number, + posX?: number, + posY?: number, renderTag?: React.ElementType, triggerOnLeftClick?: boolean, disableIfShiftIsPressed?: boolean, @@ -38,17 +40,29 @@ declare module "@firefox-devtools/react-contextmenu" { divider?: boolean, preventClose?: boolean, onClick?: {(event: React.TouchEvent | React.MouseEvent, data: Object, target: HTMLElement): void} | Function, + onMouseLeave?: {(event: React.MouseEvent): void} | Function, + onMouseMove?: {(event: React.MouseEvent): void} | Function, + role?: string, + selected?: boolean, children?: React.ReactNode, } export interface SubMenuProps { title: React.ReactElement | React.ReactText, + attributes?: React.HTMLAttributes, className?: string, disabled?: boolean, hoverDelay?: number, rtl?: boolean, + selected?: boolean, + onMouseMove?: {(event: React.MouseEvent): void} | Function, + onMouseOut?: {(event: React.MouseEvent): void} | Function, + forceOpen?: boolean, + forceClose?: {(): void} | Function, + parentKeyNavigationHandler?: {(event: React.KeyboardEvent): void} | Function, preventCloseOnClick?: boolean, onClick?: {(event: React.TouchEvent | React.MouseEvent, data: Object, target: HTMLElement): void} | Function, + data?: Object, children?: React.ReactNode, }