@opentiny/fluent-editor
Version:
A rich text editor based on Quill 2.0, which extends rich modules and formats on the basis of Quill. It's powerful and out-of-the-box.
40 lines (39 loc) • 1.21 kB
TypeScript
import { EmojiMartData } from '@emoji-mart/data';
import { computePosition } from '@floating-ui/dom';
import { Picker } from 'emoji-mart';
import { default as FluentEditor } from '../fluent-editor';
export interface EmojiModuleOptions {
emojiData?: EmojiMartData;
EmojiPicker?: new (props: any) => Picker;
emojiPickerPosition?: typeof computePosition;
theme?: string;
locale?: string;
set?: string;
skinTonePosition?: string;
previewPosition?: string;
searchPosition?: string;
categories?: string[];
maxFrequentRows?: number;
perLine?: number;
navPosition?: string;
noCountryFlags?: boolean;
dynamicWidth?: boolean;
}
declare class EmojiModule {
private readonly quill;
private readonly options;
private picker;
private isPickerVisible;
private cleanupResizeObserver;
constructor(quill: FluentEditor, options?: EmojiModuleOptions);
private getEmojiButton;
private updatePickerPosition;
private setupContainerResizeObserver;
private createPicker;
openDialog(): void;
closeDialog(): void;
private handleEmojiSelect;
private handleClickOutside;
destroy(): void;
}
export { EmojiModule };