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

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 (98) hide show
  1. package/README.md +54 -15
  2. package/cdn/cdn.js +1 -0
  3. package/cdn/fullWorker-DkNRgu.js +468 -0
  4. package/cdn/subWorker-BvxT1L.js +468 -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 +8 -9
  13. package/dist/core/mainEngine.d.ts +37 -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 +102 -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 +32 -0
  21. package/dist/core/msgEvent/baseForMainThread.d.ts +13 -0
  22. package/dist/core/msgEvent/copyNode/forMain.d.ts +2 -0
  23. package/dist/core/msgEvent/copyNode/forMainThread.d.ts +8 -0
  24. package/dist/core/msgEvent/deleteNode/forMainThread.d.ts +13 -0
  25. package/dist/core/msgEvent/forMainThread.d.ts +14 -0
  26. package/dist/core/msgEvent/rotateNode/forMain.d.ts +0 -1
  27. package/dist/core/msgEvent/rotateNode/forMainThread.d.ts +9 -0
  28. package/dist/core/msgEvent/scaleNode/forMain.d.ts +2 -1
  29. package/dist/core/msgEvent/scaleNode/forMainThread.d.ts +9 -0
  30. package/dist/core/msgEvent/setColor/forMain.d.ts +2 -1
  31. package/dist/core/msgEvent/setColor/forMainThread.d.ts +9 -0
  32. package/dist/core/msgEvent/setFont/forMainThread.d.ts +9 -0
  33. package/dist/core/msgEvent/setLock/forMainThread.d.ts +9 -0
  34. package/dist/core/msgEvent/setPoint/forMainThread.d.ts +9 -0
  35. package/dist/core/msgEvent/setShape/forMainThread.d.ts +9 -0
  36. package/dist/core/msgEvent/setZIndex/forMainThread.d.ts +9 -0
  37. package/dist/core/msgEvent/translateNode/forMain.d.ts +0 -1
  38. package/dist/core/msgEvent/translateNode/forMainThread.d.ts +9 -0
  39. package/dist/core/tools/arrow.d.ts +3 -3
  40. package/dist/core/tools/base.d.ts +5 -5
  41. package/dist/core/tools/ellipse.d.ts +3 -3
  42. package/dist/core/tools/eraser.d.ts +3 -3
  43. package/dist/core/tools/image.d.ts +2 -0
  44. package/dist/core/tools/pencil.d.ts +3 -2
  45. package/dist/core/tools/polygon.d.ts +4 -3
  46. package/dist/core/tools/rectangle.d.ts +4 -3
  47. package/dist/core/tools/selector.d.ts +11 -9
  48. package/dist/core/tools/speechBalloon.d.ts +4 -3
  49. package/dist/core/tools/star.d.ts +3 -3
  50. package/dist/core/tools/straight.d.ts +4 -3
  51. package/dist/core/tools/text.d.ts +7 -4
  52. package/dist/core/tools/utils.d.ts +7 -3
  53. package/dist/core/types.d.ts +16 -4
  54. package/dist/core/utils/index.d.ts +1 -1
  55. package/dist/core/utils/math.d.ts +3 -0
  56. package/dist/core/utils/spriteNode.d.ts +2 -2
  57. package/dist/core/worker/base.d.ts +17 -34
  58. package/dist/core/worker/fullWorkerLocal.d.ts +1 -1
  59. package/dist/core/worker/fullWorkerService.d.ts +23 -7
  60. package/dist/core/worker/subWorkerLocal.d.ts +1 -6
  61. package/dist/core/worker/subWorkerTopLayer.d.ts +43 -0
  62. package/dist/core/worker/vNodeManager.d.ts +3 -2
  63. package/dist/core/worker/workerManager.d.ts +16 -16
  64. package/dist/displayer/floatBar/dragBox/index.d.ts +4 -0
  65. package/dist/displayer/floatBar/index.d.ts +1 -5
  66. package/dist/fullWorker.js +468 -0
  67. package/dist/index-B3tcgIQd.js +1 -0
  68. package/dist/index-BFpq0pIU.mjs +8844 -0
  69. package/dist/index-CP5_CnSG.mjs +5419 -0
  70. package/dist/index-ChX1QimR.js +1 -0
  71. package/dist/index.d.ts +1 -0
  72. package/dist/plugin/applianceMultiPlugin.d.ts +1 -1
  73. package/dist/plugin/applianceSinglePlugin.d.ts +1 -1
  74. package/dist/plugin/baseApplianceManager.d.ts +5 -5
  75. package/dist/plugin/baseViewContainerManager.d.ts +6 -4
  76. package/dist/plugin/const.d.ts +13 -0
  77. package/dist/plugin/displayerView.d.ts +4 -11
  78. package/dist/plugin/index.d.ts +2 -3
  79. package/dist/plugin/multi/applianceMultiManager.d.ts +1 -1
  80. package/dist/plugin/multi/containerManager.d.ts +3 -1
  81. package/dist/plugin/multi/displayer/appViewDisplayerManager.d.ts +2 -1
  82. package/dist/plugin/multi/displayer/mainViewDisplayerManager.d.ts +3 -1
  83. package/dist/plugin/single/applianceSingleManager.d.ts +1 -1
  84. package/dist/plugin/single/containerManager.d.ts +1 -1
  85. package/dist/plugin/single/displayer/mainViewDisplayerManager.d.ts +3 -1
  86. package/dist/plugin/types.d.ts +9 -3
  87. package/dist/style.css +1 -1
  88. package/dist/subWorker.js +468 -0
  89. package/dist/undo/index.d.ts +1 -2
  90. package/package.json +15 -17
  91. package/cdn/appliance-plugin.js +0 -1
  92. package/cdn/appliance-plugin.mjs +0 -8639
  93. package/cdn/style.css +0 -1
  94. package/dist/core/msgEvent/activeZIndex/forMain.d.ts +0 -12
  95. package/dist/core/msgEvent/activeZIndex/forWorker.d.ts +0 -8
  96. /package/dist/displayer/{highlightBox → floatBar/highlightBox}/index.d.ts +0 -0
  97. /package/dist/displayer/{resizable → floatBar/resizable}/index.d.ts +0 -0
  98. /package/dist/displayer/{rotate → floatBar/rotate}/index.d.ts +0 -0
@@ -1,7 +1,7 @@
1
1
  import { Group, Scene } from "spritejs";
2
- import { IActiveToolsDataType, IActiveWorkDataType, IBatchMainMessage, ICameraOpt, ILayerOptionType, IMainMessage, IOffscreenCanvasOptionType, IServiceWorkItem, IWorkerMessage, IworkId } from "../types";
2
+ import { IActiveToolsDataType, IActiveWorkDataType, IBatchMainMessage, ICameraOpt, ILayerOptionType, IOffscreenCanvasOptionType, IRectType, IWorkerMessage, IworkId } from "../types";
3
3
  import { VNodeManager } from "./vNodeManager";
4
- import { EDataType, EToolsKey } from "../enum";
4
+ import { ECanvasShowType, EDataType } from "../enum";
5
5
  import { ShapeStateInfo } from "../tools/utils";
6
6
  import { BaseShapeOptions, BaseShapeTool } from "../tools/base";
7
7
  import { ServiceWorkForFullWorker } from "./fullWorkerService";
@@ -18,26 +18,26 @@ export interface ISubWorkerInitOption {
18
18
  viewId: string;
19
19
  vNodes: VNodeManager;
20
20
  fullLayer: Group;
21
+ topLayer?: Group;
21
22
  drawLayer?: Group;
22
- post: (msg: IBatchMainMessage) => Promise<void>;
23
23
  }
24
24
  export declare abstract class WorkThreadEngineBase {
25
25
  readonly viewId: string;
26
26
  readonly fullLayer: Group;
27
27
  readonly vNodes: VNodeManager;
28
28
  readonly dpr: number;
29
- readonly abstract drawLayer?: Group;
30
- readonly abstract snapshotFullLayer?: Group;
31
29
  protected opt: IWorkerInitOption;
32
30
  protected cameraOpt?: ICameraOpt;
33
31
  protected scene: Scene;
34
32
  abstract localWork: LocalWorkForFullWorker | LocalWorkForSubWorker;
35
33
  abstract serviceWork?: ServiceWorkForFullWorker;
36
34
  protected isSafari: boolean;
37
- protected abstract _post: (msg: IBatchMainMessage, transfer?: Transferable[]) => void;
35
+ protected abstract _post: (msg: IBatchMainMessage) => void;
36
+ combinePostMsg: Set<IBatchMainMessage>;
37
+ protected workerTaskId?: number | undefined;
38
38
  constructor(viewId: string, opt: IWorkerInitOption);
39
39
  setIsSafari(isSafari: boolean): void;
40
- on(msg: IWorkerMessage): void;
40
+ on(msg: IWorkerMessage, workerTasksqueueCount?: number): Promise<void>;
41
41
  protected updateScene(offscreenCanvasOpt: IOffscreenCanvasOptionType): void;
42
42
  protected updateLayer(layerOpt: ILayerOptionType): void;
43
43
  protected createScene(opt: IOffscreenCanvasOptionType): Scene;
@@ -46,9 +46,14 @@ export declare abstract class WorkThreadEngineBase {
46
46
  protected setToolsOpt(opt: IActiveToolsDataType): void;
47
47
  protected setWorkOpt(opt: Partial<IActiveWorkDataType>): void;
48
48
  protected destroy(): void;
49
+ post(msg: IBatchMainMessage): void;
50
+ private runBatchPostData;
51
+ protected combinePostData(): IBatchMainMessage;
52
+ protected safariFixRect(rect: IRectType): IRectType | undefined;
53
+ protected getSceneRect(): IRectType;
54
+ abstract combinePost(): Promise<void>;
55
+ protected abstract getLayer(workLayer: ECanvasShowType): Group | undefined;
49
56
  abstract setCameraOpt(cameraOpt: ICameraOpt): void;
50
- abstract getOffscreen(isFullWork: boolean): OffscreenCanvas;
51
- abstract post(msg: IBatchMainMessage): Promise<void>;
52
57
  abstract consumeDraw(type: EDataType, data: IWorkerMessage): void;
53
58
  abstract consumeDrawAll(type: EDataType, data: IWorkerMessage): void;
54
59
  }
@@ -58,7 +63,7 @@ export declare abstract class LocalWork {
58
63
  readonly thread: WorkThreadEngineForFullWorker | WorkThreadEngineForSubWorker;
59
64
  fullLayer: Group;
60
65
  drawLayer?: Group;
61
- readonly _post: (msg: IBatchMainMessage) => Promise<void>;
66
+ readonly _post: (msg: IBatchMainMessage) => void;
62
67
  protected tmpWorkShapeNode?: BaseShapeTool;
63
68
  protected tmpOpt?: IActiveToolsDataType;
64
69
  workShapes: Map<IworkId, BaseShapeTool>;
@@ -70,34 +75,12 @@ export declare abstract class LocalWork {
70
75
  getWorkShape(workId: IworkId): BaseShapeTool | undefined;
71
76
  getTmpWorkShapeNode(): BaseShapeTool | undefined;
72
77
  setTmpWorkId(workId: IworkId | undefined): void;
73
- setTmpWorkOptions(opt: BaseShapeOptions): void;
74
78
  setWorkOptions(workId: IworkId, opt: BaseShapeOptions): void;
75
79
  createWorkShapeNode(opt: IActiveToolsDataType & {
76
80
  workId?: IworkId;
77
- }): import("../tools").SelectorShape | import("../tools").PencilShape | import("../tools").LaserPenShape | import("../tools").ArrowShape | import("../tools/straight").StraightShape | import("../tools").EllipseShape | import("../tools").PolygonShape | import("../tools").StarShape | import("../tools").RectangleShape | import("../tools").SpeechBalloonShape | import("../tools/text").TextShape | import("../tools").EraserShape | import("../tools").ImageShape | undefined;
81
+ }): import("../tools").ArrowShape | import("../tools").PencilShape | import("../tools/straight").StraightShape | import("../tools").EllipseShape | import("../tools").PolygonShape | import("../tools").StarShape | import("../tools").RectangleShape | import("../tools").SpeechBalloonShape | import("../tools/text").TextShape | import("../tools").LaserPenShape | import("../tools").EraserShape | import("../tools").SelectorShape | import("../tools").ImageShape | undefined;
78
82
  setToolsOpt(opt: IActiveToolsDataType): void;
79
83
  clearWorkShapeNodeCache(workId: IworkId): void;
80
84
  clearAllWorkShapesCache(): void;
81
- setFullWork(data: Pick<IWorkerMessage, 'workId' | 'opt' | 'toolsType'>): BaseShapeTool | import("../tools").LaserPenShape | import("../tools").SpeechBalloonShape | import("../tools/text").TextShape | import("../tools").EraserShape | undefined;
82
- abstract consumeDraw(data: IWorkerMessage, serviceWork?: ServiceWork): IMainMessage | undefined;
83
- abstract consumeDrawAll(data: IWorkerMessage, serviceWork?: ServiceWork): IMainMessage | undefined;
84
- }
85
- export interface ServiceWork {
86
- readonly viewId: string;
87
- readonly vNodes: VNodeManager;
88
- readonly fullLayer: Group;
89
- readonly drawLayer: Group;
90
- readonly post: (msg: IBatchMainMessage) => Promise<void>;
91
- selectorWorkShapes: Map<string, IServiceWorkItem>;
92
- clearAllWorkShapesCache(): void;
93
- runSelectWork(data: IWorkerMessage): void;
94
- consumeDraw(data: IWorkerMessage): void;
95
- setNodeKey(workShape: IServiceWorkItem, tools: EToolsKey, opt: BaseShapeOptions): IServiceWorkItem;
96
- runReverseSelectWork(selectIds: string[]): void;
97
- removeWork(data: IWorkerMessage): void;
98
- removeSelectWork(data: IWorkerMessage): void;
99
- runSelectWork(data: IWorkerMessage): void;
100
- consumeFull(data: IWorkerMessage): void;
101
- consumeDraw(data: IWorkerMessage): void;
102
- destroy(): void;
85
+ setFullWork(data: Pick<IWorkerMessage, 'workId' | 'opt' | 'toolsType'>): BaseShapeTool | import("../tools/straight").StraightShape | import("../tools").PolygonShape | import("../tools").RectangleShape | import("../tools").SpeechBalloonShape | import("../tools").LaserPenShape | undefined;
103
86
  }
@@ -13,7 +13,7 @@ export declare class LocalWorkForFullWorker extends LocalWork {
13
13
  consumeDraw(data: IWorkerMessage, serviceWork: ServiceWorkForFullWorker): IMainMessage | undefined;
14
14
  consumeDrawAll(data: IWorkerMessage, serviceWork: ServiceWorkForFullWorker): IMainMessage | undefined;
15
15
  consumeFull(data: IWorkerMessage, scene?: Scene): Promise<void>;
16
- removeWork(data: IWorkerMessage): Promise<void>;
16
+ removeWork(data: IWorkerMessage): void;
17
17
  removeNode(key: string): IRectType | undefined;
18
18
  checkTextActive(data: IWorkerMessage): Promise<void>;
19
19
  colloctEffectSelectWork(data: IWorkerMessage): Promise<IWorkerMessage | undefined>;
@@ -1,25 +1,41 @@
1
1
  import { Group } from "spritejs";
2
- import { ISubWorkerInitOption, ServiceWork } from "./base";
2
+ import { ISubWorkerInitOption } from "./base";
3
3
  import { VNodeManager } from "./vNodeManager";
4
4
  import { IBatchMainMessage, IServiceWorkItem, IWorkerMessage } from "../types";
5
5
  import { EToolsKey } from "../enum";
6
6
  import { BaseShapeOptions } from "../tools";
7
+ export interface ServiceWork {
8
+ readonly viewId: string;
9
+ readonly vNodes: VNodeManager;
10
+ readonly fullLayer: Group;
11
+ readonly drawLayer: Group;
12
+ readonly post: (msg: IBatchMainMessage) => void;
13
+ selectorWorkShapes: Map<string, IServiceWorkItem>;
14
+ clearAllWorkShapesCache(): void;
15
+ runSelectWork(data: IWorkerMessage): void;
16
+ consumeDraw(data: IWorkerMessage): void;
17
+ setNodeKey(workShape: IServiceWorkItem, tools: EToolsKey, opt: BaseShapeOptions): IServiceWorkItem;
18
+ runReverseSelectWork(selectIds: string[]): void;
19
+ removeWork(data: IWorkerMessage): void;
20
+ removeSelectWork(data: IWorkerMessage): void;
21
+ runSelectWork(data: IWorkerMessage): void;
22
+ consumeFull(data: IWorkerMessage): void;
23
+ consumeDraw(data: IWorkerMessage): void;
24
+ destroy(): void;
25
+ }
7
26
  export declare class ServiceWorkForFullWorker implements ServiceWork {
8
27
  viewId: string;
9
28
  vNodes: VNodeManager;
10
29
  fullLayer: Group;
11
30
  drawLayer: Group;
12
- serviceDrawLayer: Group;
13
31
  workShapes: Map<string, IServiceWorkItem>;
14
32
  selectorWorkShapes: Map<string, IServiceWorkItem>;
15
33
  protected animationId?: number | undefined;
16
34
  private willRunEffectSelectorIds;
17
35
  private runEffectId?;
18
36
  private noAnimationRect;
19
- post: (msg: IBatchMainMessage, transfer?: Transferable[]) => Promise<void>;
20
- constructor(opt: ISubWorkerInitOption & {
21
- serviceDrawLayer: Group;
22
- });
37
+ post: (msg: IBatchMainMessage) => void;
38
+ constructor(opt: ISubWorkerInitOption);
23
39
  destroy(): void;
24
40
  consumeDraw(data: IWorkerMessage): void;
25
41
  consumeFull(data: IWorkerMessage): void;
@@ -27,7 +43,7 @@ export declare class ServiceWorkForFullWorker implements ServiceWork {
27
43
  runSelectWork(data: IWorkerMessage): void;
28
44
  setNodeKey(workShape: IServiceWorkItem, tools: EToolsKey, opt: BaseShapeOptions): IServiceWorkItem;
29
45
  runReverseSelectWork(selectIds: string[]): void;
30
- removeWork(data: IWorkerMessage): Promise<void>;
46
+ removeWork(data: IWorkerMessage): void;
31
47
  removeSelectWork(data: IWorkerMessage): void;
32
48
  private removeNode;
33
49
  private activeWorkShape;
@@ -3,18 +3,13 @@ import { IWorkerMessage, IRectType, IMainMessage } from "..";
3
3
  import { BaseCollectorReducerAction } from "../../collector/types";
4
4
  import { LocalWork, ISubWorkerInitOption } from "./base";
5
5
  export declare class LocalWorkForSubWorker extends LocalWork {
6
- private animationWorkRects?;
7
6
  protected combineDrawTimer?: number;
8
- private animationId?;
9
- private closeAnimationTime;
10
- private runLaserPenStep;
11
7
  constructor(opt: ISubWorkerInitOption);
12
- runFullWork(data: IWorkerMessage, isDrawLabel?: boolean): Promise<IRectType | undefined>;
8
+ runFullWork(data: IWorkerMessage): Promise<IRectType | undefined>;
13
9
  runSelectWork(data: IWorkerMessage): undefined;
14
10
  consumeDraw(data: IWorkerMessage): IMainMessage | undefined;
15
11
  consumeDrawAll(data: IWorkerMessage): undefined;
16
12
  updateLabels(labelGroup: Group, value: BaseCollectorReducerAction): void;
17
- private runLaserPenAnimation;
18
13
  private drawPencil;
19
14
  private drawArrow;
20
15
  }
@@ -0,0 +1,43 @@
1
+ import { Group } from "spritejs";
2
+ import { BaseShapeOptions, BaseShapeTool } from "../tools";
3
+ import { ISubWorkerInitOption } from "./base";
4
+ import { VNodeManager } from "./vNodeManager";
5
+ import { IActiveToolsDataType, IBatchMainMessage, ILocalWorkItem, IServiceWorkItem, IWorkerMessage, IworkId } from "../types";
6
+ export interface TopLayerWork {
7
+ readonly viewId: string;
8
+ readonly vNodes: VNodeManager;
9
+ readonly topLayer: Group;
10
+ readonly post: (msg: IBatchMainMessage) => void;
11
+ consumeDraw(data: IWorkerMessage): void;
12
+ consumeDrawAll(data: IWorkerMessage): void;
13
+ destroy(): void;
14
+ }
15
+ export declare class TopLayerWorkForSubWorker implements TopLayerWork {
16
+ viewId: string;
17
+ vNodes: VNodeManager;
18
+ topLayer: Group;
19
+ post: (msg: IBatchMainMessage) => void;
20
+ serviceWorkShapes: Map<string, IServiceWorkItem>;
21
+ localWorkShapes: Map<IworkId, ILocalWorkItem>;
22
+ protected tmpOpt?: IActiveToolsDataType;
23
+ protected tmpWorkShapeNode?: BaseShapeTool;
24
+ protected animationId?: number | undefined;
25
+ constructor(opt: ISubWorkerInitOption);
26
+ getWorkShape(workId: IworkId): ILocalWorkItem | undefined;
27
+ getTmpWorkShapeNode(): BaseShapeTool | undefined;
28
+ setTmpWorkId(workId: IworkId | undefined): void;
29
+ setWorkOptions(workId: IworkId, opt: BaseShapeOptions): void;
30
+ createWorkShapeNode(opt: IActiveToolsDataType & {
31
+ workId?: IworkId;
32
+ }): import("../tools").ArrowShape | import("../tools").PencilShape | import("../tools/straight").StraightShape | import("../tools").EllipseShape | import("../tools").PolygonShape | import("../tools").StarShape | import("../tools").RectangleShape | import("../tools").SpeechBalloonShape | import("../tools/text").TextShape | import("../tools").LaserPenShape | import("../tools").EraserShape | import("../tools").SelectorShape | import("../tools").ImageShape | undefined;
33
+ clearAllWorkShapesCache(): void;
34
+ setToolsOpt(opt: IActiveToolsDataType): void;
35
+ consumeDraw(data: IWorkerMessage): void;
36
+ consumeDrawAll(data: IWorkerMessage): void;
37
+ destroy(): void;
38
+ private setNodeKey;
39
+ private activeServiceWorkShape;
40
+ private computNextAnimationIndex;
41
+ private animationDraw;
42
+ private runAnimation;
43
+ }
@@ -4,16 +4,17 @@ export declare class VNodeManager {
4
4
  viewId: string;
5
5
  scene: Scene;
6
6
  scenePath?: string;
7
- drawLayer?: Group;
8
7
  fullLayer?: Group;
9
8
  curNodeMap: Map<string, BaseNodeMapItem>;
10
9
  targetNodeMap: Map<string, BaseNodeMapItem>[];
11
10
  constructor(viewId: string, scene: Scene);
12
- init(fullLayer: Group, drawLayer?: Group): void;
11
+ init(fullLayer: Group): void;
13
12
  get(name: string): BaseNodeMapItem | undefined;
14
13
  hasRenderNodes(): boolean;
15
14
  has(name: string): void;
16
15
  setInfo(name: string, info: Partial<BaseNodeMapItem>): void;
16
+ selected(name: string): void;
17
+ unSelected(name: string): void;
17
18
  delete(name: string): void;
18
19
  clear(): void;
19
20
  hasRectIntersectRange(rect: IRectType, filterLock?: boolean): boolean;
@@ -1,10 +1,11 @@
1
1
  import { Group } from "spritejs";
2
- import { EDataType } from "../enum";
2
+ import { ECanvasShowType, EDataType } from "../enum";
3
3
  import { IBatchMainMessage, ICameraOpt, ILayerOptionType, IWorkerMessage } from "../types";
4
4
  import { IWorkerInitOption, WorkThreadEngineBase } from "./base";
5
5
  import { LocalWorkForFullWorker } from "./fullWorkerLocal";
6
6
  import { ServiceWorkForFullWorker } from "./fullWorkerService";
7
7
  import { LocalWorkForSubWorker } from "./subWorkerLocal";
8
+ import { TopLayerWorkForSubWorker } from "./subWorkerTopLayer";
8
9
  export declare enum EWorkThreadType {
9
10
  Full = "full",
10
11
  Sub = "sub"
@@ -21,51 +22,50 @@ export declare class WorkerManager<T extends WorkThreadEngineBase> {
21
22
  /** full worker */
22
23
  export declare class WorkThreadEngineForFullWorker extends WorkThreadEngineBase {
23
24
  serviceDrawLayer: Group;
24
- drawLayer: Group;
25
+ localDrawLayer: Group;
25
26
  snapshotFullLayer: undefined;
26
27
  private methodBuilder;
27
28
  localWork: LocalWorkForFullWorker;
28
29
  serviceWork: ServiceWorkForFullWorker;
29
30
  protected _post: (msg: IBatchMainMessage, transfer?: Transferable[] | undefined) => void;
30
31
  constructor(viewId: string, opt: IWorkerInitOption, _post: (msg: IBatchMainMessage, transfer?: Transferable[]) => void);
31
- post(msg: IBatchMainMessage, transfer?: Transferable[]): Promise<void>;
32
- on(msg: IWorkerMessage): void;
32
+ combinePost(): Promise<void>;
33
+ on(msg: IWorkerMessage, workerTasksqueueCount?: number): Promise<void>;
33
34
  removeNode(data: IWorkerMessage): Promise<void>;
34
35
  checkTextActive(data: IWorkerMessage): void;
35
36
  clearAll(): void;
36
37
  protected updateLayer(layerOpt: ILayerOptionType): void;
37
38
  setCameraOpt(cameraOpt: ICameraOpt): void;
38
- getLayer(isFullWork?: boolean, workerType?: EDataType.Local | EDataType.Service): Group;
39
- getOffscreen(isFullWork: boolean, workerType?: EDataType.Local | EDataType.Service): OffscreenCanvas;
39
+ protected getLayer(drawCanvas: ECanvasShowType): Group | undefined;
40
+ getOffscreen(drawCanvas: ECanvasShowType): OffscreenCanvas;
40
41
  consumeFull(type: EDataType, data: IWorkerMessage): Promise<void>;
41
42
  consumeDraw(type: EDataType, data: IWorkerMessage): void;
42
43
  consumeDrawAll(type: EDataType, data: IWorkerMessage): void;
43
44
  private updateCamera;
44
45
  private getRectImageBitmap;
45
- private safariFixRect;
46
- private getSceneRect;
47
- private checkRightRectBoundingBox;
48
46
  private cursorHover;
49
47
  }
50
48
  /** sub worker */
51
49
  export declare class WorkThreadEngineForSubWorker extends WorkThreadEngineBase {
52
50
  protected _post: (msg: IBatchMainMessage, transfer?: Transferable[] | undefined) => void;
53
- drawLayer: undefined;
51
+ topLayer: Group;
54
52
  snapshotFullLayer: Group | undefined;
55
53
  serviceWork: undefined;
56
54
  localWork: LocalWorkForSubWorker;
55
+ topLayerWork: TopLayerWorkForSubWorker;
57
56
  constructor(viewId: string, opt: IWorkerInitOption, _post: (msg: IBatchMainMessage, transfer?: Transferable[]) => void);
58
- post(msg: IBatchMainMessage, transfer?: Transferable[]): Promise<void>;
59
- on(msg: IWorkerMessage): void;
60
- getOffscreen(isSnapshot: boolean): OffscreenCanvas;
61
- consumeDraw(type: EDataType, data: IWorkerMessage): void;
57
+ combinePost(): Promise<void>;
58
+ getLayer(drawCanvas: ECanvasShowType, isSnapshot?: boolean): Group;
59
+ on(msg: IWorkerMessage): Promise<void>;
60
+ getOffscreen(drawCanvas: ECanvasShowType, isSnapshot?: boolean): OffscreenCanvas;
61
+ consumeDraw(_type: EDataType, data: IWorkerMessage): void;
62
62
  consumeDrawAll(_type: EDataType, data: IWorkerMessage): void;
63
+ clearAll(): void;
63
64
  private getRectImageBitmap;
64
- private safariFixRect;
65
+ protected updateLayer(layerOpt: ILayerOptionType): void;
65
66
  private updateCamera;
66
67
  setCameraOpt(cameraOpt: ICameraOpt, layer?: Group): void;
67
68
  private getSnapshot;
68
- private willRenderSpecialLabel;
69
69
  private getSnapshotRender;
70
70
  private getBoundingRect;
71
71
  }
@@ -0,0 +1,4 @@
1
+ import React from "react";
2
+ export declare const DraggableBox: (props: {
3
+ onClickHandle: (e: React.MouseEvent<HTMLDivElement, MouseEvent>) => void;
4
+ }) => React.JSX.Element;
@@ -1,10 +1,6 @@
1
1
  import React from "react";
2
2
  import { TextEditorInfo } from "../../component/textEditor";
3
3
  export declare const FloatBar: React.MemoExoticComponent<React.ForwardRefExoticComponent<{
4
- className: string;
5
4
  editors?: Map<string, TextEditorInfo> | undefined;
6
5
  activeTextId?: string | undefined;
7
- } & React.RefAttributes<HTMLCanvasElement>>>;
8
- export declare const FloatBarBtn: (props: {
9
- className: string;
10
- }) => React.JSX.Element | null;
6
+ } & React.RefAttributes<HTMLDivElement>>>;