chrome-devtools-frontend 1.0.1037221 → 1.0.1039140
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/config/gni/devtools_grd_files.gni +9 -2
- package/front_end/core/common/ParsedURL.ts +1 -1
- package/front_end/core/i18n/locales/en-US.json +2 -2
- package/front_end/core/i18n/locales/en-XL.json +2 -2
- package/front_end/core/sdk/ResourceTreeModel.ts +12 -8
- package/front_end/panels/sources/NavigatorView.ts +9 -0
- package/front_end/services/puppeteer/PuppeteerConnection.ts +1 -1
- package/front_end/third_party/lighthouse/lighthouse-dt-bundle.js +244 -244
- package/front_end/third_party/lighthouse/locales/en-US.json +2 -2
- package/front_end/third_party/lighthouse/locales/en-XL.json +2 -2
- package/front_end/third_party/puppeteer/package/README.md +20 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Accessibility.d.ts +3 -3
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Accessibility.js +4 -4
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Accessibility.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/AriaQueryHandler.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/AriaQueryHandler.js +10 -8
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/AriaQueryHandler.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Browser.d.ts +19 -6
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Browser.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Browser.js +23 -10
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Browser.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/BrowserConnector.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/BrowserConnector.js +3 -2
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/BrowserConnector.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/ChromeTargetManager.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/ChromeTargetManager.js +35 -20
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/ChromeTargetManager.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Connection.d.ts +9 -2
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Connection.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Connection.js +19 -7
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Connection.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Coverage.d.ts +5 -4
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Coverage.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Coverage.js +6 -5
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Coverage.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Debug.d.ts +1 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Debug.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Debug.js +1 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Debug.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Dialog.d.ts +2 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Dialog.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Dialog.js +3 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Dialog.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/ElementHandle.d.ts +168 -131
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/ElementHandle.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/ElementHandle.js +208 -206
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/ElementHandle.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Errors.d.ts +1 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Errors.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Errors.js +1 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Errors.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/EventEmitter.d.ts +2 -2
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/EventEmitter.js +2 -2
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/ExecutionContext.d.ts +74 -75
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/ExecutionContext.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/ExecutionContext.js +82 -97
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/ExecutionContext.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/FileChooser.d.ts +16 -8
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/FileChooser.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/FileChooser.js +17 -9
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/FileChooser.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/FirefoxTargetManager.d.ts +2 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/FirefoxTargetManager.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/FirefoxTargetManager.js +3 -2
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/FirefoxTargetManager.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Frame.d.ts +634 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Frame.d.ts.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Frame.js +713 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Frame.js.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/FrameManager.d.ts +9 -679
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/FrameManager.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/FrameManager.js +77 -803
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/FrameManager.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/HTTPRequest.d.ts +11 -10
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/HTTPRequest.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/HTTPRequest.js +11 -10
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/HTTPRequest.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/HTTPResponse.d.ts +2 -2
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/HTTPResponse.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/HTTPResponse.js +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Input.d.ts +34 -13
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Input.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Input.js +35 -14
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Input.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/{DOMWorld.d.ts → IsolatedWorld.d.ts} +58 -13
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/IsolatedWorld.d.ts.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/{DOMWorld.js → IsolatedWorld.js} +124 -151
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/IsolatedWorld.js.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/JSHandle.d.ts +40 -58
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/JSHandle.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/JSHandle.js +53 -76
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/JSHandle.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/LifecycleWatcher.d.ts +2 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/LifecycleWatcher.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/LifecycleWatcher.js +23 -6
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/LifecycleWatcher.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/NetworkEventManager.js +17 -17
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/NetworkManager.d.ts +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/NetworkManager.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/NetworkManager.js +8 -8
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/NetworkManager.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/PDFOptions.d.ts +2 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/PDFOptions.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/PDFOptions.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Page.d.ts +395 -296
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Page.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Page.js +398 -313
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Page.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Puppeteer.d.ts +14 -7
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Puppeteer.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Puppeteer.js +14 -7
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Puppeteer.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/QueryHandler.d.ts +38 -17
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/QueryHandler.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/QueryHandler.js +49 -31
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/QueryHandler.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Target.d.ts +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Target.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Target.js +7 -3
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Target.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Tracing.d.ts +1 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Tracing.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Tracing.js +4 -2
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Tracing.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/WebWorker.d.ts +8 -4
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/WebWorker.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/WebWorker.js +8 -4
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/WebWorker.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/util.d.ts +1 -34
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/util.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/util.js +5 -53
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/util.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/generated/injected.d.ts +3 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/generated/injected.d.ts.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/generated/injected.js +6 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/generated/injected.js.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/generated/version.d.ts +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/generated/version.js +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/initializePuppeteer.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/initializePuppeteer.js +2 -2
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/initializePuppeteer.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/injected/Poller.d.ts +28 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/injected/Poller.d.ts.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/injected/Poller.js +148 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/injected/Poller.js.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/injected/injected.d.ts +2 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/injected/injected.d.ts.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/injected/injected.js +18 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/injected/injected.js.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/BrowserFetcher.d.ts +3 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/BrowserFetcher.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/BrowserFetcher.js +4 -2
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/BrowserFetcher.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/BrowserRunner.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/BrowserRunner.js +4 -3
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/BrowserRunner.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/ChromeLauncher.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/ChromeLauncher.js +2 -2
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/ChromeLauncher.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/FirefoxLauncher.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/FirefoxLauncher.js +2 -2
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/FirefoxLauncher.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/PipeTransport.js +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/PipeTransport.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/Puppeteer.d.ts +3 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/Puppeteer.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/Puppeteer.js +3 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/Puppeteer.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/types.d.ts +3 -2
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/types.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/types.js +3 -2
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/types.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/util/DeferredPromise.d.ts +25 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/util/DeferredPromise.d.ts.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/util/DeferredPromise.js +78 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/util/DeferredPromise.js.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/util/ErrorLike.d.ts +17 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/util/ErrorLike.d.ts.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/util/ErrorLike.js +22 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/util/ErrorLike.js.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/{common → util}/assert.d.ts +0 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/util/assert.d.ts.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/{common → util}/assert.js +0 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/util/assert.js.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/util/getPackageDirectory.d.ts +2 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/util/getPackageDirectory.d.ts.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/util/getPackageDirectory.js +19 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/util/getPackageDirectory.js.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Accessibility.d.ts +3 -3
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Accessibility.js +4 -4
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Accessibility.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/AriaQueryHandler.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/AriaQueryHandler.js +10 -8
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/AriaQueryHandler.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Browser.d.ts +19 -6
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Browser.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Browser.js +23 -10
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Browser.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/BrowserConnector.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/BrowserConnector.js +3 -2
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/BrowserConnector.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/ChromeTargetManager.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/ChromeTargetManager.js +36 -21
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/ChromeTargetManager.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Connection.d.ts +9 -2
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Connection.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Connection.js +19 -7
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Connection.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Coverage.d.ts +5 -4
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Coverage.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Coverage.js +6 -5
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Coverage.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Debug.d.ts +1 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Debug.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Debug.js +1 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Debug.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Dialog.d.ts +2 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Dialog.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Dialog.js +3 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Dialog.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/ElementHandle.d.ts +168 -131
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/ElementHandle.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/ElementHandle.js +208 -206
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/ElementHandle.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Errors.d.ts +1 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Errors.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Errors.js +1 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Errors.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/EventEmitter.d.ts +2 -2
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/EventEmitter.js +2 -2
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/ExecutionContext.d.ts +74 -75
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/ExecutionContext.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/ExecutionContext.js +83 -98
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/ExecutionContext.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/FileChooser.d.ts +16 -8
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/FileChooser.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/FileChooser.js +17 -9
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/FileChooser.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/FirefoxTargetManager.d.ts +2 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/FirefoxTargetManager.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/FirefoxTargetManager.js +3 -2
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/FirefoxTargetManager.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Frame.d.ts +634 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Frame.d.ts.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Frame.js +709 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Frame.js.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/FrameManager.d.ts +9 -679
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/FrameManager.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/FrameManager.js +72 -797
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/FrameManager.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/HTTPRequest.d.ts +11 -10
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/HTTPRequest.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/HTTPRequest.js +11 -10
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/HTTPRequest.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/HTTPResponse.d.ts +2 -2
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/HTTPResponse.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/HTTPResponse.js +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Input.d.ts +34 -13
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Input.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Input.js +35 -14
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Input.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/{DOMWorld.d.ts → IsolatedWorld.d.ts} +58 -13
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/IsolatedWorld.d.ts.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/{DOMWorld.js → IsolatedWorld.js} +123 -150
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/IsolatedWorld.js.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/JSHandle.d.ts +40 -58
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/JSHandle.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/JSHandle.js +54 -77
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/JSHandle.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/LifecycleWatcher.d.ts +2 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/LifecycleWatcher.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/LifecycleWatcher.js +24 -7
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/LifecycleWatcher.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/NetworkEventManager.js +17 -17
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/NetworkManager.d.ts +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/NetworkManager.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/NetworkManager.js +8 -8
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/NetworkManager.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/PDFOptions.d.ts +2 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/PDFOptions.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/PDFOptions.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Page.d.ts +395 -296
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Page.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Page.js +398 -313
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Page.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Puppeteer.d.ts +14 -7
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Puppeteer.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Puppeteer.js +14 -7
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Puppeteer.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/QueryHandler.d.ts +38 -17
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/QueryHandler.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/QueryHandler.js +49 -31
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/QueryHandler.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Target.d.ts +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Target.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Target.js +7 -3
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Target.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Tracing.d.ts +1 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Tracing.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Tracing.js +4 -2
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Tracing.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/WebWorker.d.ts +8 -4
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/WebWorker.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/WebWorker.js +8 -4
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/WebWorker.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/util.d.ts +1 -34
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/util.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/util.js +3 -48
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/util.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/generated/injected.d.ts +3 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/generated/injected.d.ts.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/generated/injected.js +3 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/generated/injected.js.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/generated/version.d.ts +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/generated/version.js +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/initializePuppeteer.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/initializePuppeteer.js +2 -2
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/initializePuppeteer.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/injected/Poller.d.ts +28 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/injected/Poller.d.ts.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/injected/Poller.js +142 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/injected/Poller.js.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/injected/injected.d.ts +2 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/injected/injected.d.ts.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/injected/injected.js +2 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/injected/injected.js.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/BrowserFetcher.d.ts +3 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/BrowserFetcher.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/BrowserFetcher.js +4 -2
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/BrowserFetcher.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/BrowserRunner.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/BrowserRunner.js +3 -2
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/BrowserRunner.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/ChromeLauncher.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/ChromeLauncher.js +2 -2
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/ChromeLauncher.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/FirefoxLauncher.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/FirefoxLauncher.js +2 -2
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/FirefoxLauncher.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/PipeTransport.js +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/PipeTransport.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/Puppeteer.d.ts +3 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/Puppeteer.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/Puppeteer.js +3 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/Puppeteer.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/types.d.ts +3 -2
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/types.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/types.js +3 -2
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/types.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/util/DeferredPromise.d.ts +25 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/util/DeferredPromise.d.ts.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/util/DeferredPromise.js +73 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/util/DeferredPromise.js.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/util/ErrorLike.d.ts +17 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/util/ErrorLike.d.ts.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/util/ErrorLike.js +17 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/util/ErrorLike.js.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/{common → util}/assert.d.ts +0 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/util/assert.d.ts.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/{common → util}/assert.js +0 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/util/assert.js.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/util/getPackageDirectory.d.ts +2 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/util/getPackageDirectory.d.ts.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/util/getPackageDirectory.js +15 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/util/getPackageDirectory.js.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/types.d.ts +1069 -878
- package/front_end/third_party/puppeteer/package/package.json +32 -28
- package/front_end/third_party/puppeteer/package/typescript-if-required.js +1 -1
- package/front_end/third_party/puppeteer/puppeteer.ts +1 -1
- package/front_end/ui/components/linear_memory_inspector/LinearMemoryHighlightChipList.ts +16 -6
- package/front_end/ui/components/linear_memory_inspector/LinearMemoryInspector.ts +28 -4
- package/front_end/ui/components/linear_memory_inspector/LinearMemoryViewer.ts +15 -0
- package/front_end/ui/components/linear_memory_inspector/linearMemoryHighlightChipList.css +27 -12
- package/front_end/ui/components/linear_memory_inspector/linearMemoryViewer.css +19 -4
- package/package.json +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/DOMWorld.d.ts.map +0 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/DOMWorld.js.map +0 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/assert.d.ts.map +0 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/assert.js.map +0 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/DOMWorld.d.ts.map +0 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/DOMWorld.js.map +0 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/assert.d.ts.map +0 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/assert.js.map +0 -1
@@ -25,15 +25,16 @@ 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_keyboard, _Page_mouse, _Page_timeoutSettings, _Page_touchscreen, _Page_accessibility, _Page_frameManager, _Page_emulationManager, _Page_tracing, _Page_pageBindings, _Page_coverage, _Page_javascriptEnabled, _Page_viewport, _Page_screenshotTaskQueue, _Page_workers,
|
28
|
+
var _Page_instances, _Page_closed, _Page_client, _Page_target, _Page_keyboard, _Page_mouse, _Page_timeoutSettings, _Page_touchscreen, _Page_accessibility, _Page_frameManager, _Page_emulationManager, _Page_tracing, _Page_pageBindings, _Page_coverage, _Page_javascriptEnabled, _Page_viewport, _Page_screenshotTaskQueue, _Page_workers, _Page_fileChooserPromises, _Page_disconnectPromise, _Page_userDragInterceptionEnabled, _Page_handlerMap, _Page_onDetachedFromTarget, _Page_onAttachedToTarget, _Page_initialize, _Page_onFileChooser, _Page_onTargetCrashed, _Page_onLogEntryAdded, _Page_emitMetrics, _Page_buildMetricsObject, _Page_handleException, _Page_onConsoleAPI, _Page_onBindingCalled, _Page_addConsoleMessage, _Page_onDialog, _Page_resetDefaultBackgroundColor, _Page_setTransparentBackgroundColor, _Page_sessionClosePromise, _Page_go, _Page_screenshotTask;
|
29
29
|
Object.defineProperty(exports, "__esModule", { value: true });
|
30
30
|
exports.Page = void 0;
|
31
31
|
const Accessibility_js_1 = require("./Accessibility.js");
|
32
|
-
const assert_js_1 = require("
|
32
|
+
const assert_js_1 = require("../util/assert.js");
|
33
33
|
const Connection_js_1 = require("./Connection.js");
|
34
34
|
const ConsoleMessage_js_1 = require("./ConsoleMessage.js");
|
35
35
|
const Coverage_js_1 = require("./Coverage.js");
|
36
36
|
const Dialog_js_1 = require("./Dialog.js");
|
37
|
+
const IsolatedWorld_js_1 = require("./IsolatedWorld.js");
|
37
38
|
const EmulationManager_js_1 = require("./EmulationManager.js");
|
38
39
|
const EventEmitter_js_1 = require("./EventEmitter.js");
|
39
40
|
const FileChooser_js_1 = require("./FileChooser.js");
|
@@ -44,6 +45,8 @@ const PDFOptions_js_1 = require("./PDFOptions.js");
|
|
44
45
|
const TimeoutSettings_js_1 = require("./TimeoutSettings.js");
|
45
46
|
const Tracing_js_1 = require("./Tracing.js");
|
46
47
|
const util_js_1 = require("./util.js");
|
48
|
+
const ErrorLike_js_1 = require("../util/ErrorLike.js");
|
49
|
+
const DeferredPromise_js_1 = require("../util/DeferredPromise.js");
|
47
50
|
const WebWorker_js_1 = require("./WebWorker.js");
|
48
51
|
/**
|
49
52
|
* Page provides methods to interact with a single tab or
|
@@ -58,6 +61,7 @@ const WebWorker_js_1 = require("./WebWorker.js");
|
|
58
61
|
*
|
59
62
|
* @example
|
60
63
|
* This example creates a page, navigates it to a URL, and then saves a screenshot:
|
64
|
+
*
|
61
65
|
* ```ts
|
62
66
|
* const puppeteer = require('puppeteer');
|
63
67
|
*
|
@@ -75,6 +79,7 @@ const WebWorker_js_1 = require("./WebWorker.js");
|
|
75
79
|
*
|
76
80
|
* @example
|
77
81
|
* This example logs a message for a single page `load` event:
|
82
|
+
*
|
78
83
|
* ```ts
|
79
84
|
* page.once('load', () => console.log('Page loaded!'));
|
80
85
|
* ```
|
@@ -116,7 +121,7 @@ class Page extends EventEmitter_js_1.EventEmitter {
|
|
116
121
|
_Page_viewport.set(this, void 0);
|
117
122
|
_Page_screenshotTaskQueue.set(this, void 0);
|
118
123
|
_Page_workers.set(this, new Map());
|
119
|
-
|
124
|
+
_Page_fileChooserPromises.set(this, new Set());
|
120
125
|
_Page_disconnectPromise.set(this, void 0);
|
121
126
|
_Page_userDragInterceptionEnabled.set(this, false);
|
122
127
|
_Page_handlerMap.set(this, new WeakMap());
|
@@ -132,7 +137,7 @@ class Page extends EventEmitter_js_1.EventEmitter {
|
|
132
137
|
this.emit("workerdestroyed" /* PageEmittedEvents.WorkerDestroyed */, worker);
|
133
138
|
});
|
134
139
|
_Page_onAttachedToTarget.set(this, async (createdTarget) => {
|
135
|
-
|
140
|
+
__classPrivateFieldGet(this, _Page_frameManager, "f").onAttachedToTarget(createdTarget);
|
136
141
|
if (createdTarget._getTargetInfo().type === 'worker') {
|
137
142
|
const session = createdTarget._session();
|
138
143
|
(0, assert_js_1.assert)(session);
|
@@ -173,7 +178,7 @@ class Page extends EventEmitter_js_1.EventEmitter {
|
|
173
178
|
__classPrivateFieldGet(this, _Page_frameManager, "f").on(FrameManager_js_1.FrameManagerEmittedEvents.FrameNavigated, event => {
|
174
179
|
return this.emit("framenavigated" /* PageEmittedEvents.FrameNavigated */, event);
|
175
180
|
});
|
176
|
-
const networkManager = __classPrivateFieldGet(this, _Page_frameManager, "f").networkManager
|
181
|
+
const networkManager = __classPrivateFieldGet(this, _Page_frameManager, "f").networkManager;
|
177
182
|
networkManager.on(NetworkManager_js_1.NetworkManagerEmittedEvents.Request, event => {
|
178
183
|
return this.emit("request" /* PageEmittedEvents.Request */, event);
|
179
184
|
});
|
@@ -189,7 +194,6 @@ class Page extends EventEmitter_js_1.EventEmitter {
|
|
189
194
|
networkManager.on(NetworkManager_js_1.NetworkManagerEmittedEvents.RequestFinished, event => {
|
190
195
|
return this.emit("requestfinished" /* PageEmittedEvents.RequestFinished */, event);
|
191
196
|
});
|
192
|
-
__classPrivateFieldSet(this, _Page_fileChooserInterceptors, new Set(), "f");
|
193
197
|
client.on('Page.domContentEventFired', () => {
|
194
198
|
return this.emit("domcontentloaded" /* PageEmittedEvents.DOMContentLoaded */);
|
195
199
|
});
|
@@ -310,36 +314,36 @@ class Page extends EventEmitter_js_1.EventEmitter {
|
|
310
314
|
*
|
311
315
|
* ```ts
|
312
316
|
* const [fileChooser] = await Promise.all([
|
313
|
-
*
|
314
|
-
*
|
315
|
-
*
|
317
|
+
* page.waitForFileChooser(),
|
318
|
+
* page.click('#upload-file-button'),
|
319
|
+
* // some button that triggers file selection
|
316
320
|
* ]);
|
317
321
|
* await fileChooser.accept(['/tmp/myfile.pdf']);
|
318
322
|
* ```
|
319
323
|
*/
|
320
324
|
async waitForFileChooser(options = {}) {
|
321
|
-
if (!__classPrivateFieldGet(this,
|
325
|
+
if (!__classPrivateFieldGet(this, _Page_fileChooserPromises, "f").size) {
|
322
326
|
await __classPrivateFieldGet(this, _Page_client, "f").send('Page.setInterceptFileChooserDialog', {
|
323
327
|
enabled: true,
|
324
328
|
});
|
325
329
|
}
|
326
330
|
const { timeout = __classPrivateFieldGet(this, _Page_timeoutSettings, "f").timeout() } = options;
|
327
|
-
|
328
|
-
|
329
|
-
|
330
|
-
|
331
|
-
__classPrivateFieldGet(this, _Page_fileChooserInterceptors, "f").add(callback);
|
332
|
-
return (0, util_js_1.waitWithTimeout)(promise, 'waiting for file chooser', timeout).catch(error => {
|
333
|
-
__classPrivateFieldGet(this, _Page_fileChooserInterceptors, "f").delete(callback);
|
331
|
+
const promise = (0, DeferredPromise_js_1.createDeferredPromiseWithTimer)(`Waiting for \`FileChooser\` failed: ${timeout}ms exceeded`);
|
332
|
+
__classPrivateFieldGet(this, _Page_fileChooserPromises, "f").add(promise);
|
333
|
+
return promise.catch(error => {
|
334
|
+
__classPrivateFieldGet(this, _Page_fileChooserPromises, "f").delete(promise);
|
334
335
|
throw error;
|
335
336
|
});
|
336
337
|
}
|
337
338
|
/**
|
338
339
|
* Sets the page's geolocation.
|
340
|
+
*
|
339
341
|
* @remarks
|
340
|
-
*
|
342
|
+
* Consider using {@link BrowserContext.overridePermissions} to grant
|
341
343
|
* permissions for the page to read its geolocation.
|
344
|
+
*
|
342
345
|
* @example
|
346
|
+
*
|
343
347
|
* ```ts
|
344
348
|
* await page.setGeolocation({latitude: 59.95, longitude: 30.31667});
|
345
349
|
* ```
|
@@ -387,6 +391,7 @@ class Page extends EventEmitter_js_1.EventEmitter {
|
|
387
391
|
}
|
388
392
|
/**
|
389
393
|
* @returns The page's main frame.
|
394
|
+
*
|
390
395
|
* @remarks
|
391
396
|
* Page is guaranteed to have a main frame which persists during navigations.
|
392
397
|
*/
|
@@ -415,29 +420,33 @@ class Page extends EventEmitter_js_1.EventEmitter {
|
|
415
420
|
return __classPrivateFieldGet(this, _Page_frameManager, "f").frames();
|
416
421
|
}
|
417
422
|
/**
|
418
|
-
* @returns all of the dedicated
|
419
|
-
*
|
420
|
-
* WebWorkers}
|
421
|
-
*
|
423
|
+
* @returns all of the dedicated {@link
|
424
|
+
* https://developer.mozilla.org/en-US/docs/Web/API/Web_Workers_API |
|
425
|
+
* WebWorkers} associated with the page.
|
426
|
+
*
|
422
427
|
* @remarks
|
423
|
-
*
|
428
|
+
* This does not contain ServiceWorkers
|
424
429
|
*/
|
425
430
|
workers() {
|
426
431
|
return Array.from(__classPrivateFieldGet(this, _Page_workers, "f").values());
|
427
432
|
}
|
428
433
|
/**
|
429
|
-
* @param value - Whether to enable request interception.
|
430
|
-
*
|
431
|
-
* @remarks
|
432
434
|
* Activating request interception enables {@link HTTPRequest.abort},
|
433
|
-
* {@link HTTPRequest.continue} and {@link HTTPRequest.respond} methods.
|
435
|
+
* {@link HTTPRequest.continue} and {@link HTTPRequest.respond} methods. This
|
434
436
|
* provides the capability to modify network requests that are made by a page.
|
435
437
|
*
|
436
438
|
* Once request interception is enabled, every request will stall unless it's
|
437
439
|
* continued, responded or aborted; or completed using the browser cache.
|
438
440
|
*
|
441
|
+
* Enabling request interception disables page caching.
|
442
|
+
*
|
443
|
+
* See the
|
444
|
+
* {@link https://pptr.dev/next/guides/request-interception|Request interception guide}
|
445
|
+
* for more details.
|
446
|
+
*
|
439
447
|
* @example
|
440
448
|
* An example of a naïve request interceptor that aborts all image requests:
|
449
|
+
*
|
441
450
|
* ```ts
|
442
451
|
* const puppeteer = require('puppeteer');
|
443
452
|
* (async () => {
|
@@ -445,27 +454,29 @@ class Page extends EventEmitter_js_1.EventEmitter {
|
|
445
454
|
* const page = await browser.newPage();
|
446
455
|
* await page.setRequestInterception(true);
|
447
456
|
* page.on('request', interceptedRequest => {
|
448
|
-
* if (
|
449
|
-
*
|
457
|
+
* if (
|
458
|
+
* interceptedRequest.url().endsWith('.png') ||
|
459
|
+
* interceptedRequest.url().endsWith('.jpg')
|
460
|
+
* )
|
450
461
|
* interceptedRequest.abort();
|
451
|
-
* else
|
452
|
-
*
|
453
|
-
* });
|
462
|
+
* else interceptedRequest.continue();
|
463
|
+
* });
|
454
464
|
* await page.goto('https://example.com');
|
455
465
|
* await browser.close();
|
456
466
|
* })();
|
457
467
|
* ```
|
458
|
-
*
|
468
|
+
*
|
469
|
+
* @param value - Whether to enable request interception.
|
459
470
|
*/
|
460
471
|
async setRequestInterception(value) {
|
461
|
-
return __classPrivateFieldGet(this, _Page_frameManager, "f").networkManager
|
472
|
+
return __classPrivateFieldGet(this, _Page_frameManager, "f").networkManager.setRequestInterception(value);
|
462
473
|
}
|
463
474
|
/**
|
464
475
|
* @param enabled - Whether to enable drag interception.
|
465
476
|
*
|
466
477
|
* @remarks
|
467
478
|
* Activating drag interception enables the `Input.drag`,
|
468
|
-
* methods
|
479
|
+
* methods This provides the capability to capture drag events emitted
|
469
480
|
* on the page, which can then be used to simulate drag-and-drop.
|
470
481
|
*/
|
471
482
|
async setDragInterception(enabled) {
|
@@ -480,33 +491,33 @@ class Page extends EventEmitter_js_1.EventEmitter {
|
|
480
491
|
* (#pageemulatenetworkconditionsnetworkconditions)
|
481
492
|
*/
|
482
493
|
setOfflineMode(enabled) {
|
483
|
-
return __classPrivateFieldGet(this, _Page_frameManager, "f").networkManager
|
494
|
+
return __classPrivateFieldGet(this, _Page_frameManager, "f").networkManager.setOfflineMode(enabled);
|
484
495
|
}
|
485
496
|
/**
|
486
497
|
* @param networkConditions - Passing `null` disables network condition emulation.
|
487
498
|
* @example
|
499
|
+
*
|
488
500
|
* ```ts
|
489
501
|
* const puppeteer = require('puppeteer');
|
490
502
|
* const slow3G = puppeteer.networkConditions['Slow 3G'];
|
491
503
|
*
|
492
504
|
* (async () => {
|
493
|
-
*
|
494
|
-
*
|
495
|
-
*
|
496
|
-
*
|
497
|
-
*
|
498
|
-
*
|
505
|
+
* const browser = await puppeteer.launch();
|
506
|
+
* const page = await browser.newPage();
|
507
|
+
* await page.emulateNetworkConditions(slow3G);
|
508
|
+
* await page.goto('https://www.google.com');
|
509
|
+
* // other actions...
|
510
|
+
* await browser.close();
|
499
511
|
* })();
|
500
512
|
* ```
|
513
|
+
*
|
501
514
|
* @remarks
|
502
515
|
* NOTE: This does not affect WebSockets and WebRTC PeerConnections (see
|
503
516
|
* https://crbug.com/563644). To set the page offline, you can use
|
504
517
|
* [page.setOfflineMode(enabled)](#pagesetofflinemodeenabled).
|
505
518
|
*/
|
506
519
|
emulateNetworkConditions(networkConditions) {
|
507
|
-
return __classPrivateFieldGet(this, _Page_frameManager, "f")
|
508
|
-
.networkManager()
|
509
|
-
.emulateNetworkConditions(networkConditions);
|
520
|
+
return __classPrivateFieldGet(this, _Page_frameManager, "f").networkManager.emulateNetworkConditions(networkConditions);
|
510
521
|
}
|
511
522
|
/**
|
512
523
|
* This setting will change the default maximum navigation time for the
|
@@ -523,7 +534,7 @@ class Page extends EventEmitter_js_1.EventEmitter {
|
|
523
534
|
* - {@link Page.setContent | page.setContent(html,options)}
|
524
535
|
*
|
525
536
|
* - {@link Page.waitForNavigation | page.waitForNavigation(options)}
|
526
|
-
*
|
537
|
+
* @param timeout - Maximum navigation time in milliseconds.
|
527
538
|
*/
|
528
539
|
setDefaultNavigationTimeout(timeout) {
|
529
540
|
__classPrivateFieldGet(this, _Page_timeoutSettings, "f").setDefaultNavigationTimeout(timeout);
|
@@ -569,15 +580,20 @@ class Page extends EventEmitter_js_1.EventEmitter {
|
|
569
580
|
* recommended as they are easier to debug and use with TypeScript):
|
570
581
|
*
|
571
582
|
* @example
|
583
|
+
*
|
572
584
|
* ```ts
|
573
|
-
* const aHandle = await page.evaluateHandle('document')
|
585
|
+
* const aHandle = await page.evaluateHandle('document');
|
574
586
|
* ```
|
575
587
|
*
|
576
588
|
* @example
|
577
589
|
* {@link JSHandle} instances can be passed as arguments to the `pageFunction`:
|
590
|
+
*
|
578
591
|
* ```ts
|
579
592
|
* const aHandle = await page.evaluateHandle(() => document.body);
|
580
|
-
* const resultHandle = await page.evaluateHandle(
|
593
|
+
* const resultHandle = await page.evaluateHandle(
|
594
|
+
* body => body.innerHTML,
|
595
|
+
* aHandle
|
596
|
+
* );
|
581
597
|
* console.log(await resultHandle.jsonValue());
|
582
598
|
* await resultHandle.dispose();
|
583
599
|
* ```
|
@@ -587,14 +603,17 @@ class Page extends EventEmitter_js_1.EventEmitter {
|
|
587
603
|
* you instead get an {@link ElementHandle} back:
|
588
604
|
*
|
589
605
|
* @example
|
606
|
+
*
|
590
607
|
* ```ts
|
591
|
-
* const button = await page.evaluateHandle(() =>
|
608
|
+
* const button = await page.evaluateHandle(() =>
|
609
|
+
* document.querySelector('button')
|
610
|
+
* );
|
592
611
|
* // can call `click` because `button` is an `ElementHandle`
|
593
612
|
* await button.click();
|
594
613
|
* ```
|
595
614
|
*
|
596
615
|
* The TypeScript definitions assume that `evaluateHandle` returns
|
597
|
-
*
|
616
|
+
* a `JSHandle`, but if you know it's going to return an
|
598
617
|
* `ElementHandle`, pass it as the generic argument:
|
599
618
|
*
|
600
619
|
* ```ts
|
@@ -621,7 +640,7 @@ class Page extends EventEmitter_js_1.EventEmitter {
|
|
621
640
|
*
|
622
641
|
* ```ts
|
623
642
|
* // Create a Map object
|
624
|
-
* await page.evaluate(() => window.map = new Map());
|
643
|
+
* await page.evaluate(() => (window.map = new Map()));
|
625
644
|
* // Get a handle to the Map object prototype
|
626
645
|
* const mapPrototype = await page.evaluateHandle(() => Map.prototype);
|
627
646
|
* // Query all map instances into an array
|
@@ -631,6 +650,7 @@ class Page extends EventEmitter_js_1.EventEmitter {
|
|
631
650
|
* await mapInstances.dispose();
|
632
651
|
* await mapPrototype.dispose();
|
633
652
|
* ```
|
653
|
+
*
|
634
654
|
* @param prototypeHandle - a handle to the object prototype.
|
635
655
|
* @returns Promise which resolves to a handle to an array of objects with
|
636
656
|
* this prototype.
|
@@ -668,7 +688,10 @@ class Page extends EventEmitter_js_1.EventEmitter {
|
|
668
688
|
* ```ts
|
669
689
|
* // if you don't provide HTMLInputElement here, TS will error
|
670
690
|
* // as `value` is not on `Element`
|
671
|
-
* const searchValue = await page.$eval(
|
691
|
+
* const searchValue = await page.$eval(
|
692
|
+
* '#search',
|
693
|
+
* (el: HTMLInputElement) => el.value
|
694
|
+
* );
|
672
695
|
* ```
|
673
696
|
*
|
674
697
|
* The compiler should be able to infer the return type
|
@@ -681,7 +704,8 @@ class Page extends EventEmitter_js_1.EventEmitter {
|
|
681
704
|
* // The compiler can infer the return type in this case, but if it can't
|
682
705
|
* // or if you want to be more explicit, provide it as the generic type.
|
683
706
|
* const searchValue = await page.$eval<string>(
|
684
|
-
*
|
707
|
+
* '#search',
|
708
|
+
* (el: HTMLInputElement) => el.value
|
685
709
|
* );
|
686
710
|
* ```
|
687
711
|
*
|
@@ -705,7 +729,6 @@ class Page extends EventEmitter_js_1.EventEmitter {
|
|
705
729
|
* the page and passes the result as the first argument to the `pageFunction`.
|
706
730
|
*
|
707
731
|
* @remarks
|
708
|
-
*
|
709
732
|
* If `pageFunction` returns a promise `$$eval` will wait for the promise to
|
710
733
|
* resolve and then return its value.
|
711
734
|
*
|
@@ -717,7 +740,7 @@ class Page extends EventEmitter_js_1.EventEmitter {
|
|
717
740
|
*
|
718
741
|
* // get the text content of all the `.options` elements:
|
719
742
|
* const options = await page.$$eval('div > span.options', options => {
|
720
|
-
* return options.map(option => option.textContent)
|
743
|
+
* return options.map(option => option.textContent);
|
721
744
|
* });
|
722
745
|
* ```
|
723
746
|
*
|
@@ -746,16 +769,17 @@ class Page extends EventEmitter_js_1.EventEmitter {
|
|
746
769
|
* // The compiler can infer the return type in this case, but if it can't
|
747
770
|
* // or if you want to be more explicit, provide it as the generic type.
|
748
771
|
* const allInputValues = await page.$$eval<string[]>(
|
749
|
-
*
|
772
|
+
* 'input',
|
773
|
+
* (elements: HTMLInputElement[]) => elements.map(e => e.textContent)
|
750
774
|
* );
|
751
775
|
* ```
|
752
776
|
*
|
753
777
|
* @param selector - the
|
754
778
|
* {@link https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Selectors | selector}
|
755
779
|
* to query for
|
756
|
-
* @param pageFunction - the function to be evaluated in the page context.
|
757
|
-
* be passed the result of
|
758
|
-
* as its first argument.
|
780
|
+
* @param pageFunction - the function to be evaluated in the page context.
|
781
|
+
* Will be passed the result of
|
782
|
+
* `Array.from(document.querySelectorAll(selector))` as its first argument.
|
759
783
|
* @param args - any additional arguments to pass through to `pageFunction`.
|
760
784
|
*
|
761
785
|
* @returns The result of calling `pageFunction`. If it returns an element it
|
@@ -769,8 +793,10 @@ class Page extends EventEmitter_js_1.EventEmitter {
|
|
769
793
|
* The method evaluates the XPath expression relative to the page document as
|
770
794
|
* its context node. If there are no such elements, the method resolves to an
|
771
795
|
* empty array.
|
796
|
+
*
|
772
797
|
* @remarks
|
773
798
|
* Shortcut for {@link Frame.$x | Page.mainFrame().$x(expression) }.
|
799
|
+
*
|
774
800
|
* @param expression - Expression to evaluate
|
775
801
|
*/
|
776
802
|
async $x(expression) {
|
@@ -805,6 +831,7 @@ class Page extends EventEmitter_js_1.EventEmitter {
|
|
805
831
|
}
|
806
832
|
/**
|
807
833
|
* @example
|
834
|
+
*
|
808
835
|
* ```ts
|
809
836
|
* await page.setCookie(cookieObject1, cookieObject2);
|
810
837
|
* ```
|
@@ -828,10 +855,13 @@ class Page extends EventEmitter_js_1.EventEmitter {
|
|
828
855
|
}
|
829
856
|
/**
|
830
857
|
* Adds a `<script>` tag into the page with the desired URL or content.
|
858
|
+
*
|
831
859
|
* @remarks
|
832
|
-
* Shortcut for
|
833
|
-
* @
|
834
|
-
*
|
860
|
+
* Shortcut for
|
861
|
+
* {@link Frame.addScriptTag | page.mainFrame().addScriptTag(options)}.
|
862
|
+
*
|
863
|
+
* @returns Promise which resolves to the added tag when the script's onload
|
864
|
+
* fires or when the script content was injected into frame.
|
835
865
|
*/
|
836
866
|
async addScriptTag(options) {
|
837
867
|
return this.mainFrame().addScriptTag(options);
|
@@ -846,63 +876,74 @@ class Page extends EventEmitter_js_1.EventEmitter {
|
|
846
876
|
return this.mainFrame().addStyleTag(options);
|
847
877
|
}
|
848
878
|
/**
|
849
|
-
* The method adds a function called `name` on the page's `window` object.
|
850
|
-
* called, the function executes `puppeteerFunction` in node.js and
|
851
|
-
* `Promise` which resolves to the return value of
|
879
|
+
* The method adds a function called `name` on the page's `window` object.
|
880
|
+
* When called, the function executes `puppeteerFunction` in node.js and
|
881
|
+
* returns a `Promise` which resolves to the return value of
|
882
|
+
* `puppeteerFunction`.
|
852
883
|
*
|
853
884
|
* If the puppeteerFunction returns a `Promise`, it will be awaited.
|
854
885
|
*
|
855
|
-
*
|
856
|
-
*
|
857
|
-
*
|
858
|
-
*
|
886
|
+
* :::note
|
887
|
+
*
|
888
|
+
* Functions installed via `page.exposeFunction` survive navigations.
|
889
|
+
*
|
890
|
+
* :::note
|
891
|
+
*
|
859
892
|
* @example
|
860
893
|
* An example of adding an `md5` function into the page:
|
894
|
+
*
|
861
895
|
* ```ts
|
862
896
|
* const puppeteer = require('puppeteer');
|
863
897
|
* const crypto = require('crypto');
|
864
898
|
*
|
865
899
|
* (async () => {
|
866
|
-
*
|
867
|
-
*
|
868
|
-
*
|
869
|
-
*
|
870
|
-
*
|
871
|
-
*
|
872
|
-
*
|
873
|
-
*
|
874
|
-
*
|
875
|
-
*
|
876
|
-
*
|
877
|
-
*
|
878
|
-
*
|
900
|
+
* const browser = await puppeteer.launch();
|
901
|
+
* const page = await browser.newPage();
|
902
|
+
* page.on('console', msg => console.log(msg.text()));
|
903
|
+
* await page.exposeFunction('md5', text =>
|
904
|
+
* crypto.createHash('md5').update(text).digest('hex')
|
905
|
+
* );
|
906
|
+
* await page.evaluate(async () => {
|
907
|
+
* // use window.md5 to compute hashes
|
908
|
+
* const myString = 'PUPPETEER';
|
909
|
+
* const myHash = await window.md5(myString);
|
910
|
+
* console.log(`md5 of ${myString} is ${myHash}`);
|
911
|
+
* });
|
912
|
+
* await browser.close();
|
879
913
|
* })();
|
880
914
|
* ```
|
915
|
+
*
|
916
|
+
* @example
|
881
917
|
* An example of adding a `window.readfile` function into the page:
|
918
|
+
*
|
882
919
|
* ```ts
|
883
920
|
* const puppeteer = require('puppeteer');
|
884
921
|
* const fs = require('fs');
|
885
922
|
*
|
886
923
|
* (async () => {
|
887
|
-
*
|
888
|
-
*
|
889
|
-
*
|
890
|
-
*
|
891
|
-
*
|
892
|
-
*
|
893
|
-
*
|
894
|
-
*
|
895
|
-
*
|
896
|
-
*
|
897
|
-
*
|
898
|
-
*
|
899
|
-
*
|
900
|
-
*
|
901
|
-
*
|
902
|
-
*
|
903
|
-
*
|
924
|
+
* const browser = await puppeteer.launch();
|
925
|
+
* const page = await browser.newPage();
|
926
|
+
* page.on('console', msg => console.log(msg.text()));
|
927
|
+
* await page.exposeFunction('readfile', async filePath => {
|
928
|
+
* return new Promise((resolve, reject) => {
|
929
|
+
* fs.readFile(filePath, 'utf8', (err, text) => {
|
930
|
+
* if (err) reject(err);
|
931
|
+
* else resolve(text);
|
932
|
+
* });
|
933
|
+
* });
|
934
|
+
* });
|
935
|
+
* await page.evaluate(async () => {
|
936
|
+
* // use window.readfile to read contents of a file
|
937
|
+
* const content = await window.readfile('/etc/hosts');
|
938
|
+
* console.log(content);
|
939
|
+
* });
|
940
|
+
* await browser.close();
|
904
941
|
* })();
|
905
942
|
* ```
|
943
|
+
*
|
944
|
+
* @param name - Name of the function on the window object
|
945
|
+
* @param pptrFunction - Callback function which will be called in Puppeteer's
|
946
|
+
* context.
|
906
947
|
*/
|
907
948
|
async exposeFunction(name, pptrFunction) {
|
908
949
|
if (__classPrivateFieldGet(this, _Page_pageBindings, "f").has(name)) {
|
@@ -929,23 +970,35 @@ class Page extends EventEmitter_js_1.EventEmitter {
|
|
929
970
|
}
|
930
971
|
/**
|
931
972
|
* Provide credentials for `HTTP authentication`.
|
932
|
-
*
|
973
|
+
*
|
974
|
+
* @remarks
|
975
|
+
* To disable authentication, pass `null`.
|
933
976
|
*/
|
934
977
|
async authenticate(credentials) {
|
935
|
-
return __classPrivateFieldGet(this, _Page_frameManager, "f").networkManager
|
978
|
+
return __classPrivateFieldGet(this, _Page_frameManager, "f").networkManager.authenticate(credentials);
|
936
979
|
}
|
937
980
|
/**
|
938
981
|
* The extra HTTP headers will be sent with every request the page initiates.
|
939
|
-
*
|
982
|
+
*
|
983
|
+
* :::tip
|
984
|
+
*
|
985
|
+
* All HTTP header names are lowercased. (HTTP headers are
|
940
986
|
* case-insensitive, so this shouldn’t impact your server code.)
|
941
|
-
*
|
987
|
+
*
|
988
|
+
* :::
|
989
|
+
*
|
990
|
+
* :::note
|
991
|
+
*
|
992
|
+
* page.setExtraHTTPHeaders does not guarantee the order of headers in
|
942
993
|
* the outgoing requests.
|
994
|
+
*
|
995
|
+
* :::
|
996
|
+
*
|
943
997
|
* @param headers - An object containing additional HTTP headers to be sent
|
944
998
|
* with every request. All header values must be strings.
|
945
|
-
* @returns
|
946
999
|
*/
|
947
1000
|
async setExtraHTTPHeaders(headers) {
|
948
|
-
return __classPrivateFieldGet(this, _Page_frameManager, "f").networkManager
|
1001
|
+
return __classPrivateFieldGet(this, _Page_frameManager, "f").networkManager.setExtraHTTPHeaders(headers);
|
949
1002
|
}
|
950
1003
|
/**
|
951
1004
|
* @param userAgent - Specific user agent to use in this page
|
@@ -954,9 +1007,7 @@ class Page extends EventEmitter_js_1.EventEmitter {
|
|
954
1007
|
* @returns Promise which resolves when the user agent is set.
|
955
1008
|
*/
|
956
1009
|
async setUserAgent(userAgent, userAgentMetadata) {
|
957
|
-
return __classPrivateFieldGet(this, _Page_frameManager, "f")
|
958
|
-
.networkManager()
|
959
|
-
.setUserAgent(userAgent, userAgentMetadata);
|
1010
|
+
return __classPrivateFieldGet(this, _Page_frameManager, "f").networkManager.setUserAgent(userAgent, userAgentMetadata);
|
960
1011
|
}
|
961
1012
|
/**
|
962
1013
|
* @returns Object containing metrics as key/value pairs.
|
@@ -984,12 +1035,12 @@ class Page extends EventEmitter_js_1.EventEmitter {
|
|
984
1035
|
*
|
985
1036
|
* - `TaskDuration` : Combined duration of all tasks performed by the browser.
|
986
1037
|
*
|
987
|
-
*
|
988
1038
|
* - `JSHeapUsedSize` : Used JavaScript heap size.
|
989
1039
|
*
|
990
1040
|
* - `JSHeapTotalSize` : Total JavaScript heap size.
|
1041
|
+
*
|
991
1042
|
* @remarks
|
992
|
-
*
|
1043
|
+
* All timestamps are in monotonic time: monotonically increasing time
|
993
1044
|
* in seconds since an arbitrary point in the past.
|
994
1045
|
*/
|
995
1046
|
async metrics() {
|
@@ -1020,17 +1071,17 @@ class Page extends EventEmitter_js_1.EventEmitter {
|
|
1020
1071
|
* {@link Page.setDefaultTimeout} methods.
|
1021
1072
|
*
|
1022
1073
|
* - `waitUntil`: When to consider setting markup succeeded, defaults to
|
1023
|
-
*
|
1024
|
-
*
|
1025
|
-
*
|
1026
|
-
*
|
1027
|
-
*
|
1028
|
-
*
|
1029
|
-
*
|
1030
|
-
*
|
1031
|
-
*
|
1032
|
-
*
|
1033
|
-
*
|
1074
|
+
* `load`. Given an array of event strings, setting content is considered
|
1075
|
+
* to be successful after all events have been fired. Events can be
|
1076
|
+
* either:<br/>
|
1077
|
+
* - `load` : consider setting content to be finished when the `load` event
|
1078
|
+
* is fired.<br/>
|
1079
|
+
* - `domcontentloaded` : consider setting content to be finished when the
|
1080
|
+
* `DOMContentLoaded` event is fired.<br/>
|
1081
|
+
* - `networkidle0` : consider setting content to be finished when there are
|
1082
|
+
* no more than 0 network connections for at least `500` ms.<br/>
|
1083
|
+
* - `networkidle2` : consider setting content to be finished when there are
|
1084
|
+
* no more than 2 network connections for at least `500` ms.
|
1034
1085
|
*/
|
1035
1086
|
async setContent(html, options = {}) {
|
1036
1087
|
await __classPrivateFieldGet(this, _Page_frameManager, "f").mainFrame().setContent(html, options);
|
@@ -1051,22 +1102,23 @@ class Page extends EventEmitter_js_1.EventEmitter {
|
|
1051
1102
|
* {@link Page.setDefaultTimeout} methods.
|
1052
1103
|
*
|
1053
1104
|
* - `waitUntil`:When to consider navigation succeeded, defaults to `load`.
|
1054
|
-
*
|
1055
|
-
*
|
1056
|
-
*
|
1057
|
-
*
|
1058
|
-
*
|
1059
|
-
*
|
1060
|
-
*
|
1061
|
-
*
|
1062
|
-
*
|
1063
|
-
*
|
1105
|
+
* Given an array of event strings, navigation is considered to be
|
1106
|
+
* successful after all events have been fired. Events can be either:<br/>
|
1107
|
+
* - `load` : consider navigation to be finished when the load event is
|
1108
|
+
* fired.<br/>
|
1109
|
+
* - `domcontentloaded` : consider navigation to be finished when the
|
1110
|
+
* DOMContentLoaded event is fired.<br/>
|
1111
|
+
* - `networkidle0` : consider navigation to be finished when there are no
|
1112
|
+
* more than 0 network connections for at least `500` ms.<br/>
|
1113
|
+
* - `networkidle2` : consider navigation to be finished when there are no
|
1114
|
+
* more than 2 network connections for at least `500` ms.
|
1064
1115
|
*
|
1065
1116
|
* - `referer` : Referer header value. If provided it will take preference
|
1066
1117
|
* over the referer header value set by
|
1067
1118
|
* {@link Page.setExtraHTTPHeaders |page.setExtraHTTPHeaders()}.
|
1068
1119
|
*
|
1069
1120
|
* `page.goto` will throw an error if:
|
1121
|
+
*
|
1070
1122
|
* - there's an SSL error (e.g. in case of self-signed certificates).
|
1071
1123
|
* - target URL is invalid.
|
1072
1124
|
* - the timeout is exceeded during navigation.
|
@@ -1074,9 +1126,9 @@ class Page extends EventEmitter_js_1.EventEmitter {
|
|
1074
1126
|
* - the main resource failed to load.
|
1075
1127
|
*
|
1076
1128
|
* `page.goto` will not throw an error when any valid HTTP status code is
|
1077
|
-
*
|
1078
|
-
*
|
1079
|
-
*
|
1129
|
+
* returned by the remote server, including 404 "Not Found" and 500
|
1130
|
+
* "Internal Server Error". The status code for such responses can be
|
1131
|
+
* retrieved by calling response.status().
|
1080
1132
|
*
|
1081
1133
|
* NOTE: `page.goto` either throws an error or returns a main resource
|
1082
1134
|
* response. The only exceptions are navigation to about:blank or navigation
|
@@ -1106,16 +1158,16 @@ class Page extends EventEmitter_js_1.EventEmitter {
|
|
1106
1158
|
* {@link Page.setDefaultTimeout} methods.
|
1107
1159
|
*
|
1108
1160
|
* - `waitUntil`: When to consider navigation succeeded, defaults to `load`.
|
1109
|
-
*
|
1110
|
-
*
|
1111
|
-
*
|
1112
|
-
*
|
1113
|
-
*
|
1114
|
-
*
|
1115
|
-
*
|
1116
|
-
*
|
1117
|
-
*
|
1118
|
-
*
|
1161
|
+
* Given an array of event strings, navigation is considered to be
|
1162
|
+
* successful after all events have been fired. Events can be either:<br/>
|
1163
|
+
* - `load` : consider navigation to be finished when the load event is
|
1164
|
+
* fired.<br/>
|
1165
|
+
* - `domcontentloaded` : consider navigation to be finished when the
|
1166
|
+
* DOMContentLoaded event is fired.<br/>
|
1167
|
+
* - `networkidle0` : consider navigation to be finished when there are no
|
1168
|
+
* more than 0 network connections for at least `500` ms.<br/>
|
1169
|
+
* - `networkidle2` : consider navigation to be finished when there are no
|
1170
|
+
* more than 2 network connections for at least `500` ms.
|
1119
1171
|
*/
|
1120
1172
|
async reload(options) {
|
1121
1173
|
const result = await Promise.all([
|
@@ -1129,10 +1181,11 @@ class Page extends EventEmitter_js_1.EventEmitter {
|
|
1129
1181
|
* you run code that will indirectly cause the page to navigate.
|
1130
1182
|
*
|
1131
1183
|
* @example
|
1184
|
+
*
|
1132
1185
|
* ```ts
|
1133
1186
|
* const [response] = await Promise.all([
|
1134
|
-
*
|
1135
|
-
*
|
1187
|
+
* page.waitForNavigation(), // The promise resolves after navigation has finished
|
1188
|
+
* page.click('a.my-link'), // Clicking the link will indirectly cause a navigation
|
1136
1189
|
* ]);
|
1137
1190
|
* ```
|
1138
1191
|
*
|
@@ -1144,6 +1197,7 @@ class Page extends EventEmitter_js_1.EventEmitter {
|
|
1144
1197
|
* @param options - Navigation parameters which might have the following
|
1145
1198
|
* properties:
|
1146
1199
|
* @returns A `Promise` which resolves to the main resource response.
|
1200
|
+
*
|
1147
1201
|
* - In case of multiple redirects, the navigation will resolve with the
|
1148
1202
|
* response of the last redirect.
|
1149
1203
|
* - In case of navigation to a different anchor or navigation due to History
|
@@ -1157,29 +1211,31 @@ class Page extends EventEmitter_js_1.EventEmitter {
|
|
1157
1211
|
* @param options - Optional waiting parameters
|
1158
1212
|
* @returns Promise which resolves to the matched response
|
1159
1213
|
* @example
|
1214
|
+
*
|
1160
1215
|
* ```ts
|
1161
1216
|
* const firstResponse = await page.waitForResponse(
|
1162
|
-
*
|
1217
|
+
* 'https://example.com/resource'
|
1163
1218
|
* );
|
1164
1219
|
* const finalResponse = await page.waitForResponse(
|
1165
|
-
*
|
1166
|
-
*
|
1220
|
+
* response =>
|
1221
|
+
* response.url() === 'https://example.com' && response.status() === 200
|
1167
1222
|
* );
|
1168
|
-
* const finalResponse = await page.waitForResponse(async
|
1169
|
-
*
|
1223
|
+
* const finalResponse = await page.waitForResponse(async response => {
|
1224
|
+
* return (await response.text()).includes('<html>');
|
1170
1225
|
* });
|
1171
1226
|
* return finalResponse.ok();
|
1172
1227
|
* ```
|
1228
|
+
*
|
1173
1229
|
* @remarks
|
1174
1230
|
* Optional Waiting Parameters have:
|
1175
1231
|
*
|
1176
1232
|
* - `timeout`: Maximum wait time in milliseconds, defaults to `30` seconds, pass
|
1177
|
-
*
|
1178
|
-
*
|
1233
|
+
* `0` to disable the timeout. The default value can be changed by using the
|
1234
|
+
* {@link Page.setDefaultTimeout} method.
|
1179
1235
|
*/
|
1180
1236
|
async waitForRequest(urlOrPredicate, options = {}) {
|
1181
1237
|
const { timeout = __classPrivateFieldGet(this, _Page_timeoutSettings, "f").timeout() } = options;
|
1182
|
-
return (0, util_js_1.waitForEvent)(__classPrivateFieldGet(this, _Page_frameManager, "f").networkManager
|
1238
|
+
return (0, util_js_1.waitForEvent)(__classPrivateFieldGet(this, _Page_frameManager, "f").networkManager, NetworkManager_js_1.NetworkManagerEmittedEvents.Request, request => {
|
1183
1239
|
if ((0, util_js_1.isString)(urlOrPredicate)) {
|
1184
1240
|
return urlOrPredicate === request.url();
|
1185
1241
|
}
|
@@ -1194,29 +1250,31 @@ class Page extends EventEmitter_js_1.EventEmitter {
|
|
1194
1250
|
* @param options - Optional waiting parameters
|
1195
1251
|
* @returns Promise which resolves to the matched response.
|
1196
1252
|
* @example
|
1253
|
+
*
|
1197
1254
|
* ```ts
|
1198
1255
|
* const firstResponse = await page.waitForResponse(
|
1199
|
-
*
|
1256
|
+
* 'https://example.com/resource'
|
1200
1257
|
* );
|
1201
1258
|
* const finalResponse = await page.waitForResponse(
|
1202
|
-
*
|
1203
|
-
*
|
1259
|
+
* response =>
|
1260
|
+
* response.url() === 'https://example.com' && response.status() === 200
|
1204
1261
|
* );
|
1205
|
-
* const finalResponse = await page.waitForResponse(async
|
1206
|
-
*
|
1262
|
+
* const finalResponse = await page.waitForResponse(async response => {
|
1263
|
+
* return (await response.text()).includes('<html>');
|
1207
1264
|
* });
|
1208
1265
|
* return finalResponse.ok();
|
1209
1266
|
* ```
|
1267
|
+
*
|
1210
1268
|
* @remarks
|
1211
1269
|
* Optional Parameter have:
|
1212
1270
|
*
|
1213
1271
|
* - `timeout`: Maximum wait time in milliseconds, defaults to `30` seconds,
|
1214
|
-
*
|
1215
|
-
*
|
1272
|
+
* pass `0` to disable the timeout. The default value can be changed by using
|
1273
|
+
* the {@link Page.setDefaultTimeout} method.
|
1216
1274
|
*/
|
1217
1275
|
async waitForResponse(urlOrPredicate, options = {}) {
|
1218
1276
|
const { timeout = __classPrivateFieldGet(this, _Page_timeoutSettings, "f").timeout() } = options;
|
1219
|
-
return (0, util_js_1.waitForEvent)(__classPrivateFieldGet(this, _Page_frameManager, "f").networkManager
|
1277
|
+
return (0, util_js_1.waitForEvent)(__classPrivateFieldGet(this, _Page_frameManager, "f").networkManager, NetworkManager_js_1.NetworkManagerEmittedEvents.Response, async (response) => {
|
1220
1278
|
if ((0, util_js_1.isString)(urlOrPredicate)) {
|
1221
1279
|
return urlOrPredicate === response.url();
|
1222
1280
|
}
|
@@ -1232,7 +1290,7 @@ class Page extends EventEmitter_js_1.EventEmitter {
|
|
1232
1290
|
*/
|
1233
1291
|
async waitForNetworkIdle(options = {}) {
|
1234
1292
|
const { idleTime = 500, timeout = __classPrivateFieldGet(this, _Page_timeoutSettings, "f").timeout() } = options;
|
1235
|
-
const networkManager = __classPrivateFieldGet(this, _Page_frameManager, "f").networkManager
|
1293
|
+
const networkManager = __classPrivateFieldGet(this, _Page_frameManager, "f").networkManager;
|
1236
1294
|
let idleResolveCallback;
|
1237
1295
|
const idlePromise = new Promise(resolve => {
|
1238
1296
|
idleResolveCallback = resolve;
|
@@ -1284,17 +1342,19 @@ class Page extends EventEmitter_js_1.EventEmitter {
|
|
1284
1342
|
* @param options - Optional waiting parameters
|
1285
1343
|
* @returns Promise which resolves to the matched frame.
|
1286
1344
|
* @example
|
1345
|
+
*
|
1287
1346
|
* ```ts
|
1288
|
-
* const frame = await page.waitForFrame(async
|
1347
|
+
* const frame = await page.waitForFrame(async frame => {
|
1289
1348
|
* return frame.name() === 'Test';
|
1290
1349
|
* });
|
1291
1350
|
* ```
|
1351
|
+
*
|
1292
1352
|
* @remarks
|
1293
1353
|
* Optional Parameter have:
|
1294
1354
|
*
|
1295
1355
|
* - `timeout`: Maximum wait time in milliseconds, defaults to `30` seconds,
|
1296
|
-
*
|
1297
|
-
*
|
1356
|
+
* pass `0` to disable the timeout. The default value can be changed by using
|
1357
|
+
* the {@link Page.setDefaultTimeout} method.
|
1298
1358
|
*/
|
1299
1359
|
async waitForFrame(urlOrPredicate, options = {}) {
|
1300
1360
|
const { timeout = __classPrivateFieldGet(this, _Page_timeoutSettings, "f").timeout() } = options;
|
@@ -1340,16 +1400,16 @@ class Page extends EventEmitter_js_1.EventEmitter {
|
|
1340
1400
|
* {@link Page.setDefaultTimeout} methods.
|
1341
1401
|
*
|
1342
1402
|
* - `waitUntil` : When to consider navigation succeeded, defaults to `load`.
|
1343
|
-
*
|
1344
|
-
*
|
1345
|
-
*
|
1346
|
-
*
|
1347
|
-
*
|
1348
|
-
*
|
1349
|
-
*
|
1350
|
-
*
|
1351
|
-
*
|
1352
|
-
*
|
1403
|
+
* Given an array of event strings, navigation is considered to be
|
1404
|
+
* successful after all events have been fired. Events can be either:<br/>
|
1405
|
+
* - `load` : consider navigation to be finished when the load event is
|
1406
|
+
* fired.<br/>
|
1407
|
+
* - `domcontentloaded` : consider navigation to be finished when the
|
1408
|
+
* DOMContentLoaded event is fired.<br/>
|
1409
|
+
* - `networkidle0` : consider navigation to be finished when there are no
|
1410
|
+
* more than 0 network connections for at least `500` ms.<br/>
|
1411
|
+
* - `networkidle2` : consider navigation to be finished when there are no
|
1412
|
+
* more than 2 network connections for at least `500` ms.
|
1353
1413
|
*/
|
1354
1414
|
async goBack(options = {}) {
|
1355
1415
|
return __classPrivateFieldGet(this, _Page_instances, "m", _Page_go).call(this, -1, options);
|
@@ -1369,16 +1429,16 @@ class Page extends EventEmitter_js_1.EventEmitter {
|
|
1369
1429
|
* {@link Page.setDefaultTimeout} methods.
|
1370
1430
|
*
|
1371
1431
|
* - `waitUntil`: When to consider navigation succeeded, defaults to `load`.
|
1372
|
-
*
|
1373
|
-
*
|
1374
|
-
*
|
1375
|
-
*
|
1376
|
-
*
|
1377
|
-
*
|
1378
|
-
*
|
1379
|
-
*
|
1380
|
-
*
|
1381
|
-
*
|
1432
|
+
* Given an array of event strings, navigation is considered to be
|
1433
|
+
* successful after all events have been fired. Events can be either:<br/>
|
1434
|
+
* - `load` : consider navigation to be finished when the load event is
|
1435
|
+
* fired.<br/>
|
1436
|
+
* - `domcontentloaded` : consider navigation to be finished when the
|
1437
|
+
* DOMContentLoaded event is fired.<br/>
|
1438
|
+
* - `networkidle0` : consider navigation to be finished when there are no
|
1439
|
+
* more than 0 network connections for at least `500` ms.<br/>
|
1440
|
+
* - `networkidle2` : consider navigation to be finished when there are no
|
1441
|
+
* more than 2 network connections for at least `500` ms.
|
1382
1442
|
*/
|
1383
1443
|
async goForward(options = {}) {
|
1384
1444
|
return __classPrivateFieldGet(this, _Page_instances, "m", _Page_go).call(this, +1, options);
|
@@ -1400,18 +1460,20 @@ class Page extends EventEmitter_js_1.EventEmitter {
|
|
1400
1460
|
* don't expect phones to change size, so you should emulate before navigating
|
1401
1461
|
* to the page.
|
1402
1462
|
* @example
|
1463
|
+
*
|
1403
1464
|
* ```ts
|
1404
1465
|
* const puppeteer = require('puppeteer');
|
1405
1466
|
* const iPhone = puppeteer.devices['iPhone 6'];
|
1406
1467
|
* (async () => {
|
1407
|
-
*
|
1408
|
-
*
|
1409
|
-
*
|
1410
|
-
*
|
1411
|
-
*
|
1412
|
-
*
|
1468
|
+
* const browser = await puppeteer.launch();
|
1469
|
+
* const page = await browser.newPage();
|
1470
|
+
* await page.emulate(iPhone);
|
1471
|
+
* await page.goto('https://www.google.com');
|
1472
|
+
* // other actions...
|
1473
|
+
* await browser.close();
|
1413
1474
|
* })();
|
1414
1475
|
* ```
|
1476
|
+
*
|
1415
1477
|
* @remarks List of all available devices is available in the source code:
|
1416
1478
|
* {@link https://github.com/puppeteer/puppeteer/blob/main/src/common/DeviceDescriptors.ts | src/common/DeviceDescriptors.ts}.
|
1417
1479
|
*/
|
@@ -1453,6 +1515,7 @@ class Page extends EventEmitter_js_1.EventEmitter {
|
|
1453
1515
|
* values are `screen`, `print` and `null`. Passing `null` disables CSS media
|
1454
1516
|
* emulation.
|
1455
1517
|
* @example
|
1518
|
+
*
|
1456
1519
|
* ```ts
|
1457
1520
|
* await page.evaluate(() => matchMedia('screen').matches);
|
1458
1521
|
* // → true
|
@@ -1495,45 +1558,54 @@ class Page extends EventEmitter_js_1.EventEmitter {
|
|
1495
1558
|
* objects, emulates CSS media features on the page. Each media feature object
|
1496
1559
|
* must have the following properties:
|
1497
1560
|
* @example
|
1561
|
+
*
|
1498
1562
|
* ```ts
|
1499
1563
|
* await page.emulateMediaFeatures([
|
1500
|
-
*
|
1564
|
+
* {name: 'prefers-color-scheme', value: 'dark'},
|
1501
1565
|
* ]);
|
1502
|
-
* await page.evaluate(
|
1566
|
+
* await page.evaluate(
|
1567
|
+
* () => matchMedia('(prefers-color-scheme: dark)').matches
|
1568
|
+
* );
|
1503
1569
|
* // → true
|
1504
|
-
* await page.evaluate(
|
1570
|
+
* await page.evaluate(
|
1571
|
+
* () => matchMedia('(prefers-color-scheme: light)').matches
|
1572
|
+
* );
|
1505
1573
|
* // → false
|
1506
1574
|
*
|
1507
1575
|
* await page.emulateMediaFeatures([
|
1508
|
-
*
|
1576
|
+
* {name: 'prefers-reduced-motion', value: 'reduce'},
|
1509
1577
|
* ]);
|
1510
1578
|
* await page.evaluate(
|
1511
|
-
*
|
1579
|
+
* () => matchMedia('(prefers-reduced-motion: reduce)').matches
|
1512
1580
|
* );
|
1513
1581
|
* // → true
|
1514
1582
|
* await page.evaluate(
|
1515
|
-
*
|
1583
|
+
* () => matchMedia('(prefers-reduced-motion: no-preference)').matches
|
1516
1584
|
* );
|
1517
1585
|
* // → false
|
1518
1586
|
*
|
1519
1587
|
* await page.emulateMediaFeatures([
|
1520
|
-
*
|
1521
|
-
*
|
1588
|
+
* {name: 'prefers-color-scheme', value: 'dark'},
|
1589
|
+
* {name: 'prefers-reduced-motion', value: 'reduce'},
|
1522
1590
|
* ]);
|
1523
|
-
* await page.evaluate(
|
1591
|
+
* await page.evaluate(
|
1592
|
+
* () => matchMedia('(prefers-color-scheme: dark)').matches
|
1593
|
+
* );
|
1524
1594
|
* // → true
|
1525
|
-
* await page.evaluate(
|
1595
|
+
* await page.evaluate(
|
1596
|
+
* () => matchMedia('(prefers-color-scheme: light)').matches
|
1597
|
+
* );
|
1526
1598
|
* // → false
|
1527
1599
|
* await page.evaluate(
|
1528
|
-
*
|
1600
|
+
* () => matchMedia('(prefers-reduced-motion: reduce)').matches
|
1529
1601
|
* );
|
1530
1602
|
* // → true
|
1531
1603
|
* await page.evaluate(
|
1532
|
-
*
|
1604
|
+
* () => matchMedia('(prefers-reduced-motion: no-preference)').matches
|
1533
1605
|
* );
|
1534
1606
|
* // → false
|
1535
1607
|
*
|
1536
|
-
* await page.emulateMediaFeatures([{
|
1608
|
+
* await page.emulateMediaFeatures([{name: 'color-gamut', value: 'p3'}]);
|
1537
1609
|
* await page.evaluate(() => matchMedia('(color-gamut: srgb)').matches);
|
1538
1610
|
* // → true
|
1539
1611
|
* await page.evaluate(() => matchMedia('(color-gamut: p3)').matches);
|
@@ -1569,7 +1641,7 @@ class Page extends EventEmitter_js_1.EventEmitter {
|
|
1569
1641
|
});
|
1570
1642
|
}
|
1571
1643
|
catch (error) {
|
1572
|
-
if ((0,
|
1644
|
+
if ((0, ErrorLike_js_1.isErrorLike)(error) && error.message.includes('Invalid timezone')) {
|
1573
1645
|
throw new Error(`Invalid timezone ID: ${timezoneId}`);
|
1574
1646
|
}
|
1575
1647
|
throw error;
|
@@ -1580,6 +1652,7 @@ class Page extends EventEmitter_js_1.EventEmitter {
|
|
1580
1652
|
* If no arguments set, clears idle state emulation.
|
1581
1653
|
*
|
1582
1654
|
* @example
|
1655
|
+
*
|
1583
1656
|
* ```ts
|
1584
1657
|
* // set idle emulation
|
1585
1658
|
* await page.emulateIdleState({isUserActive: true, isScreenUnlocked: false});
|
@@ -1608,6 +1681,7 @@ class Page extends EventEmitter_js_1.EventEmitter {
|
|
1608
1681
|
* Simulates the given vision deficiency on the page.
|
1609
1682
|
*
|
1610
1683
|
* @example
|
1684
|
+
*
|
1611
1685
|
* ```ts
|
1612
1686
|
* const puppeteer = require('puppeteer');
|
1613
1687
|
*
|
@@ -1617,13 +1691,13 @@ class Page extends EventEmitter_js_1.EventEmitter {
|
|
1617
1691
|
* await page.goto('https://v8.dev/blog/10-years');
|
1618
1692
|
*
|
1619
1693
|
* await page.emulateVisionDeficiency('achromatopsia');
|
1620
|
-
* await page.screenshot({
|
1694
|
+
* await page.screenshot({path: 'achromatopsia.png'});
|
1621
1695
|
*
|
1622
1696
|
* await page.emulateVisionDeficiency('deuteranopia');
|
1623
|
-
* await page.screenshot({
|
1697
|
+
* await page.screenshot({path: 'deuteranopia.png'});
|
1624
1698
|
*
|
1625
1699
|
* await page.emulateVisionDeficiency('blurredVision');
|
1626
|
-
* await page.screenshot({
|
1700
|
+
* await page.screenshot({path: 'blurred-vision.png'});
|
1627
1701
|
*
|
1628
1702
|
* await browser.close();
|
1629
1703
|
* })();
|
@@ -1658,12 +1732,13 @@ class Page extends EventEmitter_js_1.EventEmitter {
|
|
1658
1732
|
* In the case of multiple pages in a single browser, each page can have its
|
1659
1733
|
* own viewport size.
|
1660
1734
|
* @example
|
1735
|
+
*
|
1661
1736
|
* ```ts
|
1662
1737
|
* const page = await browser.newPage();
|
1663
1738
|
* await page.setViewport({
|
1664
|
-
*
|
1665
|
-
*
|
1666
|
-
*
|
1739
|
+
* width: 640,
|
1740
|
+
* height: 480,
|
1741
|
+
* deviceScaleFactor: 1,
|
1667
1742
|
* });
|
1668
1743
|
* await page.goto('https://example.com');
|
1669
1744
|
* ```
|
@@ -1719,8 +1794,6 @@ class Page extends EventEmitter_js_1.EventEmitter {
|
|
1719
1794
|
return __classPrivateFieldGet(this, _Page_viewport, "f");
|
1720
1795
|
}
|
1721
1796
|
/**
|
1722
|
-
* @remarks
|
1723
|
-
*
|
1724
1797
|
* Evaluates a function in the page's context and returns the result.
|
1725
1798
|
*
|
1726
1799
|
* If the function passed to `page.evaluteHandle` returns a Promise, the
|
@@ -1739,6 +1812,7 @@ class Page extends EventEmitter_js_1.EventEmitter {
|
|
1739
1812
|
* recommended as they are easier to debug and use with TypeScript):
|
1740
1813
|
*
|
1741
1814
|
* @example
|
1815
|
+
*
|
1742
1816
|
* ```ts
|
1743
1817
|
* const aHandle = await page.evaluate('1 + 2');
|
1744
1818
|
* ```
|
@@ -1775,7 +1849,7 @@ class Page extends EventEmitter_js_1.EventEmitter {
|
|
1775
1849
|
* - whenever the page is navigated
|
1776
1850
|
*
|
1777
1851
|
* - whenever the child frame is attached or navigated. In this case, the
|
1778
|
-
*
|
1852
|
+
* function is invoked in the context of the newly attached frame.
|
1779
1853
|
*
|
1780
1854
|
* The function is invoked after the document was created but before any of
|
1781
1855
|
* its scripts were run. This is useful to amend the JavaScript environment,
|
@@ -1784,6 +1858,7 @@ class Page extends EventEmitter_js_1.EventEmitter {
|
|
1784
1858
|
* @param args - Arguments to pass to `pageFunction`
|
1785
1859
|
* @example
|
1786
1860
|
* An example of overriding the navigator.languages property before the page loads:
|
1861
|
+
*
|
1787
1862
|
* ```ts
|
1788
1863
|
* // preload.js
|
1789
1864
|
*
|
@@ -1812,7 +1887,7 @@ class Page extends EventEmitter_js_1.EventEmitter {
|
|
1812
1887
|
* @param enabled - sets the `enabled` state of cache
|
1813
1888
|
*/
|
1814
1889
|
async setCacheEnabled(enabled = true) {
|
1815
|
-
await __classPrivateFieldGet(this, _Page_frameManager, "f").networkManager
|
1890
|
+
await __classPrivateFieldGet(this, _Page_frameManager, "f").networkManager.setCacheEnabled(enabled);
|
1816
1891
|
}
|
1817
1892
|
/**
|
1818
1893
|
* @remarks
|
@@ -1836,10 +1911,10 @@ class Page extends EventEmitter_js_1.EventEmitter {
|
|
1836
1911
|
*
|
1837
1912
|
* - `clip` : An object which specifies clipping region of the page.
|
1838
1913
|
* Should have the following fields:<br/>
|
1839
|
-
*
|
1840
|
-
*
|
1841
|
-
*
|
1842
|
-
*
|
1914
|
+
* - `x` : x-coordinate of top-left corner of clip area.<br/>
|
1915
|
+
* - `y` : y-coordinate of top-left corner of clip area.<br/>
|
1916
|
+
* - `width` : width of clipping area.<br/>
|
1917
|
+
* - `height` : height of clipping area.
|
1843
1918
|
*
|
1844
1919
|
* - `omitBackground` : Hides default white background and allows
|
1845
1920
|
* capturing screenshots with transparency. Defaults to `false`.
|
@@ -1935,7 +2010,6 @@ class Page extends EventEmitter_js_1.EventEmitter {
|
|
1935
2010
|
* {@link https://developer.mozilla.org/en-US/docs/Web/CSS/-webkit-print-color-adjust | `-webkit-print-color-adjust`}
|
1936
2011
|
* property to force rendering of exact colors.
|
1937
2012
|
*
|
1938
|
-
*
|
1939
2013
|
* @param options - options for generating the PDF.
|
1940
2014
|
*/
|
1941
2015
|
async createPDFStream(options = {}) {
|
@@ -2036,12 +2110,14 @@ class Page extends EventEmitter_js_1.EventEmitter {
|
|
2036
2110
|
* there's a separate `page.waitForNavigation()` promise to be resolved, you
|
2037
2111
|
* may end up with a race condition that yields unexpected results. The
|
2038
2112
|
* correct pattern for click and wait for navigation is the following:
|
2113
|
+
*
|
2039
2114
|
* ```ts
|
2040
2115
|
* const [response] = await Promise.all([
|
2041
|
-
*
|
2042
|
-
*
|
2116
|
+
* page.waitForNavigation(waitOptions),
|
2117
|
+
* page.click(selector, clickOptions),
|
2043
2118
|
* ]);
|
2044
2119
|
* ```
|
2120
|
+
*
|
2045
2121
|
* Shortcut for {@link Frame.click | page.mainFrame().click(selector[, options]) }.
|
2046
2122
|
* @param selector - A `selector` to search for element to click. If there are
|
2047
2123
|
* multiple elements satisfying the `selector`, the first will be clicked
|
@@ -2060,7 +2136,7 @@ class Page extends EventEmitter_js_1.EventEmitter {
|
|
2060
2136
|
* {@link https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Selectors | selector }
|
2061
2137
|
* of an element to focus. If there are multiple elements satisfying the
|
2062
2138
|
* selector, the first will be focused.
|
2063
|
-
* @returns
|
2139
|
+
* @returns Promise which resolves when the element matching selector is
|
2064
2140
|
* successfully focused. The promise will be rejected if there is no element
|
2065
2141
|
* matching selector.
|
2066
2142
|
* @remarks
|
@@ -2092,10 +2168,12 @@ class Page extends EventEmitter_js_1.EventEmitter {
|
|
2092
2168
|
* throws an error.
|
2093
2169
|
*
|
2094
2170
|
* @example
|
2171
|
+
*
|
2095
2172
|
* ```ts
|
2096
2173
|
* page.select('select#colors', 'blue'); // single selection
|
2097
2174
|
* page.select('select#colors', 'red', 'green', 'blue'); // multiple selections
|
2098
2175
|
* ```
|
2176
|
+
*
|
2099
2177
|
* @param selector - A
|
2100
2178
|
* {@link https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Selectors | Selector}
|
2101
2179
|
* to query the page for
|
@@ -2131,12 +2209,14 @@ class Page extends EventEmitter_js_1.EventEmitter {
|
|
2131
2209
|
*
|
2132
2210
|
* To press a special key, like `Control` or `ArrowDown`, use {@link Keyboard.press}.
|
2133
2211
|
* @example
|
2212
|
+
*
|
2134
2213
|
* ```ts
|
2135
2214
|
* await page.type('#mytextarea', 'Hello');
|
2136
2215
|
* // Types instantly
|
2137
|
-
* await page.type('#mytextarea', 'World', {
|
2216
|
+
* await page.type('#mytextarea', 'World', {delay: 100});
|
2138
2217
|
* // Types slower, like a user
|
2139
2218
|
* ```
|
2219
|
+
*
|
2140
2220
|
* @param selector - A
|
2141
2221
|
* {@link https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Selectors | selector}
|
2142
2222
|
* of an element to type into. If there are multiple elements satisfying the
|
@@ -2151,13 +2231,14 @@ class Page extends EventEmitter_js_1.EventEmitter {
|
|
2151
2231
|
return this.mainFrame().type(selector, text, options);
|
2152
2232
|
}
|
2153
2233
|
/**
|
2234
|
+
* @deprecated Use `new Promise(r => setTimeout(r, milliseconds));`.
|
2235
|
+
*
|
2154
2236
|
* Causes your script to wait for the given number of milliseconds.
|
2155
2237
|
*
|
2156
2238
|
* @remarks
|
2157
|
-
*
|
2158
2239
|
* It's generally recommended to not wait for a number of seconds, but instead
|
2159
|
-
* use {@link
|
2160
|
-
* {@link
|
2240
|
+
* use {@link Frame.waitForSelector}, {@link Frame.waitForXPath} or
|
2241
|
+
* {@link Frame.waitForFunction} to wait for exactly the conditions you want.
|
2161
2242
|
*
|
2162
2243
|
* @example
|
2163
2244
|
*
|
@@ -2179,25 +2260,27 @@ class Page extends EventEmitter_js_1.EventEmitter {
|
|
2179
2260
|
* function will throw.
|
2180
2261
|
*
|
2181
2262
|
* This method works across navigations:
|
2263
|
+
*
|
2182
2264
|
* ```ts
|
2183
2265
|
* const puppeteer = require('puppeteer');
|
2184
2266
|
* (async () => {
|
2185
|
-
*
|
2186
|
-
*
|
2187
|
-
*
|
2188
|
-
*
|
2189
|
-
*
|
2190
|
-
*
|
2191
|
-
*
|
2192
|
-
*
|
2193
|
-
*
|
2194
|
-
*
|
2195
|
-
*
|
2196
|
-
*
|
2197
|
-
*
|
2198
|
-
*
|
2267
|
+
* const browser = await puppeteer.launch();
|
2268
|
+
* const page = await browser.newPage();
|
2269
|
+
* let currentURL;
|
2270
|
+
* page
|
2271
|
+
* .waitForSelector('img')
|
2272
|
+
* .then(() => console.log('First URL with image: ' + currentURL));
|
2273
|
+
* for (currentURL of [
|
2274
|
+
* 'https://example.com',
|
2275
|
+
* 'https://google.com',
|
2276
|
+
* 'https://bbc.com',
|
2277
|
+
* ]) {
|
2278
|
+
* await page.goto(currentURL);
|
2279
|
+
* }
|
2280
|
+
* await browser.close();
|
2199
2281
|
* })();
|
2200
2282
|
* ```
|
2283
|
+
*
|
2201
2284
|
* @param selector - A
|
2202
2285
|
* {@link https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Selectors | selector}
|
2203
2286
|
* of an element to wait for
|
@@ -2209,16 +2292,16 @@ class Page extends EventEmitter_js_1.EventEmitter {
|
|
2209
2292
|
* The optional Parameter in Arguments `options` are :
|
2210
2293
|
*
|
2211
2294
|
* - `Visible`: A boolean wait for element to be present in DOM and to be
|
2212
|
-
*
|
2213
|
-
*
|
2295
|
+
* visible, i.e. to not have `display: none` or `visibility: hidden` CSS
|
2296
|
+
* properties. Defaults to `false`.
|
2214
2297
|
*
|
2215
2298
|
* - `hidden`: Wait for element to not be found in the DOM or to be hidden,
|
2216
|
-
*
|
2217
|
-
*
|
2299
|
+
* i.e. have `display: none` or `visibility: hidden` CSS properties. Defaults to
|
2300
|
+
* `false`.
|
2218
2301
|
*
|
2219
2302
|
* - `timeout`: maximum time to wait for in milliseconds. Defaults to `30000`
|
2220
|
-
*
|
2221
|
-
*
|
2303
|
+
* (30 seconds). Pass `0` to disable timeout. The default value can be changed
|
2304
|
+
* by using the {@link Page.setDefaultTimeout} method.
|
2222
2305
|
*/
|
2223
2306
|
async waitForSelector(selector, options = {}) {
|
2224
2307
|
return await this.mainFrame().waitForSelector(selector, options);
|
@@ -2230,25 +2313,27 @@ class Page extends EventEmitter_js_1.EventEmitter {
|
|
2230
2313
|
* function will throw.
|
2231
2314
|
*
|
2232
2315
|
* This method works across navigation
|
2316
|
+
*
|
2233
2317
|
* ```ts
|
2234
2318
|
* const puppeteer = require('puppeteer');
|
2235
2319
|
* (async () => {
|
2236
|
-
*
|
2237
|
-
*
|
2238
|
-
*
|
2239
|
-
*
|
2240
|
-
*
|
2241
|
-
*
|
2242
|
-
*
|
2243
|
-
*
|
2244
|
-
*
|
2245
|
-
*
|
2246
|
-
*
|
2247
|
-
*
|
2248
|
-
*
|
2249
|
-
*
|
2320
|
+
* const browser = await puppeteer.launch();
|
2321
|
+
* const page = await browser.newPage();
|
2322
|
+
* let currentURL;
|
2323
|
+
* page
|
2324
|
+
* .waitForXPath('//img')
|
2325
|
+
* .then(() => console.log('First URL with image: ' + currentURL));
|
2326
|
+
* for (currentURL of [
|
2327
|
+
* 'https://example.com',
|
2328
|
+
* 'https://google.com',
|
2329
|
+
* 'https://bbc.com',
|
2330
|
+
* ]) {
|
2331
|
+
* await page.goto(currentURL);
|
2332
|
+
* }
|
2333
|
+
* await browser.close();
|
2250
2334
|
* })();
|
2251
2335
|
* ```
|
2336
|
+
*
|
2252
2337
|
* @param xpath - A
|
2253
2338
|
* {@link https://developer.mozilla.org/en-US/docs/Web/XPath | xpath} of an
|
2254
2339
|
* element to wait for
|
@@ -2260,16 +2345,16 @@ class Page extends EventEmitter_js_1.EventEmitter {
|
|
2260
2345
|
* The optional Argument `options` have properties:
|
2261
2346
|
*
|
2262
2347
|
* - `visible`: A boolean to wait for element to be present in DOM and to be
|
2263
|
-
*
|
2264
|
-
*
|
2348
|
+
* visible, i.e. to not have `display: none` or `visibility: hidden` CSS
|
2349
|
+
* properties. Defaults to `false`.
|
2265
2350
|
*
|
2266
2351
|
* - `hidden`: A boolean wait for element to not be found in the DOM or to be
|
2267
|
-
*
|
2268
|
-
*
|
2352
|
+
* hidden, i.e. have `display: none` or `visibility: hidden` CSS properties.
|
2353
|
+
* Defaults to `false`.
|
2269
2354
|
*
|
2270
2355
|
* - `timeout`: A number which is maximum time to wait for in milliseconds.
|
2271
|
-
*
|
2272
|
-
*
|
2356
|
+
* Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default
|
2357
|
+
* value can be changed by using the {@link Page.setDefaultTimeout} method.
|
2273
2358
|
*/
|
2274
2359
|
waitForXPath(xpath, options = {}) {
|
2275
2360
|
return this.mainFrame().waitForXPath(xpath, options);
|
@@ -2283,93 +2368,93 @@ class Page extends EventEmitter_js_1.EventEmitter {
|
|
2283
2368
|
* ```ts
|
2284
2369
|
* const puppeteer = require('puppeteer');
|
2285
2370
|
* (async () => {
|
2286
|
-
*
|
2287
|
-
*
|
2288
|
-
*
|
2289
|
-
*
|
2290
|
-
*
|
2291
|
-
*
|
2371
|
+
* const browser = await puppeteer.launch();
|
2372
|
+
* const page = await browser.newPage();
|
2373
|
+
* const watchDog = page.waitForFunction('window.innerWidth < 100');
|
2374
|
+
* await page.setViewport({width: 50, height: 50});
|
2375
|
+
* await watchDog;
|
2376
|
+
* await browser.close();
|
2292
2377
|
* })();
|
2293
2378
|
* ```
|
2294
2379
|
*
|
2295
2380
|
* @example
|
2296
2381
|
* To pass arguments from node.js to the predicate of
|
2297
2382
|
* {@link Page.waitForFunction} function:
|
2383
|
+
*
|
2298
2384
|
* ```ts
|
2299
2385
|
* const selector = '.foo';
|
2300
2386
|
* await page.waitForFunction(
|
2301
|
-
*
|
2302
|
-
*
|
2303
|
-
*
|
2387
|
+
* selector => !!document.querySelector(selector),
|
2388
|
+
* {},
|
2389
|
+
* selector
|
2304
2390
|
* );
|
2305
2391
|
* ```
|
2306
2392
|
*
|
2307
2393
|
* @example
|
2308
2394
|
* The predicate of {@link Page.waitForFunction} can be asynchronous too:
|
2395
|
+
*
|
2309
2396
|
* ```ts
|
2310
2397
|
* const username = 'github-username';
|
2311
2398
|
* await page.waitForFunction(
|
2312
|
-
*
|
2313
|
-
*
|
2314
|
-
*
|
2315
|
-
*
|
2316
|
-
*
|
2317
|
-
*
|
2318
|
-
*
|
2319
|
-
*
|
2320
|
-
*
|
2321
|
-
*
|
2322
|
-
*
|
2323
|
-
*
|
2324
|
-
*
|
2325
|
-
*
|
2399
|
+
* async username => {
|
2400
|
+
* const githubResponse = await fetch(
|
2401
|
+
* `https://api.github.com/users/${username}`
|
2402
|
+
* );
|
2403
|
+
* const githubUser = await githubResponse.json();
|
2404
|
+
* // show the avatar
|
2405
|
+
* const img = document.createElement('img');
|
2406
|
+
* img.src = githubUser.avatar_url;
|
2407
|
+
* // wait 3 seconds
|
2408
|
+
* await new Promise((resolve, reject) => setTimeout(resolve, 3000));
|
2409
|
+
* img.remove();
|
2410
|
+
* },
|
2411
|
+
* {},
|
2412
|
+
* username
|
2326
2413
|
* );
|
2327
2414
|
* ```
|
2328
2415
|
*
|
2329
2416
|
* @param pageFunction - Function to be evaluated in browser context
|
2330
2417
|
* @param options - Optional waiting parameters
|
2418
|
+
*
|
2331
2419
|
* - `polling` - An interval at which the `pageFunction` is executed, defaults
|
2332
2420
|
* to `raf`. If `polling` is a number, then it is treated as an interval in
|
2333
2421
|
* milliseconds at which the function would be executed. If polling is a
|
2334
2422
|
* string, then it can be one of the following values:
|
2335
|
-
*
|
2336
|
-
*
|
2337
|
-
*
|
2338
|
-
*
|
2423
|
+
* - `raf` - to constantly execute `pageFunction` in
|
2424
|
+
* `requestAnimationFrame` callback. This is the tightest polling mode
|
2425
|
+
* which is suitable to observe styling changes.
|
2426
|
+
* - `mutation`- to execute pageFunction on every DOM mutation.
|
2339
2427
|
* - `timeout` - maximum time to wait for in milliseconds. Defaults to `30000`
|
2340
2428
|
* (30 seconds). Pass `0` to disable timeout. The default value can be
|
2341
2429
|
* changed by using the {@link Page.setDefaultTimeout} method.
|
2342
|
-
*
|
2343
|
-
*
|
2344
|
-
*
|
2430
|
+
* @param args - Arguments to pass to `pageFunction`
|
2431
|
+
* @returns A `Promise` which resolves to a JSHandle/ElementHandle of the the
|
2432
|
+
* `pageFunction`'s return value.
|
2345
2433
|
*/
|
2346
2434
|
waitForFunction(pageFunction, options = {}, ...args) {
|
2347
2435
|
return this.mainFrame().waitForFunction(pageFunction, options, ...args);
|
2348
2436
|
}
|
2349
2437
|
}
|
2350
2438
|
exports.Page = Page;
|
2351
|
-
_Page_closed = new WeakMap(), _Page_client = new WeakMap(), _Page_target = new WeakMap(), _Page_keyboard = new WeakMap(), _Page_mouse = new WeakMap(), _Page_timeoutSettings = new WeakMap(), _Page_touchscreen = new WeakMap(), _Page_accessibility = new WeakMap(), _Page_frameManager = new WeakMap(), _Page_emulationManager = new WeakMap(), _Page_tracing = new WeakMap(), _Page_pageBindings = new WeakMap(), _Page_coverage = new WeakMap(), _Page_javascriptEnabled = new WeakMap(), _Page_viewport = new WeakMap(), _Page_screenshotTaskQueue = new WeakMap(), _Page_workers = new WeakMap(),
|
2439
|
+
_Page_closed = new WeakMap(), _Page_client = new WeakMap(), _Page_target = new WeakMap(), _Page_keyboard = new WeakMap(), _Page_mouse = new WeakMap(), _Page_timeoutSettings = new WeakMap(), _Page_touchscreen = new WeakMap(), _Page_accessibility = new WeakMap(), _Page_frameManager = new WeakMap(), _Page_emulationManager = new WeakMap(), _Page_tracing = new WeakMap(), _Page_pageBindings = new WeakMap(), _Page_coverage = new WeakMap(), _Page_javascriptEnabled = new WeakMap(), _Page_viewport = new WeakMap(), _Page_screenshotTaskQueue = new WeakMap(), _Page_workers = new WeakMap(), _Page_fileChooserPromises = new WeakMap(), _Page_disconnectPromise = new WeakMap(), _Page_userDragInterceptionEnabled = new WeakMap(), _Page_handlerMap = new WeakMap(), _Page_onDetachedFromTarget = new WeakMap(), _Page_onAttachedToTarget = new WeakMap(), _Page_instances = new WeakSet(), _Page_initialize = async function _Page_initialize() {
|
2352
2440
|
await Promise.all([
|
2353
2441
|
__classPrivateFieldGet(this, _Page_frameManager, "f").initialize(__classPrivateFieldGet(this, _Page_target, "f")._targetId),
|
2354
2442
|
__classPrivateFieldGet(this, _Page_client, "f").send('Performance.enable'),
|
2355
2443
|
__classPrivateFieldGet(this, _Page_client, "f").send('Log.enable'),
|
2356
2444
|
]);
|
2357
2445
|
}, _Page_onFileChooser = async function _Page_onFileChooser(event) {
|
2358
|
-
if (!__classPrivateFieldGet(this,
|
2446
|
+
if (!__classPrivateFieldGet(this, _Page_fileChooserPromises, "f").size) {
|
2359
2447
|
return;
|
2360
2448
|
}
|
2361
2449
|
const frame = __classPrivateFieldGet(this, _Page_frameManager, "f").frame(event.frameId);
|
2362
|
-
(0, assert_js_1.assert)(frame);
|
2363
|
-
|
2364
|
-
const
|
2365
|
-
const
|
2366
|
-
__classPrivateFieldGet(this,
|
2367
|
-
|
2368
|
-
|
2369
|
-
|
2370
|
-
for (const interceptor of interceptors) {
|
2371
|
-
interceptor.call(undefined, fileChooser);
|
2372
|
-
}
|
2450
|
+
(0, assert_js_1.assert)(frame, 'This should never happen.');
|
2451
|
+
// This is guaranteed to be an HTMLInputElement handle by the event.
|
2452
|
+
const handle = (await frame.worlds[IsolatedWorld_js_1.MAIN_WORLD].adoptBackendNode(event.backendNodeId));
|
2453
|
+
const fileChooser = new FileChooser_js_1.FileChooser(handle, event);
|
2454
|
+
for (const promise of __classPrivateFieldGet(this, _Page_fileChooserPromises, "f")) {
|
2455
|
+
promise.resolve(fileChooser);
|
2456
|
+
}
|
2457
|
+
__classPrivateFieldGet(this, _Page_fileChooserPromises, "f").clear();
|
2373
2458
|
}, _Page_onTargetCrashed = function _Page_onTargetCrashed() {
|
2374
2459
|
this.emit('error', new Error('Page crashed!'));
|
2375
2460
|
}, _Page_onLogEntryAdded = function _Page_onLogEntryAdded(event) {
|
@@ -2444,7 +2529,7 @@ _Page_closed = new WeakMap(), _Page_client = new WeakMap(), _Page_target = new W
|
|
2444
2529
|
expression = (0, util_js_1.pageBindingDeliverResultString)(name, seq, result);
|
2445
2530
|
}
|
2446
2531
|
catch (error) {
|
2447
|
-
if ((0,
|
2532
|
+
if ((0, ErrorLike_js_1.isErrorLike)(error)) {
|
2448
2533
|
expression = (0, util_js_1.pageBindingDeliverErrorString)(name, seq, error.message, error.stack);
|
2449
2534
|
}
|
2450
2535
|
else {
|
@@ -2466,7 +2551,7 @@ _Page_closed = new WeakMap(), _Page_client = new WeakMap(), _Page_target = new W
|
|
2466
2551
|
}
|
2467
2552
|
const textTokens = [];
|
2468
2553
|
for (const arg of args) {
|
2469
|
-
const remoteObject = arg.
|
2554
|
+
const remoteObject = arg.remoteObject();
|
2470
2555
|
if (remoteObject.objectId) {
|
2471
2556
|
textTokens.push(arg.toString());
|
2472
2557
|
}
|