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.
- package/LICENSE +8 -16
- package/LICENSE.md +79 -239
- package/README.md +247 -103
- package/dist/components/AepComposition/Aep3DPostFx.d.ts +7 -0
- package/dist/components/AepComposition/Aep3DPrecompPlane.d.ts +9 -0
- package/dist/components/AepComposition/Aep3DScene.d.ts +14 -0
- package/dist/components/AepComposition/Aep3DShapeMesh.d.ts +13 -0
- package/dist/components/AepComposition/Aep3DTextMesh.d.ts +17 -0
- package/dist/components/AepComposition/AepAssetResolver.d.ts +13 -0
- package/dist/components/AepComposition/AepAudioLayer.d.ts +28 -0
- package/dist/components/AepComposition/AepComposition.d.ts +16 -0
- package/dist/components/AepComposition/AepLayerProvider.d.ts +30 -0
- package/dist/components/AepComposition/AepLayerRouter.d.ts +5 -0
- package/dist/components/AepComposition/AepMsdfTextMesh.d.ts +17 -0
- package/dist/components/AepComposition/AepPrecompRenderContext.d.ts +23 -0
- package/dist/components/AepComposition/AepPrecompRenderer.d.ts +8 -0
- package/dist/components/AepComposition/AepTextOverrideContext.d.ts +8 -0
- package/dist/components/AepComposition/AepThemeContext.d.ts +8 -0
- package/dist/components/AepComposition/composeTransform3D.d.ts +27 -0
- package/dist/components/AepComposition/index.d.ts +39 -0
- package/dist/components/AepComposition/matteSourceIds.d.ts +2 -0
- package/dist/components/AepComposition/msdfAtlasRegistry.d.ts +16 -0
- package/dist/components/AepComposition/pathToThreeShape.d.ts +4 -0
- package/dist/components/AepComposition/resolveParentChain.d.ts +3 -0
- package/dist/components/AepComposition/resolvePostFxList.d.ts +2 -0
- package/dist/components/AepComposition/shouldSplitText.d.ts +26 -0
- package/dist/components/AepComposition/threeTextureFromPixi.d.ts +8 -0
- package/dist/components/AepComposition/useAepLayerTransform.d.ts +18 -0
- package/dist/components/AepComposition/useAepLayerTransform3D.d.ts +8 -0
- package/dist/components/AepComposition/useMsdfAtlasRegistry.d.ts +6 -0
- package/dist/components/AepComposition/usePixiRenderTexture.d.ts +14 -0
- package/dist/components/AepComposition/useResolveAsset.d.ts +8 -0
- package/dist/components/AepMask/AepMaskContainer.d.ts +9 -0
- package/dist/components/AepMask/PixiTrackMatte.d.ts +10 -0
- package/dist/components/AepMask/drawAepMask.d.ts +3 -0
- package/dist/components/AepMask/index.d.ts +5 -0
- package/dist/components/PixiAudioSprite/HowlerAudioSprite.d.ts +5 -7
- package/dist/components/PixiAudioSprite/PixiAudioSprite.d.ts +9 -2
- package/dist/components/PixiAudioSprite/useAudioVisualizer.d.ts +2 -2
- package/dist/components/PixiAudioSprite/wave-config.d.ts +0 -1
- package/dist/components/PixiGifSprite/PixiGifGsapSync.d.ts +14 -10
- package/dist/components/PixiImageSprite/PixiImageSprite.d.ts +14 -1
- package/dist/components/PixiLottieSprite/PixiLottieSprite.d.ts +8 -2
- package/dist/components/PixiNullObject/PixiNullObject.d.ts +25 -0
- package/dist/components/PixiNullObject/index.d.ts +2 -0
- package/dist/components/PixiPreComp/PixiPreComp.d.ts +29 -0
- package/dist/components/PixiPreComp/index.d.ts +3 -0
- package/dist/components/PixiPreComp/validatePrecompDepth.d.ts +2 -0
- package/dist/components/PixiRemotionSprite/PixiRemotionGifSprite.d.ts +24 -0
- package/dist/components/PixiRemotionSprite/PixiRemotionImageSprite.d.ts +18 -0
- package/dist/components/PixiRemotionSprite/PixiRemotionSprite.d.ts +5 -2
- package/dist/components/PixiRemotionSprite/PixiRemotionVideoCanvaSprite.d.ts +20 -0
- package/dist/components/PixiRemotionSprite/index.d.ts +4 -0
- package/dist/components/PixiSVGSprite/PixiMorphSvgSprite.d.ts +35 -0
- package/dist/components/PixiSVGSprite/PixiSvgPathSprite.d.ts +14 -4
- package/dist/components/PixiSVGSprite/index.d.ts +1 -0
- package/dist/components/PixiShapeLayer/PixiShapeLayer.d.ts +43 -0
- package/dist/components/PixiShapeLayer/drawShape.d.ts +20 -0
- package/dist/components/PixiShapeLayer/index.d.ts +4 -0
- package/dist/components/PixiShapeLayer/samplePath.d.ts +5 -0
- package/dist/components/PixiTextSprite/PixiTextSplit.d.ts +26 -0
- package/dist/components/PixiTextSprite/PixiTextSprite.d.ts +20 -5
- package/dist/components/PixiTextSprite/index.d.ts +3 -0
- package/dist/components/PixiTextSprite/resolveTextSplitFills.d.ts +27 -0
- package/dist/components/PixiTextSprite/textAnimator.d.ts +22 -0
- package/dist/components/PixiThreeSprite/PixiThreeSprite.d.ts +14 -0
- package/dist/components/PixiThreeSprite/index.d.ts +2 -0
- package/dist/components/PixiUnifiedTransformer/PixiUnifiedTransformer.d.ts +38 -0
- package/dist/components/PixiUnifiedTransformer/index.d.ts +1 -0
- package/dist/components/PixiVideoSprite/PixiVideoCanvasSync.d.ts +3 -1
- package/dist/components/PixiVideoSprite/PixiVideoSprite.d.ts +8 -2
- package/dist/components/index.d.ts +6 -0
- package/dist/events/Events.d.ts +0 -1
- package/dist/hocs/AbstractContainer.d.ts +19 -1
- package/dist/hocs/BorderMaskContainer.d.ts +28 -0
- package/dist/hocs/OverlayTilingSprite.d.ts +3 -3
- package/dist/hocs/drawMaskShape.d.ts +3 -0
- package/dist/hocs/index.d.ts +5 -0
- package/dist/hooks/aep/buildAudioLevelTimeline.d.ts +7 -0
- package/dist/hooks/aep/buildBezierPathTimeline.d.ts +13 -0
- package/dist/hooks/aep/buildColorValueTimeline.d.ts +24 -0
- package/dist/hooks/aep/buildLayerTimeline.d.ts +20 -0
- package/dist/hooks/aep/buildScalarValueTimeline.d.ts +6 -0
- package/dist/hooks/aep/buildVec2ValueTimeline.d.ts +17 -0
- package/dist/hooks/aep/easeCache.d.ts +3 -0
- package/dist/hooks/aep/effectRegistry.d.ts +5 -0
- package/dist/hooks/aep/effects/brightnessContrast.d.ts +2 -0
- package/dist/hooks/aep/effects/dropShadow.d.ts +2 -0
- package/dist/hooks/aep/effects/fastBoxBlur.d.ts +2 -0
- package/dist/hooks/aep/effects/gaussianBlur.d.ts +2 -0
- package/dist/hooks/aep/effects/glow.d.ts +2 -0
- package/dist/hooks/aep/effects/hueSaturation.d.ts +2 -0
- package/dist/hooks/aep/effects/index.d.ts +9 -0
- package/dist/hooks/aep/effects/levels.d.ts +2 -0
- package/dist/hooks/aep/effects/tint.d.ts +2 -0
- package/dist/hooks/aep/effects/types.d.ts +8 -0
- package/dist/hooks/aep/index.d.ts +22 -0
- package/dist/hooks/aep/interpolateBezierPath.d.ts +3 -0
- package/dist/hooks/aep/sampleAnimatable.d.ts +13 -0
- package/dist/hooks/aep/useAepBezierPathAnimator.d.ts +12 -0
- package/dist/hooks/aep/useAepColorAnimator.d.ts +11 -0
- package/dist/hooks/aep/useAepCurrentFrame.d.ts +1 -0
- package/dist/hooks/aep/useAepEffectKeyframes.d.ts +4 -0
- package/dist/hooks/aep/useAepEffects.d.ts +3 -0
- package/dist/hooks/aep/useAepKeyframes.d.ts +15 -0
- package/dist/hooks/aep/useAepTextLayout.d.ts +12 -0
- package/dist/hooks/aep/useAepValueAnimator.d.ts +2 -0
- package/dist/hooks/aep/useAepVec2Animator.d.ts +10 -0
- package/dist/hooks/aep/useTypefaceMetrics.d.ts +2 -0
- package/dist/hooks/index.d.ts +2 -0
- package/dist/hooks/useSpriteFilters.d.ts +39 -0
- package/dist/hooks/withFiltersHook.d.ts +1 -1
- package/dist/importers/aep/bodymovin-color-controls.d.ts +23 -0
- package/dist/importers/aep/bodymovin-color.d.ts +1 -0
- package/dist/importers/aep/bodymovin-keyframe.d.ts +42 -0
- package/dist/importers/aep/bodymovin-layer.d.ts +84 -0
- package/dist/importers/aep/bodymovin-transform.d.ts +12 -0
- package/dist/importers/aep/bodymovin.d.ts +7 -0
- package/dist/importers/aep/bodymovinCameras.d.ts +34 -0
- package/dist/importers/aep/bodymovinExtensions.d.ts +3 -0
- package/dist/importers/aep/bodymovinTextRuns.d.ts +13 -0
- package/dist/importers/aep/index.d.ts +7 -0
- package/dist/importers/aep/lottieLint.d.ts +23 -0
- package/dist/importers/aep/lottieLint.rules.d.ts +6 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.es.js +59996 -31176
- package/dist/index.umd.js +4351 -1851
- package/dist/lib/pixi-essentials/bounds/AxisAlignedBounds.d.ts +121 -0
- package/dist/lib/pixi-essentials/bounds/OrientedBounds.d.ts +103 -0
- package/dist/lib/pixi-essentials/bounds/index.d.ts +2 -0
- package/dist/lib/pixi-essentials/index.d.ts +6 -0
- package/dist/lib/pixi-essentials/object-pool/AverageProvider.d.ts +28 -0
- package/dist/lib/pixi-essentials/object-pool/ObjectPool.d.ts +103 -0
- package/dist/lib/pixi-essentials/object-pool/ObjectPoolFactory.d.ts +40 -0
- package/dist/lib/pixi-essentials/object-pool/index.d.ts +2 -0
- package/dist/lib/pixi-essentials/react-bindings/Transformer.d.ts +74 -0
- package/dist/lib/pixi-essentials/react-bindings/index.d.ts +3 -0
- package/dist/lib/pixi-essentials/react-bindings/utils/applyEventProps.d.ts +13 -0
- package/dist/lib/pixi-essentials/transformer/Transformer.d.ts +728 -0
- package/dist/lib/pixi-essentials/transformer/TransformerHandle.d.ts +142 -0
- package/dist/lib/pixi-essentials/transformer/TransformerWireframe.d.ts +54 -0
- package/dist/lib/pixi-essentials/transformer/index.d.ts +5 -0
- package/dist/lib/pixi-essentials/transformer/utils/decomposeTransform.d.ts +11 -0
- package/dist/lib/pixi-essentials/transformer/utils/distanceToLine.d.ts +7 -0
- package/dist/lib/pixi-essentials/transformer/utils/multiplyTransform.d.ts +17 -0
- package/dist/lib/pixi-essentials/transformer/utils/skewTransform.d.ts +13 -0
- package/dist/types/BaseProps.d.ts +11 -3
- package/dist/types/MaskTypes.d.ts +10 -0
- package/dist/types/OverlayTypes.d.ts +9 -0
- package/dist/types/aep/asset.d.ts +43 -0
- package/dist/types/aep/camera.d.ts +778 -0
- package/dist/types/aep/composition.d.ts +82 -0
- package/dist/types/aep/effect.d.ts +137 -0
- package/dist/types/aep/index.d.ts +14 -0
- package/dist/types/aep/layer.d.ts +21579 -0
- package/dist/types/aep/light.d.ts +781 -0
- package/dist/types/aep/mask.d.ts +193 -0
- package/dist/types/aep/parse.d.ts +11 -0
- package/dist/types/aep/postFx.d.ts +107 -0
- package/dist/types/aep/text-animator.d.ts +687 -0
- package/dist/types/aep/text-runs.d.ts +234 -0
- package/dist/types/aep/theme.d.ts +72 -0
- package/dist/types/aep/transform.d.ts +285 -0
- package/dist/types/aep/transform3D.d.ts +171 -0
- package/dist/types/index.d.ts +3 -0
- package/dist/utils/AppStateProvider.d.ts +1 -0
- package/dist/utils/AppWrapper.d.ts +3 -0
- package/dist/utils/ContextBridge.d.ts +1 -1
- package/dist/utils/GsapAnims.d.ts +0 -1
- package/dist/utils/InteractionManager.d.ts +1 -10
- package/dist/utils/aeMath/zoomToFov.d.ts +1 -0
- package/dist/utils/areSpritePropsEqual.d.ts +8 -0
- package/dist/utils/index.d.ts +6 -0
- package/dist/utils/isExternalUrl.d.ts +1 -0
- package/dist/utils/loadSpriteTexture.d.ts +10 -0
- package/dist/utils/msdf/computeInstanceMatrix.d.ts +18 -0
- package/dist/utils/msdf/index.d.ts +4 -0
- package/dist/utils/msdf/loadMsdfAtlas.d.ts +9 -0
- package/dist/utils/msdf/msdfShader.d.ts +2 -0
- package/dist/utils/msdf/types.d.ts +49 -0
- package/dist/utils/text/resolveTextRuns.d.ts +8 -0
- package/dist/utils/textLayout/alignLines.d.ts +15 -0
- package/dist/utils/textLayout/applyVerticals.d.ts +14 -0
- package/dist/utils/textLayout/breakLines.d.ts +14 -0
- package/dist/utils/textLayout/canvasMetricsProvider.d.ts +6 -0
- package/dist/utils/textLayout/index.d.ts +7 -0
- package/dist/utils/textLayout/layoutText.d.ts +2 -0
- package/dist/utils/textLayout/metricsCache.d.ts +9 -0
- package/dist/utils/textLayout/pixiCanvasMetricsProvider.d.ts +6 -0
- package/dist/utils/textLayout/shapeRuns.d.ts +18 -0
- package/dist/utils/textLayout/typefaceMetricsProvider.d.ts +19 -0
- package/dist/utils/textLayout/types.d.ts +61 -0
- package/dist/utils/textLayout/unicode.d.ts +2 -0
- package/package.json +77 -45
- package/dist/components/PixiAudioSprite/PixiAudioSprite.stories.d.ts +0 -105
- package/dist/components/PixiGifSprite/PixiGifSprite.stories.d.ts +0 -153
- package/dist/components/PixiImageSprite/PixiImageSprite.stories.d.ts +0 -136
- package/dist/components/PixiLottieSprite/PixiLottieSprite.stories.d.ts +0 -149
- package/dist/components/PixiSVGSprite/PixiSvgPathSprite.stories.d.ts +0 -121
- package/dist/components/PixiSequence/PixiSequence.stories.d.ts +0 -33
- package/dist/components/PixiTextSprite/PixiTextSprite.stories.d.ts +0 -130
- package/dist/components/PixiTransformer/MenuIcons.d.ts +0 -40
- package/dist/components/PixiTransformer/MenuUtils.d.ts +0 -2
- package/dist/components/PixiTransformer/PixiColorPicker.d.ts +0 -14
- package/dist/components/PixiTransformer/PixiDropdownMenu.d.ts +0 -15
- package/dist/components/PixiTransformer/PixiMenuText.d.ts +0 -2
- package/dist/components/PixiTransformer/PixiTransformer.d.ts +0 -20
- package/dist/components/PixiTransformer/PixiTransformerMenu.d.ts +0 -9
- package/dist/components/PixiTransformer/Transformer.d.ts +0 -39
- package/dist/components/PixiTransformer/applyEventProps.d.ts +0 -10
- package/dist/components/PixiTransformer/index.d.ts +0 -1
- package/dist/components/PixiVideoSprite/PixiVideoSprite.stories.d.ts +0 -136
- package/dist/hooks/withEffectsHook.d.ts +0 -5
- package/dist/stories/Features/TestHowlerAudioFiles.d.ts +0 -2
- package/dist/stories/Features/TimelineAnimations.d.ts +0 -15
- package/dist/stories/Features/TimelineTest.d.ts +0 -15
- package/dist/stories/Features/TimelineTest.stories.d.ts +0 -22
- package/dist/stories/Features/TimelineTestAudios.d.ts +0 -15
- package/dist/stories/Features/TimelineTestWithVideos.d.ts +0 -15
- package/dist/stories/Features/TimelineWithGif.d.ts +0 -21
- package/dist/stories/Features/common.tests.d.ts +0 -411
- /package/dist/{.gitkeep → utils/pixiExtend.d.ts} +0 -0
|
@@ -0,0 +1,171 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
export declare const aepTransform3DSchema: z.ZodObject<{
|
|
3
|
+
position: z.ZodUnion<[z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber], null>, z.ZodArray<z.ZodObject<{
|
|
4
|
+
t: z.ZodNumber;
|
|
5
|
+
v: z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber], null>;
|
|
6
|
+
easeIn: z.ZodOptional<z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber, z.ZodNumber], null>>;
|
|
7
|
+
easeOut: z.ZodOptional<z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber, z.ZodNumber], null>>;
|
|
8
|
+
hold: z.ZodOptional<z.ZodBoolean>;
|
|
9
|
+
}, "strict", z.ZodTypeAny, {
|
|
10
|
+
t: number;
|
|
11
|
+
v: [number, number, number];
|
|
12
|
+
easeIn?: [number, number, number, number] | undefined;
|
|
13
|
+
easeOut?: [number, number, number, number] | undefined;
|
|
14
|
+
hold?: boolean | undefined;
|
|
15
|
+
}, {
|
|
16
|
+
t: number;
|
|
17
|
+
v: [number, number, number];
|
|
18
|
+
easeIn?: [number, number, number, number] | undefined;
|
|
19
|
+
easeOut?: [number, number, number, number] | undefined;
|
|
20
|
+
hold?: boolean | undefined;
|
|
21
|
+
}>, "many">]>;
|
|
22
|
+
anchor: z.ZodUnion<[z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber], null>, z.ZodArray<z.ZodObject<{
|
|
23
|
+
t: z.ZodNumber;
|
|
24
|
+
v: z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber], null>;
|
|
25
|
+
easeIn: z.ZodOptional<z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber, z.ZodNumber], null>>;
|
|
26
|
+
easeOut: z.ZodOptional<z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber, z.ZodNumber], null>>;
|
|
27
|
+
hold: z.ZodOptional<z.ZodBoolean>;
|
|
28
|
+
}, "strict", z.ZodTypeAny, {
|
|
29
|
+
t: number;
|
|
30
|
+
v: [number, number, number];
|
|
31
|
+
easeIn?: [number, number, number, number] | undefined;
|
|
32
|
+
easeOut?: [number, number, number, number] | undefined;
|
|
33
|
+
hold?: boolean | undefined;
|
|
34
|
+
}, {
|
|
35
|
+
t: number;
|
|
36
|
+
v: [number, number, number];
|
|
37
|
+
easeIn?: [number, number, number, number] | undefined;
|
|
38
|
+
easeOut?: [number, number, number, number] | undefined;
|
|
39
|
+
hold?: boolean | undefined;
|
|
40
|
+
}>, "many">]>;
|
|
41
|
+
scale: z.ZodUnion<[z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>, z.ZodArray<z.ZodObject<{
|
|
42
|
+
t: z.ZodNumber;
|
|
43
|
+
v: z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>;
|
|
44
|
+
easeIn: z.ZodOptional<z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber, z.ZodNumber], null>>;
|
|
45
|
+
easeOut: z.ZodOptional<z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber, z.ZodNumber], null>>;
|
|
46
|
+
hold: z.ZodOptional<z.ZodBoolean>;
|
|
47
|
+
}, "strict", z.ZodTypeAny, {
|
|
48
|
+
t: number;
|
|
49
|
+
v: [number, number];
|
|
50
|
+
easeIn?: [number, number, number, number] | undefined;
|
|
51
|
+
easeOut?: [number, number, number, number] | undefined;
|
|
52
|
+
hold?: boolean | undefined;
|
|
53
|
+
}, {
|
|
54
|
+
t: number;
|
|
55
|
+
v: [number, number];
|
|
56
|
+
easeIn?: [number, number, number, number] | undefined;
|
|
57
|
+
easeOut?: [number, number, number, number] | undefined;
|
|
58
|
+
hold?: boolean | undefined;
|
|
59
|
+
}>, "many">]>;
|
|
60
|
+
rotation: z.ZodUnion<[z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber], null>, z.ZodArray<z.ZodObject<{
|
|
61
|
+
t: z.ZodNumber;
|
|
62
|
+
v: z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber], null>;
|
|
63
|
+
easeIn: z.ZodOptional<z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber, z.ZodNumber], null>>;
|
|
64
|
+
easeOut: z.ZodOptional<z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber, z.ZodNumber], null>>;
|
|
65
|
+
hold: z.ZodOptional<z.ZodBoolean>;
|
|
66
|
+
}, "strict", z.ZodTypeAny, {
|
|
67
|
+
t: number;
|
|
68
|
+
v: [number, number, number];
|
|
69
|
+
easeIn?: [number, number, number, number] | undefined;
|
|
70
|
+
easeOut?: [number, number, number, number] | undefined;
|
|
71
|
+
hold?: boolean | undefined;
|
|
72
|
+
}, {
|
|
73
|
+
t: number;
|
|
74
|
+
v: [number, number, number];
|
|
75
|
+
easeIn?: [number, number, number, number] | undefined;
|
|
76
|
+
easeOut?: [number, number, number, number] | undefined;
|
|
77
|
+
hold?: boolean | undefined;
|
|
78
|
+
}>, "many">]>;
|
|
79
|
+
opacity: z.ZodUnion<[z.ZodNumber, z.ZodArray<z.ZodObject<{
|
|
80
|
+
t: z.ZodNumber;
|
|
81
|
+
v: z.ZodNumber;
|
|
82
|
+
easeIn: z.ZodOptional<z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber, z.ZodNumber], null>>;
|
|
83
|
+
easeOut: z.ZodOptional<z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber, z.ZodNumber], null>>;
|
|
84
|
+
hold: z.ZodOptional<z.ZodBoolean>;
|
|
85
|
+
}, "strict", z.ZodTypeAny, {
|
|
86
|
+
t: number;
|
|
87
|
+
v: number;
|
|
88
|
+
easeIn?: [number, number, number, number] | undefined;
|
|
89
|
+
easeOut?: [number, number, number, number] | undefined;
|
|
90
|
+
hold?: boolean | undefined;
|
|
91
|
+
}, {
|
|
92
|
+
t: number;
|
|
93
|
+
v: number;
|
|
94
|
+
easeIn?: [number, number, number, number] | undefined;
|
|
95
|
+
easeOut?: [number, number, number, number] | undefined;
|
|
96
|
+
hold?: boolean | undefined;
|
|
97
|
+
}>, "many">]>;
|
|
98
|
+
}, "strict", z.ZodTypeAny, {
|
|
99
|
+
anchor: [number, number, number] | {
|
|
100
|
+
t: number;
|
|
101
|
+
v: [number, number, number];
|
|
102
|
+
easeIn?: [number, number, number, number] | undefined;
|
|
103
|
+
easeOut?: [number, number, number, number] | undefined;
|
|
104
|
+
hold?: boolean | undefined;
|
|
105
|
+
}[];
|
|
106
|
+
rotation: [number, number, number] | {
|
|
107
|
+
t: number;
|
|
108
|
+
v: [number, number, number];
|
|
109
|
+
easeIn?: [number, number, number, number] | undefined;
|
|
110
|
+
easeOut?: [number, number, number, number] | undefined;
|
|
111
|
+
hold?: boolean | undefined;
|
|
112
|
+
}[];
|
|
113
|
+
scale: [number, number] | {
|
|
114
|
+
t: number;
|
|
115
|
+
v: [number, number];
|
|
116
|
+
easeIn?: [number, number, number, number] | undefined;
|
|
117
|
+
easeOut?: [number, number, number, number] | undefined;
|
|
118
|
+
hold?: boolean | undefined;
|
|
119
|
+
}[];
|
|
120
|
+
opacity: number | {
|
|
121
|
+
t: number;
|
|
122
|
+
v: number;
|
|
123
|
+
easeIn?: [number, number, number, number] | undefined;
|
|
124
|
+
easeOut?: [number, number, number, number] | undefined;
|
|
125
|
+
hold?: boolean | undefined;
|
|
126
|
+
}[];
|
|
127
|
+
position: [number, number, number] | {
|
|
128
|
+
t: number;
|
|
129
|
+
v: [number, number, number];
|
|
130
|
+
easeIn?: [number, number, number, number] | undefined;
|
|
131
|
+
easeOut?: [number, number, number, number] | undefined;
|
|
132
|
+
hold?: boolean | undefined;
|
|
133
|
+
}[];
|
|
134
|
+
}, {
|
|
135
|
+
anchor: [number, number, number] | {
|
|
136
|
+
t: number;
|
|
137
|
+
v: [number, number, number];
|
|
138
|
+
easeIn?: [number, number, number, number] | undefined;
|
|
139
|
+
easeOut?: [number, number, number, number] | undefined;
|
|
140
|
+
hold?: boolean | undefined;
|
|
141
|
+
}[];
|
|
142
|
+
rotation: [number, number, number] | {
|
|
143
|
+
t: number;
|
|
144
|
+
v: [number, number, number];
|
|
145
|
+
easeIn?: [number, number, number, number] | undefined;
|
|
146
|
+
easeOut?: [number, number, number, number] | undefined;
|
|
147
|
+
hold?: boolean | undefined;
|
|
148
|
+
}[];
|
|
149
|
+
scale: [number, number] | {
|
|
150
|
+
t: number;
|
|
151
|
+
v: [number, number];
|
|
152
|
+
easeIn?: [number, number, number, number] | undefined;
|
|
153
|
+
easeOut?: [number, number, number, number] | undefined;
|
|
154
|
+
hold?: boolean | undefined;
|
|
155
|
+
}[];
|
|
156
|
+
opacity: number | {
|
|
157
|
+
t: number;
|
|
158
|
+
v: number;
|
|
159
|
+
easeIn?: [number, number, number, number] | undefined;
|
|
160
|
+
easeOut?: [number, number, number, number] | undefined;
|
|
161
|
+
hold?: boolean | undefined;
|
|
162
|
+
}[];
|
|
163
|
+
position: [number, number, number] | {
|
|
164
|
+
t: number;
|
|
165
|
+
v: [number, number, number];
|
|
166
|
+
easeIn?: [number, number, number, number] | undefined;
|
|
167
|
+
easeOut?: [number, number, number, number] | undefined;
|
|
168
|
+
hold?: boolean | undefined;
|
|
169
|
+
}[];
|
|
170
|
+
}>;
|
|
171
|
+
export type AepTransform3D = z.infer<typeof aepTransform3DSchema>;
|
package/dist/types/index.d.ts
CHANGED
|
@@ -2,6 +2,6 @@ import * as React from "react";
|
|
|
2
2
|
declare const ContextBridge: <T>({ children, Context, render, }: {
|
|
3
3
|
children: React.ReactNode;
|
|
4
4
|
Context: React.Context<T>;
|
|
5
|
-
render: (children: React.ReactNode) => JSX.Element;
|
|
5
|
+
render: (children: React.ReactNode) => React.JSX.Element;
|
|
6
6
|
}) => import("react/jsx-runtime").JSX.Element;
|
|
7
7
|
export default ContextBridge;
|
|
@@ -4,14 +4,5 @@ type PixiInteractionManagerProps = {
|
|
|
4
4
|
[key: string]: unknown;
|
|
5
5
|
};
|
|
6
6
|
};
|
|
7
|
-
|
|
8
|
-
* Initialize Pixi Interaction Manager
|
|
9
|
-
* @param param0
|
|
10
|
-
* @returns
|
|
11
|
-
* @see https://pixijs.download/dev/docs/PIXI.InteractionManager.html
|
|
12
|
-
* @see https://pixijs.download/dev/docs/PIXI.InteractionManager.html#moveWhenInside
|
|
13
|
-
* @see https://pixijs.download/dev/docs/PIXI.InteractionManager.html#on
|
|
14
|
-
*
|
|
15
|
-
* */
|
|
16
|
-
declare const InteractionManager: ({ children, options, }: PixiInteractionManagerProps) => import('react').ReactNode;
|
|
7
|
+
declare const InteractionManager: ({ children }: PixiInteractionManagerProps) => import('react').ReactNode;
|
|
17
8
|
export default InteractionManager;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function zoomToFov(zoomPx: number, compHeight: number): number;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export declare const SPRITE_REF_PROP_NAMES: readonly ["mouseOverSpriteRef", "mouseOverTransformerRef", "spriteHelperRef", "canvasImageRef", "textEditorRef", "onContainerRefReady", "onSpriteRefReady"];
|
|
2
|
+
/**
|
|
3
|
+
* `React.memo` comparator for sprite components. Skips re-render while
|
|
4
|
+
* the transformer is actively dragging, and otherwise compares props
|
|
5
|
+
* after omitting ref-typed entries.
|
|
6
|
+
*/
|
|
7
|
+
export declare function areSpritePropsEqual<P extends object>(prev: Readonly<P>, next: Readonly<P>, extraIgnore?: readonly string[]): boolean;
|
|
8
|
+
export default areSpritePropsEqual;
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export { isExternalUrl } from './isExternalUrl';
|
|
2
|
+
export { loadSpriteTexture, type LoadSpriteTextureOptions, } from './loadSpriteTexture';
|
|
3
|
+
export { areSpritePropsEqual, SPRITE_REF_PROP_NAMES, } from './areSpritePropsEqual';
|
|
4
|
+
export { resolveTextRuns, resolveTextRunsWithWarnings, } from './text/resolveTextRuns';
|
|
5
|
+
export { layoutText, createCanvasMetricsProvider, MetricsCache, metricsCacheKey, splitGraphemes, isWhitespaceChar, type AepTextAlign as AepTextLayoutAlign, type AepGlyphMetrics, type AepTextLayoutGlyph, type AepTextLayoutInput, type AepTextLayoutLine, type AepTextLayoutResult, type AepTextLayoutRun, type AepTextMetricsProvider, } from './textLayout';
|
|
6
|
+
export { loadMsdfAtlas, hydrateMsdfAtlas, MSDF_VERTEX_SHADER, MSDF_FRAGMENT_SHADER, computeInstanceMatrix, writeInstanceColor, hexToRgba, type MsdfAtlas, type MsdfAtlasJson, type MsdfGlyph, type AnimatorOffset as MsdfAnimatorOffset, } from './msdf';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function isExternalUrl(src: string | undefined): boolean;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import * as PIXI from 'pixi.js';
|
|
2
|
+
export interface LoadSpriteTextureOptions {
|
|
3
|
+
scaleMode?: 'linear' | 'nearest';
|
|
4
|
+
enableMipmap?: boolean;
|
|
5
|
+
}
|
|
6
|
+
export declare function loadSpriteTexture(src: string, opts?: LoadSpriteTextureOptions): Promise<{
|
|
7
|
+
promise: Promise<PIXI.Texture | null>;
|
|
8
|
+
cancel: () => void;
|
|
9
|
+
dispose: () => void;
|
|
10
|
+
}>;
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { MsdfGlyph } from './types';
|
|
2
|
+
import * as THREE from "three";
|
|
3
|
+
export interface AnimatorOffset {
|
|
4
|
+
position: [number, number];
|
|
5
|
+
scale: [number, number];
|
|
6
|
+
rotation: number;
|
|
7
|
+
opacity: number;
|
|
8
|
+
}
|
|
9
|
+
export declare function computeInstanceMatrix(out: THREE.Matrix4, glyph: MsdfGlyph, layout: {
|
|
10
|
+
x: number;
|
|
11
|
+
y: number;
|
|
12
|
+
bounds: {
|
|
13
|
+
width: number;
|
|
14
|
+
height: number;
|
|
15
|
+
};
|
|
16
|
+
}, size: number, offset: AnimatorOffset): THREE.Matrix4;
|
|
17
|
+
export declare function writeInstanceColor(array: Float32Array, index: number, rgba: [number, number, number, number]): void;
|
|
18
|
+
export declare function hexToRgba(hex: string, alphaOverride?: number): [number, number, number, number];
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export type { MsdfAtlas, MsdfAtlasJson, MsdfGlyph, } from './types';
|
|
2
|
+
export { loadMsdfAtlas, hydrateMsdfAtlas, _clearMsdfAtlasCache, } from './loadMsdfAtlas';
|
|
3
|
+
export { MSDF_VERTEX_SHADER, MSDF_FRAGMENT_SHADER, } from './msdfShader';
|
|
4
|
+
export { computeInstanceMatrix, writeInstanceColor, hexToRgba, type AnimatorOffset, } from './computeInstanceMatrix';
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { MsdfAtlas, MsdfAtlasJson } from './types';
|
|
2
|
+
import * as THREE from "three";
|
|
3
|
+
interface LoadOptions {
|
|
4
|
+
pngUrl?: string;
|
|
5
|
+
}
|
|
6
|
+
export declare function loadMsdfAtlas(jsonUrl: string, options?: LoadOptions): Promise<MsdfAtlas>;
|
|
7
|
+
export declare function hydrateMsdfAtlas(json: MsdfAtlasJson, texture: THREE.Texture): MsdfAtlas;
|
|
8
|
+
export declare function _clearMsdfAtlasCache(): void;
|
|
9
|
+
export {};
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export declare const MSDF_VERTEX_SHADER = "\nattribute vec4 aUvRect;\nattribute vec4 aColor;\nvarying vec2 vUv;\nvarying vec4 vColor;\nvoid main() {\n // Atlas pixels are Y-down (image-space) but the plane geometry's UV is\n // Y-up (uv.y=0 = bottom). Invert uv.y so the glyph image's visual top\n // lands at the top of the quad.\n vUv = vec2(\n aUvRect.x + uv.x * aUvRect.z,\n aUvRect.y + (1.0 - uv.y) * aUvRect.w\n );\n vColor = aColor;\n // instanceMatrix is auto-injected by Three for InstancedMesh + ShaderMaterial.\n // Without this multiplication every instance collapses to local origin.\n gl_Position = projectionMatrix * modelViewMatrix * instanceMatrix * vec4(position, 1.0);\n}\n";
|
|
2
|
+
export declare const MSDF_FRAGMENT_SHADER = "\nprecision highp float;\nuniform sampler2D uAtlas;\nuniform float uDistanceRange;\nvarying vec2 vUv;\nvarying vec4 vColor;\n\nfloat median(float a, float b, float c) {\n return max(min(a, b), min(max(a, b), c));\n}\n\nvoid main() {\n vec3 msd = texture2D(uAtlas, vUv).rgb;\n float sd = median(msd.r, msd.g, msd.b);\n float screenPxRange = max(uDistanceRange, 1.0);\n float screenPxDist = screenPxRange * (sd - 0.5);\n float opacity = clamp(screenPxDist + 0.5, 0.0, 1.0);\n if (opacity < 0.001) discard;\n gl_FragColor = vec4(vColor.rgb, vColor.a * opacity);\n}\n";
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import type * as THREE from "three";
|
|
2
|
+
export interface MsdfAtlasJson {
|
|
3
|
+
version: "msdf-atlas/1";
|
|
4
|
+
font: {
|
|
5
|
+
family: string;
|
|
6
|
+
weight?: number | string;
|
|
7
|
+
italic?: boolean;
|
|
8
|
+
em: number;
|
|
9
|
+
ascent: number;
|
|
10
|
+
descent: number;
|
|
11
|
+
lineHeight: number;
|
|
12
|
+
};
|
|
13
|
+
atlas: {
|
|
14
|
+
width: number;
|
|
15
|
+
height: number;
|
|
16
|
+
distanceRange: number;
|
|
17
|
+
fieldType: "msdf";
|
|
18
|
+
};
|
|
19
|
+
glyphs: Array<{
|
|
20
|
+
char: string;
|
|
21
|
+
codepoint: number;
|
|
22
|
+
uv: [number, number, number, number];
|
|
23
|
+
planeBounds: [number, number, number, number];
|
|
24
|
+
advance: number;
|
|
25
|
+
}>;
|
|
26
|
+
kerning: Record<string, number>;
|
|
27
|
+
}
|
|
28
|
+
export interface MsdfGlyph {
|
|
29
|
+
char: string;
|
|
30
|
+
codepoint: number;
|
|
31
|
+
uv: [number, number, number, number];
|
|
32
|
+
planeBounds: [number, number, number, number];
|
|
33
|
+
advance: number;
|
|
34
|
+
}
|
|
35
|
+
export interface MsdfAtlas {
|
|
36
|
+
texture: THREE.Texture;
|
|
37
|
+
glyphs: Map<string, MsdfGlyph>;
|
|
38
|
+
kerning: Map<string, number>;
|
|
39
|
+
em: number;
|
|
40
|
+
ascent: number;
|
|
41
|
+
descent: number;
|
|
42
|
+
lineHeight: number;
|
|
43
|
+
distanceRange: number;
|
|
44
|
+
atlasSize: {
|
|
45
|
+
width: number;
|
|
46
|
+
height: number;
|
|
47
|
+
};
|
|
48
|
+
version: MsdfAtlasJson["version"];
|
|
49
|
+
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { AepLayer, AepTextStyleRun } from '../../types/aep';
|
|
2
|
+
import { TextRunsValidationResult } from '../../types/aep/text-runs';
|
|
3
|
+
type AepTextLayer = Extract<AepLayer, {
|
|
4
|
+
kind: "text";
|
|
5
|
+
}>;
|
|
6
|
+
export declare function resolveTextRuns(layer: AepTextLayer): ReadonlyArray<AepTextStyleRun>;
|
|
7
|
+
export declare function resolveTextRunsWithWarnings(layer: AepTextLayer): TextRunsValidationResult;
|
|
8
|
+
export {};
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { RawGlyph } from './shapeRuns';
|
|
2
|
+
import { RawLine } from './breakLines';
|
|
3
|
+
import { AepTextAlign } from './types';
|
|
4
|
+
interface AlignArgs {
|
|
5
|
+
glyphs: RawGlyph[];
|
|
6
|
+
lines: RawLine[];
|
|
7
|
+
align: AepTextAlign;
|
|
8
|
+
boxWidth: number | undefined;
|
|
9
|
+
}
|
|
10
|
+
export interface AlignedGlyphPosition {
|
|
11
|
+
x: number;
|
|
12
|
+
extraAdvance: number;
|
|
13
|
+
}
|
|
14
|
+
export declare function alignLines({ glyphs, lines, align, boxWidth, }: AlignArgs): AlignedGlyphPosition[];
|
|
15
|
+
export {};
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { RawGlyph } from './shapeRuns';
|
|
2
|
+
import { RawLine } from './breakLines';
|
|
3
|
+
interface VerticalArgs {
|
|
4
|
+
glyphs: RawGlyph[];
|
|
5
|
+
lines: RawLine[];
|
|
6
|
+
leading: number | undefined;
|
|
7
|
+
}
|
|
8
|
+
export interface LineVerticals {
|
|
9
|
+
baselineY: number;
|
|
10
|
+
ascent: number;
|
|
11
|
+
descent: number;
|
|
12
|
+
}
|
|
13
|
+
export declare function applyVerticals({ glyphs, lines, leading, }: VerticalArgs): LineVerticals[];
|
|
14
|
+
export {};
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { RawGlyph } from './shapeRuns';
|
|
2
|
+
export interface RawLine {
|
|
3
|
+
start: number;
|
|
4
|
+
end: number;
|
|
5
|
+
width: number;
|
|
6
|
+
collapsedTrailing: number;
|
|
7
|
+
endsWithHardBreak: boolean;
|
|
8
|
+
}
|
|
9
|
+
interface BreakLinesArgs {
|
|
10
|
+
glyphs: RawGlyph[];
|
|
11
|
+
maxWidth: number | undefined;
|
|
12
|
+
}
|
|
13
|
+
export declare function breakLines({ glyphs, maxWidth }: BreakLinesArgs): RawLine[];
|
|
14
|
+
export {};
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { AepTextMetricsProvider } from './types';
|
|
2
|
+
import { MetricsCache } from './metricsCache';
|
|
3
|
+
export interface CanvasMetricsProviderOptions {
|
|
4
|
+
cache?: MetricsCache;
|
|
5
|
+
}
|
|
6
|
+
export declare function createCanvasMetricsProvider(opts?: CanvasMetricsProviderOptions): AepTextMetricsProvider;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export type { AepTextAlign, AepGlyphMetrics, AepTextLayoutGlyph, AepTextLayoutInput, AepTextLayoutLine, AepTextLayoutResult, AepTextLayoutRun, AepTextMetricsProvider, } from './types';
|
|
2
|
+
export { layoutText } from './layoutText';
|
|
3
|
+
export { createCanvasMetricsProvider, type CanvasMetricsProviderOptions, } from './canvasMetricsProvider';
|
|
4
|
+
export { createPixiCanvasMetricsProvider, type PixiCanvasMetricsProviderOptions, } from './pixiCanvasMetricsProvider';
|
|
5
|
+
export { createTypefaceMetricsProvider, type ThreeTypefaceJson, } from './typefaceMetricsProvider';
|
|
6
|
+
export { MetricsCache, metricsCacheKey } from './metricsCache';
|
|
7
|
+
export { splitGraphemes, isWhitespaceChar } from './unicode';
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { AepGlyphMetrics, AepTextLayoutRun } from './types';
|
|
2
|
+
export declare function metricsCacheKey(run: AepTextLayoutRun, ch: string): string;
|
|
3
|
+
export declare class MetricsCache {
|
|
4
|
+
private map;
|
|
5
|
+
get(key: string): AepGlyphMetrics | undefined;
|
|
6
|
+
set(key: string, value: AepGlyphMetrics): void;
|
|
7
|
+
clear(): void;
|
|
8
|
+
get size(): number;
|
|
9
|
+
}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { AepTextMetricsProvider } from './types';
|
|
2
|
+
import { MetricsCache } from './metricsCache';
|
|
3
|
+
export interface PixiCanvasMetricsProviderOptions {
|
|
4
|
+
cache?: MetricsCache;
|
|
5
|
+
}
|
|
6
|
+
export declare function createPixiCanvasMetricsProvider(opts?: PixiCanvasMetricsProviderOptions): AepTextMetricsProvider;
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { AepTextLayoutInput, AepTextMetricsProvider } from './types';
|
|
2
|
+
export interface RawGlyph {
|
|
3
|
+
char: string;
|
|
4
|
+
runIndex: number;
|
|
5
|
+
charIndex: number;
|
|
6
|
+
advance: number;
|
|
7
|
+
ascent: number;
|
|
8
|
+
descent: number;
|
|
9
|
+
isWhitespace: boolean;
|
|
10
|
+
isHardBreak: boolean;
|
|
11
|
+
baselineShift: number;
|
|
12
|
+
}
|
|
13
|
+
interface ShapeRunsArgs {
|
|
14
|
+
input: AepTextLayoutInput;
|
|
15
|
+
metrics: AepTextMetricsProvider;
|
|
16
|
+
}
|
|
17
|
+
export declare function shapeRuns({ input, metrics }: ShapeRunsArgs): RawGlyph[];
|
|
18
|
+
export {};
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { AepTextMetricsProvider } from './types';
|
|
2
|
+
export interface ThreeTypefaceJson {
|
|
3
|
+
glyphs: Record<string, {
|
|
4
|
+
ha: number;
|
|
5
|
+
x_min?: number;
|
|
6
|
+
x_max?: number;
|
|
7
|
+
o?: string;
|
|
8
|
+
}>;
|
|
9
|
+
resolution: number;
|
|
10
|
+
ascender?: number;
|
|
11
|
+
descender?: number;
|
|
12
|
+
boundingBox?: {
|
|
13
|
+
yMin?: number;
|
|
14
|
+
yMax?: number;
|
|
15
|
+
xMin?: number;
|
|
16
|
+
xMax?: number;
|
|
17
|
+
};
|
|
18
|
+
}
|
|
19
|
+
export declare function createTypefaceMetricsProvider(typeface: ThreeTypefaceJson): AepTextMetricsProvider;
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
export type AepTextAlign = "left" | "center" | "right" | "justify-full" | "justify-last-left" | "justify-last-center" | "justify-last-right";
|
|
2
|
+
export interface AepTextLayoutRun {
|
|
3
|
+
text: string;
|
|
4
|
+
font: string;
|
|
5
|
+
size: number;
|
|
6
|
+
weight?: number | string;
|
|
7
|
+
italic?: boolean;
|
|
8
|
+
fill?: string;
|
|
9
|
+
tracking?: number;
|
|
10
|
+
baselineShift?: number;
|
|
11
|
+
}
|
|
12
|
+
export interface AepTextLayoutInput {
|
|
13
|
+
runs: AepTextLayoutRun[];
|
|
14
|
+
box?: {
|
|
15
|
+
width?: number;
|
|
16
|
+
height?: number;
|
|
17
|
+
};
|
|
18
|
+
align?: AepTextAlign;
|
|
19
|
+
leading?: number;
|
|
20
|
+
tracking?: number;
|
|
21
|
+
paragraphBreak?: "lf" | "crlf" | "auto";
|
|
22
|
+
metrics?: AepTextMetricsProvider;
|
|
23
|
+
}
|
|
24
|
+
export interface AepGlyphMetrics {
|
|
25
|
+
advance: number;
|
|
26
|
+
ascent: number;
|
|
27
|
+
descent: number;
|
|
28
|
+
}
|
|
29
|
+
export interface AepTextMetricsProvider {
|
|
30
|
+
measure(run: AepTextLayoutRun, ch: string): AepGlyphMetrics;
|
|
31
|
+
}
|
|
32
|
+
export interface AepTextLayoutGlyph {
|
|
33
|
+
char: string;
|
|
34
|
+
runIndex: number;
|
|
35
|
+
charIndex: number;
|
|
36
|
+
wordIndex: number;
|
|
37
|
+
lineIndex: number;
|
|
38
|
+
x: number;
|
|
39
|
+
y: number;
|
|
40
|
+
advance: number;
|
|
41
|
+
ascent: number;
|
|
42
|
+
descent: number;
|
|
43
|
+
isWhitespace: boolean;
|
|
44
|
+
isLineStart: boolean;
|
|
45
|
+
isLineEnd: boolean;
|
|
46
|
+
}
|
|
47
|
+
export interface AepTextLayoutLine {
|
|
48
|
+
startGlyph: number;
|
|
49
|
+
endGlyph: number;
|
|
50
|
+
width: number;
|
|
51
|
+
baselineY: number;
|
|
52
|
+
isLast: boolean;
|
|
53
|
+
}
|
|
54
|
+
export interface AepTextLayoutResult {
|
|
55
|
+
glyphs: AepTextLayoutGlyph[];
|
|
56
|
+
lines: AepTextLayoutLine[];
|
|
57
|
+
bounds: {
|
|
58
|
+
width: number;
|
|
59
|
+
height: number;
|
|
60
|
+
};
|
|
61
|
+
}
|