@pnpm/exe 11.0.6 → 11.0.7

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 (381) hide show
  1. package/dist/node-gyp-bin/node-gyp +0 -0
  2. package/dist/node-gyp-bin/node-gyp.cmd +0 -0
  3. package/dist/node_modules/node-gyp/.release-please-manifest.json +1 -1
  4. package/dist/node_modules/node-gyp/bin/node-gyp.js +0 -0
  5. package/dist/node_modules/node-gyp/gyp/.release-please-manifest.json +1 -1
  6. package/dist/node_modules/node-gyp/gyp/pylib/gyp/MSVSVersion.py +11 -3
  7. package/dist/node_modules/node-gyp/gyp/pylib/gyp/__init__.py +2 -3
  8. package/dist/node_modules/node-gyp/gyp/pylib/gyp/generator/msvs.py +1 -1
  9. package/dist/node_modules/node-gyp/gyp/pylib/gyp/generator/ninja.py +2 -1
  10. package/dist/node_modules/node-gyp/gyp/pylib/gyp/generator/ninja_test.py +26 -16
  11. package/dist/node_modules/node-gyp/gyp/pylib/gyp/mac_tool.py +1 -1
  12. package/dist/node_modules/node-gyp/gyp/pylib/gyp/msvs_emulation.py +1 -1
  13. package/dist/node_modules/node-gyp/gyp/pylib/gyp/simple_copy.py +2 -2
  14. package/dist/node_modules/node-gyp/gyp/pylib/packaging/metadata.py +3 -20
  15. package/dist/node_modules/node-gyp/gyp/pylib/packaging/tags.py +2 -14
  16. package/dist/node_modules/node-gyp/gyp/pyproject.toml +5 -3
  17. package/dist/node_modules/node-gyp/lib/download.js +55 -8
  18. package/dist/node_modules/node-gyp/lib/find-visualstudio.js +1 -1
  19. package/dist/node_modules/node-gyp/lib/process-release.js +17 -19
  20. package/dist/node_modules/node-gyp/package.json +3 -3
  21. package/dist/node_modules/{safer-buffer → undici}/LICENSE +1 -1
  22. package/dist/node_modules/undici/index-fetch.js +35 -0
  23. package/dist/node_modules/undici/index.js +169 -0
  24. package/dist/node_modules/undici/lib/api/abort-signal.js +57 -0
  25. package/dist/node_modules/undici/lib/api/api-connect.js +108 -0
  26. package/dist/node_modules/undici/lib/api/api-pipeline.js +251 -0
  27. package/dist/node_modules/undici/lib/api/api-request.js +214 -0
  28. package/dist/node_modules/undici/lib/api/api-stream.js +220 -0
  29. package/dist/node_modules/undici/lib/api/api-upgrade.js +108 -0
  30. package/dist/node_modules/undici/lib/api/index.js +7 -0
  31. package/dist/node_modules/undici/lib/api/readable.js +385 -0
  32. package/dist/node_modules/undici/lib/api/util.js +93 -0
  33. package/dist/node_modules/undici/lib/core/connect.js +240 -0
  34. package/dist/node_modules/undici/lib/core/constants.js +118 -0
  35. package/dist/node_modules/undici/lib/core/diagnostics.js +202 -0
  36. package/dist/node_modules/undici/lib/core/errors.js +425 -0
  37. package/dist/node_modules/undici/lib/core/request.js +405 -0
  38. package/dist/node_modules/undici/lib/core/symbols.js +67 -0
  39. package/dist/node_modules/undici/lib/core/tree.js +152 -0
  40. package/dist/node_modules/undici/lib/core/util.js +719 -0
  41. package/dist/node_modules/undici/lib/dispatcher/agent.js +130 -0
  42. package/dist/node_modules/undici/lib/dispatcher/balanced-pool.js +209 -0
  43. package/dist/node_modules/undici/lib/dispatcher/client-h1.js +1370 -0
  44. package/dist/node_modules/undici/lib/dispatcher/client-h2.js +744 -0
  45. package/dist/node_modules/undici/lib/dispatcher/client.js +623 -0
  46. package/dist/node_modules/undici/lib/dispatcher/dispatcher-base.js +198 -0
  47. package/dist/node_modules/undici/lib/dispatcher/dispatcher.js +65 -0
  48. package/dist/node_modules/undici/lib/dispatcher/env-http-proxy-agent.js +160 -0
  49. package/dist/node_modules/undici/lib/dispatcher/fixed-queue.js +117 -0
  50. package/dist/node_modules/undici/lib/dispatcher/pool-base.js +194 -0
  51. package/dist/node_modules/undici/lib/dispatcher/pool-stats.js +34 -0
  52. package/dist/node_modules/undici/lib/dispatcher/pool.js +107 -0
  53. package/dist/node_modules/undici/lib/dispatcher/proxy-agent.js +274 -0
  54. package/dist/node_modules/undici/lib/dispatcher/retry-agent.js +35 -0
  55. package/dist/node_modules/undici/lib/global.js +32 -0
  56. package/dist/node_modules/undici/lib/handler/decorator-handler.js +44 -0
  57. package/dist/node_modules/undici/lib/handler/redirect-handler.js +232 -0
  58. package/dist/node_modules/undici/lib/handler/retry-handler.js +374 -0
  59. package/dist/node_modules/undici/lib/interceptor/dns.js +375 -0
  60. package/dist/node_modules/undici/lib/interceptor/dump.js +123 -0
  61. package/dist/node_modules/undici/lib/interceptor/redirect-interceptor.js +21 -0
  62. package/dist/node_modules/undici/lib/interceptor/redirect.js +24 -0
  63. package/dist/node_modules/undici/lib/interceptor/response-error.js +86 -0
  64. package/dist/node_modules/undici/lib/interceptor/retry.js +19 -0
  65. package/dist/node_modules/undici/lib/llhttp/.gitkeep +0 -0
  66. package/dist/node_modules/undici/lib/llhttp/constants.js +278 -0
  67. package/dist/node_modules/undici/lib/llhttp/llhttp-wasm.js +5 -0
  68. package/dist/node_modules/undici/lib/llhttp/llhttp_simd-wasm.js +5 -0
  69. package/dist/node_modules/undici/lib/llhttp/utils.js +15 -0
  70. package/dist/node_modules/undici/lib/mock/mock-agent.js +160 -0
  71. package/dist/node_modules/undici/lib/mock/mock-client.js +59 -0
  72. package/dist/node_modules/undici/lib/mock/mock-errors.js +28 -0
  73. package/dist/node_modules/undici/lib/mock/mock-interceptor.js +207 -0
  74. package/dist/node_modules/undici/lib/mock/mock-pool.js +59 -0
  75. package/dist/node_modules/undici/lib/mock/mock-symbols.js +23 -0
  76. package/dist/node_modules/undici/lib/mock/mock-utils.js +367 -0
  77. package/dist/node_modules/undici/lib/mock/pending-interceptors-formatter.js +43 -0
  78. package/dist/node_modules/undici/lib/mock/pluralizer.js +29 -0
  79. package/dist/node_modules/undici/lib/util/timers.js +423 -0
  80. package/dist/node_modules/undici/lib/web/cache/cache.js +859 -0
  81. package/dist/node_modules/undici/lib/web/cache/cachestorage.js +152 -0
  82. package/dist/node_modules/undici/lib/web/cache/symbols.js +5 -0
  83. package/dist/node_modules/undici/lib/web/cache/util.js +45 -0
  84. package/dist/node_modules/undici/lib/web/cookies/constants.js +12 -0
  85. package/dist/node_modules/undici/lib/web/cookies/index.js +184 -0
  86. package/dist/node_modules/undici/lib/web/cookies/parse.js +317 -0
  87. package/dist/node_modules/undici/lib/web/cookies/util.js +282 -0
  88. package/dist/node_modules/undici/lib/web/eventsource/eventsource-stream.js +398 -0
  89. package/dist/node_modules/undici/lib/web/eventsource/eventsource.js +480 -0
  90. package/dist/node_modules/undici/lib/web/eventsource/util.js +37 -0
  91. package/dist/node_modules/{@npmcli/redact → undici/lib/web/fetch}/LICENSE +1 -1
  92. package/dist/node_modules/undici/lib/web/fetch/body.js +529 -0
  93. package/dist/node_modules/undici/lib/web/fetch/constants.js +124 -0
  94. package/dist/node_modules/undici/lib/web/fetch/data-url.js +744 -0
  95. package/dist/node_modules/undici/lib/web/fetch/dispatcher-weakref.js +46 -0
  96. package/dist/node_modules/undici/lib/web/fetch/file.js +126 -0
  97. package/dist/node_modules/undici/lib/web/fetch/formdata-parser.js +474 -0
  98. package/dist/node_modules/undici/lib/web/fetch/formdata.js +252 -0
  99. package/dist/node_modules/undici/lib/web/fetch/global.js +40 -0
  100. package/dist/node_modules/undici/lib/web/fetch/headers.js +687 -0
  101. package/dist/node_modules/undici/lib/web/fetch/index.js +2272 -0
  102. package/dist/node_modules/undici/lib/web/fetch/request.js +1037 -0
  103. package/dist/node_modules/undici/lib/web/fetch/response.js +610 -0
  104. package/dist/node_modules/undici/lib/web/fetch/symbols.js +9 -0
  105. package/dist/node_modules/undici/lib/web/fetch/util.js +1632 -0
  106. package/dist/node_modules/undici/lib/web/fetch/webidl.js +695 -0
  107. package/dist/node_modules/undici/lib/web/fileapi/encoding.js +290 -0
  108. package/dist/node_modules/undici/lib/web/fileapi/filereader.js +344 -0
  109. package/dist/node_modules/undici/lib/web/fileapi/progressevent.js +78 -0
  110. package/dist/node_modules/undici/lib/web/fileapi/symbols.js +10 -0
  111. package/dist/node_modules/undici/lib/web/fileapi/util.js +391 -0
  112. package/dist/node_modules/undici/lib/web/websocket/connection.js +371 -0
  113. package/dist/node_modules/undici/lib/web/websocket/constants.js +66 -0
  114. package/dist/node_modules/undici/lib/web/websocket/events.js +329 -0
  115. package/dist/node_modules/undici/lib/web/websocket/frame.js +96 -0
  116. package/dist/node_modules/undici/lib/web/websocket/permessage-deflate.js +100 -0
  117. package/dist/node_modules/undici/lib/web/websocket/receiver.js +490 -0
  118. package/dist/node_modules/undici/lib/web/websocket/sender.js +104 -0
  119. package/dist/node_modules/undici/lib/web/websocket/symbols.js +12 -0
  120. package/dist/node_modules/undici/lib/web/websocket/util.js +322 -0
  121. package/dist/node_modules/undici/lib/web/websocket/websocket.js +592 -0
  122. package/dist/node_modules/undici/package.json +160 -0
  123. package/dist/node_modules/undici/scripts/strip-comments.js +8 -0
  124. package/dist/node_modules/yallist/package.json +51 -12
  125. package/dist/pnpm.mjs +4468 -3877
  126. package/dist/worker.js +70 -67
  127. package/package.json +21 -13
  128. package/setup.js +17 -3
  129. package/dist/node_modules/@gar/promise-retry/LICENSE +0 -20
  130. package/dist/node_modules/@gar/promise-retry/lib/index.js +0 -62
  131. package/dist/node_modules/@gar/promise-retry/lib/retry.js +0 -109
  132. package/dist/node_modules/@gar/promise-retry/package.json +0 -45
  133. package/dist/node_modules/@npmcli/agent/lib/agents.js +0 -206
  134. package/dist/node_modules/@npmcli/agent/lib/dns.js +0 -53
  135. package/dist/node_modules/@npmcli/agent/lib/errors.js +0 -61
  136. package/dist/node_modules/@npmcli/agent/lib/index.js +0 -56
  137. package/dist/node_modules/@npmcli/agent/lib/options.js +0 -86
  138. package/dist/node_modules/@npmcli/agent/lib/proxy.js +0 -88
  139. package/dist/node_modules/@npmcli/agent/package.json +0 -60
  140. package/dist/node_modules/@npmcli/fs/lib/common/get-options.js +0 -20
  141. package/dist/node_modules/@npmcli/fs/lib/common/node.js +0 -9
  142. package/dist/node_modules/@npmcli/fs/lib/cp/LICENSE +0 -15
  143. package/dist/node_modules/@npmcli/fs/lib/cp/errors.js +0 -129
  144. package/dist/node_modules/@npmcli/fs/lib/cp/index.js +0 -22
  145. package/dist/node_modules/@npmcli/fs/lib/cp/polyfill.js +0 -428
  146. package/dist/node_modules/@npmcli/fs/lib/index.js +0 -13
  147. package/dist/node_modules/@npmcli/fs/lib/move-file.js +0 -78
  148. package/dist/node_modules/@npmcli/fs/lib/readdir-scoped.js +0 -20
  149. package/dist/node_modules/@npmcli/fs/lib/with-temp-dir.js +0 -39
  150. package/dist/node_modules/@npmcli/fs/package.json +0 -54
  151. package/dist/node_modules/@npmcli/redact/lib/deep-map.js +0 -71
  152. package/dist/node_modules/@npmcli/redact/lib/error.js +0 -28
  153. package/dist/node_modules/@npmcli/redact/lib/index.js +0 -44
  154. package/dist/node_modules/@npmcli/redact/lib/matchers.js +0 -88
  155. package/dist/node_modules/@npmcli/redact/lib/server.js +0 -59
  156. package/dist/node_modules/@npmcli/redact/lib/utils.js +0 -202
  157. package/dist/node_modules/@npmcli/redact/package.json +0 -52
  158. package/dist/node_modules/agent-base/LICENSE +0 -22
  159. package/dist/node_modules/agent-base/dist/helpers.js +0 -66
  160. package/dist/node_modules/agent-base/dist/index.js +0 -178
  161. package/dist/node_modules/agent-base/package.json +0 -46
  162. package/dist/node_modules/balanced-match/dist/commonjs/index.js +0 -59
  163. package/dist/node_modules/balanced-match/dist/esm/index.js +0 -54
  164. package/dist/node_modules/balanced-match/package.json +0 -68
  165. package/dist/node_modules/brace-expansion/LICENSE +0 -23
  166. package/dist/node_modules/brace-expansion/dist/commonjs/index.js +0 -201
  167. package/dist/node_modules/brace-expansion/dist/commonjs/package.json +0 -3
  168. package/dist/node_modules/brace-expansion/dist/esm/index.js +0 -197
  169. package/dist/node_modules/brace-expansion/dist/esm/package.json +0 -3
  170. package/dist/node_modules/brace-expansion/package.json +0 -64
  171. package/dist/node_modules/cacache/lib/content/path.js +0 -29
  172. package/dist/node_modules/cacache/lib/content/read.js +0 -165
  173. package/dist/node_modules/cacache/lib/content/rm.js +0 -18
  174. package/dist/node_modules/cacache/lib/content/write.js +0 -206
  175. package/dist/node_modules/cacache/lib/entry-index.js +0 -336
  176. package/dist/node_modules/cacache/lib/get.js +0 -170
  177. package/dist/node_modules/cacache/lib/index.js +0 -42
  178. package/dist/node_modules/cacache/lib/memoization.js +0 -72
  179. package/dist/node_modules/cacache/lib/put.js +0 -80
  180. package/dist/node_modules/cacache/lib/rm.js +0 -31
  181. package/dist/node_modules/cacache/lib/util/glob.js +0 -7
  182. package/dist/node_modules/cacache/lib/util/hash-to-segments.js +0 -7
  183. package/dist/node_modules/cacache/lib/util/tmp.js +0 -32
  184. package/dist/node_modules/cacache/lib/verify.js +0 -258
  185. package/dist/node_modules/cacache/package.json +0 -81
  186. package/dist/node_modules/debug/LICENSE +0 -20
  187. package/dist/node_modules/debug/package.json +0 -64
  188. package/dist/node_modules/debug/src/browser.js +0 -272
  189. package/dist/node_modules/debug/src/common.js +0 -292
  190. package/dist/node_modules/debug/src/index.js +0 -10
  191. package/dist/node_modules/debug/src/node.js +0 -263
  192. package/dist/node_modules/fs-minipass/LICENSE +0 -15
  193. package/dist/node_modules/fs-minipass/lib/index.js +0 -443
  194. package/dist/node_modules/fs-minipass/package.json +0 -54
  195. package/dist/node_modules/glob/dist/commonjs/glob.js +0 -248
  196. package/dist/node_modules/glob/dist/commonjs/has-magic.js +0 -27
  197. package/dist/node_modules/glob/dist/commonjs/ignore.js +0 -119
  198. package/dist/node_modules/glob/dist/commonjs/index.js +0 -68
  199. package/dist/node_modules/glob/dist/commonjs/index.min.js +0 -4
  200. package/dist/node_modules/glob/dist/commonjs/package.json +0 -3
  201. package/dist/node_modules/glob/dist/commonjs/pattern.js +0 -223
  202. package/dist/node_modules/glob/dist/commonjs/processor.js +0 -301
  203. package/dist/node_modules/glob/dist/commonjs/walker.js +0 -387
  204. package/dist/node_modules/glob/dist/esm/glob.js +0 -244
  205. package/dist/node_modules/glob/dist/esm/has-magic.js +0 -23
  206. package/dist/node_modules/glob/dist/esm/ignore.js +0 -115
  207. package/dist/node_modules/glob/dist/esm/index.js +0 -55
  208. package/dist/node_modules/glob/dist/esm/index.min.js +0 -4
  209. package/dist/node_modules/glob/dist/esm/package.json +0 -3
  210. package/dist/node_modules/glob/dist/esm/pattern.js +0 -219
  211. package/dist/node_modules/glob/dist/esm/processor.js +0 -294
  212. package/dist/node_modules/glob/dist/esm/walker.js +0 -381
  213. package/dist/node_modules/glob/package.json +0 -98
  214. package/dist/node_modules/http-cache-semantics/LICENSE +0 -9
  215. package/dist/node_modules/http-cache-semantics/index.js +0 -928
  216. package/dist/node_modules/http-cache-semantics/package.json +0 -22
  217. package/dist/node_modules/http-proxy-agent/LICENSE +0 -22
  218. package/dist/node_modules/http-proxy-agent/dist/index.js +0 -148
  219. package/dist/node_modules/http-proxy-agent/package.json +0 -47
  220. package/dist/node_modules/https-proxy-agent/LICENSE +0 -22
  221. package/dist/node_modules/https-proxy-agent/dist/index.js +0 -180
  222. package/dist/node_modules/https-proxy-agent/dist/parse-proxy-response.js +0 -101
  223. package/dist/node_modules/https-proxy-agent/package.json +0 -50
  224. package/dist/node_modules/iconv-lite/LICENSE +0 -21
  225. package/dist/node_modules/iconv-lite/encodings/dbcs-codec.js +0 -532
  226. package/dist/node_modules/iconv-lite/encodings/dbcs-data.js +0 -185
  227. package/dist/node_modules/iconv-lite/encodings/index.js +0 -23
  228. package/dist/node_modules/iconv-lite/encodings/internal.js +0 -218
  229. package/dist/node_modules/iconv-lite/encodings/sbcs-codec.js +0 -75
  230. package/dist/node_modules/iconv-lite/encodings/sbcs-data-generated.js +0 -451
  231. package/dist/node_modules/iconv-lite/encodings/sbcs-data.js +0 -178
  232. package/dist/node_modules/iconv-lite/encodings/tables/big5-added.json +0 -122
  233. package/dist/node_modules/iconv-lite/encodings/tables/cp936.json +0 -264
  234. package/dist/node_modules/iconv-lite/encodings/tables/cp949.json +0 -273
  235. package/dist/node_modules/iconv-lite/encodings/tables/cp950.json +0 -177
  236. package/dist/node_modules/iconv-lite/encodings/tables/eucjp.json +0 -182
  237. package/dist/node_modules/iconv-lite/encodings/tables/gb18030-ranges.json +0 -1
  238. package/dist/node_modules/iconv-lite/encodings/tables/gbk-added.json +0 -56
  239. package/dist/node_modules/iconv-lite/encodings/tables/shiftjis.json +0 -125
  240. package/dist/node_modules/iconv-lite/encodings/utf16.js +0 -187
  241. package/dist/node_modules/iconv-lite/encodings/utf32.js +0 -307
  242. package/dist/node_modules/iconv-lite/encodings/utf7.js +0 -283
  243. package/dist/node_modules/iconv-lite/lib/bom-handling.js +0 -48
  244. package/dist/node_modules/iconv-lite/lib/helpers/merge-exports.js +0 -13
  245. package/dist/node_modules/iconv-lite/lib/index.js +0 -182
  246. package/dist/node_modules/iconv-lite/lib/streams.js +0 -105
  247. package/dist/node_modules/iconv-lite/package.json +0 -70
  248. package/dist/node_modules/ip-address/LICENSE +0 -19
  249. package/dist/node_modules/ip-address/dist/address-error.js +0 -12
  250. package/dist/node_modules/ip-address/dist/common.js +0 -46
  251. package/dist/node_modules/ip-address/dist/ip-address.js +0 -35
  252. package/dist/node_modules/ip-address/dist/ipv4.js +0 -360
  253. package/dist/node_modules/ip-address/dist/ipv6.js +0 -1003
  254. package/dist/node_modules/ip-address/dist/v4/constants.js +0 -8
  255. package/dist/node_modules/ip-address/dist/v6/constants.js +0 -76
  256. package/dist/node_modules/ip-address/dist/v6/helpers.js +0 -45
  257. package/dist/node_modules/ip-address/dist/v6/regular-expressions.js +0 -95
  258. package/dist/node_modules/ip-address/package.json +0 -78
  259. package/dist/node_modules/lru-cache/dist/commonjs/diagnostics-channel.js +0 -10
  260. package/dist/node_modules/lru-cache/dist/commonjs/index.js +0 -1692
  261. package/dist/node_modules/lru-cache/dist/commonjs/index.min.js +0 -2
  262. package/dist/node_modules/lru-cache/dist/commonjs/package.json +0 -3
  263. package/dist/node_modules/lru-cache/dist/esm/browser/diagnostics-channel.js +0 -4
  264. package/dist/node_modules/lru-cache/dist/esm/browser/index.js +0 -1688
  265. package/dist/node_modules/lru-cache/dist/esm/browser/index.min.js +0 -2
  266. package/dist/node_modules/lru-cache/dist/esm/diagnostics-channel.js +0 -19
  267. package/dist/node_modules/lru-cache/dist/esm/index.js +0 -1688
  268. package/dist/node_modules/lru-cache/dist/esm/index.min.js +0 -2
  269. package/dist/node_modules/lru-cache/dist/esm/node/diagnostics-channel.js +0 -7
  270. package/dist/node_modules/lru-cache/dist/esm/node/index.js +0 -1688
  271. package/dist/node_modules/lru-cache/dist/esm/node/index.min.js +0 -2
  272. package/dist/node_modules/lru-cache/dist/esm/package.json +0 -3
  273. package/dist/node_modules/lru-cache/package.json +0 -126
  274. package/dist/node_modules/make-fetch-happen/LICENSE +0 -16
  275. package/dist/node_modules/make-fetch-happen/lib/cache/entry.js +0 -471
  276. package/dist/node_modules/make-fetch-happen/lib/cache/errors.js +0 -11
  277. package/dist/node_modules/make-fetch-happen/lib/cache/index.js +0 -49
  278. package/dist/node_modules/make-fetch-happen/lib/cache/key.js +0 -17
  279. package/dist/node_modules/make-fetch-happen/lib/cache/policy.js +0 -161
  280. package/dist/node_modules/make-fetch-happen/lib/fetch.js +0 -118
  281. package/dist/node_modules/make-fetch-happen/lib/index.js +0 -41
  282. package/dist/node_modules/make-fetch-happen/lib/options.js +0 -59
  283. package/dist/node_modules/make-fetch-happen/lib/pipeline.js +0 -41
  284. package/dist/node_modules/make-fetch-happen/lib/remote.js +0 -134
  285. package/dist/node_modules/make-fetch-happen/package.json +0 -75
  286. package/dist/node_modules/minimatch/dist/commonjs/assert-valid-pattern.js +0 -14
  287. package/dist/node_modules/minimatch/dist/commonjs/ast.js +0 -845
  288. package/dist/node_modules/minimatch/dist/commonjs/brace-expressions.js +0 -150
  289. package/dist/node_modules/minimatch/dist/commonjs/escape.js +0 -30
  290. package/dist/node_modules/minimatch/dist/commonjs/index.js +0 -1127
  291. package/dist/node_modules/minimatch/dist/commonjs/package.json +0 -3
  292. package/dist/node_modules/minimatch/dist/commonjs/unescape.js +0 -38
  293. package/dist/node_modules/minimatch/dist/esm/assert-valid-pattern.js +0 -10
  294. package/dist/node_modules/minimatch/dist/esm/ast.js +0 -841
  295. package/dist/node_modules/minimatch/dist/esm/brace-expressions.js +0 -146
  296. package/dist/node_modules/minimatch/dist/esm/escape.js +0 -26
  297. package/dist/node_modules/minimatch/dist/esm/index.js +0 -1114
  298. package/dist/node_modules/minimatch/dist/esm/package.json +0 -3
  299. package/dist/node_modules/minimatch/dist/esm/unescape.js +0 -34
  300. package/dist/node_modules/minimatch/package.json +0 -73
  301. package/dist/node_modules/minipass-collect/LICENSE +0 -15
  302. package/dist/node_modules/minipass-collect/index.js +0 -71
  303. package/dist/node_modules/minipass-collect/package.json +0 -30
  304. package/dist/node_modules/minipass-fetch/LICENSE +0 -28
  305. package/dist/node_modules/minipass-fetch/lib/abort-error.js +0 -17
  306. package/dist/node_modules/minipass-fetch/lib/blob.js +0 -97
  307. package/dist/node_modules/minipass-fetch/lib/body.js +0 -360
  308. package/dist/node_modules/minipass-fetch/lib/fetch-error.js +0 -32
  309. package/dist/node_modules/minipass-fetch/lib/headers.js +0 -267
  310. package/dist/node_modules/minipass-fetch/lib/index.js +0 -376
  311. package/dist/node_modules/minipass-fetch/lib/request.js +0 -282
  312. package/dist/node_modules/minipass-fetch/lib/response.js +0 -90
  313. package/dist/node_modules/minipass-fetch/package.json +0 -70
  314. package/dist/node_modules/minipass-flush/index.js +0 -39
  315. package/dist/node_modules/minipass-flush/node_modules/minipass/LICENSE +0 -15
  316. package/dist/node_modules/minipass-flush/node_modules/minipass/index.js +0 -649
  317. package/dist/node_modules/minipass-flush/node_modules/minipass/package.json +0 -56
  318. package/dist/node_modules/minipass-flush/package.json +0 -42
  319. package/dist/node_modules/minipass-pipeline/LICENSE +0 -15
  320. package/dist/node_modules/minipass-pipeline/index.js +0 -128
  321. package/dist/node_modules/minipass-pipeline/node_modules/minipass/LICENSE +0 -15
  322. package/dist/node_modules/minipass-pipeline/node_modules/minipass/index.js +0 -649
  323. package/dist/node_modules/minipass-pipeline/node_modules/minipass/package.json +0 -56
  324. package/dist/node_modules/minipass-pipeline/package.json +0 -29
  325. package/dist/node_modules/minipass-sized/LICENSE +0 -15
  326. package/dist/node_modules/minipass-sized/dist/commonjs/index.js +0 -69
  327. package/dist/node_modules/minipass-sized/dist/commonjs/package.json +0 -3
  328. package/dist/node_modules/minipass-sized/dist/esm/index.js +0 -64
  329. package/dist/node_modules/minipass-sized/dist/esm/package.json +0 -3
  330. package/dist/node_modules/minipass-sized/package.json +0 -69
  331. package/dist/node_modules/ms/index.js +0 -162
  332. package/dist/node_modules/ms/package.json +0 -38
  333. package/dist/node_modules/negotiator/LICENSE +0 -24
  334. package/dist/node_modules/negotiator/index.js +0 -83
  335. package/dist/node_modules/negotiator/lib/charset.js +0 -169
  336. package/dist/node_modules/negotiator/lib/encoding.js +0 -205
  337. package/dist/node_modules/negotiator/lib/language.js +0 -179
  338. package/dist/node_modules/negotiator/lib/mediaType.js +0 -294
  339. package/dist/node_modules/negotiator/package.json +0 -43
  340. package/dist/node_modules/p-map/index.js +0 -283
  341. package/dist/node_modules/p-map/license +0 -9
  342. package/dist/node_modules/p-map/package.json +0 -57
  343. package/dist/node_modules/path-scurry/dist/commonjs/index.js +0 -2018
  344. package/dist/node_modules/path-scurry/dist/commonjs/package.json +0 -3
  345. package/dist/node_modules/path-scurry/dist/esm/index.js +0 -1983
  346. package/dist/node_modules/path-scurry/dist/esm/package.json +0 -3
  347. package/dist/node_modules/path-scurry/package.json +0 -72
  348. package/dist/node_modules/safer-buffer/dangerous.js +0 -58
  349. package/dist/node_modules/safer-buffer/package.json +0 -34
  350. package/dist/node_modules/safer-buffer/safer.js +0 -77
  351. package/dist/node_modules/safer-buffer/tests.js +0 -406
  352. package/dist/node_modules/smart-buffer/.prettierrc.yaml +0 -5
  353. package/dist/node_modules/smart-buffer/LICENSE +0 -20
  354. package/dist/node_modules/smart-buffer/build/smartbuffer.js +0 -1233
  355. package/dist/node_modules/smart-buffer/build/utils.js +0 -108
  356. package/dist/node_modules/smart-buffer/package.json +0 -79
  357. package/dist/node_modules/socks/.eslintrc.cjs +0 -11
  358. package/dist/node_modules/socks/.prettierrc.yaml +0 -7
  359. package/dist/node_modules/socks/LICENSE +0 -20
  360. package/dist/node_modules/socks/build/client/socksclient.js +0 -793
  361. package/dist/node_modules/socks/build/common/constants.js +0 -108
  362. package/dist/node_modules/socks/build/common/helpers.js +0 -167
  363. package/dist/node_modules/socks/build/common/receivebuffer.js +0 -43
  364. package/dist/node_modules/socks/build/common/util.js +0 -25
  365. package/dist/node_modules/socks/build/index.js +0 -18
  366. package/dist/node_modules/socks/package.json +0 -58
  367. package/dist/node_modules/socks-proxy-agent/LICENSE +0 -22
  368. package/dist/node_modules/socks-proxy-agent/dist/index.js +0 -195
  369. package/dist/node_modules/socks-proxy-agent/package.json +0 -142
  370. package/dist/node_modules/ssri/lib/index.js +0 -550
  371. package/dist/node_modules/ssri/package.json +0 -66
  372. package/dist/node_modules/tar/node_modules/yallist/dist/commonjs/package.json +0 -3
  373. package/dist/node_modules/tar/node_modules/yallist/dist/esm/package.json +0 -3
  374. package/dist/node_modules/tar/node_modules/yallist/package.json +0 -68
  375. package/dist/node_modules/yallist/LICENSE +0 -15
  376. package/dist/node_modules/yallist/iterator.js +0 -8
  377. package/dist/node_modules/yallist/yallist.js +0 -426
  378. /package/dist/node_modules/{tar/node_modules/yallist → yallist}/dist/commonjs/index.js +0 -0
  379. /package/dist/node_modules/{balanced-match → yallist}/dist/commonjs/package.json +0 -0
  380. /package/dist/node_modules/{tar/node_modules/yallist → yallist}/dist/esm/index.js +0 -0
  381. /package/dist/node_modules/{balanced-match → yallist}/dist/esm/package.json +0 -0
@@ -0,0 +1,529 @@
1
+ 'use strict'
2
+
3
+ const util = require('../../core/util')
4
+ const {
5
+ ReadableStreamFrom,
6
+ isBlobLike,
7
+ isReadableStreamLike,
8
+ readableStreamClose,
9
+ createDeferredPromise,
10
+ fullyReadBody,
11
+ extractMimeType,
12
+ utf8DecodeBytes
13
+ } = require('./util')
14
+ const { FormData } = require('./formdata')
15
+ const { kState } = require('./symbols')
16
+ const { webidl } = require('./webidl')
17
+ const { Blob } = require('node:buffer')
18
+ const assert = require('node:assert')
19
+ const { isErrored, isDisturbed } = require('node:stream')
20
+ const { isArrayBuffer } = require('node:util/types')
21
+ const { serializeAMimeType } = require('./data-url')
22
+ const { multipartFormDataParser } = require('./formdata-parser')
23
+ let random
24
+
25
+ try {
26
+ const crypto = require('node:crypto')
27
+ random = (max) => crypto.randomInt(0, max)
28
+ } catch {
29
+ random = (max) => Math.floor(Math.random(max))
30
+ }
31
+
32
+ const textEncoder = new TextEncoder()
33
+ function noop () {}
34
+
35
+ const hasFinalizationRegistry = globalThis.FinalizationRegistry && process.version.indexOf('v18') !== 0
36
+ let streamRegistry
37
+
38
+ if (hasFinalizationRegistry) {
39
+ streamRegistry = new FinalizationRegistry((weakRef) => {
40
+ const stream = weakRef.deref()
41
+ if (stream && !stream.locked && !isDisturbed(stream) && !isErrored(stream)) {
42
+ stream.cancel('Response object has been garbage collected').catch(noop)
43
+ }
44
+ })
45
+ }
46
+
47
+ // https://fetch.spec.whatwg.org/#concept-bodyinit-extract
48
+ function extractBody (object, keepalive = false) {
49
+ // 1. Let stream be null.
50
+ let stream = null
51
+
52
+ // 2. If object is a ReadableStream object, then set stream to object.
53
+ if (object instanceof ReadableStream) {
54
+ stream = object
55
+ } else if (isBlobLike(object)) {
56
+ // 3. Otherwise, if object is a Blob object, set stream to the
57
+ // result of running object’s get stream.
58
+ stream = object.stream()
59
+ } else {
60
+ // 4. Otherwise, set stream to a new ReadableStream object, and set
61
+ // up stream with byte reading support.
62
+ stream = new ReadableStream({
63
+ async pull (controller) {
64
+ const buffer = typeof source === 'string' ? textEncoder.encode(source) : source
65
+
66
+ if (buffer.byteLength) {
67
+ controller.enqueue(buffer)
68
+ }
69
+
70
+ queueMicrotask(() => readableStreamClose(controller))
71
+ },
72
+ start () {},
73
+ type: 'bytes'
74
+ })
75
+ }
76
+
77
+ // 5. Assert: stream is a ReadableStream object.
78
+ assert(isReadableStreamLike(stream))
79
+
80
+ // 6. Let action be null.
81
+ let action = null
82
+
83
+ // 7. Let source be null.
84
+ let source = null
85
+
86
+ // 8. Let length be null.
87
+ let length = null
88
+
89
+ // 9. Let type be null.
90
+ let type = null
91
+
92
+ // 10. Switch on object:
93
+ if (typeof object === 'string') {
94
+ // Set source to the UTF-8 encoding of object.
95
+ // Note: setting source to a Uint8Array here breaks some mocking assumptions.
96
+ source = object
97
+
98
+ // Set type to `text/plain;charset=UTF-8`.
99
+ type = 'text/plain;charset=UTF-8'
100
+ } else if (object instanceof URLSearchParams) {
101
+ // URLSearchParams
102
+
103
+ // spec says to run application/x-www-form-urlencoded on body.list
104
+ // this is implemented in Node.js as apart of an URLSearchParams instance toString method
105
+ // See: https://github.com/nodejs/node/blob/e46c680bf2b211bbd52cf959ca17ee98c7f657f5/lib/internal/url.js#L490
106
+ // and https://github.com/nodejs/node/blob/e46c680bf2b211bbd52cf959ca17ee98c7f657f5/lib/internal/url.js#L1100
107
+
108
+ // Set source to the result of running the application/x-www-form-urlencoded serializer with object’s list.
109
+ source = object.toString()
110
+
111
+ // Set type to `application/x-www-form-urlencoded;charset=UTF-8`.
112
+ type = 'application/x-www-form-urlencoded;charset=UTF-8'
113
+ } else if (isArrayBuffer(object)) {
114
+ // BufferSource/ArrayBuffer
115
+
116
+ // Set source to a copy of the bytes held by object.
117
+ source = new Uint8Array(object.slice())
118
+ } else if (ArrayBuffer.isView(object)) {
119
+ // BufferSource/ArrayBufferView
120
+
121
+ // Set source to a copy of the bytes held by object.
122
+ source = new Uint8Array(object.buffer.slice(object.byteOffset, object.byteOffset + object.byteLength))
123
+ } else if (util.isFormDataLike(object)) {
124
+ const boundary = `----formdata-undici-0${`${random(1e11)}`.padStart(11, '0')}`
125
+ const prefix = `--${boundary}\r\nContent-Disposition: form-data`
126
+
127
+ /*! formdata-polyfill. MIT License. Jimmy Wärting <https://jimmy.warting.se/opensource> */
128
+ const escape = (str) =>
129
+ str.replace(/\n/g, '%0A').replace(/\r/g, '%0D').replace(/"/g, '%22')
130
+ const normalizeLinefeeds = (value) => value.replace(/\r?\n|\r/g, '\r\n')
131
+
132
+ // Set action to this step: run the multipart/form-data
133
+ // encoding algorithm, with object’s entry list and UTF-8.
134
+ // - This ensures that the body is immutable and can't be changed afterwords
135
+ // - That the content-length is calculated in advance.
136
+ // - And that all parts are pre-encoded and ready to be sent.
137
+
138
+ const blobParts = []
139
+ const rn = new Uint8Array([13, 10]) // '\r\n'
140
+ length = 0
141
+ let hasUnknownSizeValue = false
142
+
143
+ for (const [name, value] of object) {
144
+ if (typeof value === 'string') {
145
+ const chunk = textEncoder.encode(prefix +
146
+ `; name="${escape(normalizeLinefeeds(name))}"` +
147
+ `\r\n\r\n${normalizeLinefeeds(value)}\r\n`)
148
+ blobParts.push(chunk)
149
+ length += chunk.byteLength
150
+ } else {
151
+ const chunk = textEncoder.encode(`${prefix}; name="${escape(normalizeLinefeeds(name))}"` +
152
+ (value.name ? `; filename="${escape(value.name)}"` : '') + '\r\n' +
153
+ `Content-Type: ${
154
+ value.type || 'application/octet-stream'
155
+ }\r\n\r\n`)
156
+ blobParts.push(chunk, value, rn)
157
+ if (typeof value.size === 'number') {
158
+ length += chunk.byteLength + value.size + rn.byteLength
159
+ } else {
160
+ hasUnknownSizeValue = true
161
+ }
162
+ }
163
+ }
164
+
165
+ // CRLF is appended to the body to function with legacy servers and match other implementations.
166
+ // https://github.com/curl/curl/blob/3434c6b46e682452973972e8313613dfa58cd690/lib/mime.c#L1029-L1030
167
+ // https://github.com/form-data/form-data/issues/63
168
+ const chunk = textEncoder.encode(`--${boundary}--\r\n`)
169
+ blobParts.push(chunk)
170
+ length += chunk.byteLength
171
+ if (hasUnknownSizeValue) {
172
+ length = null
173
+ }
174
+
175
+ // Set source to object.
176
+ source = object
177
+
178
+ action = async function * () {
179
+ for (const part of blobParts) {
180
+ if (part.stream) {
181
+ yield * part.stream()
182
+ } else {
183
+ yield part
184
+ }
185
+ }
186
+ }
187
+
188
+ // Set type to `multipart/form-data; boundary=`,
189
+ // followed by the multipart/form-data boundary string generated
190
+ // by the multipart/form-data encoding algorithm.
191
+ type = `multipart/form-data; boundary=${boundary}`
192
+ } else if (isBlobLike(object)) {
193
+ // Blob
194
+
195
+ // Set source to object.
196
+ source = object
197
+
198
+ // Set length to object’s size.
199
+ length = object.size
200
+
201
+ // If object’s type attribute is not the empty byte sequence, set
202
+ // type to its value.
203
+ if (object.type) {
204
+ type = object.type
205
+ }
206
+ } else if (typeof object[Symbol.asyncIterator] === 'function') {
207
+ // If keepalive is true, then throw a TypeError.
208
+ if (keepalive) {
209
+ throw new TypeError('keepalive')
210
+ }
211
+
212
+ // If object is disturbed or locked, then throw a TypeError.
213
+ if (util.isDisturbed(object) || object.locked) {
214
+ throw new TypeError(
215
+ 'Response body object should not be disturbed or locked'
216
+ )
217
+ }
218
+
219
+ stream =
220
+ object instanceof ReadableStream ? object : ReadableStreamFrom(object)
221
+ }
222
+
223
+ // 11. If source is a byte sequence, then set action to a
224
+ // step that returns source and length to source’s length.
225
+ if (typeof source === 'string' || util.isBuffer(source)) {
226
+ length = Buffer.byteLength(source)
227
+ }
228
+
229
+ // 12. If action is non-null, then run these steps in in parallel:
230
+ if (action != null) {
231
+ // Run action.
232
+ let iterator
233
+ stream = new ReadableStream({
234
+ async start () {
235
+ iterator = action(object)[Symbol.asyncIterator]()
236
+ },
237
+ async pull (controller) {
238
+ const { value, done } = await iterator.next()
239
+ if (done) {
240
+ // When running action is done, close stream.
241
+ queueMicrotask(() => {
242
+ controller.close()
243
+ controller.byobRequest?.respond(0)
244
+ })
245
+ } else {
246
+ // Whenever one or more bytes are available and stream is not errored,
247
+ // enqueue a Uint8Array wrapping an ArrayBuffer containing the available
248
+ // bytes into stream.
249
+ if (!isErrored(stream)) {
250
+ const buffer = new Uint8Array(value)
251
+ if (buffer.byteLength) {
252
+ controller.enqueue(buffer)
253
+ }
254
+ }
255
+ }
256
+ return controller.desiredSize > 0
257
+ },
258
+ async cancel (reason) {
259
+ await iterator.return()
260
+ },
261
+ type: 'bytes'
262
+ })
263
+ }
264
+
265
+ // 13. Let body be a body whose stream is stream, source is source,
266
+ // and length is length.
267
+ const body = { stream, source, length }
268
+
269
+ // 14. Return (body, type).
270
+ return [body, type]
271
+ }
272
+
273
+ // https://fetch.spec.whatwg.org/#bodyinit-safely-extract
274
+ function safelyExtractBody (object, keepalive = false) {
275
+ // To safely extract a body and a `Content-Type` value from
276
+ // a byte sequence or BodyInit object object, run these steps:
277
+
278
+ // 1. If object is a ReadableStream object, then:
279
+ if (object instanceof ReadableStream) {
280
+ // Assert: object is neither disturbed nor locked.
281
+ // istanbul ignore next
282
+ assert(!util.isDisturbed(object), 'The body has already been consumed.')
283
+ // istanbul ignore next
284
+ assert(!object.locked, 'The stream is locked.')
285
+ }
286
+
287
+ // 2. Return the results of extracting object.
288
+ return extractBody(object, keepalive)
289
+ }
290
+
291
+ function cloneBody (instance, body) {
292
+ // To clone a body body, run these steps:
293
+
294
+ // https://fetch.spec.whatwg.org/#concept-body-clone
295
+
296
+ // 1. Let « out1, out2 » be the result of teeing body’s stream.
297
+ const [out1, out2] = body.stream.tee()
298
+
299
+ // 2. Set body’s stream to out1.
300
+ body.stream = out1
301
+
302
+ // 3. Return a body whose stream is out2 and other members are copied from body.
303
+ return {
304
+ stream: out2,
305
+ length: body.length,
306
+ source: body.source
307
+ }
308
+ }
309
+
310
+ function throwIfAborted (state) {
311
+ if (state.aborted) {
312
+ throw new DOMException('The operation was aborted.', 'AbortError')
313
+ }
314
+ }
315
+
316
+ function bodyMixinMethods (instance) {
317
+ const methods = {
318
+ blob () {
319
+ // The blob() method steps are to return the result of
320
+ // running consume body with this and the following step
321
+ // given a byte sequence bytes: return a Blob whose
322
+ // contents are bytes and whose type attribute is this’s
323
+ // MIME type.
324
+ return consumeBody(this, (bytes) => {
325
+ let mimeType = bodyMimeType(this)
326
+
327
+ if (mimeType === null) {
328
+ mimeType = ''
329
+ } else if (mimeType) {
330
+ mimeType = serializeAMimeType(mimeType)
331
+ }
332
+
333
+ // Return a Blob whose contents are bytes and type attribute
334
+ // is mimeType.
335
+ return new Blob([bytes], { type: mimeType })
336
+ }, instance)
337
+ },
338
+
339
+ arrayBuffer () {
340
+ // The arrayBuffer() method steps are to return the result
341
+ // of running consume body with this and the following step
342
+ // given a byte sequence bytes: return a new ArrayBuffer
343
+ // whose contents are bytes.
344
+ return consumeBody(this, (bytes) => {
345
+ return new Uint8Array(bytes).buffer
346
+ }, instance)
347
+ },
348
+
349
+ text () {
350
+ // The text() method steps are to return the result of running
351
+ // consume body with this and UTF-8 decode.
352
+ return consumeBody(this, utf8DecodeBytes, instance)
353
+ },
354
+
355
+ json () {
356
+ // The json() method steps are to return the result of running
357
+ // consume body with this and parse JSON from bytes.
358
+ return consumeBody(this, parseJSONFromBytes, instance)
359
+ },
360
+
361
+ formData () {
362
+ // The formData() method steps are to return the result of running
363
+ // consume body with this and the following step given a byte sequence bytes:
364
+ return consumeBody(this, (value) => {
365
+ // 1. Let mimeType be the result of get the MIME type with this.
366
+ const mimeType = bodyMimeType(this)
367
+
368
+ // 2. If mimeType is non-null, then switch on mimeType’s essence and run
369
+ // the corresponding steps:
370
+ if (mimeType !== null) {
371
+ switch (mimeType.essence) {
372
+ case 'multipart/form-data': {
373
+ // 1. ... [long step]
374
+ const parsed = multipartFormDataParser(value, mimeType)
375
+
376
+ // 2. If that fails for some reason, then throw a TypeError.
377
+ if (parsed === 'failure') {
378
+ throw new TypeError('Failed to parse body as FormData.')
379
+ }
380
+
381
+ // 3. Return a new FormData object, appending each entry,
382
+ // resulting from the parsing operation, to its entry list.
383
+ const fd = new FormData()
384
+ fd[kState] = parsed
385
+
386
+ return fd
387
+ }
388
+ case 'application/x-www-form-urlencoded': {
389
+ // 1. Let entries be the result of parsing bytes.
390
+ const entries = new URLSearchParams(value.toString())
391
+
392
+ // 2. If entries is failure, then throw a TypeError.
393
+
394
+ // 3. Return a new FormData object whose entry list is entries.
395
+ const fd = new FormData()
396
+
397
+ for (const [name, value] of entries) {
398
+ fd.append(name, value)
399
+ }
400
+
401
+ return fd
402
+ }
403
+ }
404
+ }
405
+
406
+ // 3. Throw a TypeError.
407
+ throw new TypeError(
408
+ 'Content-Type was not one of "multipart/form-data" or "application/x-www-form-urlencoded".'
409
+ )
410
+ }, instance)
411
+ },
412
+
413
+ bytes () {
414
+ // The bytes() method steps are to return the result of running consume body
415
+ // with this and the following step given a byte sequence bytes: return the
416
+ // result of creating a Uint8Array from bytes in this’s relevant realm.
417
+ return consumeBody(this, (bytes) => {
418
+ return new Uint8Array(bytes)
419
+ }, instance)
420
+ }
421
+ }
422
+
423
+ return methods
424
+ }
425
+
426
+ function mixinBody (prototype) {
427
+ Object.assign(prototype.prototype, bodyMixinMethods(prototype))
428
+ }
429
+
430
+ /**
431
+ * @see https://fetch.spec.whatwg.org/#concept-body-consume-body
432
+ * @param {Response|Request} object
433
+ * @param {(value: unknown) => unknown} convertBytesToJSValue
434
+ * @param {Response|Request} instance
435
+ */
436
+ async function consumeBody (object, convertBytesToJSValue, instance) {
437
+ webidl.brandCheck(object, instance)
438
+
439
+ // 1. If object is unusable, then return a promise rejected
440
+ // with a TypeError.
441
+ if (bodyUnusable(object)) {
442
+ throw new TypeError('Body is unusable: Body has already been read')
443
+ }
444
+
445
+ throwIfAborted(object[kState])
446
+
447
+ // 2. Let promise be a new promise.
448
+ const promise = createDeferredPromise()
449
+
450
+ // 3. Let errorSteps given error be to reject promise with error.
451
+ const errorSteps = (error) => promise.reject(error)
452
+
453
+ // 4. Let successSteps given a byte sequence data be to resolve
454
+ // promise with the result of running convertBytesToJSValue
455
+ // with data. If that threw an exception, then run errorSteps
456
+ // with that exception.
457
+ const successSteps = (data) => {
458
+ try {
459
+ promise.resolve(convertBytesToJSValue(data))
460
+ } catch (e) {
461
+ errorSteps(e)
462
+ }
463
+ }
464
+
465
+ // 5. If object’s body is null, then run successSteps with an
466
+ // empty byte sequence.
467
+ if (object[kState].body == null) {
468
+ successSteps(Buffer.allocUnsafe(0))
469
+ return promise.promise
470
+ }
471
+
472
+ // 6. Otherwise, fully read object’s body given successSteps,
473
+ // errorSteps, and object’s relevant global object.
474
+ await fullyReadBody(object[kState].body, successSteps, errorSteps)
475
+
476
+ // 7. Return promise.
477
+ return promise.promise
478
+ }
479
+
480
+ // https://fetch.spec.whatwg.org/#body-unusable
481
+ function bodyUnusable (object) {
482
+ const body = object[kState].body
483
+
484
+ // An object including the Body interface mixin is
485
+ // said to be unusable if its body is non-null and
486
+ // its body’s stream is disturbed or locked.
487
+ return body != null && (body.stream.locked || util.isDisturbed(body.stream))
488
+ }
489
+
490
+ /**
491
+ * @see https://infra.spec.whatwg.org/#parse-json-bytes-to-a-javascript-value
492
+ * @param {Uint8Array} bytes
493
+ */
494
+ function parseJSONFromBytes (bytes) {
495
+ return JSON.parse(utf8DecodeBytes(bytes))
496
+ }
497
+
498
+ /**
499
+ * @see https://fetch.spec.whatwg.org/#concept-body-mime-type
500
+ * @param {import('./response').Response|import('./request').Request} requestOrResponse
501
+ */
502
+ function bodyMimeType (requestOrResponse) {
503
+ // 1. Let headers be null.
504
+ // 2. If requestOrResponse is a Request object, then set headers to requestOrResponse’s request’s header list.
505
+ // 3. Otherwise, set headers to requestOrResponse’s response’s header list.
506
+ /** @type {import('./headers').HeadersList} */
507
+ const headers = requestOrResponse[kState].headersList
508
+
509
+ // 4. Let mimeType be the result of extracting a MIME type from headers.
510
+ const mimeType = extractMimeType(headers)
511
+
512
+ // 5. If mimeType is failure, then return null.
513
+ if (mimeType === 'failure') {
514
+ return null
515
+ }
516
+
517
+ // 6. Return mimeType.
518
+ return mimeType
519
+ }
520
+
521
+ module.exports = {
522
+ extractBody,
523
+ safelyExtractBody,
524
+ cloneBody,
525
+ mixinBody,
526
+ streamRegistry,
527
+ hasFinalizationRegistry,
528
+ bodyUnusable
529
+ }
@@ -0,0 +1,124 @@
1
+ 'use strict'
2
+
3
+ const corsSafeListedMethods = /** @type {const} */ (['GET', 'HEAD', 'POST'])
4
+ const corsSafeListedMethodsSet = new Set(corsSafeListedMethods)
5
+
6
+ const nullBodyStatus = /** @type {const} */ ([101, 204, 205, 304])
7
+
8
+ const redirectStatus = /** @type {const} */ ([301, 302, 303, 307, 308])
9
+ const redirectStatusSet = new Set(redirectStatus)
10
+
11
+ /**
12
+ * @see https://fetch.spec.whatwg.org/#block-bad-port
13
+ */
14
+ const badPorts = /** @type {const} */ ([
15
+ '1', '7', '9', '11', '13', '15', '17', '19', '20', '21', '22', '23', '25', '37', '42', '43', '53', '69', '77', '79',
16
+ '87', '95', '101', '102', '103', '104', '109', '110', '111', '113', '115', '117', '119', '123', '135', '137',
17
+ '139', '143', '161', '179', '389', '427', '465', '512', '513', '514', '515', '526', '530', '531', '532',
18
+ '540', '548', '554', '556', '563', '587', '601', '636', '989', '990', '993', '995', '1719', '1720', '1723',
19
+ '2049', '3659', '4045', '4190', '5060', '5061', '6000', '6566', '6665', '6666', '6667', '6668', '6669', '6679',
20
+ '6697', '10080'
21
+ ])
22
+ const badPortsSet = new Set(badPorts)
23
+
24
+ /**
25
+ * @see https://w3c.github.io/webappsec-referrer-policy/#referrer-policies
26
+ */
27
+ const referrerPolicy = /** @type {const} */ ([
28
+ '',
29
+ 'no-referrer',
30
+ 'no-referrer-when-downgrade',
31
+ 'same-origin',
32
+ 'origin',
33
+ 'strict-origin',
34
+ 'origin-when-cross-origin',
35
+ 'strict-origin-when-cross-origin',
36
+ 'unsafe-url'
37
+ ])
38
+ const referrerPolicySet = new Set(referrerPolicy)
39
+
40
+ const requestRedirect = /** @type {const} */ (['follow', 'manual', 'error'])
41
+
42
+ const safeMethods = /** @type {const} */ (['GET', 'HEAD', 'OPTIONS', 'TRACE'])
43
+ const safeMethodsSet = new Set(safeMethods)
44
+
45
+ const requestMode = /** @type {const} */ (['navigate', 'same-origin', 'no-cors', 'cors'])
46
+
47
+ const requestCredentials = /** @type {const} */ (['omit', 'same-origin', 'include'])
48
+
49
+ const requestCache = /** @type {const} */ ([
50
+ 'default',
51
+ 'no-store',
52
+ 'reload',
53
+ 'no-cache',
54
+ 'force-cache',
55
+ 'only-if-cached'
56
+ ])
57
+
58
+ /**
59
+ * @see https://fetch.spec.whatwg.org/#request-body-header-name
60
+ */
61
+ const requestBodyHeader = /** @type {const} */ ([
62
+ 'content-encoding',
63
+ 'content-language',
64
+ 'content-location',
65
+ 'content-type',
66
+ // See https://github.com/nodejs/undici/issues/2021
67
+ // 'Content-Length' is a forbidden header name, which is typically
68
+ // removed in the Headers implementation. However, undici doesn't
69
+ // filter out headers, so we add it here.
70
+ 'content-length'
71
+ ])
72
+
73
+ /**
74
+ * @see https://fetch.spec.whatwg.org/#enumdef-requestduplex
75
+ */
76
+ const requestDuplex = /** @type {const} */ ([
77
+ 'half'
78
+ ])
79
+
80
+ /**
81
+ * @see http://fetch.spec.whatwg.org/#forbidden-method
82
+ */
83
+ const forbiddenMethods = /** @type {const} */ (['CONNECT', 'TRACE', 'TRACK'])
84
+ const forbiddenMethodsSet = new Set(forbiddenMethods)
85
+
86
+ const subresource = /** @type {const} */ ([
87
+ 'audio',
88
+ 'audioworklet',
89
+ 'font',
90
+ 'image',
91
+ 'manifest',
92
+ 'paintworklet',
93
+ 'script',
94
+ 'style',
95
+ 'track',
96
+ 'video',
97
+ 'xslt',
98
+ ''
99
+ ])
100
+ const subresourceSet = new Set(subresource)
101
+
102
+ module.exports = {
103
+ subresource,
104
+ forbiddenMethods,
105
+ requestBodyHeader,
106
+ referrerPolicy,
107
+ requestRedirect,
108
+ requestMode,
109
+ requestCredentials,
110
+ requestCache,
111
+ redirectStatus,
112
+ corsSafeListedMethods,
113
+ nullBodyStatus,
114
+ safeMethods,
115
+ badPorts,
116
+ requestDuplex,
117
+ subresourceSet,
118
+ badPortsSet,
119
+ redirectStatusSet,
120
+ corsSafeListedMethodsSet,
121
+ safeMethodsSet,
122
+ forbiddenMethodsSet,
123
+ referrerPolicySet
124
+ }