@netless/appliance-plugin 1.1.2 → 1.1.3-4.beta.0

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 (154) hide show
  1. package/READMA.zh-CN.md +993 -0
  2. package/README.md +963 -176
  3. package/cdn/cdn.js +1 -1
  4. package/cdn/fullWorker-Dwf7nY.js +486 -0
  5. package/cdn/subWorker-DXBnNm.js +486 -0
  6. package/dist/ObserverMap-BudneEfB.mjs +58 -0
  7. package/dist/ObserverMap-DTz9zucn.js +1 -0
  8. package/dist/appliance-plugin.js +1 -1
  9. package/dist/appliance-plugin.mjs +27 -18
  10. package/dist/cdn.d.ts +2 -2
  11. package/dist/collector/base.d.ts +3 -1
  12. package/dist/collector/collector.d.ts +57 -14
  13. package/dist/collector/index.d.ts +4 -4
  14. package/dist/collector/types.d.ts +49 -10
  15. package/dist/component/autoDraw/index.d.ts +0 -0
  16. package/dist/component/miniMap/index.d.ts +1 -0
  17. package/dist/component/miniMap/manager.d.ts +37 -0
  18. package/dist/component/miniMap/view.d.ts +14 -0
  19. package/dist/component/svg/base.d.ts +30 -0
  20. package/dist/component/svg/manager.d.ts +44 -0
  21. package/dist/component/svg/markmap.d.ts +41 -0
  22. package/dist/component/svg/mermaid-check.d.ts +18 -0
  23. package/dist/component/svg/mermaid-loader.d.ts +29 -0
  24. package/dist/component/svg/mermaid.d.ts +109 -0
  25. package/dist/component/svg/snapshot.d.ts +31 -0
  26. package/dist/component/svg/svgElemt.d.ts +43 -0
  27. package/dist/component/svg/svgToImageLoader.d.ts +25 -0
  28. package/dist/component/svg/types.d.ts +10 -0
  29. package/dist/component/svg/utils.d.ts +9 -0
  30. package/dist/component/svg/vNodeManager.d.ts +28 -0
  31. package/dist/component/textEditor/index.d.ts +2 -2
  32. package/dist/component/textEditor/manager.d.ts +22 -3
  33. package/dist/component/textEditor/types.d.ts +5 -4
  34. package/dist/component/textEditor/utils.d.ts +1 -0
  35. package/dist/component/textEditor/view.d.ts +28 -48
  36. package/dist/core/autoShape/index.d.ts +12 -0
  37. package/dist/core/autoShape/mapper.d.ts +3 -0
  38. package/dist/core/autoShape/recognizer.d.ts +8 -0
  39. package/dist/core/autoShape/registry.d.ts +2 -0
  40. package/dist/core/autoShape/templates.d.ts +2 -0
  41. package/dist/core/autoShape/types.d.ts +78 -0
  42. package/dist/core/backGroundThread/index.d.ts +35 -0
  43. package/dist/core/backGroundThread/types.d.ts +12 -0
  44. package/dist/core/enum.d.ts +74 -13
  45. package/dist/core/index.d.ts +3 -3
  46. package/dist/core/mainEngine.d.ts +101 -27
  47. package/dist/core/mainThread/base.d.ts +10 -6
  48. package/dist/core/mainThread/index.d.ts +2 -2
  49. package/dist/core/mainThread/snapshotThread.d.ts +8 -4
  50. package/dist/core/mainThread/subLocalThread.d.ts +21 -16
  51. package/dist/core/mainThread/subServiceThread.d.ts +2 -2
  52. package/dist/core/mainThread/subTopThread.d.ts +2 -2
  53. package/dist/core/msgEvent/base.d.ts +1 -0
  54. package/dist/core/msgEvent/baseForBackgroundThread.d.ts +9 -0
  55. package/dist/core/msgEvent/baseForWorker.d.ts +2 -1
  56. package/dist/core/msgEvent/copyNode/forBackgroundThread.d.ts +8 -0
  57. package/dist/core/msgEvent/copyNode/forMain.d.ts +2 -2
  58. package/dist/core/msgEvent/forBackgroundThread.d.ts +12 -0
  59. package/dist/core/msgEvent/forMainThread.d.ts +4 -4
  60. package/dist/core/msgEvent/forWorker.d.ts +4 -4
  61. package/dist/core/msgEvent/index.d.ts +4 -4
  62. package/dist/core/msgEvent/rotateNode/forMain.d.ts +2 -2
  63. package/dist/core/msgEvent/scaleNode/forMain.d.ts +2 -2
  64. package/dist/core/msgEvent/setColor/forMain.d.ts +2 -2
  65. package/dist/core/msgEvent/setPoint/forMain.d.ts +2 -2
  66. package/dist/core/msgEvent/setZIndex/forMain.d.ts +7 -0
  67. package/dist/core/msgEvent/translateNode/forMain.d.ts +2 -2
  68. package/dist/core/plugin.d.ts +49 -0
  69. package/dist/core/renderCotrol.d.ts +12 -11
  70. package/dist/core/tools/arrow.d.ts +10 -22
  71. package/dist/core/tools/base.d.ts +52 -9
  72. package/dist/core/tools/ellipse.d.ts +10 -22
  73. package/dist/core/tools/image.d.ts +9 -7
  74. package/dist/core/tools/index.d.ts +14 -13
  75. package/dist/core/tools/laserPen.d.ts +1 -1
  76. package/dist/core/tools/pencil.d.ts +18 -8
  77. package/dist/core/tools/pencilEraser.d.ts +36 -41
  78. package/dist/core/tools/pencilEraserBitMap.d.ts +20 -27
  79. package/dist/core/tools/polygon.d.ts +10 -22
  80. package/dist/core/tools/rectangle.d.ts +10 -22
  81. package/dist/core/tools/selector.d.ts +42 -24
  82. package/dist/core/tools/shadowSvg.d.ts +36 -0
  83. package/dist/core/tools/speechBalloon.d.ts +10 -22
  84. package/dist/core/tools/star.d.ts +10 -22
  85. package/dist/core/tools/straight.d.ts +10 -22
  86. package/dist/core/tools/text.d.ts +2 -1
  87. package/dist/core/tools/utils.d.ts +11 -12
  88. package/dist/core/types.d.ts +98 -18
  89. package/dist/core/utils/ObserverMap.d.ts +19 -0
  90. package/dist/core/utils/clipper.d.ts +8 -0
  91. package/dist/core/utils/getSvgPathFromPoints.d.ts +1 -1
  92. package/dist/core/utils/index.d.ts +6 -5
  93. package/dist/core/utils/indexDB.d.ts +17 -0
  94. package/dist/core/utils/math.d.ts +1 -0
  95. package/dist/core/utils/polygonUtils.d.ts +8 -0
  96. package/dist/core/utils/primitives/Box2d.d.ts +4 -4
  97. package/dist/core/utils/proxy.d.ts +3 -4
  98. package/dist/core/utils/spriteNode.d.ts +8 -1
  99. package/dist/core/vNodeManager.d.ts +13 -9
  100. package/dist/core/worker/base.d.ts +43 -21
  101. package/dist/core/worker/fullWorkerLocal.d.ts +29 -25
  102. package/dist/core/worker/fullWorkerService.d.ts +9 -9
  103. package/dist/core/worker/simpleWorker.d.ts +28 -0
  104. package/dist/core/worker/snapshotWork.d.ts +27 -0
  105. package/dist/core/worker/subWorkerLocal.d.ts +2 -3
  106. package/dist/core/worker/subWorkerTopLayer.d.ts +2 -2
  107. package/dist/core/worker/workerManager.d.ts +52 -36
  108. package/dist/cursors/index.d.ts +9 -11
  109. package/dist/displayer/const.d.ts +1 -0
  110. package/dist/displayer/cursor/index.d.ts +1 -0
  111. package/dist/displayer/floatBar/dragBox/index.d.ts +9 -3
  112. package/dist/displayer/floatBar/index.d.ts +2 -1
  113. package/dist/displayer/floatBtns/index.d.ts +2 -0
  114. package/dist/displayer/utils.d.ts +1 -0
  115. package/dist/extend.d.ts +1 -0
  116. package/dist/fullWorker.js +242 -195
  117. package/dist/index-BCI9ZJly.mjs +9884 -0
  118. package/dist/index-CRWsZj1z.mjs +16601 -0
  119. package/dist/index-D2XqHUO-.js +1 -0
  120. package/dist/index-Dfujq78k.js +3 -0
  121. package/dist/index-TQPJgovl.mjs +1263 -0
  122. package/dist/index-ZvQrVWzu.js +1 -0
  123. package/dist/index.d.ts +1 -0
  124. package/dist/plugin/applianceMultiPlugin.d.ts +2 -3
  125. package/dist/plugin/applianceSinglePlugin.d.ts +3 -4
  126. package/dist/plugin/baseApplianceManager.d.ts +58 -13
  127. package/dist/plugin/baseViewContainerManager.d.ts +72 -73
  128. package/dist/plugin/const.d.ts +2 -22
  129. package/dist/plugin/displayerView.d.ts +18 -4
  130. package/dist/plugin/index.d.ts +1 -0
  131. package/dist/plugin/multi/applianceMultiManager.d.ts +0 -1
  132. package/dist/plugin/multi/containerManager.d.ts +8 -1
  133. package/dist/plugin/multi/displayer/appViewDisplayerManager.d.ts +3 -2
  134. package/dist/plugin/multi/displayer/mainViewDisplayerManager.d.ts +4 -2
  135. package/dist/plugin/single/displayer/mainViewDisplayerManager.d.ts +4 -3
  136. package/dist/plugin/types.d.ts +393 -32
  137. package/dist/style.css +1 -1
  138. package/dist/subWorker.js +242 -195
  139. package/dist/svgToImageLoader-DPRAAhwW.js +1 -0
  140. package/dist/svgToImageLoader-mXH53h-l.mjs +18 -0
  141. package/dist/undo/index.d.ts +25 -31
  142. package/dist/undo/proxyArray.d.ts +37 -0
  143. package/package.json +31 -9
  144. package/cdn/fullWorker-DMz46H.js +0 -439
  145. package/cdn/subWorker-B_zAQR.js +0 -439
  146. package/dist/collector/eventCollector.d.ts +0 -31
  147. package/dist/collector/magixEventCollector.d.ts +0 -31
  148. package/dist/core/mainThread/workerMainThread.d.ts +0 -99
  149. package/dist/core/msgEvent/deleteNode/forMainThread.d.ts +0 -6
  150. package/dist/core/msgEvent/deleteNode/forWorker.d.ts +0 -6
  151. package/dist/index-B-Nowr4E.mjs +0 -14865
  152. package/dist/index-BDVvqw7g.js +0 -1
  153. package/dist/index-DwakKeHT.mjs +0 -2497
  154. package/dist/index-cRE5FY5s.js +0 -1
@@ -2,13 +2,13 @@ import { Group, Scene } from "spritejs";
2
2
  import { BaseNodeMapItem, IRectType } from "./types";
3
3
  import { EToolsKey } from ".";
4
4
  import { _SetTrue } from "../plugin";
5
- import type { Uid } from "../collector/types";
5
+ import { ObserverMap } from "./utils/ObserverMap";
6
6
  export declare class VNodeManager {
7
7
  viewId: string;
8
8
  scene: Scene;
9
9
  fullLayer?: Group;
10
- curNodeMap: Map<string, BaseNodeMapItem>;
11
- targetNodeMap: Map<string, BaseNodeMapItem>[];
10
+ curNodeMap: ObserverMap<string, BaseNodeMapItem>;
11
+ targetNodeMap: ObserverMap<string, BaseNodeMapItem>[];
12
12
  private highLevelIds?;
13
13
  private canClearUids?;
14
14
  private localUid?;
@@ -17,10 +17,14 @@ export declare class VNodeManager {
17
17
  get(name: string): BaseNodeMapItem | undefined;
18
18
  setLocalUid(uid: string): void;
19
19
  getLocalUid(): string | undefined;
20
- setCanClearUids(clearUids?: _SetTrue<Uid>): void;
21
- getCanClearUids(): _SetTrue<string> | undefined;
22
- getCanEraserNodes(nodeMap: Map<string, BaseNodeMapItem>): Map<string, BaseNodeMapItem>;
20
+ setCanClearUids(clearUids?: _SetTrue): void;
21
+ getCanClearUids(): _SetTrue | undefined;
22
+ getCanEraserNodes(nodeMap: ObserverMap<string, BaseNodeMapItem>, disableErase: {
23
+ disableEraseImage?: boolean;
24
+ disableEraseText?: boolean;
25
+ }): Map<string, BaseNodeMapItem>;
23
26
  getNodesByType(type: EToolsKey): Map<string, BaseNodeMapItem>;
27
+ gethasEraserNodes(): Map<string, BaseNodeMapItem>;
24
28
  hasRenderNodes(): boolean;
25
29
  has(name: string): boolean;
26
30
  setInfo(name: string, info: Partial<BaseNodeMapItem>): void;
@@ -39,11 +43,11 @@ export declare class VNodeManager {
39
43
  clearHighLevelIds(): void;
40
44
  setTargetAssignKeys(keys: Array<string>): number;
41
45
  setTarget(): number;
42
- getLastTarget(): Map<string, BaseNodeMapItem>;
46
+ getLastTarget(): ObserverMap<string, BaseNodeMapItem>;
43
47
  deleteLastTarget(): void;
44
- getTarget(i: number): Map<string, BaseNodeMapItem>;
48
+ getTarget(i: number): ObserverMap<string, BaseNodeMapItem>;
45
49
  deleteTarget(i: number): void;
46
50
  clearTarget(): void;
47
51
  isLocalWorkId(workId: string): boolean;
48
- isCanClearWorkId(workId: string): boolean;
52
+ isCanClearWorkId(workId: string): boolean | "" | undefined;
49
53
  }
@@ -1,20 +1,31 @@
1
1
  import { Group, Scene } from "spritejs";
2
2
  import { IActiveToolsDataType, IActiveWorkDataType, IBatchMainMessage, ICameraOpt, ILayerOptionType, IOffscreenCanvasOptionType, IRectType, IWorkerMessage } from "../types";
3
3
  import { VNodeManager } from "../vNodeManager";
4
- import { type ECanvasContextType, ECanvasShowType, EDataType, EvevtWorkState } from "../enum";
4
+ import { type ECanvasContextType, ECanvasShowType, EDataType, EventWorkState } from "../enum";
5
5
  import { BaseShapeOptions, BaseShapeTool } from "../tools/base";
6
6
  import { ServiceWorkForFullWorker } from "./fullWorkerService";
7
7
  import { LocalWorkForFullWorker } from "./fullWorkerLocal";
8
8
  import { LocalWorkForSubWorker } from "./subWorkerLocal";
9
- import { EWorkThreadType, WorkThreadEngineForFullWorker, WorkThreadEngineForSubWorker } from "./workerManager";
9
+ import { EWorkThreadType, type WorkThreadEngineForFullWorker, type WorkThreadEngineForSubWorker, type WorkThreadEngineForSimpleWorker } from "./workerManager";
10
10
  import { EmitEventType } from "../../plugin/types";
11
11
  export interface IWorkerInitOption {
12
12
  dpr: number;
13
13
  offscreenCanvasOpt: IOffscreenCanvasOptionType;
14
14
  layerOpt: ILayerOptionType;
15
+ combineUnitTime?: number;
16
+ syncUnitTime?: number;
17
+ maxCombineEraserTime?: number;
18
+ isUseSimple?: boolean;
19
+ }
20
+ export interface ISimpleWorkerInitOption extends IWorkerInitOption {
21
+ offscreenCanvas?: {
22
+ localCanvas: OffscreenCanvas;
23
+ bgCanvas: OffscreenCanvas;
24
+ serviceCanvas: OffscreenCanvas;
25
+ };
15
26
  }
16
27
  export interface ISubWorkerInitOption {
17
- thread: WorkThreadEngineForFullWorker | WorkThreadEngineForSubWorker;
28
+ thread: WorkThreadEngineForFullWorker | WorkThreadEngineForSubWorker | WorkThreadEngineForSimpleWorker;
18
29
  viewId: string;
19
30
  vNodes: VNodeManager;
20
31
  fullLayer: Group;
@@ -23,12 +34,12 @@ export interface ISubWorkerInitOption {
23
34
  }
24
35
  export declare abstract class WorkThreadEngineBase {
25
36
  readonly viewId: string;
37
+ readonly type: EWorkThreadType;
26
38
  scene: Scene;
27
39
  fullLayer: Group;
28
40
  readonly vNodes: VNodeManager;
29
- readonly dpr: number;
41
+ dpr: number;
30
42
  readonly contextType?: ECanvasContextType;
31
- abstract readonly type: EWorkThreadType;
32
43
  protected opt: IWorkerInitOption;
33
44
  protected cameraOpt?: ICameraOpt;
34
45
  abstract localWork: LocalWorkForFullWorker | LocalWorkForSubWorker;
@@ -40,31 +51,37 @@ export declare abstract class WorkThreadEngineBase {
40
51
  protected protectedTask?: {
41
52
  isProtected: boolean;
42
53
  workName: EmitEventType;
43
- workState: EvevtWorkState;
54
+ workState: EventWorkState;
44
55
  };
45
- protected hasPriorityDraw: boolean;
46
56
  protected delayPostDoneResolve?: (bol: boolean) => void;
47
- protected cacheImages: Map<string, ImageBitmap>;
57
+ protected cacheImages: Map<string, {
58
+ imageBitmap: ImageBitmap;
59
+ workId: string;
60
+ }>;
48
61
  protected imageResolveMap: Map<string, {
49
62
  timer?: number;
50
- resolve?: (workId: string) => void;
63
+ resolve?: (src: string) => void;
51
64
  }>;
65
+ protected taskUpdateCameraId?: number;
66
+ protected debounceUpdateCameraId?: number;
52
67
  constructor(viewId: string, opt: IWorkerInitOption, workerType: EWorkThreadType);
53
- private createRenderLayer;
68
+ protected createRenderLayer(scene: Scene, opt: IWorkerInitOption): void;
69
+ updateDpr(dpr: number): Promise<void>;
54
70
  getCachedImages(imageSrc: string): ImageBitmap | undefined;
71
+ getCachedImagesByWorkId(workId: string): ImageBitmap | undefined;
72
+ deleteCachedImagesByWorkId(workId: string, filter?: string): void;
55
73
  clearCacheImages(): void;
56
74
  clearImageResolveMap(): void;
57
- setHasPriorityDraw(bol: boolean): void;
58
- getPriorityDraw(): boolean;
59
75
  setIsSafari(isSafari: boolean): void;
60
76
  on(msg: IWorkerMessage): Promise<void>;
61
- loadImageBitMap(msg: Pick<IWorkerMessage, 'toolsType' | 'opt' | 'workId'>): Promise<ImageBitmap | undefined>;
77
+ private getIconSize;
78
+ loadImageBitMap(msg: Pick<IWorkerMessage, "toolsType" | "opt" | "workId" | "isSubWorker">): Promise<ImageBitmap | undefined>;
62
79
  protected createLocalWork(data: IWorkerMessage): void;
63
- protected updateScene(offscreenCanvasOpt: IOffscreenCanvasOptionType): void;
64
- protected updateLayer(layerOpt: ILayerOptionType): void;
80
+ protected updateScene(scene: Scene, offscreenCanvasOpt: IOffscreenCanvasOptionType, targetLayer?: Group): void;
81
+ protected updateLayer(layerOpt: ILayerOptionType, targetLayer?: Group): void;
65
82
  private getSupportContextType;
66
- protected createScene(opt: IOffscreenCanvasOptionType): Scene;
67
- protected createLayer(name: string, scene: Scene, opt: ILayerOptionType): Group;
83
+ protected createScene(opt: IWorkerInitOption): Scene;
84
+ protected createLayer(name: string, scene: Scene, opt: ILayerOptionType, offscreenCanvas?: OffscreenCanvas): Group;
68
85
  protected clearAll(): Promise<void>;
69
86
  protected setToolsOpt(opt: IActiveToolsDataType): void;
70
87
  protected setWorkOpt(opt: Partial<IActiveWorkDataType>): void;
@@ -72,7 +89,6 @@ export declare abstract class WorkThreadEngineBase {
72
89
  post(msg: IBatchMainMessage): Promise<void>;
73
90
  private runBatchPostData;
74
91
  protected combinePostData(): IBatchMainMessage;
75
- protected safariFixRect(rect: IRectType, dpr: number): IRectType | undefined;
76
92
  getSceneRect(): IRectType;
77
93
  abstract combinePost(): Promise<void>;
78
94
  protected abstract getLayer(workLayer: ECanvasShowType): Group | undefined;
@@ -83,7 +99,7 @@ export declare abstract class WorkThreadEngineBase {
83
99
  }
84
100
  export declare abstract class LocalWork {
85
101
  readonly viewId: string;
86
- readonly vNodes: VNodeManager;
102
+ readonly vNodes?: VNodeManager;
87
103
  readonly thread: WorkThreadEngineForFullWorker | WorkThreadEngineForSubWorker;
88
104
  fullLayer: Group;
89
105
  drawLayer?: Group;
@@ -91,7 +107,13 @@ export declare abstract class LocalWork {
91
107
  protected tmpOpt?: IActiveToolsDataType;
92
108
  workShapes: Map<string, BaseShapeTool>;
93
109
  protected drawCount: number;
110
+ protected consumeCount: number;
94
111
  protected syncUnitTime: number;
112
+ protected combineUnitTime: number;
113
+ protected maxCombineEraserTime: number;
114
+ setmaxCombineEraserTime(maxCombineEraserTime: number): void;
115
+ setCombineUnitTime(combineUnitTime: number): void;
116
+ setSyncUnitTime(syncUnitTime: number): void;
95
117
  constructor(opt: ISubWorkerInitOption);
96
118
  destroy(): void;
97
119
  getWorkShapes(): Map<string, BaseShapeTool>;
@@ -100,10 +122,10 @@ export declare abstract class LocalWork {
100
122
  setWorkOptions(workId: string, opt: BaseShapeOptions): void;
101
123
  createWorkShapeNode(opt: IActiveToolsDataType & {
102
124
  workId: string;
103
- }): import("../tools").PencilShape | import("../tools").LaserPenShape | import("../tools").EraserShape | import("../tools").StarShape | import("../tools/text").TextShape | import("../tools").SelectorShape | import("../tools/image").ImageShape | import("../tools").ArrowShape | import("../tools/straight").StraightShape | import("../tools").EllipseShape | import("../tools").PolygonShape | import("../tools").RectangleShape | import("../tools").SpeechBalloonShape | import("../tools/pencilEraserBitMap").BitMapEraserShape | import("../tools/pencilEraser").PencilEraserShape | undefined;
125
+ }): 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/pencilEraser").PencilEraserShape | import("../tools").BitMapEraserShape | import("../tools").SelectorShape | import("../tools").ImageShape | import("../tools/shadowSvg").ISvgShadowShape | undefined;
104
126
  setToolsOpt(opt: IActiveToolsDataType): void;
105
127
  getToolsOpt(): IActiveToolsDataType | undefined;
106
128
  clearWorkShapeNodeCache(workId: string): void;
107
129
  clearAllWorkShapesCache(): void;
108
- setFullWork(data: Pick<IWorkerMessage, 'workId' | 'opt' | 'toolsType'>): BaseShapeTool | undefined;
130
+ setFullWork(data: Pick<IWorkerMessage, "workId" | "opt" | "toolsType">): BaseShapeTool | undefined;
109
131
  }
@@ -1,26 +1,31 @@
1
- import { IWorkerMessage, IMainMessage, EToolsKey, IBatchMainMessage, IUpdateSelectorPropsType } from "..";
1
+ import { IWorkerMessage, IMainMessage, IRectType, EToolsKey, IBatchMainMessage, IUpdateSelectorPropsType } from "..";
2
2
  import { BaseShapeOptions, SelectorShape } from "../tools";
3
3
  import { ISubWorkerInitOption, LocalWork } from "./base";
4
4
  import { ServiceWorkForFullWorker } from "./fullWorkerService";
5
+ import { BitMapEraserShape } from "../tools/pencilEraserBitMap";
6
+ import { WorkThreadEngineForFullWorker } from "./workerManager";
7
+ import { PencilEraserShape } from "../tools/pencilEraser";
8
+ import { VNodeManager } from "../vNodeManager";
5
9
  export declare class LocalWorkForFullWorker extends LocalWork {
6
- private combineUnitTime;
7
- private combineTimerId?;
8
- private combineDrawResolve?;
9
- private combineDrawActiveId?;
10
+ readonly vNodes: VNodeManager;
11
+ protected _type: string;
12
+ protected combineTimerId?: number;
13
+ protected combineDrawResolve?: (value: boolean) => void;
14
+ protected combineDrawActiveId?: string;
10
15
  protected drawWorkActiveId?: string;
11
- private effectSelectNodeData;
12
- private batchEraserWorks;
13
- private batchEraserRemoveNodes;
16
+ protected effectSelectNodeData: Set<IWorkerMessage>;
14
17
  constructor(opt: ISubWorkerInitOption);
15
- loadImageBitMap(msg: Pick<IWorkerMessage, 'toolsType' | 'opt' | 'workId'>): Promise<ImageBitmap | undefined>;
18
+ loadImageBitMap(msg: Pick<IWorkerMessage, "toolsType" | "opt" | "workId" | "isSubWorker">): Promise<ImageBitmap | undefined>;
16
19
  consumeDraw(data: IWorkerMessage, serviceWork: ServiceWorkForFullWorker): Promise<void>;
17
20
  consumeDrawAll(data: IWorkerMessage, serviceWork: ServiceWorkForFullWorker): Promise<void>;
18
21
  workShapesDone(scenePath: string, serviceWork: ServiceWorkForFullWorker): Promise<void>;
19
22
  consumeFull(data: IWorkerMessage): Promise<void>;
20
- private commandDeleteText;
21
- removeSelector(data: IWorkerMessage): Promise<void>;
23
+ removeSelector(data: IWorkerMessage, workEngine?: WorkThreadEngineForFullWorker): Promise<void>;
22
24
  removeWork(data: IWorkerMessage): Promise<void>;
23
- private removeNode;
25
+ removeNode(key: string): {
26
+ fullRect: IRectType | undefined;
27
+ drawRect: IRectType | undefined;
28
+ };
24
29
  private _removeWork;
25
30
  checkTextActive(data: IWorkerMessage): Promise<void>;
26
31
  colloctEffectSelectWork(data: IWorkerMessage): Promise<IWorkerMessage | undefined>;
@@ -28,13 +33,15 @@ export declare class LocalWorkForFullWorker extends LocalWork {
28
33
  callback?: (props: {
29
34
  res?: IMainMessage;
30
35
  param: IUpdateSelectorPropsType;
31
- postData: Pick<IBatchMainMessage, 'sp' | 'render'>;
36
+ postData: Pick<IBatchMainMessage, "sp" | "render">;
32
37
  workShapeNode: SelectorShape;
33
38
  newServiceStore: Map<string, {
34
39
  opt: BaseShapeOptions;
35
40
  toolsType: EToolsKey;
36
41
  ops?: string;
37
42
  }>;
43
+ smoothSync?: boolean;
44
+ needUndoTicker?: number;
38
45
  }) => void;
39
46
  }): Promise<IMainMessage | undefined>;
40
47
  blurSelector(data?: IWorkerMessage): Promise<void>;
@@ -43,18 +50,15 @@ export declare class LocalWorkForFullWorker extends LocalWork {
43
50
  reRenderSelector(willSyncService?: boolean): Promise<void>;
44
51
  updateFullSelectWork(data: IWorkerMessage): Promise<void>;
45
52
  destroy(): void;
46
- private drawBitMapEraser;
47
- private drawBitMapEraserFull;
48
- private drawPencilCombine;
49
- private drawSelector;
50
- private drawPencilEraser;
51
- private drawEraser;
52
- private batchEraserCombine;
53
- private drawShape;
54
- private drawPencil;
55
- private drawPencilFull;
56
- private updateBatchEraserCombineNode;
57
- private runEffectSelectWork;
53
+ protected drawEraserCombine(workId: string, drawCount: number): Promise<void>;
54
+ protected drawPencilCombine(workId: string, drawCount: number): Promise<void>;
55
+ protected drawSelector(res: IMainMessage, isLockSentEventCursor?: boolean): Promise<void>;
56
+ protected drawPencilFull(res: IMainMessage, isLockSentEventCursor?: boolean, needUndoTicker?: number): Promise<void>;
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>;
59
+ protected drawShape(res: IMainMessage): Promise<void>;
60
+ protected drawPencil(res: IMainMessage): Promise<void>;
61
+ protected runEffectSelectWork(willSyncService?: boolean): Promise<void>;
58
62
  cursorHover(msg: IWorkerMessage): Promise<void>;
59
63
  cursorBlur(): Promise<void>;
60
64
  }
@@ -1,7 +1,7 @@
1
1
  import { Group } from "spritejs";
2
2
  import { ISubWorkerInitOption } from "./base";
3
3
  import { VNodeManager } from "../vNodeManager";
4
- import { IBatchMainMessage, IServiceWorkItem, IWorkerMessage } from "../types";
4
+ import { IBatchMainMessage, IRectType, IServiceWorkItem, IWorkerMessage } from "../types";
5
5
  import { EToolsKey } from "../enum";
6
6
  import { BaseShapeOptions } from "../tools";
7
7
  import { WorkThreadEngineForFullWorker } from "./workerManager";
@@ -32,10 +32,10 @@ export declare class ServiceWorkForFullWorker implements ServiceWork {
32
32
  selectorWorkShapes: Map<string, IServiceWorkItem>;
33
33
  thread: WorkThreadEngineForFullWorker;
34
34
  protected animationId?: number | undefined;
35
- private willRunEffectSelectorIds;
36
- private runEffectId?;
37
- private noAnimationRect;
38
- private syncUnitTime;
35
+ protected willRunEffectSelectorIds: Set<string>;
36
+ protected runEffectId?: number | undefined;
37
+ protected noAnimationRect: IRectType | undefined;
38
+ protected syncUnitTime: number;
39
39
  post: (msg: IBatchMainMessage) => Promise<void>;
40
40
  constructor(opt: ISubWorkerInitOption);
41
41
  destroy(): void;
@@ -49,10 +49,10 @@ export declare class ServiceWorkForFullWorker implements ServiceWork {
49
49
  private removeNode;
50
50
  private activeWorkShape;
51
51
  private hasDiffData;
52
- private animationDraw;
53
- private runAnimation;
54
- private computNextAnimationIndex;
55
- private runEffect;
52
+ protected animationDraw(): Promise<void>;
53
+ protected runAnimation(): void;
54
+ protected computNextAnimationIndex(workShape: IServiceWorkItem, pointUnit: number): number;
55
+ protected runEffect(): void;
56
56
  private effectRunSelector;
57
57
  private activeSelectorShape;
58
58
  }
@@ -0,0 +1,28 @@
1
+ import { IActiveToolsDataType, IMainMessage, IMainMessageRenderData, IWorkerMessage } from "../index";
2
+ import { ISubWorkerInitOption } from "./base";
3
+ import { LocalWorkForFullWorker } from "./fullWorkerLocal";
4
+ import { ServiceWorkForFullWorker } from "./fullWorkerService";
5
+ import { SelectorShape, BitMapEraserShape, ArrowShape, ImageShape } from "../tools";
6
+ import { PencilEraserShape } from "../tools/pencilEraser";
7
+ import { TextShape } from "../tools/text";
8
+ import { ISvgShadowShape } from "../tools/shadowSvg";
9
+ /** 本地绘制worker 的实现 */
10
+ export declare class LocalWorkForSimpleWorker extends LocalWorkForFullWorker {
11
+ protected _type: string;
12
+ constructor(opt: ISubWorkerInitOption);
13
+ createWorkShapeNode(opt: IActiveToolsDataType & {
14
+ workId: string;
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
+ protected drawPencil(res: IMainMessage, workId?: string): Promise<void>;
17
+ protected drawShape(res: IMainMessage): Promise<void>;
18
+ protected drawSelector(res: IMainMessage, isLockSentEventCursor?: boolean, render?: IMainMessageRenderData[]): Promise<void>;
19
+ protected drawEraserCombine(workId: string): Promise<void>;
20
+ consumeDraw(data: IWorkerMessage, serviceWork: ServiceWorkForFullWorker): Promise<void>;
21
+ consumeDrawAll(data: IWorkerMessage, serviceWork: ServiceWorkForFullWorker): Promise<void>;
22
+ }
23
+ /** 服务端同步数据绘制worker 的实现 */
24
+ export declare class ServiceWorkForSimpleWorker extends ServiceWorkForFullWorker {
25
+ readonly _type = "simple";
26
+ constructor(opt: ISubWorkerInitOption);
27
+ protected animationDraw(): Promise<void>;
28
+ }
@@ -0,0 +1,27 @@
1
+ import { Group, Scene } from "spritejs";
2
+ import { ICameraOpt, ILayerOptionType, IWorkerMessage, IRectType } from "..";
3
+ import { LocalWork, ISubWorkerInitOption, IWorkerInitOption } from "./base";
4
+ import { VNodeManager } from "../vNodeManager";
5
+ export interface ISnapshotWorkInitOption extends ISubWorkerInitOption {
6
+ createScene(opt: IWorkerInitOption): Scene;
7
+ createLayer(name: string, scene: Scene, opt: ILayerOptionType, offscreenCanvas?: OffscreenCanvas): Group;
8
+ }
9
+ export declare class SnapshotWork extends LocalWork {
10
+ protected opt: ISnapshotWorkInitOption;
11
+ protected scene?: Scene | undefined;
12
+ protected cameraOpt: ICameraOpt | undefined;
13
+ vNodes?: VNodeManager;
14
+ constructor(opt: ISnapshotWorkInitOption);
15
+ createSnapshotFullLayer(sceneOpt: IWorkerInitOption, opt: ILayerOptionType): void;
16
+ destroySnapshotFullLayer(): void;
17
+ private updateScene;
18
+ private updateLayer;
19
+ setCameraOpt(cameraOpt: ICameraOpt): void;
20
+ private getOffscreen;
21
+ private getRectImageBitmap;
22
+ getSnapshot(data: IWorkerMessage): Promise<void>;
23
+ protected runFullWork(data: IWorkerMessage): Promise<IRectType | undefined>;
24
+ getSceneRect(): IRectType;
25
+ private getSnapshotRender;
26
+ getBoundingRect(data: IWorkerMessage): Promise<void>;
27
+ }
@@ -1,16 +1,15 @@
1
- import { IWorkerMessage, IRectType, EToolsKey } from "..";
1
+ import { IWorkerMessage } from "..";
2
2
  import { LocalWork, ISubWorkerInitOption } from "./base";
3
3
  export declare class LocalWorkForSubWorker extends LocalWork {
4
4
  private drawWorkActiveId?;
5
5
  constructor(opt: ISubWorkerInitOption);
6
- runFullWork(data: IWorkerMessage): Promise<IRectType | undefined>;
7
6
  runSelectWork(data: IWorkerMessage): undefined;
8
7
  workShapesDone(): void;
9
- canUseSubWorker(eToolsKey: EToolsKey): boolean;
10
8
  consumeDraw(data: IWorkerMessage): Promise<void>;
11
9
  consumeDrawAll(data: IWorkerMessage): Promise<void>;
12
10
  removeWork(data: IWorkerMessage): Promise<void>;
13
11
  private removeNode;
14
12
  private drawPencil;
15
13
  private drawShape;
14
+ private drawSelector;
16
15
  }
@@ -28,11 +28,11 @@ export declare class TopLayerWorkForSubWorker implements TopLayerWork {
28
28
  constructor(opt: ISubWorkerInitOption);
29
29
  canUseTopLayer(toolsType: EToolsKey): toolsType is EToolsKey.LaserPen;
30
30
  getWorkShape(workId: string): ILocalWorkItem | undefined;
31
- createWorkShape(workId: string, opt?: BaseShapeOptions): import("../tools").PencilShape | import("../tools").LaserPenShape | import("../tools").EraserShape | import("../tools").StarShape | import("../tools/text").TextShape | import("../tools").SelectorShape | import("../tools").ImageShape | import("../tools").ArrowShape | import("../tools/straight").StraightShape | import("../tools").EllipseShape | import("../tools").PolygonShape | import("../tools").RectangleShape | import("../tools").SpeechBalloonShape | import("../tools/pencilEraserBitMap").BitMapEraserShape | import("../tools/pencilEraser").PencilEraserShape | undefined;
31
+ createWorkShape(workId: string, opt?: BaseShapeOptions): 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/pencilEraser").PencilEraserShape | import("../tools").BitMapEraserShape | import("../tools").SelectorShape | import("../tools").ImageShape | import("../tools/shadowSvg").ISvgShadowShape | undefined;
32
32
  setWorkOptions(workId: string, opt: BaseShapeOptions): void;
33
33
  createWorkShapeNode(opt: IActiveToolsDataType & {
34
34
  workId: string;
35
- }): import("../tools").PencilShape | import("../tools").LaserPenShape | import("../tools").EraserShape | import("../tools").StarShape | import("../tools/text").TextShape | import("../tools").SelectorShape | import("../tools").ImageShape | import("../tools").ArrowShape | import("../tools/straight").StraightShape | import("../tools").EllipseShape | import("../tools").PolygonShape | import("../tools").RectangleShape | import("../tools").SpeechBalloonShape | import("../tools/pencilEraserBitMap").BitMapEraserShape | import("../tools/pencilEraser").PencilEraserShape | undefined;
35
+ }): 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/pencilEraser").PencilEraserShape | import("../tools").BitMapEraserShape | import("../tools").SelectorShape | import("../tools").ImageShape | import("../tools/shadowSvg").ISvgShadowShape | undefined;
36
36
  clearAllWorkShapesCache(): void;
37
37
  setToolsOpt(opt: IActiveToolsDataType): void;
38
38
  getToolsOpt(): IActiveToolsDataType | undefined;
@@ -1,11 +1,14 @@
1
- import { Group } from "spritejs";
1
+ import { Group, Scene } from "spritejs";
2
2
  import { ECanvasShowType, EDataType } from "../enum";
3
- import { IBatchMainMessage, ICameraOpt, ILayerOptionType, IWorkerMessage } from "../types";
4
- import { IWorkerInitOption, WorkThreadEngineBase } from "./base";
3
+ import { MethodBuilderWorker } from "../msgEvent/forWorker";
4
+ import { IBatchMainMessage, ICameraOpt, ILayerOptionType, IMainMessageRenderData, IWorkerMessage } from "../types";
5
+ import { ISimpleWorkerInitOption, IWorkerInitOption, WorkThreadEngineBase } from "./base";
5
6
  import { LocalWorkForFullWorker } from "./fullWorkerLocal";
6
7
  import { ServiceWorkForFullWorker } from "./fullWorkerService";
7
8
  import { LocalWorkForSubWorker } from "./subWorkerLocal";
8
9
  import { TopLayerWorkForSubWorker } from "./subWorkerTopLayer";
10
+ import { LocalWorkForSimpleWorker, ServiceWorkForSimpleWorker } from "./simpleWorker";
11
+ import { SnapshotWork } from "./snapshotWork";
9
12
  export declare enum EWorkThreadType {
10
13
  Full = "full",
11
14
  Sub = "sub"
@@ -14,25 +17,48 @@ export declare class WorkerManager<T extends WorkThreadEngineBase> {
14
17
  readonly _self: Worker;
15
18
  readonly version: string;
16
19
  protected type: EWorkThreadType;
17
- protected hasPriorityDraw: boolean;
18
20
  protected workThreadMap: Map<string, T>;
19
21
  constructor(worker: Worker, type: EWorkThreadType);
20
22
  private init;
23
+ private setFontFaces;
24
+ private isFontAvailable;
21
25
  private register;
22
- post(msg: IBatchMainMessage, transfer?: Transferable[]): void;
26
+ post: (msg: IBatchMainMessage, transfer?: Transferable[]) => void;
27
+ }
28
+ /** sub worker */
29
+ export declare class WorkThreadEngineForSubWorker extends WorkThreadEngineBase {
30
+ readonly type: EWorkThreadType;
31
+ _post: (msg: IBatchMainMessage, transfer?: Transferable[] | undefined) => void;
32
+ topLayer?: Group;
33
+ serviceWork: undefined;
34
+ localWork: LocalWorkForSubWorker;
35
+ topLayerWork?: TopLayerWorkForSubWorker;
36
+ snapshotWork: SnapshotWork;
37
+ constructor(viewId: string, opt: IWorkerInitOption, _post: (msg: IBatchMainMessage, transfer?: Transferable[]) => void);
38
+ combinePost(): Promise<void>;
39
+ on(msg: IWorkerMessage): Promise<void>;
40
+ protected createLocalWork(data: IWorkerMessage): void;
41
+ removeNode(data: IWorkerMessage): Promise<void>;
42
+ getLayer(drawCanvas: ECanvasShowType): Group;
43
+ getOffscreen(drawCanvas: ECanvasShowType): OffscreenCanvas;
44
+ consumeDraw(dataType: EDataType, data: IWorkerMessage): Promise<void>;
45
+ consumeDrawAll(_type: EDataType, data: IWorkerMessage): Promise<void>;
46
+ clearAll(): Promise<void>;
47
+ private getRectImageBitmap;
48
+ protected updateLayer(layerOpt: ILayerOptionType): void;
49
+ updateDpr(dpr: number): Promise<void>;
50
+ updateCamera(msg: IWorkerMessage): Promise<void>;
51
+ setCameraOpt(cameraOpt: ICameraOpt, layer?: Group): void;
23
52
  }
24
53
  /** full worker */
25
54
  export declare class WorkThreadEngineForFullWorker extends WorkThreadEngineBase {
26
- readonly type: EWorkThreadType;
27
55
  serviceDrawLayer: Group;
28
56
  localDrawLayer: Group;
29
57
  snapshotFullLayer: undefined;
30
- private methodBuilder;
58
+ protected methodBuilder: MethodBuilderWorker;
31
59
  localWork: LocalWorkForFullWorker;
32
60
  serviceWork: ServiceWorkForFullWorker;
33
- protected _post: (msg: IBatchMainMessage, transfer?: Transferable[] | undefined) => void;
34
- private taskUpdateCameraId?;
35
- private debounceUpdateCameraId?;
61
+ _post: (msg: IBatchMainMessage, transfer?: Transferable[] | undefined) => void;
36
62
  private debounceUpdateCache;
37
63
  constructor(viewId: string, opt: IWorkerInitOption, _post: (msg: IBatchMainMessage, transfer?: Transferable[]) => void);
38
64
  combinePost(): Promise<void>;
@@ -47,36 +73,26 @@ export declare class WorkThreadEngineForFullWorker extends WorkThreadEngineBase
47
73
  consumeFull(type: EDataType, data: IWorkerMessage): Promise<void>;
48
74
  consumeDraw(type: EDataType, data: IWorkerMessage): Promise<void>;
49
75
  consumeDrawAll(type: EDataType, data: IWorkerMessage): Promise<void>;
76
+ updateDpr(dpr: number): Promise<void>;
50
77
  updateCamera(msg: IWorkerMessage): Promise<void>;
51
- private getRectImageBitmap;
78
+ protected getRectImageBitmap(renderData: Required<Pick<IMainMessageRenderData, "rect" | "drawCanvas">>): Promise<ImageBitmap>;
52
79
  private cursorHover;
53
80
  private cursorBlur;
54
81
  destroy(): void;
55
82
  }
56
- /** sub worker */
57
- export declare class WorkThreadEngineForSubWorker extends WorkThreadEngineBase {
58
- readonly type: EWorkThreadType;
59
- protected _post: (msg: IBatchMainMessage, transfer?: Transferable[] | undefined) => void;
60
- topLayer: Group;
61
- snapshotFullLayer: Group | undefined;
62
- serviceWork: undefined;
63
- localWork: LocalWorkForSubWorker;
64
- topLayerWork: TopLayerWorkForSubWorker;
65
- constructor(viewId: string, opt: IWorkerInitOption, _post: (msg: IBatchMainMessage, transfer?: Transferable[]) => void);
66
- combinePost(): Promise<void>;
67
- getLayer(drawCanvas: ECanvasShowType, isSnapshot?: boolean): Group;
83
+ /** simple worker */
84
+ export declare class WorkThreadEngineForSimpleWorker extends WorkThreadEngineForFullWorker {
85
+ private snapshotWork;
86
+ localDrawScene?: Scene;
87
+ serviceDrawScene?: Scene;
88
+ private offscreenCanvas?;
89
+ localWork: LocalWorkForSimpleWorker;
90
+ serviceWork: ServiceWorkForSimpleWorker;
91
+ protected createRenderLayer(scene: Scene, opt: ISimpleWorkerInitOption, targetOffscreenCanvas?: OffscreenCanvas): void;
92
+ protected createScene(opt: ISimpleWorkerInitOption, targetOffscreenCanvas?: OffscreenCanvas): Scene;
93
+ protected combinePostData(): IBatchMainMessage;
68
94
  on(msg: IWorkerMessage): Promise<void>;
69
- protected createLocalWork(data: IWorkerMessage): void;
70
- removeNode(data: IWorkerMessage): Promise<void>;
71
- getOffscreen(drawCanvas: ECanvasShowType, isSnapshot?: boolean): OffscreenCanvas;
72
- consumeDraw(dataType: EDataType, data: IWorkerMessage): Promise<void>;
73
- consumeDrawAll(_type: EDataType, data: IWorkerMessage): Promise<void>;
74
- clearAll(): Promise<void>;
75
- private getRectImageBitmap;
76
- protected updateLayer(layerOpt: ILayerOptionType): void;
77
- updateCamera(msg: IWorkerMessage): Promise<void>;
78
- setCameraOpt(cameraOpt: ICameraOpt, layer?: Group): void;
79
- private getSnapshot;
80
- private getSnapshotRender;
81
- private getBoundingRect;
95
+ setCameraOpt(cameraOpt: ICameraOpt): void;
96
+ updateDpr(dpr: number): Promise<void>;
97
+ constructor(viewId: string, opt: ISimpleWorkerInitOption, _post: (msg: IBatchMainMessage, transfer?: Transferable[]) => void);
82
98
  }
@@ -1,5 +1,4 @@
1
- import { EventMessageType, EvevtWorkState, IMainMessage } from "../core";
2
- import { EventCollector } from "../collector/eventCollector";
1
+ import { EventMessageType, EventWorkState, IMainMessage } from "../core";
3
2
  import { BaseSubWorkModuleProps, Displayer, RoomMember } from "../plugin/types";
4
3
  import { MemberDiff, RoomMemberManager } from "../members";
5
4
  import type { BaseApplianceManager } from "../plugin/baseApplianceManager";
@@ -10,7 +9,7 @@ export declare enum CursorColloctSource {
10
9
  }
11
10
  export type IServiceDrawWorkItem = {
12
11
  consumPoint: [number | undefined, number | undefined];
13
- workState: EvevtWorkState;
12
+ workState: EventWorkState;
14
13
  viewId: string;
15
14
  timestamp: number;
16
15
  };
@@ -21,7 +20,7 @@ export type IServiceEventWorkItem = {
21
20
  };
22
21
  export type IMagixEventType = {
23
22
  type: EventMessageType;
24
- op: Pick<IServiceEventWorkItem, 'consumPoint' | 'viewId'>[];
23
+ op: Pick<IServiceEventWorkItem, "consumPoint" | "viewId">[];
25
24
  uid: string;
26
25
  };
27
26
  export type CursorInfo = {
@@ -32,17 +31,17 @@ export type CursorInfo = {
32
31
  export type CursorInfoMapItem = CursorInfo & {
33
32
  timestamp: number;
34
33
  type: CursorColloctSource;
35
- workState?: EvevtWorkState;
34
+ workState?: EventWorkState;
36
35
  };
37
36
  export declare abstract class CursorManager {
38
37
  /** 内部消息管理器 */
39
38
  abstract readonly internalMsgEmitter: EventEmitter2;
40
39
  /** 插件管理器 */
41
40
  abstract readonly control: BaseApplianceManager;
42
- /** 事件收集器 */
43
- abstract eventCollector?: EventCollector;
44
41
  /** 房间成员管理器 */
45
42
  abstract readonly roomMember: RoomMemberManager;
43
+ /** 是否启用cursor */
44
+ abstract readonly isEnableCursor: boolean;
46
45
  /** 激活事件收集器 */
47
46
  abstract activeCollector(): void;
48
47
  /** 同步事件 */
@@ -59,12 +58,12 @@ export declare abstract class CursorManager {
59
58
  abstract updateRoomMembers(diff: MemberDiff): void;
60
59
  /** 清空指定view下的所有cursor */
61
60
  abstract clearViewCursor(viewId: string): void;
62
- /** 同步cursor */
63
- abstract dispatchMagixEvent(): void;
64
61
  }
65
62
  export declare class CursorManagerImpl implements CursorManager {
66
63
  readonly expirationTime: number;
64
+ readonly isEnableCursor: boolean;
67
65
  readonly internalMsgEmitter: EventEmitter2;
66
+ readonly publicMsgEmitter: EventEmitter2;
68
67
  readonly control: BaseApplianceManager;
69
68
  readonly eventName: string;
70
69
  displayer?: Displayer;
@@ -79,7 +78,6 @@ export declare class CursorManagerImpl implements CursorManager {
79
78
  private cursorInfoMap;
80
79
  private doneRenderCursorInfoMap;
81
80
  constructor(props: BaseSubWorkModuleProps);
82
- eventCollector?: EventCollector | undefined;
83
81
  activeCollector(): void;
84
82
  private mainMagixEventListener;
85
83
  onFocusViewChange(): void;
@@ -90,7 +88,7 @@ export declare class CursorManagerImpl implements CursorManager {
90
88
  private checkDrawWorks;
91
89
  private animationCursor;
92
90
  sendEvent(point: [number | undefined, number | undefined], viewId: string): void;
93
- dispatchMagixEvent(): void;
91
+ private dispatchMagixEvent;
94
92
  collectServiceCursor(data: IMainMessage): void;
95
93
  unabled(): void;
96
94
  clearViewCursor(viewId: string): void;
@@ -9,3 +9,4 @@ export declare const BarPadding: Margin;
9
9
  export declare const BarMargin: Margin;
10
10
  export declare const FontSizeList: readonly number[];
11
11
  export declare const SpeechBalloonPlacements: SpeechBalloonPlacement[];
12
+ export declare const DefaultCursorIconMap: Map<string, string>;
@@ -8,6 +8,7 @@ export declare const CursorManagerComponent: (props: {
8
8
  y?: number;
9
9
  roomMember?: RoomMember;
10
10
  };
11
+ isEnableCursor: boolean;
11
12
  }) => React.JSX.Element;
12
13
  export declare const CursorManager: (props: {
13
14
  className: string;