@remotion/lottie 4.0.143 → 4.0.144
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.md +4 -0
- package/bundle.ts +22 -0
- package/dist/esm/index.mjs +168 -155
- package/package.json +4 -6
- package/.rollup.cache/Users/jonathanburger/remotion/packages/lottie/dist/esm/Lottie.d.ts +0 -6
- package/.rollup.cache/Users/jonathanburger/remotion/packages/lottie/dist/esm/Lottie.js +0 -113
- package/.rollup.cache/Users/jonathanburger/remotion/packages/lottie/dist/esm/get-lottie-metadata.d.ts +0 -14
- package/.rollup.cache/Users/jonathanburger/remotion/packages/lottie/dist/esm/get-lottie-metadata.js +0 -20
- package/.rollup.cache/Users/jonathanburger/remotion/packages/lottie/dist/esm/index.d.ts +0 -3
- package/.rollup.cache/Users/jonathanburger/remotion/packages/lottie/dist/esm/index.js +0 -2
- package/.rollup.cache/Users/jonathanburger/remotion/packages/lottie/dist/esm/test/get-lottie-metadata.test.d.ts +0 -1
- package/.rollup.cache/Users/jonathanburger/remotion/packages/lottie/dist/esm/test/get-lottie-metadata.test.js +0 -19
- package/.rollup.cache/Users/jonathanburger/remotion/packages/lottie/dist/esm/test/utils.test.d.ts +0 -1
- package/.rollup.cache/Users/jonathanburger/remotion/packages/lottie/dist/esm/test/utils.test.js +0 -54
- package/.rollup.cache/Users/jonathanburger/remotion/packages/lottie/dist/esm/types.d.ts +0 -49
- package/.rollup.cache/Users/jonathanburger/remotion/packages/lottie/dist/esm/types.js +0 -1
- package/.rollup.cache/Users/jonathanburger/remotion/packages/lottie/dist/esm/utils.d.ts +0 -7
- package/.rollup.cache/Users/jonathanburger/remotion/packages/lottie/dist/esm/utils.js +0 -9
- package/.rollup.cache/Users/jonathanburger/remotion/packages/lottie/dist/esm/validate-loop.d.ts +0 -1
- package/.rollup.cache/Users/jonathanburger/remotion/packages/lottie/dist/esm/validate-loop.js +0 -8
- package/.rollup.cache/Users/jonathanburger/remotion/packages/lottie/dist/esm/validate-playbackrate.d.ts +0 -1
- package/.rollup.cache/Users/jonathanburger/remotion/packages/lottie/dist/esm/validate-playbackrate.js +0 -14
- package/.rollup.cache/Users/jonathanburger/remotion/packages/lottie/dist/tsconfig-esm.tsbuildinfo +0 -1
- package/dist/esm/Lottie.d.ts +0 -6
- package/dist/esm/get-lottie-metadata.d.ts +0 -14
- package/dist/esm/index.d.ts +0 -3
- package/dist/esm/test/get-lottie-metadata.test.d.ts +0 -1
- package/dist/esm/test/utils.test.d.ts +0 -1
- package/dist/esm/types.d.ts +0 -49
- package/dist/esm/utils.d.ts +0 -7
- package/dist/esm/validate-loop.d.ts +0 -1
- package/dist/esm/validate-playbackrate.d.ts +0 -1
package/LICENSE.md
CHANGED
|
@@ -1,5 +1,9 @@
|
|
|
1
1
|
# Remotion License
|
|
2
2
|
|
|
3
|
+
In Remotion 5.0, the license will slightly change. [View the changes here](https://github.com/remotion-dev/remotion/pull/3750).
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
3
7
|
Depending on the type of your legal entity, you are granted permission to use Remotion for your project. Individuals and small companies are allowed to use Remotion to create videos for free (even commercial), while a company license is required for for-profit organizations of a certain size. This two-tier system was designed to ensure funding for this project while still allowing the source code to be available and the program to be free for most. Read below for the exact terms of use.
|
|
4
8
|
|
|
5
9
|
- [Free license](#free-license)
|
package/bundle.ts
ADDED
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import {build} from 'bun';
|
|
2
|
+
|
|
3
|
+
const output = await build({
|
|
4
|
+
entrypoints: ['src/index.ts'],
|
|
5
|
+
naming: '[name].mjs',
|
|
6
|
+
external: [
|
|
7
|
+
'react/jsx-runtime',
|
|
8
|
+
'react',
|
|
9
|
+
'remotion',
|
|
10
|
+
'remotion/no-react',
|
|
11
|
+
'lottie-web',
|
|
12
|
+
],
|
|
13
|
+
});
|
|
14
|
+
|
|
15
|
+
const [file] = output.outputs;
|
|
16
|
+
const text = (await file.text())
|
|
17
|
+
.replace(/jsxDEV/g, 'jsx')
|
|
18
|
+
.replace(/react\/jsx-dev-runtime/g, 'react/jsx-runtime');
|
|
19
|
+
|
|
20
|
+
await Bun.write('dist/esm/index.mjs', text);
|
|
21
|
+
|
|
22
|
+
export {};
|
package/dist/esm/index.mjs
CHANGED
|
@@ -1,168 +1,181 @@
|
|
|
1
|
-
|
|
2
|
-
import lottie from
|
|
3
|
-
import { useRef, useState
|
|
4
|
-
import { delayRender, useCurrentFrame
|
|
1
|
+
// src/Lottie.tsx
|
|
2
|
+
import lottie from "lottie-web";
|
|
3
|
+
import {useEffect, useRef, useState} from "react";
|
|
4
|
+
import {continueRender, delayRender, useCurrentFrame} from "remotion";
|
|
5
5
|
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
6
|
+
// src/utils.ts
|
|
7
|
+
var getLottieFrame = ({
|
|
8
|
+
currentFrame,
|
|
9
|
+
direction,
|
|
10
|
+
loop,
|
|
11
|
+
totalFrames
|
|
12
|
+
}) => {
|
|
13
|
+
const nextFrame = loop ? currentFrame % totalFrames : Math.min(currentFrame, totalFrames);
|
|
14
|
+
if (direction === "backward") {
|
|
15
|
+
return totalFrames - nextFrame;
|
|
16
|
+
}
|
|
17
|
+
return nextFrame;
|
|
14
18
|
};
|
|
15
19
|
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
}
|
|
20
|
+
// src/validate-loop.ts
|
|
21
|
+
var validateLoop = (loop) => {
|
|
22
|
+
if (typeof loop === "undefined") {
|
|
23
|
+
return;
|
|
24
|
+
}
|
|
25
|
+
if (typeof loop !== "boolean") {
|
|
26
|
+
throw new TypeError(`The "loop" prop must be a boolean or undefined, but is "${JSON.stringify(loop)}"`);
|
|
27
|
+
}
|
|
23
28
|
};
|
|
24
29
|
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
}
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
}
|
|
30
|
+
// src/validate-playbackrate.ts
|
|
31
|
+
var validatePlaybackRate = (playbackRate) => {
|
|
32
|
+
if (typeof playbackRate === "undefined") {
|
|
33
|
+
return;
|
|
34
|
+
}
|
|
35
|
+
if (typeof playbackRate !== "number") {
|
|
36
|
+
throw new TypeError(`The "playbackRate" prop must be a number or undefined, but is ${JSON.stringify(playbackRate)}`);
|
|
37
|
+
}
|
|
38
|
+
if (Number.isNaN(playbackRate) || !Number.isFinite(playbackRate)) {
|
|
39
|
+
throw new TypeError(`The "playbackRate" props must be a real number, but is ${playbackRate}`);
|
|
40
|
+
}
|
|
41
|
+
if (playbackRate <= 0) {
|
|
42
|
+
throw new TypeError(`The "playbackRate" props must be positive, but is ${playbackRate}`);
|
|
43
|
+
}
|
|
38
44
|
};
|
|
39
45
|
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
46
|
+
// src/Lottie.tsx
|
|
47
|
+
import {
|
|
48
|
+
jsx
|
|
49
|
+
} from "react/jsx-runtime";
|
|
50
|
+
var Lottie = ({
|
|
51
|
+
animationData,
|
|
52
|
+
className,
|
|
53
|
+
direction,
|
|
54
|
+
loop,
|
|
55
|
+
playbackRate,
|
|
56
|
+
style,
|
|
57
|
+
onAnimationLoaded,
|
|
58
|
+
renderer,
|
|
59
|
+
preserveAspectRatio,
|
|
60
|
+
assetsPath
|
|
61
|
+
}) => {
|
|
62
|
+
if (typeof animationData !== "object") {
|
|
63
|
+
throw new Error("animationData should be provided as an object. If you only have the path to the JSON file, load it and pass it as animationData. See https://remotion.dev/docs/lottie/lottie#example for more information.");
|
|
64
|
+
}
|
|
65
|
+
validatePlaybackRate(playbackRate);
|
|
66
|
+
validateLoop(loop);
|
|
67
|
+
const animationRef = useRef();
|
|
68
|
+
const currentFrameRef = useRef(null);
|
|
69
|
+
const containerRef = useRef(null);
|
|
70
|
+
const onAnimationLoadedRef = useRef();
|
|
71
|
+
onAnimationLoadedRef.current = onAnimationLoaded;
|
|
72
|
+
const [handle] = useState(() => delayRender("Waiting for Lottie animation to load"));
|
|
73
|
+
const frame = useCurrentFrame();
|
|
74
|
+
currentFrameRef.current = frame;
|
|
75
|
+
useEffect(() => {
|
|
76
|
+
if (!containerRef.current) {
|
|
77
|
+
return;
|
|
47
78
|
}
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
return;
|
|
62
|
-
}
|
|
63
|
-
animationRef.current = lottie.loadAnimation({
|
|
64
|
-
container: containerRef.current,
|
|
65
|
-
autoplay: false,
|
|
66
|
-
animationData,
|
|
67
|
-
assetsPath: assetsPath !== null && assetsPath !== void 0 ? assetsPath : undefined,
|
|
68
|
-
renderer: renderer !== null && renderer !== void 0 ? renderer : 'svg',
|
|
69
|
-
rendererSettings: {
|
|
70
|
-
preserveAspectRatio: preserveAspectRatio !== null && preserveAspectRatio !== void 0 ? preserveAspectRatio : undefined,
|
|
71
|
-
},
|
|
72
|
-
});
|
|
73
|
-
const { current: animation } = animationRef;
|
|
74
|
-
const onComplete = () => {
|
|
75
|
-
var _a, _b;
|
|
76
|
-
// Seek frame twice to avoid Lottie initialization bug:
|
|
77
|
-
// See LottieInitializationBugfix composition in the example project for a repro.
|
|
78
|
-
// We can work around it by seeking twice, initially.
|
|
79
|
-
if (currentFrameRef.current) {
|
|
80
|
-
const frameToSet = getLottieFrame({
|
|
81
|
-
currentFrame: currentFrameRef.current * (playbackRate !== null && playbackRate !== void 0 ? playbackRate : 1),
|
|
82
|
-
direction,
|
|
83
|
-
loop,
|
|
84
|
-
totalFrames: animation.totalFrames,
|
|
85
|
-
});
|
|
86
|
-
(_a = animationRef.current) === null || _a === void 0 ? void 0 : _a.goToAndStop(Math.max(0, frameToSet - 1), true);
|
|
87
|
-
(_b = animationRef.current) === null || _b === void 0 ? void 0 : _b.goToAndStop(frameToSet, true);
|
|
88
|
-
}
|
|
89
|
-
continueRender(handle);
|
|
90
|
-
};
|
|
91
|
-
animation.addEventListener('DOMLoaded', onComplete);
|
|
92
|
-
(_a = onAnimationLoadedRef.current) === null || _a === void 0 ? void 0 : _a.call(onAnimationLoadedRef, animation);
|
|
93
|
-
return () => {
|
|
94
|
-
animation.removeEventListener('DOMLoaded', onComplete);
|
|
95
|
-
animation.destroy();
|
|
96
|
-
};
|
|
97
|
-
}, [
|
|
98
|
-
animationData,
|
|
99
|
-
assetsPath,
|
|
100
|
-
direction,
|
|
101
|
-
handle,
|
|
102
|
-
loop,
|
|
103
|
-
playbackRate,
|
|
104
|
-
preserveAspectRatio,
|
|
105
|
-
renderer,
|
|
106
|
-
]);
|
|
107
|
-
useEffect(() => {
|
|
108
|
-
if (animationRef.current && direction) {
|
|
109
|
-
animationRef.current.setDirection(direction === 'backward' ? -1 : 1);
|
|
110
|
-
}
|
|
111
|
-
}, [direction]);
|
|
112
|
-
useEffect(() => {
|
|
113
|
-
if (animationRef.current && playbackRate) {
|
|
114
|
-
animationRef.current.setSpeed(playbackRate);
|
|
115
|
-
}
|
|
116
|
-
}, [playbackRate]);
|
|
117
|
-
useEffect(() => {
|
|
118
|
-
var _a;
|
|
119
|
-
if (!animationRef.current) {
|
|
120
|
-
return;
|
|
121
|
-
}
|
|
122
|
-
const { totalFrames } = animationRef.current;
|
|
79
|
+
animationRef.current = lottie.loadAnimation({
|
|
80
|
+
container: containerRef.current,
|
|
81
|
+
autoplay: false,
|
|
82
|
+
animationData,
|
|
83
|
+
assetsPath: assetsPath ?? undefined,
|
|
84
|
+
renderer: renderer ?? "svg",
|
|
85
|
+
rendererSettings: {
|
|
86
|
+
preserveAspectRatio: preserveAspectRatio ?? undefined
|
|
87
|
+
}
|
|
88
|
+
});
|
|
89
|
+
const { current: animation } = animationRef;
|
|
90
|
+
const onComplete = () => {
|
|
91
|
+
if (currentFrameRef.current) {
|
|
123
92
|
const frameToSet = getLottieFrame({
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
});
|
|
129
|
-
animationRef.current.goToAndStop(frameToSet, true);
|
|
130
|
-
const images = (_a = containerRef.current) === null || _a === void 0 ? void 0 : _a.querySelectorAll('image');
|
|
131
|
-
images.forEach((img) => {
|
|
132
|
-
const currentHref = img.getAttributeNS('http://www.w3.org/1999/xlink', 'href');
|
|
133
|
-
if (currentHref && currentHref === img.href.baseVal) {
|
|
134
|
-
return;
|
|
135
|
-
}
|
|
136
|
-
const imgHandle = delayRender(`Waiting for lottie image with src="${img.href.baseVal}" to load`);
|
|
137
|
-
// https://stackoverflow.com/a/46839799
|
|
138
|
-
img.addEventListener('load', () => {
|
|
139
|
-
continueRender(imgHandle);
|
|
140
|
-
}, { once: true });
|
|
141
|
-
img.setAttributeNS('http://www.w3.org/1999/xlink', 'xlink:href', img.href.baseVal);
|
|
93
|
+
currentFrame: currentFrameRef.current * (playbackRate ?? 1),
|
|
94
|
+
direction,
|
|
95
|
+
loop,
|
|
96
|
+
totalFrames: animation.totalFrames
|
|
142
97
|
});
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
}
|
|
146
|
-
|
|
147
|
-
/**
|
|
148
|
-
* @description Get the basic metadata such as dimensions, duration and framerate of a Lottie animation.
|
|
149
|
-
* @see [Documentation](https://www.remotion.dev/docs/lottie/getlottiemetadata)
|
|
150
|
-
*/
|
|
151
|
-
const getLottieMetadata = (animationData) => {
|
|
152
|
-
const width = animationData.w;
|
|
153
|
-
const height = animationData.h;
|
|
154
|
-
const framerate = animationData.fr;
|
|
155
|
-
const durationInFrames = animationData.op;
|
|
156
|
-
if (![width, height, framerate, durationInFrames].every(Boolean)) {
|
|
157
|
-
return null;
|
|
158
|
-
}
|
|
159
|
-
return {
|
|
160
|
-
durationInFrames: Math.floor(durationInFrames),
|
|
161
|
-
durationInSeconds: durationInFrames / framerate,
|
|
162
|
-
fps: framerate,
|
|
163
|
-
height,
|
|
164
|
-
width,
|
|
98
|
+
animationRef.current?.goToAndStop(Math.max(0, frameToSet - 1), true);
|
|
99
|
+
animationRef.current?.goToAndStop(frameToSet, true);
|
|
100
|
+
}
|
|
101
|
+
continueRender(handle);
|
|
165
102
|
};
|
|
103
|
+
animation.addEventListener("DOMLoaded", onComplete);
|
|
104
|
+
onAnimationLoadedRef.current?.(animation);
|
|
105
|
+
return () => {
|
|
106
|
+
animation.removeEventListener("DOMLoaded", onComplete);
|
|
107
|
+
animation.destroy();
|
|
108
|
+
};
|
|
109
|
+
}, [
|
|
110
|
+
animationData,
|
|
111
|
+
assetsPath,
|
|
112
|
+
direction,
|
|
113
|
+
handle,
|
|
114
|
+
loop,
|
|
115
|
+
playbackRate,
|
|
116
|
+
preserveAspectRatio,
|
|
117
|
+
renderer
|
|
118
|
+
]);
|
|
119
|
+
useEffect(() => {
|
|
120
|
+
if (animationRef.current && direction) {
|
|
121
|
+
animationRef.current.setDirection(direction === "backward" ? -1 : 1);
|
|
122
|
+
}
|
|
123
|
+
}, [direction]);
|
|
124
|
+
useEffect(() => {
|
|
125
|
+
if (animationRef.current && playbackRate) {
|
|
126
|
+
animationRef.current.setSpeed(playbackRate);
|
|
127
|
+
}
|
|
128
|
+
}, [playbackRate]);
|
|
129
|
+
useEffect(() => {
|
|
130
|
+
if (!animationRef.current) {
|
|
131
|
+
return;
|
|
132
|
+
}
|
|
133
|
+
const { totalFrames } = animationRef.current;
|
|
134
|
+
const frameToSet = getLottieFrame({
|
|
135
|
+
currentFrame: frame * (playbackRate ?? 1),
|
|
136
|
+
direction,
|
|
137
|
+
loop,
|
|
138
|
+
totalFrames
|
|
139
|
+
});
|
|
140
|
+
animationRef.current.goToAndStop(frameToSet, true);
|
|
141
|
+
const images = containerRef.current?.querySelectorAll("image");
|
|
142
|
+
images.forEach((img) => {
|
|
143
|
+
const currentHref = img.getAttributeNS("http://www.w3.org/1999/xlink", "href");
|
|
144
|
+
if (currentHref && currentHref === img.href.baseVal) {
|
|
145
|
+
return;
|
|
146
|
+
}
|
|
147
|
+
const imgHandle = delayRender(`Waiting for lottie image with src="${img.href.baseVal}" to load`);
|
|
148
|
+
img.addEventListener("load", () => {
|
|
149
|
+
continueRender(imgHandle);
|
|
150
|
+
}, { once: true });
|
|
151
|
+
img.setAttributeNS("http://www.w3.org/1999/xlink", "xlink:href", img.href.baseVal);
|
|
152
|
+
});
|
|
153
|
+
}, [direction, frame, loop, playbackRate]);
|
|
154
|
+
return jsx("div", {
|
|
155
|
+
ref: containerRef,
|
|
156
|
+
className,
|
|
157
|
+
style
|
|
158
|
+
}, undefined, false, undefined, this);
|
|
166
159
|
};
|
|
167
160
|
|
|
168
|
-
|
|
161
|
+
// src/get-lottie-metadata.ts
|
|
162
|
+
var getLottieMetadata = (animationData) => {
|
|
163
|
+
const width = animationData.w;
|
|
164
|
+
const height = animationData.h;
|
|
165
|
+
const framerate = animationData.fr;
|
|
166
|
+
const durationInFrames = animationData.op;
|
|
167
|
+
if (![width, height, framerate, durationInFrames].every(Boolean)) {
|
|
168
|
+
return null;
|
|
169
|
+
}
|
|
170
|
+
return {
|
|
171
|
+
durationInFrames: Math.floor(durationInFrames),
|
|
172
|
+
durationInSeconds: durationInFrames / framerate,
|
|
173
|
+
fps: framerate,
|
|
174
|
+
height,
|
|
175
|
+
width
|
|
176
|
+
};
|
|
177
|
+
};
|
|
178
|
+
export {
|
|
179
|
+
getLottieMetadata,
|
|
180
|
+
Lottie
|
|
181
|
+
};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@remotion/lottie",
|
|
3
|
-
"version": "4.0.
|
|
3
|
+
"version": "4.0.144",
|
|
4
4
|
"description": "Remotion Lottie",
|
|
5
5
|
"main": "dist/cjs/index.js",
|
|
6
6
|
"types": "dist/cjs/index.d.ts",
|
|
@@ -19,7 +19,7 @@
|
|
|
19
19
|
],
|
|
20
20
|
"license": "SEE LICENSE IN LICENSE.md",
|
|
21
21
|
"dependencies": {
|
|
22
|
-
"remotion": "4.0.
|
|
22
|
+
"remotion": "4.0.144"
|
|
23
23
|
},
|
|
24
24
|
"peerDependencies": {
|
|
25
25
|
"lottie-web": "^5",
|
|
@@ -37,7 +37,6 @@
|
|
|
37
37
|
},
|
|
38
38
|
"devDependencies": {
|
|
39
39
|
"@jonny/eslint-config": "3.0.281",
|
|
40
|
-
"@rollup/plugin-typescript": "^8.2.0",
|
|
41
40
|
"@types/node": "18.14.6",
|
|
42
41
|
"@types/react": "18.2.48",
|
|
43
42
|
"@types/react-dom": "18.2.18",
|
|
@@ -45,8 +44,7 @@
|
|
|
45
44
|
"prettier": "3.2.5",
|
|
46
45
|
"prettier-plugin-organize-imports": "3.2.4",
|
|
47
46
|
"react": "18.2.0",
|
|
48
|
-
"react-dom": "18.2.0"
|
|
49
|
-
"rollup": "^2.70.1"
|
|
47
|
+
"react-dom": "18.2.0"
|
|
50
48
|
},
|
|
51
49
|
"keywords": [
|
|
52
50
|
"remotion",
|
|
@@ -63,7 +61,7 @@
|
|
|
63
61
|
"formatting": "prettier src --check",
|
|
64
62
|
"lint": "eslint src --ext ts,tsx",
|
|
65
63
|
"test": "bun test src",
|
|
66
|
-
"build": "
|
|
64
|
+
"build": "bun bundle.ts && tsc -d",
|
|
67
65
|
"watch": "tsc -w"
|
|
68
66
|
}
|
|
69
67
|
}
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
import type { LottieProps } from './types';
|
|
2
|
-
/**
|
|
3
|
-
* @description Part of the @remotion/lottie package.
|
|
4
|
-
* @see [Documentation](https://www.remotion.dev/docs/lottie/lottie)
|
|
5
|
-
*/
|
|
6
|
-
export declare const Lottie: ({ animationData, className, direction, loop, playbackRate, style, onAnimationLoaded, renderer, preserveAspectRatio, assetsPath, }: LottieProps) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -1,113 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
import lottie from 'lottie-web';
|
|
3
|
-
import { useEffect, useRef, useState } from 'react';
|
|
4
|
-
import { continueRender, delayRender, useCurrentFrame } from 'remotion';
|
|
5
|
-
import { getLottieFrame } from './utils';
|
|
6
|
-
import { validateLoop } from './validate-loop';
|
|
7
|
-
import { validatePlaybackRate } from './validate-playbackrate';
|
|
8
|
-
/**
|
|
9
|
-
* @description Part of the @remotion/lottie package.
|
|
10
|
-
* @see [Documentation](https://www.remotion.dev/docs/lottie/lottie)
|
|
11
|
-
*/
|
|
12
|
-
export const Lottie = ({ animationData, className, direction, loop, playbackRate, style, onAnimationLoaded, renderer, preserveAspectRatio, assetsPath, }) => {
|
|
13
|
-
if (typeof animationData !== 'object') {
|
|
14
|
-
throw new Error('animationData should be provided as an object. If you only have the path to the JSON file, load it and pass it as animationData. See https://remotion.dev/docs/lottie/lottie#example for more information.');
|
|
15
|
-
}
|
|
16
|
-
validatePlaybackRate(playbackRate);
|
|
17
|
-
validateLoop(loop);
|
|
18
|
-
const animationRef = useRef();
|
|
19
|
-
const currentFrameRef = useRef(null);
|
|
20
|
-
const containerRef = useRef(null);
|
|
21
|
-
const onAnimationLoadedRef = useRef();
|
|
22
|
-
onAnimationLoadedRef.current = onAnimationLoaded;
|
|
23
|
-
const [handle] = useState(() => delayRender('Waiting for Lottie animation to load'));
|
|
24
|
-
const frame = useCurrentFrame();
|
|
25
|
-
currentFrameRef.current = frame;
|
|
26
|
-
useEffect(() => {
|
|
27
|
-
var _a;
|
|
28
|
-
if (!containerRef.current) {
|
|
29
|
-
return;
|
|
30
|
-
}
|
|
31
|
-
animationRef.current = lottie.loadAnimation({
|
|
32
|
-
container: containerRef.current,
|
|
33
|
-
autoplay: false,
|
|
34
|
-
animationData,
|
|
35
|
-
assetsPath: assetsPath !== null && assetsPath !== void 0 ? assetsPath : undefined,
|
|
36
|
-
renderer: renderer !== null && renderer !== void 0 ? renderer : 'svg',
|
|
37
|
-
rendererSettings: {
|
|
38
|
-
preserveAspectRatio: preserveAspectRatio !== null && preserveAspectRatio !== void 0 ? preserveAspectRatio : undefined,
|
|
39
|
-
},
|
|
40
|
-
});
|
|
41
|
-
const { current: animation } = animationRef;
|
|
42
|
-
const onComplete = () => {
|
|
43
|
-
var _a, _b;
|
|
44
|
-
// Seek frame twice to avoid Lottie initialization bug:
|
|
45
|
-
// See LottieInitializationBugfix composition in the example project for a repro.
|
|
46
|
-
// We can work around it by seeking twice, initially.
|
|
47
|
-
if (currentFrameRef.current) {
|
|
48
|
-
const frameToSet = getLottieFrame({
|
|
49
|
-
currentFrame: currentFrameRef.current * (playbackRate !== null && playbackRate !== void 0 ? playbackRate : 1),
|
|
50
|
-
direction,
|
|
51
|
-
loop,
|
|
52
|
-
totalFrames: animation.totalFrames,
|
|
53
|
-
});
|
|
54
|
-
(_a = animationRef.current) === null || _a === void 0 ? void 0 : _a.goToAndStop(Math.max(0, frameToSet - 1), true);
|
|
55
|
-
(_b = animationRef.current) === null || _b === void 0 ? void 0 : _b.goToAndStop(frameToSet, true);
|
|
56
|
-
}
|
|
57
|
-
continueRender(handle);
|
|
58
|
-
};
|
|
59
|
-
animation.addEventListener('DOMLoaded', onComplete);
|
|
60
|
-
(_a = onAnimationLoadedRef.current) === null || _a === void 0 ? void 0 : _a.call(onAnimationLoadedRef, animation);
|
|
61
|
-
return () => {
|
|
62
|
-
animation.removeEventListener('DOMLoaded', onComplete);
|
|
63
|
-
animation.destroy();
|
|
64
|
-
};
|
|
65
|
-
}, [
|
|
66
|
-
animationData,
|
|
67
|
-
assetsPath,
|
|
68
|
-
direction,
|
|
69
|
-
handle,
|
|
70
|
-
loop,
|
|
71
|
-
playbackRate,
|
|
72
|
-
preserveAspectRatio,
|
|
73
|
-
renderer,
|
|
74
|
-
]);
|
|
75
|
-
useEffect(() => {
|
|
76
|
-
if (animationRef.current && direction) {
|
|
77
|
-
animationRef.current.setDirection(direction === 'backward' ? -1 : 1);
|
|
78
|
-
}
|
|
79
|
-
}, [direction]);
|
|
80
|
-
useEffect(() => {
|
|
81
|
-
if (animationRef.current && playbackRate) {
|
|
82
|
-
animationRef.current.setSpeed(playbackRate);
|
|
83
|
-
}
|
|
84
|
-
}, [playbackRate]);
|
|
85
|
-
useEffect(() => {
|
|
86
|
-
var _a;
|
|
87
|
-
if (!animationRef.current) {
|
|
88
|
-
return;
|
|
89
|
-
}
|
|
90
|
-
const { totalFrames } = animationRef.current;
|
|
91
|
-
const frameToSet = getLottieFrame({
|
|
92
|
-
currentFrame: frame * (playbackRate !== null && playbackRate !== void 0 ? playbackRate : 1),
|
|
93
|
-
direction,
|
|
94
|
-
loop,
|
|
95
|
-
totalFrames,
|
|
96
|
-
});
|
|
97
|
-
animationRef.current.goToAndStop(frameToSet, true);
|
|
98
|
-
const images = (_a = containerRef.current) === null || _a === void 0 ? void 0 : _a.querySelectorAll('image');
|
|
99
|
-
images.forEach((img) => {
|
|
100
|
-
const currentHref = img.getAttributeNS('http://www.w3.org/1999/xlink', 'href');
|
|
101
|
-
if (currentHref && currentHref === img.href.baseVal) {
|
|
102
|
-
return;
|
|
103
|
-
}
|
|
104
|
-
const imgHandle = delayRender(`Waiting for lottie image with src="${img.href.baseVal}" to load`);
|
|
105
|
-
// https://stackoverflow.com/a/46839799
|
|
106
|
-
img.addEventListener('load', () => {
|
|
107
|
-
continueRender(imgHandle);
|
|
108
|
-
}, { once: true });
|
|
109
|
-
img.setAttributeNS('http://www.w3.org/1999/xlink', 'xlink:href', img.href.baseVal);
|
|
110
|
-
});
|
|
111
|
-
}, [direction, frame, loop, playbackRate]);
|
|
112
|
-
return _jsx("div", { ref: containerRef, className: className, style: style });
|
|
113
|
-
};
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import type { LottieAnimationData } from './types';
|
|
2
|
-
type LottieMetadata = {
|
|
3
|
-
fps: number;
|
|
4
|
-
durationInSeconds: number;
|
|
5
|
-
durationInFrames: number;
|
|
6
|
-
width: number;
|
|
7
|
-
height: number;
|
|
8
|
-
};
|
|
9
|
-
/**
|
|
10
|
-
* @description Get the basic metadata such as dimensions, duration and framerate of a Lottie animation.
|
|
11
|
-
* @see [Documentation](https://www.remotion.dev/docs/lottie/getlottiemetadata)
|
|
12
|
-
*/
|
|
13
|
-
export declare const getLottieMetadata: (animationData: LottieAnimationData) => LottieMetadata | null;
|
|
14
|
-
export {};
|
package/.rollup.cache/Users/jonathanburger/remotion/packages/lottie/dist/esm/get-lottie-metadata.js
DELETED
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @description Get the basic metadata such as dimensions, duration and framerate of a Lottie animation.
|
|
3
|
-
* @see [Documentation](https://www.remotion.dev/docs/lottie/getlottiemetadata)
|
|
4
|
-
*/
|
|
5
|
-
export const getLottieMetadata = (animationData) => {
|
|
6
|
-
const width = animationData.w;
|
|
7
|
-
const height = animationData.h;
|
|
8
|
-
const framerate = animationData.fr;
|
|
9
|
-
const durationInFrames = animationData.op;
|
|
10
|
-
if (![width, height, framerate, durationInFrames].every(Boolean)) {
|
|
11
|
-
return null;
|
|
12
|
-
}
|
|
13
|
-
return {
|
|
14
|
-
durationInFrames: Math.floor(durationInFrames),
|
|
15
|
-
durationInSeconds: durationInFrames / framerate,
|
|
16
|
-
fps: framerate,
|
|
17
|
-
height,
|
|
18
|
-
width,
|
|
19
|
-
};
|
|
20
|
-
};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import { expect, test } from 'bun:test';
|
|
2
|
-
import fs from 'node:fs';
|
|
3
|
-
import path from 'node:path';
|
|
4
|
-
import { getLottieMetadata } from '../get-lottie-metadata';
|
|
5
|
-
test('Should be able to get Lottie metadata', () => {
|
|
6
|
-
const file = fs.readFileSync(path.join(__dirname, 'example.json'), 'utf-8');
|
|
7
|
-
const parsed = JSON.parse(file);
|
|
8
|
-
expect(getLottieMetadata(parsed)).toEqual({
|
|
9
|
-
durationInFrames: 90,
|
|
10
|
-
durationInSeconds: 3.0030030030030037,
|
|
11
|
-
fps: 29.9700012207031,
|
|
12
|
-
height: 1080,
|
|
13
|
-
width: 1920,
|
|
14
|
-
});
|
|
15
|
-
});
|
|
16
|
-
test('Should return null if invalid Lottie file', () => {
|
|
17
|
-
// @ts-expect-error
|
|
18
|
-
expect(getLottieMetadata({})).toEqual(null);
|
|
19
|
-
});
|
package/.rollup.cache/Users/jonathanburger/remotion/packages/lottie/dist/esm/test/utils.test.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
package/.rollup.cache/Users/jonathanburger/remotion/packages/lottie/dist/esm/test/utils.test.js
DELETED
|
@@ -1,54 +0,0 @@
|
|
|
1
|
-
import { describe, expect, it } from 'bun:test';
|
|
2
|
-
import { getLottieFrame } from '../utils';
|
|
3
|
-
describe('getNextFrame', () => {
|
|
4
|
-
describe('when loop is falsy', () => {
|
|
5
|
-
it('returns the current frame if smaller than total frames', () => {
|
|
6
|
-
expect(getLottieFrame({ currentFrame: 23, totalFrames: 56 })).toBe(23);
|
|
7
|
-
});
|
|
8
|
-
it('returns the last frame if current frame is bigger than total frames', () => {
|
|
9
|
-
expect(getLottieFrame({ currentFrame: 23, totalFrames: 20 })).toBe(20);
|
|
10
|
-
});
|
|
11
|
-
});
|
|
12
|
-
describe('when loop is truthy', () => {
|
|
13
|
-
it('returns the current frame if smaller than total frames', () => {
|
|
14
|
-
expect(getLottieFrame({ currentFrame: 23, totalFrames: 56, loop: true })).toBe(23);
|
|
15
|
-
});
|
|
16
|
-
it('returns the modulo if current frame is bigger than total frames', () => {
|
|
17
|
-
expect(getLottieFrame({ currentFrame: 23, totalFrames: 20, loop: true })).toBe(3);
|
|
18
|
-
});
|
|
19
|
-
});
|
|
20
|
-
describe('when direction is reverse and loop is falsy', () => {
|
|
21
|
-
it('returns the correct frame if current frame is smaller than total frames', () => {
|
|
22
|
-
expect(getLottieFrame({
|
|
23
|
-
currentFrame: 15,
|
|
24
|
-
totalFrames: 20,
|
|
25
|
-
direction: 'backward',
|
|
26
|
-
})).toBe(5);
|
|
27
|
-
});
|
|
28
|
-
it('returns frame zero if current frame is bigger than total frames', () => {
|
|
29
|
-
expect(getLottieFrame({
|
|
30
|
-
currentFrame: 23,
|
|
31
|
-
totalFrames: 20,
|
|
32
|
-
direction: 'backward',
|
|
33
|
-
})).toBe(0);
|
|
34
|
-
});
|
|
35
|
-
});
|
|
36
|
-
describe('when direction is reverse and loop is truthy', () => {
|
|
37
|
-
it('returns the correct frame if current frame is smaller than total frames', () => {
|
|
38
|
-
expect(getLottieFrame({
|
|
39
|
-
currentFrame: 15,
|
|
40
|
-
totalFrames: 20,
|
|
41
|
-
direction: 'backward',
|
|
42
|
-
loop: true,
|
|
43
|
-
})).toBe(5);
|
|
44
|
-
});
|
|
45
|
-
it('returns (total-overflow) if current frame is bigger than total frames', () => {
|
|
46
|
-
expect(getLottieFrame({
|
|
47
|
-
currentFrame: 23,
|
|
48
|
-
totalFrames: 20,
|
|
49
|
-
direction: 'backward',
|
|
50
|
-
loop: true,
|
|
51
|
-
})).toBe(17);
|
|
52
|
-
});
|
|
53
|
-
});
|
|
54
|
-
});
|
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
import type { AnimationItem } from 'lottie-web';
|
|
2
|
-
import type { CSSProperties } from 'react';
|
|
3
|
-
export type LottieAnimationData = {
|
|
4
|
-
fr: number;
|
|
5
|
-
w: number;
|
|
6
|
-
h: number;
|
|
7
|
-
op: number;
|
|
8
|
-
} & Record<string | number | symbol, unknown>;
|
|
9
|
-
export type AspectRatioConstraint = 'none' | 'xMinYMin' | 'xMidYMin' | 'xMaxYMin' | 'xMinYMid' | 'xMidYMid' | 'xMaxYMid' | 'xMinYMax' | 'xMidYMax';
|
|
10
|
-
export type LottieProps = {
|
|
11
|
-
/**
|
|
12
|
-
* JSON object with the animation data.
|
|
13
|
-
* */
|
|
14
|
-
animationData: LottieAnimationData;
|
|
15
|
-
/**
|
|
16
|
-
* CSS classes to apply on the container of the animation.
|
|
17
|
-
*/
|
|
18
|
-
className?: string;
|
|
19
|
-
/**
|
|
20
|
-
* The direction of the animation. Defaults to forward.
|
|
21
|
-
*/
|
|
22
|
-
direction?: 'forward' | 'backward';
|
|
23
|
-
/**
|
|
24
|
-
* If the animation should loop after its end.
|
|
25
|
-
*/
|
|
26
|
-
loop?: boolean;
|
|
27
|
-
/**
|
|
28
|
-
* The speed of the animation. Defaults to 1.
|
|
29
|
-
*/
|
|
30
|
-
playbackRate?: number;
|
|
31
|
-
/**
|
|
32
|
-
* CSS properties to apply to the container of the animation.
|
|
33
|
-
*/
|
|
34
|
-
style?: CSSProperties;
|
|
35
|
-
/**
|
|
36
|
-
* The render engine of the Lotti files.
|
|
37
|
-
*/
|
|
38
|
-
renderer?: 'svg' | 'canvas' | 'html';
|
|
39
|
-
/**
|
|
40
|
-
* for svg and canvas renderer it simulates the behavior of the preserveAspectRatio property on svgs.
|
|
41
|
-
* https://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/preserveAspectRatio
|
|
42
|
-
*/
|
|
43
|
-
preserveAspectRatio?: AspectRatioConstraint | `${AspectRatioConstraint} ${'slice' | 'meet'}`;
|
|
44
|
-
assetsPath?: string;
|
|
45
|
-
/**
|
|
46
|
-
* Callback that gets invoked when new animation data has been initialized
|
|
47
|
-
*/
|
|
48
|
-
onAnimationLoaded?: (animation: AnimationItem) => void;
|
|
49
|
-
};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import type { LottieProps } from './types';
|
|
2
|
-
type Params = Pick<LottieProps, 'direction' | 'loop'> & {
|
|
3
|
-
currentFrame: number;
|
|
4
|
-
totalFrames: number;
|
|
5
|
-
};
|
|
6
|
-
export declare const getLottieFrame: ({ currentFrame, direction, loop, totalFrames, }: Params) => number;
|
|
7
|
-
export {};
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
export const getLottieFrame = ({ currentFrame, direction, loop, totalFrames, }) => {
|
|
2
|
-
const nextFrame = loop
|
|
3
|
-
? currentFrame % totalFrames
|
|
4
|
-
: Math.min(currentFrame, totalFrames);
|
|
5
|
-
if (direction === 'backward') {
|
|
6
|
-
return totalFrames - nextFrame;
|
|
7
|
-
}
|
|
8
|
-
return nextFrame;
|
|
9
|
-
};
|
package/.rollup.cache/Users/jonathanburger/remotion/packages/lottie/dist/esm/validate-loop.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export declare const validateLoop: (loop: unknown) => void;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export declare const validatePlaybackRate: (playbackRate: unknown) => void;
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
export const validatePlaybackRate = (playbackRate) => {
|
|
2
|
-
if (typeof playbackRate === 'undefined') {
|
|
3
|
-
return;
|
|
4
|
-
}
|
|
5
|
-
if (typeof playbackRate !== 'number') {
|
|
6
|
-
throw new TypeError(`The "playbackRate" prop must be a number or undefined, but is ${JSON.stringify(playbackRate)}`);
|
|
7
|
-
}
|
|
8
|
-
if (Number.isNaN(playbackRate) || !Number.isFinite(playbackRate)) {
|
|
9
|
-
throw new TypeError(`The "playbackRate" props must be a real number, but is ${playbackRate}`);
|
|
10
|
-
}
|
|
11
|
-
if (playbackRate <= 0) {
|
|
12
|
-
throw new TypeError(`The "playbackRate" props must be positive, but is ${playbackRate}`);
|
|
13
|
-
}
|
|
14
|
-
};
|
package/.rollup.cache/Users/jonathanburger/remotion/packages/lottie/dist/tsconfig-esm.tsbuildinfo
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"program":{"fileNames":["../../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.es5.d.ts","../../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.es2015.d.ts","../../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.es2016.d.ts","../../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.es2017.d.ts","../../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.es2018.d.ts","../../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.es2019.d.ts","../../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.es2020.d.ts","../../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.es2021.d.ts","../../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.es2022.d.ts","../../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.es2023.d.ts","../../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.esnext.d.ts","../../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.dom.d.ts","../../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.es2015.core.d.ts","../../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.es2015.collection.d.ts","../../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.es2015.generator.d.ts","../../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.es2015.iterable.d.ts","../../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.es2015.promise.d.ts","../../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.es2015.proxy.d.ts","../../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.es2015.reflect.d.ts","../../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.es2015.symbol.d.ts","../../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.es2016.array.include.d.ts","../../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.es2017.date.d.ts","../../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.es2017.object.d.ts","../../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.es2017.string.d.ts","../../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.es2017.intl.d.ts","../../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.es2018.intl.d.ts","../../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.es2018.promise.d.ts","../../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.es2018.regexp.d.ts","../../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.es2019.array.d.ts","../../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.es2019.object.d.ts","../../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.es2019.string.d.ts","../../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.es2019.symbol.d.ts","../../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.es2019.intl.d.ts","../../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.es2020.bigint.d.ts","../../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.es2020.date.d.ts","../../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.es2020.promise.d.ts","../../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.es2020.string.d.ts","../../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.es2020.intl.d.ts","../../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.es2020.number.d.ts","../../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.es2021.promise.d.ts","../../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.es2021.string.d.ts","../../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.es2021.weakref.d.ts","../../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.es2021.intl.d.ts","../../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.es2022.array.d.ts","../../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.es2022.error.d.ts","../../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.es2022.intl.d.ts","../../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.es2022.object.d.ts","../../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.es2022.sharedmemory.d.ts","../../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.es2022.string.d.ts","../../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.es2022.regexp.d.ts","../../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.es2023.array.d.ts","../../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.es2023.collection.d.ts","../../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.esnext.intl.d.ts","../../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.esnext.disposable.d.ts","../../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.esnext.decorators.d.ts","../../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.decorators.d.ts","../../../node_modules/.pnpm/typescript@5.3.3/node_modules/typescript/lib/lib.decorators.legacy.d.ts","../../../node_modules/.pnpm/@types+react@18.2.48/node_modules/@types/react/global.d.ts","../../../node_modules/.pnpm/csstype@3.1.1/node_modules/csstype/index.d.ts","../../../node_modules/.pnpm/@types+prop-types@15.7.4/node_modules/@types/prop-types/index.d.ts","../../../node_modules/.pnpm/@types+scheduler@0.16.2/node_modules/@types/scheduler/tracing.d.ts","../../../node_modules/.pnpm/@types+react@18.2.48/node_modules/@types/react/index.d.ts","../../../node_modules/.pnpm/@types+react@18.2.48/node_modules/@types/react/jsx-runtime.d.ts","../../../node_modules/.pnpm/lottie-web@5.12.2/node_modules/lottie-web/index.d.ts","../../core/dist/cjs/asset-types.d.ts","../../core/dist/cjs/codec.d.ts","../../../node_modules/.pnpm/zod@3.22.3/node_modules/zod/lib/helpers/typealiases.d.ts","../../../node_modules/.pnpm/zod@3.22.3/node_modules/zod/lib/helpers/util.d.ts","../../../node_modules/.pnpm/zod@3.22.3/node_modules/zod/lib/zoderror.d.ts","../../../node_modules/.pnpm/zod@3.22.3/node_modules/zod/lib/locales/en.d.ts","../../../node_modules/.pnpm/zod@3.22.3/node_modules/zod/lib/errors.d.ts","../../../node_modules/.pnpm/zod@3.22.3/node_modules/zod/lib/helpers/parseutil.d.ts","../../../node_modules/.pnpm/zod@3.22.3/node_modules/zod/lib/helpers/enumutil.d.ts","../../../node_modules/.pnpm/zod@3.22.3/node_modules/zod/lib/helpers/errorutil.d.ts","../../../node_modules/.pnpm/zod@3.22.3/node_modules/zod/lib/helpers/partialutil.d.ts","../../../node_modules/.pnpm/zod@3.22.3/node_modules/zod/lib/types.d.ts","../../../node_modules/.pnpm/zod@3.22.3/node_modules/zod/lib/external.d.ts","../../../node_modules/.pnpm/zod@3.22.3/node_modules/zod/lib/index.d.ts","../../../node_modules/.pnpm/zod@3.22.3/node_modules/zod/index.d.ts","../../core/dist/cjs/props-if-has-props.d.ts","../../core/dist/cjs/composition.d.ts","../../core/dist/cjs/compositionmanager.d.ts","../../core/dist/cjs/get-static-files.d.ts","../../core/dist/cjs/nativelayers.d.ts","../../core/dist/cjs/video-config.d.ts","../../core/dist/cjs/absolutefill.d.ts","../../core/dist/cjs/volume-prop.d.ts","../../core/dist/cjs/audio/use-audio-frame.d.ts","../../core/dist/cjs/audio/props.d.ts","../../core/dist/cjs/audio/audio.d.ts","../../core/dist/cjs/audio/index.d.ts","../../core/dist/cjs/cancel-render.d.ts","../../core/dist/cjs/folder.d.ts","../../core/dist/cjs/compositionmanagercontext.d.ts","../../core/dist/cjs/config/input-props.d.ts","../../core/dist/cjs/delay-render.d.ts","../../core/dist/cjs/easing.d.ts","../../core/dist/cjs/freeze.d.ts","../../core/dist/cjs/get-remotion-environment.d.ts","../../core/dist/cjs/iframe.d.ts","../../core/dist/cjs/img.d.ts","../../core/dist/cjs/default-css.d.ts","../../core/dist/cjs/input-props-serialization.d.ts","../../core/dist/cjs/timeline-position-state.d.ts","../../core/dist/cjs/truthy.d.ts","../../core/dist/cjs/volume-position-state.d.ts","../../core/dist/cjs/watch-static-file.d.ts","../../core/dist/cjs/sequencecontext.d.ts","../../core/dist/cjs/nonce.d.ts","../../core/dist/cjs/renderassetmanager.d.ts","../../core/dist/cjs/sequencemanager.d.ts","../../core/dist/cjs/wrap-remotion-context.d.ts","../../core/dist/cjs/editorprops.d.ts","../../core/dist/cjs/use-current-scale.d.ts","../../core/dist/cjs/internals.d.ts","../../core/dist/cjs/interpolate-colors.d.ts","../../core/dist/cjs/sequence.d.ts","../../core/dist/cjs/loop/index.d.ts","../../core/dist/cjs/interpolate.d.ts","../../core/dist/cjs/random.d.ts","../../core/dist/cjs/validation/validate-dimensions.d.ts","../../core/dist/cjs/validation/validate-duration-in-frames.d.ts","../../core/dist/cjs/validation/validate-fps.d.ts","../../core/dist/cjs/no-react.d.ts","../../core/dist/cjs/prefetch.d.ts","../../core/dist/cjs/register-root.d.ts","../../core/dist/cjs/series/index.d.ts","../../core/dist/cjs/spring/spring-utils.d.ts","../../core/dist/cjs/spring/measure-spring.d.ts","../../core/dist/cjs/spring/index.d.ts","../../core/dist/cjs/static-file.d.ts","../../core/dist/cjs/still.d.ts","../../core/dist/cjs/use-buffer-state.d.ts","../../core/dist/cjs/use-current-frame.d.ts","../../core/dist/cjs/use-video-config.d.ts","../../core/dist/cjs/version.d.ts","../../core/dist/cjs/video/props.d.ts","../../core/dist/cjs/video/offthreadvideo.d.ts","../../core/dist/cjs/video/video.d.ts","../../core/dist/cjs/video/index.d.ts","../../core/dist/cjs/index.d.ts","../src/types.ts","../src/utils.ts","../src/validate-loop.ts","../src/validate-playbackrate.ts","../src/lottie.tsx","../src/get-lottie-metadata.ts","../src/index.ts","../src/test/get-lottie-metadata.test.ts","../src/test/utils.test.ts","../../../node_modules/.pnpm/@types+node@18.14.6/node_modules/@types/node/assert.d.ts","../../../node_modules/.pnpm/@types+node@18.14.6/node_modules/@types/node/assert/strict.d.ts","../../../node_modules/.pnpm/@types+node@18.14.6/node_modules/@types/node/globals.d.ts","../../../node_modules/.pnpm/@types+node@18.14.6/node_modules/@types/node/async_hooks.d.ts","../../../node_modules/.pnpm/@types+node@18.14.6/node_modules/@types/node/buffer.d.ts","../../../node_modules/.pnpm/@types+node@18.14.6/node_modules/@types/node/child_process.d.ts","../../../node_modules/.pnpm/@types+node@18.14.6/node_modules/@types/node/cluster.d.ts","../../../node_modules/.pnpm/@types+node@18.14.6/node_modules/@types/node/console.d.ts","../../../node_modules/.pnpm/@types+node@18.14.6/node_modules/@types/node/constants.d.ts","../../../node_modules/.pnpm/@types+node@18.14.6/node_modules/@types/node/crypto.d.ts","../../../node_modules/.pnpm/@types+node@18.14.6/node_modules/@types/node/dgram.d.ts","../../../node_modules/.pnpm/@types+node@18.14.6/node_modules/@types/node/diagnostics_channel.d.ts","../../../node_modules/.pnpm/@types+node@18.14.6/node_modules/@types/node/dns.d.ts","../../../node_modules/.pnpm/@types+node@18.14.6/node_modules/@types/node/dns/promises.d.ts","../../../node_modules/.pnpm/@types+node@18.14.6/node_modules/@types/node/domain.d.ts","../../../node_modules/.pnpm/@types+node@18.14.6/node_modules/@types/node/dom-events.d.ts","../../../node_modules/.pnpm/@types+node@18.14.6/node_modules/@types/node/events.d.ts","../../../node_modules/.pnpm/@types+node@18.14.6/node_modules/@types/node/fs.d.ts","../../../node_modules/.pnpm/@types+node@18.14.6/node_modules/@types/node/fs/promises.d.ts","../../../node_modules/.pnpm/@types+node@18.14.6/node_modules/@types/node/http.d.ts","../../../node_modules/.pnpm/@types+node@18.14.6/node_modules/@types/node/http2.d.ts","../../../node_modules/.pnpm/@types+node@18.14.6/node_modules/@types/node/https.d.ts","../../../node_modules/.pnpm/@types+node@18.14.6/node_modules/@types/node/inspector.d.ts","../../../node_modules/.pnpm/@types+node@18.14.6/node_modules/@types/node/module.d.ts","../../../node_modules/.pnpm/@types+node@18.14.6/node_modules/@types/node/net.d.ts","../../../node_modules/.pnpm/@types+node@18.14.6/node_modules/@types/node/os.d.ts","../../../node_modules/.pnpm/@types+node@18.14.6/node_modules/@types/node/path.d.ts","../../../node_modules/.pnpm/@types+node@18.14.6/node_modules/@types/node/perf_hooks.d.ts","../../../node_modules/.pnpm/@types+node@18.14.6/node_modules/@types/node/process.d.ts","../../../node_modules/.pnpm/@types+node@18.14.6/node_modules/@types/node/punycode.d.ts","../../../node_modules/.pnpm/@types+node@18.14.6/node_modules/@types/node/querystring.d.ts","../../../node_modules/.pnpm/@types+node@18.14.6/node_modules/@types/node/readline.d.ts","../../../node_modules/.pnpm/@types+node@18.14.6/node_modules/@types/node/readline/promises.d.ts","../../../node_modules/.pnpm/@types+node@18.14.6/node_modules/@types/node/repl.d.ts","../../../node_modules/.pnpm/@types+node@18.14.6/node_modules/@types/node/stream.d.ts","../../../node_modules/.pnpm/@types+node@18.14.6/node_modules/@types/node/stream/promises.d.ts","../../../node_modules/.pnpm/@types+node@18.14.6/node_modules/@types/node/stream/consumers.d.ts","../../../node_modules/.pnpm/@types+node@18.14.6/node_modules/@types/node/stream/web.d.ts","../../../node_modules/.pnpm/@types+node@18.14.6/node_modules/@types/node/string_decoder.d.ts","../../../node_modules/.pnpm/@types+node@18.14.6/node_modules/@types/node/test.d.ts","../../../node_modules/.pnpm/@types+node@18.14.6/node_modules/@types/node/timers.d.ts","../../../node_modules/.pnpm/@types+node@18.14.6/node_modules/@types/node/timers/promises.d.ts","../../../node_modules/.pnpm/@types+node@18.14.6/node_modules/@types/node/tls.d.ts","../../../node_modules/.pnpm/@types+node@18.14.6/node_modules/@types/node/trace_events.d.ts","../../../node_modules/.pnpm/@types+node@18.14.6/node_modules/@types/node/tty.d.ts","../../../node_modules/.pnpm/@types+node@18.14.6/node_modules/@types/node/url.d.ts","../../../node_modules/.pnpm/@types+node@18.14.6/node_modules/@types/node/util.d.ts","../../../node_modules/.pnpm/@types+node@18.14.6/node_modules/@types/node/v8.d.ts","../../../node_modules/.pnpm/@types+node@18.14.6/node_modules/@types/node/vm.d.ts","../../../node_modules/.pnpm/@types+node@18.14.6/node_modules/@types/node/wasi.d.ts","../../../node_modules/.pnpm/@types+node@18.14.6/node_modules/@types/node/worker_threads.d.ts","../../../node_modules/.pnpm/@types+node@18.14.6/node_modules/@types/node/zlib.d.ts","../../../node_modules/.pnpm/@types+node@18.14.6/node_modules/@types/node/globals.global.d.ts","../../../node_modules/.pnpm/@types+node@18.14.6/node_modules/@types/node/index.d.ts","../../../node_modules/.pnpm/@types+react-dom@18.2.18/node_modules/@types/react-dom/index.d.ts","../../../node_modules/.pnpm/@types+ws@8.5.10/node_modules/@types/ws/index.d.ts","../../../node_modules/.pnpm/buffer@5.6.0/node_modules/buffer/index.d.ts","../../../node_modules/.pnpm/undici-types@5.26.5/node_modules/undici-types/header.d.ts","../../../node_modules/.pnpm/undici-types@5.26.5/node_modules/undici-types/readable.d.ts","../../../node_modules/.pnpm/undici-types@5.26.5/node_modules/undici-types/file.d.ts","../../../node_modules/.pnpm/undici-types@5.26.5/node_modules/undici-types/fetch.d.ts","../../../node_modules/.pnpm/undici-types@5.26.5/node_modules/undici-types/formdata.d.ts","../../../node_modules/.pnpm/undici-types@5.26.5/node_modules/undici-types/connector.d.ts","../../../node_modules/.pnpm/undici-types@5.26.5/node_modules/undici-types/client.d.ts","../../../node_modules/.pnpm/undici-types@5.26.5/node_modules/undici-types/errors.d.ts","../../../node_modules/.pnpm/undici-types@5.26.5/node_modules/undici-types/dispatcher.d.ts","../../../node_modules/.pnpm/undici-types@5.26.5/node_modules/undici-types/global-dispatcher.d.ts","../../../node_modules/.pnpm/undici-types@5.26.5/node_modules/undici-types/global-origin.d.ts","../../../node_modules/.pnpm/undici-types@5.26.5/node_modules/undici-types/pool-stats.d.ts","../../../node_modules/.pnpm/undici-types@5.26.5/node_modules/undici-types/pool.d.ts","../../../node_modules/.pnpm/undici-types@5.26.5/node_modules/undici-types/handlers.d.ts","../../../node_modules/.pnpm/undici-types@5.26.5/node_modules/undici-types/balanced-pool.d.ts","../../../node_modules/.pnpm/undici-types@5.26.5/node_modules/undici-types/agent.d.ts","../../../node_modules/.pnpm/undici-types@5.26.5/node_modules/undici-types/mock-interceptor.d.ts","../../../node_modules/.pnpm/undici-types@5.26.5/node_modules/undici-types/mock-agent.d.ts","../../../node_modules/.pnpm/undici-types@5.26.5/node_modules/undici-types/mock-client.d.ts","../../../node_modules/.pnpm/undici-types@5.26.5/node_modules/undici-types/mock-pool.d.ts","../../../node_modules/.pnpm/undici-types@5.26.5/node_modules/undici-types/mock-errors.d.ts","../../../node_modules/.pnpm/undici-types@5.26.5/node_modules/undici-types/proxy-agent.d.ts","../../../node_modules/.pnpm/undici-types@5.26.5/node_modules/undici-types/api.d.ts","../../../node_modules/.pnpm/undici-types@5.26.5/node_modules/undici-types/cookies.d.ts","../../../node_modules/.pnpm/undici-types@5.26.5/node_modules/undici-types/patch.d.ts","../../../node_modules/.pnpm/undici-types@5.26.5/node_modules/undici-types/filereader.d.ts","../../../node_modules/.pnpm/undici-types@5.26.5/node_modules/undici-types/diagnostics-channel.d.ts","../../../node_modules/.pnpm/undici-types@5.26.5/node_modules/undici-types/websocket.d.ts","../../../node_modules/.pnpm/undici-types@5.26.5/node_modules/undici-types/content-type.d.ts","../../../node_modules/.pnpm/undici-types@5.26.5/node_modules/undici-types/cache.d.ts","../../../node_modules/.pnpm/undici-types@5.26.5/node_modules/undici-types/interceptors.d.ts","../../../node_modules/.pnpm/undici-types@5.26.5/node_modules/undici-types/index.d.ts","../../../node_modules/.pnpm/bun-types@1.0.36/node_modules/bun-types/fetch.d.ts","../../../node_modules/.pnpm/bun-types@1.0.36/node_modules/bun-types/globals.d.ts","../../../node_modules/.pnpm/bun-types@1.0.36/node_modules/bun-types/bun.d.ts","../../../node_modules/.pnpm/bun-types@1.0.36/node_modules/bun-types/overrides.d.ts","../../../node_modules/.pnpm/bun-types@1.0.36/node_modules/bun-types/ffi.d.ts","../../../node_modules/.pnpm/bun-types@1.0.36/node_modules/bun-types/test.d.ts","../../../node_modules/.pnpm/bun-types@1.0.36/node_modules/bun-types/html-rewriter.d.ts","../../../node_modules/.pnpm/bun-types@1.0.36/node_modules/bun-types/jsc.d.ts","../../../node_modules/.pnpm/bun-types@1.0.36/node_modules/bun-types/sqlite.d.ts","../../../node_modules/.pnpm/bun-types@1.0.36/node_modules/bun-types/wasm.d.ts","../../../node_modules/.pnpm/bun-types@1.0.36/node_modules/bun-types/deprecated.d.ts","../../../node_modules/.pnpm/bun-types@1.0.36/node_modules/bun-types/index.d.ts","../../../node_modules/.pnpm/@types+bun@1.0.12/node_modules/@types/bun/index.d.ts","../../../node_modules/.pnpm/@types+eslint@7.28.0/node_modules/@types/eslint/helpers.d.ts","../../../node_modules/.pnpm/@types+eslint@7.28.0/node_modules/@types/eslint/lib/rules/index.d.ts","../../../node_modules/.pnpm/@types+json-schema@7.0.13/node_modules/@types/json-schema/index.d.ts","../../../node_modules/.pnpm/@types+estree@1.0.0/node_modules/@types/estree/index.d.ts","../../../node_modules/.pnpm/@types+eslint@7.28.0/node_modules/@types/eslint/index.d.ts","../../../node_modules/.pnpm/@types+eslint-scope@3.7.3/node_modules/@types/eslint-scope/index.d.ts"],"fileInfos":[{"version":"f33e5332b24c3773e930e212cbb8b6867c8ba3ec4492064ea78e55a524d57450","affectsGlobalScope":true},"45b7ab580deca34ae9729e97c13cfd999df04416a79116c3bfb483804f85ded4","26f2f787e82c4222710f3b676b4d83eb5ad0a72fa7b746f03449e7a026ce5073","9a68c0c07ae2fa71b44384a839b7b8d81662a236d4b9ac30916718f7510b1b2d","5e1c4c362065a6b95ff952c0eab010f04dcd2c3494e813b493ecfd4fcb9fc0d8","68d73b4a11549f9c0b7d352d10e91e5dca8faa3322bfb77b661839c42b1ddec7","5efce4fc3c29ea84e8928f97adec086e3dc876365e0982cc8479a07954a3efd4","feecb1be483ed332fad555aff858affd90a48ab19ba7272ee084704eb7167569","5514e54f17d6d74ecefedc73c504eadffdeda79c7ea205cf9febead32d45c4bc","1c0cdb8dc619bc549c3e5020643e7cf7ae7940058e8c7e5aefa5871b6d86f44b","bed7b7ba0eb5a160b69af72814b4dde371968e40b6c5e73d3a9f7bee407d158c",{"version":"21e41a76098aa7a191028256e52a726baafd45a925ea5cf0222eb430c96c1d83","affectsGlobalScope":true},{"version":"138fb588d26538783b78d1e3b2c2cc12d55840b97bf5e08bca7f7a174fbe2f17","affectsGlobalScope":true},{"version":"dc2df20b1bcdc8c2d34af4926e2c3ab15ffe1160a63e58b7e09833f616efff44","affectsGlobalScope":true},{"version":"4443e68b35f3332f753eacc66a04ac1d2053b8b035a0e0ac1d455392b5e243b3","affectsGlobalScope":true},{"version":"bc47685641087c015972a3f072480889f0d6c65515f12bd85222f49a98952ed7","affectsGlobalScope":true},{"version":"0dc1e7ceda9b8b9b455c3a2d67b0412feab00bd2f66656cd8850e8831b08b537","affectsGlobalScope":true},{"version":"ce691fb9e5c64efb9547083e4a34091bcbe5bdb41027e310ebba8f7d96a98671","affectsGlobalScope":true},{"version":"8d697a2a929a5fcb38b7a65594020fcef05ec1630804a33748829c5ff53640d0","affectsGlobalScope":true},{"version":"4ff2a353abf8a80ee399af572debb8faab2d33ad38c4b4474cff7f26e7653b8d","affectsGlobalScope":true},{"version":"93495ff27b8746f55d19fcbcdbaccc99fd95f19d057aed1bd2c0cafe1335fbf0","affectsGlobalScope":true},{"version":"6fc23bb8c3965964be8c597310a2878b53a0306edb71d4b5a4dfe760186bcc01","affectsGlobalScope":true},{"version":"38f0219c9e23c915ef9790ab1d680440d95419ad264816fa15009a8851e79119","affectsGlobalScope":true},{"version":"bb42a7797d996412ecdc5b2787720de477103a0b2e53058569069a0e2bae6c7e","affectsGlobalScope":true},{"version":"4738f2420687fd85629c9efb470793bb753709c2379e5f85bc1815d875ceadcd","affectsGlobalScope":true},{"version":"2f11ff796926e0832f9ae148008138ad583bd181899ab7dd768a2666700b1893","affectsGlobalScope":true},{"version":"4de680d5bb41c17f7f68e0419412ca23c98d5749dcaaea1896172f06435891fc","affectsGlobalScope":true},{"version":"9fc46429fbe091ac5ad2608c657201eb68b6f1b8341bd6d670047d32ed0a88fa","affectsGlobalScope":true},{"version":"61c37c1de663cf4171e1192466e52c7a382afa58da01b1dc75058f032ddf0839","affectsGlobalScope":true},{"version":"b541a838a13f9234aba650a825393ffc2292dc0fc87681a5d81ef0c96d281e7a","affectsGlobalScope":true},{"version":"e0275cd0e42990dc3a16f0b7c8bca3efe87f1c8ad404f80c6db1c7c0b828c59f","affectsGlobalScope":true},{"version":"811ec78f7fefcabbda4bfa93b3eb67d9ae166ef95f9bff989d964061cbf81a0c","affectsGlobalScope":true},{"version":"717937616a17072082152a2ef351cb51f98802fb4b2fdabd32399843875974ca","affectsGlobalScope":true},{"version":"d7e7d9b7b50e5f22c915b525acc5a49a7a6584cf8f62d0569e557c5cfc4b2ac2","affectsGlobalScope":true},{"version":"71c37f4c9543f31dfced6c7840e068c5a5aacb7b89111a4364b1d5276b852557","affectsGlobalScope":true},{"version":"576711e016cf4f1804676043e6a0a5414252560eb57de9faceee34d79798c850","affectsGlobalScope":true},{"version":"89c1b1281ba7b8a96efc676b11b264de7a8374c5ea1e6617f11880a13fc56dc6","affectsGlobalScope":true},{"version":"49ed889be54031e1044af0ad2c603d627b8bda8b50c1a68435fe85583901d072","affectsGlobalScope":true},{"version":"e93d098658ce4f0c8a0779e6cab91d0259efb88a318137f686ad76f8410ca270","affectsGlobalScope":true},{"version":"063600664504610fe3e99b717a1223f8b1900087fab0b4cad1496a114744f8df","affectsGlobalScope":true},{"version":"934019d7e3c81950f9a8426d093458b65d5aff2c7c1511233c0fd5b941e608ab","affectsGlobalScope":true},{"version":"bf14a426dbbf1022d11bd08d6b8e709a2e9d246f0c6c1032f3b2edb9a902adbe","affectsGlobalScope":true},{"version":"ec0104fee478075cb5171e5f4e3f23add8e02d845ae0165bfa3f1099241fa2aa","affectsGlobalScope":true},{"version":"2b72d528b2e2fe3c57889ca7baef5e13a56c957b946906d03767c642f386bbc3","affectsGlobalScope":true},{"version":"acae90d417bee324b1372813b5a00829d31c7eb670d299cd7f8f9a648ac05688","affectsGlobalScope":true},{"version":"368af93f74c9c932edd84c58883e736c9e3d53cec1fe24c0b0ff451f529ceab1","affectsGlobalScope":true},{"version":"af3dd424cf267428f30ccfc376f47a2c0114546b55c44d8c0f1d57d841e28d74","affectsGlobalScope":true},{"version":"995c005ab91a498455ea8dfb63aa9f83fa2ea793c3d8aa344be4a1678d06d399","affectsGlobalScope":true},{"version":"51e547984877a62227042850456de71a5c45e7fe86b7c975c6e68896c86fa23b","affectsGlobalScope":true},{"version":"62a4966981264d1f04c44eb0f4b5bdc3d81c1a54725608861e44755aa24ad6a5","affectsGlobalScope":true},{"version":"4fa6ed14e98aa80b91f61b9805c653ee82af3502dc21c9da5268d3857772ca05","affectsGlobalScope":true},{"version":"e6633e05da3ff36e6da2ec170d0d03ccf33de50ca4dc6f5aeecb572cedd162fb","affectsGlobalScope":true},{"version":"86a34c7a13de9cabc43161348f663624b56871ed80986e41d214932ddd8d6719","affectsGlobalScope":true},{"version":"8444af78980e3b20b49324f4a16ba35024fef3ee069a0eb67616ea6ca821c47a","affectsGlobalScope":true},{"version":"caccc56c72713969e1cfe5c3d44e5bab151544d9d2b373d7dbe5a1e4166652be","affectsGlobalScope":true},{"version":"3287d9d085fbd618c3971944b65b4be57859f5415f495b33a6adc994edd2f004","affectsGlobalScope":true},{"version":"50d53ccd31f6667aff66e3d62adf948879a3a16f05d89882d1188084ee415bbc","affectsGlobalScope":true},{"version":"08a58483392df5fcc1db57d782e87734f77ae9eab42516028acbfe46f29a3ef7","affectsGlobalScope":true},{"version":"436aaf437562f276ec2ddbee2f2cdedac7664c1e4c1d2c36839ddd582eeb3d0a","affectsGlobalScope":true},{"version":"13f6e6380c78e15e140243dc4be2fa546c287c6d61f4729bc2dd7cf449605471","affectsGlobalScope":true},{"version":"4350e5922fecd4bedda2964d69c213a1436349d0b8d260dd902795f5b94dc74b","affectsGlobalScope":true},{"version":"d4b1d2c51d058fc21ec2629fff7a76249dec2e36e12960ea056e3ef89174080f","affectsGlobalScope":true},{"version":"33358442698bb565130f52ba79bfd3d4d484ac85fe33f3cb1759c54d18201393","affectsGlobalScope":true},{"version":"782dec38049b92d4e85c1585fbea5474a219c6984a35b004963b00beb1aab538","affectsGlobalScope":true},{"version":"0bd5e7096c7bc02bf70b2cc017fc45ef489cb19bd2f32a71af39ff5787f1b56a","affectsGlobalScope":true},"1c29793071152b207c01ea1954e343be9a44d85234447b2b236acae9e709a383","f7b46d22a307739c145e5fddf537818038fdfffd580d79ed717f4d4d37249380","f5a8b384f182b3851cec3596ccc96cb7464f8d3469f48c74bf2befb782a19de5",{"version":"e6f3077b1780226627f76085397d10c77a4d851c7154fd4b3f1eb114f4c2e56d","affectsGlobalScope":true},"2879a055439b6c0c0132a1467120a0f85b56b5d735c973ad235acd958b1b5345","e0cf974515cf71dd5b2d27db12b9fa9b37c1bf5670ac926e67265858bd7de1f2","117554f1f5046af1916d12ee4302f90855dea0440fb3d757c78fc6bd3c69d76e","4462e74506879287aa697e645a14ac69ecf91cc720bbb80f17affa9b6ed63731","5487b97cfa28b26b4a9ef0770f872bdbebd4c46124858de00f242c3eed7519f4","7a01f546ace66019156e4232a1bee2fabc2f8eabeb052473d926ee1693956265","fb53b1c6a6c799b7e3cc2de3fb5c9a1c04a1c60d4380a37792d84c5f8b33933b","8485b6da53ec35637d072e516631d25dae53984500de70a6989058f24354666f","ebe80346928736532e4a822154eb77f57ef3389dbe2b3ba4e571366a15448ef2","c2cb3c8ff388781258ea9ddbcd8a947f751bddd6886e1d3b3ea09ddaa895df80","f672c876c1a04a223cf2023b3d91e8a52bb1544c576b81bf64a8fec82be9969c","98a9cc18f661d28e6bd31c436e1984f3980f35e0f0aa9cf795c54f8ccb667ffe","c76b0c5727302341d0bdfa2cc2cee4b19ff185b554edb6e8543f0661d8487116","d6a6e6fcd382a05f787a81a157e66f54f360f81a405015bf07f77a622139ed90","f5ef066942e4f0bd98200aa6a6694b831e73200c9b3ade77ad0aa2409e8fe1b1","b9e99cd94f4166a245f5158f7286c05406e2a4c694619bceb7a4f3519d1d768e","5568d7c32e5cf5f35e092649f4e5e168c3114c800b1d7545b7ae5e0415704802","c3f30466c80f93c4b75c84381c4437d9a4d05d7854acd84597f3eae5caebb908","d46e87de1f4a4350a3c0fcc39e6dd7a5565fb3f8efb80e2baa45c307fe835149","55e3c9d36b19ce9446d5391bf7e95eafec525ef7e5ad592e8a987ef78a974ebc","0988919669d5cb074a592d262349d346774b0c5db49ac31265debb1ccfd73d85","897e6749846bc87348ef23667d5306a63efaed38a636a8074ea75116196fc951","92ae0eb521843f61c7b5253f9e0cbc04840364f0844a2334c22c7f24b9e55ce7","f5f3799b69a6ba2957e37336fa1aa779f39abb95873e439aec00ad3c988b0861","7d48277dc6d97d91c54e32401124b1e29a7cbc2201cf2e4d1f19a4a375157f2a","702d10138b7b5748f9ea17d355e36e776efbe5429ab00db88b9673169254a728","c7df5c0bd4363fd20c814b9ac1827a79af56eb19944c2a53c39d7a9b98e42064","e56e1b868fec05ea420229b17a88c861e06fbc0734a313dd03f237ec503849e8","736eea59824b87cc7afe7157a53e720956f900ac4f5f01b54047ed927af8fec7","9ec6e0bc0c492b9107c49baf1e78769540ea2a3c593f8631a9437a582af57f39","e79b3586dfa1d8c65ca29e0f3cf8dc5aa2f3dbb01266aa86e590d6664efe7a49","a58a3a8fd66523c1e2f0b5702877812ae867c571f42e0568064d93ee13e47061","2aca60d18b2664e0e90332ef82aaede514979b9069886e691c503ee5b1175016","16bfef6b7587c218a81106ecf4cdf425bf91c13e8825c5ea6ec7e8aa20d09c48","93dd4f7113bcc5ef507ddf75163ef1885317e4871e677a173166922f354603ff","2cc2215a8bbfd2075624bcf2c9feadee6a46b335353f8318f0e05be0c2017d95","5c0c6ee555463ebfe0a009319d21a6b9db12f79b291fbe18816ed014ec6445d1","dd4fcd6f7c6bdf164d2ea7f506fb5fa6dce2a39a04526a7b828cf75c7a173adc","7e478932fbb478efeee7c3e005f781c4ba7bd9e5bbe2db5574e02501af2a97e0","bde4bb646eba9524dede275e59d032494af2e889b5e2c05bdb37af3961ec5434","1a3457f594699440a82f05f9062bb41686cc9aa8d8531e84b1b3d74675d84ec7","701ac7b25d0537623122955efe1fcfceffa7a9881dd63802bde17d298ea0aa45","aff8958e4486632e42eea2d4554c6da3a31c79ae8be75eac54fa15a1961304b6","3f4ec0e70cd2936aee92d41060e4a54c60d4821e0cef2a3238e4949ebcb8f067","f6f8675aeb12872d93e8a553af86cd0a2dda669c68d25e9abbf59d24aea8e7f8","62eb3bdc6b77fe92dbe5906b9dc71b4a03e1fe783c3e4ecfa2b32fe4ea86159f","23108504dc28892892ffd40cfc590ab191c4f8e19697197e2d90ed54c2489b39","d304a536de89b806da07e329b027f9e501d6b5bb84c8ec637865ca3e2b9d7562","3eb22e53fa9c366383f6609c9ac0792af4bf942c389fdb95783ba103417be79a","1d891b2f756feff42876e673d05e407d11f13cbf94007640219951ec3a806cc5","bb5a65be67610de5485a7fb58c109e70688a37c612707bb3dd05e0a68fb7d157","e59b4c863398a4c9a0818552c47acf7420834a2033c6879dd57a6ef42e2ec0e3","76a0d49f77a9bde7af11c3d09f821930702cc50c4b4cef999cd830ddf121e4f6","444081b4c6a10bb745d0f8763a4c686e923148e9fbadaaea52028d8c7ca7d675","4b8c3cb0a7728e4319f799fffdc88d537d4195cc49eae97348f8f92d87481602","2cbcc5fc171b0895d7a332da8ce3ac46edf71ca584884ffa3f6374b5aa2b2788","5b864a4f68a6ef615a523d19d32fae353e35e735fa19143bac0e45bb7ca30530","ffe314014b5e91809d1d61abdecc37be235bae403e27fd28baea775f2a67c13d","0313aec30fab57bbfae65c1ba766841aecfb26815bd6f0cf0fd2da8de079d6ba","82b03ee52c16e2bcc7f459869ab73661b2944239bab796070a067b80283a829b","6f624e1db03808be42a44c9409b94d253a0d57b091c0104e96e44e0519299896","99fc993f6b01061c33923f4f46ba4a32e6b4bea22cad77ba6462c236b56a7d96","fd6da2741e4e04313c29ac2ef5b222762e3cd88047dc80f5a2b50644be6dce46","27f3902bb2aa0d593f94e4d954253b009e4d025ad888090ca42bef6eeb6f7786","1d6095d40b0cbb89fd6c42c23363d91501d4789f7e6f6b1c15c3187703b7282b","efffd45b4d7ecc07090f6ac1d8741a187744ddff488caaaac55bff143afc99f5","e54160491789b8bd543ab749afb8fe5a076f372c2de44c91d35a489d3ea83c6a","1bfb0c2c958cb382649efbcf80fea166c549c7d03a113aedbc3155c0190ff127","54c0de6bb313ec3d993b7f82b4c5310840857bdf09f53fe9c0e03e775eab1db7","19ef6ed007bbd35d8a7aa0352bb2701a24089a4a5cd3a764a478b9162fbc0b61","2fa60584bf54722bcf706899e8da738af1df6f3ffadcbf41d509ba0db96ac4ad","8761f74baf198ac04b6adb9e313df91b814046d31cec231c0fcede87417e24ff","bebe9f83f9f67515b46698c69b2120fe46a6763ba63445d6448e4e2273a5f9ec","b42478400905f38a4d9e15d476bfe41ab52c3ac449e8769450a5f9e3ee7ab2e4","d6d0fc6b469069264f031404897f7b5236e45dda473eaf31fd17e0e4fe7d06c2","cec9a146fc3b701fc4c6e275d4c51eba9c7e95ba7c7b3507c1c8c89e464e35fa","1d3a127e41f6f3ffdab891a8822f5412d5f62128092427bb29819b0a19a7ee7c","4030954b2d0b4f39c2849886c42a742456a498c49111d425b4cff3558e03d1ff",{"version":"e96283294e3180bfb66d8a992ec32364b19317a556ef95263d318eb5cd2ea49c","affectsGlobalScope":true},{"version":"ab9d2116c480f49c2e416556cf20bdd884a286a4a403b06783b24b8cd1fe5565","signature":"a2f70bfe3dc3877e9c0ee3e4a4b8f6dc1546fd4de6ddea7ec985526fccba8047"},{"version":"b3a6bee68229e3bf556bdb52f4b27a61962a5151860457cf347bf8cbe3abcfdb","signature":"af7a2006317332086a366e4c5040ce06a9e4924cbd5d276680735c3d354a5d78"},{"version":"57568ede85f323620b74e86813af04a08943ada65ffed426a42454baff38c2f7","signature":"99d31eba1f3ddf29e657f44d3b89611deeef5e1e647e200b0a1e95f4637861f5"},{"version":"74c4696e0c3a62c214f325c5d02fca3dd7f76c0cd3072f97db9838500116a58b","signature":"ffb853e159f2bd6cc35a07505a30dc51456966bb927377e0a566023f353360fd"},{"version":"cd9a7f3f9dd133062fc794d98a7bcd28e2b402ba7505ea422f04475807163492","signature":"2a776396a8ac31b51543632fadaa601105102b4bbb519df0404b0ae82e48524d"},{"version":"155716d1cc46f0ed6d62b42480f00b12972e4dfcebac030f6cd15969ed2ff0ac","signature":"d40e24f407eb23c3d8be51c1d6eea64e922995fe82049e0419260ff8a7332cad"},{"version":"bc1b6b4980ed2ae55a02e2820f4654d781f4b7b8e55051989756dc202ab7e5cd","signature":"318dfae5df300f26614f5c3a39dc429b7db088da2d3e7e8cfd693d05fcb4d1e7"},{"version":"c2485d4bbe49364ee0687f6285437d4db5727c494353ff584c314c77f024f53a","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"103e30d9630dc867e532249c073bbcc766600eebf8d6120a9660e3243f779ac2","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},"7e771891adaa85b690266bc37bd6eb43bc57eecc4b54693ead36467e7369952a","a69c09dbea52352f479d3e7ac949fde3d17b195abe90b045d619f747b38d6d1a",{"version":"ca72190df0eb9b09d4b600821c8c7b6c9747b75a1c700c4d57dc0bb72abc074c","affectsGlobalScope":true},"11e2d554398d2bd460e7d06b2fa5827a297c8acfbe00b4f894a224ac0862857f",{"version":"fc811ced095f38ad4438bb94a8d665c63bf4943e58a71ada16627add5ad93226","affectsGlobalScope":true},"374ca798f244e464346f14301dc2a8b4b111af1a83b49fffef5906c338a1f922","5a94487653355b56018122d92392beb2e5f4a6c63ba5cef83bbe1c99775ef713",{"version":"d5135ad93b33adcce80b18f8065087934cdc1730d63db58562edcf017e1aad9b","affectsGlobalScope":true},"82408ed3e959ddc60d3e9904481b5a8dc16469928257af22a3f7d1a3bc7fd8c4","5eb881ed2a0d5b17ea36df5cd4c4be500e460c412f270c3170e906bec65580ac","bb9c4ffa5e6290c6980b63c815cdd1625876dadb2efaf77edbe82984be93e55e","489532ff54b714f0e0939947a1c560e516d3ae93d51d639ab02e907a0e950114","f30bb836526d930a74593f7b0f5c1c46d10856415a8f69e5e2fc3db80371e362","14b5aa23c5d0ae1907bc696ac7b6915d88f7d85799cc0dc2dcf98fbce2c5a67c","5c439dafdc09abe4d6c260a96b822fa0ba5be7203c71a63ab1f1423cd9e838ea",{"version":"6b526a5ec4a401ca7c26cfe6a48e641d8f30af76673bad3b06a1b4504594a960","affectsGlobalScope":true},{"version":"816ad2e607a96de5bcac7d437f843f5afd8957f1fa5eefa6bba8e4ed7ca8fd84","affectsGlobalScope":true},"cec36af22f514322f870e81d30675c78df82ae8bf4863f5fd4e4424c040c678d","d903fafe96674bc0b2ac38a5be4a8fc07b14c2548d1cdb165a80ea24c44c0c54","5eec82ac21f84d83586c59a16b9b8502d34505d1393393556682fe7e7fde9ef2","04eb6578a588d6a46f50299b55f30e3a04ef27d0c5a46c57d8fcc211cd530faa","8d3c583a07e0c37e876908c2d5da575019f689df8d9fa4c081d99119d53dba22","2c828a5405191d006115ab34e191b8474bc6c86ffdc401d1a9864b1b6e088a58",{"version":"e630e5528e899219ae319e83bef54bf3bcb91b01d76861ecf881e8e614b167f0","affectsGlobalScope":true},"bcebb922784739bdb34c18ee51095d25a92b560c78ccd2eaacd6bd00f7443d83","7ee6ed878c4528215c82b664fe0cfe80e8b4da6c0d4cc80869367868774db8b1","b0973c3cbcdc59b37bf477731d468696ecaf442593ec51bab497a613a580fe30",{"version":"4989e92ba5b69b182d2caaea6295af52b7dc73a4f7a2e336a676722884e7139d","affectsGlobalScope":true},{"version":"b3624aed92dab6da8484280d3cb3e2f4130ec3f4ef3f8201c95144ae9e898bb6","affectsGlobalScope":true},"5153a2fd150e46ce57bb3f8db1318d33f6ad3261ed70ceeff92281c0608c74a3","210d54cd652ec0fec8c8916e4af59bb341065576ecda039842f9ffb2e908507c","36b03690b628eab08703d63f04eaa89c5df202e5f1edf3989f13ad389cd2c091","0effadd232a20498b11308058e334d3339cc5bf8c4c858393e38d9d4c0013dcf","25846d43937c672bab7e8195f3d881f93495df712ee901860effc109918938cc","fd93cee2621ff42dabe57b7be402783fd1aa69ece755bcba1e0290547ae60513","1b952304137851e45bc009785de89ada562d9376177c97e37702e39e60c2f1ff","69ee23dd0d215b09907ad30d23f88b7790c93329d1faf31d7835552a10cf7cbf","44b8b584a338b190a59f4f6929d072431950c7bd92ec2694821c11bce180c8a5","23b89798789dffbd437c0c423f5d02d11f9736aea73d6abf16db4f812ff36eda","09326ae5f7e3d49be5cd9ea00eb814770e71870a438faa2efd8bdd9b4db21320",{"version":"3c4ba1dd9b12ffa284b565063108f2f031d150ea15b8fafbdc17f5d2a07251f3","affectsGlobalScope":true},"e10177274a35a9d07c825615340b2fcde2f610f53f3fb40269fd196b4288dda6","c4577fb855ca259bdbf3ea663ca73988ce5f84251a92b4aef80a1f4122b6f98e","3c13ef48634e7b5012fcf7e8fce7496352c2d779a7201389ca96a2a81ee4314d","5d0a25ec910fa36595f85a67ac992d7a53dd4064a1ba6aea1c9f14ab73a023f2",{"version":"f0900cd5d00fe1263ff41201fb8073dbeb984397e4af3b8002a5c207a30bdc33","affectsGlobalScope":true},{"version":"ff07a9a03c65732ccc59b3c65bc584173da093bd563a6565411c01f5703bd3cb","affectsGlobalScope":true},"06d7c42d256f0ce6afe1b2b6cfbc97ab391f29dadb00dd0ae8e8f23f5bc916c3","ec4bd1b200670fb567920db572d6701ed42a9641d09c4ff6869768c8f81b404c","e59a892d87e72733e2a9ca21611b9beb52977be2696c7ba4b216cbbb9a48f5aa",{"version":"da26af7362f53d122283bc69fed862b9a9fe27e01bc6a69d1d682e0e5a4df3e6","affectsGlobalScope":true},"8a300fa9b698845a1f9c41ecbe2c5966634582a8e2020d51abcace9b55aa959e",{"version":"ab9b9a36e5284fd8d3bf2f7d5fcbc60052f25f27e4d20954782099282c60d23e","affectsGlobalScope":true},"ed2a670a77a1b80653c5bde2d813b0ab2e92872cc9b2b611ce11050b95139be6","7ac7ef12f7ece6464d83d2d56fea727260fb954fdd51a967e94f97b8595b714b","f7163a5d37d21f636f6a5cd1c064ce95fada21917859a64b6cc49a8b6fd5c1a8","ef18cbf1d8374576e3db03ff33c2c7499845972eb0c4adf87392949709c5e160","5929864ce17fba74232584d90cb721a89b7ad277220627cc97054ba15a98ea8f","7180c03fd3cb6e22f911ce9ba0f8a7008b1a6ddbe88ccf16a9c8140ef9ac1686","25c8056edf4314820382a5fdb4bb7816999acdcb929c8f75e3f39473b87e85bc","54cb85a47d760da1c13c00add10d26b5118280d44d58e6908d8e89abbd9d7725","3e4825171442666d31c845aeb47fcd34b62e14041bb353ae2b874285d78482aa","c6fd2c5a395f2432786c9cb8deb870b9b0e8ff7e22c029954fabdd692bff6195","a967bfe3ad4e62243eb604bf956101e4c740f5921277c60debaf325c1320bf88","e9775e97ac4877aebf963a0289c81abe76d1ec9a2a7778dbe637e5151f25c5f3","471e1da5a78350bc55ef8cef24eb3aca6174143c281b8b214ca2beda51f5e04a","cadc8aced301244057c4e7e73fbcae534b0f5b12a37b150d80e5a45aa4bebcbd","385aab901643aa54e1c36f5ef3107913b10d1b5bb8cbcd933d4263b80a0d7f20","9670d44354bab9d9982eca21945686b5c24a3f893db73c0dae0fd74217a4c219","db3435f3525cd785bf21ec6769bf8da7e8a776be1a99e2e7efb5f244a2ef5fee","c3b170c45fc031db31f782e612adf7314b167e60439d304b49e704010e7bafe5","40383ebef22b943d503c6ce2cb2e060282936b952a01bea5f9f493d5fb487cc7","4893a895ea92c85345017a04ed427cbd6a1710453338df26881a6019432febdd","3a84b7cb891141824bd00ef8a50b6a44596aded4075da937f180c90e362fe5f6","13f6f39e12b1518c6650bbb220c8985999020fe0f21d818e28f512b7771d00f9","9b5369969f6e7175740bf51223112ff209f94ba43ecd3bb09eefff9fd675624a","4fe9e626e7164748e8769bbf74b538e09607f07ed17c2f20af8d680ee49fc1da","24515859bc0b836719105bb6cc3d68255042a9f02a6022b3187948b204946bd2","33203609eba548914dc83ddf6cadbc0bcb6e8ef89f6d648ca0908ae887f9fcc5","0db18c6e78ea846316c012478888f33c11ffadab9efd1cc8bcc12daded7a60b6","89167d696a849fce5ca508032aabfe901c0868f833a8625d5a9c6e861ef935d2","e53a3c2a9f624d90f24bf4588aacd223e7bec1b9d0d479b68d2f4a9e6011147f","339dc5265ee5ed92e536a93a04c4ebbc2128f45eeec6ed29f379e0085283542c","9f0a92164925aa37d4a5d9dd3e0134cff8177208dba55fd2310cd74beea40ee2","8bfdb79bf1a9d435ec48d9372dc93291161f152c0865b81fc0b2694aedb4578d","2e85db9e6fd73cfa3d7f28e0ab6b55417ea18931423bd47b409a96e4a169e8e6","c46e079fe54c76f95c67fb89081b3e399da2c7d109e7dca8e4b58d83e332e605","d32275be3546f252e3ad33976caf8c5e842c09cb87d468cb40d5f4cf092d1acc","4a0c3504813a3289f7fb1115db13967c8e004aa8e4f8a9021b95285502221bd1","720f5d028d71bc22ed4a5311a6ea884329db475d994f805ea86470111eccc1a1",{"version":"f966fcb7df163aee582a9fae2420352326bebe6ba7cb6803d6018731fd49903b","affectsGlobalScope":true},{"version":"357f4260a6d8a1200b8512a3823775bb45798afebd9af6334f7f9e75d5595458","affectsGlobalScope":true},{"version":"9603687f2c76dc11c02cca33e4b6672a8942934109f727a619feef030d24bd4b","affectsGlobalScope":true},"9d3097082928564cb4578d5f31873b6f0e169c4acfd004ec0f587186f1293076",{"version":"90f2249dcd4007313e225308e643ed50b52a8f17b0df5389c2ba08951143ccec","affectsGlobalScope":true},{"version":"2b8af6e8cf44313406800b820bffc49e83a8ec4598772db25954d03a86c96818","affectsGlobalScope":true},"6813c4ebad2ed9fd49be7805c4084cbbc2d484cca1dfafc6a8a196689b5d476a","2c6f0a52ff66e29bec24980e96f4663a0dd24fbba6cea4ce17d21ad894750b1d",{"version":"835dd17fddc6e39d830bf911a84d2184724c13181fcaff139410946b65062c5a","affectsGlobalScope":true},{"version":"ca69bbf884a17e7a485bb4fcd129386874050916b275e414af14b2170b4ea728","affectsGlobalScope":true},"b52c121cd491cfdbea04c3a77d23e193c23cb411e7598a04ba13a4592842fe2f","37be812b06e518320ba82e2aff3ac2ca37370a9df917db708f081b9043fa3315",{"version":"64d4b35c5456adf258d2cf56c341e203a073253f229ef3208fc0d5020253b241","affectsGlobalScope":true},"0133ebdd17a823ae56861948870cde4dac18dd8818ab641039c85bbb720429e0","dd89872dd0647dfd63665f3d525c06d114310a2f7a5a9277e5982a152b31be2b","946bd1737d9412395a8f24414c70f18660b84a75a12b0b448e6eb1a2161d06dd","e300bf65972ac08167a72787e19d1b43c285c5424707194d0ba64422f6b02c77","dc33ce27fbeaf0ea3da556c80a6cc8af9d13eb443088c8f25cdc39fca8e756f6"],"root":[[149,157]],"options":{"composite":true,"declaration":true,"declarationMap":false,"emitDeclarationOnly":false,"esModuleInterop":true,"importHelpers":true,"jsx":4,"module":99,"noEmitHelpers":true,"noUnusedLocals":true,"noUnusedParameters":true,"outDir":"./esm","rootDir":"../src","skipLibCheck":true,"sourceMap":false,"strict":true,"target":5},"fileIdsList":[[204,249,257,258],[204,249,257,263,264],[204,249,257],[204,249,257,260,261,262,263],[204,249,257,264],[158,204,249,257],[161,204,249,257],[162,167,195,204,249,257],[163,174,175,182,192,203,204,249,257],[163,164,174,182,204,249,257],[165,204,249,257],[166,167,175,183,204,249,257],[167,192,200,204,249,257],[168,170,174,182,204,249,257],[169,204,249,257],[170,171,204,249,257],[174,204,249,257],[172,174,204,249,257],[174,175,176,192,203,204,249,257],[174,175,176,189,192,195,204,249,250,257],[204,208,249,257],[170,177,182,192,203,204,249,257],[174,175,177,178,182,192,200,203,204,249,257],[177,179,192,200,203,204,249,257],[158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,249,257],[174,180,204,249,257],[181,203,204,249,257],[170,174,182,192,204,249,257],[183,204,249,257],[184,204,249,257],[161,185,204,249,257],[186,202,204,208,249,257],[187,204,249,257],[188,204,249,257],[174,189,190,204,249,257],[189,191,204,206,249,257],[162,174,192,193,194,195,204,249,257],[162,192,194,204,249,257],[192,193,204,249,257],[195,204,249,257],[196,204,249,257],[174,198,199,204,249,257],[198,199,204,249,257],[167,182,192,200,204,249,250,257],[201,204,249,257],[182,202,204,249,257],[162,177,188,203,204,249,257],[167,204,249,257],[192,204,205,249,257],[204,206,249,257],[204,207,249,257],[162,167,174,176,185,192,203,204,206,208,249,257],[192,204,209,249,257],[69,204,249,257],[65,66,67,68,204,249,257],[174,177,179,192,200,203,204,209,211,249,250,257],[167,204,257],[204,249],[204,246,249,257],[167,185,192,195,204,208,213,246,247,249,257],[204,211,213,247,248,249,250,251,252,253,254,255,256,257],[176,200,204,249,257],[204,249,252,257],[203,204,223,227,249,257],[192,203,204,223,249,257],[204,218,249,257],[200,203,204,220,223,249,250,257],[182,200,204,249,250,257],[204,211,249,257],[204,211,218,249,257],[182,203,204,220,223,249,257],[162,174,192,203,204,215,216,219,222,249,257],[204,215,221,249,257],[162,195,203,204,211,219,223,249,257],[162,204,211,249,257],[162,204,211,239,249,257],[204,211,217,218,249,257],[204,223,249,257],[204,217,218,219,220,221,222,223,224,225,227,228,229,230,231,232,233,234,235,236,237,238,240,241,242,243,244,245,249,257],[204,223,230,231,249,257],[204,221,223,231,232,249,257],[204,222,249,257],[204,215,218,223,249,257],[204,223,227,231,232,249,257],[204,227,249,257],[203,204,221,223,226,249,257],[204,215,220,221,223,227,230,249,257],[162,192,204,249,257],[162,204,208,211,218,223,239,249,257],[85,204,249,257],[76,77,204,249,257],[74,75,76,78,79,83,204,249,257],[75,76,204,249,257],[84,204,249,257],[76,204,249,257],[74,75,76,79,80,81,82,204,249,257],[74,75,85,204,249,257],[69,94,95,96,204,249,257],[96,97,204,249,257],[69,94,95,204,249,257],[69,73,86,87,204,249,257],[69,86,87,88,204,249,257],[69,86,89,92,100,204,249,257],[69,73,88,89,90,91,92,93,98,99,100,101,102,103,104,105,106,107,108,111,114,121,122,123,124,125,131,132,133,134,137,138,139,140,141,142,143,147,204,249,257],[69,70,86,88,89,92,101,106,109,110,111,112,113,114,115,116,117,118,119,120,121,148,204,249,257],[69,124,204,249,257],[89,91,92,110,112,123,126,127,128,129,130,204,249,257],[86,204,249,257],[69,89,204,249,257],[135,136,204,249,257],[135,204,249,257],[69,86,88,204,249,257],[92,204,249,257],[73,204,249,257],[144,145,146,204,249,257],[69,144,204,249,257],[69,94,95,144,204,249,257],[90,204,249,257],[69,70,91,92,101,111,115,116,117,118,204,249,257],[70,149,204,249,257],[70,149,153,154,204,249,257],[69,70,71,148,149,150,151,152,204,249,257],[70,154,175,184,204,249,252,257],[70,150,204,249,252,257],[69,70,71,204,249,257],[70,204,249,257],[204,263,264],[204],[204,260,261,262,263],[204,264],[158,204],[161,204],[162,167,195,204],[163,174,175,182,192,203,204],[163,164,174,182,204],[165,204],[166,167,175,183,204],[167,192,200,204],[168,170,174,182,204],[169,204],[170,171,204],[174,204],[172,174,204],[174,175,176,192,203,204],[174,175,176,189,192,195,204],[204,208],[170,177,182,192,203,204],[174,175,177,178,182,192,200,203,204],[177,179,192,200,203,204],[158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210],[174,180,204],[181,203,204],[170,174,182,192,204],[183,204],[184,204],[161,185,204],[186,202,204,208],[187,204],[188,204],[174,189,190,204],[189,191,204,206],[162,174,192,193,194,195,204],[162,192,194,204],[192,193,204],[195,204],[196,204],[174,198,199,204],[198,199,204],[167,182,192,200,204],[201,204],[182,202,204],[162,177,188,203,204],[167,204],[192,204,205],[204,206],[204,207],[162,167,174,176,185,192,203,204,206,208],[192,204,209],[69,204],[65,66,67,68,204],[85,204],[76,77,204],[74,75,76,78,79,83,204],[75,76,204],[84,204],[76,204],[74,75,76,79,80,81,82,204],[74,75,85,204],[96,97,204],[69,73,86,87,204],[69,86,87,88,204],[69,86,89,92,100,204],[86,204],[69,89,204],[69,124,204],[69,86,88,204],[92,204],[73,204],[69,144,204],[90,204],[69,70,91,92,101,111,115,116,117,118,204],[149],[149,153,154],[70,149],[69,71]],"referencedMap":[[259,1],[265,2],[260,3],[264,4],[261,5],[263,3],[262,3],[158,6],[159,6],[161,7],[162,8],[163,9],[164,10],[165,11],[166,12],[167,13],[168,14],[169,15],[170,16],[171,16],[173,17],[172,18],[174,17],[175,19],[176,20],[160,21],[210,3],[177,22],[178,23],[179,24],[211,25],[180,26],[181,27],[182,28],[183,29],[184,30],[185,31],[186,32],[187,33],[188,34],[189,35],[190,35],[191,36],[192,37],[194,38],[193,39],[195,40],[196,41],[197,3],[198,42],[199,43],[200,44],[201,45],[202,46],[203,47],[204,48],[205,49],[206,50],[207,51],[208,52],[209,53],[67,3],[212,54],[65,3],[69,55],[70,54],[68,3],[213,56],[214,3],[249,57],[257,58],[247,59],[251,3],[248,60],[253,3],[258,61],[254,3],[250,62],[255,3],[252,63],[256,3],[66,3],[71,3],[63,3],[64,3],[12,3],[14,3],[13,3],[2,3],[15,3],[16,3],[17,3],[18,3],[19,3],[20,3],[21,3],[22,3],[3,3],[4,3],[23,3],[27,3],[24,3],[25,3],[26,3],[28,3],[29,3],[30,3],[5,3],[31,3],[32,3],[33,3],[34,3],[6,3],[38,3],[35,3],[36,3],[37,3],[39,3],[7,3],[40,3],[45,3],[46,3],[41,3],[42,3],[43,3],[44,3],[8,3],[50,3],[47,3],[48,3],[49,3],[51,3],[9,3],[52,3],[53,3],[54,3],[57,3],[55,3],[56,3],[58,3],[59,3],[10,3],[1,3],[11,3],[62,3],[61,3],[60,3],[230,64],[237,65],[229,64],[244,66],[221,67],[220,68],[243,69],[238,70],[241,71],[223,72],[222,73],[218,74],[217,75],[240,76],[219,77],[224,78],[225,3],[228,78],[215,3],[246,79],[245,78],[232,80],[233,81],[235,82],[231,83],[234,84],[239,69],[226,85],[227,86],[236,87],[216,88],[242,89],[86,90],[78,91],[84,92],[80,3],[81,3],[79,93],[82,90],[74,3],[75,3],[85,94],[77,95],[83,96],[76,97],[93,54],[72,3],[97,98],[98,99],[96,100],[95,3],[99,3],[73,3],[88,101],[89,102],[101,103],[102,3],[109,3],[103,3],[104,3],[120,54],[100,54],[105,54],[106,3],[90,3],[107,54],[108,54],[148,104],[110,3],[122,105],[123,3],[126,3],[125,106],[91,54],[131,107],[116,54],[132,3],[87,108],[127,3],[133,54],[117,109],[124,109],[115,54],[118,109],[134,106],[137,110],[136,111],[135,3],[138,3],[139,112],[111,54],[112,3],[140,3],[141,3],[121,54],[142,113],[128,3],[129,3],[130,3],[143,3],[92,114],[147,115],[145,116],[144,100],[146,117],[113,54],[94,3],[114,118],[119,119],[154,120],[155,121],[153,122],[156,123],[157,124],[149,125],[150,120],[151,126],[152,126]],"exportedModulesMap":[[259,1],[265,127],[260,128],[264,129],[261,130],[263,128],[262,128],[158,131],[159,131],[161,132],[162,133],[163,134],[164,135],[165,136],[166,137],[167,138],[168,139],[169,140],[170,141],[171,141],[173,142],[172,143],[174,142],[175,144],[176,145],[160,146],[210,128],[177,147],[178,148],[179,149],[211,150],[180,151],[181,152],[182,153],[183,154],[184,155],[185,156],[186,157],[187,158],[188,159],[189,160],[190,160],[191,161],[192,162],[194,163],[193,164],[195,165],[196,166],[197,128],[198,167],[199,168],[200,169],[201,170],[202,171],[203,172],[204,173],[205,174],[206,175],[207,176],[208,177],[209,178],[67,128],[212,179],[65,128],[69,180],[70,179],[68,128],[213,56],[214,3],[249,57],[257,58],[247,59],[251,3],[248,60],[253,3],[258,61],[254,3],[250,62],[255,3],[252,63],[256,3],[66,128],[71,128],[63,128],[64,128],[12,128],[14,128],[13,128],[2,128],[15,128],[16,128],[17,128],[18,128],[19,128],[20,128],[21,128],[22,128],[3,128],[4,128],[23,128],[27,128],[24,128],[25,128],[26,128],[28,128],[29,128],[30,128],[5,128],[31,128],[32,128],[33,128],[34,128],[6,128],[38,128],[35,128],[36,128],[37,128],[39,128],[7,128],[40,128],[45,128],[46,128],[41,128],[42,128],[43,128],[44,128],[8,3],[50,3],[47,3],[48,3],[49,3],[51,3],[9,3],[52,3],[53,3],[54,3],[57,3],[55,3],[56,3],[58,3],[59,3],[10,3],[1,128],[11,3],[62,3],[61,3],[60,128],[230,64],[237,65],[229,64],[244,66],[221,67],[220,68],[243,69],[238,70],[241,71],[223,72],[222,73],[218,74],[217,75],[240,76],[219,77],[224,78],[225,3],[228,78],[215,3],[246,79],[245,78],[232,80],[233,81],[235,82],[231,83],[234,84],[239,69],[226,85],[227,86],[236,87],[216,88],[242,89],[86,181],[78,182],[84,183],[80,128],[81,128],[79,184],[82,181],[74,128],[75,128],[85,185],[77,186],[83,187],[76,188],[93,179],[72,128],[97,98],[98,189],[96,100],[95,3],[99,128],[73,128],[88,190],[89,191],[101,192],[102,128],[109,128],[103,128],[104,128],[120,179],[100,179],[105,179],[106,128],[90,128],[107,179],[108,179],[148,104],[110,128],[122,105],[123,128],[126,128],[125,106],[91,179],[131,107],[116,179],[132,128],[87,193],[127,128],[133,179],[117,194],[124,194],[115,179],[118,194],[134,195],[137,110],[136,111],[135,128],[138,128],[139,196],[111,179],[112,128],[140,128],[141,128],[121,179],[142,197],[128,128],[129,128],[130,128],[143,3],[92,198],[147,115],[145,199],[144,100],[146,117],[113,179],[94,128],[114,200],[119,201],[154,202],[155,203],[153,204],[149,205],[150,202]],"semanticDiagnosticsPerFile":[259,265,260,264,261,263,262,158,159,161,162,163,164,165,166,167,168,169,170,171,173,172,174,175,176,160,210,177,178,179,211,180,181,182,183,184,185,186,187,188,189,190,191,192,194,193,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,67,212,65,69,70,68,213,214,249,257,247,251,248,253,258,254,250,255,252,256,66,71,63,64,12,14,13,2,15,16,17,18,19,20,21,22,3,4,23,27,24,25,26,28,29,30,5,31,32,33,34,6,38,35,36,37,39,7,40,45,46,41,42,43,44,8,50,47,48,49,51,9,52,53,54,57,55,56,58,59,10,1,11,62,61,60,230,237,229,244,221,220,243,238,241,223,222,218,217,240,219,224,225,228,215,246,245,232,233,235,231,234,239,226,227,236,216,242,86,78,84,80,81,79,82,74,75,85,77,83,76,93,72,97,98,96,95,99,73,88,89,101,102,109,103,104,120,100,105,106,90,107,108,148,110,122,123,126,125,91,131,116,132,87,127,133,117,124,115,118,134,137,136,135,138,139,111,112,140,141,121,142,128,129,130,143,92,147,145,144,146,113,94,114,119,154,155,153,156,157,149,150,151,152],"latestChangedDtsFile":"./esm/test/utils.test.d.ts"},"version":"5.3.3"}
|
package/dist/esm/Lottie.d.ts
DELETED
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
import type { LottieProps } from './types';
|
|
2
|
-
/**
|
|
3
|
-
* @description Part of the @remotion/lottie package.
|
|
4
|
-
* @see [Documentation](https://www.remotion.dev/docs/lottie/lottie)
|
|
5
|
-
*/
|
|
6
|
-
export declare const Lottie: ({ animationData, className, direction, loop, playbackRate, style, onAnimationLoaded, renderer, preserveAspectRatio, assetsPath, }: LottieProps) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import type { LottieAnimationData } from './types';
|
|
2
|
-
type LottieMetadata = {
|
|
3
|
-
fps: number;
|
|
4
|
-
durationInSeconds: number;
|
|
5
|
-
durationInFrames: number;
|
|
6
|
-
width: number;
|
|
7
|
-
height: number;
|
|
8
|
-
};
|
|
9
|
-
/**
|
|
10
|
-
* @description Get the basic metadata such as dimensions, duration and framerate of a Lottie animation.
|
|
11
|
-
* @see [Documentation](https://www.remotion.dev/docs/lottie/getlottiemetadata)
|
|
12
|
-
*/
|
|
13
|
-
export declare const getLottieMetadata: (animationData: LottieAnimationData) => LottieMetadata | null;
|
|
14
|
-
export {};
|
package/dist/esm/index.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
package/dist/esm/types.d.ts
DELETED
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
import type { AnimationItem } from 'lottie-web';
|
|
2
|
-
import type { CSSProperties } from 'react';
|
|
3
|
-
export type LottieAnimationData = {
|
|
4
|
-
fr: number;
|
|
5
|
-
w: number;
|
|
6
|
-
h: number;
|
|
7
|
-
op: number;
|
|
8
|
-
} & Record<string | number | symbol, unknown>;
|
|
9
|
-
export type AspectRatioConstraint = 'none' | 'xMinYMin' | 'xMidYMin' | 'xMaxYMin' | 'xMinYMid' | 'xMidYMid' | 'xMaxYMid' | 'xMinYMax' | 'xMidYMax';
|
|
10
|
-
export type LottieProps = {
|
|
11
|
-
/**
|
|
12
|
-
* JSON object with the animation data.
|
|
13
|
-
* */
|
|
14
|
-
animationData: LottieAnimationData;
|
|
15
|
-
/**
|
|
16
|
-
* CSS classes to apply on the container of the animation.
|
|
17
|
-
*/
|
|
18
|
-
className?: string;
|
|
19
|
-
/**
|
|
20
|
-
* The direction of the animation. Defaults to forward.
|
|
21
|
-
*/
|
|
22
|
-
direction?: 'forward' | 'backward';
|
|
23
|
-
/**
|
|
24
|
-
* If the animation should loop after its end.
|
|
25
|
-
*/
|
|
26
|
-
loop?: boolean;
|
|
27
|
-
/**
|
|
28
|
-
* The speed of the animation. Defaults to 1.
|
|
29
|
-
*/
|
|
30
|
-
playbackRate?: number;
|
|
31
|
-
/**
|
|
32
|
-
* CSS properties to apply to the container of the animation.
|
|
33
|
-
*/
|
|
34
|
-
style?: CSSProperties;
|
|
35
|
-
/**
|
|
36
|
-
* The render engine of the Lotti files.
|
|
37
|
-
*/
|
|
38
|
-
renderer?: 'svg' | 'canvas' | 'html';
|
|
39
|
-
/**
|
|
40
|
-
* for svg and canvas renderer it simulates the behavior of the preserveAspectRatio property on svgs.
|
|
41
|
-
* https://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/preserveAspectRatio
|
|
42
|
-
*/
|
|
43
|
-
preserveAspectRatio?: AspectRatioConstraint | `${AspectRatioConstraint} ${'slice' | 'meet'}`;
|
|
44
|
-
assetsPath?: string;
|
|
45
|
-
/**
|
|
46
|
-
* Callback that gets invoked when new animation data has been initialized
|
|
47
|
-
*/
|
|
48
|
-
onAnimationLoaded?: (animation: AnimationItem) => void;
|
|
49
|
-
};
|
package/dist/esm/utils.d.ts
DELETED
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import type { LottieProps } from './types';
|
|
2
|
-
type Params = Pick<LottieProps, 'direction' | 'loop'> & {
|
|
3
|
-
currentFrame: number;
|
|
4
|
-
totalFrames: number;
|
|
5
|
-
};
|
|
6
|
-
export declare const getLottieFrame: ({ currentFrame, direction, loop, totalFrames, }: Params) => number;
|
|
7
|
-
export {};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export declare const validateLoop: (loop: unknown) => void;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export declare const validatePlaybackRate: (playbackRate: unknown) => void;
|