remotion 4.0.535 → 4.0.536

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (63) hide show
  1. package/dist/cjs/AbsoluteFill.d.ts +1 -1
  2. package/dist/cjs/HtmlInCanvas.d.ts +4 -2
  3. package/dist/cjs/HtmlInCanvas.js +4 -4
  4. package/dist/cjs/Img.d.ts +4 -2
  5. package/dist/cjs/Img.js +2 -2
  6. package/dist/cjs/Interactive.d.ts +21 -7
  7. package/dist/cjs/Interactive.js +22 -1
  8. package/dist/cjs/Sequence.js +47 -3
  9. package/dist/cjs/SequenceActivityBoundary.js +14 -1
  10. package/dist/cjs/SequenceActivityBudget.js +26 -11
  11. package/dist/cjs/SequenceActivitySuspensionProvider.d.ts +4 -0
  12. package/dist/cjs/SequenceActivitySuspensionProvider.js +45 -0
  13. package/dist/cjs/SequenceManager.d.ts +5 -0
  14. package/dist/cjs/SequenceManager.js +22 -4
  15. package/dist/cjs/Track.js +1 -2
  16. package/dist/cjs/animated-image/AnimatedImage.d.ts +3 -2
  17. package/dist/cjs/animated-image/AnimatedImage.js +6 -4
  18. package/dist/cjs/animated-image/canvas.d.ts +2 -1
  19. package/dist/cjs/animated-image/canvas.js +2 -2
  20. package/dist/cjs/animated-image/props.d.ts +2 -1
  21. package/dist/cjs/asset-types.d.ts +4 -0
  22. package/dist/cjs/audio/shared-audio-tags.d.ts +1 -1
  23. package/dist/cjs/audio/shared-audio-tags.js +1 -1
  24. package/dist/cjs/canvas-image/CanvasImage.d.ts +3 -2
  25. package/dist/cjs/canvas-image/CanvasImage.js +4 -4
  26. package/dist/cjs/canvas-image/props.d.ts +2 -1
  27. package/dist/cjs/effects/Solid.d.ts +3 -2
  28. package/dist/cjs/effects/Solid.js +4 -4
  29. package/dist/cjs/effects/effect-types.d.ts +4 -0
  30. package/dist/cjs/effects/index.d.ts +1 -1
  31. package/dist/cjs/effects/run-effect-chain.d.ts +3 -1
  32. package/dist/cjs/effects/run-effect-chain.js +94 -56
  33. package/dist/cjs/effects/use-effect-chain-state.d.ts +2 -1
  34. package/dist/cjs/effects/use-effect-chain-state.js +11 -2
  35. package/dist/cjs/index.d.ts +1 -1
  36. package/dist/cjs/interactivity-schema.d.ts +5 -5
  37. package/dist/cjs/interactivity-schema.js +2 -1
  38. package/dist/cjs/internals.d.ts +8 -10
  39. package/dist/cjs/internals.js +0 -1
  40. package/dist/cjs/interpolate.js +8 -1
  41. package/dist/cjs/no-react.d.ts +1 -1
  42. package/dist/cjs/sequence-activity-context.d.ts +1 -1
  43. package/dist/cjs/sequence-activity-context.js +4 -3
  44. package/dist/cjs/sequence-activity-defaults.d.ts +1 -1
  45. package/dist/cjs/sequence-activity-defaults.js +1 -1
  46. package/dist/cjs/timeline-track-context.d.ts +0 -1
  47. package/dist/cjs/timeline-track-context.js +1 -2
  48. package/dist/cjs/use-schema.js +3 -1
  49. package/dist/cjs/use-timeline-seek.d.ts +1 -0
  50. package/dist/cjs/use-timeline-seek.js +10 -0
  51. package/dist/cjs/version.d.ts +1 -1
  52. package/dist/cjs/version.js +1 -1
  53. package/dist/cjs/video/seek-until-right.js +11 -7
  54. package/dist/cjs/wrap-remotion-context.d.ts +0 -1
  55. package/dist/cjs/wrap-remotion-context.js +1 -4
  56. package/dist/esm/index.mjs +704 -557
  57. package/dist/esm/no-react.mjs +4 -3
  58. package/dist/esm/version.mjs +1 -1
  59. package/package.json +2 -2
  60. package/dist/cjs/nonce.d.ts +0 -11
  61. package/dist/cjs/nonce.js +0 -42
  62. package/dist/cjs/sequence-order-marker.d.ts +0 -58
  63. package/dist/cjs/sequence-order-marker.js +0 -44
@@ -364,7 +364,7 @@ export declare const Internals: {
364
364
  };
365
365
  readonly premountFor: {
366
366
  readonly type: "number";
367
- readonly default: 0;
367
+ readonly default: undefined;
368
368
  readonly description: "Premount For";
369
369
  readonly min: 0;
370
370
  readonly step: 1;
@@ -455,9 +455,8 @@ export declare const Internals: {
455
455
  readonly SequenceContent: import("react").FC<{
456
456
  readonly children: import("react").ReactNode;
457
457
  }>;
458
- readonly DEFAULT_SEQUENCE_ACTIVITY_LIMIT: 20;
458
+ readonly DEFAULT_SEQUENCE_ACTIVITY_LIMIT: number;
459
459
  readonly SequenceActivitySettingsContext: import("react").Context<{
460
- readonly enabled: boolean;
461
460
  readonly limit: number;
462
461
  } | null>;
463
462
  readonly SequenceWithoutSchema: import("react").ForwardRefExoticComponent<import("./Sequence.js").SequenceProps & import("react").RefAttributes<HTMLDivElement>>;
@@ -575,7 +574,7 @@ export declare const Internals: {
575
574
  };
576
575
  readonly premountFor: {
577
576
  readonly type: "number";
578
- readonly default: 0;
577
+ readonly default: undefined;
579
578
  readonly description: "Premount For";
580
579
  readonly min: 0;
581
580
  readonly step: 1;
@@ -671,7 +670,7 @@ export declare const Internals: {
671
670
  readonly sequencePremountSchema: {
672
671
  readonly premountFor: {
673
672
  readonly type: "number";
674
- readonly default: 0;
673
+ readonly default: undefined;
675
674
  readonly description: "Premount For";
676
675
  readonly min: 0;
677
676
  readonly step: 1;
@@ -833,7 +832,7 @@ export declare const Internals: {
833
832
  readonly premountSchema: {
834
833
  readonly premountFor: {
835
834
  readonly type: "number";
836
- readonly default: 0;
835
+ readonly default: undefined;
837
836
  readonly description: "Premount For";
838
837
  readonly min: 0;
839
838
  readonly step: 1;
@@ -909,7 +908,6 @@ export declare const Internals: {
909
908
  readonly truthy: typeof truthy;
910
909
  readonly SequenceContext: import("react").Context<import("./SequenceContext.js").SequenceContextType | null>;
911
910
  readonly TimelineTrackContext: import("react").Context<import("./timeline-track-context.js").TimelineTrack | null>;
912
- readonly ExperimentalTracksEnabledContext: import("react").Context<boolean>;
913
911
  readonly TrackWithoutSchema: import("react").FC<import("./Track.js").TrackWithoutSchemaProps>;
914
912
  readonly PremountContext: import("react").Context<import("./PremountContext.js").PremountContextValue>;
915
913
  readonly usePremounting: ({ from, durationInFrames, premountFor, postmountFor, style, styleWhilePremounted, styleWhilePostmounted, hideWhilePremounted, }: {
@@ -956,7 +954,7 @@ export declare const Internals: {
956
954
  resumeAsAutoPlay: () => Promise<void>;
957
955
  suspend: () => Promise<void>;
958
956
  getIsResumingAudioContext: () => Promise<import("./audio/wait-until-actually-resumed.js").AudioContextResumeResult> | null;
959
- unscheduleAudioNode: (node: AudioBufferSourceNode) => void;
957
+ unscheduleAudioNode: (node: AudioBufferSourceNode) => boolean;
960
958
  _experimentalKeepAudioContextAlive: boolean;
961
959
  } | null>;
962
960
  readonly SharedAudioContextProvider: import("react").FC<{
@@ -1316,12 +1314,12 @@ export declare const Internals: {
1316
1314
  shouldResortToDefaultValueIfUndefined: boolean;
1317
1315
  }) => unknown;
1318
1316
  readonly CompositionRenderErrorContext: import("react").Context<import("./composition-render-error-context.js").CompositionRenderErrorContextType>;
1319
- readonly useEffectChainState: () => {
1317
+ readonly useEffectChainState: (effectsOutputSize?: import("./index.js").EffectsOutputSize | null) => {
1320
1318
  get: (width: number, height: number) => import("./internals.js").EffectChainState | null;
1321
1319
  };
1322
1320
  readonly createEffectChainState: (width: number, height: number) => import("./internals.js").EffectChainState;
1323
1321
  readonly cleanupEffectChainState: (state: import("./internals.js").EffectChainState) => void;
1324
- readonly runEffectChain: ({ state, source, effects, output, width, height, }: import("./effects/run-effect-chain.js").RunEffectChainOptions) => Promise<boolean>;
1322
+ readonly runEffectChain: (options: import("./effects/run-effect-chain.js").RunEffectChainOptions) => Promise<boolean>;
1325
1323
  readonly useMemoizedEffects: ({ effects, overrideId, videoConfigValues, }: {
1326
1324
  effects: readonly import("./index.js").EffectDescriptor<unknown>[];
1327
1325
  readonly overrideId: string | null;
@@ -228,7 +228,6 @@ exports.Internals = {
228
228
  truthy: truthy_js_1.truthy,
229
229
  SequenceContext: SequenceContext_js_1.SequenceContext,
230
230
  TimelineTrackContext: timeline_track_context_js_1.TimelineTrackContext,
231
- ExperimentalTracksEnabledContext: timeline_track_context_js_1.ExperimentalTracksEnabledContext,
232
231
  TrackWithoutSchema: Track_js_1.TrackWithoutSchema,
233
232
  PremountContext: PremountContext_js_1.PremountContext,
234
233
  usePremounting: use_premounting_js_1.usePremounting,
@@ -288,7 +288,14 @@ const parseStringInterpolationValue = (output, outputType) => {
288
288
  }
289
289
  const parts = output.trim().split(/\s+/);
290
290
  if (parts.length < 1 || parts.length > 3 || parts[0] === '') {
291
- throw new TypeError(`String outputRange values must contain 1 to 3 components, but got "${output}"`);
291
+ // Long text values (for example custom cursor CSS) may use hold easing.
292
+ // Malformed numeric transforms must still fail instead of becoming text.
293
+ const ErrorType = outputType === undefined &&
294
+ parts.some((part) => !cssNumberRegex.test(part) &&
295
+ !transformOriginKeywords.has(part.toLowerCase()))
296
+ ? UnsupportedStringInterpolationValueError
297
+ : TypeError;
298
+ throw new ErrorType(`String outputRange values must contain 1 to 3 components, but got "${output}"`);
292
299
  }
293
300
  if (parts.some((part) => transformOriginKeywords.has(part.toLowerCase()))) {
294
301
  if (outputType !== undefined) {
@@ -226,7 +226,7 @@ export declare const NoReactInternals: {
226
226
  };
227
227
  readonly premountFor: {
228
228
  readonly type: "number";
229
- readonly default: 0;
229
+ readonly default: undefined;
230
230
  readonly description: "Premount For";
231
231
  readonly min: 0;
232
232
  readonly step: 1;
@@ -2,8 +2,8 @@ import type { TimelineContextValue } from './TimelineContext.js';
2
2
  export { DEFAULT_SEQUENCE_ACTIVITY_LIMIT } from './sequence-activity-defaults.js';
3
3
  export declare const SequenceActivityContext: import("react").Context<boolean>;
4
4
  export declare const SequenceActivityDormantContext: import("react").Context<boolean>;
5
+ export declare const SequenceActivitySuspensionContext: import("react").Context<boolean>;
5
6
  export declare const SequenceActivitySettingsContext: import("react").Context<{
6
- readonly enabled: boolean;
7
7
  readonly limit: number;
8
8
  } | null>;
9
9
  export declare const SequenceActivityTimelineContext: import("react").Context<TimelineContextValue | null>;
@@ -1,13 +1,14 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.SequenceContent = exports.SequenceActivityAbsoluteTimeContext = exports.SequenceActivityTimelineContext = exports.SequenceActivitySettingsContext = exports.SequenceActivityDormantContext = exports.SequenceActivityContext = exports.DEFAULT_SEQUENCE_ACTIVITY_LIMIT = void 0;
3
+ exports.SequenceContent = exports.SequenceActivityAbsoluteTimeContext = exports.SequenceActivityTimelineContext = exports.SequenceActivitySettingsContext = exports.SequenceActivitySuspensionContext = exports.SequenceActivityDormantContext = exports.SequenceActivityContext = exports.DEFAULT_SEQUENCE_ACTIVITY_LIMIT = void 0;
4
4
  const react_1 = require("react");
5
5
  const sequence_activity_defaults_js_1 = require("./sequence-activity-defaults.js");
6
6
  Object.defineProperty(exports, "DEFAULT_SEQUENCE_ACTIVITY_LIMIT", { enumerable: true, get: function () { return sequence_activity_defaults_js_1.DEFAULT_SEQUENCE_ACTIVITY_LIMIT; } });
7
- // Internal Studio experiment. Hidden Activity trees register on commit, so the
8
- // experiment is disabled when the sequence manager falls back to effects.
7
+ // Hidden Activity trees register on commit, so Sequence Activity is disabled
8
+ // when the sequence manager falls back to effects.
9
9
  exports.SequenceActivityContext = (0, react_1.createContext)(false);
10
10
  exports.SequenceActivityDormantContext = (0, react_1.createContext)(false);
11
+ exports.SequenceActivitySuspensionContext = (0, react_1.createContext)(false);
11
12
  exports.SequenceActivitySettingsContext = (0, react_1.createContext)(null);
12
13
  // React propagates changed ancestor contexts through hidden Activity trees,
13
14
  // even when a nested provider keeps their value stable. Use separate context
@@ -1 +1 @@
1
- export declare const DEFAULT_SEQUENCE_ACTIVITY_LIMIT = 20;
1
+ export declare const DEFAULT_SEQUENCE_ACTIVITY_LIMIT: number;
@@ -1,4 +1,4 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.DEFAULT_SEQUENCE_ACTIVITY_LIMIT = void 0;
4
- exports.DEFAULT_SEQUENCE_ACTIVITY_LIMIT = 20;
4
+ exports.DEFAULT_SEQUENCE_ACTIVITY_LIMIT = Infinity;
@@ -7,4 +7,3 @@ export type TimelineTrackItem = TimelineTrack & {
7
7
  readonly seriesOffset: number | null;
8
8
  };
9
9
  export declare const TimelineTrackContext: import("react").Context<TimelineTrack | null>;
10
- export declare const ExperimentalTracksEnabledContext: import("react").Context<boolean>;
@@ -1,6 +1,5 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ExperimentalTracksEnabledContext = exports.TimelineTrackContext = void 0;
3
+ exports.TimelineTrackContext = void 0;
4
4
  const react_1 = require("react");
5
5
  exports.TimelineTrackContext = (0, react_1.createContext)(null);
6
- exports.ExperimentalTracksEnabledContext = (0, react_1.createContext)(false);
@@ -106,7 +106,9 @@ const computeEffectiveSchemaValuesDotNotation = ({ schema, currentValue, overrid
106
106
  : currentValue[key];
107
107
  }
108
108
  else if ((0, exports.isKeyframedStatus)(status)) {
109
- if ((field === null || field === void 0 ? void 0 : field.type) === 'array' || (field === null || field === void 0 ? void 0 : field.keyframable) === false) {
109
+ // keyframable controls authoring new keyframes in Studio. Existing
110
+ // keyframes still need to follow the preview clock and drag overrides.
111
+ if ((field === null || field === void 0 ? void 0 : field.type) === 'array') {
110
112
  value = currentValue[key];
111
113
  }
112
114
  else {
@@ -2,5 +2,6 @@ import type { RefObject, SetStateAction } from 'react';
2
2
  export type TimelineSeek = {
3
3
  readonly revision: RefObject<number>;
4
4
  readonly seekFrame: (frame: SetStateAction<Record<string, number>>) => void;
5
+ readonly subscribe: (listener: () => void) => () => void;
5
6
  };
6
7
  export declare const useTimelineSeek: (setFrame: (frame: SetStateAction<Record<string, number>>) => void) => TimelineSeek;
@@ -6,13 +6,23 @@ const react_1 = require("react");
6
6
  // outside the React updater: updaters may be deferred or run more than once.
7
7
  const useTimelineSeek = (setFrame) => {
8
8
  const revision = (0, react_1.useRef)(0);
9
+ const listeners = (0, react_1.useRef)(new Set());
9
10
  return (0, react_1.useMemo)(() => ({
10
11
  revision,
11
12
  seekFrame: (frame) => {
12
13
  // Even a same-frame seek is a boundary for the next media update.
13
14
  revision.current++;
15
+ for (const listener of listeners.current) {
16
+ listener();
17
+ }
14
18
  setFrame(frame);
15
19
  },
20
+ subscribe: (listener) => {
21
+ listeners.current.add(listener);
22
+ return () => {
23
+ listeners.current.delete(listener);
24
+ };
25
+ },
16
26
  }), [setFrame]);
17
27
  };
18
28
  exports.useTimelineSeek = useTimelineSeek;
@@ -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.535";
6
+ export declare const VERSION = "4.0.536";
@@ -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.535';
10
+ exports.VERSION = '4.0.536';
@@ -13,13 +13,6 @@ const seekToTime = ({ element, desiredTime, logLevel, mountTime, }) => {
13
13
  cancel: () => { },
14
14
  };
15
15
  }
16
- (0, seek_1.seek)({
17
- logLevel,
18
- mediaRef: element,
19
- time: desiredTime,
20
- why: 'Seeking during rendering',
21
- mountTime,
22
- });
23
16
  let cancel;
24
17
  let cancelSeeked = null;
25
18
  const prom = new Promise((resolve) => {
@@ -45,6 +38,17 @@ const seekToTime = ({ element, desiredTime, logLevel, mountTime, }) => {
45
38
  element.removeEventListener('seeked', onDone);
46
39
  };
47
40
  });
41
+ // Register both listeners before seeking. The compositor can present the
42
+ // frame while the main thread is still setting currentTime. Registering a
43
+ // video frame callback afterwards would wait for another frame, which a
44
+ // paused video will never produce.
45
+ (0, seek_1.seek)({
46
+ logLevel,
47
+ mediaRef: element,
48
+ time: desiredTime,
49
+ why: 'Seeking during rendering',
50
+ mountTime,
51
+ });
48
52
  return {
49
53
  wait: Promise.all([prom, waitForSeekedEvent]).then(([time]) => time),
50
54
  cancel: () => {
@@ -9,7 +9,6 @@ export declare function useRemotionContexts(): {
9
9
  setTimelineContext: import("./TimelineContext.js").SetTimelineContextValue;
10
10
  sequenceContext: import("./SequenceContext.js").SequenceContextType | null;
11
11
  defaultPremountInSeconds: number;
12
- experimentalTracksEnabled: boolean;
13
12
  timelineTrackContext: import("./timeline-track-context.js").TimelineTrack | null;
14
13
  canUseRemotionHooksContext: boolean;
15
14
  preloadContext: {
@@ -62,7 +62,6 @@ function useRemotionContexts() {
62
62
  const setTimelineContext = react_1.default.useContext(TimelineContext_js_1.SetTimelineContext);
63
63
  const sequenceContext = react_1.default.useContext(SequenceContext_js_1.SequenceContext);
64
64
  const defaultPremountInSeconds = react_1.default.useContext(DefaultPremountContext_js_1.DefaultPremountContext);
65
- const experimentalTracksEnabled = react_1.default.useContext(timeline_track_context_js_1.ExperimentalTracksEnabledContext);
66
65
  const timelineTrackContext = react_1.default.useContext(timeline_track_context_js_1.TimelineTrackContext);
67
66
  const canUseRemotionHooksContext = react_1.default.useContext(CanUseRemotionHooks_js_1.CanUseRemotionHooks);
68
67
  const preloadContext = react_1.default.useContext(prefetch_state_js_1.PreloadContext);
@@ -85,7 +84,6 @@ function useRemotionContexts() {
85
84
  setTimelineContext,
86
85
  sequenceContext,
87
86
  defaultPremountInSeconds,
88
- experimentalTracksEnabled,
89
87
  timelineTrackContext,
90
88
  canUseRemotionHooksContext,
91
89
  preloadContext,
@@ -106,7 +104,6 @@ function useRemotionContexts() {
106
104
  videoContext,
107
105
  sequenceContext,
108
106
  defaultPremountInSeconds,
109
- experimentalTracksEnabled,
110
107
  timelineTrackContext,
111
108
  setTimelineContext,
112
109
  timelineContext,
@@ -200,6 +197,6 @@ const ForwardedSequenceRegistry = ({ contexts, children, }) => {
200
197
  };
201
198
  const RemotionContextProvider = (props) => {
202
199
  const { children, contexts } = props;
203
- return (jsx_runtime_1.jsx(log_level_context_js_1.LogLevelContext.Provider, { value: contexts.logLevelContext, children: jsx_runtime_1.jsx(CanUseRemotionHooks_js_1.CanUseRemotionHooks.Provider, { value: contexts.canUseRemotionHooksContext, children: jsx_runtime_1.jsx(prefetch_state_js_1.PreloadContext.Provider, { value: contexts.preloadContext, children: jsx_runtime_1.jsx(CompositionManagerContext_js_1.CompositionManager.Provider, { value: contexts.compositionManagerCtx, children: jsx_runtime_1.jsx(SequenceManager_js_1.SequenceManagerRefContext.Provider, { value: contexts.sequenceManagerRefContext, children: jsx_runtime_1.jsx(remotion_environment_context_js_1.RemotionEnvironmentContext.Provider, { value: contexts.remotionEnvironmentContext, children: jsx_runtime_1.jsx(SequenceManager_js_1.SequenceRegistrationContext.Provider, { value: contexts.sequenceRegistrationContext, children: jsx_runtime_1.jsx(SequenceManager_js_1.DisableSequenceRegistrationContext.Provider, { value: contexts.disableSequenceRegistrationContext, children: jsx_runtime_1.jsx(ForwardedSequenceRegistry, { contexts: contexts, children: jsx_runtime_1.jsx(SequenceManager_js_1.VisualModePropStatusesRefContext.Provider, { value: contexts.visualModePropStatusesRefContext, children: jsx_runtime_1.jsx(RenderAssetManager_js_1.RenderAssetManager.Provider, { value: contexts.renderAssetManagerContext, children: jsx_runtime_1.jsx(ResolveCompositionConfig_js_1.ResolveCompositionContext.Provider, { value: contexts.resolveCompositionContext, children: jsx_runtime_1.jsx(TimelineContext_js_1.TimelineContext.Provider, { value: contexts.timelineContext, children: jsx_runtime_1.jsx(TimelineContext_js_1.SetTimelineContext.Provider, { value: contexts.setTimelineContext, children: jsx_runtime_1.jsx(SequenceContext_js_1.SequenceContext.Provider, { value: contexts.sequenceContext, children: jsx_runtime_1.jsx(buffering_js_1.BufferingContextReact.Provider, { value: contexts.bufferManagerContext, children: jsx_runtime_1.jsx(timeline_track_context_js_1.ExperimentalTracksEnabledContext.Provider, { value: contexts.experimentalTracksEnabled, children: jsx_runtime_1.jsx(timeline_track_context_js_1.TimelineTrackContext.Provider, { value: contexts.timelineTrackContext, children: jsx_runtime_1.jsx(DefaultPremountContext_js_1.DefaultPremountContext.Provider, { value: contexts.defaultPremountInSeconds, children: jsx_runtime_1.jsx(use_video_js_1.VideoContext.Provider, { value: contexts.videoContext, children: children }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }));
200
+ return (jsx_runtime_1.jsx(log_level_context_js_1.LogLevelContext.Provider, { value: contexts.logLevelContext, children: jsx_runtime_1.jsx(CanUseRemotionHooks_js_1.CanUseRemotionHooks.Provider, { value: contexts.canUseRemotionHooksContext, children: jsx_runtime_1.jsx(prefetch_state_js_1.PreloadContext.Provider, { value: contexts.preloadContext, children: jsx_runtime_1.jsx(CompositionManagerContext_js_1.CompositionManager.Provider, { value: contexts.compositionManagerCtx, children: jsx_runtime_1.jsx(SequenceManager_js_1.SequenceManagerRefContext.Provider, { value: contexts.sequenceManagerRefContext, children: jsx_runtime_1.jsx(remotion_environment_context_js_1.RemotionEnvironmentContext.Provider, { value: contexts.remotionEnvironmentContext, children: jsx_runtime_1.jsx(SequenceManager_js_1.SequenceRegistrationContext.Provider, { value: contexts.sequenceRegistrationContext, children: jsx_runtime_1.jsx(SequenceManager_js_1.DisableSequenceRegistrationContext.Provider, { value: contexts.disableSequenceRegistrationContext, children: jsx_runtime_1.jsx(ForwardedSequenceRegistry, { contexts: contexts, children: jsx_runtime_1.jsx(SequenceManager_js_1.VisualModePropStatusesRefContext.Provider, { value: contexts.visualModePropStatusesRefContext, children: jsx_runtime_1.jsx(RenderAssetManager_js_1.RenderAssetManager.Provider, { value: contexts.renderAssetManagerContext, children: jsx_runtime_1.jsx(ResolveCompositionConfig_js_1.ResolveCompositionContext.Provider, { value: contexts.resolveCompositionContext, children: jsx_runtime_1.jsx(TimelineContext_js_1.TimelineContext.Provider, { value: contexts.timelineContext, children: jsx_runtime_1.jsx(TimelineContext_js_1.SetTimelineContext.Provider, { value: contexts.setTimelineContext, children: jsx_runtime_1.jsx(SequenceContext_js_1.SequenceContext.Provider, { value: contexts.sequenceContext, children: jsx_runtime_1.jsx(buffering_js_1.BufferingContextReact.Provider, { value: contexts.bufferManagerContext, children: jsx_runtime_1.jsx(timeline_track_context_js_1.TimelineTrackContext.Provider, { value: contexts.timelineTrackContext, children: jsx_runtime_1.jsx(DefaultPremountContext_js_1.DefaultPremountContext.Provider, { value: contexts.defaultPremountInSeconds, children: jsx_runtime_1.jsx(use_video_js_1.VideoContext.Provider, { value: contexts.videoContext, children: children }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }));
204
201
  };
205
202
  exports.RemotionContextProvider = RemotionContextProvider;