@ones-editor/editor 5.0.6-beta.DNP8216.2 → 5.0.6-beta.DNP8216.3
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/core/src/core/types.d.ts +10 -3
- package/@ones-editor/core/src/core/undo-manager/actions/async-action.d.ts +10 -0
- package/@ones-editor/core/src/core/undo-manager/actions/macro-edit-action.d.ts +3 -9
- package/@ones-editor/core/src/core/undo-manager/undo-manager.d.ts +7 -1
- package/@ones-editor/core/src/core/undo-manager/undo-manager.test.d.ts +1 -0
- package/@ones-editor/server-tools/src/to-markdown/embeds/wiki-macro.d.ts +4 -0
- package/@ones-editor/server-tools/src/to-markdown/embeds/wiki-macro.test.d.ts +1 -0
- package/@ones-editor/tsconfig.tsbuildinfo +1 -1
- package/dist/index.js +555 -509
- package/package.json +1 -1
|
@@ -359,16 +359,23 @@ export interface OnesEditorUndoAction {
|
|
|
359
359
|
getTimeStamp: () => number;
|
|
360
360
|
getBatchActionId?: () => string | undefined;
|
|
361
361
|
}
|
|
362
|
-
export interface
|
|
363
|
-
actionId: string;
|
|
364
|
-
blockId: string;
|
|
362
|
+
export interface AsyncUndoActionOptions {
|
|
365
363
|
undo: () => Promise<void>;
|
|
366
364
|
redo: () => Promise<void>;
|
|
367
365
|
onError?: (error: Error) => void;
|
|
366
|
+
onDiscard?: () => void;
|
|
367
|
+
}
|
|
368
|
+
export interface MacroEditActionOptions extends AsyncUndoActionOptions {
|
|
369
|
+
actionId: string;
|
|
370
|
+
blockId: string;
|
|
368
371
|
}
|
|
369
372
|
export interface OnesEditorUndoManager {
|
|
370
373
|
reset: () => void;
|
|
371
374
|
addAction: (action: OnesEditorUndoAction) => void;
|
|
375
|
+
addAsyncAction: (operation: AsyncUndoActionOptions) => void;
|
|
376
|
+
acquireUndoLock: () => () => void;
|
|
377
|
+
undoAsync: () => Promise<boolean>;
|
|
378
|
+
redoAsync: () => Promise<boolean>;
|
|
372
379
|
registerMacroEditAction: (options: MacroEditActionOptions) => void;
|
|
373
380
|
setMacroEditSessionActive: (sessionId: string, active: boolean) => void;
|
|
374
381
|
destroy: () => void;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { AsyncUndoActionOptions, OnesEditor } from '../../types';
|
|
2
|
+
import Action from './action';
|
|
3
|
+
/** A confirmed asynchronous operation with an independent history boundary. */
|
|
4
|
+
export default class AsyncAction extends Action {
|
|
5
|
+
private operation;
|
|
6
|
+
constructor(editor: OnesEditor, operation: AsyncUndoActionOptions);
|
|
7
|
+
apply(direction: 'undo' | 'redo'): Promise<void>;
|
|
8
|
+
reportError(error: Error): void;
|
|
9
|
+
dispose(): void;
|
|
10
|
+
}
|
|
@@ -1,10 +1,4 @@
|
|
|
1
|
-
import
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
export default class MacroEditAction extends Action {
|
|
5
|
-
private options;
|
|
6
|
-
constructor(editor: OnesEditor, options: MacroEditActionOptions);
|
|
7
|
-
apply(direction: 'undo' | 'redo'): Promise<void>;
|
|
8
|
-
reportError(error: Error): void;
|
|
9
|
-
dispose(): void;
|
|
1
|
+
import AsyncAction from './async-action';
|
|
2
|
+
/** Compatibility class for the macro-specific registration API. */
|
|
3
|
+
export default class MacroEditAction extends AsyncAction {
|
|
10
4
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { DocBlock, DocBlockText, OnesEditorDocRange } from '../doc';
|
|
2
2
|
import { EditorDocLocalActionCallbacks, OnesEditor, OnesEditorUndoAction, OnesEditorUndoManager } from '../types';
|
|
3
|
-
import { MacroEditActionOptions } from '../types';
|
|
3
|
+
import type { AsyncUndoActionOptions, MacroEditActionOptions } from '../types';
|
|
4
4
|
import Action from './actions/action';
|
|
5
5
|
declare class UndoManager implements OnesEditorUndoManager, EditorDocLocalActionCallbacks {
|
|
6
6
|
editor: OnesEditor;
|
|
@@ -12,9 +12,15 @@ declare class UndoManager implements OnesEditorUndoManager, EditorDocLocalAction
|
|
|
12
12
|
private macroSessions;
|
|
13
13
|
private macroActionIds;
|
|
14
14
|
private pendingMacroAction;
|
|
15
|
+
private pendingAsyncPromise;
|
|
16
|
+
private undoLocks;
|
|
15
17
|
private macroGeneration;
|
|
16
18
|
private destroyed;
|
|
17
19
|
registerMacroEditAction(options: MacroEditActionOptions): void;
|
|
20
|
+
addAsyncAction(operation: AsyncUndoActionOptions): void;
|
|
21
|
+
acquireUndoLock(): () => void;
|
|
22
|
+
undoAsync(): Promise<boolean>;
|
|
23
|
+
redoAsync(): Promise<boolean>;
|
|
18
24
|
setMacroEditSessionActive(sessionId: string, active: boolean): void;
|
|
19
25
|
destroy(): void;
|
|
20
26
|
private applyMacroAction;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { DocEmbedBlock, DocObject } from '../../../../../@ones-editor/core';
|
|
2
|
+
import type { Converters } from '../types';
|
|
3
|
+
/** Convert only the saved v2 snapshot; images use the Wiki resource placeholder. */
|
|
4
|
+
export default function macroToMarkdown(converters: Converters, block: DocEmbedBlock, doc: DocObject): string;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|