UNPKG

office-ui-fabric-react

Version:

Reusable React components for building experiences for Office 365.

53 lines (52 loc) 1.91 kB
import * as React from 'react'; import { IContextualMenuProps, IContextualMenuItem } from './ContextualMenu.Props'; import { DirectionalHint } from '../../common/DirectionalHint'; import './ContextualMenu.scss'; export interface IContextualMenuState { expandedMenuItemKey?: string; dismissedMenuItemKey?: string; contextualMenuItems?: IContextualMenuItem[]; contextualMenuTarget?: HTMLElement; beakStyle?: any; submenuProps?: IContextualMenuProps; positions?: any; slideDirectionalClassName?: string; subMenuId?: string; submenuDirection?: DirectionalHint; } export declare class ContextualMenu extends React.Component<IContextualMenuProps, IContextualMenuState> { static defaultProps: { items: any[]; shouldFocusOnMount: boolean; isBeakVisible: boolean; gapSpace: number; directionalHint: DirectionalHint; beakWidth: number; }; private _host; private _previousActiveElement; private _isFocusingPreviousElement; private _didSetInitialFocus; private _enterTimerId; private _events; private _async; private _focusZone; constructor(props: IContextualMenuProps); dismiss(ev?: any): void; componentWillMount(): void; componentDidMount(): void; componentWillReceiveProps(newProps: IContextualMenuProps, newState: IContextualMenuState): void; componentWillUnmount(): void; render(): any; private _renderMenuItem(item, index, hasCheckmarks, hasIcons); private _renderMenuItemChildren(item, index, hasCheckmarks, hasIcons); private _tryFocus(focusZone); private _onKeyDown(ev); private _onItemMouseEnter(item, ev); private _onMouseLeave(ev); private _onItemMouseDown(item, ev); private _onItemClick(item, ev); private _onItemKeyDown(item, ev); private _onItemSubMenuExpand(item, target); private _onSubMenuDismiss(ev?); }