UNPKG

@textbus/platform-browser

Version:

Textbus is a rich text editor and framework that is highly customizable and extensible to achieve rich wysiwyg effects.

83 lines (82 loc) 2.46 kB
import { Observable } from '@tanbo/stream'; import { Commander, Controller, Keyboard, Scheduler, Selection, Textbus } from '@textbus/core'; import { Parser } from './parser'; import { Caret, CaretLimit, CaretPosition, Input } from './types'; import { DomAdapter } from './dom-adapter'; interface CaretStyle { height: string; lineHeight: string; fontSize: string; } declare class ExperimentalCaret implements Caret { private domRenderer; private scheduler; private editorMask; onPositionChange: Observable<CaretPosition | null>; onStyleChange: Observable<CaretStyle>; elementRef: HTMLElement; changeFromSelf: boolean; getLimit: () => CaretLimit; get rect(): DOMRect; private timer; private caret; private set display(value); private get display(); private _display; private flashing; private subscription; private positionChangeEvent; private styleChangeEvent; private oldRange; constructor(domRenderer: DomAdapter, scheduler: Scheduler, editorMask: HTMLElement); refresh(): void; show(range: Range, restart: boolean): void; hide(): void; destroy(): void; private updateCursorPosition; private getScrollContainer; } /** * Textbus PC 端输入实现 */ export declare class MagicInput extends Input { private domAdapter; private parser; private keyboard; private commander; private selection; private controller; private scheduler; private textbus; composition: boolean; onReady: Promise<void>; caret: ExperimentalCaret; set disabled(b: boolean); get disabled(): boolean; private isSafari; private isFirefox; private isMac; private isWindows; private _disabled; private container; private subscription; private doc; private textarea; private isFocus; private nativeFocus; private ignoreComposition; constructor(domAdapter: DomAdapter, parser: Parser, keyboard: Keyboard, commander: Commander, selection: Selection, controller: Controller, scheduler: Scheduler, textbus: Textbus); focus(range: Range, restart: boolean): void; blur(): void; destroy(): void; private reInit; private init; private handleDefaultActions; copyHandler(ev: ClipboardEvent): void; pasteHandler(ev: ClipboardEvent): void; private paste; private handleShortcut; private handleInput; private createEditableFrame; } export {};