@netless/appliance-plugin 1.0.0-beta.0 → 1.0.0-beta.11

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.
Files changed (108) hide show
  1. package/README.md +54 -15
  2. package/cdn/cdn.js +1 -0
  3. package/cdn/fullWorker-BPqPUZ.js +467 -0
  4. package/cdn/subWorker-BQgE8H.js +467 -0
  5. package/dist/appliance-plugin.js +1 -1
  6. package/dist/appliance-plugin.mjs +22 -8637
  7. package/dist/cdn.d.ts +3 -0
  8. package/dist/collector/types.d.ts +0 -1
  9. package/dist/component/textEditor/manager.d.ts +2 -5
  10. package/dist/component/textEditor/types.d.ts +1 -0
  11. package/dist/component/textEditor/view.d.ts +9 -7
  12. package/dist/core/enum.d.ts +16 -10
  13. package/dist/core/mainEngine.d.ts +40 -15
  14. package/dist/core/mainThread/base.d.ts +81 -0
  15. package/dist/core/mainThread/index.d.ts +23 -0
  16. package/dist/core/mainThread/snapshotThread.d.ts +39 -0
  17. package/dist/core/mainThread/subLocalThread.d.ts +106 -0
  18. package/dist/core/mainThread/subServiceThread.d.ts +42 -0
  19. package/dist/core/mainThread/subTopThread.d.ts +46 -0
  20. package/dist/core/mainThread/vNodeManager.d.ts +33 -0
  21. package/dist/core/msgEvent/base.d.ts +6 -2
  22. package/dist/core/msgEvent/baseForMainThread.d.ts +13 -0
  23. package/dist/core/msgEvent/copyNode/forMain.d.ts +3 -0
  24. package/dist/core/msgEvent/copyNode/forMainThread.d.ts +8 -0
  25. package/dist/core/msgEvent/deleteNode/forMain.d.ts +1 -0
  26. package/dist/core/msgEvent/deleteNode/forMainThread.d.ts +10 -0
  27. package/dist/core/msgEvent/deleteNode/forWorker.d.ts +1 -4
  28. package/dist/core/msgEvent/forMainThread.d.ts +14 -0
  29. package/dist/core/msgEvent/index.d.ts +4 -0
  30. package/dist/core/msgEvent/rotateNode/forMain.d.ts +2 -2
  31. package/dist/core/msgEvent/rotateNode/forMainThread.d.ts +9 -0
  32. package/dist/core/msgEvent/scaleNode/forMain.d.ts +4 -2
  33. package/dist/core/msgEvent/scaleNode/forMainThread.d.ts +9 -0
  34. package/dist/core/msgEvent/setColor/forMain.d.ts +3 -1
  35. package/dist/core/msgEvent/setColor/forMainThread.d.ts +9 -0
  36. package/dist/core/msgEvent/setFont/forMain.d.ts +1 -0
  37. package/dist/core/msgEvent/setFont/forMainThread.d.ts +9 -0
  38. package/dist/core/msgEvent/setLock/forMain.d.ts +1 -0
  39. package/dist/core/msgEvent/setLock/forMainThread.d.ts +9 -0
  40. package/dist/core/msgEvent/setPoint/forMain.d.ts +1 -0
  41. package/dist/core/msgEvent/setPoint/forMainThread.d.ts +9 -0
  42. package/dist/core/msgEvent/setShape/forMain.d.ts +1 -0
  43. package/dist/core/msgEvent/setShape/forMainThread.d.ts +9 -0
  44. package/dist/core/msgEvent/setZIndex/forMain.d.ts +1 -0
  45. package/dist/core/msgEvent/setZIndex/forMainThread.d.ts +9 -0
  46. package/dist/core/msgEvent/translateNode/forMain.d.ts +2 -2
  47. package/dist/core/msgEvent/translateNode/forMainThread.d.ts +9 -0
  48. package/dist/core/tools/arrow.d.ts +3 -3
  49. package/dist/core/tools/base.d.ts +6 -6
  50. package/dist/core/tools/ellipse.d.ts +3 -3
  51. package/dist/core/tools/eraser.d.ts +3 -3
  52. package/dist/core/tools/image.d.ts +2 -0
  53. package/dist/core/tools/pencil.d.ts +3 -2
  54. package/dist/core/tools/polygon.d.ts +4 -3
  55. package/dist/core/tools/rectangle.d.ts +4 -3
  56. package/dist/core/tools/selector.d.ts +11 -9
  57. package/dist/core/tools/speechBalloon.d.ts +4 -3
  58. package/dist/core/tools/star.d.ts +3 -3
  59. package/dist/core/tools/straight.d.ts +4 -3
  60. package/dist/core/tools/text.d.ts +7 -11
  61. package/dist/core/tools/utils.d.ts +7 -3
  62. package/dist/core/types.d.ts +17 -5
  63. package/dist/core/utils/index.d.ts +1 -1
  64. package/dist/core/utils/math.d.ts +3 -0
  65. package/dist/core/utils/spriteNode.d.ts +2 -2
  66. package/dist/core/worker/base.d.ts +32 -42
  67. package/dist/core/worker/fullWorkerLocal.d.ts +2 -1
  68. package/dist/core/worker/fullWorkerService.d.ts +23 -7
  69. package/dist/core/worker/subWorkerLocal.d.ts +4 -6
  70. package/dist/core/worker/subWorkerTopLayer.d.ts +43 -0
  71. package/dist/core/worker/vNodeManager.d.ts +4 -2
  72. package/dist/core/worker/workerManager.d.ts +17 -16
  73. package/dist/displayer/floatBar/dragBox/index.d.ts +4 -0
  74. package/dist/displayer/floatBar/index.d.ts +1 -5
  75. package/dist/fullWorker.js +467 -0
  76. package/dist/index-BFSMbeSf.mjs +5460 -0
  77. package/dist/index-Cmeli2Rl.js +1 -0
  78. package/dist/index-CoeOpY3D.mjs +9125 -0
  79. package/dist/index-DWgB0sHh.js +1 -0
  80. package/dist/index.d.ts +1 -0
  81. package/dist/plugin/applianceMultiPlugin.d.ts +1 -1
  82. package/dist/plugin/applianceSinglePlugin.d.ts +1 -1
  83. package/dist/plugin/baseApplianceManager.d.ts +5 -5
  84. package/dist/plugin/baseViewContainerManager.d.ts +6 -4
  85. package/dist/plugin/const.d.ts +13 -0
  86. package/dist/plugin/displayerView.d.ts +4 -11
  87. package/dist/plugin/index.d.ts +2 -3
  88. package/dist/plugin/multi/applianceMultiManager.d.ts +1 -1
  89. package/dist/plugin/multi/containerManager.d.ts +3 -1
  90. package/dist/plugin/multi/displayer/appViewDisplayerManager.d.ts +2 -1
  91. package/dist/plugin/multi/displayer/mainViewDisplayerManager.d.ts +3 -1
  92. package/dist/plugin/single/applianceDisplayer.d.ts +0 -1
  93. package/dist/plugin/single/applianceSingleManager.d.ts +1 -1
  94. package/dist/plugin/single/containerManager.d.ts +1 -1
  95. package/dist/plugin/single/displayer/mainViewDisplayerManager.d.ts +3 -1
  96. package/dist/plugin/types.d.ts +15 -17
  97. package/dist/style.css +1 -1
  98. package/dist/subWorker.js +467 -0
  99. package/dist/undo/index.d.ts +1 -2
  100. package/package.json +15 -17
  101. package/cdn/appliance-plugin.js +0 -1
  102. package/cdn/appliance-plugin.mjs +0 -8639
  103. package/cdn/style.css +0 -1
  104. package/dist/core/msgEvent/activeZIndex/forMain.d.ts +0 -12
  105. package/dist/core/msgEvent/activeZIndex/forWorker.d.ts +0 -8
  106. /package/dist/displayer/{highlightBox → floatBar/highlightBox}/index.d.ts +0 -0
  107. /package/dist/displayer/{resizable → floatBar/resizable}/index.d.ts +0 -0
  108. /package/dist/displayer/{rotate → floatBar/rotate}/index.d.ts +0 -0
@@ -6,13 +6,17 @@ import { MasterController } from "../mainEngine";
6
6
  export declare abstract class BaseMsgMethod {
7
7
  static dispatch(emtType: InternalMsgEmitterType, emitEventType: EmitEventType, value: unknown): void;
8
8
  abstract readonly emitEventType: EmitEventType;
9
+ protected abstract lastEmtData?: unknown;
10
+ private useEmtMsg?;
9
11
  emtType: InternalMsgEmitterType;
10
12
  control: BaseApplianceManager;
11
13
  mainEngine: MasterController;
12
14
  get serviceColloctor(): import("../../collector").Collector | undefined;
13
15
  registerForMainEngine(emtType: InternalMsgEmitterType, control: BaseApplianceManager): this;
14
16
  destroy(): void;
15
- collectForLocalWorker(data: [IWorkerMessage, IqueryTask][]): void;
17
+ collectForLocalWorker(data: [IWorkerMessage, IqueryTask][], isSync?: boolean): void;
16
18
  collectForServiceWorker(actions: BaseCollectorReducerAction[]): void;
17
- abstract collect(data: unknown): void;
19
+ abstract collect(data: unknown, isSync?: boolean): void;
20
+ pause(): void;
21
+ recover(): void;
18
22
  }
@@ -0,0 +1,13 @@
1
+ import type { Scene } from "spritejs";
2
+ import { EmitEventType } from "../../plugin/types";
3
+ import { IWorkerMessage } from "../types";
4
+ import { SubLocalThread } from "../mainThread/subLocalThread";
5
+ import { SubServiceThread } from "../mainThread/subServiceThread";
6
+ export declare abstract class BaseMsgMethodForMainThread {
7
+ abstract readonly emitEventType: EmitEventType;
8
+ localWork?: SubLocalThread;
9
+ serviceWork?: SubServiceThread;
10
+ scene: Scene | undefined;
11
+ registerMainThread(localWork: SubLocalThread, serviceWork?: SubServiceThread, scene?: Scene): this;
12
+ abstract consume(data: IWorkerMessage): Promise<boolean | undefined>;
13
+ }
@@ -8,6 +8,7 @@ export type CopyNodeEmtData = {
8
8
  viewId: string;
9
9
  };
10
10
  export declare class CopyNodeMethod extends BaseMsgMethod {
11
+ protected lastEmtData?: unknown;
11
12
  readonly emitEventType: EmitEventType;
12
13
  collect(data: CopyNodeEmtData): void;
13
14
  copyText(param: {
@@ -24,6 +25,7 @@ export declare class CopyNodeMethod extends BaseMsgMethod {
24
25
  store: BaseCollectorReducerAction;
25
26
  bgCenter?: [number, number];
26
27
  textCenter?: [number, number];
28
+ undoTickerId?: number;
27
29
  }): void;
28
30
  copySelector(param: {
29
31
  viewId: string;
@@ -43,5 +45,6 @@ export declare class CopyNodeMethod extends BaseMsgMethod {
43
45
  offset: Point;
44
46
  cameraOpt: Pick<ICameraOpt, 'centerX' | 'centerY' | 'scale'>;
45
47
  };
48
+ undoTickerId?: number;
46
49
  }): void;
47
50
  }
@@ -0,0 +1,8 @@
1
+ import { EmitEventType } from "../../../plugin/types";
2
+ import { IWorkerMessage } from "../../types";
3
+ import { BaseMsgMethodForMainThread } from "../baseForMainThread";
4
+ export declare class CopyNodeMethodForMainThread extends BaseMsgMethodForMainThread {
5
+ readonly emitEventType: EmitEventType;
6
+ consume(data: IWorkerMessage): Promise<boolean | undefined>;
7
+ consumeForLocalWorker(data: IWorkerMessage): Promise<void>;
8
+ }
@@ -6,6 +6,7 @@ export type DeleteNodeEmtData = {
6
6
  viewId: string;
7
7
  };
8
8
  export declare class DeleteNodeMethod extends BaseMsgMethod {
9
+ protected lastEmtData?: unknown;
9
10
  readonly emitEventType: EmitEventType;
10
11
  collect(data: DeleteNodeEmtData): void;
11
12
  }
@@ -0,0 +1,10 @@
1
+ import { EmitEventType } from "../../../plugin/types";
2
+ import { BaseMsgMethodForMainThread } from "../baseForMainThread";
3
+ import { IWorkerMessage } from "../../types";
4
+ export declare class DeleteNodeMethodForMainThread extends BaseMsgMethodForMainThread {
5
+ readonly emitEventType: EmitEventType;
6
+ consume(data: IWorkerMessage): Promise<boolean | undefined>;
7
+ consumeForLocalWorker(data: IWorkerMessage): void;
8
+ consumeForServiceWorker(data: IWorkerMessage): void;
9
+ private commandDeleteText;
10
+ }
@@ -1,9 +1,6 @@
1
1
  import { EmitEventType } from "../../../plugin/types";
2
2
  import { BaseMsgMethodForWorker } from "../baseForWorker";
3
- import { IWorkerMessage, IworkId } from "../../types";
4
- export type DeleteNodeEmtData = {
5
- workIds: IworkId[];
6
- };
3
+ import { IWorkerMessage } from "../../types";
7
4
  export declare class DeleteNodeMethodForWorker extends BaseMsgMethodForWorker {
8
5
  readonly emitEventType: EmitEventType;
9
6
  consume(data: IWorkerMessage): boolean | undefined;
@@ -0,0 +1,14 @@
1
+ import { EmitEventType } from '../../plugin/types';
2
+ import { BaseMsgMethodForMainThread } from './baseForMainThread';
3
+ import { IWorkerMessage } from '../types';
4
+ import type { Scene } from 'spritejs';
5
+ import type { SubLocalThread } from '../mainThread/subLocalThread';
6
+ import type { SubServiceThread } from '../mainThread/subServiceThread';
7
+ export type MsgMethodForMainThread<T extends BaseMsgMethodForMainThread> = T;
8
+ export declare class MethodBuilderWorker {
9
+ builders: Map<EmitEventType, MsgMethodForMainThread<BaseMsgMethodForMainThread> | undefined>;
10
+ constructor(emitTypes: EmitEventType[]);
11
+ build(type: EmitEventType): MsgMethodForMainThread<BaseMsgMethodForMainThread> | undefined;
12
+ registerForMainThread(localWork: SubLocalThread, serviceWork?: SubServiceThread, scene?: Scene): this;
13
+ consumeForMainThread(data: IWorkerMessage): Promise<boolean>;
14
+ }
@@ -11,5 +11,9 @@ export declare class MethodBuilderMain {
11
11
  getBuilder(type: EmitEventType): BaseMsgMethod | undefined;
12
12
  registerForMainEngine(emtType: InternalMsgEmitterType, control: BaseApplianceManager): this;
13
13
  destroy(): void;
14
+ pause(): this;
15
+ recover(): this;
14
16
  static emitMethod(emtType: InternalMsgEmitterType, type: EmitEventType, data: unknown): undefined;
17
+ static activeListener(callback: (isActive: boolean) => void): void;
18
+ static unmountActiveListener(callback: (isActive: boolean) => void): void;
15
19
  }
@@ -9,8 +9,8 @@ export type RotateNodeEmtData = {
9
9
  viewId: string;
10
10
  };
11
11
  export declare class RotateNodeMethod extends BaseMsgMethod {
12
+ protected lastEmtData?: RotateNodeEmtData;
12
13
  readonly emitEventType: EmitEventType;
13
- private undoTickerId?;
14
14
  private cacheOriginRotate;
15
- collect(data: RotateNodeEmtData): void;
15
+ collect(data: RotateNodeEmtData, isSync?: boolean): void;
16
16
  }
@@ -0,0 +1,9 @@
1
+ import { EmitEventType } from "../../../plugin/types";
2
+ import { BaseMsgMethodForMainThread } from "../baseForMainThread";
3
+ import { IWorkerMessage } from "../../types";
4
+ export declare class RotateNodeMethodForMainThread extends BaseMsgMethodForMainThread {
5
+ readonly emitEventType: EmitEventType;
6
+ consume(data: IWorkerMessage): Promise<boolean | undefined>;
7
+ consumeForLocalWorker(data: IWorkerMessage): Promise<void>;
8
+ private updateSelectorCallback;
9
+ }
@@ -9,12 +9,14 @@ export type ScaleNodeEmtData = {
9
9
  box: IRectType;
10
10
  viewId: string;
11
11
  dir?: Direction;
12
+ reverseY?: boolean;
13
+ reverseX?: boolean;
12
14
  };
13
15
  export declare class ScaleNodeMethod extends BaseMsgMethod {
16
+ protected lastEmtData?: ScaleNodeEmtData;
14
17
  readonly emitEventType: EmitEventType;
15
- private undoTickerId?;
16
18
  private targetBox;
17
19
  private targetText;
18
20
  private cacheTextInfo;
19
- collect(data: ScaleNodeEmtData): Promise<void>;
21
+ collect(data: ScaleNodeEmtData, isSync?: boolean): Promise<void>;
20
22
  }
@@ -0,0 +1,9 @@
1
+ import { EmitEventType } from "../../../plugin/types";
2
+ import { BaseMsgMethodForMainThread } from "../baseForMainThread";
3
+ import { IWorkerMessage } from "../../types";
4
+ export declare class ScaleNodeMethodForMainThread extends BaseMsgMethodForMainThread {
5
+ readonly emitEventType: EmitEventType;
6
+ consume(data: IWorkerMessage): Promise<boolean | undefined>;
7
+ consumeForLocalWorker(data: IWorkerMessage): Promise<void>;
8
+ private updateSelectorCallback;
9
+ }
@@ -8,11 +8,13 @@ export type SetColorNodeEmtData = {
8
8
  fillColor?: string;
9
9
  fontColor?: string;
10
10
  fontBgColor?: string;
11
- workState?: EvevtWorkState;
11
+ workState: EvevtWorkState;
12
12
  viewId: string;
13
13
  };
14
14
  export declare class SetColorNodeMethod extends BaseMsgMethod {
15
+ protected lastEmtData?: unknown;
15
16
  readonly emitEventType: EmitEventType;
17
+ private undoTickerId?;
16
18
  private setTextColor;
17
19
  collect(data: SetColorNodeEmtData): void;
18
20
  }
@@ -0,0 +1,9 @@
1
+ import { EmitEventType } from "../../../plugin/types";
2
+ import { BaseMsgMethodForMainThread } from "../baseForMainThread";
3
+ import { IWorkerMessage } from "../../types";
4
+ export declare class SetColorNodeMethodForMainThread extends BaseMsgMethodForMainThread {
5
+ readonly emitEventType: EmitEventType;
6
+ consume(data: IWorkerMessage): Promise<boolean | undefined>;
7
+ consumeForLocalWorker(data: IWorkerMessage): Promise<void>;
8
+ private updateSelectorCallback;
9
+ }
@@ -12,6 +12,7 @@ export type SetFontEmtData = {
12
12
  viewId: string;
13
13
  };
14
14
  export declare class SetFontStyleMethod extends BaseMsgMethod {
15
+ protected lastEmtData?: unknown;
15
16
  readonly emitEventType: EmitEventType;
16
17
  private setTextStyle;
17
18
  collect(data: SetFontEmtData): void;
@@ -0,0 +1,9 @@
1
+ import { EmitEventType } from "../../../plugin/types";
2
+ import { BaseMsgMethodForMainThread } from "../baseForMainThread";
3
+ import { IWorkerMessage } from "../../types";
4
+ export declare class SetFontStyleMethodForMainThread extends BaseMsgMethodForMainThread {
5
+ readonly emitEventType: EmitEventType;
6
+ consume(data: IWorkerMessage): Promise<boolean | undefined>;
7
+ consumeForLocalWorker(data: IWorkerMessage): Promise<void>;
8
+ private updateSelectorCallback;
9
+ }
@@ -7,6 +7,7 @@ export type SetLockEmitData = {
7
7
  viewId: string;
8
8
  };
9
9
  export declare class SetLockMethod extends BaseMsgMethod {
10
+ protected lastEmtData?: unknown;
10
11
  readonly emitEventType: EmitEventType;
11
12
  collect(data: SetLockEmitData): void;
12
13
  }
@@ -0,0 +1,9 @@
1
+ import { EmitEventType } from "../../../plugin/types";
2
+ import { BaseMsgMethodForMainThread } from "../baseForMainThread";
3
+ import { IWorkerMessage } from "../../types";
4
+ export declare class SetLockMethodForMainThread extends BaseMsgMethodForMainThread {
5
+ readonly emitEventType: EmitEventType;
6
+ consume(data: IWorkerMessage): Promise<boolean | undefined>;
7
+ consumeForLocalWorker(data: IWorkerMessage): Promise<void>;
8
+ private updateSelectorCallback;
9
+ }
@@ -9,6 +9,7 @@ export type SetPointEmtData = {
9
9
  viewId: string;
10
10
  };
11
11
  export declare class SetPointMethod extends BaseMsgMethod {
12
+ protected lastEmtData?: unknown;
12
13
  readonly emitEventType: EmitEventType;
13
14
  private undoTickerId?;
14
15
  collect(data: SetPointEmtData): void;
@@ -0,0 +1,9 @@
1
+ import { EmitEventType } from "../../../plugin/types";
2
+ import { BaseMsgMethodForMainThread } from "../baseForMainThread";
3
+ import { IWorkerMessage } from "../../types";
4
+ export declare class SetPointMethodForMainThread extends BaseMsgMethodForMainThread {
5
+ readonly emitEventType: EmitEventType;
6
+ consume(data: IWorkerMessage): Promise<boolean | undefined>;
7
+ consumeForLocalWorker(data: IWorkerMessage): Promise<void>;
8
+ private updateSelectorCallback;
9
+ }
@@ -13,6 +13,7 @@ export type SetShapeEmtData = {
13
13
  placement?: SpeechBalloonPlacement;
14
14
  };
15
15
  export declare class SetShapeOptMethod extends BaseMsgMethod {
16
+ protected lastEmtData?: unknown;
16
17
  readonly emitEventType: EmitEventType;
17
18
  collect(data: SetShapeEmtData): void;
18
19
  }
@@ -0,0 +1,9 @@
1
+ import { EmitEventType } from "../../../plugin/types";
2
+ import { BaseMsgMethodForMainThread } from "../baseForMainThread";
3
+ import { IWorkerMessage } from "../../types";
4
+ export declare class SetShapeOptMethodForMainThread extends BaseMsgMethodForMainThread {
5
+ readonly emitEventType: EmitEventType;
6
+ consume(data: IWorkerMessage): Promise<boolean | undefined>;
7
+ consumeForLocalWorker(data: IWorkerMessage): Promise<void>;
8
+ private updateSelectorCallback;
9
+ }
@@ -8,6 +8,7 @@ export type ZIndexNodeEmtData = {
8
8
  viewId: string;
9
9
  };
10
10
  export declare class ZIndexNodeMethod extends BaseMsgMethod {
11
+ protected lastEmtData?: unknown;
11
12
  readonly emitEventType: EmitEventType;
12
13
  private zIndexMap;
13
14
  clearZIndex(viewId: string): void;
@@ -0,0 +1,9 @@
1
+ import { EmitEventType } from "../../../plugin/types";
2
+ import { BaseMsgMethodForMainThread } from "../baseForMainThread";
3
+ import { IWorkerMessage } from "../../types";
4
+ export declare class ZIndexNodeMethodForMainThread extends BaseMsgMethodForMainThread {
5
+ readonly emitEventType: EmitEventType;
6
+ consume(data: IWorkerMessage): Promise<boolean | undefined>;
7
+ consumeForLocalWorker(data: IWorkerMessage): Promise<void>;
8
+ private updateSelectorCallback;
9
+ }
@@ -12,9 +12,9 @@ export type TranslateNodeEmtData = {
12
12
  viewId: string;
13
13
  };
14
14
  export declare class TranslateNodeMethod extends BaseMsgMethod {
15
+ protected lastEmtData?: TranslateNodeEmtData;
15
16
  readonly emitEventType: EmitEventType;
16
17
  private undoTickerId?;
17
- private oldRect;
18
18
  private cachePosition;
19
- collect(data: TranslateNodeEmtData): void;
19
+ collect(data: TranslateNodeEmtData, isSync?: boolean): void;
20
20
  }
@@ -0,0 +1,9 @@
1
+ import { EmitEventType } from "../../../plugin/types";
2
+ import { BaseMsgMethodForMainThread } from "../baseForMainThread";
3
+ import { IWorkerMessage } from "../../types";
4
+ export declare class TranslateNodeMethodForMainThread extends BaseMsgMethodForMainThread {
5
+ readonly emitEventType: EmitEventType;
6
+ consume(data: IWorkerMessage): Promise<boolean | undefined>;
7
+ consumeForLocalWorker(data: IWorkerMessage): Promise<void>;
8
+ private updateSelectorCallback;
9
+ }
@@ -20,9 +20,9 @@ export declare class ArrowShape extends BaseShapeTool {
20
20
  constructor(props: BaseShapeToolProps);
21
21
  consume(props: {
22
22
  data: IWorkerMessage;
23
- isFullWork?: boolean | undefined;
24
- isClearAll?: boolean | undefined;
25
- isSubWorker?: boolean | undefined;
23
+ isFullWork?: boolean;
24
+ isSubWorker?: boolean;
25
+ isMainThread?: boolean;
26
26
  }): IMainMessage;
27
27
  consumeAll(props: {
28
28
  data?: IWorkerMessage | undefined;
@@ -22,7 +22,7 @@ export interface BaseShapeOptions {
22
22
  translate?: [number, number];
23
23
  }
24
24
  export interface BaseShapeToolProps {
25
- vNodes: VNodeManager;
25
+ vNodes?: VNodeManager;
26
26
  toolsOpt: ShapeOptions;
27
27
  fullLayer: Group;
28
28
  drawLayer?: Group;
@@ -34,7 +34,7 @@ export declare abstract class BaseShapeTool {
34
34
  readonly abstract canRotate: boolean;
35
35
  readonly abstract scaleType: EScaleType;
36
36
  syncUnitTime: number;
37
- vNodes: VNodeManager;
37
+ vNodes?: VNodeManager;
38
38
  protected drawLayer?: Group;
39
39
  protected fullLayer: Group;
40
40
  protected workId: number | string | undefined;
@@ -44,25 +44,24 @@ export declare abstract class BaseShapeTool {
44
44
  abstract consume(props: {
45
45
  data: IWorkerMessage;
46
46
  isFullWork?: boolean;
47
- isClearAll?: boolean;
48
47
  isSubWorker?: boolean;
48
+ drawCount?: number;
49
+ isMainThread?: boolean;
49
50
  }): IMainMessage;
50
51
  /** 消费本地完整数据,返回绘制结果 */
51
52
  abstract consumeAll(props: {
52
53
  data?: IWorkerMessage;
53
- hoverId?: string;
54
54
  }): IMainMessage;
55
55
  /** 消费服务端数据,返回绘制结果 */
56
56
  abstract consumeService(props: {
57
57
  op: number[];
58
58
  isFullWork: boolean;
59
59
  replaceId?: string;
60
- isClearAll?: boolean;
61
60
  }): IRectType | undefined;
62
61
  /** 清除临时数据 */
63
62
  abstract clearTmpPoints(): void;
64
63
  /** 设置工作id */
65
- setWorkId(id: number | string | undefined): void;
64
+ setWorkId(id: string | undefined): void;
66
65
  getWorkId(): string | number | undefined;
67
66
  /** 获取工作选项配置 */
68
67
  getWorkOptions(): ShapeOptions;
@@ -70,6 +69,7 @@ export declare abstract class BaseShapeTool {
70
69
  setWorkOptions(workOptions: BaseShapeOptions): void;
71
70
  /** 更新服务端同步配置,返回绘制结果 */
72
71
  updataOptService(opt?: IUpdateNodeOpt): IRectType | undefined;
72
+ replace(layer: Group, replaceId: string, newNode: ShapeNodes): void;
73
73
  static updateNodeOpt(param: {
74
74
  node: ShapeNodes;
75
75
  opt: IUpdateNodeOpt;
@@ -20,9 +20,9 @@ export declare class EllipseShape extends BaseShapeTool {
20
20
  constructor(props: BaseShapeToolProps);
21
21
  consume(props: {
22
22
  data: IWorkerMessage;
23
- isFullWork?: boolean | undefined;
24
- isClearAll?: boolean | undefined;
25
- isSubWorker?: boolean | undefined;
23
+ isFullWork?: boolean;
24
+ isSubWorker?: boolean;
25
+ isMainThread?: boolean;
26
26
  }): IMainMessage;
27
27
  consumeAll(props: {
28
28
  data?: IWorkerMessage | undefined;
@@ -1,7 +1,7 @@
1
1
  import { BaseShapeOptions, BaseShapeTool, BaseShapeToolProps } from "./base";
2
2
  import { EScaleType, EToolsKey } from "../enum";
3
3
  import { IWorkerMessage, IMainMessage, IRectType } from "../types";
4
- import type { ServiceWorkForFullWorker } from "../worker/fullWorkerService";
4
+ import type { ServiceThreadSubWork } from "./utils";
5
5
  export interface EraserOptions extends BaseShapeOptions {
6
6
  thickness: number;
7
7
  isLine: boolean;
@@ -10,7 +10,7 @@ export declare class EraserShape extends BaseShapeTool {
10
10
  readonly canRotate: boolean;
11
11
  readonly scaleType: EScaleType;
12
12
  readonly toolsType: EToolsKey;
13
- readonly serviceWork?: ServiceWorkForFullWorker;
13
+ readonly serviceWork?: ServiceThreadSubWork;
14
14
  private static readonly eraserSizes;
15
15
  protected tmpPoints: Array<number>;
16
16
  protected workOptions: EraserOptions;
@@ -18,7 +18,7 @@ export declare class EraserShape extends BaseShapeTool {
18
18
  worldScaling: [number, number];
19
19
  eraserRect: IRectType | undefined;
20
20
  eraserPolyline?: [number, number, number, number];
21
- constructor(props: BaseShapeToolProps, serviceWork?: ServiceWorkForFullWorker);
21
+ constructor(props: BaseShapeToolProps, serviceWork?: ServiceThreadSubWork);
22
22
  combineConsume(): undefined;
23
23
  consumeService(): IRectType | undefined;
24
24
  setWorkOptions(setWorkOptions: EraserOptions): void;
@@ -41,8 +41,10 @@ export declare class ImageShape extends BaseShapeTool {
41
41
  isFullWork: boolean;
42
42
  scene: Scene;
43
43
  replaceId?: string;
44
+ isMainThread?: boolean;
44
45
  }): Promise<IRectType | undefined>;
45
46
  clearTmpPoints(): void;
47
+ static getScaleType(opt: ImageOptions): EScaleType.all | EScaleType.proportional;
46
48
  static updateNodeOpt(param: {
47
49
  node: ShapeNodes;
48
50
  opt: IUpdateNodeOpt;
@@ -29,8 +29,10 @@ export declare class PencilShape extends BaseShapeTool {
29
29
  consume(props: {
30
30
  data: IWorkerMessage;
31
31
  isFullWork?: boolean;
32
- isClearAll?: boolean;
33
32
  isSubWorker?: boolean;
33
+ drawCount?: number;
34
+ isMainThread?: boolean;
35
+ replaceId?: string;
34
36
  }): IMainMessage;
35
37
  consumeAll(props: {
36
38
  data?: IWorkerMessage;
@@ -40,7 +42,6 @@ export declare class PencilShape extends BaseShapeTool {
40
42
  op: number[];
41
43
  isFullWork?: boolean;
42
44
  replaceId?: string;
43
- isClearAll?: boolean;
44
45
  }): IRectType | undefined;
45
46
  private transformDataAll;
46
47
  private draw;
@@ -21,9 +21,10 @@ export declare class PolygonShape extends BaseShapeTool {
21
21
  constructor(props: BaseShapeToolProps);
22
22
  consume(props: {
23
23
  data: IWorkerMessage;
24
- isFullWork?: boolean | undefined;
25
- isClearAll?: boolean | undefined;
26
- isSubWorker?: boolean | undefined;
24
+ isFullWork?: boolean;
25
+ isClearAll?: boolean;
26
+ isSubWorker?: boolean;
27
+ isMainThread?: boolean;
27
28
  }): IMainMessage;
28
29
  consumeAll(props: {
29
30
  data?: IWorkerMessage | undefined;
@@ -22,9 +22,10 @@ export declare class RectangleShape extends BaseShapeTool {
22
22
  private computDrawPoints;
23
23
  consume(props: {
24
24
  data: IWorkerMessage;
25
- isFullWork?: boolean | undefined;
26
- isClearAll?: boolean | undefined;
27
- isSubWorker?: boolean | undefined;
25
+ isFullWork?: boolean;
26
+ isClearAll?: boolean;
27
+ isSubWorker?: boolean;
28
+ isMainThread?: boolean;
28
29
  }): IMainMessage;
29
30
  consumeAll(props: {
30
31
  data?: IWorkerMessage | undefined;
@@ -3,10 +3,11 @@ import { BaseShapeOptions, BaseShapeTool, BaseShapeToolProps } from "./base";
3
3
  import { EDataType, EPostMessageType, EScaleType, EToolsKey } from "../enum";
4
4
  import { IWorkerMessage, IMainMessage, IRectType, IUpdateNodeOpt, IServiceWorkItem } from "../types";
5
5
  import { Point2d } from "../utils/primitives/Point2d";
6
- import { VNodeManager } from "../worker/vNodeManager";
6
+ import type { VNodeManager } from "../worker/vNodeManager";
7
7
  import { TextOptions } from "../../component/textEditor/types";
8
8
  import { LocalWorkForFullWorker } from "../worker/fullWorkerLocal";
9
9
  import { ShapeOptType } from "../../displayer/types";
10
+ import type { SubLocalThread } from "../mainThread/subLocalThread";
10
11
  export interface SelectorOptions extends BaseShapeOptions {
11
12
  }
12
13
  export declare class SelectorShape extends BaseShapeTool {
@@ -15,6 +16,7 @@ export declare class SelectorShape extends BaseShapeTool {
15
16
  static selectorBorderId: string;
16
17
  protected tmpPoints: Array<Point2d>;
17
18
  protected workOptions: BaseShapeOptions;
19
+ vNodes: VNodeManager;
18
20
  selectIds?: string[];
19
21
  selectorColor?: string;
20
22
  strokeColor?: string;
@@ -28,7 +30,7 @@ export declare class SelectorShape extends BaseShapeTool {
28
30
  shapeOpt?: ShapeOptType;
29
31
  textOpt?: TextOptions;
30
32
  isLocked?: boolean;
31
- constructor(props: BaseShapeToolProps);
33
+ constructor(props: Required<BaseShapeToolProps>);
32
34
  private computSelector;
33
35
  private updateTempPoints;
34
36
  private drawSelector;
@@ -38,15 +40,14 @@ export declare class SelectorShape extends BaseShapeTool {
38
40
  consume(props: {
39
41
  data: IWorkerMessage;
40
42
  }): IMainMessage;
41
- consumeAll(props?: {
42
- hoverId?: string;
43
- }): IMainMessage;
43
+ consumeAll(): IMainMessage;
44
44
  consumeService(): undefined;
45
45
  clearTmpPoints(): void;
46
46
  clearSelectData(): void;
47
47
  private selectSingleTool;
48
- private backToFullLayer;
49
- private sealToDrawLayer;
48
+ private unSelectedAllIds;
49
+ private unSelectedByIds;
50
+ private selectedByIds;
50
51
  private getSelectorRect;
51
52
  isCanFillColor(toolsType?: EToolsKey): boolean;
52
53
  updateSelector(param: {
@@ -54,9 +55,10 @@ export declare class SelectorShape extends BaseShapeTool {
54
55
  vNodes: VNodeManager;
55
56
  selectIds?: string[];
56
57
  willSerializeData?: boolean;
57
- worker?: LocalWorkForFullWorker;
58
+ worker?: LocalWorkForFullWorker | SubLocalThread;
58
59
  offset?: [number, number];
59
60
  scene?: Scene;
61
+ isMainThread?: boolean;
60
62
  }): Promise<IMainMessage | undefined>;
61
63
  blurSelector(): {
62
64
  type: EPostMessageType;
@@ -65,7 +67,7 @@ export declare class SelectorShape extends BaseShapeTool {
65
67
  selectIds: never[];
66
68
  willSyncService: boolean;
67
69
  };
68
- private getRightServiceId;
70
+ getRightServiceId(serviceWorkId: string): string;
69
71
  selectServiceNode(workId: string, workItem: Pick<IServiceWorkItem, 'selectIds'>, isService: boolean): IRectType | undefined;
70
72
  reRenderSelector(): IRectType | undefined;
71
73
  updateSelectIds(nextSelectIds: string[]): {
@@ -23,9 +23,10 @@ export declare class SpeechBalloonShape extends BaseShapeTool {
23
23
  constructor(props: BaseShapeToolProps);
24
24
  consume(props: {
25
25
  data: IWorkerMessage;
26
- isFullWork?: boolean | undefined;
27
- isClearAll?: boolean | undefined;
28
- isSubWorker?: boolean | undefined;
26
+ isFullWork?: boolean;
27
+ isClearAll?: boolean;
28
+ isSubWorker?: boolean;
29
+ isMainThread?: boolean;
29
30
  }): IMainMessage;
30
31
  consumeAll(props: {
31
32
  data?: IWorkerMessage | undefined;
@@ -23,9 +23,9 @@ export declare class StarShape extends BaseShapeTool {
23
23
  constructor(props: BaseShapeToolProps);
24
24
  consume(props: {
25
25
  data: IWorkerMessage;
26
- isFullWork?: boolean | undefined;
27
- isClearAll?: boolean | undefined;
28
- isSubWorker?: boolean | undefined;
26
+ isFullWork?: boolean;
27
+ isSubWorker?: boolean;
28
+ isMainThread?: boolean;
29
29
  }): IMainMessage;
30
30
  consumeAll(props: {
31
31
  data?: IWorkerMessage | undefined;
@@ -20,9 +20,10 @@ export declare class StraightShape extends BaseShapeTool {
20
20
  constructor(props: BaseShapeToolProps);
21
21
  consume(props: {
22
22
  data: IWorkerMessage;
23
- isFullWork?: boolean | undefined;
24
- isClearAll?: boolean | undefined;
25
- isSubWorker?: boolean | undefined;
23
+ isFullWork?: boolean;
24
+ isClearAll?: boolean;
25
+ isSubWorker?: boolean;
26
+ isMainThread?: boolean;
26
27
  }): IMainMessage;
27
28
  consumeAll(props: {
28
29
  data?: IWorkerMessage | undefined;