@remotion/renderer 3.0.23 → 3.0.26
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/abort.d.ts +7 -0
- package/dist/abort.js +20 -0
- package/dist/assets/download-and-map-assets-to-file.d.ts +21 -8
- package/dist/assets/download-and-map-assets-to-file.js +68 -42
- package/dist/assets/download-file.d.ts +10 -5
- package/dist/assets/download-file.js +18 -5
- package/dist/assets/ffmpeg-volume-expression.d.ts +1 -2
- package/dist/assets/ffmpeg-volume-expression.js +2 -3
- package/dist/browser/Browser.d.ts +10 -159
- package/dist/browser/Browser.js +7 -191
- package/dist/browser/BrowserConnector.d.ts +1 -8
- package/dist/browser/BrowserConnector.js +0 -32
- package/dist/browser/BrowserFetcher.d.ts +1 -1
- package/dist/browser/BrowserFetcher.js +8 -10
- package/dist/browser/BrowserRunner.d.ts +2 -2
- package/dist/browser/BrowserRunner.js +1 -1
- package/dist/browser/Connection.d.ts +4 -11
- package/dist/browser/Connection.js +5 -25
- package/dist/browser/ConsoleMessage.d.ts +4 -28
- package/dist/browser/ConsoleMessage.js +5 -32
- package/dist/browser/DOMWorld.d.ts +9 -7
- package/dist/browser/DOMWorld.js +12 -20
- package/dist/browser/EvalTypes.d.ts +1 -1
- package/dist/browser/EventEmitter.d.ts +1 -48
- package/dist/browser/EventEmitter.js +0 -49
- package/dist/browser/ExecutionContext.d.ts +7 -8
- package/dist/browser/ExecutionContext.js +0 -16
- package/dist/browser/FrameManager.d.ts +12 -15
- package/dist/browser/FrameManager.js +5 -21
- package/dist/browser/HTTPRequest.d.ts +4 -18
- package/dist/browser/HTTPRequest.js +3 -48
- package/dist/browser/HTTPResponse.d.ts +2 -81
- package/dist/browser/HTTPResponse.js +3 -173
- package/dist/browser/JSHandle.d.ts +4 -5
- package/dist/browser/JSHandle.js +0 -3
- package/dist/browser/LaunchOptions.d.ts +2 -81
- package/dist/browser/Launcher.d.ts +2 -2
- package/dist/browser/Launcher.js +21 -119
- package/dist/browser/LifecycleWatcher.d.ts +4 -4
- package/dist/browser/LifecycleWatcher.js +4 -17
- package/dist/browser/NetworkEventManager.d.ts +2 -4
- package/dist/browser/NetworkEventManager.js +0 -47
- package/dist/browser/NetworkManager.d.ts +1 -3
- package/dist/browser/NetworkManager.js +6 -42
- package/dist/browser/NodeWebSocketTransport.d.ts +8 -2
- package/dist/browser/NodeWebSocketTransport.js +1 -1
- package/dist/browser/{page.d.ts → Page.d.ts} +12 -16
- package/dist/browser/{page.js → Page.js} +20 -14
- package/dist/browser/PuppeteerNode.d.ts +7 -59
- package/dist/browser/PuppeteerNode.js +4 -66
- package/dist/browser/Target.d.ts +4 -4
- package/dist/browser/Target.js +1 -1
- package/dist/browser/assert.d.ts +0 -20
- package/dist/browser/assert.js +0 -20
- package/dist/browser/create-browser-fetcher.d.ts +1 -1
- package/dist/browser/create-browser-fetcher.js +4 -25
- package/dist/browser/util.d.ts +5 -4
- package/dist/browser/util.js +11 -3
- package/dist/browser-log.d.ts +1 -1
- package/dist/calculate-sar-dar-pixels.d.ts +9 -0
- package/dist/calculate-sar-dar-pixels.js +19 -0
- package/dist/cancel.d.ts +7 -0
- package/dist/cancel.js +25 -0
- package/dist/ensure-faststart.d.ts +1 -0
- package/dist/ensure-faststart.js +14 -0
- package/dist/error-handling/handle-javascript-exception.d.ts +1 -1
- package/dist/error-handling/handle-javascript-exception.js +2 -2
- package/dist/extract-frame-from-video.d.ts +2 -2
- package/dist/extract-frame-from-video.js +26 -14
- package/dist/faststart/atom.d.ts +35 -0
- package/dist/faststart/atom.js +138 -0
- package/dist/faststart/index.d.ts +0 -0
- package/dist/faststart/index.js +1 -0
- package/dist/faststart/options.d.ts +6 -0
- package/dist/faststart/options.js +2 -0
- package/dist/faststart/qt-faststart.d.ts +18 -0
- package/dist/faststart/qt-faststart.js +66 -0
- package/dist/faststart/update-chunk-offsets.d.ts +10 -0
- package/dist/faststart/update-chunk-offsets.js +114 -0
- package/dist/faststart/util.d.ts +9 -0
- package/dist/faststart/util.js +34 -0
- package/dist/get-browser-instance.d.ts +2 -1
- package/dist/get-compositions.d.ts +1 -1
- package/dist/get-compositions.js +3 -3
- package/dist/get-local-browser-executable.js +7 -5
- package/dist/get-port.js +5 -14
- package/dist/get-video-info.d.ts +8 -0
- package/dist/get-video-info.js +50 -0
- package/dist/index.d.ts +14 -6
- package/dist/index.js +3 -0
- package/dist/last-frame-from-video-cache.d.ts +3 -1
- package/dist/offthread/index.d.ts +0 -0
- package/dist/offthread/index.js +1 -0
- package/dist/offthread-video-server.js +2 -6
- package/dist/open-browser.d.ts +4 -2
- package/dist/open-browser.js +8 -8
- package/dist/prepare-server.js +5 -2
- package/dist/provide-screenshot.d.ts +4 -3
- package/dist/provide-screenshot.js +0 -1
- package/dist/puppeteer-evaluate.d.ts +1 -1
- package/dist/puppeteer-evaluate.js +3 -3
- package/dist/puppeteer-screenshot.d.ts +4 -2
- package/dist/puppeteer-screenshot.js +2 -4
- package/dist/render-frames.d.ts +2 -2
- package/dist/render-frames.js +50 -47
- package/dist/render-gif.d.ts +2 -0
- package/dist/render-gif.js +242 -0
- package/dist/render-media.d.ts +4 -3
- package/dist/render-media.js +8 -3
- package/dist/render-still.d.ts +1 -1
- package/dist/screenshot-dom-element.d.ts +6 -6
- package/dist/screenshot-dom-element.js +3 -6
- package/dist/screenshot-task.d.ts +3 -1
- package/dist/screenshot-task.js +3 -5
- package/dist/seek-to-frame.d.ts +2 -2
- package/dist/seek-to-frame.js +2 -2
- package/dist/set-props-and-env.d.ts +1 -1
- package/dist/set-props-and-env.js +3 -0
- package/dist/should-use-vp9-decoder.d.ts +0 -0
- package/dist/should-use-vp9-decoder.js +1 -0
- package/dist/stitch-frames-to-gif.d.ts +8 -0
- package/dist/stitch-frames-to-gif.js +128 -0
- package/dist/stitch-frames-to-video.d.ts +4 -3
- package/dist/stitch-frames-to-video.js +31 -13
- package/dist/stringify-ffmpeg-filter.d.ts +1 -1
- package/dist/stringify-ffmpeg-filter.js +9 -7
- package/dist/validate-offthreadvideo-image-format.d.ts +1 -0
- package/dist/validate-offthreadvideo-image-format.js +15 -0
- package/dist/wait-for-symbolication-error-to-be-done.d.ts +3 -0
- package/dist/wait-for-symbolication-error-to-be-done.js +34 -0
- package/package.json +9 -5
- package/dist/assets/calculate-asset-positions.d.ts.map +0 -1
- package/dist/assets/calculate-asset-positions.js.map +0 -1
- package/dist/assets/calculate-atempo.d.ts.map +0 -1
- package/dist/assets/calculate-atempo.js.map +0 -1
- package/dist/assets/convert-assets-to-file-urls.d.ts.map +0 -1
- package/dist/assets/convert-assets-to-file-urls.js.map +0 -1
- package/dist/assets/download-and-map-assets-to-file.d.ts.map +0 -1
- package/dist/assets/download-and-map-assets-to-file.js.map +0 -1
- package/dist/assets/download-file.d.ts.map +0 -1
- package/dist/assets/download-file.js.map +0 -1
- package/dist/assets/ffmpeg-volume-expression.d.ts.map +0 -1
- package/dist/assets/ffmpeg-volume-expression.js.map +0 -1
- package/dist/assets/flatten-volume-array.d.ts.map +0 -1
- package/dist/assets/flatten-volume-array.js.map +0 -1
- package/dist/assets/get-audio-channels.d.ts.map +0 -1
- package/dist/assets/get-audio-channels.js.map +0 -1
- package/dist/assets/read-file.d.ts.map +0 -1
- package/dist/assets/read-file.js.map +0 -1
- package/dist/assets/round-volume-to-avoid-stack-overflow.d.ts.map +0 -1
- package/dist/assets/round-volume-to-avoid-stack-overflow.js.map +0 -1
- package/dist/assets/sanitize-filename.d.ts.map +0 -1
- package/dist/assets/sanitize-filename.js.map +0 -1
- package/dist/assets/sanitize-filepath.d.ts.map +0 -1
- package/dist/assets/sanitize-filepath.js.map +0 -1
- package/dist/assets/truncate-utf8-bytes.d.ts.map +0 -1
- package/dist/assets/truncate-utf8-bytes.js.map +0 -1
- package/dist/assets/types.d.ts.map +0 -1
- package/dist/assets/types.js.map +0 -1
- package/dist/browser/Accessibility.d.ts +0 -175
- package/dist/browser/Accessibility.js +0 -423
- package/dist/browser/AriaQueryHandler.d.ts +0 -20
- package/dist/browser/AriaQueryHandler.js +0 -108
- package/dist/browser/Coverage.d.ts +0 -180
- package/dist/browser/Coverage.js +0 -371
- package/dist/browser/Debug.d.ts +0 -19
- package/dist/browser/Debug.js +0 -42
- package/dist/browser/DeviceDescriptors.d.ts +0 -40
- package/dist/browser/DeviceDescriptors.js +0 -1407
- package/dist/browser/FileChooser.d.ts +0 -56
- package/dist/browser/FileChooser.js +0 -86
- package/dist/browser/Input.d.ts +0 -355
- package/dist/browser/Input.js +0 -592
- package/dist/browser/NetworkConditions.d.ts +0 -26
- package/dist/browser/NetworkConditions.js +0 -33
- package/dist/browser/PDFOptions.d.ts +0 -165
- package/dist/browser/PDFOptions.js +0 -34
- package/dist/browser/PipeTransport.d.ts +0 -10
- package/dist/browser/PipeTransport.js +0 -86
- package/dist/browser/Puppeteer.d.ts +0 -35
- package/dist/browser/Puppeteer.js +0 -17
- package/dist/browser/QueryHandler.d.ts +0 -64
- package/dist/browser/QueryHandler.js +0 -183
- package/dist/browser/SecurityDetails.d.ts +0 -55
- package/dist/browser/SecurityDetails.js +0 -95
- package/dist/browser/Tracing.d.ts +0 -45
- package/dist/browser/Tracing.js +0 -136
- package/dist/browser/USKeyboardLayout.d.ts +0 -39
- package/dist/browser/USKeyboardLayout.js +0 -406
- package/dist/browser/WebWorker.d.ts +0 -96
- package/dist/browser/WebWorker.js +0 -122
- package/dist/browser/dialog.d.ts +0 -70
- package/dist/browser/dialog.js +0 -114
- package/dist/browser/fetch.d.ts +0 -16
- package/dist/browser/fetch.js +0 -46
- package/dist/browser/find-up.d.ts +0 -4
- package/dist/browser/find-up.js +0 -85
- package/dist/browser/pkg-dir.d.ts +0 -3
- package/dist/browser/pkg-dir.js +0 -13
- package/dist/browser-log.d.ts.map +0 -1
- package/dist/browser-log.js.map +0 -1
- package/dist/calculate-ffmpeg-filters.d.ts.map +0 -1
- package/dist/calculate-ffmpeg-filters.js.map +0 -1
- package/dist/can-use-parallel-encoding.d.ts.map +0 -1
- package/dist/can-use-parallel-encoding.js.map +0 -1
- package/dist/chunk.d.ts.map +0 -1
- package/dist/chunk.js.map +0 -1
- package/dist/combine-videos.d.ts.map +0 -1
- package/dist/combine-videos.js.map +0 -1
- package/dist/convert-to-pcm.d.ts.map +0 -1
- package/dist/convert-to-pcm.js.map +0 -1
- package/dist/create-ffmpeg-complex-filter.d.ts.map +0 -1
- package/dist/create-ffmpeg-complex-filter.js.map +0 -1
- package/dist/create-ffmpeg-merge-filter.d.ts.map +0 -1
- package/dist/create-ffmpeg-merge-filter.js.map +0 -1
- package/dist/create-silent-audio.d.ts.map +0 -1
- package/dist/create-silent-audio.js.map +0 -1
- package/dist/cycle-browser-tabs.d.ts.map +0 -1
- package/dist/cycle-browser-tabs.js.map +0 -1
- package/dist/delay-render-embedded-stack.d.ts.map +0 -1
- package/dist/delay-render-embedded-stack.js.map +0 -1
- package/dist/delete-directory.d.ts.map +0 -1
- package/dist/delete-directory.js.map +0 -1
- package/dist/ensure-frames-in-order.d.ts.map +0 -1
- package/dist/ensure-frames-in-order.js.map +0 -1
- package/dist/ensure-output-directory.d.ts.map +0 -1
- package/dist/ensure-output-directory.js.map +0 -1
- package/dist/error-handling/handle-javascript-exception.d.ts.map +0 -1
- package/dist/error-handling/handle-javascript-exception.js.map +0 -1
- package/dist/error-handling/symbolicate-error.d.ts.map +0 -1
- package/dist/error-handling/symbolicate-error.js.map +0 -1
- package/dist/error-handling/symbolicateable-error.d.ts.map +0 -1
- package/dist/error-handling/symbolicateable-error.js.map +0 -1
- package/dist/ffmpeg-filter-file.d.ts.map +0 -1
- package/dist/ffmpeg-filter-file.js.map +0 -1
- package/dist/ffmpeg-flags.d.ts.map +0 -1
- package/dist/ffmpeg-flags.js.map +0 -1
- package/dist/get-audio-codec-name.d.ts.map +0 -1
- package/dist/get-audio-codec-name.js.map +0 -1
- package/dist/get-browser-instance.d.ts.map +0 -1
- package/dist/get-browser-instance.js.map +0 -1
- package/dist/get-codec-name.d.ts.map +0 -1
- package/dist/get-codec-name.js.map +0 -1
- package/dist/get-compositions.d.ts.map +0 -1
- package/dist/get-compositions.js.map +0 -1
- package/dist/get-concurrency.d.ts.map +0 -1
- package/dist/get-concurrency.js.map +0 -1
- package/dist/get-duration-from-frame-range.d.ts.map +0 -1
- package/dist/get-duration-from-frame-range.js.map +0 -1
- package/dist/get-extension-from-codec.d.ts.map +0 -1
- package/dist/get-extension-from-codec.js.map +0 -1
- package/dist/get-frame-to-render.d.ts.map +0 -1
- package/dist/get-frame-to-render.js.map +0 -1
- package/dist/get-local-browser-executable.d.ts.map +0 -1
- package/dist/get-local-browser-executable.js.map +0 -1
- package/dist/get-port.d.ts.map +0 -1
- package/dist/get-port.js.map +0 -1
- package/dist/get-prores-profile-name.d.ts.map +0 -1
- package/dist/get-prores-profile-name.js.map +0 -1
- package/dist/image-format.d.ts.map +0 -1
- package/dist/image-format.js.map +0 -1
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js.map +0 -1
- package/dist/is-serve-url.d.ts.map +0 -1
- package/dist/is-serve-url.js.map +0 -1
- package/dist/legacy-webpack-config.d.ts.map +0 -1
- package/dist/legacy-webpack-config.js.map +0 -1
- package/dist/make-assets-download-dir.d.ts.map +0 -1
- package/dist/make-assets-download-dir.js.map +0 -1
- package/dist/merge-audio-track.d.ts.map +0 -1
- package/dist/merge-audio-track.js.map +0 -1
- package/dist/normalize-serve-url.d.ts.map +0 -1
- package/dist/normalize-serve-url.js.map +0 -1
- package/dist/open-browser.d.ts.map +0 -1
- package/dist/open-browser.js.map +0 -1
- package/dist/p-limit.d.ts.map +0 -1
- package/dist/p-limit.js.map +0 -1
- package/dist/parse-browser-error-stack.d.ts.map +0 -1
- package/dist/parse-browser-error-stack.js.map +0 -1
- package/dist/parse-ffmpeg-progress.d.ts.map +0 -1
- package/dist/parse-ffmpeg-progress.js.map +0 -1
- package/dist/pool.d.ts.map +0 -1
- package/dist/pool.js.map +0 -1
- package/dist/prepare-server.d.ts.map +0 -1
- package/dist/prepare-server.js.map +0 -1
- package/dist/preprocess-audio-track.d.ts.map +0 -1
- package/dist/preprocess-audio-track.js.map +0 -1
- package/dist/prespawn-ffmpeg.d.ts.map +0 -1
- package/dist/prespawn-ffmpeg.js.map +0 -1
- package/dist/provide-screenshot.d.ts.map +0 -1
- package/dist/provide-screenshot.js.map +0 -1
- package/dist/puppeteer-evaluate.d.ts.map +0 -1
- package/dist/puppeteer-evaluate.js.map +0 -1
- package/dist/puppeteer-screenshot.d.ts.map +0 -1
- package/dist/puppeteer-screenshot.js.map +0 -1
- package/dist/render-frames.d.ts.map +0 -1
- package/dist/render-frames.js.map +0 -1
- package/dist/render-media.d.ts.map +0 -1
- package/dist/render-media.js.map +0 -1
- package/dist/render-still.d.ts.map +0 -1
- package/dist/render-still.js.map +0 -1
- package/dist/resolve-asset-src.d.ts.map +0 -1
- package/dist/resolve-asset-src.js.map +0 -1
- package/dist/sample-rate.d.ts.map +0 -1
- package/dist/sample-rate.js.map +0 -1
- package/dist/screenshot-dom-element.d.ts.map +0 -1
- package/dist/screenshot-dom-element.js.map +0 -1
- package/dist/screenshot-task.d.ts.map +0 -1
- package/dist/screenshot-task.js.map +0 -1
- package/dist/seek-to-frame.d.ts.map +0 -1
- package/dist/seek-to-frame.js.map +0 -1
- package/dist/serve-static.d.ts.map +0 -1
- package/dist/serve-static.js.map +0 -1
- package/dist/set-props-and-env.d.ts.map +0 -1
- package/dist/set-props-and-env.js.map +0 -1
- package/dist/stitch-frames-to-video.d.ts.map +0 -1
- package/dist/stitch-frames-to-video.js.map +0 -1
- package/dist/stringify-ffmpeg-filter.d.ts.map +0 -1
- package/dist/stringify-ffmpeg-filter.js.map +0 -1
- package/dist/symbolicate-stacktrace.d.ts.map +0 -1
- package/dist/symbolicate-stacktrace.js.map +0 -1
- package/dist/tmp-dir.d.ts.map +0 -1
- package/dist/tmp-dir.js.map +0 -1
- package/dist/types.d.ts.map +0 -1
- package/dist/types.js.map +0 -1
- package/dist/validate-even-dimensions-with-codec.d.ts.map +0 -1
- package/dist/validate-even-dimensions-with-codec.js.map +0 -1
- package/dist/validate-ffmpeg.d.ts.map +0 -1
- package/dist/validate-ffmpeg.js.map +0 -1
- package/dist/validate-puppeteer-timeout.d.ts.map +0 -1
- package/dist/validate-puppeteer-timeout.js.map +0 -1
- package/dist/validate-scale.d.ts.map +0 -1
- package/dist/validate-scale.js.map +0 -1
package/dist/abort.d.ts
ADDED
package/dist/abort.js
ADDED
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getCancelSignal = void 0;
|
|
4
|
+
const getCancelSignal = () => {
|
|
5
|
+
const callbacks = [];
|
|
6
|
+
let cancelled = false;
|
|
7
|
+
return {
|
|
8
|
+
cancelSignal: (callback) => callbacks.push(callback),
|
|
9
|
+
cancel: () => {
|
|
10
|
+
if (cancelled) {
|
|
11
|
+
return;
|
|
12
|
+
}
|
|
13
|
+
callbacks.forEach((cb) => {
|
|
14
|
+
cb();
|
|
15
|
+
});
|
|
16
|
+
cancelled = true;
|
|
17
|
+
},
|
|
18
|
+
};
|
|
19
|
+
};
|
|
20
|
+
exports.getCancelSignal = getCancelSignal;
|
|
@@ -1,20 +1,33 @@
|
|
|
1
1
|
import type { TAsset } from 'remotion';
|
|
2
2
|
export declare type RenderMediaOnDownload = (src: string) => ((progress: {
|
|
3
|
-
percent: number;
|
|
3
|
+
percent: number | null;
|
|
4
|
+
downloaded: number;
|
|
5
|
+
totalSize: number | null;
|
|
4
6
|
}) => void) | undefined | void;
|
|
5
|
-
export declare const waitForAssetToBeDownloaded: (src
|
|
7
|
+
export declare const waitForAssetToBeDownloaded: ({ src, downloadDir, }: {
|
|
8
|
+
src: string;
|
|
9
|
+
downloadDir: string;
|
|
10
|
+
}) => Promise<string>;
|
|
11
|
+
export declare const downloadAsset: ({ src, onDownload, downloadDir, }: {
|
|
12
|
+
src: string;
|
|
13
|
+
onDownload: RenderMediaOnDownload;
|
|
14
|
+
downloadDir: string;
|
|
15
|
+
}) => Promise<string>;
|
|
6
16
|
export declare const markAllAssetsAsDownloaded: () => void;
|
|
7
|
-
export declare const
|
|
17
|
+
export declare const getFilename: ({ contentDisposition, src, }: {
|
|
18
|
+
src: string;
|
|
19
|
+
contentDisposition: string | null;
|
|
20
|
+
}) => {
|
|
21
|
+
pathname: string;
|
|
22
|
+
search: string;
|
|
23
|
+
};
|
|
24
|
+
export declare const getSanitizedFilenameForAssetUrl: ({ src, downloadDir, contentDisposition, }: {
|
|
8
25
|
src: string;
|
|
9
26
|
downloadDir: string;
|
|
27
|
+
contentDisposition: string | null;
|
|
10
28
|
}) => string;
|
|
11
29
|
export declare const downloadAndMapAssetsToFileUrl: ({ asset, downloadDir, onDownload, }: {
|
|
12
30
|
asset: TAsset;
|
|
13
31
|
downloadDir: string;
|
|
14
32
|
onDownload: RenderMediaOnDownload;
|
|
15
33
|
}) => Promise<TAsset>;
|
|
16
|
-
export declare const startDownloadForSrc: ({ src, downloadDir, onDownload, }: {
|
|
17
|
-
src: string;
|
|
18
|
-
downloadDir: string;
|
|
19
|
-
onDownload: RenderMediaOnDownload;
|
|
20
|
-
}) => Promise<string>;
|
|
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.
|
|
6
|
+
exports.downloadAndMapAssetsToFileUrl = exports.getSanitizedFilenameForAssetUrl = exports.getFilename = exports.markAllAssetsAsDownloaded = exports.downloadAsset = exports.waitForAssetToBeDownloaded = void 0;
|
|
7
7
|
const fs_1 = __importDefault(require("fs"));
|
|
8
8
|
const path_1 = __importDefault(require("path"));
|
|
9
9
|
const remotion_1 = require("remotion");
|
|
@@ -13,38 +13,41 @@ const sanitize_filepath_1 = require("./sanitize-filepath");
|
|
|
13
13
|
const isDownloadingMap = {};
|
|
14
14
|
const hasBeenDownloadedMap = {};
|
|
15
15
|
const listeners = {};
|
|
16
|
-
const waitForAssetToBeDownloaded = (src,
|
|
17
|
-
var _a;
|
|
18
|
-
if ((_a = hasBeenDownloadedMap[src]) === null || _a === void 0 ? void 0 : _a[
|
|
19
|
-
return Promise.resolve();
|
|
16
|
+
const waitForAssetToBeDownloaded = ({ src, downloadDir, }) => {
|
|
17
|
+
var _a, _b;
|
|
18
|
+
if ((_a = hasBeenDownloadedMap[src]) === null || _a === void 0 ? void 0 : _a[downloadDir]) {
|
|
19
|
+
return Promise.resolve((_b = hasBeenDownloadedMap[src]) === null || _b === void 0 ? void 0 : _b[downloadDir]);
|
|
20
20
|
}
|
|
21
21
|
if (!listeners[src]) {
|
|
22
22
|
listeners[src] = {};
|
|
23
23
|
}
|
|
24
|
-
if (!listeners[src][
|
|
25
|
-
listeners[src][
|
|
24
|
+
if (!listeners[src][downloadDir]) {
|
|
25
|
+
listeners[src][downloadDir] = [];
|
|
26
26
|
}
|
|
27
27
|
return new Promise((resolve) => {
|
|
28
|
-
listeners[src][
|
|
28
|
+
listeners[src][downloadDir].push(() => {
|
|
29
|
+
var _a;
|
|
30
|
+
resolve((_a = hasBeenDownloadedMap[src]) === null || _a === void 0 ? void 0 : _a[downloadDir]);
|
|
31
|
+
});
|
|
29
32
|
});
|
|
30
33
|
};
|
|
31
34
|
exports.waitForAssetToBeDownloaded = waitForAssetToBeDownloaded;
|
|
32
|
-
const notifyAssetIsDownloaded = (src, to) => {
|
|
35
|
+
const notifyAssetIsDownloaded = ({ src, downloadDir, to, }) => {
|
|
33
36
|
if (!listeners[src]) {
|
|
34
37
|
listeners[src] = {};
|
|
35
38
|
}
|
|
36
|
-
if (!listeners[src][
|
|
37
|
-
listeners[src][
|
|
39
|
+
if (!listeners[src][downloadDir]) {
|
|
40
|
+
listeners[src][downloadDir] = [];
|
|
38
41
|
}
|
|
39
|
-
listeners[src][
|
|
42
|
+
listeners[src][downloadDir].forEach((fn) => fn());
|
|
40
43
|
if (!isDownloadingMap[src]) {
|
|
41
44
|
isDownloadingMap[src] = {};
|
|
42
45
|
}
|
|
43
|
-
isDownloadingMap[src][
|
|
46
|
+
isDownloadingMap[src][downloadDir] = true;
|
|
44
47
|
if (!hasBeenDownloadedMap[src]) {
|
|
45
48
|
hasBeenDownloadedMap[src] = {};
|
|
46
49
|
}
|
|
47
|
-
hasBeenDownloadedMap[src][
|
|
50
|
+
hasBeenDownloadedMap[src][downloadDir] = to;
|
|
48
51
|
};
|
|
49
52
|
const validateMimeType = (mimeType, src) => {
|
|
50
53
|
if (!mimeType.includes('/')) {
|
|
@@ -85,21 +88,29 @@ function validateBufferEncoding(potentialEncoding, dataUrl) {
|
|
|
85
88
|
throw new TypeError(errMessage);
|
|
86
89
|
}
|
|
87
90
|
}
|
|
88
|
-
const downloadAsset = async (src,
|
|
89
|
-
var _a, _b;
|
|
90
|
-
if ((
|
|
91
|
-
return;
|
|
91
|
+
const downloadAsset = async ({ src, onDownload, downloadDir, }) => {
|
|
92
|
+
var _a, _b, _c;
|
|
93
|
+
if (remotion_1.Internals.AssetCompression.isAssetCompressed(src)) {
|
|
94
|
+
return src;
|
|
95
|
+
}
|
|
96
|
+
if ((_a = hasBeenDownloadedMap[src]) === null || _a === void 0 ? void 0 : _a[downloadDir]) {
|
|
97
|
+
return (_b = hasBeenDownloadedMap[src]) === null || _b === void 0 ? void 0 : _b[downloadDir];
|
|
92
98
|
}
|
|
93
|
-
if ((
|
|
94
|
-
return (0, exports.waitForAssetToBeDownloaded)(src,
|
|
99
|
+
if ((_c = isDownloadingMap[src]) === null || _c === void 0 ? void 0 : _c[downloadDir]) {
|
|
100
|
+
return (0, exports.waitForAssetToBeDownloaded)({ src, downloadDir });
|
|
95
101
|
}
|
|
96
102
|
if (!isDownloadingMap[src]) {
|
|
97
103
|
isDownloadingMap[src] = {};
|
|
98
104
|
}
|
|
99
|
-
isDownloadingMap[src][
|
|
105
|
+
isDownloadingMap[src][downloadDir] = true;
|
|
100
106
|
const onProgress = onDownload(src);
|
|
101
|
-
(0, ensure_output_directory_1.ensureOutputDirectory)(to);
|
|
102
107
|
if (src.startsWith('data:')) {
|
|
108
|
+
const output = (0, exports.getSanitizedFilenameForAssetUrl)({
|
|
109
|
+
contentDisposition: null,
|
|
110
|
+
downloadDir,
|
|
111
|
+
src,
|
|
112
|
+
});
|
|
113
|
+
(0, ensure_output_directory_1.ensureOutputDirectory)(output);
|
|
103
114
|
const [assetDetails, assetData] = src.substring('data:'.length).split(',');
|
|
104
115
|
if (!assetDetails.includes(';')) {
|
|
105
116
|
const errMessage = [
|
|
@@ -114,17 +125,21 @@ const downloadAsset = async (src, to, onDownload) => {
|
|
|
114
125
|
validateMimeType(mimeType, src);
|
|
115
126
|
validateBufferEncoding(encoding, src);
|
|
116
127
|
const buff = Buffer.from(assetData, encoding);
|
|
117
|
-
await fs_1.default.promises.writeFile(
|
|
118
|
-
notifyAssetIsDownloaded(src, to);
|
|
119
|
-
return;
|
|
128
|
+
await fs_1.default.promises.writeFile(output, buff);
|
|
129
|
+
notifyAssetIsDownloaded({ src, downloadDir, to: output });
|
|
130
|
+
return output;
|
|
120
131
|
}
|
|
121
|
-
await (0, download_file_1.downloadFile)(
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
132
|
+
const { to } = await (0, download_file_1.downloadFile)({
|
|
133
|
+
url: src,
|
|
134
|
+
onProgress: (progress) => {
|
|
135
|
+
onProgress === null || onProgress === void 0 ? void 0 : onProgress(progress);
|
|
136
|
+
},
|
|
137
|
+
to: (contentDisposition) => (0, exports.getSanitizedFilenameForAssetUrl)({ contentDisposition, downloadDir, src }),
|
|
125
138
|
});
|
|
126
|
-
notifyAssetIsDownloaded(src, to);
|
|
139
|
+
notifyAssetIsDownloaded({ src, downloadDir, to });
|
|
140
|
+
return to;
|
|
127
141
|
};
|
|
142
|
+
exports.downloadAsset = downloadAsset;
|
|
128
143
|
const markAllAssetsAsDownloaded = () => {
|
|
129
144
|
Object.keys(hasBeenDownloadedMap).forEach((key) => {
|
|
130
145
|
delete hasBeenDownloadedMap[key];
|
|
@@ -134,21 +149,40 @@ const markAllAssetsAsDownloaded = () => {
|
|
|
134
149
|
});
|
|
135
150
|
};
|
|
136
151
|
exports.markAllAssetsAsDownloaded = markAllAssetsAsDownloaded;
|
|
137
|
-
const
|
|
152
|
+
const getFilename = ({ contentDisposition, src, }) => {
|
|
153
|
+
const filenameProbe = 'filename=';
|
|
154
|
+
if (contentDisposition === null || contentDisposition === void 0 ? void 0 : contentDisposition.includes(filenameProbe)) {
|
|
155
|
+
const start = contentDisposition.indexOf(filenameProbe);
|
|
156
|
+
const onlyFromFileName = contentDisposition.substring(start + filenameProbe.length);
|
|
157
|
+
const hasSemi = onlyFromFileName.indexOf(';');
|
|
158
|
+
if (hasSemi === -1) {
|
|
159
|
+
return { pathname: onlyFromFileName.trim(), search: '' };
|
|
160
|
+
}
|
|
161
|
+
return {
|
|
162
|
+
search: '',
|
|
163
|
+
pathname: onlyFromFileName.substring(0, hasSemi).trim(),
|
|
164
|
+
};
|
|
165
|
+
}
|
|
166
|
+
const { pathname, search } = new URL(src);
|
|
167
|
+
return { pathname, search };
|
|
168
|
+
};
|
|
169
|
+
exports.getFilename = getFilename;
|
|
170
|
+
const getSanitizedFilenameForAssetUrl = ({ src, downloadDir, contentDisposition, }) => {
|
|
138
171
|
if (remotion_1.Internals.AssetCompression.isAssetCompressed(src)) {
|
|
139
172
|
return src;
|
|
140
173
|
}
|
|
141
|
-
const { pathname, search } =
|
|
174
|
+
const { pathname, search } = (0, exports.getFilename)({ contentDisposition, src });
|
|
142
175
|
const split = pathname.split('.');
|
|
143
176
|
const fileExtension = split.length > 1 && split[split.length - 1]
|
|
144
177
|
? `.${split[split.length - 1]}`
|
|
145
178
|
: '';
|
|
146
179
|
const hashedFileName = String((0, remotion_1.random)(`${pathname}${search}`)).replace('0.', '');
|
|
147
|
-
|
|
180
|
+
const filename = hashedFileName + fileExtension;
|
|
181
|
+
return path_1.default.join(downloadDir, (0, sanitize_filepath_1.sanitizeFilePath)(filename));
|
|
148
182
|
};
|
|
149
183
|
exports.getSanitizedFilenameForAssetUrl = getSanitizedFilenameForAssetUrl;
|
|
150
184
|
const downloadAndMapAssetsToFileUrl = async ({ asset, downloadDir, onDownload, }) => {
|
|
151
|
-
const newSrc = await (0, exports.
|
|
185
|
+
const newSrc = await (0, exports.downloadAsset)({
|
|
152
186
|
src: asset.src,
|
|
153
187
|
downloadDir,
|
|
154
188
|
onDownload,
|
|
@@ -159,11 +193,3 @@ const downloadAndMapAssetsToFileUrl = async ({ asset, downloadDir, onDownload, }
|
|
|
159
193
|
};
|
|
160
194
|
};
|
|
161
195
|
exports.downloadAndMapAssetsToFileUrl = downloadAndMapAssetsToFileUrl;
|
|
162
|
-
const startDownloadForSrc = async ({ src, downloadDir, onDownload, }) => {
|
|
163
|
-
const newSrc = (0, exports.getSanitizedFilenameForAssetUrl)({ downloadDir, src });
|
|
164
|
-
if (!remotion_1.Internals.AssetCompression.isAssetCompressed(newSrc)) {
|
|
165
|
-
await downloadAsset(src, newSrc, onDownload);
|
|
166
|
-
}
|
|
167
|
-
return newSrc;
|
|
168
|
-
};
|
|
169
|
-
exports.startDownloadForSrc = startDownloadForSrc;
|
|
@@ -1,7 +1,12 @@
|
|
|
1
|
-
export declare const downloadFile: (
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
1
|
+
export declare const downloadFile: ({ onProgress, url, to: toFn, }: {
|
|
2
|
+
url: string;
|
|
3
|
+
to: (contentDisposition: string | null) => string;
|
|
4
|
+
onProgress: ((progress: {
|
|
5
|
+
percent: number | null;
|
|
6
|
+
downloaded: number;
|
|
7
|
+
totalSize: number | null;
|
|
8
|
+
}) => void) | undefined;
|
|
9
|
+
}) => Promise<{
|
|
6
10
|
sizeInBytes: number;
|
|
11
|
+
to: string;
|
|
7
12
|
}>;
|
|
@@ -2,25 +2,38 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.downloadFile = void 0;
|
|
4
4
|
const fs_1 = require("fs");
|
|
5
|
+
const ensure_output_directory_1 = require("../ensure-output-directory");
|
|
5
6
|
const read_file_1 = require("./read-file");
|
|
6
|
-
const downloadFile = (url, to,
|
|
7
|
+
const downloadFile = ({ onProgress, url, to: toFn, }) => {
|
|
7
8
|
return new Promise((resolve, reject) => {
|
|
8
9
|
(0, read_file_1.readFile)(url)
|
|
9
10
|
.then((res) => {
|
|
10
|
-
|
|
11
|
+
var _a;
|
|
12
|
+
const contentDisposition = (_a = res.headers['content-disposition']) !== null && _a !== void 0 ? _a : null;
|
|
13
|
+
const to = toFn(contentDisposition);
|
|
14
|
+
(0, ensure_output_directory_1.ensureOutputDirectory)(to);
|
|
15
|
+
const sizeHeader = res.headers['content-length'];
|
|
16
|
+
const totalSize = typeof sizeHeader === 'undefined' ? null : Number(sizeHeader);
|
|
11
17
|
const writeStream = (0, fs_1.createWriteStream)(to);
|
|
18
|
+
let downloaded = 0;
|
|
12
19
|
// Listen to 'close' event instead of more
|
|
13
20
|
// concise method to avoid this problem
|
|
14
21
|
// https://github.com/remotion-dev/remotion/issues/384#issuecomment-844398183
|
|
15
|
-
writeStream.on('close', () =>
|
|
22
|
+
writeStream.on('close', () => {
|
|
23
|
+
onProgress === null || onProgress === void 0 ? void 0 : onProgress({
|
|
24
|
+
downloaded,
|
|
25
|
+
percent: 1,
|
|
26
|
+
totalSize: downloaded,
|
|
27
|
+
});
|
|
28
|
+
return resolve({ sizeInBytes: downloaded, to });
|
|
29
|
+
});
|
|
16
30
|
writeStream.on('error', (err) => reject(err));
|
|
17
|
-
let downloaded = 0;
|
|
18
31
|
res.pipe(writeStream).on('error', (err) => reject(err));
|
|
19
32
|
res.on('data', (d) => {
|
|
20
33
|
downloaded += d.length;
|
|
21
34
|
onProgress === null || onProgress === void 0 ? void 0 : onProgress({
|
|
22
35
|
downloaded,
|
|
23
|
-
|
|
36
|
+
percent: totalSize === null ? null : downloaded / totalSize,
|
|
24
37
|
totalSize,
|
|
25
38
|
});
|
|
26
39
|
});
|
|
@@ -4,9 +4,8 @@ declare type FfmpegVolumeExpression = {
|
|
|
4
4
|
eval: FfmpegEval;
|
|
5
5
|
value: string;
|
|
6
6
|
};
|
|
7
|
-
export declare const ffmpegVolumeExpression: ({ volume,
|
|
7
|
+
export declare const ffmpegVolumeExpression: ({ volume, fps, trimLeft, }: {
|
|
8
8
|
volume: AssetVolume;
|
|
9
|
-
startInVideo: number;
|
|
10
9
|
trimLeft: number;
|
|
11
10
|
fps: number;
|
|
12
11
|
}) => FfmpegVolumeExpression;
|
|
@@ -43,7 +43,7 @@ const ffmpegBuildVolumeExpression = (arr, delay, fps) => {
|
|
|
43
43
|
const [volume, frames] = first;
|
|
44
44
|
return ffmpegIfOrElse(ffmpegIsOneOfFrames({ frames, trimLeft: delay, fps }), String(volume), ffmpegBuildVolumeExpression(rest, delay, fps));
|
|
45
45
|
};
|
|
46
|
-
const ffmpegVolumeExpression = ({ volume,
|
|
46
|
+
const ffmpegVolumeExpression = ({ volume, fps, trimLeft, }) => {
|
|
47
47
|
// If it's a static volume, we return it and tell
|
|
48
48
|
// FFMPEG it only has to evaluate it once
|
|
49
49
|
if (typeof volume === 'number') {
|
|
@@ -55,7 +55,6 @@ const ffmpegVolumeExpression = ({ volume, startInVideo, fps, trimLeft, }) => {
|
|
|
55
55
|
if ([...new Set(volume)].length === 1) {
|
|
56
56
|
return (0, exports.ffmpegVolumeExpression)({
|
|
57
57
|
volume: volume[0],
|
|
58
|
-
startInVideo,
|
|
59
58
|
fps,
|
|
60
59
|
trimLeft,
|
|
61
60
|
});
|
|
@@ -76,7 +75,7 @@ const ffmpegVolumeExpression = ({ volume, startInVideo, fps, trimLeft, }) => {
|
|
|
76
75
|
if (!volumeMap[actualVolume]) {
|
|
77
76
|
volumeMap[actualVolume] = [];
|
|
78
77
|
}
|
|
79
|
-
volumeMap[actualVolume].push(frame
|
|
78
|
+
volumeMap[actualVolume].push(frame);
|
|
80
79
|
});
|
|
81
80
|
// Sort the map so that the most common volume is last
|
|
82
81
|
// this is going to be the else statement so the expression is short
|
|
@@ -13,165 +13,38 @@
|
|
|
13
13
|
* See the License for the specific language governing permissions and
|
|
14
14
|
* limitations under the License.
|
|
15
15
|
*/
|
|
16
|
-
|
|
17
|
-
import { ChildProcess } from 'child_process';
|
|
18
|
-
import { Connection } from './Connection';
|
|
16
|
+
import type { Connection } from './Connection';
|
|
19
17
|
import { EventEmitter } from './EventEmitter';
|
|
20
|
-
import { Page } from './Page';
|
|
21
|
-
import { Viewport } from './PuppeteerViewport';
|
|
18
|
+
import type { Page } from './Page';
|
|
19
|
+
import type { Viewport } from './PuppeteerViewport';
|
|
22
20
|
import { Target } from './Target';
|
|
23
|
-
interface BrowserContextOptions {
|
|
24
|
-
/**
|
|
25
|
-
* Proxy server with optional port to use for all requests.
|
|
26
|
-
* Username and password can be set in `Page.authenticate`.
|
|
27
|
-
*/
|
|
28
|
-
proxyServer?: string;
|
|
29
|
-
/**
|
|
30
|
-
* Bypass the proxy for the given semi-colon-separated list of hosts.
|
|
31
|
-
*/
|
|
32
|
-
proxyBypassList?: string[];
|
|
33
|
-
}
|
|
34
21
|
declare type BrowserCloseCallback = () => Promise<void> | void;
|
|
35
22
|
interface WaitForTargetOptions {
|
|
36
|
-
/**
|
|
37
|
-
* Maximum wait time in milliseconds. Pass `0` to disable the timeout.
|
|
38
|
-
* @defaultValue 30 seconds.
|
|
39
|
-
*/
|
|
40
23
|
timeout?: number;
|
|
41
24
|
}
|
|
25
|
+
export declare const enum BrowserEmittedEvents {
|
|
26
|
+
TargetChanged = "targetchanged",
|
|
27
|
+
TargetCreated = "targetcreated",
|
|
28
|
+
Closed = "closed"
|
|
29
|
+
}
|
|
42
30
|
export declare class Browser extends EventEmitter {
|
|
43
31
|
#private;
|
|
44
|
-
static _create({ connection, contextIds, defaultViewport,
|
|
32
|
+
static _create({ connection, contextIds, defaultViewport, closeCallback, }: {
|
|
45
33
|
connection: Connection;
|
|
46
34
|
contextIds: string[];
|
|
47
35
|
defaultViewport: Viewport;
|
|
48
|
-
process?: ChildProcess;
|
|
49
36
|
closeCallback?: BrowserCloseCallback;
|
|
50
37
|
}): Promise<Browser>;
|
|
51
38
|
get _targets(): Map<string, Target>;
|
|
52
|
-
constructor(connection: Connection, contextIds: string[], defaultViewport: Viewport,
|
|
53
|
-
/**
|
|
54
|
-
* The spawned browser process. Returns `null` if the browser instance was created with
|
|
55
|
-
* {@link Puppeteer.connect}.
|
|
56
|
-
*/
|
|
57
|
-
process(): ChildProcess | null;
|
|
58
|
-
/**
|
|
59
|
-
* Creates a new incognito browser context. This won't share cookies/cache with other
|
|
60
|
-
* browser contexts.
|
|
61
|
-
*
|
|
62
|
-
* @example
|
|
63
|
-
* ```js
|
|
64
|
-
* (async () => {
|
|
65
|
-
* const browser = await puppeteer.launch();
|
|
66
|
-
* // Create a new incognito browser context.
|
|
67
|
-
* const context = await browser.createIncognitoBrowserContext();
|
|
68
|
-
* // Create a new page in a pristine context.
|
|
69
|
-
* const page = await context.newPage();
|
|
70
|
-
* // Do stuff
|
|
71
|
-
* await page.goto('https://example.com');
|
|
72
|
-
* })();
|
|
73
|
-
* ```
|
|
74
|
-
*/
|
|
75
|
-
createIncognitoBrowserContext(options?: BrowserContextOptions): Promise<BrowserContext>;
|
|
76
|
-
/**
|
|
77
|
-
* Returns an array of all open browser contexts. In a newly created browser, this will
|
|
78
|
-
* return a single instance of {@link BrowserContext}.
|
|
79
|
-
*/
|
|
39
|
+
constructor(connection: Connection, contextIds: string[], defaultViewport: Viewport, closeCallback?: BrowserCloseCallback);
|
|
80
40
|
browserContexts(): BrowserContext[];
|
|
81
|
-
/**
|
|
82
|
-
* Returns the default browser context. The default browser context cannot be closed.
|
|
83
|
-
*/
|
|
84
|
-
defaultBrowserContext(): BrowserContext;
|
|
85
|
-
_disposeContext(contextId?: string): Promise<void>;
|
|
86
|
-
/**
|
|
87
|
-
* The browser websocket endpoint which can be used as an argument to
|
|
88
|
-
* {@link Puppeteer.connect}.
|
|
89
|
-
*
|
|
90
|
-
* @returns The Browser websocket url.
|
|
91
|
-
*
|
|
92
|
-
* @remarks
|
|
93
|
-
*
|
|
94
|
-
* The format is `ws://${host}:${port}/devtools/browser/<id>`.
|
|
95
|
-
*
|
|
96
|
-
* You can find the `webSocketDebuggerUrl` from `http://${host}:${port}/json/version`.
|
|
97
|
-
* Learn more about the
|
|
98
|
-
* {@link https://chromedevtools.github.io/devtools-protocol | devtools protocol} and
|
|
99
|
-
* the {@link
|
|
100
|
-
* https://chromedevtools.github.io/devtools-protocol/#how-do-i-access-the-browser-target
|
|
101
|
-
* | browser endpoint}.
|
|
102
|
-
*/
|
|
103
|
-
wsEndpoint(): string;
|
|
104
|
-
/**
|
|
105
|
-
* Promise which resolves to a new {@link Page} object. The Page is created in
|
|
106
|
-
* a default browser context.
|
|
107
|
-
*/
|
|
108
41
|
newPage(): Promise<Page>;
|
|
109
42
|
_createPageInContext(contextId?: string): Promise<Page>;
|
|
110
|
-
/**
|
|
111
|
-
* All active targets inside the Browser. In case of multiple browser contexts, returns
|
|
112
|
-
* an array with all the targets in all browser contexts.
|
|
113
|
-
*/
|
|
114
43
|
targets(): Target[];
|
|
115
|
-
/**
|
|
116
|
-
* The target associated with the browser.
|
|
117
|
-
*/
|
|
118
|
-
target(): Target;
|
|
119
|
-
/**
|
|
120
|
-
* Searches for a target in all browser contexts.
|
|
121
|
-
*
|
|
122
|
-
* @param predicate - A function to be run for every target.
|
|
123
|
-
* @returns The first target found that matches the `predicate` function.
|
|
124
|
-
*
|
|
125
|
-
* @example
|
|
126
|
-
*
|
|
127
|
-
* An example of finding a target for a page opened via `window.open`:
|
|
128
|
-
* ```js
|
|
129
|
-
* await page.evaluate(() => window.open('https://www.example.com/'));
|
|
130
|
-
* const newWindowTarget = await browser.waitForTarget(target => target.url() === 'https://www.example.com/');
|
|
131
|
-
* ```
|
|
132
|
-
*/
|
|
133
44
|
waitForTarget(predicate: (x: Target) => boolean | Promise<boolean>, options?: WaitForTargetOptions): Promise<Target>;
|
|
134
|
-
/**
|
|
135
|
-
* An array of all open pages inside the Browser.
|
|
136
|
-
*
|
|
137
|
-
* @remarks
|
|
138
|
-
*
|
|
139
|
-
* In case of multiple browser contexts, returns an array with all the pages in all
|
|
140
|
-
* browser contexts. Non-visible pages, such as `"background_page"`, will not be listed
|
|
141
|
-
* here. You can find them using {@link Target.page}.
|
|
142
|
-
*/
|
|
143
45
|
pages(): Promise<Page[]>;
|
|
144
|
-
/**
|
|
145
|
-
* A string representing the browser name and version.
|
|
146
|
-
*
|
|
147
|
-
* @remarks
|
|
148
|
-
*
|
|
149
|
-
* For headless Chromium, this is similar to `HeadlessChrome/61.0.3153.0`. For
|
|
150
|
-
* non-headless, this is similar to `Chrome/61.0.3153.0`.
|
|
151
|
-
*
|
|
152
|
-
* The format of browser.version() might change with future releases of Chromium.
|
|
153
|
-
*/
|
|
154
|
-
version(): Promise<string>;
|
|
155
|
-
/**
|
|
156
|
-
* The browser's original user agent. Pages can override the browser user agent with
|
|
157
|
-
* {@link Page.setUserAgent}.
|
|
158
|
-
*/
|
|
159
|
-
userAgent(): Promise<string>;
|
|
160
|
-
/**
|
|
161
|
-
* Closes Chromium and all of its pages (if any were opened). The {@link Browser} object
|
|
162
|
-
* itself is considered to be disposed and cannot be used anymore.
|
|
163
|
-
*/
|
|
164
46
|
close(): Promise<void>;
|
|
165
|
-
/**
|
|
166
|
-
* Disconnects Puppeteer from the browser, but leaves the Chromium process running.
|
|
167
|
-
* After calling `disconnect`, the {@link Browser} object is considered disposed and
|
|
168
|
-
* cannot be used anymore.
|
|
169
|
-
*/
|
|
170
47
|
disconnect(): void;
|
|
171
|
-
/**
|
|
172
|
-
* Indicates that the browser is connected.
|
|
173
|
-
*/
|
|
174
|
-
isConnected(): boolean;
|
|
175
48
|
}
|
|
176
49
|
export declare class BrowserContext extends EventEmitter {
|
|
177
50
|
#private;
|
|
@@ -181,29 +54,7 @@ export declare class BrowserContext extends EventEmitter {
|
|
|
181
54
|
timeout?: number;
|
|
182
55
|
}): Promise<Target>;
|
|
183
56
|
pages(): Promise<Page[]>;
|
|
184
|
-
/**
|
|
185
|
-
* Returns whether BrowserContext is incognito.
|
|
186
|
-
* The default browser context is the only non-incognito browser context.
|
|
187
|
-
*
|
|
188
|
-
* @remarks
|
|
189
|
-
* The default browser context cannot be closed.
|
|
190
|
-
*/
|
|
191
|
-
isIncognito(): boolean;
|
|
192
|
-
/**
|
|
193
|
-
* Creates a new page in the browser context.
|
|
194
|
-
*/
|
|
195
57
|
newPage(): Promise<Page>;
|
|
196
|
-
/**
|
|
197
|
-
* The browser this browser context belongs to.
|
|
198
|
-
*/
|
|
199
58
|
browser(): Browser;
|
|
200
|
-
/**
|
|
201
|
-
* Closes the browser context. All the targets that belong to the browser context
|
|
202
|
-
* will be closed.
|
|
203
|
-
*
|
|
204
|
-
* @remarks
|
|
205
|
-
* Only incognito browser contexts can be closed.
|
|
206
|
-
*/
|
|
207
|
-
close(): Promise<void>;
|
|
208
59
|
}
|
|
209
60
|
export {};
|