office-ui-fabric-react
Version:
Reusable React components for building experiences for Microsoft 365.
56 lines (55 loc) • 1.76 kB
TypeScript
import * as React from 'react';
import { IModalProps, IModal } from './Modal.types';
export interface IDialogState {
isOpen?: boolean;
isVisible?: boolean;
isVisibleClose?: boolean;
id?: string;
hasBeenOpened?: boolean;
modalRectangleTop?: number;
isModalMenuOpen?: boolean;
isInKeyboardMoveMode?: boolean;
x: number;
y: number;
}
export declare class ModalBase extends React.Component<IModalProps, IDialogState> implements IModal {
static defaultProps: IModalProps;
private _onModalCloseTimer;
private _focusTrapZone;
private _focusTrapZoneMergedRef;
private _scrollableContent;
private _lastSetX;
private _lastSetY;
private _allowTouchBodyScroll;
private _hasRegisteredKeyUp;
private _async;
private _events;
private _minClampedPosition;
private _maxClampedPosition;
constructor(props: IModalProps);
UNSAFE_componentWillReceiveProps(newProps: IModalProps): void;
componentDidMount(): void;
componentDidUpdate(prevProps: IModalProps, prevState: IDialogState): void;
componentWillUnmount(): void;
render(): JSX.Element | null;
focus(): void;
private _registerInitialModalPosition;
/**
* Clamps the position coordinates to the maximum/minimum value specified in props
*/
private _getClampedPosition;
private _getClampedPositionY;
private _getClampedPositionX;
private _allowScrollOnModal;
private _onModalContextMenuClose;
private _onModalClose;
private _onDragStart;
private _onDrag;
private _onDragStop;
private _onKeyUp;
private _onKeyDown;
private _getMoveDelta;
private _onEnterKeyboardMoveMode;
private _onExitKeyboardMoveMode;
private _registerForKeyUp;
}