@checkly/playwright-core 1.51.17-beta.2 → 1.54.2-beta.0
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/ThirdPartyNotices.txt +65 -123
- package/browsers.json +16 -14
- package/index.js +1 -1
- package/lib/androidServerImpl.js +47 -50
- package/lib/browserServerImpl.js +89 -69
- package/lib/checkly/escapeRegExp.js +23 -27
- package/lib/checkly/fetch.js +64 -46
- package/lib/checkly/secretsFilter.js +49 -35
- package/lib/cli/driver.js +71 -69
- package/lib/cli/program.js +400 -359
- package/lib/cli/programWithTestStub.js +51 -45
- package/lib/client/accessibility.js +31 -32
- package/lib/client/android.js +151 -242
- package/lib/client/api.js +135 -283
- package/lib/client/artifact.js +39 -36
- package/lib/client/browser.js +96 -71
- package/lib/client/browserContext.js +314 -345
- package/lib/client/browserType.js +103 -127
- package/lib/client/cdpSession.js +29 -31
- package/lib/client/channelOwner.js +90 -113
- package/lib/client/clientHelper.js +48 -39
- package/lib/client/clientInstrumentation.js +40 -37
- package/lib/client/clientStackTrace.js +41 -37
- package/lib/client/clock.js +36 -36
- package/lib/client/connection.js +188 -214
- package/lib/client/consoleMessage.js +31 -28
- package/lib/client/coverage.js +25 -22
- package/lib/client/dialog.js +30 -31
- package/lib/client/download.js +25 -25
- package/lib/client/electron.js +80 -77
- package/lib/client/elementHandle.js +120 -159
- package/lib/client/errors.js +53 -53
- package/lib/client/eventEmitter.js +124 -121
- package/lib/client/events.js +72 -68
- package/lib/client/fetch.js +166 -190
- package/lib/client/fileChooser.js +25 -24
- package/lib/client/fileUtils.js +31 -28
- package/lib/client/frame.js +207 -306
- package/lib/client/harRouter.js +42 -52
- package/lib/client/input.js +42 -69
- package/lib/client/jsHandle.js +54 -69
- package/lib/client/jsonPipe.js +27 -23
- package/lib/client/localUtils.js +29 -29
- package/lib/client/locator.js +145 -237
- package/lib/client/network.js +282 -307
- package/lib/client/page.js +269 -318
- package/lib/client/platform.js +46 -43
- package/lib/client/playwright.js +51 -76
- package/lib/client/selectors.js +45 -63
- package/lib/client/stream.js +29 -25
- package/lib/client/timeoutSettings.js +55 -41
- package/lib/client/tracing.js +49 -96
- package/lib/client/types.js +26 -22
- package/lib/client/video.js +35 -27
- package/lib/client/waiter.js +69 -88
- package/lib/client/webError.js +25 -23
- package/lib/client/webSocket.js +43 -56
- package/lib/client/worker.js +48 -56
- package/lib/client/writableStream.js +27 -23
- package/lib/generated/bindingsControllerSource.js +28 -0
- package/lib/generated/clockSource.js +26 -6
- package/lib/generated/consoleApiSource.js +26 -6
- package/lib/generated/injectedScriptSource.js +26 -6
- package/lib/generated/pollingRecorderSource.js +26 -6
- package/lib/generated/storageScriptSource.js +28 -0
- package/lib/generated/utilityScriptSource.js +26 -6
- package/lib/generated/webSocketMockSource.js +333 -5
- package/lib/inProcessFactory.js +51 -53
- package/lib/inprocess.js +2 -19
- package/lib/outofprocess.js +51 -46
- package/lib/protocol/serializers.js +153 -134
- package/lib/protocol/validator.js +2807 -2739
- package/lib/protocol/validatorPrimitives.js +114 -73
- package/lib/remote/playwrightConnection.js +88 -242
- package/lib/remote/playwrightServer.js +305 -92
- package/lib/server/accessibility.js +44 -37
- package/lib/server/android/android.js +251 -241
- package/lib/server/android/backendAdb.js +87 -82
- package/lib/server/artifact.js +78 -55
- package/lib/server/bidi/bidiBrowser.js +297 -158
- package/lib/server/bidi/bidiChromium.js +119 -89
- package/lib/server/bidi/bidiConnection.js +66 -83
- package/lib/server/bidi/bidiExecutionContext.js +129 -113
- package/lib/server/bidi/bidiFirefox.js +86 -76
- package/lib/server/bidi/bidiInput.js +106 -117
- package/lib/server/bidi/bidiNetworkManager.js +142 -159
- package/lib/server/bidi/bidiOverCdp.js +57 -58
- package/lib/server/bidi/bidiPage.js +260 -260
- package/lib/server/bidi/bidiPdf.js +52 -86
- package/lib/server/bidi/third_party/bidiCommands.d.js +22 -0
- package/lib/server/bidi/third_party/bidiDeserializer.js +55 -50
- package/lib/server/bidi/third_party/bidiKeyboard.js +236 -220
- package/lib/server/bidi/third_party/bidiProtocol.js +22 -137
- package/lib/server/bidi/third_party/bidiProtocolCore.js +152 -0
- package/lib/server/bidi/third_party/bidiProtocolPermissions.js +42 -0
- package/lib/server/bidi/third_party/bidiSerializer.js +67 -63
- package/lib/server/bidi/third_party/firefoxPrefs.js +141 -119
- package/lib/server/browser.js +93 -95
- package/lib/server/browserContext.js +419 -429
- package/lib/server/browserType.js +186 -216
- package/lib/server/callLog.js +47 -44
- package/lib/server/chromium/chromium.js +235 -203
- package/lib/server/chromium/chromiumSwitches.js +100 -67
- package/lib/server/chromium/crAccessibility.js +157 -131
- package/lib/server/chromium/crBrowser.js +310 -292
- package/lib/server/chromium/crConnection.js +95 -121
- package/lib/server/chromium/crCoverage.js +121 -131
- package/lib/server/chromium/crDevTools.js +60 -51
- package/lib/server/chromium/crDragDrop.js +68 -84
- package/lib/server/chromium/crExecutionContext.js +89 -83
- package/lib/server/chromium/crInput.js +118 -113
- package/lib/server/chromium/crNetworkManager.js +274 -375
- package/lib/server/chromium/crPage.js +536 -593
- package/lib/server/chromium/crPdf.js +54 -86
- package/lib/server/chromium/crProtocolHelper.js +92 -80
- package/lib/server/chromium/crServiceWorker.js +84 -73
- package/lib/server/chromium/defaultFontFamilies.js +152 -135
- package/lib/server/chromium/protocol.d.js +16 -0
- package/lib/server/chromium/videoRecorder.js +66 -99
- package/lib/server/clock.js +107 -83
- package/lib/server/codegen/csharp.js +192 -162
- package/lib/server/codegen/java.js +156 -129
- package/lib/server/codegen/javascript.js +163 -148
- package/lib/server/codegen/jsonl.js +32 -28
- package/lib/server/codegen/language.js +75 -52
- package/lib/server/codegen/languages.js +65 -27
- package/lib/server/codegen/python.js +141 -126
- package/lib/server/codegen/types.js +15 -4
- package/lib/server/console.js +28 -32
- package/lib/server/cookieStore.js +108 -86
- package/lib/server/debugController.js +147 -151
- package/lib/server/debugger.js +86 -78
- package/lib/server/deviceDescriptors.js +37 -24
- package/lib/server/deviceDescriptorsSource.json +238 -128
- package/lib/server/dialog.js +84 -39
- package/lib/server/dispatchers/androidDispatcher.js +257 -148
- package/lib/server/dispatchers/artifactDispatcher.js +79 -79
- package/lib/server/dispatchers/browserContextDispatcher.js +289 -259
- package/lib/server/dispatchers/browserDispatcher.js +96 -148
- package/lib/server/dispatchers/browserTypeDispatcher.js +50 -41
- package/lib/server/dispatchers/cdpSessionDispatcher.js +35 -39
- package/lib/server/dispatchers/debugControllerDispatcher.js +65 -83
- package/lib/server/dispatchers/dialogDispatcher.js +34 -31
- package/lib/server/dispatchers/dispatcher.js +208 -248
- package/lib/server/dispatchers/electronDispatcher.js +66 -70
- package/lib/server/dispatchers/elementHandlerDispatcher.js +164 -216
- package/lib/server/dispatchers/frameDispatcher.js +211 -272
- package/lib/server/dispatchers/jsHandleDispatcher.js +63 -75
- package/lib/server/dispatchers/jsonPipeDispatcher.js +37 -38
- package/lib/server/dispatchers/localUtilsDispatcher.js +121 -119
- package/lib/server/dispatchers/networkDispatchers.js +117 -128
- package/lib/server/dispatchers/pageDispatcher.js +256 -248
- package/lib/server/dispatchers/playwrightDispatcher.js +92 -87
- package/lib/server/dispatchers/streamDispatcher.js +52 -48
- package/lib/server/dispatchers/tracingDispatcher.js +47 -52
- package/lib/server/dispatchers/webSocketRouteDispatcher.js +126 -150
- package/lib/server/dispatchers/writableStreamDispatcher.js +65 -43
- package/lib/server/dom.js +485 -582
- package/lib/server/download.js +47 -37
- package/lib/server/electron/electron.js +216 -243
- package/lib/server/electron/loader.js +9 -37
- package/lib/server/errors.js +47 -46
- package/lib/server/fetch.js +317 -360
- package/lib/server/fileChooser.js +25 -24
- package/lib/server/fileUploadUtils.js +66 -60
- package/lib/server/firefox/ffAccessibility.js +153 -131
- package/lib/server/firefox/ffBrowser.js +268 -305
- package/lib/server/firefox/ffConnection.js +63 -84
- package/lib/server/firefox/ffExecutionContext.js +92 -73
- package/lib/server/firefox/ffInput.js +82 -84
- package/lib/server/firefox/ffNetworkManager.js +137 -114
- package/lib/server/firefox/ffPage.js +261 -293
- package/lib/server/firefox/firefox.js +80 -72
- package/lib/server/firefox/protocol.d.js +16 -0
- package/lib/server/formData.js +107 -35
- package/lib/server/frameSelectors.js +98 -114
- package/lib/server/frames.js +845 -1055
- package/lib/server/har/harRecorder.js +85 -77
- package/lib/server/har/harTracer.js +290 -223
- package/lib/server/harBackend.js +80 -80
- package/lib/server/helper.js +55 -59
- package/lib/server/index.js +59 -99
- package/lib/server/input.js +151 -189
- package/lib/server/instrumentation.js +57 -44
- package/lib/server/javascript.js +133 -134
- package/lib/server/launchApp.js +113 -75
- package/lib/server/localUtils.js +150 -142
- package/lib/server/macEditingCommands.js +141 -137
- package/lib/server/network.js +299 -303
- package/lib/server/page.js +513 -544
- package/lib/server/pipeTransport.js +49 -45
- package/lib/server/playwright.js +58 -67
- package/lib/server/progress.js +137 -68
- package/lib/server/protocolError.js +34 -31
- package/lib/server/recorder/chat.js +70 -86
- package/lib/server/recorder/recorderApp.js +341 -176
- package/lib/server/recorder/recorderInTraceViewer.js +65 -94
- package/lib/server/recorder/recorderRunner.js +93 -116
- package/lib/server/recorder/recorderSignalProcessor.js +83 -0
- package/lib/server/recorder/recorderUtils.js +104 -47
- package/lib/server/recorder/throttledFile.js +42 -30
- package/lib/server/recorder.js +395 -275
- package/lib/server/registry/browserFetcher.js +106 -101
- package/lib/server/registry/dependencies.js +245 -196
- package/lib/server/registry/index.js +930 -803
- package/lib/server/registry/nativeDeps.js +1073 -464
- package/lib/server/registry/oopDownloadBrowserMain.js +57 -75
- package/lib/server/screenshotter.js +160 -191
- package/lib/server/selectors.js +90 -51
- package/lib/server/socksClientCertificatesInterceptor.js +171 -186
- package/lib/server/socksInterceptor.js +62 -70
- package/lib/server/trace/recorder/snapshotter.js +76 -102
- package/lib/server/trace/recorder/snapshotterInjected.js +238 -217
- package/lib/server/trace/recorder/tracing.js +354 -362
- package/lib/server/trace/test/inMemorySnapshotter.js +46 -52
- package/lib/server/trace/viewer/traceViewer.js +160 -147
- package/lib/server/transport.js +119 -134
- package/lib/server/types.js +26 -22
- package/lib/server/usKeyboardLayout.js +135 -545
- package/lib/server/utils/ascii.js +39 -26
- package/lib/server/utils/comparators.js +105 -103
- package/lib/server/utils/crypto.js +157 -112
- package/lib/server/utils/debug.js +36 -32
- package/lib/server/utils/debugLogger.js +77 -48
- package/lib/server/utils/env.js +52 -37
- package/lib/server/utils/eventsHelper.js +29 -28
- package/lib/server/utils/expectUtils.js +31 -26
- package/lib/server/utils/fileUtils.js +123 -136
- package/lib/server/utils/happyEyeballs.js +141 -126
- package/lib/server/utils/hostPlatform.js +84 -120
- package/lib/server/utils/httpServer.js +106 -121
- package/lib/server/utils/image_tools/colorUtils.js +42 -51
- package/lib/server/utils/image_tools/compare.js +44 -43
- package/lib/server/utils/image_tools/imageChannel.js +38 -30
- package/lib/server/utils/image_tools/stats.js +40 -40
- package/lib/server/utils/linuxUtils.js +50 -37
- package/lib/server/utils/network.js +152 -96
- package/lib/server/utils/nodePlatform.js +87 -79
- package/lib/server/utils/pipeTransport.js +44 -42
- package/lib/server/utils/processLauncher.js +111 -121
- package/lib/server/utils/profiler.js +52 -39
- package/lib/server/utils/socksProxy.js +280 -339
- package/lib/server/utils/spawnAsync.js +37 -41
- package/lib/server/utils/task.js +31 -38
- package/lib/server/utils/userAgent.js +73 -66
- package/lib/server/utils/wsServer.js +68 -75
- package/lib/server/utils/zipFile.js +36 -37
- package/lib/server/utils/zones.js +37 -34
- package/lib/server/webkit/protocol.d.js +16 -0
- package/lib/server/webkit/webkit.js +77 -61
- package/lib/server/webkit/wkAccessibility.js +161 -118
- package/lib/server/webkit/wkBrowser.js +193 -184
- package/lib/server/webkit/wkConnection.js +59 -83
- package/lib/server/webkit/wkExecutionContext.js +85 -70
- package/lib/server/webkit/wkInput.js +97 -95
- package/lib/server/webkit/wkInterceptableRequest.js +102 -95
- package/lib/server/webkit/wkPage.js +568 -667
- package/lib/server/webkit/wkProvisionalPage.js +45 -56
- package/lib/server/webkit/wkWorkers.js +79 -79
- package/lib/utils/expectUtils.js +31 -26
- package/lib/utils/isomorphic/ariaSnapshot.js +149 -152
- package/lib/utils/isomorphic/assert.js +28 -22
- package/lib/utils/isomorphic/colors.js +66 -59
- package/lib/utils/isomorphic/cssParser.js +120 -125
- package/lib/utils/isomorphic/cssTokenizer.js +436 -364
- package/lib/utils/isomorphic/headers.js +38 -37
- package/lib/utils/isomorphic/locatorGenerators.js +358 -357
- package/lib/utils/isomorphic/locatorParser.js +96 -105
- package/lib/utils/isomorphic/locatorUtils.js +63 -44
- package/lib/utils/isomorphic/manualPromise.js +46 -39
- package/lib/utils/isomorphic/mimeType.js +447 -25
- package/lib/utils/isomorphic/multimap.js +34 -27
- package/lib/utils/isomorphic/protocolFormatter.js +68 -0
- package/lib/utils/isomorphic/protocolMetainfo.js +321 -0
- package/lib/utils/isomorphic/recorderUtils.js +140 -181
- package/lib/utils/isomorphic/rtti.js +35 -33
- package/lib/utils/isomorphic/selectorParser.js +182 -193
- package/lib/utils/isomorphic/semaphore.js +27 -24
- package/lib/utils/isomorphic/stackTrace.js +87 -98
- package/lib/utils/isomorphic/stringUtils.js +98 -112
- package/lib/utils/isomorphic/time.js +46 -22
- package/lib/utils/isomorphic/timeoutRunner.js +53 -53
- package/lib/utils/isomorphic/traceUtils.js +37 -41
- package/lib/utils/isomorphic/types.js +15 -4
- package/lib/utils/isomorphic/urlMatch.js +113 -67
- package/lib/utils/isomorphic/utilityScriptSerializers.js +251 -0
- package/lib/utils.js +101 -443
- package/lib/utilsBundle.js +101 -52
- package/lib/utilsBundleImpl/index.js +160 -150
- package/lib/zipBundle.js +32 -23
- package/lib/zipBundleImpl.js +4 -4
- package/package.json +1 -1
- package/types/protocol.d.ts +1267 -1057
- package/types/types.d.ts +131 -29
- package/lib/common/socksProxy.js +0 -569
- package/lib/common/timeoutSettings.js +0 -73
- package/lib/common/types.js +0 -5
- package/lib/image_tools/colorUtils.js +0 -98
- package/lib/image_tools/compare.js +0 -108
- package/lib/image_tools/imageChannel.js +0 -70
- package/lib/image_tools/stats.js +0 -102
- package/lib/protocol/debug.js +0 -27
- package/lib/protocol/transport.js +0 -82
- package/lib/server/dispatchers/selectorsDispatcher.js +0 -36
- package/lib/server/isomorphic/utilityScriptSerializers.js +0 -229
- package/lib/server/recorder/contextRecorder.js +0 -290
- package/lib/server/recorder/recorderCollection.js +0 -104
- package/lib/server/recorder/recorderFrontend.js +0 -5
- package/lib/server/storageScript.js +0 -160
- package/lib/server/timeoutSettings.js +0 -74
- package/lib/third_party/diff_match_patch.js +0 -2222
- package/lib/utils/ascii.js +0 -31
- package/lib/utils/comparators.js +0 -171
- package/lib/utils/crypto.js +0 -174
- package/lib/utils/debug.js +0 -46
- package/lib/utils/debugLogger.js +0 -91
- package/lib/utils/env.js +0 -49
- package/lib/utils/eventsHelper.js +0 -38
- package/lib/utils/fileUtils.js +0 -205
- package/lib/utils/happy-eyeballs.js +0 -210
- package/lib/utils/headers.js +0 -52
- package/lib/utils/hostPlatform.js +0 -133
- package/lib/utils/httpServer.js +0 -237
- package/lib/utils/index.js +0 -368
- package/lib/utils/linuxUtils.js +0 -78
- package/lib/utils/manualPromise.js +0 -109
- package/lib/utils/multimap.js +0 -75
- package/lib/utils/network.js +0 -160
- package/lib/utils/processLauncher.js +0 -248
- package/lib/utils/profiler.js +0 -53
- package/lib/utils/rtti.js +0 -44
- package/lib/utils/semaphore.js +0 -51
- package/lib/utils/spawnAsync.js +0 -45
- package/lib/utils/stackTrace.js +0 -121
- package/lib/utils/task.js +0 -58
- package/lib/utils/time.js +0 -37
- package/lib/utils/timeoutRunner.js +0 -66
- package/lib/utils/traceUtils.js +0 -44
- package/lib/utils/userAgent.js +0 -105
- package/lib/utils/wsServer.js +0 -127
- package/lib/utils/zipFile.js +0 -75
- package/lib/utils/zones.js +0 -62
- package/lib/vite/htmlReport/index.html +0 -69
- package/lib/vite/recorder/assets/codeMirrorModule-B9YMkrwa.js +0 -24
- package/lib/vite/recorder/assets/codeMirrorModule-C3UTv-Ge.css +0 -1
- package/lib/vite/recorder/assets/codicon-DCmgc-ay.ttf +0 -0
- package/lib/vite/recorder/assets/index-ELPgmkwA.js +0 -184
- package/lib/vite/recorder/assets/index-eHBmevrY.css +0 -1
- package/lib/vite/recorder/index.html +0 -29
- package/lib/vite/recorder/playwright-logo.svg +0 -9
- package/lib/vite/traceViewer/assets/codeMirrorModule-gU1OOCQO.js +0 -24
- package/lib/vite/traceViewer/assets/defaultSettingsView-B5n_FjMx.js +0 -1
- package/lib/vite/traceViewer/assets/inspectorTab-6Tru8Mn_.js +0 -235
- package/lib/vite/traceViewer/assets/workbench-B_Nj4NA2.js +0 -25
- package/lib/vite/traceViewer/assets/xtermModule-BoAIEibi.js +0 -9
- package/lib/vite/traceViewer/codeMirrorModule.C3UTv-Ge.css +0 -1
- package/lib/vite/traceViewer/codicon.DCmgc-ay.ttf +0 -0
- package/lib/vite/traceViewer/defaultSettingsView.CO3FR0CX.css +0 -1
- package/lib/vite/traceViewer/embedded.DpNPH6mk.js +0 -2
- package/lib/vite/traceViewer/embedded.html +0 -18
- package/lib/vite/traceViewer/embedded.mLhjB5IF.css +0 -1
- package/lib/vite/traceViewer/index.CFOW-Ezb.css +0 -1
- package/lib/vite/traceViewer/index.CuE3SYGw.js +0 -2
- package/lib/vite/traceViewer/index.html +0 -47
- package/lib/vite/traceViewer/inspectorTab.CXDulcFG.css +0 -1
- package/lib/vite/traceViewer/playwright-logo.svg +0 -9
- package/lib/vite/traceViewer/recorder.BD-uZJs7.js +0 -2
- package/lib/vite/traceViewer/recorder.html +0 -17
- package/lib/vite/traceViewer/recorder.tn0RQdqM.css +0 -0
- package/lib/vite/traceViewer/snapshot.html +0 -21
- package/lib/vite/traceViewer/sw.bundle.js +0 -3
- package/lib/vite/traceViewer/uiMode.BatfzHMG.css +0 -1
- package/lib/vite/traceViewer/uiMode.DHrNgddz.js +0 -5
- package/lib/vite/traceViewer/uiMode.html +0 -21
- package/lib/vite/traceViewer/workbench.B9vIAzH9.css +0 -1
- package/lib/vite/traceViewer/xtermModule.Beg8tuEN.css +0 -32
|
@@ -1,125 +1,155 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty
|
|
4
|
-
|
|
2
|
+
var __create = Object.create;
|
|
3
|
+
var __defProp = Object.defineProperty;
|
|
4
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
7
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
8
|
+
var __export = (target, all) => {
|
|
9
|
+
for (var name in all)
|
|
10
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
11
|
+
};
|
|
12
|
+
var __copyProps = (to, from, except, desc) => {
|
|
13
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
14
|
+
for (let key of __getOwnPropNames(from))
|
|
15
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
16
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
17
|
+
}
|
|
18
|
+
return to;
|
|
19
|
+
};
|
|
20
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
21
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
22
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
23
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
24
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
25
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
26
|
+
mod
|
|
27
|
+
));
|
|
28
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
29
|
+
var bidiChromium_exports = {};
|
|
30
|
+
__export(bidiChromium_exports, {
|
|
31
|
+
BidiChromium: () => BidiChromium
|
|
5
32
|
});
|
|
6
|
-
exports
|
|
7
|
-
var
|
|
8
|
-
var
|
|
9
|
-
var
|
|
10
|
-
var
|
|
11
|
-
var
|
|
12
|
-
var
|
|
13
|
-
var
|
|
14
|
-
|
|
15
|
-
/**
|
|
16
|
-
* Copyright (c) Microsoft Corporation.
|
|
17
|
-
*
|
|
18
|
-
* Licensed under the Apache License, Version 2.0 (the 'License');
|
|
19
|
-
* you may not use this file except in compliance with the License.
|
|
20
|
-
* You may obtain a copy of the License at
|
|
21
|
-
*
|
|
22
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
23
|
-
*
|
|
24
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
25
|
-
* distributed under the License is distributed on an 'AS IS' BASIS,
|
|
26
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
27
|
-
* See the License for the specific language governing permissions and
|
|
28
|
-
* limitations under the License.
|
|
29
|
-
*/
|
|
30
|
-
|
|
31
|
-
class BidiChromium extends _browserType.BrowserType {
|
|
33
|
+
module.exports = __toCommonJS(bidiChromium_exports);
|
|
34
|
+
var import_os = __toESM(require("os"));
|
|
35
|
+
var import_ascii = require("../utils/ascii");
|
|
36
|
+
var import_browserType = require("../browserType");
|
|
37
|
+
var import_bidiBrowser = require("./bidiBrowser");
|
|
38
|
+
var import_bidiConnection = require("./bidiConnection");
|
|
39
|
+
var import_chromiumSwitches = require("../chromium/chromiumSwitches");
|
|
40
|
+
var import_chromium = require("../chromium/chromium");
|
|
41
|
+
class BidiChromium extends import_browserType.BrowserType {
|
|
32
42
|
constructor(parent) {
|
|
33
|
-
super(parent,
|
|
34
|
-
this._useBidi = true;
|
|
43
|
+
super(parent, "_bidiChromium");
|
|
35
44
|
}
|
|
36
|
-
async connectToTransport(transport, options) {
|
|
37
|
-
|
|
38
|
-
// bidiOverCdp depends on chromium-bidi which we only have in devDependencies, so
|
|
39
|
-
// we load bidiOverCdp dynamically.
|
|
40
|
-
const bidiTransport = await require('./bidiOverCdp').connectBidiOverCdp(transport);
|
|
45
|
+
async connectToTransport(transport, options, browserLogsCollector) {
|
|
46
|
+
const bidiTransport = await require("./bidiOverCdp").connectBidiOverCdp(transport);
|
|
41
47
|
transport[kBidiOverCdpWrapper] = bidiTransport;
|
|
42
|
-
|
|
48
|
+
try {
|
|
49
|
+
return import_bidiBrowser.BidiBrowser.connect(this.attribution.playwright, bidiTransport, options);
|
|
50
|
+
} catch (e) {
|
|
51
|
+
if (browserLogsCollector.recentLogs().some((log) => log.includes("Failed to create a ProcessSingleton for your profile directory."))) {
|
|
52
|
+
throw new Error(
|
|
53
|
+
"Failed to create a ProcessSingleton for your profile directory. This usually means that the profile is already in use by another instance of Chromium."
|
|
54
|
+
);
|
|
55
|
+
}
|
|
56
|
+
throw e;
|
|
57
|
+
}
|
|
43
58
|
}
|
|
44
59
|
doRewriteStartupLog(error) {
|
|
45
|
-
if (!error.logs)
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
if (!error.logs.includes(
|
|
50
|
-
|
|
60
|
+
if (!error.logs)
|
|
61
|
+
return error;
|
|
62
|
+
if (error.logs.includes("Missing X server"))
|
|
63
|
+
error.logs = "\n" + (0, import_ascii.wrapInASCIIBox)(import_browserType.kNoXServerRunningError, 1);
|
|
64
|
+
if (!error.logs.includes("crbug.com/357670") && !error.logs.includes("No usable sandbox!") && !error.logs.includes("crbug.com/638180"))
|
|
65
|
+
return error;
|
|
66
|
+
error.logs = [
|
|
67
|
+
`Chromium sandboxing failed!`,
|
|
68
|
+
`================================`,
|
|
69
|
+
`To avoid the sandboxing issue, do either of the following:`,
|
|
70
|
+
` - (preferred): Configure your environment to support sandboxing`,
|
|
71
|
+
` - (alternative): Launch Chromium without sandbox using 'chromiumSandbox: false' option`,
|
|
72
|
+
`================================`,
|
|
73
|
+
``
|
|
74
|
+
].join("\n");
|
|
51
75
|
return error;
|
|
52
76
|
}
|
|
53
|
-
amendEnvironment(env
|
|
77
|
+
amendEnvironment(env) {
|
|
54
78
|
return env;
|
|
55
79
|
}
|
|
56
80
|
attemptToGracefullyCloseBrowser(transport) {
|
|
57
81
|
const bidiTransport = transport[kBidiOverCdpWrapper];
|
|
58
|
-
if (bidiTransport)
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
82
|
+
if (bidiTransport)
|
|
83
|
+
transport = bidiTransport;
|
|
84
|
+
transport.send({ method: "browser.close", params: {}, id: import_bidiConnection.kBrowserCloseMessageId });
|
|
85
|
+
}
|
|
86
|
+
supportsPipeTransport() {
|
|
87
|
+
return false;
|
|
64
88
|
}
|
|
65
89
|
defaultArgs(options, isPersistent, userDataDir) {
|
|
66
90
|
const chromeArguments = this._innerDefaultArgs(options);
|
|
67
91
|
chromeArguments.push(`--user-data-dir=${userDataDir}`);
|
|
68
|
-
chromeArguments.push(
|
|
69
|
-
if (isPersistent)
|
|
92
|
+
chromeArguments.push("--remote-debugging-port=0");
|
|
93
|
+
if (isPersistent)
|
|
94
|
+
chromeArguments.push("about:blank");
|
|
95
|
+
else
|
|
96
|
+
chromeArguments.push("--no-startup-window");
|
|
70
97
|
return chromeArguments;
|
|
71
98
|
}
|
|
72
|
-
|
|
73
|
-
(0,
|
|
74
|
-
return new ChromiumReadyState();
|
|
99
|
+
async waitForReadyState(options, browserLogsCollector) {
|
|
100
|
+
return (0, import_chromium.waitForReadyState)({ ...options, cdpPort: 0 }, browserLogsCollector);
|
|
75
101
|
}
|
|
76
102
|
_innerDefaultArgs(options) {
|
|
77
|
-
const {
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
if (
|
|
82
|
-
|
|
83
|
-
if (args.find(arg => !arg.startsWith(
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
chromeArguments.push(
|
|
88
|
-
|
|
89
|
-
|
|
103
|
+
const { args = [] } = options;
|
|
104
|
+
const userDataDirArg = args.find((arg) => arg.startsWith("--user-data-dir"));
|
|
105
|
+
if (userDataDirArg)
|
|
106
|
+
throw this._createUserDataDirArgMisuseError("--user-data-dir");
|
|
107
|
+
if (args.find((arg) => arg.startsWith("--remote-debugging-pipe")))
|
|
108
|
+
throw new Error("Playwright manages remote debugging connection itself.");
|
|
109
|
+
if (args.find((arg) => !arg.startsWith("-")))
|
|
110
|
+
throw new Error("Arguments can not specify page to be opened");
|
|
111
|
+
const chromeArguments = [...(0, import_chromiumSwitches.chromiumSwitches)(options.assistantMode)];
|
|
112
|
+
if (import_os.default.platform() === "darwin") {
|
|
113
|
+
chromeArguments.push("--enable-use-zoom-for-dsf=false");
|
|
114
|
+
if (options.headless)
|
|
115
|
+
chromeArguments.push("--use-angle");
|
|
90
116
|
}
|
|
91
|
-
if (options.devtools)
|
|
117
|
+
if (options.devtools)
|
|
118
|
+
chromeArguments.push("--auto-open-devtools-for-tabs");
|
|
92
119
|
if (options.headless) {
|
|
93
|
-
chromeArguments.push(
|
|
94
|
-
chromeArguments.push(
|
|
120
|
+
chromeArguments.push("--headless");
|
|
121
|
+
chromeArguments.push(
|
|
122
|
+
"--hide-scrollbars",
|
|
123
|
+
"--mute-audio",
|
|
124
|
+
"--blink-settings=primaryHoverType=2,availableHoverTypes=2,primaryPointerType=4,availablePointerTypes=4"
|
|
125
|
+
);
|
|
95
126
|
}
|
|
96
|
-
if (options.chromiumSandbox !== true)
|
|
127
|
+
if (options.chromiumSandbox !== true)
|
|
128
|
+
chromeArguments.push("--no-sandbox");
|
|
97
129
|
const proxy = options.proxyOverride || options.proxy;
|
|
98
130
|
if (proxy) {
|
|
99
131
|
const proxyURL = new URL(proxy.server);
|
|
100
|
-
const isSocks = proxyURL.protocol ===
|
|
101
|
-
|
|
102
|
-
if (isSocks && !this.attribution.playwright.options.socksProxyPort) {
|
|
103
|
-
// https://www.chromium.org/developers/design-documents/network-stack/socks-proxy
|
|
132
|
+
const isSocks = proxyURL.protocol === "socks5:";
|
|
133
|
+
if (isSocks && !options.socksProxyPort) {
|
|
104
134
|
chromeArguments.push(`--host-resolver-rules="MAP * ~NOTFOUND , EXCLUDE ${proxyURL.hostname}"`);
|
|
105
135
|
}
|
|
106
136
|
chromeArguments.push(`--proxy-server=${proxy.server}`);
|
|
107
137
|
const proxyBypassRules = [];
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
if (proxy.bypass)
|
|
111
|
-
|
|
112
|
-
if (
|
|
138
|
+
if (options.socksProxyPort)
|
|
139
|
+
proxyBypassRules.push("<-loopback>");
|
|
140
|
+
if (proxy.bypass)
|
|
141
|
+
proxyBypassRules.push(...proxy.bypass.split(",").map((t) => t.trim()).map((t) => t.startsWith(".") ? "*" + t : t));
|
|
142
|
+
if (!process.env.PLAYWRIGHT_DISABLE_FORCED_CHROMIUM_PROXIED_LOOPBACK && !proxyBypassRules.includes("<-loopback>"))
|
|
143
|
+
proxyBypassRules.push("<-loopback>");
|
|
144
|
+
if (proxyBypassRules.length > 0)
|
|
145
|
+
chromeArguments.push(`--proxy-bypass-list=${proxyBypassRules.join(";")}`);
|
|
113
146
|
}
|
|
114
147
|
chromeArguments.push(...args);
|
|
115
148
|
return chromeArguments;
|
|
116
149
|
}
|
|
117
150
|
}
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
}
|
|
124
|
-
}
|
|
125
|
-
const kBidiOverCdpWrapper = Symbol('kBidiConnectionWrapper');
|
|
151
|
+
const kBidiOverCdpWrapper = Symbol("kBidiConnectionWrapper");
|
|
152
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
153
|
+
0 && (module.exports = {
|
|
154
|
+
BidiChromium
|
|
155
|
+
});
|
|
@@ -1,71 +1,64 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.
|
|
4
|
-
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __export = (target, all) => {
|
|
7
|
+
for (var name in all)
|
|
8
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
9
|
+
};
|
|
10
|
+
var __copyProps = (to, from, except, desc) => {
|
|
11
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
12
|
+
for (let key of __getOwnPropNames(from))
|
|
13
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
14
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
15
|
+
}
|
|
16
|
+
return to;
|
|
17
|
+
};
|
|
18
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
+
var bidiConnection_exports = {};
|
|
20
|
+
__export(bidiConnection_exports, {
|
|
21
|
+
BidiConnection: () => BidiConnection,
|
|
22
|
+
BidiSession: () => BidiSession,
|
|
23
|
+
kBrowserCloseMessageId: () => kBrowserCloseMessageId
|
|
5
24
|
});
|
|
6
|
-
|
|
7
|
-
var
|
|
8
|
-
var
|
|
9
|
-
var
|
|
10
|
-
var
|
|
11
|
-
|
|
12
|
-
* Copyright (c) Microsoft Corporation.
|
|
13
|
-
*
|
|
14
|
-
* Licensed under the Apache License, Version 2.0 (the 'License');
|
|
15
|
-
* you may not use this file except in compliance with the License.
|
|
16
|
-
* You may obtain a copy of the License at
|
|
17
|
-
*
|
|
18
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
19
|
-
*
|
|
20
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
21
|
-
* distributed under the License is distributed on an 'AS IS' BASIS,
|
|
22
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
23
|
-
* See the License for the specific language governing permissions and
|
|
24
|
-
* limitations under the License.
|
|
25
|
-
*/
|
|
26
|
-
|
|
27
|
-
// BidiPlaywright uses this special id to issue Browser.close command which we
|
|
28
|
-
// should ignore.
|
|
29
|
-
const kBrowserCloseMessageId = exports.kBrowserCloseMessageId = 0;
|
|
25
|
+
module.exports = __toCommonJS(bidiConnection_exports);
|
|
26
|
+
var import_events = require("events");
|
|
27
|
+
var import_debugLogger = require("../utils/debugLogger");
|
|
28
|
+
var import_helper = require("../helper");
|
|
29
|
+
var import_protocolError = require("../protocolError");
|
|
30
|
+
const kBrowserCloseMessageId = 0;
|
|
30
31
|
class BidiConnection {
|
|
31
32
|
constructor(transport, onDisconnect, protocolLogger, browserLogsCollector) {
|
|
32
|
-
this._transport = void 0;
|
|
33
|
-
this._onDisconnect = void 0;
|
|
34
|
-
this._protocolLogger = void 0;
|
|
35
|
-
this._browserLogsCollector = void 0;
|
|
36
|
-
this._browserDisconnectedLogs = void 0;
|
|
37
33
|
this._lastId = 0;
|
|
38
34
|
this._closed = false;
|
|
39
|
-
this.
|
|
40
|
-
this._browsingContextToSession = new Map();
|
|
35
|
+
this._browsingContextToSession = /* @__PURE__ */ new Map();
|
|
41
36
|
this._transport = transport;
|
|
42
37
|
this._onDisconnect = onDisconnect;
|
|
43
38
|
this._protocolLogger = protocolLogger;
|
|
44
39
|
this._browserLogsCollector = browserLogsCollector;
|
|
45
|
-
this.browserSession = new BidiSession(this,
|
|
40
|
+
this.browserSession = new BidiSession(this, "", (message) => {
|
|
46
41
|
this.rawSend(message);
|
|
47
42
|
});
|
|
48
43
|
this._transport.onmessage = this._dispatchMessage.bind(this);
|
|
49
|
-
// onclose should be set last, since it can be immediately called.
|
|
50
44
|
this._transport.onclose = this._onClose.bind(this);
|
|
51
45
|
}
|
|
52
46
|
nextMessageId() {
|
|
53
47
|
return ++this._lastId;
|
|
54
48
|
}
|
|
55
49
|
rawSend(message) {
|
|
56
|
-
this._protocolLogger(
|
|
50
|
+
this._protocolLogger("send", message);
|
|
57
51
|
this._transport.send(message);
|
|
58
52
|
}
|
|
59
53
|
_dispatchMessage(message) {
|
|
60
|
-
this._protocolLogger(
|
|
54
|
+
this._protocolLogger("receive", message);
|
|
61
55
|
const object = message;
|
|
62
|
-
|
|
63
|
-
// route them based on BrowsingContext.
|
|
64
|
-
if (object.type === 'event') {
|
|
65
|
-
var _object$params$source;
|
|
66
|
-
// Route page events to the right session.
|
|
56
|
+
if (object.type === "event") {
|
|
67
57
|
let context;
|
|
68
|
-
if (
|
|
58
|
+
if ("context" in object.params)
|
|
59
|
+
context = object.params.context;
|
|
60
|
+
else if (object.method === "log.entryAdded" || object.method === "script.message")
|
|
61
|
+
context = object.params.source?.context;
|
|
69
62
|
if (context) {
|
|
70
63
|
const session = this._browsingContextToSession.get(context);
|
|
71
64
|
if (session) {
|
|
@@ -74,7 +67,6 @@ class BidiConnection {
|
|
|
74
67
|
}
|
|
75
68
|
}
|
|
76
69
|
} else if (message.id) {
|
|
77
|
-
// Find caller session.
|
|
78
70
|
for (const session of this._browsingContextToSession.values()) {
|
|
79
71
|
if (session.hasCallback(message.id)) {
|
|
80
72
|
session.dispatchMessage(message);
|
|
@@ -86,9 +78,9 @@ class BidiConnection {
|
|
|
86
78
|
}
|
|
87
79
|
_onClose(reason) {
|
|
88
80
|
this._closed = true;
|
|
89
|
-
this._transport.onmessage =
|
|
90
|
-
this._transport.onclose =
|
|
91
|
-
this._browserDisconnectedLogs =
|
|
81
|
+
this._transport.onmessage = void 0;
|
|
82
|
+
this._transport.onclose = void 0;
|
|
83
|
+
this._browserDisconnectedLogs = import_helper.helper.formatBrowserLogs(this._browserLogsCollector.recentLogs(), reason);
|
|
92
84
|
this.browserSession.dispose();
|
|
93
85
|
this._onDisconnect();
|
|
94
86
|
}
|
|
@@ -96,30 +88,22 @@ class BidiConnection {
|
|
|
96
88
|
return this._closed;
|
|
97
89
|
}
|
|
98
90
|
close() {
|
|
99
|
-
if (!this._closed)
|
|
91
|
+
if (!this._closed)
|
|
92
|
+
this._transport.close();
|
|
100
93
|
}
|
|
101
94
|
createMainFrameBrowsingContextSession(bowsingContextId) {
|
|
102
|
-
const result = new BidiSession(this, bowsingContextId, message => this.rawSend(message));
|
|
95
|
+
const result = new BidiSession(this, bowsingContextId, (message) => this.rawSend(message));
|
|
103
96
|
this._browsingContextToSession.set(bowsingContextId, result);
|
|
104
97
|
return result;
|
|
105
98
|
}
|
|
106
99
|
}
|
|
107
|
-
|
|
108
|
-
class BidiSession extends _events.EventEmitter {
|
|
100
|
+
class BidiSession extends import_events.EventEmitter {
|
|
109
101
|
constructor(connection, sessionId, rawSend) {
|
|
110
102
|
super();
|
|
111
|
-
this.connection = void 0;
|
|
112
|
-
this.sessionId = void 0;
|
|
113
103
|
this._disposed = false;
|
|
114
|
-
this.
|
|
115
|
-
this._callbacks = new Map();
|
|
104
|
+
this._callbacks = /* @__PURE__ */ new Map();
|
|
116
105
|
this._crashed = false;
|
|
117
|
-
this._browsingContexts = new Set();
|
|
118
|
-
this.on = void 0;
|
|
119
|
-
this.addListener = void 0;
|
|
120
|
-
this.off = void 0;
|
|
121
|
-
this.removeListener = void 0;
|
|
122
|
-
this.once = void 0;
|
|
106
|
+
this._browsingContexts = /* @__PURE__ */ new Set();
|
|
123
107
|
this.setMaxListeners(0);
|
|
124
108
|
this.connection = connection;
|
|
125
109
|
this.sessionId = sessionId;
|
|
@@ -139,24 +123,17 @@ class BidiSession extends _events.EventEmitter {
|
|
|
139
123
|
this.connection._browsingContextToSession.delete(context);
|
|
140
124
|
}
|
|
141
125
|
async send(method, params) {
|
|
142
|
-
if (this._crashed || this._disposed || this.connection._browserDisconnectedLogs)
|
|
126
|
+
if (this._crashed || this._disposed || this.connection._browserDisconnectedLogs)
|
|
127
|
+
throw new import_protocolError.ProtocolError(this._crashed ? "crashed" : "closed", void 0, this.connection._browserDisconnectedLogs);
|
|
143
128
|
const id = this.connection.nextMessageId();
|
|
144
|
-
const messageObj = {
|
|
145
|
-
id,
|
|
146
|
-
method,
|
|
147
|
-
params
|
|
148
|
-
};
|
|
129
|
+
const messageObj = { id, method, params };
|
|
149
130
|
this._rawSend(messageObj);
|
|
150
131
|
return new Promise((resolve, reject) => {
|
|
151
|
-
this._callbacks.set(id, {
|
|
152
|
-
resolve,
|
|
153
|
-
reject,
|
|
154
|
-
error: new _protocolError.ProtocolError('error', method)
|
|
155
|
-
});
|
|
132
|
+
this._callbacks.set(id, { resolve, reject, error: new import_protocolError.ProtocolError("error", method) });
|
|
156
133
|
});
|
|
157
134
|
}
|
|
158
135
|
sendMayFail(method, params) {
|
|
159
|
-
return this.send(method, params).catch(error =>
|
|
136
|
+
return this.send(method, params).catch((error) => import_debugLogger.debugLogger.log("error", error));
|
|
160
137
|
}
|
|
161
138
|
markAsCrashed() {
|
|
162
139
|
this._crashed = true;
|
|
@@ -167,10 +144,11 @@ class BidiSession extends _events.EventEmitter {
|
|
|
167
144
|
dispose() {
|
|
168
145
|
this._disposed = true;
|
|
169
146
|
this.connection._browsingContextToSession.delete(this.sessionId);
|
|
170
|
-
for (const context of this._browsingContexts)
|
|
147
|
+
for (const context of this._browsingContexts)
|
|
148
|
+
this.connection._browsingContextToSession.delete(context);
|
|
171
149
|
this._browsingContexts.clear();
|
|
172
150
|
for (const callback of this._callbacks.values()) {
|
|
173
|
-
callback.error.type = this._crashed ?
|
|
151
|
+
callback.error.type = this._crashed ? "crashed" : "closed";
|
|
174
152
|
callback.error.logs = this.connection._browserDisconnectedLogs;
|
|
175
153
|
callback.reject(callback.error);
|
|
176
154
|
}
|
|
@@ -181,24 +159,29 @@ class BidiSession extends _events.EventEmitter {
|
|
|
181
159
|
}
|
|
182
160
|
dispatchMessage(message) {
|
|
183
161
|
const object = message;
|
|
184
|
-
if (object.id === kBrowserCloseMessageId)
|
|
162
|
+
if (object.id === kBrowserCloseMessageId)
|
|
163
|
+
return;
|
|
185
164
|
if (object.id && this._callbacks.has(object.id)) {
|
|
186
165
|
const callback = this._callbacks.get(object.id);
|
|
187
166
|
this._callbacks.delete(object.id);
|
|
188
|
-
if (object.type ===
|
|
189
|
-
callback.error.setMessage(object.error +
|
|
167
|
+
if (object.type === "error") {
|
|
168
|
+
callback.error.setMessage(object.error + "\nMessage: " + object.message);
|
|
190
169
|
callback.reject(callback.error);
|
|
191
|
-
} else if (object.type ===
|
|
170
|
+
} else if (object.type === "success") {
|
|
192
171
|
callback.resolve(object.result);
|
|
193
172
|
} else {
|
|
194
|
-
callback.error.setMessage(
|
|
173
|
+
callback.error.setMessage("Internal error, unexpected response type: " + JSON.stringify(object));
|
|
195
174
|
callback.reject(callback.error);
|
|
196
175
|
}
|
|
197
176
|
} else if (object.id) {
|
|
198
|
-
// Response might come after session has been disposed and rejected all callbacks.
|
|
199
177
|
} else {
|
|
200
178
|
Promise.resolve().then(() => this.emit(object.method, object.params));
|
|
201
179
|
}
|
|
202
180
|
}
|
|
203
181
|
}
|
|
204
|
-
|
|
182
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
183
|
+
0 && (module.exports = {
|
|
184
|
+
BidiConnection,
|
|
185
|
+
BidiSession,
|
|
186
|
+
kBrowserCloseMessageId
|
|
187
|
+
});
|