@daiso-tech/core 0.26.1 → 0.28.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 (289) hide show
  1. package/README.md +13 -3
  2. package/dist/async/utilities/delay/delay.d.ts +1 -12
  3. package/dist/async/utilities/delay/delay.js +1 -12
  4. package/dist/async/utilities/delay/delay.js.map +1 -1
  5. package/dist/async/utilities/lazy-promise/lazy-promise.d.ts +143 -71
  6. package/dist/async/utilities/lazy-promise/lazy-promise.js +223 -142
  7. package/dist/async/utilities/lazy-promise/lazy-promise.js.map +1 -1
  8. package/dist/async/utilities/retry/retry-or-fail.d.ts +2 -0
  9. package/dist/async/utilities/retry/retry-or-fail.js.map +1 -1
  10. package/dist/cache/contracts/_module-exports.d.ts +1 -0
  11. package/dist/cache/contracts/_module-exports.js +1 -0
  12. package/dist/cache/contracts/_module-exports.js.map +1 -1
  13. package/dist/cache/contracts/cache-adapter.contract.d.ts +19 -21
  14. package/dist/cache/contracts/cache-adapter.contract.js +1 -4
  15. package/dist/cache/contracts/cache-adapter.contract.js.map +1 -1
  16. package/dist/cache/contracts/cache-factory.contract.d.ts +1 -1
  17. package/dist/cache/contracts/cache.contract.d.ts +144 -96
  18. package/dist/cache/contracts/cache.contract.js +1 -2
  19. package/dist/cache/contracts/cache.contract.js.map +1 -1
  20. package/dist/cache/contracts/cache.errors.js +2 -5
  21. package/dist/cache/contracts/cache.errors.js.map +1 -1
  22. package/dist/cache/contracts/cache.events.d.ts +10 -10
  23. package/dist/cache/contracts/cache.events.js +2 -5
  24. package/dist/cache/contracts/cache.events.js.map +1 -1
  25. package/dist/cache/contracts/database-cache-adapter.contract.d.ts +89 -0
  26. package/dist/cache/contracts/database-cache-adapter.contract.js +5 -0
  27. package/dist/cache/contracts/database-cache-adapter.contract.js.map +1 -0
  28. package/dist/cache/implementations/adapters/{kysely-sqlite-cache-adapter → kysely-cache-adapter}/_module.d.ts +1 -1
  29. package/dist/cache/implementations/adapters/kysely-cache-adapter/_module.js +2 -0
  30. package/dist/cache/implementations/adapters/kysely-cache-adapter/_module.js.map +1 -0
  31. package/dist/cache/implementations/adapters/kysely-cache-adapter/kysely-cache-adapter.d.ts +73 -0
  32. package/dist/cache/implementations/adapters/kysely-cache-adapter/kysely-cache-adapter.js +224 -0
  33. package/dist/cache/implementations/adapters/kysely-cache-adapter/kysely-cache-adapter.js.map +1 -0
  34. package/dist/cache/implementations/adapters/libsql-cache-adapter/libsql-cache-adapter.d.ts +29 -39
  35. package/dist/cache/implementations/adapters/libsql-cache-adapter/libsql-cache-adapter.js +45 -54
  36. package/dist/cache/implementations/adapters/libsql-cache-adapter/libsql-cache-adapter.js.map +1 -1
  37. package/dist/cache/implementations/adapters/memory-cache-adapter/memory-cache-adapter.d.ts +17 -33
  38. package/dist/cache/implementations/adapters/memory-cache-adapter/memory-cache-adapter.js +43 -52
  39. package/dist/cache/implementations/adapters/memory-cache-adapter/memory-cache-adapter.js.map +1 -1
  40. package/dist/cache/implementations/adapters/mongodb-cache-adapter/mongodb-cache-adapter-serde.d.ts +13 -0
  41. package/dist/cache/implementations/adapters/mongodb-cache-adapter/mongodb-cache-adapter-serde.js +38 -0
  42. package/dist/cache/implementations/adapters/mongodb-cache-adapter/mongodb-cache-adapter-serde.js.map +1 -0
  43. package/dist/cache/implementations/adapters/mongodb-cache-adapter/mongodb-cache-adapter.d.ts +27 -33
  44. package/dist/cache/implementations/adapters/mongodb-cache-adapter/mongodb-cache-adapter.js +145 -197
  45. package/dist/cache/implementations/adapters/mongodb-cache-adapter/mongodb-cache-adapter.js.map +1 -1
  46. package/dist/cache/implementations/adapters/no-op-cache-adapter/no-op-cache-adapter.d.ts +14 -13
  47. package/dist/cache/implementations/adapters/no-op-cache-adapter/no-op-cache-adapter.js +19 -17
  48. package/dist/cache/implementations/adapters/no-op-cache-adapter/no-op-cache-adapter.js.map +1 -1
  49. package/dist/cache/implementations/adapters/redis-cache-adapter/redis-cache-adapter-serde.d.ts +13 -0
  50. package/dist/cache/implementations/adapters/redis-cache-adapter/redis-cache-adapter-serde.js +39 -0
  51. package/dist/cache/implementations/adapters/redis-cache-adapter/redis-cache-adapter-serde.js.map +1 -0
  52. package/dist/cache/implementations/adapters/redis-cache-adapter/redis-cache-adapter.d.ts +16 -22
  53. package/dist/cache/implementations/adapters/redis-cache-adapter/redis-cache-adapter.js +51 -132
  54. package/dist/cache/implementations/adapters/redis-cache-adapter/redis-cache-adapter.js.map +1 -1
  55. package/dist/cache/implementations/adapters/redis-cache-adapter/utilities.d.ts +13 -0
  56. package/dist/cache/implementations/adapters/redis-cache-adapter/utilities.js +69 -0
  57. package/dist/cache/implementations/adapters/redis-cache-adapter/utilities.js.map +1 -0
  58. package/dist/cache/implementations/adapters/sqlite-cache-adapter/sqlite-cache-adapter.d.ts +29 -41
  59. package/dist/cache/implementations/adapters/sqlite-cache-adapter/sqlite-cache-adapter.js +46 -55
  60. package/dist/cache/implementations/adapters/sqlite-cache-adapter/sqlite-cache-adapter.js.map +1 -1
  61. package/dist/cache/implementations/derivables/_module-exports.d.ts +1 -1
  62. package/dist/cache/implementations/derivables/_module-exports.js +1 -1
  63. package/dist/cache/implementations/derivables/_module-exports.js.map +1 -1
  64. package/dist/cache/implementations/derivables/cache/_module.d.ts +1 -0
  65. package/dist/cache/implementations/derivables/cache/_module.js +1 -0
  66. package/dist/cache/implementations/derivables/cache/_module.js.map +1 -1
  67. package/dist/cache/implementations/derivables/cache/cache.d.ts +269 -507
  68. package/dist/cache/implementations/derivables/cache/cache.js +538 -822
  69. package/dist/cache/implementations/derivables/cache/cache.js.map +1 -1
  70. package/dist/cache/implementations/derivables/cache/database-cache-adapter.d.ts +21 -0
  71. package/dist/cache/implementations/derivables/cache/database-cache-adapter.js +110 -0
  72. package/dist/cache/implementations/derivables/cache/database-cache-adapter.js.map +1 -0
  73. package/dist/cache/implementations/derivables/cache/is-database-cache-adapter.d.ts +9 -0
  74. package/dist/cache/implementations/derivables/cache/is-database-cache-adapter.js +20 -0
  75. package/dist/cache/implementations/derivables/cache/is-database-cache-adapter.js.map +1 -0
  76. package/dist/cache/implementations/derivables/cache-factory/cache-factory.d.ts +69 -105
  77. package/dist/cache/implementations/derivables/cache-factory/cache-factory.js +117 -87
  78. package/dist/cache/implementations/derivables/cache-factory/cache-factory.js.map +1 -1
  79. package/dist/cache/implementations/test-utilities/_module-exports.d.ts +1 -0
  80. package/dist/cache/implementations/test-utilities/_module-exports.js +1 -0
  81. package/dist/cache/implementations/test-utilities/_module-exports.js.map +1 -1
  82. package/dist/cache/implementations/test-utilities/cache-adapter.test-suite.d.ts +9 -11
  83. package/dist/cache/implementations/test-utilities/cache-adapter.test-suite.js +246 -247
  84. package/dist/cache/implementations/test-utilities/cache-adapter.test-suite.js.map +1 -1
  85. package/dist/cache/implementations/test-utilities/cache.test-suite.d.ts +16 -30
  86. package/dist/cache/implementations/test-utilities/cache.test-suite.js +271 -996
  87. package/dist/cache/implementations/test-utilities/cache.test-suite.js.map +1 -1
  88. package/dist/cache/implementations/test-utilities/database-cache-dapter.test-suite.d.ts +60 -0
  89. package/dist/cache/implementations/test-utilities/database-cache-dapter.test-suite.js +698 -0
  90. package/dist/cache/implementations/test-utilities/database-cache-dapter.test-suite.js.map +1 -0
  91. package/dist/collection/contracts/async-collection.contract.d.ts +2 -3
  92. package/dist/collection/contracts/async-collection.contract.js +1 -12
  93. package/dist/collection/contracts/async-collection.contract.js.map +1 -1
  94. package/dist/collection/contracts/collection.contract.d.ts +1 -1
  95. package/dist/collection/contracts/collection.errors.d.ts +1 -1
  96. package/dist/collection/contracts/collection.errors.js +3 -6
  97. package/dist/collection/contracts/collection.errors.js.map +1 -1
  98. package/dist/collection/implementations/_shared.d.ts +4 -4
  99. package/dist/collection/implementations/_shared.js +6 -9
  100. package/dist/collection/implementations/_shared.js.map +1 -1
  101. package/dist/collection/implementations/async-iterable-collection/_shared/async-delay-iterable.js +2 -2
  102. package/dist/collection/implementations/async-iterable-collection/_shared/async-delay-iterable.js.map +1 -1
  103. package/dist/collection/implementations/async-iterable-collection/async-iterable-collection.d.ts +5 -21
  104. package/dist/collection/implementations/async-iterable-collection/async-iterable-collection.js +12 -8
  105. package/dist/collection/implementations/async-iterable-collection/async-iterable-collection.js.map +1 -1
  106. package/dist/collection/implementations/iterable-collection/iterable-collection.d.ts +1 -1
  107. package/dist/collection/implementations/iterable-collection/iterable-collection.js +1 -1
  108. package/dist/collection/implementations/list-collection/list-collection.d.ts +1 -1
  109. package/dist/collection/implementations/list-collection/list-collection.js +1 -1
  110. package/dist/event-bus/contracts/event-bus-adapter.contract.d.ts +0 -9
  111. package/dist/event-bus/contracts/event-bus.contract.d.ts +5 -5
  112. package/dist/event-bus/contracts/event-bus.contract.js.map +1 -1
  113. package/dist/event-bus/contracts/event-bus.errors.js +2 -5
  114. package/dist/event-bus/contracts/event-bus.errors.js.map +1 -1
  115. package/dist/event-bus/implementations/adapters/memory-event-bus-adapter/memory-event-bus-adapter.d.ts +9 -29
  116. package/dist/event-bus/implementations/adapters/memory-event-bus-adapter/memory-event-bus-adapter.js +14 -35
  117. package/dist/event-bus/implementations/adapters/memory-event-bus-adapter/memory-event-bus-adapter.js.map +1 -1
  118. package/dist/event-bus/implementations/adapters/no-op-event-bus-adapter/no-op-event-bus-adapter.d.ts +2 -4
  119. package/dist/event-bus/implementations/adapters/no-op-event-bus-adapter/no-op-event-bus-adapter.js +2 -8
  120. package/dist/event-bus/implementations/adapters/no-op-event-bus-adapter/no-op-event-bus-adapter.js.map +1 -1
  121. package/dist/event-bus/implementations/adapters/redis-pub-sub-event-bus-adapter/redis-pub-sub-event-bus-adapter.d.ts +8 -15
  122. package/dist/event-bus/implementations/adapters/redis-pub-sub-event-bus-adapter/redis-pub-sub-event-bus-adapter.js +15 -34
  123. package/dist/event-bus/implementations/adapters/redis-pub-sub-event-bus-adapter/redis-pub-sub-event-bus-adapter.js.map +1 -1
  124. package/dist/event-bus/implementations/derivables/event-bus/event-bus.d.ts +85 -289
  125. package/dist/event-bus/implementations/derivables/event-bus/event-bus.js +128 -325
  126. package/dist/event-bus/implementations/derivables/event-bus/event-bus.js.map +1 -1
  127. package/dist/event-bus/implementations/derivables/event-bus/listener-store.d.ts +13 -0
  128. package/dist/event-bus/implementations/derivables/event-bus/listener-store.js +42 -0
  129. package/dist/event-bus/implementations/derivables/event-bus/listener-store.js.map +1 -0
  130. package/dist/event-bus/implementations/derivables/event-bus-factory/event-bus-factory.d.ts +103 -86
  131. package/dist/event-bus/implementations/derivables/event-bus-factory/event-bus-factory.js +135 -77
  132. package/dist/event-bus/implementations/derivables/event-bus-factory/event-bus-factory.js.map +1 -1
  133. package/dist/event-bus/implementations/test-utilities/event-bus-adapter.test-suite.d.ts +2 -48
  134. package/dist/event-bus/implementations/test-utilities/event-bus-adapter.test-suite.js +31 -122
  135. package/dist/event-bus/implementations/test-utilities/event-bus-adapter.test-suite.js.map +1 -1
  136. package/dist/event-bus/implementations/test-utilities/event-bus.test-suite.d.ts +2 -50
  137. package/dist/event-bus/implementations/test-utilities/event-bus.test-suite.js +41 -89
  138. package/dist/event-bus/implementations/test-utilities/event-bus.test-suite.js.map +1 -1
  139. package/dist/lock/contracts/database-lock-adapter.contract.d.ts +0 -9
  140. package/dist/lock/contracts/lock-adapter.contract.d.ts +0 -9
  141. package/dist/lock/contracts/lock-provider.contract.d.ts +20 -6
  142. package/dist/lock/contracts/lock.contract.d.ts +37 -8
  143. package/dist/lock/contracts/lock.errors.js +2 -5
  144. package/dist/lock/contracts/lock.errors.js.map +1 -1
  145. package/dist/lock/contracts/lock.events.js +2 -5
  146. package/dist/lock/contracts/lock.events.js.map +1 -1
  147. package/dist/lock/implementations/adapters/_module-exports.d.ts +1 -0
  148. package/dist/lock/implementations/adapters/_module-exports.js +1 -0
  149. package/dist/lock/implementations/adapters/_module-exports.js.map +1 -1
  150. package/dist/lock/implementations/adapters/kysely-lock-adapter/kysely-lock-adapter.d.ts +0 -5
  151. package/dist/lock/implementations/adapters/kysely-lock-adapter/kysely-lock-adapter.js +2 -21
  152. package/dist/lock/implementations/adapters/kysely-lock-adapter/kysely-lock-adapter.js.map +1 -1
  153. package/dist/lock/implementations/adapters/libsql-lock-adapter/libsql-lock-adapter.d.ts +11 -16
  154. package/dist/lock/implementations/adapters/libsql-lock-adapter/libsql-lock-adapter.js +11 -20
  155. package/dist/lock/implementations/adapters/libsql-lock-adapter/libsql-lock-adapter.js.map +1 -1
  156. package/dist/lock/implementations/adapters/memory-lock-adapter/memory-lock-adapter.d.ts +7 -26
  157. package/dist/lock/implementations/adapters/memory-lock-adapter/memory-lock-adapter.js +7 -35
  158. package/dist/lock/implementations/adapters/memory-lock-adapter/memory-lock-adapter.js.map +1 -1
  159. package/dist/lock/implementations/adapters/mongodb-lock-adapter/mongodb-lock-adapter.d.ts +13 -20
  160. package/dist/lock/implementations/adapters/mongodb-lock-adapter/mongodb-lock-adapter.js +13 -37
  161. package/dist/lock/implementations/adapters/mongodb-lock-adapter/mongodb-lock-adapter.js.map +1 -1
  162. package/dist/lock/implementations/adapters/no-op-lock-adapter/_module.d.ts +1 -0
  163. package/dist/lock/implementations/adapters/no-op-lock-adapter/_module.js +2 -0
  164. package/dist/lock/implementations/adapters/no-op-lock-adapter/_module.js.map +1 -0
  165. package/dist/lock/implementations/adapters/no-op-lock-adapter/no-op-lock-adapter.d.ts +17 -0
  166. package/dist/lock/implementations/adapters/no-op-lock-adapter/no-op-lock-adapter.js +24 -0
  167. package/dist/lock/implementations/adapters/no-op-lock-adapter/no-op-lock-adapter.js.map +1 -0
  168. package/dist/lock/implementations/adapters/redis-lock-adapter/redis-lock-adapter.d.ts +4 -22
  169. package/dist/lock/implementations/adapters/redis-lock-adapter/redis-lock-adapter.js +4 -31
  170. package/dist/lock/implementations/adapters/redis-lock-adapter/redis-lock-adapter.js.map +1 -1
  171. package/dist/lock/implementations/adapters/sqlite-lock-adapter/sqlite-lock-adapter.d.ts +14 -20
  172. package/dist/lock/implementations/adapters/sqlite-lock-adapter/sqlite-lock-adapter.js +12 -21
  173. package/dist/lock/implementations/adapters/sqlite-lock-adapter/sqlite-lock-adapter.js.map +1 -1
  174. package/dist/lock/implementations/derivables/lock-provider/database-lock-adapter.d.ts +0 -2
  175. package/dist/lock/implementations/derivables/lock-provider/database-lock-adapter.js +2 -8
  176. package/dist/lock/implementations/derivables/lock-provider/database-lock-adapter.js.map +1 -1
  177. package/dist/lock/implementations/derivables/lock-provider/is-database-lock-adapter.js +1 -5
  178. package/dist/lock/implementations/derivables/lock-provider/is-database-lock-adapter.js.map +1 -1
  179. package/dist/lock/implementations/derivables/lock-provider/lock-provider.d.ts +181 -369
  180. package/dist/lock/implementations/derivables/lock-provider/lock-provider.js +259 -407
  181. package/dist/lock/implementations/derivables/lock-provider/lock-provider.js.map +1 -1
  182. package/dist/lock/implementations/derivables/lock-provider/lock-serde-transformer.d.ts +15 -17
  183. package/dist/lock/implementations/derivables/lock-provider/lock-serde-transformer.js +42 -40
  184. package/dist/lock/implementations/derivables/lock-provider/lock-serde-transformer.js.map +1 -1
  185. package/dist/lock/implementations/derivables/lock-provider/lock-state.d.ts +3 -3
  186. package/dist/lock/implementations/derivables/lock-provider/lock-state.js.map +1 -1
  187. package/dist/lock/implementations/derivables/lock-provider/lock.d.ts +194 -680
  188. package/dist/lock/implementations/derivables/lock-provider/lock.js +284 -744
  189. package/dist/lock/implementations/derivables/lock-provider/lock.js.map +1 -1
  190. package/dist/lock/implementations/derivables/lock-provider-factory/lock-provider-factory.d.ts +106 -143
  191. package/dist/lock/implementations/derivables/lock-provider-factory/lock-provider-factory.js +173 -101
  192. package/dist/lock/implementations/derivables/lock-provider-factory/lock-provider-factory.js.map +1 -1
  193. package/dist/lock/implementations/test-utilities/database-lock-adapter.test-suite.d.ts +4 -5
  194. package/dist/lock/implementations/test-utilities/database-lock-adapter.test-suite.js +172 -247
  195. package/dist/lock/implementations/test-utilities/database-lock-adapter.test-suite.js.map +1 -1
  196. package/dist/lock/implementations/test-utilities/lock-adapter.test-suite.d.ts +5 -8
  197. package/dist/lock/implementations/test-utilities/lock-adapter.test-suite.js +93 -98
  198. package/dist/lock/implementations/test-utilities/lock-adapter.test-suite.js.map +1 -1
  199. package/dist/lock/implementations/test-utilities/lock-provider.test-suite.d.ts +15 -20
  200. package/dist/lock/implementations/test-utilities/lock-provider.test-suite.js +295 -145
  201. package/dist/lock/implementations/test-utilities/lock-provider.test-suite.js.map +1 -1
  202. package/dist/serde/implementations/adapters/mongodb-serde/mongodb-serde.js +1 -2
  203. package/dist/serde/implementations/adapters/mongodb-serde/mongodb-serde.js.map +1 -1
  204. package/dist/serde/implementations/adapters/no-op-serde-adapter/no-op-serde-adapter.d.ts +3 -2
  205. package/dist/serde/implementations/adapters/no-op-serde-adapter/no-op-serde-adapter.js +2 -1
  206. package/dist/serde/implementations/adapters/no-op-serde-adapter/no-op-serde-adapter.js.map +1 -1
  207. package/dist/serde/implementations/adapters/redis-serde/redis-serde.js +1 -2
  208. package/dist/serde/implementations/adapters/redis-serde/redis-serde.js.map +1 -1
  209. package/dist/serde/implementations/adapters/sql-serde/sql-serde.js +1 -2
  210. package/dist/serde/implementations/adapters/sql-serde/sql-serde.js.map +1 -1
  211. package/dist/serde/implementations/adapters/super-json-serde-adapter/super-json-serde-adapter.d.ts +2 -2
  212. package/dist/serde/implementations/adapters/super-json-serde-adapter/super-json-serde-adapter.js +2 -2
  213. package/dist/serde/implementations/adapters/super-json-serde-adapter/super-json-serde-adapter.js.map +1 -1
  214. package/dist/serde/implementations/derivables/serde.d.ts +14 -14
  215. package/dist/serde/implementations/derivables/serde.js +14 -15
  216. package/dist/serde/implementations/derivables/serde.js.map +1 -1
  217. package/dist/serde/implementations/test-utilities/flexible-serde-adapter.test-suite.d.ts +4 -4
  218. package/dist/serde/implementations/test-utilities/flexible-serde-adapter.test-suite.js +3 -3
  219. package/dist/serde/implementations/test-utilities/flexible-serde.test-suite.d.ts +5 -5
  220. package/dist/serde/implementations/test-utilities/flexible-serde.test-suite.js +4 -4
  221. package/dist/utilities/_module-exports.d.ts +2 -3
  222. package/dist/utilities/_module-exports.js +2 -3
  223. package/dist/utilities/_module-exports.js.map +1 -1
  224. package/dist/utilities/classes/_module.d.ts +4 -0
  225. package/dist/utilities/classes/_module.js +5 -0
  226. package/dist/utilities/classes/_module.js.map +1 -0
  227. package/dist/utilities/classes/key-prefixer/_module.d.ts +2 -0
  228. package/dist/utilities/classes/key-prefixer/_module.js +3 -0
  229. package/dist/utilities/classes/key-prefixer/_module.js.map +1 -0
  230. package/dist/utilities/classes/key-prefixer/key-prefixer.contract.d.ts +28 -0
  231. package/dist/utilities/classes/key-prefixer/key-prefixer.contract.js +5 -0
  232. package/dist/utilities/classes/key-prefixer/key-prefixer.contract.js.map +1 -0
  233. package/dist/utilities/classes/key-prefixer/key-prefixer.d.ts +73 -0
  234. package/dist/utilities/classes/key-prefixer/key-prefixer.js +135 -0
  235. package/dist/utilities/classes/key-prefixer/key-prefixer.js.map +1 -0
  236. package/dist/utilities/classes/kysely-table-name-transformer-plugin/_module.d.ts +1 -0
  237. package/dist/utilities/classes/kysely-table-name-transformer-plugin/_module.js +2 -0
  238. package/dist/utilities/classes/kysely-table-name-transformer-plugin/_module.js.map +1 -0
  239. package/dist/utilities/classes/kysely-table-name-transformer-plugin/kysely-table-name-transformer-plugin.js.map +1 -0
  240. package/dist/utilities/classes/pipeline/_module.d.ts +1 -0
  241. package/dist/utilities/classes/pipeline/_module.js +2 -0
  242. package/dist/utilities/classes/pipeline/_module.js.map +1 -0
  243. package/dist/utilities/{pipeline → classes/pipeline}/pipeline.d.ts +3 -2
  244. package/dist/utilities/{pipeline → classes/pipeline}/pipeline.js +3 -2
  245. package/dist/utilities/classes/pipeline/pipeline.js.map +1 -0
  246. package/dist/utilities/classes/time-span/_module.d.ts +1 -0
  247. package/dist/utilities/classes/time-span/_module.js +2 -0
  248. package/dist/utilities/classes/time-span/_module.js.map +1 -0
  249. package/dist/utilities/{time-span → classes/time-span}/time-span.d.ts +2 -1
  250. package/dist/utilities/{time-span → classes/time-span}/time-span.js +1 -0
  251. package/dist/utilities/classes/time-span/time-span.js.map +1 -0
  252. package/dist/utilities/{_constants.d.ts → constants.d.ts} +0 -3
  253. package/dist/utilities/constants.js +5 -0
  254. package/dist/utilities/constants.js.map +1 -0
  255. package/dist/utilities/contracts/_module.d.ts +3 -1
  256. package/dist/utilities/contracts/_module.js +3 -1
  257. package/dist/utilities/contracts/_module.js.map +1 -1
  258. package/dist/utilities/contracts/prunable.contract.d.ts +11 -0
  259. package/dist/utilities/contracts/prunable.contract.js +5 -0
  260. package/dist/utilities/contracts/prunable.contract.js.map +1 -0
  261. package/dist/utilities/contracts/sqlite-database.contract.d.ts +26 -0
  262. package/dist/utilities/contracts/sqlite-database.contract.js +5 -0
  263. package/dist/utilities/contracts/sqlite-database.contract.js.map +1 -0
  264. package/dist/utilities/functions.d.ts +34 -2
  265. package/dist/utilities/functions.js +72 -4
  266. package/dist/utilities/functions.js.map +1 -1
  267. package/dist/utilities/types.d.ts +49 -16
  268. package/package.json +14 -13
  269. package/dist/cache/implementations/adapters/kysely-sqlite-cache-adapter/_module.js +0 -2
  270. package/dist/cache/implementations/adapters/kysely-sqlite-cache-adapter/_module.js.map +0 -1
  271. package/dist/cache/implementations/adapters/kysely-sqlite-cache-adapter/kysely-sqlite-cache-adapter.d.ts +0 -61
  272. package/dist/cache/implementations/adapters/kysely-sqlite-cache-adapter/kysely-sqlite-cache-adapter.js +0 -318
  273. package/dist/cache/implementations/adapters/kysely-sqlite-cache-adapter/kysely-sqlite-cache-adapter.js.map +0 -1
  274. package/dist/utilities/_constants.js +0 -8
  275. package/dist/utilities/_constants.js.map +0 -1
  276. package/dist/utilities/kysely/_module.d.ts +0 -1
  277. package/dist/utilities/kysely/_module.js +0 -2
  278. package/dist/utilities/kysely/_module.js.map +0 -1
  279. package/dist/utilities/kysely/kysely-table-name-transformer-plugin.js.map +0 -1
  280. package/dist/utilities/pipeline/_module.d.ts +0 -1
  281. package/dist/utilities/pipeline/_module.js +0 -2
  282. package/dist/utilities/pipeline/_module.js.map +0 -1
  283. package/dist/utilities/pipeline/pipeline.js.map +0 -1
  284. package/dist/utilities/time-span/_module.d.ts +0 -1
  285. package/dist/utilities/time-span/_module.js +0 -2
  286. package/dist/utilities/time-span/_module.js.map +0 -1
  287. package/dist/utilities/time-span/time-span.js.map +0 -1
  288. /package/dist/utilities/{kysely → classes/kysely-table-name-transformer-plugin}/kysely-table-name-transformer-plugin.d.ts +0 -0
  289. /package/dist/utilities/{kysely → classes/kysely-table-name-transformer-plugin}/kysely-table-name-transformer-plugin.js +0 -0
@@ -6,7 +6,7 @@ import { type IDeinitizable, type IInitizable, TimeSpan } from "../../../../util
6
6
  import type { Client } from "@libsql/client";
7
7
  /**
8
8
  *
9
- * IMPORT_PATH: ```"@daiso-tech/core/lock/implementations/adapters"```
9
+ * IMPORT_PATH: ```"@daiso-tech/core/lock/adapters"```
10
10
  * @group Adapters
11
11
  */
12
12
  export type LibsqlLockAdapterSettings = {
@@ -14,7 +14,6 @@ export type LibsqlLockAdapterSettings = {
14
14
  tableName?: string;
15
15
  expiredKeysRemovalInterval?: TimeSpan;
16
16
  shouldRemoveExpiredKeys?: boolean;
17
- rootGroup: string;
18
17
  };
19
18
  /**
20
19
  * To utilize the <i>LibsqlLockAdapter</i>, you must install the <i>"@libsql/client"</i> package.
@@ -22,7 +21,7 @@ export type LibsqlLockAdapterSettings = {
22
21
  * Note in order to use <i>LibsqlLockAdapter</i> correctly, ensure you use a single, consistent database across all server instances.
23
22
  * This means you can't use libsql embedded replicas.
24
23
  *
25
- * IMPORT_PATH: ```"@daiso-tech/core/lock/implementations/adapters"```
24
+ * IMPORT_PATH: ```"@daiso-tech/core/lock/adapters"```
26
25
  * @group Adapters
27
26
  */
28
27
  export declare class LibsqlLockAdapter implements IDatabaseLockAdapter, IDeinitizable, IInitizable {
@@ -30,28 +29,26 @@ export declare class LibsqlLockAdapter implements IDatabaseLockAdapter, IDeiniti
30
29
  /***
31
30
  * @example
32
31
  * ```ts
33
- * import { LibsqlCacheAdapter } from "@daiso-tech/core/lock/implementations/adapters";
32
+ * import { LibsqlLockAdapter } from "@daiso-tech/core/lock/adapters";
34
33
  * import { createClient } from "@libsql/client";
35
34
  *
36
- * (async () => {
37
- * const database = createClient({ url: "file:local.db" });
38
- * const lockAdapter = new LibsqlCacheAdapter({
35
+ * const database = createClient({ url: "file:local.db" });
36
+ * const lockAdapter = new LibsqlLockAdapter({
39
37
  * database,
40
- * rootGroup: "@global"
41
- * });
42
- * await lockAdapter.init();
43
- * })();
38
+ * });
39
+ * // You need initialize the adapter once before using it.
40
+ * await lockAdapter.init();
44
41
  * ```
45
42
  */
46
43
  constructor(settings: LibsqlLockAdapterSettings);
47
44
  removeExpiredKeys(): Promise<void>;
48
45
  /**
49
- * Removes the table where the cache values are stored and removes the table indexes.
50
- * Note all cache data will be removed.
46
+ * Removes the table where the lock keys are stored and removes the table indexes.
47
+ * Note all lock data will be removed.
51
48
  */
52
49
  deInit(): Promise<void>;
53
50
  /**
54
- * Creates the table where the cache values are stored and it's related indexes.
51
+ * Creates the table where the lock keys are stored and it's related indexes.
55
52
  * Note the <i>init</i> method needs to be called before using the adapter.
56
53
  */
57
54
  init(): Promise<void>;
@@ -60,6 +57,4 @@ export declare class LibsqlLockAdapter implements IDatabaseLockAdapter, IDeiniti
60
57
  remove(key: string, owner: string | null): Promise<void>;
61
58
  refresh(key: string, owner: string, expiration: Date): Promise<number>;
62
59
  find(key: string): Promise<ILockData | null>;
63
- getGroup(): string;
64
- withGroup(group: string): IDatabaseLockAdapter;
65
60
  }
@@ -12,7 +12,7 @@ import { KyselyLockAdapter } from "../../../../lock/implementations/adapters/kys
12
12
  * Note in order to use <i>LibsqlLockAdapter</i> correctly, ensure you use a single, consistent database across all server instances.
13
13
  * This means you can't use libsql embedded replicas.
14
14
  *
15
- * IMPORT_PATH: ```"@daiso-tech/core/lock/implementations/adapters"```
15
+ * IMPORT_PATH: ```"@daiso-tech/core/lock/adapters"```
16
16
  * @group Adapters
17
17
  */
18
18
  export class LibsqlLockAdapter {
@@ -20,21 +20,19 @@ export class LibsqlLockAdapter {
20
20
  /***
21
21
  * @example
22
22
  * ```ts
23
- * import { LibsqlCacheAdapter } from "@daiso-tech/core/lock/implementations/adapters";
23
+ * import { LibsqlLockAdapter } from "@daiso-tech/core/lock/adapters";
24
24
  * import { createClient } from "@libsql/client";
25
25
  *
26
- * (async () => {
27
- * const database = createClient({ url: "file:local.db" });
28
- * const lockAdapter = new LibsqlCacheAdapter({
26
+ * const database = createClient({ url: "file:local.db" });
27
+ * const lockAdapter = new LibsqlLockAdapter({
29
28
  * database,
30
- * rootGroup: "@global"
31
- * });
32
- * await lockAdapter.init();
33
- * })();
29
+ * });
30
+ * // You need initialize the adapter once before using it.
31
+ * await lockAdapter.init();
34
32
  * ```
35
33
  */
36
34
  constructor(settings) {
37
- const { database, tableName = "lock", expiredKeysRemovalInterval = TimeSpan.fromMinutes(1), shouldRemoveExpiredKeys = true, rootGroup, } = settings;
35
+ const { database, tableName = "lock", expiredKeysRemovalInterval = TimeSpan.fromMinutes(1), shouldRemoveExpiredKeys = true, } = settings;
38
36
  this.databaseLockAdapter = new KyselyLockAdapter({
39
37
  database: new Kysely({
40
38
  dialect: new LibsqlDialect({
@@ -46,7 +44,6 @@ export class LibsqlLockAdapter {
46
44
  }),
47
45
  ],
48
46
  }),
49
- rootGroup,
50
47
  expiredKeysRemovalInterval,
51
48
  shouldRemoveExpiredKeys,
52
49
  });
@@ -55,14 +52,14 @@ export class LibsqlLockAdapter {
55
52
  await this.databaseLockAdapter.removeExpiredKeys();
56
53
  }
57
54
  /**
58
- * Removes the table where the cache values are stored and removes the table indexes.
59
- * Note all cache data will be removed.
55
+ * Removes the table where the lock keys are stored and removes the table indexes.
56
+ * Note all lock data will be removed.
60
57
  */
61
58
  async deInit() {
62
59
  await this.databaseLockAdapter.deInit();
63
60
  }
64
61
  /**
65
- * Creates the table where the cache values are stored and it's related indexes.
62
+ * Creates the table where the lock keys are stored and it's related indexes.
66
63
  * Note the <i>init</i> method needs to be called before using the adapter.
67
64
  */
68
65
  async init() {
@@ -83,11 +80,5 @@ export class LibsqlLockAdapter {
83
80
  async find(key) {
84
81
  return await this.databaseLockAdapter.find(key);
85
82
  }
86
- getGroup() {
87
- return this.databaseLockAdapter.getGroup();
88
- }
89
- withGroup(group) {
90
- return this.databaseLockAdapter.withGroup(group);
91
- }
92
83
  }
93
84
  //# sourceMappingURL=libsql-lock-adapter.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"libsql-lock-adapter.js","sourceRoot":"","sources":["../../../../../src/lock/implementations/adapters/libsql-lock-adapter/libsql-lock-adapter.ts"],"names":[],"mappings":"AAAA;;GAEG;AAMH,OAAO,EAGH,QAAQ,GACX,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,EAAE,gCAAgC,EAAE,MAAM,gCAAgC,CAAC;AAElF,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,gEAAgE,CAAC;AAgBnG;;;;;;;;GAQG;AACH,MAAM,OAAO,iBAAiB;IAGlB,mBAAmB,CAAoB;IAE/C;;;;;;;;;;;;;;;OAeG;IACH,YAAY,QAAmC;QAC3C,MAAM,EACF,QAAQ,EACR,SAAS,GAAG,MAAM,EAClB,0BAA0B,GAAG,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC,EACpD,uBAAuB,GAAG,IAAI,EAC9B,SAAS,GACZ,GAAG,QAAQ,CAAC;QAEb,IAAI,CAAC,mBAAmB,GAAG,IAAI,iBAAiB,CAAC;YAC7C,QAAQ,EAAE,IAAI,MAAM,CAAC;gBACjB,OAAO,EAAE,IAAI,aAAa,CAAC;oBACvB,MAAM,EAAE,QAAQ;iBACI,CAAC;gBACzB,OAAO,EAAE;oBACL,IAAI,gCAAgC,CAAC;wBACjC,IAAI,EAAE,SAAS;qBAClB,CAAC;iBACL;aACJ,CAAC;YACF,SAAS;YACT,0BAA0B;YAC1B,uBAAuB;SAC1B,CAAC,CAAC;IACP,CAAC;IAED,KAAK,CAAC,iBAAiB;QACnB,MAAM,IAAI,CAAC,mBAAmB,CAAC,iBAAiB,EAAE,CAAC;IACvD,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,MAAM;QACR,MAAM,IAAI,CAAC,mBAAmB,CAAC,MAAM,EAAE,CAAC;IAC5C,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,IAAI;QACN,MAAM,IAAI,CAAC,mBAAmB,CAAC,IAAI,EAAE,CAAC;IAC1C,CAAC;IAED,KAAK,CAAC,MAAM,CACR,GAAW,EACX,KAAa,EACb,UAAuB;QAEvB,MAAM,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,GAAG,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC;IAClE,CAAC;IAED,KAAK,CAAC,MAAM,CACR,GAAW,EACX,KAAa,EACb,UAAuB;QAEvB,OAAO,MAAM,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,GAAG,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC;IACzE,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,GAAW,EAAE,KAAoB;QAC1C,MAAM,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;IACtD,CAAC;IAED,KAAK,CAAC,OAAO,CACT,GAAW,EACX,KAAa,EACb,UAAgB;QAEhB,OAAO,MAAM,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC,GAAG,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC;IAC1E,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,GAAW;QAClB,OAAO,MAAM,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACpD,CAAC;IAED,QAAQ;QACJ,OAAO,IAAI,CAAC,mBAAmB,CAAC,QAAQ,EAAE,CAAC;IAC/C,CAAC;IAED,SAAS,CAAC,KAAa;QACnB,OAAO,IAAI,CAAC,mBAAmB,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;IACrD,CAAC;CACJ"}
1
+ {"version":3,"file":"libsql-lock-adapter.js","sourceRoot":"","sources":["../../../../../src/lock/implementations/adapters/libsql-lock-adapter/libsql-lock-adapter.ts"],"names":[],"mappings":"AAAA;;GAEG;AAMH,OAAO,EAGH,QAAQ,GACX,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,EAAE,gCAAgC,EAAE,MAAM,gCAAgC,CAAC;AAElF,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,gEAAgE,CAAC;AAenG;;;;;;;;GAQG;AACH,MAAM,OAAO,iBAAiB;IAGlB,mBAAmB,CAAoB;IAE/C;;;;;;;;;;;;;OAaG;IACH,YAAY,QAAmC;QAC3C,MAAM,EACF,QAAQ,EACR,SAAS,GAAG,MAAM,EAClB,0BAA0B,GAAG,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC,EACpD,uBAAuB,GAAG,IAAI,GACjC,GAAG,QAAQ,CAAC;QAEb,IAAI,CAAC,mBAAmB,GAAG,IAAI,iBAAiB,CAAC;YAC7C,QAAQ,EAAE,IAAI,MAAM,CAAC;gBACjB,OAAO,EAAE,IAAI,aAAa,CAAC;oBACvB,MAAM,EAAE,QAAQ;iBACI,CAAC;gBACzB,OAAO,EAAE;oBACL,IAAI,gCAAgC,CAAC;wBACjC,IAAI,EAAE,SAAS;qBAClB,CAAC;iBACL;aACJ,CAAC;YACF,0BAA0B;YAC1B,uBAAuB;SAC1B,CAAC,CAAC;IACP,CAAC;IAED,KAAK,CAAC,iBAAiB;QACnB,MAAM,IAAI,CAAC,mBAAmB,CAAC,iBAAiB,EAAE,CAAC;IACvD,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,MAAM;QACR,MAAM,IAAI,CAAC,mBAAmB,CAAC,MAAM,EAAE,CAAC;IAC5C,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,IAAI;QACN,MAAM,IAAI,CAAC,mBAAmB,CAAC,IAAI,EAAE,CAAC;IAC1C,CAAC;IAED,KAAK,CAAC,MAAM,CACR,GAAW,EACX,KAAa,EACb,UAAuB;QAEvB,MAAM,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,GAAG,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC;IAClE,CAAC;IAED,KAAK,CAAC,MAAM,CACR,GAAW,EACX,KAAa,EACb,UAAuB;QAEvB,OAAO,MAAM,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,GAAG,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC;IACzE,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,GAAW,EAAE,KAAoB;QAC1C,MAAM,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;IACtD,CAAC;IAED,KAAK,CAAC,OAAO,CACT,GAAW,EACX,KAAa,EACb,UAAgB;QAEhB,OAAO,MAAM,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC,GAAG,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC;IAC1E,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,GAAW;QAClB,OAAO,MAAM,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACpD,CAAC;CACJ"}
@@ -3,54 +3,35 @@
3
3
  */
4
4
  import type { TimeSpan } from "../../../../utilities/_module-exports.js";
5
5
  import type { ILockAdapter, ILockData } from "../../../../lock/contracts/_module-exports.js";
6
- /**
7
- *
8
- * IMPORT_PATH: ```"@daiso-tech/core/lock/implementations/adapters"```
9
- * @group Adapters
10
- */
11
- export type MemoryLockAdapterSettings = {
12
- rootGroup: string;
13
- map?: Map<string, ILockData>;
14
- };
15
6
  /**
16
7
  * Note the <i>MemoryLockAdapter</i> is limited to single process usage and cannot be shared across multiple servers or different processes.
17
8
  * This adapter is meant to be used for testing.
18
9
  *
19
- * IMPORT_PATH: ```"@daiso-tech/core/lock/implementations/adapters"```
10
+ * IMPORT_PATH: ```"@daiso-tech/core/lock/adapters"```
20
11
  * @group Adapters
21
12
  */
22
13
  export declare class MemoryLockAdapter implements ILockAdapter {
23
- private readonly group;
24
- private readonly timeoutMap;
25
14
  private readonly map;
15
+ private readonly timeoutMap;
26
16
  /**
27
17
  * @example
28
18
  * ```ts
29
- * import { MemoryLockAdapter } from "@daiso-tech/core/lock/implementations/adapters";
19
+ * import { MemoryLockAdapter } from "@daiso-tech/core/lock/adapters";
30
20
  *
31
- * const lockAdapter = new MemoryLockAdapter({
32
- * rootGroup: "@cache"
33
- * });
21
+ * const lockAdapter = new MemoryLockAdapter();
34
22
  * ```
35
23
  * You can also provide an <i>Map</i>.
36
24
  * @example
37
25
  * ```ts
38
- * import { MemoryLockAdapter } from "@daiso-tech/core/lock/implementations/adapters";
26
+ * import { MemoryLockAdapter } from "@daiso-tech/core/lock/adapters";
39
27
  *
40
28
  * const map = new Map<any, any>();
41
- * const lockAdapter = new MemoryLockAdapter({
42
- * rootGroup: "@cache",
43
- * map
44
- * });
29
+ * const lockAdapter = new MemoryLockAdapter(map);
45
30
  * ```
46
31
  */
47
- constructor(settings: MemoryLockAdapterSettings);
48
- private getPrefix;
49
- private withPrefix;
32
+ constructor(map?: Map<string, ILockData>);
50
33
  acquire(key: string, owner: string, ttl: TimeSpan | null): Promise<boolean>;
51
34
  release(key: string, owner: string): Promise<boolean>;
52
35
  forceRelease(key: string): Promise<void>;
53
36
  refresh(key: string, owner: string, time: TimeSpan): Promise<boolean>;
54
- getGroup(): string;
55
- withGroup(group: string): ILockAdapter;
56
37
  }
@@ -1,53 +1,37 @@
1
1
  /**
2
2
  * @module Lock
3
3
  */
4
- import { resolveOneOrMoreStr } from "../../../../utilities/_module-exports.js";
5
4
  /**
6
5
  * Note the <i>MemoryLockAdapter</i> is limited to single process usage and cannot be shared across multiple servers or different processes.
7
6
  * This adapter is meant to be used for testing.
8
7
  *
9
- * IMPORT_PATH: ```"@daiso-tech/core/lock/implementations/adapters"```
8
+ * IMPORT_PATH: ```"@daiso-tech/core/lock/adapters"```
10
9
  * @group Adapters
11
10
  */
12
11
  export class MemoryLockAdapter {
13
- group;
14
- timeoutMap = new Map();
15
12
  map;
13
+ timeoutMap = new Map();
16
14
  /**
17
15
  * @example
18
16
  * ```ts
19
- * import { MemoryLockAdapter } from "@daiso-tech/core/lock/implementations/adapters";
17
+ * import { MemoryLockAdapter } from "@daiso-tech/core/lock/adapters";
20
18
  *
21
- * const lockAdapter = new MemoryLockAdapter({
22
- * rootGroup: "@cache"
23
- * });
19
+ * const lockAdapter = new MemoryLockAdapter();
24
20
  * ```
25
21
  * You can also provide an <i>Map</i>.
26
22
  * @example
27
23
  * ```ts
28
- * import { MemoryLockAdapter } from "@daiso-tech/core/lock/implementations/adapters";
24
+ * import { MemoryLockAdapter } from "@daiso-tech/core/lock/adapters";
29
25
  *
30
26
  * const map = new Map<any, any>();
31
- * const lockAdapter = new MemoryLockAdapter({
32
- * rootGroup: "@cache",
33
- * map
34
- * });
27
+ * const lockAdapter = new MemoryLockAdapter(map);
35
28
  * ```
36
29
  */
37
- constructor(settings) {
38
- const { rootGroup, map = new Map() } = settings;
30
+ constructor(map = new Map()) {
39
31
  this.map = map;
40
- this.group = rootGroup;
41
- }
42
- getPrefix() {
43
- return resolveOneOrMoreStr([this.group, "__KEY__"]);
44
- }
45
- withPrefix(key) {
46
- return resolveOneOrMoreStr([this.getPrefix(), key]);
47
32
  }
48
33
  // eslint-disable-next-line @typescript-eslint/require-await
49
34
  async acquire(key, owner, ttl) {
50
- key = this.withPrefix(key);
51
35
  const hasNotKey = !this.map.has(key);
52
36
  if (hasNotKey) {
53
37
  this.map.set(key, {
@@ -65,7 +49,6 @@ export class MemoryLockAdapter {
65
49
  }
66
50
  // eslint-disable-next-line @typescript-eslint/require-await
67
51
  async release(key, owner) {
68
- key = this.withPrefix(key);
69
52
  const data = this.map.get(key);
70
53
  if (data === undefined) {
71
54
  return true;
@@ -80,14 +63,12 @@ export class MemoryLockAdapter {
80
63
  }
81
64
  // eslint-disable-next-line @typescript-eslint/require-await
82
65
  async forceRelease(key) {
83
- key = this.withPrefix(key);
84
66
  clearTimeout(this.timeoutMap.get(key));
85
67
  this.timeoutMap.delete(key);
86
68
  this.map.delete(key);
87
69
  }
88
70
  // eslint-disable-next-line @typescript-eslint/require-await
89
71
  async refresh(key, owner, time) {
90
- key = this.withPrefix(key);
91
72
  const data = this.map.get(key);
92
73
  if (data === undefined) {
93
74
  return true;
@@ -109,14 +90,5 @@ export class MemoryLockAdapter {
109
90
  }, time.toMilliseconds()));
110
91
  return true;
111
92
  }
112
- getGroup() {
113
- return this.group;
114
- }
115
- withGroup(group) {
116
- return new MemoryLockAdapter({
117
- map: this.map,
118
- rootGroup: resolveOneOrMoreStr([this.group, group]),
119
- });
120
- }
121
93
  }
122
94
  //# sourceMappingURL=memory-lock-adapter.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"memory-lock-adapter.js","sourceRoot":"","sources":["../../../../../src/lock/implementations/adapters/memory-lock-adapter/memory-lock-adapter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"memory-lock-adapter.js","sourceRoot":"","sources":["../../../../../src/lock/implementations/adapters/memory-lock-adapter/memory-lock-adapter.ts"],"names":[],"mappings":"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"}
@@ -6,12 +6,11 @@ import type { IDatabaseLockAdapter, ILockData } from "../../../../lock/contracts
6
6
  import type { CollectionOptions, Db } from "mongodb";
7
7
  /**
8
8
  *
9
- * IMPORT_PATH: ```"@daiso-tech/core/lock/implementations/adapters"```
9
+ * IMPORT_PATH: ```"@daiso-tech/core/lock/adapters"```
10
10
  * @group Adapters
11
11
  */
12
12
  export type MongodbLockAdapterSettings = {
13
13
  database: Db;
14
- rootGroup: string;
15
14
  collectionName?: string;
16
15
  collectionSettings?: CollectionOptions;
17
16
  };
@@ -20,33 +19,29 @@ export type MongodbLockAdapterSettings = {
20
19
  *
21
20
  * Note in order to use <i>MongodbLockAdapter</i> correctly, ensure you use a single, consistent database across all server instances.
22
21
  *
23
- * IMPORT_PATH: ```"@daiso-tech/core/lock/implementations/adapters"```
22
+ * IMPORT_PATH: ```"@daiso-tech/core/lock/adapters"```
24
23
  * @group Adapters
25
24
  */
26
25
  export declare class MongodbLockAdapter implements IDatabaseLockAdapter, IDeinitizable, IInitizable {
27
- private readonly group;
28
26
  private readonly database;
29
27
  private readonly collection;
30
28
  private readonly collectionName;
31
- private readonly collectionSettings?;
32
29
  /**
33
30
  * @example
34
31
  * ```ts
35
- * import { MongodbLockAdapter } from "@daiso-tech/core/lock/implementations/adapters";
32
+ * import { MongodbLockAdapter } from "@daiso-tech/core/lock/adapters";
36
33
  * import { MongoClient } from "mongodb";
37
34
  *
38
- * (async () => {
39
- * const client = await MongoClient.connect("YOUR_MONGODB_CONNECTION_STRING");
40
- * const database = client.db("database");
41
- * const lockAdapter = new MongodbLockAdapter({
42
- * database,
43
- * rootGroup: "@global"
44
- * });
45
- * await lockAdapter.init();
46
- * })();
35
+ * const client = await MongoClient.connect("YOUR_MONGODB_CONNECTION_STRING");
36
+ * const database = client.db("database");
37
+ * const lockAdapter = new MongodbLockAdapter({
38
+ * database
39
+ * });
40
+ * // You need initialize the adapter once before using it.
41
+ * await lockAdapter.init()
47
42
  * ```
48
43
  */
49
- constructor({ collectionName, collectionSettings, database, rootGroup, }: MongodbLockAdapterSettings);
44
+ constructor({ collectionName, collectionSettings, database, }: MongodbLockAdapterSettings);
50
45
  removeExpiredKeys(): Promise<void>;
51
46
  /**
52
47
  * Creates all related indexes.
@@ -54,8 +49,8 @@ export declare class MongodbLockAdapter implements IDatabaseLockAdapter, IDeinit
54
49
  */
55
50
  init(): Promise<void>;
56
51
  /**
57
- * Removes the collection where the cache values are stored and all it's related indexes.
58
- * Note all cache data will be removed.
52
+ * Removes the collection where the lock keys are stored and all it's related indexes.
53
+ * Note all lock data will be removed.
59
54
  */
60
55
  deInit(): Promise<void>;
61
56
  insert(key: string, owner: string, expiration: Date | null): Promise<void>;
@@ -63,6 +58,4 @@ export declare class MongodbLockAdapter implements IDatabaseLockAdapter, IDeinit
63
58
  remove(key: string, owner: string | null): Promise<void>;
64
59
  refresh(key: string, owner: string, expiration: Date): Promise<number>;
65
60
  find(key: string): Promise<ILockData | null>;
66
- getGroup(): string;
67
- withGroup(group: string): IDatabaseLockAdapter;
68
61
  }
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @module Lock
3
3
  */
4
- import { resolveOneOrMoreStr, } from "../../../../utilities/_module-exports.js";
4
+ import {} from "../../../../utilities/_module-exports.js";
5
5
  import { UnexpectedLockError } from "../../../../lock/contracts/_module-exports.js";
6
6
  import { ObjectId } from "mongodb";
7
7
  /**
@@ -9,38 +9,32 @@ import { ObjectId } from "mongodb";
9
9
  *
10
10
  * Note in order to use <i>MongodbLockAdapter</i> correctly, ensure you use a single, consistent database across all server instances.
11
11
  *
12
- * IMPORT_PATH: ```"@daiso-tech/core/lock/implementations/adapters"```
12
+ * IMPORT_PATH: ```"@daiso-tech/core/lock/adapters"```
13
13
  * @group Adapters
14
14
  */
15
15
  export class MongodbLockAdapter {
16
- group;
17
16
  database;
18
17
  collection;
19
18
  collectionName;
20
- collectionSettings;
21
19
  /**
22
20
  * @example
23
21
  * ```ts
24
- * import { MongodbLockAdapter } from "@daiso-tech/core/lock/implementations/adapters";
22
+ * import { MongodbLockAdapter } from "@daiso-tech/core/lock/adapters";
25
23
  * import { MongoClient } from "mongodb";
26
24
  *
27
- * (async () => {
28
- * const client = await MongoClient.connect("YOUR_MONGODB_CONNECTION_STRING");
29
- * const database = client.db("database");
30
- * const lockAdapter = new MongodbLockAdapter({
31
- * database,
32
- * rootGroup: "@global"
33
- * });
34
- * await lockAdapter.init();
35
- * })();
25
+ * const client = await MongoClient.connect("YOUR_MONGODB_CONNECTION_STRING");
26
+ * const database = client.db("database");
27
+ * const lockAdapter = new MongodbLockAdapter({
28
+ * database
29
+ * });
30
+ * // You need initialize the adapter once before using it.
31
+ * await lockAdapter.init()
36
32
  * ```
37
33
  */
38
- constructor({ collectionName = "cache", collectionSettings, database, rootGroup, }) {
34
+ constructor({ collectionName = "lock", collectionSettings, database, }) {
39
35
  this.collectionName = collectionName;
40
36
  this.database = database;
41
37
  this.collection = database.collection(collectionName, collectionSettings);
42
- this.collectionSettings = collectionSettings;
43
- this.group = rootGroup;
44
38
  }
45
39
  async removeExpiredKeys() {
46
40
  await this.collection.deleteMany({
@@ -56,7 +50,6 @@ export class MongodbLockAdapter {
56
50
  async init() {
57
51
  await this.collection.createIndex({
58
52
  key: 1,
59
- group: 1,
60
53
  }, {
61
54
  unique: true,
62
55
  });
@@ -65,8 +58,8 @@ export class MongodbLockAdapter {
65
58
  });
66
59
  }
67
60
  /**
68
- * Removes the collection where the cache values are stored and all it's related indexes.
69
- * Note all cache data will be removed.
61
+ * Removes the collection where the lock keys are stored and all it's related indexes.
62
+ * Note all lock data will be removed.
70
63
  */
71
64
  async deInit() {
72
65
  await this.collection.dropIndexes();
@@ -77,7 +70,6 @@ export class MongodbLockAdapter {
77
70
  _id: new ObjectId(),
78
71
  key,
79
72
  owner,
80
- group: this.group,
81
73
  expiresAt: expiration,
82
74
  });
83
75
  if (!insertResult.acknowledged) {
@@ -87,7 +79,6 @@ export class MongodbLockAdapter {
87
79
  async update(key, owner, expiration) {
88
80
  const updateResult = await this.collection.updateOne({
89
81
  key,
90
- group: this.group,
91
82
  $and: [
92
83
  {
93
84
  expiresAt: {
@@ -115,7 +106,6 @@ export class MongodbLockAdapter {
115
106
  if (owner === null) {
116
107
  const deleteResult = await this.collection.deleteOne({
117
108
  key,
118
- group: this.group,
119
109
  });
120
110
  if (!deleteResult.acknowledged) {
121
111
  throw new UnexpectedLockError("Mongodb deletion was not acknowledged");
@@ -124,7 +114,6 @@ export class MongodbLockAdapter {
124
114
  }
125
115
  const deleteResult = await this.collection.deleteOne({
126
116
  key,
127
- group: this.group,
128
117
  owner,
129
118
  });
130
119
  if (!deleteResult.acknowledged) {
@@ -134,7 +123,6 @@ export class MongodbLockAdapter {
134
123
  async refresh(key, owner, expiration) {
135
124
  const updateResult = await this.collection.updateOne({
136
125
  key,
137
- group: this.group,
138
126
  owner,
139
127
  }, {
140
128
  $set: {
@@ -149,7 +137,6 @@ export class MongodbLockAdapter {
149
137
  async find(key) {
150
138
  const document = await this.collection.findOne({
151
139
  key: key,
152
- group: this.group,
153
140
  }, {
154
141
  projection: {
155
142
  _id: 0,
@@ -165,16 +152,5 @@ export class MongodbLockAdapter {
165
152
  expiration: document.expiresAt,
166
153
  };
167
154
  }
168
- getGroup() {
169
- return this.group;
170
- }
171
- withGroup(group) {
172
- return new MongodbLockAdapter({
173
- database: this.database,
174
- collectionName: this.collectionName,
175
- collectionSettings: this.collectionSettings,
176
- rootGroup: resolveOneOrMoreStr([this.group, group]),
177
- });
178
- }
179
155
  }
180
156
  //# sourceMappingURL=mongodb-lock-adapter.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"mongodb-lock-adapter.js","sourceRoot":"","sources":["../../../../../src/lock/implementations/adapters/mongodb-lock-adapter/mongodb-lock-adapter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mongodb-lock-adapter.js","sourceRoot":"","sources":["../../../../../src/lock/implementations/adapters/mongodb-lock-adapter/mongodb-lock-adapter.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export * from "../../../../lock/implementations/adapters/no-op-lock-adapter/no-op-lock-adapter.js";
@@ -0,0 +1,2 @@
1
+ export * from "../../../../lock/implementations/adapters/no-op-lock-adapter/no-op-lock-adapter.js";
2
+ //# sourceMappingURL=_module.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"_module.js","sourceRoot":"","sources":["../../../../../src/lock/implementations/adapters/no-op-lock-adapter/_module.ts"],"names":[],"mappings":"AAAA,cAAc,0EAA0E,CAAC"}
@@ -0,0 +1,17 @@
1
+ /**
2
+ * @module Lock
3
+ */
4
+ import type { TimeSpan } from "../../../../utilities/_module-exports.js";
5
+ import type { ILockAdapter } from "../../../../lock/contracts/_module-exports.js";
6
+ /**
7
+ * This <i>NoOpLockAdapter</i> will do nothing and is used for easily mocking <i>{@link ILockProvider}</i> for testing.
8
+ *
9
+ * IMPORT_PATH: ```"@daiso-tech/core/lock/adapters"```
10
+ * @group Adapters
11
+ */
12
+ export declare class NoOpLockAdapter implements ILockAdapter {
13
+ acquire(_key: string, _owner: string, _ttl: TimeSpan | null): PromiseLike<boolean>;
14
+ release(_key: string, _owner: string): PromiseLike<boolean>;
15
+ forceRelease(_key: string): PromiseLike<void>;
16
+ refresh(_key: string, _owner: string, _ttl: TimeSpan): PromiseLike<boolean>;
17
+ }
@@ -0,0 +1,24 @@
1
+ /**
2
+ * @module Lock
3
+ */
4
+ /**
5
+ * This <i>NoOpLockAdapter</i> will do nothing and is used for easily mocking <i>{@link ILockProvider}</i> for testing.
6
+ *
7
+ * IMPORT_PATH: ```"@daiso-tech/core/lock/adapters"```
8
+ * @group Adapters
9
+ */
10
+ export class NoOpLockAdapter {
11
+ acquire(_key, _owner, _ttl) {
12
+ return Promise.resolve(true);
13
+ }
14
+ release(_key, _owner) {
15
+ return Promise.resolve(true);
16
+ }
17
+ forceRelease(_key) {
18
+ return Promise.resolve();
19
+ }
20
+ refresh(_key, _owner, _ttl) {
21
+ return Promise.resolve(true);
22
+ }
23
+ }
24
+ //# sourceMappingURL=no-op-lock-adapter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"no-op-lock-adapter.js","sourceRoot":"","sources":["../../../../../src/lock/implementations/adapters/no-op-lock-adapter/no-op-lock-adapter.ts"],"names":[],"mappings":"AAAA;;GAEG;AAOH;;;;;GAKG;AACH,MAAM,OAAO,eAAe;IACxB,OAAO,CACH,IAAY,EACZ,MAAc,EACd,IAAqB;QAErB,OAAO,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IACjC,CAAC;IAED,OAAO,CAAC,IAAY,EAAE,MAAc;QAChC,OAAO,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IACjC,CAAC;IAED,YAAY,CAAC,IAAY;QACrB,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;IAC7B,CAAC;IAED,OAAO,CACH,IAAY,EACZ,MAAc,EACd,IAAc;QAEd,OAAO,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IACjC,CAAC;CACJ"}