@daiso-tech/core 0.39.0 → 0.41.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 (679) hide show
  1. package/dist/backoff-policies/_module-exports.d.ts +5 -0
  2. package/dist/backoff-policies/_module-exports.js +6 -0
  3. package/dist/backoff-policies/_module-exports.js.map +1 -0
  4. package/dist/{async/backof-policies → backoff-policies}/_shared.d.ts +6 -7
  5. package/dist/{async/backof-policies → backoff-policies}/_shared.js +1 -1
  6. package/dist/backoff-policies/_shared.js.map +1 -0
  7. package/dist/backoff-policies/constant-backoff-policy/_module.d.ts +1 -0
  8. package/dist/backoff-policies/constant-backoff-policy/_module.js +2 -0
  9. package/dist/backoff-policies/constant-backoff-policy/_module.js.map +1 -0
  10. package/dist/{async/backof-policies → backoff-policies}/constant-backoff-policy/constant-backoff-policy.d.ts +6 -8
  11. package/dist/{async/backof-policies → backoff-policies}/constant-backoff-policy/constant-backoff-policy.js +8 -10
  12. package/dist/backoff-policies/constant-backoff-policy/constant-backoff-policy.js.map +1 -0
  13. package/dist/backoff-policies/exponential-backoff-policy/_module.d.ts +1 -0
  14. package/dist/backoff-policies/exponential-backoff-policy/_module.js +2 -0
  15. package/dist/backoff-policies/exponential-backoff-policy/_module.js.map +1 -0
  16. package/dist/{async/backof-policies → backoff-policies}/exponential-backoff-policy/exponential-backoff-policy.d.ts +7 -9
  17. package/dist/backoff-policies/exponential-backoff-policy/exponential-backoff-policy.js +30 -0
  18. package/dist/backoff-policies/exponential-backoff-policy/exponential-backoff-policy.js.map +1 -0
  19. package/dist/backoff-policies/linear-backoff-policy/_module.d.ts +1 -0
  20. package/dist/backoff-policies/linear-backoff-policy/_module.js +2 -0
  21. package/dist/backoff-policies/linear-backoff-policy/_module.js.map +1 -0
  22. package/dist/{async/backof-policies → backoff-policies}/linear-backoff-policy/linear-backoff-policy.d.ts +7 -9
  23. package/dist/backoff-policies/linear-backoff-policy/linear-backoff-policy.js +30 -0
  24. package/dist/backoff-policies/linear-backoff-policy/linear-backoff-policy.js.map +1 -0
  25. package/dist/backoff-policies/polynomial-backoff-policy/_module.d.ts +1 -0
  26. package/dist/backoff-policies/polynomial-backoff-policy/_module.js +2 -0
  27. package/dist/backoff-policies/polynomial-backoff-policy/_module.js.map +1 -0
  28. package/dist/{async/backof-policies → backoff-policies}/polynomial-backoff-policy/polynomial-backoff-policy.d.ts +7 -9
  29. package/dist/backoff-policies/polynomial-backoff-policy/polynomial-backoff-policy.js +30 -0
  30. package/dist/backoff-policies/polynomial-backoff-policy/polynomial-backoff-policy.js.map +1 -0
  31. package/dist/cache/contracts/cache-adapter.contract.d.ts +12 -12
  32. package/dist/cache/contracts/cache.contract.d.ts +22 -22
  33. package/dist/cache/contracts/cache.errors.d.ts +7 -14
  34. package/dist/cache/contracts/cache.errors.js +12 -24
  35. package/dist/cache/contracts/cache.errors.js.map +1 -1
  36. package/dist/cache/contracts/cache.events.d.ts +1 -1
  37. package/dist/cache/contracts/database-cache-adapter.contract.d.ts +10 -10
  38. package/dist/cache/implementations/adapters/kysely-cache-adapter/kysely-cache-adapter.d.ts +1 -1
  39. package/dist/cache/implementations/adapters/kysely-cache-adapter/kysely-cache-adapter.js +4 -4
  40. package/dist/cache/implementations/adapters/kysely-cache-adapter/kysely-cache-adapter.js.map +1 -1
  41. package/dist/cache/implementations/adapters/memory-cache-adapter/memory-cache-adapter.d.ts +1 -1
  42. package/dist/cache/implementations/adapters/memory-cache-adapter/memory-cache-adapter.js +2 -2
  43. package/dist/cache/implementations/adapters/memory-cache-adapter/memory-cache-adapter.js.map +1 -1
  44. package/dist/cache/implementations/adapters/mongodb-cache-adapter/mongodb-cache-adapter.d.ts +3 -2
  45. package/dist/cache/implementations/adapters/mongodb-cache-adapter/mongodb-cache-adapter.js +3 -3
  46. package/dist/cache/implementations/adapters/mongodb-cache-adapter/mongodb-cache-adapter.js.map +1 -1
  47. package/dist/cache/implementations/adapters/no-op-cache-adapter/no-op-cache-adapter.d.ts +10 -10
  48. package/dist/cache/implementations/adapters/no-op-cache-adapter/no-op-cache-adapter.js.map +1 -1
  49. package/dist/cache/implementations/adapters/redis-cache-adapter/redis-cache-adapter.d.ts +1 -1
  50. package/dist/cache/implementations/adapters/redis-cache-adapter/redis-cache-adapter.js +2 -2
  51. package/dist/cache/implementations/adapters/redis-cache-adapter/redis-cache-adapter.js.map +1 -1
  52. package/dist/cache/implementations/derivables/cache/cache.d.ts +38 -43
  53. package/dist/cache/implementations/derivables/cache/cache.js +106 -101
  54. package/dist/cache/implementations/derivables/cache/cache.js.map +1 -1
  55. package/dist/cache/implementations/derivables/cache/database-cache-adapter.d.ts +1 -1
  56. package/dist/cache/implementations/derivables/cache/database-cache-adapter.js +3 -3
  57. package/dist/cache/implementations/derivables/cache/database-cache-adapter.js.map +1 -1
  58. package/dist/cache/implementations/derivables/cache-factory/cache-factory.d.ts +6 -8
  59. package/dist/cache/implementations/derivables/cache-factory/cache-factory.js +5 -15
  60. package/dist/cache/implementations/derivables/cache-factory/cache-factory.js.map +1 -1
  61. package/dist/cache/implementations/test-utilities/cache-adapter.test-suite.d.ts +1 -1
  62. package/dist/cache/implementations/test-utilities/cache-adapter.test-suite.js +48 -48
  63. package/dist/cache/implementations/test-utilities/cache-adapter.test-suite.js.map +1 -1
  64. package/dist/cache/implementations/test-utilities/cache.test-suite.js +107 -107
  65. package/dist/cache/implementations/test-utilities/cache.test-suite.js.map +1 -1
  66. package/dist/cache/implementations/test-utilities/database-cache-dapter.test-suite.js +2 -1
  67. package/dist/cache/implementations/test-utilities/database-cache-dapter.test-suite.js.map +1 -1
  68. package/dist/collection/contracts/async-collection.contract.d.ts +43 -43
  69. package/dist/collection/contracts/collection.contract.d.ts +15 -1
  70. package/dist/collection/contracts/collection.contract.js +1 -3
  71. package/dist/collection/contracts/collection.contract.js.map +1 -1
  72. package/dist/collection/contracts/collection.errors.d.ts +4 -13
  73. package/dist/collection/contracts/collection.errors.js +4 -16
  74. package/dist/collection/contracts/collection.errors.js.map +1 -1
  75. package/dist/collection/implementations/async-iterable-collection/_shared/async-validate-iterable.d.ts +6 -0
  76. package/dist/collection/implementations/async-iterable-collection/_shared/async-validate-iterable.js +3 -0
  77. package/dist/collection/implementations/async-iterable-collection/_shared/async-validate-iterable.js.map +1 -1
  78. package/dist/collection/implementations/async-iterable-collection/async-iterable-collection.d.ts +40 -51
  79. package/dist/collection/implementations/async-iterable-collection/async-iterable-collection.js +31 -37
  80. package/dist/collection/implementations/async-iterable-collection/async-iterable-collection.js.map +1 -1
  81. package/dist/collection/implementations/iterable-collection/_shared/validate-iterable.d.ts +3 -0
  82. package/dist/collection/implementations/iterable-collection/_shared/validate-iterable.js +6 -0
  83. package/dist/collection/implementations/iterable-collection/_shared/validate-iterable.js.map +1 -1
  84. package/dist/collection/implementations/iterable-collection/iterable-collection.d.ts +3 -3
  85. package/dist/collection/implementations/iterable-collection/iterable-collection.js +5 -2
  86. package/dist/collection/implementations/iterable-collection/iterable-collection.js.map +1 -1
  87. package/dist/collection/implementations/list-collection/list-collection.d.ts +3 -3
  88. package/dist/collection/implementations/list-collection/list-collection.js +5 -2
  89. package/dist/collection/implementations/list-collection/list-collection.js.map +1 -1
  90. package/dist/event-bus/contracts/event-bus-adapter.contract.d.ts +3 -3
  91. package/dist/event-bus/contracts/event-bus.contract.d.ts +10 -10
  92. package/dist/event-bus/implementations/adapters/no-op-event-bus-adapter/no-op-event-bus-adapter.d.ts +3 -3
  93. package/dist/event-bus/implementations/adapters/redis-pub-sub-event-bus-adapter/redis-pub-sub-event-bus-adapter.d.ts +3 -6
  94. package/dist/event-bus/implementations/adapters/redis-pub-sub-event-bus-adapter/redis-pub-sub-event-bus-adapter.js +7 -9
  95. package/dist/event-bus/implementations/adapters/redis-pub-sub-event-bus-adapter/redis-pub-sub-event-bus-adapter.js.map +1 -1
  96. package/dist/event-bus/implementations/derivables/event-bus/event-bus.d.ts +18 -24
  97. package/dist/event-bus/implementations/derivables/event-bus/event-bus.js +51 -51
  98. package/dist/event-bus/implementations/derivables/event-bus/event-bus.js.map +1 -1
  99. package/dist/event-bus/implementations/derivables/event-bus/listener-store.d.ts +11 -4
  100. package/dist/event-bus/implementations/derivables/event-bus/listener-store.js +17 -12
  101. package/dist/event-bus/implementations/derivables/event-bus/listener-store.js.map +1 -1
  102. package/dist/event-bus/implementations/derivables/event-bus-factory/event-bus-factory.d.ts +1 -3
  103. package/dist/event-bus/implementations/derivables/event-bus-factory/event-bus-factory.js +4 -8
  104. package/dist/event-bus/implementations/derivables/event-bus-factory/event-bus-factory.js.map +1 -1
  105. package/dist/event-bus/implementations/test-utilities/event-bus-adapter.test-suite.js +36 -37
  106. package/dist/event-bus/implementations/test-utilities/event-bus-adapter.test-suite.js.map +1 -1
  107. package/dist/event-bus/implementations/test-utilities/event-bus.test-suite.js +86 -674
  108. package/dist/event-bus/implementations/test-utilities/event-bus.test-suite.js.map +1 -1
  109. package/dist/hooks/_module-exports.d.ts +3 -0
  110. package/dist/hooks/_module-exports.js +4 -0
  111. package/dist/hooks/_module-exports.js.map +1 -0
  112. package/dist/{utilities/classes/hooks → hooks}/async-hooks.d.ts +15 -26
  113. package/dist/{utilities/classes/hooks → hooks}/async-hooks.js +4 -6
  114. package/dist/hooks/async-hooks.js.map +1 -0
  115. package/dist/{utilities/classes/hooks → hooks}/hooks.d.ts +11 -18
  116. package/dist/{utilities/classes/hooks → hooks}/hooks.js +4 -5
  117. package/dist/hooks/hooks.js.map +1 -0
  118. package/dist/{utilities/classes/hooks → hooks}/types.d.ts +2 -3
  119. package/dist/hooks/types.js +5 -0
  120. package/dist/hooks/types.js.map +1 -0
  121. package/dist/lock/contracts/_module-exports.d.ts +4 -2
  122. package/dist/lock/contracts/_module-exports.js +4 -2
  123. package/dist/lock/contracts/_module-exports.js.map +1 -1
  124. package/dist/lock/contracts/database-lock-adapter.contract.d.ts +59 -14
  125. package/dist/lock/contracts/lock-adapter.contract.d.ts +22 -10
  126. package/dist/lock/contracts/lock-provider.contract.d.ts +5 -5
  127. package/dist/lock/contracts/lock-state.contract.d.ts +52 -0
  128. package/dist/lock/contracts/lock-state.contract.js +14 -0
  129. package/dist/lock/contracts/lock-state.contract.js.map +1 -0
  130. package/dist/lock/contracts/lock.contract.d.ts +72 -58
  131. package/dist/lock/contracts/lock.errors.d.ts +18 -15
  132. package/dist/lock/contracts/lock.errors.js +22 -17
  133. package/dist/lock/contracts/lock.errors.js.map +1 -1
  134. package/dist/lock/contracts/lock.events.d.ts +21 -37
  135. package/dist/lock/contracts/lock.events.js +2 -2
  136. package/dist/lock/contracts/lock.events.js.map +1 -1
  137. package/dist/lock/contracts/types.d.ts +11 -0
  138. package/dist/lock/contracts/types.js +5 -0
  139. package/dist/lock/contracts/types.js.map +1 -0
  140. package/dist/lock/implementations/adapters/kysely-lock-adapter/kysely-lock-adapter.d.ts +33 -13
  141. package/dist/lock/implementations/adapters/kysely-lock-adapter/kysely-lock-adapter.js +182 -56
  142. package/dist/lock/implementations/adapters/kysely-lock-adapter/kysely-lock-adapter.js.map +1 -1
  143. package/dist/lock/implementations/adapters/memory-lock-adapter/memory-lock-adapter.d.ts +25 -9
  144. package/dist/lock/implementations/adapters/memory-lock-adapter/memory-lock-adapter.js +80 -36
  145. package/dist/lock/implementations/adapters/memory-lock-adapter/memory-lock-adapter.js.map +1 -1
  146. package/dist/lock/implementations/adapters/mongodb-lock-adapter/mongodb-lock-adapter.d.ts +11 -12
  147. package/dist/lock/implementations/adapters/mongodb-lock-adapter/mongodb-lock-adapter.js +164 -79
  148. package/dist/lock/implementations/adapters/mongodb-lock-adapter/mongodb-lock-adapter.js.map +1 -1
  149. package/dist/lock/implementations/adapters/no-op-lock-adapter/no-op-lock-adapter.d.ts +7 -6
  150. package/dist/lock/implementations/adapters/no-op-lock-adapter/no-op-lock-adapter.js +7 -4
  151. package/dist/lock/implementations/adapters/no-op-lock-adapter/no-op-lock-adapter.js.map +1 -1
  152. package/dist/lock/implementations/adapters/redis-lock-adapter/redis-lock-adapter.d.ts +27 -9
  153. package/dist/lock/implementations/adapters/redis-lock-adapter/redis-lock-adapter.js +87 -32
  154. package/dist/lock/implementations/adapters/redis-lock-adapter/redis-lock-adapter.js.map +1 -1
  155. package/dist/lock/implementations/derivables/lock-provider/database-lock-adapter.d.ts +7 -6
  156. package/dist/lock/implementations/derivables/lock-provider/database-lock-adapter.js +56 -24
  157. package/dist/lock/implementations/derivables/lock-provider/database-lock-adapter.js.map +1 -1
  158. package/dist/lock/implementations/derivables/lock-provider/is-database-lock-adapter.d.ts +2 -2
  159. package/dist/lock/implementations/derivables/lock-provider/is-database-lock-adapter.js +7 -7
  160. package/dist/lock/implementations/derivables/lock-provider/is-database-lock-adapter.js.map +1 -1
  161. package/dist/lock/implementations/derivables/lock-provider/lock-provider.d.ts +29 -39
  162. package/dist/lock/implementations/derivables/lock-provider/lock-provider.js +31 -35
  163. package/dist/lock/implementations/derivables/lock-provider/lock-provider.js.map +1 -1
  164. package/dist/lock/implementations/derivables/lock-provider/lock-serde-transformer.d.ts +5 -8
  165. package/dist/lock/implementations/derivables/lock-provider/lock-serde-transformer.js +27 -23
  166. package/dist/lock/implementations/derivables/lock-provider/lock-serde-transformer.js.map +1 -1
  167. package/dist/lock/implementations/derivables/lock-provider/lock.d.ts +38 -33
  168. package/dist/lock/implementations/derivables/lock-provider/lock.js +178 -234
  169. package/dist/lock/implementations/derivables/lock-provider/lock.js.map +1 -1
  170. package/dist/lock/implementations/derivables/lock-provider/resolve-database-lock-adapter.d.ts +9 -0
  171. package/dist/lock/implementations/derivables/lock-provider/resolve-database-lock-adapter.js +12 -0
  172. package/dist/lock/implementations/derivables/lock-provider/resolve-database-lock-adapter.js.map +1 -0
  173. package/dist/lock/implementations/derivables/lock-provider-factory/lock-provider-factory.d.ts +12 -13
  174. package/dist/lock/implementations/derivables/lock-provider-factory/lock-provider-factory.js +7 -16
  175. package/dist/lock/implementations/derivables/lock-provider-factory/lock-provider-factory.js.map +1 -1
  176. package/dist/lock/implementations/test-utilities/database-lock-adapter.test-suite.js +312 -191
  177. package/dist/lock/implementations/test-utilities/database-lock-adapter.test-suite.js.map +1 -1
  178. package/dist/lock/implementations/test-utilities/lock-adapter.test-suite.d.ts +1 -1
  179. package/dist/lock/implementations/test-utilities/lock-adapter.test-suite.js +378 -95
  180. package/dist/lock/implementations/test-utilities/lock-adapter.test-suite.js.map +1 -1
  181. package/dist/lock/implementations/test-utilities/lock-provider.test-suite.d.ts +15 -5
  182. package/dist/lock/implementations/test-utilities/lock-provider.test-suite.js +3110 -1611
  183. package/dist/lock/implementations/test-utilities/lock-provider.test-suite.js.map +1 -1
  184. package/dist/namespace/_module-exports.d.ts +1 -0
  185. package/dist/namespace/_module-exports.js +2 -0
  186. package/dist/namespace/_module-exports.js.map +1 -0
  187. package/dist/namespace/namespace.d.ts +87 -0
  188. package/dist/namespace/namespace.js +117 -0
  189. package/dist/namespace/namespace.js.map +1 -0
  190. package/dist/resilience/_module-exports.d.ts +2 -0
  191. package/dist/resilience/_module-exports.js +3 -0
  192. package/dist/resilience/_module-exports.js.map +1 -0
  193. package/dist/resilience/middlewares/_module.d.ts +5 -0
  194. package/dist/resilience/middlewares/_module.js +6 -0
  195. package/dist/resilience/middlewares/_module.js.map +1 -0
  196. package/dist/resilience/middlewares/dynamic/_module.d.ts +1 -0
  197. package/dist/resilience/middlewares/dynamic/_module.js +2 -0
  198. package/dist/resilience/middlewares/dynamic/_module.js.map +1 -0
  199. package/dist/{async → resilience}/middlewares/dynamic/dynamic.middleware.d.ts +6 -6
  200. package/dist/{async → resilience}/middlewares/dynamic/dynamic.middleware.js +5 -5
  201. package/dist/resilience/middlewares/dynamic/dynamic.middleware.js.map +1 -0
  202. package/dist/resilience/middlewares/fallback/_module.d.ts +2 -0
  203. package/dist/resilience/middlewares/fallback/_module.js +3 -0
  204. package/dist/resilience/middlewares/fallback/_module.js.map +1 -0
  205. package/dist/{async → resilience}/middlewares/fallback/fallback.middleware.d.ts +9 -9
  206. package/dist/{async → resilience}/middlewares/fallback/fallback.middleware.js +7 -6
  207. package/dist/resilience/middlewares/fallback/fallback.middleware.js.map +1 -0
  208. package/dist/{async → resilience}/middlewares/fallback/fallback.types.d.ts +7 -6
  209. package/dist/{async → resilience}/middlewares/fallback/fallback.types.js +1 -1
  210. package/dist/resilience/middlewares/fallback/fallback.types.js.map +1 -0
  211. package/dist/resilience/middlewares/observe/_module.d.ts +2 -0
  212. package/dist/resilience/middlewares/observe/_module.js +3 -0
  213. package/dist/resilience/middlewares/observe/_module.js.map +1 -0
  214. package/dist/{async → resilience}/middlewares/observe/observe.middleware.d.ts +13 -11
  215. package/dist/{async → resilience}/middlewares/observe/observe.middleware.js +14 -10
  216. package/dist/resilience/middlewares/observe/observe.middleware.js.map +1 -0
  217. package/dist/{async → resilience}/middlewares/observe/observe.types.d.ts +13 -12
  218. package/dist/resilience/middlewares/observe/observe.types.js +5 -0
  219. package/dist/resilience/middlewares/observe/observe.types.js.map +1 -0
  220. package/dist/resilience/middlewares/retry/_module.d.ts +2 -0
  221. package/dist/resilience/middlewares/retry/_module.js +3 -0
  222. package/dist/resilience/middlewares/retry/_module.js.map +1 -0
  223. package/dist/{async → resilience}/middlewares/retry/retry.middleware.d.ts +12 -9
  224. package/dist/{async → resilience}/middlewares/retry/retry.middleware.js +19 -15
  225. package/dist/resilience/middlewares/retry/retry.middleware.js.map +1 -0
  226. package/dist/{async → resilience}/middlewares/retry/retry.types.d.ts +14 -12
  227. package/dist/resilience/middlewares/retry/retry.types.js +7 -0
  228. package/dist/resilience/middlewares/retry/retry.types.js.map +1 -0
  229. package/dist/resilience/middlewares/timeout/_module.d.ts +2 -0
  230. package/dist/resilience/middlewares/timeout/_module.js +3 -0
  231. package/dist/resilience/middlewares/timeout/_module.js.map +1 -0
  232. package/dist/{async → resilience}/middlewares/timeout/timeout.middleware.d.ts +9 -7
  233. package/dist/{async → resilience}/middlewares/timeout/timeout.middleware.js +12 -11
  234. package/dist/resilience/middlewares/timeout/timeout.middleware.js.map +1 -0
  235. package/dist/{async → resilience}/middlewares/timeout/timeout.type.d.ts +10 -9
  236. package/dist/resilience/middlewares/timeout/timeout.type.js +5 -0
  237. package/dist/resilience/middlewares/timeout/timeout.type.js.map +1 -0
  238. package/dist/resilience/resilience.errors.d.ts +40 -0
  239. package/dist/resilience/resilience.errors.js +48 -0
  240. package/dist/resilience/resilience.errors.js.map +1 -0
  241. package/dist/resilience/utilities/_module.d.ts +2 -0
  242. package/dist/resilience/utilities/_module.js +3 -0
  243. package/dist/resilience/utilities/_module.js.map +1 -0
  244. package/dist/resilience/utilities/abort-and-fail/_module.d.ts +1 -0
  245. package/dist/resilience/utilities/abort-and-fail/_module.js +2 -0
  246. package/dist/resilience/utilities/abort-and-fail/_module.js.map +1 -0
  247. package/dist/resilience/utilities/abort-and-fail/abort-and-fail.d.ts +7 -0
  248. package/dist/resilience/utilities/abort-and-fail/abort-and-fail.js +51 -0
  249. package/dist/resilience/utilities/abort-and-fail/abort-and-fail.js.map +1 -0
  250. package/dist/resilience/utilities/timeout-and-fail/_module.d.ts +1 -0
  251. package/dist/resilience/utilities/timeout-and-fail/_module.js +2 -0
  252. package/dist/resilience/utilities/timeout-and-fail/_module.js.map +1 -0
  253. package/dist/resilience/utilities/timeout-and-fail/timeout-and-fail.d.ts +7 -0
  254. package/dist/resilience/utilities/timeout-and-fail/timeout-and-fail.js +23 -0
  255. package/dist/resilience/utilities/timeout-and-fail/timeout-and-fail.js.map +1 -0
  256. package/dist/semaphore/contracts/_module-exports.d.ts +9 -0
  257. package/dist/semaphore/contracts/_module-exports.js +10 -0
  258. package/dist/semaphore/contracts/_module-exports.js.map +1 -0
  259. package/dist/semaphore/contracts/database-semaphore-adapter.contract.d.ts +90 -0
  260. package/dist/semaphore/contracts/database-semaphore-adapter.contract.js +5 -0
  261. package/dist/semaphore/contracts/database-semaphore-adapter.contract.js.map +1 -0
  262. package/dist/semaphore/contracts/semaphore-adapter.contract.d.ts +61 -0
  263. package/dist/semaphore/contracts/semaphore-adapter.contract.js +5 -0
  264. package/dist/semaphore/contracts/semaphore-adapter.contract.js.map +1 -0
  265. package/dist/semaphore/contracts/semaphore-provider-factory.contract.d.ts +19 -0
  266. package/dist/semaphore/contracts/semaphore-provider-factory.contract.js +9 -0
  267. package/dist/semaphore/contracts/semaphore-provider-factory.contract.js.map +1 -0
  268. package/dist/semaphore/contracts/semaphore-provider.contract.d.ts +50 -0
  269. package/dist/semaphore/contracts/semaphore-provider.contract.js +5 -0
  270. package/dist/semaphore/contracts/semaphore-provider.contract.js.map +1 -0
  271. package/dist/semaphore/contracts/semaphore-state.contract.d.ts +70 -0
  272. package/dist/semaphore/contracts/semaphore-state.contract.js +15 -0
  273. package/dist/semaphore/contracts/semaphore-state.contract.js.map +1 -0
  274. package/dist/semaphore/contracts/semaphore.contract.d.ts +127 -0
  275. package/dist/semaphore/contracts/semaphore.contract.js +5 -0
  276. package/dist/semaphore/contracts/semaphore.contract.js.map +1 -0
  277. package/dist/semaphore/contracts/semaphore.errors.d.ts +52 -0
  278. package/dist/semaphore/contracts/semaphore.errors.js +63 -0
  279. package/dist/semaphore/contracts/semaphore.errors.js.map +1 -0
  280. package/dist/semaphore/contracts/semaphore.events.d.ts +101 -0
  281. package/dist/semaphore/contracts/semaphore.events.js +19 -0
  282. package/dist/semaphore/contracts/semaphore.events.js.map +1 -0
  283. package/dist/semaphore/contracts/types.d.ts +11 -0
  284. package/dist/semaphore/contracts/types.js +5 -0
  285. package/dist/semaphore/contracts/types.js.map +1 -0
  286. package/dist/semaphore/implementations/adapters/_module-exports.d.ts +5 -0
  287. package/dist/semaphore/implementations/adapters/_module-exports.js +6 -0
  288. package/dist/semaphore/implementations/adapters/_module-exports.js.map +1 -0
  289. package/dist/semaphore/implementations/adapters/kysely-semaphore-adapter/_module.d.ts +1 -0
  290. package/dist/semaphore/implementations/adapters/kysely-semaphore-adapter/_module.js +2 -0
  291. package/dist/semaphore/implementations/adapters/kysely-semaphore-adapter/_module.js.map +1 -0
  292. package/dist/semaphore/implementations/adapters/kysely-semaphore-adapter/kysely-semaphore-adapter.d.ts +97 -0
  293. package/dist/semaphore/implementations/adapters/kysely-semaphore-adapter/kysely-semaphore-adapter.js +313 -0
  294. package/dist/semaphore/implementations/adapters/kysely-semaphore-adapter/kysely-semaphore-adapter.js.map +1 -0
  295. package/dist/semaphore/implementations/adapters/memory-semaphore-adapter/_module.d.ts +1 -0
  296. package/dist/semaphore/implementations/adapters/memory-semaphore-adapter/_module.js +2 -0
  297. package/dist/semaphore/implementations/adapters/memory-semaphore-adapter/_module.js.map +1 -0
  298. package/dist/semaphore/implementations/adapters/memory-semaphore-adapter/memory-semaphore-adapter.d.ts +49 -0
  299. package/dist/semaphore/implementations/adapters/memory-semaphore-adapter/memory-semaphore-adapter.js +141 -0
  300. package/dist/semaphore/implementations/adapters/memory-semaphore-adapter/memory-semaphore-adapter.js.map +1 -0
  301. package/dist/semaphore/implementations/adapters/mongodb-semaphore-adapter/_module.d.ts +1 -0
  302. package/dist/semaphore/implementations/adapters/mongodb-semaphore-adapter/_module.js +2 -0
  303. package/dist/semaphore/implementations/adapters/mongodb-semaphore-adapter/_module.js.map +1 -0
  304. package/dist/semaphore/implementations/adapters/mongodb-semaphore-adapter/mongodb-semaphore-adapter.d.ts +80 -0
  305. package/dist/semaphore/implementations/adapters/mongodb-semaphore-adapter/mongodb-semaphore-adapter.js +390 -0
  306. package/dist/semaphore/implementations/adapters/mongodb-semaphore-adapter/mongodb-semaphore-adapter.js.map +1 -0
  307. package/dist/semaphore/implementations/adapters/no-op-semaphore-adapter/_module.d.ts +1 -0
  308. package/dist/semaphore/implementations/adapters/no-op-semaphore-adapter/_module.js +2 -0
  309. package/dist/semaphore/implementations/adapters/no-op-semaphore-adapter/_module.js.map +1 -0
  310. package/dist/semaphore/implementations/adapters/no-op-semaphore-adapter/no-op-semaphore-adapter.d.ts +18 -0
  311. package/dist/semaphore/implementations/adapters/no-op-semaphore-adapter/no-op-semaphore-adapter.js +30 -0
  312. package/dist/semaphore/implementations/adapters/no-op-semaphore-adapter/no-op-semaphore-adapter.js.map +1 -0
  313. package/dist/semaphore/implementations/adapters/redis-semaphore-adapter/_module.d.ts +1 -0
  314. package/dist/semaphore/implementations/adapters/redis-semaphore-adapter/_module.js +2 -0
  315. package/dist/semaphore/implementations/adapters/redis-semaphore-adapter/_module.js.map +1 -0
  316. package/dist/semaphore/implementations/adapters/redis-semaphore-adapter/redis-semaphore-adapter.d.ts +48 -0
  317. package/dist/semaphore/implementations/adapters/redis-semaphore-adapter/redis-semaphore-adapter.js +338 -0
  318. package/dist/semaphore/implementations/adapters/redis-semaphore-adapter/redis-semaphore-adapter.js.map +1 -0
  319. package/dist/semaphore/implementations/derivables/_module-exports.d.ts +2 -0
  320. package/dist/semaphore/implementations/derivables/_module-exports.js +3 -0
  321. package/dist/semaphore/implementations/derivables/_module-exports.js.map +1 -0
  322. package/dist/semaphore/implementations/derivables/semaphore-provider/_module.d.ts +1 -0
  323. package/dist/semaphore/implementations/derivables/semaphore-provider/_module.js +2 -0
  324. package/dist/semaphore/implementations/derivables/semaphore-provider/_module.js.map +1 -0
  325. package/dist/semaphore/implementations/derivables/semaphore-provider/database-semaphore-adapter.d.ts +17 -0
  326. package/dist/semaphore/implementations/derivables/semaphore-provider/database-semaphore-adapter.js +74 -0
  327. package/dist/semaphore/implementations/derivables/semaphore-provider/database-semaphore-adapter.js.map +1 -0
  328. package/dist/semaphore/implementations/derivables/semaphore-provider/is-database-semaphore-adapter.d.ts +8 -0
  329. package/dist/semaphore/implementations/derivables/semaphore-provider/is-database-semaphore-adapter.js +15 -0
  330. package/dist/semaphore/implementations/derivables/semaphore-provider/is-database-semaphore-adapter.js.map +1 -0
  331. package/dist/semaphore/implementations/derivables/semaphore-provider/resolve-database-semaphore-adapter.d.ts +8 -0
  332. package/dist/semaphore/implementations/derivables/semaphore-provider/resolve-database-semaphore-adapter.js +15 -0
  333. package/dist/semaphore/implementations/derivables/semaphore-provider/resolve-database-semaphore-adapter.js.map +1 -0
  334. package/dist/semaphore/implementations/derivables/semaphore-provider/semaphore-provider.d.ts +149 -0
  335. package/dist/semaphore/implementations/derivables/semaphore-provider/semaphore-provider.js +135 -0
  336. package/dist/semaphore/implementations/derivables/semaphore-provider/semaphore-provider.js.map +1 -0
  337. package/dist/semaphore/implementations/derivables/semaphore-provider/semaphore-serde-transformer.d.ts +41 -0
  338. package/dist/semaphore/implementations/derivables/semaphore-provider/semaphore-serde-transformer.js +77 -0
  339. package/dist/semaphore/implementations/derivables/semaphore-provider/semaphore-serde-transformer.js.map +1 -0
  340. package/dist/semaphore/implementations/derivables/semaphore-provider/semaphore.d.ts +83 -0
  341. package/dist/semaphore/implementations/derivables/semaphore-provider/semaphore.js +336 -0
  342. package/dist/semaphore/implementations/derivables/semaphore-provider/semaphore.js.map +1 -0
  343. package/dist/semaphore/implementations/derivables/semaphore-provider-factory/_module.d.ts +1 -0
  344. package/dist/semaphore/implementations/derivables/semaphore-provider-factory/_module.js +2 -0
  345. package/dist/semaphore/implementations/derivables/semaphore-provider-factory/_module.js.map +1 -0
  346. package/dist/semaphore/implementations/derivables/semaphore-provider-factory/semaphore-provider-factory.d.ts +40 -0
  347. package/dist/semaphore/implementations/derivables/semaphore-provider-factory/semaphore-provider-factory.js +67 -0
  348. package/dist/semaphore/implementations/derivables/semaphore-provider-factory/semaphore-provider-factory.js.map +1 -0
  349. package/dist/semaphore/implementations/test-utilities/_module-exports.d.ts +3 -0
  350. package/dist/semaphore/implementations/test-utilities/_module-exports.js +4 -0
  351. package/dist/semaphore/implementations/test-utilities/_module-exports.js.map +1 -0
  352. package/dist/semaphore/implementations/test-utilities/database-semaphore-adapter.test-suite.d.ts +59 -0
  353. package/dist/semaphore/implementations/test-utilities/database-semaphore-adapter.test-suite.js +536 -0
  354. package/dist/semaphore/implementations/test-utilities/database-semaphore-adapter.test-suite.js.map +1 -0
  355. package/dist/semaphore/implementations/test-utilities/semaphore-adapter.test-suite.d.ts +59 -0
  356. package/dist/semaphore/implementations/test-utilities/semaphore-adapter.test-suite.js +961 -0
  357. package/dist/semaphore/implementations/test-utilities/semaphore-adapter.test-suite.js.map +1 -0
  358. package/dist/semaphore/implementations/test-utilities/semaphore-provider.test-suite.d.ts +67 -0
  359. package/dist/semaphore/implementations/test-utilities/semaphore-provider.test-suite.js +4981 -0
  360. package/dist/semaphore/implementations/test-utilities/semaphore-provider.test-suite.js.map +1 -0
  361. package/dist/serde/contracts/_module-exports.d.ts +0 -1
  362. package/dist/serde/contracts/_module-exports.js +0 -1
  363. package/dist/serde/contracts/_module-exports.js.map +1 -1
  364. package/dist/serde/contracts/flexible-serde.contract.d.ts +21 -5
  365. package/dist/serde/contracts/serde.errors.d.ts +14 -11
  366. package/dist/serde/contracts/serde.errors.js +15 -14
  367. package/dist/serde/contracts/serde.errors.js.map +1 -1
  368. package/dist/serde/implementations/adapters/_module-exports.d.ts +0 -3
  369. package/dist/serde/implementations/adapters/_module-exports.js +0 -3
  370. package/dist/serde/implementations/adapters/_module-exports.js.map +1 -1
  371. package/dist/serde/implementations/adapters/super-json-serde-adapter/super-json-serde-adapter.js +6 -0
  372. package/dist/serde/implementations/adapters/super-json-serde-adapter/super-json-serde-adapter.js.map +1 -1
  373. package/dist/serde/implementations/derivables/serde-transformers.d.ts +38 -30
  374. package/dist/serde/implementations/derivables/serde-transformers.js +62 -20
  375. package/dist/serde/implementations/derivables/serde-transformers.js.map +1 -1
  376. package/dist/serde/implementations/derivables/serde.d.ts +12 -3
  377. package/dist/serde/implementations/derivables/serde.js +5 -2
  378. package/dist/serde/implementations/derivables/serde.js.map +1 -1
  379. package/dist/serde/implementations/test-utilities/flexible-serde-adapter.test-suite.js +85 -1
  380. package/dist/serde/implementations/test-utilities/flexible-serde-adapter.test-suite.js.map +1 -1
  381. package/dist/serde/implementations/test-utilities/flexible-serde.test-suite.js +85 -1
  382. package/dist/serde/implementations/test-utilities/flexible-serde.test-suite.js.map +1 -1
  383. package/dist/shared-lock/contracts/_module-exports.d.ts +10 -0
  384. package/dist/shared-lock/contracts/_module-exports.js +11 -0
  385. package/dist/shared-lock/contracts/_module-exports.js.map +1 -0
  386. package/dist/shared-lock/contracts/database-shared-lock-adapter.contract.d.ts +145 -0
  387. package/dist/shared-lock/contracts/database-shared-lock-adapter.contract.js +5 -0
  388. package/dist/shared-lock/contracts/database-shared-lock-adapter.contract.js.map +1 -0
  389. package/dist/shared-lock/contracts/shared-lock-adapter.contract.d.ts +96 -0
  390. package/dist/shared-lock/contracts/shared-lock-adapter.contract.js +5 -0
  391. package/dist/shared-lock/contracts/shared-lock-adapter.contract.js.map +1 -0
  392. package/dist/shared-lock/contracts/shared-lock-provider-factory.contract.d.ts +19 -0
  393. package/dist/shared-lock/contracts/shared-lock-provider-factory.contract.js +9 -0
  394. package/dist/shared-lock/contracts/shared-lock-provider-factory.contract.js.map +1 -0
  395. package/dist/shared-lock/contracts/shared-lock-provider.contract.d.ts +53 -0
  396. package/dist/shared-lock/contracts/shared-lock-provider.contract.js +5 -0
  397. package/dist/shared-lock/contracts/shared-lock-provider.contract.js.map +1 -0
  398. package/dist/shared-lock/contracts/shared-lock-state.contract.d.ts +133 -0
  399. package/dist/shared-lock/contracts/shared-lock-state.contract.js +33 -0
  400. package/dist/shared-lock/contracts/shared-lock-state.contract.js.map +1 -0
  401. package/dist/shared-lock/contracts/shared-lock.contract.d.ts +222 -0
  402. package/dist/shared-lock/contracts/shared-lock.contract.js +13 -0
  403. package/dist/shared-lock/contracts/shared-lock.contract.js.map +1 -0
  404. package/dist/shared-lock/contracts/shared-lock.errors.d.ts +124 -0
  405. package/dist/shared-lock/contracts/shared-lock.errors.js +136 -0
  406. package/dist/shared-lock/contracts/shared-lock.errors.js.map +1 -0
  407. package/dist/shared-lock/contracts/shared-lock.events.d.ts +205 -0
  408. package/dist/shared-lock/contracts/shared-lock.events.js +43 -0
  409. package/dist/shared-lock/contracts/shared-lock.events.js.map +1 -0
  410. package/dist/shared-lock/contracts/types.d.ts +10 -0
  411. package/dist/shared-lock/contracts/types.js +5 -0
  412. package/dist/shared-lock/contracts/types.js.map +1 -0
  413. package/dist/shared-lock/implementations/adapters/_module-exports.d.ts +5 -0
  414. package/dist/shared-lock/implementations/adapters/_module-exports.js +6 -0
  415. package/dist/shared-lock/implementations/adapters/_module-exports.js.map +1 -0
  416. package/dist/shared-lock/implementations/adapters/kysely-shared-lock-adapter/_module.d.ts +1 -0
  417. package/dist/shared-lock/implementations/adapters/kysely-shared-lock-adapter/_module.js +2 -0
  418. package/dist/shared-lock/implementations/adapters/kysely-shared-lock-adapter/_module.js.map +1 -0
  419. package/dist/shared-lock/implementations/adapters/kysely-shared-lock-adapter/kysely-shared-lock-adapter.d.ts +114 -0
  420. package/dist/shared-lock/implementations/adapters/kysely-shared-lock-adapter/kysely-shared-lock-adapter.js +496 -0
  421. package/dist/shared-lock/implementations/adapters/kysely-shared-lock-adapter/kysely-shared-lock-adapter.js.map +1 -0
  422. package/dist/shared-lock/implementations/adapters/memory-shared-lock-adapter/_module.d.ts +1 -0
  423. package/dist/shared-lock/implementations/adapters/memory-shared-lock-adapter/_module.js +2 -0
  424. package/dist/shared-lock/implementations/adapters/memory-shared-lock-adapter/_module.js.map +1 -0
  425. package/dist/shared-lock/implementations/adapters/memory-shared-lock-adapter/memory-shared-lock-adapter.d.ts +79 -0
  426. package/dist/shared-lock/implementations/adapters/memory-shared-lock-adapter/memory-shared-lock-adapter.js +347 -0
  427. package/dist/shared-lock/implementations/adapters/memory-shared-lock-adapter/memory-shared-lock-adapter.js.map +1 -0
  428. package/dist/shared-lock/implementations/adapters/mongodb-shared-lock-adapter/_module.d.ts +1 -0
  429. package/dist/shared-lock/implementations/adapters/mongodb-shared-lock-adapter/_module.js +2 -0
  430. package/dist/shared-lock/implementations/adapters/mongodb-shared-lock-adapter/_module.js.map +1 -0
  431. package/dist/shared-lock/implementations/adapters/mongodb-shared-lock-adapter/mongodb-shared-lock-adapter.d.ts +112 -0
  432. package/dist/shared-lock/implementations/adapters/mongodb-shared-lock-adapter/mongodb-shared-lock-adapter.js +805 -0
  433. package/dist/shared-lock/implementations/adapters/mongodb-shared-lock-adapter/mongodb-shared-lock-adapter.js.map +1 -0
  434. package/dist/shared-lock/implementations/adapters/no-op-shared-lock-adapter/_module.d.ts +1 -0
  435. package/dist/shared-lock/implementations/adapters/no-op-shared-lock-adapter/_module.js +2 -0
  436. package/dist/shared-lock/implementations/adapters/no-op-shared-lock-adapter/_module.js.map +1 -0
  437. package/dist/shared-lock/implementations/adapters/no-op-shared-lock-adapter/no-op-shared-lock-adapter.d.ts +23 -0
  438. package/dist/shared-lock/implementations/adapters/no-op-shared-lock-adapter/no-op-shared-lock-adapter.js +42 -0
  439. package/dist/shared-lock/implementations/adapters/no-op-shared-lock-adapter/no-op-shared-lock-adapter.js.map +1 -0
  440. package/dist/shared-lock/implementations/adapters/redis-shared-lock-adapter/_module.d.ts +1 -0
  441. package/dist/shared-lock/implementations/adapters/redis-shared-lock-adapter/_module.js +2 -0
  442. package/dist/shared-lock/implementations/adapters/redis-shared-lock-adapter/_module.js.map +1 -0
  443. package/dist/shared-lock/implementations/adapters/redis-shared-lock-adapter/redis-shared-lock-adapter.d.ts +79 -0
  444. package/dist/shared-lock/implementations/adapters/redis-shared-lock-adapter/redis-shared-lock-adapter.js +630 -0
  445. package/dist/shared-lock/implementations/adapters/redis-shared-lock-adapter/redis-shared-lock-adapter.js.map +1 -0
  446. package/dist/shared-lock/implementations/derivables/_module-exports.d.ts +2 -0
  447. package/dist/shared-lock/implementations/derivables/_module-exports.js +3 -0
  448. package/dist/shared-lock/implementations/derivables/_module-exports.js.map +1 -0
  449. package/dist/shared-lock/implementations/derivables/shared-lock-provider/_module.d.ts +1 -0
  450. package/dist/shared-lock/implementations/derivables/shared-lock-provider/_module.js +2 -0
  451. package/dist/shared-lock/implementations/derivables/shared-lock-provider/_module.js.map +1 -0
  452. package/dist/shared-lock/implementations/derivables/shared-lock-provider/database-shared-lock-adapter.d.ts +27 -0
  453. package/dist/shared-lock/implementations/derivables/shared-lock-provider/database-shared-lock-adapter.js +208 -0
  454. package/dist/shared-lock/implementations/derivables/shared-lock-provider/database-shared-lock-adapter.js.map +1 -0
  455. package/dist/shared-lock/implementations/derivables/shared-lock-provider/is-database-shared-lock-adapter.d.ts +8 -0
  456. package/dist/shared-lock/implementations/derivables/shared-lock-provider/is-database-shared-lock-adapter.js +12 -0
  457. package/dist/shared-lock/implementations/derivables/shared-lock-provider/is-database-shared-lock-adapter.js.map +1 -0
  458. package/dist/shared-lock/implementations/derivables/shared-lock-provider/resolve-database-shared-lock-adapter.d.ts +8 -0
  459. package/dist/shared-lock/implementations/derivables/shared-lock-provider/resolve-database-shared-lock-adapter.js +15 -0
  460. package/dist/shared-lock/implementations/derivables/shared-lock-provider/resolve-database-shared-lock-adapter.js.map +1 -0
  461. package/dist/shared-lock/implementations/derivables/shared-lock-provider/shared-lock-provider.d.ts +190 -0
  462. package/dist/shared-lock/implementations/derivables/shared-lock-provider/shared-lock-provider.js +177 -0
  463. package/dist/shared-lock/implementations/derivables/shared-lock-provider/shared-lock-provider.js.map +1 -0
  464. package/dist/shared-lock/implementations/derivables/shared-lock-provider/shared-lock-serde-transformer.d.ts +41 -0
  465. package/dist/shared-lock/implementations/derivables/shared-lock-provider/shared-lock-serde-transformer.js +77 -0
  466. package/dist/shared-lock/implementations/derivables/shared-lock-provider/shared-lock-serde-transformer.js.map +1 -0
  467. package/dist/shared-lock/implementations/derivables/shared-lock-provider/shared-lock.d.ts +95 -0
  468. package/dist/shared-lock/implementations/derivables/shared-lock-provider/shared-lock.js +542 -0
  469. package/dist/shared-lock/implementations/derivables/shared-lock-provider/shared-lock.js.map +1 -0
  470. package/dist/shared-lock/implementations/derivables/shared-lock-provider-factory/_module.d.ts +1 -0
  471. package/dist/shared-lock/implementations/derivables/shared-lock-provider-factory/_module.js +2 -0
  472. package/dist/shared-lock/implementations/derivables/shared-lock-provider-factory/_module.js.map +1 -0
  473. package/dist/shared-lock/implementations/derivables/shared-lock-provider-factory/shared-lock-provider-factory.d.ts +97 -0
  474. package/dist/shared-lock/implementations/derivables/shared-lock-provider-factory/shared-lock-provider-factory.js +128 -0
  475. package/dist/shared-lock/implementations/derivables/shared-lock-provider-factory/shared-lock-provider-factory.js.map +1 -0
  476. package/dist/shared-lock/implementations/test-utilities/_module-exports.d.ts +3 -0
  477. package/dist/shared-lock/implementations/test-utilities/_module-exports.js +4 -0
  478. package/dist/shared-lock/implementations/test-utilities/_module-exports.js.map +1 -0
  479. package/dist/shared-lock/implementations/test-utilities/database-shared-lock-adapter.test-suite.d.ts +59 -0
  480. package/dist/shared-lock/implementations/test-utilities/database-shared-lock-adapter.test-suite.js +944 -0
  481. package/dist/shared-lock/implementations/test-utilities/database-shared-lock-adapter.test-suite.js.map +1 -0
  482. package/dist/shared-lock/implementations/test-utilities/shared-lock-adapter.test-suite.d.ts +59 -0
  483. package/dist/shared-lock/implementations/test-utilities/shared-lock-adapter.test-suite.js +1921 -0
  484. package/dist/shared-lock/implementations/test-utilities/shared-lock-adapter.test-suite.js.map +1 -0
  485. package/dist/shared-lock/implementations/test-utilities/shared-lock-provider.test-suite.d.ts +67 -0
  486. package/dist/shared-lock/implementations/test-utilities/shared-lock-provider.test-suite.js +9833 -0
  487. package/dist/shared-lock/implementations/test-utilities/shared-lock-provider.test-suite.js.map +1 -0
  488. package/dist/task/_module-exports.d.ts +1 -0
  489. package/dist/task/_module-exports.js +2 -0
  490. package/dist/task/_module-exports.js.map +1 -0
  491. package/dist/{async/utilities/abort-and-fail → task}/abort-and-fail.d.ts +1 -1
  492. package/dist/{async/utilities/abort-and-fail → task}/abort-and-fail.js +1 -1
  493. package/dist/task/abort-and-fail.js.map +1 -0
  494. package/dist/task/task.d.ts +194 -0
  495. package/dist/task/task.js +212 -0
  496. package/dist/task/task.js.map +1 -0
  497. package/dist/time-span/contracts/_module-exports.d.ts +1 -0
  498. package/dist/time-span/contracts/_module-exports.js +2 -0
  499. package/dist/time-span/contracts/_module-exports.js.map +1 -0
  500. package/dist/time-span/contracts/time-span.contract.d.ts +19 -0
  501. package/dist/time-span/contracts/time-span.contract.js +10 -0
  502. package/dist/time-span/contracts/time-span.contract.js.map +1 -0
  503. package/dist/time-span/implementations/_module-exports.d.ts +1 -0
  504. package/dist/time-span/implementations/_module-exports.js +2 -0
  505. package/dist/time-span/implementations/_module-exports.js.map +1 -0
  506. package/dist/{utilities/classes/time-span → time-span/implementations}/time-span.d.ts +49 -11
  507. package/dist/{utilities/classes/time-span → time-span/implementations}/time-span.js +33 -11
  508. package/dist/time-span/implementations/time-span.js.map +1 -0
  509. package/dist/utilities/classes/_module.d.ts +0 -3
  510. package/dist/utilities/classes/_module.js +0 -3
  511. package/dist/utilities/classes/_module.js.map +1 -1
  512. package/dist/utilities/contracts/_module.d.ts +1 -1
  513. package/dist/utilities/contracts/_module.js +1 -1
  514. package/dist/utilities/contracts/_module.js.map +1 -1
  515. package/dist/utilities/contracts/comparable.contract.d.ts +49 -0
  516. package/dist/utilities/contracts/comparable.contract.js +5 -0
  517. package/dist/utilities/contracts/comparable.contract.js.map +1 -0
  518. package/dist/utilities/contracts/deinitizable.contract.d.ts +1 -1
  519. package/dist/utilities/contracts/initizable.contract.d.ts +1 -1
  520. package/dist/utilities/contracts/prunable.contract.d.ts +1 -1
  521. package/dist/utilities/functions/is-standard-schema.d.ts +6 -0
  522. package/dist/utilities/functions/is-standard-schema.js +6 -0
  523. package/dist/utilities/functions/is-standard-schema.js.map +1 -1
  524. package/dist/utilities/functions/lazy.d.ts +3 -3
  525. package/dist/utilities/functions/lazy.js +3 -3
  526. package/dist/utilities/functions/lazy.js.map +1 -1
  527. package/dist/utilities/functions/option.d.ts +3 -0
  528. package/dist/utilities/functions/option.js +3 -0
  529. package/dist/utilities/functions/option.js.map +1 -1
  530. package/dist/utilities/functions/validate.d.ts +5 -0
  531. package/dist/utilities/functions/validate.js +5 -0
  532. package/dist/utilities/functions/validate.js.map +1 -1
  533. package/dist/utilities/types/any-class.type.d.ts +6 -0
  534. package/dist/utilities/types/any-class.type.js +3 -0
  535. package/dist/utilities/types/any-class.type.js.map +1 -1
  536. package/package.json +67 -5
  537. package/dist/async/_module-exports.d.ts +0 -4
  538. package/dist/async/_module-exports.js +0 -5
  539. package/dist/async/_module-exports.js.map +0 -1
  540. package/dist/async/async.errors.d.ts +0 -47
  541. package/dist/async/async.errors.js +0 -61
  542. package/dist/async/async.errors.js.map +0 -1
  543. package/dist/async/backof-policies/_module.d.ts +0 -5
  544. package/dist/async/backof-policies/_module.js +0 -6
  545. package/dist/async/backof-policies/_module.js.map +0 -1
  546. package/dist/async/backof-policies/_shared.js.map +0 -1
  547. package/dist/async/backof-policies/constant-backoff-policy/_module.d.ts +0 -1
  548. package/dist/async/backof-policies/constant-backoff-policy/_module.js +0 -2
  549. package/dist/async/backof-policies/constant-backoff-policy/_module.js.map +0 -1
  550. package/dist/async/backof-policies/constant-backoff-policy/constant-backoff-policy.js.map +0 -1
  551. package/dist/async/backof-policies/exponential-backoff-policy/_module.d.ts +0 -1
  552. package/dist/async/backof-policies/exponential-backoff-policy/_module.js +0 -2
  553. package/dist/async/backof-policies/exponential-backoff-policy/_module.js.map +0 -1
  554. package/dist/async/backof-policies/exponential-backoff-policy/exponential-backoff-policy.js +0 -35
  555. package/dist/async/backof-policies/exponential-backoff-policy/exponential-backoff-policy.js.map +0 -1
  556. package/dist/async/backof-policies/linear-backoff-policy/_module.d.ts +0 -1
  557. package/dist/async/backof-policies/linear-backoff-policy/_module.js +0 -2
  558. package/dist/async/backof-policies/linear-backoff-policy/_module.js.map +0 -1
  559. package/dist/async/backof-policies/linear-backoff-policy/linear-backoff-policy.js +0 -35
  560. package/dist/async/backof-policies/linear-backoff-policy/linear-backoff-policy.js.map +0 -1
  561. package/dist/async/backof-policies/polynomial-backoff-policy/_module.d.ts +0 -1
  562. package/dist/async/backof-policies/polynomial-backoff-policy/_module.js +0 -2
  563. package/dist/async/backof-policies/polynomial-backoff-policy/_module.js.map +0 -1
  564. package/dist/async/backof-policies/polynomial-backoff-policy/polynomial-backoff-policy.js +0 -35
  565. package/dist/async/backof-policies/polynomial-backoff-policy/polynomial-backoff-policy.js.map +0 -1
  566. package/dist/async/middlewares/_module.d.ts +0 -7
  567. package/dist/async/middlewares/_module.js +0 -8
  568. package/dist/async/middlewares/_module.js.map +0 -1
  569. package/dist/async/middlewares/bulkhead/_module.d.ts +0 -1
  570. package/dist/async/middlewares/bulkhead/_module.js +0 -2
  571. package/dist/async/middlewares/bulkhead/_module.js.map +0 -1
  572. package/dist/async/middlewares/bulkhead/bulkhead.middleware.d.ts +0 -80
  573. package/dist/async/middlewares/bulkhead/bulkhead.middleware.js +0 -46
  574. package/dist/async/middlewares/bulkhead/bulkhead.middleware.js.map +0 -1
  575. package/dist/async/middlewares/dynamic/_module.d.ts +0 -1
  576. package/dist/async/middlewares/dynamic/_module.js +0 -2
  577. package/dist/async/middlewares/dynamic/_module.js.map +0 -1
  578. package/dist/async/middlewares/dynamic/dynamic.middleware.js.map +0 -1
  579. package/dist/async/middlewares/fallback/_module.d.ts +0 -2
  580. package/dist/async/middlewares/fallback/_module.js +0 -3
  581. package/dist/async/middlewares/fallback/_module.js.map +0 -1
  582. package/dist/async/middlewares/fallback/fallback.middleware.js.map +0 -1
  583. package/dist/async/middlewares/fallback/fallback.types.js.map +0 -1
  584. package/dist/async/middlewares/hedging/_module.d.ts +0 -2
  585. package/dist/async/middlewares/hedging/_module.js +0 -3
  586. package/dist/async/middlewares/hedging/_module.js.map +0 -1
  587. package/dist/async/middlewares/hedging/hedging.types.d.ts +0 -121
  588. package/dist/async/middlewares/hedging/hedging.types.js +0 -6
  589. package/dist/async/middlewares/hedging/hedging.types.js.map +0 -1
  590. package/dist/async/middlewares/hedging/sequential-hedging.middleware.d.ts +0 -51
  591. package/dist/async/middlewares/hedging/sequential-hedging.middleware.js +0 -133
  592. package/dist/async/middlewares/hedging/sequential-hedging.middleware.js.map +0 -1
  593. package/dist/async/middlewares/observe/_module.d.ts +0 -2
  594. package/dist/async/middlewares/observe/_module.js +0 -3
  595. package/dist/async/middlewares/observe/_module.js.map +0 -1
  596. package/dist/async/middlewares/observe/observe.middleware.js.map +0 -1
  597. package/dist/async/middlewares/observe/observe.types.js +0 -6
  598. package/dist/async/middlewares/observe/observe.types.js.map +0 -1
  599. package/dist/async/middlewares/retry/_module.d.ts +0 -2
  600. package/dist/async/middlewares/retry/_module.js +0 -3
  601. package/dist/async/middlewares/retry/_module.js.map +0 -1
  602. package/dist/async/middlewares/retry/retry.middleware.js.map +0 -1
  603. package/dist/async/middlewares/retry/retry.types.js +0 -7
  604. package/dist/async/middlewares/retry/retry.types.js.map +0 -1
  605. package/dist/async/middlewares/timeout/_module.d.ts +0 -2
  606. package/dist/async/middlewares/timeout/_module.js +0 -3
  607. package/dist/async/middlewares/timeout/_module.js.map +0 -1
  608. package/dist/async/middlewares/timeout/timeout.middleware.js.map +0 -1
  609. package/dist/async/middlewares/timeout/timeout.type.js +0 -6
  610. package/dist/async/middlewares/timeout/timeout.type.js.map +0 -1
  611. package/dist/async/utilities/_module.d.ts +0 -4
  612. package/dist/async/utilities/_module.js +0 -5
  613. package/dist/async/utilities/_module.js.map +0 -1
  614. package/dist/async/utilities/abort-and-fail/_module.d.ts +0 -1
  615. package/dist/async/utilities/abort-and-fail/_module.js +0 -2
  616. package/dist/async/utilities/abort-and-fail/_module.js.map +0 -1
  617. package/dist/async/utilities/abort-and-fail/abort-and-fail.js.map +0 -1
  618. package/dist/async/utilities/lazy-promise/_module.d.ts +0 -1
  619. package/dist/async/utilities/lazy-promise/_module.js +0 -2
  620. package/dist/async/utilities/lazy-promise/_module.js.map +0 -1
  621. package/dist/async/utilities/lazy-promise/lazy-promise.d.ts +0 -153
  622. package/dist/async/utilities/lazy-promise/lazy-promise.js +0 -176
  623. package/dist/async/utilities/lazy-promise/lazy-promise.js.map +0 -1
  624. package/dist/async/utilities/promise-queue/_module.d.ts +0 -1
  625. package/dist/async/utilities/promise-queue/_module.js +0 -2
  626. package/dist/async/utilities/promise-queue/_module.js.map +0 -1
  627. package/dist/async/utilities/promise-queue/promise-queue.d.ts +0 -32
  628. package/dist/async/utilities/promise-queue/promise-queue.js +0 -118
  629. package/dist/async/utilities/promise-queue/promise-queue.js.map +0 -1
  630. package/dist/async/utilities/timeout-and-fail/_module.d.ts +0 -1
  631. package/dist/async/utilities/timeout-and-fail/_module.js +0 -2
  632. package/dist/async/utilities/timeout-and-fail/_module.js.map +0 -1
  633. package/dist/async/utilities/timeout-and-fail/timeout-and-fail.d.ts +0 -7
  634. package/dist/async/utilities/timeout-and-fail/timeout-and-fail.js +0 -22
  635. package/dist/async/utilities/timeout-and-fail/timeout-and-fail.js.map +0 -1
  636. package/dist/lock/implementations/derivables/lock-provider/lock-state.d.ts +0 -40
  637. package/dist/lock/implementations/derivables/lock-provider/lock-state.js +0 -60
  638. package/dist/lock/implementations/derivables/lock-provider/lock-state.js.map +0 -1
  639. package/dist/serde/contracts/serializable.contract.d.ts +0 -12
  640. package/dist/serde/contracts/serializable.contract.js +0 -5
  641. package/dist/serde/contracts/serializable.contract.js.map +0 -1
  642. package/dist/serde/implementations/adapters/mongodb-serde/_module.d.ts +0 -1
  643. package/dist/serde/implementations/adapters/mongodb-serde/_module.js +0 -2
  644. package/dist/serde/implementations/adapters/mongodb-serde/_module.js.map +0 -1
  645. package/dist/serde/implementations/adapters/mongodb-serde/mongodb-serde.d.ts +0 -13
  646. package/dist/serde/implementations/adapters/mongodb-serde/mongodb-serde.js +0 -38
  647. package/dist/serde/implementations/adapters/mongodb-serde/mongodb-serde.js.map +0 -1
  648. package/dist/serde/implementations/adapters/redis-serde/_module.d.ts +0 -1
  649. package/dist/serde/implementations/adapters/redis-serde/_module.js +0 -2
  650. package/dist/serde/implementations/adapters/redis-serde/_module.js.map +0 -1
  651. package/dist/serde/implementations/adapters/redis-serde/redis-serde.d.ts +0 -13
  652. package/dist/serde/implementations/adapters/redis-serde/redis-serde.js +0 -39
  653. package/dist/serde/implementations/adapters/redis-serde/redis-serde.js.map +0 -1
  654. package/dist/serde/implementations/adapters/sql-serde/_module.d.ts +0 -1
  655. package/dist/serde/implementations/adapters/sql-serde/_module.js +0 -2
  656. package/dist/serde/implementations/adapters/sql-serde/_module.js.map +0 -1
  657. package/dist/serde/implementations/adapters/sql-serde/sql-serde.d.ts +0 -13
  658. package/dist/serde/implementations/adapters/sql-serde/sql-serde.js +0 -39
  659. package/dist/serde/implementations/adapters/sql-serde/sql-serde.js.map +0 -1
  660. package/dist/utilities/classes/hooks/_module.d.ts +0 -3
  661. package/dist/utilities/classes/hooks/_module.js +0 -4
  662. package/dist/utilities/classes/hooks/_module.js.map +0 -1
  663. package/dist/utilities/classes/hooks/async-hooks.js.map +0 -1
  664. package/dist/utilities/classes/hooks/hooks.js.map +0 -1
  665. package/dist/utilities/classes/hooks/types.js +0 -5
  666. package/dist/utilities/classes/hooks/types.js.map +0 -1
  667. package/dist/utilities/classes/namespace/_module.d.ts +0 -1
  668. package/dist/utilities/classes/namespace/_module.js +0 -2
  669. package/dist/utilities/classes/namespace/_module.js.map +0 -1
  670. package/dist/utilities/classes/namespace/namespace.d.ts +0 -85
  671. package/dist/utilities/classes/namespace/namespace.js +0 -125
  672. package/dist/utilities/classes/namespace/namespace.js.map +0 -1
  673. package/dist/utilities/classes/time-span/_module.d.ts +0 -1
  674. package/dist/utilities/classes/time-span/_module.js +0 -2
  675. package/dist/utilities/classes/time-span/_module.js.map +0 -1
  676. package/dist/utilities/classes/time-span/time-span.js.map +0 -1
  677. package/dist/utilities/contracts/serialized-error.contract.d.ts +0 -13
  678. package/dist/utilities/contracts/serialized-error.contract.js +0 -5
  679. package/dist/utilities/contracts/serialized-error.contract.js.map +0 -1
@@ -1,11 +1,11 @@
1
1
  /**
2
2
  * @module EventBus
3
3
  */
4
- import {} from "vitest";
4
+ import { vi, } from "vitest";
5
5
  import {} from "../../../event-bus/contracts/_module-exports.js";
6
6
  import {} from "../../../utilities/_module-exports.js";
7
- import { TimeSpan } from "../../../utilities/_module-exports.js";
8
- import { LazyPromise } from "../../../async/_module-exports.js";
7
+ import { Task } from "../../../task/_module-exports.js";
8
+ import { TimeSpan } from "../../../time-span/implementations/_module-exports.js";
9
9
  /**
10
10
  * The `eventBusTestSuite` function simplifies the process of testing your custom implementation of {@link IEventBus | `IEventBus`} with vitest.
11
11
  *
@@ -16,104 +16,36 @@ export function eventBusTestSuite(settings) {
16
16
  const { expect, test, describe, createEventBus, beforeEach } = settings;
17
17
  const TTL = TimeSpan.fromMilliseconds(50);
18
18
  let eventBus;
19
- beforeEach(async () => {
20
- eventBus = await createEventBus();
21
- });
22
- describe("method: addListener, removeListener, dispatch", () => {
23
- describe("Should be null when listener is added and event is not triggered", () => {
24
- test("Object literal listener", async () => {
25
- const listener = {
26
- result: null,
27
- invoke(event) {
28
- this.result = event;
29
- },
30
- };
19
+ describe("Reusable tests:", () => {
20
+ beforeEach(async () => {
21
+ eventBus = await createEventBus();
22
+ });
23
+ async function delay(time) {
24
+ await Task.delay(time);
25
+ }
26
+ describe("method: addListener, removeListener, dispatch", () => {
27
+ test("Should not call listener when listener is added and event is not triggered", async () => {
28
+ const listener = vi.fn((_event) => { });
31
29
  await eventBus.addListener("add", listener);
32
- expect(listener.result).toBeNull();
30
+ expect(listener).toHaveBeenCalledTimes(0);
33
31
  await eventBus.removeListener("add", listener);
34
32
  });
35
- test("Class instance listener", async () => {
36
- class Listener {
37
- result = null;
38
- invoke(event) {
39
- this.result = event;
40
- }
41
- }
42
- const listener = new Listener();
43
- await eventBus.addListener("add", listener);
44
- expect(listener.result).toBeNull();
45
- await eventBus.removeListener("add", listener);
46
- });
47
- test("Function listener", async () => {
48
- let result = null;
49
- const listener = (event) => {
50
- result = event;
51
- };
52
- await eventBus.addListener("add", listener);
53
- expect(result).toBeNull();
54
- await eventBus.removeListener("add", listener);
55
- });
56
- });
57
- describe("Should be AddEvent when listener is added and event is triggered", () => {
58
- test("Object literal listener", async () => {
59
- const listener = {
60
- result: null,
61
- invoke(event) {
62
- this.result = event;
63
- },
64
- };
33
+ test("Should call listener 2 times with AddEvent when listener is added and event is triggered 2 times", async () => {
34
+ const listener = vi.fn((_event) => { });
65
35
  await eventBus.addListener("add", listener);
66
36
  const event = {
67
37
  a: 1,
68
38
  b: 2,
69
39
  };
70
40
  await eventBus.dispatch("add", event);
71
- await LazyPromise.delay(TTL);
72
- expect(listener.result).toEqual(event);
73
- await eventBus.removeListener("add", listener);
74
- });
75
- test("Class instance listener", async () => {
76
- class Listener {
77
- result = null;
78
- invoke(event) {
79
- this.result = event;
80
- }
81
- }
82
- const listener = new Listener();
83
- await eventBus.addListener("add", listener);
84
- const event = {
85
- a: 1,
86
- b: 2,
87
- };
88
- await eventBus.dispatch("add", event);
89
- await LazyPromise.delay(TTL);
90
- expect(listener.result).toEqual(event);
91
- await eventBus.removeListener("add", listener);
92
- });
93
- test("Function listener", async () => {
94
- let result = null;
95
- const listener = (event) => {
96
- result = event;
97
- };
98
- await eventBus.addListener("add", listener);
99
- const event = {
100
- a: 1,
101
- b: 2,
102
- };
103
41
  await eventBus.dispatch("add", event);
104
- await LazyPromise.delay(TTL);
105
- expect(result).toEqual(event);
42
+ await delay(TTL);
43
+ expect(listener).toHaveBeenCalledTimes(2);
44
+ expect(listener).toHaveBeenCalledWith(event);
106
45
  await eventBus.removeListener("add", listener);
107
46
  });
108
- });
109
- describe("Should be null when listener is removed and event is triggered", () => {
110
- test("Object literal listener", async () => {
111
- const listener = {
112
- result: null,
113
- invoke(event) {
114
- this.result = event;
115
- },
116
- };
47
+ test("Should not call listener when listener is removed and event is triggered", async () => {
48
+ const listener = vi.fn((_event) => { });
117
49
  await eventBus.addListener("add", listener);
118
50
  await eventBus.removeListener("add", listener);
119
51
  const event = {
@@ -121,172 +53,33 @@ export function eventBusTestSuite(settings) {
121
53
  b: 2,
122
54
  };
123
55
  await eventBus.dispatch("add", event);
124
- await LazyPromise.delay(TTL);
125
- expect(listener.result).toBeNull();
126
- });
127
- test("Class instance listener", async () => {
128
- class Listener {
129
- result = null;
130
- invoke(event) {
131
- this.result = event;
132
- }
133
- }
134
- const listener = new Listener();
135
- await eventBus.addListener("add", listener);
136
- await eventBus.removeListener("add", listener);
137
- const event = {
138
- a: 1,
139
- b: 2,
140
- };
141
- await eventBus.dispatch("add", event);
142
- await LazyPromise.delay(TTL);
143
- expect(listener.result).toBeNull();
144
- });
145
- test("Function listener", async () => {
146
- let result = null;
147
- const listener = (event) => {
148
- result = event;
149
- };
150
- await eventBus.addListener("add", listener);
151
- await eventBus.removeListener("add", listener);
152
- const event = {
153
- a: 1,
154
- b: 2,
155
- };
156
- await eventBus.dispatch("add", event);
157
- await LazyPromise.delay(TTL);
158
- expect(result).toBeNull();
56
+ await delay(TTL);
57
+ expect(listener).toHaveBeenCalledTimes(0);
159
58
  });
160
59
  });
161
- });
162
- describe("method: subscribe, dispatch", () => {
163
- describe("Should be null when listener is added and event is not triggered", () => {
164
- test("Object literal listener", async () => {
165
- const listener = {
166
- result: null,
167
- invoke(event) {
168
- this.result = event;
169
- },
170
- };
171
- const unsubscribe = await eventBus.subscribe("add", listener);
172
- expect(listener.result).toBeNull();
173
- await unsubscribe();
174
- });
175
- test("Class instance listener", async () => {
176
- class Listener {
177
- result = null;
178
- invoke(event) {
179
- this.result = event;
180
- }
181
- }
182
- const listener = new Listener();
183
- const unsubscribe = await eventBus.subscribe("add", listener);
184
- expect(listener.result).toBeNull();
185
- await unsubscribe();
186
- });
187
- test("Function listener", async () => {
188
- let result = null;
189
- const listener = (event) => {
190
- result = event;
191
- };
60
+ describe("method: subscribe, dispatch", () => {
61
+ test("Should not call listener when listener is added and event is not triggered", async () => {
62
+ const listener = vi.fn((_event) => { });
192
63
  const unsubscribe = await eventBus.subscribe("add", listener);
193
- expect(result).toBeNull();
64
+ expect(listener).toHaveBeenCalledTimes(0);
194
65
  await unsubscribe();
195
66
  });
196
- });
197
- describe("Should be AddEvent when listener is added and event is triggered", () => {
198
- test("Object literal listener", async () => {
199
- const listener = {
200
- result: null,
201
- invoke(event) {
202
- this.result = event;
203
- },
204
- };
67
+ test("Should call listener 2 times with AddEvent when listener is added and event is triggered 2 times", async () => {
68
+ const listener = vi.fn((_event) => { });
205
69
  const unsubscribe = await eventBus.subscribe("add", listener);
206
70
  const event = {
207
71
  a: 1,
208
72
  b: 2,
209
73
  };
210
74
  await eventBus.dispatch("add", event);
211
- await LazyPromise.delay(TTL);
212
- expect(listener.result).toEqual(event);
213
- await unsubscribe();
214
- });
215
- test("Class instance listener", async () => {
216
- class Listener {
217
- result = null;
218
- invoke(event) {
219
- this.result = event;
220
- }
221
- }
222
- const listener = new Listener();
223
- const unsubscribe = await eventBus.subscribe("add", listener);
224
- const event = {
225
- a: 1,
226
- b: 2,
227
- };
228
75
  await eventBus.dispatch("add", event);
229
- await LazyPromise.delay(TTL);
230
- expect(listener.result).toEqual(event);
76
+ await delay(TTL);
77
+ expect(listener).toHaveBeenCalledTimes(2);
78
+ expect(listener).toHaveBeenCalledWith(event);
231
79
  await unsubscribe();
232
80
  });
233
- test("Function listener", async () => {
234
- let result = null;
235
- const listener = (event) => {
236
- result = event;
237
- };
238
- const unsubscribe = await eventBus.subscribe("add", listener);
239
- const event = {
240
- a: 1,
241
- b: 2,
242
- };
243
- await eventBus.dispatch("add", event);
244
- await LazyPromise.delay(TTL);
245
- expect(result).toEqual(event);
246
- await unsubscribe();
247
- });
248
- });
249
- describe("Should be null when listener is removed by unsubscribe and event is triggered", () => {
250
- test("Object literal listener", async () => {
251
- const listener = {
252
- result: null,
253
- invoke(event) {
254
- this.result = event;
255
- },
256
- };
257
- const unsubscribe = await eventBus.subscribe("add", listener);
258
- await unsubscribe();
259
- const event = {
260
- a: 1,
261
- b: 2,
262
- };
263
- await eventBus.dispatch("add", event);
264
- await LazyPromise.delay(TTL);
265
- expect(listener.result).toBeNull();
266
- });
267
- test("Class instance listener", async () => {
268
- class Listener {
269
- result = null;
270
- invoke(event) {
271
- this.result = event;
272
- }
273
- }
274
- const listener = new Listener();
275
- const unsubscribe = await eventBus.subscribe("add", listener);
276
- await unsubscribe();
277
- const event = {
278
- a: 1,
279
- b: 2,
280
- };
281
- await eventBus.dispatch("add", event);
282
- await LazyPromise.delay(TTL);
283
- expect(listener.result).toBeNull();
284
- });
285
- test("Function listener", async () => {
286
- let result = null;
287
- const listener = (event) => {
288
- result = event;
289
- };
81
+ test("Should not call listener when listener is removed by unsubscribe and event is triggered", async () => {
82
+ const listener = vi.fn((_event) => { });
290
83
  const unsubscribe = await eventBus.subscribe("add", listener);
291
84
  await unsubscribe();
292
85
  const event = {
@@ -294,51 +87,11 @@ export function eventBusTestSuite(settings) {
294
87
  b: 2,
295
88
  };
296
89
  await eventBus.dispatch("add", event);
297
- await LazyPromise.delay(TTL);
298
- expect(result).toBeNull();
299
- });
300
- });
301
- describe("Should be null when listener is removed by removeListener and event is triggered", () => {
302
- test("Object literal listener", async () => {
303
- const listener = {
304
- result: null,
305
- invoke(event) {
306
- this.result = event;
307
- },
308
- };
309
- await eventBus.subscribe("add", listener);
310
- await eventBus.removeListener("add", listener);
311
- const event = {
312
- a: 1,
313
- b: 2,
314
- };
315
- await eventBus.dispatch("add", event);
316
- await LazyPromise.delay(TTL);
317
- expect(listener.result).toBeNull();
318
- });
319
- test("Class instance listener", async () => {
320
- class Listener {
321
- result = null;
322
- invoke(event) {
323
- this.result = event;
324
- }
325
- }
326
- const listener = new Listener();
327
- await eventBus.subscribe("add", listener);
328
- await eventBus.removeListener("add", listener);
329
- const event = {
330
- a: 1,
331
- b: 2,
332
- };
333
- await eventBus.dispatch("add", event);
334
- await LazyPromise.delay(TTL);
335
- expect(listener.result).toBeNull();
90
+ await delay(TTL);
91
+ expect(listener).toHaveBeenCalledTimes(0);
336
92
  });
337
- test("Function listener", async () => {
338
- let result = null;
339
- const listener = (event) => {
340
- result = event;
341
- };
93
+ test("Should not call listener when listener is removed by removeListener and event is triggered", async () => {
94
+ const listener = vi.fn((_event) => { });
342
95
  await eventBus.subscribe("add", listener);
343
96
  await eventBus.removeListener("add", listener);
344
97
  const event = {
@@ -346,185 +99,43 @@ export function eventBusTestSuite(settings) {
346
99
  b: 2,
347
100
  };
348
101
  await eventBus.dispatch("add", event);
349
- await LazyPromise.delay(TTL);
350
- expect(result).toBeNull();
102
+ await delay(TTL);
103
+ expect(listener).toHaveBeenCalledTimes(0);
351
104
  });
352
105
  });
353
- });
354
- describe("method: subscribeOnce", () => {
355
- describe("Should be null when listener added and event is not triggered", () => {
356
- test("Object literal listener", async () => {
357
- const listener = {
358
- result: null,
359
- invoke(event) {
360
- this.result = event;
361
- },
362
- };
106
+ describe("method: subscribeOnce", () => {
107
+ test("Should not call listener when listener is added and event is not triggered", async () => {
108
+ const listener = vi.fn((_event) => { });
363
109
  await eventBus.subscribeOnce("add", listener);
364
- expect(listener.result).toBeNull();
110
+ expect(listener).toHaveBeenCalledTimes(0);
365
111
  });
366
- test("Class instance listener", async () => {
367
- class Listener {
368
- result = null;
369
- invoke(event) {
370
- this.result = event;
371
- }
372
- }
373
- const listener = new Listener();
374
- await eventBus.subscribeOnce("add", listener);
375
- expect(listener.result).toBeNull();
376
- });
377
- test("Function listener", async () => {
378
- let result = null;
379
- const listener = (event) => {
380
- result = event;
381
- };
382
- await eventBus.subscribeOnce("add", listener);
383
- expect(result).toBeNull();
384
- });
385
- });
386
- describe("Should be AddEvent when listener added and event is triggered", () => {
387
- test("Object literal listener", async () => {
388
- const listener = {
389
- result: null,
390
- invoke(event) {
391
- this.result = event;
392
- },
393
- };
112
+ test("Should call listener once with AddEvent when listener is added and event is triggered 2 times", async () => {
113
+ const listener = vi.fn((_event) => { });
394
114
  await eventBus.subscribeOnce("add", listener);
395
115
  const event = {
396
116
  a: 1,
397
117
  b: 2,
398
118
  };
399
119
  await eventBus.dispatch("add", event);
400
- await LazyPromise.delay(TTL);
401
- expect(listener.result).toEqual(event);
402
- });
403
- test("Class instance listener", async () => {
404
- class Listener {
405
- result = null;
406
- invoke(event) {
407
- this.result = event;
408
- }
409
- }
410
- const listener = new Listener();
411
- await eventBus.subscribeOnce("add", listener);
412
- const event = {
413
- a: 1,
414
- b: 2,
415
- };
416
120
  await eventBus.dispatch("add", event);
417
- await LazyPromise.delay(TTL);
418
- expect(listener.result).toEqual(event);
121
+ await delay(TTL);
122
+ expect(listener).toHaveBeenCalledOnce();
123
+ expect(listener).toHaveBeenCalledWith(event);
419
124
  });
420
- test("Function listener", async () => {
421
- let result = null;
422
- const listener = (event) => {
423
- result = event;
424
- };
125
+ test("Should only listen for event once", async () => {
126
+ const listener = vi.fn(() => { });
425
127
  await eventBus.subscribeOnce("add", listener);
426
128
  const event = {
427
129
  a: 1,
428
130
  b: 2,
429
131
  };
430
132
  await eventBus.dispatch("add", event);
431
- await LazyPromise.delay(TTL);
432
- expect(result).toEqual(event);
433
- });
434
- });
435
- describe("Should only listen for event once", () => {
436
- test("Object literal listener", async () => {
437
- const listener = {
438
- i: 0,
439
- invoke(_event) {
440
- this.i++;
441
- },
442
- };
443
- await eventBus.subscribeOnce("add", listener);
444
- const event = {
445
- a: 1,
446
- b: 2,
447
- };
448
- await eventBus.dispatch("add", event);
449
- await eventBus.dispatch("add", event);
450
- await LazyPromise.delay(TTL);
451
- expect(listener.i).toBe(1);
452
- });
453
- test("Class instance listener", async () => {
454
- class Listener {
455
- i = 0;
456
- invoke(_event) {
457
- this.i++;
458
- }
459
- }
460
- const listener = new Listener();
461
- await eventBus.subscribeOnce("add", listener);
462
- const event = {
463
- a: 1,
464
- b: 2,
465
- };
466
- await eventBus.dispatch("add", event);
467
- await eventBus.dispatch("add", event);
468
- await LazyPromise.delay(TTL);
469
- expect(listener.i).toBe(1);
470
- });
471
- test("Function listener", async () => {
472
- let i = 0;
473
- const listener = () => {
474
- i++;
475
- };
476
- await eventBus.subscribeOnce("add", listener);
477
- const event = {
478
- a: 1,
479
- b: 2,
480
- };
481
- await eventBus.dispatch("add", event);
482
- await eventBus.dispatch("add", event);
483
- await LazyPromise.delay(TTL);
484
- expect(i).toBe(1);
485
- });
486
- });
487
- describe("Should be null when listener is removed by unsubscribe function and event is triggered", () => {
488
- test("Object literal listener", async () => {
489
- const listener = {
490
- result: null,
491
- invoke(event) {
492
- this.result = event;
493
- },
494
- };
495
- const unsubscribe = await eventBus.subscribeOnce("add", listener);
496
- await unsubscribe();
497
- const event = {
498
- a: 1,
499
- b: 2,
500
- };
501
- await eventBus.dispatch("add", event);
502
- await LazyPromise.delay(TTL);
503
- expect(listener.result).toBeNull();
504
- });
505
- test("Class instance listener", async () => {
506
- class Listener {
507
- result = null;
508
- invoke(event) {
509
- this.result = event;
510
- }
511
- }
512
- const listener = new Listener();
513
- const unsubscribe = await eventBus.subscribeOnce("add", listener);
514
- await unsubscribe();
515
- const event = {
516
- a: 1,
517
- b: 2,
518
- };
519
133
  await eventBus.dispatch("add", event);
520
- await LazyPromise.delay(TTL);
521
- expect(listener.result).toBeNull();
134
+ await delay(TTL);
135
+ expect(listener).toHaveBeenCalledOnce();
522
136
  });
523
- test("Function listener", async () => {
524
- let result = null;
525
- const listener = (event) => {
526
- result = event;
527
- };
137
+ test("Should not call listener when listener is removed by unsubscribe function and event is triggered", async () => {
138
+ const listener = vi.fn((_event) => { });
528
139
  const unsubscribe = await eventBus.subscribeOnce("add", listener);
529
140
  await unsubscribe();
530
141
  const event = {
@@ -532,51 +143,11 @@ export function eventBusTestSuite(settings) {
532
143
  b: 2,
533
144
  };
534
145
  await eventBus.dispatch("add", event);
535
- await LazyPromise.delay(TTL);
536
- expect(result).toBeNull();
537
- });
538
- });
539
- describe("Should be null when listener is removed by removeListener method and event is triggered", () => {
540
- test("Object literal listener", async () => {
541
- const listener = {
542
- result: null,
543
- invoke(event) {
544
- this.result = event;
545
- },
546
- };
547
- await eventBus.subscribeOnce("add", listener);
548
- await eventBus.removeListener("add", listener);
549
- const event = {
550
- a: 1,
551
- b: 2,
552
- };
553
- await eventBus.dispatch("add", event);
554
- await LazyPromise.delay(TTL);
555
- expect(listener.result).toBeNull();
556
- });
557
- test("Class instance listener", async () => {
558
- class Listener {
559
- result = null;
560
- invoke(event) {
561
- this.result = event;
562
- }
563
- }
564
- const listener = new Listener();
565
- await eventBus.subscribeOnce("add", listener);
566
- await eventBus.removeListener("add", listener);
567
- const event = {
568
- a: 1,
569
- b: 2,
570
- };
571
- await eventBus.dispatch("add", event);
572
- await LazyPromise.delay(TTL);
573
- expect(listener.result).toBeNull();
146
+ await delay(TTL);
147
+ expect(listener).toHaveBeenCalledTimes(0);
574
148
  });
575
- test("Function listener", async () => {
576
- let result = null;
577
- const listener = (event) => {
578
- result = event;
579
- };
149
+ test("Should not call listener when listener is removed by removeListener method and event is triggered", async () => {
150
+ const listener = vi.fn((_event) => { });
580
151
  await eventBus.subscribeOnce("add", listener);
581
152
  await eventBus.removeListener("add", listener);
582
153
  const event = {
@@ -584,133 +155,18 @@ export function eventBusTestSuite(settings) {
584
155
  b: 2,
585
156
  };
586
157
  await eventBus.dispatch("add", event);
587
- await LazyPromise.delay(TTL);
588
- expect(result).toBeNull();
589
- });
590
- });
591
- });
592
- describe("method: listenOnce", () => {
593
- describe("Should be null when listener added and event is not triggered", () => {
594
- test("Object literal listener", async () => {
595
- const listener = {
596
- result: null,
597
- invoke(event) {
598
- this.result = event;
599
- },
600
- };
601
- await eventBus.listenOnce("add", listener);
602
- expect(listener.result).toBeNull();
603
- });
604
- test("Class instance listener", async () => {
605
- class Listener {
606
- result = null;
607
- invoke(event) {
608
- this.result = event;
609
- }
610
- }
611
- const listener = new Listener();
612
- await eventBus.listenOnce("add", listener);
613
- expect(listener.result).toBeNull();
614
- });
615
- test("Function listener", async () => {
616
- let result = null;
617
- const listener = (event) => {
618
- result = event;
619
- };
620
- await eventBus.listenOnce("add", listener);
621
- expect(result).toBeNull();
622
- });
623
- });
624
- describe("Should be AddEvent when listener added and event is triggered", () => {
625
- test("Object literal listener", async () => {
626
- const listener = {
627
- result: null,
628
- invoke(event) {
629
- this.result = event;
630
- },
631
- };
632
- await eventBus.listenOnce("add", listener);
633
- const event = {
634
- a: 1,
635
- b: 2,
636
- };
637
- await eventBus.dispatch("add", event);
638
- await LazyPromise.delay(TTL);
639
- expect(listener.result).toEqual(event);
640
- });
641
- test("Class instance listener", async () => {
642
- class Listener {
643
- result = null;
644
- invoke(event) {
645
- this.result = event;
646
- }
647
- }
648
- const listener = new Listener();
649
- await eventBus.listenOnce("add", listener);
650
- const event = {
651
- a: 1,
652
- b: 2,
653
- };
654
- await eventBus.dispatch("add", event);
655
- await LazyPromise.delay(TTL);
656
- expect(listener.result).toEqual(event);
657
- });
658
- test("Function listener", async () => {
659
- let result = null;
660
- const listener = (event) => {
661
- result = event;
662
- };
663
- await eventBus.listenOnce("add", listener);
664
- const event = {
665
- a: 1,
666
- b: 2,
667
- };
668
- await eventBus.dispatch("add", event);
669
- await LazyPromise.delay(TTL);
670
- expect(result).toEqual(event);
158
+ await delay(TTL);
159
+ expect(listener).toHaveBeenCalledTimes(0);
671
160
  });
672
161
  });
673
- describe("Should only listen for event once", () => {
674
- test("Object literal listener", async () => {
675
- const listener = {
676
- i: 0,
677
- invoke(_event) {
678
- this.i++;
679
- },
680
- };
681
- await eventBus.listenOnce("add", listener);
682
- const event = {
683
- a: 1,
684
- b: 2,
685
- };
686
- await eventBus.dispatch("add", event);
687
- await eventBus.dispatch("add", event);
688
- await LazyPromise.delay(TTL);
689
- expect(listener.i).toBe(1);
690
- });
691
- test("Class instance listener", async () => {
692
- class Listener {
693
- i = 0;
694
- invoke(_event) {
695
- this.i++;
696
- }
697
- }
698
- const listener = new Listener();
162
+ describe("method: listenOnce", () => {
163
+ test("Should not call listener when listener is added and event is not triggered", async () => {
164
+ const listener = vi.fn((_event) => { });
699
165
  await eventBus.listenOnce("add", listener);
700
- const event = {
701
- a: 1,
702
- b: 2,
703
- };
704
- await eventBus.dispatch("add", event);
705
- await eventBus.dispatch("add", event);
706
- await LazyPromise.delay(TTL);
707
- expect(listener.i).toBe(1);
166
+ expect(listener).toHaveBeenCalledTimes(0);
708
167
  });
709
- test("Function listener", async () => {
710
- let i = 0;
711
- const listener = () => {
712
- i++;
713
- };
168
+ test("Should call listener once with AddEvent when listener is added and event is triggered 2 times", async () => {
169
+ const listener = vi.fn((_event_AddEvent) => { });
714
170
  await eventBus.listenOnce("add", listener);
715
171
  const event = {
716
172
  a: 1,
@@ -718,18 +174,12 @@ export function eventBusTestSuite(settings) {
718
174
  };
719
175
  await eventBus.dispatch("add", event);
720
176
  await eventBus.dispatch("add", event);
721
- await LazyPromise.delay(TTL);
722
- expect(i).toBe(1);
177
+ await delay(TTL);
178
+ expect(listener).toHaveBeenCalledOnce();
179
+ expect(listener).toHaveBeenCalledWith(event);
723
180
  });
724
- });
725
- describe("Should be null when listener is removed and event is triggered", () => {
726
- test("Object literal listener", async () => {
727
- const listener = {
728
- result: null,
729
- invoke(event) {
730
- this.result = event;
731
- },
732
- };
181
+ test("Should not call listener when listener is removed and event is triggered", async () => {
182
+ const listener = vi.fn((_event) => { });
733
183
  await eventBus.listenOnce("add", listener);
734
184
  await eventBus.removeListener("add", listener);
735
185
  const event = {
@@ -737,67 +187,29 @@ export function eventBusTestSuite(settings) {
737
187
  b: 2,
738
188
  };
739
189
  await eventBus.dispatch("add", event);
740
- await LazyPromise.delay(TTL);
741
- expect(listener.result).toBeNull();
190
+ await delay(TTL);
191
+ expect(listener).toHaveBeenCalledTimes(0);
742
192
  });
743
- test("Class instance listener", async () => {
744
- class Listener {
745
- result = null;
746
- invoke(event) {
747
- this.result = event;
748
- }
749
- }
750
- const listener = new Listener();
751
- await eventBus.listenOnce("add", listener);
752
- await eventBus.removeListener("add", listener);
753
- const event = {
754
- a: 1,
755
- b: 2,
756
- };
757
- await eventBus.dispatch("add", event);
758
- await LazyPromise.delay(TTL);
759
- expect(listener.result).toBeNull();
193
+ });
194
+ describe("method: asPromise", () => {
195
+ test("Should not call onfulfilled handler when event is not triggered", () => {
196
+ const listener = vi.fn((_event) => { });
197
+ eventBus.asPromise("add").then(listener);
198
+ expect(listener).toHaveBeenCalledTimes(0);
760
199
  });
761
- test("Function listener", async () => {
762
- let result = null;
763
- const listener = (event) => {
764
- result = event;
765
- };
766
- await eventBus.listenOnce("add", listener);
767
- await eventBus.removeListener("add", listener);
200
+ test("Should call onfulfilled with AddEvent when event is triggered", async () => {
201
+ const listener = vi.fn((_event) => { });
202
+ eventBus.asPromise("add").then(listener);
768
203
  const event = {
769
204
  a: 1,
770
205
  b: 2,
771
206
  };
772
207
  await eventBus.dispatch("add", event);
773
- await LazyPromise.delay(TTL);
774
- expect(result).toBeNull();
208
+ await delay(TTL);
209
+ expect(listener).toHaveBeenCalledTimes(1);
210
+ expect(listener).toHaveBeenCalledWith(event);
775
211
  });
776
212
  });
777
213
  });
778
- describe("method: asPromise", () => {
779
- test("Should be null when listener added and event is not triggered", () => {
780
- let result = null;
781
- const listener = (event) => {
782
- result = event;
783
- };
784
- eventBus.asPromise("add").then(listener);
785
- expect(result).toBeNull();
786
- });
787
- test("Should be AddEvent when listener added and event is triggered", async () => {
788
- let result = null;
789
- const listener = (event) => {
790
- result = event;
791
- };
792
- eventBus.asPromise("add").then(listener);
793
- const event = {
794
- a: 1,
795
- b: 2,
796
- };
797
- await eventBus.dispatch("add", event);
798
- await LazyPromise.delay(TTL);
799
- expect(result).toEqual(event);
800
- });
801
- });
802
214
  }
803
215
  //# sourceMappingURL=event-bus.test-suite.js.map