@atlaskit/editor-core
Version:
A package contains Atlassian editor core functionality
80 lines (79 loc) • 2.98 kB
TypeScript
/// <reference types="react" />
import { PureComponent } from 'react';
import { ActivityProvider } from '@atlaskit/activity';
import { EmojiProvider } from '@atlaskit/emoji';
import { MentionProvider } from '@atlaskit/mention';
import { MediaProvider } from '@atlaskit/media-core';
import { BlockTypeState } from '../../plugins/block-type';
import { CodeBlockState } from '../../plugins/code-block';
import { EmojiState } from '../../plugins/emojis';
import { HyperlinkState } from '../../plugins/hyperlink';
import { ImageUploadState } from '../../plugins/image-upload';
import { ListsState } from '../../plugins/lists';
import { MentionsState } from '../../plugins/mentions';
import { TextFormattingState } from '../../plugins/text-formatting';
import { ClearFormattingState } from '../../plugins/clear-formatting';
import { PanelState } from '../../plugins/panel';
import { MediaPluginState } from '../../plugins/media';
import { TextColorState } from '../../plugins/text-color';
import { TableState } from '../../plugins/table';
import { EditorView } from '../../prosemirror';
export interface Props {
editorView: EditorView;
disabled?: boolean;
feedbackFormUrl?: string;
helpDialogPresent?: boolean;
onCancel?: () => void;
onInsertImage?: () => void;
onSave?: () => void;
packageVersion?: string;
packageName?: string;
pluginStateBlockType?: BlockTypeState;
pluginStateCodeBlock?: CodeBlockState;
pluginStateHyperlink?: HyperlinkState;
pluginStateLists?: ListsState;
pluginStateTextFormatting?: TextFormattingState;
pluginStateClearFormatting?: ClearFormattingState;
pluginStateImageUpload?: ImageUploadState;
pluginStateMentions?: MentionsState;
pluginStateMedia?: MediaPluginState;
pluginStateEmojis?: EmojiState;
pluginStateTextColor?: TextColorState;
pluginStateTable?: TableState;
presenceResourceProvider?: any;
saveDisabled?: boolean;
showSpinner?: boolean;
emojiProvider?: Promise<EmojiProvider>;
mentionProvider?: Promise<MentionProvider>;
activityProvider?: Promise<ActivityProvider>;
mediaProvider?: Promise<MediaProvider>;
pluginStatePanel?: PanelState;
popupsBoundariesElement?: HTMLElement;
popupsMountPoint?: HTMLElement;
height?: number;
maxHeight?: number | undefined;
}
export interface State {
maxHeightStyle?: any;
showHelp?: boolean;
}
export default class ChromeExpanded extends PureComponent<Props, State> {
private editorContainer;
private maxHeightContainer;
state: State;
static defaultProps: {
saveDisabled: boolean;
};
componentWillMount(): void;
componentDidMount(): void;
private handleSpinnerComplete();
private getEditorHeight();
private addBorders;
private toggleHelp;
private onKeyDown;
render(): JSX.Element;
private handleEditorContainerRef;
private handleMaxHeightContainer;
private handleCancel;
private handleSave;
}