@remotion/renderer 4.0.0-fastlambda.8 → 4.0.0-forcepublish.7
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/assets/calculate-asset-positions.d.ts +2 -2
- package/dist/assets/convert-assets-to-file-urls.d.ts +5 -4
- package/dist/assets/convert-assets-to-file-urls.js +2 -2
- package/dist/assets/download-and-map-assets-to-file.d.ts +15 -6
- package/dist/assets/download-and-map-assets-to-file.js +108 -44
- package/dist/assets/download-file.d.ts +10 -5
- package/dist/assets/download-file.js +18 -5
- package/dist/assets/download-map.d.ts +64 -0
- package/dist/assets/download-map.js +73 -0
- package/dist/assets/ffmpeg-volume-expression.d.ts +3 -3
- package/dist/assets/ffmpeg-volume-expression.js +16 -14
- package/dist/assets/flatten-volume-array.d.ts +1 -1
- package/dist/assets/get-audio-channels.d.ts +3 -4
- package/dist/assets/get-audio-channels.js +14 -4
- package/dist/assets/get-video-stream-duration.d.ts +4 -0
- package/dist/assets/get-video-stream-duration.js +59 -0
- package/dist/assets/read-file.js +4 -1
- package/dist/assets/types.d.ts +1 -1
- package/dist/browser/Browser.d.ts +60 -0
- package/dist/browser/Browser.js +218 -0
- package/dist/browser/BrowserConnector.d.ts +19 -0
- package/dist/browser/BrowserConnector.js +17 -0
- package/dist/browser/BrowserFetcher.d.ts +89 -0
- package/dist/browser/BrowserFetcher.js +510 -0
- package/dist/browser/BrowserPage.d.ts +74 -0
- package/dist/browser/BrowserPage.js +283 -0
- package/dist/browser/BrowserRunner.d.ts +39 -0
- package/dist/browser/BrowserRunner.js +308 -0
- package/dist/browser/Connection.d.ts +42 -0
- package/dist/browser/Connection.js +242 -0
- package/dist/browser/ConsoleMessage.d.ts +31 -0
- package/dist/browser/ConsoleMessage.js +48 -0
- package/dist/browser/DOMWorld.d.ts +52 -0
- package/dist/browser/DOMWorld.js +272 -0
- package/dist/browser/Errors.d.ts +25 -0
- package/dist/browser/Errors.js +35 -0
- package/dist/browser/EvalTypes.d.ts +27 -0
- package/dist/browser/EvalTypes.js +17 -0
- package/dist/browser/EventEmitter.d.ts +23 -0
- package/dist/browser/EventEmitter.js +53 -0
- package/dist/browser/ExecutionContext.d.ts +34 -0
- package/dist/browser/ExecutionContext.js +174 -0
- package/dist/browser/FrameManager.d.ts +93 -0
- package/dist/browser/FrameManager.js +496 -0
- package/dist/browser/HTTPRequest.d.ts +28 -0
- package/dist/browser/HTTPRequest.js +37 -0
- package/dist/browser/HTTPResponse.d.ts +21 -0
- package/dist/browser/HTTPResponse.js +41 -0
- package/dist/browser/JSHandle.d.ts +35 -0
- package/dist/browser/JSHandle.js +90 -0
- package/dist/browser/LaunchOptions.d.ts +37 -0
- package/dist/browser/LaunchOptions.js +17 -0
- package/dist/browser/Launcher.d.ts +9 -0
- package/dist/browser/Launcher.js +504 -0
- package/dist/browser/LifecycleWatcher.d.ts +29 -0
- package/dist/browser/LifecycleWatcher.js +180 -0
- package/dist/browser/NetworkEventManager.d.ts +33 -0
- package/dist/browser/NetworkEventManager.js +81 -0
- package/dist/browser/NetworkManager.d.ts +34 -0
- package/dist/browser/NetworkManager.js +231 -0
- package/dist/browser/NodeWebSocketTransport.d.ts +17 -0
- package/dist/browser/NodeWebSocketTransport.js +87 -0
- package/dist/browser/Product.d.ts +16 -0
- package/dist/browser/Product.js +17 -0
- package/dist/browser/PuppeteerNode.d.ts +40 -0
- package/dist/browser/PuppeteerNode.js +81 -0
- package/dist/browser/PuppeteerViewport.d.ts +5 -0
- package/dist/browser/PuppeteerViewport.js +2 -0
- package/dist/browser/ScreenshotOptions.d.ts +14 -0
- package/dist/browser/ScreenshotOptions.js +2 -0
- package/dist/browser/Target.d.ts +61 -0
- package/dist/browser/Target.js +146 -0
- package/dist/browser/TaskQueue.d.ts +20 -0
- package/dist/browser/TaskQueue.js +47 -0
- package/dist/browser/TimeoutSettings.d.ts +24 -0
- package/dist/browser/TimeoutSettings.js +62 -0
- package/dist/browser/assert.d.ts +1 -0
- package/dist/browser/assert.js +9 -0
- package/dist/browser/create-browser-fetcher.d.ts +17 -0
- package/dist/browser/create-browser-fetcher.js +119 -0
- package/dist/browser/devtools-commands.d.ts +270 -0
- package/dist/browser/devtools-commands.js +2 -0
- package/dist/browser/devtools-types.d.ts +1122 -0
- package/dist/browser/devtools-types.js +2 -0
- package/dist/browser/get-download-destination.d.ts +1 -0
- package/dist/browser/get-download-destination.js +38 -0
- package/dist/browser/mitt/index.d.ts +22 -0
- package/dist/browser/mitt/index.js +49 -0
- package/dist/browser/node.d.ts +2 -0
- package/dist/browser/node.js +9 -0
- package/dist/browser/revisions.d.ts +21 -0
- package/dist/browser/revisions.js +22 -0
- package/dist/browser/util.d.ts +47 -0
- package/dist/browser/util.js +169 -0
- package/dist/browser-executable.d.ts +1 -0
- package/dist/browser-executable.js +2 -0
- package/dist/browser-log.d.ts +1 -1
- package/dist/browser.d.ts +2 -0
- package/dist/browser.js +4 -0
- package/dist/calculate-ffmpeg-filters.d.ts +1 -1
- package/dist/calculate-ffmpeg-filters.js +2 -2
- package/dist/calculate-sar-dar-pixels.d.ts +9 -0
- package/dist/calculate-sar-dar-pixels.js +19 -0
- package/dist/can-use-parallel-encoding.d.ts +1 -1
- package/dist/can-use-parallel-encoding.js +2 -2
- package/dist/codec-supports-media.d.ts +7 -0
- package/dist/codec-supports-media.js +49 -0
- package/dist/codec.d.ts +4 -0
- package/dist/codec.js +16 -0
- package/dist/combine-videos.d.ts +4 -2
- package/dist/combine-videos.js +19 -5
- package/dist/compress-assets.d.ts +7 -0
- package/dist/compress-assets.js +25 -0
- package/dist/convert-number-of-gif-loops-to-ffmpeg.d.ts +1 -0
- package/dist/convert-number-of-gif-loops-to-ffmpeg.js +17 -0
- package/dist/convert-to-pcm.d.ts +1 -1
- package/dist/create-ffmpeg-complex-filter.d.ts +3 -5
- package/dist/create-ffmpeg-complex-filter.js +2 -11
- package/dist/create-ffmpeg-merge-filter.js +3 -3
- package/dist/create-silent-audio.d.ts +1 -1
- package/dist/crf.d.ts +5 -0
- package/dist/crf.js +64 -0
- package/dist/cycle-browser-tabs.d.ts +3 -2
- package/dist/cycle-browser-tabs.js +9 -2
- package/dist/delay-render-embedded-stack.d.ts +1 -1
- package/dist/ensure-frames-in-order.d.ts +1 -1
- package/dist/ensure-frames-in-order.js +3 -2
- package/dist/ensure-presentation-timestamp.d.ts +2 -0
- package/dist/ensure-presentation-timestamp.js +69 -0
- package/dist/error-handling/handle-javascript-exception.d.ts +2 -2
- package/dist/error-handling/handle-javascript-exception.js +3 -4
- 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 +16 -0
- package/dist/extract-frame-from-video.js +254 -0
- package/dist/ffmpeg-executable.d.ts +1 -0
- package/dist/ffmpeg-executable.js +2 -0
- package/dist/ffmpeg-filter-file.d.ts +2 -1
- package/dist/ffmpeg-filter-file.js +4 -6
- package/dist/frame-range.d.ts +2 -0
- package/dist/frame-range.js +49 -0
- package/dist/frame-to-ffmpeg-timestamp.d.ts +1 -0
- package/dist/frame-to-ffmpeg-timestamp.js +8 -0
- package/dist/get-audio-codec-name.d.ts +1 -1
- package/dist/get-audio-codec-name.js +2 -2
- package/dist/get-browser-instance.d.ts +4 -3
- package/dist/get-browser-instance.js +2 -2
- package/dist/get-codec-name.d.ts +1 -1
- package/dist/get-codec-name.js +5 -2
- package/dist/get-compositions.d.ts +15 -5
- package/dist/get-compositions.js +35 -11
- package/dist/get-duration-from-frame-range.d.ts +1 -2
- package/dist/get-duration-from-frame-range.js +13 -9
- package/dist/get-extension-from-codec.d.ts +2 -2
- package/dist/get-extension-from-codec.js +5 -0
- package/dist/get-extension-of-filename.d.ts +1 -1
- package/dist/get-extension-of-filename.js +3 -0
- package/dist/get-frame-padded-index.d.ts +14 -0
- package/dist/get-frame-padded-index.js +33 -0
- package/dist/get-frame-to-render.d.ts +1 -1
- package/dist/get-local-browser-executable.d.ts +2 -1
- package/dist/get-local-browser-executable.js +7 -5
- package/dist/get-port.js +30 -37
- package/dist/get-prores-profile-name.d.ts +2 -1
- package/dist/get-video-info.d.ts +3 -0
- package/dist/get-video-info.js +49 -0
- package/dist/get-video-threads-flag.d.ts +1 -0
- package/dist/get-video-threads-flag.js +18 -0
- package/dist/guess-extension-for-media.d.ts +1 -0
- package/dist/guess-extension-for-media.js +27 -0
- package/dist/image-format.d.ts +6 -1
- package/dist/image-format.js +25 -1
- package/dist/index.d.ts +95 -20
- package/dist/index.js +93 -6
- package/dist/is-audio-codec.d.ts +2 -0
- package/dist/is-audio-codec.js +7 -0
- package/dist/is-beyond-last-frame.d.ts +3 -0
- package/dist/is-beyond-last-frame.js +12 -0
- package/dist/last-frame-from-video-cache.d.ts +17 -0
- package/dist/last-frame-from-video-cache.js +55 -0
- package/dist/log-level.d.ts +4 -0
- package/dist/log-level.js +15 -0
- package/dist/make-cancel-signal.d.ts +7 -0
- package/dist/make-cancel-signal.js +25 -0
- package/dist/merge-audio-track.d.ts +3 -1
- package/dist/merge-audio-track.js +14 -8
- package/dist/mime-db.d.ts +6 -0
- package/dist/mime-db.js +8636 -0
- package/dist/mime-types.d.ts +2 -0
- package/dist/mime-types.js +89 -0
- package/dist/offthread-video-server.d.ts +17 -0
- package/dist/offthread-video-server.js +86 -0
- package/dist/open-browser.d.ts +10 -8
- package/dist/open-browser.js +37 -32
- package/dist/overwrite.d.ts +1 -0
- package/dist/overwrite.js +4 -0
- package/dist/perf.d.ts +5 -0
- package/dist/perf.js +35 -0
- package/dist/pixel-format.d.ts +5 -0
- package/dist/pixel-format.js +26 -0
- package/dist/prepare-server.d.ts +14 -2
- package/dist/prepare-server.js +38 -5
- package/dist/preprocess-audio-track.d.ts +5 -2
- package/dist/preprocess-audio-track.js +3 -3
- package/dist/prespawn-ffmpeg.d.ts +7 -1
- package/dist/prespawn-ffmpeg.js +20 -16
- package/dist/prestitcher-memory-usage.d.ts +12 -0
- package/dist/prestitcher-memory-usage.js +30 -0
- package/dist/prores-profile.d.ts +5 -0
- package/dist/prores-profile.js +23 -0
- package/dist/provide-screenshot.d.ts +5 -4
- package/dist/provide-screenshot.js +1 -2
- package/dist/puppeteer-evaluate.d.ts +1 -1
- package/dist/puppeteer-evaluate.js +3 -4
- package/dist/puppeteer-screenshot.d.ts +4 -2
- package/dist/puppeteer-screenshot.js +7 -5
- package/dist/quality.d.ts +1 -0
- package/dist/quality.js +21 -0
- package/dist/render-frames.d.ts +24 -8
- package/dist/render-frames.js +137 -63
- package/dist/render-media.d.ts +36 -9
- package/dist/render-media.js +191 -70
- package/dist/render-still.d.ts +25 -7
- package/dist/render-still.js +75 -24
- package/dist/screenshot-dom-element.d.ts +7 -7
- package/dist/screenshot-dom-element.js +3 -6
- package/dist/screenshot-task.d.ts +4 -2
- package/dist/screenshot-task.js +36 -23
- package/dist/seek-to-frame.d.ts +2 -2
- package/dist/seek-to-frame.js +2 -2
- package/dist/serve-handler/index.d.ts +4 -0
- package/dist/serve-handler/index.js +204 -0
- package/dist/serve-handler/is-path-inside.d.ts +1 -0
- package/dist/serve-handler/is-path-inside.js +27 -0
- package/dist/serve-handler/range-parser.d.ts +13 -0
- package/dist/serve-handler/range-parser.js +57 -0
- package/dist/serve-static.d.ts +11 -3
- package/dist/serve-static.js +37 -7
- package/dist/set-props-and-env.d.ts +6 -2
- package/dist/set-props-and-env.js +48 -12
- package/dist/stitch-frames-to-video.d.ts +17 -5
- package/dist/stitch-frames-to-video.js +129 -45
- package/dist/stringify-ffmpeg-filter.d.ts +2 -2
- package/dist/stringify-ffmpeg-filter.js +12 -7
- package/dist/symbolicate-stacktrace.d.ts +1 -1
- package/dist/symbolicate-stacktrace.js +3 -3
- package/dist/tmp-dir.js +5 -1
- package/dist/truthy.d.ts +3 -0
- package/dist/truthy.js +7 -0
- package/dist/types.d.ts +1 -1
- package/dist/validate-concurrency.d.ts +1 -0
- package/dist/validate-concurrency.js +24 -0
- package/dist/validate-even-dimensions-with-codec.d.ts +1 -1
- package/dist/validate-even-dimensions-with-codec.js +2 -2
- package/dist/validate-every-nth-frame.d.ts +1 -0
- package/dist/validate-every-nth-frame.js +21 -0
- package/dist/validate-ffmpeg.js +2 -3
- package/dist/validate-frame.d.ts +1 -0
- package/dist/validate-frame.js +24 -0
- package/dist/validate-opengl-renderer.d.ts +5 -0
- package/dist/validate-opengl-renderer.js +15 -0
- package/dist/validate-output-filename.d.ts +1 -1
- package/dist/validate-output-filename.js +5 -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/dist/ws/ws-types.d.ts +14 -0
- package/dist/ws/ws-types.js +10 -0
- package/package.json +13 -16
- package/tsconfig.json +2 -2
- package/types/ws/index.d.ts +509 -0
- package/vitest.config.ts +8 -0
- 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-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 +0 -1
- package/dist/make-assets-download-dir.d.ts.map +0 -1
- package/dist/make-assets-download-dir.js +0 -8
- 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
|
@@ -0,0 +1,242 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
|
|
3
|
+
if (kind === "m") throw new TypeError("Private method is not writable");
|
|
4
|
+
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
|
|
5
|
+
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
|
|
6
|
+
return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
|
|
7
|
+
};
|
|
8
|
+
var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
|
|
9
|
+
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
|
|
10
|
+
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");
|
|
11
|
+
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
12
|
+
};
|
|
13
|
+
var _Connection_instances, _Connection_transport, _Connection_lastId, _Connection_sessions, _Connection_closed, _Connection_callbacks, _Connection_onMessage, _Connection_onClose, _CDPSession_sessionId, _CDPSession_targetType, _CDPSession_callbacks, _CDPSession_connection;
|
|
14
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
+
exports.CDPSession = exports.CDPSessionEmittedEvents = exports.Connection = void 0;
|
|
16
|
+
/**
|
|
17
|
+
* Copyright 2017 Google Inc. All rights reserved.
|
|
18
|
+
*
|
|
19
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
20
|
+
* you may not use this file except in compliance with the License.
|
|
21
|
+
* You may obtain a copy of the License at
|
|
22
|
+
*
|
|
23
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
24
|
+
*
|
|
25
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
26
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
27
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
28
|
+
* See the License for the specific language governing permissions and
|
|
29
|
+
* limitations under the License.
|
|
30
|
+
*/
|
|
31
|
+
const assert_1 = require("./assert");
|
|
32
|
+
const Errors_1 = require("./Errors");
|
|
33
|
+
const EventEmitter_1 = require("./EventEmitter");
|
|
34
|
+
const ConnectionEmittedEvents = {
|
|
35
|
+
Disconnected: Symbol('Connection.Disconnected'),
|
|
36
|
+
};
|
|
37
|
+
class Connection extends EventEmitter_1.EventEmitter {
|
|
38
|
+
constructor(transport) {
|
|
39
|
+
super();
|
|
40
|
+
_Connection_instances.add(this);
|
|
41
|
+
_Connection_transport.set(this, void 0);
|
|
42
|
+
_Connection_lastId.set(this, 0);
|
|
43
|
+
_Connection_sessions.set(this, new Map());
|
|
44
|
+
_Connection_closed.set(this, false);
|
|
45
|
+
_Connection_callbacks.set(this, new Map());
|
|
46
|
+
__classPrivateFieldSet(this, _Connection_transport, transport, "f");
|
|
47
|
+
__classPrivateFieldGet(this, _Connection_transport, "f").onmessage = __classPrivateFieldGet(this, _Connection_instances, "m", _Connection_onMessage).bind(this);
|
|
48
|
+
__classPrivateFieldGet(this, _Connection_transport, "f").onclose = __classPrivateFieldGet(this, _Connection_instances, "m", _Connection_onClose).bind(this);
|
|
49
|
+
}
|
|
50
|
+
static fromSession(session) {
|
|
51
|
+
return session.connection();
|
|
52
|
+
}
|
|
53
|
+
session(sessionId) {
|
|
54
|
+
return __classPrivateFieldGet(this, _Connection_sessions, "f").get(sessionId) || null;
|
|
55
|
+
}
|
|
56
|
+
send(method, ...paramArgs) {
|
|
57
|
+
// There is only ever 1 param arg passed, but the Protocol defines it as an
|
|
58
|
+
// array of 0 or 1 items See this comment:
|
|
59
|
+
// https://github.com/ChromeDevTools/devtools-protocol/pull/113#issuecomment-412603285
|
|
60
|
+
// which explains why the protocol defines the params this way for better
|
|
61
|
+
// type-inference.
|
|
62
|
+
// So now we check if there are any params or not and deal with them accordingly.
|
|
63
|
+
const params = paramArgs.length ? paramArgs[0] : undefined;
|
|
64
|
+
const id = this._rawSend({ method, params });
|
|
65
|
+
return new Promise((resolve, reject) => {
|
|
66
|
+
__classPrivateFieldGet(this, _Connection_callbacks, "f").set(id, {
|
|
67
|
+
resolve,
|
|
68
|
+
reject,
|
|
69
|
+
error: new Errors_1.ProtocolError(),
|
|
70
|
+
method,
|
|
71
|
+
});
|
|
72
|
+
});
|
|
73
|
+
}
|
|
74
|
+
_rawSend(message) {
|
|
75
|
+
var _a;
|
|
76
|
+
const id = __classPrivateFieldSet(this, _Connection_lastId, (_a = __classPrivateFieldGet(this, _Connection_lastId, "f"), ++_a), "f");
|
|
77
|
+
const stringifiedMessage = JSON.stringify({ ...message, id });
|
|
78
|
+
__classPrivateFieldGet(this, _Connection_transport, "f").send(stringifiedMessage);
|
|
79
|
+
return id;
|
|
80
|
+
}
|
|
81
|
+
dispose() {
|
|
82
|
+
__classPrivateFieldGet(this, _Connection_instances, "m", _Connection_onClose).call(this);
|
|
83
|
+
__classPrivateFieldGet(this, _Connection_transport, "f").close();
|
|
84
|
+
}
|
|
85
|
+
/**
|
|
86
|
+
* @param targetInfo - The target info
|
|
87
|
+
* @returns The CDP session that is created
|
|
88
|
+
*/
|
|
89
|
+
async createSession(targetInfo) {
|
|
90
|
+
const { sessionId } = await this.send('Target.attachToTarget', {
|
|
91
|
+
targetId: targetInfo.targetId,
|
|
92
|
+
flatten: true,
|
|
93
|
+
});
|
|
94
|
+
const session = __classPrivateFieldGet(this, _Connection_sessions, "f").get(sessionId);
|
|
95
|
+
if (!session) {
|
|
96
|
+
throw new Error('CDPSession creation failed.');
|
|
97
|
+
}
|
|
98
|
+
return session;
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
exports.Connection = Connection;
|
|
102
|
+
_Connection_transport = new WeakMap(), _Connection_lastId = new WeakMap(), _Connection_sessions = new WeakMap(), _Connection_closed = new WeakMap(), _Connection_callbacks = new WeakMap(), _Connection_instances = new WeakSet(), _Connection_onMessage = function _Connection_onMessage(message) {
|
|
103
|
+
const object = JSON.parse(message);
|
|
104
|
+
if (object.method === 'Target.attachedToTarget') {
|
|
105
|
+
const { sessionId } = object.params;
|
|
106
|
+
const session = new CDPSession(this, object.params.targetInfo.type, sessionId);
|
|
107
|
+
__classPrivateFieldGet(this, _Connection_sessions, "f").set(sessionId, session);
|
|
108
|
+
this.emit('sessionattached', session);
|
|
109
|
+
const parentSession = __classPrivateFieldGet(this, _Connection_sessions, "f").get(object.sessionId);
|
|
110
|
+
if (parentSession) {
|
|
111
|
+
parentSession.emit('sessionattached', session);
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
else if (object.method === 'Target.detachedFromTarget') {
|
|
115
|
+
const session = __classPrivateFieldGet(this, _Connection_sessions, "f").get(object.params.sessionId);
|
|
116
|
+
if (session) {
|
|
117
|
+
session._onClosed();
|
|
118
|
+
__classPrivateFieldGet(this, _Connection_sessions, "f").delete(object.params.sessionId);
|
|
119
|
+
this.emit('sessiondetached', session);
|
|
120
|
+
const parentSession = __classPrivateFieldGet(this, _Connection_sessions, "f").get(object.sessionId);
|
|
121
|
+
if (parentSession) {
|
|
122
|
+
parentSession.emit('sessiondetached', session);
|
|
123
|
+
}
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
if (object.sessionId) {
|
|
127
|
+
const session = __classPrivateFieldGet(this, _Connection_sessions, "f").get(object.sessionId);
|
|
128
|
+
if (session) {
|
|
129
|
+
session._onMessage(object);
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
else if (object.id) {
|
|
133
|
+
const callback = __classPrivateFieldGet(this, _Connection_callbacks, "f").get(object.id);
|
|
134
|
+
// Callbacks could be all rejected if someone has called `.dispose()`.
|
|
135
|
+
if (callback) {
|
|
136
|
+
__classPrivateFieldGet(this, _Connection_callbacks, "f").delete(object.id);
|
|
137
|
+
if (object.error) {
|
|
138
|
+
callback.reject(createProtocolError(callback.error, callback.method, object));
|
|
139
|
+
}
|
|
140
|
+
else {
|
|
141
|
+
callback.resolve(object.result);
|
|
142
|
+
}
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
else {
|
|
146
|
+
this.emit(object.method, object.params);
|
|
147
|
+
}
|
|
148
|
+
}, _Connection_onClose = function _Connection_onClose() {
|
|
149
|
+
if (__classPrivateFieldGet(this, _Connection_closed, "f")) {
|
|
150
|
+
return;
|
|
151
|
+
}
|
|
152
|
+
__classPrivateFieldGet(this, _Connection_transport, "f").onmessage = undefined;
|
|
153
|
+
__classPrivateFieldGet(this, _Connection_transport, "f").onclose = undefined;
|
|
154
|
+
for (const callback of __classPrivateFieldGet(this, _Connection_callbacks, "f").values()) {
|
|
155
|
+
callback.reject(rewriteError(callback.error, `Protocol error (${callback.method}): Target closed. https://www.remotion.dev/docs/target-closed`));
|
|
156
|
+
}
|
|
157
|
+
__classPrivateFieldGet(this, _Connection_callbacks, "f").clear();
|
|
158
|
+
for (const session of __classPrivateFieldGet(this, _Connection_sessions, "f").values()) {
|
|
159
|
+
session._onClosed();
|
|
160
|
+
}
|
|
161
|
+
__classPrivateFieldGet(this, _Connection_sessions, "f").clear();
|
|
162
|
+
this.emit(ConnectionEmittedEvents.Disconnected);
|
|
163
|
+
};
|
|
164
|
+
exports.CDPSessionEmittedEvents = {
|
|
165
|
+
Disconnected: Symbol('CDPSession.Disconnected'),
|
|
166
|
+
};
|
|
167
|
+
class CDPSession extends EventEmitter_1.EventEmitter {
|
|
168
|
+
constructor(connection, targetType, sessionId) {
|
|
169
|
+
super();
|
|
170
|
+
_CDPSession_sessionId.set(this, void 0);
|
|
171
|
+
_CDPSession_targetType.set(this, void 0);
|
|
172
|
+
_CDPSession_callbacks.set(this, new Map());
|
|
173
|
+
_CDPSession_connection.set(this, void 0);
|
|
174
|
+
__classPrivateFieldSet(this, _CDPSession_connection, connection, "f");
|
|
175
|
+
__classPrivateFieldSet(this, _CDPSession_targetType, targetType, "f");
|
|
176
|
+
__classPrivateFieldSet(this, _CDPSession_sessionId, sessionId, "f");
|
|
177
|
+
}
|
|
178
|
+
connection() {
|
|
179
|
+
return __classPrivateFieldGet(this, _CDPSession_connection, "f");
|
|
180
|
+
}
|
|
181
|
+
send(method, ...paramArgs) {
|
|
182
|
+
if (!__classPrivateFieldGet(this, _CDPSession_connection, "f")) {
|
|
183
|
+
return Promise.reject(new Error(`Protocol error (${method}): Session closed. Most likely the ${__classPrivateFieldGet(this, _CDPSession_targetType, "f")} has been closed.`));
|
|
184
|
+
}
|
|
185
|
+
// See the comment in Connection#send explaining why we do this.
|
|
186
|
+
const params = paramArgs.length ? paramArgs[0] : undefined;
|
|
187
|
+
const id = __classPrivateFieldGet(this, _CDPSession_connection, "f")._rawSend({
|
|
188
|
+
sessionId: __classPrivateFieldGet(this, _CDPSession_sessionId, "f"),
|
|
189
|
+
method,
|
|
190
|
+
params,
|
|
191
|
+
});
|
|
192
|
+
return new Promise((resolve, reject) => {
|
|
193
|
+
__classPrivateFieldGet(this, _CDPSession_callbacks, "f").set(id, {
|
|
194
|
+
resolve,
|
|
195
|
+
reject,
|
|
196
|
+
error: new Errors_1.ProtocolError(),
|
|
197
|
+
method,
|
|
198
|
+
});
|
|
199
|
+
});
|
|
200
|
+
}
|
|
201
|
+
_onMessage(object) {
|
|
202
|
+
const callback = object.id ? __classPrivateFieldGet(this, _CDPSession_callbacks, "f").get(object.id) : undefined;
|
|
203
|
+
if (object.id && callback) {
|
|
204
|
+
__classPrivateFieldGet(this, _CDPSession_callbacks, "f").delete(object.id);
|
|
205
|
+
if (object.error) {
|
|
206
|
+
callback.reject(createProtocolError(callback.error, callback.method, object));
|
|
207
|
+
}
|
|
208
|
+
else {
|
|
209
|
+
callback.resolve(object.result);
|
|
210
|
+
}
|
|
211
|
+
}
|
|
212
|
+
else {
|
|
213
|
+
(0, assert_1.assert)(!object.id);
|
|
214
|
+
this.emit(object.method, object.params);
|
|
215
|
+
}
|
|
216
|
+
}
|
|
217
|
+
_onClosed() {
|
|
218
|
+
for (const callback of __classPrivateFieldGet(this, _CDPSession_callbacks, "f").values()) {
|
|
219
|
+
callback.reject(rewriteError(callback.error, `Protocol error (${callback.method}): Target closed. https://www.remotion.dev/docs/target-closed`));
|
|
220
|
+
}
|
|
221
|
+
__classPrivateFieldGet(this, _CDPSession_callbacks, "f").clear();
|
|
222
|
+
__classPrivateFieldSet(this, _CDPSession_connection, undefined, "f");
|
|
223
|
+
this.emit(exports.CDPSessionEmittedEvents.Disconnected);
|
|
224
|
+
}
|
|
225
|
+
id() {
|
|
226
|
+
return __classPrivateFieldGet(this, _CDPSession_sessionId, "f");
|
|
227
|
+
}
|
|
228
|
+
}
|
|
229
|
+
exports.CDPSession = CDPSession;
|
|
230
|
+
_CDPSession_sessionId = new WeakMap(), _CDPSession_targetType = new WeakMap(), _CDPSession_callbacks = new WeakMap(), _CDPSession_connection = new WeakMap();
|
|
231
|
+
function createProtocolError(error, method, object) {
|
|
232
|
+
let message = `Protocol error (${method}): ${object.error.message}`;
|
|
233
|
+
if ('data' in object.error) {
|
|
234
|
+
message += ` ${object.error.data}`;
|
|
235
|
+
}
|
|
236
|
+
return rewriteError(error, message, object.error.message);
|
|
237
|
+
}
|
|
238
|
+
function rewriteError(error, message, originalMessage) {
|
|
239
|
+
error.message = message;
|
|
240
|
+
error.originalMessage = originalMessage !== null && originalMessage !== void 0 ? originalMessage : error.originalMessage;
|
|
241
|
+
return error;
|
|
242
|
+
}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright 2020 Google Inc. All rights reserved.
|
|
3
|
+
*
|
|
4
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
5
|
+
* you may not use this file except in compliance with the License.
|
|
6
|
+
* You may obtain a copy of the License at
|
|
7
|
+
*
|
|
8
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
9
|
+
*
|
|
10
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
11
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
12
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
13
|
+
* See the License for the specific language governing permissions and
|
|
14
|
+
* limitations under the License.
|
|
15
|
+
*/
|
|
16
|
+
import type { JSHandle } from './JSHandle';
|
|
17
|
+
export interface ConsoleMessageLocation {
|
|
18
|
+
url?: string;
|
|
19
|
+
lineNumber?: number;
|
|
20
|
+
columnNumber?: number;
|
|
21
|
+
}
|
|
22
|
+
export declare type ConsoleMessageType = 'log' | 'debug' | 'info' | 'error' | 'warning' | 'dir' | 'dirxml' | 'table' | 'trace' | 'clear' | 'startGroup' | 'startGroupCollapsed' | 'endGroup' | 'assert' | 'profile' | 'profileEnd' | 'count' | 'timeEnd' | 'verbose';
|
|
23
|
+
export declare class ConsoleMessage {
|
|
24
|
+
#private;
|
|
25
|
+
type: ConsoleMessageType;
|
|
26
|
+
text: string;
|
|
27
|
+
args: JSHandle[];
|
|
28
|
+
constructor(type: ConsoleMessageType, text: string, args: JSHandle[], stackTraceLocations: ConsoleMessageLocation[]);
|
|
29
|
+
location(): ConsoleMessageLocation;
|
|
30
|
+
stackTrace(): ConsoleMessageLocation[];
|
|
31
|
+
}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Copyright 2020 Google Inc. All rights reserved.
|
|
4
|
+
*
|
|
5
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
6
|
+
* you may not use this file except in compliance with the License.
|
|
7
|
+
* You may obtain a copy of the License at
|
|
8
|
+
*
|
|
9
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
10
|
+
*
|
|
11
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
12
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
13
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
14
|
+
* See the License for the specific language governing permissions and
|
|
15
|
+
* limitations under the License.
|
|
16
|
+
*/
|
|
17
|
+
var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
|
|
18
|
+
if (kind === "m") throw new TypeError("Private method is not writable");
|
|
19
|
+
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
|
|
20
|
+
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
|
|
21
|
+
return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
|
|
22
|
+
};
|
|
23
|
+
var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
|
|
24
|
+
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
|
|
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
|
+
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
27
|
+
};
|
|
28
|
+
var _ConsoleMessage_stackTraceLocations;
|
|
29
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
30
|
+
exports.ConsoleMessage = void 0;
|
|
31
|
+
class ConsoleMessage {
|
|
32
|
+
constructor(type, text, args, stackTraceLocations) {
|
|
33
|
+
_ConsoleMessage_stackTraceLocations.set(this, void 0);
|
|
34
|
+
this.type = type;
|
|
35
|
+
this.text = text;
|
|
36
|
+
this.args = args;
|
|
37
|
+
__classPrivateFieldSet(this, _ConsoleMessage_stackTraceLocations, stackTraceLocations, "f");
|
|
38
|
+
}
|
|
39
|
+
location() {
|
|
40
|
+
var _a;
|
|
41
|
+
return (_a = __classPrivateFieldGet(this, _ConsoleMessage_stackTraceLocations, "f")[0]) !== null && _a !== void 0 ? _a : {};
|
|
42
|
+
}
|
|
43
|
+
stackTrace() {
|
|
44
|
+
return __classPrivateFieldGet(this, _ConsoleMessage_stackTraceLocations, "f");
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
exports.ConsoleMessage = ConsoleMessage;
|
|
48
|
+
_ConsoleMessage_stackTraceLocations = new WeakMap();
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright 2019 Google Inc. All rights reserved.
|
|
3
|
+
*
|
|
4
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
5
|
+
* you may not use this file except in compliance with the License.
|
|
6
|
+
* You may obtain a copy of the License at
|
|
7
|
+
*
|
|
8
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
9
|
+
*
|
|
10
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
11
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
12
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
13
|
+
* See the License for the specific language governing permissions and
|
|
14
|
+
* limitations under the License.
|
|
15
|
+
*/
|
|
16
|
+
import type { Browser } from './Browser';
|
|
17
|
+
import type { EvaluateFn, EvaluateFnReturnType, EvaluateHandleFn, SerializableOrJSHandle, UnwrapPromiseLike } from './EvalTypes';
|
|
18
|
+
import type { ExecutionContext } from './ExecutionContext';
|
|
19
|
+
import type { Frame } from './FrameManager';
|
|
20
|
+
import type { JSHandle } from './JSHandle';
|
|
21
|
+
import type { TimeoutSettings } from './TimeoutSettings';
|
|
22
|
+
export declare class DOMWorld {
|
|
23
|
+
#private;
|
|
24
|
+
get _waitTasks(): Set<WaitTask>;
|
|
25
|
+
constructor(frame: Frame, timeoutSettings: TimeoutSettings);
|
|
26
|
+
frame(): Frame;
|
|
27
|
+
_setContext(context: ExecutionContext | null): void;
|
|
28
|
+
_hasContext(): boolean;
|
|
29
|
+
_detach(): void;
|
|
30
|
+
executionContext(): Promise<ExecutionContext>;
|
|
31
|
+
evaluateHandle<HandlerType extends JSHandle = JSHandle>(pageFunction: EvaluateHandleFn, ...args: SerializableOrJSHandle[]): Promise<HandlerType>;
|
|
32
|
+
evaluate<T extends EvaluateFn>(pageFunction: T, ...args: SerializableOrJSHandle[]): Promise<UnwrapPromiseLike<EvaluateFnReturnType<T>>>;
|
|
33
|
+
waitForFunction(browser: Browser, pageFunction: Function | string, ...args: SerializableOrJSHandle[]): Promise<JSHandle>;
|
|
34
|
+
title(): Promise<string>;
|
|
35
|
+
}
|
|
36
|
+
interface WaitTaskOptions {
|
|
37
|
+
domWorld: DOMWorld;
|
|
38
|
+
predicateBody: Function | string;
|
|
39
|
+
title: string;
|
|
40
|
+
timeout: number;
|
|
41
|
+
browser: Browser;
|
|
42
|
+
args: SerializableOrJSHandle[];
|
|
43
|
+
}
|
|
44
|
+
declare class WaitTask {
|
|
45
|
+
#private;
|
|
46
|
+
promise: Promise<JSHandle>;
|
|
47
|
+
constructor(options: WaitTaskOptions);
|
|
48
|
+
onBrowserClose: () => void;
|
|
49
|
+
terminate(error: Error): void;
|
|
50
|
+
rerun(): Promise<void>;
|
|
51
|
+
}
|
|
52
|
+
export {};
|
|
@@ -0,0 +1,272 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Copyright 2019 Google Inc. All rights reserved.
|
|
4
|
+
*
|
|
5
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
6
|
+
* you may not use this file except in compliance with the License.
|
|
7
|
+
* You may obtain a copy of the License at
|
|
8
|
+
*
|
|
9
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
10
|
+
*
|
|
11
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
12
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
13
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
14
|
+
* See the License for the specific language governing permissions and
|
|
15
|
+
* limitations under the License.
|
|
16
|
+
*/
|
|
17
|
+
var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
|
|
18
|
+
if (kind === "m") throw new TypeError("Private method is not writable");
|
|
19
|
+
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
|
|
20
|
+
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
|
|
21
|
+
return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
|
|
22
|
+
};
|
|
23
|
+
var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
|
|
24
|
+
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
|
|
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
|
+
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
27
|
+
};
|
|
28
|
+
var _DOMWorld_frame, _DOMWorld_timeoutSettings, _DOMWorld_contextPromise, _DOMWorld_contextResolveCallback, _DOMWorld_detached, _DOMWorld_waitTasks, _WaitTask_instances, _WaitTask_domWorld, _WaitTask_timeout, _WaitTask_predicateBody, _WaitTask_args, _WaitTask_runCount, _WaitTask_resolve, _WaitTask_reject, _WaitTask_timeoutTimer, _WaitTask_terminated, _WaitTask_browser, _WaitTask_cleanup;
|
|
29
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
30
|
+
exports.DOMWorld = void 0;
|
|
31
|
+
const assert_1 = require("./assert");
|
|
32
|
+
const Errors_1 = require("./Errors");
|
|
33
|
+
const util_1 = require("./util");
|
|
34
|
+
class DOMWorld {
|
|
35
|
+
constructor(frame, timeoutSettings) {
|
|
36
|
+
_DOMWorld_frame.set(this, void 0);
|
|
37
|
+
_DOMWorld_timeoutSettings.set(this, void 0);
|
|
38
|
+
_DOMWorld_contextPromise.set(this, null);
|
|
39
|
+
_DOMWorld_contextResolveCallback.set(this, null);
|
|
40
|
+
_DOMWorld_detached.set(this, false);
|
|
41
|
+
_DOMWorld_waitTasks.set(this, new Set());
|
|
42
|
+
// Keep own reference to client because it might differ from the FrameManager's
|
|
43
|
+
// client for OOP iframes.
|
|
44
|
+
__classPrivateFieldSet(this, _DOMWorld_frame, frame, "f");
|
|
45
|
+
__classPrivateFieldSet(this, _DOMWorld_timeoutSettings, timeoutSettings, "f");
|
|
46
|
+
this._setContext(null);
|
|
47
|
+
}
|
|
48
|
+
get _waitTasks() {
|
|
49
|
+
return __classPrivateFieldGet(this, _DOMWorld_waitTasks, "f");
|
|
50
|
+
}
|
|
51
|
+
frame() {
|
|
52
|
+
return __classPrivateFieldGet(this, _DOMWorld_frame, "f");
|
|
53
|
+
}
|
|
54
|
+
_setContext(context) {
|
|
55
|
+
var _a;
|
|
56
|
+
if (context) {
|
|
57
|
+
(0, assert_1.assert)(__classPrivateFieldGet(this, _DOMWorld_contextResolveCallback, "f"), 'Execution Context has already been set.');
|
|
58
|
+
(_a = __classPrivateFieldGet(this, _DOMWorld_contextResolveCallback, "f")) === null || _a === void 0 ? void 0 : _a.call(null, context);
|
|
59
|
+
__classPrivateFieldSet(this, _DOMWorld_contextResolveCallback, null, "f");
|
|
60
|
+
for (const waitTask of this._waitTasks) {
|
|
61
|
+
waitTask.rerun();
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
else {
|
|
65
|
+
__classPrivateFieldSet(this, _DOMWorld_contextPromise, new Promise((fulfill) => {
|
|
66
|
+
__classPrivateFieldSet(this, _DOMWorld_contextResolveCallback, fulfill, "f");
|
|
67
|
+
}), "f");
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
_hasContext() {
|
|
71
|
+
return !__classPrivateFieldGet(this, _DOMWorld_contextResolveCallback, "f");
|
|
72
|
+
}
|
|
73
|
+
_detach() {
|
|
74
|
+
__classPrivateFieldSet(this, _DOMWorld_detached, true, "f");
|
|
75
|
+
for (const waitTask of this._waitTasks) {
|
|
76
|
+
waitTask.terminate(new Error('waitForFunction failed: frame got detached.'));
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
executionContext() {
|
|
80
|
+
if (__classPrivateFieldGet(this, _DOMWorld_detached, "f")) {
|
|
81
|
+
throw new Error(`Execution context is not available in detached frame "${__classPrivateFieldGet(this, _DOMWorld_frame, "f").url()}" (are you trying to evaluate?)`);
|
|
82
|
+
}
|
|
83
|
+
if (__classPrivateFieldGet(this, _DOMWorld_contextPromise, "f") === null) {
|
|
84
|
+
throw new Error(`Execution content promise is missing`);
|
|
85
|
+
}
|
|
86
|
+
return __classPrivateFieldGet(this, _DOMWorld_contextPromise, "f");
|
|
87
|
+
}
|
|
88
|
+
async evaluateHandle(pageFunction, ...args) {
|
|
89
|
+
const context = await this.executionContext();
|
|
90
|
+
return context.evaluateHandle(pageFunction, ...args);
|
|
91
|
+
}
|
|
92
|
+
async evaluate(pageFunction, ...args) {
|
|
93
|
+
const context = await this.executionContext();
|
|
94
|
+
return context.evaluate(pageFunction, ...args);
|
|
95
|
+
}
|
|
96
|
+
waitForFunction(browser, pageFunction, ...args) {
|
|
97
|
+
const timeout = __classPrivateFieldGet(this, _DOMWorld_timeoutSettings, "f").timeout();
|
|
98
|
+
const waitTaskOptions = {
|
|
99
|
+
domWorld: this,
|
|
100
|
+
predicateBody: pageFunction,
|
|
101
|
+
title: 'function',
|
|
102
|
+
timeout,
|
|
103
|
+
args,
|
|
104
|
+
browser,
|
|
105
|
+
};
|
|
106
|
+
const waitTask = new WaitTask(waitTaskOptions);
|
|
107
|
+
return waitTask.promise;
|
|
108
|
+
}
|
|
109
|
+
title() {
|
|
110
|
+
return this.evaluate(() => {
|
|
111
|
+
return document.title;
|
|
112
|
+
});
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
exports.DOMWorld = DOMWorld;
|
|
116
|
+
_DOMWorld_frame = new WeakMap(), _DOMWorld_timeoutSettings = new WeakMap(), _DOMWorld_contextPromise = new WeakMap(), _DOMWorld_contextResolveCallback = new WeakMap(), _DOMWorld_detached = new WeakMap(), _DOMWorld_waitTasks = new WeakMap();
|
|
117
|
+
const noop = () => undefined;
|
|
118
|
+
class WaitTask {
|
|
119
|
+
constructor(options) {
|
|
120
|
+
_WaitTask_instances.add(this);
|
|
121
|
+
_WaitTask_domWorld.set(this, void 0);
|
|
122
|
+
_WaitTask_timeout.set(this, void 0);
|
|
123
|
+
_WaitTask_predicateBody.set(this, void 0);
|
|
124
|
+
_WaitTask_args.set(this, void 0);
|
|
125
|
+
_WaitTask_runCount.set(this, 0);
|
|
126
|
+
_WaitTask_resolve.set(this, noop);
|
|
127
|
+
_WaitTask_reject.set(this, noop);
|
|
128
|
+
_WaitTask_timeoutTimer.set(this, void 0);
|
|
129
|
+
_WaitTask_terminated.set(this, false);
|
|
130
|
+
_WaitTask_browser.set(this, void 0);
|
|
131
|
+
this.onBrowserClose = () => {
|
|
132
|
+
return this.terminate(new Error('Browser was closed'));
|
|
133
|
+
};
|
|
134
|
+
function getPredicateBody(predicateBody) {
|
|
135
|
+
if ((0, util_1.isString)(predicateBody)) {
|
|
136
|
+
return `return (${predicateBody});`;
|
|
137
|
+
}
|
|
138
|
+
return `return (${predicateBody})(...args);`;
|
|
139
|
+
}
|
|
140
|
+
__classPrivateFieldSet(this, _WaitTask_domWorld, options.domWorld, "f");
|
|
141
|
+
__classPrivateFieldSet(this, _WaitTask_timeout, options.timeout, "f");
|
|
142
|
+
__classPrivateFieldSet(this, _WaitTask_predicateBody, getPredicateBody(options.predicateBody), "f");
|
|
143
|
+
__classPrivateFieldSet(this, _WaitTask_args, options.args, "f");
|
|
144
|
+
__classPrivateFieldSet(this, _WaitTask_runCount, 0, "f");
|
|
145
|
+
__classPrivateFieldGet(this, _WaitTask_domWorld, "f")._waitTasks.add(this);
|
|
146
|
+
this.promise = new Promise((resolve, reject) => {
|
|
147
|
+
__classPrivateFieldSet(this, _WaitTask_resolve, resolve, "f");
|
|
148
|
+
__classPrivateFieldSet(this, _WaitTask_reject, reject, "f");
|
|
149
|
+
});
|
|
150
|
+
// Since page navigation requires us to re-install the pageScript, we should track
|
|
151
|
+
// timeout on our end.
|
|
152
|
+
if (options.timeout) {
|
|
153
|
+
const timeoutError = new Errors_1.TimeoutError(`waiting for ${options.title} failed: timeout ${options.timeout}ms exceeded`);
|
|
154
|
+
__classPrivateFieldSet(this, _WaitTask_timeoutTimer, setTimeout(() => {
|
|
155
|
+
return this.terminate(timeoutError);
|
|
156
|
+
}, options.timeout), "f");
|
|
157
|
+
}
|
|
158
|
+
__classPrivateFieldSet(this, _WaitTask_browser, options.browser, "f");
|
|
159
|
+
__classPrivateFieldGet(this, _WaitTask_browser, "f").on("closed" /* BrowserEmittedEvents.Closed */, this.onBrowserClose);
|
|
160
|
+
this.rerun();
|
|
161
|
+
}
|
|
162
|
+
terminate(error) {
|
|
163
|
+
__classPrivateFieldSet(this, _WaitTask_terminated, true, "f");
|
|
164
|
+
__classPrivateFieldGet(this, _WaitTask_reject, "f").call(this, error);
|
|
165
|
+
__classPrivateFieldGet(this, _WaitTask_instances, "m", _WaitTask_cleanup).call(this);
|
|
166
|
+
}
|
|
167
|
+
async rerun() {
|
|
168
|
+
var _a;
|
|
169
|
+
const runCount = __classPrivateFieldSet(this, _WaitTask_runCount, (_a = __classPrivateFieldGet(this, _WaitTask_runCount, "f"), ++_a), "f");
|
|
170
|
+
let success = null;
|
|
171
|
+
let error = null;
|
|
172
|
+
const context = await __classPrivateFieldGet(this, _WaitTask_domWorld, "f").executionContext();
|
|
173
|
+
if (__classPrivateFieldGet(this, _WaitTask_terminated, "f") || runCount !== __classPrivateFieldGet(this, _WaitTask_runCount, "f")) {
|
|
174
|
+
return;
|
|
175
|
+
}
|
|
176
|
+
if (__classPrivateFieldGet(this, _WaitTask_terminated, "f") || runCount !== __classPrivateFieldGet(this, _WaitTask_runCount, "f")) {
|
|
177
|
+
return;
|
|
178
|
+
}
|
|
179
|
+
try {
|
|
180
|
+
success = await context.evaluateHandle(waitForPredicatePageFunction, __classPrivateFieldGet(this, _WaitTask_predicateBody, "f"), __classPrivateFieldGet(this, _WaitTask_timeout, "f"), ...__classPrivateFieldGet(this, _WaitTask_args, "f"));
|
|
181
|
+
}
|
|
182
|
+
catch (error_) {
|
|
183
|
+
error = error_;
|
|
184
|
+
}
|
|
185
|
+
if (__classPrivateFieldGet(this, _WaitTask_terminated, "f") || runCount !== __classPrivateFieldGet(this, _WaitTask_runCount, "f")) {
|
|
186
|
+
if (success) {
|
|
187
|
+
await success.dispose();
|
|
188
|
+
}
|
|
189
|
+
return;
|
|
190
|
+
}
|
|
191
|
+
// Ignore timeouts in pageScript - we track timeouts ourselves.
|
|
192
|
+
// If the frame's execution context has already changed, `frame.evaluate` will
|
|
193
|
+
// throw an error - ignore this predicate run altogether.
|
|
194
|
+
if (!error &&
|
|
195
|
+
(await __classPrivateFieldGet(this, _WaitTask_domWorld, "f")
|
|
196
|
+
.evaluate((s) => {
|
|
197
|
+
return !s;
|
|
198
|
+
}, success)
|
|
199
|
+
.catch(() => {
|
|
200
|
+
return true;
|
|
201
|
+
}))) {
|
|
202
|
+
if (!success) {
|
|
203
|
+
throw new Error('Assertion: result handle is not available');
|
|
204
|
+
}
|
|
205
|
+
await success.dispose();
|
|
206
|
+
return;
|
|
207
|
+
}
|
|
208
|
+
if (error) {
|
|
209
|
+
if (error.message.includes('TypeError: binding is not a function')) {
|
|
210
|
+
return this.rerun();
|
|
211
|
+
}
|
|
212
|
+
// When frame is detached the task should have been terminated by the DOMWorld.
|
|
213
|
+
// This can fail if we were adding this task while the frame was detached,
|
|
214
|
+
// so we terminate here instead.
|
|
215
|
+
if (error.message.includes('Execution context is not available in detached frame')) {
|
|
216
|
+
this.terminate(new Error('waitForFunction failed: frame got detached.'));
|
|
217
|
+
return;
|
|
218
|
+
}
|
|
219
|
+
// When the page is navigated, the promise is rejected.
|
|
220
|
+
// We will try again in the new execution context.
|
|
221
|
+
if (error.message.includes('Execution context was destroyed')) {
|
|
222
|
+
return;
|
|
223
|
+
}
|
|
224
|
+
// We could have tried to evaluate in a context which was already
|
|
225
|
+
// destroyed.
|
|
226
|
+
if (error.message.includes('Cannot find context with specified id')) {
|
|
227
|
+
return;
|
|
228
|
+
}
|
|
229
|
+
__classPrivateFieldGet(this, _WaitTask_reject, "f").call(this, error);
|
|
230
|
+
}
|
|
231
|
+
else {
|
|
232
|
+
if (!success) {
|
|
233
|
+
throw new Error('Assertion: result handle is not available');
|
|
234
|
+
}
|
|
235
|
+
__classPrivateFieldGet(this, _WaitTask_resolve, "f").call(this, success);
|
|
236
|
+
}
|
|
237
|
+
__classPrivateFieldGet(this, _WaitTask_instances, "m", _WaitTask_cleanup).call(this);
|
|
238
|
+
}
|
|
239
|
+
}
|
|
240
|
+
_WaitTask_domWorld = new WeakMap(), _WaitTask_timeout = new WeakMap(), _WaitTask_predicateBody = new WeakMap(), _WaitTask_args = new WeakMap(), _WaitTask_runCount = new WeakMap(), _WaitTask_resolve = new WeakMap(), _WaitTask_reject = new WeakMap(), _WaitTask_timeoutTimer = new WeakMap(), _WaitTask_terminated = new WeakMap(), _WaitTask_browser = new WeakMap(), _WaitTask_instances = new WeakSet(), _WaitTask_cleanup = function _WaitTask_cleanup() {
|
|
241
|
+
if (__classPrivateFieldGet(this, _WaitTask_timeoutTimer, "f") !== undefined) {
|
|
242
|
+
clearTimeout(__classPrivateFieldGet(this, _WaitTask_timeoutTimer, "f"));
|
|
243
|
+
}
|
|
244
|
+
__classPrivateFieldGet(this, _WaitTask_browser, "f").off("closed" /* BrowserEmittedEvents.Closed */, this.onBrowserClose);
|
|
245
|
+
__classPrivateFieldGet(this, _WaitTask_domWorld, "f")._waitTasks.delete(this);
|
|
246
|
+
};
|
|
247
|
+
function waitForPredicatePageFunction(predicateBody, timeout, ...args) {
|
|
248
|
+
// eslint-disable-next-line no-new-func
|
|
249
|
+
const predicate = new Function('...args', predicateBody);
|
|
250
|
+
let timedOut = false;
|
|
251
|
+
if (timeout) {
|
|
252
|
+
setTimeout(() => {
|
|
253
|
+
timedOut = true;
|
|
254
|
+
}, timeout);
|
|
255
|
+
}
|
|
256
|
+
return new Promise((resolve) => {
|
|
257
|
+
async function onRaf() {
|
|
258
|
+
if (timedOut) {
|
|
259
|
+
resolve(undefined);
|
|
260
|
+
return;
|
|
261
|
+
}
|
|
262
|
+
const success = await predicate(...args);
|
|
263
|
+
if (success) {
|
|
264
|
+
resolve(success);
|
|
265
|
+
}
|
|
266
|
+
else {
|
|
267
|
+
requestAnimationFrame(onRaf);
|
|
268
|
+
}
|
|
269
|
+
}
|
|
270
|
+
onRaf();
|
|
271
|
+
});
|
|
272
|
+
}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright 2018 Google Inc. All rights reserved.
|
|
3
|
+
*
|
|
4
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
5
|
+
* you may not use this file except in compliance with the License.
|
|
6
|
+
* You may obtain a copy of the License at
|
|
7
|
+
*
|
|
8
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
9
|
+
*
|
|
10
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
11
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
12
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
13
|
+
* See the License for the specific language governing permissions and
|
|
14
|
+
* limitations under the License.
|
|
15
|
+
*/
|
|
16
|
+
declare class CustomError extends Error {
|
|
17
|
+
constructor(message?: string);
|
|
18
|
+
}
|
|
19
|
+
export declare class TimeoutError extends CustomError {
|
|
20
|
+
}
|
|
21
|
+
export declare class ProtocolError extends CustomError {
|
|
22
|
+
code?: number;
|
|
23
|
+
originalMessage: string;
|
|
24
|
+
}
|
|
25
|
+
export {};
|