remotion 4.0.83 → 4.0.84
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/CatchError.d.ts +15 -0
- package/dist/cjs/CatchError.js +68 -0
- package/dist/cjs/get-timeline-clip-name.d.ts +1 -0
- package/dist/cjs/get-timeline-clip-name.js +25 -0
- package/dist/cjs/version.d.ts +1 -1
- package/dist/cjs/version.js +1 -1
- package/dist/cjs/video/seek-until-right.d.ts +8 -0
- package/dist/cjs/video/seek-until-right.js +60 -0
- package/dist/esm/index.mjs +1 -1
- package/dist/esm/version.mjs +1 -1
- package/package.json +3 -3
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
export declare class CatchError extends React.Component {
|
|
3
|
+
state: {
|
|
4
|
+
hasError: boolean;
|
|
5
|
+
};
|
|
6
|
+
constructor(props: {
|
|
7
|
+
children: React.ReactNode;
|
|
8
|
+
});
|
|
9
|
+
static getDerivedStateFromError(error: Error): {
|
|
10
|
+
hasError: boolean;
|
|
11
|
+
};
|
|
12
|
+
componentDidCatch(error: Error, errorInfo: React.ErrorInfo): void;
|
|
13
|
+
render(): React.ReactNode;
|
|
14
|
+
}
|
|
15
|
+
export declare const StackTraceFetcher: () => JSX.Element;
|
|
@@ -0,0 +1,68 @@
|
|
|
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.StackTraceFetcher = exports.CatchError = void 0;
|
|
27
|
+
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
28
|
+
const react_1 = __importStar(require("react"));
|
|
29
|
+
const ErrorThrower = () => {
|
|
30
|
+
const [trigger, setTrigger] = react_1.default.useState(false);
|
|
31
|
+
(0, react_1.useEffect)(() => {
|
|
32
|
+
setTrigger(true);
|
|
33
|
+
}, []);
|
|
34
|
+
if (trigger) {
|
|
35
|
+
// throw new Error('lol');
|
|
36
|
+
}
|
|
37
|
+
return null;
|
|
38
|
+
};
|
|
39
|
+
class CatchError extends react_1.default.Component {
|
|
40
|
+
// eslint-disable-next-line no-useless-constructor
|
|
41
|
+
constructor(props) {
|
|
42
|
+
super(props);
|
|
43
|
+
this.state = { hasError: false };
|
|
44
|
+
}
|
|
45
|
+
static getDerivedStateFromError(error) {
|
|
46
|
+
console.log('DERIVED STATE');
|
|
47
|
+
console.error(error);
|
|
48
|
+
return { hasError: true };
|
|
49
|
+
}
|
|
50
|
+
componentDidCatch(error, errorInfo) {
|
|
51
|
+
console.log('DID CATCH');
|
|
52
|
+
console.error(error, errorInfo);
|
|
53
|
+
}
|
|
54
|
+
render() {
|
|
55
|
+
console.log('state', this);
|
|
56
|
+
if (this.state.hasError) {
|
|
57
|
+
console.log('null');
|
|
58
|
+
return null;
|
|
59
|
+
}
|
|
60
|
+
// @ts-expect-error
|
|
61
|
+
return this.props.children;
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
exports.CatchError = CatchError;
|
|
65
|
+
const StackTraceFetcher = () => {
|
|
66
|
+
return ((0, jsx_runtime_1.jsx)("div", { children: (0, jsx_runtime_1.jsx)(CatchError, { children: (0, jsx_runtime_1.jsx)(ErrorThrower, {}) }) }));
|
|
67
|
+
};
|
|
68
|
+
exports.StackTraceFetcher = StackTraceFetcher;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const getTimelineClipName: (children: React.ReactNode) => string;
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getTimelineClipName = void 0;
|
|
4
|
+
const react_1 = require("react");
|
|
5
|
+
const HIDDEN_NAMES = ['__WEBPACK_DEFAULT_EXPORT__'];
|
|
6
|
+
const getTimelineClipName = (children) => {
|
|
7
|
+
var _a;
|
|
8
|
+
const tree = (_a = react_1.Children.map(children, (ch) => {
|
|
9
|
+
if (!(0, react_1.isValidElement)(ch)) {
|
|
10
|
+
return null;
|
|
11
|
+
}
|
|
12
|
+
// Must be name, not ID
|
|
13
|
+
const name = typeof ch.type !== 'string' && ch.type.name;
|
|
14
|
+
if (name && !HIDDEN_NAMES.includes(name)) {
|
|
15
|
+
return name;
|
|
16
|
+
}
|
|
17
|
+
if (ch.props.children) {
|
|
18
|
+
const chName = (0, exports.getTimelineClipName)(ch.props.children);
|
|
19
|
+
return chName;
|
|
20
|
+
}
|
|
21
|
+
return null;
|
|
22
|
+
})) === null || _a === void 0 ? void 0 : _a.filter(Boolean);
|
|
23
|
+
return (tree === null || tree === void 0 ? void 0 : tree.length) ? tree[0] : '';
|
|
24
|
+
};
|
|
25
|
+
exports.getTimelineClipName = getTimelineClipName;
|
package/dist/cjs/version.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const VERSION = "4.0.
|
|
1
|
+
export declare const VERSION = "4.0.84";
|
package/dist/cjs/version.js
CHANGED
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export declare const seekToTime: (element: HTMLVideoElement, desiredTime: number) => {
|
|
2
|
+
wait: Promise<number>;
|
|
3
|
+
cancel: () => void;
|
|
4
|
+
};
|
|
5
|
+
export declare const seekToTimeMultipleUntilRight: (element: HTMLVideoElement, desiredTime: number, fps: number) => {
|
|
6
|
+
prom: Promise<void>;
|
|
7
|
+
cancel: () => void;
|
|
8
|
+
};
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.seekToTimeMultipleUntilRight = exports.seekToTime = void 0;
|
|
4
|
+
const seekToTime = (element, desiredTime) => {
|
|
5
|
+
element.currentTime = desiredTime;
|
|
6
|
+
let cancel;
|
|
7
|
+
const prom = new Promise((resolve) => {
|
|
8
|
+
cancel = element.requestVideoFrameCallback((_cb, metadata) => {
|
|
9
|
+
resolve(metadata.mediaTime);
|
|
10
|
+
});
|
|
11
|
+
});
|
|
12
|
+
return {
|
|
13
|
+
wait: prom,
|
|
14
|
+
cancel: () => {
|
|
15
|
+
element.cancelVideoFrameCallback(cancel);
|
|
16
|
+
},
|
|
17
|
+
};
|
|
18
|
+
};
|
|
19
|
+
exports.seekToTime = seekToTime;
|
|
20
|
+
const seekToTimeMultipleUntilRight = (element, desiredTime, fps) => {
|
|
21
|
+
const threshold = 1 / fps / 2;
|
|
22
|
+
let currentCancel = () => undefined;
|
|
23
|
+
const prom = new Promise((resolve, reject) => {
|
|
24
|
+
const firstSeek = (0, exports.seekToTime)(element, desiredTime + threshold);
|
|
25
|
+
firstSeek.wait.then((seekedTo) => {
|
|
26
|
+
const difference = Math.abs(desiredTime - seekedTo);
|
|
27
|
+
const ident = Math.random();
|
|
28
|
+
if (difference < threshold) {
|
|
29
|
+
return resolve();
|
|
30
|
+
}
|
|
31
|
+
const sign = desiredTime > seekedTo ? 1 : -1;
|
|
32
|
+
const newSeek = (0, exports.seekToTime)(element, seekedTo + threshold * sign);
|
|
33
|
+
currentCancel = newSeek.cancel;
|
|
34
|
+
newSeek.wait
|
|
35
|
+
.then((newTime) => {
|
|
36
|
+
const newDifference = Math.abs(desiredTime - newTime);
|
|
37
|
+
console.log(ident, 'before', seekedTo, 'after', newTime, 'desired', desiredTime);
|
|
38
|
+
if (newDifference < threshold) {
|
|
39
|
+
return resolve();
|
|
40
|
+
}
|
|
41
|
+
const thirdSeek = (0, exports.seekToTime)(element, desiredTime);
|
|
42
|
+
currentCancel = thirdSeek.cancel;
|
|
43
|
+
thirdSeek.wait.then(() => {
|
|
44
|
+
resolve();
|
|
45
|
+
});
|
|
46
|
+
})
|
|
47
|
+
.catch((err) => {
|
|
48
|
+
reject(err);
|
|
49
|
+
});
|
|
50
|
+
});
|
|
51
|
+
currentCancel = firstSeek.cancel;
|
|
52
|
+
});
|
|
53
|
+
return {
|
|
54
|
+
prom,
|
|
55
|
+
cancel: () => {
|
|
56
|
+
currentCancel();
|
|
57
|
+
},
|
|
58
|
+
};
|
|
59
|
+
};
|
|
60
|
+
exports.seekToTimeMultipleUntilRight = seekToTimeMultipleUntilRight;
|
package/dist/esm/index.mjs
CHANGED
package/dist/esm/version.mjs
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "remotion",
|
|
3
|
-
"version": "4.0.
|
|
3
|
+
"version": "4.0.84",
|
|
4
4
|
"description": "Render videos in React",
|
|
5
5
|
"main": "dist/cjs/index.js",
|
|
6
6
|
"types": "dist/cjs/index.d.ts",
|
|
@@ -28,8 +28,8 @@
|
|
|
28
28
|
"eslint": "8.42.0",
|
|
29
29
|
"eslint-plugin-require-extensions": "^0.1.2",
|
|
30
30
|
"jsdom": "21.1.0",
|
|
31
|
-
"prettier": "3.
|
|
32
|
-
"prettier-plugin-organize-imports": "
|
|
31
|
+
"prettier": "3.1.1",
|
|
32
|
+
"prettier-plugin-organize-imports": "3.2.4",
|
|
33
33
|
"react": "18.2.0",
|
|
34
34
|
"react-dom": "18.2.0",
|
|
35
35
|
"rimraf": "^3.0.2",
|