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