@remotion/renderer 2.6.15 → 2.6.16
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/.turbo/turbo-build.log +2 -2
- package/.turbo/turbo-lint.log +27 -21
- package/.turbo/turbo-test.log +34 -40
- package/dist/convert-mp3-to-pcm.d.ts +7 -0
- package/dist/convert-mp3-to-pcm.d.ts.map +1 -0
- package/dist/convert-mp3-to-pcm.js +41 -0
- package/dist/convert-mp3-to-pcm.js.map +1 -0
- package/dist/delay-render-embedded-stack.d.ts +3 -0
- package/dist/delay-render-embedded-stack.d.ts.map +1 -0
- package/dist/delay-render-embedded-stack.js +18 -0
- package/dist/delay-render-embedded-stack.js.map +1 -0
- package/dist/error-handling/handle-javascript-exception.d.ts +22 -0
- package/dist/error-handling/handle-javascript-exception.d.ts.map +1 -0
- package/dist/error-handling/handle-javascript-exception.js +73 -0
- package/dist/error-handling/handle-javascript-exception.js.map +1 -0
- package/dist/error-handling/symbolicate-error.d.ts +4 -0
- package/dist/error-handling/symbolicate-error.d.ts.map +1 -0
- package/dist/error-handling/symbolicate-error.js +22 -0
- package/dist/error-handling/symbolicate-error.js.map +1 -0
- package/dist/error-handling/symbolicateable-error.d.ts +17 -0
- package/dist/error-handling/symbolicateable-error.d.ts.map +1 -0
- package/dist/error-handling/symbolicateable-error.js +19 -0
- package/dist/error-handling/symbolicateable-error.js.map +1 -0
- package/dist/handle-javascript-exception.d.ts +32 -0
- package/dist/handle-javascript-exception.d.ts.map +1 -0
- package/dist/handle-javascript-exception.js +82 -0
- package/dist/handle-javascript-exception.js.map +1 -0
- package/dist/handle-null-audio.d.ts +1 -0
- package/dist/handle-null-audio.d.ts.map +1 -0
- package/dist/handle-null-audio.js +2 -0
- package/dist/handle-null-audio.js.map +1 -0
- package/dist/is-local-file.d.ts +2 -0
- package/dist/is-local-file.d.ts.map +1 -0
- package/dist/is-local-file.js +13 -0
- package/dist/is-local-file.js.map +1 -0
- package/dist/parse-browser-error-stack.d.ts +8 -0
- package/dist/parse-browser-error-stack.d.ts.map +1 -0
- package/dist/parse-browser-error-stack.js +88 -0
- package/dist/parse-browser-error-stack.js.map +1 -0
- package/dist/puppeteer-evaluate.d.ts +9 -0
- package/dist/puppeteer-evaluate.d.ts.map +1 -0
- package/dist/puppeteer-evaluate.js +157 -0
- package/dist/puppeteer-evaluate.js.map +1 -0
- package/dist/render-video.d.ts +38 -0
- package/dist/render-video.d.ts.map +1 -0
- package/dist/render-video.js +169 -0
- package/dist/render-video.js.map +1 -0
- package/dist/symbolicate-stacktrace.d.ts +17 -0
- package/dist/symbolicate-stacktrace.d.ts.map +1 -0
- package/dist/symbolicate-stacktrace.js +109 -0
- package/dist/symbolicate-stacktrace.js.map +1 -0
- package/dist/validate-frame.d.ts +2 -0
- package/dist/validate-frame.d.ts.map +1 -0
- package/dist/validate-frame.js +25 -0
- package/dist/validate-frame.js.map +1 -0
- package/dist/validate-quality.d.ts +1 -0
- package/dist/validate-quality.d.ts.map +1 -0
- package/dist/validate-quality.js +2 -0
- package/dist/validate-quality.js.map +1 -0
- package/package.json +6 -6
package/.turbo/turbo-build.log
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
[35m@remotion/renderer:build: [0mcache hit, replaying output [
|
|
1
|
+
[35m@remotion/renderer:build: [0mcache hit, replaying output [2m287ddcee59143d12[0m
|
|
2
2
|
[35m@remotion/renderer:build: [0m
|
|
3
|
-
[35m@remotion/renderer:build: [0m> @remotion/renderer@2.6.
|
|
3
|
+
[35m@remotion/renderer:build: [0m> @remotion/renderer@2.6.15 build /Users/jonathanburger/remotion/packages/renderer
|
|
4
4
|
[35m@remotion/renderer:build: [0m> tsc -d
|
|
5
5
|
[35m@remotion/renderer:build: [0m
|
package/.turbo/turbo-lint.log
CHANGED
|
@@ -1,21 +1,27 @@
|
|
|
1
|
-
[
|
|
2
|
-
[
|
|
3
|
-
[
|
|
4
|
-
[
|
|
5
|
-
[
|
|
6
|
-
[
|
|
7
|
-
[
|
|
8
|
-
[
|
|
9
|
-
[
|
|
10
|
-
[
|
|
11
|
-
[
|
|
12
|
-
[
|
|
13
|
-
[
|
|
14
|
-
[
|
|
15
|
-
[
|
|
16
|
-
[
|
|
17
|
-
[
|
|
18
|
-
[
|
|
19
|
-
[
|
|
20
|
-
[
|
|
21
|
-
[
|
|
1
|
+
[35m@remotion/renderer:lint: [0mcache hit, replaying output [2m531dedd540b40c85[0m
|
|
2
|
+
[35m@remotion/renderer:lint: [0m
|
|
3
|
+
[35m@remotion/renderer:lint: [0m> @remotion/renderer@2.6.15 lint /Users/jonathanburger/remotion/packages/renderer
|
|
4
|
+
[35m@remotion/renderer:lint: [0m> eslint src --ext ts,tsx
|
|
5
|
+
[35m@remotion/renderer:lint: [0m
|
|
6
|
+
[35m@remotion/renderer:lint: [0m
|
|
7
|
+
[35m@remotion/renderer:lint: [0m/Users/jonathanburger/remotion/packages/renderer/src/assets/ffmpeg-volume-expression.ts
|
|
8
|
+
[35m@remotion/renderer:lint: [0m 76:1 warning Unexpected 'todo' comment: 'TODO: Should remove irrelevant frames' no-warning-comments
|
|
9
|
+
[35m@remotion/renderer:lint: [0m
|
|
10
|
+
[35m@remotion/renderer:lint: [0m/Users/jonathanburger/remotion/packages/renderer/src/ensure-frames-in-order.ts
|
|
11
|
+
[35m@remotion/renderer:lint: [0m 21:72 warning Async arrow function has no 'await' expression require-await
|
|
12
|
+
[35m@remotion/renderer:lint: [0m
|
|
13
|
+
[35m@remotion/renderer:lint: [0m/Users/jonathanburger/remotion/packages/renderer/src/error-handling/handle-javascript-exception.ts
|
|
14
|
+
[35m@remotion/renderer:lint: [0m 82:75 warning Async arrow function has no 'await' expression require-await
|
|
15
|
+
[35m@remotion/renderer:lint: [0m
|
|
16
|
+
[35m@remotion/renderer:lint: [0m/Users/jonathanburger/remotion/packages/renderer/src/provide-screenshot.ts
|
|
17
|
+
[35m@remotion/renderer:lint: [0m 18:21 warning Async arrow function has no 'await' expression require-await
|
|
18
|
+
[35m@remotion/renderer:lint: [0m
|
|
19
|
+
[35m@remotion/renderer:lint: [0m/Users/jonathanburger/remotion/packages/renderer/src/test/symolicate-remote-stack.test.ts
|
|
20
|
+
[35m@remotion/renderer:lint: [0m 19:54 warning Async arrow function has no 'await' expression require-await
|
|
21
|
+
[35m@remotion/renderer:lint: [0m
|
|
22
|
+
[35m@remotion/renderer:lint: [0m/Users/jonathanburger/remotion/packages/renderer/src/test/validate-config-stitcher.test.ts
|
|
23
|
+
[35m@remotion/renderer:lint: [0m 17:34 warning Async arrow function has no 'await' expression require-await
|
|
24
|
+
[35m@remotion/renderer:lint: [0m 29:33 warning Async arrow function has no 'await' expression require-await
|
|
25
|
+
[35m@remotion/renderer:lint: [0m
|
|
26
|
+
[35m@remotion/renderer:lint: [0m✖ 7 problems (0 errors, 7 warnings)
|
|
27
|
+
[35m@remotion/renderer:lint: [0m
|
package/.turbo/turbo-test.log
CHANGED
|
@@ -1,40 +1,34 @@
|
|
|
1
|
-
[
|
|
2
|
-
[
|
|
3
|
-
[
|
|
4
|
-
[
|
|
5
|
-
[
|
|
6
|
-
[
|
|
7
|
-
[
|
|
8
|
-
[
|
|
9
|
-
[
|
|
10
|
-
[
|
|
11
|
-
[
|
|
12
|
-
[
|
|
13
|
-
[
|
|
14
|
-
[
|
|
15
|
-
[
|
|
16
|
-
[
|
|
17
|
-
[
|
|
18
|
-
[
|
|
19
|
-
[
|
|
20
|
-
[
|
|
21
|
-
[
|
|
22
|
-
[
|
|
23
|
-
[
|
|
24
|
-
[
|
|
25
|
-
[
|
|
26
|
-
[
|
|
27
|
-
[
|
|
28
|
-
[
|
|
29
|
-
[
|
|
30
|
-
[
|
|
31
|
-
[
|
|
32
|
-
[
|
|
33
|
-
[
|
|
34
|
-
[
|
|
35
|
-
[35m@remotion/renderer:test: [0m
|
|
36
|
-
[35m@remotion/renderer:test: [0mTest Suites: 23 passed, 23 total
|
|
37
|
-
[35m@remotion/renderer:test: [0mTests: 63 passed, 63 total
|
|
38
|
-
[35m@remotion/renderer:test: [0mSnapshots: 0 total
|
|
39
|
-
[35m@remotion/renderer:test: [0mTime: 21.783 s
|
|
40
|
-
[35m@remotion/renderer:test: [0mRan all test suites.
|
|
1
|
+
[34m@remotion/renderer:test: [0mcache hit, replaying output [2ma8b2ea864d05c5da[0m
|
|
2
|
+
[34m@remotion/renderer:test: [0m
|
|
3
|
+
[34m@remotion/renderer:test: [0m> @remotion/renderer@2.6.15 test /Users/jonathanburger/remotion/packages/renderer
|
|
4
|
+
[34m@remotion/renderer:test: [0m> jest
|
|
5
|
+
[34m@remotion/renderer:test: [0m
|
|
6
|
+
[34m@remotion/renderer:test: [0mPASS src/test/parse-ffmpeg-version.test.ts (19.419 s)
|
|
7
|
+
[34m@remotion/renderer:test: [0mPASS src/test/split-assets-into-segments.test.tsx (19.553 s)
|
|
8
|
+
[34m@remotion/renderer:test: [0mPASS src/test/ffmpeg-filters.test.ts (19.579 s)
|
|
9
|
+
[34m@remotion/renderer:test: [0mPASS src/test/ffmpeg-volume-expression.test.ts (19.731 s)
|
|
10
|
+
[34m@remotion/renderer:test: [0mPASS src/test/dont-skip-assets.test.ts (19.584 s)
|
|
11
|
+
[34m@remotion/renderer:test: [0mPASS src/test/serve-url.test.js
|
|
12
|
+
[34m@remotion/renderer:test: [0mPASS src/test/avoid-asset-zero-length.test.ts
|
|
13
|
+
[34m@remotion/renderer:test: [0mPASS src/test/asset-is-used-at-time.test.ts
|
|
14
|
+
[34m@remotion/renderer:test: [0mPASS src/test/asset-compression.test.ts
|
|
15
|
+
[34m@remotion/renderer:test: [0mPASS src/test/handle-weird-file-names.test.ts
|
|
16
|
+
[34m@remotion/renderer:test: [0mPASS src/test/serve-url.test.ts
|
|
17
|
+
[34m@remotion/renderer:test: [0mPASS src/test/get-audio-channels.test.ts
|
|
18
|
+
[34m@remotion/renderer:test: [0mPASS src/test/calculate-atempo.test.ts
|
|
19
|
+
[34m@remotion/renderer:test: [0mPASS src/test/parse-ffmpeg-progress.test.ts
|
|
20
|
+
[34m@remotion/renderer:test: [0mPASS src/test/sanitize-file-path.test.ts
|
|
21
|
+
[34m@remotion/renderer:test: [0mPASS src/test/avoid-ffmpeg-stackoverflow.test.ts
|
|
22
|
+
[34m@remotion/renderer:test: [0mPASS src/test/flatten-volume-array.test.tsx
|
|
23
|
+
[34m@remotion/renderer:test: [0mPASS src/test/webpack-to-serve-url.test.ts
|
|
24
|
+
[34m@remotion/renderer:test: [0mPASS src/test/download-file.test.ts
|
|
25
|
+
[34m@remotion/renderer:test: [0mPASS src/test/validate-config-stitcher.test.ts
|
|
26
|
+
[34m@remotion/renderer:test: [0mPASS src/test/render-still.test.ts
|
|
27
|
+
[34m@remotion/renderer:test: [0mPASS src/test/validate-config.test.ts (22.706 s)
|
|
28
|
+
[34m@remotion/renderer:test: [0mPASS src/test/asset-calculation.test.tsx (29.083 s)
|
|
29
|
+
[34m@remotion/renderer:test: [0m
|
|
30
|
+
[34m@remotion/renderer:test: [0mTest Suites: 23 passed, 23 total
|
|
31
|
+
[34m@remotion/renderer:test: [0mTests: 63 passed, 63 total
|
|
32
|
+
[34m@remotion/renderer:test: [0mSnapshots: 0 total
|
|
33
|
+
[34m@remotion/renderer:test: [0mTime: 33.572 s
|
|
34
|
+
[34m@remotion/renderer:test: [0mRan all test suites.
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export declare const getPcmOutputName: (inputName: string) => string;
|
|
2
|
+
export declare const conversionStarted: {
|
|
3
|
+
[key: string]: boolean;
|
|
4
|
+
};
|
|
5
|
+
export declare const convertMp3ToPcm: (source: string) => Promise<string>;
|
|
6
|
+
export declare const clearMp3Conversions: () => void;
|
|
7
|
+
//# sourceMappingURL=convert-mp3-to-pcm.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"convert-mp3-to-pcm.d.ts","sourceRoot":"","sources":["../src/convert-mp3-to-pcm.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,gBAAgB,cAAe,MAAM,WAMjD,CAAC;AAQF,eAAO,MAAM,iBAAiB,EAAE;IAAC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;CAAM,CAAC;AAE9D,eAAO,MAAM,eAAe,WAAkB,MAAM,oBAcnD,CAAC;AAEF,eAAO,MAAM,mBAAmB,YAI/B,CAAC"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// For the h264-mkv format, we need to convert an MP3 file to PCM first
|
|
3
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
4
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
5
|
+
};
|
|
6
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
+
exports.clearMp3Conversions = exports.convertMp3ToPcm = exports.conversionStarted = exports.getPcmOutputName = void 0;
|
|
8
|
+
const execa_1 = __importDefault(require("execa"));
|
|
9
|
+
const path_1 = __importDefault(require("path"));
|
|
10
|
+
const getPcmOutputName = (inputName) => {
|
|
11
|
+
const dirname = path_1.default.dirname(inputName);
|
|
12
|
+
const extension = path_1.default.extname(inputName);
|
|
13
|
+
const filename = path_1.default.basename(inputName, extension);
|
|
14
|
+
return path_1.default.join(dirname, `${filename}-converted.wav`);
|
|
15
|
+
};
|
|
16
|
+
exports.getPcmOutputName = getPcmOutputName;
|
|
17
|
+
const isMp3 = async (source) => {
|
|
18
|
+
const { stderr } = await (0, execa_1.default)('ffprobe', [source]);
|
|
19
|
+
return stderr.includes('Audio: mp3');
|
|
20
|
+
};
|
|
21
|
+
exports.conversionStarted = {};
|
|
22
|
+
const convertMp3ToPcm = async (source) => {
|
|
23
|
+
const outname = (0, exports.getPcmOutputName)(source);
|
|
24
|
+
if (!(await isMp3(source))) {
|
|
25
|
+
return source;
|
|
26
|
+
}
|
|
27
|
+
if (exports.conversionStarted[source]) {
|
|
28
|
+
return outname;
|
|
29
|
+
}
|
|
30
|
+
exports.conversionStarted[source] = true;
|
|
31
|
+
await (0, execa_1.default)('ffmpeg', ['-y', '-i', source, (0, exports.getPcmOutputName)(source)]);
|
|
32
|
+
return outname;
|
|
33
|
+
};
|
|
34
|
+
exports.convertMp3ToPcm = convertMp3ToPcm;
|
|
35
|
+
const clearMp3Conversions = () => {
|
|
36
|
+
Object.keys(exports.conversionStarted).forEach((key) => {
|
|
37
|
+
delete exports.conversionStarted[key];
|
|
38
|
+
});
|
|
39
|
+
};
|
|
40
|
+
exports.clearMp3Conversions = clearMp3Conversions;
|
|
41
|
+
//# sourceMappingURL=convert-mp3-to-pcm.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"convert-mp3-to-pcm.js","sourceRoot":"","sources":["../src/convert-mp3-to-pcm.ts"],"names":[],"mappings":";AAAA,uEAAuE;;;;;;AAEvE,kDAA0B;AAC1B,gDAAwB;AAEjB,MAAM,gBAAgB,GAAG,CAAC,SAAiB,EAAE,EAAE;IACrD,MAAM,OAAO,GAAG,cAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IACxC,MAAM,SAAS,GAAG,cAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IAC1C,MAAM,QAAQ,GAAG,cAAI,CAAC,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;IAErD,OAAO,cAAI,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,QAAQ,gBAAgB,CAAC,CAAC;AACxD,CAAC,CAAC;AANW,QAAA,gBAAgB,oBAM3B;AAEF,MAAM,KAAK,GAAG,KAAK,EAAE,MAAc,EAAE,EAAE;IACtC,MAAM,EAAC,MAAM,EAAC,GAAG,MAAM,IAAA,eAAK,EAAC,SAAS,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;IAElD,OAAO,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;AACtC,CAAC,CAAC;AAEW,QAAA,iBAAiB,GAA6B,EAAE,CAAC;AAEvD,MAAM,eAAe,GAAG,KAAK,EAAE,MAAc,EAAE,EAAE;IACvD,MAAM,OAAO,GAAG,IAAA,wBAAgB,EAAC,MAAM,CAAC,CAAC;IACzC,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE;QAC3B,OAAO,MAAM,CAAC;KACd;IAED,IAAI,yBAAiB,CAAC,MAAM,CAAC,EAAE;QAC9B,OAAO,OAAO,CAAC;KACf;IAED,yBAAiB,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC;IAEjC,MAAM,IAAA,eAAK,EAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,IAAA,wBAAgB,EAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IACtE,OAAO,OAAO,CAAC;AAChB,CAAC,CAAC;AAdW,QAAA,eAAe,mBAc1B;AAEK,MAAM,mBAAmB,GAAG,GAAG,EAAE;IACvC,MAAM,CAAC,IAAI,CAAC,yBAAiB,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;QAC9C,OAAO,yBAAiB,CAAC,GAAG,CAAC,CAAC;IAC/B,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC;AAJW,QAAA,mBAAmB,uBAI9B"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"delay-render-embedded-stack.d.ts","sourceRoot":"","sources":["../src/delay-render-embedded-stack.ts"],"names":[],"mappings":"AACA,OAAO,EAEN,wBAAwB,EACxB,MAAM,6BAA6B,CAAC;AAErC,eAAO,MAAM,6BAA6B,YAChC,MAAM,KACb,wBAAwB,EAAE,GAAG,IAY/B,CAAC"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.parseDelayRenderEmbeddedStack = void 0;
|
|
4
|
+
const remotion_1 = require("remotion");
|
|
5
|
+
const parse_browser_error_stack_1 = require("./parse-browser-error-stack");
|
|
6
|
+
const parseDelayRenderEmbeddedStack = (message) => {
|
|
7
|
+
const index = message.indexOf(remotion_1.Internals.DELAY_RENDER_CALLSTACK_TOKEN);
|
|
8
|
+
if (index === -1) {
|
|
9
|
+
return null;
|
|
10
|
+
}
|
|
11
|
+
const msg = message
|
|
12
|
+
.substring(index + remotion_1.Internals.DELAY_RENDER_CALLSTACK_TOKEN.length)
|
|
13
|
+
.trim();
|
|
14
|
+
const parsed = (0, parse_browser_error_stack_1.parseStack)(msg.split('\n'));
|
|
15
|
+
return parsed;
|
|
16
|
+
};
|
|
17
|
+
exports.parseDelayRenderEmbeddedStack = parseDelayRenderEmbeddedStack;
|
|
18
|
+
//# sourceMappingURL=delay-render-embedded-stack.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"delay-render-embedded-stack.js","sourceRoot":"","sources":["../src/delay-render-embedded-stack.ts"],"names":[],"mappings":";;;AAAA,uCAAmC;AACnC,2EAGqC;AAE9B,MAAM,6BAA6B,GAAG,CAC5C,OAAe,EACqB,EAAE;IACtC,MAAM,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,oBAAS,CAAC,4BAA4B,CAAC,CAAC;IACtE,IAAI,KAAK,KAAK,CAAC,CAAC,EAAE;QACjB,OAAO,IAAI,CAAC;KACZ;IAED,MAAM,GAAG,GAAG,OAAO;SACjB,SAAS,CAAC,KAAK,GAAG,oBAAS,CAAC,4BAA4B,CAAC,MAAM,CAAC;SAChE,IAAI,EAAE,CAAC;IAET,MAAM,MAAM,GAAG,IAAA,sCAAU,EAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;IAC3C,OAAO,MAAM,CAAC;AACf,CAAC,CAAC;AAdW,QAAA,6BAA6B,iCAcxC"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { Page } from 'puppeteer-core';
|
|
2
|
+
import { SymbolicatedStackFrame } from '../symbolicate-stacktrace';
|
|
3
|
+
export declare class ErrorWithStackFrame extends Error {
|
|
4
|
+
symbolicatedStackFrames: SymbolicatedStackFrame[] | null;
|
|
5
|
+
frame: number | null;
|
|
6
|
+
name: string;
|
|
7
|
+
delayRenderCall: SymbolicatedStackFrame[] | null;
|
|
8
|
+
constructor({ message, symbolicatedStackFrames, frame, name, delayRenderCall, }: {
|
|
9
|
+
message: string;
|
|
10
|
+
symbolicatedStackFrames: SymbolicatedStackFrame[] | null;
|
|
11
|
+
frame: number | null;
|
|
12
|
+
name: string;
|
|
13
|
+
delayRenderCall: SymbolicatedStackFrame[] | null;
|
|
14
|
+
});
|
|
15
|
+
}
|
|
16
|
+
export declare const removeDelayRenderStack: (message: string) => string;
|
|
17
|
+
export declare const handleJavascriptException: ({ page, onError, frame, }: {
|
|
18
|
+
page: Page;
|
|
19
|
+
frame: number | null;
|
|
20
|
+
onError: (err: Error) => void;
|
|
21
|
+
}) => () => void;
|
|
22
|
+
//# sourceMappingURL=handle-javascript-exception.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"handle-javascript-exception.d.ts","sourceRoot":"","sources":["../../src/error-handling/handle-javascript-exception.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,IAAI,EAAW,MAAM,gBAAgB,CAAC;AAG1D,OAAO,EAAC,sBAAsB,EAAC,MAAM,2BAA2B,CAAC;AAGjE,qBAAa,mBAAoB,SAAQ,KAAK;IAC7C,uBAAuB,EAAE,sBAAsB,EAAE,GAAG,IAAI,CAAC;IACzD,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,eAAe,EAAE,sBAAsB,EAAE,GAAG,IAAI,CAAC;gBAErC,EACX,OAAO,EACP,uBAAuB,EACvB,KAAK,EACL,IAAI,EACJ,eAAe,GACf,EAAE;QACF,OAAO,EAAE,MAAM,CAAC;QAChB,uBAAuB,EAAE,sBAAsB,EAAE,GAAG,IAAI,CAAC;QACzD,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;QACrB,IAAI,EAAE,MAAM,CAAC;QACb,eAAe,EAAE,sBAAsB,EAAE,GAAG,IAAI,CAAC;KACjD;CAOD;AAmBD,eAAO,MAAM,sBAAsB,YAAa,MAAM,WAOrD,CAAC;AAaF,eAAO,MAAM,yBAAyB;UAK/B,IAAI;WACH,MAAM,GAAG,IAAI;mBACL,KAAK,KAAK,IAAI;gBAmC7B,CAAC"}
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.handleJavascriptException = exports.removeDelayRenderStack = exports.ErrorWithStackFrame = void 0;
|
|
4
|
+
const remotion_1 = require("remotion");
|
|
5
|
+
const symbolicateable_error_1 = require("./symbolicateable-error");
|
|
6
|
+
class ErrorWithStackFrame extends Error {
|
|
7
|
+
constructor({ message, symbolicatedStackFrames, frame, name, delayRenderCall, }) {
|
|
8
|
+
super(message);
|
|
9
|
+
this.symbolicatedStackFrames = symbolicatedStackFrames;
|
|
10
|
+
this.frame = frame;
|
|
11
|
+
this.name = name;
|
|
12
|
+
this.delayRenderCall = delayRenderCall;
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
exports.ErrorWithStackFrame = ErrorWithStackFrame;
|
|
16
|
+
const cleanUpErrorMessage = (exception) => {
|
|
17
|
+
var _a, _b, _c, _d;
|
|
18
|
+
let errorMessage = (_a = exception.exceptionDetails.exception) === null || _a === void 0 ? void 0 : _a.description;
|
|
19
|
+
const errorType = (_b = exception.exceptionDetails.exception) === null || _b === void 0 ? void 0 : _b.className;
|
|
20
|
+
const prefix = `${errorType}: `;
|
|
21
|
+
if (errorMessage.startsWith(prefix)) {
|
|
22
|
+
errorMessage = errorMessage.substring(prefix.length);
|
|
23
|
+
}
|
|
24
|
+
const frames = (_d = (_c = exception.exceptionDetails.stackTrace) === null || _c === void 0 ? void 0 : _c.callFrames.length) !== null && _d !== void 0 ? _d : 0;
|
|
25
|
+
const split = errorMessage.split('\n');
|
|
26
|
+
return split.slice(0, split.length - frames).join('\n');
|
|
27
|
+
};
|
|
28
|
+
const removeDelayRenderStack = (message) => {
|
|
29
|
+
const index = message.indexOf(remotion_1.Internals.DELAY_RENDER_CALLSTACK_TOKEN);
|
|
30
|
+
if (index === -1) {
|
|
31
|
+
return message;
|
|
32
|
+
}
|
|
33
|
+
return message.substring(0, index);
|
|
34
|
+
};
|
|
35
|
+
exports.removeDelayRenderStack = removeDelayRenderStack;
|
|
36
|
+
const callFrameToStackFrame = (callFrame) => {
|
|
37
|
+
return {
|
|
38
|
+
columnNumber: callFrame.columnNumber,
|
|
39
|
+
fileName: callFrame.url,
|
|
40
|
+
functionName: callFrame.functionName,
|
|
41
|
+
lineNumber: callFrame.lineNumber,
|
|
42
|
+
};
|
|
43
|
+
};
|
|
44
|
+
const handleJavascriptException = ({ page, onError, frame, }) => {
|
|
45
|
+
const client = page._client;
|
|
46
|
+
const handler = async (exception) => {
|
|
47
|
+
var _a, _b, _c;
|
|
48
|
+
const rawErrorMessage = (_a = exception.exceptionDetails.exception) === null || _a === void 0 ? void 0 : _a.description;
|
|
49
|
+
const cleanErrorMessage = cleanUpErrorMessage(exception);
|
|
50
|
+
if (!exception.exceptionDetails.stackTrace) {
|
|
51
|
+
const err = new Error((0, exports.removeDelayRenderStack)(cleanErrorMessage));
|
|
52
|
+
err.stack = rawErrorMessage;
|
|
53
|
+
onError(err);
|
|
54
|
+
return;
|
|
55
|
+
}
|
|
56
|
+
const errorType = (_b = exception.exceptionDetails.exception) === null || _b === void 0 ? void 0 : _b.className;
|
|
57
|
+
const symbolicatedErr = new symbolicateable_error_1.SymbolicateableError({
|
|
58
|
+
message: (0, exports.removeDelayRenderStack)(cleanErrorMessage),
|
|
59
|
+
stackFrame: exception.exceptionDetails.stackTrace
|
|
60
|
+
.callFrames.map((f) => callFrameToStackFrame(f)),
|
|
61
|
+
frame,
|
|
62
|
+
name: errorType,
|
|
63
|
+
stack: (_c = exception.exceptionDetails.exception) === null || _c === void 0 ? void 0 : _c.description,
|
|
64
|
+
});
|
|
65
|
+
onError(symbolicatedErr);
|
|
66
|
+
};
|
|
67
|
+
client.on('Runtime.exceptionThrown', handler);
|
|
68
|
+
return () => {
|
|
69
|
+
client.off('Runtime.exceptionThrown', handler);
|
|
70
|
+
};
|
|
71
|
+
};
|
|
72
|
+
exports.handleJavascriptException = handleJavascriptException;
|
|
73
|
+
//# sourceMappingURL=handle-javascript-exception.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"handle-javascript-exception.js","sourceRoot":"","sources":["../../src/error-handling/handle-javascript-exception.ts"],"names":[],"mappings":";;;AACA,uCAAmC;AAGnC,mEAA6D;AAE7D,MAAa,mBAAoB,SAAQ,KAAK;IAM7C,YAAY,EACX,OAAO,EACP,uBAAuB,EACvB,KAAK,EACL,IAAI,EACJ,eAAe,GAOf;QACA,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,uBAAuB,GAAG,uBAAuB,CAAC;QACvD,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,eAAe,GAAG,eAAe,CAAC;IACxC,CAAC;CACD;AAzBD,kDAyBC;AAED,MAAM,mBAAmB,GAAG,CAC3B,SAAgD,EAC/C,EAAE;;IACH,IAAI,YAAY,GAAG,MAAA,SAAS,CAAC,gBAAgB,CAAC,SAAS,0CACpD,WAAqB,CAAC;IACzB,MAAM,SAAS,GAAG,MAAA,SAAS,CAAC,gBAAgB,CAAC,SAAS,0CAAE,SAAmB,CAAC;IAC5E,MAAM,MAAM,GAAG,GAAG,SAAS,IAAI,CAAC;IAEhC,IAAI,YAAY,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE;QACpC,YAAY,GAAG,YAAY,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;KACrD;IAED,MAAM,MAAM,GAAG,MAAA,MAAA,SAAS,CAAC,gBAAgB,CAAC,UAAU,0CAAE,UAAU,CAAC,MAAM,mCAAI,CAAC,CAAC;IAC7E,MAAM,KAAK,GAAG,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACvC,OAAO,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACzD,CAAC,CAAC;AAEK,MAAM,sBAAsB,GAAG,CAAC,OAAe,EAAE,EAAE;IACzD,MAAM,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,oBAAS,CAAC,4BAA4B,CAAC,CAAC;IACtE,IAAI,KAAK,KAAK,CAAC,CAAC,EAAE;QACjB,OAAO,OAAO,CAAC;KACf;IAED,OAAO,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;AACpC,CAAC,CAAC;AAPW,QAAA,sBAAsB,0BAOjC;AAEF,MAAM,qBAAqB,GAAG,CAC7B,SAAqC,EACV,EAAE;IAC7B,OAAO;QACN,YAAY,EAAE,SAAS,CAAC,YAAY;QACpC,QAAQ,EAAE,SAAS,CAAC,GAAG;QACvB,YAAY,EAAE,SAAS,CAAC,YAAY;QACpC,UAAU,EAAE,SAAS,CAAC,UAAU;KAChC,CAAC;AACH,CAAC,CAAC;AAEK,MAAM,yBAAyB,GAAG,CAAC,EACzC,IAAI,EACJ,OAAO,EACP,KAAK,GAKL,EAAE,EAAE;IACJ,MAAM,MAAM,GAAI,IAAyC,CAAC,OAAO,CAAC;IAElE,MAAM,OAAO,GAAG,KAAK,EAAE,SAAgD,EAAE,EAAE;;QAC1E,MAAM,eAAe,GAAG,MAAA,SAAS,CAAC,gBAAgB,CAAC,SAAS,0CACzD,WAAqB,CAAC;QACzB,MAAM,iBAAiB,GAAG,mBAAmB,CAAC,SAAS,CAAC,CAAC;QACzD,IAAI,CAAC,SAAS,CAAC,gBAAgB,CAAC,UAAU,EAAE;YAC3C,MAAM,GAAG,GAAG,IAAI,KAAK,CAAC,IAAA,8BAAsB,EAAC,iBAAiB,CAAC,CAAC,CAAC;YACjE,GAAG,CAAC,KAAK,GAAG,eAAe,CAAC;YAC5B,OAAO,CAAC,GAAG,CAAC,CAAC;YACb,OAAO;SACP;QAED,MAAM,SAAS,GAAG,MAAA,SAAS,CAAC,gBAAgB,CAAC,SAAS,0CAAE,SAAmB,CAAC;QAE5E,MAAM,eAAe,GAAG,IAAI,4CAAoB,CAAC;YAChD,OAAO,EAAE,IAAA,8BAAsB,EAAC,iBAAiB,CAAC;YAClD,UAAU,EACT,SAAS,CAAC,gBAAgB,CAAC,UAAU;iBACnC,UACF,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;YACtC,KAAK;YACL,IAAI,EAAE,SAAS;YACf,KAAK,EAAE,MAAA,SAAS,CAAC,gBAAgB,CAAC,SAAS,0CAAE,WAAW;SACxD,CAAC,CAAC;QACH,OAAO,CAAC,eAAe,CAAC,CAAC;IAC1B,CAAC,CAAC;IAEF,MAAM,CAAC,EAAE,CAAC,yBAAyB,EAAE,OAAO,CAAC,CAAC;IAE9C,OAAO,GAAG,EAAE;QACX,MAAM,CAAC,GAAG,CAAC,yBAAyB,EAAE,OAAO,CAAC,CAAC;IAChD,CAAC,CAAC;AACH,CAAC,CAAC;AA1CW,QAAA,yBAAyB,6BA0CpC"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { ErrorWithStackFrame } from './handle-javascript-exception';
|
|
2
|
+
import { SymbolicateableError } from './symbolicateable-error';
|
|
3
|
+
export declare const symbolicateError: (symbolicateableError: SymbolicateableError) => Promise<ErrorWithStackFrame>;
|
|
4
|
+
//# sourceMappingURL=symbolicate-error.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"symbolicate-error.d.ts","sourceRoot":"","sources":["../../src/error-handling/symbolicate-error.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,mBAAmB,EAAC,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAAC,oBAAoB,EAAC,MAAM,yBAAyB,CAAC;AAE7D,eAAO,MAAM,gBAAgB,yBACN,oBAAoB,KACxC,QAAQ,mBAAmB,CAgB7B,CAAC"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.symbolicateError = void 0;
|
|
4
|
+
const symbolicate_stacktrace_1 = require("../symbolicate-stacktrace");
|
|
5
|
+
const handle_javascript_exception_1 = require("./handle-javascript-exception");
|
|
6
|
+
const symbolicateError = async (symbolicateableError) => {
|
|
7
|
+
const { delayRenderCall, stackFrame } = symbolicateableError;
|
|
8
|
+
const [mainErrorFrames, delayRenderFrames] = await Promise.all([
|
|
9
|
+
stackFrame ? (0, symbolicate_stacktrace_1.symbolicateStackTrace)(stackFrame) : null,
|
|
10
|
+
delayRenderCall ? (0, symbolicate_stacktrace_1.symbolicateStackTrace)(delayRenderCall) : null,
|
|
11
|
+
]);
|
|
12
|
+
const symbolicatedErr = new handle_javascript_exception_1.ErrorWithStackFrame({
|
|
13
|
+
message: symbolicateableError.message,
|
|
14
|
+
symbolicatedStackFrames: mainErrorFrames,
|
|
15
|
+
frame: symbolicateableError.frame,
|
|
16
|
+
name: symbolicateableError.name,
|
|
17
|
+
delayRenderCall: delayRenderFrames,
|
|
18
|
+
});
|
|
19
|
+
return symbolicatedErr;
|
|
20
|
+
};
|
|
21
|
+
exports.symbolicateError = symbolicateError;
|
|
22
|
+
//# sourceMappingURL=symbolicate-error.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"symbolicate-error.js","sourceRoot":"","sources":["../../src/error-handling/symbolicate-error.ts"],"names":[],"mappings":";;;AAAA,sEAAgE;AAChE,+EAAkE;AAG3D,MAAM,gBAAgB,GAAG,KAAK,EACpC,oBAA0C,EACX,EAAE;IACjC,MAAM,EAAC,eAAe,EAAE,UAAU,EAAC,GAAG,oBAAoB,CAAC;IAC3D,MAAM,CAAC,eAAe,EAAE,iBAAiB,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;QAC9D,UAAU,CAAC,CAAC,CAAC,IAAA,8CAAqB,EAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI;QACrD,eAAe,CAAC,CAAC,CAAC,IAAA,8CAAqB,EAAC,eAAe,CAAC,CAAC,CAAC,CAAC,IAAI;KAC/D,CAAC,CAAC;IAEH,MAAM,eAAe,GAAG,IAAI,iDAAmB,CAAC;QAC/C,OAAO,EAAE,oBAAoB,CAAC,OAAO;QACrC,uBAAuB,EAAE,eAAe;QACxC,KAAK,EAAE,oBAAoB,CAAC,KAAK;QACjC,IAAI,EAAE,oBAAoB,CAAC,IAAI;QAC/B,eAAe,EAAE,iBAAiB;KAClC,CAAC,CAAC;IAEH,OAAO,eAAe,CAAC;AACxB,CAAC,CAAC;AAlBW,QAAA,gBAAgB,oBAkB3B"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* A symbolicateable error is an error that can be symolicated by fetching the original sources. By throwing a symbolicateable error, Remotion CLI will attempt to symplicate it
|
|
3
|
+
*/
|
|
4
|
+
import { UnsymbolicatedStackFrame } from '../parse-browser-error-stack';
|
|
5
|
+
export declare class SymbolicateableError extends Error {
|
|
6
|
+
stackFrame: UnsymbolicatedStackFrame[] | null;
|
|
7
|
+
delayRenderCall: UnsymbolicatedStackFrame[] | null;
|
|
8
|
+
frame: number | null;
|
|
9
|
+
constructor({ message, stack, stackFrame, frame, name, }: {
|
|
10
|
+
message: string;
|
|
11
|
+
stack: string | undefined;
|
|
12
|
+
frame: number | null;
|
|
13
|
+
name: string;
|
|
14
|
+
stackFrame: UnsymbolicatedStackFrame[] | null;
|
|
15
|
+
});
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=symbolicateable-error.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"symbolicateable-error.d.ts","sourceRoot":"","sources":["../../src/error-handling/symbolicateable-error.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EAAC,wBAAwB,EAAC,MAAM,8BAA8B,CAAC;AAEtE,qBAAa,oBAAqB,SAAQ,KAAK;IAC9C,UAAU,EAAE,wBAAwB,EAAE,GAAG,IAAI,CAAC;IAC9C,eAAe,EAAE,wBAAwB,EAAE,GAAG,IAAI,CAAC;IACnD,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;gBAET,EACX,OAAO,EACP,KAAK,EACL,UAAU,EACV,KAAK,EACL,IAAI,GACJ,EAAE;QACF,OAAO,EAAE,MAAM,CAAC;QAChB,KAAK,EAAE,MAAM,GAAG,SAAS,CAAC;QAC1B,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;QACrB,IAAI,EAAE,MAAM,CAAC;QACb,UAAU,EAAE,wBAAwB,EAAE,GAAG,IAAI,CAAC;KAC9C;CAQD"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* A symbolicateable error is an error that can be symolicated by fetching the original sources. By throwing a symbolicateable error, Remotion CLI will attempt to symplicate it
|
|
4
|
+
*/
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.SymbolicateableError = void 0;
|
|
7
|
+
const delay_render_embedded_stack_1 = require("../delay-render-embedded-stack");
|
|
8
|
+
class SymbolicateableError extends Error {
|
|
9
|
+
constructor({ message, stack, stackFrame, frame, name, }) {
|
|
10
|
+
super(message);
|
|
11
|
+
this.stack = stack;
|
|
12
|
+
this.stackFrame = stackFrame;
|
|
13
|
+
this.frame = frame;
|
|
14
|
+
this.name = name;
|
|
15
|
+
this.delayRenderCall = stack ? (0, delay_render_embedded_stack_1.parseDelayRenderEmbeddedStack)(stack) : null;
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
exports.SymbolicateableError = SymbolicateableError;
|
|
19
|
+
//# sourceMappingURL=symbolicateable-error.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"symbolicateable-error.js","sourceRoot":"","sources":["../../src/error-handling/symbolicateable-error.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAEH,gFAA6E;AAG7E,MAAa,oBAAqB,SAAQ,KAAK;IAK9C,YAAY,EACX,OAAO,EACP,KAAK,EACL,UAAU,EACV,KAAK,EACL,IAAI,GAOJ;QACA,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC,CAAC,CAAC,IAAA,2DAA6B,EAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAC5E,CAAC;CACD;AAzBD,oDAyBC"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import {Page} from 'puppeteer-core';
|
|
2
|
+
import {SymbolicatedStackFrame} from '../symbolicate-stacktrace';
|
|
3
|
+
export declare class ErrorWithStackFrame extends Error {
|
|
4
|
+
stackFrames: SymbolicatedStackFrame[];
|
|
5
|
+
frame: number | null;
|
|
6
|
+
errorType: string;
|
|
7
|
+
delayRenderCall: SymbolicatedStackFrame[] | null;
|
|
8
|
+
constructor({
|
|
9
|
+
message,
|
|
10
|
+
_stackFrames,
|
|
11
|
+
_frame,
|
|
12
|
+
_errorType,
|
|
13
|
+
_delayRenderCall,
|
|
14
|
+
}: {
|
|
15
|
+
message: string;
|
|
16
|
+
_stackFrames: SymbolicatedStackFrame[];
|
|
17
|
+
_frame: number | null;
|
|
18
|
+
_errorType: string;
|
|
19
|
+
_delayRenderCall: SymbolicatedStackFrame[] | null;
|
|
20
|
+
});
|
|
21
|
+
}
|
|
22
|
+
export declare const removeDelayRenderStack: (message: string) => string;
|
|
23
|
+
export declare const handleJavascriptException: ({
|
|
24
|
+
page,
|
|
25
|
+
onError,
|
|
26
|
+
frame,
|
|
27
|
+
}: {
|
|
28
|
+
page: Page;
|
|
29
|
+
frame: number | null;
|
|
30
|
+
onError: (err: Error) => void;
|
|
31
|
+
}) => () => void;
|
|
32
|
+
// # sourceMappingURL=handle-javascript-exception.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"handle-javascript-exception.d.ts","sourceRoot":"","sources":["../src/handle-javascript-exception.ts"],"names":[],"mappings":"AACA,OAAO,EAAa,IAAI,EAAW,MAAM,gBAAgB,CAAC;AAG1D,OAAO,EACN,sBAAsB,EAEtB,MAAM,0BAA0B,CAAC;AAElC,qBAAa,mBAAoB,SAAQ,KAAK;IAC7C,WAAW,EAAE,sBAAsB,EAAE,CAAC;IACtC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,eAAe,EAAE,sBAAsB,EAAE,GAAG,IAAI,CAAC;gBAErC,EACX,OAAO,EACP,YAAY,EACZ,MAAM,EACN,UAAU,EACV,gBAAgB,GAChB,EAAE;QACF,OAAO,EAAE,MAAM,CAAC;QAChB,YAAY,EAAE,sBAAsB,EAAE,CAAC;QACvC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;QACtB,UAAU,EAAE,MAAM,CAAC;QACnB,gBAAgB,EAAE,sBAAsB,EAAE,GAAG,IAAI,CAAC;KAClD;CAOD;AAmBD,eAAO,MAAM,sBAAsB,YAAa,MAAM,WAOrD,CAAC;AAaF,eAAO,MAAM,yBAAyB;UAK/B,IAAI;WACH,MAAM,GAAG,IAAI;mBACL,KAAK,KAAK,IAAI;gBA8C7B,CAAC"}
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.handleJavascriptException = exports.removeDelayRenderStack = exports.ErrorWithStackFrame = void 0;
|
|
4
|
+
const remotion_1 = require("remotion");
|
|
5
|
+
const delay_render_embedded_stack_1 = require("./delay-render-embedded-stack");
|
|
6
|
+
const symbolicate_stacktrace_1 = require("./symbolicate-stacktrace");
|
|
7
|
+
class ErrorWithStackFrame extends Error {
|
|
8
|
+
constructor({ message, _stackFrames, _frame, _errorType, _delayRenderCall, }) {
|
|
9
|
+
super(message);
|
|
10
|
+
this.stackFrames = _stackFrames;
|
|
11
|
+
this.frame = _frame;
|
|
12
|
+
this.errorType = _errorType;
|
|
13
|
+
this.delayRenderCall = _delayRenderCall;
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
exports.ErrorWithStackFrame = ErrorWithStackFrame;
|
|
17
|
+
const cleanUpErrorMessage = (exception) => {
|
|
18
|
+
var _a, _b, _c, _d;
|
|
19
|
+
let errorMessage = (_a = exception.exceptionDetails.exception) === null || _a === void 0 ? void 0 : _a.description;
|
|
20
|
+
const errorType = (_b = exception.exceptionDetails.exception) === null || _b === void 0 ? void 0 : _b.className;
|
|
21
|
+
const prefix = `${errorType}: `;
|
|
22
|
+
if (errorMessage.startsWith(prefix)) {
|
|
23
|
+
errorMessage = errorMessage.substring(prefix.length);
|
|
24
|
+
}
|
|
25
|
+
const frames = (_d = (_c = exception.exceptionDetails.stackTrace) === null || _c === void 0 ? void 0 : _c.callFrames.length) !== null && _d !== void 0 ? _d : 0;
|
|
26
|
+
const split = errorMessage.split('\n');
|
|
27
|
+
return split.slice(0, split.length - frames).join('\n');
|
|
28
|
+
};
|
|
29
|
+
const removeDelayRenderStack = (message) => {
|
|
30
|
+
const index = message.indexOf(remotion_1.DELAY_RENDER_CALLSTACK_TOKEN);
|
|
31
|
+
if (index === -1) {
|
|
32
|
+
return message;
|
|
33
|
+
}
|
|
34
|
+
return message.substring(0, index);
|
|
35
|
+
};
|
|
36
|
+
exports.removeDelayRenderStack = removeDelayRenderStack;
|
|
37
|
+
const callFrameToStackFrame = (callFrame) => {
|
|
38
|
+
return {
|
|
39
|
+
columnNumber: callFrame.columnNumber,
|
|
40
|
+
fileName: callFrame.url,
|
|
41
|
+
functionName: callFrame.functionName,
|
|
42
|
+
lineNumber: callFrame.lineNumber,
|
|
43
|
+
};
|
|
44
|
+
};
|
|
45
|
+
const handleJavascriptException = ({ page, onError, frame, }) => {
|
|
46
|
+
const client = page._client;
|
|
47
|
+
const handler = async (exception) => {
|
|
48
|
+
var _a, _b;
|
|
49
|
+
const rawErrorMessage = (_a = exception.exceptionDetails.exception) === null || _a === void 0 ? void 0 : _a.description;
|
|
50
|
+
const cleanErrorMessage = cleanUpErrorMessage(exception);
|
|
51
|
+
const err = new Error((0, exports.removeDelayRenderStack)(cleanErrorMessage));
|
|
52
|
+
err.stack = rawErrorMessage;
|
|
53
|
+
if (!exception.exceptionDetails.stackTrace) {
|
|
54
|
+
onError(err);
|
|
55
|
+
return;
|
|
56
|
+
}
|
|
57
|
+
const errorType = (_b = exception.exceptionDetails.exception) === null || _b === void 0 ? void 0 : _b.className;
|
|
58
|
+
const delayRenderStack = await (0, delay_render_embedded_stack_1.parseDelayRenderEmbeddedStack)(cleanErrorMessage);
|
|
59
|
+
try {
|
|
60
|
+
const sym = await (0, symbolicate_stacktrace_1.symbolicateStackTrace)(exception.exceptionDetails.stackTrace
|
|
61
|
+
.callFrames.map((f) => callFrameToStackFrame(f)));
|
|
62
|
+
const symbolicatedErr = new ErrorWithStackFrame({
|
|
63
|
+
message: (0, exports.removeDelayRenderStack)(cleanErrorMessage),
|
|
64
|
+
_stackFrames: sym,
|
|
65
|
+
_frame: frame,
|
|
66
|
+
_errorType: errorType,
|
|
67
|
+
_delayRenderCall: delayRenderStack,
|
|
68
|
+
});
|
|
69
|
+
onError(symbolicatedErr);
|
|
70
|
+
}
|
|
71
|
+
catch (errorVisualizingError) {
|
|
72
|
+
console.log('error symbolicating error:', errorVisualizingError);
|
|
73
|
+
onError(err);
|
|
74
|
+
}
|
|
75
|
+
};
|
|
76
|
+
client.on('Runtime.exceptionThrown', handler);
|
|
77
|
+
return () => {
|
|
78
|
+
client.off('Runtime.exceptionThrown', handler);
|
|
79
|
+
};
|
|
80
|
+
};
|
|
81
|
+
exports.handleJavascriptException = handleJavascriptException;
|
|
82
|
+
//# sourceMappingURL=handle-javascript-exception.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"handle-javascript-exception.js","sourceRoot":"","sources":["../src/handle-javascript-exception.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
//# sourceMappingURL=handle-null-audio.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"handle-null-audio.d.ts","sourceRoot":"","sources":["../src/handle-null-audio.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"handle-null-audio.js","sourceRoot":"","sources":["../src/handle-null-audio.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"is-local-file.d.ts","sourceRoot":"","sources":["../src/is-local-file.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,UAAU,iBAAkB,MAAM,YAY9C,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.isServeUrl = void 0;
|
|
4
|
+
const isServeUrl = (potentialUrl) => {
|
|
5
|
+
// Theoretically not a valid URL but handle the most basic cases of forgetting protocol in front
|
|
6
|
+
if (potentialUrl.startsWith('www.') ||
|
|
7
|
+
potentialUrl.includes('amazonaws.com')) {
|
|
8
|
+
return true;
|
|
9
|
+
}
|
|
10
|
+
return (potentialUrl.startsWith('https://') || !potentialUrl.startsWith('http://'));
|
|
11
|
+
};
|
|
12
|
+
exports.isServeUrl = isServeUrl;
|
|
13
|
+
//# sourceMappingURL=is-local-file.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"is-local-file.js","sourceRoot":"","sources":["../src/is-local-file.ts"],"names":[],"mappings":";;;AAAO,MAAM,UAAU,GAAG,CAAC,YAAoB,EAAE,EAAE;IAClD,gGAAgG;IAChG,IACC,YAAY,CAAC,UAAU,CAAC,MAAM,CAAC;QAC/B,YAAY,CAAC,QAAQ,CAAC,eAAe,CAAC,EACrC;QACD,OAAO,IAAI,CAAC;KACZ;IAED,OAAO,CACN,YAAY,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,SAAS,CAAC,CAC1E,CAAC;AACH,CAAC,CAAC;AAZW,QAAA,UAAU,cAYrB"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export declare type UnsymbolicatedStackFrame = {
|
|
2
|
+
functionName: string | null;
|
|
3
|
+
fileName: string;
|
|
4
|
+
lineNumber: number;
|
|
5
|
+
columnNumber: number;
|
|
6
|
+
};
|
|
7
|
+
export declare const parseStack: (stack: string[]) => UnsymbolicatedStackFrame[];
|
|
8
|
+
//# sourceMappingURL=parse-browser-error-stack.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"parse-browser-error-stack.d.ts","sourceRoot":"","sources":["../src/parse-browser-error-stack.ts"],"names":[],"mappings":"AAIA,oBAAY,wBAAwB,GAAG;IACtC,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;CACrB,CAAC;AAuDF,eAAO,MAAM,UAAU,UAAW,MAAM,EAAE,KAAG,wBAAwB,EAwDpE,CAAC"}
|