@tstdl/base 0.86.0-beta1 → 0.86.0-beta11

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 (871) hide show
  1. package/.eslintrc.json +1 -0
  2. package/_container/container.js +443 -0
  3. package/_container/decorators.d.ts +76 -0
  4. package/_container/decorators.js +110 -0
  5. package/_container/index.d.ts +10 -0
  6. package/_container/index.js +27 -0
  7. package/_container/interfaces.d.ts +16 -0
  8. package/_container/interfaces.js +26 -0
  9. package/_container/provider.js +60 -0
  10. package/_container/resolve-chain.js +105 -0
  11. package/_container/resolve.error.js +36 -0
  12. package/_container/token.d.ts +18 -0
  13. package/_container/token.js +41 -0
  14. package/_container/type-info.js +16 -0
  15. package/_container/types.js +16 -0
  16. package/_container/utils.js +44 -0
  17. package/api/client/client.d.ts +2 -2
  18. package/api/client/client.js +127 -109
  19. package/api/client/index.js +18 -1
  20. package/api/default-error-handlers.js +44 -18
  21. package/api/index.js +20 -14
  22. package/api/response.js +123 -99
  23. package/api/server/api-controller.d.ts +2 -2
  24. package/api/server/api-controller.js +71 -42
  25. package/api/server/api-request-token.provider.js +40 -12
  26. package/api/server/error-handler.js +46 -25
  27. package/api/server/gateway.d.ts +5 -6
  28. package/api/server/gateway.js +226 -207
  29. package/api/server/index.js +22 -5
  30. package/api/server/middlewares/allowed-methods.middleware.js +40 -17
  31. package/api/server/middlewares/catch-error.middleware.js +33 -12
  32. package/api/server/middlewares/cors.middleware.js +69 -49
  33. package/api/server/middlewares/index.js +21 -4
  34. package/api/server/middlewares/response-time.middleware.js +31 -8
  35. package/api/server/module.js +42 -18
  36. package/api/server/tokens.d.ts +4 -1
  37. package/api/server/tokens.js +31 -2
  38. package/api/types.js +40 -14
  39. package/api/utils.js +36 -13
  40. package/application/application.d.ts +13 -10
  41. package/application/application.js +168 -155
  42. package/application/index.js +18 -1
  43. package/async-iterator-symbol.js +28 -5
  44. package/authentication/authentication.api.js +113 -89
  45. package/authentication/client/api.client.js +57 -28
  46. package/authentication/client/authentication.service.d.ts +4 -4
  47. package/authentication/client/authentication.service.js +249 -223
  48. package/authentication/client/http-client.middleware.d.ts +3 -5
  49. package/authentication/client/http-client.middleware.js +35 -21
  50. package/authentication/client/index.js +22 -5
  51. package/authentication/client/module.d.ts +2 -1
  52. package/authentication/client/module.js +46 -15
  53. package/authentication/client/tokens.d.ts +2 -2
  54. package/authentication/client/tokens.js +30 -5
  55. package/authentication/errors/index.js +18 -1
  56. package/authentication/errors/secret-requirements.error.js +29 -6
  57. package/authentication/index.js +19 -2
  58. package/authentication/models/authentication-credentials.model.js +66 -37
  59. package/authentication/models/authentication-session.model.js +80 -51
  60. package/authentication/models/index.js +23 -6
  61. package/authentication/models/init-secret-reset-data.model.js +44 -16
  62. package/authentication/models/secret-check-result.model.js +36 -9
  63. package/authentication/models/token-payload-base.model.js +59 -31
  64. package/authentication/models/token.model.js +16 -1
  65. package/authentication/server/authentication-api-request-token.provider.js +52 -24
  66. package/authentication/server/authentication-credentials.repository.js +24 -1
  67. package/authentication/server/authentication-secret-requirements.validator.d.ts +11 -2
  68. package/authentication/server/authentication-secret-requirements.validator.js +58 -23
  69. package/authentication/server/authentication-secret-reset.handler.js +24 -1
  70. package/authentication/server/authentication-session.repository.js +24 -1
  71. package/authentication/server/authentication-subject.resolver.js +24 -5
  72. package/authentication/server/authentication-token-payload.provider.js +29 -5
  73. package/authentication/server/authentication.api-controller.js +114 -88
  74. package/authentication/server/authentication.service.d.ts +10 -3
  75. package/authentication/server/authentication.service.js +308 -264
  76. package/authentication/server/helper.js +87 -66
  77. package/authentication/server/index.js +28 -11
  78. package/authentication/server/module.d.ts +2 -1
  79. package/authentication/server/module.js +48 -25
  80. package/authentication/server/mongo/index.js +19 -2
  81. package/authentication/server/mongo/mongo-authentication-credentials.repository.d.ts +3 -3
  82. package/authentication/server/mongo/mongo-authentication-credentials.repository.js +84 -52
  83. package/authentication/server/mongo/mongo-authentication-session.repository.d.ts +3 -3
  84. package/authentication/server/mongo/mongo-authentication-session.repository.js +81 -49
  85. package/browser/browser-context-controller.d.ts +4 -4
  86. package/browser/browser-context-controller.js +106 -72
  87. package/browser/browser-controller.d.ts +12 -5
  88. package/browser/browser-controller.js +115 -74
  89. package/browser/browser.service.d.ts +12 -6
  90. package/browser/browser.service.js +117 -83
  91. package/browser/document-controller.js +81 -48
  92. package/browser/element-controller.d.ts +24 -0
  93. package/browser/element-controller.js +217 -139
  94. package/browser/frame-controller.js +50 -27
  95. package/browser/index.js +27 -10
  96. package/browser/locator-controller.js +59 -36
  97. package/browser/module.js +47 -23
  98. package/browser/page-controller.js +108 -89
  99. package/browser/pdf-options.js +103 -73
  100. package/browser/types.js +16 -1
  101. package/browser/utils.d.ts +2 -0
  102. package/browser/utils.js +116 -77
  103. package/collections/awaitable/awaitable-list.js +122 -99
  104. package/collections/awaitable/awaitable-map.js +116 -93
  105. package/collections/awaitable/awaitable-set.js +86 -63
  106. package/collections/awaitable/index.js +20 -3
  107. package/collections/collection.js +16 -1
  108. package/collections/index.js +23 -6
  109. package/collections/keyed-set.js +77 -53
  110. package/collections/list.js +16 -1
  111. package/collections/observable/index.js +25 -8
  112. package/collections/observable/observable-array.js +118 -95
  113. package/collections/observable/observable-collection-base.js +83 -60
  114. package/collections/observable/observable-collection.js +16 -1
  115. package/collections/observable/observable-list-base.js +78 -55
  116. package/collections/observable/observable-list.js +16 -1
  117. package/collections/observable/observable-map.js +79 -56
  118. package/collections/observable/observable-set.js +98 -75
  119. package/collections/observable/observable-sorted-array-list.js +188 -165
  120. package/collections/sorted-array-list.js +179 -156
  121. package/collections/sorted-list.js +16 -1
  122. package/collections/sorted-map.js +93 -70
  123. package/container/decorators.d.ts +2 -76
  124. package/container/decorators.js +34 -126
  125. package/container/index.d.ts +0 -7
  126. package/container/index.js +20 -10
  127. package/container/interfaces.d.ts +2 -16
  128. package/container/interfaces.js +25 -2
  129. package/container/token.d.ts +2 -18
  130. package/container/token.js +26 -20
  131. package/cookie/cookie.js +71 -49
  132. package/cookie/index.js +18 -1
  133. package/core.d.ts +4 -2
  134. package/core.js +82 -46
  135. package/data-structures/array-dictionary.js +110 -89
  136. package/data-structures/array-list.d.ts +1 -1
  137. package/data-structures/array-list.js +128 -105
  138. package/data-structures/cache.js +64 -41
  139. package/data-structures/circular-buffer.js +219 -195
  140. package/data-structures/collection.js +109 -86
  141. package/data-structures/dictionary.js +75 -51
  142. package/data-structures/distinct-collection.d.ts +24 -0
  143. package/data-structures/distinct-collection.js +77 -0
  144. package/data-structures/index-out-of-bounds.error.js +31 -8
  145. package/data-structures/index.d.ts +2 -1
  146. package/data-structures/index.js +33 -15
  147. package/data-structures/iterable-weak-map.js +149 -129
  148. package/data-structures/linked-list.js +385 -367
  149. package/data-structures/list.js +109 -78
  150. package/data-structures/map-dictionary.js +78 -55
  151. package/data-structures/multi-key-map.d.ts +1 -1
  152. package/data-structures/multi-key-map.js +163 -138
  153. package/data-structures/multi-key-set.d.ts +19 -0
  154. package/data-structures/multi-key-set.js +81 -0
  155. package/data-structures/{set.d.ts → set-collection.d.ts} +3 -3
  156. package/data-structures/set-collection.js +79 -0
  157. package/data-structures/sorted-array-list.d.ts +1 -1
  158. package/data-structures/sorted-array-list.js +166 -142
  159. package/data-structures/weak-ref-map.js +146 -123
  160. package/database/entity-repository.js +26 -2
  161. package/database/entity.js +16 -1
  162. package/database/id.js +29 -8
  163. package/database/index.js +23 -6
  164. package/database/module.js +33 -9
  165. package/database/mongo/classes.d.ts +5 -5
  166. package/database/mongo/classes.js +43 -13
  167. package/database/mongo/index.js +27 -10
  168. package/database/mongo/model/document.js +93 -62
  169. package/database/mongo/model/index.js +18 -1
  170. package/database/mongo/module.js +79 -51
  171. package/database/mongo/mongo-base.repository.js +283 -259
  172. package/database/mongo/mongo-bulk.js +110 -87
  173. package/database/mongo/mongo-entity-repository.d.ts +5 -5
  174. package/database/mongo/mongo-entity-repository.js +296 -270
  175. package/database/mongo/operations.js +76 -48
  176. package/database/mongo/query-converter.js +96 -73
  177. package/database/mongo/simple-entity-repository.js +28 -5
  178. package/database/mongo/types.js +25 -2
  179. package/database/query.js +36 -7
  180. package/database/utils.js +25 -2
  181. package/decorators/index.d.ts +1 -0
  182. package/decorators/index.js +18 -0
  183. package/decorators/log.d.ts +2 -0
  184. package/decorators/log.js +56 -0
  185. package/disposable/async-disposer.d.ts +4 -4
  186. package/disposable/async-disposer.js +105 -93
  187. package/disposable/disposable.js +33 -7
  188. package/disposable/index.js +20 -3
  189. package/disposable/using.js +37 -15
  190. package/distributed-loop/controller.js +16 -1
  191. package/distributed-loop/distributed-loop.d.ts +3 -3
  192. package/distributed-loop/distributed-loop.js +105 -78
  193. package/distributed-loop/index.js +20 -3
  194. package/distributed-loop/provider.js +48 -20
  195. package/enumerable/async-enumerable.js +261 -238
  196. package/enumerable/enumerable-methods.js +16 -1
  197. package/enumerable/enumerable.js +200 -177
  198. package/enumerable/index.js +19 -2
  199. package/environment.js +57 -25
  200. package/error/api.error.js +33 -10
  201. package/error/assertion.error.js +29 -6
  202. package/error/bad-request.error.js +29 -6
  203. package/error/custom.error.js +47 -25
  204. package/error/details.error.js +31 -8
  205. package/error/forbidden.error.js +29 -6
  206. package/error/index.js +33 -16
  207. package/error/invalid-token.error.js +29 -6
  208. package/error/max-bytes-exceeded.error.js +32 -9
  209. package/error/method-not-allowed.error.js +29 -6
  210. package/error/multi.error.js +31 -8
  211. package/error/not-found.error.js +29 -6
  212. package/error/not-implemented.error.js +29 -6
  213. package/error/not-supported.error.js +34 -11
  214. package/error/timeout.error.js +29 -6
  215. package/error/unauthorized.error.js +29 -6
  216. package/error/unsupported-media-type.error.js +29 -6
  217. package/examples/api/authentication.js +49 -42
  218. package/examples/api/basic-overview.js +85 -81
  219. package/examples/api/custom-authentication.js +69 -61
  220. package/examples/api/streaming.js +95 -90
  221. package/examples/browser/basic.js +21 -20
  222. package/examples/http/client.js +16 -13
  223. package/examples/mail/basic.js +42 -36
  224. package/examples/mail/templates/hello-name.js +33 -10
  225. package/examples/pdf/basic.js +49 -44
  226. package/examples/pdf/templates/hello-name.js +58 -35
  227. package/examples/reflection/basic.js +84 -52
  228. package/examples/template/basic.js +33 -30
  229. package/examples/template/templates/hello-jsx.js +32 -8
  230. package/examples/template/templates/hello-name.js +41 -18
  231. package/function/index.d.ts +1 -0
  232. package/function/index.js +18 -0
  233. package/function/log.d.ts +6 -0
  234. package/function/log.js +37 -0
  235. package/global-this.js +36 -17
  236. package/http/client/adapters/undici-http-client.adapter.js +111 -90
  237. package/http/client/http-client-options.d.ts +0 -5
  238. package/http/client/http-client-options.js +33 -14
  239. package/http/client/http-client-request.js +171 -149
  240. package/http/client/http-client-response.js +56 -33
  241. package/http/client/http-client.adapter.js +24 -1
  242. package/http/client/http-client.d.ts +5 -8
  243. package/http/client/http-client.js +325 -301
  244. package/http/client/index.js +23 -6
  245. package/http/client/middleware.d.ts +6 -0
  246. package/http/client/middleware.js +16 -0
  247. package/http/client/module.d.ts +6 -1
  248. package/http/client/module.js +42 -14
  249. package/http/client/tokens.d.ts +2 -0
  250. package/http/client/tokens.js +25 -0
  251. package/http/cookie-parser.js +42 -19
  252. package/http/http-body.js +75 -52
  253. package/http/http-form.js +37 -14
  254. package/http/http-headers.js +109 -86
  255. package/http/http-query.js +37 -14
  256. package/http/http-url-parameters.js +31 -8
  257. package/http/http-value-map.js +133 -110
  258. package/http/http.error.js +82 -60
  259. package/http/index.js +28 -11
  260. package/http/server/http-server-request.js +47 -24
  261. package/http/server/http-server-response.js +45 -22
  262. package/http/server/http-server.js +25 -2
  263. package/http/server/index.js +20 -3
  264. package/http/server/node/index.js +19 -2
  265. package/http/server/node/module.js +28 -8
  266. package/http/server/node/node-http-server.d.ts +1 -4
  267. package/http/server/node/node-http-server.js +230 -208
  268. package/http/types.js +47 -21
  269. package/http/utils.js +108 -92
  270. package/image-service/image-service.js +91 -59
  271. package/image-service/imgproxy/imgproxy-image-service.d.ts +6 -8
  272. package/image-service/imgproxy/imgproxy-image-service.js +125 -86
  273. package/image-service/imgproxy/index.js +18 -1
  274. package/image-service/index.js +18 -1
  275. package/import.js +25 -2
  276. package/index.js +18 -1
  277. package/injector/decorators.d.ts +81 -0
  278. package/injector/decorators.js +126 -0
  279. package/injector/index.d.ts +11 -0
  280. package/injector/index.js +28 -0
  281. package/injector/inject.d.ts +85 -0
  282. package/injector/inject.js +106 -0
  283. package/injector/injector.d.ts +91 -0
  284. package/injector/injector.js +497 -0
  285. package/injector/interfaces.d.ts +16 -0
  286. package/injector/interfaces.js +26 -0
  287. package/injector/provider.d.ts +49 -0
  288. package/injector/provider.js +64 -0
  289. package/injector/resolve-chain.d.ts +31 -0
  290. package/injector/resolve-chain.js +113 -0
  291. package/injector/resolve.error.d.ts +5 -0
  292. package/injector/resolve.error.js +36 -0
  293. package/injector/symbols.d.ts +2 -0
  294. package/injector/symbols.js +26 -0
  295. package/injector/token.d.ts +25 -0
  296. package/injector/token.js +41 -0
  297. package/injector/type-info.d.ts +20 -0
  298. package/injector/type-info.js +16 -0
  299. package/injector/types.d.ts +49 -0
  300. package/injector/types.js +16 -0
  301. package/interfaces.js +16 -1
  302. package/json-path/index.js +18 -1
  303. package/json-path/json-path.js +138 -138
  304. package/key-value-store/index.js +19 -2
  305. package/key-value-store/key-value-store.provider.js +24 -1
  306. package/key-value-store/key-value.store.d.ts +3 -3
  307. package/key-value-store/key-value.store.js +29 -6
  308. package/key-value-store/mongo/index.js +23 -6
  309. package/key-value-store/mongo/module.js +35 -17
  310. package/key-value-store/mongo/mongo-key-value-store.provider.js +48 -20
  311. package/key-value-store/mongo/mongo-key-value.model.js +16 -1
  312. package/key-value-store/mongo/mongo-key-value.repository.d.ts +3 -3
  313. package/key-value-store/mongo/mongo-key-value.repository.js +52 -22
  314. package/key-value-store/mongo/mongo-key-value.store.js +89 -59
  315. package/key-value-store/mongo/tokens.d.ts +1 -1
  316. package/key-value-store/mongo/tokens.js +25 -2
  317. package/lock/index.js +19 -2
  318. package/lock/lock.d.ts +3 -2
  319. package/lock/lock.js +29 -5
  320. package/lock/mongo/index.js +22 -5
  321. package/lock/mongo/lock.js +135 -111
  322. package/lock/mongo/model.js +16 -1
  323. package/lock/mongo/module.js +37 -18
  324. package/lock/mongo/mongo-lock-repository.d.ts +3 -3
  325. package/lock/mongo/mongo-lock-repository.js +85 -56
  326. package/lock/mongo/provider.js +68 -38
  327. package/lock/provider.d.ts +3 -2
  328. package/lock/provider.js +25 -1
  329. package/lock/web/index.js +20 -3
  330. package/lock/web/module.js +31 -11
  331. package/lock/web/web-lock.js +105 -80
  332. package/lock/web/web-lock.provider.js +57 -27
  333. package/logger/console/index.js +18 -1
  334. package/logger/console/logger.js +80 -53
  335. package/logger/index.js +19 -2
  336. package/logger/level.js +31 -8
  337. package/logger/logger.d.ts +3 -2
  338. package/logger/logger.js +61 -37
  339. package/logger/noop/index.js +18 -1
  340. package/logger/noop/logger.js +42 -20
  341. package/mail/clients/nodemailer.mail-client.js +91 -62
  342. package/mail/index.js +22 -5
  343. package/mail/mail-log.repository.js +25 -2
  344. package/mail/mail.client.d.ts +3 -2
  345. package/mail/mail.client.js +63 -34
  346. package/mail/mail.service.js +106 -73
  347. package/mail/models/index.js +23 -6
  348. package/mail/models/mail-address.model.js +16 -1
  349. package/mail/models/mail-content.model.js +16 -1
  350. package/mail/models/mail-data.model.js +16 -1
  351. package/mail/models/mail-log.model.js +16 -1
  352. package/mail/models/mail-send-result.model.js +16 -1
  353. package/mail/models/mail-template.model.js +28 -5
  354. package/mail/module.js +41 -21
  355. package/mail/repositories/mongo-mail-log.repository.d.ts +3 -3
  356. package/mail/repositories/mongo-mail-log.repository.js +56 -24
  357. package/mail/tokens.d.ts +1 -1
  358. package/mail/tokens.js +25 -2
  359. package/memory/finalization.js +60 -36
  360. package/memory/index.js +19 -2
  361. package/memory/observable-finalization-registry.js +32 -9
  362. package/message-bus/broadcast-channel/broadcast-channel-message-bus-provider.js +53 -23
  363. package/message-bus/broadcast-channel/broadcast-channel-message-bus.d.ts +1 -1
  364. package/message-bus/broadcast-channel/broadcast-channel-message-bus.js +74 -46
  365. package/message-bus/broadcast-channel/index.js +20 -3
  366. package/message-bus/broadcast-channel/module.js +31 -11
  367. package/message-bus/index.js +20 -3
  368. package/message-bus/local/index.js +20 -3
  369. package/message-bus/local/local-message-bus-provider.js +65 -35
  370. package/message-bus/local/local-message-bus.d.ts +1 -1
  371. package/message-bus/local/local-message-bus.js +66 -38
  372. package/message-bus/local/module.js +31 -11
  373. package/message-bus/local/types.js +16 -1
  374. package/message-bus/message-bus-base.js +63 -41
  375. package/message-bus/message-bus-provider.js +24 -1
  376. package/message-bus/message-bus.d.ts +3 -3
  377. package/message-bus/message-bus.js +29 -5
  378. package/migration/index.d.ts +1 -1
  379. package/migration/index.js +20 -3
  380. package/migration/migration-state-repository.js +25 -2
  381. package/migration/migration-state.js +16 -1
  382. package/migration/migrator.js +108 -80
  383. package/migration/mongo/index.js +19 -2
  384. package/migration/mongo/migration-state-repository.d.ts +3 -3
  385. package/migration/mongo/migration-state-repository.js +53 -23
  386. package/migration/mongo/module.js +34 -15
  387. package/module/index.js +21 -4
  388. package/module/module-base.js +60 -37
  389. package/module/module-metric-reporter.js +77 -58
  390. package/module/module.js +34 -10
  391. package/module/modules/function.module.js +34 -11
  392. package/module/modules/index.js +19 -2
  393. package/module/modules/web-server.module.d.ts +5 -10
  394. package/module/modules/web-server.module.js +81 -67
  395. package/module/utils.js +43 -19
  396. package/notification/api.js +50 -21
  397. package/notification/models/index.js +19 -2
  398. package/notification/models/notification-channel-job.model.js +16 -1
  399. package/notification/models/notification.model.js +103 -74
  400. package/notification/module.js +28 -8
  401. package/notification/notification-channel.service.js +24 -1
  402. package/notification/notification.repository.js +24 -1
  403. package/notification/notification.service.js +58 -30
  404. package/object-storage/index.js +20 -3
  405. package/object-storage/object-storage-provider.d.ts +1 -1
  406. package/object-storage/object-storage-provider.js +24 -1
  407. package/object-storage/object-storage.d.ts +3 -3
  408. package/object-storage/object-storage.js +30 -6
  409. package/object-storage/object.js +30 -7
  410. package/object-storage/s3/index.js +20 -3
  411. package/object-storage/s3/s3.object-storage-provider.d.ts +1 -6
  412. package/object-storage/s3/s3.object-storage-provider.js +100 -83
  413. package/object-storage/s3/s3.object-storage.d.ts +2 -2
  414. package/object-storage/s3/s3.object-storage.js +160 -130
  415. package/object-storage/s3/s3.object.js +62 -39
  416. package/openid-connect/cached-oidc-configuration.service.js +65 -35
  417. package/openid-connect/index.d.ts +1 -1
  418. package/openid-connect/index.js +28 -11
  419. package/openid-connect/mongo-oidc-state.repository.d.ts +3 -3
  420. package/openid-connect/mongo-oidc-state.repository.js +65 -38
  421. package/openid-connect/oidc-configuration.service.js +66 -38
  422. package/openid-connect/oidc-state.model.js +16 -1
  423. package/openid-connect/oidc-state.repository.js +25 -2
  424. package/openid-connect/oidc.service-model.js +16 -1
  425. package/openid-connect/oidc.service.js +187 -157
  426. package/package.json +16 -16
  427. package/password/have-i-been-pwned.js +39 -21
  428. package/password/index.js +21 -4
  429. package/password/password-check-result.model.js +63 -34
  430. package/password/password-check.js +76 -46
  431. package/password/password-check.localization.js +111 -86
  432. package/pdf/index.js +18 -1
  433. package/pdf/pdf.service.d.ts +3 -3
  434. package/pdf/pdf.service.js +206 -171
  435. package/pool/index.js +18 -1
  436. package/pool/pool.js +133 -116
  437. package/process-shutdown.d.ts +2 -2
  438. package/process-shutdown.js +75 -54
  439. package/promise/cancelable-promise.js +41 -23
  440. package/promise/deferred-promise.js +92 -68
  441. package/promise/index.js +20 -3
  442. package/promise/lazy-promise.js +47 -24
  443. package/queue/enqueue-batch.js +41 -18
  444. package/queue/index.js +20 -3
  445. package/queue/mongo/index.js +21 -4
  446. package/queue/mongo/job.js +16 -1
  447. package/queue/mongo/mongo-job.repository.d.ts +3 -3
  448. package/queue/mongo/mongo-job.repository.js +70 -44
  449. package/queue/mongo/queue.js +265 -242
  450. package/queue/mongo/queue.provider.d.ts +3 -3
  451. package/queue/mongo/queue.provider.js +72 -44
  452. package/queue/provider.js +24 -1
  453. package/queue/queue.d.ts +3 -3
  454. package/queue/queue.js +41 -15
  455. package/random/index.js +19 -2
  456. package/random/number-generator/index.js +20 -3
  457. package/random/number-generator/mulberry32.js +51 -34
  458. package/random/number-generator/random-number-generator-function.js +24 -1
  459. package/random/number-generator/random-number-generator.js +31 -8
  460. package/random/number-generator/seeded-random-number-generator.js +28 -5
  461. package/random/number-generator/sfc32.js +64 -41
  462. package/random/number-generator/utils.js +25 -2
  463. package/random/series.js +43 -41
  464. package/reflection/decorator-data.js +80 -63
  465. package/reflection/decorators.js +69 -39
  466. package/reflection/index.js +22 -5
  467. package/reflection/reflection-data-map.js +55 -32
  468. package/reflection/registry.d.ts +0 -1
  469. package/reflection/registry.js +130 -111
  470. package/reflection/types.js +16 -1
  471. package/reflection/utils.js +124 -96
  472. package/require.js +26 -3
  473. package/rpc/endpoints/message-port.rpc-endpoint.js +48 -29
  474. package/rpc/index.js +21 -4
  475. package/rpc/model.js +30 -7
  476. package/rpc/rpc-endpoint.js +40 -17
  477. package/rpc/rpc-error.js +40 -17
  478. package/rpc/rpc.js +235 -223
  479. package/rxjs/cast.js +28 -4
  480. package/rxjs/index.d.ts +1 -0
  481. package/rxjs/index.js +30 -12
  482. package/rxjs/intersection-observer.js +48 -25
  483. package/rxjs/media-query.js +27 -8
  484. package/rxjs/mutation-observer.js +50 -28
  485. package/rxjs/noop.js +28 -4
  486. package/rxjs/performance-observer.js +60 -37
  487. package/rxjs/resize-observer.js +50 -28
  488. package/rxjs/retry-backoff.js +47 -23
  489. package/rxjs/slow-array.js +36 -22
  490. package/rxjs/start-with-provider.d.ts +2 -0
  491. package/rxjs/start-with-provider.js +29 -0
  492. package/rxjs/teardown.js +44 -21
  493. package/rxjs/timing.js +57 -26
  494. package/rxjs/touch.js +30 -11
  495. package/schema/array-constraints/index.js +19 -2
  496. package/schema/array-constraints/maximum-length.js +42 -19
  497. package/schema/array-constraints/minimum-length.js +42 -19
  498. package/schema/coercers/boolean.coercer.js +49 -25
  499. package/schema/coercers/date.coercer.js +38 -14
  500. package/schema/coercers/index.js +23 -6
  501. package/schema/coercers/number.coercer.js +36 -12
  502. package/schema/coercers/regexp.coercer.js +41 -18
  503. package/schema/coercers/string.coercer.js +36 -12
  504. package/schema/coercers/uint8-array.coercer.js +44 -20
  505. package/schema/constraints/enumeration.js +49 -27
  506. package/schema/constraints/generic.js +41 -21
  507. package/schema/constraints/index.js +29 -12
  508. package/schema/constraints/integer.js +44 -20
  509. package/schema/constraints/length.js +36 -14
  510. package/schema/constraints/literal.js +44 -22
  511. package/schema/constraints/maximum-date.js +46 -23
  512. package/schema/constraints/maximum-length.js +45 -22
  513. package/schema/constraints/maximum.js +44 -21
  514. package/schema/constraints/minimum-date.js +46 -23
  515. package/schema/constraints/minimum-length.js +45 -22
  516. package/schema/constraints/minimum.js +44 -21
  517. package/schema/constraints/pattern.js +46 -23
  518. package/schema/decorators/class.js +26 -4
  519. package/schema/decorators/coerce.js +26 -4
  520. package/schema/decorators/constraint.js +28 -6
  521. package/schema/decorators/index.js +23 -6
  522. package/schema/decorators/property.js +38 -16
  523. package/schema/decorators/types.js +16 -1
  524. package/schema/decorators/utils.js +73 -45
  525. package/schema/index.js +27 -10
  526. package/schema/schema.error.js +72 -59
  527. package/schema/schema.js +274 -256
  528. package/schema/schemas/any.js +30 -7
  529. package/schema/schemas/array.js +44 -21
  530. package/schema/schemas/assign.js +46 -23
  531. package/schema/schemas/boolean.js +30 -7
  532. package/schema/schemas/constraint.js +29 -6
  533. package/schema/schemas/date.js +43 -20
  534. package/schema/schemas/defaulted.js +31 -8
  535. package/schema/schemas/enumeration.js +38 -15
  536. package/schema/schemas/index.js +43 -26
  537. package/schema/schemas/instance.js +26 -4
  538. package/schema/schemas/literal.js +38 -15
  539. package/schema/schemas/nullable.js +30 -7
  540. package/schema/schemas/number.js +48 -25
  541. package/schema/schemas/object.js +34 -10
  542. package/schema/schemas/omit.js +37 -14
  543. package/schema/schemas/one-or-many.js +35 -13
  544. package/schema/schemas/optional.js +30 -6
  545. package/schema/schemas/partial.js +39 -16
  546. package/schema/schemas/pick.js +37 -14
  547. package/schema/schemas/readable-stream.js +30 -7
  548. package/schema/schemas/record.js +31 -9
  549. package/schema/schemas/regexp.js +30 -7
  550. package/schema/schemas/string.js +59 -36
  551. package/schema/schemas/transform.js +29 -6
  552. package/schema/schemas/uint8-array.js +50 -27
  553. package/schema/schemas/union.js +34 -11
  554. package/schema/schemas/unknown.js +30 -7
  555. package/schema/transformers/generic.js +39 -16
  556. package/schema/transformers/index.js +21 -4
  557. package/schema/transformers/lowercase.js +33 -10
  558. package/schema/transformers/trim.js +33 -10
  559. package/schema/transformers/uppercase.js +33 -10
  560. package/schema/types/index.js +22 -5
  561. package/schema/types/schema-array-constraint.js +24 -1
  562. package/schema/types/schema-value-coercer.js +24 -1
  563. package/schema/types/schema-value-constraint.js +24 -1
  564. package/schema/types/schema-value-transformer.js +24 -1
  565. package/schema/types/types.js +191 -161
  566. package/schema/utils/index.js +19 -2
  567. package/schema/utils/schema.js +142 -120
  568. package/schema/utils/value-type.js +74 -51
  569. package/search-index/elastic/config.d.ts +3 -3
  570. package/search-index/elastic/config.js +50 -19
  571. package/search-index/elastic/index.js +23 -6
  572. package/search-index/elastic/keyword-rewriter.js +40 -17
  573. package/search-index/elastic/model/elastic-query.js +16 -1
  574. package/search-index/elastic/model/index-mapping.js +26 -4
  575. package/search-index/elastic/model/index.js +20 -3
  576. package/search-index/elastic/model/sort.js +16 -1
  577. package/search-index/elastic/module.d.ts +1 -3
  578. package/search-index/elastic/module.js +69 -40
  579. package/search-index/elastic/query-builder/boolean-query-builder.js +69 -46
  580. package/search-index/elastic/query-builder/index.js +18 -1
  581. package/search-index/elastic/query-converter.js +192 -174
  582. package/search-index/elastic/search-index.d.ts +2 -2
  583. package/search-index/elastic/search-index.js +153 -132
  584. package/search-index/elastic/sort-converter.js +34 -12
  585. package/search-index/elastic/types.js +16 -1
  586. package/search-index/error.js +35 -12
  587. package/search-index/index.js +20 -3
  588. package/search-index/memory/index.js +18 -1
  589. package/search-index/memory/memory-search-index.js +152 -130
  590. package/search-index/search-index.js +53 -30
  591. package/search-index/search-result.js +16 -1
  592. package/serializer/handlers/binary.js +47 -19
  593. package/serializer/handlers/date.js +28 -4
  594. package/serializer/handlers/error.js +31 -7
  595. package/serializer/handlers/index.js +24 -7
  596. package/serializer/handlers/map.js +40 -16
  597. package/serializer/handlers/regex.js +31 -7
  598. package/serializer/handlers/register.js +59 -36
  599. package/serializer/handlers/set.js +37 -13
  600. package/serializer/index.js +30 -3
  601. package/serializer/serializable.js +68 -43
  602. package/serializer/serializer.js +264 -244
  603. package/serializer/types.js +34 -6
  604. package/signals/api.d.ts +1 -1
  605. package/signals/api.js +48 -17
  606. package/signals/computed-with-dependencies.js +31 -8
  607. package/signals/effect-with-dependencies.js +31 -8
  608. package/signals/implementation/api.js +33 -33
  609. package/signals/implementation/computed.js +104 -125
  610. package/signals/implementation/configure.js +41 -18
  611. package/signals/implementation/effect.js +66 -48
  612. package/signals/implementation/errors.js +29 -5
  613. package/signals/implementation/graph.js +136 -164
  614. package/signals/implementation/index.js +27 -10
  615. package/signals/implementation/signal.js +101 -91
  616. package/signals/implementation/to-observable.js +38 -21
  617. package/signals/implementation/to-signal.js +60 -44
  618. package/signals/implementation/untracked.js +31 -15
  619. package/signals/implementation/watch.js +73 -58
  620. package/signals/index.d.ts +2 -0
  621. package/signals/index.js +26 -7
  622. package/signals/lazylize.d.ts +2 -0
  623. package/signals/lazylize.js +28 -0
  624. package/signals/pipe.d.ts +1 -1
  625. package/signals/pipe.js +33 -7
  626. package/signals/switch-map.js +27 -4
  627. package/signals/to-signal-2.d.ts +14 -0
  628. package/signals/to-signal-2.js +67 -0
  629. package/signals/types.js +16 -1
  630. package/signals/untracked-operator.js +33 -11
  631. package/sse/index.js +19 -2
  632. package/sse/model.js +16 -1
  633. package/sse/server-sent-events-source.js +76 -54
  634. package/sse/server-sent-events.js +72 -48
  635. package/supports.js +32 -5
  636. package/templates/index.js +26 -9
  637. package/templates/module.d.ts +2 -2
  638. package/templates/module.js +47 -40
  639. package/templates/providers/file.template-provider.d.ts +3 -3
  640. package/templates/providers/file.template-provider.js +82 -39
  641. package/templates/providers/memory.template-provider.js +55 -27
  642. package/templates/renderers/handlebars.template-renderer.js +122 -84
  643. package/templates/renderers/jsx.template-renderer.js +56 -28
  644. package/templates/renderers/mjml.template-renderer.js +82 -42
  645. package/templates/renderers/string.template-renderer.js +52 -24
  646. package/templates/resolvers/file.template-resolver.d.ts +3 -3
  647. package/templates/resolvers/file.template-resolver.js +90 -45
  648. package/templates/resolvers/jsx.template-resolver.js +59 -29
  649. package/templates/resolvers/string.template-resolver.js +59 -29
  650. package/templates/template-renderer.provider.js +66 -36
  651. package/templates/template-resolver.provider.js +66 -36
  652. package/templates/template.model.js +69 -39
  653. package/templates/template.provider.js +24 -1
  654. package/templates/template.renderer.js +34 -11
  655. package/templates/template.resolver.js +24 -1
  656. package/templates/template.service.js +82 -49
  657. package/templates/tokens.d.ts +2 -2
  658. package/templates/tokens.js +27 -3
  659. package/templates/types/jsx.intrinsic-elements.js +16 -1
  660. package/text/dynamic-text.model.js +69 -41
  661. package/text/index.js +20 -3
  662. package/text/localizable-text.model.js +16 -1
  663. package/text/localization.service.js +229 -196
  664. package/theme/adapters/css-adapter.js +46 -23
  665. package/theme/adapters/tailwind-adapter.js +52 -29
  666. package/theme/index.js +18 -1
  667. package/theme/theme-service.d.ts +1 -1
  668. package/theme/theme-service.js +147 -107
  669. package/threading/index.js +19 -2
  670. package/threading/thread-pool.js +70 -48
  671. package/threading/thread-worker.js +26 -3
  672. package/tokens.d.ts +1 -1
  673. package/tokens.js +25 -2
  674. package/types/geo-json.js +16 -1
  675. package/types.js +16 -2
  676. package/utils/alphabet.js +35 -12
  677. package/utils/any-iterable-iterator.js +27 -4
  678. package/utils/array/array-backtracker.js +65 -42
  679. package/utils/array/array.js +79 -76
  680. package/utils/array/index.js +19 -2
  681. package/utils/async-iterable-helpers/all.js +46 -25
  682. package/utils/async-iterable-helpers/any.js +46 -25
  683. package/utils/async-iterable-helpers/assert.js +43 -22
  684. package/utils/async-iterable-helpers/batch.js +46 -26
  685. package/utils/async-iterable-helpers/buffer.js +64 -47
  686. package/utils/async-iterable-helpers/concat.js +27 -5
  687. package/utils/async-iterable-helpers/default-if-empty.js +32 -9
  688. package/utils/async-iterable-helpers/deferred.js +26 -3
  689. package/utils/async-iterable-helpers/difference.js +48 -24
  690. package/utils/async-iterable-helpers/distinct.js +44 -23
  691. package/utils/async-iterable-helpers/drain.js +26 -4
  692. package/utils/async-iterable-helpers/filter.js +44 -23
  693. package/utils/async-iterable-helpers/first-or-default.js +30 -8
  694. package/utils/async-iterable-helpers/first.js +30 -8
  695. package/utils/async-iterable-helpers/for-each.js +38 -18
  696. package/utils/async-iterable-helpers/group-single.js +26 -3
  697. package/utils/async-iterable-helpers/group-to-map.js +41 -20
  698. package/utils/async-iterable-helpers/group-to-single-map.js +44 -23
  699. package/utils/async-iterable-helpers/group.js +26 -3
  700. package/utils/async-iterable-helpers/includes.js +28 -7
  701. package/utils/async-iterable-helpers/index.js +65 -48
  702. package/utils/async-iterable-helpers/interrupt.js +43 -19
  703. package/utils/async-iterable-helpers/is-async-iterable.js +29 -5
  704. package/utils/async-iterable-helpers/last-or-default.js +36 -13
  705. package/utils/async-iterable-helpers/last.js +36 -13
  706. package/utils/async-iterable-helpers/map-many.js +40 -19
  707. package/utils/async-iterable-helpers/map.js +40 -19
  708. package/utils/async-iterable-helpers/materialize.js +42 -21
  709. package/utils/async-iterable-helpers/metadata.js +58 -38
  710. package/utils/async-iterable-helpers/multiplex.js +44 -23
  711. package/utils/async-iterable-helpers/observable-iterable.js +53 -31
  712. package/utils/async-iterable-helpers/pairwise.js +44 -26
  713. package/utils/async-iterable-helpers/parallel/feed.js +45 -24
  714. package/utils/async-iterable-helpers/parallel/filter.js +31 -8
  715. package/utils/async-iterable-helpers/parallel/for-each.js +44 -21
  716. package/utils/async-iterable-helpers/parallel/group.js +32 -9
  717. package/utils/async-iterable-helpers/parallel/index.js +24 -7
  718. package/utils/async-iterable-helpers/parallel/map.js +29 -6
  719. package/utils/async-iterable-helpers/parallel/tap.js +29 -6
  720. package/utils/async-iterable-helpers/parallel/types.js +16 -1
  721. package/utils/async-iterable-helpers/reduce.js +46 -31
  722. package/utils/async-iterable-helpers/retry.js +58 -43
  723. package/utils/async-iterable-helpers/single-or-default.js +40 -17
  724. package/utils/async-iterable-helpers/single.js +42 -19
  725. package/utils/async-iterable-helpers/skip.js +26 -3
  726. package/utils/async-iterable-helpers/sort.js +29 -6
  727. package/utils/async-iterable-helpers/take-until.js +49 -32
  728. package/utils/async-iterable-helpers/take-while.js +46 -29
  729. package/utils/async-iterable-helpers/take.js +33 -10
  730. package/utils/async-iterable-helpers/tap.js +40 -19
  731. package/utils/async-iterable-helpers/throttle.js +30 -9
  732. package/utils/async-iterable-helpers/to-array.js +33 -10
  733. package/utils/async-iterable-helpers/to-async-iterable-iterator.js +59 -40
  734. package/utils/async-iterable-helpers/to-async-iterator.js +54 -32
  735. package/utils/async-iterable-helpers/to-set.js +33 -10
  736. package/utils/async-iterable-helpers/to-sync-iterable.js +27 -6
  737. package/utils/async-iterable-helpers/types.js +16 -1
  738. package/utils/async-iterable-helpers/while.js +46 -25
  739. package/utils/async-iterator-iterable-iterator.js +62 -41
  740. package/utils/backoff.js +109 -109
  741. package/utils/base64.js +140 -153
  742. package/utils/benchmark.js +107 -114
  743. package/utils/binary-search.js +87 -70
  744. package/utils/binary.js +61 -50
  745. package/utils/cancellation-token.js +140 -120
  746. package/utils/clone.js +64 -43
  747. package/utils/comparison.js +98 -76
  748. package/utils/compression.js +118 -107
  749. package/utils/config-parser.js +48 -21
  750. package/utils/crc32.js +42 -20
  751. package/utils/cryptography.js +121 -163
  752. package/utils/date-time.js +138 -102
  753. package/utils/encoding.js +60 -62
  754. package/utils/enum.js +53 -27
  755. package/utils/equals.js +119 -103
  756. package/utils/event-loop.js +39 -19
  757. package/utils/factory-map.js +75 -53
  758. package/utils/feedable-async-iterable.js +70 -47
  759. package/utils/file-reader.js +41 -15
  760. package/utils/format-error.js +57 -36
  761. package/utils/format.js +53 -32
  762. package/utils/function/index.js +19 -2
  763. package/utils/function/memoize.js +53 -38
  764. package/utils/function/throttle.js +48 -26
  765. package/utils/helpers.js +102 -93
  766. package/utils/image.js +88 -62
  767. package/utils/index.js +65 -48
  768. package/utils/iterable-helpers/all.js +31 -8
  769. package/utils/iterable-helpers/any.js +31 -8
  770. package/utils/iterable-helpers/assert.js +30 -7
  771. package/utils/iterable-helpers/batch.js +34 -11
  772. package/utils/iterable-helpers/concat.js +27 -4
  773. package/utils/iterable-helpers/default-if-empty.js +32 -9
  774. package/utils/iterable-helpers/deferred.js +25 -2
  775. package/utils/iterable-helpers/difference.js +45 -21
  776. package/utils/iterable-helpers/distinct.js +32 -9
  777. package/utils/iterable-helpers/drain.js +26 -4
  778. package/utils/iterable-helpers/filter.js +30 -7
  779. package/utils/iterable-helpers/first-or-default.js +30 -8
  780. package/utils/iterable-helpers/first.js +30 -8
  781. package/utils/iterable-helpers/for-each.js +28 -5
  782. package/utils/iterable-helpers/group-single.js +26 -3
  783. package/utils/iterable-helpers/group-to-map.js +32 -9
  784. package/utils/iterable-helpers/group-to-single-map.js +33 -10
  785. package/utils/iterable-helpers/group.js +26 -3
  786. package/utils/iterable-helpers/includes.js +26 -3
  787. package/utils/iterable-helpers/index.js +56 -39
  788. package/utils/iterable-helpers/is-iterable.js +29 -5
  789. package/utils/iterable-helpers/last-or-default.js +36 -13
  790. package/utils/iterable-helpers/last.js +36 -13
  791. package/utils/iterable-helpers/map-many.js +29 -6
  792. package/utils/iterable-helpers/map.js +29 -6
  793. package/utils/iterable-helpers/materialize.js +25 -2
  794. package/utils/iterable-helpers/metadata.js +38 -16
  795. package/utils/iterable-helpers/pairwise.js +33 -11
  796. package/utils/iterable-helpers/range.js +27 -4
  797. package/utils/iterable-helpers/reduce.js +33 -11
  798. package/utils/iterable-helpers/single-or-default.js +37 -14
  799. package/utils/iterable-helpers/single.js +40 -17
  800. package/utils/iterable-helpers/skip.js +29 -6
  801. package/utils/iterable-helpers/sort.js +27 -4
  802. package/utils/iterable-helpers/take-until.js +31 -8
  803. package/utils/iterable-helpers/take-while.js +33 -10
  804. package/utils/iterable-helpers/take.js +33 -10
  805. package/utils/iterable-helpers/tap.js +29 -6
  806. package/utils/iterable-helpers/types.js +16 -1
  807. package/utils/iterable-helpers/while.js +31 -8
  808. package/utils/jwt.js +100 -77
  809. package/utils/map.js +62 -35
  810. package/utils/math.js +64 -102
  811. package/utils/merge.js +45 -26
  812. package/utils/middleware.js +60 -36
  813. package/utils/moving-metric.js +188 -155
  814. package/utils/noop.js +27 -4
  815. package/utils/object/decycle.js +78 -57
  816. package/utils/object/dereference.js +44 -46
  817. package/utils/object/forward-ref.js +73 -57
  818. package/utils/object/index.js +24 -7
  819. package/utils/object/lazy-property.js +96 -81
  820. package/utils/object/merge.js +70 -48
  821. package/utils/object/object.js +136 -106
  822. package/utils/object/property-name.js +72 -69
  823. package/utils/ordered-feedable-async-iterable.js +65 -42
  824. package/utils/patch-worker.js +90 -69
  825. package/utils/patterns.js +29 -7
  826. package/utils/periodic-reporter.js +82 -60
  827. package/utils/periodic-sampler.js +91 -67
  828. package/utils/provider-function-iterable.js +48 -26
  829. package/utils/proxy.js +42 -17
  830. package/utils/random.js +50 -40
  831. package/utils/reflection.js +41 -13
  832. package/utils/repl.js +33 -14
  833. package/utils/set.js +62 -36
  834. package/utils/singleton.js +41 -18
  835. package/utils/sort.js +77 -53
  836. package/utils/stream/finalize-stream.js +62 -43
  837. package/utils/stream/index.js +23 -6
  838. package/utils/stream/readable-stream-adapter.js +57 -35
  839. package/utils/stream/readable-stream-from-promise.js +28 -7
  840. package/utils/stream/size-limited-stream.js +35 -12
  841. package/utils/stream/stream-helper-types.js +16 -1
  842. package/utils/stream/stream-reader.js +52 -30
  843. package/utils/string/hypenate.js +25 -2
  844. package/utils/string/index.js +20 -3
  845. package/utils/string/title-case.js +26 -6
  846. package/utils/string/trim.js +32 -9
  847. package/utils/throw.js +30 -7
  848. package/utils/timer.js +91 -70
  849. package/utils/timing.js +80 -52
  850. package/utils/type-guards.js +1076 -253
  851. package/utils/type-of.js +43 -25
  852. package/utils/units.js +124 -53
  853. package/utils/url-builder.js +68 -47
  854. package/utils/value-or-provider.js +29 -6
  855. package/utils/z-base32.js +63 -42
  856. package/web-types.js +16 -1
  857. package/container/container.js +0 -428
  858. package/container/provider.js +0 -29
  859. package/container/resolve-chain.js +0 -80
  860. package/container/resolve.error.js +0 -11
  861. package/container/type-info.js +0 -1
  862. package/container/types.js +0 -1
  863. package/container/utils.js +0 -20
  864. package/data-structures/set.js +0 -56
  865. /package/{container → _container}/container.d.ts +0 -0
  866. /package/{container → _container}/provider.d.ts +0 -0
  867. /package/{container → _container}/resolve-chain.d.ts +0 -0
  868. /package/{container → _container}/resolve.error.d.ts +0 -0
  869. /package/{container → _container}/type-info.d.ts +0 -0
  870. /package/{container → _container}/types.d.ts +0 -0
  871. /package/{container → _container}/utils.d.ts +0 -0
@@ -1,8 +1,31 @@
1
- export function* skip(iterable, count) {
2
- let index = 0;
3
- for (const item of iterable) {
4
- if (index++ >= count) {
5
- yield item;
6
- }
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+ var skip_exports = {};
20
+ __export(skip_exports, {
21
+ skip: () => skip
22
+ });
23
+ module.exports = __toCommonJS(skip_exports);
24
+ function* skip(iterable, count) {
25
+ let index = 0;
26
+ for (const item of iterable) {
27
+ if (index++ >= count) {
28
+ yield item;
7
29
  }
30
+ }
8
31
  }
@@ -1,5 +1,28 @@
1
- import { compareByValue } from '../comparison.js';
2
- export function sort(iterable, comparator = compareByValue) {
3
- const array = [...iterable];
4
- return array.sort(comparator);
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+ var sort_exports = {};
20
+ __export(sort_exports, {
21
+ sort: () => sort
22
+ });
23
+ module.exports = __toCommonJS(sort_exports);
24
+ var import_comparison = require("../comparison.js");
25
+ function sort(iterable, comparator = import_comparison.compareByValue) {
26
+ const array = [...iterable];
27
+ return array.sort(comparator);
5
28
  }
@@ -1,10 +1,33 @@
1
- export function* takeUntil(iterable, cancellationToken) {
2
- const iterator = iterable[Symbol.iterator]();
3
- while (cancellationToken.isUnset) {
4
- const result = iterator.next();
5
- if (result.done == true) {
6
- return;
7
- }
8
- yield result.value;
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+ var take_until_exports = {};
20
+ __export(take_until_exports, {
21
+ takeUntil: () => takeUntil
22
+ });
23
+ module.exports = __toCommonJS(take_until_exports);
24
+ function* takeUntil(iterable, cancellationToken) {
25
+ const iterator = iterable[Symbol.iterator]();
26
+ while (cancellationToken.isUnset) {
27
+ const result = iterator.next();
28
+ if (result.done == true) {
29
+ return;
9
30
  }
31
+ yield result.value;
32
+ }
10
33
  }
@@ -1,12 +1,35 @@
1
- export function* takeWhile(iterable, yieldLastOnFalse, predicate) {
2
- let index = 0;
3
- for (const item of iterable) {
4
- const take = predicate(item, index++);
5
- if (take || yieldLastOnFalse) {
6
- yield item;
7
- }
8
- if (!take) {
9
- break;
10
- }
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+ var take_while_exports = {};
20
+ __export(take_while_exports, {
21
+ takeWhile: () => takeWhile
22
+ });
23
+ module.exports = __toCommonJS(take_while_exports);
24
+ function* takeWhile(iterable, yieldLastOnFalse, predicate) {
25
+ let index = 0;
26
+ for (const item of iterable) {
27
+ const take = predicate(item, index++);
28
+ if (take || yieldLastOnFalse) {
29
+ yield item;
11
30
  }
31
+ if (!take) {
32
+ break;
33
+ }
34
+ }
12
35
  }
@@ -1,12 +1,35 @@
1
- export function* take(iterable, count) {
2
- if (count <= 0) {
3
- return;
4
- }
5
- let counter = 0;
6
- for (const item of iterable) {
7
- yield item;
8
- if (++counter >= count) {
9
- break;
10
- }
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+ var take_exports = {};
20
+ __export(take_exports, {
21
+ take: () => take
22
+ });
23
+ module.exports = __toCommonJS(take_exports);
24
+ function* take(iterable, count) {
25
+ if (count <= 0) {
26
+ return;
27
+ }
28
+ let counter = 0;
29
+ for (const item of iterable) {
30
+ yield item;
31
+ if (++counter >= count) {
32
+ break;
11
33
  }
34
+ }
12
35
  }
@@ -1,7 +1,30 @@
1
- export function* tap(iterable, tapper) {
2
- let index = 0;
3
- for (const item of iterable) {
4
- tapper(item, index++);
5
- yield item;
6
- }
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+ var tap_exports = {};
20
+ __export(tap_exports, {
21
+ tap: () => tap
22
+ });
23
+ module.exports = __toCommonJS(tap_exports);
24
+ function* tap(iterable, tapper) {
25
+ let index = 0;
26
+ for (const item of iterable) {
27
+ tapper(item, index++);
28
+ yield item;
29
+ }
7
30
  }
@@ -1 +1,16 @@
1
- export {};
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __copyProps = (to, from, except, desc) => {
7
+ if (from && typeof from === "object" || typeof from === "function") {
8
+ for (let key of __getOwnPropNames(from))
9
+ if (!__hasOwnProp.call(to, key) && key !== except)
10
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
11
+ }
12
+ return to;
13
+ };
14
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
15
+ var types_exports = {};
16
+ module.exports = __toCommonJS(types_exports);
@@ -1,10 +1,33 @@
1
- export function* whileSync(iterable, predicate) {
2
- let index = 0;
3
- for (const item of iterable) {
4
- yield item;
5
- const goOn = predicate(item, index++);
6
- if (!goOn) {
7
- return;
8
- }
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+ var while_exports = {};
20
+ __export(while_exports, {
21
+ whileSync: () => whileSync
22
+ });
23
+ module.exports = __toCommonJS(while_exports);
24
+ function* whileSync(iterable, predicate) {
25
+ let index = 0;
26
+ for (const item of iterable) {
27
+ yield item;
28
+ const goOn = predicate(item, index++);
29
+ if (!goOn) {
30
+ return;
9
31
  }
32
+ }
10
33
  }
package/utils/jwt.js CHANGED
@@ -1,88 +1,111 @@
1
- import { InvalidTokenError } from '../error/invalid-token.error.js';
2
- import { toArray } from './array/array.js';
3
- import { decodeBase64Url, encodeBase64Url } from './base64.js';
4
- import { importHmacKey, sign } from './cryptography.js';
5
- import { encodeUtf8 } from './encoding.js';
6
- import { binaryEquals } from './equals.js';
7
- export function parseJwtTokenString(tokenString) {
8
- const splits = tokenString.split('.');
9
- if (splits.length != 3) {
10
- const message = (tokenString.length > 0) ? 'Invalid token format' : 'Missing authorization token';
11
- throw new InvalidTokenError(message);
12
- }
13
- const [encodedHeader, encodedPayload, encodedSignature] = splits;
14
- const textDecoder = new TextDecoder();
15
- const encoded = {
16
- header: encodedHeader,
17
- payload: encodedPayload,
18
- signature: encodedSignature
19
- };
20
- const bytes = {
21
- header: decodeBase64Url(encodedHeader),
22
- payload: decodeBase64Url(encodedPayload),
23
- signature: decodeBase64Url(encodedSignature)
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+ var jwt_exports = {};
20
+ __export(jwt_exports, {
21
+ createJwtTokenString: () => createJwtTokenString,
22
+ parseAndValidateJwtTokenString: () => parseAndValidateJwtTokenString,
23
+ parseJwtTokenString: () => parseJwtTokenString
24
+ });
25
+ module.exports = __toCommonJS(jwt_exports);
26
+ var import_invalid_token_error = require("../error/invalid-token.error.js");
27
+ var import_array = require("./array/array.js");
28
+ var import_base64 = require("./base64.js");
29
+ var import_cryptography = require("./cryptography.js");
30
+ var import_encoding = require("./encoding.js");
31
+ var import_equals = require("./equals.js");
32
+ function parseJwtTokenString(tokenString) {
33
+ const splits = tokenString.split(".");
34
+ if (splits.length != 3) {
35
+ const message = tokenString.length > 0 ? "Invalid token format" : "Missing authorization token";
36
+ throw new import_invalid_token_error.InvalidTokenError(message);
37
+ }
38
+ const [encodedHeader, encodedPayload, encodedSignature] = splits;
39
+ const textDecoder = new TextDecoder();
40
+ const encoded = {
41
+ header: encodedHeader,
42
+ payload: encodedPayload,
43
+ signature: encodedSignature
44
+ };
45
+ const bytes = {
46
+ header: (0, import_base64.decodeBase64Url)(encodedHeader),
47
+ payload: (0, import_base64.decodeBase64Url)(encodedPayload),
48
+ signature: (0, import_base64.decodeBase64Url)(encodedSignature)
49
+ };
50
+ const string = {
51
+ header: textDecoder.decode(bytes.header),
52
+ payload: textDecoder.decode(bytes.payload)
53
+ };
54
+ try {
55
+ const header = JSON.parse(string.header);
56
+ const payload = JSON.parse(string.payload);
57
+ const token = {
58
+ header,
59
+ payload
24
60
  };
25
- const string = {
26
- header: textDecoder.decode(bytes.header),
27
- payload: textDecoder.decode(bytes.payload)
61
+ return {
62
+ raw: tokenString,
63
+ token,
64
+ encoded,
65
+ bytes,
66
+ string
28
67
  };
29
- try {
30
- const header = JSON.parse(string.header);
31
- const payload = JSON.parse(string.payload);
32
- const token = {
33
- header,
34
- payload
35
- };
36
- return {
37
- raw: tokenString,
38
- token: token,
39
- encoded,
40
- bytes,
41
- string
42
- };
43
- }
44
- catch {
45
- throw new InvalidTokenError('Invalid token format');
46
- }
68
+ } catch {
69
+ throw new import_invalid_token_error.InvalidTokenError("Invalid token format");
70
+ }
47
71
  }
48
- export async function createJwtTokenString(jwtToken, key) {
49
- const headerBuffer = encodeUtf8(JSON.stringify(jwtToken.header));
50
- const payloadBuffer = encodeUtf8(JSON.stringify(jwtToken.payload));
51
- const encodedHeader = encodeBase64Url(headerBuffer, 0, headerBuffer.byteLength);
52
- const encodedPayload = encodeBase64Url(payloadBuffer, 0, payloadBuffer.byteLength);
53
- const headerPayloadDataString = `${encodedHeader}.${encodedPayload}`;
54
- const headerPayloadData = encodeUtf8(headerPayloadDataString);
55
- const signature = await getSignature(headerPayloadData, jwtToken.header.alg, key);
56
- const encodedSignature = encodeBase64Url(signature);
57
- const tokenString = `${headerPayloadDataString}.${encodedSignature}`;
58
- return tokenString;
72
+ async function createJwtTokenString(jwtToken, key) {
73
+ const headerBuffer = (0, import_encoding.encodeUtf8)(JSON.stringify(jwtToken.header));
74
+ const payloadBuffer = (0, import_encoding.encodeUtf8)(JSON.stringify(jwtToken.payload));
75
+ const encodedHeader = (0, import_base64.encodeBase64Url)(headerBuffer, 0, headerBuffer.byteLength);
76
+ const encodedPayload = (0, import_base64.encodeBase64Url)(payloadBuffer, 0, payloadBuffer.byteLength);
77
+ const headerPayloadDataString = `${encodedHeader}.${encodedPayload}`;
78
+ const headerPayloadData = (0, import_encoding.encodeUtf8)(headerPayloadDataString);
79
+ const signature = await getSignature(headerPayloadData, jwtToken.header.alg, key);
80
+ const encodedSignature = (0, import_base64.encodeBase64Url)(signature);
81
+ const tokenString = `${headerPayloadDataString}.${encodedSignature}`;
82
+ return tokenString;
59
83
  }
60
- export async function parseAndValidateJwtTokenString(tokenString, allowedAlgorithms, key) {
61
- try {
62
- const { encoded, bytes, token } = parseJwtTokenString(tokenString);
63
- if (!toArray(allowedAlgorithms).includes(token.header.alg)) {
64
- throw new InvalidTokenError('Invalid signature algorithm');
65
- }
66
- const calculatedSignature = await getSignature(encodeUtf8(`${encoded.header}.${encoded.payload}`), token.header.alg, key);
67
- const validSignature = binaryEquals(calculatedSignature, bytes.signature);
68
- if (!validSignature) {
69
- throw new InvalidTokenError('Invalid token signature');
70
- }
71
- return token;
84
+ async function parseAndValidateJwtTokenString(tokenString, allowedAlgorithms, key) {
85
+ try {
86
+ const { encoded, bytes, token } = parseJwtTokenString(tokenString);
87
+ if (!(0, import_array.toArray)(allowedAlgorithms).includes(token.header.alg)) {
88
+ throw new import_invalid_token_error.InvalidTokenError("Invalid signature algorithm");
89
+ }
90
+ const calculatedSignature = await getSignature((0, import_encoding.encodeUtf8)(`${encoded.header}.${encoded.payload}`), token.header.alg, key);
91
+ const validSignature = (0, import_equals.binaryEquals)(calculatedSignature, bytes.signature);
92
+ if (!validSignature) {
93
+ throw new import_invalid_token_error.InvalidTokenError("Invalid token signature");
72
94
  }
73
- catch (error) {
74
- if (error instanceof InvalidTokenError) {
75
- throw error;
76
- }
77
- throw new InvalidTokenError('Invalid token');
95
+ return token;
96
+ } catch (error) {
97
+ if (error instanceof import_invalid_token_error.InvalidTokenError) {
98
+ throw error;
78
99
  }
100
+ throw new import_invalid_token_error.InvalidTokenError("Invalid token");
101
+ }
79
102
  }
80
103
  async function getSignature(data, algorithm, secret) {
81
- const hashAlgorithm = getHmacHashAlgorithm(algorithm);
82
- const hmacKey = await importHmacKey(hashAlgorithm, secret, false);
83
- const hmacSignature = sign('HMAC', hmacKey, data);
84
- return hmacSignature.toBuffer();
104
+ const hashAlgorithm = getHmacHashAlgorithm(algorithm);
105
+ const hmacKey = await (0, import_cryptography.importHmacKey)(hashAlgorithm, secret, false);
106
+ const hmacSignature = (0, import_cryptography.sign)("HMAC", hmacKey, data);
107
+ return hmacSignature.toBuffer();
85
108
  }
86
109
  function getHmacHashAlgorithm(algorithm) {
87
- return algorithm.replace('HS', 'SHA-');
110
+ return algorithm.replace("HS", "SHA-");
88
111
  }
package/utils/map.js CHANGED
@@ -1,43 +1,70 @@
1
- import { compareByValueSelectionDescending } from './comparison.js';
2
- export function intersectMaps(...maps) {
3
- if (maps.length == 0) {
4
- return [];
5
- }
6
- if (maps.length == 1) {
7
- return [...maps[0]];
8
- }
9
- const sortedMaps = maps.sort(compareByValueSelectionDescending((map) => map.size));
10
- const [smallestMap, ...otherMaps] = sortedMaps;
11
- return [...smallestMap].filter((entry) => !otherMaps.some((map) => !map.has(entry[0])));
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+ var map_exports = {};
20
+ __export(map_exports, {
21
+ differenceMaps: () => differenceMaps,
22
+ intersectMaps: () => intersectMaps,
23
+ symmetricDifferenceMaps: () => symmetricDifferenceMaps,
24
+ unionMaps: () => unionMaps,
25
+ uniquesMaps: () => uniquesMaps
26
+ });
27
+ module.exports = __toCommonJS(map_exports);
28
+ var import_comparison = require("./comparison.js");
29
+ function intersectMaps(...maps) {
30
+ if (maps.length == 0) {
31
+ return [];
32
+ }
33
+ if (maps.length == 1) {
34
+ return [...maps[0]];
35
+ }
36
+ const sortedMaps = maps.sort((0, import_comparison.compareByValueSelectionDescending)((map) => map.size));
37
+ const [smallestMap, ...otherMaps] = sortedMaps;
38
+ return [...smallestMap].filter((entry) => !otherMaps.some((map) => !map.has(entry[0])));
12
39
  }
13
- export function differenceMaps(base, ...maps) {
14
- return [...base].filter((entry) => !maps.some((map) => map.has(entry[0])));
40
+ function differenceMaps(base, ...maps) {
41
+ return [...base].filter((entry) => !maps.some((map) => map.has(entry[0])));
15
42
  }
16
- export function symmetricDifferenceMaps(...maps) {
17
- if (maps.length == 0) {
18
- return new Map();
19
- }
20
- if (maps.length == 1) {
21
- return maps[0];
22
- }
23
- const [first, second, ...others] = maps;
24
- return symmetricDifferenceMaps(simpleSymmetricDifference(first, second), ...others);
43
+ function symmetricDifferenceMaps(...maps) {
44
+ if (maps.length == 0) {
45
+ return /* @__PURE__ */ new Map();
46
+ }
47
+ if (maps.length == 1) {
48
+ return maps[0];
49
+ }
50
+ const [first, second, ...others] = maps;
51
+ return symmetricDifferenceMaps(simpleSymmetricDifference(first, second), ...others);
25
52
  }
26
- export function uniquesMaps(...maps) {
27
- const result = new Map();
28
- for (const map of maps) {
29
- for (const entry of map) {
30
- const unique = maps.every((otherMap) => (map == otherMap) || !otherMap.has(entry[0]));
31
- if (unique) {
32
- result.set(entry[0], entry[1]);
33
- }
34
- }
53
+ function uniquesMaps(...maps) {
54
+ const result = /* @__PURE__ */ new Map();
55
+ for (const map of maps) {
56
+ for (const entry of map) {
57
+ const unique = maps.every((otherMap) => map == otherMap || !otherMap.has(entry[0]));
58
+ if (unique) {
59
+ result.set(entry[0], entry[1]);
60
+ }
35
61
  }
36
- return result;
62
+ }
63
+ return result;
37
64
  }
38
- export function unionMaps(...maps) {
39
- return new Map(maps.flatMap((map) => [...map]));
65
+ function unionMaps(...maps) {
66
+ return new Map(maps.flatMap((map) => [...map]));
40
67
  }
41
68
  function simpleSymmetricDifference(a, b) {
42
- return unionMaps(differenceMaps(a, b), differenceMaps(b, a));
69
+ return unionMaps(differenceMaps(a, b), differenceMaps(b, a));
43
70
  }