remotion 4.0.373 → 4.0.375
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/dist/cjs/RemotionRoot.js +1 -2
- package/dist/cjs/ResolveCompositionConfig.d.ts +1 -1
- package/dist/cjs/ResolveCompositionConfig.js +12 -4
- package/dist/cjs/cancel-render.d.ts +7 -0
- package/dist/cjs/cancel-render.js +16 -5
- package/dist/cjs/config/input-props.js +4 -0
- package/dist/cjs/delay-render.d.ts +14 -2
- package/dist/cjs/delay-render.js +20 -9
- package/dist/cjs/internals.d.ts +1 -1
- package/dist/cjs/internals.js +1 -1
- package/dist/cjs/use-delay-render.d.ts +2 -0
- package/dist/cjs/use-delay-render.js +20 -4
- package/dist/cjs/version.d.ts +1 -1
- package/dist/cjs/version.js +1 -1
- package/dist/esm/index.mjs +128 -85
- package/dist/esm/version.mjs +1 -1
- package/package.json +2 -2
package/dist/cjs/RemotionRoot.js
CHANGED
|
@@ -5,7 +5,6 @@ const jsx_runtime_1 = require("react/jsx-runtime");
|
|
|
5
5
|
const react_1 = require("react");
|
|
6
6
|
const EditorProps_js_1 = require("./EditorProps.js");
|
|
7
7
|
const RenderAssetManager_js_1 = require("./RenderAssetManager.js");
|
|
8
|
-
const ResolveCompositionConfig_js_1 = require("./ResolveCompositionConfig.js");
|
|
9
8
|
const SequenceManager_js_1 = require("./SequenceManager.js");
|
|
10
9
|
const TimelineContext_js_1 = require("./TimelineContext.js");
|
|
11
10
|
const shared_audio_tags_js_1 = require("./audio/shared-audio-tags.js");
|
|
@@ -47,6 +46,6 @@ const RemotionRoot = ({ children, numberOfAudioTags, logLevel, audioLatencyHint,
|
|
|
47
46
|
const logging = (0, react_1.useMemo)(() => {
|
|
48
47
|
return { logLevel, mountTime: Date.now() };
|
|
49
48
|
}, [logLevel]);
|
|
50
|
-
return ((0, jsx_runtime_1.jsx)(log_level_context_js_1.LogLevelContext.Provider, { value: logging, children: (0, jsx_runtime_1.jsx)(nonce_js_1.NonceContext.Provider, { value: nonceContext, children: (0, jsx_runtime_1.jsx)(nonce_js_1.SetNonceContext.Provider, { value: setNonceContext, children: (0, jsx_runtime_1.jsx)(TimelineContext_js_1.TimelineContextProvider, { frameState: frameState, children: (0, jsx_runtime_1.jsx)(use_media_enabled_js_1.MediaEnabledProvider, { videoEnabled: videoEnabled, audioEnabled: audioEnabled, children: (0, jsx_runtime_1.jsx)(EditorProps_js_1.EditorPropsProvider, { children: (0, jsx_runtime_1.jsx)(prefetch_state_js_1.PrefetchProvider, { children: (0, jsx_runtime_1.jsx)(SequenceManager_js_1.SequenceManagerProvider, { children: (0, jsx_runtime_1.jsx)(RenderAssetManager_js_1.RenderAssetManagerProvider, { children: (0, jsx_runtime_1.jsx)(
|
|
49
|
+
return ((0, jsx_runtime_1.jsx)(log_level_context_js_1.LogLevelContext.Provider, { value: logging, children: (0, jsx_runtime_1.jsx)(nonce_js_1.NonceContext.Provider, { value: nonceContext, children: (0, jsx_runtime_1.jsx)(nonce_js_1.SetNonceContext.Provider, { value: setNonceContext, children: (0, jsx_runtime_1.jsx)(TimelineContext_js_1.TimelineContextProvider, { frameState: frameState, children: (0, jsx_runtime_1.jsx)(use_media_enabled_js_1.MediaEnabledProvider, { videoEnabled: videoEnabled, audioEnabled: audioEnabled, children: (0, jsx_runtime_1.jsx)(EditorProps_js_1.EditorPropsProvider, { children: (0, jsx_runtime_1.jsx)(prefetch_state_js_1.PrefetchProvider, { children: (0, jsx_runtime_1.jsx)(SequenceManager_js_1.SequenceManagerProvider, { children: (0, jsx_runtime_1.jsx)(RenderAssetManager_js_1.RenderAssetManagerProvider, { children: (0, jsx_runtime_1.jsx)(shared_audio_tags_js_1.SharedAudioContextProvider, { numberOfAudioTags: numberOfAudioTags, audioLatencyHint: audioLatencyHint, children: (0, jsx_runtime_1.jsx)(duration_state_js_1.DurationsContextProvider, { children: (0, jsx_runtime_1.jsx)(buffering_js_1.BufferingProvider, { children: children }) }) }) }) }) }) }) }) }) }) }) }));
|
|
51
50
|
};
|
|
52
51
|
exports.RemotionRoot = RemotionRoot;
|
|
@@ -21,7 +21,7 @@ type VideoConfigState = {
|
|
|
21
21
|
};
|
|
22
22
|
export declare const needsResolution: (composition: AnyComposition) => boolean;
|
|
23
23
|
export declare const PROPS_UPDATED_EXTERNALLY = "remotion.propsUpdatedExternally";
|
|
24
|
-
export declare const
|
|
24
|
+
export declare const ResolveCompositionConfigInStudio: React.FC<PropsWithChildren<{
|
|
25
25
|
children: React.ReactNode;
|
|
26
26
|
}>>;
|
|
27
27
|
export declare const useResolvedVideoConfig: (preferredCompositionId: string | null) => VideoConfigState | null;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.useResolvedVideoConfig = exports.
|
|
3
|
+
exports.useResolvedVideoConfig = exports.ResolveCompositionConfigInStudio = exports.PROPS_UPDATED_EXTERNALLY = exports.needsResolution = exports.resolveCompositionsRef = exports.ResolveCompositionContext = void 0;
|
|
4
4
|
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
5
|
const react_1 = require("react");
|
|
6
6
|
const CompositionManagerContext_js_1 = require("./CompositionManagerContext.js");
|
|
@@ -19,7 +19,7 @@ const needsResolution = (composition) => {
|
|
|
19
19
|
};
|
|
20
20
|
exports.needsResolution = needsResolution;
|
|
21
21
|
exports.PROPS_UPDATED_EXTERNALLY = 'remotion.propsUpdatedExternally';
|
|
22
|
-
const
|
|
22
|
+
const ResolveCompositionConfigInStudio = ({ children }) => {
|
|
23
23
|
const [currentRenderModalComposition, setCurrentRenderModalComposition] = (0, react_1.useState)(null);
|
|
24
24
|
const { compositions, canvasContent, currentCompositionMetadata } = (0, react_1.useContext)(CompositionManagerContext_js_1.CompositionManager);
|
|
25
25
|
const { fastRefreshes, manualRefreshes } = (0, react_1.useContext)(nonce_js_1.NonceContext);
|
|
@@ -286,7 +286,7 @@ const ResolveCompositionConfig = ({ children }) => {
|
|
|
286
286
|
}, [compositions, resolvedConfigs]);
|
|
287
287
|
return ((0, jsx_runtime_1.jsx)(exports.ResolveCompositionContext.Provider, { value: resolvedConfigsIncludingStaticOnes, children: children }));
|
|
288
288
|
};
|
|
289
|
-
exports.
|
|
289
|
+
exports.ResolveCompositionConfigInStudio = ResolveCompositionConfigInStudio;
|
|
290
290
|
const useResolvedVideoConfig = (preferredCompositionId) => {
|
|
291
291
|
const context = (0, react_1.useContext)(exports.ResolveCompositionContext);
|
|
292
292
|
const { props: allEditorProps } = (0, react_1.useContext)(EditorProps_js_1.EditorPropsContext);
|
|
@@ -334,7 +334,11 @@ const useResolvedVideoConfig = (preferredCompositionId) => {
|
|
|
334
334
|
props: {
|
|
335
335
|
...((_c = composition.defaultProps) !== null && _c !== void 0 ? _c : {}),
|
|
336
336
|
...(selectedEditorProps !== null && selectedEditorProps !== void 0 ? selectedEditorProps : {}),
|
|
337
|
-
...(typeof window === 'undefined' ||
|
|
337
|
+
...(typeof window === 'undefined' ||
|
|
338
|
+
env.isPlayer ||
|
|
339
|
+
// In tests, we don't set window.remotion_inputProps,
|
|
340
|
+
// otherwise it should be available here
|
|
341
|
+
!window.remotion_inputProps
|
|
338
342
|
? {}
|
|
339
343
|
: ((_d = (0, input_props_js_1.getInputProps)()) !== null && _d !== void 0 ? _d : {})),
|
|
340
344
|
},
|
|
@@ -346,6 +350,10 @@ const useResolvedVideoConfig = (preferredCompositionId) => {
|
|
|
346
350
|
},
|
|
347
351
|
};
|
|
348
352
|
}
|
|
353
|
+
// Could be the case in selectComposition()
|
|
354
|
+
if (!context) {
|
|
355
|
+
return null;
|
|
356
|
+
}
|
|
349
357
|
if (!context[composition.id]) {
|
|
350
358
|
return null;
|
|
351
359
|
}
|
|
@@ -1 +1,8 @@
|
|
|
1
|
+
import type { DelayRenderScope } from './delay-render.js';
|
|
2
|
+
/**
|
|
3
|
+
* Internal function that accepts scope as parameter.
|
|
4
|
+
* This allows useDelayRender to control its own scope source.
|
|
5
|
+
* @private
|
|
6
|
+
*/
|
|
7
|
+
export declare function cancelRenderInternal(scope: DelayRenderScope | undefined, err: unknown): never;
|
|
1
8
|
export declare function cancelRender(err: unknown): never;
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.cancelRenderInternal = cancelRenderInternal;
|
|
3
4
|
exports.cancelRender = cancelRender;
|
|
4
5
|
const isErrorLike = (err) => {
|
|
5
6
|
if (err instanceof Error) {
|
|
@@ -29,11 +30,12 @@ const isErrorLike = (err) => {
|
|
|
29
30
|
}
|
|
30
31
|
return true;
|
|
31
32
|
};
|
|
32
|
-
|
|
33
|
-
*
|
|
34
|
-
*
|
|
33
|
+
/**
|
|
34
|
+
* Internal function that accepts scope as parameter.
|
|
35
|
+
* This allows useDelayRender to control its own scope source.
|
|
36
|
+
* @private
|
|
35
37
|
*/
|
|
36
|
-
function
|
|
38
|
+
function cancelRenderInternal(scope, err) {
|
|
37
39
|
let error;
|
|
38
40
|
if (isErrorLike(err)) {
|
|
39
41
|
error = err;
|
|
@@ -47,6 +49,15 @@ function cancelRender(err) {
|
|
|
47
49
|
else {
|
|
48
50
|
error = Error('Rendering was cancelled');
|
|
49
51
|
}
|
|
50
|
-
|
|
52
|
+
if (scope) {
|
|
53
|
+
scope.remotion_cancelledError = error.stack;
|
|
54
|
+
}
|
|
51
55
|
throw error;
|
|
52
56
|
}
|
|
57
|
+
/*
|
|
58
|
+
* @description When you invoke this function, Remotion will stop rendering all the frames without any retries.
|
|
59
|
+
* @see [Documentation](https://remotion.dev/docs/cancel-render)
|
|
60
|
+
*/
|
|
61
|
+
function cancelRender(err) {
|
|
62
|
+
return cancelRenderInternal(typeof window !== 'undefined' ? window : undefined, err);
|
|
63
|
+
}
|
|
@@ -29,6 +29,10 @@ const getInputProps = () => {
|
|
|
29
29
|
if (override) {
|
|
30
30
|
return override;
|
|
31
31
|
}
|
|
32
|
+
if (typeof window === 'undefined' ||
|
|
33
|
+
typeof window.remotion_inputProps === 'undefined') {
|
|
34
|
+
throw new Error('Cannot call `getInputProps()` - window.remotion_inputProps is not set. This API is only available if you are in the Studio, or while you are rendering server-side.');
|
|
35
|
+
}
|
|
32
36
|
const param = window.remotion_inputProps;
|
|
33
37
|
if (!param) {
|
|
34
38
|
return {};
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { LogLevel } from './log.js';
|
|
1
2
|
import type { RemotionEnvironment } from './remotion-environment-context.js';
|
|
2
3
|
export type DelayRenderScope = {
|
|
3
4
|
remotion_renderReady: boolean;
|
|
@@ -10,6 +11,7 @@ export type DelayRenderScope = {
|
|
|
10
11
|
};
|
|
11
12
|
remotion_puppeteerTimeout: number;
|
|
12
13
|
remotion_attempt: number;
|
|
14
|
+
remotion_cancelledError?: string;
|
|
13
15
|
};
|
|
14
16
|
export declare const DELAY_RENDER_CALLSTACK_TOKEN = "The delayRender was called:";
|
|
15
17
|
export declare const DELAY_RENDER_RETRIES_LEFT = "Retries left: ";
|
|
@@ -24,11 +26,21 @@ export type DelayRenderOptions = {
|
|
|
24
26
|
* This allows useDelayRender to control its own environment source.
|
|
25
27
|
* @private
|
|
26
28
|
*/
|
|
27
|
-
export declare const delayRenderInternal: (scope
|
|
29
|
+
export declare const delayRenderInternal: ({ scope, environment, label, options, }: {
|
|
30
|
+
scope: DelayRenderScope | undefined;
|
|
31
|
+
environment: RemotionEnvironment;
|
|
32
|
+
label: string | null;
|
|
33
|
+
options: DelayRenderOptions;
|
|
34
|
+
}) => number;
|
|
28
35
|
export declare const delayRender: (label?: string, options?: DelayRenderOptions) => number;
|
|
29
36
|
/**
|
|
30
37
|
* Internal function that accepts environment as parameter.
|
|
31
38
|
* @private
|
|
32
39
|
*/
|
|
33
|
-
export declare const continueRenderInternal: (scope
|
|
40
|
+
export declare const continueRenderInternal: ({ scope, handle, environment, logLevel, }: {
|
|
41
|
+
scope: DelayRenderScope | undefined;
|
|
42
|
+
handle: number;
|
|
43
|
+
environment: RemotionEnvironment;
|
|
44
|
+
logLevel: LogLevel;
|
|
45
|
+
}) => void;
|
|
34
46
|
export declare const continueRender: (handle: number) => void;
|
package/dist/cjs/delay-render.js
CHANGED
|
@@ -22,9 +22,9 @@ const defaultTimeout = 30000;
|
|
|
22
22
|
* This allows useDelayRender to control its own environment source.
|
|
23
23
|
* @private
|
|
24
24
|
*/
|
|
25
|
-
const delayRenderInternal = (scope, environment, label, options) => {
|
|
25
|
+
const delayRenderInternal = ({ scope, environment, label, options, }) => {
|
|
26
26
|
var _a, _b, _c, _d, _e;
|
|
27
|
-
if (typeof label !== 'string' &&
|
|
27
|
+
if (typeof label !== 'string' && label !== null) {
|
|
28
28
|
throw new Error('The label parameter of delayRender() must be a string or undefined, got: ' +
|
|
29
29
|
JSON.stringify(label));
|
|
30
30
|
}
|
|
@@ -52,7 +52,7 @@ const delayRenderInternal = (scope, environment, label, options) => {
|
|
|
52
52
|
]
|
|
53
53
|
.filter(truthy_js_1.truthy)
|
|
54
54
|
.join(' ');
|
|
55
|
-
(0, cancel_render_js_1.
|
|
55
|
+
(0, cancel_render_js_1.cancelRenderInternal)(scope, Error(message));
|
|
56
56
|
}, timeoutToUse),
|
|
57
57
|
};
|
|
58
58
|
}
|
|
@@ -68,14 +68,19 @@ exports.delayRenderInternal = delayRenderInternal;
|
|
|
68
68
|
* @see [Documentation](https://remotion.dev/docs/delay-render)
|
|
69
69
|
*/
|
|
70
70
|
const delayRender = (label, options) => {
|
|
71
|
-
return (0, exports.delayRenderInternal)(
|
|
71
|
+
return (0, exports.delayRenderInternal)({
|
|
72
|
+
scope: typeof window !== 'undefined' ? window : undefined,
|
|
73
|
+
environment: (0, get_remotion_environment_js_1.getRemotionEnvironment)(),
|
|
74
|
+
label: label !== null && label !== void 0 ? label : null,
|
|
75
|
+
options: options !== null && options !== void 0 ? options : {},
|
|
76
|
+
});
|
|
72
77
|
};
|
|
73
78
|
exports.delayRender = delayRender;
|
|
74
79
|
/**
|
|
75
80
|
* Internal function that accepts environment as parameter.
|
|
76
81
|
* @private
|
|
77
82
|
*/
|
|
78
|
-
const continueRenderInternal = (scope, handle, environment) => {
|
|
83
|
+
const continueRenderInternal = ({ scope, handle, environment, logLevel, }) => {
|
|
79
84
|
if (typeof handle === 'undefined') {
|
|
80
85
|
throw new TypeError('The continueRender() method must be called with a parameter that is the return value of delayRender(). No value was passed.');
|
|
81
86
|
}
|
|
@@ -98,9 +103,7 @@ const continueRenderInternal = (scope, handle, environment) => {
|
|
|
98
103
|
]
|
|
99
104
|
.filter(truthy_js_1.truthy)
|
|
100
105
|
.join(' ');
|
|
101
|
-
log_js_1.Log.verbose(
|
|
102
|
-
// TODO: Scope logLevel
|
|
103
|
-
{ logLevel: window.remotion_logLevel, tag: 'delayRender()' }, message);
|
|
106
|
+
log_js_1.Log.verbose({ logLevel, tag: 'delayRender()' }, message);
|
|
104
107
|
delete scope.remotion_delayRenderTimeouts[handle];
|
|
105
108
|
}
|
|
106
109
|
return false;
|
|
@@ -117,6 +120,14 @@ exports.continueRenderInternal = continueRenderInternal;
|
|
|
117
120
|
* @see [Documentation](https://remotion.dev/docs/continue-render)
|
|
118
121
|
*/
|
|
119
122
|
const continueRender = (handle) => {
|
|
120
|
-
|
|
123
|
+
var _a;
|
|
124
|
+
(0, exports.continueRenderInternal)({
|
|
125
|
+
scope: typeof window !== 'undefined' ? window : undefined,
|
|
126
|
+
handle,
|
|
127
|
+
environment: (0, get_remotion_environment_js_1.getRemotionEnvironment)(),
|
|
128
|
+
logLevel: typeof window !== 'undefined'
|
|
129
|
+
? ((_a = window.remotion_logLevel) !== null && _a !== void 0 ? _a : 'info')
|
|
130
|
+
: 'info',
|
|
131
|
+
});
|
|
121
132
|
};
|
|
122
133
|
exports.continueRender = continueRender;
|
package/dist/cjs/internals.d.ts
CHANGED
|
@@ -215,7 +215,7 @@ export declare const Internals: {
|
|
|
215
215
|
setCurrentRenderModalComposition: (compositionId: string | null) => void;
|
|
216
216
|
reloadCurrentlySelectedComposition: () => void;
|
|
217
217
|
} | null>;
|
|
218
|
-
readonly
|
|
218
|
+
readonly ResolveCompositionConfigInStudio: import("react").FC<import("react").PropsWithChildren<{
|
|
219
219
|
children: React.ReactNode;
|
|
220
220
|
}>>;
|
|
221
221
|
readonly REMOTION_STUDIO_CONTAINER_ELEMENT: "__remotion-studio-container";
|
package/dist/cjs/internals.js
CHANGED
|
@@ -153,7 +153,7 @@ exports.Internals = {
|
|
|
153
153
|
resolveVideoConfig: resolve_video_config_js_1.resolveVideoConfig,
|
|
154
154
|
useResolvedVideoConfig: ResolveCompositionConfig_js_1.useResolvedVideoConfig,
|
|
155
155
|
resolveCompositionsRef: ResolveCompositionConfig_js_1.resolveCompositionsRef,
|
|
156
|
-
|
|
156
|
+
ResolveCompositionConfigInStudio: ResolveCompositionConfig_js_1.ResolveCompositionConfigInStudio,
|
|
157
157
|
REMOTION_STUDIO_CONTAINER_ELEMENT: get_preview_dom_element_js_1.REMOTION_STUDIO_CONTAINER_ELEMENT,
|
|
158
158
|
RenderAssetManager: RenderAssetManager_js_1.RenderAssetManager,
|
|
159
159
|
persistCurrentFrame: timeline_position_state_js_1.persistCurrentFrame,
|
|
@@ -1,9 +1,11 @@
|
|
|
1
1
|
import type { DelayRenderOptions, DelayRenderScope } from './delay-render.js';
|
|
2
2
|
type DelayRenderFn = (label?: string, options?: DelayRenderOptions) => number;
|
|
3
3
|
type ContinueRenderFn = (handle: number) => void;
|
|
4
|
+
type CancelRenderFn = (err: unknown) => never;
|
|
4
5
|
export declare const DelayRenderContextType: import("react").Context<DelayRenderScope | null>;
|
|
5
6
|
export declare const useDelayRender: () => {
|
|
6
7
|
delayRender: DelayRenderFn;
|
|
7
8
|
continueRender: ContinueRenderFn;
|
|
9
|
+
cancelRender: CancelRenderFn;
|
|
8
10
|
};
|
|
9
11
|
export {};
|
|
@@ -2,18 +2,34 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.useDelayRender = exports.DelayRenderContextType = void 0;
|
|
4
4
|
const react_1 = require("react");
|
|
5
|
+
const cancel_render_js_1 = require("./cancel-render.js");
|
|
5
6
|
const delay_render_js_1 = require("./delay-render.js");
|
|
7
|
+
const log_level_context_js_1 = require("./log-level-context.js");
|
|
6
8
|
const use_remotion_environment_js_1 = require("./use-remotion-environment.js");
|
|
7
9
|
exports.DelayRenderContextType = (0, react_1.createContext)(null);
|
|
8
10
|
const useDelayRender = () => {
|
|
9
11
|
const environment = (0, use_remotion_environment_js_1.useRemotionEnvironment)();
|
|
10
12
|
const scope = (0, react_1.useContext)(exports.DelayRenderContextType);
|
|
13
|
+
const logLevel = (0, log_level_context_js_1.useLogLevel)();
|
|
11
14
|
const delayRender = (0, react_1.useCallback)((label, options) => {
|
|
12
|
-
return (0, delay_render_js_1.delayRenderInternal)(
|
|
15
|
+
return (0, delay_render_js_1.delayRenderInternal)({
|
|
16
|
+
scope: scope !== null && scope !== void 0 ? scope : (typeof window !== 'undefined' ? window : undefined),
|
|
17
|
+
environment,
|
|
18
|
+
label: label !== null && label !== void 0 ? label : null,
|
|
19
|
+
options: options !== null && options !== void 0 ? options : {},
|
|
20
|
+
});
|
|
13
21
|
}, [environment, scope]);
|
|
14
22
|
const continueRender = (0, react_1.useCallback)((handle) => {
|
|
15
|
-
(0, delay_render_js_1.continueRenderInternal)(
|
|
16
|
-
|
|
17
|
-
|
|
23
|
+
(0, delay_render_js_1.continueRenderInternal)({
|
|
24
|
+
scope: scope !== null && scope !== void 0 ? scope : (typeof window !== 'undefined' ? window : undefined),
|
|
25
|
+
handle,
|
|
26
|
+
environment,
|
|
27
|
+
logLevel,
|
|
28
|
+
});
|
|
29
|
+
}, [environment, logLevel, scope]);
|
|
30
|
+
const cancelRender = (0, react_1.useCallback)((err) => {
|
|
31
|
+
return (0, cancel_render_js_1.cancelRenderInternal)(scope !== null && scope !== void 0 ? scope : (typeof window !== 'undefined' ? window : undefined), err);
|
|
32
|
+
}, [scope]);
|
|
33
|
+
return { delayRender, continueRender, cancelRender };
|
|
18
34
|
};
|
|
19
35
|
exports.useDelayRender = useDelayRender;
|
package/dist/cjs/version.d.ts
CHANGED
package/dist/cjs/version.js
CHANGED
package/dist/esm/index.mjs
CHANGED
|
@@ -110,7 +110,7 @@ function truthy(value) {
|
|
|
110
110
|
}
|
|
111
111
|
|
|
112
112
|
// src/version.ts
|
|
113
|
-
var VERSION = "4.0.
|
|
113
|
+
var VERSION = "4.0.375";
|
|
114
114
|
|
|
115
115
|
// src/multiple-versions-warning.ts
|
|
116
116
|
var checkMultipleRemotionVersions = () => {
|
|
@@ -149,7 +149,7 @@ var Null = () => {
|
|
|
149
149
|
// src/Sequence.tsx
|
|
150
150
|
import {
|
|
151
151
|
forwardRef as forwardRef2,
|
|
152
|
-
useContext as
|
|
152
|
+
useContext as useContext13,
|
|
153
153
|
useEffect as useEffect3,
|
|
154
154
|
useMemo as useMemo10,
|
|
155
155
|
useState as useState6
|
|
@@ -308,7 +308,7 @@ var SequenceManagerProvider = ({ children }) => {
|
|
|
308
308
|
|
|
309
309
|
// src/TimelineContext.tsx
|
|
310
310
|
import {
|
|
311
|
-
createContext as
|
|
311
|
+
createContext as createContext10,
|
|
312
312
|
useLayoutEffect,
|
|
313
313
|
useMemo as useMemo7,
|
|
314
314
|
useRef as useRef2,
|
|
@@ -586,6 +586,9 @@ var getInputProps = () => {
|
|
|
586
586
|
if (override) {
|
|
587
587
|
return override;
|
|
588
588
|
}
|
|
589
|
+
if (typeof window === "undefined" || typeof window.remotion_inputProps === "undefined") {
|
|
590
|
+
throw new Error("Cannot call `getInputProps()` - window.remotion_inputProps is not set. This API is only available if you are in the Studio, or while you are rendering server-side.");
|
|
591
|
+
}
|
|
589
592
|
const param = window.remotion_inputProps;
|
|
590
593
|
if (!param) {
|
|
591
594
|
return {};
|
|
@@ -854,7 +857,7 @@ var needsResolution = (composition) => {
|
|
|
854
857
|
return Boolean(composition.calculateMetadata);
|
|
855
858
|
};
|
|
856
859
|
var PROPS_UPDATED_EXTERNALLY = "remotion.propsUpdatedExternally";
|
|
857
|
-
var
|
|
860
|
+
var ResolveCompositionConfigInStudio = ({ children }) => {
|
|
858
861
|
const [currentRenderModalComposition, setCurrentRenderModalComposition] = useState4(null);
|
|
859
862
|
const { compositions, canvasContent, currentCompositionMetadata } = useContext4(CompositionManager);
|
|
860
863
|
const { fastRefreshes, manualRefreshes } = useContext4(NonceContext);
|
|
@@ -1151,7 +1154,7 @@ var useResolvedVideoConfig = (preferredCompositionId) => {
|
|
|
1151
1154
|
props: {
|
|
1152
1155
|
...composition.defaultProps ?? {},
|
|
1153
1156
|
...selectedEditorProps ?? {},
|
|
1154
|
-
...typeof window === "undefined" || env.isPlayer ? {} : getInputProps() ?? {}
|
|
1157
|
+
...typeof window === "undefined" || env.isPlayer || !window.remotion_inputProps ? {} : getInputProps() ?? {}
|
|
1155
1158
|
},
|
|
1156
1159
|
defaultCodec: null,
|
|
1157
1160
|
defaultOutName: null,
|
|
@@ -1161,6 +1164,9 @@ var useResolvedVideoConfig = (preferredCompositionId) => {
|
|
|
1161
1164
|
}
|
|
1162
1165
|
};
|
|
1163
1166
|
}
|
|
1167
|
+
if (!context) {
|
|
1168
|
+
return null;
|
|
1169
|
+
}
|
|
1164
1170
|
if (!context[composition.id]) {
|
|
1165
1171
|
return null;
|
|
1166
1172
|
}
|
|
@@ -1248,7 +1254,7 @@ var usePlayingState = () => {
|
|
|
1248
1254
|
};
|
|
1249
1255
|
|
|
1250
1256
|
// src/use-delay-render.tsx
|
|
1251
|
-
import { createContext as
|
|
1257
|
+
import { createContext as createContext9, useCallback as useCallback4, useContext as useContext8 } from "react";
|
|
1252
1258
|
|
|
1253
1259
|
// src/cancel-render.ts
|
|
1254
1260
|
var isErrorLike = (err) => {
|
|
@@ -1275,7 +1281,7 @@ var isErrorLike = (err) => {
|
|
|
1275
1281
|
}
|
|
1276
1282
|
return true;
|
|
1277
1283
|
};
|
|
1278
|
-
function
|
|
1284
|
+
function cancelRenderInternal(scope, err) {
|
|
1279
1285
|
let error;
|
|
1280
1286
|
if (isErrorLike(err)) {
|
|
1281
1287
|
error = err;
|
|
@@ -1287,9 +1293,14 @@ function cancelRender(err) {
|
|
|
1287
1293
|
} else {
|
|
1288
1294
|
error = Error("Rendering was cancelled");
|
|
1289
1295
|
}
|
|
1290
|
-
|
|
1296
|
+
if (scope) {
|
|
1297
|
+
scope.remotion_cancelledError = error.stack;
|
|
1298
|
+
}
|
|
1291
1299
|
throw error;
|
|
1292
1300
|
}
|
|
1301
|
+
function cancelRender(err) {
|
|
1302
|
+
return cancelRenderInternal(typeof window !== "undefined" ? window : undefined, err);
|
|
1303
|
+
}
|
|
1293
1304
|
|
|
1294
1305
|
// src/log.ts
|
|
1295
1306
|
var logLevels = ["trace", "verbose", "info", "warn", "error"];
|
|
@@ -1357,8 +1368,13 @@ var DELAY_RENDER_RETRIES_LEFT = "Retries left: ";
|
|
|
1357
1368
|
var DELAY_RENDER_RETRY_TOKEN = "- Rendering the frame will be retried.";
|
|
1358
1369
|
var DELAY_RENDER_CLEAR_TOKEN = "handle was cleared after";
|
|
1359
1370
|
var defaultTimeout = 30000;
|
|
1360
|
-
var delayRenderInternal = (
|
|
1361
|
-
|
|
1371
|
+
var delayRenderInternal = ({
|
|
1372
|
+
scope,
|
|
1373
|
+
environment,
|
|
1374
|
+
label,
|
|
1375
|
+
options
|
|
1376
|
+
}) => {
|
|
1377
|
+
if (typeof label !== "string" && label !== null) {
|
|
1362
1378
|
throw new Error("The label parameter of delayRender() must be a string or undefined, got: " + JSON.stringify(label));
|
|
1363
1379
|
}
|
|
1364
1380
|
const handle = Math.random();
|
|
@@ -1381,7 +1397,7 @@ var delayRenderInternal = (scope, environment, label, options) => {
|
|
|
1381
1397
|
DELAY_RENDER_CALLSTACK_TOKEN,
|
|
1382
1398
|
called
|
|
1383
1399
|
].filter(truthy).join(" ");
|
|
1384
|
-
|
|
1400
|
+
cancelRenderInternal(scope, Error(message));
|
|
1385
1401
|
}, timeoutToUse)
|
|
1386
1402
|
};
|
|
1387
1403
|
}
|
|
@@ -1392,9 +1408,19 @@ var delayRenderInternal = (scope, environment, label, options) => {
|
|
|
1392
1408
|
return handle;
|
|
1393
1409
|
};
|
|
1394
1410
|
var delayRender = (label, options) => {
|
|
1395
|
-
return delayRenderInternal(
|
|
1411
|
+
return delayRenderInternal({
|
|
1412
|
+
scope: typeof window !== "undefined" ? window : undefined,
|
|
1413
|
+
environment: getRemotionEnvironment(),
|
|
1414
|
+
label: label ?? null,
|
|
1415
|
+
options: options ?? {}
|
|
1416
|
+
});
|
|
1396
1417
|
};
|
|
1397
|
-
var continueRenderInternal = (
|
|
1418
|
+
var continueRenderInternal = ({
|
|
1419
|
+
scope,
|
|
1420
|
+
handle,
|
|
1421
|
+
environment,
|
|
1422
|
+
logLevel
|
|
1423
|
+
}) => {
|
|
1398
1424
|
if (typeof handle === "undefined") {
|
|
1399
1425
|
throw new TypeError("The continueRender() method must be called with a parameter that is the return value of delayRender(). No value was passed.");
|
|
1400
1426
|
}
|
|
@@ -1414,7 +1440,7 @@ var continueRenderInternal = (scope, handle, environment) => {
|
|
|
1414
1440
|
DELAY_RENDER_CLEAR_TOKEN,
|
|
1415
1441
|
`${Date.now() - startTime}ms`
|
|
1416
1442
|
].filter(truthy).join(" ");
|
|
1417
|
-
Log.verbose({ logLevel
|
|
1443
|
+
Log.verbose({ logLevel, tag: "delayRender()" }, message);
|
|
1418
1444
|
delete scope.remotion_delayRenderTimeouts[handle];
|
|
1419
1445
|
}
|
|
1420
1446
|
return false;
|
|
@@ -1426,26 +1452,67 @@ var continueRenderInternal = (scope, handle, environment) => {
|
|
|
1426
1452
|
}
|
|
1427
1453
|
};
|
|
1428
1454
|
var continueRender = (handle) => {
|
|
1429
|
-
continueRenderInternal(
|
|
1455
|
+
continueRenderInternal({
|
|
1456
|
+
scope: typeof window !== "undefined" ? window : undefined,
|
|
1457
|
+
handle,
|
|
1458
|
+
environment: getRemotionEnvironment(),
|
|
1459
|
+
logLevel: typeof window !== "undefined" ? window.remotion_logLevel ?? "info" : "info"
|
|
1460
|
+
});
|
|
1461
|
+
};
|
|
1462
|
+
|
|
1463
|
+
// src/log-level-context.tsx
|
|
1464
|
+
import { createContext as createContext8 } from "react";
|
|
1465
|
+
import * as React6 from "react";
|
|
1466
|
+
var LogLevelContext = createContext8({
|
|
1467
|
+
logLevel: "info",
|
|
1468
|
+
mountTime: 0
|
|
1469
|
+
});
|
|
1470
|
+
var useLogLevel = () => {
|
|
1471
|
+
const { logLevel } = React6.useContext(LogLevelContext);
|
|
1472
|
+
if (logLevel === null) {
|
|
1473
|
+
throw new Error("useLogLevel must be used within a LogLevelProvider");
|
|
1474
|
+
}
|
|
1475
|
+
return logLevel;
|
|
1476
|
+
};
|
|
1477
|
+
var useMountTime = () => {
|
|
1478
|
+
const { mountTime } = React6.useContext(LogLevelContext);
|
|
1479
|
+
if (mountTime === null) {
|
|
1480
|
+
throw new Error("useMountTime must be used within a LogLevelProvider");
|
|
1481
|
+
}
|
|
1482
|
+
return mountTime;
|
|
1430
1483
|
};
|
|
1431
1484
|
|
|
1432
1485
|
// src/use-delay-render.tsx
|
|
1433
|
-
var DelayRenderContextType =
|
|
1486
|
+
var DelayRenderContextType = createContext9(null);
|
|
1434
1487
|
var useDelayRender = () => {
|
|
1435
1488
|
const environment = useRemotionEnvironment();
|
|
1436
|
-
const scope =
|
|
1489
|
+
const scope = useContext8(DelayRenderContextType);
|
|
1490
|
+
const logLevel = useLogLevel();
|
|
1437
1491
|
const delayRender2 = useCallback4((label, options) => {
|
|
1438
|
-
return delayRenderInternal(
|
|
1492
|
+
return delayRenderInternal({
|
|
1493
|
+
scope: scope ?? (typeof window !== "undefined" ? window : undefined),
|
|
1494
|
+
environment,
|
|
1495
|
+
label: label ?? null,
|
|
1496
|
+
options: options ?? {}
|
|
1497
|
+
});
|
|
1439
1498
|
}, [environment, scope]);
|
|
1440
1499
|
const continueRender2 = useCallback4((handle) => {
|
|
1441
|
-
continueRenderInternal(
|
|
1442
|
-
|
|
1443
|
-
|
|
1500
|
+
continueRenderInternal({
|
|
1501
|
+
scope: scope ?? (typeof window !== "undefined" ? window : undefined),
|
|
1502
|
+
handle,
|
|
1503
|
+
environment,
|
|
1504
|
+
logLevel
|
|
1505
|
+
});
|
|
1506
|
+
}, [environment, logLevel, scope]);
|
|
1507
|
+
const cancelRender2 = useCallback4((err) => {
|
|
1508
|
+
return cancelRenderInternal(scope ?? (typeof window !== "undefined" ? window : undefined), err);
|
|
1509
|
+
}, [scope]);
|
|
1510
|
+
return { delayRender: delayRender2, continueRender: continueRender2, cancelRender: cancelRender2 };
|
|
1444
1511
|
};
|
|
1445
1512
|
|
|
1446
1513
|
// src/TimelineContext.tsx
|
|
1447
1514
|
import { jsx as jsx6 } from "react/jsx-runtime";
|
|
1448
|
-
var SetTimelineContext =
|
|
1515
|
+
var SetTimelineContext = createContext10({
|
|
1449
1516
|
setFrame: () => {
|
|
1450
1517
|
throw new Error("default");
|
|
1451
1518
|
},
|
|
@@ -1453,7 +1520,7 @@ var SetTimelineContext = createContext9({
|
|
|
1453
1520
|
throw new Error("default");
|
|
1454
1521
|
}
|
|
1455
1522
|
});
|
|
1456
|
-
var TimelineContext =
|
|
1523
|
+
var TimelineContext = createContext10({
|
|
1457
1524
|
frame: {},
|
|
1458
1525
|
playing: false,
|
|
1459
1526
|
playbackRate: 1,
|
|
@@ -1528,12 +1595,12 @@ var TimelineContextProvider = ({ children, frameState }) => {
|
|
|
1528
1595
|
};
|
|
1529
1596
|
|
|
1530
1597
|
// src/use-video-config.ts
|
|
1531
|
-
import { useContext as
|
|
1598
|
+
import { useContext as useContext10 } from "react";
|
|
1532
1599
|
|
|
1533
1600
|
// src/CanUseRemotionHooks.tsx
|
|
1534
|
-
import { createContext as
|
|
1601
|
+
import { createContext as createContext11 } from "react";
|
|
1535
1602
|
import { jsx as jsx7 } from "react/jsx-runtime";
|
|
1536
|
-
var CanUseRemotionHooks =
|
|
1603
|
+
var CanUseRemotionHooks = createContext11(false);
|
|
1537
1604
|
var CanUseRemotionHooksProvider = ({ children }) => {
|
|
1538
1605
|
return /* @__PURE__ */ jsx7(CanUseRemotionHooks.Provider, {
|
|
1539
1606
|
value: true,
|
|
@@ -1542,9 +1609,9 @@ var CanUseRemotionHooksProvider = ({ children }) => {
|
|
|
1542
1609
|
};
|
|
1543
1610
|
|
|
1544
1611
|
// src/use-unsafe-video-config.ts
|
|
1545
|
-
import { useContext as
|
|
1612
|
+
import { useContext as useContext9, useMemo as useMemo8 } from "react";
|
|
1546
1613
|
var useUnsafeVideoConfig = () => {
|
|
1547
|
-
const context =
|
|
1614
|
+
const context = useContext9(SequenceContext);
|
|
1548
1615
|
const ctxWidth = context?.width ?? null;
|
|
1549
1616
|
const ctxHeight = context?.height ?? null;
|
|
1550
1617
|
const ctxDuration = context?.durationInFrames ?? null;
|
|
@@ -1587,7 +1654,7 @@ var useUnsafeVideoConfig = () => {
|
|
|
1587
1654
|
// src/use-video-config.ts
|
|
1588
1655
|
var useVideoConfig = () => {
|
|
1589
1656
|
const videoConfig = useUnsafeVideoConfig();
|
|
1590
|
-
const context =
|
|
1657
|
+
const context = useContext10(CanUseRemotionHooks);
|
|
1591
1658
|
const isPlayer = useIsPlayer();
|
|
1592
1659
|
if (!videoConfig) {
|
|
1593
1660
|
if (typeof window !== "undefined" && window.remotion_isPlayer || isPlayer) {
|
|
@@ -1606,12 +1673,12 @@ var useVideoConfig = () => {
|
|
|
1606
1673
|
};
|
|
1607
1674
|
|
|
1608
1675
|
// src/freeze.tsx
|
|
1609
|
-
import { useContext as
|
|
1676
|
+
import { useContext as useContext12, useMemo as useMemo9 } from "react";
|
|
1610
1677
|
|
|
1611
1678
|
// src/use-current-frame.ts
|
|
1612
|
-
import { useContext as
|
|
1679
|
+
import { useContext as useContext11 } from "react";
|
|
1613
1680
|
var useCurrentFrame = () => {
|
|
1614
|
-
const canUseRemotionHooks =
|
|
1681
|
+
const canUseRemotionHooks = useContext11(CanUseRemotionHooks);
|
|
1615
1682
|
const env = useRemotionEnvironment();
|
|
1616
1683
|
if (!canUseRemotionHooks) {
|
|
1617
1684
|
if (env.isPlayer) {
|
|
@@ -1620,7 +1687,7 @@ var useCurrentFrame = () => {
|
|
|
1620
1687
|
throw new Error(`useCurrentFrame() can only be called inside a component that was registered as a composition. See https://www.remotion.dev/docs/the-fundamentals#defining-compositions`);
|
|
1621
1688
|
}
|
|
1622
1689
|
const frame = useTimelinePosition();
|
|
1623
|
-
const context =
|
|
1690
|
+
const context = useContext11(SequenceContext);
|
|
1624
1691
|
const contextOffset = context ? context.cumulatedFrom + context.relativeFrom : 0;
|
|
1625
1692
|
return frame - contextOffset;
|
|
1626
1693
|
};
|
|
@@ -1654,8 +1721,8 @@ var Freeze = ({
|
|
|
1654
1721
|
return active(frame);
|
|
1655
1722
|
}
|
|
1656
1723
|
}, [active, frame]);
|
|
1657
|
-
const timelineContext =
|
|
1658
|
-
const sequenceContext =
|
|
1724
|
+
const timelineContext = useContext12(TimelineContext);
|
|
1725
|
+
const sequenceContext = useContext12(SequenceContext);
|
|
1659
1726
|
const relativeFrom = sequenceContext?.relativeFrom ?? 0;
|
|
1660
1727
|
const timelineValue = useMemo9(() => {
|
|
1661
1728
|
if (!isActive) {
|
|
@@ -1712,8 +1779,8 @@ var RegularSequenceRefForwardingFunction = ({
|
|
|
1712
1779
|
}, ref) => {
|
|
1713
1780
|
const { layout = "absolute-fill" } = other;
|
|
1714
1781
|
const [id] = useState6(() => String(Math.random()));
|
|
1715
|
-
const parentSequence =
|
|
1716
|
-
const { rootId } =
|
|
1782
|
+
const parentSequence = useContext13(SequenceContext);
|
|
1783
|
+
const { rootId } = useContext13(TimelineContext);
|
|
1717
1784
|
const cumulatedFrom = parentSequence ? parentSequence.cumulatedFrom + parentSequence.relativeFrom : 0;
|
|
1718
1785
|
const nonce = useNonce();
|
|
1719
1786
|
if (layout !== "absolute-fill" && layout !== "none") {
|
|
@@ -1738,8 +1805,8 @@ var RegularSequenceRefForwardingFunction = ({
|
|
|
1738
1805
|
const videoConfig = useVideoConfig();
|
|
1739
1806
|
const parentSequenceDuration = parentSequence ? Math.min(parentSequence.durationInFrames - from, durationInFrames) : durationInFrames;
|
|
1740
1807
|
const actualDurationInFrames = Math.max(0, Math.min(videoConfig.durationInFrames - from, parentSequenceDuration));
|
|
1741
|
-
const { registerSequence, unregisterSequence } =
|
|
1742
|
-
const { hidden } =
|
|
1808
|
+
const { registerSequence, unregisterSequence } = useContext13(SequenceManager);
|
|
1809
|
+
const { hidden } = useContext13(SequenceVisibilityToggleContext);
|
|
1743
1810
|
const premounting = useMemo10(() => {
|
|
1744
1811
|
return parentSequence?.premounting || Boolean(other._remotionInternalIsPremounting);
|
|
1745
1812
|
}, [other._remotionInternalIsPremounting, parentSequence?.premounting]);
|
|
@@ -1926,7 +1993,7 @@ import {
|
|
|
1926
1993
|
} from "react";
|
|
1927
1994
|
|
|
1928
1995
|
// src/animated-image/canvas.tsx
|
|
1929
|
-
import
|
|
1996
|
+
import React11, { useCallback as useCallback5, useImperativeHandle as useImperativeHandle3, useRef as useRef3 } from "react";
|
|
1930
1997
|
import { jsx as jsx10 } from "react/jsx-runtime";
|
|
1931
1998
|
var calcArgs = (fit, frameSize, canvasSize) => {
|
|
1932
1999
|
switch (fit) {
|
|
@@ -2023,7 +2090,7 @@ var CanvasRefForwardingFunction = ({ width, height, fit, className, style }, ref
|
|
|
2023
2090
|
style
|
|
2024
2091
|
});
|
|
2025
2092
|
};
|
|
2026
|
-
var Canvas =
|
|
2093
|
+
var Canvas = React11.forwardRef(CanvasRefForwardingFunction);
|
|
2027
2094
|
|
|
2028
2095
|
// src/animated-image/decode-image.ts
|
|
2029
2096
|
var CACHE_SIZE = 5;
|
|
@@ -2285,11 +2352,11 @@ var AnimatedImage = forwardRef3(({
|
|
|
2285
2352
|
});
|
|
2286
2353
|
});
|
|
2287
2354
|
// src/Artifact.tsx
|
|
2288
|
-
import { useContext as
|
|
2355
|
+
import { useContext as useContext14, useEffect as useEffect5, useState as useState9 } from "react";
|
|
2289
2356
|
|
|
2290
2357
|
// src/RenderAssetManager.tsx
|
|
2291
2358
|
import {
|
|
2292
|
-
createContext as
|
|
2359
|
+
createContext as createContext12,
|
|
2293
2360
|
useCallback as useCallback6,
|
|
2294
2361
|
useLayoutEffect as useLayoutEffect3,
|
|
2295
2362
|
useMemo as useMemo11,
|
|
@@ -2329,7 +2396,7 @@ var validateRenderAsset = (artifact) => {
|
|
|
2329
2396
|
|
|
2330
2397
|
// src/RenderAssetManager.tsx
|
|
2331
2398
|
import { jsx as jsx12 } from "react/jsx-runtime";
|
|
2332
|
-
var RenderAssetManager =
|
|
2399
|
+
var RenderAssetManager = createContext12({
|
|
2333
2400
|
registerRenderAsset: () => {
|
|
2334
2401
|
return;
|
|
2335
2402
|
},
|
|
@@ -2375,7 +2442,7 @@ var RenderAssetManagerProvider = ({ children }) => {
|
|
|
2375
2442
|
// src/Artifact.tsx
|
|
2376
2443
|
var ArtifactThumbnail = Symbol("Thumbnail");
|
|
2377
2444
|
var Artifact = ({ filename, content, downloadBehavior }) => {
|
|
2378
|
-
const { registerRenderAsset, unregisterRenderAsset } =
|
|
2445
|
+
const { registerRenderAsset, unregisterRenderAsset } = useContext14(RenderAssetManager);
|
|
2379
2446
|
const env = useRemotionEnvironment();
|
|
2380
2447
|
const frame = useCurrentFrame();
|
|
2381
2448
|
const [id] = useState9(() => {
|
|
@@ -2464,11 +2531,11 @@ var calculateMediaDuration = ({
|
|
|
2464
2531
|
};
|
|
2465
2532
|
|
|
2466
2533
|
// src/loop/index.tsx
|
|
2467
|
-
import
|
|
2534
|
+
import React12, { createContext as createContext13, useMemo as useMemo12 } from "react";
|
|
2468
2535
|
import { jsx as jsx13 } from "react/jsx-runtime";
|
|
2469
|
-
var LoopContext =
|
|
2536
|
+
var LoopContext = createContext13(null);
|
|
2470
2537
|
var useLoop = () => {
|
|
2471
|
-
return
|
|
2538
|
+
return React12.useContext(LoopContext);
|
|
2472
2539
|
};
|
|
2473
2540
|
var Loop = ({ durationInFrames, times = Infinity, children, name, ...props }) => {
|
|
2474
2541
|
const currentFrame = useCurrentFrame();
|
|
@@ -2522,7 +2589,7 @@ var Loop = ({ durationInFrames, times = Infinity, children, name, ...props }) =>
|
|
|
2522
2589
|
Loop.useLoop = useLoop;
|
|
2523
2590
|
|
|
2524
2591
|
// src/prefetch.ts
|
|
2525
|
-
import { useContext as
|
|
2592
|
+
import { useContext as useContext15 } from "react";
|
|
2526
2593
|
|
|
2527
2594
|
// src/playback-logging.ts
|
|
2528
2595
|
var playbackLogging = ({
|
|
@@ -2536,9 +2603,9 @@ var playbackLogging = ({
|
|
|
2536
2603
|
};
|
|
2537
2604
|
|
|
2538
2605
|
// src/prefetch-state.tsx
|
|
2539
|
-
import { createContext as
|
|
2606
|
+
import { createContext as createContext14, useEffect as useEffect6, useState as useState10 } from "react";
|
|
2540
2607
|
import { jsx as jsx14 } from "react/jsx-runtime";
|
|
2541
|
-
var PreloadContext =
|
|
2608
|
+
var PreloadContext = createContext14({});
|
|
2542
2609
|
var preloads = {};
|
|
2543
2610
|
var updaters = [];
|
|
2544
2611
|
var setPreloads = (updater) => {
|
|
@@ -2578,7 +2645,7 @@ var getSrcWithoutHash = (src) => {
|
|
|
2578
2645
|
return src.slice(0, hashIndex);
|
|
2579
2646
|
};
|
|
2580
2647
|
var usePreload = (src) => {
|
|
2581
|
-
const preloads2 =
|
|
2648
|
+
const preloads2 = useContext15(PreloadContext);
|
|
2582
2649
|
const hashFragmentIndex = removeAndGetHashFragment(src);
|
|
2583
2650
|
const withoutHashFragment = getSrcWithoutHash(src);
|
|
2584
2651
|
if (!preloads2[withoutHashFragment]) {
|
|
@@ -2851,7 +2918,7 @@ var resolveTrimProps = ({
|
|
|
2851
2918
|
};
|
|
2852
2919
|
|
|
2853
2920
|
// src/video/duration-state.tsx
|
|
2854
|
-
import { createContext as
|
|
2921
|
+
import { createContext as createContext15, useMemo as useMemo13, useReducer } from "react";
|
|
2855
2922
|
import { jsx as jsx15 } from "react/jsx-runtime";
|
|
2856
2923
|
var durationReducer = (state, action) => {
|
|
2857
2924
|
switch (action.type) {
|
|
@@ -2869,7 +2936,7 @@ var durationReducer = (state, action) => {
|
|
|
2869
2936
|
return state;
|
|
2870
2937
|
}
|
|
2871
2938
|
};
|
|
2872
|
-
var DurationsContext =
|
|
2939
|
+
var DurationsContext = createContext15({
|
|
2873
2940
|
durations: {},
|
|
2874
2941
|
setDurations: () => {
|
|
2875
2942
|
throw new Error("context missing");
|
|
@@ -2914,28 +2981,6 @@ var getCrossOriginValue = ({
|
|
|
2914
2981
|
return;
|
|
2915
2982
|
};
|
|
2916
2983
|
|
|
2917
|
-
// src/log-level-context.tsx
|
|
2918
|
-
import { createContext as createContext15 } from "react";
|
|
2919
|
-
import * as React14 from "react";
|
|
2920
|
-
var LogLevelContext = createContext15({
|
|
2921
|
-
logLevel: "info",
|
|
2922
|
-
mountTime: 0
|
|
2923
|
-
});
|
|
2924
|
-
var useLogLevel = () => {
|
|
2925
|
-
const { logLevel } = React14.useContext(LogLevelContext);
|
|
2926
|
-
if (logLevel === null) {
|
|
2927
|
-
throw new Error("useLogLevel must be used within a LogLevelProvider");
|
|
2928
|
-
}
|
|
2929
|
-
return logLevel;
|
|
2930
|
-
};
|
|
2931
|
-
var useMountTime = () => {
|
|
2932
|
-
const { mountTime } = React14.useContext(LogLevelContext);
|
|
2933
|
-
if (mountTime === null) {
|
|
2934
|
-
throw new Error("useMountTime must be used within a LogLevelProvider");
|
|
2935
|
-
}
|
|
2936
|
-
return mountTime;
|
|
2937
|
-
};
|
|
2938
|
-
|
|
2939
2984
|
// src/use-amplification.ts
|
|
2940
2985
|
import { useContext as useContext17, useLayoutEffect as useLayoutEffect4, useRef as useRef7 } from "react";
|
|
2941
2986
|
|
|
@@ -6123,14 +6168,12 @@ var RemotionRoot = ({
|
|
|
6123
6168
|
children: /* @__PURE__ */ jsx28(PrefetchProvider, {
|
|
6124
6169
|
children: /* @__PURE__ */ jsx28(SequenceManagerProvider, {
|
|
6125
6170
|
children: /* @__PURE__ */ jsx28(RenderAssetManagerProvider, {
|
|
6126
|
-
children: /* @__PURE__ */ jsx28(
|
|
6127
|
-
|
|
6128
|
-
|
|
6129
|
-
|
|
6130
|
-
children: /* @__PURE__ */ jsx28(
|
|
6131
|
-
children
|
|
6132
|
-
children
|
|
6133
|
-
})
|
|
6171
|
+
children: /* @__PURE__ */ jsx28(SharedAudioContextProvider, {
|
|
6172
|
+
numberOfAudioTags,
|
|
6173
|
+
audioLatencyHint,
|
|
6174
|
+
children: /* @__PURE__ */ jsx28(DurationsContextProvider, {
|
|
6175
|
+
children: /* @__PURE__ */ jsx28(BufferingProvider, {
|
|
6176
|
+
children
|
|
6134
6177
|
})
|
|
6135
6178
|
})
|
|
6136
6179
|
})
|
|
@@ -7042,7 +7085,7 @@ var Internals = {
|
|
|
7042
7085
|
resolveVideoConfig,
|
|
7043
7086
|
useResolvedVideoConfig,
|
|
7044
7087
|
resolveCompositionsRef,
|
|
7045
|
-
|
|
7088
|
+
ResolveCompositionConfigInStudio,
|
|
7046
7089
|
REMOTION_STUDIO_CONTAINER_ELEMENT,
|
|
7047
7090
|
RenderAssetManager,
|
|
7048
7091
|
persistCurrentFrame,
|
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.375",
|
|
7
7
|
"description": "Make videos programmatically",
|
|
8
8
|
"main": "dist/cjs/index.js",
|
|
9
9
|
"types": "dist/cjs/index.d.ts",
|
|
@@ -34,7 +34,7 @@
|
|
|
34
34
|
"react-dom": "19.0.0",
|
|
35
35
|
"webpack": "5.96.1",
|
|
36
36
|
"zod": "3.22.3",
|
|
37
|
-
"@remotion/eslint-config-internal": "4.0.
|
|
37
|
+
"@remotion/eslint-config-internal": "4.0.375",
|
|
38
38
|
"eslint": "9.19.0"
|
|
39
39
|
},
|
|
40
40
|
"keywords": [
|