@netless/appliance-plugin 1.1.36-beta.0 → 1.1.36-beta.1
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/READMA.zh-CN.md +36 -0
- package/README.md +6 -0
- package/cdn/cdn.js +1 -1
- package/cdn/{fullWorker-Cu37fr.js → fullWorker-uAwmRi.js} +110 -110
- package/cdn/{subWorker-le1nnC.js → subWorker-BVNpAC.js} +110 -110
- package/dist/appliance-plugin.js +1 -1
- package/dist/appliance-plugin.mjs +1 -1
- package/dist/assets/fullWorker-B_mvkoeW.js +593 -0
- package/dist/assets/subWorker-CRdsidWT.js +593 -0
- package/dist/{bridge-DskXXarZ.mjs → bridge-DYkH1J6p.mjs} +6 -6
- package/dist/{bridge-DO3A2FRh.js → bridge-enxPG6qf.js} +1 -1
- package/dist/bridge.js +1 -1
- package/dist/bridge.mjs +1 -1
- package/dist/collector/collector.d.ts +1 -0
- package/dist/collector/types.d.ts +5 -1
- package/dist/component/textEditor/manager.d.ts +9 -1
- package/dist/component/textEditor/types.d.ts +5 -0
- package/dist/component/textEditor/utils.d.ts +21 -0
- package/dist/component/textEditor/view.d.ts +0 -4
- package/dist/core/enum.d.ts +3 -1
- package/dist/core/mainEngine.d.ts +4 -1
- package/dist/core/msgEvent/copyNode/forMain.d.ts +3 -0
- package/dist/core/msgEvent/copyNode/utils.d.ts +9 -0
- package/dist/core/msgEvent/deleteNode/forMain.d.ts +1 -0
- package/dist/core/msgEvent/setColor/forMain.d.ts +2 -0
- package/dist/core/msgEvent/setFont/forMain.d.ts +1 -0
- package/dist/core/msgEvent/setLock/forMain.d.ts +1 -0
- package/dist/core/msgEvent/setShape/forMain.d.ts +1 -0
- package/dist/core/msgEvent/setZIndex/forMain.d.ts +2 -0
- package/dist/core/tools/pencil.d.ts +1 -0
- package/dist/core/tools/selector.d.ts +4 -0
- package/dist/core/types.d.ts +6 -0
- package/dist/core/worker/fullWorkerLocal.d.ts +4 -4
- package/dist/core/worker/simpleWorker.d.ts +2 -2
- package/dist/displayer/floatBar/dragBox/activateSelectorText.d.ts +13 -0
- package/dist/displayer/floatBar/dragBox/selectorSwitch.d.ts +19 -0
- package/dist/fullWorker.js +110 -110
- package/dist/index-2On9v0Ff.mjs +19693 -0
- package/dist/index-BSD0B_eV.js +1 -0
- package/dist/{index-BBcEMXkc.mjs → index-BZql6xgR.mjs} +1 -1
- package/dist/index-Bm90lQii.js +1 -0
- package/dist/{index-B4Npl8dw.mjs → index-BrJL-fin.mjs} +3253 -3069
- package/dist/{index-vfn-RVQz.js → index-CIjmeY9J.js} +1 -1
- package/dist/{index-CqQPnW7_.js → index-CcS9cKSp.js} +1 -1
- package/dist/index-D4z0hSjm.js +1 -0
- package/dist/{index-BVkfyJQn.mjs → index-D8SnD90W.mjs} +1 -1
- package/dist/index-DbI0V6BY.mjs +19719 -0
- package/dist/{index-DDULymwD.mjs → index-K9QVPOhV.mjs} +3253 -3069
- package/dist/index-W9Jz9E04.js +1 -0
- package/dist/plugin/baseApplianceManager.d.ts +7 -0
- package/dist/plugin/baseViewContainerManager.d.ts +23 -9
- package/dist/plugin/displayerView.d.ts +4 -1
- package/dist/plugin/elementCapability.d.ts +29 -0
- package/dist/plugin/multi/displayer/appViewDisplayerManager.d.ts +1 -0
- package/dist/plugin/multi/displayer/mainViewDisplayerManager.d.ts +1 -0
- package/dist/plugin/selectorApi.d.ts +135 -0
- package/dist/plugin/single/displayer/mainViewDisplayerManager.d.ts +1 -0
- package/dist/plugin/types.d.ts +334 -5
- package/dist/plugin/utils.d.ts +9 -0
- package/dist/style.css +1 -1
- package/dist/subWorker.js +110 -110
- package/dist/undo/index.d.ts +45 -4
- package/dist/undo/timing.d.ts +50 -0
- package/package.json +12 -1
- package/dist/assets/fullWorker-C_pHxd3d.js +0 -593
- package/dist/assets/subWorker-mLNCeIEX.js +0 -593
- package/dist/bridge-white-web-sdk.d.ts +0 -1
- package/dist/index-B00mKJ2E.js +0 -1
- package/dist/index-BAT55jp1.mjs +0 -16599
- package/dist/index-D50QxS0c.js +0 -1
- package/dist/index-DTMQbvIh.mjs +0 -16625
- package/dist/index-DlkXPynh.js +0 -1
- package/dist/index-DoKk1ccL.js +0 -1
|
@@ -12,7 +12,7 @@ function u() {
|
|
|
12
12
|
);
|
|
13
13
|
return r;
|
|
14
14
|
}
|
|
15
|
-
const h = "/assets/fullWorker-
|
|
15
|
+
const h = "/assets/fullWorker-B_mvkoeW.js", d = "/assets/subWorker-CRdsidWT.js";
|
|
16
16
|
class g {
|
|
17
17
|
constructor() {
|
|
18
18
|
i(this, "control");
|
|
@@ -31,7 +31,7 @@ class g {
|
|
|
31
31
|
delete this._listeners[e];
|
|
32
32
|
}
|
|
33
33
|
}
|
|
34
|
-
class
|
|
34
|
+
class k {
|
|
35
35
|
constructor(e) {
|
|
36
36
|
i(this, "control");
|
|
37
37
|
i(this, "worker");
|
|
@@ -54,14 +54,14 @@ class b {
|
|
|
54
54
|
});
|
|
55
55
|
}
|
|
56
56
|
}
|
|
57
|
-
async function
|
|
58
|
-
return c(s), import("./index-
|
|
57
|
+
async function b(s) {
|
|
58
|
+
return c(s), import("./index-2On9v0Ff.mjs").then((e) => e.a7);
|
|
59
59
|
}
|
|
60
60
|
export {
|
|
61
|
-
|
|
61
|
+
k as P,
|
|
62
62
|
g as a,
|
|
63
63
|
h as f,
|
|
64
64
|
u as g,
|
|
65
|
-
|
|
65
|
+
b as l,
|
|
66
66
|
d as s
|
|
67
67
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var o=Object.defineProperty;var l=(i,e,t)=>e in i?o(i,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):i[e]=t;var s=(i,e,t)=>l(i,typeof e!="symbol"?e+"":e,t);let n;function u(i){n=i}function c(){if(!n)throw new Error("[@netless/appliance-plugin/bridge] white-web-sdk runtime has not been bound yet.");return n}const a="/assets/fullWorker-
|
|
1
|
+
"use strict";var o=Object.defineProperty;var l=(i,e,t)=>e in i?o(i,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):i[e]=t;var s=(i,e,t)=>l(i,typeof e!="symbol"?e+"":e,t);let n;function u(i){n=i}function c(){if(!n)throw new Error("[@netless/appliance-plugin/bridge] white-web-sdk runtime has not been bound yet.");return n}const a="/assets/fullWorker-B_mvkoeW.js",h="/assets/subWorker-CRdsidWT.js";class d{constructor(){s(this,"control");s(this,"_listeners",{})}_inject(e){this.control=e}_onEvent(e,t){this._listeners[e]&&this._listeners[e](...t)}callbacks(e,t){this._listeners[e]=t}removeCallback(e){delete this._listeners[e]}}class g{constructor(e){s(this,"control");s(this,"worker");s(this,"publicMsgEmitter");s(this,"plugins",new Map);const{control:t,publicMsgEmitter:r}=e;this.control=t,this.publicMsgEmitter=r,this.worker=t.worker}use(e){this.plugins.set(e.kind,e),e._inject(this.control),e.onCreate()}destroy(){this.plugins.forEach(e=>{this.plugins.delete(e.kind),e.onDestroy()})}dispatchPluginEvent(e,...t){this.plugins.forEach(r=>{r._onEvent(e,t)})}}async function k(i){return u(i),Promise.resolve().then(()=>require("./index-BSD0B_eV.js")).then(e=>e.index)}exports.Plugin=d;exports.PluginManager=g;exports.fullWorker=a;exports.getWhiteWebSdkBridgeRuntime=c;exports.loadAppliancePluginBridge=k;exports.subWorker=h;
|
package/dist/bridge.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("./bridge-
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("./bridge-enxPG6qf.js");exports.Plugin=r.Plugin;exports.fullWorkerUrl=r.fullWorker;exports.loadAppliancePluginBridge=r.loadAppliancePluginBridge;exports.subWorkerUrl=r.subWorker;
|
package/dist/bridge.mjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { EPostMessageType, EToolsKey, EventMessageType } from "../core/enum";
|
|
1
|
+
import type { EPostMessageType, EToolsKey, EventMessageType, EventWorkState } from "../core/enum";
|
|
2
2
|
import type { ShapeOptions } from "../core/tools";
|
|
3
3
|
import type { IUpdateNodeOpt, IworkId } from "../core/types";
|
|
4
4
|
import type { _ObjectTrue, EmitEventType } from "../plugin/types";
|
|
@@ -55,6 +55,10 @@ export interface INormalPushMsg {
|
|
|
55
55
|
scenePath?: string;
|
|
56
56
|
isActive?: string;
|
|
57
57
|
needUndoTicker?: number;
|
|
58
|
+
collectUndoTicker?: number;
|
|
59
|
+
requestId?: string;
|
|
60
|
+
/** selector 事件专用:当前选中操作的生命周期 */
|
|
61
|
+
workState?: EventWorkState;
|
|
58
62
|
}
|
|
59
63
|
export interface INormalStorageData {
|
|
60
64
|
[key: string]: IStorageValueItem | undefined;
|
|
@@ -41,6 +41,7 @@ export interface TextEditorManager {
|
|
|
41
41
|
viewId: string;
|
|
42
42
|
canWorker: boolean;
|
|
43
43
|
canSync: boolean;
|
|
44
|
+
needUndoTicker?: number;
|
|
44
45
|
}, undoTickerId?: number): void;
|
|
45
46
|
/** 修改文本来并等到新数据 */
|
|
46
47
|
updateTextControllerWithEffectAsync(params: Partial<TextEditorInfo> & {
|
|
@@ -48,6 +49,7 @@ export interface TextEditorManager {
|
|
|
48
49
|
viewId: string;
|
|
49
50
|
canWorker: boolean;
|
|
50
51
|
canSync: boolean;
|
|
52
|
+
needUndoTicker?: number;
|
|
51
53
|
}, undoTickerId?: number): Promise<TextEditorInfo>;
|
|
52
54
|
/** 修改文本来源于worker */
|
|
53
55
|
updateTextForWorker(params: Partial<TextEditorInfo> & {
|
|
@@ -88,7 +90,11 @@ export declare class TextEditorManagerImpl implements TextEditorManager {
|
|
|
88
90
|
private undoTickerId?;
|
|
89
91
|
constructor(props: BaseSubWorkModuleProps);
|
|
90
92
|
get collector(): import("../../collector").Collector | undefined;
|
|
91
|
-
|
|
93
|
+
private logTextUndo;
|
|
94
|
+
set UndoTickerId(value: number | undefined);
|
|
95
|
+
get UndoTickerId(): number | undefined;
|
|
96
|
+
private getDoneUndoTicker;
|
|
97
|
+
private ackDoneRender;
|
|
92
98
|
filterEditor(viewId: string): Map<string, TextEditorInfo>;
|
|
93
99
|
get interceptors(): {
|
|
94
100
|
set: (workId: string, info: TextEditorInfo) => true | undefined;
|
|
@@ -113,12 +119,14 @@ export declare class TextEditorManagerImpl implements TextEditorManager {
|
|
|
113
119
|
viewId: string;
|
|
114
120
|
canWorker: boolean;
|
|
115
121
|
canSync: boolean;
|
|
122
|
+
needUndoTicker?: number;
|
|
116
123
|
}, undoTickerId?: number): void;
|
|
117
124
|
updateTextControllerWithEffectAsync(params: Partial<TextEditorInfo> & {
|
|
118
125
|
workId: string;
|
|
119
126
|
viewId: string;
|
|
120
127
|
canWorker: boolean;
|
|
121
128
|
canSync: boolean;
|
|
129
|
+
needUndoTicker?: number;
|
|
122
130
|
}, undoTickerId?: number): Promise<TextEditorInfo>;
|
|
123
131
|
updateTextForWorker(params: TextEditorInfo & {
|
|
124
132
|
workId: string;
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { EDataType, EventWorkState, IUpdateNodeOpt } from "../../core";
|
|
2
2
|
import { BaseShapeOptions } from "../../core/tools";
|
|
3
|
+
import type { EmitEventType } from "../../plugin/types";
|
|
3
4
|
export declare enum ETextEditorType {
|
|
4
5
|
Text = 1,
|
|
5
6
|
Shape = 2
|
|
@@ -48,4 +49,8 @@ export type TextEditorInfo = {
|
|
|
48
49
|
translate?: [number, number];
|
|
49
50
|
justLocal?: boolean;
|
|
50
51
|
updateNodeOpt?: IUpdateNodeOpt;
|
|
52
|
+
requestId?: string;
|
|
53
|
+
emitEventType?: EmitEventType;
|
|
54
|
+
skipStorageDispatch?: boolean;
|
|
55
|
+
undoTickerId?: number;
|
|
51
56
|
};
|
|
@@ -5,3 +5,24 @@ export declare function escapeCSS(id: string): string;
|
|
|
5
5
|
export declare function ensureTextEditorCursorTarget(currentDiv: HTMLDivElement): Text | ChildNode;
|
|
6
6
|
export declare function setTextEditorSelectionToEnd(sel: Selection, currentDiv: HTMLDivElement): void;
|
|
7
7
|
export declare function hasSelectionInTextEditor(selection: Selection | null | undefined, currentDiv: HTMLDivElement): boolean;
|
|
8
|
+
export declare function normalizeTextEditorRootLines(currentDiv: HTMLDivElement): {
|
|
9
|
+
changed: boolean;
|
|
10
|
+
lastLine: HTMLDivElement | null;
|
|
11
|
+
};
|
|
12
|
+
export declare function getTextEditorLineTextData(line: HTMLElement): {
|
|
13
|
+
textContent: string;
|
|
14
|
+
textNodes: Text[];
|
|
15
|
+
};
|
|
16
|
+
export declare function getTextEditorRootTextLines(currentDiv: HTMLDivElement): string[];
|
|
17
|
+
export declare function getSerializableTextEditorContent(currentDiv: HTMLDivElement): string;
|
|
18
|
+
export declare function resolveTextEditorTextOffset(textNodes: Text[], logicalOffset: number): {
|
|
19
|
+
node: Text;
|
|
20
|
+
offset: number;
|
|
21
|
+
} | undefined;
|
|
22
|
+
export declare function shouldPreserveExistingSelection(params: {
|
|
23
|
+
hasPoint: boolean;
|
|
24
|
+
previousByPoint: boolean;
|
|
25
|
+
hasSelectionInEditor: boolean;
|
|
26
|
+
rangeCount: number;
|
|
27
|
+
isCollapsed: boolean;
|
|
28
|
+
}): boolean;
|
|
@@ -16,8 +16,6 @@ export interface TextManagerProps {
|
|
|
16
16
|
rightBoundBreak?: boolean;
|
|
17
17
|
}
|
|
18
18
|
export interface TextSelectorManagerProps extends TextManagerProps {
|
|
19
|
-
handleTextEditorPointerDown: (workId: string) => void;
|
|
20
|
-
handleTextEditorPointerUp: () => void;
|
|
21
19
|
}
|
|
22
20
|
export interface TextViewProps {
|
|
23
21
|
workId: string;
|
|
@@ -29,8 +27,6 @@ export interface TextSelectorViewProps extends TextViewProps {
|
|
|
29
27
|
update: Partial<TextOptions>;
|
|
30
28
|
syncData?: Pick<TextEditorInfo, "canSync" | "canWorker">;
|
|
31
29
|
}) => void;
|
|
32
|
-
handlePointerDown: (workId: string) => void;
|
|
33
|
-
handlePointerUp: () => void;
|
|
34
30
|
}
|
|
35
31
|
export interface TextEditorProps extends TextViewProps {
|
|
36
32
|
showFloatBtns: boolean;
|
package/dist/core/enum.d.ts
CHANGED
|
@@ -132,7 +132,9 @@ export declare enum EPostMessageType {
|
|
|
132
132
|
/** 更新 background svg */
|
|
133
133
|
BackgroundSVGUpdate = 33,
|
|
134
134
|
/** delete background svg */
|
|
135
|
-
BackgroundSVGDelete = 34
|
|
135
|
+
BackgroundSVGDelete = 34,
|
|
136
|
+
/** 选择框过渡动画 */
|
|
137
|
+
SelectorTransform = 35
|
|
136
138
|
}
|
|
137
139
|
export type ECanvasContextType = "webgl2" | "webgl" | "2d";
|
|
138
140
|
export declare enum ECanvasShowType {
|
|
@@ -29,6 +29,7 @@ export declare abstract class MasterController {
|
|
|
29
29
|
rawPoints: number[];
|
|
30
30
|
isFullWork: boolean;
|
|
31
31
|
viewId: string;
|
|
32
|
+
undoTickerId?: number;
|
|
32
33
|
}>;
|
|
33
34
|
/** 事件任务处理批量池 */
|
|
34
35
|
abstract taskBatchData: Set<IWorkerMessage>;
|
|
@@ -139,6 +140,7 @@ export declare class MasterControlForWorker extends MasterController {
|
|
|
139
140
|
isFullWork: boolean;
|
|
140
141
|
viewId: string;
|
|
141
142
|
opt?: BaseShapeOptions;
|
|
143
|
+
undoTickerId?: number;
|
|
142
144
|
}>;
|
|
143
145
|
/** end */
|
|
144
146
|
/** 是否任务队列化参数 */
|
|
@@ -199,6 +201,7 @@ export declare class MasterControlForWorker extends MasterController {
|
|
|
199
201
|
}>;
|
|
200
202
|
loadFontInMainThread(url: string): Promise<ArrayBuffer | undefined>;
|
|
201
203
|
private validateFontData;
|
|
204
|
+
private buildPropertyAppliedData;
|
|
202
205
|
clearReRenders(num?: number): void;
|
|
203
206
|
get isBusy(): boolean;
|
|
204
207
|
getLockSentEventCursor(): boolean;
|
|
@@ -212,7 +215,6 @@ export declare class MasterControlForWorker extends MasterController {
|
|
|
212
215
|
getConsumeCount(): number;
|
|
213
216
|
setWorkerTasksqueueCount(num: number): void;
|
|
214
217
|
collectorSyncData(sp: IMainMessage[]): void;
|
|
215
|
-
foceUndoTickerEnd(id: number, viewId: string): void;
|
|
216
218
|
private collectorAsyncData;
|
|
217
219
|
private onLocalEventEnd;
|
|
218
220
|
private onLocalEventDoing;
|
|
@@ -229,6 +231,7 @@ export declare class MasterControlForWorker extends MasterController {
|
|
|
229
231
|
isFullWork: boolean;
|
|
230
232
|
viewId: string;
|
|
231
233
|
opt?: BaseShapeOptions;
|
|
234
|
+
undoTickerId?: number;
|
|
232
235
|
}>;
|
|
233
236
|
private shouldUseAutoShape;
|
|
234
237
|
private toAutoShapePoints;
|
|
@@ -6,6 +6,7 @@ import { BaseCollectorReducerAction } from "../../../collector/types";
|
|
|
6
6
|
export type CopyNodeEmtData = {
|
|
7
7
|
workIds: IworkId[];
|
|
8
8
|
viewId: string;
|
|
9
|
+
requestId?: string;
|
|
9
10
|
};
|
|
10
11
|
export declare class CopyNodeMethod extends BaseMsgMethod {
|
|
11
12
|
protected lastEmtData?: unknown;
|
|
@@ -26,6 +27,7 @@ export declare class CopyNodeMethod extends BaseMsgMethod {
|
|
|
26
27
|
bgCenter?: [number, number];
|
|
27
28
|
textCenter?: [number, number];
|
|
28
29
|
undoTickerId?: number;
|
|
30
|
+
requestId?: string;
|
|
29
31
|
}): void;
|
|
30
32
|
copySelector(param: {
|
|
31
33
|
viewId: string;
|
|
@@ -46,5 +48,6 @@ export declare class CopyNodeMethod extends BaseMsgMethod {
|
|
|
46
48
|
cameraOpt: Pick<ICameraOpt, "centerX" | "centerY" | "scale">;
|
|
47
49
|
};
|
|
48
50
|
undoTickerId?: number;
|
|
51
|
+
requestId?: string;
|
|
49
52
|
}): void;
|
|
50
53
|
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export type CopyNodeKeyCollector = {
|
|
2
|
+
isLocalId(id: string): boolean;
|
|
3
|
+
getLocalId(id: string): string | undefined;
|
|
4
|
+
};
|
|
5
|
+
export declare function buildCopyNodeKey(sourceKey: string, undoTickerId: number | undefined, collector: CopyNodeKeyCollector): string;
|
|
6
|
+
export declare function buildCopyNodeKeyMap(sourceKeys: Iterable<string>, undoTickerId: number | undefined, collector: CopyNodeKeyCollector): {
|
|
7
|
+
copyNodeKeyBySourceKey: Map<string, string>;
|
|
8
|
+
expectedWorkIds: string[];
|
|
9
|
+
};
|
|
@@ -12,11 +12,13 @@ export type SetColorNodeEmtData = {
|
|
|
12
12
|
strokeType?: EStrokeType;
|
|
13
13
|
workState: EventWorkState;
|
|
14
14
|
viewId: string;
|
|
15
|
+
requestId?: string;
|
|
15
16
|
};
|
|
16
17
|
export declare class SetColorNodeMethod extends BaseMsgMethod {
|
|
17
18
|
protected lastEmtData?: unknown;
|
|
18
19
|
readonly emitEventType: EmitEventType;
|
|
19
20
|
private undoTickerId?;
|
|
21
|
+
private ensureUndoTicker;
|
|
20
22
|
private setTextColor;
|
|
21
23
|
collect(data: SetColorNodeEmtData): void;
|
|
22
24
|
}
|
|
@@ -26,6 +26,7 @@ export declare class PencilShape extends BaseShapeTool {
|
|
|
26
26
|
protected workOptions: PencilOptions;
|
|
27
27
|
private centerPos;
|
|
28
28
|
constructor(props: BaseShapeToolProps);
|
|
29
|
+
private setPointVector;
|
|
29
30
|
/** 批量合并消费本地数据,返回绘制结果 */
|
|
30
31
|
combineConsume(): IMainMessage | undefined;
|
|
31
32
|
setWorkOptions(workOptions: PencilOptions): void;
|
|
@@ -82,7 +82,11 @@ export declare class SelectorShape extends BaseShapeTool {
|
|
|
82
82
|
useStroke: boolean | undefined;
|
|
83
83
|
strokeType: EStrokeType | undefined;
|
|
84
84
|
} | {
|
|
85
|
+
workId: string;
|
|
86
|
+
toolsType: EToolsKey;
|
|
87
|
+
opt: import("./utils").ShapeOptions;
|
|
85
88
|
type: EPostMessageType;
|
|
89
|
+
dataType: EDataType;
|
|
86
90
|
};
|
|
87
91
|
consumeService(): undefined;
|
|
88
92
|
private updateTempPointsForSubWorker;
|
package/dist/core/types.d.ts
CHANGED
|
@@ -214,6 +214,9 @@ export interface IMainMessage extends INormalPushMsg {
|
|
|
214
214
|
nextTasks?: IMainMessage[];
|
|
215
215
|
setFontFaceResult?: boolean;
|
|
216
216
|
needUndoTicker?: number;
|
|
217
|
+
collectUndoTicker?: number;
|
|
218
|
+
undoScopeIds?: string[];
|
|
219
|
+
undoScopePhase?: "collect" | "finalize";
|
|
217
220
|
clearPreviewLocalWork?: boolean;
|
|
218
221
|
autoShapeResult?: AutoShapeResult;
|
|
219
222
|
[key: string]: any;
|
|
@@ -262,12 +265,14 @@ export interface IUpdateSelectorPropsType {
|
|
|
262
265
|
willSyncService?: boolean;
|
|
263
266
|
willSerializeData?: boolean;
|
|
264
267
|
emitEventType?: EmitEventType;
|
|
268
|
+
requestId?: string;
|
|
265
269
|
isSync?: boolean;
|
|
266
270
|
textUpdateForWoker?: boolean;
|
|
267
271
|
/** 平滑同步 */
|
|
268
272
|
smoothSync?: boolean;
|
|
269
273
|
/** 记录撤销重做id */
|
|
270
274
|
needUndoTicker?: number;
|
|
275
|
+
collectUndoTicker?: number;
|
|
271
276
|
}
|
|
272
277
|
export interface IUpdateSelectorCallbackPropsType {
|
|
273
278
|
res?: IMainMessage;
|
|
@@ -293,6 +298,7 @@ export interface IActiveWorkDataType {
|
|
|
293
298
|
toolsOpt?: ShapeOptions;
|
|
294
299
|
viewId?: string;
|
|
295
300
|
workId?: IworkId;
|
|
301
|
+
undoTickerId?: number;
|
|
296
302
|
}
|
|
297
303
|
export type IServiceWorkItem = {
|
|
298
304
|
toolsType: EToolsKey;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { IWorkerMessage, IMainMessage, IRectType, EToolsKey, IBatchMainMessage, IUpdateSelectorPropsType } from "..";
|
|
1
|
+
import { IWorkerMessage, IMainMessage, IRectType, EToolsKey, IBatchMainMessage, EventWorkState, IUpdateSelectorPropsType } from "..";
|
|
2
2
|
import { BaseShapeOptions, SelectorShape } from "../tools";
|
|
3
3
|
import { ISubWorkerInitOption, LocalWork } from "./base";
|
|
4
4
|
import { ServiceWorkForFullWorker } from "./fullWorkerService";
|
|
@@ -50,12 +50,12 @@ export declare class LocalWorkForFullWorker extends LocalWork {
|
|
|
50
50
|
reRenderSelector(willSyncService?: boolean): Promise<void>;
|
|
51
51
|
updateFullSelectWork(data: IWorkerMessage): Promise<void>;
|
|
52
52
|
destroy(): void;
|
|
53
|
-
protected drawEraserCombine(workId: string, drawCount: number): Promise<void>;
|
|
53
|
+
protected drawEraserCombine(workId: string, drawCount: number, needUndoTicker?: number, collectUndoTicker?: number): Promise<void>;
|
|
54
54
|
protected drawPencilCombine(workId: string, drawCount: number): Promise<void>;
|
|
55
|
-
protected drawSelector(res: IMainMessage, isLockSentEventCursor?: boolean): Promise<void>;
|
|
55
|
+
protected drawSelector(res: IMainMessage, workState: EventWorkState, isLockSentEventCursor?: boolean): Promise<void>;
|
|
56
56
|
protected drawPencilFull(res: IMainMessage, isLockSentEventCursor?: boolean, needUndoTicker?: number): Promise<void>;
|
|
57
57
|
protected drawEraserFull(workShapeNode: BitMapEraserShape | PencilEraserShape, res: IMainMessage, isLockSentEventCursor?: boolean, needUndoTicker?: number): Promise<void>;
|
|
58
|
-
protected drawEraser(result: IMainMessage, isLockSentEventCursor?: boolean, needUndoTicker?: number): Promise<void>;
|
|
58
|
+
protected drawEraser(result: IMainMessage, isLockSentEventCursor?: boolean, needUndoTicker?: number, collectUndoTicker?: number): Promise<void>;
|
|
59
59
|
protected drawShape(res: IMainMessage): Promise<void>;
|
|
60
60
|
protected drawPencil(res: IMainMessage): Promise<void>;
|
|
61
61
|
protected runEffectSelectWork(willSyncService?: boolean): Promise<void>;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { IActiveToolsDataType, IMainMessage, IMainMessageRenderData, IWorkerMessage } from "../index";
|
|
1
|
+
import { EventWorkState, IActiveToolsDataType, IMainMessage, IMainMessageRenderData, IWorkerMessage } from "../index";
|
|
2
2
|
import { ISubWorkerInitOption } from "./base";
|
|
3
3
|
import { LocalWorkForFullWorker } from "./fullWorkerLocal";
|
|
4
4
|
import { ServiceWorkForFullWorker } from "./fullWorkerService";
|
|
@@ -15,7 +15,7 @@ export declare class LocalWorkForSimpleWorker extends LocalWorkForFullWorker {
|
|
|
15
15
|
}): ArrowShape | import("../tools").PencilShape | import("../tools/straight").StraightShape | import("../tools").EllipseShape | import("../tools").PolygonShape | import("../tools").StarShape | import("../tools").RectangleShape | import("../tools").SpeechBalloonShape | TextShape | import("../tools").LaserPenShape | import("../tools").EraserShape | PencilEraserShape | BitMapEraserShape | SelectorShape | ImageShape | ISvgShadowShape | undefined;
|
|
16
16
|
protected drawPencil(res: IMainMessage, workId?: string): Promise<void>;
|
|
17
17
|
protected drawShape(res: IMainMessage): Promise<void>;
|
|
18
|
-
protected drawSelector(res: IMainMessage, isLockSentEventCursor?: boolean, render?: IMainMessageRenderData[]): Promise<void>;
|
|
18
|
+
protected drawSelector(res: IMainMessage, workState: EventWorkState, isLockSentEventCursor?: boolean, render?: IMainMessageRenderData[]): Promise<void>;
|
|
19
19
|
protected drawEraserCombine(workId: string): Promise<void>;
|
|
20
20
|
consumeDraw(data: IWorkerMessage, serviceWork: ServiceWorkForFullWorker): Promise<void>;
|
|
21
21
|
consumeDrawAll(data: IWorkerMessage, serviceWork: ServiceWorkForFullWorker): Promise<void>;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
type SelectorTextActivationManagerLike = {
|
|
2
|
+
viewId: string;
|
|
3
|
+
control: {
|
|
4
|
+
worker: {
|
|
5
|
+
now: number;
|
|
6
|
+
};
|
|
7
|
+
textEditorManager: {
|
|
8
|
+
active: (workId: string, undoTickerId?: number) => void;
|
|
9
|
+
};
|
|
10
|
+
};
|
|
11
|
+
};
|
|
12
|
+
export declare function activateSelectorTextEditor(mananger: SelectorTextActivationManagerLike, workId: string): number;
|
|
13
|
+
export {};
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
type SelectorSwitchManagerLike = {
|
|
2
|
+
viewId: string;
|
|
3
|
+
control: {
|
|
4
|
+
internalMsgEmitter: {
|
|
5
|
+
emit: (event: string, undoTickerId: number, viewId: string, scenePath: string) => void;
|
|
6
|
+
};
|
|
7
|
+
worker: {
|
|
8
|
+
abled: () => void;
|
|
9
|
+
};
|
|
10
|
+
viewContainerManager: {
|
|
11
|
+
getView: (viewId: string) => {
|
|
12
|
+
focusScenePath?: string;
|
|
13
|
+
} | undefined;
|
|
14
|
+
getUndoTickerId: (viewId: string) => number | undefined;
|
|
15
|
+
};
|
|
16
|
+
};
|
|
17
|
+
};
|
|
18
|
+
export declare function cancelSelectorTranslateUndo(mananger?: SelectorSwitchManagerLike): void;
|
|
19
|
+
export {};
|