@netless/appliance-plugin 1.1.22-beta.1 → 1.1.22-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.
- package/cdn/cdn.js +1 -1
- package/cdn/fullWorker-Cmt1v9.js +516 -0
- package/cdn/subWorker-B8K4_U.js +516 -0
- package/dist/appliance-plugin.js +1 -1
- package/dist/appliance-plugin.mjs +13 -13
- package/dist/component/textEditor/manager.d.ts +2 -0
- package/dist/core/enum.d.ts +0 -2
- package/dist/core/mainEngine.d.ts +19 -7
- package/dist/core/mainThread/base.d.ts +2 -2
- package/dist/core/mainThread/index.d.ts +1 -1
- package/dist/core/msgEvent/baseForWorker.d.ts +2 -1
- package/dist/core/tools/arrow.d.ts +3 -20
- package/dist/core/tools/base.d.ts +2 -0
- package/dist/core/tools/ellipse.d.ts +3 -20
- package/dist/core/tools/image.d.ts +2 -2
- package/dist/core/tools/pencil.d.ts +6 -5
- package/dist/core/tools/polygon.d.ts +3 -20
- package/dist/core/tools/rectangle.d.ts +3 -20
- package/dist/core/tools/selector.d.ts +10 -21
- package/dist/core/tools/speechBalloon.d.ts +3 -20
- package/dist/core/tools/star.d.ts +3 -20
- package/dist/core/tools/straight.d.ts +3 -20
- package/dist/core/tools/text.d.ts +2 -1
- package/dist/core/types.d.ts +14 -0
- package/dist/core/utils/indexDB.d.ts +17 -0
- package/dist/core/worker/base.d.ts +17 -12
- package/dist/core/worker/fullWorkerLocal.d.ts +25 -15
- package/dist/core/worker/fullWorkerService.d.ts +9 -9
- package/dist/core/worker/simpleWorker.d.ts +27 -0
- package/dist/core/worker/snapshotWork.d.ts +27 -0
- package/dist/core/worker/subWorkerLocal.d.ts +1 -3
- package/dist/core/worker/workerManager.d.ts +48 -34
- package/dist/fullWorker.js +252 -176
- package/dist/index-CNsKOzf9.mjs +9527 -0
- package/dist/index-CoK9t8SC.js +1 -0
- package/dist/index-DLovHS7O.mjs +14783 -0
- package/dist/index-DiIjscTK.js +1 -0
- package/dist/plugin/baseApplianceManager.d.ts +10 -7
- package/dist/plugin/baseViewContainerManager.d.ts +46 -80
- package/dist/plugin/displayerView.d.ts +2 -2
- package/dist/plugin/multi/displayer/appViewDisplayerManager.d.ts +2 -2
- package/dist/plugin/multi/displayer/mainViewDisplayerManager.d.ts +2 -2
- package/dist/plugin/single/displayer/mainViewDisplayerManager.d.ts +2 -3
- package/dist/plugin/types.d.ts +13 -8
- package/dist/style.css +1 -1
- package/dist/subWorker.js +252 -176
- package/package.json +4 -2
- package/cdn/fullWorker-BQclbf.js +0 -440
- package/cdn/subWorker-Co2GgG.js +0 -440
- package/dist/core/mainThread/workerMainThread.d.ts +0 -100
- package/dist/index-7Ry75r2W.js +0 -1
- package/dist/index-CEBD0CPi.mjs +0 -2779
- package/dist/index-Cyb4w2Wb.mjs +0 -21456
- package/dist/index-ggI7Ru6d.js +0 -1
|
@@ -3,7 +3,7 @@ import { MemberState, AppliancePluginLike } from "./types";
|
|
|
3
3
|
import { Collector, ViewId } from "../collector";
|
|
4
4
|
import { RoomMemberManager } from "../members";
|
|
5
5
|
import { TextEditorManager } from "../component/textEditor";
|
|
6
|
-
import type { Camera, Displayer, DisplayerCallbacks, IconifyInformation, Player,
|
|
6
|
+
import type { Camera, Displayer, DisplayerCallbacks, IconifyInformation, Player, Rectangle, RequiredAppliancePluginOptions, Room, RoomMember, _ArrayTrue } from "./types";
|
|
7
7
|
import { CursorManager } from "../cursors";
|
|
8
8
|
import { ViewContainerManager } from "./baseViewContainerManager";
|
|
9
9
|
import { MasterControlForWorker } from "../core/mainEngine";
|
|
@@ -35,7 +35,6 @@ export declare abstract class BaseApplianceManager {
|
|
|
35
35
|
private _disableEraseText?;
|
|
36
36
|
private _disableCameraTransform?;
|
|
37
37
|
private _disableUseWorker?;
|
|
38
|
-
priority: PriorityType;
|
|
39
38
|
effectResolve?: (value: boolean) => void;
|
|
40
39
|
readonly hotkeyManager: HotkeyManager;
|
|
41
40
|
readonly pluginOptions: RequiredAppliancePluginOptions;
|
|
@@ -45,8 +44,8 @@ export declare abstract class BaseApplianceManager {
|
|
|
45
44
|
readonly worker: MasterControlForWorker;
|
|
46
45
|
abstract readonly viewContainerManager: ViewContainerManager;
|
|
47
46
|
readonly renderControl: RenderCotrolImple;
|
|
48
|
-
readonly miniMapManager
|
|
49
|
-
readonly pluginManager
|
|
47
|
+
readonly miniMapManager?: MiniMapManagerImpl;
|
|
48
|
+
readonly pluginManager?: PluginManager;
|
|
50
49
|
private _isPolyfill;
|
|
51
50
|
constructor(params: BaseApplianceManagerProps);
|
|
52
51
|
hasPolyfillMethod(methodName: "requestIdleCallback" | "cancelIdleCallback"): boolean;
|
|
@@ -67,8 +66,11 @@ export declare abstract class BaseApplianceManager {
|
|
|
67
66
|
set disableCameraTransform(bol: boolean);
|
|
68
67
|
get disableUseWorker(): boolean;
|
|
69
68
|
set disableUseWorker(bol: boolean);
|
|
70
|
-
|
|
71
|
-
|
|
69
|
+
get hasOffscreenCanvas(): boolean;
|
|
70
|
+
get canUseTransferControlToOffscreen(): boolean;
|
|
71
|
+
get isUseOffscreenTransfer(): boolean;
|
|
72
|
+
/** 是否使用简单模式, 简单模式则无需开启 miniMap 和 plugin */
|
|
73
|
+
get isUseSimple(): boolean;
|
|
72
74
|
bindPlugin(plugin: AppliancePluginLike): void;
|
|
73
75
|
/** 激活 plugin */
|
|
74
76
|
abstract activePlugin(): void;
|
|
@@ -128,5 +130,6 @@ export declare abstract class BaseApplianceManager {
|
|
|
128
130
|
createMiniMap(viewId: string, div: HTMLElement): Promise<void>;
|
|
129
131
|
destroyMiniMap(viewId: string): Promise<void>;
|
|
130
132
|
insertIconify(viewId: string, iconifyInfo: IconifyInformation): void;
|
|
131
|
-
usePlugin(plugin: Plugin): void;
|
|
133
|
+
usePlugin(plugin: Plugin): void | undefined;
|
|
134
|
+
stopDraw(viewId: string): Promise<void>;
|
|
132
135
|
}
|
|
@@ -2,6 +2,8 @@ import type EventEmitter2 from "eventemitter2";
|
|
|
2
2
|
import { ICameraOpt, ILayerOptionType, IMainMessageRenderData, IOffscreenCanvasOptionType, ViewWorkerOptions } from "../core/types";
|
|
3
3
|
import { BaseSubWorkModuleProps, ApplianceManagerLike } from "./types";
|
|
4
4
|
import type { CameraState, View } from "./types";
|
|
5
|
+
import type { DebouncedFunc, DebouncedFuncLeading } from "lodash";
|
|
6
|
+
import { EToolsKey } from "../core/enum";
|
|
5
7
|
import { ShowFloatBarMsgValue } from "../displayer/types";
|
|
6
8
|
import { UndoRedoMethod } from "../undo";
|
|
7
9
|
import { BaseViewDisplayer } from "./displayerView";
|
|
@@ -66,9 +68,7 @@ export declare abstract class ViewContainerManager {
|
|
|
66
68
|
updateTextEditorInfo(viewId: string, activeTextId?: string): void;
|
|
67
69
|
setActiveMiniMap(viewId: string, show?: boolean): void;
|
|
68
70
|
}
|
|
69
|
-
|
|
70
|
-
export declare abstract class AppViewDisplayerManager {
|
|
71
|
-
viewId: string;
|
|
71
|
+
export declare abstract class BaseViewDisplayerManager {
|
|
72
72
|
abstract dpr: number;
|
|
73
73
|
abstract width: number;
|
|
74
74
|
abstract height: number;
|
|
@@ -78,8 +78,8 @@ export declare abstract class AppViewDisplayerManager {
|
|
|
78
78
|
abstract vDom?: BaseViewDisplayer;
|
|
79
79
|
abstract eventTragetElement?: HTMLDivElement;
|
|
80
80
|
abstract canvasContainerRef: React.RefObject<HTMLDivElement>;
|
|
81
|
-
abstract subLocalCanvasContainerRef
|
|
82
|
-
abstract canvasTopRef
|
|
81
|
+
abstract subLocalCanvasContainerRef?: React.RefObject<HTMLDivElement>;
|
|
82
|
+
abstract canvasTopRef?: React.RefObject<HTMLCanvasElement>;
|
|
83
83
|
abstract canvasServiceFloatRef: React.RefObject<HTMLCanvasElement>;
|
|
84
84
|
abstract canvasFloatRef: React.RefObject<HTMLCanvasElement>;
|
|
85
85
|
abstract canvasBgRef: React.RefObject<HTMLCanvasElement>;
|
|
@@ -88,26 +88,42 @@ export declare abstract class AppViewDisplayerManager {
|
|
|
88
88
|
x: number;
|
|
89
89
|
y: number;
|
|
90
90
|
};
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
91
|
+
protected cachePoint?: [number, number];
|
|
92
|
+
protected cacheCursorPoint?: [number | undefined, number | undefined];
|
|
93
|
+
protected active: boolean;
|
|
94
|
+
protected toolsKey?: EToolsKey;
|
|
95
|
+
protected cursorMouseMove: (e: MouseEvent) => void;
|
|
96
|
+
protected cursorMouseMoveDebounced: DebouncedFunc<(e: MouseEvent) => void>;
|
|
97
|
+
protected cursorMouseMoveThrottled: DebouncedFuncLeading<(e: MouseEvent) => void>;
|
|
98
|
+
protected cursorMouseMoveFun: (e: MouseEvent) => void;
|
|
99
|
+
private _transferControlToOffscreenCanvas?;
|
|
100
|
+
get moveDelayTime(): number;
|
|
101
|
+
constructor(control: ApplianceManagerLike, internalMsgEmitter: EventEmitter2, viewId: string);
|
|
102
|
+
protected cursorMouseLeave: () => void;
|
|
98
103
|
abstract setCanvassStyle(): void;
|
|
104
|
+
setTransferControlToOffscreenCanvas(canvas: {
|
|
105
|
+
bgCanvas: HTMLCanvasElement;
|
|
106
|
+
serviceCanvas: HTMLCanvasElement;
|
|
107
|
+
localCanvas: HTMLCanvasElement;
|
|
108
|
+
}): void;
|
|
109
|
+
get transferControlToOffscreenCanvas(): {
|
|
110
|
+
bgCanvas: OffscreenCanvas;
|
|
111
|
+
serviceCanvas: OffscreenCanvas;
|
|
112
|
+
localCanvas: OffscreenCanvas;
|
|
113
|
+
} | undefined;
|
|
114
|
+
get worker(): import("../core/mainEngine").MasterControlForWorker;
|
|
99
115
|
bindToolsClass(): void;
|
|
100
116
|
mountView(): void;
|
|
101
|
-
reflashContainerOffset(): void;
|
|
102
117
|
updateSize(): void;
|
|
103
|
-
|
|
118
|
+
reflashContainerOffset(): void;
|
|
104
119
|
get parentElement(): HTMLElement | null | undefined;
|
|
105
120
|
destroy(): void;
|
|
106
121
|
getPoint(e: any): [number, number] | undefined;
|
|
107
|
-
getActive():
|
|
122
|
+
getActive(): boolean;
|
|
108
123
|
setActive(bol: boolean): void;
|
|
124
|
+
focusElement(): void;
|
|
109
125
|
stopEventHandler(): Promise<void>;
|
|
110
|
-
|
|
126
|
+
protected getTranslate(element: any): any[];
|
|
111
127
|
protected getContainerOffset(eventTraget: HTMLDivElement, offset: {
|
|
112
128
|
x: number;
|
|
113
129
|
y: number;
|
|
@@ -115,83 +131,33 @@ export declare abstract class AppViewDisplayerManager {
|
|
|
115
131
|
x: any;
|
|
116
132
|
y: any;
|
|
117
133
|
};
|
|
118
|
-
get
|
|
119
|
-
get moveDelayTime(): number;
|
|
120
|
-
get maxDrawCount(): number;
|
|
121
|
-
private checkConsumeCount;
|
|
134
|
+
abstract get viewId(): string;
|
|
122
135
|
protected mousedown: (e: MouseEvent) => void;
|
|
123
136
|
protected mousemove: (e: MouseEvent) => void;
|
|
124
137
|
protected mouseup: (e: MouseEvent) => void;
|
|
125
138
|
protected touchstart: (e: TouchEvent) => void;
|
|
126
139
|
protected touchmove: (e: TouchEvent) => void;
|
|
127
140
|
protected touchend: (e: TouchEvent) => void;
|
|
128
|
-
protected cursorMouseLeave: () => void;
|
|
129
141
|
protected keydown: (e: KeyboardEvent) => void;
|
|
130
142
|
protected bindDisplayerEvent(div: HTMLDivElement): void;
|
|
131
143
|
protected removeDisplayerEvent(div: HTMLDivElement): void;
|
|
144
|
+
get isBezier(): boolean;
|
|
145
|
+
get maxDrawCount(): number;
|
|
146
|
+
/** 检查是否超过最大绘制数量 */
|
|
147
|
+
checkConsumeCount(): boolean;
|
|
148
|
+
}
|
|
149
|
+
/** appView容器管理器抽象 */
|
|
150
|
+
export declare abstract class AppViewDisplayerManager extends BaseViewDisplayerManager {
|
|
151
|
+
private _viewId;
|
|
152
|
+
constructor(viewId: string, control: ApplianceManagerLike, internalMsgEmitter: EventEmitter2);
|
|
153
|
+
get viewId(): string;
|
|
154
|
+
setViewId(viewId: string): void;
|
|
132
155
|
}
|
|
133
156
|
/** 主容器管理器抽象 */
|
|
134
|
-
export declare abstract class MainViewDisplayerManager {
|
|
135
|
-
readonly viewId: string;
|
|
136
|
-
readonly control: ApplianceManagerLike;
|
|
137
|
-
readonly internalMsgEmitter: EventEmitter2;
|
|
138
|
-
readonly commiter: UndoRedoMethod;
|
|
139
|
-
abstract dpr: number;
|
|
140
|
-
abstract width: number;
|
|
141
|
-
abstract height: number;
|
|
142
|
-
abstract vDom?: BaseViewDisplayer;
|
|
143
|
-
abstract eventTragetElement?: HTMLDivElement;
|
|
157
|
+
export declare abstract class MainViewDisplayerManager extends BaseViewDisplayerManager {
|
|
144
158
|
abstract snapshotContainerRef?: React.RefObject<HTMLDivElement>;
|
|
145
|
-
abstract canvasContainerRef: React.RefObject<HTMLDivElement>;
|
|
146
|
-
abstract subLocalCanvasContainerRef: React.RefObject<HTMLDivElement>;
|
|
147
|
-
abstract canvasTopRef: React.RefObject<HTMLCanvasElement>;
|
|
148
|
-
abstract canvasServiceFloatRef: React.RefObject<HTMLCanvasElement>;
|
|
149
|
-
abstract canvasFloatRef: React.RefObject<HTMLCanvasElement>;
|
|
150
|
-
abstract canvasBgRef: React.RefObject<HTMLCanvasElement>;
|
|
151
|
-
abstract floatBarRef: React.RefObject<HTMLDivElement>;
|
|
152
|
-
abstract containerOffset: {
|
|
153
|
-
x: number;
|
|
154
|
-
y: number;
|
|
155
|
-
};
|
|
156
|
-
private cachePoint?;
|
|
157
|
-
private cacheCursorPoint?;
|
|
158
|
-
private active;
|
|
159
|
-
private toolsKey?;
|
|
160
|
-
private cursorMouseMove;
|
|
161
159
|
constructor(control: ApplianceManagerLike, internalMsgEmitter: EventEmitter2);
|
|
162
|
-
|
|
163
|
-
get worker(): import("../core/mainEngine").MasterControlForWorker;
|
|
164
|
-
bindToolsClass(): void;
|
|
165
|
-
mountView(): void;
|
|
160
|
+
get viewId(): string;
|
|
166
161
|
updateSize(): void;
|
|
167
|
-
reflashContainerOffset(): void;
|
|
168
|
-
get parentElement(): HTMLElement | null | undefined;
|
|
169
162
|
destroy(): void;
|
|
170
|
-
getPoint(e: any): [number, number] | undefined;
|
|
171
|
-
getActive(): boolean;
|
|
172
|
-
setActive(bol: boolean): void;
|
|
173
|
-
stopEventHandler(): Promise<void>;
|
|
174
|
-
private getTranslate;
|
|
175
|
-
protected getContainerOffset(eventTraget: HTMLDivElement, offset: {
|
|
176
|
-
x: number;
|
|
177
|
-
y: number;
|
|
178
|
-
}): {
|
|
179
|
-
x: any;
|
|
180
|
-
y: any;
|
|
181
|
-
};
|
|
182
|
-
get moveDelayTime(): number;
|
|
183
|
-
get isBezier(): boolean;
|
|
184
|
-
get maxDrawCount(): number;
|
|
185
|
-
/** 检查是否超过最大绘制数量 */
|
|
186
|
-
private checkConsumeCount;
|
|
187
|
-
protected mousedown: (e: MouseEvent) => void;
|
|
188
|
-
protected mousemove: (e: MouseEvent) => void;
|
|
189
|
-
protected mouseup: (e: MouseEvent) => void;
|
|
190
|
-
protected touchstart: (e: TouchEvent) => void;
|
|
191
|
-
protected touchmove: (e: TouchEvent) => void;
|
|
192
|
-
protected touchend: (e: TouchEvent) => void;
|
|
193
|
-
protected cursorMouseLeave: () => void;
|
|
194
|
-
protected keydown: (e: KeyboardEvent) => void;
|
|
195
|
-
protected bindDisplayerEvent(div: HTMLDivElement): void;
|
|
196
|
-
protected removeDisplayerEvent(div: HTMLDivElement): void;
|
|
197
163
|
}
|
|
@@ -8,11 +8,11 @@ export interface BaseDisplayerProps {
|
|
|
8
8
|
refs: {
|
|
9
9
|
snapshotContainerRef?: React.RefObject<HTMLDivElement>;
|
|
10
10
|
canvasContainerRef: React.RefObject<HTMLDivElement>;
|
|
11
|
-
subLocalCanvasContainerRef
|
|
11
|
+
subLocalCanvasContainerRef?: React.RefObject<HTMLDivElement>;
|
|
12
12
|
canvasServiceFloatRef: React.RefObject<HTMLCanvasElement>;
|
|
13
13
|
canvasFloatRef: React.RefObject<HTMLCanvasElement>;
|
|
14
14
|
canvasBgRef: React.RefObject<HTMLCanvasElement>;
|
|
15
|
-
canvasTopRef
|
|
15
|
+
canvasTopRef?: React.RefObject<HTMLCanvasElement>;
|
|
16
16
|
floatBarRef: React.RefObject<HTMLDivElement>;
|
|
17
17
|
};
|
|
18
18
|
}
|
|
@@ -10,8 +10,8 @@ export declare class AppViewDisplayerManagerImpl extends AppViewDisplayerManager
|
|
|
10
10
|
vDom?: BaseViewDisplayer;
|
|
11
11
|
eventTragetElement?: HTMLDivElement;
|
|
12
12
|
canvasContainerRef: React.RefObject<HTMLDivElement>;
|
|
13
|
-
subLocalCanvasContainerRef
|
|
14
|
-
canvasTopRef
|
|
13
|
+
subLocalCanvasContainerRef?: React.RefObject<HTMLDivElement>;
|
|
14
|
+
canvasTopRef?: React.RefObject<HTMLCanvasElement>;
|
|
15
15
|
canvasServiceFloatRef: React.RefObject<HTMLCanvasElement>;
|
|
16
16
|
canvasFloatRef: React.RefObject<HTMLCanvasElement>;
|
|
17
17
|
canvasBgRef: React.RefObject<HTMLCanvasElement>;
|
|
@@ -11,8 +11,8 @@ export declare class MainViewMultiDisplayerManager extends MainViewDisplayerMana
|
|
|
11
11
|
eventTragetElement?: HTMLDivElement;
|
|
12
12
|
snapshotContainerRef?: React.RefObject<HTMLDivElement>;
|
|
13
13
|
canvasContainerRef: React.RefObject<HTMLDivElement>;
|
|
14
|
-
subLocalCanvasContainerRef
|
|
15
|
-
canvasTopRef
|
|
14
|
+
subLocalCanvasContainerRef?: React.RefObject<HTMLDivElement>;
|
|
15
|
+
canvasTopRef?: React.RefObject<HTMLCanvasElement>;
|
|
16
16
|
canvasServiceFloatRef: React.RefObject<HTMLCanvasElement>;
|
|
17
17
|
canvasFloatRef: React.RefObject<HTMLCanvasElement>;
|
|
18
18
|
canvasBgRef: React.RefObject<HTMLCanvasElement>;
|
|
@@ -8,12 +8,11 @@ export declare class MainViewSingleDisplayerManager extends MainViewDisplayerMan
|
|
|
8
8
|
height: number;
|
|
9
9
|
dpr: number;
|
|
10
10
|
vDom?: BaseViewDisplayer;
|
|
11
|
-
viewId: string;
|
|
12
11
|
eventTragetElement?: HTMLDivElement;
|
|
13
12
|
snapshotContainerRef?: React.RefObject<HTMLDivElement>;
|
|
14
13
|
canvasContainerRef: React.RefObject<HTMLDivElement>;
|
|
15
|
-
subLocalCanvasContainerRef
|
|
16
|
-
canvasTopRef
|
|
14
|
+
subLocalCanvasContainerRef?: React.RefObject<HTMLDivElement>;
|
|
15
|
+
canvasTopRef?: React.RefObject<HTMLCanvasElement>;
|
|
17
16
|
canvasServiceFloatRef: React.RefObject<HTMLCanvasElement>;
|
|
18
17
|
canvasFloatRef: React.RefObject<HTMLCanvasElement>;
|
|
19
18
|
canvasBgRef: React.RefObject<HTMLCanvasElement>;
|
package/dist/plugin/types.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { ISerializableEventData, ISerializableStorageViewData, Uid } from "../collector/types";
|
|
1
|
+
import type { BaseCollectorReducerAction, ISerializableEventData, ISerializableStorageViewData, Uid } from "../collector/types";
|
|
2
2
|
import type { Cursor, View, CameraState, DisplayerCallbacks, HotKeys, Player, Room, Point, RoomMember, RoomState, Size, Callbacks, Camera, Color, CursorAdapter, Displayer, ImageInformation, Rectangle, RenderEngine, MemberState as _MemberState } from "white-web-sdk";
|
|
3
3
|
import type EventEmitter2 from "eventemitter2";
|
|
4
4
|
import type { ApplianceSingleManager } from "./single/applianceSingleManager";
|
|
@@ -208,12 +208,6 @@ export interface AppliancePluginInstance {
|
|
|
208
208
|
setWritable(writable: boolean): Promise<void>;
|
|
209
209
|
/** setMemberState */
|
|
210
210
|
setMemberState(modifyState: Partial<MemberState>): void;
|
|
211
|
-
/** 设置性能优先项
|
|
212
|
-
* @param priority 优先项, 可以是 ``ui`` 或 ``cpu``
|
|
213
|
-
* ui: 优先绘制UI,适用于需要绘制高跟手度
|
|
214
|
-
* cpu: 优先降低主进程CPU消耗,适用于底端设备
|
|
215
|
-
*/
|
|
216
|
-
setPerformancePriority(priority: PriorityType): void;
|
|
217
211
|
/** 获取undo */
|
|
218
212
|
canUndoSteps(): number;
|
|
219
213
|
/** 获取redo */
|
|
@@ -284,6 +278,15 @@ export interface AppliancePluginInstance {
|
|
|
284
278
|
* @returns 是否存在元素
|
|
285
279
|
*/
|
|
286
280
|
hasElements(scenePath?: string, filter?: (toolsType: EToolsKey) => boolean): boolean;
|
|
281
|
+
/**
|
|
282
|
+
* 获取场景下的所有元素
|
|
283
|
+
* @param scenePath 场景路径, 默认取当前聚焦的场景
|
|
284
|
+
* @param filter 过滤条件
|
|
285
|
+
* @returns 所有元素
|
|
286
|
+
*/
|
|
287
|
+
getElements(scenePath?: string, filter?: (toolsType: EToolsKey) => boolean): BaseCollectorReducerAction[];
|
|
288
|
+
/** 停止Draw事件 */
|
|
289
|
+
stopDraw(viewId: string): Promise<void>;
|
|
287
290
|
}
|
|
288
291
|
export type Logger = {
|
|
289
292
|
readonly info: (...messages: any[]) => void;
|
|
@@ -296,6 +299,8 @@ export type ExtrasOptions = {
|
|
|
296
299
|
* mainThread: 使用主线程
|
|
297
300
|
*/
|
|
298
301
|
useWorker?: UseWorkerType;
|
|
302
|
+
/** 是否使用简单模式, 默认值为 ``false`` */
|
|
303
|
+
useSimple?: boolean;
|
|
299
304
|
/** 同步数据配置项 */
|
|
300
305
|
syncOpt?: SyncOpt;
|
|
301
306
|
/** 画布配置项 */
|
|
@@ -321,6 +326,7 @@ export type AppliancePluginOptions = {
|
|
|
321
326
|
};
|
|
322
327
|
export type RequiredExtrasOptions = {
|
|
323
328
|
useWorker: Required<UseWorkerType>;
|
|
329
|
+
useSimple: Required<boolean>;
|
|
324
330
|
syncOpt: Required<SyncOpt>;
|
|
325
331
|
canvasOpt: Required<CanvasOpt>;
|
|
326
332
|
cursor: Required<CursorOpt>;
|
|
@@ -509,7 +515,6 @@ export declare enum ActiveContainerType {
|
|
|
509
515
|
}
|
|
510
516
|
export type SpeechBalloonPlacement = "top" | "left" | "right" | "bottom" | "topLeft" | "topRight" | "bottomLeft" | "bottomRight" | "leftTop" | "leftBottom" | "rightTop" | "rightBottom";
|
|
511
517
|
export type TeleBoxState = "normal" | "minimized" | "maximized";
|
|
512
|
-
export type PriorityType = "ui" | "cpu";
|
|
513
518
|
export type FilterRenderType = "show" | "hide";
|
|
514
519
|
export type FilterPublishAutType = "write" | "readOnly";
|
|
515
520
|
export type FilterRenderDataType = "page" | "uid";
|
package/dist/style.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
:root{--text-editor-border-color-unable: rgba(0, 0, 0, .12)}.appliance-plugin-main-view-displayer,.appliance-plugin-app-view-displayer{position:relative;width:100%;height:100%;transform:translateY(-100%);pointer-events:none;z-index:2;box-sizing:content-box}.appliance-plugin-floatbtns{position:absolute;left:3px;transform:translateY(-60px);display:flex;flex-direction:row;align-items:center;background:#fff;border:1px solid #efefef;box-shadow:0 6px 12px #0000001f;border-radius:4px;color-scheme:light;pointer-events:auto;z-index:9}.appliance-plugin-floatbtns .normal-button{width:40px;height:40px;touch-action:none}.appliance-plugin-floatbtns .button{display:flex;justify-content:center;align-items:center;cursor:pointer;border:none}.appliance-plugin-floatbtns .button:hover,.appliance-plugin-floatbtns .button.active{background-color:#eef0f6}.appliance-plugin-floatbtns .shapeOpt-sub-menu,.appliance-plugin-floatbtns .font-style-menu,.appliance-plugin-floatbtns .image-layer-menu,.appliance-plugin-floatbtns .font-colors-menu{box-sizing:border-box;display:flex;flex-wrap:wrap;flex-direction:row;justify-content:flex-start;align-items:center;position:absolute;padding:4px;background:#fff;box-shadow:0 3px 6px #0000001f;border-radius:2px;top:50px;touch-action:none}.appliance-plugin-floatbtns .shapeOpt-sub-menu .normal-button,.appliance-plugin-floatbtns .font-style-menu .normal-button,.appliance-plugin-floatbtns .image-layer-menu .normal-button,.appliance-plugin-floatbtns .font-colors-menu .normal-button{width:32px;height:32px;touch-action:none}.appliance-plugin-floatbtns .font-colors-menu{justify-content:flex-start;width:128px}.appliance-plugin-floatbtns .font-colors-menu .font-color-button{display:flex;justify-content:center;align-items:center;cursor:pointer;margin:4px;width:22px;height:22px;border-radius:50%;border-width:1px;border-style:solid;border-color:#fff;background-image:conic-gradient(rgba(0,0,0,.06) 0 25%,transparent 0 50%,rgba(0,0,0,.06) 0 75%,transparent 0);background-size:6px 6px;box-sizing:border-box}.appliance-plugin-floatbtns .font-colors-menu .font-color-button.active{border-color:#a7a7a7}.appliance-plugin-floatbtns .font-colors-menu .font-color-button .circle{box-sizing:border-box;width:16px;height:16px;border-radius:50%;border:1px solid rgba(0,0,0,.12);touch-action:none}.appliance-plugin-floatbtns .font-colors-menu .font-color-button .none{position:relative;background-color:#fff}.appliance-plugin-floatbtns .font-colors-menu .font-color-button .none:before{content:"";position:absolute;left:50%;width:1px;height:100%;background-color:#0000001f;transform:rotate(45deg)}.appliance-plugin-floatbtns .font-colors-icon{flex-direction:column}.appliance-plugin-floatbtns .font-colors-icon .color-bar{height:2px;width:12px;margin-top:-2px;background-image:conic-gradient(rgba(0,0,0,.06) 0 25%,transparent 0 50%,rgba(0,0,0,.06) 0 75%,transparent 0);background-size:6px 6px}.appliance-plugin-floatbtns .font-colors-icon .color-bar .color-bar-color{width:100%;height:100%}.appliance-plugin-floatbtns .font-colors-icon .color-bar-fill,.appliance-plugin-floatbtns .font-colors-icon .color-bar-ring{height:12px;width:12px;border-radius:6px;border:1px solid rgba(0,0,0,.12);background-image:conic-gradient(rgba(0,0,0,.06) 0 25%,transparent 0 50%,rgba(0,0,0,.06) 0 75%,transparent 0);background-size:6px 6px}.appliance-plugin-floatbtns .font-colors-icon .color-bar-fill .circle,.appliance-plugin-floatbtns .font-colors-icon .color-bar-ring .circle{width:100%;height:100%;border-radius:50%;touch-action:none}.appliance-plugin-floatbtns .font-colors-icon .color-bar-ring{border:0}.appliance-plugin-floatbtns .font-colors-icon .color-bar-ring .circle{transform:translate(35%,30%);width:60%;height:60%;border-radius:50%;background-color:#fff;touch-action:none}.appliance-plugin-floatbtns .font-color-opacity{box-sizing:border-box;width:100px;height:6px;margin:5px 0 10px;border-radius:3px;background-image:conic-gradient(rgba(0,0,0,.06) 0 25%,transparent 0 50%,rgba(0,0,0,.06) 0 75%,transparent 0);background-size:6px 6px;position:relative}.appliance-plugin-floatbtns .font-color-opacity .range-color{height:6px;box-shadow:inset 0 0 1px #00000040;border-radius:4px;top:0;right:0;bottom:0;left:0}.appliance-plugin-floatbtns .font-color-opacity .range-opacity{position:absolute;top:0;left:-10px;height:6px;width:120px;touch-action:auto}.appliance-plugin-floatbtns .font-color-opacity .range-opacity .range-opacity-data-icon{position:absolute;top:10px;left:0;width:30px;height:16px;text-align:center;background-color:#333;border-radius:4px;font-size:12px;color:#fff;display:none}.appliance-plugin-floatbtns .font-color-opacity .range-opacity:hover .range-opacity-data-icon{display:block}.appliance-plugin-floatbtns .font-color-opacity .circle{position:absolute;top:-3px;border:2px solid #ffffff;border-radius:50%;cursor:pointer;box-shadow:inset 0 0 1px #00000040,0 0 0 1px #0000000f;width:12px;height:12px;box-sizing:border-box;touch-action:none}.appliance-plugin-floatbtns .font-style-menu{justify-content:space-between;width:128px}.appliance-plugin-floatbtns .font-style-menu .font-style-button{display:flex;justify-content:center;align-items:center;cursor:pointer;margin:4px;width:22px;height:22px;box-sizing:border-box}.appliance-plugin-floatbtns .font-style-menu .font-style-button.active{border-color:#a7a7a7}.appliance-plugin-floatbtns .font-size-barBtn .font-size-input{line-height:20px;height:20px;padding:0 2px;margin-left:2px;width:25px;border:1px solid;border-radius:3px}.appliance-plugin-floatbtns .font-size-barBtn .font-size-input:focus{background:#eef0f6}.appliance-plugin-floatbtns .font-size-barBtn .font-size-btns{width:15px;margin-left:3px;display:flex;flex-direction:column;justify-content:center}.appliance-plugin-floatbtns .font-size-barBtn .font-size-btns .font-size-add,.appliance-plugin-floatbtns .font-size-barBtn .font-size-btns .font-size-cut{position:relative;width:10px;height:10px}.appliance-plugin-floatbtns .font-size-barBtn .font-size-btns .font-size-add:hover,.appliance-plugin-floatbtns .font-size-barBtn .font-size-btns .font-size-cut:hover{background:#eef0f6}.appliance-plugin-floatbtns .font-size-barBtn .font-size-btns .font-size-add:after,.appliance-plugin-floatbtns .font-size-barBtn .font-size-btns .font-size-cut:after{content:"";position:absolute;top:0;border:4px solid #999;border-left-color:transparent;border-right-color:transparent}.appliance-plugin-floatbtns .font-size-barBtn .font-size-btns .font-size-add{margin-bottom:3px}.appliance-plugin-floatbtns .font-size-barBtn .font-size-btns .font-size-add:after{border-top-color:transparent}.appliance-plugin-floatbtns .font-size-barBtn .font-size-btns .font-size-cut:after{border-bottom-color:transparent}.appliance-plugin-floatbtns .font-size-barBtn .font-size-menu{position:absolute;top:35px;width:50px;overflow-y:auto;display:flex;flex-direction:column;align-items:center;background:#fff;border:1px solid #efefef;box-shadow:0 6px 12px #0000001f}.appliance-plugin-floatbtns .font-size-barBtn .font-size-menu .font-size-btn{font-size:12px;line-height:20px;width:100%;text-align:center}.appliance-plugin-floatbtns .font-size-barBtn .font-size-menu .font-size-btn:hover{background:#eef0f6}.appliance-plugin-floatbtns .font-size-barBtn:hover{background:#fff}.appliance-plugin-floatbtns .shapeOpt-sub-menu{flex-direction:column;touch-action:none}.appliance-plugin-floatbtns .shapeOpt-sub-menu .shapeOpt-sub-menu-tabs{display:flex;flex-direction:row;justify-content:flex-start;width:100%}.appliance-plugin-floatbtns .shapeOpt-sub-menu .shapeOpt-sub-menu-tabs .tab-button{width:32px;height:24px}.appliance-plugin-floatbtns .shapeOpt-sub-menu .shapeOpt-sub-menu-content{flex:1;background-color:#eef0f6;display:flex;flex-direction:column;align-items:baseline;width:100%}.appliance-plugin-floatbtns .shapeOpt-sub-menu .shapeOpt-sub-menu-content .input-button{flex:1;height:32px;padding:5px 0;cursor:default;display:flex;flex-direction:row;justify-content:flex-start;width:100%}.appliance-plugin-floatbtns .shapeOpt-sub-menu .shapeOpt-sub-menu-content .input-button img{width:16px;height:16px;margin:0 5px}.appliance-plugin-floatbtns .shapeOpt-sub-menu .shapeOpt-sub-menu-content .input-button .input-number{flex:1;padding:0 3px;height:20px;border:1px solid;border-radius:3px;margin-right:5px;max-width:70px;min-width:40px}.appliance-plugin-floatbtns .shapeOpt-sub-menu .shapeOpt-sub-menu-content .input-button .input-number-btns{width:15px;display:flex;flex-direction:column;justify-content:center}.appliance-plugin-floatbtns .shapeOpt-sub-menu .shapeOpt-sub-menu-content .input-button .input-number-btns .input-number-add,.appliance-plugin-floatbtns .shapeOpt-sub-menu .shapeOpt-sub-menu-content .input-button .input-number-btns .input-number-cut{position:relative;width:10px;height:10px;cursor:pointer}.appliance-plugin-floatbtns .shapeOpt-sub-menu .shapeOpt-sub-menu-content .input-button .input-number-btns .input-number-add:hover,.appliance-plugin-floatbtns .shapeOpt-sub-menu .shapeOpt-sub-menu-content .input-button .input-number-btns .input-number-cut:hover{background:#eef0f6}.appliance-plugin-floatbtns .shapeOpt-sub-menu .shapeOpt-sub-menu-content .input-button .input-number-btns .input-number-add:after,.appliance-plugin-floatbtns .shapeOpt-sub-menu .shapeOpt-sub-menu-content .input-button .input-number-btns .input-number-cut:after{content:"";position:absolute;top:0;border:4px solid #999;border-left-color:transparent;border-right-color:transparent}.appliance-plugin-floatbtns .shapeOpt-sub-menu .shapeOpt-sub-menu-content .input-button .input-number-btns .input-number-add{margin-bottom:3px}.appliance-plugin-floatbtns .shapeOpt-sub-menu .shapeOpt-sub-menu-content .input-button .input-number-btns .input-number-add:after{border-top-color:transparent}.appliance-plugin-floatbtns .shapeOpt-sub-menu .shapeOpt-sub-menu-content .input-button .input-number-btns .input-number-cut:after{border-bottom-color:transparent}.appliance-plugin-floatbtns .shapeOpt-sub-menu .shapeOpt-sub-menu-content .input-button .range-number-container{flex:1;box-sizing:border-box;width:100px;height:6px;margin:7px 6px 7px 0;border-radius:3px;background-color:#3381ff;position:relative}.appliance-plugin-floatbtns .shapeOpt-sub-menu .shapeOpt-sub-menu-content .input-button .range-number-container .range-number-color{height:6px;box-shadow:inset 0 0 1px #00000040;border-radius:4px;top:0;right:0;bottom:0;left:0}.appliance-plugin-floatbtns .shapeOpt-sub-menu .shapeOpt-sub-menu-content .input-button .range-number-container .range-number{position:absolute;top:0;left:-6px;height:6px;width:112px;cursor:pointer}.appliance-plugin-floatbtns .shapeOpt-sub-menu .shapeOpt-sub-menu-content .input-button .range-number-container .circle{position:absolute;top:-3px;border:2px solid #ffffff;border-radius:50%;cursor:pointer;box-shadow:inset 0 0 1px #00000040,0 0 0 1px #0000000f;width:12px;height:12px;box-sizing:border-box;background-color:#3381ff;touch-action:none}.appliance-plugin-floatbtns .shapeOpt-sub-menu .shapeOpt-sub-menu-content .input-button .select-option-menu{position:absolute;top:60px;left:30px;width:80px;display:flex;flex-direction:column;align-items:center;background:#fff;border:1px solid #efefef;box-shadow:0 6px 12px #0000001f}.appliance-plugin-floatbtns .shapeOpt-sub-menu .shapeOpt-sub-menu-content .input-button .select-option-menu .select-option-btn{font-size:12px;line-height:20px;width:100%;text-align:center}.appliance-plugin-floatbtns .shapeOpt-sub-menu .shapeOpt-sub-menu-content .input-button .select-option-menu .select-option-btn:hover{background:#eef0f6}.appliance-plugin-floatbtns .font-colors-line{width:100%;height:0px;border-bottom:1px dashed #ccc;margin-bottom:3px}.appliance-plugin-floatbtns .stroke-type-box{width:100%;height:15px;display:flex;flex-direction:row;justify-content:space-around;padding-top:8px;cursor:default}.appliance-plugin-floatbtns .stroke-type-box .stroke-type-box-item{box-sizing:content-box;padding-top:2px;width:20px;height:3px;border:0;cursor:pointer;opacity:.3}.appliance-plugin-floatbtns .stroke-type-box .stroke-type-box-item.active{opacity:1}.appliance-plugin-floatbtns .stroke-type-box .stroke-type-box-item.Stroke{margin-top:2px;padding:0;height:3px;border-radius:0 10px}.appliance-plugin-floatbtns .stroke-type-box .stroke-type-box-item.Normal{height:0;border-bottom:3px solid}.appliance-plugin-floatbtns .stroke-type-box .stroke-type-box-item.Dotted{height:0;border-bottom:3px dotted}.appliance-plugin-floatbtns .stroke-type-box .stroke-type-box-item.LongDotted{height:0;border-bottom:3px dashed}.appliance-plugin-fill-scene-snapshot-img{position:absolute;top:50%;left:50%;max-width:100%;max-height:100%;transform:translate(-50%,-50%);pointer-events:none}.index-module__Container__nLsM3{position:absolute;top:0;left:0;width:100%;height:100%;overflow:hidden;outline:none;pointer-events:none;touch-action:none}.index-module__Container__nLsM3 *{touch-action:none}.index-module__Container__nLsM3 .index-module__CanvasBox__j2Xe-{position:relative;width:100%;height:100%;pointer-events:none}.index-module__Container__nLsM3 .index-module__CanvasBox__j2Xe- .index-module__FloatCanvas__d1YR7{position:absolute;top:0;left:0;width:100%;height:100%;z-index:1}.index-module__Container__nLsM3 .index-module__CanvasBox__j2Xe- .index-module__TopFloatCanvas__7IaCw{position:absolute;top:0;left:0;width:100%;height:100%;z-index:2}.index-module__Container__nLsM3 .index-module__CanvasBoxSub__hcMeK{position:absolute!important;top:0;left:0;width:100%;height:100%;z-index:1}.index-module__Container__nLsM3 .index-module__SnapshotBox__--eeE{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:-1}.index-module__Container__nLsM3 .index-module__FloatBar__cm-EL{position:absolute;top:0;left:0;width:0;height:0;pointer-events:none}.index-module__Container__nLsM3 .index-module__FloatBar__cm-EL .appliance-plugin-hightlight-box{position:relative;box-sizing:border-box;width:100%;height:100%;border:1px solid;z-index:1;pointer-events:none}.index-module__Container__nLsM3 .index-module__FloatBar__cm-EL .appliance-plugin-hightlight-box .point{position:absolute;width:7px;height:7px;transform:translate(-50%,-50%);pointer-events:none}.index-module__Container__nLsM3 .index-module__FloatBar__cm-EL .appliance-plugin-hightlight-box .point-dot{margin:-1px 0 0 -1px;width:5px;height:5px;border:1px solid;border-radius:3px;background-color:#fff}.index-module__Container__nLsM3 .index-module__FloatBar__cm-EL .appliance-plugin-hightlight-box .LT,.index-module__Container__nLsM3 .index-module__FloatBar__cm-EL .appliance-plugin-hightlight-box .LC,.index-module__Container__nLsM3 .index-module__FloatBar__cm-EL .appliance-plugin-hightlight-box .LB{left:0}.index-module__Container__nLsM3 .index-module__FloatBar__cm-EL .appliance-plugin-hightlight-box .LT,.index-module__Container__nLsM3 .index-module__FloatBar__cm-EL .appliance-plugin-hightlight-box .TC,.index-module__Container__nLsM3 .index-module__FloatBar__cm-EL .appliance-plugin-hightlight-box .RT{top:0}.index-module__Container__nLsM3 .index-module__FloatBar__cm-EL .appliance-plugin-hightlight-box .RT,.index-module__Container__nLsM3 .index-module__FloatBar__cm-EL .appliance-plugin-hightlight-box .RC,.index-module__Container__nLsM3 .index-module__FloatBar__cm-EL .appliance-plugin-hightlight-box .RB{right:-7px}.index-module__Container__nLsM3 .index-module__FloatBar__cm-EL .appliance-plugin-hightlight-box .RB,.index-module__Container__nLsM3 .index-module__FloatBar__cm-EL .appliance-plugin-hightlight-box .BC,.index-module__Container__nLsM3 .index-module__FloatBar__cm-EL .appliance-plugin-hightlight-box .LB{bottom:-7px}.index-module__Container__nLsM3 .index-module__FloatBar__cm-EL .appliance-plugin-hightlight-box .RC,.index-module__Container__nLsM3 .index-module__FloatBar__cm-EL .appliance-plugin-hightlight-box .LC{top:50%}.index-module__Container__nLsM3 .index-module__FloatBar__cm-EL .appliance-plugin-hightlight-box .TC,.index-module__Container__nLsM3 .index-module__FloatBar__cm-EL .appliance-plugin-hightlight-box .BC{left:50%}.index-module__Container__nLsM3 .index-module__FloatBar__cm-EL .appliance-plugin-hightlight-box .lock{pointer-events:none;position:absolute;width:22px;height:22px;top:-11px;left:-11px}.index-module__Container__nLsM3 .index-module__FloatBar__cm-EL .appliance-plugin-floatCanvas-box{position:absolute;z-index:1;overflow:hidden}.index-module__Container__nLsM3 .index-module__FloatBar__cm-EL .appliance-plugin-floatCanvas{width:100%;height:100%}.index-module__Container__nLsM3 .index-module__FloatBar__cm-EL .editor-box{position:absolute;touch-action:none}.index-module__Container__nLsM3 .index-module__FloatBar__cm-EL .editor-box.readonly{pointer-events:none;border-color:transparent}.index-module__Container__nLsM3 .index-module__FloatBar__cm-EL .editor{position:relative;padding:5px;pointer-events:none;font-family:sans-serif;resize:none;z-index:2;white-space:pre;box-sizing:content-box;display:flex;flex-direction:column;align-items:baseline}.index-module__Container__nLsM3 .index-module__FloatBar__cm-EL .editor:focus,.index-module__Container__nLsM3 .index-module__FloatBar__cm-EL .editor:focus-visible{outline:none}.index-module__Container__nLsM3 .index-module__FloatBar__cm-EL .editor div{min-width:2px;min-height:inherit}.index-module__Container__nLsM3 .index-module__RotateBtn__HSSkf{position:absolute;cursor:move;top:0;left:0;width:16px;height:16px;z-index:2;pointer-events:auto}.index-module__Container__nLsM3 .index-module__RotateBtn__HSSkf .appliance-plugin-rotate-btn{position:absolute;left:0;top:0;width:16px;height:16px;border-radius:8px;display:flex;justify-content:center;align-items:center;pointer-events:none}.index-module__Container__nLsM3 .index-module__RotateBtn__HSSkf .appliance-plugin-rotate-btn img{width:12px;height:12px}.index-module__Container__nLsM3 .index-module__RotateBtn__HSSkf .appliance-plugin-rotate-mouse-pointer{position:relative;width:100%;height:100%;opacity:0;pointer-events:none}.index-module__Container__nLsM3 .index-module__RotateBtn__HSSkf .appliance-plugin-rotate-mouse-pointer.active{opacity:1}.index-module__Container__nLsM3 .index-module__RotateBtn__HSSkf .appliance-plugin-rotate-mouse-pointer img{width:100%;height:100%}.index-module__Container__nLsM3 .index-module__RotateBtn__HSSkf .appliance-plugin-rotate-mouse-pointer .angle-icon{position:absolute;top:-16px;left:-16px;width:30px;height:16px;text-align:center;background-color:#333;border-radius:4px;font-size:12px;color:#fff}.index-module__Container__nLsM3 .index-module__ResizeBtn__yjvda{position:absolute;box-sizing:content-box;top:0;width:0;left:0;z-index:1;touch-action:none}.index-module__Container__nLsM3 .index-module__CursorBox__2UHvI{position:absolute;left:0;top:0;z-index:2}.index-module__Container__nLsM3 .index-module__TextEditorContainer__Qm8KC{position:absolute;top:0;left:0;width:100%;height:100%;z-index:1;pointer-events:none;overflow:hidden;transform:translateZ(0)}.index-module__Container__nLsM3 .index-module__TextEditorContainer__Qm8KC .editor-box{position:absolute;touch-action:none;border:1px dashed transparent}.index-module__Container__nLsM3 .index-module__TextEditorContainer__Qm8KC .editor-box.none{display:none}.index-module__Container__nLsM3 .index-module__TextEditorContainer__Qm8KC .editor-box.active{pointer-events:auto}.index-module__Container__nLsM3 .index-module__TextEditorContainer__Qm8KC .editor-box.active:hover{border-style:solid;cursor:text}.index-module__Container__nLsM3 .index-module__TextEditorContainer__Qm8KC .editor-box.active .editor{opacity:0;pointer-events:none}.index-module__Container__nLsM3 .index-module__TextEditorContainer__Qm8KC .editor-box.editing{pointer-events:auto}.index-module__Container__nLsM3 .index-module__TextEditorContainer__Qm8KC .editor-box.editing .editor{opacity:1;pointer-events:none}.index-module__Container__nLsM3 .index-module__TextEditorContainer__Qm8KC .editor-box.editing:hover{border-color:var(--text-editor-border-color-unable)!important}.index-module__Container__nLsM3 .index-module__TextEditorContainer__Qm8KC .editor-box.hover:hover{border-style:solid}.index-module__Container__nLsM3 .index-module__TextEditorContainer__Qm8KC .editor-box.hover .editor{opacity:1;pointer-events:auto}.index-module__Container__nLsM3 .index-module__TextEditorContainer__Qm8KC .editor{position:relative;padding:5px;pointer-events:none;font-family:sans-serif;resize:none;z-index:2;white-space:nowrap;box-sizing:content-box;display:flex;flex-direction:column;align-items:baseline}.index-module__Container__nLsM3 .index-module__TextEditorContainer__Qm8KC .editor:focus,.index-module__Container__nLsM3 .index-module__TextEditorContainer__Qm8KC .editor:focus-visible{outline:none}.index-module__Container__nLsM3 .index-module__TextEditorContainer__Qm8KC .editor div{min-width:2px;min-height:inherit}.index-module__Container__nLsM3 .index-module__ResizeTowBox__HOllX{position:absolute;top:0;width:0;left:0}.index-module__Container__nLsM3 .index-module__ResizeTowBox__HOllX .appliance-plugin-point-btn{position:absolute;width:5px;height:5px;border:1px solid;border-radius:3px;transform:translate(-50%,-50%);background-color:#fff;z-index:2}.index-module__Container__nLsM3 .index-module__ResizeTowBox__HOllX .appliance-plugin-point-draggable-btn{position:absolute;width:10px;height:10px;margin-top:-5px;margin-left:-5px;z-index:3;pointer-events:auto;cursor:move;touch-action:none}.index-module__Container__nLsM3 .index-module__FloatBarBtn__FJrOG{position:absolute;pointer-events:none}.cursor-box{color:#fff;padding:4px;border-radius:2px;width:100%;height:100%}.cursor-box .cursor-name-text{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;max-width:80px}.cursor-pencil-image{width:26px;height:26px}.cursor-selector-image{width:24px;height:24px}.cursor-selector-avatar{border-radius:50%;border-style:solid;border-width:2px;border-color:#fff;margin-bottom:2px}.cursor-inner{border-radius:4px;display:flex;align-items:center;justify-content:center;flex-direction:row;padding-left:4px;padding-right:4px;font-size:12px}.cursor-inner-mellow{height:32px;border-radius:16px;display:flex;align-items:center;justify-content:center;flex-direction:row;padding-left:16px;padding-right:16px}.cursor-tag-name{font-size:12px;margin-left:4px;padding:2px 8px;border-radius:4px}.cursor-mid{display:flex;flex-direction:column;align-items:center;justify-content:center;position:absolute;width:180px;height:64px}.cursor-shape-offset{display:flex;flex-direction:column;align-items:center;justify-content:center;position:absolute;width:180px;height:64px;margin-left:-30px;margin-top:12px}
|
|
1
|
+
:root{--text-editor-border-color-unable: rgba(0, 0, 0, .12)}.appliance-plugin-main-view-displayer,.appliance-plugin-app-view-displayer{position:relative;width:100%;height:100%;transform:translateY(-100%);pointer-events:none;z-index:2;box-sizing:content-box}.appliance-plugin-floatbtns{position:absolute;left:3px;transform:translateY(-60px);display:flex;flex-direction:row;align-items:center;background:#fff;border:1px solid #efefef;box-shadow:0 6px 12px #0000001f;border-radius:4px;color-scheme:light;pointer-events:auto;z-index:9}.appliance-plugin-floatbtns .normal-button{width:40px;height:40px;touch-action:none}.appliance-plugin-floatbtns .button{display:flex;justify-content:center;align-items:center;cursor:pointer;border:none}.appliance-plugin-floatbtns .button:hover,.appliance-plugin-floatbtns .button.active{background-color:#eef0f6}.appliance-plugin-floatbtns .shapeOpt-sub-menu,.appliance-plugin-floatbtns .font-style-menu,.appliance-plugin-floatbtns .image-layer-menu,.appliance-plugin-floatbtns .font-colors-menu{box-sizing:border-box;display:flex;flex-wrap:wrap;flex-direction:row;justify-content:flex-start;align-items:center;position:absolute;padding:4px;background:#fff;box-shadow:0 3px 6px #0000001f;border-radius:2px;top:50px;touch-action:none}.appliance-plugin-floatbtns .shapeOpt-sub-menu .normal-button,.appliance-plugin-floatbtns .font-style-menu .normal-button,.appliance-plugin-floatbtns .image-layer-menu .normal-button,.appliance-plugin-floatbtns .font-colors-menu .normal-button{width:32px;height:32px;touch-action:none}.appliance-plugin-floatbtns .font-colors-menu{justify-content:flex-start;width:128px}.appliance-plugin-floatbtns .font-colors-menu .font-color-button{display:flex;justify-content:center;align-items:center;cursor:pointer;margin:4px;width:22px;height:22px;border-radius:50%;border-width:1px;border-style:solid;border-color:#fff;background-image:conic-gradient(rgba(0,0,0,.06) 0 25%,transparent 0 50%,rgba(0,0,0,.06) 0 75%,transparent 0);background-size:6px 6px;box-sizing:border-box}.appliance-plugin-floatbtns .font-colors-menu .font-color-button.active{border-color:#a7a7a7}.appliance-plugin-floatbtns .font-colors-menu .font-color-button .circle{box-sizing:border-box;width:16px;height:16px;border-radius:50%;border:1px solid rgba(0,0,0,.12);touch-action:none}.appliance-plugin-floatbtns .font-colors-menu .font-color-button .none{position:relative;background-color:#fff}.appliance-plugin-floatbtns .font-colors-menu .font-color-button .none:before{content:"";position:absolute;left:50%;width:1px;height:100%;background-color:#0000001f;transform:rotate(45deg)}.appliance-plugin-floatbtns .font-colors-icon{flex-direction:column}.appliance-plugin-floatbtns .font-colors-icon .color-bar{height:2px;width:12px;margin-top:-2px;background-image:conic-gradient(rgba(0,0,0,.06) 0 25%,transparent 0 50%,rgba(0,0,0,.06) 0 75%,transparent 0);background-size:6px 6px}.appliance-plugin-floatbtns .font-colors-icon .color-bar .color-bar-color{width:100%;height:100%}.appliance-plugin-floatbtns .font-colors-icon .color-bar-fill,.appliance-plugin-floatbtns .font-colors-icon .color-bar-ring{height:12px;width:12px;border-radius:6px;border:1px solid rgba(0,0,0,.12);background-image:conic-gradient(rgba(0,0,0,.06) 0 25%,transparent 0 50%,rgba(0,0,0,.06) 0 75%,transparent 0);background-size:6px 6px}.appliance-plugin-floatbtns .font-colors-icon .color-bar-fill .circle,.appliance-plugin-floatbtns .font-colors-icon .color-bar-ring .circle{width:100%;height:100%;border-radius:50%;touch-action:none}.appliance-plugin-floatbtns .font-colors-icon .color-bar-ring{border:0}.appliance-plugin-floatbtns .font-colors-icon .color-bar-ring .circle{transform:translate(35%,30%);width:60%;height:60%;border-radius:50%;background-color:#fff;touch-action:none}.appliance-plugin-floatbtns .font-color-opacity{box-sizing:border-box;width:100px;height:6px;margin:5px 0 10px;border-radius:3px;background-image:conic-gradient(rgba(0,0,0,.06) 0 25%,transparent 0 50%,rgba(0,0,0,.06) 0 75%,transparent 0);background-size:6px 6px;position:relative}.appliance-plugin-floatbtns .font-color-opacity .range-color{height:6px;box-shadow:inset 0 0 1px #00000040;border-radius:4px;top:0;right:0;bottom:0;left:0}.appliance-plugin-floatbtns .font-color-opacity .range-opacity{position:absolute;top:0;left:-10px;height:6px;width:120px;touch-action:auto}.appliance-plugin-floatbtns .font-color-opacity .range-opacity .range-opacity-data-icon{position:absolute;top:10px;left:0;width:30px;height:16px;text-align:center;background-color:#333;border-radius:4px;font-size:12px;color:#fff;display:none}.appliance-plugin-floatbtns .font-color-opacity .range-opacity:hover .range-opacity-data-icon{display:block}.appliance-plugin-floatbtns .font-color-opacity .circle{position:absolute;top:-3px;border:2px solid #ffffff;border-radius:50%;cursor:pointer;box-shadow:inset 0 0 1px #00000040,0 0 0 1px #0000000f;width:12px;height:12px;box-sizing:border-box;touch-action:none}.appliance-plugin-floatbtns .font-style-menu{justify-content:space-between;width:128px}.appliance-plugin-floatbtns .font-style-menu .font-style-button{display:flex;justify-content:center;align-items:center;cursor:pointer;margin:4px;width:22px;height:22px;box-sizing:border-box}.appliance-plugin-floatbtns .font-style-menu .font-style-button.active{border-color:#a7a7a7}.appliance-plugin-floatbtns .font-size-barBtn .font-size-input{line-height:20px;height:20px;padding:0 2px;margin-left:2px;width:25px;border:1px solid;border-radius:3px}.appliance-plugin-floatbtns .font-size-barBtn .font-size-input:focus{background:#eef0f6}.appliance-plugin-floatbtns .font-size-barBtn .font-size-btns{width:15px;margin-left:3px;display:flex;flex-direction:column;justify-content:center}.appliance-plugin-floatbtns .font-size-barBtn .font-size-btns .font-size-add,.appliance-plugin-floatbtns .font-size-barBtn .font-size-btns .font-size-cut{position:relative;width:10px;height:10px}.appliance-plugin-floatbtns .font-size-barBtn .font-size-btns .font-size-add:hover,.appliance-plugin-floatbtns .font-size-barBtn .font-size-btns .font-size-cut:hover{background:#eef0f6}.appliance-plugin-floatbtns .font-size-barBtn .font-size-btns .font-size-add:after,.appliance-plugin-floatbtns .font-size-barBtn .font-size-btns .font-size-cut:after{content:"";position:absolute;top:0;border:4px solid #999;border-left-color:transparent;border-right-color:transparent}.appliance-plugin-floatbtns .font-size-barBtn .font-size-btns .font-size-add{margin-bottom:3px}.appliance-plugin-floatbtns .font-size-barBtn .font-size-btns .font-size-add:after{border-top-color:transparent}.appliance-plugin-floatbtns .font-size-barBtn .font-size-btns .font-size-cut:after{border-bottom-color:transparent}.appliance-plugin-floatbtns .font-size-barBtn .font-size-menu{position:absolute;top:35px;width:50px;overflow-y:auto;display:flex;flex-direction:column;align-items:center;background:#fff;border:1px solid #efefef;box-shadow:0 6px 12px #0000001f}.appliance-plugin-floatbtns .font-size-barBtn .font-size-menu .font-size-btn{font-size:12px;line-height:20px;width:100%;text-align:center}.appliance-plugin-floatbtns .font-size-barBtn .font-size-menu .font-size-btn:hover{background:#eef0f6}.appliance-plugin-floatbtns .font-size-barBtn:hover{background:#fff}.appliance-plugin-floatbtns .shapeOpt-sub-menu{flex-direction:column;touch-action:none}.appliance-plugin-floatbtns .shapeOpt-sub-menu .shapeOpt-sub-menu-tabs{display:flex;flex-direction:row;justify-content:flex-start;width:100%}.appliance-plugin-floatbtns .shapeOpt-sub-menu .shapeOpt-sub-menu-tabs .tab-button{width:32px;height:24px}.appliance-plugin-floatbtns .shapeOpt-sub-menu .shapeOpt-sub-menu-content{flex:1;background-color:#eef0f6;display:flex;flex-direction:column;align-items:baseline;width:100%}.appliance-plugin-floatbtns .shapeOpt-sub-menu .shapeOpt-sub-menu-content .input-button{flex:1;height:32px;padding:5px 0;cursor:default;display:flex;flex-direction:row;justify-content:flex-start;width:100%}.appliance-plugin-floatbtns .shapeOpt-sub-menu .shapeOpt-sub-menu-content .input-button img{width:16px;height:16px;margin:0 5px}.appliance-plugin-floatbtns .shapeOpt-sub-menu .shapeOpt-sub-menu-content .input-button .input-number{flex:1;padding:0 3px;height:20px;border:1px solid;border-radius:3px;margin-right:5px;max-width:70px;min-width:40px}.appliance-plugin-floatbtns .shapeOpt-sub-menu .shapeOpt-sub-menu-content .input-button .input-number-btns{width:15px;display:flex;flex-direction:column;justify-content:center}.appliance-plugin-floatbtns .shapeOpt-sub-menu .shapeOpt-sub-menu-content .input-button .input-number-btns .input-number-add,.appliance-plugin-floatbtns .shapeOpt-sub-menu .shapeOpt-sub-menu-content .input-button .input-number-btns .input-number-cut{position:relative;width:10px;height:10px;cursor:pointer}.appliance-plugin-floatbtns .shapeOpt-sub-menu .shapeOpt-sub-menu-content .input-button .input-number-btns .input-number-add:hover,.appliance-plugin-floatbtns .shapeOpt-sub-menu .shapeOpt-sub-menu-content .input-button .input-number-btns .input-number-cut:hover{background:#eef0f6}.appliance-plugin-floatbtns .shapeOpt-sub-menu .shapeOpt-sub-menu-content .input-button .input-number-btns .input-number-add:after,.appliance-plugin-floatbtns .shapeOpt-sub-menu .shapeOpt-sub-menu-content .input-button .input-number-btns .input-number-cut:after{content:"";position:absolute;top:0;border:4px solid #999;border-left-color:transparent;border-right-color:transparent}.appliance-plugin-floatbtns .shapeOpt-sub-menu .shapeOpt-sub-menu-content .input-button .input-number-btns .input-number-add{margin-bottom:3px}.appliance-plugin-floatbtns .shapeOpt-sub-menu .shapeOpt-sub-menu-content .input-button .input-number-btns .input-number-add:after{border-top-color:transparent}.appliance-plugin-floatbtns .shapeOpt-sub-menu .shapeOpt-sub-menu-content .input-button .input-number-btns .input-number-cut:after{border-bottom-color:transparent}.appliance-plugin-floatbtns .shapeOpt-sub-menu .shapeOpt-sub-menu-content .input-button .range-number-container{flex:1;box-sizing:border-box;width:100px;height:6px;margin:7px 6px 7px 0;border-radius:3px;background-color:#3381ff;position:relative}.appliance-plugin-floatbtns .shapeOpt-sub-menu .shapeOpt-sub-menu-content .input-button .range-number-container .range-number-color{height:6px;box-shadow:inset 0 0 1px #00000040;border-radius:4px;top:0;right:0;bottom:0;left:0}.appliance-plugin-floatbtns .shapeOpt-sub-menu .shapeOpt-sub-menu-content .input-button .range-number-container .range-number{position:absolute;top:0;left:-6px;height:6px;width:112px;cursor:pointer}.appliance-plugin-floatbtns .shapeOpt-sub-menu .shapeOpt-sub-menu-content .input-button .range-number-container .circle{position:absolute;top:-3px;border:2px solid #ffffff;border-radius:50%;cursor:pointer;box-shadow:inset 0 0 1px #00000040,0 0 0 1px #0000000f;width:12px;height:12px;box-sizing:border-box;background-color:#3381ff;touch-action:none}.appliance-plugin-floatbtns .shapeOpt-sub-menu .shapeOpt-sub-menu-content .input-button .select-option-menu{position:absolute;top:60px;left:30px;width:80px;display:flex;flex-direction:column;align-items:center;background:#fff;border:1px solid #efefef;box-shadow:0 6px 12px #0000001f}.appliance-plugin-floatbtns .shapeOpt-sub-menu .shapeOpt-sub-menu-content .input-button .select-option-menu .select-option-btn{font-size:12px;line-height:20px;width:100%;text-align:center}.appliance-plugin-floatbtns .shapeOpt-sub-menu .shapeOpt-sub-menu-content .input-button .select-option-menu .select-option-btn:hover{background:#eef0f6}.appliance-plugin-floatbtns .font-colors-line{width:100%;height:0px;border-bottom:1px dashed #ccc;margin-bottom:3px}.appliance-plugin-floatbtns .stroke-type-box{width:100%;height:15px;display:flex;flex-direction:row;justify-content:space-around;padding-top:8px;cursor:default}.appliance-plugin-floatbtns .stroke-type-box .stroke-type-box-item{box-sizing:content-box;padding-top:2px;width:20px;height:3px;border:0;cursor:pointer;opacity:.3}.appliance-plugin-floatbtns .stroke-type-box .stroke-type-box-item.active{opacity:1}.appliance-plugin-floatbtns .stroke-type-box .stroke-type-box-item.Stroke{margin-top:2px;padding:0;height:3px;border-radius:0 10px}.appliance-plugin-floatbtns .stroke-type-box .stroke-type-box-item.Normal{height:0;border-bottom:3px solid}.appliance-plugin-floatbtns .stroke-type-box .stroke-type-box-item.Dotted{height:0;border-bottom:3px dotted}.appliance-plugin-floatbtns .stroke-type-box .stroke-type-box-item.LongDotted{height:0;border-bottom:3px dashed}.appliance-plugin-fill-scene-snapshot-img{position:absolute;top:50%;left:50%;max-width:100%;max-height:100%;transform:translate(-50%,-50%);pointer-events:none}.index-module__Container__nLsM3{position:absolute;top:0;left:0;width:100%;height:100%;overflow:hidden;outline:none;pointer-events:none;touch-action:none}.index-module__Container__nLsM3 *{touch-action:none}.index-module__Container__nLsM3 .index-module__CanvasBox__j2Xe-{position:relative;width:100%;height:100%;pointer-events:none}.index-module__Container__nLsM3 .index-module__CanvasBox__j2Xe- .index-module__FloatCanvas__d1YR7{position:absolute;top:0;left:0;width:100%;height:100%;z-index:1}.index-module__Container__nLsM3 .index-module__CanvasBox__j2Xe- .index-module__TopFloatCanvas__7IaCw{position:absolute;top:0;left:0;width:100%;height:100%;z-index:2}.index-module__Container__nLsM3 .index-module__CanvasBoxSub__hcMeK{position:absolute!important;top:0;left:0;width:100%;height:100%;z-index:1}.index-module__Container__nLsM3 .index-module__SnapshotBox__--eeE{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:-1}.index-module__Container__nLsM3 .index-module__FloatBar__cm-EL{position:absolute;top:0;left:0;width:0;height:0;pointer-events:none}.index-module__Container__nLsM3 .index-module__FloatBar__cm-EL .appliance-plugin-hightlight-box{position:relative;box-sizing:border-box;width:100%;height:100%;border:1px solid;z-index:1;pointer-events:none}.index-module__Container__nLsM3 .index-module__FloatBar__cm-EL .appliance-plugin-hightlight-box .point{position:absolute;width:7px;height:7px;transform:translate(-50%,-50%);pointer-events:none}.index-module__Container__nLsM3 .index-module__FloatBar__cm-EL .appliance-plugin-hightlight-box .point-dot{margin:-1px 0 0 -1px;width:5px;height:5px;border:1px solid;border-radius:3px;background-color:#fff}.index-module__Container__nLsM3 .index-module__FloatBar__cm-EL .appliance-plugin-hightlight-box .LT,.index-module__Container__nLsM3 .index-module__FloatBar__cm-EL .appliance-plugin-hightlight-box .LC,.index-module__Container__nLsM3 .index-module__FloatBar__cm-EL .appliance-plugin-hightlight-box .LB{left:0}.index-module__Container__nLsM3 .index-module__FloatBar__cm-EL .appliance-plugin-hightlight-box .LT,.index-module__Container__nLsM3 .index-module__FloatBar__cm-EL .appliance-plugin-hightlight-box .TC,.index-module__Container__nLsM3 .index-module__FloatBar__cm-EL .appliance-plugin-hightlight-box .RT{top:0}.index-module__Container__nLsM3 .index-module__FloatBar__cm-EL .appliance-plugin-hightlight-box .RT,.index-module__Container__nLsM3 .index-module__FloatBar__cm-EL .appliance-plugin-hightlight-box .RC,.index-module__Container__nLsM3 .index-module__FloatBar__cm-EL .appliance-plugin-hightlight-box .RB{right:-7px}.index-module__Container__nLsM3 .index-module__FloatBar__cm-EL .appliance-plugin-hightlight-box .RB,.index-module__Container__nLsM3 .index-module__FloatBar__cm-EL .appliance-plugin-hightlight-box .BC,.index-module__Container__nLsM3 .index-module__FloatBar__cm-EL .appliance-plugin-hightlight-box .LB{bottom:-7px}.index-module__Container__nLsM3 .index-module__FloatBar__cm-EL .appliance-plugin-hightlight-box .RC,.index-module__Container__nLsM3 .index-module__FloatBar__cm-EL .appliance-plugin-hightlight-box .LC{top:50%}.index-module__Container__nLsM3 .index-module__FloatBar__cm-EL .appliance-plugin-hightlight-box .TC,.index-module__Container__nLsM3 .index-module__FloatBar__cm-EL .appliance-plugin-hightlight-box .BC{left:50%}.index-module__Container__nLsM3 .index-module__FloatBar__cm-EL .appliance-plugin-hightlight-box .lock{pointer-events:none;position:absolute;width:22px;height:22px;top:-11px;left:-11px}.index-module__Container__nLsM3 .index-module__FloatBar__cm-EL .appliance-plugin-floatCanvas-box{position:absolute;z-index:1;overflow:hidden}.index-module__Container__nLsM3 .index-module__FloatBar__cm-EL .appliance-plugin-floatCanvas{width:100%;height:100%}.index-module__Container__nLsM3 .index-module__FloatBar__cm-EL .editor-box{position:absolute;touch-action:none}.index-module__Container__nLsM3 .index-module__FloatBar__cm-EL .editor-box.readonly{pointer-events:none;border-color:transparent}.index-module__Container__nLsM3 .index-module__FloatBar__cm-EL .editor{position:relative;padding:5px;pointer-events:none;resize:none;z-index:2;white-space:pre;box-sizing:content-box;display:flex;flex-direction:column;align-items:baseline}.index-module__Container__nLsM3 .index-module__FloatBar__cm-EL .editor:focus,.index-module__Container__nLsM3 .index-module__FloatBar__cm-EL .editor:focus-visible{outline:none}.index-module__Container__nLsM3 .index-module__FloatBar__cm-EL .editor div{min-width:2px;min-height:inherit}.index-module__Container__nLsM3 .index-module__RotateBtn__HSSkf{position:absolute;cursor:move;top:0;left:0;width:16px;height:16px;z-index:2;pointer-events:auto}.index-module__Container__nLsM3 .index-module__RotateBtn__HSSkf .appliance-plugin-rotate-btn{position:absolute;left:0;top:0;width:16px;height:16px;border-radius:8px;display:flex;justify-content:center;align-items:center;pointer-events:none}.index-module__Container__nLsM3 .index-module__RotateBtn__HSSkf .appliance-plugin-rotate-btn img{width:12px;height:12px}.index-module__Container__nLsM3 .index-module__RotateBtn__HSSkf .appliance-plugin-rotate-mouse-pointer{position:relative;width:100%;height:100%;opacity:0;pointer-events:none}.index-module__Container__nLsM3 .index-module__RotateBtn__HSSkf .appliance-plugin-rotate-mouse-pointer.active{opacity:1}.index-module__Container__nLsM3 .index-module__RotateBtn__HSSkf .appliance-plugin-rotate-mouse-pointer img{width:100%;height:100%}.index-module__Container__nLsM3 .index-module__RotateBtn__HSSkf .appliance-plugin-rotate-mouse-pointer .angle-icon{position:absolute;top:-16px;left:-16px;width:30px;height:16px;text-align:center;background-color:#333;border-radius:4px;font-size:12px;color:#fff}.index-module__Container__nLsM3 .index-module__ResizeBtn__yjvda{position:absolute;box-sizing:content-box;top:0;width:0;left:0;z-index:1;touch-action:none}.index-module__Container__nLsM3 .index-module__CursorBox__2UHvI{position:absolute;left:0;top:0;z-index:2}.index-module__Container__nLsM3 .index-module__TextEditorContainer__Qm8KC{position:absolute;top:0;left:0;width:100%;height:100%;z-index:1;pointer-events:none;overflow:hidden;transform:translateZ(0)}.index-module__Container__nLsM3 .index-module__TextEditorContainer__Qm8KC .editor-box{position:absolute;touch-action:none;border:1px dashed transparent;box-sizing:border-box}.index-module__Container__nLsM3 .index-module__TextEditorContainer__Qm8KC .editor-box.none{display:none}.index-module__Container__nLsM3 .index-module__TextEditorContainer__Qm8KC .editor-box.active{pointer-events:auto}.index-module__Container__nLsM3 .index-module__TextEditorContainer__Qm8KC .editor-box.active:hover{border-style:solid;cursor:text}.index-module__Container__nLsM3 .index-module__TextEditorContainer__Qm8KC .editor-box.active .editor{opacity:0;pointer-events:none}.index-module__Container__nLsM3 .index-module__TextEditorContainer__Qm8KC .editor-box.editing{pointer-events:auto}.index-module__Container__nLsM3 .index-module__TextEditorContainer__Qm8KC .editor-box.editing .editor{opacity:1;pointer-events:none}.index-module__Container__nLsM3 .index-module__TextEditorContainer__Qm8KC .editor-box.editing:hover{border-color:var(--text-editor-border-color-unable)!important}.index-module__Container__nLsM3 .index-module__TextEditorContainer__Qm8KC .editor-box.hover:hover{border-style:solid}.index-module__Container__nLsM3 .index-module__TextEditorContainer__Qm8KC .editor-box.hover .editor{opacity:1;pointer-events:auto}.index-module__Container__nLsM3 .index-module__TextEditorContainer__Qm8KC .editor{position:relative;padding:5px;pointer-events:none;font-family:sans-serif;resize:none;z-index:2;white-space:nowrap;box-sizing:content-box;display:flex;flex-direction:column;align-items:baseline}.index-module__Container__nLsM3 .index-module__TextEditorContainer__Qm8KC .editor:focus,.index-module__Container__nLsM3 .index-module__TextEditorContainer__Qm8KC .editor:focus-visible{outline:none}.index-module__Container__nLsM3 .index-module__TextEditorContainer__Qm8KC .editor div{min-width:2px;min-height:inherit}.index-module__Container__nLsM3 .index-module__ResizeTowBox__HOllX{position:absolute;top:0;width:0;left:0}.index-module__Container__nLsM3 .index-module__ResizeTowBox__HOllX .appliance-plugin-point-btn{position:absolute;width:5px;height:5px;border:1px solid;border-radius:3px;transform:translate(-50%,-50%);background-color:#fff;z-index:2}.index-module__Container__nLsM3 .index-module__ResizeTowBox__HOllX .appliance-plugin-point-draggable-btn{position:absolute;width:10px;height:10px;margin-top:-5px;margin-left:-5px;z-index:3;pointer-events:auto;cursor:move;touch-action:none}.index-module__Container__nLsM3 .index-module__FloatBarBtn__FJrOG{position:absolute;pointer-events:none}.cursor-box{color:#fff;padding:4px;border-radius:2px;width:100%;height:100%}.cursor-box .cursor-name-text{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;max-width:80px}.cursor-pencil-image{width:26px;height:26px}.cursor-selector-image{width:24px;height:24px}.cursor-selector-avatar{border-radius:50%;border-style:solid;border-width:2px;border-color:#fff;margin-bottom:2px}.cursor-inner{border-radius:4px;display:flex;align-items:center;justify-content:center;flex-direction:row;padding-left:4px;padding-right:4px;font-size:12px}.cursor-inner-mellow{height:32px;border-radius:16px;display:flex;align-items:center;justify-content:center;flex-direction:row;padding-left:16px;padding-right:16px}.cursor-tag-name{font-size:12px;margin-left:4px;padding:2px 8px;border-radius:4px}.cursor-mid{display:flex;flex-direction:column;align-items:center;justify-content:center;position:absolute;width:180px;height:64px}.cursor-shape-offset{display:flex;flex-direction:column;align-items:center;justify-content:center;position:absolute;width:180px;height:64px;margin-left:-30px;margin-top:12px}
|