@vvfx/sdk 0.2.2-beta.1 → 0.2.2-beta.12
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/dist/{src/config.d.ts → config.d.ts} +24 -1
- package/dist/{src/html-overlay → html-overlay}/auto-height-runtime.d.ts +5 -0
- package/dist/{src/html-overlay → html-overlay}/manager.d.ts +53 -0
- package/dist/{src/html-overlay → html-overlay}/overlay-transform.d.ts +3 -1
- package/dist/{src/index.d.ts → index.d.ts} +2 -2
- package/dist/index.js +960 -204
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +960 -204
- package/dist/index.mjs.map +1 -1
- package/dist/layer-order.d.ts +7 -0
- package/dist/{src/sdk-item → sdk-item}/card-item.d.ts +2 -6
- package/dist/{src/sdk.d.ts → sdk.d.ts} +22 -2
- package/dist/{src/types.d.ts → types.d.ts} +17 -18
- package/dist/{src/utils → utils}/page-data-utils.d.ts +11 -0
- package/package.json +2 -2
- /package/dist/{src/exporter → exporter}/config.d.ts +0 -0
- /package/dist/{src/exporter → exporter}/const.d.ts +0 -0
- /package/dist/{src/exporter → exporter}/export-media.d.ts +0 -0
- /package/dist/{src/exporter → exporter}/exporter.d.ts +0 -0
- /package/dist/{src/exporter → exporter}/index.d.ts +0 -0
- /package/dist/{src/exporter → exporter}/types.d.ts +0 -0
- /package/dist/{src/exporter → exporter}/utils.d.ts +0 -0
- /package/dist/{src/exporter → exporter}/wav-audio.d.ts +0 -0
- /package/dist/{src/gesture-handler → gesture-handler}/gizmo/adsorption-gizmo.d.ts +0 -0
- /package/dist/{src/gesture-handler → gesture-handler}/gizmo/control-gizmo.d.ts +0 -0
- /package/dist/{src/gesture-handler → gesture-handler}/gizmo/gizmo.d.ts +0 -0
- /package/dist/{src/gesture-handler → gesture-handler}/gizmo/icon-gizmo.d.ts +0 -0
- /package/dist/{src/gesture-handler → gesture-handler}/gizmo/index.d.ts +0 -0
- /package/dist/{src/gesture-handler → gesture-handler}/gizmo/item-create-gizmo.d.ts +0 -0
- /package/dist/{src/gesture-handler → gesture-handler}/gizmo/loading-gizmo.d.ts +0 -0
- /package/dist/{src/gesture-handler → gesture-handler}/gizmo/mask-gizmo.d.ts +0 -0
- /package/dist/{src/gesture-handler → gesture-handler}/gizmo/picture-cut-gizmo.d.ts +0 -0
- /package/dist/{src/gesture-handler → gesture-handler}/gizmo/picture-expand-gizmo.d.ts +0 -0
- /package/dist/{src/gesture-handler → gesture-handler}/gizmo/preference-gizmo.d.ts +0 -0
- /package/dist/{src/gesture-handler → gesture-handler}/gizmo/selector-gizmo.d.ts +0 -0
- /package/dist/{src/gesture-handler → gesture-handler}/gizmo/sprite-text-edit-gizmo.d.ts +0 -0
- /package/dist/{src/gesture-handler → gesture-handler}/gizmo/text-gizmo.d.ts +0 -0
- /package/dist/{src/gesture-handler → gesture-handler}/gizmo/transform-gizmo.d.ts +0 -0
- /package/dist/{src/gesture-handler → gesture-handler}/gizmo/type.d.ts +0 -0
- /package/dist/{src/gesture-handler → gesture-handler}/index.d.ts +0 -0
- /package/dist/{src/gesture-handler → gesture-handler}/src/gesture-handler.d.ts +0 -0
- /package/dist/{src/gesture-handler → gesture-handler}/src/icons.d.ts +0 -0
- /package/dist/{src/gesture-handler → gesture-handler}/utils.d.ts +0 -0
- /package/dist/{src/html-overlay → html-overlay}/document-runtime.d.ts +0 -0
- /package/dist/{src/html-overlay → html-overlay}/document-transform.d.ts +0 -0
- /package/dist/{src/html-overlay → html-overlay}/dom-order.d.ts +0 -0
- /package/dist/{src/html-overlay → html-overlay}/host-message-runtime.d.ts +0 -0
- /package/dist/{src/html-overlay → html-overlay}/html-viewport-style.d.ts +0 -0
- /package/dist/{src/html-overlay → html-overlay}/index.d.ts +0 -0
- /package/dist/{src/html-overlay → html-overlay}/mime-utils.d.ts +0 -0
- /package/dist/{src/html-overlay → html-overlay}/path-utils.d.ts +0 -0
- /package/dist/{src/html-overlay → html-overlay}/shell-runtime.d.ts +0 -0
- /package/dist/{src/math → math}/box2.d.ts +0 -0
- /package/dist/{src/math → math}/circle.d.ts +0 -0
- /package/dist/{src/math → math}/euler.d.ts +0 -0
- /package/dist/{src/math → math}/index.d.ts +0 -0
- /package/dist/{src/math → math}/line2.d.ts +0 -0
- /package/dist/{src/math → math}/line3.d.ts +0 -0
- /package/dist/{src/math → math}/matrix4.d.ts +0 -0
- /package/dist/{src/math → math}/plane.d.ts +0 -0
- /package/dist/{src/math → math}/quaternion.d.ts +0 -0
- /package/dist/{src/math → math}/ray-caster.d.ts +0 -0
- /package/dist/{src/math → math}/ray.d.ts +0 -0
- /package/dist/{src/math → math}/type.d.ts +0 -0
- /package/dist/{src/math → math}/utils.d.ts +0 -0
- /package/dist/{src/math → math}/vector2.d.ts +0 -0
- /package/dist/{src/math → math}/vector3.d.ts +0 -0
- /package/dist/{src/screen-shot → screen-shot}/index.d.ts +0 -0
- /package/dist/{src/screen-shot → screen-shot}/screen-shot.d.ts +0 -0
- /package/dist/{src/sdk-item → sdk-item}/base-item.d.ts +0 -0
- /package/dist/{src/sdk-item → sdk-item}/effects-item.d.ts +0 -0
- /package/dist/{src/sdk-item → sdk-item}/frame-item.d.ts +0 -0
- /package/dist/{src/sdk-item → sdk-item}/generator-item.d.ts +0 -0
- /package/dist/{src/sdk-item → sdk-item}/group-item.d.ts +0 -0
- /package/dist/{src/sdk-item → sdk-item}/index.d.ts +0 -0
- /package/dist/{src/sdk-item → sdk-item}/sprite-item.d.ts +0 -0
- /package/dist/{src/sdk-item → sdk-item}/text-item.d.ts +0 -0
- /package/dist/{src/sdk-item → sdk-item}/types.d.ts +0 -0
- /package/dist/{src/sdk-item → sdk-item}/video-item.d.ts +0 -0
- /package/dist/{src/service → service}/UndoRedo.d.ts +0 -0
- /package/dist/{src/shared → shared}/index.d.ts +0 -0
- /package/dist/{src/shared → shared}/player.d.ts +0 -0
- /package/dist/{src/size-adapte → size-adapte}/index.d.ts +0 -0
- /package/dist/{src/size-adapte → size-adapte}/size-adapt.d.ts +0 -0
- /package/dist/{src/utils → utils}/background-manager.d.ts +0 -0
- /package/dist/{src/utils → utils}/common-utils.d.ts +0 -0
- /package/dist/{src/utils → utils}/index.d.ts +0 -0
- /package/dist/{src/utils → utils}/interaction-utils.d.ts +0 -0
- /package/dist/{src/utils → utils}/json-data-utils.d.ts +0 -0
- /package/dist/{src/utils → utils}/layout-utils.d.ts +0 -0
- /package/dist/{src/utils → utils}/player-data-utils.d.ts +0 -0
- /package/dist/{src/utils → utils}/types.d.ts +0 -0
- /package/dist/{src/wireframe → wireframe}/common/box.d.ts +0 -0
- /package/dist/{src/wireframe → wireframe}/common/dashed-line.d.ts +0 -0
- /package/dist/{src/wireframe → wireframe}/common/line.d.ts +0 -0
- /package/dist/{src/wireframe → wireframe}/common/pixi-ext.d.ts +0 -0
- /package/dist/{src/wireframe → wireframe}/common/pixi.d.ts +0 -0
- /package/dist/{src/wireframe → wireframe}/index.d.ts +0 -0
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
import { ExportMediaInitOptions } from './exporter';
|
|
2
2
|
import { GlobalLayoutMode } from './utils';
|
|
3
|
+
import type { CardHTML } from './types';
|
|
4
|
+
import type { CardItem } from './sdk-item/card-item';
|
|
3
5
|
export type SDKMode = 'editor' | 'template';
|
|
6
|
+
export type CardTypeHTMLResolver = (item: CardItem) => CardHTML | undefined;
|
|
4
7
|
/**
|
|
5
8
|
* @description SDK功能配置
|
|
6
9
|
*/
|
|
@@ -136,6 +139,26 @@ export type CardTypeConfig = {
|
|
|
136
139
|
* @description TransformGizmo 左上角展示的 icon URL
|
|
137
140
|
*/
|
|
138
141
|
iconUrl: string;
|
|
142
|
+
/**
|
|
143
|
+
* @description 卡片类型对应的运行时 HTML 渲染配置;函数不会进入序列化数据,恢复时由 cardType 动态解析。
|
|
144
|
+
*/
|
|
145
|
+
html?: CardTypeHTMLResolver;
|
|
146
|
+
/**
|
|
147
|
+
* @description 是否根据 HTML 挂载内容的自然高度自动更新卡片高度
|
|
148
|
+
*/
|
|
149
|
+
autoHeight?: boolean;
|
|
150
|
+
/**
|
|
151
|
+
* @description HTML 内容是否跟随卡片 scale 缩放,关闭后 HTML 按最终显示尺寸重新布局
|
|
152
|
+
*/
|
|
153
|
+
autoScale?: boolean;
|
|
154
|
+
/**
|
|
155
|
+
* @description 是否启用编辑态交互。未配置时默认 true;只有显式 false 时,卡片默认直接交互且不进入编辑态。
|
|
156
|
+
*/
|
|
157
|
+
editable?: boolean;
|
|
158
|
+
/**
|
|
159
|
+
* @description HTML 内容中可在非编辑态直接响应事件的额外 CSS 选择器;会与 SDK 默认交互选择器合并。
|
|
160
|
+
*/
|
|
161
|
+
htmlInteractionSelectors?: string[];
|
|
139
162
|
};
|
|
140
163
|
/**
|
|
141
164
|
* @description 卡片元素参数配置
|
|
@@ -146,7 +169,7 @@ export type CardConfig = {
|
|
|
146
169
|
*/
|
|
147
170
|
backgroundColor: [number, number, number, number];
|
|
148
171
|
/**
|
|
149
|
-
* @description
|
|
172
|
+
* @description 注册的卡片类型列表,支持通过 registerCardType/registerCardTypes 动态配置
|
|
150
173
|
* 每个条目包含 type 标识、显示名称和图标 URL
|
|
151
174
|
*/
|
|
152
175
|
cardTypes: CardTypeConfig[];
|
|
@@ -4,10 +4,15 @@ export type CardHTMLAutoHeightMessage = {
|
|
|
4
4
|
id: string;
|
|
5
5
|
height: number;
|
|
6
6
|
};
|
|
7
|
+
export type CardHTMLAutoHeightRequest = {
|
|
8
|
+
source: 'vvfx-card-html-auto-height-request';
|
|
9
|
+
id: string;
|
|
10
|
+
};
|
|
7
11
|
export type CardHTMLAutoHeightOptions = {
|
|
8
12
|
autoHeightId?: string;
|
|
9
13
|
onAutoHeight?: (height: number) => void;
|
|
10
14
|
};
|
|
11
15
|
export declare function createAutoHeightMessageListener(iframe: HTMLIFrameElement, options?: CardHTMLAutoHeightOptions): CardHTMLRenderCleanup;
|
|
12
16
|
export declare function isCardHTMLAutoHeightMessage(data: unknown, id: string): data is CardHTMLAutoHeightMessage;
|
|
17
|
+
export declare function requestCardHTMLAutoHeight(iframe: HTMLIFrameElement, id: string): void;
|
|
13
18
|
export declare function withCardHTMLAutoHeightBridge(html: string, id?: string): string;
|
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
import type { Box2 } from '../math';
|
|
2
2
|
import { type SnapdomOptions } from '@zumer/snapdom';
|
|
3
|
+
import type { CardTypeConfig } from '../config';
|
|
3
4
|
import type { EventEmitter } from '../shared';
|
|
4
5
|
import type { SDKEvents } from '../sdk';
|
|
5
6
|
import { type SDKItem } from '../sdk-item';
|
|
7
|
+
import type { CardHTML } from '../types';
|
|
6
8
|
type CardRasterizeOptions = {
|
|
7
9
|
width: number;
|
|
8
10
|
height: number;
|
|
@@ -24,15 +26,35 @@ type HTMLOverlayManagerOptions = {
|
|
|
24
26
|
}) => void;
|
|
25
27
|
viewportFit: (box: Box2) => void;
|
|
26
28
|
setCardItemHeight: (id: string, height: number) => void;
|
|
29
|
+
getSelectedItemIds: () => string[];
|
|
30
|
+
getPreSelectedItemId: () => string | undefined;
|
|
31
|
+
getSelectionEdgeStyle: () => {
|
|
32
|
+
color: number;
|
|
33
|
+
alpha: number;
|
|
34
|
+
width: number;
|
|
35
|
+
};
|
|
36
|
+
getPreSelectionEdgeStyle: () => {
|
|
37
|
+
color: number;
|
|
38
|
+
alpha: number;
|
|
39
|
+
width: number;
|
|
40
|
+
};
|
|
41
|
+
getCanvasEventTarget?: () => HTMLElement | undefined;
|
|
42
|
+
resolveCardHTML: (item: SDKItem) => CardHTML | undefined;
|
|
43
|
+
resolveCardTypeConfig: (item: SDKItem) => CardTypeConfig | undefined;
|
|
27
44
|
};
|
|
28
45
|
export declare class HTMLOverlayManager {
|
|
29
46
|
private options;
|
|
30
47
|
private eventCleanups;
|
|
48
|
+
private htmlRootConfigCleanups;
|
|
49
|
+
private pendingContentInteractionEvent?;
|
|
50
|
+
private contentInteractionFrame?;
|
|
31
51
|
private state;
|
|
32
52
|
constructor(options: HTMLOverlayManagerOptions);
|
|
33
53
|
attach(): void;
|
|
54
|
+
get layerElement(): HTMLElement | undefined;
|
|
34
55
|
dispose(): void;
|
|
35
56
|
scheduleRender(): void;
|
|
57
|
+
invalidateCardHTML(id: string): void;
|
|
36
58
|
rasterizeCard(id: string, options: CardRasterizeOptions): Promise<string | undefined>;
|
|
37
59
|
private initEvents;
|
|
38
60
|
private initDOMEvents;
|
|
@@ -40,30 +62,58 @@ export declare class HTMLOverlayManager {
|
|
|
40
62
|
private handleContainerMouseDown;
|
|
41
63
|
private handleContainerMouseMove;
|
|
42
64
|
private handleContainerMouseLeave;
|
|
65
|
+
private isMouseLeaveWithinContainer;
|
|
66
|
+
private handleContainerContextMenu;
|
|
67
|
+
private isHTMLContextMenuEvent;
|
|
43
68
|
private handleViewportTransform;
|
|
44
69
|
private render;
|
|
45
70
|
private syncOverlayOrder;
|
|
71
|
+
private getOrCreateSelectionLayer;
|
|
46
72
|
private renderFrameOverlays;
|
|
47
73
|
private getOrCreateFrameOverlay;
|
|
48
74
|
private getOrCreateOverlay;
|
|
75
|
+
private getOrCreateSelectionOverlay;
|
|
76
|
+
private syncOverlaySelection;
|
|
77
|
+
private getSelectionBoxShadow;
|
|
78
|
+
private getPreSelectionBoxShadow;
|
|
49
79
|
private getHTMLCardIdByEvent;
|
|
50
80
|
private getHoverShellInteractiveIdByEvent;
|
|
81
|
+
private syncActiveContentInteraction;
|
|
82
|
+
private scheduleActiveContentInteractionSync;
|
|
83
|
+
private setActiveContentInteraction;
|
|
84
|
+
private shouldKeepActiveContentInteractionForFocusedElement;
|
|
85
|
+
private resolveHTMLInteractionTarget;
|
|
86
|
+
private getActiveSubtreeInteractionAtEvent;
|
|
87
|
+
private resolveContentInteractionZone;
|
|
88
|
+
private getContentInteractionZones;
|
|
89
|
+
private getContentInteractiveSelector;
|
|
90
|
+
private isContentInteractionDisabled;
|
|
91
|
+
private getContentInteractionZoneMode;
|
|
92
|
+
private invalidateContentInteractionZones;
|
|
93
|
+
private observeContentInteractionZoneResizes;
|
|
51
94
|
private getLayerPoint;
|
|
52
95
|
private getOrCreateContentOverlay;
|
|
53
96
|
private createContentScaleOverlay;
|
|
54
97
|
private syncContentScale;
|
|
98
|
+
private requestAutoHeightFromIframes;
|
|
55
99
|
private syncContentInteraction;
|
|
100
|
+
private syncContentInteractionZones;
|
|
101
|
+
private clearContentInteractionState;
|
|
56
102
|
private syncShellInteraction;
|
|
57
103
|
private enterEditing;
|
|
58
104
|
private exitEditing;
|
|
105
|
+
private isEditableCard;
|
|
59
106
|
private getEditingFitZoom;
|
|
60
107
|
private isEventInsideOverlay;
|
|
61
108
|
private renderOverlayHTML;
|
|
109
|
+
private observeContentInteractionZones;
|
|
110
|
+
private applyHTMLRootConfig;
|
|
62
111
|
private renderOverlayContent;
|
|
63
112
|
private chainCleanups;
|
|
64
113
|
private cleanupOverlayContent;
|
|
65
114
|
private removeOverlay;
|
|
66
115
|
private syncAutoHeight;
|
|
116
|
+
private ensureAutoHeightMode;
|
|
67
117
|
private createAutoHeightObserver;
|
|
68
118
|
private scheduleAutoHeightMeasure;
|
|
69
119
|
private measureAutoHeight;
|
|
@@ -72,6 +122,9 @@ export declare class HTMLOverlayManager {
|
|
|
72
122
|
private getChildrenNaturalHeight;
|
|
73
123
|
private cleanupAutoHeight;
|
|
74
124
|
private applyAutoHeight;
|
|
125
|
+
private getAutoHeightItemHeight;
|
|
75
126
|
private isAutoHeightMessage;
|
|
127
|
+
private isAutoHeightEnabled;
|
|
128
|
+
private isAutoScaleEnabled;
|
|
76
129
|
}
|
|
77
130
|
export {};
|
|
@@ -4,9 +4,11 @@ export type CardOverlayBoxStyle = {
|
|
|
4
4
|
top: string;
|
|
5
5
|
width: string;
|
|
6
6
|
height: string;
|
|
7
|
+
contentWidth: number;
|
|
8
|
+
contentHeight: number;
|
|
7
9
|
transform: string;
|
|
8
10
|
};
|
|
9
|
-
export declare function getCardOverlayBoxStyle(box: Box2, width: number, height: number, offsetX?: number, offsetY?: number): CardOverlayBoxStyle;
|
|
11
|
+
export declare function getCardOverlayBoxStyle(box: Box2, width: number, height: number, offsetX?: number, offsetY?: number, _autoScale?: boolean): CardOverlayBoxStyle;
|
|
10
12
|
export declare function isPointInCardOverlayBox(box: Box2, point: {
|
|
11
13
|
x: number;
|
|
12
14
|
y: number;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
export type { SDKOptions, SDKInputParam, PageData, PageProperty, ViewProperty, ActiveData, ViewParam, BaseItemProperty, SpriteItemProperty, TextItemProperty, VideoItemProperty, GeneratorItemProperty, FrameItemProperty, FrameLayoutMode, SpriteCreateInfo, TextCreateInfo, GroupCreateInfo, VideoCreateInfo, GeneratorCreateInfo, EffectsCreateInfo, FrameCreateInfo, CardCreateInfo, CardItemProperty, CardItemTransformInfo, ItemCreateInfo, } from './types';
|
|
2
|
-
export type { CardTypeConfig, CardConfig } from './config';
|
|
1
|
+
export type { SDKOptions, SDKInputParam, PageData, PageProperty, ViewProperty, ActiveData, ViewParam, BaseItemProperty, SpriteItemProperty, TextItemProperty, VideoItemProperty, GeneratorItemProperty, FrameItemProperty, FrameLayoutMode, SpriteCreateInfo, TextCreateInfo, GroupCreateInfo, VideoCreateInfo, GeneratorCreateInfo, EffectsCreateInfo, FrameCreateInfo, CardCreateInfo, CardItemProperty, CardItemTransformInfo, CardHTML, CardHTMLContent, CardHTMLInlineContent, CardHTMLDOMRendererContent, CardHTMLDocumentContent, CardHTMLDocumentMessage, CardHTMLShellContent, CardHTMLShellRenderer, CardHTMLShellRendererContext, CardHTMLShellRendererResult, CardHTMLDOMRenderer, CardHTMLContentCleanup, CardHTMLRenderCleanup, CardHTMLRootConfig, CardHTMLRootStyle, ItemCreateInfo, } from './types';
|
|
2
|
+
export type { SDKConfig, SDKMode, CardTypeConfig, CardConfig, CardTypeHTMLResolver, } from './config';
|
|
3
3
|
export type { SDKItem } from './sdk-item';
|
|
4
4
|
export { BaseItem, SpriteItem, TextItem, VideoItem, GroupItem, GeneratorItem, EffectsItem, FrameItem, CardItem, isBaseItem, isSpriteItem, isTextItem, isVideoItem, isGroupItem, isGeneratorItem, isEffectsItem, isFrameItem, isCardItem, SDKItemType, } from './sdk-item';
|
|
5
5
|
export type { SDKItemOptions, SpriteItemOptions, TextItemOptions, VideoItemOptions, GroupItemOptions, GeneratorItemOptions, EffectsItemOptions, FrameItemOptions, CardItemOptions, } from './sdk-item';
|