53 lines
1.9 KiB
TypeScript
53 lines
1.9 KiB
TypeScript
import * as React from 'react';
|
|
import { KeyCodes } from '../../Utilities';
|
|
import { OpenCardMode, HoverCardType } from './HoverCard.types';
|
|
import { ExpandingCardMode } from './ExpandingCard.types';
|
|
import type { IHoverCardProps, IHoverCard } from './HoverCard.types';
|
|
import type { JSXElement } from '@fluentui/utilities';
|
|
export interface IHoverCardState {
|
|
isHoverCardVisible?: boolean;
|
|
mode?: ExpandingCardMode;
|
|
openMode?: OpenCardMode;
|
|
}
|
|
export declare class HoverCardBase extends React.Component<IHoverCardProps, IHoverCardState> implements IHoverCard {
|
|
static defaultProps: {
|
|
cardOpenDelay: number;
|
|
cardDismissDelay: number;
|
|
expandedCardOpenDelay: number;
|
|
instantOpenOnClick: boolean;
|
|
setInitialFocus: boolean;
|
|
openHotKey: KeyCodes;
|
|
type: HoverCardType;
|
|
};
|
|
private _hoverCard;
|
|
private _dismissTimerId;
|
|
private _openTimerId;
|
|
private _currentMouseTarget;
|
|
private _nativeDismissEvent;
|
|
private _childDismissEvent;
|
|
private _classNames;
|
|
private _async;
|
|
private _events;
|
|
constructor(props: IHoverCardProps);
|
|
componentDidMount(): void;
|
|
componentWillUnmount(): void;
|
|
componentDidUpdate(prevProps: IHoverCardProps, prevState: IHoverCardState): void;
|
|
dismiss: (withTimeOut?: boolean) => void;
|
|
render(): JSXElement;
|
|
private _getTargetElement;
|
|
private _shouldBlockHoverCard;
|
|
private _cardOpen;
|
|
private _executeCardOpen;
|
|
/**
|
|
* Hide HoverCard
|
|
* How we dismiss the card depends on where the callback is coming from.
|
|
* This is provided by the `isNativeEvent` argument.
|
|
* true: Event is coming from event listeners set up in componentDidMount.
|
|
* false: Event is coming from the `onLeave` prop from the HoverCard component.
|
|
*/
|
|
private _cardDismiss;
|
|
private _setDismissedState;
|
|
private _instantOpenAsExpanded;
|
|
private _setEventListeners;
|
|
}
|