reacthub-pixitweenjs 0.2.109-alpha.5 → 0.3.0-alpha.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (222) hide show
  1. package/LICENSE +8 -16
  2. package/LICENSE.md +79 -239
  3. package/README.md +247 -103
  4. package/dist/components/AepComposition/Aep3DPostFx.d.ts +7 -0
  5. package/dist/components/AepComposition/Aep3DPrecompPlane.d.ts +9 -0
  6. package/dist/components/AepComposition/Aep3DScene.d.ts +14 -0
  7. package/dist/components/AepComposition/Aep3DShapeMesh.d.ts +13 -0
  8. package/dist/components/AepComposition/Aep3DTextMesh.d.ts +17 -0
  9. package/dist/components/AepComposition/AepAssetResolver.d.ts +13 -0
  10. package/dist/components/AepComposition/AepAudioLayer.d.ts +28 -0
  11. package/dist/components/AepComposition/AepComposition.d.ts +16 -0
  12. package/dist/components/AepComposition/AepLayerProvider.d.ts +30 -0
  13. package/dist/components/AepComposition/AepLayerRouter.d.ts +5 -0
  14. package/dist/components/AepComposition/AepMsdfTextMesh.d.ts +17 -0
  15. package/dist/components/AepComposition/AepPrecompRenderContext.d.ts +23 -0
  16. package/dist/components/AepComposition/AepPrecompRenderer.d.ts +8 -0
  17. package/dist/components/AepComposition/AepTextOverrideContext.d.ts +8 -0
  18. package/dist/components/AepComposition/AepThemeContext.d.ts +8 -0
  19. package/dist/components/AepComposition/composeTransform3D.d.ts +27 -0
  20. package/dist/components/AepComposition/index.d.ts +39 -0
  21. package/dist/components/AepComposition/matteSourceIds.d.ts +2 -0
  22. package/dist/components/AepComposition/msdfAtlasRegistry.d.ts +16 -0
  23. package/dist/components/AepComposition/pathToThreeShape.d.ts +4 -0
  24. package/dist/components/AepComposition/resolveParentChain.d.ts +3 -0
  25. package/dist/components/AepComposition/resolvePostFxList.d.ts +2 -0
  26. package/dist/components/AepComposition/shouldSplitText.d.ts +26 -0
  27. package/dist/components/AepComposition/threeTextureFromPixi.d.ts +8 -0
  28. package/dist/components/AepComposition/useAepLayerTransform.d.ts +18 -0
  29. package/dist/components/AepComposition/useAepLayerTransform3D.d.ts +8 -0
  30. package/dist/components/AepComposition/useMsdfAtlasRegistry.d.ts +6 -0
  31. package/dist/components/AepComposition/usePixiRenderTexture.d.ts +14 -0
  32. package/dist/components/AepComposition/useResolveAsset.d.ts +8 -0
  33. package/dist/components/AepMask/AepMaskContainer.d.ts +9 -0
  34. package/dist/components/AepMask/PixiTrackMatte.d.ts +10 -0
  35. package/dist/components/AepMask/drawAepMask.d.ts +3 -0
  36. package/dist/components/AepMask/index.d.ts +5 -0
  37. package/dist/components/PixiAudioSprite/HowlerAudioSprite.d.ts +5 -7
  38. package/dist/components/PixiAudioSprite/PixiAudioSprite.d.ts +9 -2
  39. package/dist/components/PixiAudioSprite/useAudioVisualizer.d.ts +2 -2
  40. package/dist/components/PixiAudioSprite/wave-config.d.ts +0 -1
  41. package/dist/components/PixiGifSprite/PixiGifGsapSync.d.ts +14 -10
  42. package/dist/components/PixiImageSprite/PixiImageSprite.d.ts +14 -1
  43. package/dist/components/PixiLottieSprite/PixiLottieSprite.d.ts +8 -2
  44. package/dist/components/PixiNullObject/PixiNullObject.d.ts +25 -0
  45. package/dist/components/PixiNullObject/index.d.ts +2 -0
  46. package/dist/components/PixiPreComp/PixiPreComp.d.ts +29 -0
  47. package/dist/components/PixiPreComp/index.d.ts +3 -0
  48. package/dist/components/PixiPreComp/validatePrecompDepth.d.ts +2 -0
  49. package/dist/components/PixiRemotionSprite/PixiRemotionGifSprite.d.ts +24 -0
  50. package/dist/components/PixiRemotionSprite/PixiRemotionImageSprite.d.ts +18 -0
  51. package/dist/components/PixiRemotionSprite/PixiRemotionSprite.d.ts +5 -2
  52. package/dist/components/PixiRemotionSprite/PixiRemotionVideoCanvaSprite.d.ts +20 -0
  53. package/dist/components/PixiRemotionSprite/index.d.ts +4 -0
  54. package/dist/components/PixiSVGSprite/PixiMorphSvgSprite.d.ts +35 -0
  55. package/dist/components/PixiSVGSprite/PixiSvgPathSprite.d.ts +14 -4
  56. package/dist/components/PixiSVGSprite/index.d.ts +1 -0
  57. package/dist/components/PixiShapeLayer/PixiShapeLayer.d.ts +43 -0
  58. package/dist/components/PixiShapeLayer/drawShape.d.ts +20 -0
  59. package/dist/components/PixiShapeLayer/index.d.ts +4 -0
  60. package/dist/components/PixiShapeLayer/samplePath.d.ts +5 -0
  61. package/dist/components/PixiTextSprite/PixiTextSplit.d.ts +26 -0
  62. package/dist/components/PixiTextSprite/PixiTextSprite.d.ts +20 -5
  63. package/dist/components/PixiTextSprite/index.d.ts +3 -0
  64. package/dist/components/PixiTextSprite/resolveTextSplitFills.d.ts +27 -0
  65. package/dist/components/PixiTextSprite/textAnimator.d.ts +22 -0
  66. package/dist/components/PixiThreeSprite/PixiThreeSprite.d.ts +14 -0
  67. package/dist/components/PixiThreeSprite/index.d.ts +2 -0
  68. package/dist/components/PixiUnifiedTransformer/PixiUnifiedTransformer.d.ts +38 -0
  69. package/dist/components/PixiUnifiedTransformer/index.d.ts +1 -0
  70. package/dist/components/PixiVideoSprite/PixiVideoCanvasSync.d.ts +3 -1
  71. package/dist/components/PixiVideoSprite/PixiVideoSprite.d.ts +8 -2
  72. package/dist/components/index.d.ts +6 -0
  73. package/dist/events/Events.d.ts +0 -1
  74. package/dist/hocs/AbstractContainer.d.ts +19 -1
  75. package/dist/hocs/BorderMaskContainer.d.ts +28 -0
  76. package/dist/hocs/OverlayTilingSprite.d.ts +3 -3
  77. package/dist/hocs/drawMaskShape.d.ts +3 -0
  78. package/dist/hocs/index.d.ts +5 -0
  79. package/dist/hooks/aep/buildAudioLevelTimeline.d.ts +7 -0
  80. package/dist/hooks/aep/buildBezierPathTimeline.d.ts +13 -0
  81. package/dist/hooks/aep/buildColorValueTimeline.d.ts +24 -0
  82. package/dist/hooks/aep/buildLayerTimeline.d.ts +20 -0
  83. package/dist/hooks/aep/buildScalarValueTimeline.d.ts +6 -0
  84. package/dist/hooks/aep/buildVec2ValueTimeline.d.ts +17 -0
  85. package/dist/hooks/aep/easeCache.d.ts +3 -0
  86. package/dist/hooks/aep/effectRegistry.d.ts +5 -0
  87. package/dist/hooks/aep/effects/brightnessContrast.d.ts +2 -0
  88. package/dist/hooks/aep/effects/dropShadow.d.ts +2 -0
  89. package/dist/hooks/aep/effects/fastBoxBlur.d.ts +2 -0
  90. package/dist/hooks/aep/effects/gaussianBlur.d.ts +2 -0
  91. package/dist/hooks/aep/effects/glow.d.ts +2 -0
  92. package/dist/hooks/aep/effects/hueSaturation.d.ts +2 -0
  93. package/dist/hooks/aep/effects/index.d.ts +9 -0
  94. package/dist/hooks/aep/effects/levels.d.ts +2 -0
  95. package/dist/hooks/aep/effects/tint.d.ts +2 -0
  96. package/dist/hooks/aep/effects/types.d.ts +8 -0
  97. package/dist/hooks/aep/index.d.ts +22 -0
  98. package/dist/hooks/aep/interpolateBezierPath.d.ts +3 -0
  99. package/dist/hooks/aep/sampleAnimatable.d.ts +13 -0
  100. package/dist/hooks/aep/useAepBezierPathAnimator.d.ts +12 -0
  101. package/dist/hooks/aep/useAepColorAnimator.d.ts +11 -0
  102. package/dist/hooks/aep/useAepCurrentFrame.d.ts +1 -0
  103. package/dist/hooks/aep/useAepEffectKeyframes.d.ts +4 -0
  104. package/dist/hooks/aep/useAepEffects.d.ts +3 -0
  105. package/dist/hooks/aep/useAepKeyframes.d.ts +15 -0
  106. package/dist/hooks/aep/useAepTextLayout.d.ts +12 -0
  107. package/dist/hooks/aep/useAepValueAnimator.d.ts +2 -0
  108. package/dist/hooks/aep/useAepVec2Animator.d.ts +10 -0
  109. package/dist/hooks/aep/useTypefaceMetrics.d.ts +2 -0
  110. package/dist/hooks/index.d.ts +2 -0
  111. package/dist/hooks/useSpriteFilters.d.ts +39 -0
  112. package/dist/hooks/withFiltersHook.d.ts +1 -1
  113. package/dist/importers/aep/bodymovin-color-controls.d.ts +23 -0
  114. package/dist/importers/aep/bodymovin-color.d.ts +1 -0
  115. package/dist/importers/aep/bodymovin-keyframe.d.ts +42 -0
  116. package/dist/importers/aep/bodymovin-layer.d.ts +84 -0
  117. package/dist/importers/aep/bodymovin-transform.d.ts +12 -0
  118. package/dist/importers/aep/bodymovin.d.ts +7 -0
  119. package/dist/importers/aep/bodymovinCameras.d.ts +34 -0
  120. package/dist/importers/aep/bodymovinExtensions.d.ts +3 -0
  121. package/dist/importers/aep/bodymovinTextRuns.d.ts +13 -0
  122. package/dist/importers/aep/index.d.ts +7 -0
  123. package/dist/importers/aep/lottieLint.d.ts +23 -0
  124. package/dist/importers/aep/lottieLint.rules.d.ts +6 -0
  125. package/dist/index.d.ts +3 -0
  126. package/dist/index.es.js +59996 -31176
  127. package/dist/index.umd.js +4351 -1851
  128. package/dist/lib/pixi-essentials/bounds/AxisAlignedBounds.d.ts +121 -0
  129. package/dist/lib/pixi-essentials/bounds/OrientedBounds.d.ts +103 -0
  130. package/dist/lib/pixi-essentials/bounds/index.d.ts +2 -0
  131. package/dist/lib/pixi-essentials/index.d.ts +6 -0
  132. package/dist/lib/pixi-essentials/object-pool/AverageProvider.d.ts +28 -0
  133. package/dist/lib/pixi-essentials/object-pool/ObjectPool.d.ts +103 -0
  134. package/dist/lib/pixi-essentials/object-pool/ObjectPoolFactory.d.ts +40 -0
  135. package/dist/lib/pixi-essentials/object-pool/index.d.ts +2 -0
  136. package/dist/lib/pixi-essentials/react-bindings/Transformer.d.ts +74 -0
  137. package/dist/lib/pixi-essentials/react-bindings/index.d.ts +3 -0
  138. package/dist/lib/pixi-essentials/react-bindings/utils/applyEventProps.d.ts +13 -0
  139. package/dist/lib/pixi-essentials/transformer/Transformer.d.ts +728 -0
  140. package/dist/lib/pixi-essentials/transformer/TransformerHandle.d.ts +142 -0
  141. package/dist/lib/pixi-essentials/transformer/TransformerWireframe.d.ts +54 -0
  142. package/dist/lib/pixi-essentials/transformer/index.d.ts +5 -0
  143. package/dist/lib/pixi-essentials/transformer/utils/decomposeTransform.d.ts +11 -0
  144. package/dist/lib/pixi-essentials/transformer/utils/distanceToLine.d.ts +7 -0
  145. package/dist/lib/pixi-essentials/transformer/utils/multiplyTransform.d.ts +17 -0
  146. package/dist/lib/pixi-essentials/transformer/utils/skewTransform.d.ts +13 -0
  147. package/dist/types/BaseProps.d.ts +11 -3
  148. package/dist/types/MaskTypes.d.ts +10 -0
  149. package/dist/types/OverlayTypes.d.ts +9 -0
  150. package/dist/types/aep/asset.d.ts +43 -0
  151. package/dist/types/aep/camera.d.ts +778 -0
  152. package/dist/types/aep/composition.d.ts +82 -0
  153. package/dist/types/aep/effect.d.ts +137 -0
  154. package/dist/types/aep/index.d.ts +14 -0
  155. package/dist/types/aep/layer.d.ts +21579 -0
  156. package/dist/types/aep/light.d.ts +781 -0
  157. package/dist/types/aep/mask.d.ts +193 -0
  158. package/dist/types/aep/parse.d.ts +11 -0
  159. package/dist/types/aep/postFx.d.ts +107 -0
  160. package/dist/types/aep/text-animator.d.ts +687 -0
  161. package/dist/types/aep/text-runs.d.ts +234 -0
  162. package/dist/types/aep/theme.d.ts +72 -0
  163. package/dist/types/aep/transform.d.ts +285 -0
  164. package/dist/types/aep/transform3D.d.ts +171 -0
  165. package/dist/types/index.d.ts +3 -0
  166. package/dist/utils/AppStateProvider.d.ts +1 -0
  167. package/dist/utils/AppWrapper.d.ts +3 -0
  168. package/dist/utils/ContextBridge.d.ts +1 -1
  169. package/dist/utils/GsapAnims.d.ts +0 -1
  170. package/dist/utils/InteractionManager.d.ts +1 -10
  171. package/dist/utils/aeMath/zoomToFov.d.ts +1 -0
  172. package/dist/utils/areSpritePropsEqual.d.ts +8 -0
  173. package/dist/utils/index.d.ts +6 -0
  174. package/dist/utils/isExternalUrl.d.ts +1 -0
  175. package/dist/utils/loadSpriteTexture.d.ts +10 -0
  176. package/dist/utils/msdf/computeInstanceMatrix.d.ts +18 -0
  177. package/dist/utils/msdf/index.d.ts +4 -0
  178. package/dist/utils/msdf/loadMsdfAtlas.d.ts +9 -0
  179. package/dist/utils/msdf/msdfShader.d.ts +2 -0
  180. package/dist/utils/msdf/types.d.ts +49 -0
  181. package/dist/utils/text/resolveTextRuns.d.ts +8 -0
  182. package/dist/utils/textLayout/alignLines.d.ts +15 -0
  183. package/dist/utils/textLayout/applyVerticals.d.ts +14 -0
  184. package/dist/utils/textLayout/breakLines.d.ts +14 -0
  185. package/dist/utils/textLayout/canvasMetricsProvider.d.ts +6 -0
  186. package/dist/utils/textLayout/index.d.ts +7 -0
  187. package/dist/utils/textLayout/layoutText.d.ts +2 -0
  188. package/dist/utils/textLayout/metricsCache.d.ts +9 -0
  189. package/dist/utils/textLayout/pixiCanvasMetricsProvider.d.ts +6 -0
  190. package/dist/utils/textLayout/shapeRuns.d.ts +18 -0
  191. package/dist/utils/textLayout/typefaceMetricsProvider.d.ts +19 -0
  192. package/dist/utils/textLayout/types.d.ts +61 -0
  193. package/dist/utils/textLayout/unicode.d.ts +2 -0
  194. package/package.json +77 -45
  195. package/dist/components/PixiAudioSprite/PixiAudioSprite.stories.d.ts +0 -105
  196. package/dist/components/PixiGifSprite/PixiGifSprite.stories.d.ts +0 -153
  197. package/dist/components/PixiImageSprite/PixiImageSprite.stories.d.ts +0 -136
  198. package/dist/components/PixiLottieSprite/PixiLottieSprite.stories.d.ts +0 -149
  199. package/dist/components/PixiSVGSprite/PixiSvgPathSprite.stories.d.ts +0 -121
  200. package/dist/components/PixiSequence/PixiSequence.stories.d.ts +0 -33
  201. package/dist/components/PixiTextSprite/PixiTextSprite.stories.d.ts +0 -130
  202. package/dist/components/PixiTransformer/MenuIcons.d.ts +0 -40
  203. package/dist/components/PixiTransformer/MenuUtils.d.ts +0 -2
  204. package/dist/components/PixiTransformer/PixiColorPicker.d.ts +0 -14
  205. package/dist/components/PixiTransformer/PixiDropdownMenu.d.ts +0 -15
  206. package/dist/components/PixiTransformer/PixiMenuText.d.ts +0 -2
  207. package/dist/components/PixiTransformer/PixiTransformer.d.ts +0 -20
  208. package/dist/components/PixiTransformer/PixiTransformerMenu.d.ts +0 -9
  209. package/dist/components/PixiTransformer/Transformer.d.ts +0 -39
  210. package/dist/components/PixiTransformer/applyEventProps.d.ts +0 -10
  211. package/dist/components/PixiTransformer/index.d.ts +0 -1
  212. package/dist/components/PixiVideoSprite/PixiVideoSprite.stories.d.ts +0 -136
  213. package/dist/hooks/withEffectsHook.d.ts +0 -5
  214. package/dist/stories/Features/TestHowlerAudioFiles.d.ts +0 -2
  215. package/dist/stories/Features/TimelineAnimations.d.ts +0 -15
  216. package/dist/stories/Features/TimelineTest.d.ts +0 -15
  217. package/dist/stories/Features/TimelineTest.stories.d.ts +0 -22
  218. package/dist/stories/Features/TimelineTestAudios.d.ts +0 -15
  219. package/dist/stories/Features/TimelineTestWithVideos.d.ts +0 -15
  220. package/dist/stories/Features/TimelineWithGif.d.ts +0 -21
  221. package/dist/stories/Features/common.tests.d.ts +0 -411
  222. /package/dist/{.gitkeep → utils/pixiExtend.d.ts} +0 -0
@@ -0,0 +1,22 @@
1
+ export { easeNameFor } from './easeCache';
2
+ export { buildLayerTimeline, planPropSegments, } from './buildLayerTimeline';
3
+ export type { AepBuiltSegment, AepLayerTimelineBuild, AepTweenTarget, } from './buildLayerTimeline';
4
+ export { useAepKeyframes } from './useAepKeyframes';
5
+ export { useAepCurrentFrame } from './useAepCurrentFrame';
6
+ export { useAepTextLayout } from './useAepTextLayout';
7
+ export { useTypefaceMetrics } from './useTypefaceMetrics';
8
+ export { sampleAnimatable, sampleScalar, sampleVec2, sampleColor, sampleAnimatedBezier, cubicBezierEase, lerpNumber, lerpVec2, lerpColor, } from './sampleAnimatable';
9
+ export { useAepEffects } from './useAepEffects';
10
+ export { useAepEffectKeyframes } from './useAepEffectKeyframes';
11
+ export { useAepValueAnimator } from './useAepValueAnimator';
12
+ export { useAepColorAnimator } from './useAepColorAnimator';
13
+ export { useAepBezierPathAnimator } from './useAepBezierPathAnimator';
14
+ export { useAepVec2Animator } from './useAepVec2Animator';
15
+ export { buildVec2ValueTimeline, type AepVec2TimelineBuild, } from './buildVec2ValueTimeline';
16
+ export { buildBezierPathTimeline, type AepAnimatableBezier, type AepBezierPathTimelineBuild, } from './buildBezierPathTimeline';
17
+ export { interpolateBezierPath, clonePath, } from './interpolateBezierPath';
18
+ export { buildScalarValueTimeline, type AepScalarTimelineBuild, } from './buildScalarValueTimeline';
19
+ export { buildColorValueTimeline, parseHexColor, rgbaToHex, type AepColorTimelineBuild, type RgbaColor, } from './buildColorValueTimeline';
20
+ export { getEffectHandler, registerEffectHandler, _listEffectHandlers, } from './effectRegistry';
21
+ export * from './effects';
22
+ export { buildAudioLevelTimeline, type AepAudioLevelBuild, type AudioLevelTarget, } from './buildAudioLevelTimeline';
@@ -0,0 +1,3 @@
1
+ import { AepBezierPath } from '../../types/aep';
2
+ export declare function interpolateBezierPath(a: AepBezierPath, b: AepBezierPath, t: number): AepBezierPath;
3
+ export declare function clonePath(p: AepBezierPath): AepBezierPath;
@@ -0,0 +1,13 @@
1
+ import { AepAnimatable, AepBezierPath, AepEaseHandle } from '../../types/aep';
2
+ export declare function cubicBezierEase(handles: AepEaseHandle, x: number): number;
3
+ export declare function sampleAnimatable<T>(field: AepAnimatable<T> | undefined, fallback: T, frame: number, lerp: (a: T, b: T, k: number) => T): T;
4
+ export declare const lerpNumber: (a: number, b: number, k: number) => number;
5
+ export declare const lerpVec2: (a: [number, number], b: [number, number], k: number) => [number, number];
6
+ export declare const lerpVec3: (a: [number, number, number], b: [number, number, number], k: number) => [number, number, number];
7
+ export declare function sampleScalar(field: AepAnimatable<number> | undefined, fallback: number, frame: number): number;
8
+ export declare function sampleVec2(field: AepAnimatable<[number, number]> | undefined, fallback: [number, number], frame: number): [number, number];
9
+ export declare function sampleVec3(field: AepAnimatable<[number, number, number]> | undefined, fallback: [number, number, number], frame: number): [number, number, number];
10
+ export declare const sampleEuler: typeof sampleVec3;
11
+ export declare const lerpColor: (a: string, b: string, k: number) => string;
12
+ export declare function sampleColor(field: AepAnimatable<string> | undefined, fallback: string, frame: number): string;
13
+ export declare function sampleAnimatedBezier(field: AepAnimatable<AepBezierPath> | undefined, fallback: AepBezierPath, frame: number): AepBezierPath;
@@ -0,0 +1,12 @@
1
+ import { AepBezierPath } from '../../types/aep';
2
+ import { AepAnimatableBezier } from './buildBezierPathTimeline';
3
+ /**
4
+ * Drive an animatable bezier path through the master timeline. Fires
5
+ * `onChange(path)` per onUpdate, plus once at mount with the initial
6
+ * (keyframe-0) value. Static fields emit once and return.
7
+ *
8
+ * @deprecated AEP shape + mask paths now sample directly from
9
+ * `ctx.currentFrame` (see `sampleAnimatedBezier`). This hook is
10
+ * preserved for downstream consumers driving non-AEP path tweens.
11
+ */
12
+ export declare function useAepBezierPathAnimator(field: AepAnimatableBezier | undefined, fps: number, inPointFrames: number, onChange: (path: AepBezierPath) => void): void;
@@ -0,0 +1,11 @@
1
+ import { AepAnimatable } from '../../types/aep';
2
+ /**
3
+ * Drive an animatable hex-color field via a GSAP sub-timeline that
4
+ * interpolates RGBA floats and fires `onChange(hex)` per tick.
5
+ *
6
+ * @deprecated AEP shape fills / stroke colors / effect colors now
7
+ * sample directly from `ctx.currentFrame` (see `sampleColor`). This
8
+ * hook is preserved for downstream consumers driving non-AEP color
9
+ * tweens through the master timeline.
10
+ */
11
+ export declare function useAepColorAnimator(field: AepAnimatable<string> | undefined, fps: number, inPointFrames: number, onChange: (hex: string) => void): void;
@@ -0,0 +1 @@
1
+ export declare function useAepCurrentFrame(fps: number): number;
@@ -0,0 +1,4 @@
1
+ import { Filter } from 'pixi.js';
2
+ import { AepLayer } from '../../types/aep';
3
+ import * as React from "react";
4
+ export declare function useAepEffectKeyframes(layer: AepLayer, filters: ReadonlyArray<Filter>): React.ReactNode;
@@ -0,0 +1,3 @@
1
+ import { AepLayer } from '../../types/aep';
2
+ import type * as PIXI from "pixi.js";
3
+ export declare function useAepEffects(layer: AepLayer): PIXI.Filter[];
@@ -0,0 +1,15 @@
1
+ import { AepLayer } from '../../types/aep';
2
+ import * as React from "react";
3
+ import type * as PIXI from "pixi.js";
4
+ /**
5
+ * Drives the layer's keyframe animation by attaching a GSAP sub-timeline
6
+ * to the master `tl.current` at `layer.inPoint / fps` seconds. Cleans up
7
+ * on unmount or when the layer / target ref changes.
8
+ *
9
+ * @deprecated Internal AEP rendering now samples transform keyframes
10
+ * from `ctx.currentFrame` directly (see `useAepLayerTransform`). This
11
+ * hook is preserved for downstream consumers that drive Pixi
12
+ * containers via GSAP outside the AEP composition pipeline. For new
13
+ * code, prefer `sampleScalar` / `sampleVec2` from `hooks/aep`.
14
+ */
15
+ export declare function useAepKeyframes(layer: AepLayer, targetRef: React.RefObject<PIXI.Container | null>, fps: number, readyKey?: unknown): void;
@@ -0,0 +1,12 @@
1
+ import { AepLayer, AepThemeMap } from '../../types/aep';
2
+ import { AepTextLayoutResult, AepTextMetricsProvider } from '../../utils/textLayout';
3
+ type AepTextLayer = Extract<AepLayer, {
4
+ kind: "text";
5
+ }>;
6
+ interface UseAepTextLayoutOptions {
7
+ boxWidth?: number;
8
+ metrics?: AepTextMetricsProvider;
9
+ theme?: AepThemeMap;
10
+ }
11
+ export declare function useAepTextLayout(layer: AepTextLayer, currentFrame: number, options?: UseAepTextLayoutOptions): AepTextLayoutResult;
12
+ export {};
@@ -0,0 +1,2 @@
1
+ import { AepAnimatable } from '../../types/aep';
2
+ export declare function useAepValueAnimator(field: AepAnimatable<number> | undefined, fps: number, inPointFrames: number, onChange: (value: number) => void): void;
@@ -0,0 +1,10 @@
1
+ import { AepAnimatable } from '../../types/aep';
2
+ /**
3
+ * Animatable [x, y] field driver. Fires `onChange(x, y)` per onUpdate
4
+ * and once at mount with the keyframe-0 value.
5
+ *
6
+ * @deprecated AEP effect-param vec2s now sample directly from
7
+ * `ctx.currentFrame` (see `sampleVec2`). This hook is preserved for
8
+ * downstream consumers driving non-AEP vec2 tweens.
9
+ */
10
+ export declare function useAepVec2Animator(field: AepAnimatable<[number, number]> | undefined, fps: number, inPointFrames: number, onChange: (x: number, y: number) => void): void;
@@ -0,0 +1,2 @@
1
+ import { AepTextMetricsProvider } from '../../utils/textLayout';
2
+ export declare function useTypefaceMetrics(url: string | undefined): AepTextMetricsProvider | undefined;
@@ -1 +1,3 @@
1
1
  export * from './useGsapEffect';
2
+ export * from './useSpriteFilters';
3
+ export * from './aep';
@@ -0,0 +1,39 @@
1
+ import { Effects } from '../types/Effects';
2
+ import * as PIXI from "pixi.js";
3
+ export interface SpriteColorCorrection {
4
+ enabled?: boolean;
5
+ contrast?: number;
6
+ saturation?: number;
7
+ brightness?: number;
8
+ alpha?: number;
9
+ red?: number;
10
+ green?: number;
11
+ blue?: number;
12
+ gamma?: number;
13
+ blurRadius?: number;
14
+ temperature?: number;
15
+ hue?: number;
16
+ sharpness?: number;
17
+ vignette?: number;
18
+ noise?: number;
19
+ }
20
+ export interface SpriteEffectsInput {
21
+ name?: Effects | string;
22
+ intensity?: number;
23
+ params?: Record<string, unknown>;
24
+ }
25
+ export interface UseSpriteFiltersProps {
26
+ colorCorrection?: SpriteColorCorrection;
27
+ effects?: SpriteEffectsInput;
28
+ }
29
+ /**
30
+ * Hook that builds an ordered, memoized PIXI filter array from
31
+ * `{ colorCorrection, effects }`. Replaces ad-hoc filter array
32
+ * construction inside individual sprites.
33
+ *
34
+ * Order: temperature → sharpness → HSL → adjustment → effect(s) → blur → vignette → noise.
35
+ * Returns empty array when no filter applies (avoids the cost of
36
+ * `filters: []` allocating a render target on the sprite).
37
+ */
38
+ export declare const useSpriteFilters: ({ colorCorrection, effects, }: UseSpriteFiltersProps) => PIXI.Filter[];
39
+ export default useSpriteFilters;
@@ -28,7 +28,7 @@ export declare const withFiltersHook: (props: FiltersProps) => {
28
28
  temperatureFilter: PIXI.ColorMatrixFilter;
29
29
  vignetteFilter: PixiFilters.OldFilmFilter;
30
30
  noiseFilter: PIXI.NoiseFilter;
31
- effectFilter: PixiFilters.HslAdjustmentFilter | PIXI.ColorMatrixFilter | PixiFilters.OldFilmFilter | (PIXI.ColorMatrixFilter | PixiFilters.GlowFilter)[] | null;
31
+ effectFilter: PIXI.ColorMatrixFilter | PixiFilters.HslAdjustmentFilter | PixiFilters.OldFilmFilter | (PIXI.ColorMatrixFilter | PixiFilters.GlowFilter)[] | null;
32
32
  blackAndWhiteFilter: PixiFilters.HslAdjustmentFilter;
33
33
  sepiaFilter: PIXI.ColorMatrixFilter;
34
34
  retroVintageFilter: PIXI.ColorMatrixFilter;
@@ -0,0 +1,23 @@
1
+ import { LottieLayerBase } from './bodymovin-layer';
2
+ export interface ColorControlExtraction {
3
+ theme: Record<string, string>;
4
+ sourceLayerIds: Set<string>;
5
+ resolveToken: (layerName: string, effectName: string) => string | undefined;
6
+ }
7
+ export interface LottieEffect {
8
+ mn?: string;
9
+ nm?: string;
10
+ ef?: Array<{
11
+ ty?: number;
12
+ v?: {
13
+ k?: number[];
14
+ };
15
+ }>;
16
+ }
17
+ export declare function extractColorControls(layers: ReadonlyArray<LottieLayerBase & {
18
+ ef?: LottieEffect[];
19
+ }>, layerIdFor: (l: LottieLayerBase) => string): ColorControlExtraction;
20
+ export declare function parseColorControlExpression(x: string): {
21
+ layerName: string;
22
+ effectName: string;
23
+ } | null;
@@ -0,0 +1 @@
1
+ export declare function lottieColorToHex(rgba: number[]): string;
@@ -0,0 +1,42 @@
1
+ import { AepKeyframe, AepBezierPath } from '../../types/aep';
2
+ export interface LottieKeyframe {
3
+ t: number;
4
+ s?: number | number[];
5
+ o?: {
6
+ x: number | number[];
7
+ y: number | number[];
8
+ };
9
+ i?: {
10
+ x: number | number[];
11
+ y: number | number[];
12
+ };
13
+ h?: number;
14
+ }
15
+ export interface LottieProperty {
16
+ a: 0 | 1;
17
+ k: number | number[] | LottieKeyframe[];
18
+ }
19
+ export type KeyframeValueShape<T> = (raw: number | number[]) => T;
20
+ export declare function convertProperty<T>(prop: LottieProperty | undefined, shape: KeyframeValueShape<T>): T | AepKeyframe<T>[] | undefined;
21
+ export declare const asNumber: KeyframeValueShape<number>;
22
+ export declare const asVec2: KeyframeValueShape<[number, number]>;
23
+ export declare const asScale: KeyframeValueShape<[number, number]>;
24
+ export declare const asOpacity: KeyframeValueShape<number>;
25
+ interface LottieBezier {
26
+ v?: Array<[number, number]>;
27
+ i?: Array<[number, number]>;
28
+ o?: Array<[number, number]>;
29
+ c?: boolean;
30
+ }
31
+ interface LottieBezierProperty {
32
+ a: 0 | 1;
33
+ k: LottieBezier | Array<{
34
+ t: number;
35
+ s?: LottieBezier[] | LottieBezier;
36
+ o?: LottieKeyframe["o"];
37
+ i?: LottieKeyframe["i"];
38
+ h?: number;
39
+ }>;
40
+ }
41
+ export declare function convertBezierProperty(prop: LottieBezierProperty | undefined): AepBezierPath | AepKeyframe<AepBezierPath>[] | undefined;
42
+ export {};
@@ -0,0 +1,84 @@
1
+ import { AepLayer } from '../../types/aep';
2
+ import { LottieTransform } from './bodymovin-transform';
3
+ import { LottieProperty } from './bodymovin-keyframe';
4
+ export interface LottieLayerBase {
5
+ ddd?: 0 | 1;
6
+ ind?: number;
7
+ ty: number;
8
+ nm?: string;
9
+ ks?: LottieTransform;
10
+ ip: number;
11
+ op: number;
12
+ st?: number;
13
+ parent?: number;
14
+ hd?: 0 | 1;
15
+ tt?: number;
16
+ td?: number;
17
+ }
18
+ interface LottieShapeItem {
19
+ ty: string;
20
+ nm?: string;
21
+ it?: LottieShapeItem[];
22
+ p?: LottieProperty;
23
+ s?: LottieProperty;
24
+ r?: LottieProperty;
25
+ c?: LottieProperty;
26
+ o?: LottieProperty;
27
+ sy?: 1 | 2;
28
+ pt?: LottieProperty;
29
+ ir?: LottieProperty;
30
+ or?: LottieProperty;
31
+ ks?: unknown;
32
+ }
33
+ export interface LottieShapeLayer extends LottieLayerBase {
34
+ ty: 4;
35
+ shapes: LottieShapeItem[];
36
+ }
37
+ export interface LottieSolidLayer extends LottieLayerBase {
38
+ ty: 1;
39
+ sc: string;
40
+ sw: number;
41
+ sh: number;
42
+ }
43
+ export interface LottieTextLayer extends LottieLayerBase {
44
+ ty: 5;
45
+ t: {
46
+ d: {
47
+ k: Array<{
48
+ s: LottieTextDoc;
49
+ }>;
50
+ };
51
+ };
52
+ }
53
+ export interface LottieNullLayer extends LottieLayerBase {
54
+ ty: 3;
55
+ }
56
+ export interface LottieImageLayer extends LottieLayerBase {
57
+ ty: 2;
58
+ refId: string;
59
+ }
60
+ export interface LottiePrecompLayer extends LottieLayerBase {
61
+ ty: 0;
62
+ refId: string;
63
+ w: number;
64
+ h: number;
65
+ }
66
+ interface LottieTextDoc {
67
+ t: string;
68
+ f: string;
69
+ s: number;
70
+ fc?: [number, number, number];
71
+ sc?: [number, number, number];
72
+ sw?: number;
73
+ lh?: number;
74
+ tr?: number;
75
+ j?: number;
76
+ }
77
+ export type LottieLayer = LottieShapeLayer | LottieSolidLayer | LottieTextLayer | LottieNullLayer | LottieImageLayer | LottiePrecompLayer | LottieLayerBase;
78
+ export declare function layerIdFor(layer: LottieLayerBase): string;
79
+ export interface ConvertLayerContext {
80
+ matteSourceId?: string;
81
+ resolveColorControl?: (hostLayerName: string, expression: string) => string | undefined;
82
+ }
83
+ export declare function convertLayer(layer: LottieLayer, ctx?: ConvertLayerContext): AepLayer[];
84
+ export {};
@@ -0,0 +1,12 @@
1
+ import { AepTransform } from '../../types/aep';
2
+ import { LottieProperty } from './bodymovin-keyframe';
3
+ export interface LottieTransform {
4
+ p?: LottieProperty;
5
+ a?: LottieProperty;
6
+ s?: LottieProperty;
7
+ r?: LottieProperty;
8
+ o?: LottieProperty;
9
+ sk?: LottieProperty;
10
+ sa?: LottieProperty;
11
+ }
12
+ export declare function convertTransform(ks: LottieTransform | undefined): AepTransform;
@@ -0,0 +1,7 @@
1
+ import { AepCompositionJson } from '../../types/aep';
2
+ export type BodymovinLintMode = "strict" | "warn" | "off";
3
+ export interface BodymovinToAepOptions {
4
+ lint?: BodymovinLintMode;
5
+ disabledRules?: string[];
6
+ }
7
+ export declare function bodymovinToAep(lottieJson: unknown, options?: BodymovinToAepOptions): AepCompositionJson;
@@ -0,0 +1,34 @@
1
+ import { AepCameraLayer, AepLightLayer, AepTransform3D } from '../../types/aep';
2
+ import { LottieProperty } from './bodymovin-keyframe';
3
+ import { LottieLayerBase } from './bodymovin-layer';
4
+ export interface LottieTransform3D {
5
+ p?: LottieProperty;
6
+ a?: LottieProperty;
7
+ s?: LottieProperty;
8
+ r?: LottieProperty;
9
+ rx?: LottieProperty;
10
+ ry?: LottieProperty;
11
+ rz?: LottieProperty;
12
+ or?: LottieProperty;
13
+ o?: LottieProperty;
14
+ }
15
+ export interface LottieCameraLayer extends LottieLayerBase {
16
+ ty: 13;
17
+ pe?: LottieProperty;
18
+ ks?: LottieTransform3D;
19
+ }
20
+ export interface LottieLightLayer extends LottieLayerBase {
21
+ ty: 14;
22
+ lt?: 1 | 2 | 3 | 4;
23
+ in?: LottieProperty;
24
+ cl?: LottieProperty;
25
+ ca?: LottieProperty;
26
+ cf?: LottieProperty;
27
+ ks?: LottieTransform3D;
28
+ }
29
+ export declare function isLottieCameraLayer(layer: LottieLayerBase): boolean;
30
+ export declare function isLottieLightLayer(layer: LottieLayerBase): boolean;
31
+ export declare function isLottie3DLayer(layer: LottieLayerBase): boolean;
32
+ export declare function transform3DFromKs(ks: LottieTransform3D | undefined): AepTransform3D;
33
+ export declare function convertCameraLayer(layer: LottieCameraLayer, id: string): AepCameraLayer;
34
+ export declare function convertLightLayer(layer: LottieLightLayer, id: string): AepLightLayer;
@@ -0,0 +1,3 @@
1
+ import { AepExtrusion, AepPostFx } from '../../types/aep';
2
+ export declare function readPostFxExtension(lottieJson: unknown): AepPostFx[] | undefined;
3
+ export declare function readExtrusionExtension(lottieLayer: unknown): AepExtrusion | undefined;
@@ -0,0 +1,13 @@
1
+ import { AepTextStyleRun } from '../../types/aep';
2
+ export interface LottieTextRunExtension {
3
+ from: number;
4
+ to: number;
5
+ font?: string;
6
+ size?: number;
7
+ fc?: [number, number, number];
8
+ weight?: number | string;
9
+ italic?: boolean;
10
+ tr?: number;
11
+ bs?: number;
12
+ }
13
+ export declare function extractBodymovinTextRuns(doc: unknown): AepTextStyleRun[] | undefined;
@@ -0,0 +1,7 @@
1
+ export { bodymovinToAep } from './bodymovin';
2
+ export { convertLayer, layerIdFor } from './bodymovin-layer';
3
+ export { convertTransform } from './bodymovin-transform';
4
+ export { convertProperty, asNumber, asVec2, asScale, asOpacity, } from './bodymovin-keyframe';
5
+ export { lottieColorToHex } from './bodymovin-color';
6
+ export { lintBodymovinJson, LottieLintError, type LintFinding, type LintReport, type LintSeverity, type LintOptions, } from './lottieLint';
7
+ export { readPostFxExtension, readExtrusionExtension, } from './bodymovinExtensions';
@@ -0,0 +1,23 @@
1
+ export type LintSeverity = "error" | "warn" | "info";
2
+ export interface LintFinding {
3
+ ruleId: string;
4
+ severity: LintSeverity;
5
+ message: string;
6
+ layerIndex?: number;
7
+ layerName?: string;
8
+ path?: string;
9
+ }
10
+ export interface LintReport {
11
+ findings: LintFinding[];
12
+ hasErrors: boolean;
13
+ hasWarnings: boolean;
14
+ }
15
+ export interface LintOptions {
16
+ disabledRules?: string[];
17
+ }
18
+ export declare class LottieLintError extends Error {
19
+ readonly report: LintReport;
20
+ constructor(report: LintReport);
21
+ }
22
+ export declare function lintBodymovinJson(json: unknown, options?: LintOptions): LintReport;
23
+ export declare function isSuppressed(layer: unknown, ruleId: string): boolean;
@@ -0,0 +1,6 @@
1
+ import { LintFinding } from './lottieLint';
2
+ export interface LintRule {
3
+ id: string;
4
+ check: (json: unknown) => Omit<LintFinding, "ruleId">[];
5
+ }
6
+ export declare const lottieLintRules: LintRule[];
package/dist/index.d.ts CHANGED
@@ -3,3 +3,6 @@ export * from './providers';
3
3
  export * from './types';
4
4
  export * from './events';
5
5
  export * from './hooks';
6
+ export * from './hocs';
7
+ export * from './utils';
8
+ export * from './importers/aep';