UNPKG

office-ui-fabric-react

Version:

Reusable React components for building experiences for Office 365.

68 lines (67 loc) 2.56 kB
/// <reference types="react" /> import { BaseComponent } from '../../Utilities'; import { IContextualMenuProps } from '../../ContextualMenu'; import { IButtonProps, IButton } from './Button.types'; export interface IBaseButtonProps extends IButtonProps { baseClassName?: string; variantClassName?: string; } export interface IBaseButtonState { menuProps?: IContextualMenuProps | null; } export declare class BaseButton extends BaseComponent<IBaseButtonProps, IBaseButtonState> implements IButton { private readonly _isSplitButton; private readonly _isExpanded; static defaultProps: Partial<IBaseButtonProps>; private _buttonElement; private _splitButtonContainer; private _labelId; private _descriptionId; private _ariaDescriptionId; private _classNames; private _processingTouch; private _lastTouchTimeoutId; constructor(props: IBaseButtonProps, rootClassName: string); render(): JSX.Element; componentDidMount(): void; componentDidUpdate(prevProps: IBaseButtonProps, prevState: IBaseButtonState): void; focus(): void; dismissMenu(): void; openMenu(shouldFocusOnContainer?: boolean, shouldFocusOnMount?: boolean): void; private _onRenderContent(tag, buttonProps); private _onRenderIcon; private _onRenderTextContents; private _onRenderText; private _hasText(); private _onRenderChildren; private _onRenderDescription; private _onRenderAriaDescription; private _onRenderMenuIcon; private _onRenderMenu; private _dismissMenu; private _openMenu; private _onToggleMenu; private _onRenderSplitButtonContent(tag, buttonProps); private _onSplitContainerFocusCapture; private _onSplitButtonPrimaryClick; private _onRenderSplitButtonDivider(classNames); private _onRenderSplitButtonMenuButton(classNames, keytipAttributes); private _onKeyDown; private _onKeyUp; private _onKeyPress; private _onMouseUp; private _onMouseDown; private _onClick; private _onSplitButtonContainerKeyDown; private _onMenuKeyDown; private _onTouchStart; private _onPointerDown(ev); private _handleTouchAndPointerEvent(); /** * Returns if the user hits a valid keyboard key to open the menu * @param ev - the keyboard event * @returns True if user clicks on custom trigger key if enabled or alt + down arrow if not. False otherwise. */ private _isValidMenuOpenKey(ev); private _onMenuClick; }