@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
@@ -1,360 +0,0 @@
1
- 'use strict'
2
- const { Minipass } = require('minipass')
3
- const { MinipassSized } = require('minipass-sized')
4
-
5
- const Blob = require('./blob.js')
6
- const { BUFFER } = Blob
7
- const FetchError = require('./fetch-error.js')
8
-
9
- // optional dependency on 'iconv-lite'
10
- let decode
11
- try {
12
- decode = require('iconv-lite').decode
13
- } catch (e) {
14
- // defer error until textConverted is called
15
- }
16
-
17
- const INTERNALS = Symbol('Body internals')
18
- const CONSUME_BODY = Symbol('consumeBody')
19
-
20
- class Body {
21
- constructor (bodyArg, options = {}) {
22
- const { size = 0, timeout = 0 } = options
23
- const body = bodyArg === undefined || bodyArg === null ? null
24
- : isURLSearchParams(bodyArg) ? Buffer.from(bodyArg.toString())
25
- : isBlob(bodyArg) ? bodyArg
26
- : Buffer.isBuffer(bodyArg) ? bodyArg
27
- : Object.prototype.toString.call(bodyArg) === '[object ArrayBuffer]'
28
- ? Buffer.from(bodyArg)
29
- : ArrayBuffer.isView(bodyArg)
30
- ? Buffer.from(bodyArg.buffer, bodyArg.byteOffset, bodyArg.byteLength)
31
- : Minipass.isStream(bodyArg) ? bodyArg
32
- : Buffer.from(String(bodyArg))
33
-
34
- this[INTERNALS] = {
35
- body,
36
- disturbed: false,
37
- error: null,
38
- }
39
-
40
- this.size = size
41
- this.timeout = timeout
42
-
43
- if (Minipass.isStream(body)) {
44
- body.on('error', er => {
45
- const error = er.name === 'AbortError' ? er
46
- : new FetchError(`Invalid response while trying to fetch ${
47
- this.url}: ${er.message}`, 'system', er)
48
- this[INTERNALS].error = error
49
- })
50
- }
51
- }
52
-
53
- get body () {
54
- return this[INTERNALS].body
55
- }
56
-
57
- get bodyUsed () {
58
- return this[INTERNALS].disturbed
59
- }
60
-
61
- arrayBuffer () {
62
- return this[CONSUME_BODY]().then(buf =>
63
- buf.buffer.slice(buf.byteOffset, buf.byteOffset + buf.byteLength))
64
- }
65
-
66
- blob () {
67
- const ct = this.headers && this.headers.get('content-type') || ''
68
- return this[CONSUME_BODY]().then(buf => Object.assign(
69
- new Blob([], { type: ct.toLowerCase() }),
70
- { [BUFFER]: buf }
71
- ))
72
- }
73
-
74
- async json () {
75
- const buf = await this[CONSUME_BODY]()
76
- try {
77
- return JSON.parse(buf.toString())
78
- } catch (er) {
79
- throw new FetchError(
80
- `invalid json response body at ${this.url} reason: ${er.message}`,
81
- 'invalid-json'
82
- )
83
- }
84
- }
85
-
86
- text () {
87
- return this[CONSUME_BODY]().then(buf => buf.toString())
88
- }
89
-
90
- buffer () {
91
- return this[CONSUME_BODY]()
92
- }
93
-
94
- textConverted () {
95
- /* istanbul ignore if */
96
- if (typeof decode !== 'function') {
97
- throw new Error('The package `iconv-lite` must be installed to use the textConverted() function')
98
- }
99
- return this[CONSUME_BODY]().then(buf => convertBody(buf, this.headers))
100
- }
101
-
102
- [CONSUME_BODY] () {
103
- if (this[INTERNALS].disturbed) {
104
- return Promise.reject(new TypeError(`body used already for: ${
105
- this.url}`))
106
- }
107
-
108
- this[INTERNALS].disturbed = true
109
-
110
- if (this[INTERNALS].error) {
111
- return Promise.reject(this[INTERNALS].error)
112
- }
113
-
114
- // body is null
115
- if (this.body === null) {
116
- return Promise.resolve(Buffer.alloc(0))
117
- }
118
-
119
- if (Buffer.isBuffer(this.body)) {
120
- return Promise.resolve(this.body)
121
- }
122
-
123
- const upstream = isBlob(this.body) ? this.body.stream() : this.body
124
-
125
- /* istanbul ignore if: should never happen */
126
- if (!Minipass.isStream(upstream)) {
127
- return Promise.resolve(Buffer.alloc(0))
128
- }
129
-
130
- const stream = this.size && upstream instanceof MinipassSized ? upstream
131
- : !this.size && upstream instanceof Minipass &&
132
- !(upstream instanceof MinipassSized) ? upstream
133
- : this.size ? new MinipassSized({ size: this.size })
134
- : new Minipass()
135
-
136
- // allow timeout on slow response body, but only if the stream is still writable. this
137
- // makes the timeout center on the socket stream from lib/index.js rather than the
138
- // intermediary minipass stream we create to receive the data
139
- const resTimeout = this.timeout && stream.writable ? setTimeout(() => {
140
- stream.emit('error', new FetchError(
141
- `Response timeout while trying to fetch ${
142
- this.url} (over ${this.timeout}ms)`, 'body-timeout'))
143
- }, this.timeout) : null
144
-
145
- // do not keep the process open just for this timeout, even
146
- // though we expect it'll get cleared eventually.
147
- if (resTimeout && resTimeout.unref) {
148
- resTimeout.unref()
149
- }
150
-
151
- // do the pipe in the promise, because the pipe() can send too much
152
- // data through right away and upset the MP Sized object
153
- return new Promise((resolve) => {
154
- // if the stream is some other kind of stream, then pipe through a MP
155
- // so we can collect it more easily.
156
- if (stream !== upstream) {
157
- upstream.on('error', er => stream.emit('error', er))
158
- upstream.pipe(stream)
159
- }
160
- resolve()
161
- }).then(() => stream.concat()).then(buf => {
162
- clearTimeout(resTimeout)
163
- return buf
164
- }).catch(er => {
165
- clearTimeout(resTimeout)
166
- // request was aborted, reject with this Error
167
- if (er.name === 'AbortError' || er.name === 'FetchError') {
168
- throw er
169
- } else if (er.name === 'RangeError') {
170
- throw new FetchError(`Could not create Buffer from response body for ${
171
- this.url}: ${er.message}`, 'system', er)
172
- } else {
173
- // other errors, such as incorrect content-encoding or content-length
174
- throw new FetchError(`Invalid response body while trying to fetch ${
175
- this.url}: ${er.message}`, 'system', er)
176
- }
177
- })
178
- }
179
-
180
- static clone (instance) {
181
- if (instance.bodyUsed) {
182
- throw new Error('cannot clone body after it is used')
183
- }
184
-
185
- const body = instance.body
186
-
187
- // check that body is a stream and not form-data object
188
- // NB: can't clone the form-data object without having it as a dependency
189
- if (Minipass.isStream(body) && typeof body.getBoundary !== 'function') {
190
- // create a dedicated tee stream so that we don't lose data
191
- // potentially sitting in the body stream's buffer by writing it
192
- // immediately to p1 and not having it for p2.
193
- const tee = new Minipass()
194
- const p1 = new Minipass()
195
- const p2 = new Minipass()
196
- tee.on('error', er => {
197
- p1.emit('error', er)
198
- p2.emit('error', er)
199
- })
200
- body.on('error', er => tee.emit('error', er))
201
- tee.pipe(p1)
202
- tee.pipe(p2)
203
- body.pipe(tee)
204
- // set instance body to one fork, return the other
205
- instance[INTERNALS].body = p1
206
- return p2
207
- } else {
208
- return instance.body
209
- }
210
- }
211
-
212
- static extractContentType (body) {
213
- return body === null || body === undefined ? null
214
- : typeof body === 'string' ? 'text/plain;charset=UTF-8'
215
- : isURLSearchParams(body)
216
- ? 'application/x-www-form-urlencoded;charset=UTF-8'
217
- : isBlob(body) ? body.type || null
218
- : Buffer.isBuffer(body) ? null
219
- : Object.prototype.toString.call(body) === '[object ArrayBuffer]' ? null
220
- : ArrayBuffer.isView(body) ? null
221
- : typeof body.getBoundary === 'function'
222
- ? `multipart/form-data;boundary=${body.getBoundary()}`
223
- : Minipass.isStream(body) ? null
224
- : 'text/plain;charset=UTF-8'
225
- }
226
-
227
- static getTotalBytes (instance) {
228
- const { body } = instance
229
- return (body === null || body === undefined) ? 0
230
- : isBlob(body) ? body.size
231
- : Buffer.isBuffer(body) ? body.length
232
- : body && typeof body.getLengthSync === 'function' && (
233
- // detect form data input from form-data module
234
- body._lengthRetrievers &&
235
- /* istanbul ignore next */ body._lengthRetrievers.length === 0 || // 1.x
236
- body.hasKnownLength && body.hasKnownLength()) // 2.x
237
- ? body.getLengthSync()
238
- : null
239
- }
240
-
241
- static writeToStream (dest, instance) {
242
- const { body } = instance
243
-
244
- if (body === null || body === undefined) {
245
- dest.end()
246
- } else if (Buffer.isBuffer(body) || typeof body === 'string') {
247
- dest.end(body)
248
- } else {
249
- // body is stream or blob
250
- const stream = isBlob(body) ? body.stream() : body
251
- stream.on('error', er => dest.emit('error', er)).pipe(dest)
252
- }
253
-
254
- return dest
255
- }
256
- }
257
-
258
- Object.defineProperties(Body.prototype, {
259
- body: { enumerable: true },
260
- bodyUsed: { enumerable: true },
261
- arrayBuffer: { enumerable: true },
262
- blob: { enumerable: true },
263
- json: { enumerable: true },
264
- text: { enumerable: true },
265
- })
266
-
267
- const isURLSearchParams = obj =>
268
- // Duck-typing as a necessary condition.
269
- (typeof obj !== 'object' ||
270
- typeof obj.append !== 'function' ||
271
- typeof obj.delete !== 'function' ||
272
- typeof obj.get !== 'function' ||
273
- typeof obj.getAll !== 'function' ||
274
- typeof obj.has !== 'function' ||
275
- typeof obj.set !== 'function') ? false
276
- // Brand-checking and more duck-typing as optional condition.
277
- : obj.constructor.name === 'URLSearchParams' ||
278
- Object.prototype.toString.call(obj) === '[object URLSearchParams]' ||
279
- typeof obj.sort === 'function'
280
-
281
- const isBlob = obj =>
282
- typeof obj === 'object' &&
283
- typeof obj.arrayBuffer === 'function' &&
284
- typeof obj.type === 'string' &&
285
- typeof obj.stream === 'function' &&
286
- typeof obj.constructor === 'function' &&
287
- typeof obj.constructor.name === 'string' &&
288
- /^(Blob|File)$/.test(obj.constructor.name) &&
289
- /^(Blob|File)$/.test(obj[Symbol.toStringTag])
290
-
291
- const convertBody = (buffer, headers) => {
292
- const ct = headers && headers.get('content-type')
293
- let charset = 'utf-8'
294
- let res
295
-
296
- // header
297
- if (ct) {
298
- res = /charset=([^;]*)/i.exec(ct)
299
- }
300
-
301
- // no charset in content type, peek at response body for at most 1024 bytes
302
- const str = buffer.slice(0, 1024).toString()
303
-
304
- // html5
305
- if (!res && str) {
306
- res = /<meta.+?charset=(['"])(.+?)\1/i.exec(str)
307
- }
308
-
309
- // html4
310
- if (!res && str) {
311
- res = /<meta[\s]+?http-equiv=(['"])content-type\1[\s]+?content=(['"])(.+?)\2/i.exec(str)
312
-
313
- if (!res) {
314
- res = /<meta[\s]+?content=(['"])(.+?)\1[\s]+?http-equiv=(['"])content-type\3/i.exec(str)
315
- if (res) {
316
- res.pop()
317
- } // drop last quote
318
- }
319
-
320
- if (res) {
321
- res = /charset=(.*)/i.exec(res.pop())
322
- }
323
- }
324
-
325
- // xml
326
- if (!res && str) {
327
- res = /<\?xml.+?encoding=(['"])(.+?)\1/i.exec(str)
328
- }
329
-
330
- // found charset
331
- if (res) {
332
- charset = res.pop()
333
-
334
- // prevent decode issues when sites use incorrect encoding
335
- // ref: https://hsivonen.fi/encoding-menu/
336
- if (charset === 'gb2312' || charset === 'gbk') {
337
- charset = 'gb18030'
338
- }
339
- }
340
-
341
- if (charset === 'UTF-8') {
342
- return buffer.toString('UTF-8')
343
- }
344
-
345
- charset = charset.toString().trim()
346
- .replace(/^latin[-_]?(\d+)$/i, 'ISO-8859-$1')
347
- .replace(/^win(?:dows)?[-_]?(\d+)$/i, 'WINDOWS-$1')
348
- .replace(/^utf[-_]?(\d+)$/i, 'UTF-$1')
349
- .replace(/^ks_c_5601-1987$/i, 'CP949')
350
- .replace(/^us[-_]?ascii$/i, 'ASCII')
351
- .toUpperCase()
352
- try {
353
- return decode(buffer, charset).toString()
354
- } catch {
355
- /* istanbul ignore next */
356
- return buffer.toString('UTF-8')
357
- }
358
- }
359
-
360
- module.exports = Body
@@ -1,32 +0,0 @@
1
- 'use strict'
2
- class FetchError extends Error {
3
- constructor (message, type, systemError) {
4
- super(message)
5
- this.code = 'FETCH_ERROR'
6
-
7
- // pick up code, expected, path, ...
8
- if (systemError) {
9
- Object.assign(this, systemError)
10
- }
11
-
12
- this.errno = this.code
13
-
14
- // override anything the system error might've clobbered
15
- this.type = this.code === 'EBADSIZE' && this.found > this.expect
16
- ? 'max-size' : type
17
- this.message = message
18
- Error.captureStackTrace(this, this.constructor)
19
- }
20
-
21
- get name () {
22
- return 'FetchError'
23
- }
24
-
25
- // don't allow name to be overwritten
26
- set name (n) {}
27
-
28
- get [Symbol.toStringTag] () {
29
- return 'FetchError'
30
- }
31
- }
32
- module.exports = FetchError
@@ -1,267 +0,0 @@
1
- 'use strict'
2
- const invalidTokenRegex = /[^^_`a-zA-Z\-0-9!#$%&'*+.|~]/
3
- const invalidHeaderCharRegex = /[^\t\x20-\x7e\x80-\xff]/
4
-
5
- const validateName = name => {
6
- name = `${name}`
7
- if (invalidTokenRegex.test(name) || name === '') {
8
- throw new TypeError(`${name} is not a legal HTTP header name`)
9
- }
10
- }
11
-
12
- const validateValue = value => {
13
- value = `${value}`
14
- if (invalidHeaderCharRegex.test(value)) {
15
- throw new TypeError(`${value} is not a legal HTTP header value`)
16
- }
17
- }
18
-
19
- const find = (map, name) => {
20
- name = name.toLowerCase()
21
- for (const key in map) {
22
- if (key.toLowerCase() === name) {
23
- return key
24
- }
25
- }
26
- return undefined
27
- }
28
-
29
- const MAP = Symbol('map')
30
- class Headers {
31
- constructor (init = undefined) {
32
- this[MAP] = Object.create(null)
33
- if (init instanceof Headers) {
34
- const rawHeaders = init.raw()
35
- const headerNames = Object.keys(rawHeaders)
36
- for (const headerName of headerNames) {
37
- for (const value of rawHeaders[headerName]) {
38
- this.append(headerName, value)
39
- }
40
- }
41
- return
42
- }
43
-
44
- // no-op
45
- if (init === undefined || init === null) {
46
- return
47
- }
48
-
49
- if (typeof init === 'object') {
50
- const method = init[Symbol.iterator]
51
- if (method !== null && method !== undefined) {
52
- if (typeof method !== 'function') {
53
- throw new TypeError('Header pairs must be iterable')
54
- }
55
-
56
- // sequence<sequence<ByteString>>
57
- // Note: per spec we have to first exhaust the lists then process them
58
- const pairs = []
59
- for (const pair of init) {
60
- if (typeof pair !== 'object' ||
61
- typeof pair[Symbol.iterator] !== 'function') {
62
- throw new TypeError('Each header pair must be iterable')
63
- }
64
- const arrPair = Array.from(pair)
65
- if (arrPair.length !== 2) {
66
- throw new TypeError('Each header pair must be a name/value tuple')
67
- }
68
- pairs.push(arrPair)
69
- }
70
-
71
- for (const pair of pairs) {
72
- this.append(pair[0], pair[1])
73
- }
74
- } else {
75
- // record<ByteString, ByteString>
76
- for (const key of Object.keys(init)) {
77
- this.append(key, init[key])
78
- }
79
- }
80
- } else {
81
- throw new TypeError('Provided initializer must be an object')
82
- }
83
- }
84
-
85
- get (name) {
86
- name = `${name}`
87
- validateName(name)
88
- const key = find(this[MAP], name)
89
- if (key === undefined) {
90
- return null
91
- }
92
-
93
- return this[MAP][key].join(', ')
94
- }
95
-
96
- forEach (callback, thisArg = undefined) {
97
- let pairs = getHeaders(this)
98
- for (let i = 0; i < pairs.length; i++) {
99
- const [name, value] = pairs[i]
100
- callback.call(thisArg, value, name, this)
101
- // refresh in case the callback added more headers
102
- pairs = getHeaders(this)
103
- }
104
- }
105
-
106
- set (name, value) {
107
- name = `${name}`
108
- value = `${value}`
109
- validateName(name)
110
- validateValue(value)
111
- const key = find(this[MAP], name)
112
- this[MAP][key !== undefined ? key : name] = [value]
113
- }
114
-
115
- append (name, value) {
116
- name = `${name}`
117
- value = `${value}`
118
- validateName(name)
119
- validateValue(value)
120
- const key = find(this[MAP], name)
121
- if (key !== undefined) {
122
- this[MAP][key].push(value)
123
- } else {
124
- this[MAP][name] = [value]
125
- }
126
- }
127
-
128
- has (name) {
129
- name = `${name}`
130
- validateName(name)
131
- return find(this[MAP], name) !== undefined
132
- }
133
-
134
- delete (name) {
135
- name = `${name}`
136
- validateName(name)
137
- const key = find(this[MAP], name)
138
- if (key !== undefined) {
139
- delete this[MAP][key]
140
- }
141
- }
142
-
143
- raw () {
144
- return this[MAP]
145
- }
146
-
147
- keys () {
148
- return new HeadersIterator(this, 'key')
149
- }
150
-
151
- values () {
152
- return new HeadersIterator(this, 'value')
153
- }
154
-
155
- [Symbol.iterator] () {
156
- return new HeadersIterator(this, 'key+value')
157
- }
158
-
159
- entries () {
160
- return new HeadersIterator(this, 'key+value')
161
- }
162
-
163
- get [Symbol.toStringTag] () {
164
- return 'Headers'
165
- }
166
-
167
- static exportNodeCompatibleHeaders (headers) {
168
- const obj = Object.assign(Object.create(null), headers[MAP])
169
-
170
- // http.request() only supports string as Host header. This hack makes
171
- // specifying custom Host header possible.
172
- const hostHeaderKey = find(headers[MAP], 'Host')
173
- if (hostHeaderKey !== undefined) {
174
- obj[hostHeaderKey] = obj[hostHeaderKey][0]
175
- }
176
-
177
- return obj
178
- }
179
-
180
- static createHeadersLenient (obj) {
181
- const headers = new Headers()
182
- for (const name of Object.keys(obj)) {
183
- if (invalidTokenRegex.test(name)) {
184
- continue
185
- }
186
-
187
- if (Array.isArray(obj[name])) {
188
- for (const val of obj[name]) {
189
- if (invalidHeaderCharRegex.test(val)) {
190
- continue
191
- }
192
-
193
- if (headers[MAP][name] === undefined) {
194
- headers[MAP][name] = [val]
195
- } else {
196
- headers[MAP][name].push(val)
197
- }
198
- }
199
- } else if (!invalidHeaderCharRegex.test(obj[name])) {
200
- headers[MAP][name] = [obj[name]]
201
- }
202
- }
203
- return headers
204
- }
205
- }
206
-
207
- Object.defineProperties(Headers.prototype, {
208
- get: { enumerable: true },
209
- forEach: { enumerable: true },
210
- set: { enumerable: true },
211
- append: { enumerable: true },
212
- has: { enumerable: true },
213
- delete: { enumerable: true },
214
- keys: { enumerable: true },
215
- values: { enumerable: true },
216
- entries: { enumerable: true },
217
- })
218
-
219
- const getHeaders = (headers, kind = 'key+value') =>
220
- Object.keys(headers[MAP]).sort().map(
221
- kind === 'key' ? k => k.toLowerCase()
222
- : kind === 'value' ? k => headers[MAP][k].join(', ')
223
- : k => [k.toLowerCase(), headers[MAP][k].join(', ')]
224
- )
225
-
226
- const INTERNAL = Symbol('internal')
227
-
228
- class HeadersIterator {
229
- constructor (target, kind) {
230
- this[INTERNAL] = {
231
- target,
232
- kind,
233
- index: 0,
234
- }
235
- }
236
-
237
- get [Symbol.toStringTag] () {
238
- return 'HeadersIterator'
239
- }
240
-
241
- next () {
242
- /* istanbul ignore if: should be impossible */
243
- if (!this || Object.getPrototypeOf(this) !== HeadersIterator.prototype) {
244
- throw new TypeError('Value of `this` is not a HeadersIterator')
245
- }
246
-
247
- const { target, kind, index } = this[INTERNAL]
248
- const values = getHeaders(target, kind)
249
- const len = values.length
250
- if (index >= len) {
251
- return {
252
- value: undefined,
253
- done: true,
254
- }
255
- }
256
-
257
- this[INTERNAL].index++
258
-
259
- return { value: values[index], done: false }
260
- }
261
- }
262
-
263
- // manually extend because 'extends' requires a ctor
264
- Object.setPrototypeOf(HeadersIterator.prototype,
265
- Object.getPrototypeOf(Object.getPrototypeOf([][Symbol.iterator]())))
266
-
267
- module.exports = Headers