@daiso-tech/core 0.14.0 → 0.16.0

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 (701) hide show
  1. package/dist/cjs/_module.js +3 -2
  2. package/dist/cjs/_module.js.map +1 -1
  3. package/dist/cjs/async/_module.js +20 -0
  4. package/dist/cjs/async/_module.js.map +1 -0
  5. package/dist/cjs/{utilities/async/_shared.js → async/async.errors.js} +1 -1
  6. package/dist/cjs/async/async.errors.js.map +1 -0
  7. package/dist/cjs/{utilities → async}/backof-policies/_module.js +4 -4
  8. package/dist/cjs/async/backof-policies/_module.js.map +1 -0
  9. package/dist/cjs/async/backof-policies/_shared.js.map +1 -0
  10. package/dist/cjs/{serializer/implementations/sql-serializer → async/backof-policies/constant-backoff-policy}/_module.js +1 -1
  11. package/dist/cjs/async/backof-policies/constant-backoff-policy/_module.js.map +1 -0
  12. package/dist/cjs/{utilities → async}/backof-policies/constant-backoff-policy/constant-backoff-policy.js +1 -1
  13. package/dist/cjs/async/backof-policies/constant-backoff-policy/constant-backoff-policy.js.map +1 -0
  14. package/dist/cjs/{serializer/implementations/_shared/test-utilities → async/backof-policies/exponential-backoff-policy}/_module.js +1 -1
  15. package/dist/cjs/async/backof-policies/exponential-backoff-policy/_module.js.map +1 -0
  16. package/dist/cjs/{utilities → async}/backof-policies/exponential-backoff-policy/exponential-backoff-policy.js +1 -1
  17. package/dist/cjs/async/backof-policies/exponential-backoff-policy/exponential-backoff-policy.js.map +1 -0
  18. package/dist/cjs/{serializer/implementations/mongodb-serializer → async/backof-policies/linear-backoff-policy}/_module.js +1 -1
  19. package/dist/cjs/async/backof-policies/linear-backoff-policy/_module.js.map +1 -0
  20. package/dist/cjs/{utilities → async}/backof-policies/linear-backoff-policy/linear-backoff-policy.js +1 -1
  21. package/dist/cjs/async/backof-policies/linear-backoff-policy/linear-backoff-policy.js.map +1 -0
  22. package/dist/cjs/async/backof-policies/polynomial-backoff-policy/_module.js +18 -0
  23. package/dist/cjs/async/backof-policies/polynomial-backoff-policy/_module.js.map +1 -0
  24. package/dist/cjs/{utilities → async}/backof-policies/polynomial-backoff-policy/polynomial-backoff-policy.js +1 -1
  25. package/dist/cjs/async/backof-policies/polynomial-backoff-policy/polynomial-backoff-policy.js.map +1 -0
  26. package/dist/cjs/{event-bus/implementations/_shared/test-utilities → async/utilities}/_module.js +2 -1
  27. package/dist/cjs/async/utilities/_module.js.map +1 -0
  28. package/dist/cjs/async/utilities/abort/_module.js +19 -0
  29. package/dist/cjs/async/utilities/abort/_module.js.map +1 -0
  30. package/dist/cjs/async/utilities/abort/abort-and-fail.js +45 -0
  31. package/dist/cjs/async/utilities/abort/abort-and-fail.js.map +1 -0
  32. package/dist/cjs/async/utilities/abort/abort.js +18 -0
  33. package/dist/cjs/async/utilities/abort/abort.js.map +1 -0
  34. package/dist/cjs/{utilities/async → async/utilities}/delay/_module.js +1 -1
  35. package/dist/cjs/async/utilities/delay/_module.js.map +1 -0
  36. package/dist/cjs/async/utilities/delay/delay.js +20 -0
  37. package/dist/cjs/async/utilities/delay/delay.js.map +1 -0
  38. package/dist/cjs/{utilities/async → async/utilities}/lazy-promise/_module.js +1 -1
  39. package/dist/cjs/async/utilities/lazy-promise/_module.js.map +1 -0
  40. package/dist/cjs/async/utilities/lazy-promise/lazy-promise.js +110 -0
  41. package/dist/cjs/async/utilities/lazy-promise/lazy-promise.js.map +1 -0
  42. package/dist/cjs/async/utilities/retry/_module.js +19 -0
  43. package/dist/cjs/async/utilities/retry/_module.js.map +1 -0
  44. package/dist/cjs/async/utilities/retry/retry-or-fail.js +36 -0
  45. package/dist/cjs/async/utilities/retry/retry-or-fail.js.map +1 -0
  46. package/dist/cjs/async/utilities/retry/retry.js +18 -0
  47. package/dist/cjs/async/utilities/retry/retry.js.map +1 -0
  48. package/dist/cjs/{utilities/async → async/utilities}/timeout/_module.js +2 -1
  49. package/dist/cjs/async/utilities/timeout/_module.js.map +1 -0
  50. package/dist/cjs/async/utilities/timeout/timeout-and-fail.js +25 -0
  51. package/dist/cjs/async/utilities/timeout/timeout-and-fail.js.map +1 -0
  52. package/dist/cjs/async/utilities/timeout/timeout.js +18 -0
  53. package/dist/cjs/async/utilities/timeout/timeout.js.map +1 -0
  54. package/dist/cjs/cache/contracts/cache.events.js +0 -11
  55. package/dist/cjs/cache/contracts/cache.events.js.map +1 -1
  56. package/dist/cjs/cache/implementations/_shared/cache-adapter.test-suite.js +257 -177
  57. package/dist/cjs/cache/implementations/_shared/cache-adapter.test-suite.js.map +1 -1
  58. package/dist/cjs/cache/implementations/_shared/cache.test-suite.js +59 -37
  59. package/dist/cjs/cache/implementations/_shared/cache.test-suite.js.map +1 -1
  60. package/dist/cjs/cache/implementations/adapters/kysely-sqlite-cache-adapter/kysely-sqlite-cache-adapter.js +59 -18
  61. package/dist/cjs/cache/implementations/adapters/kysely-sqlite-cache-adapter/kysely-sqlite-cache-adapter.js.map +1 -1
  62. package/dist/cjs/cache/implementations/adapters/libsql-cache-adapter/libsql-cache-adapter.js +16 -6
  63. package/dist/cjs/cache/implementations/adapters/libsql-cache-adapter/libsql-cache-adapter.js.map +1 -1
  64. package/dist/cjs/cache/implementations/adapters/memory-cache-adapter/memory-cache-adapter.js +58 -39
  65. package/dist/cjs/cache/implementations/adapters/memory-cache-adapter/memory-cache-adapter.js.map +1 -1
  66. package/dist/cjs/cache/implementations/adapters/mongodb-cache-adapter/mongodb-cache-adapter.js +63 -26
  67. package/dist/cjs/cache/implementations/adapters/mongodb-cache-adapter/mongodb-cache-adapter.js.map +1 -1
  68. package/dist/cjs/cache/implementations/adapters/no-op-cache-adapter/no-op-cache-adapter.js +10 -1
  69. package/dist/cjs/cache/implementations/adapters/no-op-cache-adapter/no-op-cache-adapter.js.map +1 -1
  70. package/dist/cjs/cache/implementations/adapters/redis-cache-adapter/redis-cache-adapter.js +44 -19
  71. package/dist/cjs/cache/implementations/adapters/redis-cache-adapter/redis-cache-adapter.js.map +1 -1
  72. package/dist/cjs/cache/implementations/adapters/sqlite-cache-adapter/sqlite-cache-adapter.js +17 -7
  73. package/dist/cjs/cache/implementations/adapters/sqlite-cache-adapter/sqlite-cache-adapter.js.map +1 -1
  74. package/dist/cjs/cache/implementations/derivables/_module.js +0 -1
  75. package/dist/cjs/cache/implementations/derivables/_module.js.map +1 -1
  76. package/dist/cjs/cache/implementations/derivables/cache-factory.js +4 -7
  77. package/dist/cjs/cache/implementations/derivables/cache-factory.js.map +1 -1
  78. package/dist/cjs/cache/implementations/derivables/cache.js +303 -61
  79. package/dist/cjs/cache/implementations/derivables/cache.js.map +1 -1
  80. package/dist/cjs/collection/implementations/async-iterable-collection/_shared/_module.js +4 -1
  81. package/dist/cjs/collection/implementations/async-iterable-collection/_shared/_module.js.map +1 -1
  82. package/dist/cjs/collection/implementations/async-iterable-collection/_shared/async-delay-iterable.js +27 -0
  83. package/dist/cjs/collection/implementations/async-iterable-collection/_shared/async-delay-iterable.js.map +1 -0
  84. package/dist/cjs/collection/implementations/async-iterable-collection/_shared/async-merge-iterable.js +14 -7
  85. package/dist/cjs/collection/implementations/async-iterable-collection/_shared/async-merge-iterable.js.map +1 -1
  86. package/dist/cjs/collection/implementations/async-iterable-collection/_shared/async-retry-iterable.js +33 -0
  87. package/dist/cjs/collection/implementations/async-iterable-collection/_shared/async-retry-iterable.js.map +1 -0
  88. package/dist/cjs/collection/implementations/async-iterable-collection/_shared/async-take-until-abort-iterable.js +36 -0
  89. package/dist/cjs/collection/implementations/async-iterable-collection/_shared/async-take-until-abort-iterable.js.map +1 -0
  90. package/dist/cjs/collection/implementations/async-iterable-collection/_shared/async-take-until-timeout-iterable.js +48 -0
  91. package/dist/cjs/collection/implementations/async-iterable-collection/_shared/async-take-until-timeout-iterable.js.map +1 -0
  92. package/dist/cjs/collection/implementations/async-iterable-collection/async-iterable-collection.js +63 -42
  93. package/dist/cjs/collection/implementations/async-iterable-collection/async-iterable-collection.js.map +1 -1
  94. package/dist/cjs/collection/implementations/iterable-collection/_shared/merge-iterable.js +6 -7
  95. package/dist/cjs/collection/implementations/iterable-collection/_shared/merge-iterable.js.map +1 -1
  96. package/dist/cjs/collection/implementations/iterable-collection/iterable-collection.js +16 -7
  97. package/dist/cjs/collection/implementations/iterable-collection/iterable-collection.js.map +1 -1
  98. package/dist/cjs/collection/implementations/list-collection/list-collection.js +18 -5
  99. package/dist/cjs/collection/implementations/list-collection/list-collection.js.map +1 -1
  100. package/dist/cjs/event-bus/contracts/event-bus.errors.js +3 -3
  101. package/dist/cjs/event-bus/contracts/event-bus.errors.js.map +1 -1
  102. package/dist/cjs/event-bus/implementations/_module.js +1 -1
  103. package/dist/cjs/event-bus/implementations/_module.js.map +1 -1
  104. package/dist/cjs/event-bus/implementations/_shared/_module.js +19 -0
  105. package/dist/cjs/event-bus/implementations/_shared/_module.js.map +1 -0
  106. package/dist/cjs/event-bus/implementations/_shared/event-bus-adapter.test-suite.js +96 -0
  107. package/dist/cjs/event-bus/implementations/_shared/event-bus-adapter.test-suite.js.map +1 -0
  108. package/dist/cjs/event-bus/implementations/_shared/event-bus.test-suite.js +335 -0
  109. package/dist/cjs/event-bus/implementations/_shared/event-bus.test-suite.js.map +1 -0
  110. package/dist/cjs/event-bus/implementations/adapters/_module.js +1 -1
  111. package/dist/cjs/event-bus/implementations/adapters/_module.js.map +1 -1
  112. package/dist/cjs/event-bus/implementations/adapters/memory-event-bus-adapter/memory-event-bus-adapter.js +19 -9
  113. package/dist/cjs/event-bus/implementations/adapters/memory-event-bus-adapter/memory-event-bus-adapter.js.map +1 -1
  114. package/dist/cjs/event-bus/implementations/adapters/no-op-event-bus-adapter/no-op-event-bus-adapter.js +7 -1
  115. package/dist/cjs/event-bus/implementations/adapters/no-op-event-bus-adapter/no-op-event-bus-adapter.js.map +1 -1
  116. package/dist/cjs/event-bus/implementations/adapters/redis-pub-sub-event-bus-adapter/_module.js.map +1 -0
  117. package/dist/cjs/event-bus/implementations/adapters/redis-pub-sub-event-bus-adapter/redis-pub-sub-event-bus-adapter.js +52 -0
  118. package/dist/cjs/event-bus/implementations/adapters/redis-pub-sub-event-bus-adapter/redis-pub-sub-event-bus-adapter.js.map +1 -0
  119. package/dist/cjs/event-bus/implementations/derivables/event-bus-factory.js +6 -7
  120. package/dist/cjs/event-bus/implementations/derivables/event-bus-factory.js.map +1 -1
  121. package/dist/cjs/event-bus/implementations/derivables/event-bus.js +96 -33
  122. package/dist/cjs/event-bus/implementations/derivables/event-bus.js.map +1 -1
  123. package/dist/cjs/{utilities/async/retry → serde/contracts}/_module.js +2 -1
  124. package/dist/cjs/serde/contracts/_module.js.map +1 -0
  125. package/dist/cjs/{serializer/contracts/serializer.contract.js → serde/contracts/serde.contract.js} +1 -1
  126. package/dist/cjs/serde/contracts/serde.contract.js.map +1 -0
  127. package/dist/cjs/{serializer/contracts/serializer.errors.js → serde/contracts/serde.errors.js} +7 -7
  128. package/dist/cjs/serde/contracts/serde.errors.js.map +1 -0
  129. package/dist/cjs/{_shared/redis → serde/implementations}/_module.js +5 -3
  130. package/dist/cjs/serde/implementations/_module.js.map +1 -0
  131. package/dist/cjs/{serializer/implementations/redis-serializer → serde/implementations/_shared/test-utilities}/_module.js +1 -1
  132. package/dist/cjs/serde/implementations/_shared/test-utilities/_module.js.map +1 -0
  133. package/dist/{esm/serializer/implementations/_shared/test-utilities/serializer.test-suite.js → cjs/serde/implementations/_shared/test-utilities/serde.test-suite.js} +65 -62
  134. package/dist/cjs/serde/implementations/_shared/test-utilities/serde.test-suite.js.map +1 -0
  135. package/dist/cjs/{_shared/kysely → serde/implementations/mongodb-serde}/_module.js +1 -1
  136. package/dist/cjs/serde/implementations/mongodb-serde/_module.js.map +1 -0
  137. package/dist/cjs/serde/implementations/mongodb-serde/mongodb-serde.js +36 -0
  138. package/dist/cjs/serde/implementations/mongodb-serde/mongodb-serde.js.map +1 -0
  139. package/dist/cjs/{utilities/async/delay-iterable → serde/implementations/redis-serde}/_module.js +1 -1
  140. package/dist/cjs/serde/implementations/redis-serde/_module.js.map +1 -0
  141. package/dist/cjs/serde/implementations/redis-serde/redis-serde.js +37 -0
  142. package/dist/cjs/serde/implementations/redis-serde/redis-serde.js.map +1 -0
  143. package/dist/cjs/{utilities/async/abortable → serde/implementations/sql-serde}/_module.js +1 -1
  144. package/dist/cjs/serde/implementations/sql-serde/_module.js.map +1 -0
  145. package/dist/cjs/serde/implementations/sql-serde/sql-serde.js +37 -0
  146. package/dist/cjs/serde/implementations/sql-serde/sql-serde.js.map +1 -0
  147. package/dist/cjs/{utilities/async/abortable-iterable → serde/implementations/super-json-serde}/_module.js +1 -1
  148. package/dist/cjs/serde/implementations/super-json-serde/_module.js.map +1 -0
  149. package/dist/cjs/{serializer/implementations/super-json-serializer/super-json-serializer.js → serde/implementations/super-json-serde/super-json-serde.js} +74 -100
  150. package/dist/cjs/serde/implementations/super-json-serde/super-json-serde.js.map +1 -0
  151. package/dist/cjs/utilities/_module.js +5 -4
  152. package/dist/cjs/utilities/_module.js.map +1 -1
  153. package/dist/cjs/{serializer → utilities}/contracts/_module.js +2 -2
  154. package/dist/cjs/utilities/contracts/_module.js.map +1 -0
  155. package/dist/cjs/utilities/contracts/deinitizable.contract.js +3 -0
  156. package/dist/cjs/utilities/contracts/deinitizable.contract.js.map +1 -0
  157. package/dist/cjs/utilities/contracts/initizable.contract.js +3 -0
  158. package/dist/cjs/utilities/contracts/initizable.contract.js.map +1 -0
  159. package/dist/cjs/utilities/{global-errors.js → errors.js} +1 -1
  160. package/dist/cjs/utilities/errors.js.map +1 -0
  161. package/dist/cjs/{_shared/utilities.js → utilities/functions.js} +6 -6
  162. package/dist/cjs/utilities/functions.js.map +1 -0
  163. package/dist/cjs/utilities/kysely/_module.js +18 -0
  164. package/dist/cjs/utilities/kysely/_module.js.map +1 -0
  165. package/dist/cjs/utilities/kysely/kysely-table-name-transformer-plugin.js.map +1 -0
  166. package/dist/cjs/utilities/time-span/time-span.js +8 -0
  167. package/dist/cjs/utilities/time-span/time-span.js.map +1 -1
  168. package/dist/cjs/{_shared → utilities}/types.js.map +1 -1
  169. package/dist/esm/_module.js +3 -2
  170. package/dist/esm/_module.js.map +1 -1
  171. package/dist/esm/async/_module.js +4 -0
  172. package/dist/esm/async/_module.js.map +1 -0
  173. package/dist/esm/{utilities/async/_shared.js → async/async.errors.js} +1 -1
  174. package/dist/esm/async/async.errors.js.map +1 -0
  175. package/dist/esm/async/backof-policies/_module.js +5 -0
  176. package/dist/esm/async/backof-policies/_module.js.map +1 -0
  177. package/dist/esm/async/backof-policies/_shared.js.map +1 -0
  178. package/dist/esm/async/backof-policies/constant-backoff-policy/_module.js +2 -0
  179. package/dist/esm/async/backof-policies/constant-backoff-policy/_module.js.map +1 -0
  180. package/dist/esm/{utilities → async}/backof-policies/constant-backoff-policy/constant-backoff-policy.js +1 -1
  181. package/dist/esm/async/backof-policies/constant-backoff-policy/constant-backoff-policy.js.map +1 -0
  182. package/dist/esm/async/backof-policies/exponential-backoff-policy/_module.js +2 -0
  183. package/dist/esm/async/backof-policies/exponential-backoff-policy/_module.js.map +1 -0
  184. package/dist/esm/{utilities → async}/backof-policies/exponential-backoff-policy/exponential-backoff-policy.js +1 -1
  185. package/dist/esm/async/backof-policies/exponential-backoff-policy/exponential-backoff-policy.js.map +1 -0
  186. package/dist/esm/async/backof-policies/linear-backoff-policy/_module.js +2 -0
  187. package/dist/esm/async/backof-policies/linear-backoff-policy/_module.js.map +1 -0
  188. package/dist/esm/{utilities → async}/backof-policies/linear-backoff-policy/linear-backoff-policy.js +1 -1
  189. package/dist/esm/async/backof-policies/linear-backoff-policy/linear-backoff-policy.js.map +1 -0
  190. package/dist/esm/async/backof-policies/polynomial-backoff-policy/_module.js +2 -0
  191. package/dist/esm/async/backof-policies/polynomial-backoff-policy/_module.js.map +1 -0
  192. package/dist/esm/{utilities → async}/backof-policies/polynomial-backoff-policy/polynomial-backoff-policy.js +1 -1
  193. package/dist/esm/async/backof-policies/polynomial-backoff-policy/polynomial-backoff-policy.js.map +1 -0
  194. package/dist/esm/async/utilities/_module.js +3 -0
  195. package/dist/esm/async/utilities/_module.js.map +1 -0
  196. package/dist/esm/async/utilities/abort/_module.js +3 -0
  197. package/dist/esm/async/utilities/abort/_module.js.map +1 -0
  198. package/dist/esm/{utilities/async/abortable/abortable.js → async/utilities/abort/abort-and-fail.js} +13 -16
  199. package/dist/esm/async/utilities/abort/abort-and-fail.js.map +1 -0
  200. package/dist/esm/async/utilities/abort/abort.js +15 -0
  201. package/dist/esm/async/utilities/abort/abort.js.map +1 -0
  202. package/dist/esm/async/utilities/delay/_module.js +2 -0
  203. package/dist/esm/async/utilities/delay/_module.js.map +1 -0
  204. package/dist/esm/async/utilities/delay/delay.js +17 -0
  205. package/dist/esm/async/utilities/delay/delay.js.map +1 -0
  206. package/dist/esm/async/utilities/lazy-promise/_module.js +2 -0
  207. package/dist/esm/async/utilities/lazy-promise/_module.js.map +1 -0
  208. package/dist/esm/async/utilities/lazy-promise/lazy-promise.js +106 -0
  209. package/dist/esm/async/utilities/lazy-promise/lazy-promise.js.map +1 -0
  210. package/dist/esm/async/utilities/retry/_module.js +3 -0
  211. package/dist/esm/async/utilities/retry/_module.js.map +1 -0
  212. package/dist/esm/async/utilities/retry/retry-or-fail.js +33 -0
  213. package/dist/esm/async/utilities/retry/retry-or-fail.js.map +1 -0
  214. package/dist/esm/async/utilities/retry/retry.js +15 -0
  215. package/dist/esm/async/utilities/retry/retry.js.map +1 -0
  216. package/dist/esm/async/utilities/timeout/_module.js +3 -0
  217. package/dist/esm/async/utilities/timeout/_module.js.map +1 -0
  218. package/dist/esm/async/utilities/timeout/timeout-and-fail.js +22 -0
  219. package/dist/esm/async/utilities/timeout/timeout-and-fail.js.map +1 -0
  220. package/dist/esm/async/utilities/timeout/timeout.js +15 -0
  221. package/dist/esm/async/utilities/timeout/timeout.js.map +1 -0
  222. package/dist/esm/cache/contracts/cache.events.js +0 -10
  223. package/dist/esm/cache/contracts/cache.events.js.map +1 -1
  224. package/dist/esm/cache/implementations/_shared/cache-adapter.test-suite.js +258 -178
  225. package/dist/esm/cache/implementations/_shared/cache-adapter.test-suite.js.map +1 -1
  226. package/dist/esm/cache/implementations/_shared/cache.test-suite.js +25 -3
  227. package/dist/esm/cache/implementations/_shared/cache.test-suite.js.map +1 -1
  228. package/dist/esm/cache/implementations/adapters/kysely-sqlite-cache-adapter/kysely-sqlite-cache-adapter.js +60 -19
  229. package/dist/esm/cache/implementations/adapters/kysely-sqlite-cache-adapter/kysely-sqlite-cache-adapter.js.map +1 -1
  230. package/dist/esm/cache/implementations/adapters/libsql-cache-adapter/libsql-cache-adapter.js +16 -6
  231. package/dist/esm/cache/implementations/adapters/libsql-cache-adapter/libsql-cache-adapter.js.map +1 -1
  232. package/dist/esm/cache/implementations/adapters/memory-cache-adapter/memory-cache-adapter.js +58 -39
  233. package/dist/esm/cache/implementations/adapters/memory-cache-adapter/memory-cache-adapter.js.map +1 -1
  234. package/dist/esm/cache/implementations/adapters/mongodb-cache-adapter/mongodb-cache-adapter.js +63 -23
  235. package/dist/esm/cache/implementations/adapters/mongodb-cache-adapter/mongodb-cache-adapter.js.map +1 -1
  236. package/dist/esm/cache/implementations/adapters/no-op-cache-adapter/no-op-cache-adapter.js +10 -1
  237. package/dist/esm/cache/implementations/adapters/no-op-cache-adapter/no-op-cache-adapter.js.map +1 -1
  238. package/dist/esm/cache/implementations/adapters/redis-cache-adapter/redis-cache-adapter.js +44 -19
  239. package/dist/esm/cache/implementations/adapters/redis-cache-adapter/redis-cache-adapter.js.map +1 -1
  240. package/dist/esm/cache/implementations/adapters/sqlite-cache-adapter/sqlite-cache-adapter.js +16 -6
  241. package/dist/esm/cache/implementations/adapters/sqlite-cache-adapter/sqlite-cache-adapter.js.map +1 -1
  242. package/dist/esm/cache/implementations/derivables/_module.js +0 -1
  243. package/dist/esm/cache/implementations/derivables/_module.js.map +1 -1
  244. package/dist/esm/cache/implementations/derivables/cache-factory.js +2 -5
  245. package/dist/esm/cache/implementations/derivables/cache-factory.js.map +1 -1
  246. package/dist/esm/cache/implementations/derivables/cache.js +304 -62
  247. package/dist/esm/cache/implementations/derivables/cache.js.map +1 -1
  248. package/dist/esm/collection/implementations/async-iterable-collection/_shared/_module.js +4 -1
  249. package/dist/esm/collection/implementations/async-iterable-collection/_shared/_module.js.map +1 -1
  250. package/dist/esm/collection/implementations/async-iterable-collection/_shared/async-delay-iterable.js +23 -0
  251. package/dist/esm/collection/implementations/async-iterable-collection/_shared/async-delay-iterable.js.map +1 -0
  252. package/dist/esm/collection/implementations/async-iterable-collection/_shared/async-merge-iterable.js +14 -7
  253. package/dist/esm/collection/implementations/async-iterable-collection/_shared/async-merge-iterable.js.map +1 -1
  254. package/dist/esm/collection/implementations/async-iterable-collection/_shared/async-retry-iterable.js +29 -0
  255. package/dist/esm/collection/implementations/async-iterable-collection/_shared/async-retry-iterable.js.map +1 -0
  256. package/dist/esm/collection/implementations/async-iterable-collection/_shared/async-take-until-abort-iterable.js +32 -0
  257. package/dist/esm/collection/implementations/async-iterable-collection/_shared/async-take-until-abort-iterable.js.map +1 -0
  258. package/dist/esm/collection/implementations/async-iterable-collection/_shared/async-take-until-timeout-iterable.js +44 -0
  259. package/dist/esm/collection/implementations/async-iterable-collection/_shared/async-take-until-timeout-iterable.js.map +1 -0
  260. package/dist/esm/collection/implementations/async-iterable-collection/async-iterable-collection.js +61 -40
  261. package/dist/esm/collection/implementations/async-iterable-collection/async-iterable-collection.js.map +1 -1
  262. package/dist/esm/collection/implementations/iterable-collection/_shared/merge-iterable.js +6 -7
  263. package/dist/esm/collection/implementations/iterable-collection/_shared/merge-iterable.js.map +1 -1
  264. package/dist/esm/collection/implementations/iterable-collection/iterable-collection.js +12 -3
  265. package/dist/esm/collection/implementations/iterable-collection/iterable-collection.js.map +1 -1
  266. package/dist/esm/collection/implementations/list-collection/list-collection.js +14 -1
  267. package/dist/esm/collection/implementations/list-collection/list-collection.js.map +1 -1
  268. package/dist/esm/event-bus/contracts/event-bus.errors.js +3 -3
  269. package/dist/esm/event-bus/contracts/event-bus.errors.js.map +1 -1
  270. package/dist/esm/event-bus/implementations/_module.js +1 -1
  271. package/dist/esm/event-bus/implementations/_module.js.map +1 -1
  272. package/dist/esm/event-bus/implementations/_shared/_module.js +3 -0
  273. package/dist/esm/event-bus/implementations/_shared/_module.js.map +1 -0
  274. package/dist/esm/event-bus/implementations/_shared/event-bus-adapter.test-suite.js +93 -0
  275. package/dist/esm/event-bus/implementations/_shared/event-bus-adapter.test-suite.js.map +1 -0
  276. package/dist/esm/event-bus/implementations/_shared/event-bus.test-suite.js +332 -0
  277. package/dist/esm/event-bus/implementations/_shared/event-bus.test-suite.js.map +1 -0
  278. package/dist/esm/event-bus/implementations/adapters/_module.js +1 -1
  279. package/dist/esm/event-bus/implementations/adapters/_module.js.map +1 -1
  280. package/dist/esm/event-bus/implementations/adapters/memory-event-bus-adapter/memory-event-bus-adapter.js +19 -9
  281. package/dist/esm/event-bus/implementations/adapters/memory-event-bus-adapter/memory-event-bus-adapter.js.map +1 -1
  282. package/dist/esm/event-bus/implementations/adapters/no-op-event-bus-adapter/no-op-event-bus-adapter.js +7 -1
  283. package/dist/esm/event-bus/implementations/adapters/no-op-event-bus-adapter/no-op-event-bus-adapter.js.map +1 -1
  284. package/dist/esm/event-bus/implementations/adapters/redis-pub-sub-event-bus-adapter/_module.js.map +1 -0
  285. package/dist/esm/event-bus/implementations/adapters/redis-pub-sub-event-bus-adapter/redis-pub-sub-event-bus-adapter.js +48 -0
  286. package/dist/esm/event-bus/implementations/adapters/redis-pub-sub-event-bus-adapter/redis-pub-sub-event-bus-adapter.js.map +1 -0
  287. package/dist/esm/event-bus/implementations/derivables/event-bus-factory.js +4 -5
  288. package/dist/esm/event-bus/implementations/derivables/event-bus-factory.js.map +1 -1
  289. package/dist/esm/event-bus/implementations/derivables/event-bus.js +97 -34
  290. package/dist/esm/event-bus/implementations/derivables/event-bus.js.map +1 -1
  291. package/dist/esm/serde/contracts/_module.js +3 -0
  292. package/dist/esm/serde/contracts/_module.js.map +1 -0
  293. package/dist/esm/serde/contracts/serde.contract.js +1 -0
  294. package/dist/esm/serde/contracts/serde.contract.js.map +1 -0
  295. package/dist/esm/{serializer/contracts/serializer.errors.js → serde/contracts/serde.errors.js} +5 -5
  296. package/dist/esm/serde/contracts/serde.errors.js.map +1 -0
  297. package/dist/esm/serde/implementations/_module.js +6 -0
  298. package/dist/esm/serde/implementations/_module.js.map +1 -0
  299. package/dist/esm/serde/implementations/_shared/test-utilities/_module.js +2 -0
  300. package/dist/esm/serde/implementations/_shared/test-utilities/_module.js.map +1 -0
  301. package/dist/{cjs/serializer/implementations/_shared/test-utilities/serializer.test-suite.js → esm/serde/implementations/_shared/test-utilities/serde.test-suite.js} +62 -65
  302. package/dist/esm/serde/implementations/_shared/test-utilities/serde.test-suite.js.map +1 -0
  303. package/dist/esm/serde/implementations/mongodb-serde/_module.js +2 -0
  304. package/dist/esm/serde/implementations/mongodb-serde/_module.js.map +1 -0
  305. package/dist/esm/{serializer/implementations/mongodb-serializer/mongodb-serializer.js → serde/implementations/mongodb-serde/mongodb-serde.js} +10 -10
  306. package/dist/esm/serde/implementations/mongodb-serde/mongodb-serde.js.map +1 -0
  307. package/dist/esm/serde/implementations/redis-serde/_module.js +2 -0
  308. package/dist/esm/serde/implementations/redis-serde/_module.js.map +1 -0
  309. package/dist/esm/{serializer/implementations/sql-serializer/sql-serializer.js → serde/implementations/redis-serde/redis-serde.js} +10 -10
  310. package/dist/esm/serde/implementations/redis-serde/redis-serde.js.map +1 -0
  311. package/dist/esm/serde/implementations/sql-serde/_module.js +2 -0
  312. package/dist/esm/serde/implementations/sql-serde/_module.js.map +1 -0
  313. package/dist/esm/{serializer/implementations/redis-serializer/redis-serializer.js → serde/implementations/sql-serde/sql-serde.js} +10 -10
  314. package/dist/esm/serde/implementations/sql-serde/sql-serde.js.map +1 -0
  315. package/dist/esm/serde/implementations/super-json-serde/_module.js +2 -0
  316. package/dist/esm/serde/implementations/super-json-serde/_module.js.map +1 -0
  317. package/dist/esm/{serializer/implementations/super-json-serializer/super-json-serializer.js → serde/implementations/super-json-serde/super-json-serde.js} +52 -55
  318. package/dist/esm/serde/implementations/super-json-serde/super-json-serde.js.map +1 -0
  319. package/dist/esm/utilities/_module.js +5 -4
  320. package/dist/esm/utilities/_module.js.map +1 -1
  321. package/dist/esm/utilities/contracts/_module.js +3 -0
  322. package/dist/esm/utilities/contracts/_module.js.map +1 -0
  323. package/dist/esm/utilities/contracts/deinitizable.contract.js +1 -0
  324. package/dist/esm/utilities/contracts/deinitizable.contract.js.map +1 -0
  325. package/dist/esm/utilities/contracts/initizable.contract.js +1 -0
  326. package/dist/esm/utilities/contracts/initizable.contract.js.map +1 -0
  327. package/dist/esm/utilities/{global-errors.js → errors.js} +1 -1
  328. package/dist/esm/utilities/errors.js.map +1 -0
  329. package/dist/esm/{_shared/utilities.js → utilities/functions.js} +5 -5
  330. package/dist/esm/utilities/functions.js.map +1 -0
  331. package/dist/esm/utilities/kysely/_module.js +2 -0
  332. package/dist/esm/utilities/kysely/_module.js.map +1 -0
  333. package/dist/esm/utilities/kysely/kysely-table-name-transformer-plugin.js.map +1 -0
  334. package/dist/esm/utilities/time-span/time-span.js +8 -0
  335. package/dist/esm/utilities/time-span/time-span.js.map +1 -1
  336. package/dist/esm/{_shared → utilities}/types.js.map +1 -1
  337. package/dist/types/_module.d.ts +3 -2
  338. package/dist/types/async/_module.d.ts +3 -0
  339. package/dist/types/{utilities/async/_shared.d.ts → async/async.errors.d.ts} +6 -6
  340. package/dist/types/async/backof-policies/_module.d.ts +5 -0
  341. package/dist/types/{utilities → async}/backof-policies/_shared.d.ts +1 -1
  342. package/dist/types/async/backof-policies/constant-backoff-policy/_module.d.ts +1 -0
  343. package/dist/types/{utilities → async}/backof-policies/constant-backoff-policy/constant-backoff-policy.d.ts +2 -2
  344. package/dist/types/async/backof-policies/exponential-backoff-policy/_module.d.ts +1 -0
  345. package/dist/types/{utilities → async}/backof-policies/exponential-backoff-policy/exponential-backoff-policy.d.ts +2 -2
  346. package/dist/types/async/backof-policies/linear-backoff-policy/_module.d.ts +1 -0
  347. package/dist/types/{utilities → async}/backof-policies/linear-backoff-policy/linear-backoff-policy.d.ts +2 -2
  348. package/dist/types/async/backof-policies/polynomial-backoff-policy/_module.d.ts +1 -0
  349. package/dist/types/{utilities → async}/backof-policies/polynomial-backoff-policy/polynomial-backoff-policy.d.ts +2 -2
  350. package/dist/types/async/utilities/_module.d.ts +2 -0
  351. package/dist/types/async/utilities/abort/_module.d.ts +2 -0
  352. package/dist/types/async/utilities/abort/abort-and-fail.d.ts +4 -0
  353. package/dist/types/async/utilities/abort/abort.d.ts +9 -0
  354. package/dist/types/async/utilities/delay/_module.d.ts +1 -0
  355. package/dist/types/async/utilities/delay/delay.d.ts +19 -0
  356. package/dist/types/async/utilities/lazy-promise/_module.d.ts +1 -0
  357. package/dist/types/async/utilities/lazy-promise/lazy-promise.d.ts +222 -0
  358. package/dist/types/async/utilities/retry/_module.d.ts +2 -0
  359. package/dist/types/async/utilities/retry/retry-or-fail.d.ts +23 -0
  360. package/dist/types/async/utilities/retry/retry.d.ts +10 -0
  361. package/dist/types/async/utilities/timeout/_module.d.ts +2 -0
  362. package/dist/types/async/utilities/timeout/timeout-and-fail.d.ts +5 -0
  363. package/dist/types/async/utilities/timeout/timeout.d.ts +10 -0
  364. package/dist/types/cache/contracts/cache-adapter.contract.d.ts +20 -6
  365. package/dist/types/cache/contracts/cache-factory.contract.d.ts +4 -4
  366. package/dist/types/cache/contracts/cache.contract.d.ts +25 -43
  367. package/dist/types/cache/contracts/cache.events.d.ts +38 -91
  368. package/dist/types/cache/implementations/_shared/cache-adapter.test-suite.d.ts +34 -25
  369. package/dist/types/cache/implementations/_shared/cache.test-suite.d.ts +54 -43
  370. package/dist/types/cache/implementations/adapters/kysely-sqlite-cache-adapter/kysely-sqlite-cache-adapter.d.ts +11 -5
  371. package/dist/types/cache/implementations/adapters/libsql-cache-adapter/libsql-cache-adapter.d.ts +22 -9
  372. package/dist/types/cache/implementations/adapters/memory-cache-adapter/memory-cache-adapter.d.ts +12 -6
  373. package/dist/types/cache/implementations/adapters/mongodb-cache-adapter/mongodb-cache-adapter.d.ts +24 -11
  374. package/dist/types/cache/implementations/adapters/no-op-cache-adapter/no-op-cache-adapter.d.ts +5 -2
  375. package/dist/types/cache/implementations/adapters/redis-cache-adapter/redis-cache-adapter.d.ts +20 -13
  376. package/dist/types/cache/implementations/adapters/sqlite-cache-adapter/sqlite-cache-adapter.d.ts +22 -9
  377. package/dist/types/cache/implementations/derivables/_module.d.ts +0 -1
  378. package/dist/types/cache/implementations/derivables/cache-factory.d.ts +5 -11
  379. package/dist/types/cache/implementations/derivables/cache.d.ts +37 -42
  380. package/dist/types/collection/contracts/async-collection.contract.d.ts +10 -6
  381. package/dist/types/collection/contracts/collection.contract.d.ts +1 -1
  382. package/dist/types/collection/implementations/async-iterable-collection/_shared/_module.d.ts +4 -1
  383. package/dist/types/collection/implementations/async-iterable-collection/_shared/async-chunk-iterable.d.ts +1 -1
  384. package/dist/types/collection/implementations/async-iterable-collection/_shared/async-chunk-while-iterable.d.ts +1 -1
  385. package/dist/types/collection/implementations/async-iterable-collection/_shared/async-cross-join-iterable.d.ts +1 -1
  386. package/dist/types/collection/implementations/async-iterable-collection/_shared/async-delay-iterable.d.ts +13 -0
  387. package/dist/types/collection/implementations/async-iterable-collection/_shared/async-entries-iterable.d.ts +1 -1
  388. package/dist/types/collection/implementations/async-iterable-collection/_shared/async-group-by-iterable.d.ts +1 -1
  389. package/dist/types/collection/implementations/async-iterable-collection/_shared/async-insert-after-iterable.d.ts +1 -1
  390. package/dist/types/collection/implementations/async-iterable-collection/_shared/async-insert-before-iterable.d.ts +1 -1
  391. package/dist/types/collection/implementations/async-iterable-collection/_shared/async-merge-iterable.d.ts +5 -6
  392. package/dist/types/collection/implementations/async-iterable-collection/_shared/async-pad-end-iterable.d.ts +1 -1
  393. package/dist/types/collection/implementations/async-iterable-collection/_shared/async-pad-start-iterable.d.ts +1 -1
  394. package/dist/types/collection/implementations/async-iterable-collection/_shared/async-partion-iterable.d.ts +1 -1
  395. package/dist/types/collection/implementations/async-iterable-collection/_shared/async-repeat-iterable.d.ts +1 -1
  396. package/dist/types/collection/implementations/async-iterable-collection/_shared/async-retry-iterable.d.ts +13 -0
  397. package/dist/types/collection/implementations/async-iterable-collection/_shared/async-reverse-iterable.d.ts +1 -1
  398. package/dist/types/collection/implementations/async-iterable-collection/_shared/async-split-iterable.d.ts +1 -1
  399. package/dist/types/collection/implementations/async-iterable-collection/_shared/async-take-until-abort-iterable.d.ts +9 -0
  400. package/dist/types/collection/implementations/async-iterable-collection/_shared/async-take-until-timeout-iterable.d.ts +13 -0
  401. package/dist/types/collection/implementations/async-iterable-collection/_shared/async-zip-iterable.d.ts +1 -1
  402. package/dist/types/collection/implementations/async-iterable-collection/async-iterable-collection.d.ts +10 -4
  403. package/dist/types/collection/implementations/iterable-collection/_shared/merge-iterable.d.ts +4 -5
  404. package/dist/types/collection/implementations/iterable-collection/iterable-collection.d.ts +4 -1
  405. package/dist/types/collection/implementations/list-collection/list-collection.d.ts +4 -1
  406. package/dist/types/event-bus/contracts/_shared.d.ts +2 -5
  407. package/dist/types/event-bus/contracts/event-bus-adapter.contract.d.ts +12 -6
  408. package/dist/types/event-bus/contracts/event-bus-factory.contract.d.ts +4 -5
  409. package/dist/types/event-bus/contracts/event-bus.contract.d.ts +58 -27
  410. package/dist/types/event-bus/contracts/event-bus.errors.d.ts +3 -3
  411. package/dist/types/event-bus/implementations/_module.d.ts +1 -1
  412. package/dist/types/event-bus/implementations/_shared/_module.d.ts +2 -0
  413. package/dist/types/event-bus/implementations/_shared/event-bus-adapter.test-suite.d.ts +68 -0
  414. package/dist/types/event-bus/implementations/_shared/event-bus.test-suite.d.ts +72 -0
  415. package/dist/types/event-bus/implementations/adapters/_module.d.ts +1 -1
  416. package/dist/types/event-bus/implementations/adapters/memory-event-bus-adapter/memory-event-bus-adapter.d.ts +10 -5
  417. package/dist/types/event-bus/implementations/adapters/no-op-event-bus-adapter/no-op-event-bus-adapter.d.ts +4 -1
  418. package/dist/types/event-bus/implementations/adapters/redis-pub-sub-event-bus-adapter/redis-pub-sub-event-bus-adapter.d.ts +50 -0
  419. package/dist/types/event-bus/implementations/derivables/event-bus-factory.d.ts +7 -8
  420. package/dist/types/event-bus/implementations/derivables/event-bus.d.ts +20 -46
  421. package/dist/types/serde/contracts/_module.d.ts +2 -0
  422. package/dist/types/serde/contracts/serde.contract.d.ts +41 -0
  423. package/dist/types/{serializer/contracts/serializer.errors.d.ts → serde/contracts/serde.errors.d.ts} +4 -4
  424. package/dist/types/serde/implementations/_module.d.ts +5 -0
  425. package/dist/types/serde/implementations/_shared/test-utilities/_module.d.ts +1 -0
  426. package/dist/types/serde/implementations/_shared/test-utilities/serde.test-suite.d.ts +18 -0
  427. package/dist/types/serde/implementations/mongodb-serde/_module.d.ts +1 -0
  428. package/dist/types/serde/implementations/mongodb-serde/mongodb-serde.d.ts +13 -0
  429. package/dist/types/serde/implementations/redis-serde/_module.d.ts +1 -0
  430. package/dist/types/serde/implementations/redis-serde/redis-serde.d.ts +13 -0
  431. package/dist/types/serde/implementations/sql-serde/_module.d.ts +1 -0
  432. package/dist/types/serde/implementations/sql-serde/sql-serde.d.ts +13 -0
  433. package/dist/types/serde/implementations/super-json-serde/_module.d.ts +1 -0
  434. package/dist/types/serde/implementations/super-json-serde/super-json-serde.d.ts +25 -0
  435. package/dist/types/utilities/_module.d.ts +5 -4
  436. package/dist/types/utilities/contracts/_module.d.ts +2 -0
  437. package/dist/types/utilities/contracts/deinitizable.contract.d.ts +9 -0
  438. package/dist/types/utilities/contracts/initizable.contract.d.ts +9 -0
  439. package/dist/types/utilities/{global-errors.d.ts → errors.d.ts} +10 -1
  440. package/dist/types/{_shared/utilities.d.ts → utilities/functions.d.ts} +4 -4
  441. package/dist/types/utilities/kysely/_module.d.ts +1 -0
  442. package/dist/types/{_shared → utilities}/kysely/kysely-table-name-transformer-plugin.d.ts +1 -1
  443. package/dist/types/utilities/time-span/time-span.d.ts +11 -2
  444. package/dist/types/{_shared → utilities}/types.d.ts +3 -8
  445. package/package.json +3 -9
  446. package/dist/cjs/_shared/kysely/_module.js.map +0 -1
  447. package/dist/cjs/_shared/kysely/kysely-table-name-transformer-plugin.js.map +0 -1
  448. package/dist/cjs/_shared/redis/_module.js.map +0 -1
  449. package/dist/cjs/_shared/redis/clear-iterable.js +0 -25
  450. package/dist/cjs/_shared/redis/clear-iterable.js.map +0 -1
  451. package/dist/cjs/_shared/redis/escape-redis-chars.js +0 -41
  452. package/dist/cjs/_shared/redis/escape-redis-chars.js.map +0 -1
  453. package/dist/cjs/_shared/redis/is-redis-type-error.js +0 -9
  454. package/dist/cjs/_shared/redis/is-redis-type-error.js.map +0 -1
  455. package/dist/cjs/_shared/utilities.js.map +0 -1
  456. package/dist/cjs/cache/implementations/derivables/base-cache.js +0 -262
  457. package/dist/cjs/cache/implementations/derivables/base-cache.js.map +0 -1
  458. package/dist/cjs/collection/implementations/async-iterable-collection/_shared/async-error-handler-iterable.js +0 -31
  459. package/dist/cjs/collection/implementations/async-iterable-collection/_shared/async-error-handler-iterable.js.map +0 -1
  460. package/dist/cjs/event-bus/implementations/_shared/test-utilities/_module.js.map +0 -1
  461. package/dist/cjs/event-bus/implementations/_shared/test-utilities/event-bus-adapter.test-suite.js +0 -51
  462. package/dist/cjs/event-bus/implementations/_shared/test-utilities/event-bus-adapter.test-suite.js.map +0 -1
  463. package/dist/cjs/event-bus/implementations/adapters/redis-event-bus-adapter/_module.js.map +0 -1
  464. package/dist/cjs/event-bus/implementations/adapters/redis-event-bus-adapter/redis-event-bus-adapter.js +0 -45
  465. package/dist/cjs/event-bus/implementations/adapters/redis-event-bus-adapter/redis-event-bus-adapter.js.map +0 -1
  466. package/dist/cjs/event-bus/implementations/derivables/base-event-bus.js +0 -47
  467. package/dist/cjs/event-bus/implementations/derivables/base-event-bus.js.map +0 -1
  468. package/dist/cjs/event-bus/implementations/derivables/with-namespace-event-bus-adapter.js +0 -42
  469. package/dist/cjs/event-bus/implementations/derivables/with-namespace-event-bus-adapter.js.map +0 -1
  470. package/dist/cjs/serializer/contracts/_module.js.map +0 -1
  471. package/dist/cjs/serializer/contracts/serializer.contract.js.map +0 -1
  472. package/dist/cjs/serializer/contracts/serializer.errors.js.map +0 -1
  473. package/dist/cjs/serializer/implementations/_module.js +0 -22
  474. package/dist/cjs/serializer/implementations/_module.js.map +0 -1
  475. package/dist/cjs/serializer/implementations/_shared/test-utilities/_module.js.map +0 -1
  476. package/dist/cjs/serializer/implementations/_shared/test-utilities/serializer.test-suite.js.map +0 -1
  477. package/dist/cjs/serializer/implementations/mongodb-serializer/_module.js.map +0 -1
  478. package/dist/cjs/serializer/implementations/mongodb-serializer/mongodb-serializer.js +0 -36
  479. package/dist/cjs/serializer/implementations/mongodb-serializer/mongodb-serializer.js.map +0 -1
  480. package/dist/cjs/serializer/implementations/redis-serializer/_module.js.map +0 -1
  481. package/dist/cjs/serializer/implementations/redis-serializer/redis-serializer.js +0 -37
  482. package/dist/cjs/serializer/implementations/redis-serializer/redis-serializer.js.map +0 -1
  483. package/dist/cjs/serializer/implementations/sql-serializer/_module.js.map +0 -1
  484. package/dist/cjs/serializer/implementations/sql-serializer/sql-serializer.js +0 -37
  485. package/dist/cjs/serializer/implementations/sql-serializer/sql-serializer.js.map +0 -1
  486. package/dist/cjs/serializer/implementations/super-json-serializer/_module.js +0 -18
  487. package/dist/cjs/serializer/implementations/super-json-serializer/_module.js.map +0 -1
  488. package/dist/cjs/serializer/implementations/super-json-serializer/super-json-serializer.js.map +0 -1
  489. package/dist/cjs/utilities/async/_module.js +0 -29
  490. package/dist/cjs/utilities/async/_module.js.map +0 -1
  491. package/dist/cjs/utilities/async/_shared.js.map +0 -1
  492. package/dist/cjs/utilities/async/abortable/_module.js.map +0 -1
  493. package/dist/cjs/utilities/async/abortable/abortable.js +0 -48
  494. package/dist/cjs/utilities/async/abortable/abortable.js.map +0 -1
  495. package/dist/cjs/utilities/async/abortable-iterable/_module.js.map +0 -1
  496. package/dist/cjs/utilities/async/abortable-iterable/abortable-iterable.js +0 -32
  497. package/dist/cjs/utilities/async/abortable-iterable/abortable-iterable.js.map +0 -1
  498. package/dist/cjs/utilities/async/delay/_module.js.map +0 -1
  499. package/dist/cjs/utilities/async/delay/delay.js +0 -24
  500. package/dist/cjs/utilities/async/delay/delay.js.map +0 -1
  501. package/dist/cjs/utilities/async/delay-iterable/_module.js.map +0 -1
  502. package/dist/cjs/utilities/async/delay-iterable/delay-iterable.js +0 -36
  503. package/dist/cjs/utilities/async/delay-iterable/delay-iterable.js.map +0 -1
  504. package/dist/cjs/utilities/async/lazy-promise/_module.js.map +0 -1
  505. package/dist/cjs/utilities/async/lazy-promise/lazy-promise.js +0 -22
  506. package/dist/cjs/utilities/async/lazy-promise/lazy-promise.js.map +0 -1
  507. package/dist/cjs/utilities/async/retry/_module.js.map +0 -1
  508. package/dist/cjs/utilities/async/retry/retry.js +0 -43
  509. package/dist/cjs/utilities/async/retry/retry.js.map +0 -1
  510. package/dist/cjs/utilities/async/retry-iterable/_module.js +0 -18
  511. package/dist/cjs/utilities/async/retry-iterable/_module.js.map +0 -1
  512. package/dist/cjs/utilities/async/retry-iterable/retry-iterable.js +0 -32
  513. package/dist/cjs/utilities/async/retry-iterable/retry-iterable.js.map +0 -1
  514. package/dist/cjs/utilities/async/timeout/_module.js.map +0 -1
  515. package/dist/cjs/utilities/async/timeout/timeout.js +0 -28
  516. package/dist/cjs/utilities/async/timeout/timeout.js.map +0 -1
  517. package/dist/cjs/utilities/async/timeout-iterable/_module.js +0 -18
  518. package/dist/cjs/utilities/async/timeout-iterable/_module.js.map +0 -1
  519. package/dist/cjs/utilities/async/timeout-iterable/timeout-iterable.js +0 -11
  520. package/dist/cjs/utilities/async/timeout-iterable/timeout-iterable.js.map +0 -1
  521. package/dist/cjs/utilities/backof-policies/_module.js.map +0 -1
  522. package/dist/cjs/utilities/backof-policies/_shared.js.map +0 -1
  523. package/dist/cjs/utilities/backof-policies/constant-backoff-policy/_module.js +0 -18
  524. package/dist/cjs/utilities/backof-policies/constant-backoff-policy/_module.js.map +0 -1
  525. package/dist/cjs/utilities/backof-policies/constant-backoff-policy/constant-backoff-policy.js.map +0 -1
  526. package/dist/cjs/utilities/backof-policies/exponential-backoff-policy/_module.js +0 -18
  527. package/dist/cjs/utilities/backof-policies/exponential-backoff-policy/_module.js.map +0 -1
  528. package/dist/cjs/utilities/backof-policies/exponential-backoff-policy/exponential-backoff-policy.js.map +0 -1
  529. package/dist/cjs/utilities/backof-policies/linear-backoff-policy/_module.js +0 -18
  530. package/dist/cjs/utilities/backof-policies/linear-backoff-policy/_module.js.map +0 -1
  531. package/dist/cjs/utilities/backof-policies/linear-backoff-policy/linear-backoff-policy.js.map +0 -1
  532. package/dist/cjs/utilities/backof-policies/polynomial-backoff-policy/_module.js +0 -18
  533. package/dist/cjs/utilities/backof-policies/polynomial-backoff-policy/_module.js.map +0 -1
  534. package/dist/cjs/utilities/backof-policies/polynomial-backoff-policy/polynomial-backoff-policy.js.map +0 -1
  535. package/dist/cjs/utilities/global-errors.js.map +0 -1
  536. package/dist/cjs/utilities/validation/_module.js +0 -22
  537. package/dist/cjs/utilities/validation/_module.js.map +0 -1
  538. package/dist/esm/_shared/kysely/_module.js +0 -2
  539. package/dist/esm/_shared/kysely/_module.js.map +0 -1
  540. package/dist/esm/_shared/kysely/kysely-table-name-transformer-plugin.js.map +0 -1
  541. package/dist/esm/_shared/redis/_module.js +0 -4
  542. package/dist/esm/_shared/redis/_module.js.map +0 -1
  543. package/dist/esm/_shared/redis/clear-iterable.js +0 -21
  544. package/dist/esm/_shared/redis/clear-iterable.js.map +0 -1
  545. package/dist/esm/_shared/redis/escape-redis-chars.js +0 -38
  546. package/dist/esm/_shared/redis/escape-redis-chars.js.map +0 -1
  547. package/dist/esm/_shared/redis/is-redis-type-error.js +0 -6
  548. package/dist/esm/_shared/redis/is-redis-type-error.js.map +0 -1
  549. package/dist/esm/_shared/utilities.js.map +0 -1
  550. package/dist/esm/cache/implementations/derivables/base-cache.js +0 -258
  551. package/dist/esm/cache/implementations/derivables/base-cache.js.map +0 -1
  552. package/dist/esm/collection/implementations/async-iterable-collection/_shared/async-error-handler-iterable.js +0 -27
  553. package/dist/esm/collection/implementations/async-iterable-collection/_shared/async-error-handler-iterable.js.map +0 -1
  554. package/dist/esm/event-bus/implementations/_shared/test-utilities/_module.js +0 -2
  555. package/dist/esm/event-bus/implementations/_shared/test-utilities/_module.js.map +0 -1
  556. package/dist/esm/event-bus/implementations/_shared/test-utilities/event-bus-adapter.test-suite.js +0 -48
  557. package/dist/esm/event-bus/implementations/_shared/test-utilities/event-bus-adapter.test-suite.js.map +0 -1
  558. package/dist/esm/event-bus/implementations/adapters/redis-event-bus-adapter/_module.js.map +0 -1
  559. package/dist/esm/event-bus/implementations/adapters/redis-event-bus-adapter/redis-event-bus-adapter.js +0 -41
  560. package/dist/esm/event-bus/implementations/adapters/redis-event-bus-adapter/redis-event-bus-adapter.js.map +0 -1
  561. package/dist/esm/event-bus/implementations/derivables/base-event-bus.js +0 -43
  562. package/dist/esm/event-bus/implementations/derivables/base-event-bus.js.map +0 -1
  563. package/dist/esm/event-bus/implementations/derivables/with-namespace-event-bus-adapter.js +0 -38
  564. package/dist/esm/event-bus/implementations/derivables/with-namespace-event-bus-adapter.js.map +0 -1
  565. package/dist/esm/serializer/contracts/_module.js +0 -3
  566. package/dist/esm/serializer/contracts/_module.js.map +0 -1
  567. package/dist/esm/serializer/contracts/serializer.contract.js +0 -1
  568. package/dist/esm/serializer/contracts/serializer.contract.js.map +0 -1
  569. package/dist/esm/serializer/contracts/serializer.errors.js.map +0 -1
  570. package/dist/esm/serializer/implementations/_module.js +0 -6
  571. package/dist/esm/serializer/implementations/_module.js.map +0 -1
  572. package/dist/esm/serializer/implementations/_shared/test-utilities/_module.js +0 -2
  573. package/dist/esm/serializer/implementations/_shared/test-utilities/_module.js.map +0 -1
  574. package/dist/esm/serializer/implementations/_shared/test-utilities/serializer.test-suite.js.map +0 -1
  575. package/dist/esm/serializer/implementations/mongodb-serializer/_module.js +0 -2
  576. package/dist/esm/serializer/implementations/mongodb-serializer/_module.js.map +0 -1
  577. package/dist/esm/serializer/implementations/mongodb-serializer/mongodb-serializer.js.map +0 -1
  578. package/dist/esm/serializer/implementations/redis-serializer/_module.js +0 -2
  579. package/dist/esm/serializer/implementations/redis-serializer/_module.js.map +0 -1
  580. package/dist/esm/serializer/implementations/redis-serializer/redis-serializer.js.map +0 -1
  581. package/dist/esm/serializer/implementations/sql-serializer/_module.js +0 -2
  582. package/dist/esm/serializer/implementations/sql-serializer/_module.js.map +0 -1
  583. package/dist/esm/serializer/implementations/sql-serializer/sql-serializer.js.map +0 -1
  584. package/dist/esm/serializer/implementations/super-json-serializer/_module.js +0 -2
  585. package/dist/esm/serializer/implementations/super-json-serializer/_module.js.map +0 -1
  586. package/dist/esm/serializer/implementations/super-json-serializer/super-json-serializer.js.map +0 -1
  587. package/dist/esm/utilities/async/_module.js +0 -11
  588. package/dist/esm/utilities/async/_module.js.map +0 -1
  589. package/dist/esm/utilities/async/_shared.js.map +0 -1
  590. package/dist/esm/utilities/async/abortable/_module.js +0 -2
  591. package/dist/esm/utilities/async/abortable/_module.js.map +0 -1
  592. package/dist/esm/utilities/async/abortable/abortable.js.map +0 -1
  593. package/dist/esm/utilities/async/abortable-iterable/_module.js +0 -2
  594. package/dist/esm/utilities/async/abortable-iterable/_module.js.map +0 -1
  595. package/dist/esm/utilities/async/abortable-iterable/abortable-iterable.js +0 -29
  596. package/dist/esm/utilities/async/abortable-iterable/abortable-iterable.js.map +0 -1
  597. package/dist/esm/utilities/async/delay/_module.js +0 -2
  598. package/dist/esm/utilities/async/delay/_module.js.map +0 -1
  599. package/dist/esm/utilities/async/delay/delay.js +0 -21
  600. package/dist/esm/utilities/async/delay/delay.js.map +0 -1
  601. package/dist/esm/utilities/async/delay-iterable/_module.js +0 -2
  602. package/dist/esm/utilities/async/delay-iterable/_module.js.map +0 -1
  603. package/dist/esm/utilities/async/delay-iterable/delay-iterable.js +0 -33
  604. package/dist/esm/utilities/async/delay-iterable/delay-iterable.js.map +0 -1
  605. package/dist/esm/utilities/async/lazy-promise/_module.js +0 -2
  606. package/dist/esm/utilities/async/lazy-promise/_module.js.map +0 -1
  607. package/dist/esm/utilities/async/lazy-promise/lazy-promise.js +0 -17
  608. package/dist/esm/utilities/async/lazy-promise/lazy-promise.js.map +0 -1
  609. package/dist/esm/utilities/async/retry/_module.js +0 -2
  610. package/dist/esm/utilities/async/retry/_module.js.map +0 -1
  611. package/dist/esm/utilities/async/retry/retry.js +0 -40
  612. package/dist/esm/utilities/async/retry/retry.js.map +0 -1
  613. package/dist/esm/utilities/async/retry-iterable/_module.js +0 -2
  614. package/dist/esm/utilities/async/retry-iterable/_module.js.map +0 -1
  615. package/dist/esm/utilities/async/retry-iterable/retry-iterable.js +0 -29
  616. package/dist/esm/utilities/async/retry-iterable/retry-iterable.js.map +0 -1
  617. package/dist/esm/utilities/async/timeout/_module.js +0 -2
  618. package/dist/esm/utilities/async/timeout/_module.js.map +0 -1
  619. package/dist/esm/utilities/async/timeout/timeout.js +0 -25
  620. package/dist/esm/utilities/async/timeout/timeout.js.map +0 -1
  621. package/dist/esm/utilities/async/timeout-iterable/_module.js +0 -2
  622. package/dist/esm/utilities/async/timeout-iterable/_module.js.map +0 -1
  623. package/dist/esm/utilities/async/timeout-iterable/timeout-iterable.js +0 -8
  624. package/dist/esm/utilities/async/timeout-iterable/timeout-iterable.js.map +0 -1
  625. package/dist/esm/utilities/backof-policies/_module.js +0 -5
  626. package/dist/esm/utilities/backof-policies/_module.js.map +0 -1
  627. package/dist/esm/utilities/backof-policies/_shared.js.map +0 -1
  628. package/dist/esm/utilities/backof-policies/constant-backoff-policy/_module.js +0 -2
  629. package/dist/esm/utilities/backof-policies/constant-backoff-policy/_module.js.map +0 -1
  630. package/dist/esm/utilities/backof-policies/constant-backoff-policy/constant-backoff-policy.js.map +0 -1
  631. package/dist/esm/utilities/backof-policies/exponential-backoff-policy/_module.js +0 -2
  632. package/dist/esm/utilities/backof-policies/exponential-backoff-policy/_module.js.map +0 -1
  633. package/dist/esm/utilities/backof-policies/exponential-backoff-policy/exponential-backoff-policy.js.map +0 -1
  634. package/dist/esm/utilities/backof-policies/linear-backoff-policy/_module.js +0 -2
  635. package/dist/esm/utilities/backof-policies/linear-backoff-policy/_module.js.map +0 -1
  636. package/dist/esm/utilities/backof-policies/linear-backoff-policy/linear-backoff-policy.js.map +0 -1
  637. package/dist/esm/utilities/backof-policies/polynomial-backoff-policy/_module.js +0 -2
  638. package/dist/esm/utilities/backof-policies/polynomial-backoff-policy/_module.js.map +0 -1
  639. package/dist/esm/utilities/backof-policies/polynomial-backoff-policy/polynomial-backoff-policy.js.map +0 -1
  640. package/dist/esm/utilities/global-errors.js.map +0 -1
  641. package/dist/esm/utilities/validation/_module.js +0 -17
  642. package/dist/esm/utilities/validation/_module.js.map +0 -1
  643. package/dist/types/_shared/kysely/_module.d.ts +0 -1
  644. package/dist/types/_shared/redis/_module.d.ts +0 -3
  645. package/dist/types/_shared/redis/clear-iterable.d.ts +0 -13
  646. package/dist/types/_shared/redis/escape-redis-chars.d.ts +0 -7
  647. package/dist/types/_shared/redis/is-redis-type-error.d.ts +0 -7
  648. package/dist/types/cache/implementations/derivables/base-cache.d.ts +0 -57
  649. package/dist/types/collection/implementations/async-iterable-collection/_shared/async-error-handler-iterable.d.ts +0 -12
  650. package/dist/types/event-bus/implementations/_shared/test-utilities/_module.d.ts +0 -1
  651. package/dist/types/event-bus/implementations/_shared/test-utilities/event-bus-adapter.test-suite.d.ts +0 -36
  652. package/dist/types/event-bus/implementations/adapters/redis-event-bus-adapter/redis-event-bus-adapter.d.ts +0 -43
  653. package/dist/types/event-bus/implementations/derivables/base-event-bus.d.ts +0 -23
  654. package/dist/types/event-bus/implementations/derivables/with-namespace-event-bus-adapter.d.ts +0 -16
  655. package/dist/types/serializer/contracts/_module.d.ts +0 -2
  656. package/dist/types/serializer/contracts/serializer.contract.d.ts +0 -16
  657. package/dist/types/serializer/implementations/_module.d.ts +0 -5
  658. package/dist/types/serializer/implementations/_shared/test-utilities/_module.d.ts +0 -1
  659. package/dist/types/serializer/implementations/_shared/test-utilities/serializer.test-suite.d.ts +0 -18
  660. package/dist/types/serializer/implementations/mongodb-serializer/_module.d.ts +0 -1
  661. package/dist/types/serializer/implementations/mongodb-serializer/mongodb-serializer.d.ts +0 -13
  662. package/dist/types/serializer/implementations/redis-serializer/_module.d.ts +0 -1
  663. package/dist/types/serializer/implementations/redis-serializer/redis-serializer.d.ts +0 -13
  664. package/dist/types/serializer/implementations/sql-serializer/_module.d.ts +0 -1
  665. package/dist/types/serializer/implementations/sql-serializer/sql-serializer.d.ts +0 -13
  666. package/dist/types/serializer/implementations/super-json-serializer/_module.d.ts +0 -1
  667. package/dist/types/serializer/implementations/super-json-serializer/super-json-serializer.d.ts +0 -37
  668. package/dist/types/utilities/async/_module.d.ts +0 -10
  669. package/dist/types/utilities/async/abortable/_module.d.ts +0 -1
  670. package/dist/types/utilities/async/abortable/abortable.d.ts +0 -39
  671. package/dist/types/utilities/async/abortable-iterable/_module.d.ts +0 -1
  672. package/dist/types/utilities/async/abortable-iterable/abortable-iterable.d.ts +0 -36
  673. package/dist/types/utilities/async/delay/_module.d.ts +0 -1
  674. package/dist/types/utilities/async/delay/delay.d.ts +0 -38
  675. package/dist/types/utilities/async/delay-iterable/_module.d.ts +0 -1
  676. package/dist/types/utilities/async/delay-iterable/delay-iterable.d.ts +0 -57
  677. package/dist/types/utilities/async/lazy-promise/_module.d.ts +0 -1
  678. package/dist/types/utilities/async/lazy-promise/lazy-promise.d.ts +0 -28
  679. package/dist/types/utilities/async/retry/_module.d.ts +0 -1
  680. package/dist/types/utilities/async/retry/retry.d.ts +0 -89
  681. package/dist/types/utilities/async/retry-iterable/_module.d.ts +0 -1
  682. package/dist/types/utilities/async/retry-iterable/retry-iterable.d.ts +0 -86
  683. package/dist/types/utilities/async/timeout/_module.d.ts +0 -1
  684. package/dist/types/utilities/async/timeout/timeout.d.ts +0 -40
  685. package/dist/types/utilities/async/timeout-iterable/_module.d.ts +0 -1
  686. package/dist/types/utilities/async/timeout-iterable/timeout-iterable.d.ts +0 -64
  687. package/dist/types/utilities/backof-policies/_module.d.ts +0 -5
  688. package/dist/types/utilities/backof-policies/constant-backoff-policy/_module.d.ts +0 -1
  689. package/dist/types/utilities/backof-policies/exponential-backoff-policy/_module.d.ts +0 -1
  690. package/dist/types/utilities/backof-policies/linear-backoff-policy/_module.d.ts +0 -1
  691. package/dist/types/utilities/backof-policies/polynomial-backoff-policy/_module.d.ts +0 -1
  692. package/dist/types/utilities/validation/_module.d.ts +0 -32
  693. /package/dist/cjs/{utilities → async}/backof-policies/_shared.js +0 -0
  694. /package/dist/cjs/event-bus/implementations/adapters/{redis-event-bus-adapter → redis-pub-sub-event-bus-adapter}/_module.js +0 -0
  695. /package/dist/cjs/{_shared → utilities}/kysely/kysely-table-name-transformer-plugin.js +0 -0
  696. /package/dist/cjs/{_shared → utilities}/types.js +0 -0
  697. /package/dist/esm/{utilities → async}/backof-policies/_shared.js +0 -0
  698. /package/dist/esm/event-bus/implementations/adapters/{redis-event-bus-adapter → redis-pub-sub-event-bus-adapter}/_module.js +0 -0
  699. /package/dist/esm/{_shared → utilities}/kysely/kysely-table-name-transformer-plugin.js +0 -0
  700. /package/dist/esm/{_shared → utilities}/types.js +0 -0
  701. /package/dist/types/event-bus/implementations/adapters/{redis-event-bus-adapter → redis-pub-sub-event-bus-adapter}/_module.d.ts +0 -0
@@ -0,0 +1,36 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.AsyncTakeUntilAbortIterable = void 0;
4
+ const _module_1 = require("../../../../async/utilities/abort/_module");
5
+ class AsyncTakeUntilAbortIterable {
6
+ iterable;
7
+ abortSignal;
8
+ constructor(iterable, abortSignal) {
9
+ this.iterable = iterable;
10
+ this.abortSignal = abortSignal;
11
+ }
12
+ async *[Symbol.asyncIterator]() {
13
+ const iterator = this.iterable[Symbol.asyncIterator]();
14
+ let [result] = await (0, _module_1.abort)(() => iterator.next(), this.abortSignal);
15
+ if (result === null) {
16
+ return;
17
+ }
18
+ yield result.value;
19
+ while (!result.done) {
20
+ if (this.abortSignal.aborted) {
21
+ return;
22
+ }
23
+ const [result_] = await (0, _module_1.abort)(() => iterator.next(), this.abortSignal);
24
+ if (result_ === null) {
25
+ return;
26
+ }
27
+ result = result_;
28
+ if (result.done) {
29
+ return result.value;
30
+ }
31
+ yield result.value;
32
+ }
33
+ }
34
+ }
35
+ exports.AsyncTakeUntilAbortIterable = AsyncTakeUntilAbortIterable;
36
+ //# sourceMappingURL=async-take-until-abort-iterable.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"async-take-until-abort-iterable.js","sourceRoot":"","sources":["../../../../../../src/collection/implementations/async-iterable-collection/_shared/async-take-until-abort-iterable.ts"],"names":[],"mappings":";;;AAGA,6DAAwD;AAKxD,MAAa,2BAA2B;IAIf;IACA;IAFrB,YACqB,QAA+B,EAC/B,WAAwB;QADxB,aAAQ,GAAR,QAAQ,CAAuB;QAC/B,gBAAW,GAAX,WAAW,CAAa;IAC1C,CAAC;IAEJ,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC;QACzB,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE,CAAC;QACvD,IAAI,CAAC,MAAM,CAAC,GAAG,MAAM,IAAA,eAAK,EAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;QACpE,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;YAClB,OAAO;QACX,CAAC;QACD,MAAM,MAAM,CAAC,KAAK,CAAC;QAEnB,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;YAClB,IAAI,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC;gBAC3B,OAAO;YACX,CAAC;YACD,MAAM,CAAC,OAAO,CAAC,GAAG,MAAM,IAAA,eAAK,EACzB,GAAG,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,EACrB,IAAI,CAAC,WAAW,CACnB,CAAC;YACF,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;gBACnB,OAAO;YACX,CAAC;YACD,MAAM,GAAG,OAAO,CAAC;YACjB,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;gBAEd,OAAO,MAAM,CAAC,KAAK,CAAC;YACxB,CAAC;YACD,MAAM,MAAM,CAAC,KAAK,CAAC;QACvB,CAAC;IACL,CAAC;CACJ;AAnCD,kEAmCC"}
@@ -0,0 +1,48 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.AsyncTakeUntilTimeoutIterable = void 0;
4
+ const _module_1 = require("../../../../async/utilities/abort/_module");
5
+ class AsyncTakeUntilTimeoutIterable {
6
+ iterable;
7
+ time;
8
+ constructor(iterable, time) {
9
+ this.iterable = iterable;
10
+ this.time = time;
11
+ }
12
+ async *[Symbol.asyncIterator]() {
13
+ const abortController = new AbortController();
14
+ const timeoutId = setTimeout(() => {
15
+ abortController.abort("");
16
+ }, this.time.toMilliseconds());
17
+ try {
18
+ const iterator = this.iterable[Symbol.asyncIterator]();
19
+ let [result] = await (0, _module_1.abort)(() => iterator.next(), abortController.signal);
20
+ if (result === null) {
21
+ return;
22
+ }
23
+ yield result.value;
24
+ while (!result.done) {
25
+ if (abortController.signal.aborted) {
26
+ return;
27
+ }
28
+ const [result_] = await (0, _module_1.abort)(() => iterator.next(), abortController.signal);
29
+ if (result_ === null) {
30
+ return;
31
+ }
32
+ result = result_;
33
+ if (result.done) {
34
+ return result.value;
35
+ }
36
+ yield result.value;
37
+ }
38
+ }
39
+ catch {
40
+ return;
41
+ }
42
+ finally {
43
+ clearTimeout(timeoutId);
44
+ }
45
+ }
46
+ }
47
+ exports.AsyncTakeUntilTimeoutIterable = AsyncTakeUntilTimeoutIterable;
48
+ //# sourceMappingURL=async-take-until-timeout-iterable.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"async-take-until-timeout-iterable.js","sourceRoot":"","sources":["../../../../../../src/collection/implementations/async-iterable-collection/_shared/async-take-until-timeout-iterable.ts"],"names":[],"mappings":";;;AAKA,6DAAwD;AAKxD,MAAa,6BAA6B;IAIjB;IACA;IAFrB,YACqB,QAA+B,EAC/B,IAAc;QADd,aAAQ,GAAR,QAAQ,CAAuB;QAC/B,SAAI,GAAJ,IAAI,CAAU;IAChC,CAAC;IAEJ,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC;QACzB,MAAM,eAAe,GAAG,IAAI,eAAe,EAAE,CAAC;QAC9C,MAAM,SAAS,GAAG,UAAU,CAAC,GAAG,EAAE;YAC9B,eAAe,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAC9B,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC;QAC/B,IAAI,CAAC;YACD,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE,CAAC;YACvD,IAAI,CAAC,MAAM,CAAC,GAAG,MAAM,IAAA,eAAK,EACtB,GAAG,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,EACrB,eAAe,CAAC,MAAM,CACzB,CAAC;YACF,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;gBAClB,OAAO;YACX,CAAC;YACD,MAAM,MAAM,CAAC,KAAK,CAAC;YAEnB,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;gBAClB,IAAI,eAAe,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;oBACjC,OAAO;gBACX,CAAC;gBACD,MAAM,CAAC,OAAO,CAAC,GAAG,MAAM,IAAA,eAAK,EACzB,GAAG,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,EACrB,eAAe,CAAC,MAAM,CACzB,CAAC;gBACF,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;oBACnB,OAAO;gBACX,CAAC;gBACD,MAAM,GAAG,OAAO,CAAC;gBACjB,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;oBAEd,OAAO,MAAM,CAAC,KAAK,CAAC;gBACxB,CAAC;gBACD,MAAM,MAAM,CAAC,KAAK,CAAC;YACvB,CAAC;QACL,CAAC;QAAC,MAAM,CAAC;YACL,OAAO;QACX,CAAC;gBAAS,CAAC;YACP,YAAY,CAAC,SAAS,CAAC,CAAC;QAC5B,CAAC;IACL,CAAC;CACJ;AAhDD,sEAgDC"}
@@ -3,17 +3,38 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.AsyncIterableCollection = void 0;
4
4
  const _module_1 = require("../../../collection/contracts/_module");
5
5
  const _module_2 = require("../../../collection/implementations/async-iterable-collection/_shared/_module");
6
- const utilities_1 = require("../../../_shared/utilities");
7
6
  const _module_3 = require("../../../utilities/_module");
8
- const _module_4 = require("../../../utilities/_module");
7
+ const _module_4 = require("../../../async/_module");
9
8
  class AsyncIterableCollection {
10
9
  iterable;
10
+ settings;
11
+ static concat(iterables) {
12
+ return new AsyncIterableCollection(new _module_2.AsyncMergeIterable(iterables));
13
+ }
14
+ static difference(iterableA, iterableB, selectFn) {
15
+ return new AsyncIterableCollection(iterableA).difference(iterableB, selectFn);
16
+ }
17
+ static zip(iterableA, iterableB) {
18
+ return new AsyncIterableCollection(iterableA).zip(iterableB);
19
+ }
11
20
  static DEFAULT_CHUNK_SIZE = 1024;
12
21
  static makeCollection = (iterable) => {
13
22
  return new AsyncIterableCollection(iterable);
14
23
  };
15
- constructor(iterable = []) {
24
+ constructor(iterable = [], settings = {}) {
16
25
  this.iterable = iterable;
26
+ this.settings = settings;
27
+ }
28
+ createLazyPromise(asyncFn) {
29
+ return new _module_4.LazyPromise(asyncFn, {
30
+ retryPolicy: (error) => {
31
+ return !(error instanceof _module_1.ItemNotFoundCollectionError ||
32
+ error instanceof _module_1.MultipleItemsFoundCollectionError ||
33
+ error instanceof _module_1.TypeCollectionError ||
34
+ error instanceof _module_1.EmptyCollectionError);
35
+ },
36
+ ...this.settings,
37
+ });
17
38
  }
18
39
  async *[Symbol.asyncIterator]() {
19
40
  yield* this.iterable;
@@ -40,7 +61,7 @@ class AsyncIterableCollection {
40
61
  return new AsyncIterableCollection(new _module_2.AsyncMapIterable(this, mapFn));
41
62
  }
42
63
  reduce(reduceFn, initialValue) {
43
- return new _module_3.LazyPromise(async () => {
64
+ return this.createLazyPromise(async () => {
44
65
  if (initialValue === undefined && (await this.isEmpty())) {
45
66
  throw new _module_1.TypeCollectionError("Reduce of empty array must be inputed a initial value");
46
67
  }
@@ -63,7 +84,7 @@ class AsyncIterableCollection {
63
84
  });
64
85
  }
65
86
  join(separator = ",") {
66
- return new _module_3.LazyPromise(async () => {
87
+ return this.createLazyPromise(async () => {
67
88
  let str = null;
68
89
  for await (const item of this) {
69
90
  if (typeof item !== "string") {
@@ -114,7 +135,7 @@ class AsyncIterableCollection {
114
135
  return this.skip((page - 1) * pageSize).take(pageSize);
115
136
  }
116
137
  sum() {
117
- return new _module_3.LazyPromise(async () => {
138
+ return this.createLazyPromise(async () => {
118
139
  if (await this.isEmpty()) {
119
140
  throw new _module_1.EmptyCollectionError("Collection is empty therby operation cannot be performed");
120
141
  }
@@ -129,7 +150,7 @@ class AsyncIterableCollection {
129
150
  });
130
151
  }
131
152
  average() {
132
- return new _module_3.LazyPromise(async () => {
153
+ return this.createLazyPromise(async () => {
133
154
  if (await this.isEmpty()) {
134
155
  throw new _module_1.EmptyCollectionError("Collection is empty therby operation cannot be performed");
135
156
  }
@@ -145,7 +166,7 @@ class AsyncIterableCollection {
145
166
  });
146
167
  }
147
168
  median() {
148
- return new _module_3.LazyPromise(async () => {
169
+ return this.createLazyPromise(async () => {
149
170
  if (await this.isEmpty()) {
150
171
  throw new _module_1.EmptyCollectionError("Collection is empty therby operation cannot be performed");
151
172
  }
@@ -184,7 +205,7 @@ class AsyncIterableCollection {
184
205
  });
185
206
  }
186
207
  min() {
187
- return new _module_3.LazyPromise(async () => {
208
+ return this.createLazyPromise(async () => {
188
209
  if (await this.isEmpty()) {
189
210
  throw new _module_1.EmptyCollectionError("Collection is empty therby operation cannot be performed");
190
211
  }
@@ -204,7 +225,7 @@ class AsyncIterableCollection {
204
225
  });
205
226
  }
206
227
  max() {
207
- return new _module_3.LazyPromise(async () => {
228
+ return this.createLazyPromise(async () => {
208
229
  if (await this.isEmpty()) {
209
230
  throw new _module_1.EmptyCollectionError("Collection is empty therby operation cannot be performed");
210
231
  }
@@ -224,7 +245,7 @@ class AsyncIterableCollection {
224
245
  });
225
246
  }
226
247
  percentage(predicateFn) {
227
- return new _module_3.LazyPromise(async () => {
248
+ return this.createLazyPromise(async () => {
228
249
  if (await this.isEmpty()) {
229
250
  throw new _module_1.EmptyCollectionError("Collection is empty therby operation cannot be performed");
230
251
  }
@@ -239,7 +260,7 @@ class AsyncIterableCollection {
239
260
  });
240
261
  }
241
262
  some(predicateFn) {
242
- return new _module_3.LazyPromise(async () => {
263
+ return this.createLazyPromise(async () => {
243
264
  for await (const [index, item] of this.entries()) {
244
265
  if (await predicateFn(item, index, this)) {
245
266
  return true;
@@ -249,7 +270,7 @@ class AsyncIterableCollection {
249
270
  });
250
271
  }
251
272
  every(predicateFn) {
252
- return new _module_3.LazyPromise(async () => {
273
+ return this.createLazyPromise(async () => {
253
274
  let isTrue = true;
254
275
  for await (const [index, item] of this.entries()) {
255
276
  isTrue &&= await predicateFn(item, index, this);
@@ -291,7 +312,7 @@ class AsyncIterableCollection {
291
312
  return new AsyncIterableCollection(new _module_2.AsyncWhenIterable(this, () => this.isNotEmpty(), callback));
292
313
  }
293
314
  pipe(callback) {
294
- return new _module_3.LazyPromise(async () => {
315
+ return this.createLazyPromise(async () => {
295
316
  return await callback(this);
296
317
  });
297
318
  }
@@ -344,10 +365,10 @@ class AsyncIterableCollection {
344
365
  return new AsyncIterableCollection(new _module_2.AsyncSliceIterable(this, start, end));
345
366
  }
346
367
  prepend(iterable) {
347
- return new AsyncIterableCollection(new _module_2.AsyncMergeIterable(iterable, this));
368
+ return new AsyncIterableCollection(new _module_2.AsyncMergeIterable([iterable, this]));
348
369
  }
349
370
  append(iterable) {
350
- return new AsyncIterableCollection(new _module_2.AsyncMergeIterable(this, iterable));
371
+ return new AsyncIterableCollection(new _module_2.AsyncMergeIterable([this, iterable]));
351
372
  }
352
373
  insertBefore(predicateFn, iterable) {
353
374
  return new AsyncIterableCollection(new _module_2.AsyncInsertBeforeIterable(this, predicateFn, iterable));
@@ -374,17 +395,17 @@ class AsyncIterableCollection {
374
395
  return this.firstOr(null, predicateFn);
375
396
  }
376
397
  firstOr(defaultValue, predicateFn = () => true) {
377
- return new _module_3.LazyPromise(async () => {
398
+ return this.createLazyPromise(async () => {
378
399
  for await (const [index, item] of this.entries()) {
379
400
  if (await predicateFn(item, index, this)) {
380
401
  return item;
381
402
  }
382
403
  }
383
- return await (0, utilities_1.simplifyAsyncLazyable)(defaultValue);
404
+ return await (0, _module_3.simplifyAsyncLazyable)(defaultValue);
384
405
  });
385
406
  }
386
407
  firstOrFail(predicateFn) {
387
- return new _module_3.LazyPromise(async () => {
408
+ return this.createLazyPromise(async () => {
388
409
  const item = await this.first(predicateFn);
389
410
  if (item === null) {
390
411
  throw new _module_1.ItemNotFoundCollectionError("Item was not found");
@@ -396,7 +417,7 @@ class AsyncIterableCollection {
396
417
  return this.lastOr(null, predicateFn);
397
418
  }
398
419
  lastOr(defaultValue, predicateFn = () => true) {
399
- return new _module_3.LazyPromise(async () => {
420
+ return this.createLazyPromise(async () => {
400
421
  let matchedItem = null;
401
422
  for await (const [index, item] of this.entries()) {
402
423
  if (await predicateFn(item, index, this)) {
@@ -406,11 +427,11 @@ class AsyncIterableCollection {
406
427
  if (matchedItem) {
407
428
  return matchedItem;
408
429
  }
409
- return await (0, utilities_1.simplifyAsyncLazyable)(defaultValue);
430
+ return await (0, _module_3.simplifyAsyncLazyable)(defaultValue);
410
431
  });
411
432
  }
412
433
  lastOrFail(predicateFn) {
413
- return new _module_3.LazyPromise(async () => {
434
+ return this.createLazyPromise(async () => {
414
435
  const item = await this.last(predicateFn);
415
436
  if (item === null) {
416
437
  throw new _module_1.ItemNotFoundCollectionError("Item was not found");
@@ -422,7 +443,7 @@ class AsyncIterableCollection {
422
443
  return this.beforeOr(null, predicateFn);
423
444
  }
424
445
  beforeOr(defaultValue, predicateFn) {
425
- return new _module_3.LazyPromise(async () => {
446
+ return this.createLazyPromise(async () => {
426
447
  let beforeItem = null, index = 0;
427
448
  for await (const item of this) {
428
449
  if ((await predicateFn(item, index, this)) && beforeItem) {
@@ -431,11 +452,11 @@ class AsyncIterableCollection {
431
452
  index++;
432
453
  beforeItem = item;
433
454
  }
434
- return await (0, utilities_1.simplifyAsyncLazyable)(defaultValue);
455
+ return await (0, _module_3.simplifyAsyncLazyable)(defaultValue);
435
456
  });
436
457
  }
437
458
  beforeOrFail(predicateFn) {
438
- return new _module_3.LazyPromise(async () => {
459
+ return this.createLazyPromise(async () => {
439
460
  const item = await this.before(predicateFn);
440
461
  if (item === null) {
441
462
  throw new _module_1.ItemNotFoundCollectionError("Item was not found");
@@ -447,7 +468,7 @@ class AsyncIterableCollection {
447
468
  return this.afterOr(null, predicateFn);
448
469
  }
449
470
  afterOr(defaultValue, predicateFn) {
450
- return new _module_3.LazyPromise(async () => {
471
+ return this.createLazyPromise(async () => {
451
472
  let hasMatched = false, index = 0;
452
473
  for await (const item of this) {
453
474
  if (hasMatched) {
@@ -456,11 +477,11 @@ class AsyncIterableCollection {
456
477
  hasMatched = await predicateFn(item, index, this);
457
478
  index++;
458
479
  }
459
- return await (0, utilities_1.simplifyAsyncLazyable)(defaultValue);
480
+ return await (0, _module_3.simplifyAsyncLazyable)(defaultValue);
460
481
  });
461
482
  }
462
483
  afterOrFail(predicateFn) {
463
- return new _module_3.LazyPromise(async () => {
484
+ return this.createLazyPromise(async () => {
464
485
  const item = await this.after(predicateFn);
465
486
  if (item === null) {
466
487
  throw new _module_1.ItemNotFoundCollectionError("Item was not found");
@@ -469,7 +490,7 @@ class AsyncIterableCollection {
469
490
  });
470
491
  }
471
492
  sole(predicateFn) {
472
- return new _module_3.LazyPromise(async () => {
493
+ return this.createLazyPromise(async () => {
473
494
  let matchedItem = null;
474
495
  for await (const [index, item] of this.entries()) {
475
496
  if (await predicateFn(item, index, this)) {
@@ -489,16 +510,16 @@ class AsyncIterableCollection {
489
510
  return this.filter((_item, index) => index % step === 0);
490
511
  }
491
512
  delay(time) {
492
- return new AsyncIterableCollection((0, _module_3.delayIterable)(this, time));
513
+ return new AsyncIterableCollection(new _module_2.AsyncDelayIterable(this, time));
493
514
  }
494
515
  takeUntilAbort(abortSignal) {
495
- return new AsyncIterableCollection(new _module_2.AsyncErrorHandlerIterable((0, _module_3.abortableIterable)(this, abortSignal), (error) => error instanceof _module_4.AbortAsyncError));
516
+ return new AsyncIterableCollection(new _module_2.AsyncTakeUntilAbortIterable(this, abortSignal));
496
517
  }
497
- takeUntilTimeout(timeInMs) {
498
- return new AsyncIterableCollection(new _module_2.AsyncErrorHandlerIterable((0, _module_4.timeoutIterable)(this, timeInMs), (error) => error instanceof _module_4.TimeoutAsyncError));
518
+ takeUntilTimeout(time) {
519
+ return new AsyncIterableCollection(new _module_2.AsyncTakeUntilTimeoutIterable(this, time));
499
520
  }
500
521
  count(predicateFn) {
501
- return new _module_3.LazyPromise(async () => {
522
+ return this.createLazyPromise(async () => {
502
523
  let size = 0;
503
524
  for await (const item of this) {
504
525
  if (await predicateFn(item, size, this)) {
@@ -512,7 +533,7 @@ class AsyncIterableCollection {
512
533
  return this.count(() => true);
513
534
  }
514
535
  isEmpty() {
515
- return new _module_3.LazyPromise(async () => {
536
+ return this.createLazyPromise(async () => {
516
537
  for await (const _ of this) {
517
538
  return false;
518
539
  }
@@ -520,12 +541,12 @@ class AsyncIterableCollection {
520
541
  });
521
542
  }
522
543
  isNotEmpty() {
523
- return new _module_3.LazyPromise(async () => {
544
+ return this.createLazyPromise(async () => {
524
545
  return !(await this.isEmpty());
525
546
  });
526
547
  }
527
548
  searchFirst(predicateFn) {
528
- return new _module_3.LazyPromise(async () => {
549
+ return this.createLazyPromise(async () => {
529
550
  for await (const [index, item] of this.entries()) {
530
551
  if (await predicateFn(item, index, this)) {
531
552
  return index;
@@ -535,7 +556,7 @@ class AsyncIterableCollection {
535
556
  });
536
557
  }
537
558
  searchLast(predicateFn) {
538
- return new _module_3.LazyPromise(async () => {
559
+ return this.createLazyPromise(async () => {
539
560
  let matchedIndex = -1;
540
561
  for await (const [index, item] of this.entries()) {
541
562
  if (await predicateFn(item, index, this)) {
@@ -546,14 +567,14 @@ class AsyncIterableCollection {
546
567
  });
547
568
  }
548
569
  forEach(callback) {
549
- return new _module_3.LazyPromise(async () => {
570
+ return this.createLazyPromise(async () => {
550
571
  for await (const [index, item] of this.entries()) {
551
572
  await callback(item, index, this);
552
573
  }
553
574
  });
554
575
  }
555
576
  toArray() {
556
- return new _module_3.LazyPromise(async () => {
577
+ return this.createLazyPromise(async () => {
557
578
  const items = [];
558
579
  for await (const item of this) {
559
580
  items.push(item);
@@ -562,7 +583,7 @@ class AsyncIterableCollection {
562
583
  });
563
584
  }
564
585
  toRecord() {
565
- return new _module_3.LazyPromise(async () => {
586
+ return this.createLazyPromise(async () => {
566
587
  const record = {};
567
588
  for await (const item of this) {
568
589
  if (!Array.isArray(item)) {
@@ -583,7 +604,7 @@ class AsyncIterableCollection {
583
604
  });
584
605
  }
585
606
  toMap() {
586
- return new _module_3.LazyPromise(async () => {
607
+ return this.createLazyPromise(async () => {
587
608
  const map = new Map();
588
609
  for await (const item of this) {
589
610
  if (!Array.isArray(item)) {
@@ -1 +1 @@
1
- {"version":3,"file":"async-iterable-collection.js","sourceRoot":"","sources":["../../../../../src/collection/implementations/async-iterable-collection/async-iterable-collection.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"async-iterable-collection.js","sourceRoot":"","sources":["../../../../../src/collection/implementations/async-iterable-collection/async-iterable-collection.ts"],"names":[],"mappings":"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"}
@@ -2,15 +2,14 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.MergeIterable = void 0;
4
4
  class MergeIterable {
5
- iterableA;
6
- iterableB;
7
- constructor(iterableA, iterableB) {
8
- this.iterableA = iterableA;
9
- this.iterableB = iterableB;
5
+ iterables;
6
+ constructor(iterables) {
7
+ this.iterables = iterables;
10
8
  }
11
9
  *[Symbol.iterator]() {
12
- yield* this.iterableA;
13
- yield* this.iterableB;
10
+ for (const iterable of this.iterables) {
11
+ yield* iterable;
12
+ }
14
13
  }
15
14
  }
16
15
  exports.MergeIterable = MergeIterable;
@@ -1 +1 @@
1
- {"version":3,"file":"merge-iterable.js","sourceRoot":"","sources":["../../../../../../src/collection/implementations/iterable-collection/_shared/merge-iterable.ts"],"names":[],"mappings":";;;AAOA,MAAa,aAAa;IAIV;IACA;IAFZ,YACY,SAA2B,EAC3B,SAA8B;QAD9B,cAAS,GAAT,SAAS,CAAkB;QAC3B,cAAS,GAAT,SAAS,CAAqB;IACvC,CAAC;IAEJ,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC;QACd,KAAK,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC;QACtB,KAAK,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC;IAC1B,CAAC;CACJ;AAZD,sCAYC"}
1
+ {"version":3,"file":"merge-iterable.js","sourceRoot":"","sources":["../../../../../../src/collection/implementations/iterable-collection/_shared/merge-iterable.ts"],"names":[],"mappings":";;;AAOA,MAAa,aAAa;IACF;IAApB,YAAoB,SAAqC;QAArC,cAAS,GAAT,SAAS,CAA4B;IAAG,CAAC;IAE7D,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC;QACd,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACpC,KAAK,CAAC,CAAC,QAAQ,CAAC;QACpB,CAAC;IACL,CAAC;CACJ;AARD,sCAQC"}
@@ -3,9 +3,18 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.IterableCollection = void 0;
4
4
  const _module_1 = require("../../../collection/contracts/_module");
5
5
  const _module_2 = require("../../../collection/implementations/iterable-collection/_shared/_module");
6
- const utilities_1 = require("../../../_shared/utilities");
6
+ const _module_3 = require("../../../utilities/_module");
7
7
  class IterableCollection {
8
8
  iterable;
9
+ static concat(iterables) {
10
+ return new IterableCollection(new _module_2.MergeIterable(iterables));
11
+ }
12
+ static difference(iterableA, iterableB, selectFn) {
13
+ return new IterableCollection(iterableA).difference(iterableB, selectFn);
14
+ }
15
+ static zip(iterableA, iterableB) {
16
+ return new IterableCollection(iterableA).zip(iterableB);
17
+ }
9
18
  static DEFAULT_CHUNK_SIZE = 1024;
10
19
  static makeCollection = (iterable = []) => {
11
20
  return new IterableCollection(iterable);
@@ -324,10 +333,10 @@ class IterableCollection {
324
333
  return new IterableCollection(new _module_2.SliceIterable(this, start, end));
325
334
  }
326
335
  prepend(iterable) {
327
- return new IterableCollection(new _module_2.MergeIterable(iterable, this));
336
+ return new IterableCollection(new _module_2.MergeIterable([iterable, this]));
328
337
  }
329
338
  append(iterable) {
330
- return new IterableCollection(new _module_2.MergeIterable(this, iterable));
339
+ return new IterableCollection(new _module_2.MergeIterable([this, iterable]));
331
340
  }
332
341
  insertBefore(predicateFn, iterable) {
333
342
  return new IterableCollection(new _module_2.InsertBeforeIterable(this, predicateFn, iterable));
@@ -361,7 +370,7 @@ class IterableCollection {
361
370
  }
362
371
  index++;
363
372
  }
364
- return (0, utilities_1.simplifyLazyable)(defaultValue);
373
+ return (0, _module_3.simplifyLazyable)(defaultValue);
365
374
  }
366
375
  firstOrFail(predicateFn) {
367
376
  const item = this.first(predicateFn);
@@ -385,7 +394,7 @@ class IterableCollection {
385
394
  if (matchedItem) {
386
395
  return matchedItem;
387
396
  }
388
- return (0, utilities_1.simplifyLazyable)(defaultValue);
397
+ return (0, _module_3.simplifyLazyable)(defaultValue);
389
398
  }
390
399
  lastOrFail(predicateFn) {
391
400
  const item = this.last(predicateFn);
@@ -406,7 +415,7 @@ class IterableCollection {
406
415
  index++;
407
416
  beforeItem = item;
408
417
  }
409
- return (0, utilities_1.simplifyLazyable)(defaultValue);
418
+ return (0, _module_3.simplifyLazyable)(defaultValue);
410
419
  }
411
420
  beforeOrFail(predicateFn) {
412
421
  const item = this.before(predicateFn);
@@ -427,7 +436,7 @@ class IterableCollection {
427
436
  hasMatched = predicateFn(item, index, this);
428
437
  index++;
429
438
  }
430
- return (0, utilities_1.simplifyLazyable)(defaultValue);
439
+ return (0, _module_3.simplifyLazyable)(defaultValue);
431
440
  }
432
441
  afterOrFail(predicateFn) {
433
442
  const item = this.after(predicateFn);