@remotion/renderer 3.0.21 → 3.0.24
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/calculate-asset-positions.d.ts +2 -2
- package/dist/assets/convert-assets-to-file-urls.d.ts +2 -2
- package/dist/assets/download-and-map-assets-to-file.d.ts +1 -1
- package/dist/assets/ffmpeg-volume-expression.d.ts +1 -1
- package/dist/assets/flatten-volume-array.d.ts +1 -1
- package/dist/assets/get-audio-channels.d.ts +1 -1
- package/dist/assets/types.d.ts +1 -1
- package/dist/browser/Browser.d.ts +5 -159
- package/dist/browser/Browser.js +5 -190
- 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 +5 -6
- package/dist/browser/DOMWorld.js +2 -18
- 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 +10 -14
- package/dist/browser/FrameManager.js +3 -19
- 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} +7 -13
- package/dist/browser/{page.js → Page.js} +14 -9
- 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/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 +3 -3
- package/dist/browser/util.js +1 -1
- package/dist/browser-log.d.ts +1 -1
- package/dist/calculate-ffmpeg-filters.d.ts +1 -1
- package/dist/can-use-parallel-encoding.d.ts +1 -1
- package/dist/cancel.d.ts +7 -0
- package/dist/cancel.js +25 -0
- package/dist/combine-videos.d.ts +1 -1
- package/dist/convert-to-pcm.d.ts +1 -1
- package/dist/create-silent-audio.d.ts +1 -1
- package/dist/cycle-browser-tabs.d.ts +1 -1
- package/dist/delay-render-embedded-stack.d.ts +1 -1
- package/dist/ensure-faststart.d.ts +1 -0
- package/dist/ensure-faststart.js +14 -0
- package/dist/ensure-presentation-timestamp.d.ts +1 -1
- package/dist/ensure-presentation-timestamp.js +1 -1
- package/dist/error-handling/handle-javascript-exception.d.ts +2 -2
- package/dist/error-handling/handle-javascript-exception.js +2 -2
- package/dist/error-handling/symbolicate-error.d.ts +1 -1
- package/dist/error-handling/symbolicateable-error.d.ts +1 -1
- package/dist/extract-frame-from-video.d.ts +7 -2
- package/dist/extract-frame-from-video.js +62 -11
- 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-audio-codec-name.d.ts +1 -1
- package/dist/get-browser-instance.d.ts +4 -3
- package/dist/get-codec-name.d.ts +1 -1
- package/dist/get-compositions.d.ts +4 -4
- package/dist/get-compositions.js +2 -2
- package/dist/get-duration-from-frame-range.d.ts +1 -1
- package/dist/get-extension-from-codec.d.ts +1 -1
- package/dist/get-frame-to-render.d.ts +1 -1
- package/dist/get-local-browser-executable.d.ts +1 -1
- package/dist/get-local-browser-executable.js +7 -5
- package/dist/get-prores-profile-name.d.ts +1 -1
- package/dist/get-video-info.d.ts +8 -0
- package/dist/get-video-info.js +45 -0
- package/dist/image-format.d.ts +1 -1
- package/dist/index.d.ts +0 -1
- package/dist/is-vp9-video.d.ts +3 -0
- package/dist/is-vp9-video.js +24 -0
- package/dist/last-frame-from-video-cache.d.ts +5 -1
- package/dist/last-frame-from-video-cache.js +6 -1
- package/dist/merge-audio-track.d.ts +1 -1
- package/dist/offthread/index.d.ts +0 -0
- package/dist/offthread/index.js +1 -0
- package/dist/offthread-video-server.d.ts +4 -3
- package/dist/offthread-video-server.js +14 -3
- package/dist/open-browser.d.ts +5 -3
- package/dist/open-browser.js +8 -8
- package/dist/prepare-server.d.ts +2 -2
- package/dist/preprocess-audio-track.d.ts +2 -2
- package/dist/prespawn-ffmpeg.d.ts +2 -2
- package/dist/provide-screenshot.d.ts +4 -4
- package/dist/provide-screenshot.js +0 -1
- package/dist/puppeteer-evaluate.d.ts +1 -1
- package/dist/puppeteer-evaluate.js +3 -4
- package/dist/puppeteer-screenshot.d.ts +3 -2
- package/dist/puppeteer-screenshot.js +2 -4
- package/dist/render-frames.d.ts +9 -9
- package/dist/render-frames.js +18 -10
- package/dist/render-gif.d.ts +2 -0
- package/dist/render-gif.js +242 -0
- package/dist/render-media.d.ts +8 -8
- package/dist/render-still.d.ts +6 -6
- package/dist/screenshot-dom-element.d.ts +6 -7
- package/dist/screenshot-dom-element.js +3 -6
- package/dist/screenshot-task.d.ts +3 -2
- package/dist/screenshot-task.js +3 -5
- package/dist/seek-to-frame.d.ts +2 -2
- package/dist/serve-handler/index.d.ts +1 -1
- package/dist/serve-handler/index.js +0 -1
- package/dist/serve-static.d.ts +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 +3 -3
- package/dist/stringify-ffmpeg-filter.d.ts +2 -2
- package/dist/stringify-ffmpeg-filter.js +3 -0
- package/dist/symbolicate-stacktrace.d.ts +1 -1
- package/dist/types.d.ts +1 -1
- package/dist/validate-even-dimensions-with-codec.d.ts +1 -1
- package/dist/validate-offthreadvideo-image-format.d.ts +1 -0
- package/dist/validate-offthreadvideo-image-format.js +15 -0
- package/dist/validate-output-filename.d.ts +1 -1
- package/package.json +10 -6
- 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/browser/Launcher.js
CHANGED
|
@@ -56,7 +56,7 @@ class ChromeLauncher {
|
|
|
56
56
|
this._preferredRevision = preferredRevision;
|
|
57
57
|
}
|
|
58
58
|
async launch(options) {
|
|
59
|
-
const { args = [], dumpio = false,
|
|
59
|
+
const { args = [], dumpio = false, executablePath, pipe = false, env = process.env, handleSIGINT = true, handleSIGTERM = true, handleSIGHUP = true, defaultViewport, timeout = 30000, debuggingPort, } = options;
|
|
60
60
|
const chromeArguments = args;
|
|
61
61
|
if (!chromeArguments.some((argument) => {
|
|
62
62
|
return argument.startsWith('--remote-debugging-');
|
|
@@ -83,12 +83,7 @@ class ChromeLauncher {
|
|
|
83
83
|
(0, assert_1.assert)(typeof userDataDir === 'string', '`--user-data-dir` is malformed');
|
|
84
84
|
isTempUserDataDir = false;
|
|
85
85
|
let chromeExecutable = executablePath;
|
|
86
|
-
if (
|
|
87
|
-
// executablePath is detected by channel, so it should not be specified by user.
|
|
88
|
-
(0, assert_1.assert)(!chromeExecutable, '`executablePath` must not be specified when `channel` is given.');
|
|
89
|
-
chromeExecutable = executablePathForChannel(channel);
|
|
90
|
-
}
|
|
91
|
-
else if (!chromeExecutable) {
|
|
86
|
+
if (!chromeExecutable) {
|
|
92
87
|
const { missingText, executablePath: exPath } = resolveExecutablePath(this);
|
|
93
88
|
if (missingText) {
|
|
94
89
|
throw new Error(missingText);
|
|
@@ -120,7 +115,6 @@ class ChromeLauncher {
|
|
|
120
115
|
connection,
|
|
121
116
|
contextIds: [],
|
|
122
117
|
defaultViewport,
|
|
123
|
-
process: runner.proc,
|
|
124
118
|
closeCallback: runner.close.bind(runner),
|
|
125
119
|
});
|
|
126
120
|
}
|
|
@@ -128,23 +122,18 @@ class ChromeLauncher {
|
|
|
128
122
|
runner.kill();
|
|
129
123
|
throw error;
|
|
130
124
|
}
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
throw error;
|
|
140
|
-
}
|
|
125
|
+
try {
|
|
126
|
+
await browser.waitForTarget((t) => {
|
|
127
|
+
return t.type() === 'page';
|
|
128
|
+
}, { timeout });
|
|
129
|
+
}
|
|
130
|
+
catch (error) {
|
|
131
|
+
await browser.close();
|
|
132
|
+
throw error;
|
|
141
133
|
}
|
|
142
134
|
return browser;
|
|
143
135
|
}
|
|
144
|
-
executablePath(
|
|
145
|
-
if (channel) {
|
|
146
|
-
return executablePathForChannel(channel);
|
|
147
|
-
}
|
|
136
|
+
executablePath() {
|
|
148
137
|
const results = resolveExecutablePath(this);
|
|
149
138
|
return results.executablePath;
|
|
150
139
|
}
|
|
@@ -157,19 +146,9 @@ class FirefoxLauncher {
|
|
|
157
146
|
this._preferredRevision = preferredRevision;
|
|
158
147
|
}
|
|
159
148
|
async launch(options) {
|
|
160
|
-
const {
|
|
149
|
+
const { dumpio = false, executablePath = null, env = process.env, handleSIGINT = true, handleSIGTERM = true, handleSIGHUP = true, defaultViewport, timeout = 30000, extraPrefsFirefox = {}, debuggingPort = null, } = options;
|
|
161
150
|
const firefoxArguments = [];
|
|
162
|
-
|
|
163
|
-
firefoxArguments.push(...this.defaultArgs(options));
|
|
164
|
-
}
|
|
165
|
-
else if (Array.isArray(ignoreDefaultArgs)) {
|
|
166
|
-
firefoxArguments.push(...this.defaultArgs(options).filter((arg) => {
|
|
167
|
-
return !ignoreDefaultArgs.includes(arg);
|
|
168
|
-
}));
|
|
169
|
-
}
|
|
170
|
-
else {
|
|
171
|
-
firefoxArguments.push(...args);
|
|
172
|
-
}
|
|
151
|
+
firefoxArguments.push(...this.defaultArgs(options));
|
|
173
152
|
if (!firefoxArguments.some((argument) => {
|
|
174
153
|
return argument.startsWith('--remote-debugging-');
|
|
175
154
|
})) {
|
|
@@ -234,7 +213,6 @@ class FirefoxLauncher {
|
|
|
234
213
|
connection,
|
|
235
214
|
contextIds: [],
|
|
236
215
|
defaultViewport,
|
|
237
|
-
process: runner.proc,
|
|
238
216
|
closeCallback: runner.close.bind(runner),
|
|
239
217
|
});
|
|
240
218
|
}
|
|
@@ -242,16 +220,14 @@ class FirefoxLauncher {
|
|
|
242
220
|
runner.kill();
|
|
243
221
|
throw error;
|
|
244
222
|
}
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
throw error;
|
|
254
|
-
}
|
|
223
|
+
try {
|
|
224
|
+
await browser.waitForTarget((t) => {
|
|
225
|
+
return t.type() === 'page';
|
|
226
|
+
}, { timeout });
|
|
227
|
+
}
|
|
228
|
+
catch (error) {
|
|
229
|
+
await browser.close();
|
|
230
|
+
throw error;
|
|
255
231
|
}
|
|
256
232
|
return browser;
|
|
257
233
|
}
|
|
@@ -494,80 +470,6 @@ class FirefoxLauncher {
|
|
|
494
470
|
return temporaryProfilePath;
|
|
495
471
|
}
|
|
496
472
|
}
|
|
497
|
-
function executablePathForChannel(channel) {
|
|
498
|
-
const platform = os.platform();
|
|
499
|
-
let chromePath;
|
|
500
|
-
switch (platform) {
|
|
501
|
-
case 'win32':
|
|
502
|
-
switch (channel) {
|
|
503
|
-
case 'chrome':
|
|
504
|
-
chromePath = `${process.env.PROGRAMFILES}\\Google\\Chrome\\Application\\chrome.exe`;
|
|
505
|
-
break;
|
|
506
|
-
case 'chrome-beta':
|
|
507
|
-
chromePath = `${process.env.PROGRAMFILES}\\Google\\Chrome Beta\\Application\\chrome.exe`;
|
|
508
|
-
break;
|
|
509
|
-
case 'chrome-canary':
|
|
510
|
-
chromePath = `${process.env.PROGRAMFILES}\\Google\\Chrome SxS\\Application\\chrome.exe`;
|
|
511
|
-
break;
|
|
512
|
-
case 'chrome-dev':
|
|
513
|
-
chromePath = `${process.env.PROGRAMFILES}\\Google\\Chrome Dev\\Application\\chrome.exe`;
|
|
514
|
-
break;
|
|
515
|
-
default:
|
|
516
|
-
throw new Error('unknown chrome release channel');
|
|
517
|
-
}
|
|
518
|
-
break;
|
|
519
|
-
case 'darwin':
|
|
520
|
-
switch (channel) {
|
|
521
|
-
case 'chrome':
|
|
522
|
-
chromePath =
|
|
523
|
-
'/Applications/Google Chrome.app/Contents/MacOS/Google Chrome';
|
|
524
|
-
break;
|
|
525
|
-
case 'chrome-beta':
|
|
526
|
-
chromePath =
|
|
527
|
-
'/Applications/Google Chrome Beta.app/Contents/MacOS/Google Chrome Beta';
|
|
528
|
-
break;
|
|
529
|
-
case 'chrome-canary':
|
|
530
|
-
chromePath =
|
|
531
|
-
'/Applications/Google Chrome Canary.app/Contents/MacOS/Google Chrome Canary';
|
|
532
|
-
break;
|
|
533
|
-
case 'chrome-dev':
|
|
534
|
-
chromePath =
|
|
535
|
-
'/Applications/Google Chrome Dev.app/Contents/MacOS/Google Chrome Dev';
|
|
536
|
-
break;
|
|
537
|
-
default:
|
|
538
|
-
throw new Error('unknown chrome release channel');
|
|
539
|
-
}
|
|
540
|
-
break;
|
|
541
|
-
case 'linux':
|
|
542
|
-
switch (channel) {
|
|
543
|
-
case 'chrome':
|
|
544
|
-
chromePath = '/opt/google/chrome/chrome';
|
|
545
|
-
break;
|
|
546
|
-
case 'chrome-beta':
|
|
547
|
-
chromePath = '/opt/google/chrome-beta/chrome';
|
|
548
|
-
break;
|
|
549
|
-
case 'chrome-dev':
|
|
550
|
-
chromePath = '/opt/google/chrome-unstable/chrome';
|
|
551
|
-
break;
|
|
552
|
-
default:
|
|
553
|
-
throw new Error('unknown chrome release channel');
|
|
554
|
-
}
|
|
555
|
-
break;
|
|
556
|
-
default:
|
|
557
|
-
throw new Error('unknown OS');
|
|
558
|
-
}
|
|
559
|
-
if (!chromePath) {
|
|
560
|
-
throw new Error(`Unable to detect browser executable path for '${channel}' on ${platform}.`);
|
|
561
|
-
}
|
|
562
|
-
// Check if Chrome exists and is accessible.
|
|
563
|
-
try {
|
|
564
|
-
fs.accessSync(chromePath);
|
|
565
|
-
}
|
|
566
|
-
catch (error) {
|
|
567
|
-
throw new Error(`Could not find Google Chrome executable for channel '${channel}' at '${chromePath}'.`);
|
|
568
|
-
}
|
|
569
|
-
return chromePath;
|
|
570
|
-
}
|
|
571
473
|
function resolveExecutablePath(launcher) {
|
|
572
474
|
const { product, _preferredRevision } = launcher;
|
|
573
475
|
const browserFetcher = new BrowserFetcher_1.BrowserFetcher({
|
|
@@ -14,12 +14,12 @@
|
|
|
14
14
|
* limitations under the License.
|
|
15
15
|
*/
|
|
16
16
|
import { TimeoutError } from './Errors';
|
|
17
|
-
import { Frame, FrameManager } from './FrameManager';
|
|
18
|
-
import { HTTPResponse } from './HTTPResponse';
|
|
19
|
-
export declare type PuppeteerLifeCycleEvent = 'load'
|
|
17
|
+
import type { Frame, FrameManager } from './FrameManager';
|
|
18
|
+
import type { HTTPResponse } from './HTTPResponse';
|
|
19
|
+
export declare type PuppeteerLifeCycleEvent = 'load';
|
|
20
20
|
export declare class LifecycleWatcher {
|
|
21
21
|
#private;
|
|
22
|
-
constructor(frameManager: FrameManager, frame: Frame, waitUntil: PuppeteerLifeCycleEvent
|
|
22
|
+
constructor(frameManager: FrameManager, frame: Frame, waitUntil: PuppeteerLifeCycleEvent, timeout: number);
|
|
23
23
|
navigationResponse(): HTTPResponse | null;
|
|
24
24
|
sameDocumentNavigationPromise(): Promise<Error | undefined>;
|
|
25
25
|
newDocumentNavigationPromise(): Promise<Error | undefined>;
|
|
@@ -34,12 +34,7 @@ const Errors_1 = require("./Errors");
|
|
|
34
34
|
const FrameManager_1 = require("./FrameManager");
|
|
35
35
|
const NetworkManager_1 = require("./NetworkManager");
|
|
36
36
|
const util_1 = require("./util");
|
|
37
|
-
const puppeteerToProtocolLifecycle = new Map([
|
|
38
|
-
['load', 'load'],
|
|
39
|
-
['domcontentloaded', 'DOMContentLoaded'],
|
|
40
|
-
['networkidle0', 'networkIdle'],
|
|
41
|
-
['networkidle2', 'networkAlmostIdle'],
|
|
42
|
-
]);
|
|
37
|
+
const puppeteerToProtocolLifecycle = new Map([['load', 'load']]);
|
|
43
38
|
const noop = () => undefined;
|
|
44
39
|
class LifecycleWatcher {
|
|
45
40
|
constructor(frameManager, frame, waitUntil, timeout) {
|
|
@@ -71,17 +66,9 @@ class LifecycleWatcher {
|
|
|
71
66
|
_LifecycleWatcher_hasSameDocumentNavigation.set(this, void 0);
|
|
72
67
|
_LifecycleWatcher_newDocumentNavigation.set(this, void 0);
|
|
73
68
|
_LifecycleWatcher_swapped.set(this, void 0);
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
else if (typeof waitUntil === 'string') {
|
|
78
|
-
waitUntil = [waitUntil];
|
|
79
|
-
}
|
|
80
|
-
__classPrivateFieldSet(this, _LifecycleWatcher_expectedLifecycle, waitUntil.map((value) => {
|
|
81
|
-
const protocolEvent = puppeteerToProtocolLifecycle.get(value);
|
|
82
|
-
(0, assert_1.assert)(protocolEvent, 'Unknown value for options.waitUntil: ' + value);
|
|
83
|
-
return protocolEvent;
|
|
84
|
-
}), "f");
|
|
69
|
+
const protocolEvent = puppeteerToProtocolLifecycle.get(waitUntil);
|
|
70
|
+
(0, assert_1.assert)(protocolEvent, 'Unknown value for options.waitUntil: ' + waitUntil);
|
|
71
|
+
__classPrivateFieldSet(this, _LifecycleWatcher_expectedLifecycle, [waitUntil], "f");
|
|
85
72
|
__classPrivateFieldSet(this, _LifecycleWatcher_frameManager, frameManager, "f");
|
|
86
73
|
__classPrivateFieldSet(this, _LifecycleWatcher_frame, frame, "f");
|
|
87
74
|
__classPrivateFieldSet(this, _LifecycleWatcher_timeout, timeout, "f");
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { Protocol } from 'devtools-protocol';
|
|
2
|
-
import { HTTPRequest } from './HTTPRequest';
|
|
1
|
+
import type { Protocol } from 'devtools-protocol';
|
|
2
|
+
import type { HTTPRequest } from './HTTPRequest';
|
|
3
3
|
declare type QueuedEventGroup = {
|
|
4
4
|
responseReceivedEvent: Protocol.Network.ResponseReceivedEvent;
|
|
5
5
|
loadingFinishedEvent?: Protocol.Network.LoadingFinishedEvent;
|
|
@@ -22,8 +22,6 @@ export declare class NetworkEventManager {
|
|
|
22
22
|
storeRequestWillBeSent(networkRequestId: NetworkRequestId, event: Protocol.Network.RequestWillBeSentEvent): void;
|
|
23
23
|
getRequestWillBeSent(networkRequestId: NetworkRequestId): Protocol.Network.RequestWillBeSentEvent | undefined;
|
|
24
24
|
forgetRequestWillBeSent(networkRequestId: NetworkRequestId): void;
|
|
25
|
-
getRequestPaused(networkRequestId: NetworkRequestId): Protocol.Fetch.RequestPausedEvent | undefined;
|
|
26
|
-
forgetRequestPaused(networkRequestId: NetworkRequestId): void;
|
|
27
25
|
storeRequestPaused(networkRequestId: NetworkRequestId, event: Protocol.Fetch.RequestPausedEvent): void;
|
|
28
26
|
getRequest(networkRequestId: NetworkRequestId): HTTPRequest | undefined;
|
|
29
27
|
storeRequest(networkRequestId: NetworkRequestId, request: HTTPRequest): void;
|
|
@@ -9,50 +9,9 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
9
9
|
exports.NetworkEventManager = void 0;
|
|
10
10
|
class NetworkEventManager {
|
|
11
11
|
constructor() {
|
|
12
|
-
/*
|
|
13
|
-
* There are four possible orders of events:
|
|
14
|
-
* A. `_onRequestWillBeSent`
|
|
15
|
-
* B. `_onRequestWillBeSent`, `_onRequestPaused`
|
|
16
|
-
* C. `_onRequestPaused`, `_onRequestWillBeSent`
|
|
17
|
-
* D. `_onRequestPaused`, `_onRequestWillBeSent`, `_onRequestPaused`,
|
|
18
|
-
* `_onRequestWillBeSent`, `_onRequestPaused`, `_onRequestPaused`
|
|
19
|
-
* (see crbug.com/1196004)
|
|
20
|
-
*
|
|
21
|
-
* For `_onRequest` we need the event from `_onRequestWillBeSent` and
|
|
22
|
-
* optionally the `interceptionId` from `_onRequestPaused`.
|
|
23
|
-
*
|
|
24
|
-
* If request interception is disabled, call `_onRequest` once per call to
|
|
25
|
-
* `_onRequestWillBeSent`.
|
|
26
|
-
* If request interception is enabled, call `_onRequest` once per call to
|
|
27
|
-
* `_onRequestPaused` (once per `interceptionId`).
|
|
28
|
-
*
|
|
29
|
-
* Events are stored to allow for subsequent events to call `_onRequest`.
|
|
30
|
-
*
|
|
31
|
-
* Note that (chains of) redirect requests have the same `requestId` (!) as
|
|
32
|
-
* the original request. We have to anticipate series of events like these:
|
|
33
|
-
* A. `_onRequestWillBeSent`,
|
|
34
|
-
* `_onRequestWillBeSent`, ...
|
|
35
|
-
* B. `_onRequestWillBeSent`, `_onRequestPaused`,
|
|
36
|
-
* `_onRequestWillBeSent`, `_onRequestPaused`, ...
|
|
37
|
-
* C. `_onRequestWillBeSent`, `_onRequestPaused`,
|
|
38
|
-
* `_onRequestPaused`, `_onRequestWillBeSent`, ...
|
|
39
|
-
* D. `_onRequestPaused`, `_onRequestWillBeSent`,
|
|
40
|
-
* `_onRequestPaused`, `_onRequestWillBeSent`, `_onRequestPaused`,
|
|
41
|
-
* `_onRequestWillBeSent`, `_onRequestPaused`, `_onRequestPaused`, ...
|
|
42
|
-
* (see crbug.com/1196004)
|
|
43
|
-
*/
|
|
44
12
|
_NetworkEventManager_requestWillBeSentMap.set(this, new Map());
|
|
45
13
|
_NetworkEventManager_requestPausedMap.set(this, new Map());
|
|
46
14
|
_NetworkEventManager_httpRequestsMap.set(this, new Map());
|
|
47
|
-
/*
|
|
48
|
-
* The below maps are used to reconcile Network.responseReceivedExtraInfo
|
|
49
|
-
* events with their corresponding request. Each response and redirect
|
|
50
|
-
* response gets an ExtraInfo event, and we don't know which will come first.
|
|
51
|
-
* This means that we have to store a Response or an ExtraInfo for each
|
|
52
|
-
* response, and emit the event when we get both of them. In addition, to
|
|
53
|
-
* handle redirects, we have to make them Arrays to represent the chain of
|
|
54
|
-
* events.
|
|
55
|
-
*/
|
|
56
15
|
_NetworkEventManager_responseReceivedExtraInfoMap.set(this, new Map());
|
|
57
16
|
_NetworkEventManager_queuedRedirectInfoMap.set(this, new Map());
|
|
58
17
|
_NetworkEventManager_queuedEventGroupMap.set(this, new Map());
|
|
@@ -96,12 +55,6 @@ class NetworkEventManager {
|
|
|
96
55
|
forgetRequestWillBeSent(networkRequestId) {
|
|
97
56
|
__classPrivateFieldGet(this, _NetworkEventManager_requestWillBeSentMap, "f").delete(networkRequestId);
|
|
98
57
|
}
|
|
99
|
-
getRequestPaused(networkRequestId) {
|
|
100
|
-
return __classPrivateFieldGet(this, _NetworkEventManager_requestPausedMap, "f").get(networkRequestId);
|
|
101
|
-
}
|
|
102
|
-
forgetRequestPaused(networkRequestId) {
|
|
103
|
-
__classPrivateFieldGet(this, _NetworkEventManager_requestPausedMap, "f").delete(networkRequestId);
|
|
104
|
-
}
|
|
105
58
|
storeRequestPaused(networkRequestId, event) {
|
|
106
59
|
__classPrivateFieldGet(this, _NetworkEventManager_requestPausedMap, "f").set(networkRequestId, event);
|
|
107
60
|
}
|
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
*/
|
|
16
16
|
import type { ProtocolMapping } from 'devtools-protocol/types/protocol-mapping';
|
|
17
17
|
import { EventEmitter } from './EventEmitter';
|
|
18
|
-
import { Frame } from './FrameManager';
|
|
18
|
+
import type { Frame } from './FrameManager';
|
|
19
19
|
export declare const NetworkManagerEmittedEvents: {
|
|
20
20
|
readonly Request: symbol;
|
|
21
21
|
};
|
|
@@ -29,8 +29,6 @@ export declare class NetworkManager extends EventEmitter {
|
|
|
29
29
|
#private;
|
|
30
30
|
constructor(client: CDPSession, frameManager: FrameManager);
|
|
31
31
|
initialize(): Promise<void>;
|
|
32
|
-
setExtraHTTPHeaders(extraHTTPHeaders: Record<string, string>): Promise<void>;
|
|
33
|
-
extraHTTPHeaders(): Record<string, string>;
|
|
34
32
|
numRequestsInProgress(): number;
|
|
35
33
|
}
|
|
36
34
|
export {};
|
|
@@ -25,15 +25,13 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
|
|
|
25
25
|
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
|
|
26
26
|
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
27
27
|
};
|
|
28
|
-
var _NetworkManager_instances, _NetworkManager_client, _NetworkManager_frameManager, _NetworkManager_networkEventManager,
|
|
28
|
+
var _NetworkManager_instances, _NetworkManager_client, _NetworkManager_frameManager, _NetworkManager_networkEventManager, _NetworkManager_onRequestWillBeSent, _NetworkManager_onAuthRequired, _NetworkManager_onRequestPaused, _NetworkManager_patchRequestEventHeaders, _NetworkManager_onRequest, _NetworkManager_onRequestServedFromCache, _NetworkManager_handleRequestRedirect, _NetworkManager_emitResponseEvent, _NetworkManager_onResponseReceived, _NetworkManager_onResponseReceivedExtraInfo, _NetworkManager_forgetRequest, _NetworkManager_onLoadingFinished, _NetworkManager_emitLoadingFinished, _NetworkManager_onLoadingFailed, _NetworkManager_emitLoadingFailed;
|
|
29
29
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
30
30
|
exports.NetworkManager = exports.NetworkManagerEmittedEvents = void 0;
|
|
31
|
-
const assert_1 = require("./assert");
|
|
32
31
|
const EventEmitter_1 = require("./EventEmitter");
|
|
33
32
|
const HTTPRequest_1 = require("./HTTPRequest");
|
|
34
33
|
const HTTPResponse_1 = require("./HTTPResponse");
|
|
35
34
|
const NetworkEventManager_1 = require("./NetworkEventManager");
|
|
36
|
-
const util_1 = require("./util");
|
|
37
35
|
exports.NetworkManagerEmittedEvents = {
|
|
38
36
|
Request: Symbol('NetworkManager.Request'),
|
|
39
37
|
};
|
|
@@ -44,8 +42,6 @@ class NetworkManager extends EventEmitter_1.EventEmitter {
|
|
|
44
42
|
_NetworkManager_client.set(this, void 0);
|
|
45
43
|
_NetworkManager_frameManager.set(this, void 0);
|
|
46
44
|
_NetworkManager_networkEventManager.set(this, new NetworkEventManager_1.NetworkEventManager());
|
|
47
|
-
_NetworkManager_extraHTTPHeaders.set(this, {});
|
|
48
|
-
_NetworkManager_attemptedAuthentications.set(this, new Set());
|
|
49
45
|
__classPrivateFieldSet(this, _NetworkManager_client, client, "f");
|
|
50
46
|
__classPrivateFieldSet(this, _NetworkManager_frameManager, frameManager, "f");
|
|
51
47
|
__classPrivateFieldGet(this, _NetworkManager_client, "f").on('Fetch.requestPaused', __classPrivateFieldGet(this, _NetworkManager_instances, "m", _NetworkManager_onRequestPaused).bind(this));
|
|
@@ -60,32 +56,15 @@ class NetworkManager extends EventEmitter_1.EventEmitter {
|
|
|
60
56
|
async initialize() {
|
|
61
57
|
await __classPrivateFieldGet(this, _NetworkManager_client, "f").send('Network.enable');
|
|
62
58
|
}
|
|
63
|
-
async setExtraHTTPHeaders(extraHTTPHeaders) {
|
|
64
|
-
__classPrivateFieldSet(this, _NetworkManager_extraHTTPHeaders, {}, "f");
|
|
65
|
-
for (const key of Object.keys(extraHTTPHeaders)) {
|
|
66
|
-
const value = extraHTTPHeaders[key];
|
|
67
|
-
(0, assert_1.assert)((0, util_1.isString)(value), `Expected value of header "${key}" to be String, but "${typeof value}" is found.`);
|
|
68
|
-
__classPrivateFieldGet(this, _NetworkManager_extraHTTPHeaders, "f")[key.toLowerCase()] = value;
|
|
69
|
-
}
|
|
70
|
-
await __classPrivateFieldGet(this, _NetworkManager_client, "f").send('Network.setExtraHTTPHeaders', {
|
|
71
|
-
headers: __classPrivateFieldGet(this, _NetworkManager_extraHTTPHeaders, "f"),
|
|
72
|
-
});
|
|
73
|
-
}
|
|
74
|
-
extraHTTPHeaders() {
|
|
75
|
-
return { ...__classPrivateFieldGet(this, _NetworkManager_extraHTTPHeaders, "f") };
|
|
76
|
-
}
|
|
77
59
|
numRequestsInProgress() {
|
|
78
60
|
return __classPrivateFieldGet(this, _NetworkManager_networkEventManager, "f").numRequestsInProgress();
|
|
79
61
|
}
|
|
80
62
|
}
|
|
81
63
|
exports.NetworkManager = NetworkManager;
|
|
82
|
-
_NetworkManager_client = new WeakMap(), _NetworkManager_frameManager = new WeakMap(), _NetworkManager_networkEventManager = new WeakMap(),
|
|
64
|
+
_NetworkManager_client = new WeakMap(), _NetworkManager_frameManager = new WeakMap(), _NetworkManager_networkEventManager = new WeakMap(), _NetworkManager_instances = new WeakSet(), _NetworkManager_onRequestWillBeSent = function _NetworkManager_onRequestWillBeSent(event) {
|
|
83
65
|
__classPrivateFieldGet(this, _NetworkManager_instances, "m", _NetworkManager_onRequest).call(this, event, undefined);
|
|
84
66
|
}, _NetworkManager_onAuthRequired = function _NetworkManager_onAuthRequired(event) {
|
|
85
|
-
|
|
86
|
-
if (__classPrivateFieldGet(this, _NetworkManager_attemptedAuthentications, "f").has(event.requestId)) {
|
|
87
|
-
response = 'CancelAuth';
|
|
88
|
-
}
|
|
67
|
+
const response = 'Default';
|
|
89
68
|
const { username, password } = {
|
|
90
69
|
username: undefined,
|
|
91
70
|
password: undefined,
|
|
@@ -126,7 +105,6 @@ _NetworkManager_client = new WeakMap(), _NetworkManager_frameManager = new WeakM
|
|
|
126
105
|
...requestPausedEvent.request.headers,
|
|
127
106
|
};
|
|
128
107
|
}, _NetworkManager_onRequest = function _NetworkManager_onRequest(event, fetchRequestId) {
|
|
129
|
-
let redirectChain = [];
|
|
130
108
|
if (event.redirectResponse) {
|
|
131
109
|
// We want to emit a response and requestfinished for the
|
|
132
110
|
// redirectResponse, but we can't do so unless we have a
|
|
@@ -153,13 +131,12 @@ _NetworkManager_client = new WeakMap(), _NetworkManager_frameManager = new WeakM
|
|
|
153
131
|
// requestWillBeSent event.
|
|
154
132
|
if (_request) {
|
|
155
133
|
__classPrivateFieldGet(this, _NetworkManager_instances, "m", _NetworkManager_handleRequestRedirect).call(this, _request, event.redirectResponse, redirectResponseExtraInfo);
|
|
156
|
-
redirectChain = _request._redirectChain;
|
|
157
134
|
}
|
|
158
135
|
}
|
|
159
136
|
const frame = event.frameId
|
|
160
137
|
? __classPrivateFieldGet(this, _NetworkManager_frameManager, "f").frame(event.frameId)
|
|
161
138
|
: null;
|
|
162
|
-
const request = new HTTPRequest_1.HTTPRequest(frame, event
|
|
139
|
+
const request = new HTTPRequest_1.HTTPRequest(frame, event);
|
|
163
140
|
__classPrivateFieldGet(this, _NetworkManager_networkEventManager, "f").storeRequest(event.requestId, request);
|
|
164
141
|
this.emit(exports.NetworkManagerEmittedEvents.Request, request);
|
|
165
142
|
}, _NetworkManager_onRequestServedFromCache = function _NetworkManager_onRequestServedFromCache(event) {
|
|
@@ -168,10 +145,8 @@ _NetworkManager_client = new WeakMap(), _NetworkManager_frameManager = new WeakM
|
|
|
168
145
|
request._fromMemoryCache = true;
|
|
169
146
|
}
|
|
170
147
|
}, _NetworkManager_handleRequestRedirect = function _NetworkManager_handleRequestRedirect(request, responsePayload, extraInfo) {
|
|
171
|
-
const response = new HTTPResponse_1.HTTPResponse(
|
|
148
|
+
const response = new HTTPResponse_1.HTTPResponse(responsePayload, extraInfo);
|
|
172
149
|
request._response = response;
|
|
173
|
-
request._redirectChain.push(request);
|
|
174
|
-
response._resolveBody(new Error('Response body is unavailable for redirect responses'));
|
|
175
150
|
__classPrivateFieldGet(this, _NetworkManager_instances, "m", _NetworkManager_forgetRequest).call(this, request, false);
|
|
176
151
|
}, _NetworkManager_emitResponseEvent = function _NetworkManager_emitResponseEvent(responseReceived, extraInfo) {
|
|
177
152
|
const request = __classPrivateFieldGet(this, _NetworkManager_networkEventManager, "f").getRequest(responseReceived.requestId);
|
|
@@ -184,7 +159,7 @@ _NetworkManager_client = new WeakMap(), _NetworkManager_frameManager = new WeakM
|
|
|
184
159
|
console.log(new Error('Unexpected extraInfo events for request ' +
|
|
185
160
|
responseReceived.requestId));
|
|
186
161
|
}
|
|
187
|
-
const response = new HTTPResponse_1.HTTPResponse(
|
|
162
|
+
const response = new HTTPResponse_1.HTTPResponse(responseReceived.response, extraInfo);
|
|
188
163
|
request._response = response;
|
|
189
164
|
}, _NetworkManager_onResponseReceived = function _NetworkManager_onResponseReceived(event) {
|
|
190
165
|
const request = __classPrivateFieldGet(this, _NetworkManager_networkEventManager, "f").getRequest(event.requestId);
|
|
@@ -245,18 +220,12 @@ _NetworkManager_client = new WeakMap(), _NetworkManager_frameManager = new WeakM
|
|
|
245
220
|
__classPrivateFieldGet(this, _NetworkManager_instances, "m", _NetworkManager_emitLoadingFinished).call(this, event);
|
|
246
221
|
}
|
|
247
222
|
}, _NetworkManager_emitLoadingFinished = function _NetworkManager_emitLoadingFinished(event) {
|
|
248
|
-
var _a;
|
|
249
223
|
const request = __classPrivateFieldGet(this, _NetworkManager_networkEventManager, "f").getRequest(event.requestId);
|
|
250
224
|
// For certain requestIds we never receive requestWillBeSent event.
|
|
251
225
|
// @see https://crbug.com/750469
|
|
252
226
|
if (!request) {
|
|
253
227
|
return;
|
|
254
228
|
}
|
|
255
|
-
// Under certain conditions we never get the Network.responseReceived
|
|
256
|
-
// event from protocol. @see https://crbug.com/883475
|
|
257
|
-
if (request.response()) {
|
|
258
|
-
(_a = request.response()) === null || _a === void 0 ? void 0 : _a._resolveBody(null);
|
|
259
|
-
}
|
|
260
229
|
__classPrivateFieldGet(this, _NetworkManager_instances, "m", _NetworkManager_forgetRequest).call(this, request, true);
|
|
261
230
|
}, _NetworkManager_onLoadingFailed = function _NetworkManager_onLoadingFailed(event) {
|
|
262
231
|
// If the response event for this request is still waiting on a
|
|
@@ -275,10 +244,5 @@ _NetworkManager_client = new WeakMap(), _NetworkManager_frameManager = new WeakM
|
|
|
275
244
|
if (!request) {
|
|
276
245
|
return;
|
|
277
246
|
}
|
|
278
|
-
request._failureText = event.errorText;
|
|
279
|
-
const response = request.response();
|
|
280
|
-
if (response) {
|
|
281
|
-
response._resolveBody(null);
|
|
282
|
-
}
|
|
283
247
|
__classPrivateFieldGet(this, _NetworkManager_instances, "m", _NetworkManager_forgetRequest).call(this, request, true);
|
|
284
248
|
};
|
|
@@ -1,11 +1,17 @@
|
|
|
1
1
|
import NodeWebSocket from 'ws';
|
|
2
|
-
|
|
2
|
+
interface ConnectionTransport {
|
|
3
|
+
send(message: string): void;
|
|
4
|
+
close(): void;
|
|
5
|
+
onmessage?: (message: string) => void;
|
|
6
|
+
onclose?: () => void;
|
|
7
|
+
}
|
|
3
8
|
export declare class NodeWebSocketTransport implements ConnectionTransport {
|
|
4
9
|
#private;
|
|
5
10
|
static create(urlString: string): Promise<NodeWebSocketTransport>;
|
|
6
|
-
onmessage?: (message:
|
|
11
|
+
onmessage?: (message: string) => void;
|
|
7
12
|
onclose?: () => void;
|
|
8
13
|
constructor(ws: NodeWebSocket);
|
|
9
14
|
send(message: string): void;
|
|
10
15
|
close(): void;
|
|
11
16
|
}
|
|
17
|
+
export {};
|
|
@@ -52,7 +52,7 @@ class NodeWebSocketTransport {
|
|
|
52
52
|
__classPrivateFieldGet(this, _NodeWebSocketTransport_ws, "f").addEventListener('error', () => undefined);
|
|
53
53
|
}
|
|
54
54
|
static async create(urlString) {
|
|
55
|
-
//
|
|
55
|
+
// Starting in Node 17, IPv6 is favoured over IPv4 due to a change
|
|
56
56
|
// in a default option:
|
|
57
57
|
// - https://github.com/nodejs/node/issues/40537,
|
|
58
58
|
// Due to this, for Firefox, we must parse and resolve the `localhost` hostname
|
|
@@ -13,24 +13,18 @@
|
|
|
13
13
|
* See the License for the specific language governing permissions and
|
|
14
14
|
* limitations under the License.
|
|
15
15
|
*/
|
|
16
|
-
import { CDPSession } from './Connection';
|
|
16
|
+
import type { CDPSession } from './Connection';
|
|
17
17
|
import { ConsoleMessage } from './ConsoleMessage';
|
|
18
|
-
import { EvaluateFn, EvaluateFnReturnType, EvaluateHandleFn, SerializableOrJSHandle, UnwrapPromiseLike } from './EvalTypes';
|
|
18
|
+
import type { EvaluateFn, EvaluateFnReturnType, EvaluateHandleFn, SerializableOrJSHandle, UnwrapPromiseLike } from './EvalTypes';
|
|
19
19
|
import { EventEmitter } from './EventEmitter';
|
|
20
|
-
import { Frame } from './FrameManager';
|
|
21
|
-
import { HTTPResponse } from './HTTPResponse';
|
|
22
|
-
import { JSHandle } from './JSHandle';
|
|
23
|
-
import {
|
|
24
|
-
import {
|
|
25
|
-
import { Target } from './Target';
|
|
20
|
+
import type { Frame } from './FrameManager';
|
|
21
|
+
import type { HTTPResponse } from './HTTPResponse';
|
|
22
|
+
import type { JSHandle } from './JSHandle';
|
|
23
|
+
import type { Viewport } from './PuppeteerViewport';
|
|
24
|
+
import type { Target } from './Target';
|
|
26
25
|
import { TaskQueue } from './TaskQueue';
|
|
27
26
|
interface WaitForOptions {
|
|
28
27
|
timeout?: number;
|
|
29
|
-
waitUntil?: PuppeteerLifeCycleEvent | PuppeteerLifeCycleEvent[];
|
|
30
|
-
}
|
|
31
|
-
export declare const enum PageEmittedEvents {
|
|
32
|
-
Console = "console",
|
|
33
|
-
Error = "error"
|
|
34
28
|
}
|
|
35
29
|
interface PageEventObject {
|
|
36
30
|
console: ConsoleMessage;
|
|
@@ -25,13 +25,11 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
|
|
|
25
25
|
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
|
|
26
26
|
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
27
27
|
};
|
|
28
|
-
var _Page_instances, _Page_closed, _Page_client, _Page_target, _Page_timeoutSettings, _Page_frameManager,
|
|
28
|
+
var _Page_instances, _Page_closed, _Page_client, _Page_target, _Page_timeoutSettings, _Page_frameManager, _Page_pageBindings, _Page_initialize, _Page_onTargetCrashed, _Page_onLogEntryAdded, _Page_onConsoleAPI, _Page_onBindingCalled, _Page_addConsoleMessage;
|
|
29
29
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
30
30
|
exports.Page = void 0;
|
|
31
|
-
const console_1 = require("console");
|
|
32
31
|
const assert_1 = require("./assert");
|
|
33
32
|
const ConsoleMessage_1 = require("./ConsoleMessage");
|
|
34
|
-
const EmulationManager_1 = require("./EmulationManager");
|
|
35
33
|
const EventEmitter_1 = require("./EventEmitter");
|
|
36
34
|
const FrameManager_1 = require("./FrameManager");
|
|
37
35
|
const JSHandle_1 = require("./JSHandle");
|
|
@@ -47,12 +45,10 @@ class Page extends EventEmitter_1.EventEmitter {
|
|
|
47
45
|
_Page_target.set(this, void 0);
|
|
48
46
|
_Page_timeoutSettings.set(this, new TimeoutSettings_1.TimeoutSettings());
|
|
49
47
|
_Page_frameManager.set(this, void 0);
|
|
50
|
-
_Page_emulationManager.set(this, void 0);
|
|
51
48
|
_Page_pageBindings.set(this, new Map());
|
|
52
49
|
__classPrivateFieldSet(this, _Page_client, client, "f");
|
|
53
50
|
__classPrivateFieldSet(this, _Page_target, target, "f");
|
|
54
51
|
__classPrivateFieldSet(this, _Page_frameManager, new FrameManager_1.FrameManager(client, this, __classPrivateFieldGet(this, _Page_timeoutSettings, "f")), "f");
|
|
55
|
-
__classPrivateFieldSet(this, _Page_emulationManager, new EmulationManager_1.EmulationManager(client), "f");
|
|
56
52
|
this.screenshotTaskQueue = new TaskQueue_1.TaskQueue();
|
|
57
53
|
client.on('Target.attachedToTarget', (event) => {
|
|
58
54
|
switch (event.targetInfo.type) {
|
|
@@ -71,7 +67,7 @@ class Page extends EventEmitter_1.EventEmitter {
|
|
|
71
67
|
.send('Target.detachFromTarget', {
|
|
72
68
|
sessionId: event.sessionId,
|
|
73
69
|
})
|
|
74
|
-
.catch(() => console.log(
|
|
70
|
+
.catch((err) => console.log(err));
|
|
75
71
|
}
|
|
76
72
|
});
|
|
77
73
|
client.on('Runtime.consoleAPICalled', (event) => {
|
|
@@ -127,8 +123,17 @@ class Page extends EventEmitter_1.EventEmitter {
|
|
|
127
123
|
mainFrame() {
|
|
128
124
|
return __classPrivateFieldGet(this, _Page_frameManager, "f").mainFrame();
|
|
129
125
|
}
|
|
130
|
-
|
|
131
|
-
|
|
126
|
+
setViewport(viewport) {
|
|
127
|
+
return __classPrivateFieldGet(this, _Page_client, "f").send('Emulation.setDeviceMetricsOverride', {
|
|
128
|
+
mobile: false,
|
|
129
|
+
width: viewport.width,
|
|
130
|
+
height: viewport.height,
|
|
131
|
+
deviceScaleFactor: viewport.deviceScaleFactor,
|
|
132
|
+
screenOrientation: {
|
|
133
|
+
angle: 0,
|
|
134
|
+
type: 'portraitPrimary',
|
|
135
|
+
},
|
|
136
|
+
});
|
|
132
137
|
}
|
|
133
138
|
setDefaultNavigationTimeout(timeout) {
|
|
134
139
|
__classPrivateFieldGet(this, _Page_timeoutSettings, "f").setDefaultNavigationTimeout(timeout);
|
|
@@ -180,7 +185,7 @@ class Page extends EventEmitter_1.EventEmitter {
|
|
|
180
185
|
}
|
|
181
186
|
}
|
|
182
187
|
exports.Page = Page;
|
|
183
|
-
_Page_closed = new WeakMap(), _Page_client = new WeakMap(), _Page_target = new WeakMap(), _Page_timeoutSettings = new WeakMap(), _Page_frameManager = new WeakMap(),
|
|
188
|
+
_Page_closed = new WeakMap(), _Page_client = new WeakMap(), _Page_target = new WeakMap(), _Page_timeoutSettings = new WeakMap(), _Page_frameManager = new WeakMap(), _Page_pageBindings = new WeakMap(), _Page_instances = new WeakSet(), _Page_initialize = async function _Page_initialize() {
|
|
184
189
|
await Promise.all([
|
|
185
190
|
__classPrivateFieldGet(this, _Page_frameManager, "f").initialize(),
|
|
186
191
|
__classPrivateFieldGet(this, _Page_client, "f").send('Target.setAutoAttach', {
|