UNPKG

choerodon-ui

Version:

An enterprise-class UI design language and React-based implementation

94 lines (93 loc) 4.62 kB
import React, { CSSProperties, Key } from 'react'; import PropTypes from 'prop-types'; import ViewComponent, { ViewComponentProps } from '../../pro/lib/core/ViewComponent'; import Align from '../align'; export interface PopupProps extends ViewComponentProps { align: object; onAlign?: (source: Node, align: object, target: HTMLElement, translate: { x: number; y: number; }) => void; getRootDomNode?: () => Element | Text | null; getPopupContainer?: (triggerNode: Element) => HTMLElement; transitionName?: string; onAnimateAppear?: (key: Key | null) => void; onAnimateEnter?: (key: Key | null) => void; onAnimateLeave?: (key: Key | null) => void; onAnimateEnd?: (key: Key | null, exists: boolean) => void; getStyleFromAlign?: (target: HTMLElement, align: object) => object | undefined; getClassNameFromAlign?: (align: object) => string | undefined; getFocusableElements?: (elements: HTMLElement[]) => void; } export default class Popup extends ViewComponent<PopupProps> { static displayName: string; static popupContainer?: HTMLDivElement; static propTypes: { id: PropTypes.Requireable<string>; size: PropTypes.Requireable<import("../_util/enum").Size>; suffixCls: PropTypes.Requireable<string>; prefixCls: PropTypes.Requireable<string>; title: PropTypes.Requireable<PropTypes.ReactNodeLike>; disabled: PropTypes.Requireable<boolean>; hidden: PropTypes.Requireable<boolean>; autoFocus: PropTypes.Requireable<boolean>; accessKey: PropTypes.Requireable<string | boolean>; dir: PropTypes.Requireable<string>; contentEditable: PropTypes.Requireable<string | boolean>; draggable: PropTypes.Requireable<string | boolean>; style: PropTypes.Requireable<object>; className: PropTypes.Requireable<string>; tabIndex: PropTypes.Requireable<number>; lang: PropTypes.Requireable<string>; spellCheck: PropTypes.Requireable<boolean>; onFocus: PropTypes.Requireable<(...args: any[]) => any>; onBlur: PropTypes.Requireable<(...args: any[]) => any>; onClick: PropTypes.Requireable<(...args: any[]) => any>; onDoubleClick: PropTypes.Requireable<(...args: any[]) => any>; onMouseUp: PropTypes.Requireable<(...args: any[]) => any>; onMouseDown: PropTypes.Requireable<(...args: any[]) => any>; onMouseMove: PropTypes.Requireable<(...args: any[]) => any>; onMouseEnter: PropTypes.Requireable<(...args: any[]) => any>; onMouseLeave: PropTypes.Requireable<(...args: any[]) => any>; onMouseOver: PropTypes.Requireable<(...args: any[]) => any>; onMouseOut: PropTypes.Requireable<(...args: any[]) => any>; onContextMenu: PropTypes.Requireable<(...args: any[]) => any>; onKeyDown: PropTypes.Requireable<(...args: any[]) => any>; onKeyUp: PropTypes.Requireable<(...args: any[]) => any>; onKeyPress: PropTypes.Requireable<(...args: any[]) => any>; align: PropTypes.Requireable<object>; onAlign: PropTypes.Requireable<(...args: any[]) => any>; getRootDomNode: PropTypes.Requireable<(...args: any[]) => any>; getPopupContainer: PropTypes.Requireable<(...args: any[]) => any>; transitionName: PropTypes.Requireable<string>; onAnimateAppear: PropTypes.Requireable<(...args: any[]) => any>; onAnimateEnter: PropTypes.Requireable<(...args: any[]) => any>; onAnimateLeave: PropTypes.Requireable<(...args: any[]) => any>; onAnimateEnd: PropTypes.Requireable<(...args: any[]) => any>; getStyleFromAlign: PropTypes.Requireable<(...args: any[]) => any>; getClassNameFromAlign: PropTypes.Requireable<(...args: any[]) => any>; }; static defaultProps: { suffixCls: string; transitionName: string; }; popupContainer?: HTMLDivElement; currentAlignClassName?: string; currentAlignStyle?: CSSProperties; align: Align | null; target?: HTMLElement; contentRendered: boolean; popupKey: string; saveRef: (align: any) => any; getOmitPropsKeys(): string[]; componentWillUnmount(): void; componentDidUpdate(): void; componentDidMount(): void; findFocusableElements(): void; renderInner(innerRef: any): JSX.Element; render(): React.ReactPortal | null; getContainer(): HTMLDivElement | undefined; onAlign(source: any, align: any, target: any, translate: any): void; forceAlign(): void; } export declare function getGlobalPopupContainer(): HTMLDivElement;