patchright-core 1.51.2 → 1.52.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.
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 +54 -69
  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 +375 -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 +288 -403
  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 +77 -111
  170. package/lib/server/frames.js +741 -891
  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 +329 -426
  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 +90 -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-DVQi6prl.js} +1 -1
  285. package/lib/vite/recorder/assets/index-97EUAAbk.js +184 -0
  286. package/lib/vite/recorder/index.html +1 -1
  287. package/lib/vite/traceViewer/assets/{codeMirrorModule-DpJ-EmBQ.js → codeMirrorModule-dvXVzLxY.js} +1 -1
  288. package/lib/vite/traceViewer/assets/defaultSettingsView-BjymbO6M.js +265 -0
  289. package/lib/vite/traceViewer/{defaultSettingsView.5fN5lw10.css → defaultSettingsView.QdHITyLI.css} +1 -1
  290. package/lib/vite/traceViewer/index.ChIUCJnj.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.html +3 -3
  294. package/lib/vite/traceViewer/uiMode.jUCiCtdp.js +5 -0
  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-DTenqiGw.js +0 -259
  302. package/lib/vite/traceViewer/index.CUq7VgrV.js +0 -2
  303. package/lib/vite/traceViewer/uiMode.CHJSAD7F.js +0 -5
@@ -1,54 +1,65 @@
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 network_exports = {};
30
+ __export(network_exports, {
31
+ NET_DEFAULT_TIMEOUT: () => NET_DEFAULT_TIMEOUT,
32
+ createHttp2Server: () => createHttp2Server,
33
+ createHttpServer: () => createHttpServer,
34
+ createHttpsServer: () => createHttpsServer,
35
+ createProxyAgent: () => createProxyAgent,
36
+ fetchData: () => fetchData,
37
+ httpRequest: () => httpRequest,
38
+ isURLAvailable: () => isURLAvailable
5
39
  });
6
- exports.NET_DEFAULT_TIMEOUT = void 0;
7
- exports.createHttp2Server = createHttp2Server;
8
- exports.createHttpServer = createHttpServer;
9
- exports.createHttpsServer = createHttpsServer;
10
- exports.fetchData = fetchData;
11
- exports.httpRequest = httpRequest;
12
- exports.isURLAvailable = isURLAvailable;
13
- var _http = _interopRequireDefault(require("http"));
14
- var _http2 = _interopRequireDefault(require("http2"));
15
- var _https = _interopRequireDefault(require("https"));
16
- var _url = _interopRequireDefault(require("url"));
17
- var _utilsBundle = require("../../utilsBundle");
18
- var _happyEyeballs = require("./happyEyeballs");
19
- function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
20
- /**
21
- * Copyright (c) Microsoft Corporation.
22
- *
23
- * Licensed under the Apache License, Version 2.0 (the "License");
24
- * you may not use this file except in compliance with the License.
25
- * You may obtain a copy of the License at
26
- *
27
- * http://www.apache.org/licenses/LICENSE-2.0
28
- *
29
- * Unless required by applicable law or agreed to in writing, software
30
- * distributed under the License is distributed on an "AS IS" BASIS,
31
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
32
- * See the License for the specific language governing permissions and
33
- * limitations under the License.
34
- */
35
-
36
- const NET_DEFAULT_TIMEOUT = exports.NET_DEFAULT_TIMEOUT = 30_000;
40
+ module.exports = __toCommonJS(network_exports);
41
+ var import_http = __toESM(require("http"));
42
+ var import_http2 = __toESM(require("http2"));
43
+ var import_https = __toESM(require("https"));
44
+ var import_url = __toESM(require("url"));
45
+ var import_utilsBundle = require("../../utilsBundle");
46
+ var import_happyEyeballs = require("./happyEyeballs");
47
+ const NET_DEFAULT_TIMEOUT = 3e4;
37
48
  function httpRequest(params, onResponse, onError) {
38
- var _params$timeout;
39
- const parsedUrl = _url.default.parse(params.url);
49
+ const parsedUrl = import_url.default.parse(params.url);
40
50
  let options = {
41
51
  ...parsedUrl,
42
- agent: parsedUrl.protocol === 'https:' ? _happyEyeballs.httpsHappyEyeballsAgent : _happyEyeballs.httpHappyEyeballsAgent,
43
- method: params.method || 'GET',
52
+ agent: parsedUrl.protocol === "https:" ? import_happyEyeballs.httpsHappyEyeballsAgent : import_happyEyeballs.httpHappyEyeballsAgent,
53
+ method: params.method || "GET",
44
54
  headers: params.headers
45
55
  };
46
- if (params.rejectUnauthorized !== undefined) options.rejectUnauthorized = params.rejectUnauthorized;
47
- const timeout = (_params$timeout = params.timeout) !== null && _params$timeout !== void 0 ? _params$timeout : NET_DEFAULT_TIMEOUT;
48
- const proxyURL = (0, _utilsBundle.getProxyForUrl)(params.url);
56
+ if (params.rejectUnauthorized !== void 0)
57
+ options.rejectUnauthorized = params.rejectUnauthorized;
58
+ const timeout = params.timeout ?? NET_DEFAULT_TIMEOUT;
59
+ const proxyURL = (0, import_utilsBundle.getProxyForUrl)(params.url);
49
60
  if (proxyURL) {
50
- const parsedProxyURL = _url.default.parse(proxyURL);
51
- if (params.url.startsWith('http:')) {
61
+ const parsedProxyURL = import_url.default.parse(proxyURL);
62
+ if (params.url.startsWith("http:")) {
52
63
  options = {
53
64
  path: parsedUrl.href,
54
65
  host: parsedProxyURL.hostname,
@@ -57,21 +68,23 @@ function httpRequest(params, onResponse, onError) {
57
68
  method: options.method
58
69
  };
59
70
  } else {
60
- parsedProxyURL.secureProxy = parsedProxyURL.protocol === 'https:';
61
- options.agent = new _utilsBundle.HttpsProxyAgent(parsedProxyURL);
71
+ parsedProxyURL.secureProxy = parsedProxyURL.protocol === "https:";
72
+ options.agent = new import_utilsBundle.HttpsProxyAgent(parsedProxyURL);
62
73
  options.rejectUnauthorized = false;
63
74
  }
64
75
  }
65
- const requestCallback = res => {
76
+ const requestCallback = (res) => {
66
77
  const statusCode = res.statusCode || 0;
67
- if (statusCode >= 300 && statusCode < 400 && res.headers.location) httpRequest({
68
- ...params,
69
- url: new URL(res.headers.location, params.url).toString()
70
- }, onResponse, onError);else onResponse(res);
78
+ if (statusCode >= 300 && statusCode < 400 && res.headers.location) {
79
+ request.destroy();
80
+ httpRequest({ ...params, url: new URL(res.headers.location, params.url).toString() }, onResponse, onError);
81
+ } else {
82
+ onResponse(res);
83
+ }
71
84
  };
72
- const request = options.protocol === 'https:' ? _https.default.request(options, requestCallback) : _http.default.request(options, requestCallback);
73
- request.on('error', onError);
74
- if (timeout !== undefined) {
85
+ const request = options.protocol === "https:" ? import_https.default.request(options, requestCallback) : import_http.default.request(options, requestCallback);
86
+ request.on("error", onError);
87
+ if (timeout !== void 0) {
75
88
  const rejectOnTimeout = () => {
76
89
  onError(new Error(`Request to ${params.url} timed out after ${timeout}ms`));
77
90
  request.abort();
@@ -86,75 +99,119 @@ function httpRequest(params, onResponse, onError) {
86
99
  }
87
100
  function fetchData(params, onError) {
88
101
  return new Promise((resolve, reject) => {
89
- httpRequest(params, async response => {
102
+ httpRequest(params, async (response) => {
90
103
  if (response.statusCode !== 200) {
91
104
  const error = onError ? await onError(params, response) : new Error(`fetch failed: server returned code ${response.statusCode}. URL: ${params.url}`);
92
105
  reject(error);
93
106
  return;
94
107
  }
95
- let body = '';
96
- response.on('data', chunk => body += chunk);
97
- response.on('error', error => reject(error));
98
- response.on('end', () => resolve(body));
108
+ let body = "";
109
+ response.on("data", (chunk) => body += chunk);
110
+ response.on("error", (error) => reject(error));
111
+ response.on("end", () => resolve(body));
99
112
  }, reject);
100
113
  });
101
114
  }
115
+ function shouldBypassProxy(url2, bypass) {
116
+ if (!bypass)
117
+ return false;
118
+ const domains = bypass.split(",").map((s) => {
119
+ s = s.trim();
120
+ if (!s.startsWith("."))
121
+ s = "." + s;
122
+ return s;
123
+ });
124
+ const domain = "." + url2.hostname;
125
+ return domains.some((d) => domain.endsWith(d));
126
+ }
127
+ function createProxyAgent(proxy, forUrl) {
128
+ if (!proxy)
129
+ return;
130
+ if (forUrl && proxy.bypass && shouldBypassProxy(forUrl, proxy.bypass))
131
+ return;
132
+ let proxyServer = proxy.server.trim();
133
+ if (!/^\w+:\/\//.test(proxyServer))
134
+ proxyServer = "http://" + proxyServer;
135
+ const proxyOpts = import_url.default.parse(proxyServer);
136
+ if (proxyOpts.protocol?.startsWith("socks")) {
137
+ return new import_utilsBundle.SocksProxyAgent({
138
+ host: proxyOpts.hostname,
139
+ port: proxyOpts.port || void 0
140
+ });
141
+ }
142
+ if (proxy.username)
143
+ proxyOpts.auth = `${proxy.username}:${proxy.password || ""}`;
144
+ if (forUrl && ["ws:", "wss:"].includes(forUrl.protocol)) {
145
+ return new import_utilsBundle.HttpsProxyAgent(proxyOpts);
146
+ }
147
+ return new import_utilsBundle.HttpsProxyAgent(proxyOpts);
148
+ }
102
149
  function createHttpServer(...args) {
103
- const server = _http.default.createServer(...args);
150
+ const server = import_http.default.createServer(...args);
104
151
  decorateServer(server);
105
152
  return server;
106
153
  }
107
154
  function createHttpsServer(...args) {
108
- const server = _https.default.createServer(...args);
155
+ const server = import_https.default.createServer(...args);
109
156
  decorateServer(server);
110
157
  return server;
111
158
  }
112
159
  function createHttp2Server(...args) {
113
- const server = _http2.default.createSecureServer(...args);
160
+ const server = import_http2.default.createSecureServer(...args);
114
161
  decorateServer(server);
115
162
  return server;
116
163
  }
117
- async function isURLAvailable(url, ignoreHTTPSErrors, onLog, onStdErr) {
118
- let statusCode = await httpStatusCode(url, ignoreHTTPSErrors, onLog, onStdErr);
119
- if (statusCode === 404 && url.pathname === '/') {
120
- const indexUrl = new URL(url);
121
- indexUrl.pathname = '/index.html';
164
+ async function isURLAvailable(url2, ignoreHTTPSErrors, onLog, onStdErr) {
165
+ let statusCode = await httpStatusCode(url2, ignoreHTTPSErrors, onLog, onStdErr);
166
+ if (statusCode === 404 && url2.pathname === "/") {
167
+ const indexUrl = new URL(url2);
168
+ indexUrl.pathname = "/index.html";
122
169
  statusCode = await httpStatusCode(indexUrl, ignoreHTTPSErrors, onLog, onStdErr);
123
170
  }
124
171
  return statusCode >= 200 && statusCode < 404;
125
172
  }
126
- async function httpStatusCode(url, ignoreHTTPSErrors, onLog, onStdErr) {
127
- return new Promise(resolve => {
128
- onLog === null || onLog === void 0 || onLog(`HTTP GET: ${url}`);
173
+ async function httpStatusCode(url2, ignoreHTTPSErrors, onLog, onStdErr) {
174
+ return new Promise((resolve) => {
175
+ onLog?.(`HTTP GET: ${url2}`);
129
176
  httpRequest({
130
- url: url.toString(),
131
- headers: {
132
- Accept: '*/*'
133
- },
177
+ url: url2.toString(),
178
+ headers: { Accept: "*/*" },
134
179
  rejectUnauthorized: !ignoreHTTPSErrors
135
- }, res => {
136
- var _res$statusCode;
180
+ }, (res) => {
137
181
  res.resume();
138
- const statusCode = (_res$statusCode = res.statusCode) !== null && _res$statusCode !== void 0 ? _res$statusCode : 0;
139
- onLog === null || onLog === void 0 || onLog(`HTTP Status: ${statusCode}`);
182
+ const statusCode = res.statusCode ?? 0;
183
+ onLog?.(`HTTP Status: ${statusCode}`);
140
184
  resolve(statusCode);
141
- }, error => {
142
- if (error.code === 'DEPTH_ZERO_SELF_SIGNED_CERT') onStdErr === null || onStdErr === void 0 || onStdErr(`[WebServer] Self-signed certificate detected. Try adding ignoreHTTPSErrors: true to config.webServer.`);
143
- onLog === null || onLog === void 0 || onLog(`Error while checking if ${url} is available: ${error.message}`);
185
+ }, (error) => {
186
+ if (error.code === "DEPTH_ZERO_SELF_SIGNED_CERT")
187
+ onStdErr?.(`[WebServer] Self-signed certificate detected. Try adding ignoreHTTPSErrors: true to config.webServer.`);
188
+ onLog?.(`Error while checking if ${url2} is available: ${error.message}`);
144
189
  resolve(0);
145
190
  });
146
191
  });
147
192
  }
148
193
  function decorateServer(server) {
149
- const sockets = new Set();
150
- server.on('connection', socket => {
194
+ const sockets = /* @__PURE__ */ new Set();
195
+ server.on("connection", (socket) => {
151
196
  sockets.add(socket);
152
- socket.once('close', () => sockets.delete(socket));
197
+ socket.once("close", () => sockets.delete(socket));
153
198
  });
154
199
  const close = server.close;
155
- server.close = callback => {
156
- for (const socket of sockets) socket.destroy();
200
+ server.close = (callback) => {
201
+ for (const socket of sockets)
202
+ socket.destroy();
157
203
  sockets.clear();
158
204
  return close.call(server, callback);
159
205
  };
160
- }
206
+ }
207
+ // Annotate the CommonJS export names for ESM import in node:
208
+ 0 && (module.exports = {
209
+ NET_DEFAULT_TIMEOUT,
210
+ createHttp2Server,
211
+ createHttpServer,
212
+ createHttpsServer,
213
+ createProxyAgent,
214
+ fetchData,
215
+ httpRequest,
216
+ isURLAvailable
217
+ });
@@ -1,140 +1,148 @@
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 nodePlatform_exports = {};
30
+ __export(nodePlatform_exports, {
31
+ nodePlatform: () => nodePlatform,
32
+ setBoxedStackPrefixes: () => setBoxedStackPrefixes
5
33
  });
6
- exports.nodePlatform = void 0;
7
- exports.setBoxedStackPrefixes = setBoxedStackPrefixes;
8
- var _crypto = _interopRequireDefault(require("crypto"));
9
- var _fs = _interopRequireDefault(require("fs"));
10
- var _path = _interopRequireDefault(require("path"));
11
- var util = _interopRequireWildcard(require("util"));
12
- var _stream = require("stream");
13
- var _events = require("events");
14
- var _utilsBundle = require("../../utilsBundle");
15
- var _debugLogger = require("./debugLogger");
16
- var _zones = require("./zones");
17
- var _debug = require("./debug");
18
- 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); }
19
- 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; }
20
- function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
21
- /**
22
- * Copyright (c) Microsoft Corporation.
23
- *
24
- * Licensed under the Apache License, Version 2.0 (the "License");
25
- * you may not use this file except in compliance with the License.
26
- * You may obtain a copy of the License at
27
- *
28
- * http://www.apache.org/licenses/LICENSE-2.0
29
- *
30
- * Unless required by applicable law or agreed to in writing, software
31
- * distributed under the License is distributed on an "AS IS" BASIS,
32
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
33
- * See the License for the specific language governing permissions and
34
- * limitations under the License.
35
- */
36
-
37
- const pipelineAsync = util.promisify(_stream.pipeline);
34
+ module.exports = __toCommonJS(nodePlatform_exports);
35
+ var import_crypto = __toESM(require("crypto"));
36
+ var import_fs = __toESM(require("fs"));
37
+ var import_path = __toESM(require("path"));
38
+ var util = __toESM(require("util"));
39
+ var import_stream = require("stream");
40
+ var import_events = require("events");
41
+ var import_utilsBundle = require("../../utilsBundle");
42
+ var import_debugLogger = require("./debugLogger");
43
+ var import_zones = require("./zones");
44
+ var import_debug = require("./debug");
45
+ const pipelineAsync = util.promisify(import_stream.pipeline);
38
46
  class NodeZone {
39
47
  constructor(zone) {
40
- this._zone = void 0;
41
48
  this._zone = zone;
42
49
  }
43
50
  push(data) {
44
- return new NodeZone(this._zone.with('apiZone', data));
51
+ return new NodeZone(this._zone.with("apiZone", data));
45
52
  }
46
53
  pop() {
47
- return new NodeZone(this._zone.without('apiZone'));
54
+ return new NodeZone(this._zone.without("apiZone"));
48
55
  }
49
56
  run(func) {
50
57
  return this._zone.run(func);
51
58
  }
52
59
  data() {
53
- return this._zone.data('apiZone');
60
+ return this._zone.data("apiZone");
54
61
  }
55
62
  }
56
63
  let boxedStackPrefixes = [];
57
64
  function setBoxedStackPrefixes(prefixes) {
58
65
  boxedStackPrefixes = prefixes;
59
66
  }
60
- const coreDir = _path.default.dirname(require.resolve('../../../package.json'));
61
- const nodePlatform = exports.nodePlatform = {
62
- name: 'node',
67
+ const coreDir = import_path.default.dirname(require.resolve("../../../package.json"));
68
+ const nodePlatform = {
69
+ name: "node",
63
70
  boxedStackPrefixes: () => {
64
- if (process.env.PWDEBUGIMPL) return [];
71
+ if (process.env.PWDEBUGIMPL)
72
+ return [];
65
73
  return [coreDir, ...boxedStackPrefixes];
66
74
  },
67
- calculateSha1: text => {
68
- const sha1 = _crypto.default.createHash('sha1');
75
+ calculateSha1: (text) => {
76
+ const sha1 = import_crypto.default.createHash("sha1");
69
77
  sha1.update(text);
70
- return Promise.resolve(sha1.digest('hex'));
78
+ return Promise.resolve(sha1.digest("hex"));
71
79
  },
72
- colors: _utilsBundle.colors,
80
+ colors: import_utilsBundle.colors,
73
81
  coreDir,
74
- createGuid: () => _crypto.default.randomBytes(16).toString('hex'),
75
- defaultMaxListeners: () => _events.EventEmitter.defaultMaxListeners,
76
- fs: () => _fs.default,
82
+ createGuid: () => import_crypto.default.randomBytes(16).toString("hex"),
83
+ defaultMaxListeners: () => import_events.EventEmitter.defaultMaxListeners,
84
+ fs: () => import_fs.default,
77
85
  env: process.env,
78
86
  inspectCustom: util.inspect.custom,
79
- isDebugMode: () => !!(0, _debug.debugMode)(),
80
- isJSDebuggerAttached: () => !!require('inspector').url(),
87
+ isDebugMode: () => !!(0, import_debug.debugMode)(),
88
+ isJSDebuggerAttached: () => !!require("inspector").url(),
81
89
  isLogEnabled(name) {
82
- return _debugLogger.debugLogger.isEnabled(name);
90
+ return import_debugLogger.debugLogger.isEnabled(name);
83
91
  },
84
- isUnderTest: () => (0, _debug.isUnderTest)(),
92
+ isUnderTest: () => (0, import_debug.isUnderTest)(),
85
93
  log(name, message) {
86
- _debugLogger.debugLogger.log(name, message);
94
+ import_debugLogger.debugLogger.log(name, message);
87
95
  },
88
- path: () => _path.default,
89
- pathSeparator: _path.default.sep,
96
+ path: () => import_path.default,
97
+ pathSeparator: import_path.default.sep,
90
98
  showInternalStackFrames: () => !!process.env.PWDEBUGIMPL,
91
- async streamFile(path, stream) {
92
- await pipelineAsync(_fs.default.createReadStream(path), stream);
99
+ async streamFile(path2, stream) {
100
+ await pipelineAsync(import_fs.default.createReadStream(path2), stream);
93
101
  },
94
- streamReadable: channel => {
102
+ streamReadable: (channel) => {
95
103
  return new ReadableStreamImpl(channel);
96
104
  },
97
- streamWritable: channel => {
105
+ streamWritable: (channel) => {
98
106
  return new WritableStreamImpl(channel);
99
107
  },
100
108
  zones: {
101
- current: () => new NodeZone((0, _zones.currentZone)()),
102
- empty: new NodeZone(_zones.emptyZone)
109
+ current: () => new NodeZone((0, import_zones.currentZone)()),
110
+ empty: new NodeZone(import_zones.emptyZone)
103
111
  }
104
112
  };
105
- class ReadableStreamImpl extends _stream.Readable {
113
+ class ReadableStreamImpl extends import_stream.Readable {
106
114
  constructor(channel) {
107
115
  super();
108
- this._channel = void 0;
109
116
  this._channel = channel;
110
117
  }
111
118
  async _read() {
112
- const result = await this._channel.read({
113
- size: 1024 * 1024
114
- });
115
- if (result.binary.byteLength) this.push(result.binary);else this.push(null);
119
+ const result = await this._channel.read({ size: 1024 * 1024 });
120
+ if (result.binary.byteLength)
121
+ this.push(result.binary);
122
+ else
123
+ this.push(null);
116
124
  }
117
125
  _destroy(error, callback) {
118
- // Stream might be destroyed after the connection was closed.
119
- this._channel.close().catch(e => null);
126
+ this._channel.close().catch((e) => null);
120
127
  super._destroy(error, callback);
121
128
  }
122
129
  }
123
- class WritableStreamImpl extends _stream.Writable {
130
+ class WritableStreamImpl extends import_stream.Writable {
124
131
  constructor(channel) {
125
132
  super();
126
- this._channel = void 0;
127
133
  this._channel = channel;
128
134
  }
129
135
  async _write(chunk, encoding, callback) {
130
- const error = await this._channel.write({
131
- binary: typeof chunk === 'string' ? Buffer.from(chunk) : chunk
132
- }).catch(e => e);
136
+ const error = await this._channel.write({ binary: typeof chunk === "string" ? Buffer.from(chunk) : chunk }).catch((e) => e);
133
137
  callback(error || null);
134
138
  }
135
139
  async _final(callback) {
136
- // Stream might be destroyed after the connection was closed.
137
- const error = await this._channel.close().catch(e => e);
140
+ const error = await this._channel.close().catch((e) => e);
138
141
  callback(error || null);
139
142
  }
140
- }
143
+ }
144
+ // Annotate the CommonJS export names for ESM import in node:
145
+ 0 && (module.exports = {
146
+ nodePlatform,
147
+ setBoxedStackPrefixes
148
+ });
@@ -1,82 +1,84 @@
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 pipeTransport_exports = {};
20
+ __export(pipeTransport_exports, {
21
+ PipeTransport: () => PipeTransport
5
22
  });
6
- exports.PipeTransport = void 0;
7
- var _task = require("./task");
8
- /**
9
- * 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
-
23
+ module.exports = __toCommonJS(pipeTransport_exports);
24
+ var import_task = require("./task");
24
25
  class PipeTransport {
25
- constructor(pipeWrite, pipeRead, closeable, endian = 'le') {
26
- this._pipeWrite = void 0;
26
+ constructor(pipeWrite, pipeRead, closeable, endian = "le") {
27
27
  this._data = Buffer.from([]);
28
- this._waitForNextTask = (0, _task.makeWaitForNextTask)();
28
+ this._waitForNextTask = (0, import_task.makeWaitForNextTask)();
29
29
  this._closed = false;
30
30
  this._bytesLeft = 0;
31
- this.onmessage = void 0;
32
- this.onclose = void 0;
33
- this._endian = void 0;
34
- this._closeableStream = void 0;
35
31
  this._pipeWrite = pipeWrite;
36
32
  this._endian = endian;
37
33
  this._closeableStream = closeable;
38
- pipeRead.on('data', buffer => this._dispatch(buffer));
39
- pipeRead.on('close', () => {
34
+ pipeRead.on("data", (buffer) => this._dispatch(buffer));
35
+ pipeRead.on("close", () => {
40
36
  this._closed = true;
41
- if (this.onclose) this.onclose();
37
+ if (this.onclose)
38
+ this.onclose();
42
39
  });
43
- this.onmessage = undefined;
44
- this.onclose = undefined;
40
+ this.onmessage = void 0;
41
+ this.onclose = void 0;
45
42
  }
46
43
  send(message) {
47
- if (this._closed) throw new Error('Pipe has been closed');
48
- const data = Buffer.from(message, 'utf-8');
44
+ if (this._closed)
45
+ throw new Error("Pipe has been closed");
46
+ const data = Buffer.from(message, "utf-8");
49
47
  const dataLength = Buffer.alloc(4);
50
- if (this._endian === 'be') dataLength.writeUInt32BE(data.length, 0);else dataLength.writeUInt32LE(data.length, 0);
48
+ if (this._endian === "be")
49
+ dataLength.writeUInt32BE(data.length, 0);
50
+ else
51
+ dataLength.writeUInt32LE(data.length, 0);
51
52
  this._pipeWrite.write(dataLength);
52
53
  this._pipeWrite.write(data);
53
54
  }
54
55
  close() {
55
- // Let it throw.
56
56
  this._closeableStream.close();
57
57
  }
58
58
  _dispatch(buffer) {
59
59
  this._data = Buffer.concat([this._data, buffer]);
60
60
  while (true) {
61
61
  if (!this._bytesLeft && this._data.length < 4) {
62
- // Need more data.
63
62
  break;
64
63
  }
65
64
  if (!this._bytesLeft) {
66
- this._bytesLeft = this._endian === 'be' ? this._data.readUInt32BE(0) : this._data.readUInt32LE(0);
65
+ this._bytesLeft = this._endian === "be" ? this._data.readUInt32BE(0) : this._data.readUInt32LE(0);
67
66
  this._data = this._data.slice(4);
68
67
  }
69
68
  if (!this._bytesLeft || this._data.length < this._bytesLeft) {
70
- // Need more data.
71
69
  break;
72
70
  }
73
71
  const message = this._data.slice(0, this._bytesLeft);
74
72
  this._data = this._data.slice(this._bytesLeft);
75
73
  this._bytesLeft = 0;
76
74
  this._waitForNextTask(() => {
77
- if (this.onmessage) this.onmessage(message.toString('utf-8'));
75
+ if (this.onmessage)
76
+ this.onmessage(message.toString("utf-8"));
78
77
  });
79
78
  }
80
79
  }
81
80
  }
82
- exports.PipeTransport = PipeTransport;
81
+ // Annotate the CommonJS export names for ESM import in node:
82
+ 0 && (module.exports = {
83
+ PipeTransport
84
+ });