@netless/appliance-plugin 1.1.42 → 1.1.43-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.
- package/READMA.zh-CN.md +23 -1
- package/README.md +24 -1
- package/dist/appliance-plugin.js +1 -1
- package/dist/appliance-plugin.mjs +33 -30
- package/dist/{bridge-C8yT2GqS.js → bridge-D68E09T9.js} +1 -1
- package/dist/{bridge-DLGOhX8U.mjs → bridge-DcVN05tP.mjs} +1 -1
- package/dist/bridge.js +1 -1
- package/dist/bridge.mjs +1 -1
- package/dist/collector/collector.d.ts +50 -2
- package/dist/collector/types.d.ts +6 -0
- package/dist/component/svg/manager.d.ts +1 -0
- package/dist/component/svg/snapshot.d.ts +4 -1
- package/dist/component/textEditor/manager.d.ts +3 -0
- package/dist/core/backGroundThread/index.d.ts +6 -1
- package/dist/core/cameraTask.d.ts +45 -0
- package/dist/core/const.d.ts +4 -0
- package/dist/core/enum.d.ts +5 -1
- package/dist/core/error.d.ts +1 -0
- package/dist/core/fontFace.d.ts +5 -3
- package/dist/core/mainEngine.d.ts +230 -31
- package/dist/core/mainThread/base.d.ts +23 -2
- package/dist/core/mainThread/canvas2DReadback.d.ts +27 -0
- package/dist/core/mainThread/index.d.ts +12 -1
- package/dist/core/mainThread/snapshotThread.d.ts +11 -2
- package/dist/core/mainThread/subLocalThread.d.ts +12 -6
- package/dist/core/mainThread/subServiceThread.d.ts +5 -3
- package/dist/core/msgEvent/base.d.ts +4 -1
- package/dist/core/msgEvent/baseForWorker.d.ts +1 -1
- package/dist/core/msgEvent/copyNode/forWorker.d.ts +1 -1
- package/dist/core/msgEvent/forWorker.d.ts +1 -1
- package/dist/core/msgEvent/index.d.ts +5 -3
- package/dist/core/msgEvent/rotateNode/forMain.d.ts +1 -0
- package/dist/core/msgEvent/rotateNode/forWorker.d.ts +1 -1
- package/dist/core/msgEvent/scaleNode/forMain.d.ts +1 -0
- package/dist/core/msgEvent/scaleNode/forWorker.d.ts +1 -1
- package/dist/core/msgEvent/setColor/forMain.d.ts +1 -0
- package/dist/core/msgEvent/setColor/forWorker.d.ts +1 -1
- package/dist/core/msgEvent/setFont/forWorker.d.ts +1 -1
- package/dist/core/msgEvent/setLock/forWorker.d.ts +1 -1
- package/dist/core/msgEvent/setPoint/forWorker.d.ts +1 -1
- package/dist/core/msgEvent/setShape/forWorker.d.ts +1 -1
- package/dist/core/msgEvent/setZIndex/forWorker.d.ts +1 -1
- package/dist/core/msgEvent/translateNode/forMain.d.ts +1 -0
- package/dist/core/msgEvent/translateNode/forWorker.d.ts +1 -1
- package/dist/core/renderRuntimeFallback.d.ts +2 -0
- package/dist/core/rendererBusinessTask.d.ts +30 -0
- package/dist/core/serviceRenderScheduler.d.ts +33 -0
- package/dist/core/tools/base.d.ts +1 -1
- package/dist/core/tools/bitmapEraserFastPath.d.ts +8 -0
- package/dist/core/tools/eraserFaces.d.ts +24 -9
- package/dist/core/tools/image.d.ts +1 -0
- package/dist/core/tools/pencilEraserBitMap.d.ts +62 -14
- package/dist/core/tools/text.d.ts +2 -1
- package/dist/core/types.d.ts +64 -1
- package/dist/core/utils/indexDB.d.ts +3 -3
- package/dist/core/vNodeManager.d.ts +7 -0
- package/dist/core/worker/base.d.ts +52 -7
- package/dist/core/worker/fullWorkerLocal.d.ts +8 -2
- package/dist/core/worker/fullWorkerService.d.ts +7 -3
- package/dist/core/worker/renderCapabilityProbe.d.ts +54 -0
- package/dist/core/worker/simpleWorker.d.ts +2 -2
- package/dist/core/worker/snapshotWork.d.ts +1 -0
- package/dist/core/worker/workerManager.d.ts +17 -4
- package/dist/displayer/floatBar/selectorGesture.d.ts +2 -0
- package/dist/fullWorker.js +138 -139
- package/dist/index-BNHPCii1.mjs +4089 -0
- package/dist/index-B_vZ9d3x.mjs +55912 -0
- package/dist/index-C2AHqjj8.js +570 -0
- package/dist/index-CV8YaU3F.mjs +931 -0
- package/dist/index-CWDWQZBs.mjs +4088 -0
- package/dist/index-DChI1--R.js +1 -0
- package/dist/index-DFo0Gmfx.js +570 -0
- package/dist/index-DiLPVPwQ.js +1 -0
- package/dist/index-GBYM7kT5.js +1 -0
- package/dist/index-GZUDLXJC.js +1 -0
- package/dist/{index-D8p2ph99.mjs → index-K_0NX6pD.mjs} +401 -263
- package/dist/index-NG5kKK1W.mjs +55920 -0
- package/dist/plugin/applianceMultiPlugin.d.ts +18 -3
- package/dist/plugin/applianceSinglePlugin.d.ts +18 -4
- package/dist/plugin/baseApplianceManager.d.ts +138 -12
- package/dist/plugin/baseViewContainerManager.d.ts +40 -3
- package/dist/plugin/bitmapEraserOptions.d.ts +9 -0
- package/dist/plugin/const.d.ts +4 -0
- package/dist/plugin/displayerView.d.ts +7 -7
- package/dist/plugin/initLogAggregator.d.ts +45 -0
- package/dist/plugin/multi/applianceMultiManager.d.ts +1 -0
- package/dist/plugin/multi/containerManager.d.ts +19 -1
- package/dist/plugin/pluginInstanceOwner.d.ts +1 -0
- package/dist/plugin/renderImageBitmapRetirement.d.ts +100 -0
- package/dist/plugin/renderRuntimeCache.d.ts +18 -0
- package/dist/plugin/renderSurface.d.ts +15 -0
- package/dist/plugin/renderingCompatibility.d.ts +21 -5
- package/dist/plugin/roomLifecycle.d.ts +12 -0
- package/dist/plugin/selectorApi.d.ts +8 -0
- package/dist/plugin/single/applianceSingleManager.d.ts +4 -0
- package/dist/plugin/types.d.ts +11 -14
- package/dist/plugin/utils.d.ts +8 -0
- package/dist/subWorker.js +136 -137
- package/dist/undo/index.d.ts +12 -3
- package/dist/undo/timing.d.ts +9 -4
- package/package.json +23 -8
- package/dist/index--wqREfHK.js +0 -570
- package/dist/index-B-tFucpi.mjs +0 -48995
- package/dist/index-BOx854fU.mjs +0 -3266
- package/dist/index-BpiBM5wZ.js +0 -1
- package/dist/index-ByjVgxJm.js +0 -1
- package/dist/index-CSVCH-SQ.mjs +0 -789
- package/dist/index-CfIWmlMn.js +0 -570
- package/dist/index-D6gXcNbF.js +0 -1
- package/dist/index-HAZlgByL.mjs +0 -48987
- package/dist/index-OZXjSPr1.js +0 -1
- package/dist/index-z7deO9Md.mjs +0 -3267
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
export declare const RenderImageBitmapRetireTimeoutMs = 5000;
|
|
2
|
+
export declare const RenderImageBitmapMemoryPressureBytes: number;
|
|
3
|
+
export declare const RenderImageBitmapMemoryPressureCount = 128;
|
|
4
|
+
export declare const RenderImageBitmapMemoryPressureReportIntervalMs = 5000;
|
|
5
|
+
type TimerHandle = ReturnType<typeof setTimeout>;
|
|
6
|
+
export type RenderImageBitmapRetirementScheduler = {
|
|
7
|
+
requestFrame: (callback: FrameRequestCallback) => number;
|
|
8
|
+
cancelFrame: (handle: number) => void;
|
|
9
|
+
setTimer: (callback: () => void, timeoutMs: number) => TimerHandle;
|
|
10
|
+
clearTimer: (handle: TimerHandle) => void;
|
|
11
|
+
now: () => number;
|
|
12
|
+
};
|
|
13
|
+
export type RenderImageBitmapRetirementOptions = {
|
|
14
|
+
timeoutMs?: number;
|
|
15
|
+
memoryPressureBytes?: number;
|
|
16
|
+
memoryPressureCount?: number;
|
|
17
|
+
memoryPressureReportIntervalMs?: number;
|
|
18
|
+
scheduler?: Partial<RenderImageBitmapRetirementScheduler>;
|
|
19
|
+
onCloseError?: (viewId: string, error: unknown, snapshot: RenderImageBitmapMemorySnapshot) => void;
|
|
20
|
+
onScheduleError?: (stage: "request-frame" | "set-watchdog", error: unknown, snapshot: RenderImageBitmapMemorySnapshot) => void;
|
|
21
|
+
onTimeout?: (event: RenderImageBitmapTimeoutEvent) => void;
|
|
22
|
+
onMemoryPressure?: (snapshot: RenderImageBitmapMemorySnapshot) => void;
|
|
23
|
+
};
|
|
24
|
+
export type RenderImageBitmapMemoryViewSnapshot = Readonly<{
|
|
25
|
+
viewId: string;
|
|
26
|
+
activeCount: number;
|
|
27
|
+
estimatedBytes: number;
|
|
28
|
+
oldestAgeMs: number;
|
|
29
|
+
}>;
|
|
30
|
+
/**
|
|
31
|
+
* Tracks ImageBitmap ownership, not browser heap or exact GPU allocation.
|
|
32
|
+
* estimatedBytes uses width * height * 4 as a stable pressure signal.
|
|
33
|
+
*/
|
|
34
|
+
export type RenderImageBitmapMemorySnapshot = Readonly<{
|
|
35
|
+
activeCount: number;
|
|
36
|
+
estimatedBytes: number;
|
|
37
|
+
peakActiveCount: number;
|
|
38
|
+
peakEstimatedBytes: number;
|
|
39
|
+
totalRetiredCount: number;
|
|
40
|
+
totalReleasedCount: number;
|
|
41
|
+
watchdogReleasedCount: number;
|
|
42
|
+
closeErrorCount: number;
|
|
43
|
+
oldestAgeMs: number;
|
|
44
|
+
activeViews: ReadonlyArray<RenderImageBitmapMemoryViewSnapshot>;
|
|
45
|
+
destroyed: boolean;
|
|
46
|
+
}>;
|
|
47
|
+
export type RenderImageBitmapTimeoutEvent = Readonly<{
|
|
48
|
+
viewIds: ReadonlySet<string>;
|
|
49
|
+
releasedCount: number;
|
|
50
|
+
releasedEstimatedBytes: number;
|
|
51
|
+
oldestAgeMs: number;
|
|
52
|
+
snapshot: RenderImageBitmapMemorySnapshot;
|
|
53
|
+
}>;
|
|
54
|
+
export declare function getRenderImageBitmapDestroyLogLevel(beforeDestroy: RenderImageBitmapMemorySnapshot, afterDestroy: RenderImageBitmapMemorySnapshot): "error" | "info" | undefined;
|
|
55
|
+
/**
|
|
56
|
+
* Keeps transferred render bitmaps alive across one browser paint opportunity.
|
|
57
|
+
* The first RAF promotes a bitmap to awaitingPaint; the second RAF releases it.
|
|
58
|
+
*/
|
|
59
|
+
export declare class RenderImageBitmapRetirementQueue {
|
|
60
|
+
private pending;
|
|
61
|
+
private awaitingPaint;
|
|
62
|
+
private readonly entries;
|
|
63
|
+
private readonly timeoutMs;
|
|
64
|
+
private readonly memoryPressureBytes;
|
|
65
|
+
private readonly memoryPressureCount;
|
|
66
|
+
private readonly memoryPressureReportIntervalMs;
|
|
67
|
+
private readonly scheduler;
|
|
68
|
+
private readonly onCloseError?;
|
|
69
|
+
private readonly onScheduleError?;
|
|
70
|
+
private readonly onTimeout?;
|
|
71
|
+
private readonly onMemoryPressure?;
|
|
72
|
+
private activeEstimatedBytes;
|
|
73
|
+
private peakActiveCount;
|
|
74
|
+
private peakEstimatedBytes;
|
|
75
|
+
private totalRetiredCount;
|
|
76
|
+
private totalReleasedCount;
|
|
77
|
+
private watchdogReleasedCount;
|
|
78
|
+
private closeErrorCount;
|
|
79
|
+
private lastMemoryPressureReportAt;
|
|
80
|
+
private frameHandle?;
|
|
81
|
+
private watchdogHandle?;
|
|
82
|
+
private destroyed;
|
|
83
|
+
constructor(options?: RenderImageBitmapRetirementOptions);
|
|
84
|
+
retire(viewId: string, bitmap: ImageBitmap): void;
|
|
85
|
+
getMemorySnapshot(): RenderImageBitmapMemorySnapshot;
|
|
86
|
+
closeNow(viewId: string, bitmap: ImageBitmap): void;
|
|
87
|
+
releaseView(viewId: string): void;
|
|
88
|
+
destroy(): RenderImageBitmapMemorySnapshot;
|
|
89
|
+
private ensureFrame;
|
|
90
|
+
private readonly onFrame;
|
|
91
|
+
private ensureWatchdog;
|
|
92
|
+
private readonly onWatchdog;
|
|
93
|
+
private releaseEntry;
|
|
94
|
+
private closeBitmap;
|
|
95
|
+
private estimateBitmapBytes;
|
|
96
|
+
private reportMemoryPressure;
|
|
97
|
+
private stopSchedulersWhenEmpty;
|
|
98
|
+
private cancelSchedulers;
|
|
99
|
+
}
|
|
100
|
+
export {};
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { type CompactRenderModel } from "./renderingCompatibility";
|
|
2
|
+
export declare const RenderModeCacheDatabaseName = "__APPLIANCE_PLUGIN_RENDER_MODE_DB";
|
|
3
|
+
export declare const RenderModeCacheStoreName = "renderModes";
|
|
4
|
+
export type CachedRenderRuntimeReadResult = {
|
|
5
|
+
renderModel?: CompactRenderModel;
|
|
6
|
+
readFailed?: boolean;
|
|
7
|
+
reason?: string;
|
|
8
|
+
};
|
|
9
|
+
type IDBFactoryLike = Pick<IDBFactory, "open"> & Partial<Pick<IDBFactory, "deleteDatabase">>;
|
|
10
|
+
export type RenderRuntimeCacheDeadlineOptions = {
|
|
11
|
+
timeoutMs?: number;
|
|
12
|
+
};
|
|
13
|
+
export declare function createRenderRuntimeCacheKey(userAgent: string): string;
|
|
14
|
+
export declare function readCachedRenderRuntimeDecisionWithStatus(key: string, factory?: IDBFactoryLike | undefined, options?: RenderRuntimeCacheDeadlineOptions): Promise<CachedRenderRuntimeReadResult>;
|
|
15
|
+
export declare function readCachedRenderRuntimeDecision(key: string, factory?: IDBFactoryLike | undefined, options?: RenderRuntimeCacheDeadlineOptions): Promise<CompactRenderModel | undefined>;
|
|
16
|
+
export declare function writeCachedRenderRuntimeDecision(key: string, renderModel: CompactRenderModel, factory?: IDBFactoryLike | undefined, options?: RenderRuntimeCacheDeadlineOptions): Promise<boolean>;
|
|
17
|
+
export declare function deleteCachedRenderRuntimeDecision(key: string, factory?: IDBFactoryLike | undefined, options?: RenderRuntimeCacheDeadlineOptions): Promise<boolean>;
|
|
18
|
+
export {};
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
export interface RenderSurfaceRefs {
|
|
3
|
+
canvasContainerRef: React.RefObject<HTMLDivElement>;
|
|
4
|
+
subLocalCanvasContainerRef?: React.RefObject<HTMLDivElement>;
|
|
5
|
+
canvasServiceFloatRef: React.RefObject<HTMLCanvasElement>;
|
|
6
|
+
canvasFloatRef: React.RefObject<HTMLCanvasElement>;
|
|
7
|
+
canvasBgRef: React.RefObject<HTMLCanvasElement>;
|
|
8
|
+
canvasTopRef?: React.RefObject<HTMLCanvasElement>;
|
|
9
|
+
}
|
|
10
|
+
export declare const RenderSurface: (props: {
|
|
11
|
+
hasOffscreenCanvas: boolean;
|
|
12
|
+
isUseSimple: boolean;
|
|
13
|
+
generation: number;
|
|
14
|
+
refs: RenderSurfaceRefs;
|
|
15
|
+
}) => React.JSX.Element;
|
|
@@ -1,6 +1,15 @@
|
|
|
1
1
|
import type { ECanvasContextType } from "../core/enum";
|
|
2
|
-
import { VersionWorkerBlacklist, WorkerBlacklistByRuntime, WorkerCanvasContextBlacklistLevel,
|
|
2
|
+
import { VersionWorkerBlacklist, WorkerBlacklistByRuntime, WorkerCanvasContextBlacklistLevel, WorkerMaskTextureFormatBlacklistLevel, WorkerMaskTextureUploadBlacklistLevel, WorkerRenderModeBlacklistLevel } from "./types";
|
|
3
3
|
export type RenderMode = "worker-offscreen-transfer" | "worker-image-bitmap" | "main-thread";
|
|
4
|
+
export type MainThreadRenderMode = "normal" | "readback";
|
|
5
|
+
export declare const RenderCompatibilityPolicyVersion = "xiaomi-android-webview-offscreen-v1";
|
|
6
|
+
export type CompactRenderModel = "offscreenTransfer+webgl2" | "offscreenTransfer+webgl" | "offscreenTransfer+canvas2d" | "imageBitmap+webgl2" | "imageBitmap+webgl" | "imageBitmap+canvas2d" | "mainThread+canvas2d";
|
|
7
|
+
export declare function isCompactRenderModel(value: unknown): value is CompactRenderModel;
|
|
8
|
+
export declare function parseRenderRuntimeModel(value: CompactRenderModel): {
|
|
9
|
+
renderMode: RenderMode;
|
|
10
|
+
contextType: ECanvasContextType;
|
|
11
|
+
};
|
|
12
|
+
export declare function formatRenderRuntimeModel(renderMode: RenderMode, contextType: ECanvasContextType): CompactRenderModel;
|
|
4
13
|
export type RenderingRuntime = {
|
|
5
14
|
kind: "androidWebView" | "iosWebView" | "harmonyArkWeb";
|
|
6
15
|
version: string;
|
|
@@ -18,9 +27,14 @@ export type RenderCapabilities = {
|
|
|
18
27
|
webgl2: boolean;
|
|
19
28
|
webgl: boolean;
|
|
20
29
|
};
|
|
21
|
-
export
|
|
30
|
+
export declare function hasRequiredWorkerUrls(cdn: {
|
|
31
|
+
fullWorkerUrl?: string;
|
|
32
|
+
subWorkerUrl?: string;
|
|
33
|
+
}, useSimple: boolean): boolean;
|
|
34
|
+
export type RenderingCompatibilityReason = "use-worker-main-thread" | "worker-capability-missing" | "use-simple-false" | "render-mode-blacklist" | "image-bitmap-unavailable" | "default-offscreen-transfer" | "worker-program-probe-failed" | "render-probe-passed" | "runtime-webgl-program-failure" | "cached-render-runtime-decision";
|
|
22
35
|
export type RenderingCompatibilityDecision = {
|
|
23
36
|
renderMode: RenderMode;
|
|
37
|
+
mainThreadRenderMode: MainThreadRenderMode;
|
|
24
38
|
contextType: ECanvasContextType;
|
|
25
39
|
reason: RenderingCompatibilityReason;
|
|
26
40
|
capabilities: RenderCapabilities;
|
|
@@ -29,13 +43,16 @@ export type RenderingCompatibilityDecision = {
|
|
|
29
43
|
effectiveContextLevel?: WorkerCanvasContextBlacklistLevel;
|
|
30
44
|
effectiveMaskTextureFormatLevel?: WorkerMaskTextureFormatBlacklistLevel;
|
|
31
45
|
effectiveMaskTextureUploadLevel?: WorkerMaskTextureUploadBlacklistLevel;
|
|
32
|
-
effectiveImageBitmapFeatureLevel?: WorkerImageBitmapFeatureBlacklistLevel;
|
|
33
46
|
issues: string[];
|
|
47
|
+
/** Set when an auto decision was restored from the per-UA IndexedDB cache. */
|
|
48
|
+
renderRuntimeCacheState?: "hit";
|
|
49
|
+
renderRuntimeSource?: "config" | "cache" | "probe" | "fallback";
|
|
34
50
|
};
|
|
35
|
-
type BlacklistKind = "renderMode" | "canvasContext" | "maskTextureFormat" | "maskTextureUpload" | "
|
|
51
|
+
type BlacklistKind = "renderMode" | "canvasContext" | "maskTextureFormat" | "maskTextureUpload" | "fontFaceFallback";
|
|
36
52
|
export declare function normalizeVersion(value: string): string | undefined;
|
|
37
53
|
export declare function compareVersions(left: string, right: string): number;
|
|
38
54
|
export declare function detectRenderingRuntime(userAgent?: string): RenderingRuntime | undefined;
|
|
55
|
+
export declare function isKnownOffscreenTransferCompositionRisk(userAgent: string, runtime?: RenderingRuntime | undefined): boolean;
|
|
39
56
|
export declare function resolveVersionBlacklistLevel(currentVersion: string, rules: VersionWorkerBlacklist | undefined, kind: BlacklistKind, issues?: string[]): number | undefined;
|
|
40
57
|
export declare function mergeWorkerBlacklists(builtin: WorkerBlacklistByRuntime | undefined, injected: WorkerBlacklistByRuntime | undefined, kind: BlacklistKind): WorkerBlacklistByRuntime;
|
|
41
58
|
export declare function isFontFaceFallbackBlacklisted(blacklist: WorkerBlacklistByRuntime | undefined, userAgent?: string): boolean;
|
|
@@ -48,7 +65,6 @@ export declare function resolveRenderingCompatibility(input: {
|
|
|
48
65
|
workerCanvasContextBlacklist?: WorkerBlacklistByRuntime;
|
|
49
66
|
workerMaskTextureFormatBlacklist?: WorkerBlacklistByRuntime;
|
|
50
67
|
workerMaskTextureUploadBlacklist?: WorkerBlacklistByRuntime;
|
|
51
|
-
workerImageBitmapFeatureBlacklist?: WorkerBlacklistByRuntime;
|
|
52
68
|
userAgent?: string;
|
|
53
69
|
capabilities?: RenderCapabilities;
|
|
54
70
|
workerUrl?: boolean;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { Room } from "./types";
|
|
2
|
+
import type { BaseApplianceManager } from "./baseApplianceManager";
|
|
3
|
+
type LifecycleLogger = Pick<BaseApplianceManager["logger"], "error">;
|
|
4
|
+
/**
|
|
5
|
+
* Transitional Room lifecycle interception. It keeps the SDK methods' Promise
|
|
6
|
+
* contract while ensuring Appliance work reaches Done before write access or
|
|
7
|
+
* the connection is relinquished.
|
|
8
|
+
*/
|
|
9
|
+
export declare function installRoomLifecycleInterceptors(room: Room, getManager: () => BaseApplianceManager | undefined, logger: LifecycleLogger): () => void;
|
|
10
|
+
/** Remove this plugin's wrapper without clobbering a newer host wrapper. */
|
|
11
|
+
export declare function uninstallRoomLifecycleInterceptors(room: Room): void;
|
|
12
|
+
export {};
|
|
@@ -31,6 +31,12 @@ export declare class SelectorApiManager {
|
|
|
31
31
|
/** 同一次属性更新导致的几何变化做尾部合并,只派发最后一次 */
|
|
32
32
|
private pendingPropertyGeometryByKey;
|
|
33
33
|
constructor(control: BaseApplianceManager);
|
|
34
|
+
/**
|
|
35
|
+
* Keep SelectorApi usable with older host/test control objects that predate
|
|
36
|
+
* the local-mutation admission hook. Production managers always provide the
|
|
37
|
+
* method; an absent hook preserves the previous API behavior.
|
|
38
|
+
*/
|
|
39
|
+
private canAcceptLocalMutation;
|
|
34
40
|
private formatFieldsFromChanges;
|
|
35
41
|
private hasShapeChanges;
|
|
36
42
|
private resolveShapeDispatchToolsTypes;
|
|
@@ -38,6 +44,8 @@ export declare class SelectorApiManager {
|
|
|
38
44
|
private resolveCancelableUndoTickerId;
|
|
39
45
|
private captureUndoTickerDuringDispatch;
|
|
40
46
|
destroy(): void;
|
|
47
|
+
/** Dispose only one View's selector requests and timers. */
|
|
48
|
+
disposeView(viewId: string): void;
|
|
41
49
|
/** 解析 viewId:未传时取 focuedView / mainView */
|
|
42
50
|
resolveViewId(viewId?: string): string | undefined;
|
|
43
51
|
/** 当前 selector 选中态快照 */
|
|
@@ -4,8 +4,12 @@ import { ViewContainerSingleManager } from "./containerManager";
|
|
|
4
4
|
export declare class ApplianceSingleManager extends BaseApplianceManager {
|
|
5
5
|
viewContainerManager: ViewContainerSingleManager;
|
|
6
6
|
divMainView?: HTMLDivElement;
|
|
7
|
+
private readonly bindMainViewListener;
|
|
7
8
|
constructor(params: BaseApplianceManagerProps);
|
|
8
9
|
init(): void;
|
|
10
|
+
destroy(options?: {
|
|
11
|
+
preserveStorage?: boolean;
|
|
12
|
+
}): Promise<void>;
|
|
9
13
|
activePlugin(): void;
|
|
10
14
|
activeWorker(): Promise<void>;
|
|
11
15
|
onCameraChange: import("lodash").DebouncedFunc<(cameraState: CameraState) => void>;
|
package/dist/plugin/types.d.ts
CHANGED
|
@@ -244,7 +244,7 @@ export interface AppliancePluginInstance {
|
|
|
244
244
|
cleanCurrentScene(retainPpt?: boolean): void;
|
|
245
245
|
/** 把指定的方法注入到指定对象上 */
|
|
246
246
|
/** 销毁 */
|
|
247
|
-
destroy(): void
|
|
247
|
+
destroy(): Promise<void>;
|
|
248
248
|
/** 设置当前用户的读写权限 */
|
|
249
249
|
setWritable(writable: boolean): Promise<void>;
|
|
250
250
|
/** setMemberState */
|
|
@@ -412,7 +412,8 @@ export type Logger = {
|
|
|
412
412
|
};
|
|
413
413
|
export declare enum WorkerRenderModeBlacklistLevel {
|
|
414
414
|
OffscreenTransfer = 1,
|
|
415
|
-
ImageBitmap = 2
|
|
415
|
+
ImageBitmap = 2,
|
|
416
|
+
MainThread = 3
|
|
416
417
|
}
|
|
417
418
|
export declare enum WorkerCanvasContextBlacklistLevel {
|
|
418
419
|
WebGL = 1
|
|
@@ -423,9 +424,6 @@ export declare enum WorkerMaskTextureFormatBlacklistLevel {
|
|
|
423
424
|
export declare enum WorkerMaskTextureUploadBlacklistLevel {
|
|
424
425
|
TextureSubImage2D = 1
|
|
425
426
|
}
|
|
426
|
-
export declare enum WorkerImageBitmapFeatureBlacklistLevel {
|
|
427
|
-
DirtyRect = 1
|
|
428
|
-
}
|
|
429
427
|
export declare enum FontFaceFallbackBlacklistLevel {
|
|
430
428
|
RefreshTextRender = 1
|
|
431
429
|
}
|
|
@@ -457,8 +455,6 @@ export type ExtrasOptions = {
|
|
|
457
455
|
workerMaskTextureFormatBlacklist?: WorkerBlacklistByRuntime;
|
|
458
456
|
/** API 可用但局部纹理上传行为异常的运行时版本 */
|
|
459
457
|
workerMaskTextureUploadBlacklist?: WorkerBlacklistByRuntime;
|
|
460
|
-
/** API 可用但 ImageBitmap crop 行为异常的运行时版本 */
|
|
461
|
-
workerImageBitmapFeatureBlacklist?: WorkerBlacklistByRuntime;
|
|
462
458
|
/** 按运行时版本启用字体加载失败后的文本补绘兜底 */
|
|
463
459
|
fontFaceFallbackBlacklist?: WorkerBlacklistByRuntime;
|
|
464
460
|
/** 是否使用背景Svg功能, 默认值为 ``false`` */
|
|
@@ -516,12 +512,8 @@ export type UndoRedoOpt = {
|
|
|
516
512
|
maxStackLength?: number;
|
|
517
513
|
/** 是否启用 undo 时序补丁, 默认值为 true */
|
|
518
514
|
timingFix?: boolean;
|
|
519
|
-
/**
|
|
515
|
+
/** finalizeRequested 后等待渲染与存储确认的超时时间,单位:毫秒,默认值为 5000 */
|
|
520
516
|
ackTimeout?: number;
|
|
521
|
-
/** 新 ticker 抢占旧 ticker 时的宽限超时时间,单位:毫秒,默认值为 3000 */
|
|
522
|
-
gracePeriodTimeout?: number;
|
|
523
|
-
/** Doing 链路无 ack 时的兜底超时时间,单位:毫秒,默认值为 30000 */
|
|
524
|
-
doingFallbackTimeout?: number;
|
|
525
517
|
};
|
|
526
518
|
export type SyncLoggerOpt = {
|
|
527
519
|
/** 同步日志批量输出窗口,单位:毫秒,默认值为 4000 */
|
|
@@ -572,7 +564,6 @@ export type RequiredExtrasOptions = {
|
|
|
572
564
|
workerCanvasContextBlacklist: WorkerBlacklistByRuntime;
|
|
573
565
|
workerMaskTextureFormatBlacklist: WorkerBlacklistByRuntime;
|
|
574
566
|
workerMaskTextureUploadBlacklist: WorkerBlacklistByRuntime;
|
|
575
|
-
workerImageBitmapFeatureBlacklist: WorkerBlacklistByRuntime;
|
|
576
567
|
fontFaceFallbackBlacklist: WorkerBlacklistByRuntime;
|
|
577
568
|
useBackgroundThread: Required<boolean>;
|
|
578
569
|
syncOpt: Required<SyncOpt>;
|
|
@@ -745,6 +736,10 @@ export type BezierOpt = {
|
|
|
745
736
|
export type PencilEraserOpt = {
|
|
746
737
|
/** 是否使用位图方式局部橡皮擦 */
|
|
747
738
|
useBitMap: boolean;
|
|
739
|
+
/** @deprecated Bitmap Eraser 始终使用事务级 FullLayer 透明 Doing Mask;该字段仅保留配置兼容。 */
|
|
740
|
+
fullLayerDoingMask?: boolean;
|
|
741
|
+
/** Bitmap Eraser 单个事务最多接收的逻辑输入点数,默认值为 ``500`` */
|
|
742
|
+
fullLayerDoingMaskMaxInputPoints?: number;
|
|
748
743
|
/** BitMapEraser 完成擦除时是否删除已完全透明的对象,默认值为 ``true`` */
|
|
749
744
|
removeOnDone?: boolean;
|
|
750
745
|
/** 最大图片宽度 */
|
|
@@ -850,7 +845,9 @@ export type _ObjectTrue = true | {
|
|
|
850
845
|
export type _ArrayTrue = true | Uid[];
|
|
851
846
|
export declare enum EForceStopReason {
|
|
852
847
|
/** 画笔过长 */
|
|
853
|
-
longPencil = "longPencil"
|
|
848
|
+
longPencil = "longPencil",
|
|
849
|
+
/** FullLayer 位图橡皮擦单次输入点数达到上限 */
|
|
850
|
+
longBitmapEraser = "longBitmapEraser"
|
|
854
851
|
}
|
|
855
852
|
export type AutoShapeDebugInfo = {
|
|
856
853
|
workId: string;
|
package/dist/plugin/utils.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { Logger } from "./types";
|
|
2
|
+
import { type InitLogCompletion, type InitLogProgressEvent } from "./initLogAggregator";
|
|
2
3
|
export declare function isTouchEvent(event: any): any;
|
|
3
4
|
export declare function isOnlyOneTouch(event: any): any;
|
|
4
5
|
export declare function getPosition(event: any): {
|
|
@@ -11,6 +12,7 @@ export declare function getClientPosition(event: any): {
|
|
|
11
12
|
};
|
|
12
13
|
export declare class LoggerUtils implements Logger {
|
|
13
14
|
private _logger?;
|
|
15
|
+
private readonly initLogAggregator;
|
|
14
16
|
private pendingArgsByChannel;
|
|
15
17
|
private flushTimerByChannel;
|
|
16
18
|
constructor(_logger?: Logger);
|
|
@@ -23,5 +25,11 @@ export declare class LoggerUtils implements Logger {
|
|
|
23
25
|
errorDebounced(channel: string, ...args: any[]): void;
|
|
24
26
|
infoDebounced(channel: string, ...args: any[]): void;
|
|
25
27
|
warnDebounced(channel: string, ...args: any[]): void;
|
|
28
|
+
recordInitLogProgress(event: InitLogProgressEvent): void;
|
|
29
|
+
completeInitViewLogs(completion: InitLogCompletion): void;
|
|
30
|
+
cancelInitViewLogs(viewId: string): void;
|
|
26
31
|
destroy(): void;
|
|
27
32
|
}
|
|
33
|
+
export declare function logInitProgress(logger: Logger, event: InitLogProgressEvent): void;
|
|
34
|
+
export declare function completeInitViewLogs(logger: Logger, completion: InitLogCompletion): void;
|
|
35
|
+
export declare function cancelInitViewLogs(logger: Logger | undefined, viewId: string): void;
|