patchright-core 1.51.3 → 1.52.1

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.
Files changed (303) hide show
  1. package/browsers.json +15 -13
  2. package/lib/androidServerImpl.js +42 -48
  3. package/lib/browserServerImpl.js +54 -67
  4. package/lib/cli/driver.js +71 -69
  5. package/lib/cli/program.js +312 -328
  6. package/lib/cli/programWithTestStub.js +51 -45
  7. package/lib/client/accessibility.js +31 -32
  8. package/lib/client/android.js +141 -228
  9. package/lib/client/api.js +135 -283
  10. package/lib/client/artifact.js +39 -36
  11. package/lib/client/browser.js +57 -61
  12. package/lib/client/browserContext.js +297 -326
  13. package/lib/client/browserType.js +92 -106
  14. package/lib/client/cdpSession.js +29 -31
  15. package/lib/client/channelOwner.js +82 -95
  16. package/lib/client/clientHelper.js +46 -38
  17. package/lib/client/clientInstrumentation.js +40 -37
  18. package/lib/client/clientStackTrace.js +41 -37
  19. package/lib/client/clock.js +36 -36
  20. package/lib/client/connection.js +190 -212
  21. package/lib/client/consoleMessage.js +31 -28
  22. package/lib/client/coverage.js +25 -22
  23. package/lib/client/dialog.js +30 -31
  24. package/lib/client/download.js +25 -25
  25. package/lib/client/electron.js +73 -75
  26. package/lib/client/elementHandle.js +111 -147
  27. package/lib/client/errors.js +53 -53
  28. package/lib/client/eventEmitter.js +124 -121
  29. package/lib/client/events.js +72 -68
  30. package/lib/client/fetch.js +135 -158
  31. package/lib/client/fileChooser.js +25 -24
  32. package/lib/client/fileUtils.js +31 -28
  33. package/lib/client/frame.js +187 -306
  34. package/lib/client/harRouter.js +42 -52
  35. package/lib/client/input.js +40 -69
  36. package/lib/client/jsHandle.js +56 -71
  37. package/lib/client/jsonPipe.js +27 -23
  38. package/lib/client/localUtils.js +29 -28
  39. package/lib/client/locator.js +161 -245
  40. package/lib/client/network.js +277 -295
  41. package/lib/client/page.js +270 -318
  42. package/lib/client/platform.js +46 -43
  43. package/lib/client/playwright.js +51 -66
  44. package/lib/client/selectors.js +48 -46
  45. package/lib/client/stream.js +29 -25
  46. package/lib/client/timeoutSettings.js +49 -39
  47. package/lib/client/tracing.js +48 -84
  48. package/lib/client/types.js +26 -22
  49. package/lib/client/video.js +35 -27
  50. package/lib/client/waiter.js +69 -88
  51. package/lib/client/webError.js +25 -23
  52. package/lib/client/webSocket.js +61 -56
  53. package/lib/client/worker.js +48 -58
  54. package/lib/client/writableStream.js +27 -23
  55. package/lib/generated/clockSource.js +26 -5
  56. package/lib/generated/consoleApiSource.js +26 -5
  57. package/lib/generated/injectedScriptSource.js +26 -5
  58. package/lib/generated/pollingRecorderSource.js +26 -5
  59. package/lib/generated/utilityScriptSource.js +26 -5
  60. package/lib/generated/webSocketMockSource.js +371 -4
  61. package/lib/inProcessFactory.js +53 -53
  62. package/lib/inprocess.js +2 -19
  63. package/lib/outofprocess.js +53 -46
  64. package/lib/protocol/debug.js +209 -25
  65. package/lib/protocol/serializers.js +153 -134
  66. package/lib/protocol/validator.js +2714 -2714
  67. package/lib/protocol/validatorPrimitives.js +114 -73
  68. package/lib/remote/playwrightConnection.js +140 -157
  69. package/lib/remote/playwrightServer.js +99 -84
  70. package/lib/server/accessibility.js +44 -37
  71. package/lib/server/android/android.js +216 -209
  72. package/lib/server/android/backendAdb.js +89 -82
  73. package/lib/server/artifact.js +78 -55
  74. package/lib/server/bidi/bidiBrowser.js +221 -155
  75. package/lib/server/bidi/bidiChromium.js +106 -79
  76. package/lib/server/bidi/bidiConnection.js +66 -83
  77. package/lib/server/bidi/bidiExecutionContext.js +128 -113
  78. package/lib/server/bidi/bidiFirefox.js +76 -69
  79. package/lib/server/bidi/bidiInput.js +86 -97
  80. package/lib/server/bidi/bidiNetworkManager.js +137 -154
  81. package/lib/server/bidi/bidiOverCdp.js +57 -58
  82. package/lib/server/bidi/bidiPage.js +247 -219
  83. package/lib/server/bidi/bidiPdf.js +52 -86
  84. package/lib/server/bidi/third_party/bidiCommands.d.js +22 -0
  85. package/lib/server/bidi/third_party/bidiDeserializer.js +55 -50
  86. package/lib/server/bidi/third_party/bidiKeyboard.js +236 -220
  87. package/lib/server/bidi/third_party/bidiProtocol.js +144 -131
  88. package/lib/server/bidi/third_party/bidiSerializer.js +67 -63
  89. package/lib/server/bidi/third_party/firefoxPrefs.js +141 -119
  90. package/lib/server/browser.js +76 -84
  91. package/lib/server/browserContext.js +321 -346
  92. package/lib/server/browserType.js +169 -182
  93. package/lib/server/callLog.js +47 -44
  94. package/lib/server/chromium/chromium.js +212 -190
  95. package/lib/server/chromium/chromiumSwitches.js +86 -64
  96. package/lib/server/chromium/crAccessibility.js +157 -131
  97. package/lib/server/chromium/crBrowser.js +253 -273
  98. package/lib/server/chromium/crConnection.js +91 -116
  99. package/lib/server/chromium/crCoverage.js +113 -127
  100. package/lib/server/chromium/crDevTools.js +59 -51
  101. package/lib/server/chromium/crDragDrop.js +62 -79
  102. package/lib/server/chromium/crExecutionContext.js +88 -83
  103. package/lib/server/chromium/crInput.js +97 -95
  104. package/lib/server/chromium/crNetworkManager.js +284 -404
  105. package/lib/server/chromium/crPage.js +522 -608
  106. package/lib/server/chromium/crPdf.js +54 -86
  107. package/lib/server/chromium/crProtocolHelper.js +92 -80
  108. package/lib/server/chromium/crServiceWorker.js +82 -67
  109. package/lib/server/chromium/defaultFontFamilies.js +152 -135
  110. package/lib/server/chromium/protocol.d.js +16 -0
  111. package/lib/server/chromium/videoRecorder.js +65 -99
  112. package/lib/server/clock.js +62 -50
  113. package/lib/server/codegen/csharp.js +185 -160
  114. package/lib/server/codegen/java.js +155 -128
  115. package/lib/server/codegen/javascript.js +163 -148
  116. package/lib/server/codegen/jsonl.js +32 -28
  117. package/lib/server/codegen/language.js +75 -52
  118. package/lib/server/codegen/languages.js +65 -27
  119. package/lib/server/codegen/python.js +140 -125
  120. package/lib/server/codegen/types.js +15 -4
  121. package/lib/server/console.js +28 -32
  122. package/lib/server/cookieStore.js +105 -86
  123. package/lib/server/debugController.js +97 -124
  124. package/lib/server/debugger.js +82 -78
  125. package/lib/server/deviceDescriptors.js +37 -24
  126. package/lib/server/deviceDescriptorsSource.json +50 -50
  127. package/lib/server/dialog.js +36 -35
  128. package/lib/server/dispatchers/androidDispatcher.js +196 -107
  129. package/lib/server/dispatchers/artifactDispatcher.js +62 -62
  130. package/lib/server/dispatchers/browserContextDispatcher.js +176 -205
  131. package/lib/server/dispatchers/browserDispatcher.js +78 -97
  132. package/lib/server/dispatchers/browserTypeDispatcher.js +35 -35
  133. package/lib/server/dispatchers/cdpSessionDispatcher.js +32 -36
  134. package/lib/server/dispatchers/debugControllerDispatcher.js +48 -66
  135. package/lib/server/dispatchers/dialogDispatcher.js +30 -27
  136. package/lib/server/dispatchers/dispatcher.js +169 -220
  137. package/lib/server/dispatchers/electronDispatcher.js +54 -57
  138. package/lib/server/dispatchers/elementHandlerDispatcher.js +77 -119
  139. package/lib/server/dispatchers/frameDispatcher.js +99 -163
  140. package/lib/server/dispatchers/jsHandleDispatcher.js +49 -66
  141. package/lib/server/dispatchers/jsonPipeDispatcher.js +35 -36
  142. package/lib/server/dispatchers/localUtilsDispatcher.js +95 -80
  143. package/lib/server/dispatchers/networkDispatchers.js +90 -107
  144. package/lib/server/dispatchers/pageDispatcher.js +128 -169
  145. package/lib/server/dispatchers/playwrightDispatcher.js +69 -76
  146. package/lib/server/dispatchers/selectorsDispatcher.js +28 -24
  147. package/lib/server/dispatchers/streamDispatcher.js +42 -45
  148. package/lib/server/dispatchers/tracingDispatcher.js +36 -41
  149. package/lib/server/dispatchers/webSocketRouteDispatcher.js +96 -131
  150. package/lib/server/dispatchers/writableStreamDispatcher.js +54 -38
  151. package/lib/server/dom.js +413 -443
  152. package/lib/server/download.js +45 -35
  153. package/lib/server/electron/electron.js +156 -176
  154. package/lib/server/electron/loader.js +8 -36
  155. package/lib/server/errors.js +47 -46
  156. package/lib/server/fetch.js +289 -323
  157. package/lib/server/fileChooser.js +25 -24
  158. package/lib/server/fileUploadUtils.js +65 -59
  159. package/lib/server/firefox/ffAccessibility.js +153 -131
  160. package/lib/server/firefox/ffBrowser.js +213 -277
  161. package/lib/server/firefox/ffConnection.js +63 -84
  162. package/lib/server/firefox/ffExecutionContext.js +91 -73
  163. package/lib/server/firefox/ffInput.js +67 -69
  164. package/lib/server/firefox/ffNetworkManager.js +131 -110
  165. package/lib/server/firefox/ffPage.js +236 -273
  166. package/lib/server/firefox/firefox.js +76 -67
  167. package/lib/server/firefox/protocol.d.js +16 -0
  168. package/lib/server/formData.js +107 -35
  169. package/lib/server/frameSelectors.js +221 -112
  170. package/lib/server/frames.js +731 -894
  171. package/lib/server/har/harRecorder.js +85 -77
  172. package/lib/server/har/harTracer.js +287 -222
  173. package/lib/server/harBackend.js +80 -80
  174. package/lib/server/helper.js +56 -59
  175. package/lib/server/index.js +59 -99
  176. package/lib/server/input.js +134 -163
  177. package/lib/server/instrumentation.js +49 -44
  178. package/lib/server/javascript.js +143 -134
  179. package/lib/server/launchApp.js +92 -73
  180. package/lib/server/localUtils.js +130 -122
  181. package/lib/server/macEditingCommands.js +141 -137
  182. package/lib/server/network.js +262 -296
  183. package/lib/server/page.js +326 -423
  184. package/lib/server/pageBinding.js +88 -0
  185. package/lib/server/pipeTransport.js +49 -45
  186. package/lib/server/playwright.js +60 -67
  187. package/lib/server/progress.js +56 -51
  188. package/lib/server/protocolError.js +34 -31
  189. package/lib/server/recorder/chat.js +70 -86
  190. package/lib/server/recorder/contextRecorder.js +134 -138
  191. package/lib/server/recorder/recorderApp.js +127 -136
  192. package/lib/server/recorder/recorderCollection.js +56 -44
  193. package/lib/server/recorder/recorderFrontend.js +15 -4
  194. package/lib/server/recorder/recorderRunner.js +79 -103
  195. package/lib/server/recorder/recorderUtils.js +56 -45
  196. package/lib/server/recorder/throttledFile.js +42 -30
  197. package/lib/server/recorder.js +177 -186
  198. package/lib/server/registry/browserFetcher.js +106 -101
  199. package/lib/server/registry/dependencies.js +245 -196
  200. package/lib/server/registry/index.js +904 -792
  201. package/lib/server/registry/nativeDeps.js +1073 -464
  202. package/lib/server/registry/oopDownloadBrowserMain.js +57 -75
  203. package/lib/server/screenshotter.js +166 -182
  204. package/lib/server/selectors.js +85 -46
  205. package/lib/server/socksClientCertificatesInterceptor.js +166 -185
  206. package/lib/server/socksInterceptor.js +62 -70
  207. package/lib/server/storageScript.js +94 -100
  208. package/lib/server/timeoutSettings.js +58 -43
  209. package/lib/server/trace/recorder/snapshotter.js +70 -89
  210. package/lib/server/trace/recorder/snapshotterInjected.js +238 -217
  211. package/lib/server/trace/recorder/tracing.js +321 -333
  212. package/lib/server/trace/test/inMemorySnapshotter.js +46 -52
  213. package/lib/server/trace/viewer/traceViewer.js +168 -146
  214. package/lib/server/transport.js +124 -133
  215. package/lib/server/types.js +26 -22
  216. package/lib/server/usKeyboardLayout.js +135 -545
  217. package/lib/server/utils/ascii.js +39 -26
  218. package/lib/server/utils/comparators.js +105 -103
  219. package/lib/server/utils/crypto.js +157 -112
  220. package/lib/server/utils/debug.js +37 -28
  221. package/lib/server/utils/debugLogger.js +69 -48
  222. package/lib/server/utils/env.js +52 -37
  223. package/lib/server/utils/eventsHelper.js +29 -28
  224. package/lib/server/utils/expectUtils.js +31 -26
  225. package/lib/server/utils/fileUtils.js +123 -136
  226. package/lib/server/utils/happyEyeballs.js +138 -123
  227. package/lib/server/utils/hostPlatform.js +84 -120
  228. package/lib/server/utils/httpServer.js +106 -121
  229. package/lib/server/utils/image_tools/colorUtils.js +42 -51
  230. package/lib/server/utils/image_tools/compare.js +44 -43
  231. package/lib/server/utils/image_tools/imageChannel.js +38 -30
  232. package/lib/server/utils/image_tools/stats.js +40 -40
  233. package/lib/server/utils/linuxUtils.js +50 -37
  234. package/lib/server/utils/network.js +143 -86
  235. package/lib/server/utils/nodePlatform.js +87 -79
  236. package/lib/server/utils/pipeTransport.js +44 -42
  237. package/lib/server/utils/processLauncher.js +111 -121
  238. package/lib/server/utils/profiler.js +52 -39
  239. package/lib/server/utils/socksProxy.js +280 -339
  240. package/lib/server/utils/spawnAsync.js +37 -41
  241. package/lib/server/utils/task.js +31 -38
  242. package/lib/server/utils/userAgent.js +73 -66
  243. package/lib/server/utils/wsServer.js +73 -69
  244. package/lib/server/utils/zipFile.js +36 -37
  245. package/lib/server/utils/zones.js +37 -34
  246. package/lib/server/webkit/protocol.d.js +16 -0
  247. package/lib/server/webkit/webkit.js +76 -63
  248. package/lib/server/webkit/wkAccessibility.js +161 -118
  249. package/lib/server/webkit/wkBrowser.js +159 -176
  250. package/lib/server/webkit/wkConnection.js +59 -83
  251. package/lib/server/webkit/wkExecutionContext.js +84 -70
  252. package/lib/server/webkit/wkInput.js +82 -80
  253. package/lib/server/webkit/wkInterceptableRequest.js +102 -95
  254. package/lib/server/webkit/wkPage.js +525 -619
  255. package/lib/server/webkit/wkProvisionalPage.js +45 -56
  256. package/lib/server/webkit/wkWorkers.js +77 -77
  257. package/lib/utils/isomorphic/ariaSnapshot.js +144 -152
  258. package/lib/utils/isomorphic/assert.js +28 -22
  259. package/lib/utils/isomorphic/builtins.js +86 -0
  260. package/lib/utils/isomorphic/colors.js +66 -59
  261. package/lib/utils/isomorphic/cssParser.js +121 -125
  262. package/lib/utils/isomorphic/cssTokenizer.js +436 -364
  263. package/lib/utils/isomorphic/headers.js +38 -37
  264. package/lib/utils/isomorphic/locatorGenerators.js +340 -357
  265. package/lib/utils/isomorphic/locatorParser.js +96 -105
  266. package/lib/utils/isomorphic/locatorUtils.js +63 -44
  267. package/lib/utils/isomorphic/manualPromise.js +47 -39
  268. package/lib/utils/isomorphic/mimeType.js +448 -25
  269. package/lib/utils/isomorphic/multimap.js +35 -27
  270. package/lib/utils/isomorphic/rtti.js +35 -33
  271. package/lib/utils/isomorphic/selectorParser.js +183 -193
  272. package/lib/utils/isomorphic/semaphore.js +27 -24
  273. package/lib/utils/isomorphic/stackTrace.js +87 -98
  274. package/lib/utils/isomorphic/stringUtils.js +113 -106
  275. package/lib/utils/isomorphic/time.js +41 -22
  276. package/lib/utils/isomorphic/timeoutRunner.js +55 -54
  277. package/lib/utils/isomorphic/traceUtils.js +38 -41
  278. package/lib/utils/isomorphic/types.js +15 -4
  279. package/lib/utils/isomorphic/urlMatch.js +112 -67
  280. package/lib/utils/isomorphic/utilityScriptSerializers.js +248 -0
  281. package/lib/utils.js +97 -443
  282. package/lib/utilsBundle.js +101 -52
  283. package/lib/vite/htmlReport/index.html +21 -15
  284. package/lib/vite/recorder/assets/{codeMirrorModule-B9YMkrwa.js → codeMirrorModule-CXVeovup.js} +1 -1
  285. package/lib/vite/recorder/assets/index-BsWQsSGl.js +184 -0
  286. package/lib/vite/recorder/index.html +1 -1
  287. package/lib/vite/traceViewer/assets/{codeMirrorModule-1DiydmYA.js → codeMirrorModule-_GLjJL-7.js} +1 -1
  288. package/lib/vite/traceViewer/assets/defaultSettingsView-DtCQiGHe.js +265 -0
  289. package/lib/vite/traceViewer/{defaultSettingsView.5fN5lw10.css → defaultSettingsView.QdHITyLI.css} +1 -1
  290. package/lib/vite/traceViewer/index.cFZzK9RN.js +2 -0
  291. package/lib/vite/traceViewer/index.html +3 -3
  292. package/lib/vite/traceViewer/sw.bundle.js +3 -3
  293. package/lib/vite/traceViewer/uiMode.XVPIqBeS.js +5 -0
  294. package/lib/vite/traceViewer/uiMode.html +3 -3
  295. package/lib/zipBundle.js +32 -23
  296. package/package.json +1 -1
  297. package/types/protocol.d.ts +436 -17
  298. package/types/types.d.ts +35 -16
  299. package/lib/server/isomorphic/utilityScriptSerializers.js +0 -229
  300. package/lib/vite/recorder/assets/index-ELPgmkwA.js +0 -184
  301. package/lib/vite/traceViewer/assets/defaultSettingsView-l0TyP_G8.js +0 -259
  302. package/lib/vite/traceViewer/index.BqUZLSro.js +0 -2
  303. package/lib/vite/traceViewer/uiMode.C1d2m5sF.js +0 -5
@@ -1,111 +1,92 @@
1
1
  "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
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 ffConnection_exports = {};
20
+ __export(ffConnection_exports, {
21
+ ConnectionEvents: () => ConnectionEvents,
22
+ FFConnection: () => FFConnection,
23
+ FFSession: () => FFSession,
24
+ kBrowserCloseMessageId: () => kBrowserCloseMessageId
5
25
  });
6
- exports.kBrowserCloseMessageId = exports.FFSession = exports.FFConnection = exports.ConnectionEvents = void 0;
7
- var _events = require("events");
8
- var _debugLogger = require("../utils/debugLogger");
9
- var _helper = require("../helper");
10
- var _protocolError = require("../protocolError");
11
- /**
12
- * Copyright 2017 Google Inc. All rights reserved.
13
- * Modifications copyright (c) Microsoft Corporation.
14
- *
15
- * Licensed under the Apache License, Version 2.0 (the 'License');
16
- * you may not use this file except in compliance with the License.
17
- * You may obtain a copy of the License at
18
- *
19
- * http://www.apache.org/licenses/LICENSE-2.0
20
- *
21
- * Unless required by applicable law or agreed to in writing, software
22
- * distributed under the License is distributed on an 'AS IS' BASIS,
23
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
24
- * See the License for the specific language governing permissions and
25
- * limitations under the License.
26
- */
27
-
28
- const ConnectionEvents = exports.ConnectionEvents = {
29
- Disconnected: Symbol('Disconnected')
26
+ module.exports = __toCommonJS(ffConnection_exports);
27
+ var import_events = require("events");
28
+ var import_debugLogger = require("../utils/debugLogger");
29
+ var import_helper = require("../helper");
30
+ var import_protocolError = require("../protocolError");
31
+ const ConnectionEvents = {
32
+ Disconnected: Symbol("Disconnected")
30
33
  };
31
-
32
- // FFPlaywright uses this special id to issue Browser.close command which we
33
- // should ignore.
34
- const kBrowserCloseMessageId = exports.kBrowserCloseMessageId = -9999;
35
- class FFConnection extends _events.EventEmitter {
34
+ const kBrowserCloseMessageId = -9999;
35
+ class FFConnection extends import_events.EventEmitter {
36
36
  constructor(transport, protocolLogger, browserLogsCollector) {
37
37
  super();
38
- this._lastId = void 0;
39
- this._transport = void 0;
40
- this._protocolLogger = void 0;
41
- this._browserLogsCollector = void 0;
42
- this._browserDisconnectedLogs = void 0;
43
- this.rootSession = void 0;
44
- this._sessions = void 0;
45
- this._closed = void 0;
46
38
  this.setMaxListeners(0);
47
39
  this._transport = transport;
48
40
  this._protocolLogger = protocolLogger;
49
41
  this._browserLogsCollector = browserLogsCollector;
50
42
  this._lastId = 0;
51
- this._sessions = new Map();
43
+ this._sessions = /* @__PURE__ */ new Map();
52
44
  this._closed = false;
53
- this.rootSession = new FFSession(this, '', message => this._rawSend(message));
54
- this._sessions.set('', this.rootSession);
45
+ this.rootSession = new FFSession(this, "", (message) => this._rawSend(message));
46
+ this._sessions.set("", this.rootSession);
55
47
  this._transport.onmessage = this._onMessage.bind(this);
56
- // onclose should be set last, since it can be immediately called.
57
48
  this._transport.onclose = this._onClose.bind(this);
58
49
  }
59
50
  nextMessageId() {
60
51
  return ++this._lastId;
61
52
  }
62
53
  _rawSend(message) {
63
- this._protocolLogger('send', message);
54
+ this._protocolLogger("send", message);
64
55
  this._transport.send(message);
65
56
  }
66
57
  async _onMessage(message) {
67
- this._protocolLogger('receive', message);
68
- if (message.id === kBrowserCloseMessageId) return;
69
- const session = this._sessions.get(message.sessionId || '');
70
- if (session) session.dispatchMessage(message);
58
+ this._protocolLogger("receive", message);
59
+ if (message.id === kBrowserCloseMessageId)
60
+ return;
61
+ const session = this._sessions.get(message.sessionId || "");
62
+ if (session)
63
+ session.dispatchMessage(message);
71
64
  }
72
65
  _onClose(reason) {
73
66
  this._closed = true;
74
- this._transport.onmessage = undefined;
75
- this._transport.onclose = undefined;
76
- this._browserDisconnectedLogs = _helper.helper.formatBrowserLogs(this._browserLogsCollector.recentLogs(), reason);
67
+ this._transport.onmessage = void 0;
68
+ this._transport.onclose = void 0;
69
+ this._browserDisconnectedLogs = import_helper.helper.formatBrowserLogs(this._browserLogsCollector.recentLogs(), reason);
77
70
  this.rootSession.dispose();
78
71
  Promise.resolve().then(() => this.emit(ConnectionEvents.Disconnected));
79
72
  }
80
73
  close() {
81
- if (!this._closed) this._transport.close();
74
+ if (!this._closed)
75
+ this._transport.close();
82
76
  }
83
77
  createSession(sessionId) {
84
- const session = new FFSession(this, sessionId, message => this._rawSend({
85
- ...message,
86
- sessionId
87
- }));
78
+ const session = new FFSession(this, sessionId, (message) => this._rawSend({ ...message, sessionId }));
88
79
  this._sessions.set(sessionId, session);
89
80
  return session;
90
81
  }
91
82
  }
92
- exports.FFConnection = FFConnection;
93
- class FFSession extends _events.EventEmitter {
83
+ class FFSession extends import_events.EventEmitter {
94
84
  constructor(connection, sessionId, rawSend) {
95
85
  super();
96
- this._connection = void 0;
97
86
  this._disposed = false;
98
- this._callbacks = void 0;
99
- this._sessionId = void 0;
100
- this._rawSend = void 0;
101
87
  this._crashed = false;
102
- this.on = void 0;
103
- this.addListener = void 0;
104
- this.off = void 0;
105
- this.removeListener = void 0;
106
- this.once = void 0;
107
88
  this.setMaxListeners(0);
108
- this._callbacks = new Map();
89
+ this._callbacks = /* @__PURE__ */ new Map();
109
90
  this._connection = connection;
110
91
  this._sessionId = sessionId;
111
92
  this._rawSend = rawSend;
@@ -119,28 +100,20 @@ class FFSession extends _events.EventEmitter {
119
100
  this._crashed = true;
120
101
  }
121
102
  async send(method, params) {
122
- if (this._crashed || this._disposed || this._connection._closed || this._connection._browserDisconnectedLogs) throw new _protocolError.ProtocolError(this._crashed ? 'crashed' : 'closed', undefined, this._connection._browserDisconnectedLogs);
103
+ if (this._crashed || this._disposed || this._connection._closed || this._connection._browserDisconnectedLogs)
104
+ throw new import_protocolError.ProtocolError(this._crashed ? "crashed" : "closed", void 0, this._connection._browserDisconnectedLogs);
123
105
  const id = this._connection.nextMessageId();
124
- this._rawSend({
125
- method,
126
- params,
127
- id
128
- });
106
+ this._rawSend({ method, params, id });
129
107
  return new Promise((resolve, reject) => {
130
- this._callbacks.set(id, {
131
- resolve,
132
- reject,
133
- error: new _protocolError.ProtocolError('error', method)
134
- });
108
+ this._callbacks.set(id, { resolve, reject, error: new import_protocolError.ProtocolError("error", method) });
135
109
  });
136
110
  }
137
111
  sendMayFail(method, params) {
138
- return this.send(method, params).catch(error => _debugLogger.debugLogger.log('error', error));
112
+ return this.send(method, params).catch((error) => import_debugLogger.debugLogger.log("error", error));
139
113
  }
140
114
  dispatchMessage(object) {
141
115
  if (object.id) {
142
116
  const callback = this._callbacks.get(object.id);
143
- // Callbacks could be all rejected if someone has called `.dispose()`.
144
117
  if (callback) {
145
118
  this._callbacks.delete(object.id);
146
119
  if (object.error) {
@@ -158,11 +131,17 @@ class FFSession extends _events.EventEmitter {
158
131
  this._disposed = true;
159
132
  this._connection._sessions.delete(this._sessionId);
160
133
  for (const callback of this._callbacks.values()) {
161
- callback.error.type = this._crashed ? 'crashed' : 'closed';
134
+ callback.error.type = this._crashed ? "crashed" : "closed";
162
135
  callback.error.logs = this._connection._browserDisconnectedLogs;
163
136
  callback.reject(callback.error);
164
137
  }
165
138
  this._callbacks.clear();
166
139
  }
167
140
  }
168
- exports.FFSession = FFSession;
141
+ // Annotate the CommonJS export names for ESM import in node:
142
+ 0 && (module.exports = {
143
+ ConnectionEvents,
144
+ FFConnection,
145
+ FFSession,
146
+ kBrowserCloseMessageId
147
+ });
@@ -1,44 +1,49 @@
1
1
  "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
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 ffExecutionContext_exports = {};
30
+ __export(ffExecutionContext_exports, {
31
+ FFExecutionContext: () => FFExecutionContext,
32
+ createHandle: () => createHandle
5
33
  });
6
- exports.FFExecutionContext = void 0;
7
- exports.createHandle = createHandle;
8
- var _assert = require("../../utils/isomorphic/assert");
9
- var _stackTrace = require("../../utils/isomorphic/stackTrace");
10
- var _utilityScriptSerializers = require("../isomorphic/utilityScriptSerializers");
11
- var js = _interopRequireWildcard(require("../javascript"));
12
- var dom = _interopRequireWildcard(require("../dom"));
13
- var _protocolError = require("../protocolError");
14
- function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
15
- function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
16
- /**
17
- * Copyright 2019 Google Inc. All rights reserved.
18
- * Modifications copyright (c) Microsoft Corporation.
19
- *
20
- * Licensed under the Apache License, Version 2.0 (the "License");
21
- * you may not use this file except in compliance with the License.
22
- * You may obtain a copy of the License at
23
- *
24
- * http://www.apache.org/licenses/LICENSE-2.0
25
- *
26
- * Unless required by applicable law or agreed to in writing, software
27
- * distributed under the License is distributed on an "AS IS" BASIS,
28
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
29
- * See the License for the specific language governing permissions and
30
- * limitations under the License.
31
- */
32
-
34
+ module.exports = __toCommonJS(ffExecutionContext_exports);
35
+ var import_assert = require("../../utils/isomorphic/assert");
36
+ var import_stackTrace = require("../../utils/isomorphic/stackTrace");
37
+ var js = __toESM(require("../javascript"));
38
+ var dom = __toESM(require("../dom"));
39
+ var import_protocolError = require("../protocolError");
33
40
  class FFExecutionContext {
34
41
  constructor(session, executionContextId) {
35
- this._session = void 0;
36
- this._executionContextId = void 0;
37
42
  this._session = session;
38
43
  this._executionContextId = executionContextId;
39
44
  }
40
45
  async rawEvaluateJSON(expression) {
41
- const payload = await this._session.send('Runtime.evaluate', {
46
+ const payload = await this._session.send("Runtime.evaluate", {
42
47
  expression,
43
48
  returnByValue: true,
44
49
  executionContextId: this._executionContextId
@@ -47,7 +52,7 @@ class FFExecutionContext {
47
52
  return payload.result.value;
48
53
  }
49
54
  async rawEvaluateHandle(context, expression) {
50
- const payload = await this._session.send('Runtime.evaluate', {
55
+ const payload = await this._session.send("Runtime.evaluate", {
51
56
  expression,
52
57
  returnByValue: false,
53
58
  executionContextId: this._executionContextId
@@ -56,55 +61,55 @@ class FFExecutionContext {
56
61
  return createHandle(context, payload.result);
57
62
  }
58
63
  async evaluateWithArguments(expression, returnByValue, utilityScript, values, handles) {
59
- const payload = await this._session.send('Runtime.callFunction', {
64
+ const payload = await this._session.send("Runtime.callFunction", {
60
65
  functionDeclaration: expression,
61
- args: [{
62
- objectId: utilityScript._objectId,
63
- value: undefined
64
- }, ...values.map(value => ({
65
- value
66
- })), ...handles.map(handle => ({
67
- objectId: handle._objectId,
68
- value: undefined
69
- }))],
66
+ args: [
67
+ { objectId: utilityScript._objectId, value: void 0 },
68
+ ...values.map((value) => ({ value })),
69
+ ...handles.map((handle) => ({ objectId: handle._objectId, value: void 0 }))
70
+ ],
70
71
  returnByValue,
71
72
  executionContextId: this._executionContextId
72
73
  }).catch(rewriteError);
73
74
  checkException(payload.exceptionDetails);
74
- if (returnByValue) return (0, _utilityScriptSerializers.parseEvaluationResultValue)(payload.result.value);
75
+ if (returnByValue)
76
+ return js.parseEvaluationResultValue(payload.result.value);
75
77
  return createHandle(utilityScript._context, payload.result);
76
78
  }
77
79
  async getProperties(object) {
78
- const response = await this._session.send('Runtime.getObjectProperties', {
80
+ const response = await this._session.send("Runtime.getObjectProperties", {
79
81
  executionContextId: this._executionContextId,
80
82
  objectId: object._objectId
81
83
  });
82
- const result = new Map();
83
- for (const property of response.properties) result.set(property.name, createHandle(object._context, property.value));
84
+ const result = /* @__PURE__ */ new Map();
85
+ for (const property of response.properties)
86
+ result.set(property.name, createHandle(object._context, property.value));
84
87
  return result;
85
88
  }
86
89
  async releaseHandle(handle) {
87
- if (!handle._objectId) return;
88
- await this._session.send('Runtime.disposeObject', {
90
+ if (!handle._objectId)
91
+ return;
92
+ await this._session.send("Runtime.disposeObject", {
89
93
  executionContextId: this._executionContextId,
90
94
  objectId: handle._objectId
91
95
  });
92
96
  }
93
97
  }
94
- exports.FFExecutionContext = FFExecutionContext;
95
98
  function checkException(exceptionDetails) {
96
- if (!exceptionDetails) return;
97
- if (exceptionDetails.value) throw new js.JavaScriptErrorInEvaluate(JSON.stringify(exceptionDetails.value));else throw new js.JavaScriptErrorInEvaluate(exceptionDetails.text + (exceptionDetails.stack ? '\n' + exceptionDetails.stack : ''));
99
+ if (!exceptionDetails)
100
+ return;
101
+ if (exceptionDetails.value)
102
+ throw new js.JavaScriptErrorInEvaluate(JSON.stringify(exceptionDetails.value));
103
+ else
104
+ throw new js.JavaScriptErrorInEvaluate(exceptionDetails.text + (exceptionDetails.stack ? "\n" + exceptionDetails.stack : ""));
98
105
  }
99
106
  function rewriteError(error) {
100
- if (error.message.includes('cyclic object value') || error.message.includes('Object is not serializable')) return {
101
- result: {
102
- type: 'undefined',
103
- value: undefined
104
- }
105
- };
106
- if (error instanceof TypeError && error.message.startsWith('Converting circular structure to JSON')) (0, _stackTrace.rewriteErrorMessage)(error, error.message + ' Are you passing a nested JSHandle?');
107
- if (!js.isJavaScriptErrorInEvaluate(error) && !(0, _protocolError.isSessionClosedError)(error)) throw new Error('Execution context was destroyed, most likely because of a navigation.');
107
+ if (error.message.includes("cyclic object value") || error.message.includes("Object is not serializable"))
108
+ return { result: { type: "undefined", value: void 0 } };
109
+ if (error instanceof TypeError && error.message.startsWith("Converting circular structure to JSON"))
110
+ (0, import_stackTrace.rewriteErrorMessage)(error, error.message + " Are you passing a nested JSHandle?");
111
+ if (!js.isJavaScriptErrorInEvaluate(error) && !(0, import_protocolError.isSessionClosedError)(error))
112
+ throw new Error("Execution context was destroyed, most likely because of a navigation.");
108
113
  throw error;
109
114
  }
110
115
  function potentiallyUnserializableValue(remoteObject) {
@@ -113,19 +118,32 @@ function potentiallyUnserializableValue(remoteObject) {
113
118
  return unserializableValue ? js.parseUnserializableValue(unserializableValue) : value;
114
119
  }
115
120
  function renderPreview(object) {
116
- if (object.type === 'undefined') return 'undefined';
117
- if (object.unserializableValue) return String(object.unserializableValue);
118
- if (object.type === 'symbol') return 'Symbol()';
119
- if (object.subtype === 'regexp') return 'RegExp';
120
- if (object.subtype === 'weakmap') return 'WeakMap';
121
- if (object.subtype === 'weakset') return 'WeakSet';
122
- if (object.subtype) return object.subtype[0].toUpperCase() + object.subtype.slice(1);
123
- if ('value' in object) return String(object.value);
121
+ if (object.type === "undefined")
122
+ return "undefined";
123
+ if (object.unserializableValue)
124
+ return String(object.unserializableValue);
125
+ if (object.type === "symbol")
126
+ return "Symbol()";
127
+ if (object.subtype === "regexp")
128
+ return "RegExp";
129
+ if (object.subtype === "weakmap")
130
+ return "WeakMap";
131
+ if (object.subtype === "weakset")
132
+ return "WeakSet";
133
+ if (object.subtype)
134
+ return object.subtype[0].toUpperCase() + object.subtype.slice(1);
135
+ if ("value" in object)
136
+ return String(object.value);
124
137
  }
125
138
  function createHandle(context, remoteObject) {
126
- if (remoteObject.subtype === 'node') {
127
- (0, _assert.assert)(context instanceof dom.FrameExecutionContext);
139
+ if (remoteObject.subtype === "node") {
140
+ (0, import_assert.assert)(context instanceof dom.FrameExecutionContext);
128
141
  return new dom.ElementHandle(context, remoteObject.objectId);
129
142
  }
130
- return new js.JSHandle(context, remoteObject.subtype || remoteObject.type || '', renderPreview(remoteObject), remoteObject.objectId, potentiallyUnserializableValue(remoteObject));
131
- }
143
+ return new js.JSHandle(context, remoteObject.subtype || remoteObject.type || "", renderPreview(remoteObject), remoteObject.objectId, potentiallyUnserializableValue(remoteObject));
144
+ }
145
+ // Annotate the CommonJS export names for ESM import in node:
146
+ 0 && (module.exports = {
147
+ FFExecutionContext,
148
+ createHandle
149
+ });
@@ -1,63 +1,70 @@
1
1
  "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
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 ffInput_exports = {};
20
+ __export(ffInput_exports, {
21
+ RawKeyboardImpl: () => RawKeyboardImpl,
22
+ RawMouseImpl: () => RawMouseImpl,
23
+ RawTouchscreenImpl: () => RawTouchscreenImpl
5
24
  });
6
- exports.RawTouchscreenImpl = exports.RawMouseImpl = exports.RawKeyboardImpl = void 0;
7
- /**
8
- * Copyright 2017 Google Inc. All rights reserved.
9
- * Modifications copyright (c) Microsoft Corporation.
10
- *
11
- * Licensed under the Apache License, Version 2.0 (the 'License');
12
- * you may not use this file except in compliance with the License.
13
- * You may obtain a copy of the License at
14
- *
15
- * http://www.apache.org/licenses/LICENSE-2.0
16
- *
17
- * Unless required by applicable law or agreed to in writing, software
18
- * distributed under the License is distributed on an 'AS IS' BASIS,
19
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
20
- * See the License for the specific language governing permissions and
21
- * limitations under the License.
22
- */
23
-
25
+ module.exports = __toCommonJS(ffInput_exports);
24
26
  function toModifiersMask(modifiers) {
25
27
  let mask = 0;
26
- if (modifiers.has('Alt')) mask |= 1;
27
- if (modifiers.has('Control')) mask |= 2;
28
- if (modifiers.has('Shift')) mask |= 4;
29
- if (modifiers.has('Meta')) mask |= 8;
28
+ if (modifiers.has("Alt"))
29
+ mask |= 1;
30
+ if (modifiers.has("Control"))
31
+ mask |= 2;
32
+ if (modifiers.has("Shift"))
33
+ mask |= 4;
34
+ if (modifiers.has("Meta"))
35
+ mask |= 8;
30
36
  return mask;
31
37
  }
32
38
  function toButtonNumber(button) {
33
- if (button === 'left') return 0;
34
- if (button === 'middle') return 1;
35
- if (button === 'right') return 2;
39
+ if (button === "left")
40
+ return 0;
41
+ if (button === "middle")
42
+ return 1;
43
+ if (button === "right")
44
+ return 2;
36
45
  return 0;
37
46
  }
38
47
  function toButtonsMask(buttons) {
39
48
  let mask = 0;
40
- if (buttons.has('left')) mask |= 1;
41
- if (buttons.has('right')) mask |= 2;
42
- if (buttons.has('middle')) mask |= 4;
49
+ if (buttons.has("left"))
50
+ mask |= 1;
51
+ if (buttons.has("right"))
52
+ mask |= 2;
53
+ if (buttons.has("middle"))
54
+ mask |= 4;
43
55
  return mask;
44
56
  }
45
57
  class RawKeyboardImpl {
46
58
  constructor(client) {
47
- this._client = void 0;
48
59
  this._client = client;
49
60
  }
50
61
  async keydown(modifiers, keyName, description, autoRepeat) {
51
62
  let text = description.text;
52
- // Firefox will figure out Enter by itself
53
- if (text === '\r') text = '';
54
- const {
55
- code,
56
- key,
57
- location
58
- } = description;
59
- await this._client.send('Page.dispatchKeyEvent', {
60
- type: 'keydown',
63
+ if (text === "\r")
64
+ text = "";
65
+ const { code, key, location } = description;
66
+ await this._client.send("Page.dispatchKeyEvent", {
67
+ type: "keydown",
61
68
  keyCode: description.keyCodeWithoutLocation,
62
69
  code,
63
70
  key,
@@ -67,13 +74,9 @@ class RawKeyboardImpl {
67
74
  });
68
75
  }
69
76
  async keyup(modifiers, keyName, description) {
70
- const {
71
- code,
72
- key,
73
- location
74
- } = description;
75
- await this._client.send('Page.dispatchKeyEvent', {
76
- type: 'keyup',
77
+ const { code, key, location } = description;
78
+ await this._client.send("Page.dispatchKeyEvent", {
79
+ type: "keyup",
77
80
  key,
78
81
  keyCode: description.keyCodeWithoutLocation,
79
82
  code,
@@ -82,21 +85,16 @@ class RawKeyboardImpl {
82
85
  });
83
86
  }
84
87
  async sendText(text) {
85
- await this._client.send('Page.insertText', {
86
- text
87
- });
88
+ await this._client.send("Page.insertText", { text });
88
89
  }
89
90
  }
90
- exports.RawKeyboardImpl = RawKeyboardImpl;
91
91
  class RawMouseImpl {
92
92
  constructor(client) {
93
- this._client = void 0;
94
- this._page = void 0;
95
93
  this._client = client;
96
94
  }
97
95
  async move(x, y, button, buttons, modifiers, forClick) {
98
- await this._client.send('Page.dispatchMouseEvent', {
99
- type: 'mousemove',
96
+ await this._client.send("Page.dispatchMouseEvent", {
97
+ type: "mousemove",
100
98
  button: 0,
101
99
  buttons: toButtonsMask(buttons),
102
100
  x: Math.floor(x),
@@ -105,8 +103,8 @@ class RawMouseImpl {
105
103
  });
106
104
  }
107
105
  async down(x, y, button, buttons, modifiers, clickCount) {
108
- await this._client.send('Page.dispatchMouseEvent', {
109
- type: 'mousedown',
106
+ await this._client.send("Page.dispatchMouseEvent", {
107
+ type: "mousedown",
110
108
  button: toButtonNumber(button),
111
109
  buttons: toButtonsMask(buttons),
112
110
  x: Math.floor(x),
@@ -116,8 +114,8 @@ class RawMouseImpl {
116
114
  });
117
115
  }
118
116
  async up(x, y, button, buttons, modifiers, clickCount) {
119
- await this._client.send('Page.dispatchMouseEvent', {
120
- type: 'mouseup',
117
+ await this._client.send("Page.dispatchMouseEvent", {
118
+ type: "mouseup",
121
119
  button: toButtonNumber(button),
122
120
  buttons: toButtonsMask(buttons),
123
121
  x: Math.floor(x),
@@ -127,11 +125,8 @@ class RawMouseImpl {
127
125
  });
128
126
  }
129
127
  async wheel(x, y, buttons, modifiers, deltaX, deltaY) {
130
- // Wheel events hit the compositor first, so wait one frame for it to be synced.
131
- await this._page.mainFrame().evaluateExpression(`new Promise(requestAnimationFrame)`, {
132
- world: 'utility'
133
- });
134
- await this._client.send('Page.dispatchWheelEvent', {
128
+ await this._page.mainFrame().evaluateExpression(`new Promise(requestAnimationFrame)`, { world: "utility" });
129
+ await this._client.send("Page.dispatchWheelEvent", {
135
130
  deltaX,
136
131
  deltaY,
137
132
  x: Math.floor(x),
@@ -144,18 +139,21 @@ class RawMouseImpl {
144
139
  this._page = page;
145
140
  }
146
141
  }
147
- exports.RawMouseImpl = RawMouseImpl;
148
142
  class RawTouchscreenImpl {
149
143
  constructor(client) {
150
- this._client = void 0;
151
144
  this._client = client;
152
145
  }
153
146
  async tap(x, y, modifiers) {
154
- await this._client.send('Page.dispatchTapEvent', {
147
+ await this._client.send("Page.dispatchTapEvent", {
155
148
  x,
156
149
  y,
157
150
  modifiers: toModifiersMask(modifiers)
158
151
  });
159
152
  }
160
153
  }
161
- exports.RawTouchscreenImpl = RawTouchscreenImpl;
154
+ // Annotate the CommonJS export names for ESM import in node:
155
+ 0 && (module.exports = {
156
+ RawKeyboardImpl,
157
+ RawMouseImpl,
158
+ RawTouchscreenImpl
159
+ });