@daiso-tech/core 0.35.4 → 0.37.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 (194) hide show
  1. package/README.md +22 -54
  2. package/dist/async/backof-policies/_shared.d.ts +8 -2
  3. package/dist/async/backof-policies/_shared.js +0 -1
  4. package/dist/async/backof-policies/_shared.js.map +1 -1
  5. package/dist/async/backof-policies/constant-backoff-policy/constant-backoff-policy.d.ts +3 -3
  6. package/dist/async/backof-policies/constant-backoff-policy/constant-backoff-policy.js +10 -4
  7. package/dist/async/backof-policies/constant-backoff-policy/constant-backoff-policy.js.map +1 -1
  8. package/dist/async/backof-policies/exponential-backoff-policy/exponential-backoff-policy.d.ts +3 -3
  9. package/dist/async/backof-policies/exponential-backoff-policy/exponential-backoff-policy.js +10 -4
  10. package/dist/async/backof-policies/exponential-backoff-policy/exponential-backoff-policy.js.map +1 -1
  11. package/dist/async/backof-policies/linear-backoff-policy/linear-backoff-policy.d.ts +3 -3
  12. package/dist/async/backof-policies/linear-backoff-policy/linear-backoff-policy.js +10 -4
  13. package/dist/async/backof-policies/linear-backoff-policy/linear-backoff-policy.js.map +1 -1
  14. package/dist/async/backof-policies/polynomial-backoff-policy/polynomial-backoff-policy.d.ts +3 -3
  15. package/dist/async/backof-policies/polynomial-backoff-policy/polynomial-backoff-policy.js +10 -4
  16. package/dist/async/backof-policies/polynomial-backoff-policy/polynomial-backoff-policy.js.map +1 -1
  17. package/dist/async/middlewares/_shared.d.ts +6 -1
  18. package/dist/async/middlewares/_shared.js +11 -1
  19. package/dist/async/middlewares/_shared.js.map +1 -1
  20. package/dist/async/middlewares/fallback/fallback.middleware.d.ts +3 -3
  21. package/dist/async/middlewares/fallback/fallback.middleware.js +3 -2
  22. package/dist/async/middlewares/fallback/fallback.middleware.js.map +1 -1
  23. package/dist/async/middlewares/hedging/_shared.d.ts +7 -7
  24. package/dist/async/middlewares/hedging/concurrent-hedging/concurrent-hedging.middleware.js +7 -7
  25. package/dist/async/middlewares/hedging/concurrent-hedging/concurrent-hedging.middleware.js.map +1 -1
  26. package/dist/async/middlewares/hedging/sequential-hedging/sequential-hedging.middleware.js +6 -6
  27. package/dist/async/middlewares/hedging/sequential-hedging/sequential-hedging.middleware.js.map +1 -1
  28. package/dist/async/middlewares/observe/observe.middleware.d.ts +4 -4
  29. package/dist/async/middlewares/retry/retry.middleware.d.ts +5 -4
  30. package/dist/async/middlewares/retry/retry.middleware.js +10 -10
  31. package/dist/async/middlewares/retry/retry.middleware.js.map +1 -1
  32. package/dist/async/middlewares/timeout/timeout.middleware.d.ts +4 -2
  33. package/dist/async/middlewares/timeout/timeout.middleware.js +3 -1
  34. package/dist/async/middlewares/timeout/timeout.middleware.js.map +1 -1
  35. package/dist/async/utilities/lazy-promise/lazy-promise.d.ts +1 -1
  36. package/dist/async/utilities/lazy-promise/lazy-promise.js +1 -1
  37. package/dist/async/utilities/promise-queue/promise-queue.js.map +1 -1
  38. package/dist/cache/contracts/cache-factory.contract.d.ts +2 -2
  39. package/dist/cache/contracts/cache.errors.d.ts +3 -3
  40. package/dist/cache/contracts/cache.errors.js +1 -1
  41. package/dist/cache/contracts/cache.errors.js.map +1 -1
  42. package/dist/cache/implementations/adapters/_module-exports.d.ts +1 -2
  43. package/dist/cache/implementations/adapters/_module-exports.js +1 -2
  44. package/dist/cache/implementations/adapters/_module-exports.js.map +1 -1
  45. package/dist/cache/implementations/adapters/kysely-cache-adapter/kysely-cache-adapter.d.ts +41 -16
  46. package/dist/cache/implementations/adapters/kysely-cache-adapter/kysely-cache-adapter.js +102 -57
  47. package/dist/cache/implementations/adapters/kysely-cache-adapter/kysely-cache-adapter.js.map +1 -1
  48. package/dist/cache/implementations/adapters/memory-cache-adapter/memory-cache-adapter.d.ts +1 -1
  49. package/dist/cache/implementations/adapters/memory-cache-adapter/memory-cache-adapter.js.map +1 -1
  50. package/dist/cache/implementations/adapters/mongodb-cache-adapter/mongodb-cache-adapter.d.ts +4 -1
  51. package/dist/cache/implementations/adapters/mongodb-cache-adapter/mongodb-cache-adapter.js.map +1 -1
  52. package/dist/cache/implementations/adapters/no-op-cache-adapter/no-op-cache-adapter.d.ts +1 -1
  53. package/dist/cache/implementations/adapters/redis-cache-adapter/redis-cache-adapter.d.ts +1 -1
  54. package/dist/cache/implementations/adapters/redis-cache-adapter/redis-cache-adapter.js.map +1 -1
  55. package/dist/cache/implementations/derivables/cache/cache.d.ts +27 -11
  56. package/dist/cache/implementations/derivables/cache/cache.js +38 -34
  57. package/dist/cache/implementations/derivables/cache/cache.js.map +1 -1
  58. package/dist/cache/implementations/derivables/cache-factory/cache-factory.d.ts +15 -47
  59. package/dist/cache/implementations/derivables/cache-factory/cache-factory.js +19 -45
  60. package/dist/cache/implementations/derivables/cache-factory/cache-factory.js.map +1 -1
  61. package/dist/cache/implementations/test-utilities/cache.test-suite.d.ts +4 -5
  62. package/dist/cache/implementations/test-utilities/cache.test-suite.js +4 -5
  63. package/dist/cache/implementations/test-utilities/cache.test-suite.js.map +1 -1
  64. package/dist/collection/contracts/async-collection.contract.d.ts +127 -121
  65. package/dist/collection/contracts/collection.contract.d.ts +126 -120
  66. package/dist/collection/contracts/collection.errors.d.ts +3 -3
  67. package/dist/collection/contracts/collection.errors.js +1 -1
  68. package/dist/collection/contracts/collection.errors.js.map +1 -1
  69. package/dist/collection/implementations/_shared.d.ts +4 -4
  70. package/dist/collection/implementations/_shared.js +2 -2
  71. package/dist/collection/implementations/_shared.js.map +1 -1
  72. package/dist/collection/implementations/async-iterable-collection/_shared/_module.d.ts +1 -0
  73. package/dist/collection/implementations/async-iterable-collection/_shared/_module.js +1 -0
  74. package/dist/collection/implementations/async-iterable-collection/_shared/_module.js.map +1 -1
  75. package/dist/collection/implementations/async-iterable-collection/_shared/async-validate-iterable.d.ts +7 -0
  76. package/dist/collection/implementations/async-iterable-collection/_shared/async-validate-iterable.js +17 -0
  77. package/dist/collection/implementations/async-iterable-collection/_shared/async-validate-iterable.js.map +1 -0
  78. package/dist/collection/implementations/async-iterable-collection/async-iterable-collection.d.ts +15 -13
  79. package/dist/collection/implementations/async-iterable-collection/async-iterable-collection.js +19 -16
  80. package/dist/collection/implementations/async-iterable-collection/async-iterable-collection.js.map +1 -1
  81. package/dist/collection/implementations/iterable-collection/_shared/_module.d.ts +1 -0
  82. package/dist/collection/implementations/iterable-collection/_shared/_module.js +1 -0
  83. package/dist/collection/implementations/iterable-collection/_shared/_module.js.map +1 -1
  84. package/dist/collection/implementations/iterable-collection/_shared/validate-iterable.d.ts +7 -0
  85. package/dist/collection/implementations/iterable-collection/_shared/validate-iterable.js +21 -0
  86. package/dist/collection/implementations/iterable-collection/_shared/validate-iterable.js.map +1 -0
  87. package/dist/collection/implementations/iterable-collection/iterable-collection.d.ts +14 -12
  88. package/dist/collection/implementations/iterable-collection/iterable-collection.js +16 -13
  89. package/dist/collection/implementations/iterable-collection/iterable-collection.js.map +1 -1
  90. package/dist/collection/implementations/list-collection/list-collection.d.ts +14 -12
  91. package/dist/collection/implementations/list-collection/list-collection.js +26 -13
  92. package/dist/collection/implementations/list-collection/list-collection.js.map +1 -1
  93. package/dist/event-bus/contracts/event-bus-factory.contract.d.ts +2 -2
  94. package/dist/event-bus/contracts/event-bus.contract.d.ts +2 -2
  95. package/dist/event-bus/contracts/event-bus.errors.d.ts +3 -3
  96. package/dist/event-bus/contracts/event-bus.errors.js +1 -1
  97. package/dist/event-bus/contracts/event-bus.errors.js.map +1 -1
  98. package/dist/event-bus/implementations/adapters/memory-event-bus-adapter/memory-event-bus-adapter.d.ts +1 -1
  99. package/dist/event-bus/implementations/adapters/memory-event-bus-adapter/memory-event-bus-adapter.js +1 -1
  100. package/dist/event-bus/implementations/derivables/event-bus/event-bus.d.ts +46 -9
  101. package/dist/event-bus/implementations/derivables/event-bus/event-bus.js +64 -22
  102. package/dist/event-bus/implementations/derivables/event-bus/event-bus.js.map +1 -1
  103. package/dist/event-bus/implementations/derivables/event-bus-factory/event-bus-factory.d.ts +12 -41
  104. package/dist/event-bus/implementations/derivables/event-bus-factory/event-bus-factory.js +15 -35
  105. package/dist/event-bus/implementations/derivables/event-bus-factory/event-bus-factory.js.map +1 -1
  106. package/dist/lock/contracts/lock.errors.d.ts +2 -2
  107. package/dist/lock/contracts/lock.errors.js.map +1 -1
  108. package/dist/lock/implementations/adapters/_module-exports.d.ts +1 -2
  109. package/dist/lock/implementations/adapters/_module-exports.js +1 -2
  110. package/dist/lock/implementations/adapters/_module-exports.js.map +1 -1
  111. package/dist/lock/implementations/adapters/kysely-lock-adapter/kysely-lock-adapter.d.ts +40 -15
  112. package/dist/lock/implementations/adapters/kysely-lock-adapter/kysely-lock-adapter.js +75 -34
  113. package/dist/lock/implementations/adapters/kysely-lock-adapter/kysely-lock-adapter.js.map +1 -1
  114. package/dist/lock/implementations/adapters/mongodb-lock-adapter/mongodb-lock-adapter.d.ts +6 -3
  115. package/dist/lock/implementations/adapters/mongodb-lock-adapter/mongodb-lock-adapter.js +1 -1
  116. package/dist/lock/implementations/adapters/mongodb-lock-adapter/mongodb-lock-adapter.js.map +1 -1
  117. package/dist/lock/implementations/derivables/lock-provider/lock-provider.d.ts +22 -18
  118. package/dist/lock/implementations/derivables/lock-provider/lock-provider.js +20 -22
  119. package/dist/lock/implementations/derivables/lock-provider/lock-provider.js.map +1 -1
  120. package/dist/lock/implementations/derivables/lock-provider/lock-serde-transformer.d.ts +3 -3
  121. package/dist/lock/implementations/derivables/lock-provider/lock-serde-transformer.js +12 -6
  122. package/dist/lock/implementations/derivables/lock-provider/lock-serde-transformer.js.map +1 -1
  123. package/dist/lock/implementations/derivables/lock-provider/lock.d.ts +4 -2
  124. package/dist/lock/implementations/derivables/lock-provider/lock.js +16 -18
  125. package/dist/lock/implementations/derivables/lock-provider/lock.js.map +1 -1
  126. package/dist/lock/implementations/derivables/lock-provider-factory/lock-provider-factory.d.ts +6 -50
  127. package/dist/lock/implementations/derivables/lock-provider-factory/lock-provider-factory.js +10 -54
  128. package/dist/lock/implementations/derivables/lock-provider-factory/lock-provider-factory.js.map +1 -1
  129. package/dist/lock/implementations/test-utilities/lock-provider.test-suite.d.ts +1 -9
  130. package/dist/lock/implementations/test-utilities/lock-provider.test-suite.js +1 -9
  131. package/dist/lock/implementations/test-utilities/lock-provider.test-suite.js.map +1 -1
  132. package/dist/serde/contracts/flexible-serde.contract.d.ts +9 -2
  133. package/dist/serde/implementations/adapters/super-json-serde-adapter/super-json-serde-adapter.js +1 -1
  134. package/dist/serde/implementations/adapters/super-json-serde-adapter/super-json-serde-adapter.js.map +1 -1
  135. package/dist/utilities/classes/_module.d.ts +1 -1
  136. package/dist/utilities/classes/_module.js +1 -1
  137. package/dist/utilities/classes/_module.js.map +1 -1
  138. package/dist/utilities/classes/hooks/hooks.d.ts +2 -2
  139. package/dist/utilities/classes/hooks/hooks.js +2 -2
  140. package/dist/utilities/classes/namespace/_module.d.ts +1 -0
  141. package/dist/utilities/classes/namespace/_module.js +2 -0
  142. package/dist/utilities/classes/namespace/_module.js.map +1 -0
  143. package/dist/utilities/classes/{key-prefixer/key-prefixer.d.ts → namespace/namespace.d.ts} +38 -17
  144. package/dist/utilities/classes/{key-prefixer/key-prefixer.js → namespace/namespace.js} +51 -19
  145. package/dist/utilities/classes/namespace/namespace.js.map +1 -0
  146. package/dist/utilities/classes/time-span/time-span.d.ts +1 -2
  147. package/dist/utilities/classes/time-span/time-span.js +1 -4
  148. package/dist/utilities/classes/time-span/time-span.js.map +1 -1
  149. package/dist/utilities/functions/_module-exports.d.ts +2 -1
  150. package/dist/utilities/functions/_module-exports.js +2 -1
  151. package/dist/utilities/functions/_module-exports.js.map +1 -1
  152. package/dist/utilities/functions/lazy.d.ts +4 -0
  153. package/dist/utilities/functions/lazy.js +9 -3
  154. package/dist/utilities/functions/lazy.js.map +1 -1
  155. package/dist/utilities/functions/result.d.ts +11 -0
  156. package/dist/utilities/functions/result.js +15 -0
  157. package/dist/utilities/functions/result.js.map +1 -0
  158. package/dist/utilities/functions/validate.d.ts +8 -0
  159. package/dist/utilities/functions/validate.js +17 -0
  160. package/dist/utilities/functions/validate.js.map +1 -0
  161. package/dist/utilities/types/factory.type.d.ts +13 -18
  162. package/dist/utilities/types/result.type.d.ts +11 -1
  163. package/package.json +15 -11
  164. package/dist/cache/implementations/adapters/libsql-cache-adapter/_module.d.ts +0 -1
  165. package/dist/cache/implementations/adapters/libsql-cache-adapter/_module.js +0 -2
  166. package/dist/cache/implementations/adapters/libsql-cache-adapter/_module.js.map +0 -1
  167. package/dist/cache/implementations/adapters/libsql-cache-adapter/libsql-cache-adapter.d.ts +0 -61
  168. package/dist/cache/implementations/adapters/libsql-cache-adapter/libsql-cache-adapter.js +0 -95
  169. package/dist/cache/implementations/adapters/libsql-cache-adapter/libsql-cache-adapter.js.map +0 -1
  170. package/dist/cache/implementations/adapters/sqlite-cache-adapter/_module.d.ts +0 -1
  171. package/dist/cache/implementations/adapters/sqlite-cache-adapter/_module.js +0 -2
  172. package/dist/cache/implementations/adapters/sqlite-cache-adapter/_module.js.map +0 -1
  173. package/dist/cache/implementations/adapters/sqlite-cache-adapter/sqlite-cache-adapter.d.ts +0 -59
  174. package/dist/cache/implementations/adapters/sqlite-cache-adapter/sqlite-cache-adapter.js +0 -94
  175. package/dist/cache/implementations/adapters/sqlite-cache-adapter/sqlite-cache-adapter.js.map +0 -1
  176. package/dist/lock/implementations/adapters/libsql-lock-adapter/_module.d.ts +0 -1
  177. package/dist/lock/implementations/adapters/libsql-lock-adapter/_module.js +0 -2
  178. package/dist/lock/implementations/adapters/libsql-lock-adapter/_module.js.map +0 -1
  179. package/dist/lock/implementations/adapters/libsql-lock-adapter/libsql-lock-adapter.d.ts +0 -60
  180. package/dist/lock/implementations/adapters/libsql-lock-adapter/libsql-lock-adapter.js +0 -84
  181. package/dist/lock/implementations/adapters/libsql-lock-adapter/libsql-lock-adapter.js.map +0 -1
  182. package/dist/lock/implementations/adapters/sqlite-lock-adapter/_module.d.ts +0 -1
  183. package/dist/lock/implementations/adapters/sqlite-lock-adapter/_module.js +0 -2
  184. package/dist/lock/implementations/adapters/sqlite-lock-adapter/_module.js.map +0 -1
  185. package/dist/lock/implementations/adapters/sqlite-lock-adapter/sqlite-lock-adapter.d.ts +0 -59
  186. package/dist/lock/implementations/adapters/sqlite-lock-adapter/sqlite-lock-adapter.js +0 -83
  187. package/dist/lock/implementations/adapters/sqlite-lock-adapter/sqlite-lock-adapter.js.map +0 -1
  188. package/dist/utilities/classes/key-prefixer/_module.d.ts +0 -1
  189. package/dist/utilities/classes/key-prefixer/_module.js +0 -2
  190. package/dist/utilities/classes/key-prefixer/_module.js.map +0 -1
  191. package/dist/utilities/classes/key-prefixer/key-prefixer.js.map +0 -1
  192. package/dist/utilities/functions/factory.d.ts +0 -44
  193. package/dist/utilities/functions/factory.js +0 -80
  194. package/dist/utilities/functions/factory.js.map +0 -1
@@ -50,12 +50,12 @@ import { timeoutAndFail } from "../../../../async/utilities/_module.js";
50
50
  * ```
51
51
  */
52
52
  export function sequentialHedging(settings) {
53
- const { waitTime = TimeSpan.fromSeconds(2), fallbacks, onHedgeAttempt = () => { }, onHedgeError = () => { }, } = settings;
53
+ const { waitTime = TimeSpan.fromSeconds(2), fallbacks, onHedgingAttempt = () => { }, onHedgingError = () => { }, } = settings;
54
54
  const resolvedFallbacks = resolveOneOrMore(fallbacks).map((fallback, index) => {
55
55
  if (isInvokable(fallback)) {
56
56
  return {
57
57
  name: `fallback-${String(index + 1)}`,
58
- func: fallback,
58
+ invokable: fallback,
59
59
  };
60
60
  }
61
61
  return fallback;
@@ -65,13 +65,13 @@ export function sequentialHedging(settings) {
65
65
  const funcs = [
66
66
  {
67
67
  name: "__initial",
68
- func: next,
68
+ invokable: next,
69
69
  },
70
70
  ...resolvedFallbacks,
71
71
  ];
72
- for (const { name, func } of funcs) {
72
+ for (const { name, invokable: func } of funcs) {
73
73
  try {
74
- callInvokable(onHedgeAttempt, {
74
+ callInvokable(onHedgingAttempt, {
75
75
  args,
76
76
  context,
77
77
  name,
@@ -84,7 +84,7 @@ export function sequentialHedging(settings) {
84
84
  if (signal.aborted) {
85
85
  break;
86
86
  }
87
- callInvokable(onHedgeError, {
87
+ callInvokable(onHedgingError, {
88
88
  args,
89
89
  context,
90
90
  error,
@@ -1 +1 @@
1
- {"version":3,"file":"sequential-hedging.middleware.js","sourceRoot":"","sources":["../../../../../src/async/middlewares/hedging/sequential-hedging/sequential-hedging.middleware.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EACH,aAAa,EACb,WAAW,EACX,gBAAgB,EAChB,QAAQ,GAGX,MAAM,gCAAgC,CAAC;AAKxC,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAE9D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4CG;AACH,MAAM,UAAU,iBAAiB,CAK7B,QAAkE;IAElE,MAAM,EACF,QAAQ,GAAG,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC,EAClC,SAAS,EACT,cAAc,GAAG,GAAG,EAAE,GAAE,CAAC,EACzB,YAAY,GAAG,GAAG,EAAE,GAAE,CAAC,GAC1B,GAAG,QAAQ,CAAC;IAEb,MAAM,iBAAiB,GAAG,gBAAgB,CAAC,SAAS,CAAC,CAAC,GAAG,CAEvD,CAAC,QAAQ,EAAE,KAAK,EAAE,EAAE;QAClB,IAAI,WAAW,CAAC,QAAQ,CAAC,EAAE,CAAC;YACxB,OAAO;gBACH,IAAI,EAAE,YAAY,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC,EAAE;gBACrC,IAAI,EAAE,QAAQ;aACjB,CAAC;QACN,CAAC;QACD,OAAO,QAAQ,CAAC;IACpB,CAAC,CAAC,CAAC;IAEH,OAAO,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,EAAE;QACpD,MAAM,MAAM,GAAc,EAAE,CAAC;QAC7B,MAAM,KAAK,GAAG;YACV;gBACI,IAAI,EAAE,WAAW;gBACjB,IAAI,EAAE,IAAI;aACb;YACD,GAAG,iBAAiB;SACvB,CAAC;QACF,KAAK,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,KAAK,EAAE,CAAC;YACjC,IAAI,CAAC;gBACD,aAAa,CAAC,cAAc,EAAE;oBAC1B,IAAI;oBACJ,OAAO;oBACP,IAAI;iBACP,CAAC,CAAC;gBACH,OAAO,MAAM,cAAc,CACvB,CAAC,KAAK,IAAI,EAAE,CAAC,aAAa,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,CAAC,EAAE,EAC5C,QAAQ,EACR,CAAC,KAAc,EAAE,EAAE;oBACf,KAAK,CAAC,KAAK,CAAC,CAAC;gBACjB,CAAC,EACD,MAAM,CACT,CAAC;YACN,CAAC;YAAC,OAAO,KAAc,EAAE,CAAC;gBACtB,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;oBACjB,MAAM;gBACV,CAAC;gBACD,aAAa,CAAC,YAAY,EAAE;oBACxB,IAAI;oBACJ,OAAO;oBACP,KAAK;oBACL,IAAI;iBACP,CAAC,CAAC;gBACH,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACvB,CAAC;QACL,CAAC;QAED,4DAA4D;QAC5D,MAAM,SAAS,GAAG,KAAK;aAClB,KAAK,CAAC,CAAC,CAAC;aACR,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,IAAI,GAAG,CAAC;aAC9B,IAAI,CAAC,IAAI,CAAC,CAAC;QAChB,MAAM,IAAI,iBAAiB,CACvB,wDAAwD,SAAS,EAAE,EACnE,MAAM,CACT,CAAC;IACN,CAAC,CAAC;AACN,CAAC"}
1
+ {"version":3,"file":"sequential-hedging.middleware.js","sourceRoot":"","sources":["../../../../../src/async/middlewares/hedging/sequential-hedging/sequential-hedging.middleware.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EACH,aAAa,EACb,WAAW,EACX,gBAAgB,EAChB,QAAQ,GAGX,MAAM,gCAAgC,CAAC;AAKxC,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAE9D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4CG;AACH,MAAM,UAAU,iBAAiB,CAK7B,QAAkE;IAElE,MAAM,EACF,QAAQ,GAAG,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC,EAClC,SAAS,EACT,gBAAgB,GAAG,GAAG,EAAE,GAAE,CAAC,EAC3B,cAAc,GAAG,GAAG,EAAE,GAAE,CAAC,GAC5B,GAAG,QAAQ,CAAC;IAEb,MAAM,iBAAiB,GAAG,gBAAgB,CAAC,SAAS,CAAC,CAAC,GAAG,CAEvD,CAAC,QAAQ,EAAE,KAAK,EAAE,EAAE;QAClB,IAAI,WAAW,CAAC,QAAQ,CAAC,EAAE,CAAC;YACxB,OAAO;gBACH,IAAI,EAAE,YAAY,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC,EAAE;gBACrC,SAAS,EAAE,QAAQ;aACtB,CAAC;QACN,CAAC;QACD,OAAO,QAAQ,CAAC;IACpB,CAAC,CAAC,CAAC;IAEH,OAAO,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,EAAE;QACpD,MAAM,MAAM,GAAc,EAAE,CAAC;QAC7B,MAAM,KAAK,GAAG;YACV;gBACI,IAAI,EAAE,WAAW;gBACjB,SAAS,EAAE,IAAI;aAClB;YACD,GAAG,iBAAiB;SACvB,CAAC;QACF,KAAK,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,KAAK,EAAE,CAAC;YAC5C,IAAI,CAAC;gBACD,aAAa,CAAC,gBAAgB,EAAE;oBAC5B,IAAI;oBACJ,OAAO;oBACP,IAAI;iBACP,CAAC,CAAC;gBACH,OAAO,MAAM,cAAc,CACvB,CAAC,KAAK,IAAI,EAAE,CAAC,aAAa,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,CAAC,EAAE,EAC5C,QAAQ,EACR,CAAC,KAAc,EAAE,EAAE;oBACf,KAAK,CAAC,KAAK,CAAC,CAAC;gBACjB,CAAC,EACD,MAAM,CACT,CAAC;YACN,CAAC;YAAC,OAAO,KAAc,EAAE,CAAC;gBACtB,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;oBACjB,MAAM;gBACV,CAAC;gBACD,aAAa,CAAC,cAAc,EAAE;oBAC1B,IAAI;oBACJ,OAAO;oBACP,KAAK;oBACL,IAAI;iBACP,CAAC,CAAC;gBACH,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACvB,CAAC;QACL,CAAC;QAED,4DAA4D;QAC5D,MAAM,SAAS,GAAG,KAAK;aAClB,KAAK,CAAC,CAAC,CAAC;aACR,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,IAAI,GAAG,CAAC;aAC9B,IAAI,CAAC,IAAI,CAAC,CAAC;QAChB,MAAM,IAAI,iBAAiB,CACvB,wDAAwD,SAAS,EAAE,EACnE,MAAM,CACT,CAAC;IACN,CAAC,CAAC;AACN,CAAC"}
@@ -72,19 +72,19 @@ export type OnObserveFinally<TContext extends HookContext = HookContext> = Invok
72
72
  */
73
73
  export type ObserveCallbacks<TParameters extends unknown[] = unknown[], TReturn = unknown, TContext extends HookContext = HookContext> = {
74
74
  /**
75
- * Callback function that will be called when before the underlying {@link Invokable | `Invokable`} is called.
75
+ * Callback {@link Invokable | `Invokable`} that will be called when before the underlying {@link Invokable | `Invokable`} is called.
76
76
  */
77
77
  onStart?: OnObserveStart<TParameters, TContext>;
78
78
  /**
79
- * Callback function that will be called when the underlying {@link Invokable | `Invokable`} is successfully called.
79
+ * Callback {@link Invokable | `Invokable`} that will be called when the underlying {@link Invokable | `Invokable`} is successfully called.
80
80
  */
81
81
  onSuccess?: OnObserveSuccess<TParameters, TReturn, TContext>;
82
82
  /**
83
- * Callback function that will be called when the underlying {@link Invokable | `Invokable`} throws an error.
83
+ * Callback {@link Invokable | `Invokable`} that will be called when the underlying {@link Invokable | `Invokable`} throws an error.
84
84
  */
85
85
  onError?: OnObserveError<TParameters, TContext>;
86
86
  /**
87
- * Callback function that will be called when the underlying {@link Invokable | `Invokable`} throws an error or is successfully called.
87
+ * Callback {@link Invokable | `Invokable`} that will be called when the underlying {@link Invokable | `Invokable`} throws an error or is successfully called.
88
88
  */
89
89
  onFinally?: OnObserveFinally<TContext>;
90
90
  };
@@ -1,7 +1,8 @@
1
1
  /**
2
2
  * @module Async
3
3
  */
4
- import { TimeSpan, type Invokable, type HookContext, type AsyncMiddlewareFn } from "../../../utilities/_module-exports.js";
4
+ import type { TimeSpan } from "../../../utilities/_module-exports.js";
5
+ import { type Invokable, type HookContext, type AsyncMiddlewareFn } from "../../../utilities/_module-exports.js";
5
6
  import { type BackoffPolicy } from "../../../async/backof-policies/_module.js";
6
7
  import { type ErrorPolicy } from "../../../async/middlewares/_shared.js";
7
8
  /**
@@ -45,11 +46,11 @@ export type OnRetryDelay<TParameters extends unknown[] = unknown[], TContext ext
45
46
  */
46
47
  export type RetryCallbacks<TParameters extends unknown[] = unknown[], TContext extends HookContext = HookContext> = {
47
48
  /**
48
- * Callback function that will be called before execution attempt.
49
+ * Callback {@link Invokable | `Invokable`} that will be called before execution attempt.
49
50
  */
50
51
  onExecutionAttempt?: OnRetryAttempt<TParameters, TContext>;
51
52
  /**
52
- * Callback function that will be called when the retry delay starts.
53
+ * Callback {@link Invokable | `Invokable`} that will be called before the retry delay starts.
53
54
  */
54
55
  onRetryDelay?: OnRetryDelay<TParameters, TContext>;
55
56
  };
@@ -81,7 +82,7 @@ export type RetrySettings<TParameters extends unknown[] = unknown[], TContext ex
81
82
  * (_error: unknown) => true
82
83
  * ```
83
84
  */
84
- retryPolicy?: ErrorPolicy;
85
+ errorPolicy?: ErrorPolicy;
85
86
  };
86
87
  /**
87
88
  * The `retry` middleware enables automatic retries for all errors or specific errors, with configurable backoff policies.
@@ -1,11 +1,11 @@
1
1
  /**
2
2
  * @module Async
3
3
  */
4
- import { callInvokable, TimeSpan, } from "../../../utilities/_module-exports.js";
4
+ import { callInvokable, } from "../../../utilities/_module-exports.js";
5
5
  import { exponentialBackoffPolicy, } from "../../../async/backof-policies/_module.js";
6
6
  import { RetryAsyncError } from "../../../async/async.errors.js";
7
7
  import { LazyPromise } from "../../../async/utilities/_module.js";
8
- import {} from "../../../async/middlewares/_shared.js";
8
+ import { callErrorPolicy, } from "../../../async/middlewares/_shared.js";
9
9
  /**
10
10
  * The `retry` middleware enables automatic retries for all errors or specific errors, with configurable backoff policies.
11
11
  * An error will be thrown when all retry attempts fail.
@@ -38,7 +38,7 @@ import {} from "../../../async/middlewares/_shared.js";
38
38
  * ```
39
39
  */
40
40
  export function retry(settings = {}) {
41
- const { maxAttempts = 4, backoffPolicy = exponentialBackoffPolicy(), retryPolicy = () => true, onRetryDelay = () => { }, onExecutionAttempt = () => { }, } = settings;
41
+ const { maxAttempts = 4, backoffPolicy = exponentialBackoffPolicy(), errorPolicy = () => true, onRetryDelay = () => { }, onExecutionAttempt = () => { }, } = settings;
42
42
  return async (args, next, { context, signal }) => {
43
43
  const errors = [];
44
44
  for (let attempt = 1; attempt <= maxAttempts; attempt++) {
@@ -50,7 +50,13 @@ export function retry(settings = {}) {
50
50
  if (signal.aborted) {
51
51
  break;
52
52
  }
53
- const waitTime = TimeSpan.fromMilliseconds(callInvokable(backoffPolicy, attempt, error));
53
+ if (await callErrorPolicy(errorPolicy, error)) {
54
+ errors.push(error);
55
+ }
56
+ else {
57
+ throw error;
58
+ }
59
+ const waitTime = callInvokable(backoffPolicy, attempt, error);
54
60
  callInvokable(onRetryDelay, {
55
61
  error,
56
62
  waitTime,
@@ -58,12 +64,6 @@ export function retry(settings = {}) {
58
64
  args,
59
65
  context,
60
66
  });
61
- if (callInvokable(retryPolicy, error)) {
62
- errors.push(error);
63
- }
64
- else {
65
- throw error;
66
- }
67
67
  await LazyPromise.delay(waitTime, signal);
68
68
  }
69
69
  }
@@ -1 +1 @@
1
- {"version":3,"file":"retry.middleware.js","sourceRoot":"","sources":["../../../../src/async/middlewares/retry/retry.middleware.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EACH,aAAa,EACb,QAAQ,GAIX,MAAM,gCAAgC,CAAC;AACxC,OAAO,EACH,wBAAwB,GAE3B,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAC3D,OAAO,EAAoB,MAAM,gCAAgC,CAAC;AA4GlE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,MAAM,UAAU,KAAK,CAKjB,WAA0D,EAAE;IAE5D,MAAM,EACF,WAAW,GAAG,CAAC,EACf,aAAa,GAAG,wBAAwB,EAAE,EAC1C,WAAW,GAAG,GAAG,EAAE,CAAC,IAAI,EACxB,YAAY,GAAG,GAAG,EAAE,GAAE,CAAC,EACvB,kBAAkB,GAAG,GAAG,EAAE,GAAE,CAAC,GAChC,GAAG,QAAQ,CAAC;IACb,OAAO,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE;QAC7C,MAAM,MAAM,GAAc,EAAE,CAAC;QAC7B,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,IAAI,WAAW,EAAE,OAAO,EAAE,EAAE,CAAC;YACtD,IAAI,CAAC;gBACD,aAAa,CAAC,kBAAkB,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;gBAC9D,OAAO,MAAM,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC;YAC/B,CAAC;YAAC,OAAO,KAAc,EAAE,CAAC;gBACtB,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;oBACjB,MAAM;gBACV,CAAC;gBACD,MAAM,QAAQ,GAAG,QAAQ,CAAC,gBAAgB,CACtC,aAAa,CAAC,aAAa,EAAE,OAAO,EAAE,KAAK,CAAC,CAC/C,CAAC;gBACF,aAAa,CAAC,YAAY,EAAE;oBACxB,KAAK;oBACL,QAAQ;oBACR,OAAO;oBACP,IAAI;oBACJ,OAAO;iBACV,CAAC,CAAC;gBAEH,IAAI,aAAa,CAAC,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC;oBACpC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBACvB,CAAC;qBAAM,CAAC;oBACJ,MAAM,KAAK,CAAC;gBAChB,CAAC;gBACD,MAAM,WAAW,CAAC,KAAK,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;YAC9C,CAAC;QACL,CAAC;QAED,IAAI,YAAY,GAAG,oCAAoC,MAAM,CAAC,WAAW,CAAC,QAAQ,CAAC;QACnF,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAC5C,IAAI,SAAS,EAAE,CAAC;YACZ,gEAAgE;YAChE,YAAY,GAAG,GAAG,YAAY,+BAA+B,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC;QACtF,CAAC;QACD,MAAM,IAAI,eAAe,CAAC,YAAY,EAAE;YACpC,MAAM;YACN,WAAW;SACd,CAAC,CAAC;IACP,CAAC,CAAC;AACN,CAAC"}
1
+ {"version":3,"file":"retry.middleware.js","sourceRoot":"","sources":["../../../../src/async/middlewares/retry/retry.middleware.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EACH,aAAa,GAIhB,MAAM,gCAAgC,CAAC;AACxC,OAAO,EACH,wBAAwB,GAE3B,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAC3D,OAAO,EAEH,eAAe,GAClB,MAAM,gCAAgC,CAAC;AA4GxC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,MAAM,UAAU,KAAK,CAKjB,WAA0D,EAAE;IAE5D,MAAM,EACF,WAAW,GAAG,CAAC,EACf,aAAa,GAAG,wBAAwB,EAAE,EAC1C,WAAW,GAAG,GAAG,EAAE,CAAC,IAAI,EACxB,YAAY,GAAG,GAAG,EAAE,GAAE,CAAC,EACvB,kBAAkB,GAAG,GAAG,EAAE,GAAE,CAAC,GAChC,GAAG,QAAQ,CAAC;IACb,OAAO,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE;QAC7C,MAAM,MAAM,GAAc,EAAE,CAAC;QAC7B,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,IAAI,WAAW,EAAE,OAAO,EAAE,EAAE,CAAC;YACtD,IAAI,CAAC;gBACD,aAAa,CAAC,kBAAkB,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;gBAC9D,OAAO,MAAM,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC;YAC/B,CAAC;YAAC,OAAO,KAAc,EAAE,CAAC;gBACtB,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;oBACjB,MAAM;gBACV,CAAC;gBAED,IAAI,MAAM,eAAe,CAAC,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC;oBAC5C,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBACvB,CAAC;qBAAM,CAAC;oBACJ,MAAM,KAAK,CAAC;gBAChB,CAAC;gBAED,MAAM,QAAQ,GAAG,aAAa,CAAC,aAAa,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;gBAE9D,aAAa,CAAC,YAAY,EAAE;oBACxB,KAAK;oBACL,QAAQ;oBACR,OAAO;oBACP,IAAI;oBACJ,OAAO;iBACV,CAAC,CAAC;gBACH,MAAM,WAAW,CAAC,KAAK,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;YAC9C,CAAC;QACL,CAAC;QAED,IAAI,YAAY,GAAG,oCAAoC,MAAM,CAAC,WAAW,CAAC,QAAQ,CAAC;QACnF,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAC5C,IAAI,SAAS,EAAE,CAAC;YACZ,gEAAgE;YAChE,YAAY,GAAG,GAAG,YAAY,+BAA+B,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC;QACtF,CAAC;QACD,MAAM,IAAI,eAAe,CAAC,YAAY,EAAE;YACpC,MAAM;YACN,WAAW;SACd,CAAC,CAAC;IACP,CAAC,CAAC;AACN,CAAC"}
@@ -27,7 +27,7 @@ export type OnTimeout<TParameters extends unknown[] = unknown[], TContext extend
27
27
  */
28
28
  export type TimeoutCallbacks<TParameters extends unknown[] = unknown[], TContext extends HookContext = HookContext> = {
29
29
  /**
30
- * Callback function that will be called when the timeout occurs.
30
+ * Callback {@link Invokable | `Invokable`} that will be called before the timeout occurs.
31
31
  */
32
32
  onTimeout?: OnTimeout<TParameters, TContext>;
33
33
  };
@@ -51,7 +51,9 @@ export type TimeoutSettings<TParameters extends unknown[] = unknown[], TContext
51
51
  };
52
52
  /**
53
53
  * The `timeout` middleware automatically cancels functions after a specified time period, throwing an error when aborted.
54
- * Note the original function continues executing (even if the promise fails), you'll need to provide a settings.signalBinder to forward the `AbortSignal`.
54
+ *
55
+ * Note when a timeout occurs, the function call continues executing in the background and only the `Promise` will be aborted.
56
+ * To ensure correct abortion behavior, provide an {@link AbortSignalBinder | `AbortSignalBinder`} to {@link AsyncHooks | `AsyncHooks`}.
55
57
  *
56
58
  * IMPORT_PATH: `"@daiso-tech/core/async"`
57
59
  * @group Middlewares
@@ -8,7 +8,9 @@ import { TimeoutAsyncError } from "../../../async/async.errors.js";
8
8
  import { timeoutAndFail } from "../../../async/utilities/_module.js";
9
9
  /**
10
10
  * The `timeout` middleware automatically cancels functions after a specified time period, throwing an error when aborted.
11
- * Note the original function continues executing (even if the promise fails), you'll need to provide a settings.signalBinder to forward the `AbortSignal`.
11
+ *
12
+ * Note when a timeout occurs, the function call continues executing in the background and only the `Promise` will be aborted.
13
+ * To ensure correct abortion behavior, provide an {@link AbortSignalBinder | `AbortSignalBinder`} to {@link AsyncHooks | `AsyncHooks`}.
12
14
  *
13
15
  * IMPORT_PATH: `"@daiso-tech/core/async"`
14
16
  * @group Middlewares
@@ -1 +1 @@
1
- {"version":3,"file":"timeout.middleware.js","sourceRoot":"","sources":["../../../../src/async/middlewares/timeout/timeout.middleware.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,gCAAgC,CAAC;AAC1D,OAAO,EAGN,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,aAAa,EAAkB,MAAM,gCAAgC,CAAC;AAC/E,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AA+D9D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,MAAM,UAAU,OAAO,CAKnB,WAA4D,EAAE;IAE9D,MAAM,EAAE,QAAQ,GAAG,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,SAAS,GAAG,GAAG,EAAE,GAAE,CAAC,EAAE,GAC9D,QAAQ,CAAC;IACb,OAAO,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE;QACpD,IAAI,CAAC;YACD,OAAO,MAAM,cAAc,CACvB,IAAI,CAAC,GAAG,IAAI,CAAC,EACb,QAAQ,EACR,CAAC,KAAc,EAAE,EAAE;gBACf,KAAK,CAAC,KAAK,CAAC,CAAC;YACjB,CAAC,EACD,MAAM,CACT,CAAC;QACN,CAAC;QAAC,OAAO,KAAc,EAAE,CAAC;YACtB,IAAI,KAAK,YAAY,iBAAiB,EAAE,CAAC;gBACrC,aAAa,CAAC,SAAS,EAAE;oBACrB,IAAI;oBACJ,OAAO;oBACP,QAAQ;iBACX,CAAC,CAAC;YACP,CAAC;YACD,MAAM,KAAK,CAAC;QAChB,CAAC;IACL,CAAC,CAAC;AACN,CAAC"}
1
+ {"version":3,"file":"timeout.middleware.js","sourceRoot":"","sources":["../../../../src/async/middlewares/timeout/timeout.middleware.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,gCAAgC,CAAC;AAC1D,OAAO,EAON,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,aAAa,EAAkB,MAAM,gCAAgC,CAAC;AAC/E,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AA+D9D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,MAAM,UAAU,OAAO,CAKnB,WAA4D,EAAE;IAE9D,MAAM,EAAE,QAAQ,GAAG,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,SAAS,GAAG,GAAG,EAAE,GAAE,CAAC,EAAE,GAC9D,QAAQ,CAAC;IACb,OAAO,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE;QACpD,IAAI,CAAC;YACD,OAAO,MAAM,cAAc,CACvB,IAAI,CAAC,GAAG,IAAI,CAAC,EACb,QAAQ,EACR,CAAC,KAAc,EAAE,EAAE;gBACf,KAAK,CAAC,KAAK,CAAC,CAAC;YACjB,CAAC,EACD,MAAM,CACT,CAAC;QACN,CAAC;QAAC,OAAO,KAAc,EAAE,CAAC;YACtB,IAAI,KAAK,YAAY,iBAAiB,EAAE,CAAC;gBACrC,aAAa,CAAC,SAAS,EAAE;oBACrB,IAAI;oBACJ,OAAO;oBACP,QAAQ;iBACX,CAAC,CAAC;YACP,CAAC;YACD,MAAM,KAAK,CAAC;QAChB,CAAC;IACL,CAAC,CAAC;AACN,CAAC"}
@@ -84,7 +84,7 @@ export declare class LazyPromise<TValue> implements PromiseLike<TValue> {
84
84
  * import { LazyPromise } from "@daiso-tech/core/async";
85
85
  * import { readFile } from "node:fs";
86
86
  *
87
- * const lazyPromise = LazyPromise.fromCallback<Buffer>((resolve, reject) => {
87
+ * const lazyPromise = LazyPromise.fromCallback<Buffer | string>((resolve, reject) => {
88
88
  * readFile("FILE_PATH", (err, data) => {
89
89
  * if (err !== null) {
90
90
  * reject(err);
@@ -88,7 +88,7 @@ export class LazyPromise {
88
88
  * import { LazyPromise } from "@daiso-tech/core/async";
89
89
  * import { readFile } from "node:fs";
90
90
  *
91
- * const lazyPromise = LazyPromise.fromCallback<Buffer>((resolve, reject) => {
91
+ * const lazyPromise = LazyPromise.fromCallback<Buffer | string>((resolve, reject) => {
92
92
  * readFile("FILE_PATH", (err, data) => {
93
93
  * if (err !== null) {
94
94
  * reject(err);
@@ -1 +1 @@
1
- {"version":3,"file":"promise-queue.js","sourceRoot":"","sources":["../../../../src/async/utilities/promise-queue/promise-queue.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"promise-queue.js","sourceRoot":"","sources":["../../../../src/async/utilities/promise-queue/promise-queue.ts"],"names":[],"mappings":"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"}
@@ -8,12 +8,12 @@ import type { ICache } from "../../cache/contracts/cache.contract.js";
8
8
  * IMPORT_PATH: `"@daiso-tech/core/cache/contracts"`
9
9
  * @group Contracts
10
10
  */
11
- export type ICacheFactory<TAdapters extends string = string> = {
11
+ export type ICacheFactory<TAdapters extends string = string, TType = unknown> = {
12
12
  /**
13
13
  * The `use` method will throw an error if you provide it unregisted adapter.
14
14
  * If no default adapter is defined an error will be thrown.
15
15
  * @throws {UnregisteredAdapterError} {@link UnregisteredAdapterError}
16
16
  * @throws {DefaultAdapterNotDefinedError} {@link DefaultAdapterNotDefinedError}
17
17
  */
18
- use<TType = unknown>(adapterName?: TAdapters): ICache<TType>;
18
+ use(adapterName?: TAdapters): ICache<TType>;
19
19
  };
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @module Cache
3
3
  */
4
- import type { IFlexibleSerde, ISerializable } from "../../serde/contracts/_module-exports.js";
4
+ import type { ISerderRegister, ISerializable } from "../../serde/contracts/_module-exports.js";
5
5
  import { type ISerializedError, type OneOrMore } from "../../utilities/_module-exports.js";
6
6
  /**
7
7
  *
@@ -54,9 +54,9 @@ export declare const CACHE_ERRORS: {
54
54
  readonly KeyNotFound: typeof KeyNotFoundCacheError;
55
55
  };
56
56
  /**
57
- * The `registerCacheErrorsToSerde` function registers all {@link ICache | `ICache`} related errors with `IFlexibleSerde`, ensuring they will properly be serialized and deserialized.
57
+ * The `registerCacheErrorsToSerde` function registers all {@link ICache | `ICache`} related errors with `ISerderRegister`, ensuring they will properly be serialized and deserialized.
58
58
  *
59
59
  * IMPORT_PATH: `"@daiso-tech/core/cache/contracts"`
60
60
  * @group Errors
61
61
  */
62
- export declare function registerCacheErrorsToSerde(serde: OneOrMore<IFlexibleSerde>): void;
62
+ export declare function registerCacheErrorsToSerde(serde: OneOrMore<ISerderRegister>): void;
@@ -79,7 +79,7 @@ export const CACHE_ERRORS = {
79
79
  KeyNotFound: KeyNotFoundCacheError,
80
80
  };
81
81
  /**
82
- * The `registerCacheErrorsToSerde` function registers all {@link ICache | `ICache`} related errors with `IFlexibleSerde`, ensuring they will properly be serialized and deserialized.
82
+ * The `registerCacheErrorsToSerde` function registers all {@link ICache | `ICache`} related errors with `ISerderRegister`, ensuring they will properly be serialized and deserialized.
83
83
  *
84
84
  * IMPORT_PATH: `"@daiso-tech/core/cache/contracts"`
85
85
  * @group Errors
@@ -1 +1 @@
1
- {"version":3,"file":"cache.errors.js","sourceRoot":"","sources":["../../../src/cache/contracts/cache.errors.ts"],"names":[],"mappings":"AAAA;;GAEG;AAQH,OAAO,EACH,IAAI,EACJ,gBAAgB,GAGnB,MAAM,gCAAgC,CAAC;AAExC;;;;GAIG;AACH,MAAM,OAAO,UACT,SAAQ,KAAK;IAGb,MAAM,CAAC,WAAW,CAAC,iBAAmC;QAClD,OAAO,IAAI,UAAU,CACjB,iBAAiB,CAAC,OAAO,EACzB,iBAAiB,CAAC,KAAK,CAC1B,CAAC;IACN,CAAC;IAED,YAAY,OAAe,EAAE,KAAe;QACxC,KAAK,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;QAC1B,IAAI,CAAC,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC;IAChC,CAAC;IAED,SAAS;QACL,OAAO;YACH,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,KAAK,EAAE,IAAI,CAAC,KAAK;SACpB,CAAC;IACN,CAAC;CACJ;AAED;;;;GAIG;AACH,MAAM,OAAO,oBACT,SAAQ,UAAU;IAGlB,MAAM,CAAU,WAAW,CACvB,iBAAmC;QAEnC,OAAO,IAAI,oBAAoB,CAC3B,iBAAiB,CAAC,OAAO,EACzB,iBAAiB,CAAC,KAAK,CAC1B,CAAC;IACN,CAAC;IAED,YAAY,OAAe,EAAE,KAAe;QACxC,KAAK,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;QAC1B,IAAI,CAAC,IAAI,GAAG,oBAAoB,CAAC,IAAI,CAAC;IAC1C,CAAC;CACJ;AAED;;;;;GAKG;AACH,MAAM,OAAO,cACT,SAAQ,UAAU;IAGlB,MAAM,CAAU,WAAW,CACvB,iBAAmC;QAEnC,OAAO,IAAI,cAAc,CACrB,iBAAiB,CAAC,OAAO,EACzB,iBAAiB,CAAC,KAAK,CAC1B,CAAC;IACN,CAAC;IAED,YAAY,OAAe,EAAE,KAAe;QACxC,KAAK,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;QAC1B,IAAI,CAAC,IAAI,GAAG,cAAc,CAAC,IAAI,CAAC;IACpC,CAAC;CACJ;AAED;;;;;GAKG;AACH,MAAM,OAAO,qBACT,SAAQ,UAAU;IAGlB,MAAM,CAAU,WAAW,CACvB,iBAAmC;QAEnC,OAAO,IAAI,qBAAqB,CAC5B,iBAAiB,CAAC,OAAO,EACzB,iBAAiB,CAAC,KAAK,CAC1B,CAAC;IACN,CAAC;IAED,YAAY,OAAe,EAAE,KAAe;QACxC,KAAK,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;QAC1B,IAAI,CAAC,IAAI,GAAG,qBAAqB,CAAC,IAAI,CAAC;IAC3C,CAAC;CACJ;AAED;;;;GAIG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG;IACxB,IAAI,EAAE,UAAU;IAChB,UAAU,EAAE,oBAAoB;IAChC,IAAI,EAAE,cAAc;IACpB,WAAW,EAAE,qBAAqB;CAC5B,CAAC;AAEX;;;;;GAKG;AACH,MAAM,UAAU,0BAA0B,CACtC,KAAgC;IAEhC,KAAK,MAAM,MAAM,IAAI,gBAAgB,CAAC,KAAK,CAAC,EAAE,CAAC;QAC3C,MAAM;aACD,aAAa,CAAC,UAAU,EAAE,IAAI,CAAC;aAC/B,aAAa,CAAC,oBAAoB,EAAE,IAAI,CAAC;aACzC,aAAa,CAAC,cAAc,EAAE,IAAI,CAAC;aACnC,aAAa,CAAC,qBAAqB,EAAE,IAAI,CAAC,CAAC;IACpD,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"cache.errors.js","sourceRoot":"","sources":["../../../src/cache/contracts/cache.errors.ts"],"names":[],"mappings":"AAAA;;GAEG;AAQH,OAAO,EACH,IAAI,EACJ,gBAAgB,GAGnB,MAAM,gCAAgC,CAAC;AAExC;;;;GAIG;AACH,MAAM,OAAO,UACT,SAAQ,KAAK;IAGb,MAAM,CAAC,WAAW,CAAC,iBAAmC;QAClD,OAAO,IAAI,UAAU,CACjB,iBAAiB,CAAC,OAAO,EACzB,iBAAiB,CAAC,KAAK,CAC1B,CAAC;IACN,CAAC;IAED,YAAY,OAAe,EAAE,KAAe;QACxC,KAAK,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;QAC1B,IAAI,CAAC,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC;IAChC,CAAC;IAED,SAAS;QACL,OAAO;YACH,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,KAAK,EAAE,IAAI,CAAC,KAAK;SACpB,CAAC;IACN,CAAC;CACJ;AAED;;;;GAIG;AACH,MAAM,OAAO,oBACT,SAAQ,UAAU;IAGlB,MAAM,CAAU,WAAW,CACvB,iBAAmC;QAEnC,OAAO,IAAI,oBAAoB,CAC3B,iBAAiB,CAAC,OAAO,EACzB,iBAAiB,CAAC,KAAK,CAC1B,CAAC;IACN,CAAC;IAED,YAAY,OAAe,EAAE,KAAe;QACxC,KAAK,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;QAC1B,IAAI,CAAC,IAAI,GAAG,oBAAoB,CAAC,IAAI,CAAC;IAC1C,CAAC;CACJ;AAED;;;;;GAKG;AACH,MAAM,OAAO,cACT,SAAQ,UAAU;IAGlB,MAAM,CAAU,WAAW,CACvB,iBAAmC;QAEnC,OAAO,IAAI,cAAc,CACrB,iBAAiB,CAAC,OAAO,EACzB,iBAAiB,CAAC,KAAK,CAC1B,CAAC;IACN,CAAC;IAED,YAAY,OAAe,EAAE,KAAe;QACxC,KAAK,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;QAC1B,IAAI,CAAC,IAAI,GAAG,cAAc,CAAC,IAAI,CAAC;IACpC,CAAC;CACJ;AAED;;;;;GAKG;AACH,MAAM,OAAO,qBACT,SAAQ,UAAU;IAGlB,MAAM,CAAU,WAAW,CACvB,iBAAmC;QAEnC,OAAO,IAAI,qBAAqB,CAC5B,iBAAiB,CAAC,OAAO,EACzB,iBAAiB,CAAC,KAAK,CAC1B,CAAC;IACN,CAAC;IAED,YAAY,OAAe,EAAE,KAAe;QACxC,KAAK,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;QAC1B,IAAI,CAAC,IAAI,GAAG,qBAAqB,CAAC,IAAI,CAAC;IAC3C,CAAC;CACJ;AAED;;;;GAIG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG;IACxB,IAAI,EAAE,UAAU;IAChB,UAAU,EAAE,oBAAoB;IAChC,IAAI,EAAE,cAAc;IACpB,WAAW,EAAE,qBAAqB;CAC5B,CAAC;AAEX;;;;;GAKG;AACH,MAAM,UAAU,0BAA0B,CACtC,KAAiC;IAEjC,KAAK,MAAM,MAAM,IAAI,gBAAgB,CAAC,KAAK,CAAC,EAAE,CAAC;QAC3C,MAAM;aACD,aAAa,CAAC,UAAU,EAAE,IAAI,CAAC;aAC/B,aAAa,CAAC,oBAAoB,EAAE,IAAI,CAAC;aACzC,aAAa,CAAC,cAAc,EAAE,IAAI,CAAC;aACnC,aAAa,CAAC,qBAAqB,EAAE,IAAI,CAAC,CAAC;IACpD,CAAC;AACL,CAAC"}
@@ -1,6 +1,5 @@
1
- export * from "../../../cache/implementations/adapters/libsql-cache-adapter/_module.js";
1
+ export * from "../../../cache/implementations/adapters/kysely-cache-adapter/_module.js";
2
2
  export * from "../../../cache/implementations/adapters/memory-cache-adapter/_module.js";
3
3
  export * from "../../../cache/implementations/adapters/mongodb-cache-adapter/_module.js";
4
4
  export * from "../../../cache/implementations/adapters/no-op-cache-adapter/_module.js";
5
5
  export * from "../../../cache/implementations/adapters/redis-cache-adapter/_module.js";
6
- export * from "../../../cache/implementations/adapters/sqlite-cache-adapter/_module.js";
@@ -1,7 +1,6 @@
1
- export * from "../../../cache/implementations/adapters/libsql-cache-adapter/_module.js";
1
+ export * from "../../../cache/implementations/adapters/kysely-cache-adapter/_module.js";
2
2
  export * from "../../../cache/implementations/adapters/memory-cache-adapter/_module.js";
3
3
  export * from "../../../cache/implementations/adapters/mongodb-cache-adapter/_module.js";
4
4
  export * from "../../../cache/implementations/adapters/no-op-cache-adapter/_module.js";
5
5
  export * from "../../../cache/implementations/adapters/redis-cache-adapter/_module.js";
6
- export * from "../../../cache/implementations/adapters/sqlite-cache-adapter/_module.js";
7
6
  //# sourceMappingURL=_module-exports.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"_module-exports.js","sourceRoot":"","sources":["../../../../src/cache/implementations/adapters/_module-exports.ts"],"names":[],"mappings":"AAAA,cAAc,kEAAkE,CAAC;AACjF,cAAc,kEAAkE,CAAC;AACjF,cAAc,mEAAmE,CAAC;AAClF,cAAc,iEAAiE,CAAC;AAChF,cAAc,iEAAiE,CAAC;AAChF,cAAc,kEAAkE,CAAC"}
1
+ {"version":3,"file":"_module-exports.js","sourceRoot":"","sources":["../../../../src/cache/implementations/adapters/_module-exports.ts"],"names":[],"mappings":"AAAA,cAAc,kEAAkE,CAAC;AACjF,cAAc,kEAAkE,CAAC;AACjF,cAAc,mEAAmE,CAAC;AAClF,cAAc,iEAAiE,CAAC;AAChF,cAAc,iEAAiE,CAAC"}
@@ -7,29 +7,31 @@ import type { IDeinitizable, IInitizable, IPrunable } from "../../../../utilitie
7
7
  import { TimeSpan } from "../../../../utilities/_module-exports.js";
8
8
  import type { Kysely } from "kysely";
9
9
  /**
10
- * @internal
10
+ *
11
+ * IMPORT_PATH: `"@daiso-tech/core/cache/adapters"`
12
+ * @group Adapters
11
13
  */
12
- type KyselyCacheTable = {
14
+ type KyselyCacheAdapterTable = {
13
15
  key: string;
14
16
  value: string;
15
- expiration: number | null;
17
+ expiration: number | string | null;
16
18
  };
17
19
  /**
18
- * @internal
20
+ *
21
+ * IMPORT_PATH: `"@daiso-tech/core/cache/adapters"`
22
+ * @group Adapters
19
23
  */
20
- type KyselyTables = {
21
- cache: KyselyCacheTable;
24
+ type KyselyCacheAdapterTables = {
25
+ cache: KyselyCacheAdapterTable;
22
26
  };
23
27
  /**
24
- * @internal
28
+ *
29
+ * IMPORT_PATH: `"@daiso-tech/core/cache/adapters"`
30
+ * @group Adapters
25
31
  */
26
- type KyselySettings = {
27
- database: Kysely<KyselyTables>;
32
+ type KyselyCacheAdapterSettings = {
33
+ kysely: Kysely<KyselyCacheAdapterTables>;
28
34
  serde: ISerde<string>;
29
- /**
30
- * @default {false}
31
- */
32
- disableTransaction?: boolean;
33
35
  /**
34
36
  * @default
35
37
  * ```ts
@@ -43,18 +45,41 @@ type KyselySettings = {
43
45
  shouldRemoveExpiredKeys?: boolean;
44
46
  };
45
47
  /**
46
- * @internal
48
+ *
49
+ * IMPORT_PATH: `"@daiso-tech/core/cache/adapters"`
50
+ * @group Adapters
47
51
  */
48
52
  export declare class KyselyCacheAdapter<TType = unknown> implements IDatabaseCacheAdapter<TType>, IInitizable, IDeinitizable, IPrunable {
49
53
  private static filterUnexpiredKeys;
50
54
  private static filterExpiredKeys;
51
55
  private readonly serde;
52
- private readonly database;
56
+ private readonly kysely;
53
57
  private readonly shouldRemoveExpiredKeys;
54
58
  private readonly expiredKeysRemovalInterval;
55
59
  private timeoutId;
56
60
  private readonly disableTransaction;
57
- constructor(settings: KyselySettings);
61
+ /**
62
+ * @example
63
+ * ```ts
64
+ * import { KyselyCacheAdapter } from "@daiso-tech/core/cache/adapters";
65
+ * import { Serde } from "@daiso-tech/core/serde";
66
+ * import { SuperJsonSerdeAdapter } from "@daiso-tech/core/serde/adapters"
67
+ * import Sqlite from "better-sqlite3";
68
+ *
69
+ * const serde = new Serde(new SuperJsonSerdeAdapter());
70
+ * const cacheAdapter = new KyselyCacheAdapter({
71
+ * kysely: new Kysely({
72
+ * dialect: new SqliteDialect({
73
+ * database: new Sqlite("local.db"),
74
+ * }),
75
+ * }),
76
+ * serde,
77
+ * });
78
+ * // You need initialize the adapter once before using it.
79
+ * await cacheAdapter.init();
80
+ * ```
81
+ */
82
+ constructor(settings: KyselyCacheAdapterSettings);
58
83
  removeAllExpired(): Promise<void>;
59
84
  init(): Promise<void>;
60
85
  deInit(): Promise<void>;