@netless/appliance-plugin 1.0.1 → 1.0.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +52 -14
- package/cdn/cdn.js +1 -1
- package/cdn/fullWorker-uIttd_.js +437 -0
- package/cdn/subWorker-4wkCzC.js +437 -0
- package/dist/appliance-plugin.js +1 -1
- package/dist/appliance-plugin.mjs +14 -13
- package/dist/collector/base.d.ts +3 -1
- package/dist/collector/collector.d.ts +5 -4
- package/dist/collector/eventCollector.d.ts +2 -1
- package/dist/collector/magixEventCollector.d.ts +30 -0
- package/dist/collector/types.d.ts +27 -7
- package/dist/component/textEditor/manager.d.ts +2 -2
- package/dist/component/textEditor/types.d.ts +0 -1
- package/dist/component/textEditor/view.d.ts +4 -1
- package/dist/core/const.d.ts +2 -0
- package/dist/core/enum.d.ts +12 -5
- package/dist/core/mainEngine.d.ts +31 -10
- package/dist/core/mainThread/base.d.ts +6 -2
- package/dist/core/mainThread/snapshotThread.d.ts +3 -3
- package/dist/core/mainThread/subLocalThread.d.ts +18 -10
- package/dist/core/mainThread/subServiceThread.d.ts +2 -1
- package/dist/core/mainThread/subTopThread.d.ts +15 -8
- package/dist/core/msgEvent/deleteNode/forMainThread.d.ts +1 -5
- package/dist/core/msgEvent/deleteNode/forWorker.d.ts +1 -5
- package/dist/core/msgEvent/scaleNode/forMain.d.ts +7 -6
- package/dist/core/msgEvent/setFont/forMain.d.ts +2 -1
- package/dist/core/msgEvent/translateNode/forMain.d.ts +0 -1
- package/dist/core/tools/arrow.d.ts +36 -7
- package/dist/core/tools/base.d.ts +22 -8
- package/dist/core/tools/ellipse.d.ts +36 -7
- package/dist/core/tools/eraser.d.ts +40 -4
- package/dist/core/tools/image.d.ts +9 -5
- package/dist/core/tools/laserPen.d.ts +34 -4
- package/dist/core/tools/pencil.d.ts +37 -4
- package/dist/core/tools/polygon.d.ts +36 -7
- package/dist/core/tools/rectangle.d.ts +36 -7
- package/dist/core/tools/selector.d.ts +52 -5
- package/dist/core/tools/speechBalloon.d.ts +36 -8
- package/dist/core/tools/star.d.ts +36 -7
- package/dist/core/tools/straight.d.ts +36 -7
- package/dist/core/tools/text.d.ts +20 -10
- package/dist/core/tools/utils.d.ts +6 -5
- package/dist/core/types.d.ts +1 -3
- package/dist/core/utils/index.d.ts +10 -0
- package/dist/core/utils/math.d.ts +9 -2
- package/dist/core/{mainThread/vNodeManager.d.ts → vNodeManager.d.ts} +10 -3
- package/dist/core/worker/base.d.ts +18 -16
- package/dist/core/worker/fullWorkerLocal.d.ts +18 -9
- package/dist/core/worker/fullWorkerService.d.ts +10 -9
- package/dist/core/worker/subWorkerLocal.d.ts +5 -8
- package/dist/core/worker/subWorkerTopLayer.d.ts +13 -9
- package/dist/core/worker/workerManager.d.ts +18 -10
- package/dist/cursors/index.d.ts +44 -18
- package/dist/displayer/floatBtns/del.d.ts +1 -1
- package/dist/displayer/floatBtns/lock.d.ts +1 -1
- package/dist/fullWorker.js +141 -157
- package/dist/index-BdHH_zhp.js +1 -0
- package/dist/index-RCWmSJU4.mjs +9601 -0
- package/dist/index-RcUgPE7z.mjs +5570 -0
- package/dist/index-a-uKt6aD.js +1 -0
- package/dist/plugin/applianceSinglePlugin.d.ts +1 -0
- package/dist/plugin/baseApplianceManager.d.ts +7 -1
- package/dist/plugin/baseViewContainerManager.d.ts +0 -3
- package/dist/plugin/const.d.ts +11 -1
- package/dist/plugin/displayerView.d.ts +3 -5
- package/dist/plugin/multi/containerManager.d.ts +2 -1
- package/dist/style.css +1 -1
- package/dist/subWorker.js +141 -157
- package/package.json +2 -3
- package/cdn/fullWorker-CIvt1j.js +0 -453
- package/cdn/subWorker-BE-0dg.js +0 -453
- package/dist/core/worker/vNodeManager.d.ts +0 -34
- package/dist/index-BcIJbozZ.js +0 -1
- package/dist/index-C1YKkWHE.mjs +0 -9090
- package/dist/index-ClJPZxV-.mjs +0 -5462
- package/dist/index-SsMz_ohn.js +0 -1
|
@@ -11,7 +11,8 @@ export declare enum EWorkThreadType {
|
|
|
11
11
|
Sub = "sub"
|
|
12
12
|
}
|
|
13
13
|
export declare class WorkerManager<T extends WorkThreadEngineBase> {
|
|
14
|
-
_self: Worker;
|
|
14
|
+
readonly _self: Worker;
|
|
15
|
+
readonly version: string;
|
|
15
16
|
protected type: EWorkThreadType;
|
|
16
17
|
protected workThreadMap: Map<string, T>;
|
|
17
18
|
constructor(worker: Worker, type: EWorkThreadType);
|
|
@@ -21,6 +22,7 @@ export declare class WorkerManager<T extends WorkThreadEngineBase> {
|
|
|
21
22
|
}
|
|
22
23
|
/** full worker */
|
|
23
24
|
export declare class WorkThreadEngineForFullWorker extends WorkThreadEngineBase {
|
|
25
|
+
readonly type: EWorkThreadType;
|
|
24
26
|
serviceDrawLayer: Group;
|
|
25
27
|
localDrawLayer: Group;
|
|
26
28
|
snapshotFullLayer: undefined;
|
|
@@ -28,25 +30,30 @@ export declare class WorkThreadEngineForFullWorker extends WorkThreadEngineBase
|
|
|
28
30
|
localWork: LocalWorkForFullWorker;
|
|
29
31
|
serviceWork: ServiceWorkForFullWorker;
|
|
30
32
|
protected _post: (msg: IBatchMainMessage, transfer?: Transferable[] | undefined) => void;
|
|
33
|
+
private taskUpdateCameraId?;
|
|
34
|
+
private debounceUpdateCameraId?;
|
|
35
|
+
private debounceUpdateCache;
|
|
31
36
|
constructor(viewId: string, opt: IWorkerInitOption, _post: (msg: IBatchMainMessage, transfer?: Transferable[]) => void);
|
|
32
37
|
combinePost(): Promise<void>;
|
|
33
38
|
on(msg: IWorkerMessage): Promise<void>;
|
|
34
39
|
removeNode(data: IWorkerMessage): Promise<void>;
|
|
35
|
-
checkTextActive(data: IWorkerMessage): void
|
|
36
|
-
clearAll(): void
|
|
40
|
+
checkTextActive(data: IWorkerMessage): Promise<void>;
|
|
41
|
+
clearAll(): Promise<void>;
|
|
37
42
|
protected updateLayer(layerOpt: ILayerOptionType): void;
|
|
38
43
|
setCameraOpt(cameraOpt: ICameraOpt): void;
|
|
39
44
|
protected getLayer(drawCanvas: ECanvasShowType): Group | undefined;
|
|
40
45
|
getOffscreen(drawCanvas: ECanvasShowType): OffscreenCanvas;
|
|
41
46
|
consumeFull(type: EDataType, data: IWorkerMessage): Promise<void>;
|
|
42
|
-
consumeDraw(type: EDataType, data: IWorkerMessage): void
|
|
43
|
-
consumeDrawAll(type: EDataType, data: IWorkerMessage): void
|
|
44
|
-
|
|
47
|
+
consumeDraw(type: EDataType, data: IWorkerMessage): Promise<void>;
|
|
48
|
+
consumeDrawAll(type: EDataType, data: IWorkerMessage): Promise<void>;
|
|
49
|
+
updateCamera(msg: IWorkerMessage): Promise<void>;
|
|
45
50
|
private getRectImageBitmap;
|
|
46
51
|
private cursorHover;
|
|
52
|
+
private cursorBlur;
|
|
47
53
|
}
|
|
48
54
|
/** sub worker */
|
|
49
55
|
export declare class WorkThreadEngineForSubWorker extends WorkThreadEngineBase {
|
|
56
|
+
readonly type: EWorkThreadType;
|
|
50
57
|
protected _post: (msg: IBatchMainMessage, transfer?: Transferable[] | undefined) => void;
|
|
51
58
|
topLayer: Group;
|
|
52
59
|
snapshotFullLayer: Group | undefined;
|
|
@@ -57,14 +64,15 @@ export declare class WorkThreadEngineForSubWorker extends WorkThreadEngineBase {
|
|
|
57
64
|
combinePost(): Promise<void>;
|
|
58
65
|
getLayer(drawCanvas: ECanvasShowType, isSnapshot?: boolean): Group;
|
|
59
66
|
on(msg: IWorkerMessage): Promise<void>;
|
|
67
|
+
protected createLocalWork(data: IWorkerMessage): void;
|
|
60
68
|
removeNode(data: IWorkerMessage): Promise<void>;
|
|
61
69
|
getOffscreen(drawCanvas: ECanvasShowType, isSnapshot?: boolean): OffscreenCanvas;
|
|
62
|
-
consumeDraw(
|
|
63
|
-
consumeDrawAll(_type: EDataType, data: IWorkerMessage): void
|
|
64
|
-
clearAll(): void
|
|
70
|
+
consumeDraw(dataType: EDataType, data: IWorkerMessage): Promise<void>;
|
|
71
|
+
consumeDrawAll(_type: EDataType, data: IWorkerMessage): Promise<void>;
|
|
72
|
+
clearAll(): Promise<void>;
|
|
65
73
|
private getRectImageBitmap;
|
|
66
74
|
protected updateLayer(layerOpt: ILayerOptionType): void;
|
|
67
|
-
|
|
75
|
+
updateCamera(msg: IWorkerMessage): Promise<void>;
|
|
68
76
|
setCameraOpt(cameraOpt: ICameraOpt, layer?: Group): void;
|
|
69
77
|
private getSnapshot;
|
|
70
78
|
private getSnapshotRender;
|
package/dist/cursors/index.d.ts
CHANGED
|
@@ -1,19 +1,28 @@
|
|
|
1
|
-
import { EvevtWorkState, IMainMessage } from "../core";
|
|
1
|
+
import { EventMessageType, EvevtWorkState, IMainMessage } from "../core";
|
|
2
2
|
import { EventCollector } from "../collector/eventCollector";
|
|
3
|
-
import { BaseSubWorkModuleProps, RoomMember } from "../plugin/types";
|
|
4
|
-
import { RoomMemberManager } from "../members";
|
|
3
|
+
import { BaseSubWorkModuleProps, Displayer, RoomMember } from "../plugin/types";
|
|
4
|
+
import { MemberDiff, RoomMemberManager } from "../members";
|
|
5
5
|
import type { BaseApplianceManager } from "../plugin/baseApplianceManager";
|
|
6
6
|
import EventEmitter2 from "eventemitter2";
|
|
7
7
|
export declare enum CursorColloctSource {
|
|
8
8
|
Event = 0,
|
|
9
|
-
|
|
9
|
+
Draw = 1
|
|
10
10
|
}
|
|
11
|
-
export type
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
11
|
+
export type IServiceDrawWorkItem = {
|
|
12
|
+
consumPoint: [number | undefined, number | undefined];
|
|
13
|
+
workState: EvevtWorkState;
|
|
14
|
+
viewId: string;
|
|
15
|
+
timestamp: number;
|
|
16
|
+
};
|
|
17
|
+
export type IServiceEventWorkItem = {
|
|
18
|
+
consumPoint: [number | undefined, number | undefined];
|
|
19
|
+
viewId: string;
|
|
20
|
+
timestamp: number;
|
|
21
|
+
};
|
|
22
|
+
export type IMagixEventType = {
|
|
23
|
+
type: EventMessageType;
|
|
24
|
+
op: Pick<IServiceEventWorkItem, 'consumPoint' | 'viewId'>[];
|
|
25
|
+
uid: string;
|
|
17
26
|
};
|
|
18
27
|
export type CursorInfo = {
|
|
19
28
|
x?: number;
|
|
@@ -22,6 +31,8 @@ export type CursorInfo = {
|
|
|
22
31
|
};
|
|
23
32
|
export type CursorInfoMapItem = CursorInfo & {
|
|
24
33
|
timestamp: number;
|
|
34
|
+
type: CursorColloctSource;
|
|
35
|
+
workState?: EvevtWorkState;
|
|
25
36
|
};
|
|
26
37
|
export declare abstract class CursorManager {
|
|
27
38
|
/** 内部消息管理器 */
|
|
@@ -44,30 +55,45 @@ export declare abstract class CursorManager {
|
|
|
44
55
|
abstract destroy(): void;
|
|
45
56
|
/** 激活获焦的focusViewId */
|
|
46
57
|
abstract onFocusViewChange(): void;
|
|
58
|
+
/** 房间成员列表变更 */
|
|
59
|
+
abstract updateRoomMembers(diff: MemberDiff): void;
|
|
60
|
+
/** 清空指定view下的所有cursor */
|
|
61
|
+
abstract clearViewCursor(viewId: string): void;
|
|
62
|
+
/** 同步cursor */
|
|
63
|
+
abstract dispatchMagixEvent(): void;
|
|
47
64
|
}
|
|
48
65
|
export declare class CursorManagerImpl implements CursorManager {
|
|
49
|
-
readonly expirationTime
|
|
66
|
+
readonly expirationTime: number;
|
|
50
67
|
readonly internalMsgEmitter: EventEmitter2;
|
|
51
68
|
readonly control: BaseApplianceManager;
|
|
52
|
-
|
|
69
|
+
readonly eventName: string;
|
|
70
|
+
displayer?: Displayer;
|
|
53
71
|
readonly roomMember: RoomMemberManager;
|
|
54
72
|
private animationId?;
|
|
55
|
-
private
|
|
56
|
-
private
|
|
57
|
-
private
|
|
73
|
+
private maxLastSyncTime;
|
|
74
|
+
private willSendEventWorkers;
|
|
75
|
+
private willConsumeEventWorkers;
|
|
76
|
+
private sendEventTimerId?;
|
|
58
77
|
private animationDrawWorkers;
|
|
78
|
+
private animationEventWorkers;
|
|
59
79
|
private cursorInfoMap;
|
|
80
|
+
private doneRenderCursorInfoMap;
|
|
60
81
|
constructor(props: BaseSubWorkModuleProps);
|
|
82
|
+
eventCollector?: EventCollector | undefined;
|
|
61
83
|
activeCollector(): void;
|
|
84
|
+
private mainMagixEventListener;
|
|
62
85
|
onFocusViewChange(): void;
|
|
63
|
-
|
|
86
|
+
updateRoomMembers(diff: MemberDiff): void;
|
|
64
87
|
private getKey;
|
|
65
88
|
private getUidAndviewId;
|
|
66
|
-
private animationCursor;
|
|
67
|
-
private activeDrawWorkShape;
|
|
68
89
|
private runAnimation;
|
|
90
|
+
private checkDrawWorks;
|
|
91
|
+
private animationCursor;
|
|
69
92
|
sendEvent(point: [number | undefined, number | undefined], viewId: string): void;
|
|
93
|
+
dispatchMagixEvent(): void;
|
|
70
94
|
collectServiceCursor(data: IMainMessage): void;
|
|
71
95
|
unabled(): void;
|
|
96
|
+
clearViewCursor(viewId: string): void;
|
|
97
|
+
stopAnimation(): void;
|
|
72
98
|
destroy(): void;
|
|
73
99
|
}
|
|
@@ -2,6 +2,6 @@ import React from "react";
|
|
|
2
2
|
import { ApplianceViewManagerLike } from "../../plugin/types";
|
|
3
3
|
export declare const LockBtn: (props: {
|
|
4
4
|
workIds?: string[];
|
|
5
|
-
|
|
5
|
+
mananger: ApplianceViewManagerLike;
|
|
6
6
|
islocked?: boolean;
|
|
7
7
|
}) => React.JSX.Element;
|