chrome-devtools-frontend 1.0.1021097 → 1.0.1021582
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/config/gni/devtools_grd_files.gni +15 -10
 - package/front_end/.eslintrc.js +1 -0
 - package/front_end/core/i18n/locales/en-US.json +118 -4
 - package/front_end/core/i18n/locales/en-XL.json +118 -4
 - package/front_end/models/bindings/DebuggerLanguagePlugins.ts +8 -0
 - package/front_end/panels/application/components/FrameDetailsView.ts +3 -2
 - package/front_end/panels/application/components/Prerender2.ts +188 -0
 - package/front_end/panels/elements/CSSRuleValidator.ts +103 -13
 - package/front_end/panels/elements/ElementsTreeElement.ts +3 -1
 - package/front_end/panels/elements/StylePropertyTreeElement.ts +10 -8
 - 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/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/lit-html/directives.ts +1 -0
 - package/front_end/third_party/lit-html/lit-html-tsconfig.json +1 -0
 - 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 +7 -14
 - package/front_end/ui/components/linear_memory_inspector/LinearMemoryInspector.ts +2 -5
 - package/front_end/ui/components/linear_memory_inspector/LinearMemoryInspectorController.ts +22 -2
 - 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/components/utils/Linkifier.ts +3 -1
 - package/package.json +1 -1
 - package/scripts/eslint_rules/lib/inject_checkbox_styles.js +4 -2
 - 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,6 +13,18 @@ 
     | 
|
| 
       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 _BrowserFetcher_instances, _BrowserFetcher_product, _BrowserFetcher_downloadsFolder, _BrowserFetcher_downloadHost, _BrowserFetcher_platform, _BrowserFetcher_getFolderPath;
         
     | 
| 
       16 
28 
     | 
    
         
             
            import * as os from 'os';
         
     | 
| 
       17 
29 
     | 
    
         
             
            import * as fs from 'fs';
         
     | 
| 
       18 
30 
     | 
    
         
             
            import * as path from 'path';
         
     | 
| 
         @@ -58,52 +70,53 @@ const browserConfig = { 
     | 
|
| 
       58 
70 
     | 
    
         
             
                },
         
     | 
| 
       59 
71 
     | 
    
         
             
            };
         
     | 
| 
       60 
72 
     | 
    
         
             
            function archiveName(product, platform, revision) {
         
     | 
| 
       61 
     | 
    
         
            -
                 
     | 
| 
       62 
     | 
    
         
            -
                     
     | 
| 
       63 
     | 
    
         
            -
                         
     | 
| 
       64 
     | 
    
         
            -
             
     | 
| 
       65 
     | 
    
         
            -
             
     | 
| 
       66 
     | 
    
         
            -
             
     | 
| 
       67 
     | 
    
         
            -
             
     | 
| 
       68 
     | 
    
         
            -
             
     | 
| 
       69 
     | 
    
         
            -
             
     | 
| 
       70 
     | 
    
         
            -
             
     | 
| 
       71 
     | 
    
         
            -
             
     | 
| 
       72 
     | 
    
         
            -
             
     | 
| 
      
 73 
     | 
    
         
            +
                switch (product) {
         
     | 
| 
      
 74 
     | 
    
         
            +
                    case 'chrome':
         
     | 
| 
      
 75 
     | 
    
         
            +
                        switch (platform) {
         
     | 
| 
      
 76 
     | 
    
         
            +
                            case 'linux':
         
     | 
| 
      
 77 
     | 
    
         
            +
                                return 'chrome-linux';
         
     | 
| 
      
 78 
     | 
    
         
            +
                            case 'mac_arm':
         
     | 
| 
      
 79 
     | 
    
         
            +
                            case 'mac':
         
     | 
| 
      
 80 
     | 
    
         
            +
                                return 'chrome-mac';
         
     | 
| 
      
 81 
     | 
    
         
            +
                            case 'win32':
         
     | 
| 
      
 82 
     | 
    
         
            +
                            case 'win64':
         
     | 
| 
      
 83 
     | 
    
         
            +
                                // Windows archive name changed at r591479.
         
     | 
| 
      
 84 
     | 
    
         
            +
                                return parseInt(revision, 10) > 591479
         
     | 
| 
      
 85 
     | 
    
         
            +
                                    ? 'chrome-win'
         
     | 
| 
      
 86 
     | 
    
         
            +
                                    : 'chrome-win32';
         
     | 
| 
      
 87 
     | 
    
         
            +
                        }
         
     | 
| 
      
 88 
     | 
    
         
            +
                    case 'firefox':
         
     | 
| 
      
 89 
     | 
    
         
            +
                        return platform;
         
     | 
| 
       73 
90 
     | 
    
         
             
                }
         
     | 
| 
       74 
91 
     | 
    
         
             
            }
         
     | 
| 
       75 
     | 
    
         
            -
            /**
         
     | 
| 
       76 
     | 
    
         
            -
             * @internal
         
     | 
| 
       77 
     | 
    
         
            -
             */
         
     | 
| 
       78 
92 
     | 
    
         
             
            function downloadURL(product, platform, host, revision) {
         
     | 
| 
       79 
93 
     | 
    
         
             
                const url = util.format(downloadURLs[product][platform], host, revision, archiveName(product, platform, revision));
         
     | 
| 
       80 
94 
     | 
    
         
             
                return url;
         
     | 
| 
       81 
95 
     | 
    
         
             
            }
         
     | 
| 
       82 
     | 
    
         
            -
            /**
         
     | 
| 
       83 
     | 
    
         
            -
             * @internal
         
     | 
| 
       84 
     | 
    
         
            -
             */
         
     | 
| 
       85 
96 
     | 
    
         
             
            function handleArm64() {
         
     | 
| 
       86 
     | 
    
         
            -
                fs. 
     | 
| 
       87 
     | 
    
         
            -
             
     | 
| 
       88 
     | 
    
         
            -
             
     | 
| 
       89 
     | 
    
         
            -
             
     | 
| 
       90 
     | 
    
         
            -
             
     | 
| 
       91 
     | 
    
         
            -
             
     | 
| 
       92 
     | 
    
         
            -
             
     | 
| 
       93 
     | 
    
         
            -
             
     | 
| 
       94 
     | 
    
         
            -
             
     | 
| 
       95 
     | 
    
         
            -
             
     | 
| 
       96 
     | 
    
         
            -
             
     | 
| 
       97 
     | 
    
         
            -
                     
     | 
| 
       98 
     | 
    
         
            -
                 
     | 
| 
      
 97 
     | 
    
         
            +
                let exists = fs.existsSync('/usr/bin/chromium-browser');
         
     | 
| 
      
 98 
     | 
    
         
            +
                if (exists) {
         
     | 
| 
      
 99 
     | 
    
         
            +
                    return;
         
     | 
| 
      
 100 
     | 
    
         
            +
                }
         
     | 
| 
      
 101 
     | 
    
         
            +
                exists = fs.existsSync('/usr/bin/chromium');
         
     | 
| 
      
 102 
     | 
    
         
            +
                if (exists) {
         
     | 
| 
      
 103 
     | 
    
         
            +
                    return;
         
     | 
| 
      
 104 
     | 
    
         
            +
                }
         
     | 
| 
      
 105 
     | 
    
         
            +
                console.error('The chromium binary is not available for arm64.' +
         
     | 
| 
      
 106 
     | 
    
         
            +
                    '\nIf you are on Ubuntu, you can install with: ' +
         
     | 
| 
      
 107 
     | 
    
         
            +
                    '\n\n sudo apt install chromium\n' +
         
     | 
| 
      
 108 
     | 
    
         
            +
                    '\n\n sudo apt install chromium-browser\n');
         
     | 
| 
      
 109 
     | 
    
         
            +
                throw new Error();
         
     | 
| 
       99 
110 
     | 
    
         
             
            }
         
     | 
| 
       100 
111 
     | 
    
         
             
            const readdirAsync = promisify(fs.readdir.bind(fs));
         
     | 
| 
       101 
112 
     | 
    
         
             
            const mkdirAsync = promisify(fs.mkdir.bind(fs));
         
     | 
| 
       102 
113 
     | 
    
         
             
            const unlinkAsync = promisify(fs.unlink.bind(fs));
         
     | 
| 
       103 
114 
     | 
    
         
             
            const chmodAsync = promisify(fs.chmod.bind(fs));
         
     | 
| 
       104 
115 
     | 
    
         
             
            function existsAsync(filePath) {
         
     | 
| 
       105 
     | 
    
         
            -
                return new Promise( 
     | 
| 
       106 
     | 
    
         
            -
                    fs.access(filePath,  
     | 
| 
      
 116 
     | 
    
         
            +
                return new Promise(resolve => {
         
     | 
| 
      
 117 
     | 
    
         
            +
                    fs.access(filePath, err => {
         
     | 
| 
      
 118 
     | 
    
         
            +
                        return resolve(!err);
         
     | 
| 
      
 119 
     | 
    
         
            +
                    });
         
     | 
| 
       107 
120 
     | 
    
         
             
                });
         
     | 
| 
       108 
121 
     | 
    
         
             
            }
         
     | 
| 
       109 
122 
     | 
    
         
             
            /**
         
     | 
| 
         @@ -118,7 +131,7 @@ function existsAsync(filePath) { 
     | 
|
| 
       118 
131 
     | 
    
         
             
             * An example of using BrowserFetcher to download a specific version of Chromium
         
     | 
| 
       119 
132 
     | 
    
         
             
             * and running Puppeteer against it:
         
     | 
| 
       120 
133 
     | 
    
         
             
             *
         
     | 
| 
       121 
     | 
    
         
            -
             * ``` 
     | 
| 
      
 134 
     | 
    
         
            +
             * ```ts
         
     | 
| 
       122 
135 
     | 
    
         
             
             * const browserFetcher = puppeteer.createBrowserFetcher();
         
     | 
| 
       123 
136 
     | 
    
         
             
             * const revisionInfo = await browserFetcher.download('533271');
         
     | 
| 
       124 
137 
     | 
    
         
             
             * const browser = await puppeteer.launch({executablePath: revisionInfo.executablePath})
         
     | 
| 
         @@ -134,58 +147,65 @@ export class BrowserFetcher { 
     | 
|
| 
       134 
147 
     | 
    
         
             
                 * @internal
         
     | 
| 
       135 
148 
     | 
    
         
             
                 */
         
     | 
| 
       136 
149 
     | 
    
         
             
                constructor(projectRoot, options = {}) {
         
     | 
| 
       137 
     | 
    
         
            -
                     
     | 
| 
       138 
     | 
    
         
            -
                     
     | 
| 
       139 
     | 
    
         
            -
                    this 
     | 
| 
       140 
     | 
    
         
            -
             
     | 
| 
       141 
     | 
    
         
            -
             
     | 
| 
       142 
     | 
    
         
            -
                    this 
     | 
| 
       143 
     | 
    
         
            -
                    this 
     | 
| 
       144 
     | 
    
         
            -
                     
     | 
| 
       145 
     | 
    
         
            -
             
     | 
| 
       146 
     | 
    
         
            -
             
     | 
| 
       147 
     | 
    
         
            -
                    if ( 
     | 
| 
       148 
     | 
    
         
            -
                        this. 
     | 
| 
       149 
     | 
    
         
            -
                        return;
         
     | 
| 
      
 150 
     | 
    
         
            +
                    _BrowserFetcher_instances.add(this);
         
     | 
| 
      
 151 
     | 
    
         
            +
                    _BrowserFetcher_product.set(this, void 0);
         
     | 
| 
      
 152 
     | 
    
         
            +
                    _BrowserFetcher_downloadsFolder.set(this, void 0);
         
     | 
| 
      
 153 
     | 
    
         
            +
                    _BrowserFetcher_downloadHost.set(this, void 0);
         
     | 
| 
      
 154 
     | 
    
         
            +
                    _BrowserFetcher_platform.set(this, void 0);
         
     | 
| 
      
 155 
     | 
    
         
            +
                    __classPrivateFieldSet(this, _BrowserFetcher_product, (options.product || 'chrome').toLowerCase(), "f");
         
     | 
| 
      
 156 
     | 
    
         
            +
                    assert(__classPrivateFieldGet(this, _BrowserFetcher_product, "f") === 'chrome' || __classPrivateFieldGet(this, _BrowserFetcher_product, "f") === 'firefox', `Unknown product: "${options.product}"`);
         
     | 
| 
      
 157 
     | 
    
         
            +
                    __classPrivateFieldSet(this, _BrowserFetcher_downloadsFolder, options.path ||
         
     | 
| 
      
 158 
     | 
    
         
            +
                        path.join(projectRoot, browserConfig[__classPrivateFieldGet(this, _BrowserFetcher_product, "f")].destination), "f");
         
     | 
| 
      
 159 
     | 
    
         
            +
                    __classPrivateFieldSet(this, _BrowserFetcher_downloadHost, options.host || browserConfig[__classPrivateFieldGet(this, _BrowserFetcher_product, "f")].host, "f");
         
     | 
| 
      
 160 
     | 
    
         
            +
                    if (options.platform) {
         
     | 
| 
      
 161 
     | 
    
         
            +
                        __classPrivateFieldSet(this, _BrowserFetcher_platform, options.platform, "f");
         
     | 
| 
       150 
162 
     | 
    
         
             
                    }
         
     | 
| 
       151 
     | 
    
         
            -
                     
     | 
| 
       152 
     | 
    
         
            -
             
     | 
| 
       153 
     | 
    
         
            -
                         
     | 
| 
       154 
     | 
    
         
            -
                             
     | 
| 
       155 
     | 
    
         
            -
                                 
     | 
| 
       156 
     | 
    
         
            -
                                     
     | 
| 
       157 
     | 
    
         
            -
             
     | 
| 
       158 
     | 
    
         
            -
             
     | 
| 
       159 
     | 
    
         
            -
             
     | 
| 
       160 
     | 
    
         
            -
             
     | 
| 
      
 163 
     | 
    
         
            +
                    else {
         
     | 
| 
      
 164 
     | 
    
         
            +
                        const platform = os.platform();
         
     | 
| 
      
 165 
     | 
    
         
            +
                        switch (platform) {
         
     | 
| 
      
 166 
     | 
    
         
            +
                            case 'darwin':
         
     | 
| 
      
 167 
     | 
    
         
            +
                                switch (__classPrivateFieldGet(this, _BrowserFetcher_product, "f")) {
         
     | 
| 
      
 168 
     | 
    
         
            +
                                    case 'chrome':
         
     | 
| 
      
 169 
     | 
    
         
            +
                                        __classPrivateFieldSet(this, _BrowserFetcher_platform, os.arch() === 'arm64' && PUPPETEER_EXPERIMENTAL_CHROMIUM_MAC_ARM
         
     | 
| 
      
 170 
     | 
    
         
            +
                                            ? 'mac_arm'
         
     | 
| 
      
 171 
     | 
    
         
            +
                                            : 'mac', "f");
         
     | 
| 
      
 172 
     | 
    
         
            +
                                        break;
         
     | 
| 
      
 173 
     | 
    
         
            +
                                    case 'firefox':
         
     | 
| 
      
 174 
     | 
    
         
            +
                                        __classPrivateFieldSet(this, _BrowserFetcher_platform, 'mac', "f");
         
     | 
| 
      
 175 
     | 
    
         
            +
                                        break;
         
     | 
| 
      
 176 
     | 
    
         
            +
                                }
         
     | 
| 
      
 177 
     | 
    
         
            +
                                break;
         
     | 
| 
      
 178 
     | 
    
         
            +
                            case 'linux':
         
     | 
| 
      
 179 
     | 
    
         
            +
                                __classPrivateFieldSet(this, _BrowserFetcher_platform, 'linux', "f");
         
     | 
| 
      
 180 
     | 
    
         
            +
                                break;
         
     | 
| 
      
 181 
     | 
    
         
            +
                            case 'win32':
         
     | 
| 
      
 182 
     | 
    
         
            +
                                __classPrivateFieldSet(this, _BrowserFetcher_platform, os.arch() === 'x64' ? 'win64' : 'win32', "f");
         
     | 
| 
      
 183 
     | 
    
         
            +
                                return;
         
     | 
| 
      
 184 
     | 
    
         
            +
                            default:
         
     | 
| 
      
 185 
     | 
    
         
            +
                                assert(false, 'Unsupported platform: ' + platform);
         
     | 
| 
       161 
186 
     | 
    
         
             
                        }
         
     | 
| 
       162 
187 
     | 
    
         
             
                    }
         
     | 
| 
       163 
     | 
    
         
            -
                     
     | 
| 
       164 
     | 
    
         
            -
                        this._platform = 'linux';
         
     | 
| 
       165 
     | 
    
         
            -
                    else if (platform === 'win32')
         
     | 
| 
       166 
     | 
    
         
            -
                        this._platform = os.arch() === 'x64' ? 'win64' : 'win32';
         
     | 
| 
       167 
     | 
    
         
            -
                    else
         
     | 
| 
       168 
     | 
    
         
            -
                        assert(this._platform, 'Unsupported platform: ' + platform);
         
     | 
| 
      
 188 
     | 
    
         
            +
                    assert(downloadURLs[__classPrivateFieldGet(this, _BrowserFetcher_product, "f")][__classPrivateFieldGet(this, _BrowserFetcher_platform, "f")], 'Unsupported platform: ' + __classPrivateFieldGet(this, _BrowserFetcher_platform, "f"));
         
     | 
| 
       169 
189 
     | 
    
         
             
                }
         
     | 
| 
       170 
190 
     | 
    
         
             
                /**
         
     | 
| 
       171 
191 
     | 
    
         
             
                 * @returns Returns the current `Platform`, which is one of `mac`, `linux`,
         
     | 
| 
       172 
192 
     | 
    
         
             
                 * `win32` or `win64`.
         
     | 
| 
       173 
193 
     | 
    
         
             
                 */
         
     | 
| 
       174 
194 
     | 
    
         
             
                platform() {
         
     | 
| 
       175 
     | 
    
         
            -
                    return this 
     | 
| 
      
 195 
     | 
    
         
            +
                    return __classPrivateFieldGet(this, _BrowserFetcher_platform, "f");
         
     | 
| 
       176 
196 
     | 
    
         
             
                }
         
     | 
| 
       177 
197 
     | 
    
         
             
                /**
         
     | 
| 
       178 
198 
     | 
    
         
             
                 * @returns Returns the current `Product`, which is one of `chrome` or
         
     | 
| 
       179 
199 
     | 
    
         
             
                 * `firefox`.
         
     | 
| 
       180 
200 
     | 
    
         
             
                 */
         
     | 
| 
       181 
201 
     | 
    
         
             
                product() {
         
     | 
| 
       182 
     | 
    
         
            -
                    return this 
     | 
| 
      
 202 
     | 
    
         
            +
                    return __classPrivateFieldGet(this, _BrowserFetcher_product, "f");
         
     | 
| 
       183 
203 
     | 
    
         
             
                }
         
     | 
| 
       184 
204 
     | 
    
         
             
                /**
         
     | 
| 
       185 
205 
     | 
    
         
             
                 * @returns The download host being used.
         
     | 
| 
       186 
206 
     | 
    
         
             
                 */
         
     | 
| 
       187 
207 
     | 
    
         
             
                host() {
         
     | 
| 
       188 
     | 
    
         
            -
                    return this 
     | 
| 
      
 208 
     | 
    
         
            +
                    return __classPrivateFieldGet(this, _BrowserFetcher_downloadHost, "f");
         
     | 
| 
       189 
209 
     | 
    
         
             
                }
         
     | 
| 
       190 
210 
     | 
    
         
             
                /**
         
     | 
| 
       191 
211 
     | 
    
         
             
                 * Initiates a HEAD request to check if the revision is available.
         
     | 
| 
         @@ -196,12 +216,12 @@ export class BrowserFetcher { 
     | 
|
| 
       196 
216 
     | 
    
         
             
                 * from the host.
         
     | 
| 
       197 
217 
     | 
    
         
             
                 */
         
     | 
| 
       198 
218 
     | 
    
         
             
                canDownload(revision) {
         
     | 
| 
       199 
     | 
    
         
            -
                    const url = downloadURL(this 
     | 
| 
       200 
     | 
    
         
            -
                    return new Promise( 
     | 
| 
       201 
     | 
    
         
            -
                        const request = httpRequest(url, 'HEAD',  
     | 
| 
      
 219 
     | 
    
         
            +
                    const url = downloadURL(__classPrivateFieldGet(this, _BrowserFetcher_product, "f"), __classPrivateFieldGet(this, _BrowserFetcher_platform, "f"), __classPrivateFieldGet(this, _BrowserFetcher_downloadHost, "f"), revision);
         
     | 
| 
      
 220 
     | 
    
         
            +
                    return new Promise(resolve => {
         
     | 
| 
      
 221 
     | 
    
         
            +
                        const request = httpRequest(url, 'HEAD', response => {
         
     | 
| 
       202 
222 
     | 
    
         
             
                            resolve(response.statusCode === 200);
         
     | 
| 
       203 
223 
     | 
    
         
             
                        }, false);
         
     | 
| 
       204 
     | 
    
         
            -
                        request.on('error',  
     | 
| 
      
 224 
     | 
    
         
            +
                        request.on('error', error => {
         
     | 
| 
       205 
225 
     | 
    
         
             
                            console.error(error);
         
     | 
| 
       206 
226 
     | 
    
         
             
                            resolve(false);
         
     | 
| 
       207 
227 
     | 
    
         
             
                        });
         
     | 
| 
         @@ -218,30 +238,35 @@ export class BrowserFetcher { 
     | 
|
| 
       218 
238 
     | 
    
         
             
                 * and extracted.
         
     | 
| 
       219 
239 
     | 
    
         
             
                 */
         
     | 
| 
       220 
240 
     | 
    
         
             
                async download(revision, progressCallback = () => { }) {
         
     | 
| 
       221 
     | 
    
         
            -
                    const url = downloadURL(this 
     | 
| 
      
 241 
     | 
    
         
            +
                    const url = downloadURL(__classPrivateFieldGet(this, _BrowserFetcher_product, "f"), __classPrivateFieldGet(this, _BrowserFetcher_platform, "f"), __classPrivateFieldGet(this, _BrowserFetcher_downloadHost, "f"), revision);
         
     | 
| 
       222 
242 
     | 
    
         
             
                    const fileName = url.split('/').pop();
         
     | 
| 
       223 
     | 
    
         
            -
                     
     | 
| 
       224 
     | 
    
         
            -
                    const  
     | 
| 
       225 
     | 
    
         
            -
                     
     | 
| 
      
 243 
     | 
    
         
            +
                    assert(fileName, `A malformed download URL was found: ${url}.`);
         
     | 
| 
      
 244 
     | 
    
         
            +
                    const archivePath = path.join(__classPrivateFieldGet(this, _BrowserFetcher_downloadsFolder, "f"), fileName);
         
     | 
| 
      
 245 
     | 
    
         
            +
                    const outputPath = __classPrivateFieldGet(this, _BrowserFetcher_instances, "m", _BrowserFetcher_getFolderPath).call(this, revision);
         
     | 
| 
      
 246 
     | 
    
         
            +
                    if (await existsAsync(outputPath)) {
         
     | 
| 
       226 
247 
     | 
    
         
             
                        return this.revisionInfo(revision);
         
     | 
| 
       227 
     | 
    
         
            -
                     
     | 
| 
       228 
     | 
    
         
            -
             
     | 
| 
      
 248 
     | 
    
         
            +
                    }
         
     | 
| 
      
 249 
     | 
    
         
            +
                    if (!(await existsAsync(__classPrivateFieldGet(this, _BrowserFetcher_downloadsFolder, "f")))) {
         
     | 
| 
      
 250 
     | 
    
         
            +
                        await mkdirAsync(__classPrivateFieldGet(this, _BrowserFetcher_downloadsFolder, "f"));
         
     | 
| 
      
 251 
     | 
    
         
            +
                    }
         
     | 
| 
       229 
252 
     | 
    
         
             
                    // Use system Chromium builds on Linux ARM devices
         
     | 
| 
       230 
253 
     | 
    
         
             
                    if (os.platform() !== 'darwin' && os.arch() === 'arm64') {
         
     | 
| 
       231 
254 
     | 
    
         
             
                        handleArm64();
         
     | 
| 
       232 
255 
     | 
    
         
             
                        return;
         
     | 
| 
       233 
256 
     | 
    
         
             
                    }
         
     | 
| 
       234 
257 
     | 
    
         
             
                    try {
         
     | 
| 
       235 
     | 
    
         
            -
                        await  
     | 
| 
      
 258 
     | 
    
         
            +
                        await _downloadFile(url, archivePath, progressCallback);
         
     | 
| 
       236 
259 
     | 
    
         
             
                        await install(archivePath, outputPath);
         
     | 
| 
       237 
260 
     | 
    
         
             
                    }
         
     | 
| 
       238 
261 
     | 
    
         
             
                    finally {
         
     | 
| 
       239 
     | 
    
         
            -
                        if (await existsAsync(archivePath))
         
     | 
| 
      
 262 
     | 
    
         
            +
                        if (await existsAsync(archivePath)) {
         
     | 
| 
       240 
263 
     | 
    
         
             
                            await unlinkAsync(archivePath);
         
     | 
| 
      
 264 
     | 
    
         
            +
                        }
         
     | 
| 
       241 
265 
     | 
    
         
             
                    }
         
     | 
| 
       242 
266 
     | 
    
         
             
                    const revisionInfo = this.revisionInfo(revision);
         
     | 
| 
       243 
     | 
    
         
            -
                    if (revisionInfo)
         
     | 
| 
      
 267 
     | 
    
         
            +
                    if (revisionInfo) {
         
     | 
| 
       244 
268 
     | 
    
         
             
                        await chmodAsync(revisionInfo.executablePath, 0o755);
         
     | 
| 
      
 269 
     | 
    
         
            +
                    }
         
     | 
| 
       245 
270 
     | 
    
         
             
                    return revisionInfo;
         
     | 
| 
       246 
271 
     | 
    
         
             
                }
         
     | 
| 
       247 
272 
     | 
    
         
             
                /**
         
     | 
| 
         @@ -251,13 +276,21 @@ export class BrowserFetcher { 
     | 
|
| 
       251 
276 
     | 
    
         
             
                 * available locally on disk.
         
     | 
| 
       252 
277 
     | 
    
         
             
                 */
         
     | 
| 
       253 
278 
     | 
    
         
             
                async localRevisions() {
         
     | 
| 
       254 
     | 
    
         
            -
                    if (!(await existsAsync(this 
     | 
| 
      
 279 
     | 
    
         
            +
                    if (!(await existsAsync(__classPrivateFieldGet(this, _BrowserFetcher_downloadsFolder, "f")))) {
         
     | 
| 
       255 
280 
     | 
    
         
             
                        return [];
         
     | 
| 
       256 
     | 
    
         
            -
                     
     | 
| 
      
 281 
     | 
    
         
            +
                    }
         
     | 
| 
      
 282 
     | 
    
         
            +
                    const fileNames = await readdirAsync(__classPrivateFieldGet(this, _BrowserFetcher_downloadsFolder, "f"));
         
     | 
| 
       257 
283 
     | 
    
         
             
                    return fileNames
         
     | 
| 
       258 
     | 
    
         
            -
                        .map( 
     | 
| 
       259 
     | 
    
         
            -
                         
     | 
| 
       260 
     | 
    
         
            -
             
     | 
| 
      
 284 
     | 
    
         
            +
                        .map(fileName => {
         
     | 
| 
      
 285 
     | 
    
         
            +
                        return parseFolderPath(__classPrivateFieldGet(this, _BrowserFetcher_product, "f"), fileName);
         
     | 
| 
      
 286 
     | 
    
         
            +
                    })
         
     | 
| 
      
 287 
     | 
    
         
            +
                        .filter((entry) => {
         
     | 
| 
      
 288 
     | 
    
         
            +
                        var _a;
         
     | 
| 
      
 289 
     | 
    
         
            +
                        return (_a = (entry && entry.platform === __classPrivateFieldGet(this, _BrowserFetcher_platform, "f"))) !== null && _a !== void 0 ? _a : false;
         
     | 
| 
      
 290 
     | 
    
         
            +
                    })
         
     | 
| 
      
 291 
     | 
    
         
            +
                        .map(entry => {
         
     | 
| 
      
 292 
     | 
    
         
            +
                        return entry.revision;
         
     | 
| 
      
 293 
     | 
    
         
            +
                    });
         
     | 
| 
       261 
294 
     | 
    
         
             
                }
         
     | 
| 
       262 
295 
     | 
    
         
             
                /**
         
     | 
| 
       263 
296 
     | 
    
         
             
                 * @remarks
         
     | 
| 
         @@ -267,40 +300,51 @@ export class BrowserFetcher { 
     | 
|
| 
       267 
300 
     | 
    
         
             
                 * throws if the revision has not been downloaded.
         
     | 
| 
       268 
301 
     | 
    
         
             
                 */
         
     | 
| 
       269 
302 
     | 
    
         
             
                async remove(revision) {
         
     | 
| 
       270 
     | 
    
         
            -
                    const folderPath = this. 
     | 
| 
      
 303 
     | 
    
         
            +
                    const folderPath = __classPrivateFieldGet(this, _BrowserFetcher_instances, "m", _BrowserFetcher_getFolderPath).call(this, revision);
         
     | 
| 
       271 
304 
     | 
    
         
             
                    assert(await existsAsync(folderPath), `Failed to remove: revision ${revision} is not downloaded`);
         
     | 
| 
       272 
     | 
    
         
            -
                    await new Promise( 
     | 
| 
      
 305 
     | 
    
         
            +
                    await new Promise(fulfill => {
         
     | 
| 
      
 306 
     | 
    
         
            +
                        return removeRecursive(folderPath, fulfill);
         
     | 
| 
      
 307 
     | 
    
         
            +
                    });
         
     | 
| 
       273 
308 
     | 
    
         
             
                }
         
     | 
| 
       274 
309 
     | 
    
         
             
                /**
         
     | 
| 
       275 
310 
     | 
    
         
             
                 * @param revision - The revision to get info for.
         
     | 
| 
       276 
311 
     | 
    
         
             
                 * @returns The revision info for the given revision.
         
     | 
| 
       277 
312 
     | 
    
         
             
                 */
         
     | 
| 
       278 
313 
     | 
    
         
             
                revisionInfo(revision) {
         
     | 
| 
       279 
     | 
    
         
            -
                    const folderPath = this. 
     | 
| 
      
 314 
     | 
    
         
            +
                    const folderPath = __classPrivateFieldGet(this, _BrowserFetcher_instances, "m", _BrowserFetcher_getFolderPath).call(this, revision);
         
     | 
| 
       280 
315 
     | 
    
         
             
                    let executablePath = '';
         
     | 
| 
       281 
     | 
    
         
            -
                    if (this 
     | 
| 
       282 
     | 
    
         
            -
                        if (this 
     | 
| 
       283 
     | 
    
         
            -
                            executablePath = path.join(folderPath, archiveName(this 
     | 
| 
       284 
     | 
    
         
            -
                         
     | 
| 
       285 
     | 
    
         
            -
             
     | 
| 
       286 
     | 
    
         
            -
             
     | 
| 
       287 
     | 
    
         
            -
             
     | 
| 
       288 
     | 
    
         
            -
                        else
         
     | 
| 
       289 
     | 
    
         
            -
                             
     | 
| 
      
 316 
     | 
    
         
            +
                    if (__classPrivateFieldGet(this, _BrowserFetcher_product, "f") === 'chrome') {
         
     | 
| 
      
 317 
     | 
    
         
            +
                        if (__classPrivateFieldGet(this, _BrowserFetcher_platform, "f") === 'mac' || __classPrivateFieldGet(this, _BrowserFetcher_platform, "f") === 'mac_arm') {
         
     | 
| 
      
 318 
     | 
    
         
            +
                            executablePath = path.join(folderPath, archiveName(__classPrivateFieldGet(this, _BrowserFetcher_product, "f"), __classPrivateFieldGet(this, _BrowserFetcher_platform, "f"), revision), 'Chromium.app', 'Contents', 'MacOS', 'Chromium');
         
     | 
| 
      
 319 
     | 
    
         
            +
                        }
         
     | 
| 
      
 320 
     | 
    
         
            +
                        else if (__classPrivateFieldGet(this, _BrowserFetcher_platform, "f") === 'linux') {
         
     | 
| 
      
 321 
     | 
    
         
            +
                            executablePath = path.join(folderPath, archiveName(__classPrivateFieldGet(this, _BrowserFetcher_product, "f"), __classPrivateFieldGet(this, _BrowserFetcher_platform, "f"), revision), 'chrome');
         
     | 
| 
      
 322 
     | 
    
         
            +
                        }
         
     | 
| 
      
 323 
     | 
    
         
            +
                        else if (__classPrivateFieldGet(this, _BrowserFetcher_platform, "f") === 'win32' || __classPrivateFieldGet(this, _BrowserFetcher_platform, "f") === 'win64') {
         
     | 
| 
      
 324 
     | 
    
         
            +
                            executablePath = path.join(folderPath, archiveName(__classPrivateFieldGet(this, _BrowserFetcher_product, "f"), __classPrivateFieldGet(this, _BrowserFetcher_platform, "f"), revision), 'chrome.exe');
         
     | 
| 
      
 325 
     | 
    
         
            +
                        }
         
     | 
| 
      
 326 
     | 
    
         
            +
                        else {
         
     | 
| 
      
 327 
     | 
    
         
            +
                            throw new Error('Unsupported platform: ' + __classPrivateFieldGet(this, _BrowserFetcher_platform, "f"));
         
     | 
| 
      
 328 
     | 
    
         
            +
                        }
         
     | 
| 
       290 
329 
     | 
    
         
             
                    }
         
     | 
| 
       291 
     | 
    
         
            -
                    else if (this 
     | 
| 
       292 
     | 
    
         
            -
                        if (this 
     | 
| 
      
 330 
     | 
    
         
            +
                    else if (__classPrivateFieldGet(this, _BrowserFetcher_product, "f") === 'firefox') {
         
     | 
| 
      
 331 
     | 
    
         
            +
                        if (__classPrivateFieldGet(this, _BrowserFetcher_platform, "f") === 'mac' || __classPrivateFieldGet(this, _BrowserFetcher_platform, "f") === 'mac_arm') {
         
     | 
| 
       293 
332 
     | 
    
         
             
                            executablePath = path.join(folderPath, 'Firefox Nightly.app', 'Contents', 'MacOS', 'firefox');
         
     | 
| 
       294 
     | 
    
         
            -
                         
     | 
| 
      
 333 
     | 
    
         
            +
                        }
         
     | 
| 
      
 334 
     | 
    
         
            +
                        else if (__classPrivateFieldGet(this, _BrowserFetcher_platform, "f") === 'linux') {
         
     | 
| 
       295 
335 
     | 
    
         
             
                            executablePath = path.join(folderPath, 'firefox', 'firefox');
         
     | 
| 
       296 
     | 
    
         
            -
                         
     | 
| 
      
 336 
     | 
    
         
            +
                        }
         
     | 
| 
      
 337 
     | 
    
         
            +
                        else if (__classPrivateFieldGet(this, _BrowserFetcher_platform, "f") === 'win32' || __classPrivateFieldGet(this, _BrowserFetcher_platform, "f") === 'win64') {
         
     | 
| 
       297 
338 
     | 
    
         
             
                            executablePath = path.join(folderPath, 'firefox', 'firefox.exe');
         
     | 
| 
       298 
     | 
    
         
            -
                         
     | 
| 
       299 
     | 
    
         
            -
             
     | 
| 
      
 339 
     | 
    
         
            +
                        }
         
     | 
| 
      
 340 
     | 
    
         
            +
                        else {
         
     | 
| 
      
 341 
     | 
    
         
            +
                            throw new Error('Unsupported platform: ' + __classPrivateFieldGet(this, _BrowserFetcher_platform, "f"));
         
     | 
| 
      
 342 
     | 
    
         
            +
                        }
         
     | 
| 
      
 343 
     | 
    
         
            +
                    }
         
     | 
| 
      
 344 
     | 
    
         
            +
                    else {
         
     | 
| 
      
 345 
     | 
    
         
            +
                        throw new Error('Unsupported product: ' + __classPrivateFieldGet(this, _BrowserFetcher_product, "f"));
         
     | 
| 
       300 
346 
     | 
    
         
             
                    }
         
     | 
| 
       301 
     | 
    
         
            -
                     
     | 
| 
       302 
     | 
    
         
            -
                        throw new Error('Unsupported product: ' + this._product);
         
     | 
| 
       303 
     | 
    
         
            -
                    const url = downloadURL(this._product, this._platform, this._downloadHost, revision);
         
     | 
| 
      
 347 
     | 
    
         
            +
                    const url = downloadURL(__classPrivateFieldGet(this, _BrowserFetcher_product, "f"), __classPrivateFieldGet(this, _BrowserFetcher_platform, "f"), __classPrivateFieldGet(this, _BrowserFetcher_downloadHost, "f"), revision);
         
     | 
| 
       304 
348 
     | 
    
         
             
                    const local = fs.existsSync(folderPath);
         
     | 
| 
       305 
349 
     | 
    
         
             
                    debugFetcher({
         
     | 
| 
       306 
350 
     | 
    
         
             
                        revision,
         
     | 
| 
         @@ -308,7 +352,7 @@ export class BrowserFetcher { 
     | 
|
| 
       308 
352 
     | 
    
         
             
                        folderPath,
         
     | 
| 
       309 
353 
     | 
    
         
             
                        local,
         
     | 
| 
       310 
354 
     | 
    
         
             
                        url,
         
     | 
| 
       311 
     | 
    
         
            -
                        product: this 
     | 
| 
      
 355 
     | 
    
         
            +
                        product: __classPrivateFieldGet(this, _BrowserFetcher_product, "f"),
         
     | 
| 
       312 
356 
     | 
    
         
             
                    });
         
     | 
| 
       313 
357 
     | 
    
         
             
                    return {
         
     | 
| 
       314 
358 
     | 
    
         
             
                        revision,
         
     | 
| 
         @@ -316,39 +360,39 @@ export class BrowserFetcher { 
     | 
|
| 
       316 
360 
     | 
    
         
             
                        folderPath,
         
     | 
| 
       317 
361 
     | 
    
         
             
                        local,
         
     | 
| 
       318 
362 
     | 
    
         
             
                        url,
         
     | 
| 
       319 
     | 
    
         
            -
                        product: this 
     | 
| 
      
 363 
     | 
    
         
            +
                        product: __classPrivateFieldGet(this, _BrowserFetcher_product, "f"),
         
     | 
| 
       320 
364 
     | 
    
         
             
                    };
         
     | 
| 
       321 
365 
     | 
    
         
             
                }
         
     | 
| 
       322 
     | 
    
         
            -
                /**
         
     | 
| 
       323 
     | 
    
         
            -
                 * @internal
         
     | 
| 
       324 
     | 
    
         
            -
                 */
         
     | 
| 
       325 
     | 
    
         
            -
                _getFolderPath(revision) {
         
     | 
| 
       326 
     | 
    
         
            -
                    return path.resolve(this._downloadsFolder, `${this._platform}-${revision}`);
         
     | 
| 
       327 
     | 
    
         
            -
                }
         
     | 
| 
       328 
366 
     | 
    
         
             
            }
         
     | 
| 
      
 367 
     | 
    
         
            +
            _BrowserFetcher_product = new WeakMap(), _BrowserFetcher_downloadsFolder = new WeakMap(), _BrowserFetcher_downloadHost = new WeakMap(), _BrowserFetcher_platform = new WeakMap(), _BrowserFetcher_instances = new WeakSet(), _BrowserFetcher_getFolderPath = function _BrowserFetcher_getFolderPath(revision) {
         
     | 
| 
      
 368 
     | 
    
         
            +
                return path.resolve(__classPrivateFieldGet(this, _BrowserFetcher_downloadsFolder, "f"), `${__classPrivateFieldGet(this, _BrowserFetcher_platform, "f")}-${revision}`);
         
     | 
| 
      
 369 
     | 
    
         
            +
            };
         
     | 
| 
       329 
370 
     | 
    
         
             
            function parseFolderPath(product, folderPath) {
         
     | 
| 
       330 
371 
     | 
    
         
             
                const name = path.basename(folderPath);
         
     | 
| 
       331 
372 
     | 
    
         
             
                const splits = name.split('-');
         
     | 
| 
       332 
     | 
    
         
            -
                if (splits.length !== 2)
         
     | 
| 
       333 
     | 
    
         
            -
                    return 
     | 
| 
      
 373 
     | 
    
         
            +
                if (splits.length !== 2) {
         
     | 
| 
      
 374 
     | 
    
         
            +
                    return;
         
     | 
| 
      
 375 
     | 
    
         
            +
                }
         
     | 
| 
       334 
376 
     | 
    
         
             
                const [platform, revision] = splits;
         
     | 
| 
       335 
     | 
    
         
            -
                if (!downloadURLs[product] 
     | 
| 
       336 
     | 
    
         
            -
                    return 
     | 
| 
      
 377 
     | 
    
         
            +
                if (!revision || !platform || !(platform in downloadURLs[product])) {
         
     | 
| 
      
 378 
     | 
    
         
            +
                    return;
         
     | 
| 
      
 379 
     | 
    
         
            +
                }
         
     | 
| 
       337 
380 
     | 
    
         
             
                return { product, platform, revision };
         
     | 
| 
       338 
381 
     | 
    
         
             
            }
         
     | 
| 
       339 
382 
     | 
    
         
             
            /**
         
     | 
| 
       340 
383 
     | 
    
         
             
             * @internal
         
     | 
| 
       341 
384 
     | 
    
         
             
             */
         
     | 
| 
       342 
     | 
    
         
            -
            function  
     | 
| 
      
 385 
     | 
    
         
            +
            function _downloadFile(url, destinationPath, progressCallback) {
         
     | 
| 
       343 
386 
     | 
    
         
             
                debugFetcher(`Downloading binary from ${url}`);
         
     | 
| 
       344 
     | 
    
         
            -
                let fulfill 
     | 
| 
       345 
     | 
    
         
            -
                let  
     | 
| 
       346 
     | 
    
         
            -
                let totalBytes = 0;
         
     | 
| 
      
 387 
     | 
    
         
            +
                let fulfill;
         
     | 
| 
      
 388 
     | 
    
         
            +
                let reject;
         
     | 
| 
       347 
389 
     | 
    
         
             
                const promise = new Promise((x, y) => {
         
     | 
| 
       348 
390 
     | 
    
         
             
                    fulfill = x;
         
     | 
| 
       349 
391 
     | 
    
         
             
                    reject = y;
         
     | 
| 
       350 
392 
     | 
    
         
             
                });
         
     | 
| 
       351 
     | 
    
         
            -
                 
     | 
| 
      
 393 
     | 
    
         
            +
                let downloadedBytes = 0;
         
     | 
| 
      
 394 
     | 
    
         
            +
                let totalBytes = 0;
         
     | 
| 
      
 395 
     | 
    
         
            +
                const request = httpRequest(url, 'GET', response => {
         
     | 
| 
       352 
396 
     | 
    
         
             
                    if (response.statusCode !== 200) {
         
     | 
| 
       353 
397 
     | 
    
         
             
                        const error = new Error(`Download failed: server returned code ${response.statusCode}. URL: ${url}`);
         
     | 
| 
       354 
398 
     | 
    
         
             
                        // consume response data to free up memory
         
     | 
| 
         @@ -357,15 +401,21 @@ function downloadFile(url, destinationPath, progressCallback) { 
     | 
|
| 
       357 
401 
     | 
    
         
             
                        return;
         
     | 
| 
       358 
402 
     | 
    
         
             
                    }
         
     | 
| 
       359 
403 
     | 
    
         
             
                    const file = fs.createWriteStream(destinationPath);
         
     | 
| 
       360 
     | 
    
         
            -
                    file.on('finish', () =>  
     | 
| 
       361 
     | 
    
         
            -
             
     | 
| 
      
 404 
     | 
    
         
            +
                    file.on('finish', () => {
         
     | 
| 
      
 405 
     | 
    
         
            +
                        return fulfill();
         
     | 
| 
      
 406 
     | 
    
         
            +
                    });
         
     | 
| 
      
 407 
     | 
    
         
            +
                    file.on('error', error => {
         
     | 
| 
      
 408 
     | 
    
         
            +
                        return reject(error);
         
     | 
| 
      
 409 
     | 
    
         
            +
                    });
         
     | 
| 
       362 
410 
     | 
    
         
             
                    response.pipe(file);
         
     | 
| 
       363 
     | 
    
         
            -
                    totalBytes = parseInt(
         
     | 
| 
       364 
     | 
    
         
            -
                     
     | 
| 
       365 
     | 
    
         
            -
                    if (progressCallback)
         
     | 
| 
      
 411 
     | 
    
         
            +
                    totalBytes = parseInt(response.headers['content-length'], 10);
         
     | 
| 
      
 412 
     | 
    
         
            +
                    if (progressCallback) {
         
     | 
| 
       366 
413 
     | 
    
         
             
                        response.on('data', onData);
         
     | 
| 
      
 414 
     | 
    
         
            +
                    }
         
     | 
| 
      
 415 
     | 
    
         
            +
                });
         
     | 
| 
      
 416 
     | 
    
         
            +
                request.on('error', error => {
         
     | 
| 
      
 417 
     | 
    
         
            +
                    return reject(error);
         
     | 
| 
       367 
418 
     | 
    
         
             
                });
         
     | 
| 
       368 
     | 
    
         
            -
                request.on('error', (error) => reject(error));
         
     | 
| 
       369 
419 
     | 
    
         
             
                return promise;
         
     | 
| 
       370 
420 
     | 
    
         
             
                function onData(chunk) {
         
     | 
| 
       371 
421 
     | 
    
         
             
                    downloadedBytes += chunk.length;
         
     | 
| 
         @@ -374,19 +424,25 @@ function downloadFile(url, destinationPath, progressCallback) { 
     | 
|
| 
       374 
424 
     | 
    
         
             
            }
         
     | 
| 
       375 
425 
     | 
    
         
             
            function install(archivePath, folderPath) {
         
     | 
| 
       376 
426 
     | 
    
         
             
                debugFetcher(`Installing ${archivePath} to ${folderPath}`);
         
     | 
| 
       377 
     | 
    
         
            -
                if (archivePath.endsWith('.zip'))
         
     | 
| 
      
 427 
     | 
    
         
            +
                if (archivePath.endsWith('.zip')) {
         
     | 
| 
       378 
428 
     | 
    
         
             
                    return extractZip(archivePath, { dir: folderPath });
         
     | 
| 
       379 
     | 
    
         
            -
                 
     | 
| 
       380 
     | 
    
         
            -
             
     | 
| 
       381 
     | 
    
         
            -
             
     | 
| 
       382 
     | 
    
         
            -
             
     | 
| 
       383 
     | 
    
         
            -
                else
         
     | 
| 
      
 429 
     | 
    
         
            +
                }
         
     | 
| 
      
 430 
     | 
    
         
            +
                else if (archivePath.endsWith('.tar.bz2')) {
         
     | 
| 
      
 431 
     | 
    
         
            +
                    return _extractTar(archivePath, folderPath);
         
     | 
| 
      
 432 
     | 
    
         
            +
                }
         
     | 
| 
      
 433 
     | 
    
         
            +
                else if (archivePath.endsWith('.dmg')) {
         
     | 
| 
      
 434 
     | 
    
         
            +
                    return mkdirAsync(folderPath).then(() => {
         
     | 
| 
      
 435 
     | 
    
         
            +
                        return _installDMG(archivePath, folderPath);
         
     | 
| 
      
 436 
     | 
    
         
            +
                    });
         
     | 
| 
      
 437 
     | 
    
         
            +
                }
         
     | 
| 
      
 438 
     | 
    
         
            +
                else {
         
     | 
| 
       384 
439 
     | 
    
         
             
                    throw new Error(`Unsupported archive format: ${archivePath}`);
         
     | 
| 
      
 440 
     | 
    
         
            +
                }
         
     | 
| 
       385 
441 
     | 
    
         
             
            }
         
     | 
| 
       386 
442 
     | 
    
         
             
            /**
         
     | 
| 
       387 
443 
     | 
    
         
             
             * @internal
         
     | 
| 
       388 
444 
     | 
    
         
             
             */
         
     | 
| 
       389 
     | 
    
         
            -
            function  
     | 
| 
      
 445 
     | 
    
         
            +
            function _extractTar(tarPath, folderPath) {
         
     | 
| 
       390 
446 
     | 
    
         
             
                return new Promise((fulfill, reject) => {
         
     | 
| 
       391 
447 
     | 
    
         
             
                    const tarStream = tar.extract(folderPath);
         
     | 
| 
       392 
448 
     | 
    
         
             
                    tarStream.on('error', reject);
         
     | 
| 
         @@ -398,49 +454,56 @@ function extractTar(tarPath, folderPath) { 
     | 
|
| 
       398 
454 
     | 
    
         
             
            /**
         
     | 
| 
       399 
455 
     | 
    
         
             
             * @internal
         
     | 
| 
       400 
456 
     | 
    
         
             
             */
         
     | 
| 
       401 
     | 
    
         
            -
            function  
     | 
| 
      
 457 
     | 
    
         
            +
            function _installDMG(dmgPath, folderPath) {
         
     | 
| 
       402 
458 
     | 
    
         
             
                let mountPath;
         
     | 
| 
       403 
     | 
    
         
            -
                 
     | 
| 
      
 459 
     | 
    
         
            +
                return new Promise((fulfill, reject) => {
         
     | 
| 
       404 
460 
     | 
    
         
             
                    const mountCommand = `hdiutil attach -nobrowse -noautoopen "${dmgPath}"`;
         
     | 
| 
       405 
461 
     | 
    
         
             
                    childProcess.exec(mountCommand, (err, stdout) => {
         
     | 
| 
       406 
     | 
    
         
            -
                        if (err)
         
     | 
| 
      
 462 
     | 
    
         
            +
                        if (err) {
         
     | 
| 
       407 
463 
     | 
    
         
             
                            return reject(err);
         
     | 
| 
      
 464 
     | 
    
         
            +
                        }
         
     | 
| 
       408 
465 
     | 
    
         
             
                        const volumes = stdout.match(/\/Volumes\/(.*)/m);
         
     | 
| 
       409 
     | 
    
         
            -
                        if (!volumes)
         
     | 
| 
      
 466 
     | 
    
         
            +
                        if (!volumes) {
         
     | 
| 
       410 
467 
     | 
    
         
             
                            return reject(new Error(`Could not find volume path in ${stdout}`));
         
     | 
| 
      
 468 
     | 
    
         
            +
                        }
         
     | 
| 
       411 
469 
     | 
    
         
             
                        mountPath = volumes[0];
         
     | 
| 
       412 
470 
     | 
    
         
             
                        readdirAsync(mountPath)
         
     | 
| 
       413 
     | 
    
         
            -
                            .then( 
     | 
| 
       414 
     | 
    
         
            -
                            const appName = fileNames.find( 
     | 
| 
       415 
     | 
    
         
            -
             
     | 
| 
      
 471 
     | 
    
         
            +
                            .then(fileNames => {
         
     | 
| 
      
 472 
     | 
    
         
            +
                            const appName = fileNames.find(item => {
         
     | 
| 
      
 473 
     | 
    
         
            +
                                return typeof item === 'string' && item.endsWith('.app');
         
     | 
| 
      
 474 
     | 
    
         
            +
                            });
         
     | 
| 
      
 475 
     | 
    
         
            +
                            if (!appName) {
         
     | 
| 
       416 
476 
     | 
    
         
             
                                return reject(new Error(`Cannot find app in ${mountPath}`));
         
     | 
| 
      
 477 
     | 
    
         
            +
                            }
         
     | 
| 
       417 
478 
     | 
    
         
             
                            const copyPath = path.join(mountPath, appName);
         
     | 
| 
       418 
479 
     | 
    
         
             
                            debugFetcher(`Copying ${copyPath} to ${folderPath}`);
         
     | 
| 
       419 
     | 
    
         
            -
                            childProcess.exec(`cp -R "${copyPath}" "${folderPath}"`,  
     | 
| 
       420 
     | 
    
         
            -
                                if (err)
         
     | 
| 
      
 480 
     | 
    
         
            +
                            childProcess.exec(`cp -R "${copyPath}" "${folderPath}"`, err => {
         
     | 
| 
      
 481 
     | 
    
         
            +
                                if (err) {
         
     | 
| 
       421 
482 
     | 
    
         
             
                                    reject(err);
         
     | 
| 
       422 
     | 
    
         
            -
                                 
     | 
| 
      
 483 
     | 
    
         
            +
                                }
         
     | 
| 
      
 484 
     | 
    
         
            +
                                else {
         
     | 
| 
       423 
485 
     | 
    
         
             
                                    fulfill();
         
     | 
| 
      
 486 
     | 
    
         
            +
                                }
         
     | 
| 
       424 
487 
     | 
    
         
             
                            });
         
     | 
| 
       425 
488 
     | 
    
         
             
                        })
         
     | 
| 
       426 
489 
     | 
    
         
             
                            .catch(reject);
         
     | 
| 
       427 
490 
     | 
    
         
             
                    });
         
     | 
| 
       428 
     | 
    
         
            -
                }
         
     | 
| 
       429 
     | 
    
         
            -
             
     | 
| 
       430 
     | 
    
         
            -
                     
     | 
| 
      
 491 
     | 
    
         
            +
                })
         
     | 
| 
      
 492 
     | 
    
         
            +
                    .catch(error => {
         
     | 
| 
      
 493 
     | 
    
         
            +
                    console.error(error);
         
     | 
| 
      
 494 
     | 
    
         
            +
                })
         
     | 
| 
      
 495 
     | 
    
         
            +
                    .finally(() => {
         
     | 
| 
      
 496 
     | 
    
         
            +
                    if (!mountPath) {
         
     | 
| 
       431 
497 
     | 
    
         
             
                        return;
         
     | 
| 
      
 498 
     | 
    
         
            +
                    }
         
     | 
| 
       432 
499 
     | 
    
         
             
                    const unmountCommand = `hdiutil detach "${mountPath}" -quiet`;
         
     | 
| 
       433 
500 
     | 
    
         
             
                    debugFetcher(`Unmounting ${mountPath}`);
         
     | 
| 
       434 
     | 
    
         
            -
                    childProcess.exec(unmountCommand,  
     | 
| 
       435 
     | 
    
         
            -
                        if (err)
         
     | 
| 
      
 501 
     | 
    
         
            +
                    childProcess.exec(unmountCommand, err => {
         
     | 
| 
      
 502 
     | 
    
         
            +
                        if (err) {
         
     | 
| 
       436 
503 
     | 
    
         
             
                            console.error(`Error unmounting dmg: ${err}`);
         
     | 
| 
      
 504 
     | 
    
         
            +
                        }
         
     | 
| 
       437 
505 
     | 
    
         
             
                    });
         
     | 
| 
       438 
     | 
    
         
            -
                }
         
     | 
| 
       439 
     | 
    
         
            -
                return new Promise(mountAndCopy)
         
     | 
| 
       440 
     | 
    
         
            -
                    .catch((error) => {
         
     | 
| 
       441 
     | 
    
         
            -
                    console.error(error);
         
     | 
| 
       442 
     | 
    
         
            -
                })
         
     | 
| 
       443 
     | 
    
         
            -
                    .finally(unmount);
         
     | 
| 
      
 506 
     | 
    
         
            +
                });
         
     | 
| 
       444 
507 
     | 
    
         
             
            }
         
     | 
| 
       445 
508 
     | 
    
         
             
            function httpRequest(url, method, response, keepAlive = true) {
         
     | 
| 
       446 
509 
     | 
    
         
             
                const urlParsed = URL.parse(url);
         
     | 
| 
         @@ -474,10 +537,15 @@ function httpRequest(url, method, response, keepAlive = true) { 
     | 
|
| 
       474 
537 
     | 
    
         
             
                    }
         
     | 
| 
       475 
538 
     | 
    
         
             
                }
         
     | 
| 
       476 
539 
     | 
    
         
             
                const requestCallback = (res) => {
         
     | 
| 
       477 
     | 
    
         
            -
                    if (res.statusCode  
     | 
| 
      
 540 
     | 
    
         
            +
                    if (res.statusCode &&
         
     | 
| 
      
 541 
     | 
    
         
            +
                        res.statusCode >= 300 &&
         
     | 
| 
      
 542 
     | 
    
         
            +
                        res.statusCode < 400 &&
         
     | 
| 
      
 543 
     | 
    
         
            +
                        res.headers.location) {
         
     | 
| 
       478 
544 
     | 
    
         
             
                        httpRequest(res.headers.location, method, response);
         
     | 
| 
       479 
     | 
    
         
            -
                     
     | 
| 
      
 545 
     | 
    
         
            +
                    }
         
     | 
| 
      
 546 
     | 
    
         
            +
                    else {
         
     | 
| 
       480 
547 
     | 
    
         
             
                        response(res);
         
     | 
| 
      
 548 
     | 
    
         
            +
                    }
         
     | 
| 
       481 
549 
     | 
    
         
             
                };
         
     | 
| 
       482 
550 
     | 
    
         
             
                const request = options.protocol === 'https:'
         
     | 
| 
       483 
551 
     | 
    
         
             
                    ? https.request(options, requestCallback)
         
     |