@nocobase/plugin-idp-oauth 2.1.0-alpha.16 → 2.1.0-alpha.18

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 (217) hide show
  1. package/build.config.ts +1 -1
  2. package/dist/externalVersion.js +4 -4
  3. package/dist/node_modules/light-my-request/package.json +1 -1
  4. package/dist/node_modules/undici/LICENSE +21 -0
  5. package/dist/node_modules/undici/README.md +741 -0
  6. package/dist/node_modules/undici/docs/docs/api/Agent.md +84 -0
  7. package/dist/node_modules/undici/docs/docs/api/BalancedPool.md +99 -0
  8. package/dist/node_modules/undici/docs/docs/api/CacheStorage.md +30 -0
  9. package/dist/node_modules/undici/docs/docs/api/CacheStore.md +164 -0
  10. package/dist/node_modules/undici/docs/docs/api/Client.md +285 -0
  11. package/dist/node_modules/undici/docs/docs/api/ClientStats.md +27 -0
  12. package/dist/node_modules/undici/docs/docs/api/Connector.md +115 -0
  13. package/dist/node_modules/undici/docs/docs/api/ContentType.md +57 -0
  14. package/dist/node_modules/undici/docs/docs/api/Cookies.md +101 -0
  15. package/dist/node_modules/undici/docs/docs/api/Debug.md +62 -0
  16. package/dist/node_modules/undici/docs/docs/api/DiagnosticsChannel.md +315 -0
  17. package/dist/node_modules/undici/docs/docs/api/Dispatcher.md +1392 -0
  18. package/dist/node_modules/undici/docs/docs/api/EnvHttpProxyAgent.md +159 -0
  19. package/dist/node_modules/undici/docs/docs/api/Errors.md +49 -0
  20. package/dist/node_modules/undici/docs/docs/api/EventSource.md +45 -0
  21. package/dist/node_modules/undici/docs/docs/api/Fetch.md +60 -0
  22. package/dist/node_modules/undici/docs/docs/api/GlobalInstallation.md +139 -0
  23. package/dist/node_modules/undici/docs/docs/api/H2CClient.md +263 -0
  24. package/dist/node_modules/undici/docs/docs/api/MockAgent.md +603 -0
  25. package/dist/node_modules/undici/docs/docs/api/MockCallHistory.md +197 -0
  26. package/dist/node_modules/undici/docs/docs/api/MockCallHistoryLog.md +43 -0
  27. package/dist/node_modules/undici/docs/docs/api/MockClient.md +81 -0
  28. package/dist/node_modules/undici/docs/docs/api/MockErrors.md +12 -0
  29. package/dist/node_modules/undici/docs/docs/api/MockPool.md +555 -0
  30. package/dist/node_modules/undici/docs/docs/api/Pool.md +84 -0
  31. package/dist/node_modules/undici/docs/docs/api/PoolStats.md +35 -0
  32. package/dist/node_modules/undici/docs/docs/api/ProxyAgent.md +229 -0
  33. package/dist/node_modules/undici/docs/docs/api/RedirectHandler.md +93 -0
  34. package/dist/node_modules/undici/docs/docs/api/RetryAgent.md +50 -0
  35. package/dist/node_modules/undici/docs/docs/api/RetryHandler.md +118 -0
  36. package/dist/node_modules/undici/docs/docs/api/RoundRobinPool.md +145 -0
  37. package/dist/node_modules/undici/docs/docs/api/SnapshotAgent.md +616 -0
  38. package/dist/node_modules/undici/docs/docs/api/Socks5ProxyAgent.md +274 -0
  39. package/dist/node_modules/undici/docs/docs/api/Util.md +25 -0
  40. package/dist/node_modules/undici/docs/docs/api/WebSocket.md +141 -0
  41. package/dist/node_modules/undici/docs/docs/api/api-lifecycle.md +91 -0
  42. package/dist/node_modules/undici/docs/docs/best-practices/client-certificate.md +64 -0
  43. package/dist/node_modules/undici/docs/docs/best-practices/crawling.md +58 -0
  44. package/dist/node_modules/undici/docs/docs/best-practices/mocking-request.md +190 -0
  45. package/dist/node_modules/undici/docs/docs/best-practices/proxy.md +127 -0
  46. package/dist/node_modules/undici/docs/docs/best-practices/undici-vs-builtin-fetch.md +224 -0
  47. package/dist/node_modules/undici/docs/docs/best-practices/writing-tests.md +63 -0
  48. package/dist/node_modules/undici/index-fetch.js +65 -0
  49. package/dist/node_modules/undici/index.d.ts +3 -0
  50. package/dist/node_modules/undici/index.js +234 -0
  51. package/dist/node_modules/undici/lib/api/abort-signal.js +59 -0
  52. package/dist/node_modules/undici/lib/api/api-connect.js +110 -0
  53. package/dist/node_modules/undici/lib/api/api-pipeline.js +252 -0
  54. package/dist/node_modules/undici/lib/api/api-request.js +214 -0
  55. package/dist/node_modules/undici/lib/api/api-stream.js +209 -0
  56. package/dist/node_modules/undici/lib/api/api-upgrade.js +111 -0
  57. package/dist/node_modules/undici/lib/api/index.js +7 -0
  58. package/dist/node_modules/undici/lib/api/readable.js +580 -0
  59. package/dist/node_modules/undici/lib/cache/memory-cache-store.js +234 -0
  60. package/dist/node_modules/undici/lib/cache/sqlite-cache-store.js +461 -0
  61. package/dist/node_modules/undici/lib/core/connect.js +137 -0
  62. package/dist/node_modules/undici/lib/core/constants.js +143 -0
  63. package/dist/node_modules/undici/lib/core/diagnostics.js +227 -0
  64. package/dist/node_modules/undici/lib/core/errors.js +477 -0
  65. package/dist/node_modules/undici/lib/core/request.js +438 -0
  66. package/dist/node_modules/undici/lib/core/socks5-client.js +407 -0
  67. package/dist/node_modules/undici/lib/core/socks5-utils.js +203 -0
  68. package/dist/node_modules/undici/lib/core/symbols.js +75 -0
  69. package/dist/node_modules/undici/lib/core/tree.js +160 -0
  70. package/dist/node_modules/undici/lib/core/util.js +992 -0
  71. package/dist/node_modules/undici/lib/dispatcher/agent.js +158 -0
  72. package/dist/node_modules/undici/lib/dispatcher/balanced-pool.js +219 -0
  73. package/dist/node_modules/undici/lib/dispatcher/client-h1.js +1610 -0
  74. package/dist/node_modules/undici/lib/dispatcher/client-h2.js +995 -0
  75. package/dist/node_modules/undici/lib/dispatcher/client.js +659 -0
  76. package/dist/node_modules/undici/lib/dispatcher/dispatcher-base.js +165 -0
  77. package/dist/node_modules/undici/lib/dispatcher/dispatcher.js +48 -0
  78. package/dist/node_modules/undici/lib/dispatcher/env-http-proxy-agent.js +146 -0
  79. package/dist/node_modules/undici/lib/dispatcher/fixed-queue.js +135 -0
  80. package/dist/node_modules/undici/lib/dispatcher/h2c-client.js +51 -0
  81. package/dist/node_modules/undici/lib/dispatcher/pool-base.js +214 -0
  82. package/dist/node_modules/undici/lib/dispatcher/pool.js +118 -0
  83. package/dist/node_modules/undici/lib/dispatcher/proxy-agent.js +318 -0
  84. package/dist/node_modules/undici/lib/dispatcher/retry-agent.js +35 -0
  85. package/dist/node_modules/undici/lib/dispatcher/round-robin-pool.js +137 -0
  86. package/dist/node_modules/undici/lib/dispatcher/socks5-proxy-agent.js +249 -0
  87. package/dist/node_modules/undici/lib/encoding/index.js +33 -0
  88. package/dist/node_modules/undici/lib/global.js +50 -0
  89. package/dist/node_modules/undici/lib/handler/cache-handler.js +578 -0
  90. package/dist/node_modules/undici/lib/handler/cache-revalidation-handler.js +124 -0
  91. package/dist/node_modules/undici/lib/handler/decorator-handler.js +67 -0
  92. package/dist/node_modules/undici/lib/handler/deduplication-handler.js +460 -0
  93. package/dist/node_modules/undici/lib/handler/redirect-handler.js +238 -0
  94. package/dist/node_modules/undici/lib/handler/retry-handler.js +394 -0
  95. package/dist/node_modules/undici/lib/handler/unwrap-handler.js +100 -0
  96. package/dist/node_modules/undici/lib/handler/wrap-handler.js +105 -0
  97. package/dist/node_modules/undici/lib/interceptor/cache.js +495 -0
  98. package/dist/node_modules/undici/lib/interceptor/decompress.js +259 -0
  99. package/dist/node_modules/undici/lib/interceptor/deduplicate.js +117 -0
  100. package/dist/node_modules/undici/lib/interceptor/dns.js +571 -0
  101. package/dist/node_modules/undici/lib/interceptor/dump.js +112 -0
  102. package/dist/node_modules/undici/lib/interceptor/redirect.js +21 -0
  103. package/dist/node_modules/undici/lib/interceptor/response-error.js +95 -0
  104. package/dist/node_modules/undici/lib/interceptor/retry.js +19 -0
  105. package/dist/node_modules/undici/lib/llhttp/.gitkeep +0 -0
  106. package/dist/node_modules/undici/lib/llhttp/constants.d.ts +195 -0
  107. package/dist/node_modules/undici/lib/llhttp/constants.js +531 -0
  108. package/dist/node_modules/undici/lib/llhttp/llhttp-wasm.js +15 -0
  109. package/dist/node_modules/undici/lib/llhttp/llhttp_simd-wasm.js +15 -0
  110. package/dist/node_modules/undici/lib/llhttp/utils.d.ts +2 -0
  111. package/dist/node_modules/undici/lib/llhttp/utils.js +12 -0
  112. package/dist/node_modules/undici/lib/mock/mock-agent.js +232 -0
  113. package/dist/node_modules/undici/lib/mock/mock-call-history.js +248 -0
  114. package/dist/node_modules/undici/lib/mock/mock-client.js +68 -0
  115. package/dist/node_modules/undici/lib/mock/mock-errors.js +29 -0
  116. package/dist/node_modules/undici/lib/mock/mock-interceptor.js +209 -0
  117. package/dist/node_modules/undici/lib/mock/mock-pool.js +68 -0
  118. package/dist/node_modules/undici/lib/mock/mock-symbols.js +32 -0
  119. package/dist/node_modules/undici/lib/mock/mock-utils.js +486 -0
  120. package/dist/node_modules/undici/lib/mock/pending-interceptors-formatter.js +43 -0
  121. package/dist/node_modules/undici/lib/mock/snapshot-agent.js +353 -0
  122. package/dist/node_modules/undici/lib/mock/snapshot-recorder.js +588 -0
  123. package/dist/node_modules/undici/lib/mock/snapshot-utils.js +158 -0
  124. package/dist/node_modules/undici/lib/util/cache.js +407 -0
  125. package/dist/node_modules/undici/lib/util/date.js +653 -0
  126. package/dist/node_modules/undici/lib/util/promise.js +28 -0
  127. package/dist/node_modules/undici/lib/util/runtime-features.js +124 -0
  128. package/dist/node_modules/undici/lib/util/stats.js +32 -0
  129. package/dist/node_modules/undici/lib/util/timers.js +425 -0
  130. package/dist/node_modules/undici/lib/web/cache/cache.js +864 -0
  131. package/dist/node_modules/undici/lib/web/cache/cachestorage.js +152 -0
  132. package/dist/node_modules/undici/lib/web/cache/util.js +45 -0
  133. package/dist/node_modules/undici/lib/web/cookies/constants.js +12 -0
  134. package/dist/node_modules/undici/lib/web/cookies/index.js +199 -0
  135. package/dist/node_modules/undici/lib/web/cookies/parse.js +322 -0
  136. package/dist/node_modules/undici/lib/web/cookies/util.js +282 -0
  137. package/dist/node_modules/undici/lib/web/eventsource/eventsource-stream.js +399 -0
  138. package/dist/node_modules/undici/lib/web/eventsource/eventsource.js +501 -0
  139. package/dist/node_modules/undici/lib/web/eventsource/util.js +29 -0
  140. package/dist/node_modules/undici/lib/web/fetch/LICENSE +21 -0
  141. package/dist/node_modules/undici/lib/web/fetch/body.js +509 -0
  142. package/dist/node_modules/undici/lib/web/fetch/constants.js +131 -0
  143. package/dist/node_modules/undici/lib/web/fetch/data-url.js +596 -0
  144. package/dist/node_modules/undici/lib/web/fetch/formdata-parser.js +575 -0
  145. package/dist/node_modules/undici/lib/web/fetch/formdata.js +259 -0
  146. package/dist/node_modules/undici/lib/web/fetch/global.js +40 -0
  147. package/dist/node_modules/undici/lib/web/fetch/headers.js +719 -0
  148. package/dist/node_modules/undici/lib/web/fetch/index.js +2397 -0
  149. package/dist/node_modules/undici/lib/web/fetch/request.js +1115 -0
  150. package/dist/node_modules/undici/lib/web/fetch/response.js +641 -0
  151. package/dist/node_modules/undici/lib/web/fetch/util.js +1520 -0
  152. package/dist/node_modules/undici/lib/web/infra/index.js +229 -0
  153. package/dist/node_modules/undici/lib/web/subresource-integrity/Readme.md +9 -0
  154. package/dist/node_modules/undici/lib/web/subresource-integrity/subresource-integrity.js +307 -0
  155. package/dist/node_modules/undici/lib/web/webidl/index.js +1006 -0
  156. package/dist/node_modules/undici/lib/web/websocket/connection.js +329 -0
  157. package/dist/node_modules/undici/lib/web/websocket/constants.js +126 -0
  158. package/dist/node_modules/undici/lib/web/websocket/events.js +331 -0
  159. package/dist/node_modules/undici/lib/web/websocket/frame.js +133 -0
  160. package/dist/node_modules/undici/lib/web/websocket/permessage-deflate.js +118 -0
  161. package/dist/node_modules/undici/lib/web/websocket/receiver.js +450 -0
  162. package/dist/node_modules/undici/lib/web/websocket/sender.js +109 -0
  163. package/dist/node_modules/undici/lib/web/websocket/stream/websocketerror.js +104 -0
  164. package/dist/node_modules/undici/lib/web/websocket/stream/websocketstream.js +497 -0
  165. package/dist/node_modules/undici/lib/web/websocket/util.js +347 -0
  166. package/dist/node_modules/undici/lib/web/websocket/websocket.js +751 -0
  167. package/dist/node_modules/undici/package.json +152 -0
  168. package/dist/node_modules/undici/scripts/strip-comments.js +10 -0
  169. package/dist/node_modules/undici/types/README.md +6 -0
  170. package/dist/node_modules/undici/types/agent.d.ts +32 -0
  171. package/dist/node_modules/undici/types/api.d.ts +43 -0
  172. package/dist/node_modules/undici/types/balanced-pool.d.ts +30 -0
  173. package/dist/node_modules/undici/types/cache-interceptor.d.ts +179 -0
  174. package/dist/node_modules/undici/types/cache.d.ts +36 -0
  175. package/dist/node_modules/undici/types/client-stats.d.ts +15 -0
  176. package/dist/node_modules/undici/types/client.d.ts +123 -0
  177. package/dist/node_modules/undici/types/connector.d.ts +36 -0
  178. package/dist/node_modules/undici/types/content-type.d.ts +21 -0
  179. package/dist/node_modules/undici/types/cookies.d.ts +30 -0
  180. package/dist/node_modules/undici/types/diagnostics-channel.d.ts +74 -0
  181. package/dist/node_modules/undici/types/dispatcher.d.ts +273 -0
  182. package/dist/node_modules/undici/types/env-http-proxy-agent.d.ts +22 -0
  183. package/dist/node_modules/undici/types/errors.d.ts +177 -0
  184. package/dist/node_modules/undici/types/eventsource.d.ts +66 -0
  185. package/dist/node_modules/undici/types/fetch.d.ts +231 -0
  186. package/dist/node_modules/undici/types/formdata.d.ts +114 -0
  187. package/dist/node_modules/undici/types/global-dispatcher.d.ts +9 -0
  188. package/dist/node_modules/undici/types/global-origin.d.ts +7 -0
  189. package/dist/node_modules/undici/types/h2c-client.d.ts +73 -0
  190. package/dist/node_modules/undici/types/handlers.d.ts +14 -0
  191. package/dist/node_modules/undici/types/header.d.ts +160 -0
  192. package/dist/node_modules/undici/types/index.d.ts +91 -0
  193. package/dist/node_modules/undici/types/interceptors.d.ts +80 -0
  194. package/dist/node_modules/undici/types/mock-agent.d.ts +68 -0
  195. package/dist/node_modules/undici/types/mock-call-history.d.ts +111 -0
  196. package/dist/node_modules/undici/types/mock-client.d.ts +27 -0
  197. package/dist/node_modules/undici/types/mock-errors.d.ts +12 -0
  198. package/dist/node_modules/undici/types/mock-interceptor.d.ts +94 -0
  199. package/dist/node_modules/undici/types/mock-pool.d.ts +27 -0
  200. package/dist/node_modules/undici/types/patch.d.ts +29 -0
  201. package/dist/node_modules/undici/types/pool-stats.d.ts +19 -0
  202. package/dist/node_modules/undici/types/pool.d.ts +41 -0
  203. package/dist/node_modules/undici/types/proxy-agent.d.ts +29 -0
  204. package/dist/node_modules/undici/types/readable.d.ts +68 -0
  205. package/dist/node_modules/undici/types/retry-agent.d.ts +8 -0
  206. package/dist/node_modules/undici/types/retry-handler.d.ts +125 -0
  207. package/dist/node_modules/undici/types/round-robin-pool.d.ts +41 -0
  208. package/dist/node_modules/undici/types/snapshot-agent.d.ts +109 -0
  209. package/dist/node_modules/undici/types/socks5-proxy-agent.d.ts +25 -0
  210. package/dist/node_modules/undici/types/util.d.ts +18 -0
  211. package/dist/node_modules/undici/types/utility.d.ts +7 -0
  212. package/dist/node_modules/undici/types/webidl.d.ts +347 -0
  213. package/dist/node_modules/undici/types/websocket.d.ts +188 -0
  214. package/dist/server/plugin.d.ts +1 -0
  215. package/dist/server/plugin.js +13 -0
  216. package/dist/server/service.js +11 -3
  217. package/package.json +2 -2
@@ -0,0 +1,152 @@
1
+ {
2
+ "name": "undici",
3
+ "version": "7.24.7",
4
+ "description": "An HTTP/1.1 client, written from scratch for Node.js",
5
+ "homepage": "https://undici.nodejs.org",
6
+ "bugs": {
7
+ "url": "https://github.com/nodejs/undici/issues"
8
+ },
9
+ "repository": {
10
+ "type": "git",
11
+ "url": "git+https://github.com/nodejs/undici.git"
12
+ },
13
+ "license": "MIT",
14
+ "contributors": [
15
+ {
16
+ "name": "Daniele Belardi",
17
+ "url": "https://github.com/dnlup",
18
+ "author": true
19
+ },
20
+ {
21
+ "name": "Ethan Arrowood",
22
+ "url": "https://github.com/ethan-arrowood",
23
+ "author": true
24
+ },
25
+ {
26
+ "name": "Matteo Collina",
27
+ "url": "https://github.com/mcollina",
28
+ "author": true
29
+ },
30
+ {
31
+ "name": "Matthew Aitken",
32
+ "url": "https://github.com/KhafraDev",
33
+ "author": true
34
+ },
35
+ {
36
+ "name": "Robert Nagy",
37
+ "url": "https://github.com/ronag",
38
+ "author": true
39
+ },
40
+ {
41
+ "name": "Szymon Marczak",
42
+ "url": "https://github.com/szmarczak",
43
+ "author": true
44
+ },
45
+ {
46
+ "name": "Tomas Della Vedova",
47
+ "url": "https://github.com/delvedor",
48
+ "author": true
49
+ }
50
+ ],
51
+ "keywords": [
52
+ "fetch",
53
+ "http",
54
+ "https",
55
+ "promise",
56
+ "request",
57
+ "curl",
58
+ "wget",
59
+ "xhr",
60
+ "whatwg"
61
+ ],
62
+ "main": "index.js",
63
+ "types": "index.d.ts",
64
+ "scripts": {
65
+ "build:node": "esbuild index-fetch.js --bundle --platform=node --outfile=undici-fetch.js --define:esbuildDetection=1 --keep-names && node scripts/strip-comments.js",
66
+ "build:wasm": "node build/wasm.js --docker",
67
+ "generate-pem": "node scripts/generate-pem.js",
68
+ "lint": "eslint --cache",
69
+ "lint:fix": "eslint --fix --cache",
70
+ "test": "npm run test:javascript && cross-env NODE_V8_COVERAGE= npm run test:typescript",
71
+ "test:javascript": "npm run test:javascript:no-jest && npm run test:jest",
72
+ "test:javascript:no-jest": "npm run generate-pem && npm run test:unit && npm run test:fetch && npm run test:node-fetch && npm run test:infra && npm run test:cache && npm run test:cache-interceptor && npm run test:interceptors && npm run test:cookies && npm run test:eventsource && npm run test:subresource-integrity && npm run test:wpt && npm run test:websocket && npm run test:node-test && npm run test:cache-tests",
73
+ "test:javascript:without-intl": "npm run test:javascript:no-jest",
74
+ "test:busboy": "borp --timeout 180000 -p \"test/busboy/*.js\"",
75
+ "test:cache": "borp --timeout 180000 -p \"test/cache/*.js\"",
76
+ "test:cache-interceptor": "borp --timeout 180000 -p \"test/cache-interceptor/*.js\"",
77
+ "test:cache-interceptor:sqlite": "cross-env NODE_OPTIONS=--experimental-sqlite npm run test:cache-interceptor",
78
+ "test:cookies": "borp --timeout 180000 -p \"test/cookie/*.js\"",
79
+ "test:eventsource": "npm run build:node && borp --timeout 180000 --expose-gc -p \"test/eventsource/*.js\"",
80
+ "test:fuzzing": "node test/fuzzing/fuzzing.test.js",
81
+ "test:fetch": "npm run build:node && borp --timeout 180000 --expose-gc --concurrency 1 -p \"test/fetch/*.js\" && npm run test:webidl && npm run test:busboy",
82
+ "test:subresource-integrity": "borp --timeout 180000 -p \"test/subresource-integrity/*.js\"",
83
+ "test:h2": "npm run test:h2:core && npm run test:h2:fetch",
84
+ "test:h2:core": "borp --timeout 180000 -p \"test/+(http2|h2)*.js\"",
85
+ "test:h2:fetch": "npm run build:node && borp --timeout 180000 -p \"test/fetch/http2*.js\"",
86
+ "test:infra": "borp --timeout 180000 -p \"test/infra/*.js\"",
87
+ "test:interceptors": "borp --timeout 180000 -p \"test/interceptors/*.js\"",
88
+ "test:jest": "cross-env NODE_V8_COVERAGE= jest",
89
+ "test:unit": "borp --timeout 180000 --expose-gc -p \"test/*.js\"",
90
+ "test:node-fetch": "borp --timeout 180000 -p \"test/node-fetch/**/*.js\"",
91
+ "test:node-test": "borp --timeout 180000 -p \"test/node-test/**/*.js\"",
92
+ "test:tdd": "borp --timeout 180000 --expose-gc -p \"test/*.js\"",
93
+ "test:tdd:node-test": "borp --timeout 180000 -p \"test/node-test/**/*.js\" -w",
94
+ "test:typescript": "tsd && tsc test/imports/undici-import.ts --typeRoots ./types --noEmit && tsc ./types/*.d.ts --noEmit --typeRoots ./types",
95
+ "test:webidl": "borp --timeout 180000 -p \"test/webidl/*.js\"",
96
+ "test:websocket": "borp --timeout 180000 -p \"test/websocket/**/*.js\"",
97
+ "test:websocket:autobahn": "node test/autobahn/client.js",
98
+ "test:websocket:autobahn:report": "node test/autobahn/report.js",
99
+ "test:wpt:setup": "node test/web-platform-tests/wpt-runner.mjs setup",
100
+ "test:wpt": "npm run test:wpt:setup && node test/web-platform-tests/wpt-runner.mjs run /fetch /mimesniff /xhr /websockets /serviceWorkers /eventsource",
101
+ "test:cache-tests": "node test/cache-interceptor/cache-tests.mjs --ci",
102
+ "coverage": "npm run coverage:clean && cross-env NODE_V8_COVERAGE=./coverage/tmp npm run test:javascript && npm run coverage:report",
103
+ "coverage:ci": "npm run coverage:clean && cross-env NODE_V8_COVERAGE=./coverage/tmp npm run test:javascript && npm run coverage:report:ci",
104
+ "coverage:clean": "node ./scripts/clean-coverage.js",
105
+ "coverage:report": "cross-env NODE_V8_COVERAGE= c8 report",
106
+ "coverage:report:ci": "c8 report",
107
+ "bench": "echo \"Error: Benchmarks have been moved to '/benchmarks'\" && exit 1",
108
+ "serve:website": "echo \"Error: Documentation has been moved to '/docs'\" && exit 1",
109
+ "prepare": "husky && node ./scripts/platform-shell.js"
110
+ },
111
+ "devDependencies": {
112
+ "@fastify/busboy": "3.2.0",
113
+ "@matteo.collina/tspl": "^0.2.0",
114
+ "@metcoder95/https-pem": "^1.0.0",
115
+ "@sinonjs/fake-timers": "^12.0.0",
116
+ "@types/node": "^20.19.22",
117
+ "abort-controller": "^3.0.0",
118
+ "borp": "^0.20.0",
119
+ "c8": "^10.0.0",
120
+ "cross-env": "^10.0.0",
121
+ "dns-packet": "^5.4.0",
122
+ "esbuild": "^0.27.3",
123
+ "eslint": "^9.9.0",
124
+ "fast-check": "^4.1.1",
125
+ "husky": "^9.0.7",
126
+ "jest": "^30.0.5",
127
+ "jsondiffpatch": "^0.7.3",
128
+ "neostandard": "^0.12.0",
129
+ "node-forge": "^1.3.1",
130
+ "proxy": "^2.1.1",
131
+ "tsd": "^0.33.0",
132
+ "typescript": "^6.0.2",
133
+ "ws": "^8.11.0"
134
+ },
135
+ "engines": {
136
+ "node": ">=20.18.1"
137
+ },
138
+ "tsd": {
139
+ "directory": "test/types",
140
+ "compilerOptions": {
141
+ "esModuleInterop": true,
142
+ "lib": [
143
+ "esnext"
144
+ ]
145
+ }
146
+ },
147
+ "jest": {
148
+ "testMatch": [
149
+ "<rootDir>/test/jest/**"
150
+ ]
151
+ }
152
+ }
@@ -0,0 +1,10 @@
1
+ 'use strict'
2
+
3
+ const { readFileSync, writeFileSync } = require('node:fs')
4
+ const { transcode } = require('node:buffer')
5
+
6
+ const buffer = transcode
7
+ ? transcode(readFileSync('./undici-fetch.js'), 'utf8', 'latin1')
8
+ : readFileSync('./undici-fetch.js')
9
+
10
+ writeFileSync('./undici-fetch.js', buffer.toString('latin1'))
@@ -0,0 +1,6 @@
1
+ # undici-types
2
+
3
+ This package is a dual-publish of the [undici](https://www.npmjs.com/package/undici) library types. The `undici` package **still contains types**. This package is for users who _only_ need undici types (such as for `@types/node`). It is published alongside every release of `undici`, so you can always use the same version.
4
+
5
+ - [GitHub nodejs/undici](https://github.com/nodejs/undici)
6
+ - [Undici Documentation](https://undici.nodejs.org/#/)
@@ -0,0 +1,32 @@
1
+ import { URL } from 'node:url'
2
+ import Pool from './pool'
3
+ import Dispatcher from './dispatcher'
4
+ import TClientStats from './client-stats'
5
+ import TPoolStats from './pool-stats'
6
+
7
+ export default Agent
8
+
9
+ declare class Agent extends Dispatcher {
10
+ constructor (opts?: Agent.Options)
11
+ /** `true` after `dispatcher.close()` has been called. */
12
+ closed: boolean
13
+ /** `true` after `dispatcher.destroyed()` has been called or `dispatcher.close()` has been called and the dispatcher shutdown has completed. */
14
+ destroyed: boolean
15
+ /** Dispatches a request. */
16
+ dispatch (options: Agent.DispatchOptions, handler: Dispatcher.DispatchHandler): boolean
17
+ /** Aggregate stats for a Agent by origin. */
18
+ readonly stats: Record<string, TClientStats | TPoolStats>
19
+ }
20
+
21
+ declare namespace Agent {
22
+ export interface Options extends Pool.Options {
23
+ /** Default: `(origin, opts) => new Pool(origin, opts)`. */
24
+ factory?(origin: string | URL, opts: Object): Dispatcher;
25
+
26
+ interceptors?: { Agent?: readonly Dispatcher.DispatchInterceptor[] } & Pool.Options['interceptors']
27
+ maxOrigins?: number
28
+ }
29
+
30
+ export interface DispatchOptions extends Dispatcher.DispatchOptions {
31
+ }
32
+ }
@@ -0,0 +1,43 @@
1
+ import { URL, UrlObject } from 'node:url'
2
+ import { Duplex } from 'node:stream'
3
+ import Dispatcher from './dispatcher'
4
+
5
+ /** Performs an HTTP request. */
6
+ declare function request<TOpaque = null> (
7
+ url: string | URL | UrlObject,
8
+ options?: { dispatcher?: Dispatcher } & Omit<Dispatcher.RequestOptions<TOpaque>, 'origin' | 'path' | 'method'> & Partial<Pick<Dispatcher.RequestOptions, 'method'>>,
9
+ ): Promise<Dispatcher.ResponseData<TOpaque>>
10
+
11
+ /** A faster version of `request`. */
12
+ declare function stream<TOpaque = null> (
13
+ url: string | URL | UrlObject,
14
+ options: { dispatcher?: Dispatcher } & Omit<Dispatcher.RequestOptions<TOpaque>, 'origin' | 'path'>,
15
+ factory: Dispatcher.StreamFactory<TOpaque>
16
+ ): Promise<Dispatcher.StreamData<TOpaque>>
17
+
18
+ /** For easy use with `stream.pipeline`. */
19
+ declare function pipeline<TOpaque = null> (
20
+ url: string | URL | UrlObject,
21
+ options: { dispatcher?: Dispatcher } & Omit<Dispatcher.PipelineOptions<TOpaque>, 'origin' | 'path'>,
22
+ handler: Dispatcher.PipelineHandler<TOpaque>
23
+ ): Duplex
24
+
25
+ /** Starts two-way communications with the requested resource. */
26
+ declare function connect<TOpaque = null> (
27
+ url: string | URL | UrlObject,
28
+ options?: { dispatcher?: Dispatcher } & Omit<Dispatcher.ConnectOptions<TOpaque>, 'origin' | 'path'>
29
+ ): Promise<Dispatcher.ConnectData<TOpaque>>
30
+
31
+ /** Upgrade to a different protocol. */
32
+ declare function upgrade (
33
+ url: string | URL | UrlObject,
34
+ options?: { dispatcher?: Dispatcher } & Omit<Dispatcher.UpgradeOptions, 'origin' | 'path'>
35
+ ): Promise<Dispatcher.UpgradeData>
36
+
37
+ export {
38
+ request,
39
+ stream,
40
+ pipeline,
41
+ connect,
42
+ upgrade
43
+ }
@@ -0,0 +1,30 @@
1
+ import Pool from './pool'
2
+ import Dispatcher from './dispatcher'
3
+ import { URL } from 'node:url'
4
+
5
+ export default BalancedPool
6
+
7
+ type BalancedPoolConnectOptions = Omit<Dispatcher.ConnectOptions, 'origin'>
8
+
9
+ declare class BalancedPool extends Dispatcher {
10
+ constructor (url: string | string[] | URL | URL[], options?: Pool.Options)
11
+
12
+ addUpstream (upstream: string | URL): BalancedPool
13
+ removeUpstream (upstream: string | URL): BalancedPool
14
+ getUpstream (upstream: string | URL): Pool | undefined
15
+ upstreams: Array<string>
16
+
17
+ /** `true` after `pool.close()` has been called. */
18
+ closed: boolean
19
+ /** `true` after `pool.destroyed()` has been called or `pool.close()` has been called and the pool shutdown has completed. */
20
+ destroyed: boolean
21
+
22
+ // Override dispatcher APIs.
23
+ override connect (
24
+ options: BalancedPoolConnectOptions
25
+ ): Promise<Dispatcher.ConnectData>
26
+ override connect (
27
+ options: BalancedPoolConnectOptions,
28
+ callback: (err: Error | null, data: Dispatcher.ConnectData) => void
29
+ ): void
30
+ }
@@ -0,0 +1,179 @@
1
+ import { Readable, Writable } from 'node:stream'
2
+
3
+ export default CacheHandler
4
+
5
+ declare namespace CacheHandler {
6
+ export type CacheMethods = 'GET' | 'HEAD' | 'OPTIONS' | 'TRACE'
7
+
8
+ export interface CacheHandlerOptions {
9
+ store: CacheStore
10
+
11
+ cacheByDefault?: number
12
+
13
+ type?: CacheOptions['type']
14
+ }
15
+
16
+ export interface CacheOptions {
17
+ store?: CacheStore
18
+
19
+ /**
20
+ * The methods to cache
21
+ * Note we can only cache safe methods. Unsafe methods (i.e. PUT, POST)
22
+ * invalidate the cache for a origin.
23
+ * @see https://www.rfc-editor.org/rfc/rfc9111.html#name-invalidating-stored-respons
24
+ * @see https://www.rfc-editor.org/rfc/rfc9110#section-9.2.1
25
+ */
26
+ methods?: CacheMethods[]
27
+
28
+ /**
29
+ * RFC9111 allows for caching responses that we aren't explicitly told to
30
+ * cache or to not cache.
31
+ * @see https://www.rfc-editor.org/rfc/rfc9111.html#section-3-5
32
+ * @default undefined
33
+ */
34
+ cacheByDefault?: number
35
+
36
+ /**
37
+ * TODO docs
38
+ * @default 'shared'
39
+ */
40
+ type?: 'shared' | 'private'
41
+
42
+ /**
43
+ * Array of origins to cache. Only requests to these origins will be cached.
44
+ * Supports strings (case insensitive) and RegExp patterns.
45
+ * @default undefined (cache all origins)
46
+ */
47
+ origins?: (string | RegExp)[]
48
+ }
49
+
50
+ export interface CacheControlDirectives {
51
+ 'max-stale'?: number;
52
+ 'min-fresh'?: number;
53
+ 'max-age'?: number;
54
+ 's-maxage'?: number;
55
+ 'stale-while-revalidate'?: number;
56
+ 'stale-if-error'?: number;
57
+ public?: true;
58
+ private?: true | string[];
59
+ 'no-store'?: true;
60
+ 'no-cache'?: true | string[];
61
+ 'must-revalidate'?: true;
62
+ 'proxy-revalidate'?: true;
63
+ immutable?: true;
64
+ 'no-transform'?: true;
65
+ 'must-understand'?: true;
66
+ 'only-if-cached'?: true;
67
+ }
68
+
69
+ export interface CacheKey {
70
+ origin: string
71
+ method: string
72
+ path: string
73
+ headers?: Record<string, string | string[]>
74
+ }
75
+
76
+ export interface CacheValue {
77
+ statusCode: number
78
+ statusMessage: string
79
+ headers: Record<string, string | string[]>
80
+ vary?: Record<string, string | string[] | null>
81
+ etag?: string
82
+ cacheControlDirectives?: CacheControlDirectives
83
+ cachedAt: number
84
+ staleAt: number
85
+ deleteAt: number
86
+ }
87
+
88
+ export interface DeleteByUri {
89
+ origin: string
90
+ method: string
91
+ path: string
92
+ }
93
+
94
+ type GetResult = {
95
+ statusCode: number
96
+ statusMessage: string
97
+ headers: Record<string, string | string[]>
98
+ vary?: Record<string, string | string[] | null>
99
+ etag?: string
100
+ body?: Readable | Iterable<Buffer> | AsyncIterable<Buffer> | Buffer | Iterable<string> | AsyncIterable<string> | string
101
+ cacheControlDirectives: CacheControlDirectives,
102
+ cachedAt: number
103
+ staleAt: number
104
+ deleteAt: number
105
+ }
106
+
107
+ /**
108
+ * Underlying storage provider for cached responses
109
+ */
110
+ export interface CacheStore {
111
+ get(key: CacheKey): GetResult | Promise<GetResult | undefined> | undefined
112
+
113
+ createWriteStream(key: CacheKey, val: CacheValue): Writable | undefined
114
+
115
+ delete(key: CacheKey): void | Promise<void>
116
+ }
117
+
118
+ export interface MemoryCacheStoreOpts {
119
+ /**
120
+ * @default Infinity
121
+ */
122
+ maxCount?: number
123
+
124
+ /**
125
+ * @default Infinity
126
+ */
127
+ maxSize?: number
128
+
129
+ /**
130
+ * @default Infinity
131
+ */
132
+ maxEntrySize?: number
133
+
134
+ errorCallback?: (err: Error) => void
135
+ }
136
+
137
+ export class MemoryCacheStore implements CacheStore {
138
+ constructor (opts?: MemoryCacheStoreOpts)
139
+
140
+ get (key: CacheKey): GetResult | Promise<GetResult | undefined> | undefined
141
+
142
+ createWriteStream (key: CacheKey, value: CacheValue): Writable | undefined
143
+
144
+ delete (key: CacheKey): void | Promise<void>
145
+ }
146
+
147
+ export interface SqliteCacheStoreOpts {
148
+ /**
149
+ * Location of the database
150
+ * @default ':memory:'
151
+ */
152
+ location?: string
153
+
154
+ /**
155
+ * @default Infinity
156
+ */
157
+ maxCount?: number
158
+
159
+ /**
160
+ * @default Infinity
161
+ */
162
+ maxEntrySize?: number
163
+ }
164
+
165
+ export class SqliteCacheStore implements CacheStore {
166
+ constructor (opts?: SqliteCacheStoreOpts)
167
+
168
+ /**
169
+ * Closes the connection to the database
170
+ */
171
+ close (): void
172
+
173
+ get (key: CacheKey): GetResult | Promise<GetResult | undefined> | undefined
174
+
175
+ createWriteStream (key: CacheKey, value: CacheValue): Writable | undefined
176
+
177
+ delete (key: CacheKey): void | Promise<void>
178
+ }
179
+ }
@@ -0,0 +1,36 @@
1
+ import type { RequestInfo, Response, Request } from './fetch'
2
+
3
+ export interface CacheStorage {
4
+ match (request: RequestInfo, options?: MultiCacheQueryOptions): Promise<Response | undefined>,
5
+ has (cacheName: string): Promise<boolean>,
6
+ open (cacheName: string): Promise<Cache>,
7
+ delete (cacheName: string): Promise<boolean>,
8
+ keys (): Promise<string[]>
9
+ }
10
+
11
+ declare const CacheStorage: {
12
+ prototype: CacheStorage
13
+ new(): CacheStorage
14
+ }
15
+
16
+ export interface Cache {
17
+ match (request: RequestInfo, options?: CacheQueryOptions): Promise<Response | undefined>,
18
+ matchAll (request?: RequestInfo, options?: CacheQueryOptions): Promise<readonly Response[]>,
19
+ add (request: RequestInfo): Promise<undefined>,
20
+ addAll (requests: RequestInfo[]): Promise<undefined>,
21
+ put (request: RequestInfo, response: Response): Promise<undefined>,
22
+ delete (request: RequestInfo, options?: CacheQueryOptions): Promise<boolean>,
23
+ keys (request?: RequestInfo, options?: CacheQueryOptions): Promise<readonly Request[]>
24
+ }
25
+
26
+ export interface CacheQueryOptions {
27
+ ignoreSearch?: boolean,
28
+ ignoreMethod?: boolean,
29
+ ignoreVary?: boolean
30
+ }
31
+
32
+ export interface MultiCacheQueryOptions extends CacheQueryOptions {
33
+ cacheName?: string
34
+ }
35
+
36
+ export declare const caches: CacheStorage
@@ -0,0 +1,15 @@
1
+ import Client from './client'
2
+
3
+ export default ClientStats
4
+
5
+ declare class ClientStats {
6
+ constructor (pool: Client)
7
+ /** If socket has open connection. */
8
+ connected: boolean
9
+ /** Number of open socket connections in this client that do not have an active request. */
10
+ pending: number
11
+ /** Number of currently active requests of this client. */
12
+ running: number
13
+ /** Number of active, pending, or queued requests of this client. */
14
+ size: number
15
+ }
@@ -0,0 +1,123 @@
1
+ import { URL } from 'node:url'
2
+ import Dispatcher from './dispatcher'
3
+ import buildConnector from './connector'
4
+ import TClientStats from './client-stats'
5
+
6
+ type ClientConnectOptions = Omit<Dispatcher.ConnectOptions, 'origin'>
7
+
8
+ /**
9
+ * A basic HTTP/1.1 client, mapped on top a single TCP/TLS connection. Pipelining is disabled by default.
10
+ */
11
+ export class Client extends Dispatcher {
12
+ constructor (url: string | URL, options?: Client.Options)
13
+ /** Property to get and set the pipelining factor. */
14
+ pipelining: number
15
+ /** `true` after `client.close()` has been called. */
16
+ closed: boolean
17
+ /** `true` after `client.destroyed()` has been called or `client.close()` has been called and the client shutdown has completed. */
18
+ destroyed: boolean
19
+ /** Aggregate stats for a Client. */
20
+ readonly stats: TClientStats
21
+
22
+ // Override dispatcher APIs.
23
+ override connect (
24
+ options: ClientConnectOptions
25
+ ): Promise<Dispatcher.ConnectData>
26
+ override connect (
27
+ options: ClientConnectOptions,
28
+ callback: (err: Error | null, data: Dispatcher.ConnectData) => void
29
+ ): void
30
+ }
31
+
32
+ export declare namespace Client {
33
+ export interface OptionsInterceptors {
34
+ Client: readonly Dispatcher.DispatchInterceptor[];
35
+ }
36
+ export interface Options {
37
+ /** TODO */
38
+ interceptors?: OptionsInterceptors;
39
+ /** The maximum length of request headers in bytes. Default: Node.js' `--max-http-header-size` or `16384` (16KiB). */
40
+ maxHeaderSize?: number;
41
+ /** The amount of time, in milliseconds, the parser will wait to receive the complete HTTP headers (Node 14 and above only). Default: `300e3` milliseconds (300s). */
42
+ headersTimeout?: number;
43
+ /** @deprecated unsupported socketTimeout, use headersTimeout & bodyTimeout instead */
44
+ socketTimeout?: never;
45
+ /** @deprecated unsupported requestTimeout, use headersTimeout & bodyTimeout instead */
46
+ requestTimeout?: never;
47
+ /** TODO */
48
+ connectTimeout?: number;
49
+ /** The timeout after which a request will time out, in milliseconds. Monitors time between receiving body data. Use `0` to disable it entirely. Default: `300e3` milliseconds (300s). */
50
+ bodyTimeout?: number;
51
+ /** @deprecated unsupported idleTimeout, use keepAliveTimeout instead */
52
+ idleTimeout?: never;
53
+ /** @deprecated unsupported keepAlive, use pipelining=0 instead */
54
+ keepAlive?: never;
55
+ /** the timeout, in milliseconds, after which a socket without active requests will time out. Monitors time between activity on a connected socket. This value may be overridden by *keep-alive* hints from the server. Default: `4e3` milliseconds (4s). */
56
+ keepAliveTimeout?: number;
57
+ /** @deprecated unsupported maxKeepAliveTimeout, use keepAliveMaxTimeout instead */
58
+ maxKeepAliveTimeout?: never;
59
+ /** the maximum allowed `idleTimeout`, in milliseconds, when overridden by *keep-alive* hints from the server. Default: `600e3` milliseconds (10min). */
60
+ keepAliveMaxTimeout?: number;
61
+ /** A number of milliseconds subtracted from server *keep-alive* hints when overriding `idleTimeout` to account for timing inaccuracies caused by e.g. transport latency. Default: `1e3` milliseconds (1s). */
62
+ keepAliveTimeoutThreshold?: number;
63
+ /** TODO */
64
+ socketPath?: string;
65
+ /** The amount of concurrent requests to be sent over the single TCP/TLS connection according to [RFC7230](https://tools.ietf.org/html/rfc7230#section-6.3.2). Default: `1`. */
66
+ pipelining?: number;
67
+ /** @deprecated use the connect option instead */
68
+ tls?: never;
69
+ /** If `true`, an error is thrown when the request content-length header doesn't match the length of the request body. Default: `true`. */
70
+ strictContentLength?: boolean;
71
+ /** TODO */
72
+ maxCachedSessions?: number;
73
+ /** TODO */
74
+ connect?: Partial<buildConnector.BuildOptions> | buildConnector.connector;
75
+ /** TODO */
76
+ maxRequestsPerClient?: number;
77
+ /** TODO */
78
+ localAddress?: string;
79
+ /** Max response body size in bytes, -1 is disabled */
80
+ maxResponseSize?: number;
81
+ /** Enables a family autodetection algorithm that loosely implements section 5 of RFC 8305. */
82
+ autoSelectFamily?: boolean;
83
+ /** The amount of time in milliseconds to wait for a connection attempt to finish before trying the next address when using the `autoSelectFamily` option. */
84
+ autoSelectFamilyAttemptTimeout?: number;
85
+ /**
86
+ * @description Enables support for H2 if the server has assigned bigger priority to it through ALPN negotiation.
87
+ * @default false
88
+ */
89
+ allowH2?: boolean;
90
+ /**
91
+ * @description Dictates the maximum number of concurrent streams for a single H2 session. It can be overridden by a SETTINGS remote frame.
92
+ * @default 100
93
+ */
94
+ maxConcurrentStreams?: number;
95
+ /**
96
+ * @description Sets the HTTP/2 stream-level flow-control window size (SETTINGS_INITIAL_WINDOW_SIZE).
97
+ * @default 262144
98
+ */
99
+ initialWindowSize?: number;
100
+ /**
101
+ * @description Sets the HTTP/2 connection-level flow-control window size (ClientHttp2Session.setLocalWindowSize).
102
+ * @default 524288
103
+ */
104
+ connectionWindowSize?: number;
105
+ /**
106
+ * @description Time interval between PING frames dispatch
107
+ * @default 60000
108
+ */
109
+ pingInterval?: number;
110
+ }
111
+ export interface SocketInfo {
112
+ localAddress?: string
113
+ localPort?: number
114
+ remoteAddress?: string
115
+ remotePort?: number
116
+ remoteFamily?: string
117
+ timeout?: number
118
+ bytesWritten?: number
119
+ bytesRead?: number
120
+ }
121
+ }
122
+
123
+ export default Client
@@ -0,0 +1,36 @@
1
+ import { TLSSocket, ConnectionOptions } from 'node:tls'
2
+ import { IpcNetConnectOpts, Socket, TcpNetConnectOpts } from 'node:net'
3
+
4
+ export default buildConnector
5
+ declare function buildConnector (options?: buildConnector.BuildOptions): buildConnector.connector
6
+
7
+ declare namespace buildConnector {
8
+ export type BuildOptions = (ConnectionOptions | TcpNetConnectOpts | IpcNetConnectOpts) & {
9
+ allowH2?: boolean;
10
+ maxCachedSessions?: number | null;
11
+ socketPath?: string | null;
12
+ timeout?: number | null;
13
+ port?: number;
14
+ keepAlive?: boolean | null;
15
+ keepAliveInitialDelay?: number | null;
16
+ typeOfService?: number | null;
17
+ }
18
+
19
+ export interface Options {
20
+ hostname: string
21
+ host?: string
22
+ protocol: string
23
+ port: string
24
+ servername?: string
25
+ localAddress?: string | null
26
+ socketPath?: string | null
27
+ httpSocket?: Socket
28
+ }
29
+
30
+ export type Callback = (...args: CallbackArgs) => void
31
+ type CallbackArgs = [null, Socket | TLSSocket] | [Error, null]
32
+
33
+ export interface connector {
34
+ (options: buildConnector.Options, callback: buildConnector.Callback): void
35
+ }
36
+ }