@daiso-tech/core 0.15.0 → 0.16.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (304) hide show
  1. package/dist/cjs/_module.js +2 -2
  2. package/dist/cjs/_module.js.map +1 -1
  3. package/dist/cjs/async/utilities/lazy-promise/lazy-promise.js +15 -0
  4. package/dist/cjs/async/utilities/lazy-promise/lazy-promise.js.map +1 -1
  5. package/dist/cjs/cache/implementations/_shared/cache-adapter.test-suite.js +256 -177
  6. package/dist/cjs/cache/implementations/_shared/cache-adapter.test-suite.js.map +1 -1
  7. package/dist/cjs/cache/implementations/_shared/cache.test-suite.js +23 -2
  8. package/dist/cjs/cache/implementations/_shared/cache.test-suite.js.map +1 -1
  9. package/dist/cjs/cache/implementations/adapters/kysely-sqlite-cache-adapter/kysely-sqlite-cache-adapter.js +59 -18
  10. package/dist/cjs/cache/implementations/adapters/kysely-sqlite-cache-adapter/kysely-sqlite-cache-adapter.js.map +1 -1
  11. package/dist/cjs/cache/implementations/adapters/libsql-cache-adapter/libsql-cache-adapter.js +15 -5
  12. package/dist/cjs/cache/implementations/adapters/libsql-cache-adapter/libsql-cache-adapter.js.map +1 -1
  13. package/dist/cjs/cache/implementations/adapters/memory-cache-adapter/memory-cache-adapter.js +58 -39
  14. package/dist/cjs/cache/implementations/adapters/memory-cache-adapter/memory-cache-adapter.js.map +1 -1
  15. package/dist/cjs/cache/implementations/adapters/mongodb-cache-adapter/mongodb-cache-adapter.js +63 -26
  16. package/dist/cjs/cache/implementations/adapters/mongodb-cache-adapter/mongodb-cache-adapter.js.map +1 -1
  17. package/dist/cjs/cache/implementations/adapters/no-op-cache-adapter/no-op-cache-adapter.js +10 -1
  18. package/dist/cjs/cache/implementations/adapters/no-op-cache-adapter/no-op-cache-adapter.js.map +1 -1
  19. package/dist/cjs/cache/implementations/adapters/redis-cache-adapter/redis-cache-adapter.js +44 -19
  20. package/dist/cjs/cache/implementations/adapters/redis-cache-adapter/redis-cache-adapter.js.map +1 -1
  21. package/dist/cjs/cache/implementations/adapters/sqlite-cache-adapter/sqlite-cache-adapter.js +15 -5
  22. package/dist/cjs/cache/implementations/adapters/sqlite-cache-adapter/sqlite-cache-adapter.js.map +1 -1
  23. package/dist/cjs/cache/implementations/derivables/_module.js +0 -1
  24. package/dist/cjs/cache/implementations/derivables/_module.js.map +1 -1
  25. package/dist/cjs/cache/implementations/derivables/cache-factory.js +1 -4
  26. package/dist/cjs/cache/implementations/derivables/cache-factory.js.map +1 -1
  27. package/dist/cjs/cache/implementations/derivables/cache.js +297 -53
  28. package/dist/cjs/cache/implementations/derivables/cache.js.map +1 -1
  29. package/dist/cjs/collection/implementations/async-iterable-collection/_shared/async-merge-iterable.js +14 -7
  30. package/dist/cjs/collection/implementations/async-iterable-collection/_shared/async-merge-iterable.js.map +1 -1
  31. package/dist/cjs/collection/implementations/async-iterable-collection/async-iterable-collection.js +51 -39
  32. package/dist/cjs/collection/implementations/async-iterable-collection/async-iterable-collection.js.map +1 -1
  33. package/dist/cjs/collection/implementations/iterable-collection/_shared/merge-iterable.js +6 -7
  34. package/dist/cjs/collection/implementations/iterable-collection/_shared/merge-iterable.js.map +1 -1
  35. package/dist/cjs/collection/implementations/iterable-collection/iterable-collection.js +11 -2
  36. package/dist/cjs/collection/implementations/iterable-collection/iterable-collection.js.map +1 -1
  37. package/dist/cjs/collection/implementations/list-collection/list-collection.js +13 -0
  38. package/dist/cjs/collection/implementations/list-collection/list-collection.js.map +1 -1
  39. package/dist/cjs/event-bus/implementations/_shared/event-bus-adapter.test-suite.js +76 -32
  40. package/dist/cjs/event-bus/implementations/_shared/event-bus-adapter.test-suite.js.map +1 -1
  41. package/dist/cjs/event-bus/implementations/_shared/event-bus.test-suite.js +63 -27
  42. package/dist/cjs/event-bus/implementations/_shared/event-bus.test-suite.js.map +1 -1
  43. package/dist/cjs/event-bus/implementations/adapters/_module.js +1 -1
  44. package/dist/cjs/event-bus/implementations/adapters/_module.js.map +1 -1
  45. package/dist/cjs/event-bus/implementations/adapters/memory-event-bus-adapter/memory-event-bus-adapter.js +19 -9
  46. package/dist/cjs/event-bus/implementations/adapters/memory-event-bus-adapter/memory-event-bus-adapter.js.map +1 -1
  47. package/dist/cjs/event-bus/implementations/adapters/no-op-event-bus-adapter/no-op-event-bus-adapter.js +7 -1
  48. package/dist/cjs/event-bus/implementations/adapters/no-op-event-bus-adapter/no-op-event-bus-adapter.js.map +1 -1
  49. package/dist/cjs/event-bus/implementations/adapters/redis-pub-sub-event-bus-adapter/_module.js.map +1 -0
  50. package/dist/cjs/event-bus/implementations/adapters/redis-pub-sub-event-bus-adapter/redis-pub-sub-event-bus-adapter.js +52 -0
  51. package/dist/cjs/event-bus/implementations/adapters/redis-pub-sub-event-bus-adapter/redis-pub-sub-event-bus-adapter.js.map +1 -0
  52. package/dist/cjs/event-bus/implementations/derivables/event-bus-factory.js +3 -4
  53. package/dist/cjs/event-bus/implementations/derivables/event-bus-factory.js.map +1 -1
  54. package/dist/cjs/event-bus/implementations/derivables/event-bus.js +82 -25
  55. package/dist/cjs/event-bus/implementations/derivables/event-bus.js.map +1 -1
  56. package/dist/cjs/{serializer/implementations/_shared/test-utilities → serde/contracts}/_module.js +2 -1
  57. package/dist/cjs/serde/contracts/_module.js.map +1 -0
  58. package/dist/cjs/{serializer/contracts/serializer.contract.js → serde/contracts/serde.contract.js} +1 -1
  59. package/dist/cjs/serde/contracts/serde.contract.js.map +1 -0
  60. package/dist/cjs/{serializer/contracts/serializer.errors.js → serde/contracts/serde.errors.js} +7 -7
  61. package/dist/cjs/serde/contracts/serde.errors.js.map +1 -0
  62. package/dist/cjs/{serializer/contracts → serde/implementations}/_module.js +5 -2
  63. package/dist/cjs/serde/implementations/_module.js.map +1 -0
  64. package/dist/cjs/{serializer/implementations/mongodb-serializer → serde/implementations/_shared/test-utilities}/_module.js +1 -1
  65. package/dist/cjs/serde/implementations/_shared/test-utilities/_module.js.map +1 -0
  66. package/dist/{esm/serializer/implementations/_shared/test-utilities/serializer.test-suite.js → cjs/serde/implementations/_shared/test-utilities/serde.test-suite.js} +65 -62
  67. package/dist/cjs/serde/implementations/_shared/test-utilities/serde.test-suite.js.map +1 -0
  68. package/dist/cjs/{serializer/implementations/sql-serializer → serde/implementations/mongodb-serde}/_module.js +1 -1
  69. package/dist/cjs/serde/implementations/mongodb-serde/_module.js.map +1 -0
  70. package/dist/cjs/serde/implementations/mongodb-serde/mongodb-serde.js +36 -0
  71. package/dist/cjs/serde/implementations/mongodb-serde/mongodb-serde.js.map +1 -0
  72. package/dist/cjs/{serializer/implementations/redis-serializer → serde/implementations/redis-serde}/_module.js +1 -1
  73. package/dist/cjs/serde/implementations/redis-serde/_module.js.map +1 -0
  74. package/dist/cjs/serde/implementations/redis-serde/redis-serde.js +37 -0
  75. package/dist/cjs/serde/implementations/redis-serde/redis-serde.js.map +1 -0
  76. package/dist/cjs/serde/implementations/sql-serde/_module.js +18 -0
  77. package/dist/cjs/serde/implementations/sql-serde/_module.js.map +1 -0
  78. package/dist/cjs/serde/implementations/sql-serde/sql-serde.js +37 -0
  79. package/dist/cjs/serde/implementations/sql-serde/sql-serde.js.map +1 -0
  80. package/dist/cjs/serde/implementations/super-json-serde/_module.js +18 -0
  81. package/dist/cjs/serde/implementations/super-json-serde/_module.js.map +1 -0
  82. package/dist/cjs/{serializer/implementations/super-json-serializer/super-json-serializer.js → serde/implementations/super-json-serde/super-json-serde.js} +74 -100
  83. package/dist/cjs/serde/implementations/super-json-serde/super-json-serde.js.map +1 -0
  84. package/dist/cjs/utilities/functions.js +5 -5
  85. package/dist/cjs/utilities/functions.js.map +1 -1
  86. package/dist/cjs/utilities/time-span/time-span.js +8 -0
  87. package/dist/cjs/utilities/time-span/time-span.js.map +1 -1
  88. package/dist/esm/_module.js +2 -2
  89. package/dist/esm/_module.js.map +1 -1
  90. package/dist/esm/async/utilities/lazy-promise/lazy-promise.js +15 -0
  91. package/dist/esm/async/utilities/lazy-promise/lazy-promise.js.map +1 -1
  92. package/dist/esm/cache/implementations/_shared/cache-adapter.test-suite.js +256 -177
  93. package/dist/esm/cache/implementations/_shared/cache-adapter.test-suite.js.map +1 -1
  94. package/dist/esm/cache/implementations/_shared/cache.test-suite.js +23 -2
  95. package/dist/esm/cache/implementations/_shared/cache.test-suite.js.map +1 -1
  96. package/dist/esm/cache/implementations/adapters/kysely-sqlite-cache-adapter/kysely-sqlite-cache-adapter.js +60 -19
  97. package/dist/esm/cache/implementations/adapters/kysely-sqlite-cache-adapter/kysely-sqlite-cache-adapter.js.map +1 -1
  98. package/dist/esm/cache/implementations/adapters/libsql-cache-adapter/libsql-cache-adapter.js +15 -5
  99. package/dist/esm/cache/implementations/adapters/libsql-cache-adapter/libsql-cache-adapter.js.map +1 -1
  100. package/dist/esm/cache/implementations/adapters/memory-cache-adapter/memory-cache-adapter.js +58 -39
  101. package/dist/esm/cache/implementations/adapters/memory-cache-adapter/memory-cache-adapter.js.map +1 -1
  102. package/dist/esm/cache/implementations/adapters/mongodb-cache-adapter/mongodb-cache-adapter.js +63 -23
  103. package/dist/esm/cache/implementations/adapters/mongodb-cache-adapter/mongodb-cache-adapter.js.map +1 -1
  104. package/dist/esm/cache/implementations/adapters/no-op-cache-adapter/no-op-cache-adapter.js +10 -1
  105. package/dist/esm/cache/implementations/adapters/no-op-cache-adapter/no-op-cache-adapter.js.map +1 -1
  106. package/dist/esm/cache/implementations/adapters/redis-cache-adapter/redis-cache-adapter.js +44 -19
  107. package/dist/esm/cache/implementations/adapters/redis-cache-adapter/redis-cache-adapter.js.map +1 -1
  108. package/dist/esm/cache/implementations/adapters/sqlite-cache-adapter/sqlite-cache-adapter.js +15 -5
  109. package/dist/esm/cache/implementations/adapters/sqlite-cache-adapter/sqlite-cache-adapter.js.map +1 -1
  110. package/dist/esm/cache/implementations/derivables/_module.js +0 -1
  111. package/dist/esm/cache/implementations/derivables/_module.js.map +1 -1
  112. package/dist/esm/cache/implementations/derivables/cache-factory.js +1 -4
  113. package/dist/esm/cache/implementations/derivables/cache-factory.js.map +1 -1
  114. package/dist/esm/cache/implementations/derivables/cache.js +296 -52
  115. package/dist/esm/cache/implementations/derivables/cache.js.map +1 -1
  116. package/dist/esm/collection/implementations/async-iterable-collection/_shared/async-merge-iterable.js +14 -7
  117. package/dist/esm/collection/implementations/async-iterable-collection/_shared/async-merge-iterable.js.map +1 -1
  118. package/dist/esm/collection/implementations/async-iterable-collection/async-iterable-collection.js +51 -39
  119. package/dist/esm/collection/implementations/async-iterable-collection/async-iterable-collection.js.map +1 -1
  120. package/dist/esm/collection/implementations/iterable-collection/_shared/merge-iterable.js +6 -7
  121. package/dist/esm/collection/implementations/iterable-collection/_shared/merge-iterable.js.map +1 -1
  122. package/dist/esm/collection/implementations/iterable-collection/iterable-collection.js +11 -2
  123. package/dist/esm/collection/implementations/iterable-collection/iterable-collection.js.map +1 -1
  124. package/dist/esm/collection/implementations/list-collection/list-collection.js +13 -0
  125. package/dist/esm/collection/implementations/list-collection/list-collection.js.map +1 -1
  126. package/dist/esm/event-bus/implementations/_shared/event-bus-adapter.test-suite.js +76 -32
  127. package/dist/esm/event-bus/implementations/_shared/event-bus-adapter.test-suite.js.map +1 -1
  128. package/dist/esm/event-bus/implementations/_shared/event-bus.test-suite.js +63 -27
  129. package/dist/esm/event-bus/implementations/_shared/event-bus.test-suite.js.map +1 -1
  130. package/dist/esm/event-bus/implementations/adapters/_module.js +1 -1
  131. package/dist/esm/event-bus/implementations/adapters/_module.js.map +1 -1
  132. package/dist/esm/event-bus/implementations/adapters/memory-event-bus-adapter/memory-event-bus-adapter.js +19 -9
  133. package/dist/esm/event-bus/implementations/adapters/memory-event-bus-adapter/memory-event-bus-adapter.js.map +1 -1
  134. package/dist/esm/event-bus/implementations/adapters/no-op-event-bus-adapter/no-op-event-bus-adapter.js +7 -1
  135. package/dist/esm/event-bus/implementations/adapters/no-op-event-bus-adapter/no-op-event-bus-adapter.js.map +1 -1
  136. package/dist/esm/event-bus/implementations/adapters/redis-pub-sub-event-bus-adapter/_module.js.map +1 -0
  137. package/dist/esm/event-bus/implementations/adapters/redis-pub-sub-event-bus-adapter/redis-pub-sub-event-bus-adapter.js +48 -0
  138. package/dist/esm/event-bus/implementations/adapters/redis-pub-sub-event-bus-adapter/redis-pub-sub-event-bus-adapter.js.map +1 -0
  139. package/dist/esm/event-bus/implementations/derivables/event-bus-factory.js +3 -4
  140. package/dist/esm/event-bus/implementations/derivables/event-bus-factory.js.map +1 -1
  141. package/dist/esm/event-bus/implementations/derivables/event-bus.js +83 -26
  142. package/dist/esm/event-bus/implementations/derivables/event-bus.js.map +1 -1
  143. package/dist/esm/serde/contracts/_module.js +3 -0
  144. package/dist/esm/serde/contracts/_module.js.map +1 -0
  145. package/dist/esm/serde/contracts/serde.contract.js +1 -0
  146. package/dist/esm/serde/contracts/serde.contract.js.map +1 -0
  147. package/dist/esm/{serializer/contracts/serializer.errors.js → serde/contracts/serde.errors.js} +5 -5
  148. package/dist/esm/serde/contracts/serde.errors.js.map +1 -0
  149. package/dist/esm/serde/implementations/_module.js +6 -0
  150. package/dist/esm/serde/implementations/_module.js.map +1 -0
  151. package/dist/esm/serde/implementations/_shared/test-utilities/_module.js +2 -0
  152. package/dist/esm/serde/implementations/_shared/test-utilities/_module.js.map +1 -0
  153. package/dist/{cjs/serializer/implementations/_shared/test-utilities/serializer.test-suite.js → esm/serde/implementations/_shared/test-utilities/serde.test-suite.js} +62 -65
  154. package/dist/esm/serde/implementations/_shared/test-utilities/serde.test-suite.js.map +1 -0
  155. package/dist/esm/serde/implementations/mongodb-serde/_module.js +2 -0
  156. package/dist/esm/serde/implementations/mongodb-serde/_module.js.map +1 -0
  157. package/dist/esm/{serializer/implementations/mongodb-serializer/mongodb-serializer.js → serde/implementations/mongodb-serde/mongodb-serde.js} +10 -10
  158. package/dist/esm/serde/implementations/mongodb-serde/mongodb-serde.js.map +1 -0
  159. package/dist/esm/serde/implementations/redis-serde/_module.js +2 -0
  160. package/dist/esm/serde/implementations/redis-serde/_module.js.map +1 -0
  161. package/dist/esm/{serializer/implementations/sql-serializer/sql-serializer.js → serde/implementations/redis-serde/redis-serde.js} +10 -10
  162. package/dist/esm/serde/implementations/redis-serde/redis-serde.js.map +1 -0
  163. package/dist/esm/serde/implementations/sql-serde/_module.js +2 -0
  164. package/dist/esm/serde/implementations/sql-serde/_module.js.map +1 -0
  165. package/dist/esm/{serializer/implementations/redis-serializer/redis-serializer.js → serde/implementations/sql-serde/sql-serde.js} +10 -10
  166. package/dist/esm/serde/implementations/sql-serde/sql-serde.js.map +1 -0
  167. package/dist/esm/serde/implementations/super-json-serde/_module.js +2 -0
  168. package/dist/esm/serde/implementations/super-json-serde/_module.js.map +1 -0
  169. package/dist/esm/{serializer/implementations/super-json-serializer/super-json-serializer.js → serde/implementations/super-json-serde/super-json-serde.js} +52 -55
  170. package/dist/esm/serde/implementations/super-json-serde/super-json-serde.js.map +1 -0
  171. package/dist/esm/utilities/functions.js +4 -4
  172. package/dist/esm/utilities/functions.js.map +1 -1
  173. package/dist/esm/utilities/time-span/time-span.js +8 -0
  174. package/dist/esm/utilities/time-span/time-span.js.map +1 -1
  175. package/dist/types/_module.d.ts +2 -2
  176. package/dist/types/async/utilities/lazy-promise/lazy-promise.d.ts +38 -1
  177. package/dist/types/cache/contracts/cache-adapter.contract.d.ts +20 -6
  178. package/dist/types/cache/contracts/cache-factory.contract.d.ts +4 -4
  179. package/dist/types/cache/contracts/cache.contract.d.ts +19 -16
  180. package/dist/types/cache/contracts/cache.events.d.ts +17 -21
  181. package/dist/types/cache/implementations/_shared/cache-adapter.test-suite.d.ts +12 -5
  182. package/dist/types/cache/implementations/_shared/cache.test-suite.d.ts +6 -6
  183. package/dist/types/cache/implementations/adapters/kysely-sqlite-cache-adapter/kysely-sqlite-cache-adapter.d.ts +11 -5
  184. package/dist/types/cache/implementations/adapters/libsql-cache-adapter/libsql-cache-adapter.d.ts +17 -11
  185. package/dist/types/cache/implementations/adapters/memory-cache-adapter/memory-cache-adapter.d.ts +12 -6
  186. package/dist/types/cache/implementations/adapters/mongodb-cache-adapter/mongodb-cache-adapter.d.ts +21 -10
  187. package/dist/types/cache/implementations/adapters/no-op-cache-adapter/no-op-cache-adapter.d.ts +5 -2
  188. package/dist/types/cache/implementations/adapters/redis-cache-adapter/redis-cache-adapter.d.ts +20 -13
  189. package/dist/types/cache/implementations/adapters/sqlite-cache-adapter/sqlite-cache-adapter.d.ts +16 -8
  190. package/dist/types/cache/implementations/derivables/_module.d.ts +0 -1
  191. package/dist/types/cache/implementations/derivables/cache-factory.d.ts +5 -11
  192. package/dist/types/cache/implementations/derivables/cache.d.ts +35 -43
  193. package/dist/types/collection/implementations/async-iterable-collection/_shared/async-merge-iterable.d.ts +4 -5
  194. package/dist/types/collection/implementations/async-iterable-collection/async-iterable-collection.d.ts +7 -2
  195. package/dist/types/collection/implementations/iterable-collection/_shared/merge-iterable.d.ts +4 -5
  196. package/dist/types/collection/implementations/iterable-collection/iterable-collection.d.ts +3 -0
  197. package/dist/types/collection/implementations/list-collection/list-collection.d.ts +3 -0
  198. package/dist/types/event-bus/contracts/event-bus-adapter.contract.d.ts +8 -5
  199. package/dist/types/event-bus/contracts/event-bus-factory.contract.d.ts +3 -3
  200. package/dist/types/event-bus/contracts/event-bus.contract.d.ts +36 -13
  201. package/dist/types/event-bus/implementations/_shared/event-bus-adapter.test-suite.d.ts +16 -7
  202. package/dist/types/event-bus/implementations/_shared/event-bus.test-suite.d.ts +9 -9
  203. package/dist/types/event-bus/implementations/adapters/_module.d.ts +1 -1
  204. package/dist/types/event-bus/implementations/adapters/memory-event-bus-adapter/memory-event-bus-adapter.d.ts +10 -5
  205. package/dist/types/event-bus/implementations/adapters/no-op-event-bus-adapter/no-op-event-bus-adapter.d.ts +4 -1
  206. package/dist/types/event-bus/implementations/adapters/redis-pub-sub-event-bus-adapter/redis-pub-sub-event-bus-adapter.d.ts +50 -0
  207. package/dist/types/event-bus/implementations/derivables/event-bus-factory.d.ts +5 -6
  208. package/dist/types/event-bus/implementations/derivables/event-bus.d.ts +16 -42
  209. package/dist/types/serde/contracts/_module.d.ts +2 -0
  210. package/dist/types/serde/contracts/serde.contract.d.ts +41 -0
  211. package/dist/types/{serializer/contracts/serializer.errors.d.ts → serde/contracts/serde.errors.d.ts} +4 -4
  212. package/dist/types/serde/implementations/_module.d.ts +5 -0
  213. package/dist/types/serde/implementations/_shared/test-utilities/_module.d.ts +1 -0
  214. package/dist/types/serde/implementations/_shared/test-utilities/serde.test-suite.d.ts +18 -0
  215. package/dist/types/serde/implementations/mongodb-serde/_module.d.ts +1 -0
  216. package/dist/types/serde/implementations/mongodb-serde/mongodb-serde.d.ts +13 -0
  217. package/dist/types/serde/implementations/redis-serde/_module.d.ts +1 -0
  218. package/dist/types/serde/implementations/redis-serde/redis-serde.d.ts +13 -0
  219. package/dist/types/serde/implementations/sql-serde/_module.d.ts +1 -0
  220. package/dist/types/serde/implementations/sql-serde/sql-serde.d.ts +13 -0
  221. package/dist/types/serde/implementations/super-json-serde/_module.d.ts +1 -0
  222. package/dist/types/serde/implementations/super-json-serde/super-json-serde.d.ts +25 -0
  223. package/dist/types/utilities/functions.d.ts +1 -1
  224. package/dist/types/utilities/time-span/time-span.d.ts +11 -2
  225. package/package.json +3 -9
  226. package/dist/cjs/cache/implementations/derivables/base-cache.js +0 -270
  227. package/dist/cjs/cache/implementations/derivables/base-cache.js.map +0 -1
  228. package/dist/cjs/event-bus/implementations/adapters/redis-event-bus-adapter/_module.js.map +0 -1
  229. package/dist/cjs/event-bus/implementations/adapters/redis-event-bus-adapter/redis-event-bus-adapter.js +0 -44
  230. package/dist/cjs/event-bus/implementations/adapters/redis-event-bus-adapter/redis-event-bus-adapter.js.map +0 -1
  231. package/dist/cjs/event-bus/implementations/derivables/base-event-bus.js +0 -47
  232. package/dist/cjs/event-bus/implementations/derivables/base-event-bus.js.map +0 -1
  233. package/dist/cjs/event-bus/implementations/derivables/with-namespace-event-bus-adapter.js +0 -42
  234. package/dist/cjs/event-bus/implementations/derivables/with-namespace-event-bus-adapter.js.map +0 -1
  235. package/dist/cjs/serializer/contracts/_module.js.map +0 -1
  236. package/dist/cjs/serializer/contracts/serializer.contract.js.map +0 -1
  237. package/dist/cjs/serializer/contracts/serializer.errors.js.map +0 -1
  238. package/dist/cjs/serializer/implementations/_module.js +0 -22
  239. package/dist/cjs/serializer/implementations/_module.js.map +0 -1
  240. package/dist/cjs/serializer/implementations/_shared/test-utilities/_module.js.map +0 -1
  241. package/dist/cjs/serializer/implementations/_shared/test-utilities/serializer.test-suite.js.map +0 -1
  242. package/dist/cjs/serializer/implementations/mongodb-serializer/_module.js.map +0 -1
  243. package/dist/cjs/serializer/implementations/mongodb-serializer/mongodb-serializer.js +0 -36
  244. package/dist/cjs/serializer/implementations/mongodb-serializer/mongodb-serializer.js.map +0 -1
  245. package/dist/cjs/serializer/implementations/redis-serializer/_module.js.map +0 -1
  246. package/dist/cjs/serializer/implementations/redis-serializer/redis-serializer.js +0 -37
  247. package/dist/cjs/serializer/implementations/redis-serializer/redis-serializer.js.map +0 -1
  248. package/dist/cjs/serializer/implementations/sql-serializer/_module.js.map +0 -1
  249. package/dist/cjs/serializer/implementations/sql-serializer/sql-serializer.js +0 -37
  250. package/dist/cjs/serializer/implementations/sql-serializer/sql-serializer.js.map +0 -1
  251. package/dist/cjs/serializer/implementations/super-json-serializer/_module.js +0 -18
  252. package/dist/cjs/serializer/implementations/super-json-serializer/_module.js.map +0 -1
  253. package/dist/cjs/serializer/implementations/super-json-serializer/super-json-serializer.js.map +0 -1
  254. package/dist/esm/cache/implementations/derivables/base-cache.js +0 -266
  255. package/dist/esm/cache/implementations/derivables/base-cache.js.map +0 -1
  256. package/dist/esm/event-bus/implementations/adapters/redis-event-bus-adapter/_module.js.map +0 -1
  257. package/dist/esm/event-bus/implementations/adapters/redis-event-bus-adapter/redis-event-bus-adapter.js +0 -40
  258. package/dist/esm/event-bus/implementations/adapters/redis-event-bus-adapter/redis-event-bus-adapter.js.map +0 -1
  259. package/dist/esm/event-bus/implementations/derivables/base-event-bus.js +0 -43
  260. package/dist/esm/event-bus/implementations/derivables/base-event-bus.js.map +0 -1
  261. package/dist/esm/event-bus/implementations/derivables/with-namespace-event-bus-adapter.js +0 -38
  262. package/dist/esm/event-bus/implementations/derivables/with-namespace-event-bus-adapter.js.map +0 -1
  263. package/dist/esm/serializer/contracts/_module.js +0 -3
  264. package/dist/esm/serializer/contracts/_module.js.map +0 -1
  265. package/dist/esm/serializer/contracts/serializer.contract.js +0 -1
  266. package/dist/esm/serializer/contracts/serializer.contract.js.map +0 -1
  267. package/dist/esm/serializer/contracts/serializer.errors.js.map +0 -1
  268. package/dist/esm/serializer/implementations/_module.js +0 -6
  269. package/dist/esm/serializer/implementations/_module.js.map +0 -1
  270. package/dist/esm/serializer/implementations/_shared/test-utilities/_module.js +0 -2
  271. package/dist/esm/serializer/implementations/_shared/test-utilities/_module.js.map +0 -1
  272. package/dist/esm/serializer/implementations/_shared/test-utilities/serializer.test-suite.js.map +0 -1
  273. package/dist/esm/serializer/implementations/mongodb-serializer/_module.js +0 -2
  274. package/dist/esm/serializer/implementations/mongodb-serializer/_module.js.map +0 -1
  275. package/dist/esm/serializer/implementations/mongodb-serializer/mongodb-serializer.js.map +0 -1
  276. package/dist/esm/serializer/implementations/redis-serializer/_module.js +0 -2
  277. package/dist/esm/serializer/implementations/redis-serializer/_module.js.map +0 -1
  278. package/dist/esm/serializer/implementations/redis-serializer/redis-serializer.js.map +0 -1
  279. package/dist/esm/serializer/implementations/sql-serializer/_module.js +0 -2
  280. package/dist/esm/serializer/implementations/sql-serializer/_module.js.map +0 -1
  281. package/dist/esm/serializer/implementations/sql-serializer/sql-serializer.js.map +0 -1
  282. package/dist/esm/serializer/implementations/super-json-serializer/_module.js +0 -2
  283. package/dist/esm/serializer/implementations/super-json-serializer/_module.js.map +0 -1
  284. package/dist/esm/serializer/implementations/super-json-serializer/super-json-serializer.js.map +0 -1
  285. package/dist/types/cache/implementations/derivables/base-cache.d.ts +0 -58
  286. package/dist/types/event-bus/implementations/adapters/redis-event-bus-adapter/redis-event-bus-adapter.d.ts +0 -43
  287. package/dist/types/event-bus/implementations/derivables/base-event-bus.d.ts +0 -23
  288. package/dist/types/event-bus/implementations/derivables/with-namespace-event-bus-adapter.d.ts +0 -16
  289. package/dist/types/serializer/contracts/_module.d.ts +0 -2
  290. package/dist/types/serializer/contracts/serializer.contract.d.ts +0 -16
  291. package/dist/types/serializer/implementations/_module.d.ts +0 -5
  292. package/dist/types/serializer/implementations/_shared/test-utilities/_module.d.ts +0 -1
  293. package/dist/types/serializer/implementations/_shared/test-utilities/serializer.test-suite.d.ts +0 -18
  294. package/dist/types/serializer/implementations/mongodb-serializer/_module.d.ts +0 -1
  295. package/dist/types/serializer/implementations/mongodb-serializer/mongodb-serializer.d.ts +0 -13
  296. package/dist/types/serializer/implementations/redis-serializer/_module.d.ts +0 -1
  297. package/dist/types/serializer/implementations/redis-serializer/redis-serializer.d.ts +0 -13
  298. package/dist/types/serializer/implementations/sql-serializer/_module.d.ts +0 -1
  299. package/dist/types/serializer/implementations/sql-serializer/sql-serializer.d.ts +0 -13
  300. package/dist/types/serializer/implementations/super-json-serializer/_module.d.ts +0 -1
  301. package/dist/types/serializer/implementations/super-json-serializer/super-json-serializer.d.ts +0 -37
  302. /package/dist/cjs/event-bus/implementations/adapters/{redis-event-bus-adapter → redis-pub-sub-event-bus-adapter}/_module.js +0 -0
  303. /package/dist/esm/event-bus/implementations/adapters/{redis-event-bus-adapter → redis-pub-sub-event-bus-adapter}/_module.js +0 -0
  304. /package/dist/types/event-bus/implementations/adapters/{redis-event-bus-adapter → redis-pub-sub-event-bus-adapter}/_module.d.ts +0 -0
@@ -1,143 +1,146 @@
1
- export function serializerTestSuite(settings) {
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.serdeTestSuite = serdeTestSuite;
4
+ function serdeTestSuite(settings) {
2
5
  const { expect, test, createAdapter } = settings;
3
6
  test("Should work with positive integer", async () => {
4
- const serializer = await createAdapter();
7
+ const serde = await createAdapter();
5
8
  const value = 1;
6
- expect(await serializer.deserialize(await serializer.serialize(value))).toBe(value);
9
+ expect(serde.deserialize(serde.serialize(value))).toBe(value);
7
10
  });
8
11
  test("Should work with negative integer", async () => {
9
- const serializer = await createAdapter();
12
+ const serde = await createAdapter();
10
13
  const value = -1;
11
- expect(await serializer.deserialize(await serializer.serialize(value))).toBe(value);
14
+ expect(serde.deserialize(serde.serialize(value))).toBe(value);
12
15
  });
13
16
  test("Should work with positive decimal", async () => {
14
- const serializer = await createAdapter();
17
+ const serde = await createAdapter();
15
18
  const value = 1.5;
16
- expect(await serializer.deserialize(await serializer.serialize(value))).toBe(value);
19
+ expect(serde.deserialize(serde.serialize(value))).toBe(value);
17
20
  });
18
21
  test("Should work with negative decimal", async () => {
19
- const serializer = await createAdapter();
22
+ const serde = await createAdapter();
20
23
  const value = -1.5;
21
- expect(await serializer.deserialize(await serializer.serialize(value))).toBe(value);
24
+ expect(serde.deserialize(serde.serialize(value))).toBe(value);
22
25
  });
23
26
  test("Should work with NaN", async () => {
24
- const serializer = await createAdapter();
27
+ const serde = await createAdapter();
25
28
  const value = NaN;
26
- const deserializedValue = await serializer.deserialize(await serializer.serialize(value));
29
+ const deserializedValue = serde.deserialize(serde.serialize(value));
27
30
  expect(deserializedValue).toBeNaN();
28
31
  });
29
32
  test("Should work with Infinity", async () => {
30
- const serializer = await createAdapter();
33
+ const serde = await createAdapter();
31
34
  const value = Infinity;
32
- const deserializedValue = await serializer.deserialize(await serializer.serialize(value));
35
+ const deserializedValue = serde.deserialize(serde.serialize(value));
33
36
  expect(isFinite(deserializedValue)).toBe(false);
34
37
  });
35
38
  test("Should work with Bigint", async () => {
36
- const serializer = await createAdapter();
39
+ const serde = await createAdapter();
37
40
  const value = 20n;
38
- expect(await serializer.deserialize(await serializer.serialize(value))).toBe(value);
41
+ expect(serde.deserialize(serde.serialize(value))).toBe(value);
39
42
  });
40
43
  test("Should work with true", async () => {
41
- const serializer = await createAdapter();
44
+ const serde = await createAdapter();
42
45
  const value = true;
43
- expect(await serializer.deserialize(await serializer.serialize(value))).toBe(value);
46
+ expect(serde.deserialize(serde.serialize(value))).toBe(value);
44
47
  });
45
48
  test("Should work with false", async () => {
46
- const serializer = await createAdapter();
49
+ const serde = await createAdapter();
47
50
  const value = false;
48
- expect(await serializer.deserialize(await serializer.serialize(value))).toBe(value);
51
+ expect(serde.deserialize(serde.serialize(value))).toBe(value);
49
52
  });
50
53
  test("Should work with string", async () => {
51
- const serializer = await createAdapter();
54
+ const serde = await createAdapter();
52
55
  const value = "str";
53
- expect(await serializer.deserialize(await serializer.serialize(value))).toBe(value);
56
+ expect(serde.deserialize(serde.serialize(value))).toBe(value);
54
57
  });
55
58
  test("Should work with Date", async () => {
56
- const serializer = await createAdapter();
59
+ const serde = await createAdapter();
57
60
  const value = new Date("2024-01-01");
58
- const deserializedValue = await serializer.deserialize(await serializer.serialize(value));
61
+ const deserializedValue = serde.deserialize(serde.serialize(value));
59
62
  expect(deserializedValue).toBeInstanceOf(Date);
60
63
  expect(deserializedValue).toEqual(value);
61
64
  });
62
65
  test("Should work with RegExp", async () => {
63
- const serializer = await createAdapter();
66
+ const serde = await createAdapter();
64
67
  const value = /test/;
65
- const deserializedValue = await serializer.deserialize(await serializer.serialize(value));
68
+ const deserializedValue = serde.deserialize(serde.serialize(value));
66
69
  expect(deserializedValue).toBeInstanceOf(RegExp);
67
70
  expect(deserializedValue).toEqual(value);
68
71
  });
69
72
  test("Should work with Buffer", async () => {
70
- const serializer = await createAdapter();
73
+ const serde = await createAdapter();
71
74
  const value = Buffer.from("asd");
72
- const deserializedValue = await serializer.deserialize(await serializer.serialize(value));
75
+ const deserializedValue = serde.deserialize(serde.serialize(value));
73
76
  expect(deserializedValue).toBeInstanceOf(Buffer);
74
77
  expect(deserializedValue.toString("base64")).toEqual(value.toString("base64"));
75
78
  });
76
79
  test("Should work with Uint8Array", async () => {
77
- const serializer = await createAdapter();
80
+ const serde = await createAdapter();
78
81
  const value = new Uint8Array(Buffer.from("asd"));
79
- const deserializedValue = await serializer.deserialize(await serializer.serialize(value));
82
+ const deserializedValue = serde.deserialize(serde.serialize(value));
80
83
  expect(deserializedValue).toBeInstanceOf(Uint8Array);
81
84
  expect(Buffer.from(deserializedValue).toString("base64")).toEqual(Buffer.from(value).toString("base64"));
82
85
  });
83
86
  test("Should work with Int8Array", async () => {
84
- const serializer = await createAdapter();
87
+ const serde = await createAdapter();
85
88
  const value = new Int8Array(Buffer.from("asd"));
86
- const deserializedValue = await serializer.deserialize(await serializer.serialize(value));
89
+ const deserializedValue = serde.deserialize(serde.serialize(value));
87
90
  expect(deserializedValue).toBeInstanceOf(Int8Array);
88
91
  expect(Buffer.from(deserializedValue).toString("base64")).toEqual(Buffer.from(value).toString("base64"));
89
92
  });
90
93
  test("Should work with Uint16Array", async () => {
91
- const serializer = await createAdapter();
94
+ const serde = await createAdapter();
92
95
  const value = new Uint16Array(Buffer.from("asd"));
93
- const deserializedValue = await serializer.deserialize(await serializer.serialize(value));
96
+ const deserializedValue = serde.deserialize(serde.serialize(value));
94
97
  expect(deserializedValue).toBeInstanceOf(Uint16Array);
95
98
  expect(Buffer.from(deserializedValue).toString("base64")).toEqual(Buffer.from(value).toString("base64"));
96
99
  });
97
100
  test("Should work with Int16Array", async () => {
98
- const serializer = await createAdapter();
101
+ const serde = await createAdapter();
99
102
  const value = new Int16Array(Buffer.from("asd"));
100
- const deserializedValue = await serializer.deserialize(await serializer.serialize(value));
103
+ const deserializedValue = serde.deserialize(serde.serialize(value));
101
104
  expect(deserializedValue).toBeInstanceOf(Int16Array);
102
105
  expect(Buffer.from(deserializedValue).toString("base64")).toEqual(Buffer.from(value).toString("base64"));
103
106
  });
104
107
  test("Should work with Uint32Array", async () => {
105
- const serializer = await createAdapter();
108
+ const serde = await createAdapter();
106
109
  const value = new Uint32Array(Buffer.from("asd"));
107
- const deserializedValue = await serializer.deserialize(await serializer.serialize(value));
110
+ const deserializedValue = serde.deserialize(serde.serialize(value));
108
111
  expect(deserializedValue).toBeInstanceOf(Uint32Array);
109
112
  expect(Buffer.from(deserializedValue).toString("base64")).toEqual(Buffer.from(value).toString("base64"));
110
113
  });
111
114
  test("Should work with Int32Array", async () => {
112
- const serializer = await createAdapter();
115
+ const serde = await createAdapter();
113
116
  const value = new Int32Array(Buffer.from("asd"));
114
- const deserializedValue = await serializer.deserialize(await serializer.serialize(value));
117
+ const deserializedValue = serde.deserialize(serde.serialize(value));
115
118
  expect(deserializedValue).toBeInstanceOf(Int32Array);
116
119
  expect(Buffer.from(deserializedValue).toString("base64")).toEqual(Buffer.from(value).toString("base64"));
117
120
  });
118
121
  test("Should work with Float32Array", async () => {
119
- const serializer = await createAdapter();
122
+ const serde = await createAdapter();
120
123
  const value = new Float32Array(Buffer.from("asd"));
121
- const deserializedValue = await serializer.deserialize(await serializer.serialize(value));
124
+ const deserializedValue = serde.deserialize(serde.serialize(value));
122
125
  expect(deserializedValue).toBeInstanceOf(Float32Array);
123
126
  expect(Buffer.from(deserializedValue).toString("base64")).toEqual(Buffer.from(value).toString("base64"));
124
127
  });
125
128
  test("Should work with Float64Array", async () => {
126
- const serializer = await createAdapter();
129
+ const serde = await createAdapter();
127
130
  const value = new Float64Array(Buffer.from("asd"));
128
- const deserializedValue = await serializer.deserialize(await serializer.serialize(value));
131
+ const deserializedValue = serde.deserialize(serde.serialize(value));
129
132
  expect(deserializedValue).toBeInstanceOf(Float64Array);
130
133
  expect(Buffer.from(deserializedValue).toString("base64")).toEqual(Buffer.from(value).toString("base64"));
131
134
  });
132
135
  test("Should work with Set", async () => {
133
- const serializer = await createAdapter();
136
+ const serde = await createAdapter();
134
137
  const value = new Set(["a", "b", "c"]);
135
- const deserializedValue = await serializer.deserialize(await serializer.serialize(value));
138
+ const deserializedValue = serde.deserialize(serde.serialize(value));
136
139
  expect(deserializedValue).toBeInstanceOf(Set);
137
140
  expect(deserializedValue).toEqual(value);
138
141
  });
139
142
  test("Should work with Set of number, boolean, string, Date, Set, Map, RegExp, Objects, Arrays", async () => {
140
- const serializer = await createAdapter();
143
+ const serde = await createAdapter();
141
144
  const value = new Set([
142
145
  0,
143
146
  -1,
@@ -161,23 +164,23 @@ export function serializerTestSuite(settings) {
161
164
  [1, 2, 3],
162
165
  /test/,
163
166
  ]);
164
- const deserializedValue = await serializer.deserialize(await serializer.serialize(value));
167
+ const deserializedValue = serde.deserialize(serde.serialize(value));
165
168
  expect(deserializedValue).toBeInstanceOf(Set);
166
169
  expect(deserializedValue).toEqual(value);
167
170
  });
168
171
  test("Should work with Map", async () => {
169
- const serializer = await createAdapter();
172
+ const serde = await createAdapter();
170
173
  const value = new Map([
171
174
  ["a", 1],
172
175
  ["b", 2],
173
176
  ["c", 3],
174
177
  ]);
175
- const deserializedValue = await serializer.deserialize(await serializer.serialize(value));
178
+ const deserializedValue = serde.deserialize(serde.serialize(value));
176
179
  expect(deserializedValue).toBeInstanceOf(Map);
177
180
  expect(deserializedValue).toEqual(value);
178
181
  });
179
182
  test("Should work with Map of number, boolean, string, Date, Set, Map, RegExp, Objects, Arrays values", async () => {
180
- const serializer = await createAdapter();
183
+ const serde = await createAdapter();
181
184
  const value = new Map([
182
185
  ["a", 0],
183
186
  ["b", -1],
@@ -204,12 +207,12 @@ export function serializerTestSuite(settings) {
204
207
  [1, { a: 2, b: -1 }],
205
208
  [2, [1, 2, 3]],
206
209
  ]);
207
- const deserializedValue = await serializer.deserialize(await serializer.serialize(value));
210
+ const deserializedValue = serde.deserialize(serde.serialize(value));
208
211
  expect(deserializedValue).toBeInstanceOf(Map);
209
212
  expect(deserializedValue).toEqual(value);
210
213
  });
211
214
  test("Should work with Map of number, boolean, string, Date, Set, Map, RegExp, Objects, Arrays keys", async () => {
212
- const serializer = await createAdapter();
215
+ const serde = await createAdapter();
213
216
  const value = new Map([
214
217
  [0, "a"],
215
218
  [-1, "a"],
@@ -236,12 +239,12 @@ export function serializerTestSuite(settings) {
236
239
  [{ a: 2, b: -1 }, 1],
237
240
  [[1, 2, 3], 2],
238
241
  ]);
239
- const deserializedValue = await serializer.deserialize(await serializer.serialize(value));
242
+ const deserializedValue = serde.deserialize(serde.serialize(value));
240
243
  expect(deserializedValue).toBeInstanceOf(Map);
241
244
  expect(deserializedValue).toEqual(value);
242
245
  });
243
246
  test("Should work with array of number, boolean, string, Date, Set, Map, RegExp", async () => {
244
- const serializer = await createAdapter();
247
+ const serde = await createAdapter();
245
248
  const value = [
246
249
  0,
247
250
  -1,
@@ -263,11 +266,11 @@ export function serializerTestSuite(settings) {
263
266
  ]),
264
267
  /test/,
265
268
  ];
266
- const deserializedValue = await serializer.deserialize(await serializer.serialize(value));
269
+ const deserializedValue = serde.deserialize(serde.serialize(value));
267
270
  expect(deserializedValue).toEqual(value);
268
271
  });
269
272
  test("Should work with array of objects", async () => {
270
- const serializer = await createAdapter();
273
+ const serde = await createAdapter();
271
274
  const value = [
272
275
  Object.fromEntries([
273
276
  ["a", 0],
@@ -294,11 +297,11 @@ export function serializerTestSuite(settings) {
294
297
  ["a", /test/],
295
298
  ]),
296
299
  ];
297
- const deserializedValue = await serializer.deserialize(await serializer.serialize(value));
300
+ const deserializedValue = serde.deserialize(serde.serialize(value));
298
301
  expect(deserializedValue).toEqual(value);
299
302
  });
300
303
  test("Should work with object of number, boolean, string, Date, Set, Map, RegExp", async () => {
301
- const serializer = await createAdapter();
304
+ const serde = await createAdapter();
302
305
  const value = Object.fromEntries([
303
306
  ["a", 0],
304
307
  ["b", -1],
@@ -323,11 +326,11 @@ export function serializerTestSuite(settings) {
323
326
  ],
324
327
  ["a", /test/],
325
328
  ]);
326
- const deserializedValue = await serializer.deserialize(await serializer.serialize(value));
329
+ const deserializedValue = serde.deserialize(serde.serialize(value));
327
330
  expect(deserializedValue).toEqual(value);
328
331
  });
329
332
  test("Should work with object of arrays", async () => {
330
- const serializer = await createAdapter();
333
+ const serde = await createAdapter();
331
334
  const value = {
332
335
  a: [
333
336
  0,
@@ -351,8 +354,8 @@ export function serializerTestSuite(settings) {
351
354
  /test/,
352
355
  ],
353
356
  };
354
- const deserializedValue = await serializer.deserialize(await serializer.serialize(value));
357
+ const deserializedValue = serde.deserialize(serde.serialize(value));
355
358
  expect(deserializedValue).toEqual(value);
356
359
  });
357
360
  }
358
- //# sourceMappingURL=serializer.test-suite.js.map
361
+ //# sourceMappingURL=serde.test-suite.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"serde.test-suite.js","sourceRoot":"","sources":["../../../../../../src/serde/implementations/_shared/test-utilities/serde.test-suite.ts"],"names":[],"mappings":"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"}
@@ -14,5 +14,5 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("../../../serializer/implementations/sql-serializer/sql-serializer"), exports);
17
+ __exportStar(require("../../../serde/implementations/mongodb-serde/mongodb-serde"), exports);
18
18
  //# sourceMappingURL=_module.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"_module.js","sourceRoot":"","sources":["../../../../../src/serde/implementations/mongodb-serde/_module.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,sFAAoE"}
@@ -0,0 +1,36 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.MongodbSerde = void 0;
4
+ const serde_errors_1 = require("../../../serde/contracts/serde.errors");
5
+ class MongodbSerde {
6
+ serde;
7
+ constructor(serde) {
8
+ this.serde = serde;
9
+ }
10
+ serialize(value) {
11
+ try {
12
+ if (typeof value === "number" &&
13
+ !Number.isNaN(value) &&
14
+ Number.isFinite(value)) {
15
+ return value;
16
+ }
17
+ return this.serde.serialize(value);
18
+ }
19
+ catch (error) {
20
+ throw new serde_errors_1.SerializationError(`Serialization error "${String(error)}" occured`, error);
21
+ }
22
+ }
23
+ deserialize(value) {
24
+ try {
25
+ if (typeof value === "number") {
26
+ return value;
27
+ }
28
+ return this.serde.deserialize(value);
29
+ }
30
+ catch (error) {
31
+ throw new serde_errors_1.DeserializationError(`Serialization error "${String(error)}" occured`, error);
32
+ }
33
+ }
34
+ }
35
+ exports.MongodbSerde = MongodbSerde;
36
+ //# sourceMappingURL=mongodb-serde.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mongodb-serde.js","sourceRoot":"","sources":["../../../../../src/serde/implementations/mongodb-serde/mongodb-serde.ts"],"names":[],"mappings":";;;AAKA,iEAGwC;AAKxC,MAAa,YAAY;IACQ;IAA7B,YAA6B,KAAqB;QAArB,UAAK,GAAL,KAAK,CAAgB;IAAG,CAAC;IAEtD,SAAS,CAAS,KAAa;QAC3B,IAAI,CAAC;YACD,IACI,OAAO,KAAK,KAAK,QAAQ;gBACzB,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC;gBACpB,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,EACxB,CAAC;gBACC,OAAO,KAAK,CAAC;YACjB,CAAC;YACD,OAAO,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QACvC,CAAC;QAAC,OAAO,KAAc,EAAE,CAAC;YACtB,MAAM,IAAI,iCAAkB,CACxB,wBAAwB,MAAM,CAAC,KAAK,CAAC,WAAW,EAChD,KAAK,CACR,CAAC;QACN,CAAC;IACL,CAAC;IAED,WAAW,CAAS,KAAsB;QACtC,IAAI,CAAC;YACD,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;gBAC5B,OAAO,KAAe,CAAC;YAC3B,CAAC;YACD,OAAO,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QACzC,CAAC;QAAC,OAAO,KAAc,EAAE,CAAC;YACtB,MAAM,IAAI,mCAAoB,CAC1B,wBAAwB,MAAM,CAAC,KAAK,CAAC,WAAW,EAChD,KAAK,CACR,CAAC;QACN,CAAC;IACL,CAAC;CACJ;AAlCD,oCAkCC"}
@@ -14,5 +14,5 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("../../../serializer/implementations/redis-serializer/redis-serializer"), exports);
17
+ __exportStar(require("../../../serde/implementations/redis-serde/redis-serde"), exports);
18
18
  //# sourceMappingURL=_module.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"_module.js","sourceRoot":"","sources":["../../../../../src/serde/implementations/redis-serde/_module.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,kFAAgE"}
@@ -0,0 +1,37 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.RedisSerde = void 0;
4
+ const serde_errors_1 = require("../../../serde/contracts/serde.errors");
5
+ class RedisSerde {
6
+ serde;
7
+ constructor(serde) {
8
+ this.serde = serde;
9
+ }
10
+ serialize(value) {
11
+ try {
12
+ if (typeof value === "number" &&
13
+ !Number.isNaN(value) &&
14
+ isFinite(value)) {
15
+ return String(value);
16
+ }
17
+ return this.serde.serialize(value);
18
+ }
19
+ catch (error) {
20
+ throw new serde_errors_1.SerializationError(`Serialization error "${String(error)}" occured`, error);
21
+ }
22
+ }
23
+ deserialize(value) {
24
+ try {
25
+ const isNumberRegex = /^(-?([0-9]+)(\.[0-5]+)?)$/g;
26
+ if (isNumberRegex.test(value)) {
27
+ return Number(value);
28
+ }
29
+ return this.serde.deserialize(value);
30
+ }
31
+ catch (error) {
32
+ throw new serde_errors_1.DeserializationError(`Deserialization error "${String(error)}" occured`, error);
33
+ }
34
+ }
35
+ }
36
+ exports.RedisSerde = RedisSerde;
37
+ //# sourceMappingURL=redis-serde.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"redis-serde.js","sourceRoot":"","sources":["../../../../../src/serde/implementations/redis-serde/redis-serde.ts"],"names":[],"mappings":";;;AAIA,iEAGwC;AAKxC,MAAa,UAAU;IACU;IAA7B,YAA6B,KAAqB;QAArB,UAAK,GAAL,KAAK,CAAgB;IAAG,CAAC;IAEtD,SAAS,CAAS,KAAa;QAC3B,IAAI,CAAC;YACD,IACI,OAAO,KAAK,KAAK,QAAQ;gBACzB,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC;gBACpB,QAAQ,CAAC,KAAK,CAAC,EACjB,CAAC;gBACC,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC;YACzB,CAAC;YACD,OAAO,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QACvC,CAAC;QAAC,OAAO,KAAc,EAAE,CAAC;YACtB,MAAM,IAAI,iCAAkB,CACxB,wBAAwB,MAAM,CAAC,KAAK,CAAC,WAAW,EAChD,KAAK,CACR,CAAC;QACN,CAAC;IACL,CAAC;IACD,WAAW,CAAS,KAAa;QAC7B,IAAI,CAAC;YACD,MAAM,aAAa,GAAG,4BAA4B,CAAC;YACnD,IAAI,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC5B,OAAO,MAAM,CAAC,KAAK,CAAW,CAAC;YACnC,CAAC;YACD,OAAO,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QACzC,CAAC;QAAC,OAAO,KAAc,EAAE,CAAC;YACtB,MAAM,IAAI,mCAAoB,CAC1B,0BAA0B,MAAM,CAAC,KAAK,CAAC,WAAW,EAClD,KAAK,CACR,CAAC;QACN,CAAC;IACL,CAAC;CACJ;AAlCD,gCAkCC"}
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("../../../serde/implementations/sql-serde/sql-serde"), exports);
18
+ //# sourceMappingURL=_module.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"_module.js","sourceRoot":"","sources":["../../../../../src/serde/implementations/sql-serde/_module.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,8EAA4D"}
@@ -0,0 +1,37 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SqlSerde = void 0;
4
+ const serde_errors_1 = require("../../../serde/contracts/serde.errors");
5
+ class SqlSerde {
6
+ serde;
7
+ constructor(serde) {
8
+ this.serde = serde;
9
+ }
10
+ serialize(value) {
11
+ try {
12
+ if (typeof value === "number" &&
13
+ !Number.isNaN(value) &&
14
+ isFinite(value)) {
15
+ return String(value);
16
+ }
17
+ return this.serde.serialize(value);
18
+ }
19
+ catch (error) {
20
+ throw new serde_errors_1.SerializationError(`Serialization error "${String(error)}" occured`, error);
21
+ }
22
+ }
23
+ deserialize(value) {
24
+ try {
25
+ const isNumberRegex = /^(-?([0-9]+)(\.[0-5]+)?)$/g;
26
+ if (isNumberRegex.test(value)) {
27
+ return Number(value);
28
+ }
29
+ return this.serde.deserialize(value);
30
+ }
31
+ catch (error) {
32
+ throw new serde_errors_1.DeserializationError(`Deserialization error "${String(error)}" occured`, error);
33
+ }
34
+ }
35
+ }
36
+ exports.SqlSerde = SqlSerde;
37
+ //# sourceMappingURL=sql-serde.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sql-serde.js","sourceRoot":"","sources":["../../../../../src/serde/implementations/sql-serde/sql-serde.ts"],"names":[],"mappings":";;;AAIA,iEAGwC;AAKxC,MAAa,QAAQ;IACY;IAA7B,YAA6B,KAAqB;QAArB,UAAK,GAAL,KAAK,CAAgB;IAAG,CAAC;IAEtD,SAAS,CAAS,KAAa;QAC3B,IAAI,CAAC;YACD,IACI,OAAO,KAAK,KAAK,QAAQ;gBACzB,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC;gBACpB,QAAQ,CAAC,KAAK,CAAC,EACjB,CAAC;gBACC,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC;YACzB,CAAC;YACD,OAAO,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QACvC,CAAC;QAAC,OAAO,KAAc,EAAE,CAAC;YACtB,MAAM,IAAI,iCAAkB,CACxB,wBAAwB,MAAM,CAAC,KAAK,CAAC,WAAW,EAChD,KAAK,CACR,CAAC;QACN,CAAC;IACL,CAAC;IACD,WAAW,CAAS,KAAa;QAC7B,IAAI,CAAC;YACD,MAAM,aAAa,GAAG,4BAA4B,CAAC;YACnD,IAAI,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC5B,OAAO,MAAM,CAAC,KAAK,CAAW,CAAC;YACnC,CAAC;YACD,OAAO,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QACzC,CAAC;QAAC,OAAO,KAAc,EAAE,CAAC;YACtB,MAAM,IAAI,mCAAoB,CAC1B,0BAA0B,MAAM,CAAC,KAAK,CAAC,WAAW,EAClD,KAAK,CACR,CAAC;QACN,CAAC;IACL,CAAC;CACJ;AAlCD,4BAkCC"}
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("../../../serde/implementations/super-json-serde/super-json-serde"), exports);
18
+ //# sourceMappingURL=_module.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"_module.js","sourceRoot":"","sources":["../../../../../src/serde/implementations/super-json-serde/_module.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,4FAA0E"}