@atlaskit/editor-core
Version:
A package contains Atlassian editor core functionality
41 lines (40 loc) • 1.35 kB
TypeScript
/// <reference types="react" />
import * as React from 'react';
import { PureComponent } from 'react';
import { MentionProvider } from '@atlaskit/mention';
import { ProfilecardProvider } from './types';
import { MentionEventHandler } from '../Renderer';
export interface Props {
id: string;
text: string;
accessLevel?: string;
mentionProvider?: Promise<MentionProvider>;
portal?: HTMLElement;
profilecardProvider: ProfilecardProvider;
onClick: MentionEventHandler;
onMouseEnter: MentionEventHandler;
onMouseLeave: MentionEventHandler;
}
export declare type PopupAlignX = 'left' | 'right';
export declare type PopupAlignY = 'top' | 'bottom';
export interface State {
target: HTMLElement | null;
visible: boolean;
popupAlignX: PopupAlignX;
popupAlignY: PopupAlignY;
ProfilecardResourcedWithListeners?: React.ComponentClass<any>;
}
export default class MentionWithProfileCard extends PureComponent<Props, State> {
private domNode;
state: State;
private handleRef;
componentDidMount(): void;
private calculateLayerPosition();
private handleMentionNodeRef;
private getDomNodeCenterCoords();
private getVisibleAreaCentreCoords();
private getActions(id, text, accessLevel?);
private showProfilecard;
private hideProfilecard;
render(): JSX.Element;
}