UNPKG

office-ui-fabric-react

Version:

Reusable React components for building experiences for Office 365.

63 lines (62 loc) 2.23 kB
/// <reference types="react" /> import { IContextualMenuItem } from './ContextualMenu.types'; import { IMenuItemClassNames } from './ContextualMenu.classNames'; export interface IContextualMenuRenderItem { /** * Function to open this item's subMenu, if present. */ openSubMenu: () => void; /** * Function to close this item's subMenu, if present. */ dismissSubMenu: () => void; /** * Dismiss the menu this item belongs to. */ dismissMenu: (dismissAll?: boolean) => void; } export interface IContextualMenuItemProps extends React.HTMLAttributes<IContextualMenuItemProps> { /** * Optional callback to access the IContextualMenuRenderItem interface. Use this instead of ref for accessing * the public methods and properties of the component. */ componentRef?: (component: IContextualMenuRenderItem | null) => void; /** * The item to display */ item: IContextualMenuItem; /** * Classnames for different aspects of a menu item */ classNames: IMenuItemClassNames; /** * Index of the item */ index: number; /** * If this item has icons */ hasIcons: boolean | undefined; /** * Click handler for the checkmark */ onCheckmarkClick?: ((item: IContextualMenuItem, ev: React.MouseEvent<HTMLElement>) => void); /** * This prop will get set by ContextualMenu and can be called to open this item's subMenu, if present. */ openSubMenu?: (item: any, target: HTMLElement) => void; /** * This prop will get set by ContextualMenu and can be called to close this item's subMenu, if present. */ dismissSubMenu?: () => void; /** * This prop will get set by ContextualMenu and can be called to close the menu this item belongs to. * If dismissAll is true, all menus will be closed. */ dismissMenu?: (ev?: any, dismissAll?: boolean) => void; /** * This prop will get set by the wrapping component and will return the element that wraps this ContextualMenuItem. * Used for openSubMenu. */ getSubmenuTarget?: () => HTMLElement | undefined; }