@univerjs/docs-ui
Version:
Univer normal ui-plugin-docs
134 lines (133 loc) • 5.63 kB
TypeScript
import { DocumentDataModel, Nullable, ILogService, IUniverInstanceService, RxDisposable } from '@univerjs/core';
import { IDocSelectionInnerParam, IMouseEvent, INodePosition, IPointerEvent, IRenderContext, IRenderModule, ISuccinctDocRangeParam, ITextRangeWithStyle } from '@univerjs/engine-render';
import { DocSkeletonManagerService } from '@univerjs/docs';
import { ILayoutService } from '@univerjs/ui';
import { TextRange } from './text-range';
export interface IEditorInputConfig {
event: Event | CompositionEvent | KeyboardEvent;
content?: string;
activeRange?: Nullable<ITextRangeWithStyle>;
rangeList?: ITextRangeWithStyle[];
}
export declare class DocSelectionRenderService extends RxDisposable implements IRenderModule {
private readonly _context;
private readonly _layoutService;
private readonly _logService;
private readonly _univerInstanceService;
private readonly _docSkeletonManagerService;
private readonly _onInputBefore$;
readonly onInputBefore$: import('rxjs').Observable<Nullable<IEditorInputConfig>>;
private readonly _onKeydown$;
readonly onKeydown$: import('rxjs').Observable<IEditorInputConfig>;
private readonly _onInput$;
readonly onInput$: import('rxjs').Observable<IEditorInputConfig>;
private readonly _onCompositionstart$;
readonly onCompositionstart$: import('rxjs').Observable<Nullable<IEditorInputConfig>>;
private readonly _onCompositionupdate$;
readonly onCompositionupdate$: import('rxjs').Observable<Nullable<IEditorInputConfig>>;
private readonly _onCompositionend$;
readonly onCompositionend$: import('rxjs').Observable<Nullable<IEditorInputConfig>>;
private readonly _onSelectionStart$;
readonly onSelectionStart$: import('rxjs').Observable<Nullable<INodePosition>>;
readonly onChangeByEvent$: import('rxjs').Observable<Nullable<IEditorInputConfig>>;
private readonly _onPaste$;
readonly onPaste$: import('rxjs').Observable<IEditorInputConfig>;
private readonly _textSelectionInner$;
readonly textSelectionInner$: import('rxjs').Observable<Nullable<IDocSelectionInnerParam>>;
private readonly _onFocus$;
readonly onFocus$: import('rxjs').Observable<IEditorInputConfig>;
private readonly _onBlur$;
readonly onBlur$: import('rxjs').Observable<IEditorInputConfig>;
private readonly _onPointerDown$;
readonly onPointerDown$: import('rxjs').Observable<void>;
private _container;
private _inputParent;
private _input;
private _scrollTimers;
private _rangeList;
private _rangeListCache;
private _rectRangeList;
private _rectRangeListCache;
private _anchorNodePosition;
private _focusNodePosition;
private _currentSegmentId;
private _currentSegmentPage;
private _selectionStyle;
private _onPointerEvent;
private _viewPortObserverMap;
private _isIMEInputApply;
private _scenePointerMoveSubs;
private _scenePointerUpSubs;
private _reserveRanges;
get isOnPointerEvent(): boolean;
get isFocusing(): boolean;
get canFocusing(): boolean;
constructor(_context: IRenderContext<DocumentDataModel>, _layoutService: ILayoutService, _logService: ILogService, _univerInstanceService: IUniverInstanceService, _docSkeletonManagerService: DocSkeletonManagerService);
private _listenCurrentUnitChange;
get activeViewPort(): import('@univerjs/engine-render').Viewport;
setSegment(id: string): void;
getSegment(): string;
setSegmentPage(pageIndex: number): void;
getSegmentPage(): number;
setReserveRangesStatus(status: boolean): void;
private _setRangeStyle;
addDocRanges(ranges: ISuccinctDocRangeParam[], isEditing?: boolean, options?: {
[key: string]: boolean;
}): void;
setCursorManually(evtOffsetX: number, evtOffsetY: number): void;
sync(): void;
/**
* @deprecated
*/
activate(x: number, y: number, force?: boolean): void;
hasFocus(): boolean;
focus(): void;
blur(): void;
/**
* @deprecated
*/
deactivate(): void;
__handleDblClick(evt: IPointerEvent | IMouseEvent): void;
__handleTripleClick(evt: IPointerEvent | IMouseEvent): void;
__onPointDown(evt: IPointerEvent | IMouseEvent): void;
removeAllRanges(): void;
getActiveTextRange(): TextRange | undefined;
private _disposeScrollTimers;
private _setSystemHighlightColorToStyle;
private _getAllTextRanges;
private _getAllRectRanges;
getAllTextRanges(): ITextRangeWithStyle[];
getAllRectRanges(): import('@univerjs/engine-render').IRectRangeWithStyle[];
private _getActiveRange;
private _getActiveRangeInstance;
dispose(): void;
private _initDOM;
private _registerContainer;
private _initInput;
private _getNodePosition;
private _interactTextRanges;
private _interactRectRanges;
private _removeAllRanges;
private _removeAllCacheRanges;
private _removeAllTextRanges;
private _removeAllRectRanges;
private _removeAllCollapsedTextRanges;
private _deactivateAllTextRanges;
private _deactivateAllRectRanges;
private _addTextRangesToCache;
private _addTextRange;
private _addRectRangesToCache;
private _addRectRanges;
private _createTextRangeByAnchorPosition;
private _updateActiveRangePosition;
private _isEmpty;
private _getCanvasOffset;
private _updateInputPosition;
private _moving;
__attachScrollEvent(): void;
private _initInputEvents;
private _eventHandle;
private _getTransformCoordForDocumentOffset;
private _findNodeByCoord;
private _detachEvent;
}