@wener/utils 1.1.27 → 1.1.30

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 (324) hide show
  1. package/lib/arrays/MaybeArray.js +36 -25
  2. package/lib/arrays/MaybeArray.js.map +1 -1
  3. package/lib/arrays/arrayFromAsync.js +5 -7
  4. package/lib/arrays/arrayFromAsync.js.map +1 -1
  5. package/lib/asyncs/AsyncInterval.js +11 -12
  6. package/lib/asyncs/AsyncInterval.js.map +1 -1
  7. package/lib/asyncs/MaybePromise.js +3 -0
  8. package/lib/asyncs/MaybePromise.js.map +1 -0
  9. package/lib/asyncs/createAsyncIterator.js +37 -35
  10. package/lib/asyncs/createAsyncIterator.js.map +1 -1
  11. package/lib/asyncs/createLazyPromise.js +59 -60
  12. package/lib/asyncs/createLazyPromise.js.map +1 -1
  13. package/lib/asyncs/firstOfAsyncIterator.js +7 -9
  14. package/lib/asyncs/firstOfAsyncIterator.js.map +1 -1
  15. package/lib/asyncs/generatorOfStream.js +16 -0
  16. package/lib/asyncs/generatorOfStream.js.map +1 -0
  17. package/lib/asyncs/isIterator.js +3 -4
  18. package/lib/asyncs/isIterator.js.map +1 -1
  19. package/lib/asyncs/isPromise.js +3 -4
  20. package/lib/asyncs/isPromise.js.map +1 -1
  21. package/lib/asyncs/isThenable.js +6 -0
  22. package/lib/asyncs/isThenable.js.map +1 -0
  23. package/lib/asyncs/nextOfAsyncIterator.js +20 -14
  24. package/lib/asyncs/nextOfAsyncIterator.js.map +1 -1
  25. package/lib/asyncs/promiseOfCallback.js +17 -0
  26. package/lib/asyncs/promiseOfCallback.js.map +1 -0
  27. package/lib/asyncs/sleep.js +2 -3
  28. package/lib/asyncs/sleep.js.map +1 -1
  29. package/lib/asyncs/timeout.js +22 -26
  30. package/lib/asyncs/timeout.js.map +1 -1
  31. package/lib/browsers/copy.js +47 -45
  32. package/lib/browsers/copy.js.map +1 -1
  33. package/lib/browsers/download.js +38 -27
  34. package/lib/browsers/download.js.map +1 -1
  35. package/lib/browsers/getFileFromDataTransfer.js +41 -28
  36. package/lib/browsers/getFileFromDataTransfer.js.map +1 -1
  37. package/lib/browsers/loaders.js +43 -43
  38. package/lib/browsers/loaders.js.map +1 -1
  39. package/lib/crypto/base.js +5 -4
  40. package/lib/crypto/base.js.map +1 -1
  41. package/lib/crypto/getNodeCrypto.js +14 -13
  42. package/lib/crypto/getNodeCrypto.js.map +1 -1
  43. package/lib/crypto/getRandomValues.js +22 -26
  44. package/lib/crypto/getRandomValues.js.map +1 -1
  45. package/lib/crypto/hashing.js +42 -50
  46. package/lib/crypto/hashing.js.map +1 -1
  47. package/lib/crypto/md5.bench.js +21 -0
  48. package/lib/crypto/md5.bench.js.map +1 -0
  49. package/lib/crypto/md5.d.js +3 -0
  50. package/lib/crypto/md5.d.js.map +1 -0
  51. package/lib/crypto/md5.js +119 -121
  52. package/lib/crypto/md5.js.map +1 -1
  53. package/lib/crypto/pem/pem.js +32 -35
  54. package/lib/crypto/pem/pem.js.map +1 -1
  55. package/lib/crypto/randomUUID.js +12 -11
  56. package/lib/crypto/randomUUID.js.map +1 -1
  57. package/lib/crypto/ulid.js +123 -112
  58. package/lib/crypto/ulid.js.map +1 -1
  59. package/lib/errors/Errors.js +167 -149
  60. package/lib/errors/Errors.js.map +1 -1
  61. package/lib/fetch/createFetchWith.js +20 -23
  62. package/lib/fetch/createFetchWith.js.map +1 -1
  63. package/lib/fetch/createFetchWithLogging.js +20 -16
  64. package/lib/fetch/createFetchWithLogging.js.map +1 -1
  65. package/lib/fetch/createFetchWithRetry.js +61 -65
  66. package/lib/fetch/createFetchWithRetry.js.map +1 -1
  67. package/lib/fetch/dumpRequest.js +39 -42
  68. package/lib/fetch/dumpRequest.js.map +1 -1
  69. package/lib/fetch/dumpResponse.js +13 -20
  70. package/lib/fetch/dumpResponse.js.map +1 -1
  71. package/lib/fetch/index.js +7 -0
  72. package/lib/fetch/index.js.map +1 -0
  73. package/lib/fetch/types.js +3 -0
  74. package/lib/fetch/types.js.map +1 -0
  75. package/lib/http/HttpStatus.js +89 -80
  76. package/lib/http/HttpStatus.js.map +1 -1
  77. package/lib/i18n/createTranslate.js +48 -48
  78. package/lib/i18n/createTranslate.js.map +1 -1
  79. package/lib/index.js +28 -14
  80. package/lib/index.js.map +1 -1
  81. package/lib/io/AbstractEncoding.js +7 -0
  82. package/lib/io/AbstractEncoding.js.map +1 -0
  83. package/lib/io/ArrayBuffer.test-d.js +7 -0
  84. package/lib/io/ArrayBuffer.test-d.js.map +1 -0
  85. package/lib/io/ArrayBuffers.js +198 -172
  86. package/lib/io/ArrayBuffers.js.map +1 -1
  87. package/lib/io/Buffer.js +21 -20
  88. package/lib/io/Buffer.js.map +1 -1
  89. package/lib/io/base64.js +49 -48
  90. package/lib/io/base64.js.map +1 -1
  91. package/lib/io/isBuffer.js +7 -5
  92. package/lib/io/isBuffer.js.map +1 -1
  93. package/lib/io/isTransferable.js +23 -19
  94. package/lib/io/isTransferable.js.map +1 -1
  95. package/lib/isomorphics/getGlobalThis.js +17 -12
  96. package/lib/isomorphics/getGlobalThis.js.map +1 -1
  97. package/lib/isomorphics/structuredClone.js +71 -63
  98. package/lib/isomorphics/structuredClone.js.map +1 -1
  99. package/lib/langs/MaybeFunction.js +7 -7
  100. package/lib/langs/MaybeFunction.js.map +1 -1
  101. package/lib/langs/classOf.js +3 -4
  102. package/lib/langs/classOf.js.map +1 -1
  103. package/lib/langs/deepEqual.js +77 -85
  104. package/lib/langs/deepEqual.js.map +1 -1
  105. package/lib/langs/deepFreeze.js +17 -13
  106. package/lib/langs/deepFreeze.js.map +1 -1
  107. package/lib/langs/hashCode.ignored.js +112 -0
  108. package/lib/langs/hashCode.ignored.js.map +1 -0
  109. package/lib/langs/isClass.js +3 -4
  110. package/lib/langs/isClass.js.map +1 -1
  111. package/lib/langs/isDefined.js +3 -4
  112. package/lib/langs/isDefined.js.map +1 -1
  113. package/lib/langs/isEmptyObject.js +3 -5
  114. package/lib/langs/isEmptyObject.js.map +1 -1
  115. package/lib/langs/isFunction.js +5 -0
  116. package/lib/langs/isFunction.js.map +1 -0
  117. package/lib/langs/isPlainObject.js +7 -8
  118. package/lib/langs/isPlainObject.js.map +1 -1
  119. package/lib/langs/memoize.js +19 -21
  120. package/lib/langs/memoize.js.map +1 -1
  121. package/lib/langs/parseBoolean.js +26 -27
  122. package/lib/langs/parseBoolean.js.map +1 -1
  123. package/lib/langs/shallowClone.js +12 -12
  124. package/lib/langs/shallowClone.js.map +1 -1
  125. package/lib/langs/shallowEqual.js +21 -18
  126. package/lib/langs/shallowEqual.js.map +1 -1
  127. package/lib/libs/ms.js +123 -103
  128. package/lib/libs/ms.js.map +1 -1
  129. package/lib/logging/Logger.js +5 -0
  130. package/lib/logging/Logger.js.map +1 -0
  131. package/lib/logging/createChildLogger.js +12 -14
  132. package/lib/logging/createChildLogger.js.map +1 -1
  133. package/lib/logging/createLogger.js +59 -33
  134. package/lib/logging/createLogger.js.map +1 -1
  135. package/lib/logging/createNoopLogger.js +11 -12
  136. package/lib/logging/createNoopLogger.js.map +1 -1
  137. package/lib/logging/slog.js +143 -0
  138. package/lib/logging/slog.js.map +1 -0
  139. package/lib/maths/clamp.js +20 -20
  140. package/lib/maths/clamp.js.map +1 -1
  141. package/lib/maths/random.js +14 -15
  142. package/lib/maths/random.js.map +1 -1
  143. package/lib/modules/isModule.js +5 -4
  144. package/lib/modules/isModule.js.map +1 -1
  145. package/lib/modules/parseModuleId.js +36 -31
  146. package/lib/modules/parseModuleId.js.map +1 -1
  147. package/lib/objects/get.js +13 -11
  148. package/lib/objects/get.js.map +1 -1
  149. package/lib/objects/get.test-d.js +33 -0
  150. package/lib/objects/get.test-d.js.map +1 -0
  151. package/lib/objects/merge/index.js +3 -0
  152. package/lib/objects/merge/index.js.map +1 -0
  153. package/lib/objects/merge/isMergeableObject.js +11 -10
  154. package/lib/objects/merge/isMergeableObject.js.map +1 -1
  155. package/lib/objects/merge/merge.js +65 -66
  156. package/lib/objects/merge/merge.js.map +1 -1
  157. package/lib/objects/parseObjectPath.js +35 -23
  158. package/lib/objects/parseObjectPath.js.map +1 -1
  159. package/lib/objects/set.js +33 -34
  160. package/lib/objects/set.js.map +1 -1
  161. package/lib/schema/typebox/gen/codegen/common/encoder.js +93 -67
  162. package/lib/schema/typebox/gen/codegen/common/encoder.js.map +1 -1
  163. package/lib/schema/typebox/gen/codegen/common/formatter.js +31 -8
  164. package/lib/schema/typebox/gen/codegen/common/formatter.js.map +1 -1
  165. package/lib/schema/typebox/gen/codegen/common/index.js +5 -0
  166. package/lib/schema/typebox/gen/codegen/common/index.js.map +1 -0
  167. package/lib/schema/typebox/gen/codegen/common/jsdoc.js +109 -60
  168. package/lib/schema/typebox/gen/codegen/common/jsdoc.js.map +1 -1
  169. package/lib/schema/typebox/gen/codegen/expression/compiler.js +359 -317
  170. package/lib/schema/typebox/gen/codegen/expression/compiler.js.map +1 -1
  171. package/lib/schema/typebox/gen/codegen/expression/errors.js +255 -233
  172. package/lib/schema/typebox/gen/codegen/expression/errors.js.map +1 -1
  173. package/lib/schema/typebox/gen/codegen/expression/evaluator.js +249 -236
  174. package/lib/schema/typebox/gen/codegen/expression/evaluator.js.map +1 -1
  175. package/lib/schema/typebox/gen/codegen/expression/expression.js +382 -198
  176. package/lib/schema/typebox/gen/codegen/expression/expression.js.map +1 -1
  177. package/lib/schema/typebox/gen/codegen/expression/index.js +6 -0
  178. package/lib/schema/typebox/gen/codegen/expression/index.js.map +1 -0
  179. package/lib/schema/typebox/gen/codegen/index.js +5 -19
  180. package/lib/schema/typebox/gen/codegen/index.js.map +1 -1
  181. package/lib/schema/typebox/gen/codegen/model/index.js +16 -0
  182. package/lib/schema/typebox/gen/codegen/model/index.js.map +1 -0
  183. package/lib/schema/typebox/gen/codegen/model/model-to-arktype.js +236 -260
  184. package/lib/schema/typebox/gen/codegen/model/model-to-arktype.js.map +1 -1
  185. package/lib/schema/typebox/gen/codegen/model/model-to-expression.js +348 -352
  186. package/lib/schema/typebox/gen/codegen/model/model-to-expression.js.map +1 -1
  187. package/lib/schema/typebox/gen/codegen/model/model-to-grpc.js +214 -242
  188. package/lib/schema/typebox/gen/codegen/model/model-to-grpc.js.map +1 -1
  189. package/lib/schema/typebox/gen/codegen/model/model-to-io-ts.js +229 -292
  190. package/lib/schema/typebox/gen/codegen/model/model-to-io-ts.js.map +1 -1
  191. package/lib/schema/typebox/gen/codegen/model/model-to-javascript.js +42 -15
  192. package/lib/schema/typebox/gen/codegen/model/model-to-javascript.js.map +1 -1
  193. package/lib/schema/typebox/gen/codegen/model/model-to-json-schema.js +168 -168
  194. package/lib/schema/typebox/gen/codegen/model/model-to-json-schema.js.map +1 -1
  195. package/lib/schema/typebox/gen/codegen/model/model-to-typebox.js +31 -8
  196. package/lib/schema/typebox/gen/codegen/model/model-to-typebox.js.map +1 -1
  197. package/lib/schema/typebox/gen/codegen/model/model-to-typescript.js +156 -190
  198. package/lib/schema/typebox/gen/codegen/model/model-to-typescript.js.map +1 -1
  199. package/lib/schema/typebox/gen/codegen/model/model-to-valibot.js +215 -249
  200. package/lib/schema/typebox/gen/codegen/model/model-to-valibot.js.map +1 -1
  201. package/lib/schema/typebox/gen/codegen/model/model-to-value.js +37 -13
  202. package/lib/schema/typebox/gen/codegen/model/model-to-value.js.map +1 -1
  203. package/lib/schema/typebox/gen/codegen/model/model-to-yrel.js +201 -242
  204. package/lib/schema/typebox/gen/codegen/model/model-to-yrel.js.map +1 -1
  205. package/lib/schema/typebox/gen/codegen/model/model-to-yup.js +200 -245
  206. package/lib/schema/typebox/gen/codegen/model/model-to-yup.js.map +1 -1
  207. package/lib/schema/typebox/gen/codegen/model/model-to-zod.js +223 -268
  208. package/lib/schema/typebox/gen/codegen/model/model-to-zod.js.map +1 -1
  209. package/lib/schema/typebox/gen/codegen/model/model.js +27 -0
  210. package/lib/schema/typebox/gen/codegen/model/model.js.map +1 -0
  211. package/lib/schema/typebox/gen/codegen/typescript/index.js +4 -0
  212. package/lib/schema/typebox/gen/codegen/typescript/index.js.map +1 -0
  213. package/lib/schema/typebox/gen/codegen/typescript/typescript-to-model.js +43 -40
  214. package/lib/schema/typebox/gen/codegen/typescript/typescript-to-model.js.map +1 -1
  215. package/lib/schema/typebox/gen/codegen/typescript/typescript-to-typebox.js +592 -616
  216. package/lib/schema/typebox/gen/codegen/typescript/typescript-to-typebox.js.map +1 -1
  217. package/lib/schema/typebox/gen/index.js +3 -3
  218. package/lib/schema/typebox/gen/index.js.map +1 -1
  219. package/lib/schema/typebox/index.js +3 -3
  220. package/lib/schema/typebox/index.js.map +1 -1
  221. package/lib/schema/typebox/typebox.js +18 -29
  222. package/lib/schema/typebox/typebox.js.map +1 -1
  223. package/lib/server.js +2 -1
  224. package/lib/server.js.map +1 -1
  225. package/lib/servers/crypto/md5.js +3 -5
  226. package/lib/servers/crypto/md5.js.map +1 -1
  227. package/lib/servers/fetch/createFetchWithProxy.js +2 -4
  228. package/lib/servers/fetch/createFetchWithProxy.js.map +1 -1
  229. package/lib/servers/fetch/createFetchWithProxyByNodeFetch.js +34 -34
  230. package/lib/servers/fetch/createFetchWithProxyByNodeFetch.js.map +1 -1
  231. package/lib/servers/fetch/createFetchWithProxyByUndici.js +57 -58
  232. package/lib/servers/fetch/createFetchWithProxyByUndici.js.map +1 -1
  233. package/lib/servers/getPackageDir.js +8 -10
  234. package/lib/servers/getPackageDir.js.map +1 -1
  235. package/lib/servers/jsdom.js +3 -2
  236. package/lib/servers/jsdom.js.map +1 -1
  237. package/lib/servers/node-fetch.js +4 -3
  238. package/lib/servers/node-fetch.js.map +1 -1
  239. package/lib/servers/polyfill/polyfillBrowser.js +17 -0
  240. package/lib/servers/polyfill/polyfillBrowser.js.map +1 -0
  241. package/lib/servers/polyfill/polyfillCrypto.js +8 -10
  242. package/lib/servers/polyfill/polyfillCrypto.js.map +1 -1
  243. package/lib/servers/polyfill/polyfillFetch.js +23 -22
  244. package/lib/servers/polyfill/polyfillFetch.js.map +1 -1
  245. package/lib/servers/polyfill/polyfillJsDom.js +59 -52
  246. package/lib/servers/polyfill/polyfillJsDom.js.map +1 -1
  247. package/lib/servers/polyfill/polyfillWebSocket.js +13 -13
  248. package/lib/servers/polyfill/polyfillWebSocket.js.map +1 -1
  249. package/lib/servers/ws.js +3 -2
  250. package/lib/servers/ws.js.map +1 -1
  251. package/lib/strings/camelCase.js +51 -49
  252. package/lib/strings/camelCase.js.map +1 -1
  253. package/lib/strings/formatBytes.js +41 -15
  254. package/lib/strings/formatBytes.js.map +1 -1
  255. package/lib/strings/renderTemplate.js +27 -20
  256. package/lib/strings/renderTemplate.js.map +1 -1
  257. package/lib/typedoc.js +4 -0
  258. package/lib/typedoc.js.map +1 -0
  259. package/lib/types/global.d.js +2 -0
  260. package/lib/types/global.d.js.map +1 -0
  261. package/lib/types/index.d.js +6 -0
  262. package/lib/types/index.d.js.map +1 -0
  263. package/lib/validations/asserts.js +14 -0
  264. package/lib/validations/asserts.js.map +1 -0
  265. package/lib/validations/isUUID.js +3 -4
  266. package/lib/validations/isUUID.js.map +1 -1
  267. package/lib/validations/parseTimestamp.js +25 -21
  268. package/lib/validations/parseTimestamp.js.map +1 -1
  269. package/package.json +3 -3
  270. package/dist/LICENSE.txt +0 -1
  271. package/dist/cjs/createFetchWith-qhRObsE4.js +0 -2
  272. package/dist/cjs/createFetchWith-qhRObsE4.js.map +0 -1
  273. package/dist/cjs/getGlobalThis-GhffAgiG.js +0 -2
  274. package/dist/cjs/getGlobalThis-GhffAgiG.js.map +0 -1
  275. package/dist/cjs/index.cjs +0 -21
  276. package/dist/cjs/index.cjs.map +0 -1
  277. package/dist/cjs/schema/typebox/gen/index.cjs +0 -118
  278. package/dist/cjs/schema/typebox/gen/index.cjs.map +0 -1
  279. package/dist/cjs/schema/typebox/index.cjs +0 -2
  280. package/dist/cjs/schema/typebox/index.cjs.map +0 -1
  281. package/dist/cjs/server.cjs +0 -2
  282. package/dist/cjs/server.cjs.map +0 -1
  283. package/dist/cjs/servers/jsdom.cjs +0 -2
  284. package/dist/cjs/servers/jsdom.cjs.map +0 -1
  285. package/dist/cjs/servers/node-fetch.cjs +0 -2
  286. package/dist/cjs/servers/node-fetch.cjs.map +0 -1
  287. package/dist/cjs/servers/ws.cjs +0 -2
  288. package/dist/cjs/servers/ws.cjs.map +0 -1
  289. package/dist/esm/createFetchWith-1q1S-Xro.js +0 -2
  290. package/dist/esm/createFetchWith-1q1S-Xro.js.map +0 -1
  291. package/dist/esm/getGlobalThis-A8F-nU7J.js +0 -2
  292. package/dist/esm/getGlobalThis-A8F-nU7J.js.map +0 -1
  293. package/dist/esm/index.js +0 -21
  294. package/dist/esm/index.js.map +0 -1
  295. package/dist/esm/schema/typebox/gen.js +0 -118
  296. package/dist/esm/schema/typebox/gen.js.map +0 -1
  297. package/dist/esm/schema/typebox.js +0 -2
  298. package/dist/esm/schema/typebox.js.map +0 -1
  299. package/dist/esm/server.js +0 -2
  300. package/dist/esm/server.js.map +0 -1
  301. package/dist/esm/servers/jsdom.js +0 -2
  302. package/dist/esm/servers/jsdom.js.map +0 -1
  303. package/dist/esm/servers/node-fetch.js +0 -2
  304. package/dist/esm/servers/node-fetch.js.map +0 -1
  305. package/dist/esm/servers/ws.js +0 -2
  306. package/dist/esm/servers/ws.js.map +0 -1
  307. package/dist/system/createFetchWith-TjUle-dI.js +0 -2
  308. package/dist/system/createFetchWith-TjUle-dI.js.map +0 -1
  309. package/dist/system/getGlobalThis-X5ifUXDI.js +0 -2
  310. package/dist/system/getGlobalThis-X5ifUXDI.js.map +0 -1
  311. package/dist/system/index.js +0 -21
  312. package/dist/system/index.js.map +0 -1
  313. package/dist/system/schema/typebox/gen.js +0 -118
  314. package/dist/system/schema/typebox/gen.js.map +0 -1
  315. package/dist/system/schema/typebox.js +0 -2
  316. package/dist/system/schema/typebox.js.map +0 -1
  317. package/dist/system/server.js +0 -2
  318. package/dist/system/server.js.map +0 -1
  319. package/dist/system/servers/jsdom.js +0 -2
  320. package/dist/system/servers/jsdom.js.map +0 -1
  321. package/dist/system/servers/node-fetch.js +0 -2
  322. package/dist/system/servers/node-fetch.js.map +0 -1
  323. package/dist/system/servers/ws.js +0 -2
  324. package/dist/system/servers/ws.js.map +0 -1
@@ -1,65 +1,64 @@
1
- import { createFetchWith } from '../../fetch/createFetchWith.js';
1
+ import { createFetchWith } from '../../fetch/index.js';
2
2
  import { getGlobalThis } from '../../isomorphics/getGlobalThis.js';
3
-
4
- function createFetchWithProxyByUndici({
5
- proxy,
6
- token: _token,
7
- fetch,
8
- undici
9
- } = {}) {
10
- if (!proxy) {
11
- return fetch || globalThis.fetch;
12
- }
13
- if (getGlobalThis().Bun) {
14
- return createFetchWith({
15
- fetch,
16
- onRequest: ({ url, req, next }) => {
17
- return next(url, {
18
- ...req,
19
- // https://github.com/oven-sh/bun/issues/1829
20
- proxy
3
+ export function createFetchWithProxyByUndici({ proxy, token: _token, fetch, undici } = {}) {
4
+ if (!proxy) {
5
+ return fetch || globalThis.fetch;
6
+ }
7
+ if (getGlobalThis().Bun) {
8
+ return createFetchWith({
9
+ fetch,
10
+ onRequest: ({ url, req, next })=>{
11
+ return next(url, {
12
+ ...req,
13
+ // https://github.com/oven-sh/bun/issues/1829
14
+ proxy
15
+ });
16
+ }
21
17
  });
22
- }
23
- });
24
- }
25
- let agent;
26
- return async (...args) => {
27
- const init = args[1] || (args[1] = {});
28
- {
29
- const body = init.body;
30
- if (typeof body === "object" && body && (body instanceof ReadableStream || Symbol.asyncIterator in body)) {
31
- init.duplex || (init.duplex = "half");
32
- }
33
18
  }
34
- if (!agent) {
35
- let uri = proxy;
36
- let token = _token;
37
- {
38
- let u;
39
- try {
40
- u = new URL(proxy);
41
- } catch (e) {
19
+ let agent;
20
+ // https://github.com/nodejs/undici/blob/main/docs/best-practices/proxy.md
21
+ return async (...args)=>{
22
+ const init = args[1] ||= {};
23
+ {
24
+ const body = init.body;
25
+ if (typeof body === 'object' && body && (body instanceof ReadableStream || Symbol.asyncIterator in body)) {
26
+ // request.duplex must be set if request.body is ReadableStream or Async Iterables
27
+ init.duplex ||= 'half';
28
+ }
42
29
  }
43
- if (!token && u && (u.username || u.password)) {
44
- token = `Basic ${btoa(`${u.username || ""}:${u.password}`)}`;
45
- u.username = "";
46
- u.password = "";
47
- uri = u.toString();
30
+ if (!agent) {
31
+ let uri = proxy;
32
+ let token = _token;
33
+ {
34
+ let u;
35
+ try {
36
+ u = new URL(proxy);
37
+ } catch (e) {}
38
+ if (!token && u && (u.username || u.password)) {
39
+ token = `Basic ${btoa(`${u.username || ''}:${u.password}`)}`;
40
+ u.username = '';
41
+ u.password = '';
42
+ uri = u.toString();
43
+ }
44
+ }
45
+ // if in next use 'next/dist/compiled/undici'
46
+ undici ||= import('undici');
47
+ const mod = await undici;
48
+ const ProxyAgent = mod.ProxyAgent;
49
+ fetch ||= mod.fetch;
50
+ // https://github.com/nodejs/undici/blob/main/docs/api/ProxyAgent.md
51
+ agent = new ProxyAgent({
52
+ uri,
53
+ token
54
+ });
55
+ // https://github.com/nodejs/node/issues/43187#issuecomment-1134634174
56
+ // (global as any)[Symbol.for('undici.globalDispatcher.1')] = agent;
57
+ // fixme should unwrap error https://github.com/nodejs/undici/issues/1248
48
58
  }
49
- }
50
- undici || (undici = import('undici'));
51
- const mod = await undici;
52
- const ProxyAgent = mod.ProxyAgent;
53
- fetch || (fetch = mod.fetch);
54
- agent = new ProxyAgent({
55
- uri,
56
- token
57
- });
58
- }
59
- init.dispatcher = agent;
60
- return await fetch(...args);
61
- };
59
+ init.dispatcher = agent;
60
+ return await fetch(...args);
61
+ };
62
62
  }
63
63
 
64
- export { createFetchWithProxyByUndici };
65
- //# sourceMappingURL=createFetchWithProxyByUndici.js.map
64
+ //# sourceMappingURL=createFetchWithProxyByUndici.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"createFetchWithProxyByUndici.js","sources":["../../../src/servers/fetch/createFetchWithProxyByUndici.ts"],"sourcesContent":["import { MaybePromise } from '../../asyncs/MaybePromise';\nimport { createFetchWith, FetchLike } from '../../fetch';\nimport { getGlobalThis } from '../../isomorphics/getGlobalThis';\n\nexport function createFetchWithProxyByUndici({\n proxy,\n token: _token,\n fetch,\n undici,\n}: {\n proxy?: string;\n token?: string;\n fetch?: FetchLike;\n undici?: MaybePromise<{ fetch: any; ProxyAgent: any }>;\n} = {}): FetchLike {\n if (!proxy) {\n return fetch || globalThis.fetch;\n }\n\n if ((getGlobalThis() as any).Bun) {\n return createFetchWith({\n fetch,\n onRequest: ({ url, req, next }) => {\n return next(url, {\n ...req,\n // https://github.com/oven-sh/bun/issues/1829\n proxy,\n } as RequestInit);\n },\n });\n }\n\n let agent: any;\n // https://github.com/nodejs/undici/blob/main/docs/best-practices/proxy.md\n return async (...args) => {\n const init = (args[1] ||= {}) as RequestInit & {\n duplex?: string;\n dispatcher?: any;\n };\n {\n const body = init.body;\n if (typeof body === 'object' && body && (body instanceof ReadableStream || Symbol.asyncIterator in body)) {\n // request.duplex must be set if request.body is ReadableStream or Async Iterables\n init.duplex ||= 'half';\n }\n }\n if (!agent) {\n let uri = proxy;\n let token = _token;\n {\n let u: URL | undefined;\n try {\n u = new URL(proxy);\n } catch (e) {}\n if (!token && u && (u.username || u.password)) {\n token = `Basic ${btoa(`${u.username || ''}:${u.password}`)}`;\n u.username = '';\n u.password = '';\n uri = u.toString();\n }\n }\n // if in next use 'next/dist/compiled/undici'\n undici ||= import('undici');\n const mod = await undici;\n const ProxyAgent = mod.ProxyAgent as new (_: any) => any;\n fetch ||= mod.fetch as FetchLike;\n // https://github.com/nodejs/undici/blob/main/docs/api/ProxyAgent.md\n agent = new ProxyAgent({\n uri,\n token,\n });\n // https://github.com/nodejs/node/issues/43187#issuecomment-1134634174\n // (global as any)[Symbol.for('undici.globalDispatcher.1')] = agent;\n // fixme should unwrap error https://github.com/nodejs/undici/issues/1248\n }\n init.dispatcher = agent;\n return await fetch!(...args);\n };\n}\n"],"names":[],"mappings":";;;AAIO,SAAS,4BAA6B,CAAA;AAAA,EAC3C,KAAA;AAAA,EACA,KAAO,EAAA,MAAA;AAAA,EACP,KAAA;AAAA,EACA,MAAA;AACF,CAAA,GAKI,EAAe,EAAA;AACjB,EAAA,IAAI,CAAC,KAAO,EAAA;AACV,IAAA,OAAO,SAAS,UAAW,CAAA,KAAA,CAAA;AAAA,GAC7B;AAEA,EAAK,IAAA,aAAA,GAAwB,GAAK,EAAA;AAChC,IAAA,OAAO,eAAgB,CAAA;AAAA,MACrB,KAAA;AAAA,MACA,WAAW,CAAC,EAAE,GAAK,EAAA,GAAA,EAAK,MAAW,KAAA;AACjC,QAAA,OAAO,KAAK,GAAK,EAAA;AAAA,UACf,GAAG,GAAA;AAAA;AAAA,UAEH,KAAA;AAAA,SACc,CAAA,CAAA;AAAA,OAClB;AAAA,KACD,CAAA,CAAA;AAAA,GACH;AAEA,EAAI,IAAA,KAAA,CAAA;AAEJ,EAAA,OAAO,UAAU,IAAS,KAAA;AACxB,IAAM,MAAA,IAAA,GAAQ,sBAAY,EAAC,CAAA,CAAA;AAI3B,IAAA;AACE,MAAA,MAAM,OAAO,IAAK,CAAA,IAAA,CAAA;AAClB,MAAI,IAAA,OAAO,SAAS,QAAY,IAAA,IAAA,KAAS,gBAAgB,cAAkB,IAAA,MAAA,CAAO,iBAAiB,IAAO,CAAA,EAAA;AAExG,QAAK,IAAA,CAAA,MAAA,KAAL,KAAK,MAAW,GAAA,MAAA,CAAA,CAAA;AAAA,OAClB;AAAA,KACF;AACA,IAAA,IAAI,CAAC,KAAO,EAAA;AACV,MAAA,IAAI,GAAM,GAAA,KAAA,CAAA;AACV,MAAA,IAAI,KAAQ,GAAA,MAAA,CAAA;AACZ,MAAA;AACE,QAAI,IAAA,CAAA,CAAA;AACJ,QAAI,IAAA;AACF,UAAI,CAAA,GAAA,IAAI,IAAI,KAAK,CAAA,CAAA;AAAA,iBACV,CAAG,EAAA;AAAA,SAAC;AACb,QAAA,IAAI,CAAC,KAAS,IAAA,CAAA,KAAM,CAAE,CAAA,QAAA,IAAY,EAAE,QAAW,CAAA,EAAA;AAC7C,UAAQ,KAAA,GAAA,CAAA,MAAA,EAAS,IAAK,CAAA,CAAA,EAAG,CAAE,CAAA,QAAA,IAAY,EAAE,CAAI,CAAA,EAAA,CAAA,CAAE,QAAQ,CAAA,CAAE,CAAC,CAAA,CAAA,CAAA;AAC1D,UAAA,CAAA,CAAE,QAAW,GAAA,EAAA,CAAA;AACb,UAAA,CAAA,CAAE,QAAW,GAAA,EAAA,CAAA;AACb,UAAA,GAAA,GAAM,EAAE,QAAS,EAAA,CAAA;AAAA,SACnB;AAAA,OACF;AAEA,MAAA,MAAA,KAAA,MAAA,GAAW,OAAO,QAAQ,CAAA,CAAA,CAAA;AAC1B,MAAA,MAAM,MAAM,MAAM,MAAA,CAAA;AAClB,MAAA,MAAM,aAAa,GAAI,CAAA,UAAA,CAAA;AACvB,MAAA,KAAA,KAAA,KAAA,GAAU,GAAI,CAAA,KAAA,CAAA,CAAA;AAEd,MAAA,KAAA,GAAQ,IAAI,UAAW,CAAA;AAAA,QACrB,GAAA;AAAA,QACA,KAAA;AAAA,OACD,CAAA,CAAA;AAAA,KAIH;AACA,IAAA,IAAA,CAAK,UAAa,GAAA,KAAA,CAAA;AAClB,IAAO,OAAA,MAAM,KAAO,CAAA,GAAG,IAAI,CAAA,CAAA;AAAA,GAC7B,CAAA;AACF;;;;"}
1
+ {"version":3,"sources":["../../../src/servers/fetch/createFetchWithProxyByUndici.ts"],"sourcesContent":["import { MaybePromise } from '../../asyncs/MaybePromise';\nimport { createFetchWith, FetchLike } from '../../fetch';\nimport { getGlobalThis } from '../../isomorphics/getGlobalThis';\n\nexport function createFetchWithProxyByUndici({\n proxy,\n token: _token,\n fetch,\n undici,\n}: {\n proxy?: string;\n token?: string;\n fetch?: FetchLike;\n undici?: MaybePromise<{ fetch: any; ProxyAgent: any }>;\n} = {}): FetchLike {\n if (!proxy) {\n return fetch || globalThis.fetch;\n }\n\n if ((getGlobalThis() as any).Bun) {\n return createFetchWith({\n fetch,\n onRequest: ({ url, req, next }) => {\n return next(url, {\n ...req,\n // https://github.com/oven-sh/bun/issues/1829\n proxy,\n } as RequestInit);\n },\n });\n }\n\n let agent: any;\n // https://github.com/nodejs/undici/blob/main/docs/best-practices/proxy.md\n return async (...args) => {\n const init = (args[1] ||= {}) as RequestInit & {\n duplex?: string;\n dispatcher?: any;\n };\n {\n const body = init.body;\n if (typeof body === 'object' && body && (body instanceof ReadableStream || Symbol.asyncIterator in body)) {\n // request.duplex must be set if request.body is ReadableStream or Async Iterables\n init.duplex ||= 'half';\n }\n }\n if (!agent) {\n let uri = proxy;\n let token = _token;\n {\n let u: URL | undefined;\n try {\n u = new URL(proxy);\n } catch (e) {}\n if (!token && u && (u.username || u.password)) {\n token = `Basic ${btoa(`${u.username || ''}:${u.password}`)}`;\n u.username = '';\n u.password = '';\n uri = u.toString();\n }\n }\n // if in next use 'next/dist/compiled/undici'\n undici ||= import('undici');\n const mod = await undici;\n const ProxyAgent = mod.ProxyAgent as new (_: any) => any;\n fetch ||= mod.fetch as FetchLike;\n // https://github.com/nodejs/undici/blob/main/docs/api/ProxyAgent.md\n agent = new ProxyAgent({\n uri,\n token,\n });\n // https://github.com/nodejs/node/issues/43187#issuecomment-1134634174\n // (global as any)[Symbol.for('undici.globalDispatcher.1')] = agent;\n // fixme should unwrap error https://github.com/nodejs/undici/issues/1248\n }\n init.dispatcher = agent;\n return await fetch!(...args);\n };\n}\n"],"names":["createFetchWith","getGlobalThis","createFetchWithProxyByUndici","proxy","token","_token","fetch","undici","globalThis","Bun","onRequest","url","req","next","agent","args","init","body","ReadableStream","Symbol","asyncIterator","duplex","uri","u","URL","e","username","password","btoa","toString","mod","ProxyAgent","dispatcher"],"mappings":"AACA,SAASA,eAAe,QAAmB,cAAc;AACzD,SAASC,aAAa,QAAQ,kCAAkC;AAEhE,OAAO,SAASC,6BAA6B,EAC3CC,KAAK,EACLC,OAAOC,MAAM,EACbC,KAAK,EACLC,MAAM,EAMP,GAAG,CAAC,CAAC;IACJ,IAAI,CAACJ,OAAO;QACV,OAAOG,SAASE,WAAWF,KAAK;IAClC;IAEA,IAAI,AAACL,gBAAwBQ,GAAG,EAAE;QAChC,OAAOT,gBAAgB;YACrBM;YACAI,WAAW,CAAC,EAAEC,GAAG,EAAEC,GAAG,EAAEC,IAAI,EAAE;gBAC5B,OAAOA,KAAKF,KAAK;oBACf,GAAGC,GAAG;oBACN,6CAA6C;oBAC7CT;gBACF;YACF;QACF;IACF;IAEA,IAAIW;IACJ,0EAA0E;IAC1E,OAAO,OAAO,GAAGC;QACf,MAAMC,OAAQD,IAAI,CAAC,EAAE,KAAK,CAAC;QAI3B;YACE,MAAME,OAAOD,KAAKC,IAAI;YACtB,IAAI,OAAOA,SAAS,YAAYA,QAASA,CAAAA,gBAAgBC,kBAAkBC,OAAOC,aAAa,IAAIH,IAAG,GAAI;gBACxG,kFAAkF;gBAClFD,KAAKK,MAAM,KAAK;YAClB;QACF;QACA,IAAI,CAACP,OAAO;YACV,IAAIQ,MAAMnB;YACV,IAAIC,QAAQC;YACZ;gBACE,IAAIkB;gBACJ,IAAI;oBACFA,IAAI,IAAIC,IAAIrB;gBACd,EAAE,OAAOsB,GAAG,CAAC;gBACb,IAAI,CAACrB,SAASmB,KAAMA,CAAAA,EAAEG,QAAQ,IAAIH,EAAEI,QAAQ,AAAD,GAAI;oBAC7CvB,QAAQ,CAAC,MAAM,EAAEwB,KAAK,CAAC,EAAEL,EAAEG,QAAQ,IAAI,GAAG,CAAC,EAAEH,EAAEI,QAAQ,CAAC,CAAC,EAAE,CAAC;oBAC5DJ,EAAEG,QAAQ,GAAG;oBACbH,EAAEI,QAAQ,GAAG;oBACbL,MAAMC,EAAEM,QAAQ;gBAClB;YACF;YACA,6CAA6C;YAC7CtB,WAAW,MAAM,CAAC;YAClB,MAAMuB,MAAM,MAAMvB;YAClB,MAAMwB,aAAaD,IAAIC,UAAU;YACjCzB,UAAUwB,IAAIxB,KAAK;YACnB,oEAAoE;YACpEQ,QAAQ,IAAIiB,WAAW;gBACrBT;gBACAlB;YACF;QACA,sEAAsE;QACtE,oEAAoE;QACpE,yEAAyE;QAC3E;QACAY,KAAKgB,UAAU,GAAGlB;QAClB,OAAO,MAAMR,SAAUS;IACzB;AACF"}
@@ -1,18 +1,16 @@
1
1
  import fs from 'node:fs';
2
2
  import path from 'node:path';
3
3
  import { fileURLToPath } from 'node:url';
4
-
5
4
  const __filename = fileURLToPath(import.meta.url);
6
5
  const __dirname = path.dirname(__filename);
7
- function getPackageDir(currentDir = __dirname) {
8
- while (!fs.existsSync(path.join(currentDir, "package.json"))) {
9
- currentDir = path.resolve(currentDir, "..");
10
- if (currentDir === "/") {
11
- return void 0;
6
+ export function getPackageDir(currentDir = __dirname) {
7
+ while(!fs.existsSync(path.join(currentDir, 'package.json'))){
8
+ currentDir = path.resolve(currentDir, '..');
9
+ if (currentDir === '/') {
10
+ return undefined;
11
+ }
12
12
  }
13
- }
14
- return currentDir;
13
+ return currentDir;
15
14
  }
16
15
 
17
- export { getPackageDir };
18
- //# sourceMappingURL=getPackageDir.js.map
16
+ //# sourceMappingURL=getPackageDir.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"getPackageDir.js","sources":["../../src/servers/getPackageDir.ts"],"sourcesContent":["import fs from 'node:fs';\nimport path from 'node:path';\nimport { fileURLToPath } from 'node:url';\n\nconst __filename = fileURLToPath(import.meta.url);\nconst __dirname = path.dirname(__filename);\n\nexport function getPackageDir(currentDir: string = __dirname) {\n while (!fs.existsSync(path.join(currentDir, 'package.json'))) {\n currentDir = path.resolve(currentDir, '..');\n if (currentDir === '/') {\n return undefined;\n }\n }\n return currentDir;\n}\n"],"names":[],"mappings":";;;;AAIA,MAAM,UAAA,GAAa,aAAc,CAAA,MAAA,CAAA,IAAA,CAAY,GAAG,CAAA,CAAA;AAChD,MAAM,SAAA,GAAY,IAAK,CAAA,OAAA,CAAQ,UAAU,CAAA,CAAA;AAEzB,SAAA,aAAA,CAAc,aAAqB,SAAW,EAAA;AAC5D,EAAO,OAAA,CAAC,GAAG,UAAW,CAAA,IAAA,CAAK,KAAK,UAAY,EAAA,cAAc,CAAC,CAAG,EAAA;AAC5D,IAAa,UAAA,GAAA,IAAA,CAAK,OAAQ,CAAA,UAAA,EAAY,IAAI,CAAA,CAAA;AAC1C,IAAA,IAAI,eAAe,GAAK,EAAA;AACtB,MAAO,OAAA,KAAA,CAAA,CAAA;AAAA,KACT;AAAA,GACF;AACA,EAAO,OAAA,UAAA,CAAA;AACT;;;;"}
1
+ {"version":3,"sources":["../../src/servers/getPackageDir.ts"],"sourcesContent":["import fs from 'node:fs';\nimport path from 'node:path';\nimport { fileURLToPath } from 'node:url';\n\nconst __filename = fileURLToPath(import.meta.url);\nconst __dirname = path.dirname(__filename);\n\nexport function getPackageDir(currentDir: string = __dirname) {\n while (!fs.existsSync(path.join(currentDir, 'package.json'))) {\n currentDir = path.resolve(currentDir, '..');\n if (currentDir === '/') {\n return undefined;\n }\n }\n return currentDir;\n}\n"],"names":["fs","path","fileURLToPath","__filename","url","__dirname","dirname","getPackageDir","currentDir","existsSync","join","resolve","undefined"],"mappings":"AAAA,OAAOA,QAAQ,UAAU;AACzB,OAAOC,UAAU,YAAY;AAC7B,SAASC,aAAa,QAAQ,WAAW;AAEzC,MAAMC,aAAaD,cAAc,YAAYE,GAAG;AAChD,MAAMC,YAAYJ,KAAKK,OAAO,CAACH;AAE/B,OAAO,SAASI,cAAcC,aAAqBH,SAAS;IAC1D,MAAO,CAACL,GAAGS,UAAU,CAACR,KAAKS,IAAI,CAACF,YAAY,iBAAkB;QAC5DA,aAAaP,KAAKU,OAAO,CAACH,YAAY;QACtC,IAAIA,eAAe,KAAK;YACtB,OAAOI;QACT;IACF;IACA,OAAOJ;AACT"}
@@ -1,2 +1,3 @@
1
- export { polyfillJsDom } from './polyfill/polyfillJsDom.js';
2
- //# sourceMappingURL=jsdom.js.map
1
+ export * from './polyfill/polyfillJsDom.js';
2
+
3
+ //# sourceMappingURL=jsdom.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"jsdom.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
1
+ {"version":3,"sources":["../../src/servers/jsdom.ts"],"sourcesContent":["export * from './polyfill/polyfillJsDom';\n"],"names":[],"mappings":"AAAA,cAAc,2BAA2B"}
@@ -1,3 +1,4 @@
1
- export { polyfillFetch } from './polyfill/polyfillFetch.js';
2
- export { createFetchWithProxyByNodeFetch } from './fetch/createFetchWithProxyByNodeFetch.js';
3
- //# sourceMappingURL=node-fetch.js.map
1
+ export * from './polyfill/polyfillFetch.js';
2
+ export * from './fetch/createFetchWithProxyByNodeFetch.js';
3
+
4
+ //# sourceMappingURL=node-fetch.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"node-fetch.js","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
1
+ {"version":3,"sources":["../../src/servers/node-fetch.ts"],"sourcesContent":["export * from './polyfill/polyfillFetch';\nexport * from './fetch/createFetchWithProxyByNodeFetch';\n"],"names":[],"mappings":"AAAA,cAAc,2BAA2B;AACzC,cAAc,0CAA0C"}
@@ -0,0 +1,17 @@
1
+ import { polyfillCrypto } from './polyfillCrypto.js';
2
+ import { polyfillFetch } from './polyfillFetch.js';
3
+ import { polyfillJsDom } from './polyfillJsDom.js';
4
+ /**
5
+ * Polyfills the browser environment with the necessary APIs for the server.
6
+ * Currently, this includes:
7
+ * - `window`
8
+ * - `document`
9
+ * - `fetch`
10
+ * - `crypto`
11
+ */ export async function polyfillBrowser() {
12
+ await polyfillCrypto();
13
+ await polyfillFetch();
14
+ await polyfillJsDom();
15
+ }
16
+
17
+ //# sourceMappingURL=polyfillBrowser.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/servers/polyfill/polyfillBrowser.ts"],"sourcesContent":["import { polyfillCrypto } from './polyfillCrypto';\nimport { polyfillFetch } from './polyfillFetch';\nimport { polyfillJsDom } from './polyfillJsDom';\n\n/**\n * Polyfills the browser environment with the necessary APIs for the server.\n * Currently, this includes:\n * - `window`\n * - `document`\n * - `fetch`\n * - `crypto`\n */\nexport async function polyfillBrowser() {\n await polyfillCrypto();\n await polyfillFetch();\n await polyfillJsDom();\n}\n"],"names":["polyfillCrypto","polyfillFetch","polyfillJsDom","polyfillBrowser"],"mappings":"AAAA,SAASA,cAAc,QAAQ,mBAAmB;AAClD,SAASC,aAAa,QAAQ,kBAAkB;AAChD,SAASC,aAAa,QAAQ,kBAAkB;AAEhD;;;;;;;CAOC,GACD,OAAO,eAAeC;IACpB,MAAMH;IACN,MAAMC;IACN,MAAMC;AACR"}
@@ -1,13 +1,11 @@
1
1
  import { getGlobalThis } from '../../isomorphics/getGlobalThis.js';
2
-
3
- async function polyfillCrypto() {
4
- const globalThis = getGlobalThis();
5
- if ("crypto" in globalThis) {
6
- return false;
7
- }
8
- globalThis.crypto = (await import('node:crypto')).webcrypto;
9
- return true;
2
+ export async function polyfillCrypto() {
3
+ const globalThis = getGlobalThis();
4
+ if ('crypto' in globalThis) {
5
+ return false;
6
+ }
7
+ globalThis.crypto = (await import('node:crypto')).webcrypto;
8
+ return true;
10
9
  }
11
10
 
12
- export { polyfillCrypto };
13
- //# sourceMappingURL=polyfillCrypto.js.map
11
+ //# sourceMappingURL=polyfillCrypto.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"polyfillCrypto.js","sources":["../../../src/servers/polyfill/polyfillCrypto.ts"],"sourcesContent":["import { getGlobalThis } from '../../isomorphics/getGlobalThis';\n\nexport async function polyfillCrypto() {\n const globalThis = getGlobalThis();\n if ('crypto' in globalThis) {\n return false;\n }\n (globalThis as any).crypto = (await import('node:crypto')).webcrypto as Crypto;\n return true;\n}\n"],"names":[],"mappings":";;AAEA,eAAsB,cAAiB,GAAA;AACrC,EAAA,MAAM,aAAa,aAAc,EAAA,CAAA;AACjC,EAAA,IAAI,YAAY,UAAY,EAAA;AAC1B,IAAO,OAAA,KAAA,CAAA;AAAA,GACT;AACA,EAAC,UAAmB,CAAA,MAAA,GAAA,CAAU,MAAM,OAAO,aAAa,CAAG,EAAA,SAAA,CAAA;AAC3D,EAAO,OAAA,IAAA,CAAA;AACT;;;;"}
1
+ {"version":3,"sources":["../../../src/servers/polyfill/polyfillCrypto.ts"],"sourcesContent":["import { getGlobalThis } from '../../isomorphics/getGlobalThis';\n\nexport async function polyfillCrypto() {\n const globalThis = getGlobalThis();\n if ('crypto' in globalThis) {\n return false;\n }\n (globalThis as any).crypto = (await import('node:crypto')).webcrypto as Crypto;\n return true;\n}\n"],"names":["getGlobalThis","polyfillCrypto","globalThis","crypto","webcrypto"],"mappings":"AAAA,SAASA,aAAa,QAAQ,kCAAkC;AAEhE,OAAO,eAAeC;IACpB,MAAMC,aAAaF;IACnB,IAAI,YAAYE,YAAY;QAC1B,OAAO;IACT;IACCA,WAAmBC,MAAM,GAAG,AAAC,CAAA,MAAM,MAAM,CAAC,cAAa,EAAGC,SAAS;IACpE,OAAO;AACT"}
@@ -1,24 +1,25 @@
1
- function polyfillFetch(nodeFetch) {
2
- if ("fetch" in globalThis) {
3
- return false;
4
- }
5
- if (nodeFetch) {
6
- const { default: fetch, Response, Headers, Request, AbortError, FetchError, FormData, Blob, File } = nodeFetch;
7
- Object.assign(globalThis, {
8
- fetch,
9
- Response,
10
- Headers,
11
- Request,
12
- AbortError,
13
- FetchError,
14
- FormData,
15
- Blob,
16
- File
17
- });
18
- return true;
19
- }
20
- return import('node-fetch').then((v) => polyfillFetch(v));
1
+ export function polyfillFetch(nodeFetch) {
2
+ if ('fetch' in globalThis) {
3
+ return false;
4
+ }
5
+ // sync mode
6
+ if (nodeFetch) {
7
+ const { default: fetch, Response, Headers, Request, AbortError, FetchError, FormData, Blob, File } = nodeFetch;
8
+ Object.assign(globalThis, {
9
+ fetch,
10
+ Response,
11
+ Headers,
12
+ Request,
13
+ AbortError,
14
+ FetchError,
15
+ FormData,
16
+ Blob,
17
+ File
18
+ });
19
+ // abort controller
20
+ return true;
21
+ }
22
+ return import('node-fetch').then((v)=>polyfillFetch(v));
21
23
  }
22
24
 
23
- export { polyfillFetch };
24
- //# sourceMappingURL=polyfillFetch.js.map
25
+ //# sourceMappingURL=polyfillFetch.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"polyfillFetch.js","sources":["../../../src/servers/polyfill/polyfillFetch.ts"],"sourcesContent":["import type { MaybePromise } from '../../asyncs/MaybePromise';\n\nexport function polyfillFetch(nodeFetch: typeof import('node-fetch')): boolean;\nexport function polyfillFetch(nodeFetch?: undefined): Promise<boolean>;\nexport function polyfillFetch(nodeFetch?: typeof import('node-fetch')): MaybePromise<boolean> {\n if ('fetch' in globalThis) {\n return false;\n }\n // sync mode\n if (nodeFetch) {\n const { default: fetch, Response, Headers, Request, AbortError, FetchError, FormData, Blob, File } = nodeFetch;\n Object.assign(globalThis, {\n fetch,\n Response,\n Headers,\n Request,\n AbortError,\n FetchError,\n FormData,\n Blob,\n File,\n });\n // abort controller\n return true;\n }\n return import('node-fetch').then((v) => polyfillFetch(v));\n}\n"],"names":[],"mappings":"AAIO,SAAS,cAAc,SAAgE,EAAA;AAC5F,EAAA,IAAI,WAAW,UAAY,EAAA;AACzB,IAAO,OAAA,KAAA,CAAA;AAAA,GACT;AAEA,EAAA,IAAI,SAAW,EAAA;AACb,IAAM,MAAA,EAAE,OAAS,EAAA,KAAA,EAAO,QAAU,EAAA,OAAA,EAAS,OAAS,EAAA,UAAA,EAAY,UAAY,EAAA,QAAA,EAAU,IAAM,EAAA,IAAA,EAAS,GAAA,SAAA,CAAA;AACrG,IAAA,MAAA,CAAO,OAAO,UAAY,EAAA;AAAA,MACxB,KAAA;AAAA,MACA,QAAA;AAAA,MACA,OAAA;AAAA,MACA,OAAA;AAAA,MACA,UAAA;AAAA,MACA,UAAA;AAAA,MACA,QAAA;AAAA,MACA,IAAA;AAAA,MACA,IAAA;AAAA,KACD,CAAA,CAAA;AAED,IAAO,OAAA,IAAA,CAAA;AAAA,GACT;AACA,EAAO,OAAA,OAAO,YAAY,CAAE,CAAA,IAAA,CAAK,CAAC,CAAM,KAAA,aAAA,CAAc,CAAC,CAAC,CAAA,CAAA;AAC1D;;;;"}
1
+ {"version":3,"sources":["../../../src/servers/polyfill/polyfillFetch.ts"],"sourcesContent":["import type { MaybePromise } from '../../asyncs/MaybePromise';\n\nexport function polyfillFetch(nodeFetch: typeof import('node-fetch')): boolean;\nexport function polyfillFetch(nodeFetch?: undefined): Promise<boolean>;\nexport function polyfillFetch(nodeFetch?: typeof import('node-fetch')): MaybePromise<boolean> {\n if ('fetch' in globalThis) {\n return false;\n }\n // sync mode\n if (nodeFetch) {\n const { default: fetch, Response, Headers, Request, AbortError, FetchError, FormData, Blob, File } = nodeFetch;\n Object.assign(globalThis, {\n fetch,\n Response,\n Headers,\n Request,\n AbortError,\n FetchError,\n FormData,\n Blob,\n File,\n });\n // abort controller\n return true;\n }\n return import('node-fetch').then((v) => polyfillFetch(v));\n}\n"],"names":["polyfillFetch","nodeFetch","globalThis","default","fetch","Response","Headers","Request","AbortError","FetchError","FormData","Blob","File","Object","assign","then","v"],"mappings":"AAIA,OAAO,SAASA,cAAcC,SAAuC;IACnE,IAAI,WAAWC,YAAY;QACzB,OAAO;IACT;IACA,YAAY;IACZ,IAAID,WAAW;QACb,MAAM,EAAEE,SAASC,KAAK,EAAEC,QAAQ,EAAEC,OAAO,EAAEC,OAAO,EAAEC,UAAU,EAAEC,UAAU,EAAEC,QAAQ,EAAEC,IAAI,EAAEC,IAAI,EAAE,GAAGX;QACrGY,OAAOC,MAAM,CAACZ,YAAY;YACxBE;YACAC;YACAC;YACAC;YACAC;YACAC;YACAC;YACAC;YACAC;QACF;QACA,mBAAmB;QACnB,OAAO;IACT;IACA,OAAO,MAAM,CAAC,cAAcG,IAAI,CAAC,CAACC,IAAMhB,cAAcgB;AACxD"}
@@ -1,57 +1,64 @@
1
1
  import { getGlobalThis } from '../../isomorphics/getGlobalThis.js';
2
-
3
- async function polyfillJsDom() {
4
- if (typeof window !== "undefined") {
5
- return false;
6
- }
7
- const globalThis = getGlobalThis();
8
- const { ResourceLoader, JSDOM } = await import('jsdom');
9
- class Window {
10
- constructor(opts = {}) {
11
- const { proxy, strictSSL, userAgent, ...jsdomOpts } = opts;
12
- const resources = new ResourceLoader({
13
- proxy,
14
- strictSSL,
15
- userAgent
16
- });
17
- return new JSDOM(
18
- "",
19
- Object.assign(jsdomOpts, {
20
- resources
21
- })
22
- ).window;
2
+ export async function polyfillJsDom() {
3
+ if (typeof window !== 'undefined') {
4
+ return false;
5
+ }
6
+ const globalThis = getGlobalThis();
7
+ const { ResourceLoader, JSDOM } = await import('jsdom');
8
+ // https://github.com/lukechilds/window/blob/master/src/index.js
9
+ // eslint-disable-next-line @typescript-eslint/no-extraneous-class
10
+ let Window = class Window {
11
+ constructor(opts = {}){
12
+ const { proxy, strictSSL, userAgent, ...jsdomOpts } = opts;
13
+ const resources = new ResourceLoader({
14
+ proxy,
15
+ strictSSL,
16
+ userAgent
17
+ });
18
+ return new JSDOM('', Object.assign(jsdomOpts, {
19
+ resources
20
+ })).window;
21
+ }
22
+ };
23
+ // https://github.com/lukechilds/browser-env/blob/master/src/index.js
24
+ // Default jsdom config.
25
+ // These settings must override any custom settings to make sure we can iterate
26
+ // over the window object.
27
+ const defaultJsdomConfig = {
28
+ };
29
+ // IIFE executed on import to return an array of global Node.js properties that
30
+ // conflict with global browser properties.
31
+ const protectedProperties = (()=>Object.getOwnPropertyNames(new Window(defaultJsdomConfig)).filter((prop)=>typeof globalThis[prop] !== 'undefined'))();
32
+ function installEnv(...args) {
33
+ // Sets up global browser environment
34
+ // Extract options from args
35
+ const properties = args.filter((arg)=>Array.isArray(arg))[0];
36
+ const userJsdomConfig = args.filter((arg)=>!Array.isArray(arg))[0];
37
+ // Create window object
38
+ const window1 = new Window(Object.assign({}, userJsdomConfig, defaultJsdomConfig));
39
+ // Get all global browser properties
40
+ Object.getOwnPropertyNames(window1)// Remove protected properties
41
+ .filter((prop)=>!protectedProperties.includes(prop))// If we're only applying specific required properties remove everything else
42
+ .filter((prop)=>!(properties && properties.indexOf(prop) === -1)).filter((prop)=>{
43
+ switch(prop){
44
+ case 'undefined':
45
+ return false;
46
+ }
47
+ return true;
48
+ })// Copy what's left to the Node.js global scope
49
+ .forEach((prop)=>{
50
+ // console.debug(`define globalThis.${prop}`);
51
+ Object.defineProperty(globalThis, prop, {
52
+ configurable: true,
53
+ get: ()=>window1[prop]
54
+ });
55
+ });
56
+ return window1;
23
57
  }
24
- }
25
- const defaultJsdomConfig = {
26
- // features: {
27
- // FetchExternalResources: false,
28
- // ProcessExternalResources: false,
29
- // },
30
- };
31
- const protectedProperties = (() => Object.getOwnPropertyNames(new Window(defaultJsdomConfig)).filter(
32
- (prop) => typeof globalThis[prop] !== "undefined"
33
- ))();
34
- function installEnv(...args) {
35
- const properties = args.filter((arg) => Array.isArray(arg))[0];
36
- const userJsdomConfig = args.filter((arg) => !Array.isArray(arg))[0];
37
- const window2 = new Window(Object.assign({}, userJsdomConfig, defaultJsdomConfig));
38
- Object.getOwnPropertyNames(window2).filter((prop) => !protectedProperties.includes(prop)).filter((prop) => !(properties && properties.indexOf(prop) === -1)).filter((prop) => {
39
- switch (prop) {
40
- case "undefined":
41
- return false;
42
- }
43
- return true;
44
- }).forEach((prop) => {
45
- Object.defineProperty(globalThis, prop, {
46
- configurable: true,
47
- get: () => window2[prop]
48
- });
58
+ installEnv({
59
+ url: 'http://localhost'
49
60
  });
50
- return window2;
51
- }
52
- installEnv({ url: "http://localhost" });
53
- return true;
61
+ return true;
54
62
  }
55
63
 
56
- export { polyfillJsDom };
57
- //# sourceMappingURL=polyfillJsDom.js.map
64
+ //# sourceMappingURL=polyfillJsDom.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"polyfillJsDom.js","sources":["../../../src/servers/polyfill/polyfillJsDom.ts"],"sourcesContent":["import type { ConstructorOptions, ResourceLoaderConstructorOptions } from 'jsdom';\nimport { getGlobalThis } from '../../isomorphics/getGlobalThis';\n\nexport async function polyfillJsDom() {\n if (typeof window !== 'undefined') {\n return false;\n }\n\n const globalThis = getGlobalThis();\n\n const { ResourceLoader, JSDOM } = await import('jsdom');\n\n // https://github.com/lukechilds/window/blob/master/src/index.js\n // eslint-disable-next-line @typescript-eslint/no-extraneous-class\n class Window {\n constructor(opts: ResourceLoaderConstructorOptions & ConstructorOptions = {}) {\n const { proxy, strictSSL, userAgent, ...jsdomOpts } = opts;\n const resources = new ResourceLoader({\n proxy,\n strictSSL,\n userAgent,\n });\n return new JSDOM(\n '',\n Object.assign(jsdomOpts, {\n resources,\n }),\n ).window;\n }\n }\n\n // https://github.com/lukechilds/browser-env/blob/master/src/index.js\n // Default jsdom config.\n // These settings must override any custom settings to make sure we can iterate\n // over the window object.\n const defaultJsdomConfig = {\n // features: {\n // FetchExternalResources: false,\n // ProcessExternalResources: false,\n // },\n };\n // IIFE executed on import to return an array of global Node.js properties that\n // conflict with global browser properties.\n const protectedProperties = (() =>\n Object.getOwnPropertyNames(new Window(defaultJsdomConfig)).filter(\n (prop) => typeof globalThis[prop as keyof typeof globalThis] !== 'undefined',\n ))();\n\n function installEnv(...args: any[]) {\n // Sets up global browser environment\n // Extract options from args\n const properties = args.filter((arg: any) => Array.isArray(arg))[0];\n const userJsdomConfig = args.filter((arg: any) => !Array.isArray(arg))[0];\n\n // Create window object\n const window = new Window(Object.assign({}, userJsdomConfig, defaultJsdomConfig));\n\n // Get all global browser properties\n Object.getOwnPropertyNames(window)\n\n // Remove protected properties\n .filter((prop) => !protectedProperties.includes(prop))\n\n // If we're only applying specific required properties remove everything else\n .filter((prop) => !(properties && properties.indexOf(prop) === -1))\n .filter((prop) => {\n switch (prop) {\n case 'undefined':\n return false;\n }\n return true;\n })\n\n // Copy what's left to the Node.js global scope\n .forEach((prop) => {\n // console.debug(`define globalThis.${prop}`);\n Object.defineProperty(globalThis, prop, {\n configurable: true,\n get: () => window[prop as keyof Window] as any,\n });\n });\n\n return window;\n }\n\n installEnv({ url: 'http://localhost' });\n return true;\n}\n"],"names":["window"],"mappings":";;AAGA,eAAsB,aAAgB,GAAA;AACpC,EAAI,IAAA,OAAO,WAAW,WAAa,EAAA;AACjC,IAAO,OAAA,KAAA,CAAA;AAAA,GACT;AAEA,EAAA,MAAM,aAAa,aAAc,EAAA,CAAA;AAEjC,EAAA,MAAM,EAAE,cAAgB,EAAA,KAAA,EAAU,GAAA,MAAM,OAAO,OAAO,CAAA,CAAA;AAAA,EAItD,MAAM,MAAO,CAAA;AAAA,IACX,WAAA,CAAY,IAA8D,GAAA,EAAI,EAAA;AAC5E,MAAA,MAAM,EAAE,KAAO,EAAA,SAAA,EAAW,SAAW,EAAA,GAAG,WAAc,GAAA,IAAA,CAAA;AACtD,MAAM,MAAA,SAAA,GAAY,IAAI,cAAe,CAAA;AAAA,QACnC,KAAA;AAAA,QACA,SAAA;AAAA,QACA,SAAA;AAAA,OACD,CAAA,CAAA;AACD,MAAA,OAAO,IAAI,KAAA;AAAA,QACT,EAAA;AAAA,QACA,MAAA,CAAO,OAAO,SAAW,EAAA;AAAA,UACvB,SAAA;AAAA,SACD,CAAA;AAAA,OACD,CAAA,MAAA,CAAA;AAAA,KACJ;AAAA,GACF;AAMA,EAAA,MAAM,kBAAqB,GAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GAK3B,CAAA;AAGA,EAAM,MAAA,mBAAA,GAAA,CAAuB,MAC3B,MAAO,CAAA,mBAAA,CAAoB,IAAI,MAAO,CAAA,kBAAkB,CAAC,CAAE,CAAA,MAAA;AAAA,IACzD,CAAC,IAAA,KAAS,OAAO,UAAA,CAAW,IAA+B,CAAM,KAAA,WAAA;AAAA,GAChE,GAAA,CAAA;AAEL,EAAA,SAAS,cAAc,IAAa,EAAA;AAGlC,IAAM,MAAA,UAAA,GAAa,IAAK,CAAA,MAAA,CAAO,CAAC,GAAA,KAAa,MAAM,OAAQ,CAAA,GAAG,CAAC,CAAA,CAAE,CAAC,CAAA,CAAA;AAClE,IAAM,MAAA,eAAA,GAAkB,IAAK,CAAA,MAAA,CAAO,CAAC,GAAA,KAAa,CAAC,KAAA,CAAM,OAAQ,CAAA,GAAG,CAAC,CAAA,CAAE,CAAC,CAAA,CAAA;AAGxE,IAAMA,MAAAA,OAAAA,GAAS,IAAI,MAAO,CAAA,MAAA,CAAO,OAAO,EAAC,EAAG,eAAiB,EAAA,kBAAkB,CAAC,CAAA,CAAA;AAGhF,IAAO,MAAA,CAAA,mBAAA,CAAoBA,OAAM,CAAA,CAG9B,MAAO,CAAA,CAAC,SAAS,CAAC,mBAAA,CAAoB,QAAS,CAAA,IAAI,CAAC,CAAA,CAGpD,OAAO,CAAC,IAAA,KAAS,EAAE,UAAA,IAAc,UAAW,CAAA,OAAA,CAAQ,IAAI,CAAA,KAAM,CAAG,CAAA,CAAA,CAAA,CACjE,MAAO,CAAA,CAAC,IAAS,KAAA;AAChB,MAAA,QAAQ,IAAM;AAAA,QACZ,KAAK,WAAA;AACH,UAAO,OAAA,KAAA,CAAA;AAAA,OACX;AACA,MAAO,OAAA,IAAA,CAAA;AAAA,KACR,CAAA,CAGA,OAAQ,CAAA,CAAC,IAAS,KAAA;AAEjB,MAAO,MAAA,CAAA,cAAA,CAAe,YAAY,IAAM,EAAA;AAAA,QACtC,YAAc,EAAA,IAAA;AAAA,QACd,GAAA,EAAK,MAAMA,OAAAA,CAAO,IAAoB,CAAA;AAAA,OACvC,CAAA,CAAA;AAAA,KACF,CAAA,CAAA;AAEH,IAAOA,OAAAA,OAAAA,CAAAA;AAAA,GACT;AAEA,EAAW,UAAA,CAAA,EAAE,GAAK,EAAA,kBAAA,EAAoB,CAAA,CAAA;AACtC,EAAO,OAAA,IAAA,CAAA;AACT;;;;"}
1
+ {"version":3,"sources":["../../../src/servers/polyfill/polyfillJsDom.ts"],"sourcesContent":["import type { ConstructorOptions, ResourceLoaderConstructorOptions } from 'jsdom';\nimport { getGlobalThis } from '../../isomorphics/getGlobalThis';\n\nexport async function polyfillJsDom() {\n if (typeof window !== 'undefined') {\n return false;\n }\n\n const globalThis = getGlobalThis();\n\n const { ResourceLoader, JSDOM } = await import('jsdom');\n\n // https://github.com/lukechilds/window/blob/master/src/index.js\n // eslint-disable-next-line @typescript-eslint/no-extraneous-class\n class Window {\n constructor(opts: ResourceLoaderConstructorOptions & ConstructorOptions = {}) {\n const { proxy, strictSSL, userAgent, ...jsdomOpts } = opts;\n const resources = new ResourceLoader({\n proxy,\n strictSSL,\n userAgent,\n });\n return new JSDOM(\n '',\n Object.assign(jsdomOpts, {\n resources,\n }),\n ).window;\n }\n }\n\n // https://github.com/lukechilds/browser-env/blob/master/src/index.js\n // Default jsdom config.\n // These settings must override any custom settings to make sure we can iterate\n // over the window object.\n const defaultJsdomConfig = {\n // features: {\n // FetchExternalResources: false,\n // ProcessExternalResources: false,\n // },\n };\n // IIFE executed on import to return an array of global Node.js properties that\n // conflict with global browser properties.\n const protectedProperties = (() =>\n Object.getOwnPropertyNames(new Window(defaultJsdomConfig)).filter(\n (prop) => typeof globalThis[prop as keyof typeof globalThis] !== 'undefined',\n ))();\n\n function installEnv(...args: any[]) {\n // Sets up global browser environment\n // Extract options from args\n const properties = args.filter((arg: any) => Array.isArray(arg))[0];\n const userJsdomConfig = args.filter((arg: any) => !Array.isArray(arg))[0];\n\n // Create window object\n const window = new Window(Object.assign({}, userJsdomConfig, defaultJsdomConfig));\n\n // Get all global browser properties\n Object.getOwnPropertyNames(window)\n\n // Remove protected properties\n .filter((prop) => !protectedProperties.includes(prop))\n\n // If we're only applying specific required properties remove everything else\n .filter((prop) => !(properties && properties.indexOf(prop) === -1))\n .filter((prop) => {\n switch (prop) {\n case 'undefined':\n return false;\n }\n return true;\n })\n\n // Copy what's left to the Node.js global scope\n .forEach((prop) => {\n // console.debug(`define globalThis.${prop}`);\n Object.defineProperty(globalThis, prop, {\n configurable: true,\n get: () => window[prop as keyof Window] as any,\n });\n });\n\n return window;\n }\n\n installEnv({ url: 'http://localhost' });\n return true;\n}\n"],"names":["getGlobalThis","polyfillJsDom","window","globalThis","ResourceLoader","JSDOM","Window","constructor","opts","proxy","strictSSL","userAgent","jsdomOpts","resources","Object","assign","defaultJsdomConfig","protectedProperties","getOwnPropertyNames","filter","prop","installEnv","args","properties","arg","Array","isArray","userJsdomConfig","includes","indexOf","forEach","defineProperty","configurable","get","url"],"mappings":"AACA,SAASA,aAAa,QAAQ,kCAAkC;AAEhE,OAAO,eAAeC;IACpB,IAAI,OAAOC,WAAW,aAAa;QACjC,OAAO;IACT;IAEA,MAAMC,aAAaH;IAEnB,MAAM,EAAEI,cAAc,EAAEC,KAAK,EAAE,GAAG,MAAM,MAAM,CAAC;IAE/C,gEAAgE;IAChE,kEAAkE;IAClE,IAAA,AAAMC,SAAN,MAAMA;QACJC,YAAYC,OAA8D,CAAC,CAAC,CAAE;YAC5E,MAAM,EAAEC,KAAK,EAAEC,SAAS,EAAEC,SAAS,EAAE,GAAGC,WAAW,GAAGJ;YACtD,MAAMK,YAAY,IAAIT,eAAe;gBACnCK;gBACAC;gBACAC;YACF;YACA,OAAO,IAAIN,MACT,IACAS,OAAOC,MAAM,CAACH,WAAW;gBACvBC;YACF,IACAX,MAAM;QACV;IACF;IAEA,qEAAqE;IACrE,wBAAwB;IACxB,+EAA+E;IAC/E,0BAA0B;IAC1B,MAAMc,qBAAqB;IAK3B;IACA,+EAA+E;IAC/E,2CAA2C;IAC3C,MAAMC,sBAAsB,AAAC,CAAA,IAC3BH,OAAOI,mBAAmB,CAAC,IAAIZ,OAAOU,qBAAqBG,MAAM,CAC/D,CAACC,OAAS,OAAOjB,UAAU,CAACiB,KAAgC,KAAK,YACnE;IAEF,SAASC,WAAW,GAAGC,IAAW;QAChC,qCAAqC;QACrC,4BAA4B;QAC5B,MAAMC,aAAaD,KAAKH,MAAM,CAAC,CAACK,MAAaC,MAAMC,OAAO,CAACF,KAAK,CAAC,EAAE;QACnE,MAAMG,kBAAkBL,KAAKH,MAAM,CAAC,CAACK,MAAa,CAACC,MAAMC,OAAO,CAACF,KAAK,CAAC,EAAE;QAEzE,uBAAuB;QACvB,MAAMtB,UAAS,IAAII,OAAOQ,OAAOC,MAAM,CAAC,CAAC,GAAGY,iBAAiBX;QAE7D,oCAAoC;QACpCF,OAAOI,mBAAmB,CAAChB,QAEzB,8BAA8B;SAC7BiB,MAAM,CAAC,CAACC,OAAS,CAACH,oBAAoBW,QAAQ,CAACR,MAEhD,6EAA6E;SAC5ED,MAAM,CAAC,CAACC,OAAS,CAAEG,CAAAA,cAAcA,WAAWM,OAAO,CAACT,UAAU,CAAC,CAAA,GAC/DD,MAAM,CAAC,CAACC;YACP,OAAQA;gBACN,KAAK;oBACH,OAAO;YACX;YACA,OAAO;QACT,EAEA,+CAA+C;SAC9CU,OAAO,CAAC,CAACV;YACR,8CAA8C;YAC9CN,OAAOiB,cAAc,CAAC5B,YAAYiB,MAAM;gBACtCY,cAAc;gBACdC,KAAK,IAAM/B,OAAM,CAACkB,KAAqB;YACzC;QACF;QAEF,OAAOlB;IACT;IAEAmB,WAAW;QAAEa,KAAK;IAAmB;IACrC,OAAO;AACT"}
@@ -1,16 +1,16 @@
1
1
  import { getGlobalThis } from '../../isomorphics/getGlobalThis.js';
2
-
3
- function polyfillWebSocket(ws) {
4
- const globalThis = getGlobalThis();
5
- if ("WebSocket" in globalThis) {
6
- return false;
7
- }
8
- if (ws) {
9
- const { WebSocket } = ws;
10
- Object.assign(globalThis, { WebSocket });
11
- }
12
- return import('ws').then((ws2) => polyfillWebSocket(ws2));
2
+ export function polyfillWebSocket(ws) {
3
+ const globalThis = getGlobalThis();
4
+ if ('WebSocket' in globalThis) {
5
+ return false;
6
+ }
7
+ if (ws) {
8
+ const { WebSocket } = ws;
9
+ Object.assign(globalThis, {
10
+ WebSocket
11
+ });
12
+ }
13
+ return import('ws').then((ws)=>polyfillWebSocket(ws));
13
14
  }
14
15
 
15
- export { polyfillWebSocket };
16
- //# sourceMappingURL=polyfillWebSocket.js.map
16
+ //# sourceMappingURL=polyfillWebSocket.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"polyfillWebSocket.js","sources":["../../../src/servers/polyfill/polyfillWebSocket.ts"],"sourcesContent":["import type { MaybePromise } from '../../asyncs/MaybePromise';\nimport { getGlobalThis } from '../../isomorphics/getGlobalThis';\n\nexport function polyfillWebSocket(ws: any): boolean;\nexport function polyfillWebSocket(ws?: undefined): Promise<boolean>;\nexport function polyfillWebSocket(ws?: any): MaybePromise<boolean> {\n const globalThis = getGlobalThis();\n if ('WebSocket' in globalThis) {\n return false;\n }\n if (ws) {\n const { WebSocket } = ws;\n Object.assign(globalThis, { WebSocket });\n }\n return import('ws').then((ws) => polyfillWebSocket(ws));\n}\n"],"names":["ws"],"mappings":";;AAKO,SAAS,kBAAkB,EAAiC,EAAA;AACjE,EAAA,MAAM,aAAa,aAAc,EAAA,CAAA;AACjC,EAAA,IAAI,eAAe,UAAY,EAAA;AAC7B,IAAO,OAAA,KAAA,CAAA;AAAA,GACT;AACA,EAAA,IAAI,EAAI,EAAA;AACN,IAAM,MAAA,EAAE,WAAc,GAAA,EAAA,CAAA;AACtB,IAAA,MAAA,CAAO,MAAO,CAAA,UAAA,EAAY,EAAE,SAAA,EAAW,CAAA,CAAA;AAAA,GACzC;AACA,EAAO,OAAA,OAAO,IAAI,CAAE,CAAA,IAAA,CAAK,CAACA,GAAO,KAAA,iBAAA,CAAkBA,GAAE,CAAC,CAAA,CAAA;AACxD;;;;"}
1
+ {"version":3,"sources":["../../../src/servers/polyfill/polyfillWebSocket.ts"],"sourcesContent":["import type { MaybePromise } from '../../asyncs/MaybePromise';\nimport { getGlobalThis } from '../../isomorphics/getGlobalThis';\n\nexport function polyfillWebSocket(ws: any): boolean;\nexport function polyfillWebSocket(ws?: undefined): Promise<boolean>;\nexport function polyfillWebSocket(ws?: any): MaybePromise<boolean> {\n const globalThis = getGlobalThis();\n if ('WebSocket' in globalThis) {\n return false;\n }\n if (ws) {\n const { WebSocket } = ws;\n Object.assign(globalThis, { WebSocket });\n }\n return import('ws').then((ws) => polyfillWebSocket(ws));\n}\n"],"names":["getGlobalThis","polyfillWebSocket","ws","globalThis","WebSocket","Object","assign","then"],"mappings":"AACA,SAASA,aAAa,QAAQ,kCAAkC;AAIhE,OAAO,SAASC,kBAAkBC,EAAQ;IACxC,MAAMC,aAAaH;IACnB,IAAI,eAAeG,YAAY;QAC7B,OAAO;IACT;IACA,IAAID,IAAI;QACN,MAAM,EAAEE,SAAS,EAAE,GAAGF;QACtBG,OAAOC,MAAM,CAACH,YAAY;YAAEC;QAAU;IACxC;IACA,OAAO,MAAM,CAAC,MAAMG,IAAI,CAAC,CAACL,KAAOD,kBAAkBC;AACrD"}
package/lib/servers/ws.js CHANGED
@@ -1,2 +1,3 @@
1
- export { polyfillWebSocket } from './polyfill/polyfillWebSocket.js';
2
- //# sourceMappingURL=ws.js.map
1
+ export * from './polyfill/polyfillWebSocket.js';
2
+
3
+ //# sourceMappingURL=ws.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ws.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
1
+ {"version":3,"sources":["../../src/servers/ws.ts"],"sourcesContent":["export * from './polyfill/polyfillWebSocket';\n"],"names":[],"mappings":"AAAA,cAAc,+BAA+B"}