@ones-editor/editor 2.2.6-beta.1 → 2.2.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/@ones-editor/block-resizer/src/index.d.ts +0 -1
- package/@ones-editor/comments/src/comment-quick-reply/index.d.ts +0 -1
- package/@ones-editor/comments/src/comments-helper/get-comment-abstract.d.ts +1 -2
- package/@ones-editor/core/src/core/block-renderers/block-renderers.d.ts +0 -1
- package/@ones-editor/core/src/core/doc/doc.d.ts +2 -1
- package/@ones-editor/core/src/core/editor-doc/editor-doc.d.ts +1 -0
- package/@ones-editor/core/src/core/types.d.ts +2 -6
- package/@ones-editor/core/src/core/undo-manager/actions/action.d.ts +1 -5
- package/@ones-editor/core/src/core/undo-manager/actions/block-action.d.ts +0 -1
- package/@ones-editor/core/src/core/undo-manager/actions/update-block-data-action.d.ts +0 -1
- package/@ones-editor/embed-block-helper/src/block-properties/embed-block-properties.d.ts +1 -1
- package/@ones-editor/embed-block-helper/src/block-resizer/index.d.ts +0 -1
- package/@ones-editor/image-embed/src/hovering-toolbar/index.d.ts +11 -0
- package/@ones-editor/image-embed/src/image-object.d.ts +0 -1
- package/@ones-editor/media-embed/src/core/hovering-toolbar/index.d.ts +20 -2
- package/@ones-editor/misc/src/index.d.ts +1 -0
- package/@ones-editor/misc/src/re-auth/index.d.ts +23 -0
- package/@ones-editor/sharedb-doc/src/doc/auth-connection.d.ts +31 -39
- package/@ones-editor/sharedb-doc/src/doc/sharedb-client.d.ts +14 -10
- package/@ones-editor/sharedb-doc/src/doc/sharedb-doc.d.ts +4 -4
- package/@ones-editor/sharedb-doc/src/index.d.ts +1 -5
- package/@ones-editor/sharedb-doc/src/types.d.ts +2 -15
- package/@ones-editor/sharedb-doc/src/versions/sharedb-server.d.ts +1 -1
- package/@ones-editor/sharedb-doc/src/versions/simple-client.d.ts +1 -1
- package/@ones-editor/tsconfig.tsbuildinfo +1 -1
- package/@ones-editor/ui/src/index.d.ts +1 -2
- package/@ones-editor/ui/src/readonly-toolbar/add-comment-to-old-doc.d.ts +0 -3
- package/@ones-editor/ui/src/readonly-toolbar/index.d.ts +0 -2
- package/@ones-editor/ui/src/tooltips/index.d.ts +9 -21
- package/@ones-editor/ui-base/src/color-button/text-color-item.d.ts +8 -18
- package/@ones-editor/ui-base/src/color-palette/color-palette.d.ts +1 -7
- package/@ones-editor/ui-base/src/color-palette/index.d.ts +3 -3
- package/@ones-editor/ui-base/src/locale/en-us.d.ts +0 -1
- package/@ones-editor/ui-base/src/locale/ja-jp.d.ts +0 -1
- package/@ones-editor/ui-base/src/locale/zh-cn.d.ts +0 -1
- package/@ones-editor/versions/package.json +0 -3
- package/@ones-editor/versions/src/constant/index.d.ts +0 -2
- package/@ones-editor/versions/src/history-doc/history-doc.d.ts +2 -2
- package/@ones-editor/versions/src/history-render/index.d.ts +1 -15
- package/@ones-editor/versions/src/index.d.ts +0 -1
- package/@ones-editor/versions/src/locale/en-us.d.ts +0 -1
- package/@ones-editor/versions/src/locale/ja-jp.d.ts +0 -1
- package/@ones-editor/versions/src/locale/zh-cn.d.ts +0 -1
- package/@ones-editor/versions/src/types.d.ts +0 -4
- package/@ones-editor/versions/src/utils/block-text.d.ts +1 -3
- package/dist/index.js +3059 -4465
- package/dist/types.d.ts +2 -14
- package/package.json +1 -2
- package/@ones-editor/comments/src/block-hook/block-comment-hook.d.ts +0 -10
- package/@ones-editor/sharedb-doc/src/doc/auto-renew-token.d.ts +0 -15
- package/@ones-editor/sharedb-doc/src/doc/connection-status.d.ts +0 -19
- package/@ones-editor/sharedb-doc/src/doc/edit-status.d.ts +0 -13
- package/@ones-editor/sharedb-doc/src/doc/sharedb-client-base.d.ts +0 -24
- package/@ones-editor/sharedb-doc/src/doc/sharedb-local-doc.d.ts +0 -17
- package/@ones-editor/ui/src/readonly-toolbar/helper.d.ts +0 -2
- package/@ones-editor/ui-base/src/command-bar/active-observer.d.ts +0 -11
- package/@ones-editor/versions/src/history-tooltip/index.d.ts +0 -14
- package/dist/error-handler/index.d.ts +0 -19
|
@@ -18,7 +18,6 @@ export declare class BlockResizer extends TypedEmitter<BlockResizerEvents> {
|
|
|
18
18
|
constructor(editor: OnesEditor, options: BlockResizerOptions);
|
|
19
19
|
enableResize(block: BlockElement, resizableElement?: HTMLElement): void;
|
|
20
20
|
disableResize(): void;
|
|
21
|
-
handleEditorResize: () => void;
|
|
22
21
|
update(block: BlockElement, resizableElement?: HTMLElement): void;
|
|
23
22
|
updateResizer(): void;
|
|
24
23
|
getBlock(): BlockElement | null;
|
|
@@ -11,7 +11,6 @@ export declare class CommentQuickReply {
|
|
|
11
11
|
root: HTMLDivElement;
|
|
12
12
|
private components;
|
|
13
13
|
constructor(mainEditor: OnesEditor, commentsProvider: OnesEditorCommentsProvider, comment: CommentWithChildren, groupItem: CommentGroupItem);
|
|
14
|
-
private get commentOptions();
|
|
15
14
|
private createQuickReply;
|
|
16
15
|
private handleFocus;
|
|
17
16
|
private handleDocChange;
|
|
@@ -1,3 +1,2 @@
|
|
|
1
|
-
import { BlockElement, OnesEditor
|
|
1
|
+
import { BlockElement, OnesEditor } from '../../../../@ones-editor/core';
|
|
2
2
|
export declare function getCommentAbstract(editor: OnesEditor, blocks: BlockElement[]): string;
|
|
3
|
-
export declare function getCommentAbstractFromSelectedBlocks(editor: OnesEditor, blocks: SelectedBlock[]): string;
|
|
@@ -9,5 +9,4 @@ export declare class EditorBlockRenderers implements OnesEditorBlockRenderers {
|
|
|
9
9
|
renderText(path: BlockPath, attributes: DocBlockTextAttributes): OnesEditorBlockRenderResult;
|
|
10
10
|
renderBlock(editor: OnesEditor, path: BlockPath, blockData: DocBlock): OnesEditorBlockRenderResult;
|
|
11
11
|
updateBlock(editor: OnesEditor, path: BlockPath, blockElement: BlockElement, blockData: DocBlock): void;
|
|
12
|
-
renderChildContainer(editor: OnesEditor, path: BlockPath, containerId: string): OnesEditorBlockRenderResult;
|
|
13
12
|
}
|
|
@@ -132,6 +132,7 @@ export interface OnesEditorDocCallbacks {
|
|
|
132
132
|
onCustomMessage?: (msg: unknown) => void;
|
|
133
133
|
onStatusChanged?: (status: OnesEditorDocStatus) => void;
|
|
134
134
|
onError?: (error: Error) => void;
|
|
135
|
+
onAuthRecover?: () => void;
|
|
135
136
|
}
|
|
136
137
|
export interface UploadResourceOptions {
|
|
137
138
|
onProgress?: (progress: number) => void;
|
|
@@ -267,7 +268,7 @@ export interface OnesEditorHistoryDataParseHandler {
|
|
|
267
268
|
onUpdateComment: (commentId: string, local: boolean) => void;
|
|
268
269
|
}
|
|
269
270
|
export interface OnesEditorDocVersionHelper {
|
|
270
|
-
getVersions: (
|
|
271
|
+
getVersions: () => Promise<DocVersion[]>;
|
|
271
272
|
getVersion: (ver: number) => Promise<DocObject>;
|
|
272
273
|
getLatestVersion: () => Promise<DocObject>;
|
|
273
274
|
getHistoryData: (version: number, from?: number) => Promise<{
|
|
@@ -34,6 +34,7 @@ export default class EditorDoc extends EventCallbacks<OnesEditorDocCallbacks> im
|
|
|
34
34
|
onCustomMessage(msg: unknown): void;
|
|
35
35
|
onStatusChanged(status: OnesEditorDocStatus): void;
|
|
36
36
|
onError(error: Error): void;
|
|
37
|
+
onAuthRecover(): void;
|
|
37
38
|
uploadResource(file: File, options?: UploadResourceOptions): Promise<UploadResourceResult>;
|
|
38
39
|
addResources(resourceIds: string[]): Promise<string[]>;
|
|
39
40
|
buildResourceUrl(resourceId: string, options?: BuildResourceUrlOptions): string;
|
|
@@ -58,6 +58,7 @@ export type BlockPosition = SimpleBlockPosition | ComplexBlockPosition;
|
|
|
58
58
|
export interface BoxCommands {
|
|
59
59
|
group: string;
|
|
60
60
|
commands: CommandItem[];
|
|
61
|
+
startGroup?: boolean;
|
|
61
62
|
executeCommand: (editor: OnesEditor, block: BlockElement, box: BoxElement, item: CommandItem) => unknown;
|
|
62
63
|
}
|
|
63
64
|
export interface BoxProperties {
|
|
@@ -142,8 +143,6 @@ export interface CommandItem {
|
|
|
142
143
|
group?: string;
|
|
143
144
|
groupOrder?: number;
|
|
144
145
|
dropdown?: boolean;
|
|
145
|
-
dropSplit?: boolean;
|
|
146
|
-
splitTooltip?: string;
|
|
147
146
|
manualShowChildren?: boolean;
|
|
148
147
|
childrenPlacement?: CommandItemChildrenPlacement;
|
|
149
148
|
childrenOffset?: [number, number];
|
|
@@ -176,6 +175,7 @@ export interface BlockCommands {
|
|
|
176
175
|
element?: HTMLElement;
|
|
177
176
|
group: string;
|
|
178
177
|
commands: CommandItem[];
|
|
178
|
+
startGroup?: boolean;
|
|
179
179
|
executeCommand: (editor: OnesEditor, block: BlockElement, item: CommandItem, child: TextBlockContentChild | null) => unknown;
|
|
180
180
|
}
|
|
181
181
|
export interface BlockProperties {
|
|
@@ -354,8 +354,6 @@ export interface OnesEditorUndoAction {
|
|
|
354
354
|
redo: (editor: OnesEditor) => boolean;
|
|
355
355
|
combinable: (other: OnesEditorUndoAction) => boolean;
|
|
356
356
|
combine: (other: OnesEditorUndoAction) => void;
|
|
357
|
-
getTimeStamp: () => number;
|
|
358
|
-
getBatchActionId?: () => string | undefined;
|
|
359
357
|
}
|
|
360
358
|
export interface OnesEditorUndoManager {
|
|
361
359
|
reset: () => void;
|
|
@@ -402,14 +400,12 @@ export interface OnesEditorBlockRenderer {
|
|
|
402
400
|
renderBox?: (editor: OnesEditor, path: BlockPath, attributes: DocBlockTextAttributes) => OnesEditorBlockRenderResult;
|
|
403
401
|
renderText?: (editor: OnesEditor, path: BlockPath, attributes: DocBlockTextAttributes) => OnesEditorBlockRenderResult;
|
|
404
402
|
renderBlock?: (editor: OnesEditor, path: BlockPath, blockData: DocBlock) => OnesEditorBlockRenderResult;
|
|
405
|
-
renderChildContainer?: (editor: OnesEditor, path: BlockPath, containerId: string) => OnesEditorBlockRenderResult;
|
|
406
403
|
updateBlock?: (editor: OnesEditor, path: BlockPath, blockElement: BlockElement, blockData: DocBlock) => void;
|
|
407
404
|
}
|
|
408
405
|
export interface OnesEditorBlockRenderers {
|
|
409
406
|
renderBox: (path: BlockPath, attributes: DocBlockTextAttributes) => OnesEditorBlockRenderResult;
|
|
410
407
|
renderText: (path: BlockPath, attributes: DocBlockTextAttributes) => OnesEditorBlockRenderResult;
|
|
411
408
|
renderBlock: (editor: OnesEditor, path: BlockPath, blockData: DocBlock) => OnesEditorBlockRenderResult;
|
|
412
|
-
renderChildContainer: (editor: OnesEditor, path: BlockPath, containerId: string) => OnesEditorBlockRenderResult;
|
|
413
409
|
updateBlock: (editor: OnesEditor, path: BlockPath, blockElement: BlockElement, blockData: DocBlock) => void;
|
|
414
410
|
registerRender: (decorator: OnesEditorBlockRenderer) => void;
|
|
415
411
|
}
|
|
@@ -4,15 +4,11 @@ export default class Action implements OnesEditorUndoAction {
|
|
|
4
4
|
protected containerId: string;
|
|
5
5
|
beforeRange: OnesEditorDocRange;
|
|
6
6
|
afterRange: OnesEditorDocRange;
|
|
7
|
-
|
|
8
|
-
ts: number;
|
|
9
|
-
constructor(editor: OnesEditor, containerId: string, afterRange: OnesEditorDocRange, batchActionId?: string);
|
|
10
|
-
getTimeStamp(): number;
|
|
7
|
+
constructor(editor: OnesEditor, containerId: string, afterRange: OnesEditorDocRange);
|
|
11
8
|
undo(editor: OnesEditor): boolean;
|
|
12
9
|
redo(editor: OnesEditor): boolean;
|
|
13
10
|
combinable(other: OnesEditorUndoAction): boolean;
|
|
14
11
|
combine(other: OnesEditorUndoAction): void;
|
|
15
|
-
getBatchActionId(): string | undefined;
|
|
16
12
|
setAfterRange(range: OnesEditorDocRange): void;
|
|
17
13
|
hasDocContainerId(editor: OnesEditor, id: string): boolean;
|
|
18
14
|
findDocBlockById(editor: OnesEditor, id: string): DocBlock | undefined;
|
|
@@ -7,5 +7,4 @@ export default class BlockAction extends Action {
|
|
|
7
7
|
constructor(editor: OnesEditor, containerId: string, blockIndex: number, data: DocBlock, afterRange: OnesEditorDocRange);
|
|
8
8
|
deleteBlock(editor: OnesEditor, newRange: OnesEditorDocRange): boolean;
|
|
9
9
|
insertBlock(editor: OnesEditor, newRange: OnesEditorDocRange): boolean;
|
|
10
|
-
getBatchActionId(): string | undefined;
|
|
11
10
|
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { BlockCommands, BlockElement, CommandItem, OnesEditor } from '../../../../@ones-editor/core';
|
|
2
|
-
export type CommandId = 'edit' | 'separator';
|
|
2
|
+
export type CommandId = 'edit' | 'add-comment' | 'separator';
|
|
3
3
|
export interface StandardEmbedBlockProperties<T = CommandId> {
|
|
4
4
|
presetIds?: T[];
|
|
5
5
|
extIds?: T[];
|
|
@@ -9,7 +9,6 @@ export declare class EmbedBlockResizer {
|
|
|
9
9
|
handleResizing: (resizer: BlockResizer, rect: DOMRect) => void;
|
|
10
10
|
destroy(): void;
|
|
11
11
|
handleHoveringBlockChange: (block: BlockElement | null, old: BlockElement | null) => void;
|
|
12
|
-
handleEditorResize: () => void;
|
|
13
12
|
tryEnableResizer(block: BlockElement): void;
|
|
14
13
|
disableResizer(): void;
|
|
15
14
|
static get(editor: OnesEditor): EmbedBlockResizer;
|
|
@@ -10,11 +10,22 @@ export default class ImageHoveringToolbarCommands implements BlockCommands {
|
|
|
10
10
|
name: string;
|
|
11
11
|
icon: string;
|
|
12
12
|
type?: undefined;
|
|
13
|
+
groupOrder?: undefined;
|
|
14
|
+
order?: undefined;
|
|
13
15
|
} | {
|
|
14
16
|
id: string;
|
|
15
17
|
name: string;
|
|
16
18
|
type: CommandItemType;
|
|
17
19
|
icon?: undefined;
|
|
20
|
+
groupOrder?: undefined;
|
|
21
|
+
order?: undefined;
|
|
22
|
+
} | {
|
|
23
|
+
id: string;
|
|
24
|
+
name: string;
|
|
25
|
+
icon: string;
|
|
26
|
+
groupOrder: number;
|
|
27
|
+
order: number;
|
|
28
|
+
type?: undefined;
|
|
18
29
|
})[];
|
|
19
30
|
isHoveringImageEmpty: () => boolean;
|
|
20
31
|
get commands(): CommandItem[];
|
|
@@ -42,5 +42,4 @@ export declare class ImageObject implements ImageObjectBase {
|
|
|
42
42
|
private setData;
|
|
43
43
|
static create(editor: OnesEditor, blockData: DocEmbedBlock): ImageObject;
|
|
44
44
|
static getImageObject(editor: OnesEditor, block: BlockElement | string): ImageObject;
|
|
45
|
-
static findImageObject(editor: OnesEditor, block: BlockElement | string): ImageObject | null;
|
|
46
45
|
}
|
|
@@ -1,14 +1,32 @@
|
|
|
1
1
|
import { BlockCommands, BlockElement, CommandItem, OnesEditor } from '../../../../../@ones-editor/core';
|
|
2
|
+
import type { CommandItemType } from '../../../../../@ones-editor/core';
|
|
2
3
|
export default class ImageHoveringToolbarCommands implements BlockCommands {
|
|
3
4
|
protected editor: OnesEditor;
|
|
4
5
|
protected block: BlockElement;
|
|
5
6
|
group: string;
|
|
6
7
|
constructor(editor: OnesEditor, block: BlockElement);
|
|
7
|
-
_commands: {
|
|
8
|
+
_commands: ({
|
|
8
9
|
id: string;
|
|
9
10
|
name: string;
|
|
10
11
|
icon: string;
|
|
11
|
-
|
|
12
|
+
groupOrder: number;
|
|
13
|
+
order: number;
|
|
14
|
+
type?: undefined;
|
|
15
|
+
} | {
|
|
16
|
+
id: string;
|
|
17
|
+
name: string;
|
|
18
|
+
type: CommandItemType;
|
|
19
|
+
icon?: undefined;
|
|
20
|
+
groupOrder?: undefined;
|
|
21
|
+
order?: undefined;
|
|
22
|
+
} | {
|
|
23
|
+
id: string;
|
|
24
|
+
name: string;
|
|
25
|
+
icon: string;
|
|
26
|
+
groupOrder?: undefined;
|
|
27
|
+
order?: undefined;
|
|
28
|
+
type?: undefined;
|
|
29
|
+
})[];
|
|
12
30
|
isHoveringImageEmpty: () => boolean;
|
|
13
31
|
get commands(): CommandItem[];
|
|
14
32
|
executeCommand(editor: OnesEditor, block: BlockElement, item: CommandItem): void;
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { TypedEmitter } from 'tiny-typed-emitter';
|
|
2
|
+
import { OnesEditor, OnesEditorCustom, OnesEditorDocCallbacks } from '../../../../@ones-editor/core';
|
|
3
|
+
import ReAuthToolbar from './ui/toolbar';
|
|
4
|
+
import './locale';
|
|
5
|
+
type EventCallback = (() => void) | undefined;
|
|
6
|
+
declare const DOC_RE_AUTH_KEYS = "doc-re-auth-event";
|
|
7
|
+
type ReAuthEvent = {
|
|
8
|
+
tokenExpired: () => void;
|
|
9
|
+
};
|
|
10
|
+
declare class DocReAuthCallbacks extends TypedEmitter<ReAuthEvent> implements OnesEditorCustom, OnesEditorDocCallbacks {
|
|
11
|
+
private editor;
|
|
12
|
+
private authErrorCallback;
|
|
13
|
+
private authRecoverCallback;
|
|
14
|
+
reAuthToolbar: ReAuthToolbar;
|
|
15
|
+
constructor(editor: OnesEditor);
|
|
16
|
+
handleReAuth: () => void;
|
|
17
|
+
addAuthListen(event: 'authError' | 'authRecover', callback: EventCallback): void;
|
|
18
|
+
removeListeners(): void;
|
|
19
|
+
destroy: () => void;
|
|
20
|
+
onError: (error: Error) => void;
|
|
21
|
+
onAuthRecover: () => void;
|
|
22
|
+
}
|
|
23
|
+
export { ReAuthToolbar, DocReAuthCallbacks, DOC_RE_AUTH_KEYS, };
|
|
@@ -1,58 +1,50 @@
|
|
|
1
|
-
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
1
|
+
/// <reference types="node" />
|
|
2
|
+
import { EventEmitter } from 'events';
|
|
3
|
+
import { Connection, Doc } from 'sharedb/lib/client';
|
|
4
|
+
import ReconnectingWebSocket, { Event } from 'reconnecting-websocket';
|
|
5
|
+
import { AuthMessage, ReauthFunc } from '../types';
|
|
4
6
|
import './sharedb-ext';
|
|
5
|
-
export
|
|
6
|
-
renewingToken: (count: number) => void;
|
|
7
|
-
renewedToken: (auth: AuthMessage) => void;
|
|
8
|
-
renewTokenError: (error: Error) => void;
|
|
9
|
-
reauthing: (count: number) => void;
|
|
10
|
-
authError: (error: Error) => void;
|
|
11
|
-
authRecover: (auth: AuthMessage) => void;
|
|
12
|
-
unknownError: (error: Error) => void;
|
|
13
|
-
connectionError: (error: Error) => void;
|
|
14
|
-
disconnected: (reason: string) => void;
|
|
15
|
-
writeConflictError: (error: Error) => void;
|
|
16
|
-
maxUsersError: () => void;
|
|
17
|
-
requestReloadError: (error: Error) => void;
|
|
18
|
-
}
|
|
19
|
-
export declare class AuthConnection extends TypedEmitter<AutoConnectionEvents> {
|
|
7
|
+
export declare class AuthConnection {
|
|
20
8
|
url: string;
|
|
21
|
-
private
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
private connectionStatus;
|
|
30
|
-
private reauthing;
|
|
9
|
+
private reauthFunc?;
|
|
10
|
+
enabled: boolean;
|
|
11
|
+
connection?: Connection;
|
|
12
|
+
ws?: ReconnectingWebSocket;
|
|
13
|
+
retryCount: number;
|
|
14
|
+
events: EventEmitter;
|
|
15
|
+
token: string | null;
|
|
16
|
+
resourceToken: string | null;
|
|
31
17
|
pingOptions: {
|
|
32
18
|
interval: number;
|
|
33
19
|
timeout: number;
|
|
34
20
|
};
|
|
35
|
-
constructor(
|
|
21
|
+
constructor(url: string, reauthFunc?: ReauthFunc | undefined);
|
|
36
22
|
getBaseURL(): string;
|
|
37
23
|
getBase64BaseURL(): string;
|
|
38
|
-
|
|
39
|
-
getResourceToken(): string;
|
|
40
|
-
getAuthMessage(): AuthMessage;
|
|
41
|
-
verifyAuth(authMessage: AuthMessage): Promise<{
|
|
24
|
+
auth(auth: AuthMessage): Promise<{
|
|
42
25
|
read: string;
|
|
43
26
|
user: string;
|
|
44
27
|
}>;
|
|
45
28
|
logout(): Promise<void>;
|
|
46
|
-
init(): Promise<void>;
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
29
|
+
init(auth: AuthMessage): Promise<void>;
|
|
30
|
+
reConnect(token: string): Promise<void>;
|
|
31
|
+
_autoReAuth(): Promise<void>;
|
|
32
|
+
autoReAuth(): Promise<void>;
|
|
33
|
+
handleAuthError(): Promise<void>;
|
|
34
|
+
reAuth: () => Promise<void>;
|
|
51
35
|
private emitPermissionError;
|
|
36
|
+
private emitAuthRecover;
|
|
37
|
+
private emitAuthError;
|
|
52
38
|
private emitRequestReloadError;
|
|
53
39
|
private emitWriteConflictError;
|
|
54
40
|
private emitMaxUsersError;
|
|
55
|
-
|
|
41
|
+
handleMessage(message: object): void;
|
|
56
42
|
get(collectionName: string, documentID: string): Doc;
|
|
43
|
+
addEventListener(event: 'open' | 'close' | 'error', callback: (e: Event | Error) => void): void;
|
|
44
|
+
onAuthError(callback: (error: Error) => void): void;
|
|
45
|
+
onAuthRecover(callback: () => void): void;
|
|
46
|
+
onWriteConflictError(callback: (error: Error) => void): void;
|
|
47
|
+
onMaxUsersError(callback: () => void): void;
|
|
48
|
+
onRequestReloadError(callback: (error: Error) => void): void;
|
|
57
49
|
end(logout: boolean): void;
|
|
58
50
|
}
|
|
@@ -1,28 +1,31 @@
|
|
|
1
1
|
import { BuildResourceUrlOptions, DocVersion, OnesEditorDocVersionExtra } from '../../../../@ones-editor/core';
|
|
2
2
|
import { Doc } from 'sharedb/lib/client';
|
|
3
|
+
import { Event } from 'reconnecting-websocket';
|
|
3
4
|
import type { AxiosResponse } from 'axios';
|
|
4
5
|
import { AuthConnection } from './auth-connection';
|
|
5
|
-
import { EditorDoc,
|
|
6
|
+
import { EditorDoc, ReauthFunc, AuthMessage, OnProgress, EditorOp, LinkDetails } from '../types';
|
|
6
7
|
export default class ShareDBClient {
|
|
7
8
|
connection: AuthConnection;
|
|
9
|
+
auth: AuthMessage;
|
|
8
10
|
private doc;
|
|
9
11
|
private reauthFunc?;
|
|
10
|
-
|
|
11
|
-
constructor(auth: AuthMessage, serverUrl: string, reauthFunc?:
|
|
12
|
-
get clientId(): string;
|
|
13
|
-
token(): string;
|
|
14
|
-
resourceToken(): string;
|
|
15
|
-
authMessage(): AuthMessage;
|
|
16
|
-
docId(): string;
|
|
12
|
+
clientId: string;
|
|
13
|
+
constructor(auth: AuthMessage, serverUrl: string, reauthFunc?: ReauthFunc);
|
|
17
14
|
editorServer(): string;
|
|
18
15
|
close(logout: boolean): void;
|
|
16
|
+
on(event: 'open' | 'close' | 'error', callback: (event: Event | Error) => void): void;
|
|
17
|
+
onAuthError(callback: (error: Error) => void): void;
|
|
18
|
+
onAuthRecover(callback: () => void): void;
|
|
19
|
+
onWriteConflictError(callback: (error: Error) => void): void;
|
|
20
|
+
onMaxUsersError(callback: () => void): void;
|
|
21
|
+
onRequestReloadError(callback: (error: Error) => void): void;
|
|
19
22
|
/**
|
|
20
23
|
* 根据Id生成一个文档对象,如果文档不存在,则创建一个新的。
|
|
21
24
|
* @param id 待获取的containerId
|
|
22
25
|
*/
|
|
23
26
|
getDoc: () => Promise<Doc<any>>;
|
|
24
27
|
authOnly(): Promise<void>;
|
|
25
|
-
getResourceToken(): string;
|
|
28
|
+
getResourceToken(): string | null;
|
|
26
29
|
hasDocContainer(): boolean;
|
|
27
30
|
apiServer(): string;
|
|
28
31
|
getFileUrlByHash(uploadFileUrl: string, hash: string, name: string, size: number, headers: {
|
|
@@ -49,6 +52,7 @@ export default class ShareDBClient {
|
|
|
49
52
|
revertVersion(ver: number): Promise<void>;
|
|
50
53
|
createVersion(tag: string, publish: boolean): Promise<any>;
|
|
51
54
|
recognizeLink(url: string): Promise<LinkDetails>;
|
|
52
|
-
getResourceId
|
|
55
|
+
private getResourceId;
|
|
53
56
|
buildResourceUrl(resourceId: string, options?: BuildResourceUrlOptions): string;
|
|
57
|
+
reAuth(auto?: boolean): void;
|
|
54
58
|
}
|
|
@@ -4,9 +4,7 @@ import { LocalPresence } from 'sharedb/lib/sharedb';
|
|
|
4
4
|
import RemoteCaretsHandler from './remote-caret-handler';
|
|
5
5
|
import { EditorDoc, ShareDBDocCallbacks, ShareDBDocOptions } from '../types';
|
|
6
6
|
import ShareDBClient from './sharedb-client';
|
|
7
|
-
import { EditStatus } from './edit-status';
|
|
8
7
|
export default class ShareDBDoc extends EventCallbacks<ShareDBDocCallbacks> implements OnesEditorDoc, OnesEditorDocVersionHelper {
|
|
9
|
-
private options;
|
|
10
8
|
doc: Doc;
|
|
11
9
|
client: ShareDBClient;
|
|
12
10
|
localPresence?: LocalPresence;
|
|
@@ -15,8 +13,8 @@ export default class ShareDBDoc extends EventCallbacks<ShareDBDocCallbacks> impl
|
|
|
15
13
|
status: OnesEditorDocStatus;
|
|
16
14
|
disableLogout: boolean;
|
|
17
15
|
destroyed: boolean;
|
|
18
|
-
|
|
19
|
-
constructor(
|
|
16
|
+
options: ShareDBDocOptions | null;
|
|
17
|
+
constructor(client: ShareDBClient, doc: Doc, disableLogout?: boolean);
|
|
20
18
|
beginBatchUpdate(): number;
|
|
21
19
|
endBatchUpdate(): number;
|
|
22
20
|
static load(options: ShareDBDocOptions): Promise<ShareDBDoc>;
|
|
@@ -78,6 +76,7 @@ export default class ShareDBDoc extends EventCallbacks<ShareDBDocCallbacks> impl
|
|
|
78
76
|
onCreateComment(commentId: string, local: boolean): void;
|
|
79
77
|
onUpdateComment(commentId: string, local: boolean): void;
|
|
80
78
|
onCustomMessage(msg: unknown): void;
|
|
79
|
+
onAuthRecover(): void;
|
|
81
80
|
addResources(resourceIds: string[]): Promise<string[]>;
|
|
82
81
|
uploadResource(file: File, options?: UploadResourceOptions): Promise<UploadResourceResult>;
|
|
83
82
|
buildResourceUrl(resourceId: string, options?: BuildResourceUrlOptions): string;
|
|
@@ -109,4 +108,5 @@ export default class ShareDBDoc extends EventCallbacks<ShareDBDocCallbacks> impl
|
|
|
109
108
|
recognizeLink(url: string): Promise<import("../types").LinkDetails>;
|
|
110
109
|
parseHistoryData(historyData: OnesEditorDocHistoryData, handler: OnesEditorHistoryDataParseHandler): void;
|
|
111
110
|
getServerMeta(): OnesEditorDocServerMeta;
|
|
111
|
+
triggerReAuth(auto?: boolean): void;
|
|
112
112
|
}
|
|
@@ -1,11 +1,7 @@
|
|
|
1
1
|
import axios from 'axios';
|
|
2
2
|
import ShareDBDoc from './doc/sharedb-doc';
|
|
3
3
|
import { RemoteCarets, RemoteCaretsDecorator } from './remote-carets';
|
|
4
|
-
|
|
5
|
-
import ShareDBLocalDoc from './doc/sharedb-local-doc';
|
|
6
|
-
import type { ShareDBLocalDocOptions } from './doc/sharedb-local-doc';
|
|
7
|
-
export { ShareDBDoc, RemoteCarets, RemoteCaretsDecorator, ShareDBClientBase, ShareDBLocalDoc };
|
|
8
|
-
export type { ShareDBLocalDocOptions };
|
|
4
|
+
export { ShareDBDoc, RemoteCarets, RemoteCaretsDecorator };
|
|
9
5
|
export * from './doc/comments';
|
|
10
6
|
export * from './types';
|
|
11
7
|
export * from './versions';
|
|
@@ -62,29 +62,16 @@ export declare const FileExtError: {
|
|
|
62
62
|
};
|
|
63
63
|
export declare const AuthHeader = "x-live-editor-token";
|
|
64
64
|
export declare const BaseURLHeader = "x-live-editor-base-url";
|
|
65
|
-
export type
|
|
65
|
+
export type ReauthFunc = () => Promise<AuthMessage>;
|
|
66
66
|
export type OnProgress = (percentage: number) => void;
|
|
67
67
|
export interface ShareDBDocOptions {
|
|
68
68
|
auth: AuthMessage;
|
|
69
69
|
serverUrl: string;
|
|
70
|
+
reauthFunc?: ReauthFunc;
|
|
70
71
|
autoCreateDoc?: boolean;
|
|
71
72
|
templateData?: EditorDoc;
|
|
72
73
|
disableLogout?: boolean;
|
|
73
|
-
dirtyTimeout?: number;
|
|
74
74
|
onMaxUsersError?: () => void;
|
|
75
|
-
onDirtyTimeoutError?: () => void;
|
|
76
|
-
onClean?: () => void;
|
|
77
|
-
onRenewingToken?: (count: number) => void;
|
|
78
|
-
onRenewedToken?: (auth: AuthMessage) => void;
|
|
79
|
-
onRenewTokenError?: (error: Error) => void;
|
|
80
|
-
onReauthing?: () => void;
|
|
81
|
-
onReauthError?: (error: Error) => void;
|
|
82
|
-
onReauthRecovered?: (auth: AuthMessage) => void;
|
|
83
|
-
onUnknownError?: (error: Error) => void;
|
|
84
|
-
onDisconnected?: (reason: string) => void;
|
|
85
|
-
onConnectionError?: (error: Error) => void;
|
|
86
|
-
onUploadResourceError?: (error: Error) => void;
|
|
87
|
-
renewTokenFunc?: RenewTokenFunc;
|
|
88
75
|
buildResourceUrl?: (resourceId: string, options?: BuildResourceUrlOptions) => string;
|
|
89
76
|
uploadResource?: (file: File, options?: UploadResourceOptions) => Promise<UploadResourceResult>;
|
|
90
77
|
}
|
|
@@ -10,7 +10,7 @@ export default class ShareDBServer extends EventCallbacks<ShareDBDocCallbacks> i
|
|
|
10
10
|
buildResourceUrl(resourceId: string, options?: BuildResourceUrlOptions): string;
|
|
11
11
|
getRemoteUsers(): RemoteUsers;
|
|
12
12
|
getVersionHelper(): OnesEditorDocVersionHelper;
|
|
13
|
-
getVersions(
|
|
13
|
+
getVersions(): Promise<DocVersion[]>;
|
|
14
14
|
getVersion(ver: number): Promise<DocObject>;
|
|
15
15
|
getLatestVersion(): Promise<DocObject>;
|
|
16
16
|
getHistoryData(version: number, from?: number | undefined): Promise<{
|
|
@@ -11,7 +11,7 @@ export default class ShareDBSimpleClient {
|
|
|
11
11
|
getBaseURL(): string;
|
|
12
12
|
getBase64BaseURL(): string;
|
|
13
13
|
request<T = unknown>(url: string, opt?: any): Promise<AxiosResponse<any, T>>;
|
|
14
|
-
getVersions(
|
|
14
|
+
getVersions(): Promise<DocVersion[]>;
|
|
15
15
|
getVersion(ver: number): Promise<EditorDoc>;
|
|
16
16
|
getLatestVersion(): Promise<EditorDoc>;
|
|
17
17
|
getVersionOps(version: number, from?: number): Promise<{
|