remotion 4.0.483 → 4.0.485
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +59 -25
- package/dist/cjs/Interactive.js +1 -0
- package/dist/cjs/get-timeline-duration.js +1 -1
- package/dist/cjs/interactivity-schema.d.ts +15 -1
- package/dist/cjs/interactivity-schema.js +9 -1
- package/dist/cjs/version.d.ts +1 -1
- package/dist/cjs/version.js +1 -1
- package/dist/cjs/with-interactivity-schema.d.ts +8 -2
- package/dist/cjs/with-interactivity-schema.js +32 -7
- package/dist/esm/index.mjs +38 -8
- package/dist/esm/version.mjs +1 -1
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -12,31 +12,21 @@
|
|
|
12
12
|
[](https://npmcharts.com/compare/remotion?minimal=true)
|
|
13
13
|
<a href="https://twitter.com/remotion"><img src="https://img.shields.io/twitter/follow/remotion?label=Twitter&color=black" alt="Twitter"></a>
|
|
14
14
|
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
##
|
|
18
|
-
|
|
19
|
-
- **
|
|
20
|
-
- **
|
|
21
|
-
- **
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
</td>
|
|
31
|
-
<td align="center">
|
|
32
|
-
<img style="width: 240px" src="https://pub-646d808d9cb240cea53bedc76dd3cd0c.r2.dev/unwrapped-2023.gif" />
|
|
33
|
-
<p>GitHub Unwrapped - Personalized Year in Review <a href="https://www.githubunwrapped.com">Try</a> • <a href="https://github.com/remotion-dev/github-unwrapped">Source</a></p>
|
|
34
|
-
</td>
|
|
35
|
-
<td align="center">
|
|
36
|
-
<em>View more in the <a href="https://remotion.dev/showcase">Remotion Showcase</a>!</em>
|
|
37
|
-
</td>
|
|
38
|
-
</tr>
|
|
39
|
-
</table>
|
|
15
|
+
Video tools for the agent era.
|
|
16
|
+
|
|
17
|
+
## Video Creation
|
|
18
|
+
|
|
19
|
+
- **Make videos agentically**: Turn your idea into a video using your coding agent.
|
|
20
|
+
- **Make videos interactively**: Edit and animate using drag and drop.
|
|
21
|
+
- **Make videos programmatically**: Connect to data, and manage complexity with code.
|
|
22
|
+
|
|
23
|
+
React Code is the source of truth. Switch your workflow at any point.
|
|
24
|
+
|
|
25
|
+
## Video Automation
|
|
26
|
+
|
|
27
|
+
- **Design systems**: Create a library of animated assets for your organization.
|
|
28
|
+
- **Batch rendering**: Render millions of videos on your own infrastructure.
|
|
29
|
+
- **Applications**: Publish a simple tool or a complex video editor.
|
|
40
30
|
|
|
41
31
|
## Get started
|
|
42
32
|
|
|
@@ -48,6 +38,50 @@ npx create-video@latest
|
|
|
48
38
|
|
|
49
39
|
to get started. Otherwise, read the [installation page](https://www.remotion.dev/docs/) in the documentation.
|
|
50
40
|
|
|
41
|
+
## Discover Remotion
|
|
42
|
+
|
|
43
|
+
Remotion is extensively documented over more than 1000 pages.
|
|
44
|
+
|
|
45
|
+
- Get Started
|
|
46
|
+
- [Installation](https://remotion.dev/docs)
|
|
47
|
+
- [Agent Skills](https://www.remotion.dev/docs/ai/skills)
|
|
48
|
+
- [Prompts](https://www.remotion.dev/prompts)
|
|
49
|
+
- [Templates](https://remotion.dev/templates)
|
|
50
|
+
- Components
|
|
51
|
+
- [Effects](https://remotion.dev/effects)
|
|
52
|
+
- [Shapes](https://remotion.dev/docs/shapes)
|
|
53
|
+
- [Transitions](https://remotion.dev/transitions)
|
|
54
|
+
- [Sound Effects](https://remotion.dev/docs/sfx)
|
|
55
|
+
- [Captions](https://remotion.dev/docs/captions)
|
|
56
|
+
- [Fonts](https://remotion.dev/docs/fonts)
|
|
57
|
+
- Rendering
|
|
58
|
+
- [Node.js APIs](https://www.remotion.dev/docs/ssr)
|
|
59
|
+
- [Lambda](https://www.remotion.dev/docs/lambda)
|
|
60
|
+
- [Vercel](https://www.remotion.dev/docs/vercel-sandbox)
|
|
61
|
+
- [Client-side rendering](https://www.remotion.dev/docs/client-side-rendering/)
|
|
62
|
+
- [Comparison of options](https://remotion.dev/docs/compare-ssr)
|
|
63
|
+
- Making apps
|
|
64
|
+
- [Player](https://remotion.dev/docs/player)
|
|
65
|
+
- [Editor Starter](https://remotion.dev/editor-starter)
|
|
66
|
+
- [Mediabunny](https://remotion.dev/docs/mediabunny)
|
|
67
|
+
- Community
|
|
68
|
+
- [Discord](https://remotion.dev/discord)
|
|
69
|
+
- [Experts](https://remotion.dev/experts)
|
|
70
|
+
- [Resources](https://remotion.dev/resources)
|
|
71
|
+
- [Contributing](https://remotion.dev/contributing)
|
|
72
|
+
- Follow us on [X](https://x.com/remotion), [YouTube](https://youtube.com/@remotion_dev), [Instagram](https://instagram.com/remotion), [LinkedIn](https://linkedin.com/company/remotion)
|
|
73
|
+
- Commercial
|
|
74
|
+
- [License](https://remotion.dev/license)
|
|
75
|
+
- [Store](https://remotion.pro/store)
|
|
76
|
+
- [About Remotion](https://remotion.dev/about)
|
|
77
|
+
- [Showcase](https://remotion.dev/showcase)
|
|
78
|
+
- Help
|
|
79
|
+
- [Support](https://remotion.dev/support)
|
|
80
|
+
- [Discord](https://remotion.dev/discord)
|
|
81
|
+
- [Search](https://remotion.dev/search)
|
|
82
|
+
- [Ask AI](https://remotion.dev/ai)
|
|
83
|
+
- [GitHub Issues](https://remotion.dev/issues)
|
|
84
|
+
|
|
51
85
|
## Documentation
|
|
52
86
|
|
|
53
87
|
Documentation: [**remotion.dev/docs**](https://www.remotion.dev/docs)
|
package/dist/cjs/Interactive.js
CHANGED
|
@@ -44,6 +44,7 @@ const interactiveElementSchema = {
|
|
|
44
44
|
...interactivity_schema_js_1.baseSchema,
|
|
45
45
|
...interactivity_schema_js_1.transformSchema,
|
|
46
46
|
...interactivity_schema_js_1.textSchema,
|
|
47
|
+
...interactivity_schema_js_1.textContentSchema,
|
|
47
48
|
};
|
|
48
49
|
const setRef = (ref, value) => {
|
|
49
50
|
if (typeof ref === 'function') {
|
|
@@ -13,7 +13,7 @@ const getTimelineDuration = ({ compositionDurationInFrames, playbackRate, trimBe
|
|
|
13
13
|
trimAfter,
|
|
14
14
|
});
|
|
15
15
|
if (parentSequenceDurationInFrames !== null) {
|
|
16
|
-
const cappedDuration = Math.min(parentSequenceDurationInFrames
|
|
16
|
+
const cappedDuration = Math.min(parentSequenceDurationInFrames, mediaDuration);
|
|
17
17
|
return Number(cappedDuration.toFixed(10));
|
|
18
18
|
}
|
|
19
19
|
return mediaDuration;
|
|
@@ -82,6 +82,12 @@ export type ColorFieldSchema = {
|
|
|
82
82
|
description?: string;
|
|
83
83
|
keyframable?: boolean;
|
|
84
84
|
};
|
|
85
|
+
export type TextContentFieldSchema = {
|
|
86
|
+
type: 'text-content';
|
|
87
|
+
default: string;
|
|
88
|
+
description?: string;
|
|
89
|
+
keyframable?: false;
|
|
90
|
+
};
|
|
85
91
|
export type EnumFieldSchema = {
|
|
86
92
|
type: 'enum';
|
|
87
93
|
default: string;
|
|
@@ -111,7 +117,7 @@ export type ArrayFieldSchema = {
|
|
|
111
117
|
description?: string;
|
|
112
118
|
keyframable?: false;
|
|
113
119
|
};
|
|
114
|
-
export type VisibleFieldSchema = NumberFieldSchema | BooleanFieldSchema | RotationCssFieldSchema | RotationDegreesFieldSchema | TranslateFieldSchema | TransformOriginFieldSchema | ScaleFieldSchema | UvCoordinateFieldSchema | ColorFieldSchema | ArrayFieldSchema | EnumFieldSchema;
|
|
120
|
+
export type VisibleFieldSchema = NumberFieldSchema | BooleanFieldSchema | RotationCssFieldSchema | RotationDegreesFieldSchema | TranslateFieldSchema | TransformOriginFieldSchema | ScaleFieldSchema | UvCoordinateFieldSchema | ColorFieldSchema | TextContentFieldSchema | ArrayFieldSchema | EnumFieldSchema;
|
|
115
121
|
export type InteractivitySchemaField = VisibleFieldSchema | HiddenFieldSchema;
|
|
116
122
|
export type InteractivitySchema = {
|
|
117
123
|
[key: string]: InteractivitySchemaField;
|
|
@@ -260,6 +266,14 @@ export declare const textSchema: {
|
|
|
260
266
|
readonly hiddenFromList: false;
|
|
261
267
|
};
|
|
262
268
|
};
|
|
269
|
+
export declare const textContentSchema: {
|
|
270
|
+
readonly children: {
|
|
271
|
+
readonly type: "text-content";
|
|
272
|
+
readonly default: "";
|
|
273
|
+
readonly description: "Text";
|
|
274
|
+
readonly keyframable: false;
|
|
275
|
+
};
|
|
276
|
+
};
|
|
263
277
|
export declare const premountSchema: {
|
|
264
278
|
readonly premountFor: {
|
|
265
279
|
readonly type: "number";
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.sequenceSchemaDefaultLayoutNone = exports.sequenceSchemaWithoutFrom = exports.baseSchemaWithoutFrom = exports.sequenceSchema = exports.baseSchema = exports.freezeField = exports.trimBeforeField = exports.fromField = exports.durationInFramesField = exports.extendSchemaWithSequenceName = exports.sequenceNameField = exports.hiddenField = exports.sequenceStyleSchema = exports.sequencePremountSchema = exports.premountSchema = exports.textSchema = exports.sequenceVisualStyleSchema = exports.transformSchema = void 0;
|
|
3
|
+
exports.sequenceSchemaDefaultLayoutNone = exports.sequenceSchemaWithoutFrom = exports.baseSchemaWithoutFrom = exports.sequenceSchema = exports.baseSchema = exports.freezeField = exports.trimBeforeField = exports.fromField = exports.durationInFramesField = exports.extendSchemaWithSequenceName = exports.sequenceNameField = exports.hiddenField = exports.sequenceStyleSchema = exports.sequencePremountSchema = exports.premountSchema = exports.textContentSchema = exports.textSchema = exports.sequenceVisualStyleSchema = exports.transformSchema = void 0;
|
|
4
4
|
exports.transformSchema = {
|
|
5
5
|
'style.transformOrigin': {
|
|
6
6
|
type: 'transform-origin',
|
|
@@ -109,6 +109,14 @@ exports.textSchema = {
|
|
|
109
109
|
hiddenFromList: false,
|
|
110
110
|
},
|
|
111
111
|
};
|
|
112
|
+
exports.textContentSchema = {
|
|
113
|
+
children: {
|
|
114
|
+
type: 'text-content',
|
|
115
|
+
default: '',
|
|
116
|
+
description: 'Text',
|
|
117
|
+
keyframable: false,
|
|
118
|
+
},
|
|
119
|
+
};
|
|
112
120
|
exports.premountSchema = {
|
|
113
121
|
premountFor: {
|
|
114
122
|
type: 'number',
|
package/dist/cjs/version.d.ts
CHANGED
package/dist/cjs/version.js
CHANGED
|
@@ -2,9 +2,15 @@ import React from 'react';
|
|
|
2
2
|
import type { SequenceControls } from './CompositionManager.js';
|
|
3
3
|
import { type InteractivitySchema } from './interactivity-schema.js';
|
|
4
4
|
export declare const getNestedValue: (obj: Record<string, unknown>, key: string) => unknown;
|
|
5
|
-
export declare const
|
|
5
|
+
export declare const getRuntimeValueForSchemaKey: ({ flatSchema, key, props, }: {
|
|
6
|
+
flatSchema: InteractivitySchema;
|
|
7
|
+
key: string;
|
|
8
|
+
props: Record<string, unknown>;
|
|
9
|
+
}) => unknown;
|
|
10
|
+
export declare const readValuesFromProps: (props: Record<string, unknown>, keys: string[], flatSchema?: InteractivitySchema | undefined) => Record<string, unknown>;
|
|
6
11
|
export declare const selectActiveKeys: (schema: InteractivitySchema, values: Record<string, unknown>) => string[];
|
|
7
|
-
export declare const mergeValues: ({ props, valuesDotNotation, schemaKeys, propsToDelete, }: {
|
|
12
|
+
export declare const mergeValues: ({ flatSchema, props, valuesDotNotation, schemaKeys, propsToDelete, }: {
|
|
13
|
+
flatSchema: InteractivitySchema;
|
|
8
14
|
props: Record<string, unknown>;
|
|
9
15
|
valuesDotNotation: Record<string, unknown>;
|
|
10
16
|
schemaKeys: string[];
|
|
@@ -33,7 +33,7 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
33
33
|
};
|
|
34
34
|
})();
|
|
35
35
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
-
exports.withInteractivitySchema = exports.mergeValues = exports.selectActiveKeys = exports.readValuesFromProps = exports.getNestedValue = void 0;
|
|
36
|
+
exports.withInteractivitySchema = exports.mergeValues = exports.selectActiveKeys = exports.readValuesFromProps = exports.getRuntimeValueForSchemaKey = exports.getNestedValue = void 0;
|
|
37
37
|
const react_1 = __importStar(require("react"));
|
|
38
38
|
const delete_nested_key_js_1 = require("./delete-nested-key.js");
|
|
39
39
|
const use_memoized_effects_js_1 = require("./effects/use-memoized-effects.js");
|
|
@@ -57,10 +57,21 @@ const getNestedValue = (obj, key) => {
|
|
|
57
57
|
return current;
|
|
58
58
|
};
|
|
59
59
|
exports.getNestedValue = getNestedValue;
|
|
60
|
-
const
|
|
60
|
+
const getRuntimeValueForSchemaKey = ({ flatSchema, key, props, }) => {
|
|
61
|
+
var _a;
|
|
62
|
+
const value = (0, exports.getNestedValue)(props, key);
|
|
63
|
+
if (((_a = flatSchema[key]) === null || _a === void 0 ? void 0 : _a.type) === 'text-content' && typeof value !== 'string') {
|
|
64
|
+
return undefined;
|
|
65
|
+
}
|
|
66
|
+
return value;
|
|
67
|
+
};
|
|
68
|
+
exports.getRuntimeValueForSchemaKey = getRuntimeValueForSchemaKey;
|
|
69
|
+
const readValuesFromProps = (props, keys, flatSchema) => {
|
|
61
70
|
const out = {};
|
|
62
71
|
for (const key of keys) {
|
|
63
|
-
out[key] =
|
|
72
|
+
out[key] = flatSchema
|
|
73
|
+
? (0, exports.getRuntimeValueForSchemaKey)({ flatSchema, key, props })
|
|
74
|
+
: (0, exports.getNestedValue)(props, key);
|
|
64
75
|
}
|
|
65
76
|
return out;
|
|
66
77
|
};
|
|
@@ -69,10 +80,14 @@ const selectActiveKeys = (schema, values) => {
|
|
|
69
80
|
return Object.keys((0, flatten_schema_js_1.flattenActiveSchema)(schema, (key) => values[key]));
|
|
70
81
|
};
|
|
71
82
|
exports.selectActiveKeys = selectActiveKeys;
|
|
72
|
-
const mergeValues = ({ props, valuesDotNotation, schemaKeys, propsToDelete, }) => {
|
|
83
|
+
const mergeValues = ({ flatSchema, props, valuesDotNotation, schemaKeys, propsToDelete, }) => {
|
|
84
|
+
var _a;
|
|
73
85
|
const merged = { ...props };
|
|
74
86
|
for (const key of schemaKeys) {
|
|
75
87
|
const value = valuesDotNotation[key];
|
|
88
|
+
if (((_a = flatSchema[key]) === null || _a === void 0 ? void 0 : _a.type) === 'text-content' && value === undefined) {
|
|
89
|
+
continue;
|
|
90
|
+
}
|
|
76
91
|
const parts = key.split('.');
|
|
77
92
|
if (parts.length === 1) {
|
|
78
93
|
merged[key] = value;
|
|
@@ -93,7 +108,12 @@ const mergeValues = ({ props, valuesDotNotation, schemaKeys, propsToDelete, }) =
|
|
|
93
108
|
}
|
|
94
109
|
current[parts[parts.length - 1]] = value;
|
|
95
110
|
}
|
|
96
|
-
(
|
|
111
|
+
const propsToDeleteWithoutTextContent = new Set([...propsToDelete].filter((key) => {
|
|
112
|
+
var _a;
|
|
113
|
+
return !(((_a = flatSchema[key]) === null || _a === void 0 ? void 0 : _a.type) === 'text-content' &&
|
|
114
|
+
valuesDotNotation[key] === undefined);
|
|
115
|
+
}));
|
|
116
|
+
(0, delete_nested_key_js_1.deleteNestedKey)(merged, propsToDeleteWithoutTextContent);
|
|
97
117
|
return merged;
|
|
98
118
|
};
|
|
99
119
|
exports.mergeValues = mergeValues;
|
|
@@ -148,9 +168,13 @@ const withInteractivitySchema = ({ Component, componentName, componentIdentity,
|
|
|
148
168
|
// memoized on the leaf values so the object reference is stable
|
|
149
169
|
// when nothing changed — otherwise downstream `useMemo`s churn and
|
|
150
170
|
// effects (e.g. Sequence registration) re-fire every render.
|
|
151
|
-
const runtimeValues = flatKeys.map((
|
|
171
|
+
const runtimeValues = flatKeys.map((key) => (0, exports.getRuntimeValueForSchemaKey)({
|
|
172
|
+
flatSchema,
|
|
173
|
+
key,
|
|
174
|
+
props: props,
|
|
175
|
+
}));
|
|
152
176
|
// eslint-disable-next-line react-hooks/rules-of-hooks
|
|
153
|
-
const currentRuntimeValueDotNotation = (0, react_1.useMemo)(() => (0, exports.readValuesFromProps)(props, flatKeys),
|
|
177
|
+
const currentRuntimeValueDotNotation = (0, react_1.useMemo)(() => (0, exports.readValuesFromProps)(props, flatKeys, flatSchema),
|
|
154
178
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
155
179
|
runtimeValues);
|
|
156
180
|
// eslint-disable-next-line react-hooks/rules-of-hooks
|
|
@@ -187,6 +211,7 @@ const withInteractivitySchema = ({ Component, componentName, componentIdentity,
|
|
|
187
211
|
const activeKeys = (0, exports.selectActiveKeys)(schemaWithSequenceName, valuesDotNotation);
|
|
188
212
|
// 5. Apply the active values back onto the props.
|
|
189
213
|
const mergedProps = (0, exports.mergeValues)({
|
|
214
|
+
flatSchema,
|
|
190
215
|
props: props,
|
|
191
216
|
valuesDotNotation,
|
|
192
217
|
schemaKeys: activeKeys,
|
package/dist/esm/index.mjs
CHANGED
|
@@ -1291,7 +1291,7 @@ var addSequenceStackTraces = (component) => {
|
|
|
1291
1291
|
};
|
|
1292
1292
|
|
|
1293
1293
|
// src/version.ts
|
|
1294
|
-
var VERSION = "4.0.
|
|
1294
|
+
var VERSION = "4.0.485";
|
|
1295
1295
|
|
|
1296
1296
|
// src/multiple-versions-warning.ts
|
|
1297
1297
|
var checkMultipleRemotionVersions = () => {
|
|
@@ -1821,6 +1821,14 @@ var textSchema = {
|
|
|
1821
1821
|
hiddenFromList: false
|
|
1822
1822
|
}
|
|
1823
1823
|
};
|
|
1824
|
+
var textContentSchema = {
|
|
1825
|
+
children: {
|
|
1826
|
+
type: "text-content",
|
|
1827
|
+
default: "",
|
|
1828
|
+
description: "Text",
|
|
1829
|
+
keyframable: false
|
|
1830
|
+
}
|
|
1831
|
+
};
|
|
1824
1832
|
var premountSchema = {
|
|
1825
1833
|
premountFor: {
|
|
1826
1834
|
type: "number",
|
|
@@ -4246,10 +4254,21 @@ var getNestedValue = (obj, key) => {
|
|
|
4246
4254
|
}
|
|
4247
4255
|
return current;
|
|
4248
4256
|
};
|
|
4249
|
-
var
|
|
4257
|
+
var getRuntimeValueForSchemaKey = ({
|
|
4258
|
+
flatSchema,
|
|
4259
|
+
key,
|
|
4260
|
+
props
|
|
4261
|
+
}) => {
|
|
4262
|
+
const value = getNestedValue(props, key);
|
|
4263
|
+
if (flatSchema[key]?.type === "text-content" && typeof value !== "string") {
|
|
4264
|
+
return;
|
|
4265
|
+
}
|
|
4266
|
+
return value;
|
|
4267
|
+
};
|
|
4268
|
+
var readValuesFromProps = (props, keys, flatSchema) => {
|
|
4250
4269
|
const out = {};
|
|
4251
4270
|
for (const key of keys) {
|
|
4252
|
-
out[key] = getNestedValue(props, key);
|
|
4271
|
+
out[key] = flatSchema ? getRuntimeValueForSchemaKey({ flatSchema, key, props }) : getNestedValue(props, key);
|
|
4253
4272
|
}
|
|
4254
4273
|
return out;
|
|
4255
4274
|
};
|
|
@@ -4257,6 +4276,7 @@ var selectActiveKeys = (schema, values) => {
|
|
|
4257
4276
|
return Object.keys(flattenActiveSchema(schema, (key) => values[key]));
|
|
4258
4277
|
};
|
|
4259
4278
|
var mergeValues = ({
|
|
4279
|
+
flatSchema,
|
|
4260
4280
|
props,
|
|
4261
4281
|
valuesDotNotation,
|
|
4262
4282
|
schemaKeys,
|
|
@@ -4265,6 +4285,9 @@ var mergeValues = ({
|
|
|
4265
4285
|
const merged = { ...props };
|
|
4266
4286
|
for (const key of schemaKeys) {
|
|
4267
4287
|
const value = valuesDotNotation[key];
|
|
4288
|
+
if (flatSchema[key]?.type === "text-content" && value === undefined) {
|
|
4289
|
+
continue;
|
|
4290
|
+
}
|
|
4268
4291
|
const parts = key.split(".");
|
|
4269
4292
|
if (parts.length === 1) {
|
|
4270
4293
|
merged[key] = value;
|
|
@@ -4282,7 +4305,8 @@ var mergeValues = ({
|
|
|
4282
4305
|
}
|
|
4283
4306
|
current[parts[parts.length - 1]] = value;
|
|
4284
4307
|
}
|
|
4285
|
-
|
|
4308
|
+
const propsToDeleteWithoutTextContent = new Set([...propsToDelete].filter((key) => !(flatSchema[key]?.type === "text-content" && valuesDotNotation[key] === undefined)));
|
|
4309
|
+
deleteNestedKey(merged, propsToDeleteWithoutTextContent);
|
|
4286
4310
|
return merged;
|
|
4287
4311
|
};
|
|
4288
4312
|
var stackToOverrideMap = {};
|
|
@@ -4329,8 +4353,12 @@ var withInteractivitySchema = ({
|
|
|
4329
4353
|
return newOverrideId;
|
|
4330
4354
|
});
|
|
4331
4355
|
const nodePath = nodePathMapping.overrideIdToNodePathMappings[overrideId] ?? null;
|
|
4332
|
-
const runtimeValues = flatKeys.map((
|
|
4333
|
-
|
|
4356
|
+
const runtimeValues = flatKeys.map((key) => getRuntimeValueForSchemaKey({
|
|
4357
|
+
flatSchema,
|
|
4358
|
+
key,
|
|
4359
|
+
props
|
|
4360
|
+
}));
|
|
4361
|
+
const currentRuntimeValueDotNotation = useMemo13(() => readValuesFromProps(props, flatKeys, flatSchema), runtimeValues);
|
|
4334
4362
|
const controls = useMemo13(() => {
|
|
4335
4363
|
return {
|
|
4336
4364
|
schema: schemaWithSequenceName,
|
|
@@ -4358,6 +4386,7 @@ var withInteractivitySchema = ({
|
|
|
4358
4386
|
]);
|
|
4359
4387
|
const activeKeys = selectActiveKeys(schemaWithSequenceName, valuesDotNotation);
|
|
4360
4388
|
const mergedProps = mergeValues({
|
|
4389
|
+
flatSchema,
|
|
4361
4390
|
props,
|
|
4362
4391
|
valuesDotNotation,
|
|
4363
4392
|
schemaKeys: activeKeys,
|
|
@@ -7130,7 +7159,7 @@ var getTimelineDuration = ({
|
|
|
7130
7159
|
trimAfter
|
|
7131
7160
|
});
|
|
7132
7161
|
if (parentSequenceDurationInFrames !== null) {
|
|
7133
|
-
const cappedDuration = Math.min(parentSequenceDurationInFrames
|
|
7162
|
+
const cappedDuration = Math.min(parentSequenceDurationInFrames, mediaDuration);
|
|
7134
7163
|
return Number(cappedDuration.toFixed(10));
|
|
7135
7164
|
}
|
|
7136
7165
|
return mediaDuration;
|
|
@@ -10084,7 +10113,8 @@ import { jsx as jsx29 } from "react/jsx-runtime";
|
|
|
10084
10113
|
var interactiveElementSchema = {
|
|
10085
10114
|
...baseSchema,
|
|
10086
10115
|
...transformSchema,
|
|
10087
|
-
...textSchema
|
|
10116
|
+
...textSchema,
|
|
10117
|
+
...textContentSchema
|
|
10088
10118
|
};
|
|
10089
10119
|
var setRef = (ref, value) => {
|
|
10090
10120
|
if (typeof ref === "function") {
|
package/dist/esm/version.mjs
CHANGED
package/package.json
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
"url": "https://github.com/remotion-dev/remotion/tree/main/packages/core"
|
|
4
4
|
},
|
|
5
5
|
"name": "remotion",
|
|
6
|
-
"version": "4.0.
|
|
6
|
+
"version": "4.0.485",
|
|
7
7
|
"description": "Make videos programmatically",
|
|
8
8
|
"main": "dist/cjs/index.js",
|
|
9
9
|
"types": "dist/cjs/index.d.ts",
|
|
@@ -35,7 +35,7 @@
|
|
|
35
35
|
"react-dom": "19.2.3",
|
|
36
36
|
"webpack": "5.105.0",
|
|
37
37
|
"zod": "4.3.6",
|
|
38
|
-
"@remotion/eslint-config-internal": "4.0.
|
|
38
|
+
"@remotion/eslint-config-internal": "4.0.485",
|
|
39
39
|
"eslint": "9.19.0",
|
|
40
40
|
"@typescript/native-preview": "7.0.0-dev.20260217.1"
|
|
41
41
|
},
|