remotion 4.0.211 → 4.0.213
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/HideSequence.d.ts +7 -0
- package/dist/cjs/HideSequence.js +59 -0
- package/dist/cjs/Img.js +29 -11
- package/dist/cjs/check-rsc.d.ts +1 -0
- package/dist/cjs/check-rsc.js +6 -0
- package/dist/cjs/version.d.ts +1 -1
- package/dist/cjs/version.js +1 -1
- package/dist/cjs/video/OffthreadVideoForRendering.js +1 -1
- package/dist/esm/index.mjs +22 -12
- package/dist/esm/version.mjs +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
25
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
+
exports.useCustomFrame = exports.HideSequence = void 0;
|
|
27
|
+
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
28
|
+
const react_1 = __importStar(require("react"));
|
|
29
|
+
const use_current_frame_1 = require("./use-current-frame");
|
|
30
|
+
const context = react_1.default.createContext(null);
|
|
31
|
+
const HideSequence = ({ from, durationInFrames, children }) => {
|
|
32
|
+
var _a, _b, _c;
|
|
33
|
+
const parent = react_1.default.useContext(context);
|
|
34
|
+
const frame = (0, use_current_frame_1.useCurrentFrame)();
|
|
35
|
+
const actualFrame = (_a = parent === null || parent === void 0 ? void 0 : parent.frame) !== null && _a !== void 0 ? _a : frame;
|
|
36
|
+
const cascadedFrame = actualFrame + ((_b = parent === null || parent === void 0 ? void 0 : parent.from) !== null && _b !== void 0 ? _b : 0);
|
|
37
|
+
const visible = cascadedFrame >= from &&
|
|
38
|
+
cascadedFrame < from + durationInFrames &&
|
|
39
|
+
((_c = parent === null || parent === void 0 ? void 0 : parent.visible) !== null && _c !== void 0 ? _c : true);
|
|
40
|
+
const value = (0, react_1.useMemo)(() => {
|
|
41
|
+
return {
|
|
42
|
+
from,
|
|
43
|
+
durationInFrames,
|
|
44
|
+
visible,
|
|
45
|
+
frame: cascadedFrame,
|
|
46
|
+
};
|
|
47
|
+
}, [cascadedFrame, durationInFrames, from, visible]);
|
|
48
|
+
return (0, jsx_runtime_1.jsx)(context.Provider, { value: value, children: children });
|
|
49
|
+
};
|
|
50
|
+
exports.HideSequence = HideSequence;
|
|
51
|
+
const useCustomFrame = () => {
|
|
52
|
+
const ctx = react_1.default.useContext(context);
|
|
53
|
+
const frame = (0, use_current_frame_1.useCurrentFrame)();
|
|
54
|
+
if (!ctx) {
|
|
55
|
+
return frame;
|
|
56
|
+
}
|
|
57
|
+
return ctx.frame;
|
|
58
|
+
};
|
|
59
|
+
exports.useCustomFrame = useCustomFrame;
|
package/dist/cjs/Img.js
CHANGED
|
@@ -70,6 +70,9 @@ const ImgRefForwarding = ({ onError, maxRetries = 2, src, pauseWhenLoading, dela
|
|
|
70
70
|
(0, react_1.useLayoutEffect)(() => {
|
|
71
71
|
var _a, _b;
|
|
72
72
|
if (((_b = (_a = window.process) === null || _a === void 0 ? void 0 : _a.env) === null || _b === void 0 ? void 0 : _b.NODE_ENV) === 'test') {
|
|
73
|
+
if (imageRef.current) {
|
|
74
|
+
imageRef.current.src = actualSrc;
|
|
75
|
+
}
|
|
73
76
|
return;
|
|
74
77
|
}
|
|
75
78
|
const newHandle = (0, delay_render_js_1.delayRender)('Loading <Img> with src=' + actualSrc, {
|
|
@@ -80,31 +83,45 @@ const ImgRefForwarding = ({ onError, maxRetries = 2, src, pauseWhenLoading, dela
|
|
|
80
83
|
? delayPlayback().unblock
|
|
81
84
|
: () => undefined;
|
|
82
85
|
const { current } = imageRef;
|
|
86
|
+
let unmounted = false;
|
|
83
87
|
const onComplete = () => {
|
|
84
88
|
var _a, _b, _c, _d;
|
|
89
|
+
// the decode() promise isn't cancelable -- it may still resolve after unmounting
|
|
90
|
+
if (unmounted) {
|
|
91
|
+
return;
|
|
92
|
+
}
|
|
85
93
|
if (((_b = errors.current[(_a = imageRef.current) === null || _a === void 0 ? void 0 : _a.src]) !== null && _b !== void 0 ? _b : 0) > 0) {
|
|
86
94
|
delete errors.current[(_c = imageRef.current) === null || _c === void 0 ? void 0 : _c.src];
|
|
87
95
|
// eslint-disable-next-line no-console
|
|
88
96
|
console.info(`Retry successful - ${(_d = imageRef.current) === null || _d === void 0 ? void 0 : _d.src} is now loaded`);
|
|
89
97
|
}
|
|
90
98
|
if (current) {
|
|
99
|
+
current.src = actualSrc;
|
|
91
100
|
onImageFrame === null || onImageFrame === void 0 ? void 0 : onImageFrame(current);
|
|
92
101
|
}
|
|
93
102
|
unblock();
|
|
94
103
|
(0, delay_render_js_1.continueRender)(newHandle);
|
|
95
104
|
};
|
|
96
|
-
const
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
onComplete
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
+
const newImg = new Image();
|
|
106
|
+
newImg.src = actualSrc;
|
|
107
|
+
newImg
|
|
108
|
+
.decode()
|
|
109
|
+
.then(onComplete)
|
|
110
|
+
.catch((err) => {
|
|
111
|
+
// fall back to onload event if decode() fails
|
|
112
|
+
// eslint-disable-next-line no-console
|
|
113
|
+
console.warn(err);
|
|
114
|
+
if (newImg.complete) {
|
|
115
|
+
onComplete();
|
|
116
|
+
}
|
|
117
|
+
else {
|
|
118
|
+
newImg.addEventListener('load', onComplete);
|
|
119
|
+
}
|
|
120
|
+
});
|
|
105
121
|
// If tag gets unmounted, clear pending handles because image is not going to load
|
|
106
122
|
return () => {
|
|
107
|
-
|
|
123
|
+
unmounted = true;
|
|
124
|
+
newImg.removeEventListener('load', onComplete);
|
|
108
125
|
unblock();
|
|
109
126
|
(0, delay_render_js_1.continueRender)(newHandle);
|
|
110
127
|
};
|
|
@@ -118,7 +135,8 @@ const ImgRefForwarding = ({ onError, maxRetries = 2, src, pauseWhenLoading, dela
|
|
|
118
135
|
onImageFrame,
|
|
119
136
|
]);
|
|
120
137
|
}
|
|
121
|
-
|
|
138
|
+
// src gets set once we've loaded and decoded the image.
|
|
139
|
+
return (0, jsx_runtime_1.jsx)("img", { ...props, ref: imageRef, onError: didGetError });
|
|
122
140
|
};
|
|
123
141
|
/**
|
|
124
142
|
* @description Works just like a regular HTML img tag. When you use the <Img> tag, Remotion will ensure that the image is loaded before rendering the frame.
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
package/dist/cjs/version.d.ts
CHANGED
package/dist/cjs/version.js
CHANGED
|
@@ -108,7 +108,7 @@ const OffthreadVideoForRendering = ({ onError, volume: volumeProp, playbackRate,
|
|
|
108
108
|
const cleanup = [];
|
|
109
109
|
setImageSrc(null);
|
|
110
110
|
const controller = new AbortController();
|
|
111
|
-
const newHandle = (0, delay_render_js_1.delayRender)(
|
|
111
|
+
const newHandle = (0, delay_render_js_1.delayRender)(`Fetching ${actualSrc} from server`, {
|
|
112
112
|
retries: delayRenderRetries !== null && delayRenderRetries !== void 0 ? delayRenderRetries : undefined,
|
|
113
113
|
timeoutInMilliseconds: delayRenderTimeoutInMilliseconds !== null && delayRenderTimeoutInMilliseconds !== void 0 ? delayRenderTimeoutInMilliseconds : undefined,
|
|
114
114
|
});
|
package/dist/esm/index.mjs
CHANGED
|
@@ -155,7 +155,7 @@ function truthy(value) {
|
|
|
155
155
|
}
|
|
156
156
|
|
|
157
157
|
// src/version.ts
|
|
158
|
-
var VERSION = "4.0.
|
|
158
|
+
var VERSION = "4.0.213";
|
|
159
159
|
|
|
160
160
|
// src/multiple-versions-warning.ts
|
|
161
161
|
var checkMultipleRemotionVersions = () => {
|
|
@@ -4557,6 +4557,9 @@ var ImgRefForwarding = ({
|
|
|
4557
4557
|
const isPremounting = Boolean(sequenceContext?.premounting);
|
|
4558
4558
|
useLayoutEffect4(() => {
|
|
4559
4559
|
if (window.process?.env?.NODE_ENV === "test") {
|
|
4560
|
+
if (imageRef.current) {
|
|
4561
|
+
imageRef.current.src = actualSrc;
|
|
4562
|
+
}
|
|
4560
4563
|
return;
|
|
4561
4564
|
}
|
|
4562
4565
|
const newHandle = delayRender("Loading <Img> with src=" + actualSrc, {
|
|
@@ -4567,27 +4570,35 @@ var ImgRefForwarding = ({
|
|
|
4567
4570
|
return;
|
|
4568
4571
|
};
|
|
4569
4572
|
const { current } = imageRef;
|
|
4573
|
+
let unmounted = false;
|
|
4570
4574
|
const onComplete = () => {
|
|
4575
|
+
if (unmounted) {
|
|
4576
|
+
return;
|
|
4577
|
+
}
|
|
4571
4578
|
if ((errors.current[imageRef.current?.src] ?? 0) > 0) {
|
|
4572
4579
|
delete errors.current[imageRef.current?.src];
|
|
4573
4580
|
console.info(`Retry successful - ${imageRef.current?.src} is now loaded`);
|
|
4574
4581
|
}
|
|
4575
4582
|
if (current) {
|
|
4583
|
+
current.src = actualSrc;
|
|
4576
4584
|
onImageFrame?.(current);
|
|
4577
4585
|
}
|
|
4578
4586
|
unblock();
|
|
4579
4587
|
continueRender(newHandle);
|
|
4580
4588
|
};
|
|
4581
|
-
const
|
|
4582
|
-
|
|
4583
|
-
|
|
4584
|
-
|
|
4585
|
-
|
|
4586
|
-
|
|
4587
|
-
|
|
4588
|
-
|
|
4589
|
+
const newImg = new Image;
|
|
4590
|
+
newImg.src = actualSrc;
|
|
4591
|
+
newImg.decode().then(onComplete).catch((err) => {
|
|
4592
|
+
console.warn(err);
|
|
4593
|
+
if (newImg.complete) {
|
|
4594
|
+
onComplete();
|
|
4595
|
+
} else {
|
|
4596
|
+
newImg.addEventListener("load", onComplete);
|
|
4597
|
+
}
|
|
4598
|
+
});
|
|
4589
4599
|
return () => {
|
|
4590
|
-
|
|
4600
|
+
unmounted = true;
|
|
4601
|
+
newImg.removeEventListener("load", onComplete);
|
|
4591
4602
|
unblock();
|
|
4592
4603
|
continueRender(newHandle);
|
|
4593
4604
|
};
|
|
@@ -4604,7 +4615,6 @@ var ImgRefForwarding = ({
|
|
|
4604
4615
|
return /* @__PURE__ */ jsx24("img", {
|
|
4605
4616
|
...props2,
|
|
4606
4617
|
ref: imageRef,
|
|
4607
|
-
src: actualSrc,
|
|
4608
4618
|
onError: didGetError
|
|
4609
4619
|
});
|
|
4610
4620
|
};
|
|
@@ -5929,7 +5939,7 @@ var OffthreadVideoForRendering = ({
|
|
|
5929
5939
|
const cleanup = [];
|
|
5930
5940
|
setImageSrc(null);
|
|
5931
5941
|
const controller = new AbortController;
|
|
5932
|
-
const newHandle = delayRender(
|
|
5942
|
+
const newHandle = delayRender(`Fetching ${actualSrc} from server`, {
|
|
5933
5943
|
retries: delayRenderRetries ?? undefined,
|
|
5934
5944
|
timeoutInMilliseconds: delayRenderTimeoutInMilliseconds ?? undefined
|
|
5935
5945
|
});
|
package/dist/esm/version.mjs
CHANGED
package/package.json
CHANGED