remotion 4.0.510 → 4.0.511

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.
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.useMemoizedEffects = exports.getPropStatusesCtx = exports.getEffectPropStatusesCtx = exports.useMemoizedEffectDefinitions = void 0;
4
4
  const react_1 = require("react");
5
5
  const get_effective_visual_mode_value_js_1 = require("../get-effective-visual-mode-value.js");
6
+ const interpolate_keyframed_status_js_1 = require("../interpolate-keyframed-status.js");
6
7
  const sequence_node_path_js_1 = require("../sequence-node-path.js");
7
8
  const SequenceManager_js_1 = require("../SequenceManager.js");
8
9
  const use_current_frame_js_1 = require("../use-current-frame.js");
@@ -36,7 +37,7 @@ const mergeOverrides = ({ descriptor, propStatusOverrides, dragOverrides, frame,
36
37
  effectKey: descriptor.definition.calculateKey(merged),
37
38
  };
38
39
  };
39
- const resolvePropStatusOverrides = (propStatus) => {
40
+ const resolvePropStatusOverrides = (propStatus, frame) => {
40
41
  if (!propStatus) {
41
42
  return null;
42
43
  }
@@ -48,8 +49,17 @@ const resolvePropStatusOverrides = (propStatus) => {
48
49
  hasAny = true;
49
50
  continue;
50
51
  }
51
- // Keyframed params retain the value evaluated by their JSX expression.
52
- // Explicit drag overrides are resolved separately in mergeOverrides().
52
+ if (status.status === 'keyframed') {
53
+ const value = (0, interpolate_keyframed_status_js_1.interpolateKeyframedStatus)({
54
+ forceSpringAllowTail: null,
55
+ frame,
56
+ status,
57
+ });
58
+ if (value !== null) {
59
+ out[key] = value;
60
+ hasAny = true;
61
+ }
62
+ }
53
63
  }
54
64
  return hasAny ? out : null;
55
65
  };
@@ -121,7 +131,7 @@ const useMemoizedEffects = ({ effects, overrideId, }) => {
121
131
  effectIndex: index,
122
132
  });
123
133
  const propStatusOverrides = effectStatus.type === 'can-update-effect'
124
- ? resolvePropStatusOverrides(effectStatus.props)
134
+ ? resolvePropStatusOverrides(effectStatus.props, frame)
125
135
  : null;
126
136
  const dragOverridesMap = getEffectDragOverrides(nodePath, index);
127
137
  const dragOverrides = Object.keys(dragOverridesMap).length === 0 ? null : dragOverridesMap;
@@ -4,6 +4,7 @@ exports.computeEffectiveSchemaValuesDotNotation = exports.isKeyframedStatus = ex
4
4
  const find_props_to_delete_js_1 = require("./find-props-to-delete.js");
5
5
  const get_effective_visual_mode_value_js_1 = require("./get-effective-visual-mode-value.js");
6
6
  const input_props_serialization_js_1 = require("./input-props-serialization.js");
7
+ const interpolate_keyframed_status_js_1 = require("./interpolate-keyframed-status.js");
7
8
  exports.DEFAULT_LINEAR_EASING = {
8
9
  type: 'linear',
9
10
  };
@@ -107,9 +108,15 @@ const computeEffectiveSchemaValuesDotNotation = ({ schema, currentValue, overrid
107
108
  if (dragOverride.type === 'resolved') {
108
109
  value = dragOverride.value;
109
110
  }
111
+ else if (frame !== null) {
112
+ const interpolated = (0, interpolate_keyframed_status_js_1.interpolateKeyframedStatus)({
113
+ forceSpringAllowTail: null,
114
+ frame,
115
+ status,
116
+ });
117
+ value = interpolated !== null && interpolated !== void 0 ? interpolated : currentValue[key];
118
+ }
110
119
  else {
111
- // This value was evaluated by the original JSX expression, so it
112
- // preserves the frame scope in which useCurrentFrame() was called.
113
120
  value = currentValue[key];
114
121
  }
115
122
  }
@@ -3,4 +3,4 @@
3
3
  * @see [Documentation](https://remotion.dev/docs/version)
4
4
  * @returns {string} The current version of the remotion package
5
5
  */
6
- export declare const VERSION = "4.0.510";
6
+ export declare const VERSION = "4.0.511";
@@ -7,4 +7,4 @@ exports.VERSION = void 0;
7
7
  * @see [Documentation](https://remotion.dev/docs/version)
8
8
  * @returns {string} The current version of the remotion package
9
9
  */
10
- exports.VERSION = '4.0.510';
10
+ exports.VERSION = '4.0.511';
@@ -1340,7 +1340,7 @@ var getSingleChildComponent = (children) => {
1340
1340
  };
1341
1341
 
1342
1342
  // src/version.ts
1343
- var VERSION = "4.0.510";
1343
+ var VERSION = "4.0.511";
1344
1344
 
1345
1345
  // src/multiple-versions-warning.ts
1346
1346
  var checkMultipleRemotionVersions = () => {
@@ -4431,7 +4431,7 @@ var mergeOverrides = ({
4431
4431
  effectKey: descriptor.definition.calculateKey(merged)
4432
4432
  };
4433
4433
  };
4434
- var resolvePropStatusOverrides = (propStatus) => {
4434
+ var resolvePropStatusOverrides = (propStatus, frame) => {
4435
4435
  if (!propStatus) {
4436
4436
  return null;
4437
4437
  }
@@ -4443,6 +4443,17 @@ var resolvePropStatusOverrides = (propStatus) => {
4443
4443
  hasAny = true;
4444
4444
  continue;
4445
4445
  }
4446
+ if (status.status === "keyframed") {
4447
+ const value = interpolateKeyframedStatus({
4448
+ forceSpringAllowTail: null,
4449
+ frame,
4450
+ status
4451
+ });
4452
+ if (value !== null) {
4453
+ out[key] = value;
4454
+ hasAny = true;
4455
+ }
4456
+ }
4446
4457
  }
4447
4458
  return hasAny ? out : null;
4448
4459
  };
@@ -4512,7 +4523,7 @@ var useMemoizedEffects = ({
4512
4523
  nodePath,
4513
4524
  effectIndex: index
4514
4525
  });
4515
- const propStatusOverrides = effectStatus.type === "can-update-effect" ? resolvePropStatusOverrides(effectStatus.props) : null;
4526
+ const propStatusOverrides = effectStatus.type === "can-update-effect" ? resolvePropStatusOverrides(effectStatus.props, frame) : null;
4516
4527
  const dragOverridesMap = getEffectDragOverrides(nodePath, index);
4517
4528
  const dragOverrides = Object.keys(dragOverridesMap).length === 0 ? null : dragOverridesMap;
4518
4529
  const { params, effectKey } = mergeOverrides({
@@ -4745,6 +4756,13 @@ var computeEffectiveSchemaValuesDotNotation = ({
4745
4756
  });
4746
4757
  if (dragOverride.type === "resolved") {
4747
4758
  value = dragOverride.value;
4759
+ } else if (frame !== null) {
4760
+ const interpolated = interpolateKeyframedStatus({
4761
+ forceSpringAllowTail: null,
4762
+ frame,
4763
+ status
4764
+ });
4765
+ value = interpolated ?? currentValue[key];
4748
4766
  } else {
4749
4767
  value = currentValue[key];
4750
4768
  }
@@ -1,5 +1,5 @@
1
1
  // src/version.ts
2
- var VERSION = "4.0.510";
2
+ var VERSION = "4.0.511";
3
3
  export {
4
4
  VERSION
5
5
  };
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.510",
6
+ "version": "4.0.511",
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.4.3",
38
- "@remotion/eslint-config-internal": "4.0.510",
38
+ "@remotion/eslint-config-internal": "4.0.511",
39
39
  "eslint": "9.19.0",
40
40
  "@typescript/native-preview": "7.0.0-dev.20260217.1"
41
41
  },