@vvfx/ge-ir 0.0.1-beta.6 → 0.0.1-beta.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +65 -27
- package/dist/common/coordinate-mapping.d.ts +14 -0
- package/dist/common/data-path.d.ts +15 -0
- package/dist/common/json-normalization.d.ts +3 -0
- package/dist/common/math.d.ts +4 -0
- package/dist/{passthrough.d.ts → effects-passthrough.d.ts} +3 -2
- package/dist/ge2ir/assemble.d.ts +4 -0
- package/dist/ge2ir/index.d.ts +4 -2
- package/dist/ge2ir/mapping.d.ts +6 -0
- package/dist/ge2ir/{parsers/component-parser.d.ts → parser/component.d.ts} +5 -4
- package/dist/ge2ir/parser/layer.d.ts +4 -0
- package/dist/ge2ir/{scene-reader.d.ts → parser/scene.d.ts} +2 -2
- package/dist/ge2ir/{parsers/timeline-parser.d.ts → parser/timeline.d.ts} +5 -3
- package/dist/ge2ir/{merge/merge.d.ts → post-process.d.ts} +1 -1
- package/dist/ge2ir/types.d.ts +4 -3
- package/dist/index.d.ts +7 -18
- package/dist/index.js +2277 -2496
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +2277 -2480
- package/dist/index.mjs.map +1 -1
- package/dist/ir2ge/assemble.d.ts +8 -0
- package/dist/ir2ge/converter/animation.d.ts +5 -0
- package/dist/ir2ge/converter/bezier.d.ts +35 -0
- package/dist/ir2ge/converter/layer-strategy.d.ts +18 -0
- package/dist/ir2ge/converter/normalized-animation.d.ts +15 -0
- package/dist/ir2ge/converter/timing.d.ts +14 -0
- package/dist/ir2ge/{ir/layer-utils.d.ts → converter/transform.d.ts} +5 -4
- package/dist/ir2ge/generator/component.d.ts +9 -0
- package/dist/ir2ge/generator/layer.d.ts +6 -0
- package/dist/ir2ge/generator/timeline.d.ts +7 -0
- package/dist/ir2ge/index.d.ts +10 -14
- package/dist/ir2ge/mapping.d.ts +5 -0
- package/dist/ir2ge/post-process/ge-mask-remap.d.ts +2 -14
- package/dist/ir2ge/post-process/index.d.ts +8 -18
- package/dist/ir2ge/post-process/mask.d.ts +5 -18
- package/dist/ir2ge/post-process/merge-preserved-resources.d.ts +3 -0
- package/dist/ir2ge/post-process/parenting.d.ts +2 -2
- package/dist/ir2ge/post-process/visibility.d.ts +11 -15
- package/dist/ir2ge/types.d.ts +27 -18
- package/package.json +3 -3
- package/dist/ge2ir/converter.d.ts +0 -3
- package/dist/ge2ir/pool/pool.d.ts +0 -4
- package/dist/ge2ir/reverse/blend-mode.d.ts +0 -2
- package/dist/ge2ir/reverse/coordinate.d.ts +0 -1
- package/dist/ge2ir/reverse/end-behavior.d.ts +0 -3
- package/dist/ge2ir/reverse/timing.d.ts +0 -2
- package/dist/ir2ge/assembly/generator.d.ts +0 -21
- package/dist/ir2ge/assembly/scene-assembly.d.ts +0 -11
- package/dist/ir2ge/builders/animation.d.ts +0 -4
- package/dist/ir2ge/builders/bezier.d.ts +0 -44
- package/dist/ir2ge/builders/component.d.ts +0 -13
- package/dist/ir2ge/builders/effects.d.ts +0 -9
- package/dist/ir2ge/builders/layer.d.ts +0 -6
- package/dist/ir2ge/builders/timeline.d.ts +0 -9
- package/dist/ir2ge/builders/timing.d.ts +0 -17
- package/dist/ir2ge/ir/anchor-strategy.d.ts +0 -24
- package/dist/ir2ge/ir/layer-dimensions.d.ts +0 -7
- package/dist/ir2ge/ir/parent-link.d.ts +0 -6
- package/dist/ir2ge/ir/specific.d.ts +0 -12
- package/dist/ir2ge/utils.d.ts +0 -14
- package/dist/shared/coordinate.d.ts +0 -11
- package/dist/shared/json-value.d.ts +0 -2
- package/dist/shared/types.d.ts +0 -60
- /package/dist/ge2ir/{parsers/animation-parser.d.ts → parser/animation.d.ts} +0 -0
- /package/dist/ge2ir/{parsers/keyframe-parser.d.ts → parser/keyframe.d.ts} +0 -0
- /package/dist/ge2ir/{parsers/transform-parser.d.ts → parser/transform.d.ts} +0 -0
package/README.md
CHANGED
|
@@ -1,38 +1,74 @@
|
|
|
1
1
|
# @vvfx/ge-ir
|
|
2
2
|
|
|
3
3
|
> 内部转换包。统一承载 Galacean Effects JSONScene 与 `@vvfx/animation-ir`
|
|
4
|
-
> 之间的双向转换能力,供 monorepo 内的 lottie2ge、
|
|
4
|
+
> 之间的双向转换能力,供 monorepo 内的 lottie2ge、ge-dsl、调试页面等链路复用。
|
|
5
5
|
|
|
6
6
|
## 能力范围
|
|
7
7
|
|
|
8
8
|
```
|
|
9
|
-
JSONScene ── convertGEToIR ──> IRComposition ── convertIRToGE ──> JSONScene
|
|
10
|
-
@vvfx/animation-ir
|
|
9
|
+
GE JSONScene ── convertGEToIR ──> IRComposition ── convertIRToGE ──> GE JSONScene
|
|
11
10
|
```
|
|
12
11
|
|
|
13
12
|
本包不定义 IR 数据模型;`@vvfx/animation-ir` 仍是 IR 类型和校验逻辑的唯一真源。
|
|
14
13
|
|
|
14
|
+
## 源码结构
|
|
15
|
+
|
|
16
|
+
```text
|
|
17
|
+
src/
|
|
18
|
+
├── common/
|
|
19
|
+
│ ├── coordinate-mapping.ts # GE 2D/3D 坐标换算
|
|
20
|
+
│ ├── data-path.ts # 实体 ID、DataPath 与实体池索引
|
|
21
|
+
│ ├── json-normalization.ts # JSON 边界校验与规范化
|
|
22
|
+
│ └── math.ts # 数值计算
|
|
23
|
+
├── ge2ir/
|
|
24
|
+
│ ├── index.ts # GE → IR 流程编排
|
|
25
|
+
│ ├── assemble.ts # 组装最终 IRComposition
|
|
26
|
+
│ ├── parser/ # 解析 scene、layer、component、animation
|
|
27
|
+
│ ├── mapping.ts # GE 值到 IR 值的纯映射
|
|
28
|
+
│ └── post-process.ts # 合并图层并恢复层级
|
|
29
|
+
├── ir2ge/
|
|
30
|
+
│ ├── index.ts # IR → GE 流程编排
|
|
31
|
+
│ ├── assemble.ts # 组装最终 GE JSONScene
|
|
32
|
+
│ ├── converter/ # IR 语义到 GE payload 的转换
|
|
33
|
+
│ ├── generator/ # 生成 item、component 和 timeline
|
|
34
|
+
│ ├── post-process/ # 处理层级、mask、可见性与保留资源
|
|
35
|
+
│ ├── mapping.ts # IR 值到 GE 值的纯映射
|
|
36
|
+
│ └── types.ts # 内部类型与生成阶段实体池
|
|
37
|
+
├── effects-passthrough.ts # Effects 保真数据的读取与失效处理
|
|
38
|
+
└── index.ts # 稳定公开入口
|
|
39
|
+
```
|
|
40
|
+
|
|
15
41
|
## 主要 API
|
|
16
42
|
|
|
17
43
|
```ts
|
|
44
|
+
import type { JSONScene } from '@galacean/effects-specification';
|
|
18
45
|
import { convertGEToIR, convertIRToGE } from '@vvfx/ge-ir';
|
|
46
|
+
import type { GEToIROptions } from '@vvfx/ge-ir';
|
|
19
47
|
|
|
20
|
-
const
|
|
48
|
+
const options: GEToIROptions = { frameRate: 30 };
|
|
49
|
+
const ir = convertGEToIR(scene, options);
|
|
21
50
|
const roundTrippedScene = convertIRToGE(ir);
|
|
22
51
|
```
|
|
23
52
|
|
|
24
53
|
- `convertIRToGE(ir, duration?)`:IR -> GE JSONScene。
|
|
25
54
|
- `convertGEToIR(scene, options)`:GE JSONScene -> IRComposition。
|
|
26
|
-
- `
|
|
27
|
-
|
|
55
|
+
- `GEToIROptions`:当前包含 `frameRate`。
|
|
56
|
+
|
|
57
|
+
`JSONScene` 由 `@galacean/effects-specification` 定义,应从其真实定义包直接导入。
|
|
28
58
|
|
|
29
59
|
## 共享契约
|
|
30
60
|
|
|
31
|
-
|
|
61
|
+
共享实现仍按职责归属在各自源码模块,对外统一从包根入口导入:
|
|
62
|
+
|
|
63
|
+
```ts
|
|
64
|
+
import {
|
|
65
|
+
convert2dTo3dPoint, get2dTo3dRatio, invalidateEffectsLayerSpecific,
|
|
66
|
+
} from '@vvfx/ge-ir';
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
公开的坐标换算能力包括:
|
|
32
70
|
|
|
33
71
|
- `DEFAULT_CAMERA_Z`
|
|
34
|
-
- `DEFAULT_CAMERA_FOV`
|
|
35
|
-
- `DEFAULT_CLIP_MODE`
|
|
36
72
|
- `get2dTo3dRatio`
|
|
37
73
|
- `convert2dTo3dPoint`
|
|
38
74
|
|
|
@@ -52,14 +88,12 @@ const roundTrippedScene = convertIRToGE(ir);
|
|
|
52
88
|
- `sourceHierarchy`
|
|
53
89
|
|
|
54
90
|
`sourceHierarchy` 保留 GE 原始的 `single-item` / `null-sprite-pair` 结构。编辑 anchor、
|
|
55
|
-
rotation 或 scale 后会使该提示失效,后续由 GE
|
|
91
|
+
rotation 或 scale 后会使该提示失效,后续由 GE 生成策略重新按动画语义决策。
|
|
56
92
|
|
|
57
93
|
### Passthrough 辅助函数
|
|
58
94
|
|
|
59
95
|
```ts
|
|
60
|
-
import {
|
|
61
|
-
|
|
62
|
-
const effectsData = getEffectsLayerSpecific(composition, layer);
|
|
96
|
+
import { invalidateEffectsLayerSpecific } from '@vvfx/ge-ir';
|
|
63
97
|
|
|
64
98
|
layer.transform = {
|
|
65
99
|
...layer.transform,
|
|
@@ -70,24 +104,28 @@ invalidateEffectsLayerSpecific(layer, 'opacity');
|
|
|
70
104
|
```
|
|
71
105
|
|
|
72
106
|
修改已经存在等价保真数据的规范化字段后,应调用 `invalidateEffectsLayerSpecific`,避免旧的 GE
|
|
73
|
-
payload
|
|
107
|
+
payload 在生成 GE 时覆盖编辑结果。函数会返回被删除的字段,并自动清理已经为空的容器。
|
|
74
108
|
|
|
75
|
-
|
|
76
|
-
`hasEffectsColorAnimationPassthrough`。
|
|
109
|
+
根入口还提供 `hasEffectsAnimationPassthrough` 和 `hasEffectsColorAnimationPassthrough`。
|
|
77
110
|
|
|
78
|
-
`src/
|
|
111
|
+
生成阶段的内部类型定义在 `src/ir2ge/types.ts`:
|
|
79
112
|
|
|
80
|
-
- `
|
|
81
|
-
- `
|
|
82
|
-
- `
|
|
83
|
-
- `GETransform`
|
|
84
|
-
- `GEItem`
|
|
113
|
+
- `GeneratedVFXItemData`
|
|
114
|
+
- `GeneratedComponentData`
|
|
115
|
+
- `GeneratedMiscData`
|
|
85
116
|
- `ECSCollector`
|
|
86
117
|
|
|
87
|
-
|
|
118
|
+
标准 GE 数据直接复用 `@galacean/effects-specification` 的 `TransformData`、`VFXItemData`、
|
|
119
|
+
`ComponentData`、`EffectsObjectData` 和 `JSONScene`。这里只保留生成阶段确实需要的兼容桥接:组件和 misc
|
|
120
|
+
允许携带转换器透传字段;`GeneratedVFXItemData` 允许省略规范包仍标记为必填、但已废弃的 `content`。
|
|
121
|
+
|
|
122
|
+
## 导出边界
|
|
88
123
|
|
|
89
|
-
|
|
124
|
+
根入口统一提供稳定的跨包能力:
|
|
90
125
|
|
|
91
|
-
-
|
|
92
|
-
-
|
|
93
|
-
-
|
|
126
|
+
- 转换:`convertIRToGE`、`convertGEToIR`。
|
|
127
|
+
- 坐标换算:`convert2dTo3dPoint`、`get2dTo3dRatio`、`DEFAULT_CAMERA_Z`。
|
|
128
|
+
- 动画生成:`buildNormalizedColorAnimation`、`buildNormalizedTransformAnimation`。
|
|
129
|
+
- Passthrough:`hasEffectsAnimationPassthrough`、`hasEffectsColorAnimationPassthrough`、
|
|
130
|
+
`invalidateEffectsLayerSpecific`。
|
|
131
|
+
- 类型:`GEToIROptions`。
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { CameraClipMode } from '@galacean/effects-specification';
|
|
2
|
+
/** Default camera Z position for 2D GE scenes. */
|
|
3
|
+
export declare const DEFAULT_CAMERA_Z = 8;
|
|
4
|
+
/** Default camera field of view for 2D GE scenes. */
|
|
5
|
+
export declare const DEFAULT_CAMERA_FOV = 60;
|
|
6
|
+
/** Default camera clipping mode for 2D GE scenes. */
|
|
7
|
+
export declare const DEFAULT_CLIP_MODE = CameraClipMode.portrait;
|
|
8
|
+
/** Return the pixel-to-world scale for the given canvas. */
|
|
9
|
+
export declare function get2dTo3dRatio(width: number, height: number): number;
|
|
10
|
+
/**
|
|
11
|
+
* Convert a canvas point from a top-left origin to GE world space with a centered
|
|
12
|
+
* origin and inverted Y axis. The Z value is included in the perspective adjustment.
|
|
13
|
+
*/
|
|
14
|
+
export declare function convert2dTo3dPoint(x: number, y: number, z: number, width: number, height: number): [number, number, number];
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import type { DataPath } from '@galacean/effects-specification';
|
|
2
|
+
type GERecord = Record<string, unknown>;
|
|
3
|
+
/** GE entity pool indexed by ID. */
|
|
4
|
+
export type GEPoolIndex = Map<string, GERecord>;
|
|
5
|
+
/** Create a 32-character hexadecimal GE entity ID. */
|
|
6
|
+
export declare function createId(): string;
|
|
7
|
+
/** Wrap an ID in a GE DataPath reference. */
|
|
8
|
+
export declare function toDataPath(id: string): DataPath;
|
|
9
|
+
/** Index GE pool entries by string ID. */
|
|
10
|
+
export declare function buildPoolIndex(pool: GERecord[] | undefined): GEPoolIndex;
|
|
11
|
+
/** Resolve a GE DataPath against an indexed pool. */
|
|
12
|
+
export declare function resolveDataPath(pool: GEPoolIndex, ref: unknown): GERecord | undefined;
|
|
13
|
+
/** Return the string ID stored in a GE DataPath-like value. */
|
|
14
|
+
export declare function resolveDataPathId(ref: unknown): string | undefined;
|
|
15
|
+
export {};
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import type { EffectsCompositionSpecific, EffectsLayerSpecific, IRComposition, IRLayerNode } from '@vvfx/animation-ir';
|
|
2
|
+
/** Normalized field whose conflicting Effects passthrough data should be removed. */
|
|
2
3
|
export type EffectsLayerSpecificInvalidationTarget = 'position' | 'rotation' | 'scale' | 'color' | 'opacity' | 'anchor' | 'mask' | 'precomp';
|
|
3
|
-
/**
|
|
4
|
+
/** Return Effects passthrough data for a layer from a GE composition. */
|
|
4
5
|
export declare function getEffectsLayerSpecific(ir: IRComposition, layer: IRLayerNode): EffectsLayerSpecific | undefined;
|
|
5
|
-
/**
|
|
6
|
+
/** Return Effects passthrough data for a GE composition. */
|
|
6
7
|
export declare function getEffectsCompositionSpecific(ir: IRComposition): EffectsCompositionSpecific | undefined;
|
|
7
8
|
/**
|
|
8
9
|
* Remove raw GE values that would otherwise shadow an edited normalized field.
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { IRComposition, IRLayerNode } from '@vvfx/animation-ir';
|
|
2
|
+
import type { GESceneContext } from './types';
|
|
3
|
+
/** Assemble parsed GE data into the final normalized IR composition. */
|
|
4
|
+
export declare function assembleIRComposition(scene: Record<string, unknown>, itemIds: string[], layers: IRLayerNode[], ctx: GESceneContext): IRComposition;
|
package/dist/ge2ir/index.d.ts
CHANGED
|
@@ -1,2 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
import type { IRComposition } from '@vvfx/animation-ir';
|
|
2
|
+
import type { GEToIROptions } from './types';
|
|
3
|
+
/** Convert a GE scene to normalized IR while retaining fidelity passthrough data. */
|
|
4
|
+
export declare function convertGEToIR(scene: Record<string, unknown>, options: GEToIROptions): IRComposition;
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { IRBlendMode, IREndBehavior, type IRTimeContext } from '@vvfx/animation-ir';
|
|
2
|
+
import { EndBehavior } from '@galacean/effects-specification';
|
|
3
|
+
export declare function mapBlendModeToIR(GECode: number | undefined): IRBlendMode | undefined;
|
|
4
|
+
export declare function mapEndBehaviorToIR(GEBehavior: EndBehavior | undefined): IREndBehavior | undefined;
|
|
5
|
+
export declare function mapLayerTimingToIR(delay: number, duration: number, frameRate: number): IRTimeContext;
|
|
6
|
+
export declare function convert3dTo2dPoint(x: number, y: number, z: number, width: number, height: number): [number, number, number];
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { IRAssetReference, IRBlendMode, IRColor, IRShapeData, IRTextData } from '@vvfx/animation-ir';
|
|
2
2
|
import type { GESceneContext } from '../types';
|
|
3
|
-
|
|
3
|
+
interface ParsedComponentData {
|
|
4
4
|
type: 'image' | 'solid' | 'text' | 'shape';
|
|
5
5
|
asset?: IRAssetReference;
|
|
6
6
|
solidColor?: IRColor;
|
|
@@ -8,9 +8,10 @@ export interface ComponentData {
|
|
|
8
8
|
shapes?: IRShapeData[];
|
|
9
9
|
blendMode?: IRBlendMode;
|
|
10
10
|
anchorScale?: [number, number];
|
|
11
|
-
/**
|
|
11
|
+
/** Source GE component ID used to remap cross-component references. */
|
|
12
12
|
GEComponentId?: string;
|
|
13
|
-
/** Raw
|
|
13
|
+
/** Raw component mask preserved for source and target reconstruction. */
|
|
14
14
|
rawMask?: Record<string, unknown>;
|
|
15
15
|
}
|
|
16
|
-
export declare function parseComponent(item: Record<string, unknown>, ctx: GESceneContext):
|
|
16
|
+
export declare function parseComponent(item: Record<string, unknown>, ctx: GESceneContext): ParsedComponentData | undefined;
|
|
17
|
+
export {};
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { IRLayerNode } from '@vvfx/animation-ir';
|
|
2
|
+
import type { GESceneContext } from '../types';
|
|
3
|
+
/** Parse one GE item and its referenced component data into an IR layer. */
|
|
4
|
+
export declare function parseItemToLayer(item: Record<string, unknown>, itemId: string, index: number, ctx: GESceneContext): IRLayerNode;
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
export declare function buildSceneContext(scene: Record<string, unknown>, options:
|
|
1
|
+
import type { GEToIROptions, GESceneContext } from '../types';
|
|
2
|
+
export declare function buildSceneContext(scene: Record<string, unknown>, options: GEToIROptions): GESceneContext;
|
|
3
3
|
export declare function getCompositionItemIds(scene: Record<string, unknown>): string[];
|
|
@@ -1,9 +1,11 @@
|
|
|
1
|
+
import { EndBehavior } from '@galacean/effects-specification';
|
|
1
2
|
import type { GESceneContext } from '../types';
|
|
2
|
-
|
|
3
|
+
interface ParsedTimelineData {
|
|
3
4
|
delay: number;
|
|
4
5
|
duration: number;
|
|
5
|
-
endBehavior:
|
|
6
|
+
endBehavior: EndBehavior;
|
|
6
7
|
transformAsset?: Record<string, unknown>;
|
|
7
8
|
spriteColorAsset?: Record<string, unknown>;
|
|
8
9
|
}
|
|
9
|
-
export declare function parseTimeline(itemId: string, ctx: GESceneContext):
|
|
10
|
+
export declare function parseTimeline(itemId: string, ctx: GESceneContext): ParsedTimelineData | undefined;
|
|
11
|
+
export {};
|
package/dist/ge2ir/types.d.ts
CHANGED
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import type { IRColor, IREndBehavior } from '@vvfx/animation-ir';
|
|
2
|
-
import type { GEPoolIndex } from '../
|
|
3
|
-
|
|
2
|
+
import type { GEPoolIndex } from '../common/data-path';
|
|
3
|
+
/** Options for converting a GE scene to IR. */
|
|
4
|
+
export interface GEToIROptions {
|
|
5
|
+
/** Frame rate used to express GE second-based timing in IR frames. */
|
|
4
6
|
frameRate: number;
|
|
5
7
|
}
|
|
6
8
|
export interface GESceneContext {
|
|
@@ -22,4 +24,3 @@ export interface GESceneContext {
|
|
|
22
24
|
textureById: GEPoolIndex;
|
|
23
25
|
itemIdToTrackId: Map<string, string>;
|
|
24
26
|
}
|
|
25
|
-
export type GEJsonContext = GESceneContext;
|
package/dist/index.d.ts
CHANGED
|
@@ -1,18 +1,7 @@
|
|
|
1
|
-
export { convertIRToGE } from './ir2ge
|
|
2
|
-
export { convertGEToIR } from './ge2ir
|
|
3
|
-
export
|
|
4
|
-
export
|
|
5
|
-
export {
|
|
6
|
-
export type {
|
|
7
|
-
export {
|
|
8
|
-
export type { LottieLayerSpecific } from './ir2ge/ir/specific';
|
|
9
|
-
export { hasIndependentParentLifetime } from './ir2ge/ir/parent-link';
|
|
10
|
-
export type { ECSCollector, GEDataPath, GEItem, GEPoolIndex, GERecord, GETransform } from './shared/types';
|
|
11
|
-
export type { ProcessedItem, TransformAnimation } from './ir2ge/types';
|
|
12
|
-
export { DEFAULT_CAMERA_Z, DEFAULT_CAMERA_FOV, DEFAULT_CLIP_MODE, get2dTo3dRatio, convert2dTo3dPoint, } from './shared/coordinate';
|
|
13
|
-
export { assembleScene } from './ir2ge/assembly/scene-assembly';
|
|
14
|
-
export { estimateTextWidth, roundNumber, lerp, createId, toDataPath } from './ir2ge/utils';
|
|
15
|
-
export { irScalarKeyframesToGE, irVectorKeyframesToGE, irPositionKeyframesToGE, shouldUseKeyframeMode, } from './ir2ge/builders/bezier';
|
|
16
|
-
export type { IRToGETimeContext, IRPositionGEResult } from './ir2ge/builders/bezier';
|
|
17
|
-
export { buildTimelineTracks } from './ir2ge/builders/timeline';
|
|
18
|
-
export { normalizeChildVisibilityByParentDelays } from './ir2ge/post-process/visibility';
|
|
1
|
+
export { convertIRToGE } from './ir2ge';
|
|
2
|
+
export { convertGEToIR } from './ge2ir';
|
|
3
|
+
export { buildNormalizedColorAnimation, buildNormalizedTransformAnimation, } from './ir2ge/converter/normalized-animation';
|
|
4
|
+
export { convert2dTo3dPoint, DEFAULT_CAMERA_Z, get2dTo3dRatio, } from './common/coordinate-mapping';
|
|
5
|
+
export { hasEffectsAnimationPassthrough, hasEffectsColorAnimationPassthrough, invalidateEffectsLayerSpecific, } from './effects-passthrough';
|
|
6
|
+
export type { GEToIROptions } from './ge2ir/types';
|
|
7
|
+
export type { EffectsLayerSpecificInvalidationTarget } from './effects-passthrough';
|