chrome-devtools-frontend 1.0.1020771 → 1.0.1022059
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/.eslintignore +14 -1
- package/config/gni/devtools_grd_files.gni +15 -10
- package/docs/triage_guidelines.md +9 -7
- package/extension-api/ExtensionAPI.d.ts +54 -4
- package/front_end/.eslintrc.js +4 -1
- package/front_end/core/host/InspectorFrontendHostAPI.ts +1 -0
- package/front_end/core/host/UserMetrics.ts +18 -0
- package/front_end/core/i18n/locales/en-US.json +150 -9
- package/front_end/core/i18n/locales/en-XL.json +150 -9
- package/front_end/core/sdk/CSSModel.ts +5 -2
- package/front_end/devtools_compatibility.js +1 -0
- package/front_end/legacy_test_runner/sources_test_runner/DebuggerTestRunner.js +4 -3
- package/front_end/models/bindings/BreakpointManager.ts +14 -3
- package/front_end/models/bindings/DebuggerLanguagePlugins.ts +165 -117
- package/front_end/models/bindings/ResourceScriptMapping.ts +76 -53
- package/front_end/models/extensions/ExtensionAPI.ts +101 -13
- package/front_end/models/extensions/ExtensionServer.ts +63 -1
- package/front_end/models/extensions/LanguageExtensionEndpoint.ts +16 -3
- package/front_end/models/timeline_model/TimelineModel.ts +164 -7
- package/front_end/panels/application/AppManifestView.ts +13 -2
- package/front_end/panels/application/ApplicationPanelSidebar.ts +67 -5
- package/front_end/panels/application/components/FrameDetailsView.ts +3 -2
- package/front_end/panels/application/components/Prerender2.ts +188 -0
- package/front_end/panels/application/components/protocolHandlersView.css +4 -0
- package/front_end/panels/elements/CSSRuleValidator.ts +103 -13
- package/front_end/panels/elements/ElementsPanel.ts +3 -0
- package/front_end/panels/elements/ElementsTreeElement.ts +3 -1
- package/front_end/panels/elements/ElementsTreeOutline.ts +41 -7
- package/front_end/panels/elements/LayoutSidebarPane.ts +1 -2
- package/front_end/panels/elements/StylePropertyTreeElement.ts +10 -8
- package/front_end/panels/elements/TopLayerContainer.ts +9 -1
- package/front_end/panels/elements/components/AdornerManager.ts +7 -0
- package/front_end/panels/elements/components/CSSHintDetailsView.ts +71 -0
- package/front_end/panels/elements/components/components.ts +2 -0
- package/front_end/panels/elements/components/cssHintDetailsView.css +36 -0
- package/front_end/panels/elements/elementsTreeOutline.css +4 -0
- package/front_end/panels/elements/stylesSectionTree.css +1 -1
- package/front_end/panels/network/components/RequestHeadersView.ts +2 -1
- package/front_end/services/puppeteer/PuppeteerConnection.ts +3 -5
- package/front_end/third_party/acorn/acorn.ts +1 -1
- package/front_end/third_party/chromium/client-variations/client-variations.ts +1 -1
- package/front_end/third_party/diff/DiffWrapper.ts +2 -0
- package/front_end/third_party/i18n/i18n-impl.ts +5 -1
- package/front_end/third_party/i18n/i18n.ts +1 -1
- package/front_end/third_party/i18n/locales.ts +1 -1
- package/front_end/third_party/lit-html/directives.ts +1 -0
- package/front_end/third_party/lit-html/lit-html-tsconfig.json +1 -0
- package/front_end/third_party/marked/marked.ts +1 -1
- package/front_end/third_party/puppeteer/package/README.md +136 -214
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Accessibility.d.ts +6 -6
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Accessibility.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Accessibility.js +149 -85
- 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 +34 -10
- 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 +17 -36
- 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 +217 -160
- 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 +5 -4
- 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 +18 -13
- 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/BrowserWebSocketTransport.d.ts +4 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/BrowserWebSocketTransport.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/BrowserWebSocketTransport.js +30 -11
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/BrowserWebSocketTransport.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Connection.d.ts +21 -20
- 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 +125 -82
- 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/ConsoleMessage.d.ts +1 -4
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/ConsoleMessage.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/ConsoleMessage.js +27 -9
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/ConsoleMessage.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Coverage.d.ts +6 -30
- 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 +167 -131
- 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/DOMWorld.d.ts +36 -67
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/DOMWorld.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/DOMWorld.js +359 -215
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/DOMWorld.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Debug.d.ts +8 -4
- 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 +9 -6
- 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/DeviceDescriptors.d.ts +21 -2
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/DeviceDescriptors.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/DeviceDescriptors.js +26 -6
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/DeviceDescriptors.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Dialog.d.ts +2 -6
- 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 +32 -15
- 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 +355 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/ElementHandle.d.ts.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/ElementHandle.js +847 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/ElementHandle.js.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/EmulationManager.d.ts +4 -3
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/EmulationManager.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/EmulationManager.js +25 -8
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/EmulationManager.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Errors.d.ts +28 -6
- 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 +27 -7
- 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.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/EventEmitter.js +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/EventEmitter.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/ExecutionContext.d.ts +20 -19
- 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 +146 -126
- 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 +4 -6
- 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 +25 -10
- 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/FrameManager.d.ts +53 -92
- 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 +337 -320
- 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 +16 -28
- 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 +200 -147
- 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 +1 -18
- 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 +86 -60
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/HTTPResponse.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Input.d.ts +18 -22
- 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 +166 -117
- 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/JSHandle.d.ts +46 -395
- 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 +80 -842
- 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 +4 -32
- 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 +136 -108
- 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/NetworkConditions.d.ts +25 -7
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/NetworkConditions.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/NetworkConditions.js +23 -2
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/NetworkConditions.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/NetworkEventManager.d.ts +16 -11
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/NetworkEventManager.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/NetworkEventManager.js +39 -32
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/NetworkEventManager.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/NetworkManager.d.ts +2 -42
- 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 +315 -316
- 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 +5 -3
- 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 +2 -2
- 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 +246 -287
- 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 +841 -700
- 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 +37 -74
- 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 +37 -89
- 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 -13
- 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 +79 -29
- 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/SecurityDetails.d.ts +1 -6
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/SecurityDetails.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/SecurityDetails.js +31 -12
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/SecurityDetails.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Target.d.ts +6 -9
- 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 +80 -40
- 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/TaskQueue.d.ts +4 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/TaskQueue.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/TaskQueue.js +24 -3
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/TaskQueue.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/TimeoutSettings.d.ts +1 -2
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/TimeoutSettings.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/TimeoutSettings.js +28 -10
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/TimeoutSettings.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Tracing.d.ts +4 -5
- 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 +50 -23
- 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/USKeyboardLayout.d.ts +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/USKeyboardLayout.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/USKeyboardLayout.js +2 -2
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/USKeyboardLayout.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/WebWorker.d.ts +9 -11
- 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 +41 -31
- 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/assert.d.ts +4 -3
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/assert.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/assert.js +6 -8
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/assert.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/fetch.d.ts +5 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/fetch.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/fetch.js +6 -3
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/fetch.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/types.d.ts +48 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/types.d.ts.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/{EvalTypes.js → types.js} +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/types.js.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/util.d.ts +129 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/util.d.ts.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/{helper.js → util.js} +168 -87
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/util.js.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/compat.d.ts +3 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/compat.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/compat.js +3 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/compat.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/constants.d.ts +3 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/constants.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/constants.js +3 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/constants.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/environment.d.ts +3 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/environment.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/environment.js +3 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/environment.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/generated/version.d.ts +4 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/generated/version.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/generated/version.js +4 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/generated/version.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/{esm/puppeteer/initialize-node.d.ts → cjs/puppeteer/initializePuppeteer.d.ts} +5 -2
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/initializePuppeteer.d.ts.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/{initialize-node.js → initializePuppeteer.js} +18 -14
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/initializePuppeteer.js.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/BrowserFetcher.d.ts +4 -11
- 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 +226 -158
- 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 +9 -11
- 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 +116 -72
- 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 +27 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/ChromeLauncher.d.ts.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/ChromeLauncher.js +176 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/ChromeLauncher.js.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/FirefoxLauncher.d.ts +49 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/FirefoxLauncher.d.ts.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/FirefoxLauncher.js +361 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/FirefoxLauncher.js.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/LaunchOptions.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/NodeWebSocketTransport.d.ts +6 -3
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/NodeWebSocketTransport.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/NodeWebSocketTransport.js +44 -12
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/NodeWebSocketTransport.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/PipeTransport.d.ts +4 -20
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/PipeTransport.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/PipeTransport.js +60 -35
- 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/ProductLauncher.d.ts +31 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/ProductLauncher.d.ts.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/ProductLauncher.js +166 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/ProductLauncher.js.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/Puppeteer.d.ts +42 -41
- 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 +69 -47
- 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/node/install.d.ts +6 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/install.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/install.js +55 -32
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/install.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/util.d.ts +10 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/util.d.ts.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/util.js +40 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/util.js.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/puppeteer-core.d.ts +23 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/puppeteer-core.d.ts.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/puppeteer-core.js +41 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/puppeteer-core.js.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/puppeteer.d.ts +26 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/puppeteer.d.ts.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/puppeteer.js +44 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/puppeteer.js.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/revisions.d.ts +6 -5
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/revisions.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/revisions.js +6 -3
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/revisions.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/tsconfig.cjs.tsbuildinfo +1 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/tsconfig.tsbuildinfo +1 -0
- package/front_end/third_party/puppeteer/package/lib/{esm/puppeteer/api-docs-entry.js → cjs/puppeteer/types.d.ts} +46 -63
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/types.d.ts.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/{api-docs-entry.js → types.js} +50 -51
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/types.js.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/vendor/mitt/src/index.d.ts +0 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/vendor/mitt/src/index.js +11 -12
- package/front_end/third_party/puppeteer/package/lib/cjs/vendor/tsconfig.cjs.tsbuildinfo +1 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Accessibility.d.ts +6 -6
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Accessibility.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Accessibility.js +149 -85
- 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 +34 -10
- 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 +17 -36
- 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 +217 -160
- 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 +5 -4
- 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 +16 -11
- 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/BrowserWebSocketTransport.d.ts +4 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/BrowserWebSocketTransport.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/BrowserWebSocketTransport.js +30 -11
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/BrowserWebSocketTransport.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Connection.d.ts +21 -20
- 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 +125 -82
- 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/ConsoleMessage.d.ts +1 -4
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/ConsoleMessage.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/ConsoleMessage.js +27 -9
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/ConsoleMessage.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Coverage.d.ts +6 -30
- 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 +167 -131
- 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/DOMWorld.d.ts +36 -67
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/DOMWorld.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/DOMWorld.js +335 -214
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/DOMWorld.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Debug.d.ts +8 -4
- 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 +9 -6
- 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/DeviceDescriptors.d.ts +21 -2
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/DeviceDescriptors.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/DeviceDescriptors.js +25 -5
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/DeviceDescriptors.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Dialog.d.ts +2 -6
- 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 +32 -15
- 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 +355 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/ElementHandle.d.ts.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/ElementHandle.js +820 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/ElementHandle.js.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/EmulationManager.d.ts +4 -3
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/EmulationManager.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/EmulationManager.js +25 -8
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/EmulationManager.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Errors.d.ts +28 -6
- 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 +26 -6
- 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.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/EventEmitter.js +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/EventEmitter.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/ExecutionContext.d.ts +20 -19
- 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 +145 -125
- 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 +4 -6
- 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 +25 -10
- 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/FrameManager.d.ts +53 -92
- 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 +337 -320
- 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 +16 -28
- 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 +199 -146
- 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 +1 -18
- 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 +86 -60
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/HTTPResponse.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Input.d.ts +18 -22
- 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 +167 -118
- 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/JSHandle.d.ts +46 -395
- 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 +80 -817
- 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 +4 -32
- 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 +135 -107
- 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/NetworkConditions.d.ts +25 -7
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/NetworkConditions.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/NetworkConditions.js +23 -2
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/NetworkConditions.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/NetworkEventManager.d.ts +16 -11
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/NetworkEventManager.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/NetworkEventManager.js +39 -32
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/NetworkEventManager.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/NetworkManager.d.ts +2 -42
- 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 +312 -313
- 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 +5 -3
- 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 +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 +246 -287
- 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 +819 -701
- 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 +37 -74
- 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 +39 -91
- 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 -13
- 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 +79 -29
- 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/SecurityDetails.d.ts +1 -6
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/SecurityDetails.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/SecurityDetails.js +31 -12
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/SecurityDetails.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Target.d.ts +6 -9
- 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 +80 -40
- 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/TaskQueue.d.ts +4 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/TaskQueue.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/TaskQueue.js +24 -3
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/TaskQueue.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/TimeoutSettings.d.ts +1 -2
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/TimeoutSettings.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/TimeoutSettings.js +28 -10
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/TimeoutSettings.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Tracing.d.ts +4 -5
- 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 +50 -23
- 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/USKeyboardLayout.d.ts +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/USKeyboardLayout.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/USKeyboardLayout.js +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/USKeyboardLayout.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/WebWorker.d.ts +9 -11
- 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 +41 -31
- 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/assert.d.ts +4 -3
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/assert.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/assert.js +5 -6
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/assert.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/fetch.d.ts +5 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/fetch.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/fetch.js +6 -3
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/fetch.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/types.d.ts +48 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/types.d.ts.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/{EvalTypes.js → types.js} +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/types.js.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/util.d.ts +129 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/util.d.ts.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/{helper.js → util.js} +161 -100
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/util.js.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/compat.d.ts +3 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/compat.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/compat.js +3 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/compat.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/constants.d.ts +3 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/constants.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/constants.js +3 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/constants.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/environment.d.ts +3 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/environment.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/environment.js +3 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/environment.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/generated/version.d.ts +4 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/generated/version.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/generated/version.js +4 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/generated/version.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/{cjs/puppeteer/initialize-node.d.ts → esm/puppeteer/initializePuppeteer.d.ts} +5 -2
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/initializePuppeteer.d.ts.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/{initialize-node.js → initializePuppeteer.js} +16 -12
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/initializePuppeteer.js.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/BrowserFetcher.d.ts +4 -11
- 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 +226 -158
- 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 +9 -11
- 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 +113 -69
- 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 +27 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/ChromeLauncher.d.ts.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/ChromeLauncher.js +169 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/ChromeLauncher.js.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/FirefoxLauncher.d.ts +49 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/FirefoxLauncher.d.ts.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/{Launcher.js → FirefoxLauncher.js} +51 -345
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/FirefoxLauncher.js.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/LaunchOptions.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/NodeWebSocketTransport.d.ts +6 -3
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/NodeWebSocketTransport.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/NodeWebSocketTransport.js +44 -12
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/NodeWebSocketTransport.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/PipeTransport.d.ts +4 -20
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/PipeTransport.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/PipeTransport.js +60 -35
- 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/ProductLauncher.d.ts +31 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/ProductLauncher.d.ts.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/ProductLauncher.js +157 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/ProductLauncher.js.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/Puppeteer.d.ts +42 -41
- 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 +70 -45
- 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/node/install.d.ts +6 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/install.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/install.js +53 -30
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/install.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/util.d.ts +10 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/util.d.ts.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/util.js +13 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/util.js.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/puppeteer-core.d.ts +23 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/puppeteer-core.d.ts.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/{node-puppeteer-core.d.ts → puppeteer-core.js} +8 -2
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/puppeteer-core.js.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/puppeteer.d.ts +26 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/puppeteer.d.ts.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/{cjs/puppeteer/node-puppeteer-core.d.ts → esm/puppeteer/puppeteer.js} +11 -2
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/puppeteer.js.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/revisions.d.ts +6 -5
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/revisions.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/revisions.js +6 -3
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/revisions.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/tsconfig.esm.tsbuildinfo +1 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/tsconfig.tsbuildinfo +1 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/types.d.ts +64 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/types.d.ts.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/types.js +68 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/types.js.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/esm/vendor/mitt/src/index.d.ts +0 -1
- package/front_end/third_party/puppeteer/package/lib/esm/vendor/mitt/src/index.js +9 -10
- package/front_end/third_party/puppeteer/package/lib/esm/vendor/tsconfig.esm.tsbuildinfo +1 -0
- package/front_end/third_party/puppeteer/package/lib/types.d.ts +846 -1670
- package/front_end/third_party/puppeteer/package/package.json +65 -68
- package/front_end/third_party/puppeteer/package/typescript-if-required.js +17 -8
- package/front_end/third_party/puppeteer/puppeteer.ts +2 -9
- package/front_end/ui/components/linear_memory_inspector/LinearMemoryInspector.ts +2 -5
- package/front_end/ui/components/linear_memory_inspector/LinearMemoryInspectorController.ts +45 -3
- package/front_end/ui/components/linear_memory_inspector/LinearMemoryInspectorPane.ts +40 -12
- package/front_end/ui/components/linear_memory_inspector/LinearMemoryViewer.ts +5 -5
- package/front_end/ui/legacy/ReportView.ts +8 -0
- package/front_end/ui/legacy/components/object_ui/ObjectPropertiesSection.ts +13 -10
- package/front_end/ui/legacy/components/object_ui/objectValue.css +4 -0
- package/front_end/ui/legacy/components/utils/Linkifier.ts +3 -1
- package/package.json +1 -1
- package/scripts/eslint_rules/lib/custom_element_definitions_location.js +28 -13
- package/scripts/eslint_rules/lib/es_modules_import.js +5 -1
- package/scripts/eslint_rules/lib/inject_checkbox_styles.js +4 -2
- package/scripts/eslint_rules/tests/custom_element_definitions_location_test.js +9 -2
- package/scripts/eslint_rules/tests/es_modules_import_test.js +5 -0
- package/scripts/eslint_rules/tests/inject_checkbox_styles_test.js +45 -5
- package/front_end/third_party/puppeteer/package/cjs-entry-core.js +0 -29
- package/front_end/third_party/puppeteer/package/cjs-entry.js +0 -29
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api-docs-entry.d.ts +0 -111
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api-docs-entry.d.ts.map +0 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api-docs-entry.js.map +0 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/EvalTypes.d.ts +0 -61
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/EvalTypes.d.ts.map +0 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/EvalTypes.js.map +0 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Events.d.ts +0 -82
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Events.d.ts.map +0 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Events.js +0 -87
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Events.js.map +0 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/helper.d.ts +0 -85
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/helper.d.ts.map +0 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/helper.js.map +0 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/initialize-node.d.ts.map +0 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/initialize-node.js.map +0 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/initialize-web.d.ts +0 -18
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/initialize-web.d.ts.map +0 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/initialize-web.js +0 -27
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/initialize-web.js.map +0 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/Launcher.d.ts +0 -18
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/Launcher.d.ts.map +0 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/Launcher.js +0 -674
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/Launcher.js.map +0 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node-puppeteer-core.d.ts.map +0 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node-puppeteer-core.js +0 -25
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node-puppeteer-core.js.map +0 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node.d.ts +0 -18
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node.d.ts.map +0 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node.js +0 -24
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node.js.map +0 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/web.d.ts +0 -18
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/web.d.ts.map +0 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/web.js +0 -24
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/web.js.map +0 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/vendor/mitt/src/index.d.ts.map +0 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/vendor/mitt/src/index.js.map +0 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api-docs-entry.d.ts +0 -111
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api-docs-entry.d.ts.map +0 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api-docs-entry.js.map +0 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/EvalTypes.d.ts +0 -61
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/EvalTypes.d.ts.map +0 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/EvalTypes.js.map +0 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Events.d.ts +0 -82
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Events.d.ts.map +0 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Events.js +0 -84
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Events.js.map +0 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/helper.d.ts +0 -85
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/helper.d.ts.map +0 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/helper.js.map +0 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/initialize-node.d.ts.map +0 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/initialize-node.js.map +0 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/initialize-web.d.ts +0 -18
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/initialize-web.d.ts.map +0 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/initialize-web.js +0 -23
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/initialize-web.js.map +0 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/Launcher.d.ts +0 -18
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/Launcher.d.ts.map +0 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/Launcher.js.map +0 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node-puppeteer-core.d.ts.map +0 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node-puppeteer-core.js +0 -23
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node-puppeteer-core.js.map +0 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node.d.ts +0 -18
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node.d.ts.map +0 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node.js +0 -22
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node.js.map +0 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/web.d.ts +0 -18
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/web.d.ts.map +0 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/web.js +0 -22
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/web.js.map +0 -1
- package/front_end/third_party/puppeteer/package/lib/esm/vendor/mitt/src/index.d.ts.map +0 -1
- package/front_end/third_party/puppeteer/package/lib/esm/vendor/mitt/src/index.js.map +0 -1
@@ -13,28 +13,26 @@
|
|
13
13
|
* See the License for the specific language governing permissions and
|
14
14
|
* limitations under the License.
|
15
15
|
*/
|
16
|
+
var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
|
17
|
+
if (kind === "m") throw new TypeError("Private method is not writable");
|
18
|
+
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
|
19
|
+
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
|
20
|
+
return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
|
21
|
+
};
|
22
|
+
var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
|
23
|
+
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
|
24
|
+
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");
|
25
|
+
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
26
|
+
};
|
27
|
+
var _JSHandle_client, _JSHandle_disposed, _JSHandle_context, _JSHandle_remoteObject;
|
16
28
|
import { assert } from './assert.js';
|
17
|
-
import {
|
18
|
-
import { getQueryHandlerAndSelector } from './QueryHandler.js';
|
19
|
-
import { isNode } from '../environment.js';
|
20
|
-
/**
|
21
|
-
* @internal
|
22
|
-
*/
|
23
|
-
export function createJSHandle(context, remoteObject) {
|
24
|
-
const frame = context.frame();
|
25
|
-
if (remoteObject.subtype === 'node' && frame) {
|
26
|
-
const frameManager = frame._frameManager;
|
27
|
-
return new ElementHandle(context, context._client, remoteObject, frame, frameManager.page(), frameManager);
|
28
|
-
}
|
29
|
-
return new JSHandle(context, context._client, remoteObject);
|
30
|
-
}
|
31
|
-
const applyOffsetsToQuad = (quad, offsetX, offsetY) => quad.map((part) => ({ x: part.x + offsetX, y: part.y + offsetY }));
|
29
|
+
import { releaseObject, valueFromRemoteObject, createJSHandle } from './util.js';
|
32
30
|
/**
|
33
31
|
* Represents an in-page JavaScript object. JSHandles can be created with the
|
34
32
|
* {@link Page.evaluateHandle | page.evaluateHandle} method.
|
35
33
|
*
|
36
34
|
* @example
|
37
|
-
* ```
|
35
|
+
* ```ts
|
38
36
|
* const windowHandle = await page.evaluateHandle(() => window);
|
39
37
|
* ```
|
40
38
|
*
|
@@ -52,26 +50,50 @@ export class JSHandle {
|
|
52
50
|
* @internal
|
53
51
|
*/
|
54
52
|
constructor(context, client, remoteObject) {
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
this
|
59
|
-
this
|
60
|
-
this
|
61
|
-
this
|
53
|
+
_JSHandle_client.set(this, void 0);
|
54
|
+
_JSHandle_disposed.set(this, false);
|
55
|
+
_JSHandle_context.set(this, void 0);
|
56
|
+
_JSHandle_remoteObject.set(this, void 0);
|
57
|
+
__classPrivateFieldSet(this, _JSHandle_context, context, "f");
|
58
|
+
__classPrivateFieldSet(this, _JSHandle_client, client, "f");
|
59
|
+
__classPrivateFieldSet(this, _JSHandle_remoteObject, remoteObject, "f");
|
60
|
+
}
|
61
|
+
/**
|
62
|
+
* @internal
|
63
|
+
*/
|
64
|
+
get _client() {
|
65
|
+
return __classPrivateFieldGet(this, _JSHandle_client, "f");
|
66
|
+
}
|
67
|
+
/**
|
68
|
+
* @internal
|
69
|
+
*/
|
70
|
+
get _disposed() {
|
71
|
+
return __classPrivateFieldGet(this, _JSHandle_disposed, "f");
|
72
|
+
}
|
73
|
+
/**
|
74
|
+
* @internal
|
75
|
+
*/
|
76
|
+
get _remoteObject() {
|
77
|
+
return __classPrivateFieldGet(this, _JSHandle_remoteObject, "f");
|
78
|
+
}
|
79
|
+
/**
|
80
|
+
* @internal
|
81
|
+
*/
|
82
|
+
get _context() {
|
83
|
+
return __classPrivateFieldGet(this, _JSHandle_context, "f");
|
62
84
|
}
|
63
85
|
/** Returns the execution context the handle belongs to.
|
64
86
|
*/
|
65
87
|
executionContext() {
|
66
|
-
return this
|
88
|
+
return __classPrivateFieldGet(this, _JSHandle_context, "f");
|
67
89
|
}
|
68
90
|
/**
|
69
|
-
* This method passes this handle as the first argument to `pageFunction`.
|
70
|
-
*
|
71
|
-
*
|
91
|
+
* This method passes this handle as the first argument to `pageFunction`. If
|
92
|
+
* `pageFunction` returns a Promise, then `handle.evaluate` would wait for the
|
93
|
+
* promise to resolve and return its value.
|
72
94
|
*
|
73
95
|
* @example
|
74
|
-
* ```
|
96
|
+
* ```ts
|
75
97
|
* const tweetHandle = await page.$('.tweet .retweets');
|
76
98
|
* expect(await tweetHandle.evaluate(node => node.innerText)).toBe('10');
|
77
99
|
* ```
|
@@ -85,11 +107,11 @@ export class JSHandle {
|
|
85
107
|
* @remarks
|
86
108
|
*
|
87
109
|
* The only difference between `jsHandle.evaluate` and
|
88
|
-
* `jsHandle.evaluateHandle` is that `jsHandle.evaluateHandle`
|
89
|
-
*
|
110
|
+
* `jsHandle.evaluateHandle` is that `jsHandle.evaluateHandle` returns an
|
111
|
+
* in-page object (JSHandle).
|
90
112
|
*
|
91
|
-
* If the function passed to `jsHandle.evaluateHandle` returns a Promise,
|
92
|
-
*
|
113
|
+
* If the function passed to `jsHandle.evaluateHandle` returns a Promise, then
|
114
|
+
* `evaluateHandle.evaluateHandle` waits for the promise to resolve and
|
93
115
|
* returns its value.
|
94
116
|
*
|
95
117
|
* See {@link Page.evaluateHandle} for more details.
|
@@ -97,26 +119,17 @@ export class JSHandle {
|
|
97
119
|
async evaluateHandle(pageFunction, ...args) {
|
98
120
|
return await this.executionContext().evaluateHandle(pageFunction, this, ...args);
|
99
121
|
}
|
100
|
-
/** Fetches a single property from the referenced object.
|
101
|
-
*/
|
102
122
|
async getProperty(propertyName) {
|
103
|
-
|
104
|
-
|
105
|
-
result[propertyName] = object[propertyName];
|
106
|
-
return result;
|
123
|
+
return await this.evaluateHandle((object, propertyName) => {
|
124
|
+
return object[propertyName];
|
107
125
|
}, propertyName);
|
108
|
-
const properties = await objectHandle.getProperties();
|
109
|
-
const result = properties.get(propertyName);
|
110
|
-
assert(result instanceof JSHandle);
|
111
|
-
await objectHandle.dispose();
|
112
|
-
return result;
|
113
126
|
}
|
114
127
|
/**
|
115
|
-
* The method returns a map with property names as keys and JSHandle
|
116
|
-
*
|
128
|
+
* The method returns a map with property names as keys and JSHandle instances
|
129
|
+
* for the property values.
|
117
130
|
*
|
118
131
|
* @example
|
119
|
-
* ```
|
132
|
+
* ```ts
|
120
133
|
* const listHandle = await page.evaluateHandle(() => document.body.children);
|
121
134
|
* const properties = await listHandle.getProperties();
|
122
135
|
* const children = [];
|
@@ -129,15 +142,17 @@ export class JSHandle {
|
|
129
142
|
* ```
|
130
143
|
*/
|
131
144
|
async getProperties() {
|
132
|
-
|
133
|
-
|
145
|
+
assert(__classPrivateFieldGet(this, _JSHandle_remoteObject, "f").objectId);
|
146
|
+
const response = await __classPrivateFieldGet(this, _JSHandle_client, "f").send('Runtime.getProperties', {
|
147
|
+
objectId: __classPrivateFieldGet(this, _JSHandle_remoteObject, "f").objectId,
|
134
148
|
ownProperties: true,
|
135
149
|
});
|
136
150
|
const result = new Map();
|
137
151
|
for (const property of response.result) {
|
138
|
-
if (!property.enumerable)
|
152
|
+
if (!property.enumerable || !property.value) {
|
139
153
|
continue;
|
140
|
-
|
154
|
+
}
|
155
|
+
result.set(property.name, createJSHandle(__classPrivateFieldGet(this, _JSHandle_context, "f"), property.value));
|
141
156
|
}
|
142
157
|
return result;
|
143
158
|
}
|
@@ -151,16 +166,16 @@ export class JSHandle {
|
|
151
166
|
* **NOTE** The method throws if the referenced object is not stringifiable.
|
152
167
|
*/
|
153
168
|
async jsonValue() {
|
154
|
-
if (this.
|
155
|
-
const response = await this.
|
169
|
+
if (__classPrivateFieldGet(this, _JSHandle_remoteObject, "f").objectId) {
|
170
|
+
const response = await __classPrivateFieldGet(this, _JSHandle_client, "f").send('Runtime.callFunctionOn', {
|
156
171
|
functionDeclaration: 'function() { return this; }',
|
157
|
-
objectId: this.
|
172
|
+
objectId: __classPrivateFieldGet(this, _JSHandle_remoteObject, "f").objectId,
|
158
173
|
returnByValue: true,
|
159
174
|
awaitPromise: true,
|
160
175
|
});
|
161
|
-
return
|
176
|
+
return valueFromRemoteObject(response.result);
|
162
177
|
}
|
163
|
-
return
|
178
|
+
return valueFromRemoteObject(__classPrivateFieldGet(this, _JSHandle_remoteObject, "f"));
|
164
179
|
}
|
165
180
|
/**
|
166
181
|
* @returns Either `null` or the object handle itself, if the object
|
@@ -168,8 +183,8 @@ export class JSHandle {
|
|
168
183
|
*/
|
169
184
|
asElement() {
|
170
185
|
/* This always returns null, but subclasses can override this and return an
|
171
|
-
|
172
|
-
|
186
|
+
ElementHandle.
|
187
|
+
*/
|
173
188
|
return null;
|
174
189
|
}
|
175
190
|
/**
|
@@ -177,10 +192,11 @@ export class JSHandle {
|
|
177
192
|
* successfully disposed of.
|
178
193
|
*/
|
179
194
|
async dispose() {
|
180
|
-
if (this
|
195
|
+
if (__classPrivateFieldGet(this, _JSHandle_disposed, "f")) {
|
181
196
|
return;
|
182
|
-
|
183
|
-
|
197
|
+
}
|
198
|
+
__classPrivateFieldSet(this, _JSHandle_disposed, true, "f");
|
199
|
+
await releaseObject(__classPrivateFieldGet(this, _JSHandle_client, "f"), __classPrivateFieldGet(this, _JSHandle_remoteObject, "f"));
|
184
200
|
}
|
185
201
|
/**
|
186
202
|
* Returns a string representation of the JSHandle.
|
@@ -188,765 +204,12 @@ export class JSHandle {
|
|
188
204
|
* @remarks Useful during debugging.
|
189
205
|
*/
|
190
206
|
toString() {
|
191
|
-
if (this.
|
192
|
-
const type = this.
|
207
|
+
if (__classPrivateFieldGet(this, _JSHandle_remoteObject, "f").objectId) {
|
208
|
+
const type = __classPrivateFieldGet(this, _JSHandle_remoteObject, "f").subtype || __classPrivateFieldGet(this, _JSHandle_remoteObject, "f").type;
|
193
209
|
return 'JSHandle@' + type;
|
194
210
|
}
|
195
|
-
return 'JSHandle:' +
|
196
|
-
}
|
197
|
-
}
|
198
|
-
/**
|
199
|
-
* ElementHandle represents an in-page DOM element.
|
200
|
-
*
|
201
|
-
* @remarks
|
202
|
-
*
|
203
|
-
* ElementHandles can be created with the {@link Page.$} method.
|
204
|
-
*
|
205
|
-
* ```js
|
206
|
-
* const puppeteer = require('puppeteer');
|
207
|
-
*
|
208
|
-
* (async () => {
|
209
|
-
* const browser = await puppeteer.launch();
|
210
|
-
* const page = await browser.newPage();
|
211
|
-
* await page.goto('https://example.com');
|
212
|
-
* const hrefElement = await page.$('a');
|
213
|
-
* await hrefElement.click();
|
214
|
-
* // ...
|
215
|
-
* })();
|
216
|
-
* ```
|
217
|
-
*
|
218
|
-
* ElementHandle prevents the DOM element from being garbage-collected unless the
|
219
|
-
* handle is {@link JSHandle.dispose | disposed}. ElementHandles are auto-disposed
|
220
|
-
* when their origin frame gets navigated.
|
221
|
-
*
|
222
|
-
* ElementHandle instances can be used as arguments in {@link Page.$eval} and
|
223
|
-
* {@link Page.evaluate} methods.
|
224
|
-
*
|
225
|
-
* If you're using TypeScript, ElementHandle takes a generic argument that
|
226
|
-
* denotes the type of element the handle is holding within. For example, if you
|
227
|
-
* have a handle to a `<select>` element, you can type it as
|
228
|
-
* `ElementHandle<HTMLSelectElement>` and you get some nicer type checks.
|
229
|
-
*
|
230
|
-
* @public
|
231
|
-
*/
|
232
|
-
export class ElementHandle extends JSHandle {
|
233
|
-
/**
|
234
|
-
* @internal
|
235
|
-
*/
|
236
|
-
constructor(context, client, remoteObject, frame, page, frameManager) {
|
237
|
-
super(context, client, remoteObject);
|
238
|
-
this._client = client;
|
239
|
-
this._remoteObject = remoteObject;
|
240
|
-
this._frame = frame;
|
241
|
-
this._page = page;
|
242
|
-
this._frameManager = frameManager;
|
243
|
-
}
|
244
|
-
/**
|
245
|
-
* Wait for the `selector` to appear within the element. If at the moment of calling the
|
246
|
-
* method the `selector` already exists, the method will return immediately. If
|
247
|
-
* the `selector` doesn't appear after the `timeout` milliseconds of waiting, the
|
248
|
-
* function will throw.
|
249
|
-
*
|
250
|
-
* This method does not work across navigations or if the element is detached from DOM.
|
251
|
-
*
|
252
|
-
* @param selector - A
|
253
|
-
* {@link https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Selectors | selector}
|
254
|
-
* of an element to wait for
|
255
|
-
* @param options - Optional waiting parameters
|
256
|
-
* @returns Promise which resolves when element specified by selector string
|
257
|
-
* is added to DOM. Resolves to `null` if waiting for hidden: `true` and
|
258
|
-
* selector is not found in DOM.
|
259
|
-
* @remarks
|
260
|
-
* The optional parameters in `options` are:
|
261
|
-
*
|
262
|
-
* - `visible`: wait for the selected element to be present in DOM and to be
|
263
|
-
* visible, i.e. to not have `display: none` or `visibility: hidden` CSS
|
264
|
-
* properties. Defaults to `false`.
|
265
|
-
*
|
266
|
-
* - `hidden`: wait for the selected element to not be found in the DOM or to be hidden,
|
267
|
-
* i.e. have `display: none` or `visibility: hidden` CSS properties. Defaults to
|
268
|
-
* `false`.
|
269
|
-
*
|
270
|
-
* - `timeout`: maximum time to wait in milliseconds. Defaults to `30000`
|
271
|
-
* (30 seconds). Pass `0` to disable timeout. The default value can be changed
|
272
|
-
* by using the {@link Page.setDefaultTimeout} method.
|
273
|
-
*/
|
274
|
-
async waitForSelector(selector, options = {}) {
|
275
|
-
const frame = this._context.frame();
|
276
|
-
const secondaryContext = await frame._secondaryWorld.executionContext();
|
277
|
-
const adoptedRoot = await secondaryContext._adoptElementHandle(this);
|
278
|
-
const handle = await frame._secondaryWorld.waitForSelector(selector, {
|
279
|
-
...options,
|
280
|
-
root: adoptedRoot,
|
281
|
-
});
|
282
|
-
await adoptedRoot.dispose();
|
283
|
-
if (!handle)
|
284
|
-
return null;
|
285
|
-
const mainExecutionContext = await frame._mainWorld.executionContext();
|
286
|
-
const result = await mainExecutionContext._adoptElementHandle(handle);
|
287
|
-
await handle.dispose();
|
288
|
-
return result;
|
289
|
-
}
|
290
|
-
/**
|
291
|
-
* Wait for the `xpath` within the element. If at the moment of calling the
|
292
|
-
* method the `xpath` already exists, the method will return immediately. If
|
293
|
-
* the `xpath` doesn't appear after the `timeout` milliseconds of waiting, the
|
294
|
-
* function will throw.
|
295
|
-
*
|
296
|
-
* If `xpath` starts with `//` instead of `.//`, the dot will be appended automatically.
|
297
|
-
*
|
298
|
-
* This method works across navigation
|
299
|
-
* ```js
|
300
|
-
* const puppeteer = require('puppeteer');
|
301
|
-
* (async () => {
|
302
|
-
* const browser = await puppeteer.launch();
|
303
|
-
* const page = await browser.newPage();
|
304
|
-
* let currentURL;
|
305
|
-
* page
|
306
|
-
* .waitForXPath('//img')
|
307
|
-
* .then(() => console.log('First URL with image: ' + currentURL));
|
308
|
-
* for (currentURL of [
|
309
|
-
* 'https://example.com',
|
310
|
-
* 'https://google.com',
|
311
|
-
* 'https://bbc.com',
|
312
|
-
* ]) {
|
313
|
-
* await page.goto(currentURL);
|
314
|
-
* }
|
315
|
-
* await browser.close();
|
316
|
-
* })();
|
317
|
-
* ```
|
318
|
-
* @param xpath - A
|
319
|
-
* {@link https://developer.mozilla.org/en-US/docs/Web/XPath | xpath} of an
|
320
|
-
* element to wait for
|
321
|
-
* @param options - Optional waiting parameters
|
322
|
-
* @returns Promise which resolves when element specified by xpath string is
|
323
|
-
* added to DOM. Resolves to `null` if waiting for `hidden: true` and xpath is
|
324
|
-
* not found in DOM.
|
325
|
-
* @remarks
|
326
|
-
* The optional Argument `options` have properties:
|
327
|
-
*
|
328
|
-
* - `visible`: A boolean to wait for element to be present in DOM and to be
|
329
|
-
* visible, i.e. to not have `display: none` or `visibility: hidden` CSS
|
330
|
-
* properties. Defaults to `false`.
|
331
|
-
*
|
332
|
-
* - `hidden`: A boolean wait for element to not be found in the DOM or to be
|
333
|
-
* hidden, i.e. have `display: none` or `visibility: hidden` CSS properties.
|
334
|
-
* Defaults to `false`.
|
335
|
-
*
|
336
|
-
* - `timeout`: A number which is maximum time to wait for in milliseconds.
|
337
|
-
* Defaults to `30000` (30 seconds). Pass `0` to disable timeout. The default
|
338
|
-
* value can be changed by using the {@link Page.setDefaultTimeout} method.
|
339
|
-
*/
|
340
|
-
async waitForXPath(xpath, options = {}) {
|
341
|
-
const frame = this._context.frame();
|
342
|
-
const secondaryContext = await frame._secondaryWorld.executionContext();
|
343
|
-
const adoptedRoot = await secondaryContext._adoptElementHandle(this);
|
344
|
-
xpath = xpath.startsWith('//') ? '.' + xpath : xpath;
|
345
|
-
if (!xpath.startsWith('.//')) {
|
346
|
-
await adoptedRoot.dispose();
|
347
|
-
throw new Error('Unsupported xpath expression: ' + xpath);
|
348
|
-
}
|
349
|
-
const handle = await frame._secondaryWorld.waitForXPath(xpath, {
|
350
|
-
...options,
|
351
|
-
root: adoptedRoot,
|
352
|
-
});
|
353
|
-
await adoptedRoot.dispose();
|
354
|
-
if (!handle)
|
355
|
-
return null;
|
356
|
-
const mainExecutionContext = await frame._mainWorld.executionContext();
|
357
|
-
const result = await mainExecutionContext._adoptElementHandle(handle);
|
358
|
-
await handle.dispose();
|
359
|
-
return result;
|
360
|
-
}
|
361
|
-
asElement() {
|
362
|
-
return this;
|
363
|
-
}
|
364
|
-
/**
|
365
|
-
* Resolves to the content frame for element handles referencing
|
366
|
-
* iframe nodes, or null otherwise
|
367
|
-
*/
|
368
|
-
async contentFrame() {
|
369
|
-
const nodeInfo = await this._client.send('DOM.describeNode', {
|
370
|
-
objectId: this._remoteObject.objectId,
|
371
|
-
});
|
372
|
-
if (typeof nodeInfo.node.frameId !== 'string')
|
373
|
-
return null;
|
374
|
-
return this._frameManager.frame(nodeInfo.node.frameId);
|
375
|
-
}
|
376
|
-
async _scrollIntoViewIfNeeded() {
|
377
|
-
const error = await this.evaluate(async (element, pageJavascriptEnabled) => {
|
378
|
-
if (!element.isConnected)
|
379
|
-
return 'Node is detached from document';
|
380
|
-
if (element.nodeType !== Node.ELEMENT_NODE)
|
381
|
-
return 'Node is not of type HTMLElement';
|
382
|
-
// force-scroll if page's javascript is disabled.
|
383
|
-
if (!pageJavascriptEnabled) {
|
384
|
-
element.scrollIntoView({
|
385
|
-
block: 'center',
|
386
|
-
inline: 'center',
|
387
|
-
// @ts-expect-error Chrome still supports behavior: instant but
|
388
|
-
// it's not in the spec so TS shouts We don't want to make this
|
389
|
-
// breaking change in Puppeteer yet so we'll ignore the line.
|
390
|
-
behavior: 'instant',
|
391
|
-
});
|
392
|
-
return false;
|
393
|
-
}
|
394
|
-
const visibleRatio = await new Promise((resolve) => {
|
395
|
-
const observer = new IntersectionObserver((entries) => {
|
396
|
-
resolve(entries[0].intersectionRatio);
|
397
|
-
observer.disconnect();
|
398
|
-
});
|
399
|
-
observer.observe(element);
|
400
|
-
});
|
401
|
-
if (visibleRatio !== 1.0) {
|
402
|
-
element.scrollIntoView({
|
403
|
-
block: 'center',
|
404
|
-
inline: 'center',
|
405
|
-
// @ts-expect-error Chrome still supports behavior: instant but
|
406
|
-
// it's not in the spec so TS shouts We don't want to make this
|
407
|
-
// breaking change in Puppeteer yet so we'll ignore the line.
|
408
|
-
behavior: 'instant',
|
409
|
-
});
|
410
|
-
}
|
411
|
-
return false;
|
412
|
-
}, this._page.isJavaScriptEnabled());
|
413
|
-
if (error)
|
414
|
-
throw new Error(error);
|
415
|
-
}
|
416
|
-
async _getOOPIFOffsets(frame) {
|
417
|
-
let offsetX = 0;
|
418
|
-
let offsetY = 0;
|
419
|
-
while (frame.parentFrame()) {
|
420
|
-
const parent = frame.parentFrame();
|
421
|
-
if (!frame.isOOPFrame()) {
|
422
|
-
frame = parent;
|
423
|
-
continue;
|
424
|
-
}
|
425
|
-
const { backendNodeId } = await parent._client.send('DOM.getFrameOwner', {
|
426
|
-
frameId: frame._id,
|
427
|
-
});
|
428
|
-
const result = await parent._client.send('DOM.getBoxModel', {
|
429
|
-
backendNodeId: backendNodeId,
|
430
|
-
});
|
431
|
-
if (!result) {
|
432
|
-
break;
|
433
|
-
}
|
434
|
-
const contentBoxQuad = result.model.content;
|
435
|
-
const topLeftCorner = this._fromProtocolQuad(contentBoxQuad)[0];
|
436
|
-
offsetX += topLeftCorner.x;
|
437
|
-
offsetY += topLeftCorner.y;
|
438
|
-
frame = parent;
|
439
|
-
}
|
440
|
-
return { offsetX, offsetY };
|
441
|
-
}
|
442
|
-
/**
|
443
|
-
* Returns the middle point within an element unless a specific offset is provided.
|
444
|
-
*/
|
445
|
-
async clickablePoint(offset) {
|
446
|
-
const [result, layoutMetrics] = await Promise.all([
|
447
|
-
this._client
|
448
|
-
.send('DOM.getContentQuads', {
|
449
|
-
objectId: this._remoteObject.objectId,
|
450
|
-
})
|
451
|
-
.catch(debugError),
|
452
|
-
this._page.client().send('Page.getLayoutMetrics'),
|
453
|
-
]);
|
454
|
-
if (!result || !result.quads.length)
|
455
|
-
throw new Error('Node is either not clickable or not an HTMLElement');
|
456
|
-
// Filter out quads that have too small area to click into.
|
457
|
-
// Fallback to `layoutViewport` in case of using Firefox.
|
458
|
-
const { clientWidth, clientHeight } = layoutMetrics.cssLayoutViewport || layoutMetrics.layoutViewport;
|
459
|
-
const { offsetX, offsetY } = await this._getOOPIFOffsets(this._frame);
|
460
|
-
const quads = result.quads
|
461
|
-
.map((quad) => this._fromProtocolQuad(quad))
|
462
|
-
.map((quad) => applyOffsetsToQuad(quad, offsetX, offsetY))
|
463
|
-
.map((quad) => this._intersectQuadWithViewport(quad, clientWidth, clientHeight))
|
464
|
-
.filter((quad) => computeQuadArea(quad) > 1);
|
465
|
-
if (!quads.length)
|
466
|
-
throw new Error('Node is either not clickable or not an HTMLElement');
|
467
|
-
const quad = quads[0];
|
468
|
-
if (offset) {
|
469
|
-
// Return the point of the first quad identified by offset.
|
470
|
-
let minX = Number.MAX_SAFE_INTEGER;
|
471
|
-
let minY = Number.MAX_SAFE_INTEGER;
|
472
|
-
for (const point of quad) {
|
473
|
-
if (point.x < minX) {
|
474
|
-
minX = point.x;
|
475
|
-
}
|
476
|
-
if (point.y < minY) {
|
477
|
-
minY = point.y;
|
478
|
-
}
|
479
|
-
}
|
480
|
-
if (minX !== Number.MAX_SAFE_INTEGER &&
|
481
|
-
minY !== Number.MAX_SAFE_INTEGER) {
|
482
|
-
return {
|
483
|
-
x: minX + offset.x,
|
484
|
-
y: minY + offset.y,
|
485
|
-
};
|
486
|
-
}
|
487
|
-
}
|
488
|
-
// Return the middle point of the first quad.
|
489
|
-
let x = 0;
|
490
|
-
let y = 0;
|
491
|
-
for (const point of quad) {
|
492
|
-
x += point.x;
|
493
|
-
y += point.y;
|
494
|
-
}
|
495
|
-
return {
|
496
|
-
x: x / 4,
|
497
|
-
y: y / 4,
|
498
|
-
};
|
499
|
-
}
|
500
|
-
_getBoxModel() {
|
501
|
-
const params = {
|
502
|
-
objectId: this._remoteObject.objectId,
|
503
|
-
};
|
504
|
-
return this._client
|
505
|
-
.send('DOM.getBoxModel', params)
|
506
|
-
.catch((error) => debugError(error));
|
507
|
-
}
|
508
|
-
_fromProtocolQuad(quad) {
|
509
|
-
return [
|
510
|
-
{ x: quad[0], y: quad[1] },
|
511
|
-
{ x: quad[2], y: quad[3] },
|
512
|
-
{ x: quad[4], y: quad[5] },
|
513
|
-
{ x: quad[6], y: quad[7] },
|
514
|
-
];
|
515
|
-
}
|
516
|
-
_intersectQuadWithViewport(quad, width, height) {
|
517
|
-
return quad.map((point) => ({
|
518
|
-
x: Math.min(Math.max(point.x, 0), width),
|
519
|
-
y: Math.min(Math.max(point.y, 0), height),
|
520
|
-
}));
|
521
|
-
}
|
522
|
-
/**
|
523
|
-
* This method scrolls element into view if needed, and then
|
524
|
-
* uses {@link Page.mouse} to hover over the center of the element.
|
525
|
-
* If the element is detached from DOM, the method throws an error.
|
526
|
-
*/
|
527
|
-
async hover() {
|
528
|
-
await this._scrollIntoViewIfNeeded();
|
529
|
-
const { x, y } = await this.clickablePoint();
|
530
|
-
await this._page.mouse.move(x, y);
|
531
|
-
}
|
532
|
-
/**
|
533
|
-
* This method scrolls element into view if needed, and then
|
534
|
-
* uses {@link Page.mouse} to click in the center of the element.
|
535
|
-
* If the element is detached from DOM, the method throws an error.
|
536
|
-
*/
|
537
|
-
async click(options = {}) {
|
538
|
-
await this._scrollIntoViewIfNeeded();
|
539
|
-
const { x, y } = await this.clickablePoint(options.offset);
|
540
|
-
await this._page.mouse.click(x, y, options);
|
541
|
-
}
|
542
|
-
/**
|
543
|
-
* This method creates and captures a dragevent from the element.
|
544
|
-
*/
|
545
|
-
async drag(target) {
|
546
|
-
assert(this._page.isDragInterceptionEnabled(), 'Drag Interception is not enabled!');
|
547
|
-
await this._scrollIntoViewIfNeeded();
|
548
|
-
const start = await this.clickablePoint();
|
549
|
-
return await this._page.mouse.drag(start, target);
|
550
|
-
}
|
551
|
-
/**
|
552
|
-
* This method creates a `dragenter` event on the element.
|
553
|
-
*/
|
554
|
-
async dragEnter(data = { items: [], dragOperationsMask: 1 }) {
|
555
|
-
await this._scrollIntoViewIfNeeded();
|
556
|
-
const target = await this.clickablePoint();
|
557
|
-
await this._page.mouse.dragEnter(target, data);
|
558
|
-
}
|
559
|
-
/**
|
560
|
-
* This method creates a `dragover` event on the element.
|
561
|
-
*/
|
562
|
-
async dragOver(data = { items: [], dragOperationsMask: 1 }) {
|
563
|
-
await this._scrollIntoViewIfNeeded();
|
564
|
-
const target = await this.clickablePoint();
|
565
|
-
await this._page.mouse.dragOver(target, data);
|
566
|
-
}
|
567
|
-
/**
|
568
|
-
* This method triggers a drop on the element.
|
569
|
-
*/
|
570
|
-
async drop(data = { items: [], dragOperationsMask: 1 }) {
|
571
|
-
await this._scrollIntoViewIfNeeded();
|
572
|
-
const destination = await this.clickablePoint();
|
573
|
-
await this._page.mouse.drop(destination, data);
|
574
|
-
}
|
575
|
-
/**
|
576
|
-
* This method triggers a dragenter, dragover, and drop on the element.
|
577
|
-
*/
|
578
|
-
async dragAndDrop(target, options) {
|
579
|
-
await this._scrollIntoViewIfNeeded();
|
580
|
-
const startPoint = await this.clickablePoint();
|
581
|
-
const targetPoint = await target.clickablePoint();
|
582
|
-
await this._page.mouse.dragAndDrop(startPoint, targetPoint, options);
|
583
|
-
}
|
584
|
-
/**
|
585
|
-
* Triggers a `change` and `input` event once all the provided options have been
|
586
|
-
* selected. If there's no `<select>` element matching `selector`, the method
|
587
|
-
* throws an error.
|
588
|
-
*
|
589
|
-
* @example
|
590
|
-
* ```js
|
591
|
-
* handle.select('blue'); // single selection
|
592
|
-
* handle.select('red', 'green', 'blue'); // multiple selections
|
593
|
-
* ```
|
594
|
-
* @param values - Values of options to select. If the `<select>` has the
|
595
|
-
* `multiple` attribute, all values are considered, otherwise only the first
|
596
|
-
* one is taken into account.
|
597
|
-
*/
|
598
|
-
async select(...values) {
|
599
|
-
for (const value of values)
|
600
|
-
assert(helper.isString(value), 'Values must be strings. Found value "' +
|
601
|
-
value +
|
602
|
-
'" of type "' +
|
603
|
-
typeof value +
|
604
|
-
'"');
|
605
|
-
return this.evaluate((element, values) => {
|
606
|
-
if (!(element instanceof HTMLSelectElement))
|
607
|
-
throw new Error('Element is not a <select> element.');
|
608
|
-
const options = Array.from(element.options);
|
609
|
-
element.value = undefined;
|
610
|
-
for (const option of options) {
|
611
|
-
option.selected = values.includes(option.value);
|
612
|
-
if (option.selected && !element.multiple)
|
613
|
-
break;
|
614
|
-
}
|
615
|
-
element.dispatchEvent(new Event('input', { bubbles: true }));
|
616
|
-
element.dispatchEvent(new Event('change', { bubbles: true }));
|
617
|
-
return options
|
618
|
-
.filter((option) => option.selected)
|
619
|
-
.map((option) => option.value);
|
620
|
-
}, values);
|
621
|
-
}
|
622
|
-
/**
|
623
|
-
* This method expects `elementHandle` to point to an
|
624
|
-
* {@link https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input | input element}.
|
625
|
-
* @param filePaths - Sets the value of the file input to these paths.
|
626
|
-
* If some of the `filePaths` are relative paths, then they are resolved
|
627
|
-
* relative to the {@link https://nodejs.org/api/process.html#process_process_cwd | current working directory}
|
628
|
-
*/
|
629
|
-
async uploadFile(...filePaths) {
|
630
|
-
const isMultiple = await this.evaluate((element) => {
|
631
|
-
if (!(element instanceof HTMLInputElement)) {
|
632
|
-
throw new Error('uploadFile can only be called on an input element.');
|
633
|
-
}
|
634
|
-
return element.multiple;
|
635
|
-
});
|
636
|
-
assert(filePaths.length <= 1 || isMultiple, 'Multiple file uploads only work with <input type=file multiple>');
|
637
|
-
if (!isNode) {
|
638
|
-
throw new Error(`JSHandle#uploadFile can only be used in Node environments.`);
|
639
|
-
}
|
640
|
-
/*
|
641
|
-
This import is only needed for `uploadFile`, so keep it scoped here to
|
642
|
-
avoid paying the cost unnecessarily.
|
643
|
-
*/
|
644
|
-
const path = await import('path');
|
645
|
-
const fs = await helper.importFSModule();
|
646
|
-
// Locate all files and confirm that they exist.
|
647
|
-
const files = await Promise.all(filePaths.map(async (filePath) => {
|
648
|
-
const resolvedPath = path.resolve(filePath);
|
649
|
-
try {
|
650
|
-
await fs.promises.access(resolvedPath, fs.constants.R_OK);
|
651
|
-
}
|
652
|
-
catch (error) {
|
653
|
-
if (error.code === 'ENOENT')
|
654
|
-
throw new Error(`${filePath} does not exist or is not readable`);
|
655
|
-
}
|
656
|
-
return resolvedPath;
|
657
|
-
}));
|
658
|
-
const { objectId } = this._remoteObject;
|
659
|
-
const { node } = await this._client.send('DOM.describeNode', { objectId });
|
660
|
-
const { backendNodeId } = node;
|
661
|
-
/* The zero-length array is a special case, it seems that
|
662
|
-
DOM.setFileInputFiles does not actually update the files in that case,
|
663
|
-
so the solution is to eval the element value to a new FileList directly.
|
664
|
-
*/
|
665
|
-
if (files.length === 0) {
|
666
|
-
await this.evaluate((element) => {
|
667
|
-
element.files = new DataTransfer().files;
|
668
|
-
// Dispatch events for this case because it should behave akin to a user action.
|
669
|
-
element.dispatchEvent(new Event('input', { bubbles: true }));
|
670
|
-
element.dispatchEvent(new Event('change', { bubbles: true }));
|
671
|
-
});
|
672
|
-
}
|
673
|
-
else {
|
674
|
-
await this._client.send('DOM.setFileInputFiles', {
|
675
|
-
objectId,
|
676
|
-
files,
|
677
|
-
backendNodeId,
|
678
|
-
});
|
679
|
-
}
|
680
|
-
}
|
681
|
-
/**
|
682
|
-
* This method scrolls element into view if needed, and then uses
|
683
|
-
* {@link Touchscreen.tap} to tap in the center of the element.
|
684
|
-
* If the element is detached from DOM, the method throws an error.
|
685
|
-
*/
|
686
|
-
async tap() {
|
687
|
-
await this._scrollIntoViewIfNeeded();
|
688
|
-
const { x, y } = await this.clickablePoint();
|
689
|
-
await this._page.touchscreen.tap(x, y);
|
690
|
-
}
|
691
|
-
/**
|
692
|
-
* Calls {@link https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement/focus | focus} on the element.
|
693
|
-
*/
|
694
|
-
async focus() {
|
695
|
-
await this.evaluate((element) => element.focus());
|
696
|
-
}
|
697
|
-
/**
|
698
|
-
* Focuses the element, and then sends a `keydown`, `keypress`/`input`, and
|
699
|
-
* `keyup` event for each character in the text.
|
700
|
-
*
|
701
|
-
* To press a special key, like `Control` or `ArrowDown`,
|
702
|
-
* use {@link ElementHandle.press}.
|
703
|
-
*
|
704
|
-
* @example
|
705
|
-
* ```js
|
706
|
-
* await elementHandle.type('Hello'); // Types instantly
|
707
|
-
* await elementHandle.type('World', {delay: 100}); // Types slower, like a user
|
708
|
-
* ```
|
709
|
-
*
|
710
|
-
* @example
|
711
|
-
* An example of typing into a text field and then submitting the form:
|
712
|
-
*
|
713
|
-
* ```js
|
714
|
-
* const elementHandle = await page.$('input');
|
715
|
-
* await elementHandle.type('some text');
|
716
|
-
* await elementHandle.press('Enter');
|
717
|
-
* ```
|
718
|
-
*/
|
719
|
-
async type(text, options) {
|
720
|
-
await this.focus();
|
721
|
-
await this._page.keyboard.type(text, options);
|
722
|
-
}
|
723
|
-
/**
|
724
|
-
* Focuses the element, and then uses {@link Keyboard.down} and {@link Keyboard.up}.
|
725
|
-
*
|
726
|
-
* @remarks
|
727
|
-
* If `key` is a single character and no modifier keys besides `Shift`
|
728
|
-
* are being held down, a `keypress`/`input` event will also be generated.
|
729
|
-
* The `text` option can be specified to force an input event to be generated.
|
730
|
-
*
|
731
|
-
* **NOTE** Modifier keys DO affect `elementHandle.press`. Holding down `Shift`
|
732
|
-
* will type the text in upper case.
|
733
|
-
*
|
734
|
-
* @param key - Name of key to press, such as `ArrowLeft`.
|
735
|
-
* See {@link KeyInput} for a list of all key names.
|
736
|
-
*/
|
737
|
-
async press(key, options) {
|
738
|
-
await this.focus();
|
739
|
-
await this._page.keyboard.press(key, options);
|
740
|
-
}
|
741
|
-
/**
|
742
|
-
* This method returns the bounding box of the element (relative to the main frame),
|
743
|
-
* or `null` if the element is not visible.
|
744
|
-
*/
|
745
|
-
async boundingBox() {
|
746
|
-
const result = await this._getBoxModel();
|
747
|
-
if (!result)
|
748
|
-
return null;
|
749
|
-
const { offsetX, offsetY } = await this._getOOPIFOffsets(this._frame);
|
750
|
-
const quad = result.model.border;
|
751
|
-
const x = Math.min(quad[0], quad[2], quad[4], quad[6]);
|
752
|
-
const y = Math.min(quad[1], quad[3], quad[5], quad[7]);
|
753
|
-
const width = Math.max(quad[0], quad[2], quad[4], quad[6]) - x;
|
754
|
-
const height = Math.max(quad[1], quad[3], quad[5], quad[7]) - y;
|
755
|
-
return { x: x + offsetX, y: y + offsetY, width, height };
|
756
|
-
}
|
757
|
-
/**
|
758
|
-
* This method returns boxes of the element, or `null` if the element is not visible.
|
759
|
-
*
|
760
|
-
* @remarks
|
761
|
-
*
|
762
|
-
* Boxes are represented as an array of points;
|
763
|
-
* Each Point is an object `{x, y}`. Box points are sorted clock-wise.
|
764
|
-
*/
|
765
|
-
async boxModel() {
|
766
|
-
const result = await this._getBoxModel();
|
767
|
-
if (!result)
|
768
|
-
return null;
|
769
|
-
const { offsetX, offsetY } = await this._getOOPIFOffsets(this._frame);
|
770
|
-
const { content, padding, border, margin, width, height } = result.model;
|
771
|
-
return {
|
772
|
-
content: applyOffsetsToQuad(this._fromProtocolQuad(content), offsetX, offsetY),
|
773
|
-
padding: applyOffsetsToQuad(this._fromProtocolQuad(padding), offsetX, offsetY),
|
774
|
-
border: applyOffsetsToQuad(this._fromProtocolQuad(border), offsetX, offsetY),
|
775
|
-
margin: applyOffsetsToQuad(this._fromProtocolQuad(margin), offsetX, offsetY),
|
776
|
-
width,
|
777
|
-
height,
|
778
|
-
};
|
779
|
-
}
|
780
|
-
/**
|
781
|
-
* This method scrolls element into view if needed, and then uses
|
782
|
-
* {@link Page.screenshot} to take a screenshot of the element.
|
783
|
-
* If the element is detached from DOM, the method throws an error.
|
784
|
-
*/
|
785
|
-
async screenshot(options = {}) {
|
786
|
-
let needsViewportReset = false;
|
787
|
-
let boundingBox = await this.boundingBox();
|
788
|
-
assert(boundingBox, 'Node is either not visible or not an HTMLElement');
|
789
|
-
const viewport = this._page.viewport();
|
790
|
-
if (viewport &&
|
791
|
-
(boundingBox.width > viewport.width ||
|
792
|
-
boundingBox.height > viewport.height)) {
|
793
|
-
const newViewport = {
|
794
|
-
width: Math.max(viewport.width, Math.ceil(boundingBox.width)),
|
795
|
-
height: Math.max(viewport.height, Math.ceil(boundingBox.height)),
|
796
|
-
};
|
797
|
-
await this._page.setViewport(Object.assign({}, viewport, newViewport));
|
798
|
-
needsViewportReset = true;
|
799
|
-
}
|
800
|
-
await this._scrollIntoViewIfNeeded();
|
801
|
-
boundingBox = await this.boundingBox();
|
802
|
-
assert(boundingBox, 'Node is either not visible or not an HTMLElement');
|
803
|
-
assert(boundingBox.width !== 0, 'Node has 0 width.');
|
804
|
-
assert(boundingBox.height !== 0, 'Node has 0 height.');
|
805
|
-
const layoutMetrics = await this._client.send('Page.getLayoutMetrics');
|
806
|
-
// Fallback to `layoutViewport` in case of using Firefox.
|
807
|
-
const { pageX, pageY } = layoutMetrics.cssVisualViewport || layoutMetrics.layoutViewport;
|
808
|
-
const clip = Object.assign({}, boundingBox);
|
809
|
-
clip.x += pageX;
|
810
|
-
clip.y += pageY;
|
811
|
-
const imageData = await this._page.screenshot(Object.assign({}, {
|
812
|
-
clip,
|
813
|
-
}, options));
|
814
|
-
if (needsViewportReset)
|
815
|
-
await this._page.setViewport(viewport);
|
816
|
-
return imageData;
|
817
|
-
}
|
818
|
-
/**
|
819
|
-
* Runs `element.querySelector` within the page. If no element matches the selector,
|
820
|
-
* the return value resolves to `null`.
|
821
|
-
*/
|
822
|
-
async $(selector) {
|
823
|
-
const { updatedSelector, queryHandler } = getQueryHandlerAndSelector(selector);
|
824
|
-
return queryHandler.queryOne(this, updatedSelector);
|
825
|
-
}
|
826
|
-
/**
|
827
|
-
* Runs `element.querySelectorAll` within the page. If no elements match the selector,
|
828
|
-
* the return value resolves to `[]`.
|
829
|
-
*/
|
830
|
-
async $$(selector) {
|
831
|
-
const { updatedSelector, queryHandler } = getQueryHandlerAndSelector(selector);
|
832
|
-
return queryHandler.queryAll(this, updatedSelector);
|
833
|
-
}
|
834
|
-
/**
|
835
|
-
* This method runs `document.querySelector` within the element and passes it as
|
836
|
-
* the first argument to `pageFunction`. If there's no element matching `selector`,
|
837
|
-
* the method throws an error.
|
838
|
-
*
|
839
|
-
* If `pageFunction` returns a Promise, then `frame.$eval` would wait for the promise
|
840
|
-
* to resolve and return its value.
|
841
|
-
*
|
842
|
-
* @example
|
843
|
-
* ```js
|
844
|
-
* const tweetHandle = await page.$('.tweet');
|
845
|
-
* expect(await tweetHandle.$eval('.like', node => node.innerText)).toBe('100');
|
846
|
-
* expect(await tweetHandle.$eval('.retweets', node => node.innerText)).toBe('10');
|
847
|
-
* ```
|
848
|
-
*/
|
849
|
-
async $eval(selector, pageFunction, ...args) {
|
850
|
-
const elementHandle = await this.$(selector);
|
851
|
-
if (!elementHandle)
|
852
|
-
throw new Error(`Error: failed to find element matching selector "${selector}"`);
|
853
|
-
const result = await elementHandle.evaluate(pageFunction, ...args);
|
854
|
-
await elementHandle.dispose();
|
855
|
-
/**
|
856
|
-
* This `as` is a little unfortunate but helps TS understand the behavior of
|
857
|
-
* `elementHandle.evaluate`. If evaluate returns an element it will return an
|
858
|
-
* ElementHandle instance, rather than the plain object. All the
|
859
|
-
* WrapElementHandle type does is wrap ReturnType into
|
860
|
-
* ElementHandle<ReturnType> if it is an ElementHandle, or leave it alone as
|
861
|
-
* ReturnType if it isn't.
|
862
|
-
*/
|
863
|
-
return result;
|
864
|
-
}
|
865
|
-
/**
|
866
|
-
* This method runs `document.querySelectorAll` within the element and passes it as
|
867
|
-
* the first argument to `pageFunction`. If there's no element matching `selector`,
|
868
|
-
* the method throws an error.
|
869
|
-
*
|
870
|
-
* If `pageFunction` returns a Promise, then `frame.$$eval` would wait for the
|
871
|
-
* promise to resolve and return its value.
|
872
|
-
*
|
873
|
-
* @example
|
874
|
-
* ```html
|
875
|
-
* <div class="feed">
|
876
|
-
* <div class="tweet">Hello!</div>
|
877
|
-
* <div class="tweet">Hi!</div>
|
878
|
-
* </div>
|
879
|
-
* ```
|
880
|
-
*
|
881
|
-
* @example
|
882
|
-
* ```js
|
883
|
-
* const feedHandle = await page.$('.feed');
|
884
|
-
* expect(await feedHandle.$$eval('.tweet', nodes => nodes.map(n => n.innerText)))
|
885
|
-
* .toEqual(['Hello!', 'Hi!']);
|
886
|
-
* ```
|
887
|
-
*/
|
888
|
-
async $$eval(selector, pageFunction, ...args) {
|
889
|
-
const { updatedSelector, queryHandler } = getQueryHandlerAndSelector(selector);
|
890
|
-
const arrayHandle = await queryHandler.queryAllArray(this, updatedSelector);
|
891
|
-
const result = await arrayHandle.evaluate(pageFunction, ...args);
|
892
|
-
await arrayHandle.dispose();
|
893
|
-
/* This `as` exists for the same reason as the `as` in $eval above.
|
894
|
-
* See the comment there for a full explanation.
|
895
|
-
*/
|
896
|
-
return result;
|
897
|
-
}
|
898
|
-
/**
|
899
|
-
* The method evaluates the XPath expression relative to the elementHandle.
|
900
|
-
* If there are no such elements, the method will resolve to an empty array.
|
901
|
-
* @param expression - Expression to {@link https://developer.mozilla.org/en-US/docs/Web/API/Document/evaluate | evaluate}
|
902
|
-
*/
|
903
|
-
async $x(expression) {
|
904
|
-
const arrayHandle = await this.evaluateHandle((element, expression) => {
|
905
|
-
const document = element.ownerDocument || element;
|
906
|
-
const iterator = document.evaluate(expression, element, null, XPathResult.ORDERED_NODE_ITERATOR_TYPE);
|
907
|
-
const array = [];
|
908
|
-
let item;
|
909
|
-
while ((item = iterator.iterateNext()))
|
910
|
-
array.push(item);
|
911
|
-
return array;
|
912
|
-
}, expression);
|
913
|
-
const properties = await arrayHandle.getProperties();
|
914
|
-
await arrayHandle.dispose();
|
915
|
-
const result = [];
|
916
|
-
for (const property of properties.values()) {
|
917
|
-
const elementHandle = property.asElement();
|
918
|
-
if (elementHandle)
|
919
|
-
result.push(elementHandle);
|
920
|
-
}
|
921
|
-
return result;
|
922
|
-
}
|
923
|
-
/**
|
924
|
-
* Resolves to true if the element is visible in the current viewport.
|
925
|
-
*/
|
926
|
-
async isIntersectingViewport(options) {
|
927
|
-
const { threshold = 0 } = options || {};
|
928
|
-
return await this.evaluate(async (element, threshold) => {
|
929
|
-
const visibleRatio = await new Promise((resolve) => {
|
930
|
-
const observer = new IntersectionObserver((entries) => {
|
931
|
-
resolve(entries[0].intersectionRatio);
|
932
|
-
observer.disconnect();
|
933
|
-
});
|
934
|
-
observer.observe(element);
|
935
|
-
});
|
936
|
-
return threshold === 1 ? visibleRatio === 1 : visibleRatio > threshold;
|
937
|
-
}, threshold);
|
938
|
-
}
|
939
|
-
}
|
940
|
-
function computeQuadArea(quad) {
|
941
|
-
/* Compute sum of all directed areas of adjacent triangles
|
942
|
-
https://en.wikipedia.org/wiki/Polygon#Simple_polygons
|
943
|
-
*/
|
944
|
-
let area = 0;
|
945
|
-
for (let i = 0; i < quad.length; ++i) {
|
946
|
-
const p1 = quad[i];
|
947
|
-
const p2 = quad[(i + 1) % quad.length];
|
948
|
-
area += (p1.x * p2.y - p2.x * p1.y) / 2;
|
211
|
+
return 'JSHandle:' + valueFromRemoteObject(__classPrivateFieldGet(this, _JSHandle_remoteObject, "f"));
|
949
212
|
}
|
950
|
-
return Math.abs(area);
|
951
213
|
}
|
214
|
+
_JSHandle_client = new WeakMap(), _JSHandle_disposed = new WeakMap(), _JSHandle_context = new WeakMap(), _JSHandle_remoteObject = new WeakMap();
|
952
215
|
//# sourceMappingURL=JSHandle.js.map
|