@daiso-tech/core 0.35.3 → 0.36.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 (143) 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/fallback/fallback.middleware.d.ts +2 -2
  18. package/dist/async/middlewares/fallback/fallback.middleware.js +2 -2
  19. package/dist/async/middlewares/fallback/fallback.middleware.js.map +1 -1
  20. package/dist/async/middlewares/hedging/_shared.d.ts +7 -7
  21. package/dist/async/middlewares/hedging/concurrent-hedging/concurrent-hedging.middleware.js +7 -7
  22. package/dist/async/middlewares/hedging/concurrent-hedging/concurrent-hedging.middleware.js.map +1 -1
  23. package/dist/async/middlewares/hedging/sequential-hedging/sequential-hedging.middleware.js +6 -6
  24. package/dist/async/middlewares/hedging/sequential-hedging/sequential-hedging.middleware.js.map +1 -1
  25. package/dist/async/middlewares/observe/observe.middleware.d.ts +4 -4
  26. package/dist/async/middlewares/retry/retry.middleware.d.ts +5 -4
  27. package/dist/async/middlewares/retry/retry.middleware.js +9 -9
  28. package/dist/async/middlewares/retry/retry.middleware.js.map +1 -1
  29. package/dist/async/middlewares/timeout/timeout.middleware.d.ts +4 -2
  30. package/dist/async/middlewares/timeout/timeout.middleware.js +3 -1
  31. package/dist/async/middlewares/timeout/timeout.middleware.js.map +1 -1
  32. package/dist/async/utilities/lazy-promise/lazy-promise.d.ts +1 -1
  33. package/dist/async/utilities/lazy-promise/lazy-promise.js +1 -1
  34. package/dist/async/utilities/promise-queue/promise-queue.js.map +1 -1
  35. package/dist/cache/contracts/cache.errors.d.ts +3 -3
  36. package/dist/cache/contracts/cache.errors.js +1 -1
  37. package/dist/cache/contracts/cache.errors.js.map +1 -1
  38. package/dist/cache/contracts/cache.events.d.ts +2 -2
  39. package/dist/cache/implementations/adapters/libsql-cache-adapter/libsql-cache-adapter.d.ts +14 -0
  40. package/dist/cache/implementations/adapters/libsql-cache-adapter/libsql-cache-adapter.js.map +1 -1
  41. package/dist/cache/implementations/adapters/mongodb-cache-adapter/mongodb-cache-adapter.d.ts +3 -0
  42. package/dist/cache/implementations/adapters/mongodb-cache-adapter/mongodb-cache-adapter.js.map +1 -1
  43. package/dist/cache/implementations/adapters/sqlite-cache-adapter/sqlite-cache-adapter.d.ts +11 -0
  44. package/dist/cache/implementations/adapters/sqlite-cache-adapter/sqlite-cache-adapter.js.map +1 -1
  45. package/dist/cache/implementations/derivables/cache/cache.d.ts +12 -8
  46. package/dist/cache/implementations/derivables/cache/cache.js +25 -34
  47. package/dist/cache/implementations/derivables/cache/cache.js.map +1 -1
  48. package/dist/cache/implementations/derivables/cache-factory/cache-factory.d.ts +6 -41
  49. package/dist/cache/implementations/derivables/cache-factory/cache-factory.js +10 -45
  50. package/dist/cache/implementations/derivables/cache-factory/cache-factory.js.map +1 -1
  51. package/dist/cache/implementations/test-utilities/cache.test-suite.d.ts +4 -5
  52. package/dist/cache/implementations/test-utilities/cache.test-suite.js +11 -12
  53. package/dist/cache/implementations/test-utilities/cache.test-suite.js.map +1 -1
  54. package/dist/collection/contracts/async-collection.contract.d.ts +121 -121
  55. package/dist/collection/contracts/collection.contract.d.ts +120 -120
  56. package/dist/collection/contracts/collection.errors.d.ts +3 -3
  57. package/dist/collection/contracts/collection.errors.js +1 -1
  58. package/dist/collection/contracts/collection.errors.js.map +1 -1
  59. package/dist/collection/implementations/_shared.d.ts +4 -4
  60. package/dist/collection/implementations/_shared.js +2 -2
  61. package/dist/collection/implementations/_shared.js.map +1 -1
  62. package/dist/collection/implementations/async-iterable-collection/async-iterable-collection.d.ts +13 -13
  63. package/dist/collection/implementations/async-iterable-collection/async-iterable-collection.js +15 -15
  64. package/dist/collection/implementations/async-iterable-collection/async-iterable-collection.js.map +1 -1
  65. package/dist/collection/implementations/iterable-collection/iterable-collection.d.ts +12 -12
  66. package/dist/collection/implementations/iterable-collection/iterable-collection.js +12 -12
  67. package/dist/collection/implementations/iterable-collection/iterable-collection.js.map +1 -1
  68. package/dist/collection/implementations/list-collection/list-collection.d.ts +12 -12
  69. package/dist/collection/implementations/list-collection/list-collection.js +12 -12
  70. package/dist/collection/implementations/list-collection/list-collection.js.map +1 -1
  71. package/dist/event-bus/contracts/event-bus-factory.contract.d.ts +1 -1
  72. package/dist/event-bus/contracts/event-bus.contract.d.ts +2 -2
  73. package/dist/event-bus/contracts/event-bus.errors.d.ts +3 -3
  74. package/dist/event-bus/contracts/event-bus.errors.js +1 -1
  75. package/dist/event-bus/contracts/event-bus.errors.js.map +1 -1
  76. package/dist/event-bus/implementations/adapters/memory-event-bus-adapter/memory-event-bus-adapter.d.ts +1 -1
  77. package/dist/event-bus/implementations/adapters/memory-event-bus-adapter/memory-event-bus-adapter.js +1 -1
  78. package/dist/event-bus/implementations/derivables/event-bus/event-bus.d.ts +13 -6
  79. package/dist/event-bus/implementations/derivables/event-bus/event-bus.js +21 -19
  80. package/dist/event-bus/implementations/derivables/event-bus/event-bus.js.map +1 -1
  81. package/dist/event-bus/implementations/derivables/event-bus-factory/event-bus-factory.d.ts +5 -36
  82. package/dist/event-bus/implementations/derivables/event-bus-factory/event-bus-factory.js +4 -35
  83. package/dist/event-bus/implementations/derivables/event-bus-factory/event-bus-factory.js.map +1 -1
  84. package/dist/lock/contracts/lock.errors.d.ts +2 -2
  85. package/dist/lock/contracts/lock.errors.js.map +1 -1
  86. package/dist/lock/implementations/adapters/kysely-lock-adapter/kysely-lock-adapter.d.ts +3 -3
  87. package/dist/lock/implementations/adapters/kysely-lock-adapter/kysely-lock-adapter.js +2 -2
  88. package/dist/lock/implementations/adapters/kysely-lock-adapter/kysely-lock-adapter.js.map +1 -1
  89. package/dist/lock/implementations/adapters/libsql-lock-adapter/libsql-lock-adapter.d.ts +3 -3
  90. package/dist/lock/implementations/adapters/libsql-lock-adapter/libsql-lock-adapter.js +2 -2
  91. package/dist/lock/implementations/adapters/libsql-lock-adapter/libsql-lock-adapter.js.map +1 -1
  92. package/dist/lock/implementations/adapters/mongodb-lock-adapter/mongodb-lock-adapter.d.ts +6 -3
  93. package/dist/lock/implementations/adapters/mongodb-lock-adapter/mongodb-lock-adapter.js +1 -1
  94. package/dist/lock/implementations/adapters/mongodb-lock-adapter/mongodb-lock-adapter.js.map +1 -1
  95. package/dist/lock/implementations/adapters/sqlite-lock-adapter/sqlite-lock-adapter.d.ts +4 -4
  96. package/dist/lock/implementations/adapters/sqlite-lock-adapter/sqlite-lock-adapter.js +3 -3
  97. package/dist/lock/implementations/adapters/sqlite-lock-adapter/sqlite-lock-adapter.js.map +1 -1
  98. package/dist/lock/implementations/derivables/lock-provider/lock-provider.d.ts +22 -18
  99. package/dist/lock/implementations/derivables/lock-provider/lock-provider.js +20 -22
  100. package/dist/lock/implementations/derivables/lock-provider/lock-provider.js.map +1 -1
  101. package/dist/lock/implementations/derivables/lock-provider/lock-serde-transformer.d.ts +3 -3
  102. package/dist/lock/implementations/derivables/lock-provider/lock-serde-transformer.js +12 -6
  103. package/dist/lock/implementations/derivables/lock-provider/lock-serde-transformer.js.map +1 -1
  104. package/dist/lock/implementations/derivables/lock-provider/lock.d.ts +4 -2
  105. package/dist/lock/implementations/derivables/lock-provider/lock.js +16 -18
  106. package/dist/lock/implementations/derivables/lock-provider/lock.js.map +1 -1
  107. package/dist/lock/implementations/derivables/lock-provider-factory/lock-provider-factory.d.ts +6 -50
  108. package/dist/lock/implementations/derivables/lock-provider-factory/lock-provider-factory.js +10 -54
  109. package/dist/lock/implementations/derivables/lock-provider-factory/lock-provider-factory.js.map +1 -1
  110. package/dist/lock/implementations/test-utilities/lock-provider.test-suite.d.ts +1 -9
  111. package/dist/lock/implementations/test-utilities/lock-provider.test-suite.js +1 -9
  112. package/dist/lock/implementations/test-utilities/lock-provider.test-suite.js.map +1 -1
  113. package/dist/serde/contracts/flexible-serde.contract.d.ts +9 -2
  114. package/dist/utilities/classes/_module.d.ts +1 -1
  115. package/dist/utilities/classes/_module.js +1 -1
  116. package/dist/utilities/classes/_module.js.map +1 -1
  117. package/dist/utilities/classes/hooks/hooks.d.ts +2 -2
  118. package/dist/utilities/classes/hooks/hooks.js +2 -2
  119. package/dist/utilities/classes/namespace/_module.d.ts +1 -0
  120. package/dist/utilities/classes/namespace/_module.js +2 -0
  121. package/dist/utilities/classes/namespace/_module.js.map +1 -0
  122. package/dist/utilities/classes/{key-prefixer/key-prefixer.d.ts → namespace/namespace.d.ts} +38 -17
  123. package/dist/utilities/classes/{key-prefixer/key-prefixer.js → namespace/namespace.js} +51 -19
  124. package/dist/utilities/classes/namespace/namespace.js.map +1 -0
  125. package/dist/utilities/classes/time-span/time-span.d.ts +1 -2
  126. package/dist/utilities/classes/time-span/time-span.js +1 -4
  127. package/dist/utilities/classes/time-span/time-span.js.map +1 -1
  128. package/dist/utilities/functions/_module-exports.d.ts +1 -1
  129. package/dist/utilities/functions/_module-exports.js +1 -1
  130. package/dist/utilities/functions/_module-exports.js.map +1 -1
  131. package/dist/utilities/functions/result.d.ts +11 -0
  132. package/dist/utilities/functions/result.js +15 -0
  133. package/dist/utilities/functions/result.js.map +1 -0
  134. package/dist/utilities/types/factory.type.d.ts +13 -18
  135. package/dist/utilities/types/result.type.d.ts +11 -1
  136. package/package.json +3 -2
  137. package/dist/utilities/classes/key-prefixer/_module.d.ts +0 -1
  138. package/dist/utilities/classes/key-prefixer/_module.js +0 -2
  139. package/dist/utilities/classes/key-prefixer/_module.js.map +0 -1
  140. package/dist/utilities/classes/key-prefixer/key-prefixer.js.map +0 -1
  141. package/dist/utilities/functions/factory.d.ts +0 -44
  142. package/dist/utilities/functions/factory.js +0 -80
  143. package/dist/utilities/functions/factory.js.map +0 -1
@@ -4,14 +4,23 @@
4
4
  import { LazyPromise } from "../../../../async/_module-exports.js";
5
5
  import type { BaseEventMap, EventListener, Unsubscribe } from "../../../../event-bus/contracts/_module-exports.js";
6
6
  import { type IEventBus, type IEventBusAdapter } from "../../../../event-bus/contracts/_module-exports.js";
7
- import type { KeyPrefixer, Factory, AsyncLazy } from "../../../../utilities/_module-exports.js";
7
+ import { Namespace } from "../../../../utilities/_module-exports.js";
8
+ import { type Factory, type AsyncLazy } from "../../../../utilities/_module-exports.js";
8
9
  /**
9
10
  *
10
11
  * IMPORT_PATH: `"@daiso-tech/core/event-bus"`
11
12
  * @group Derivables
12
13
  */
13
14
  export type EventBusSettingsBase = {
14
- keyPrefixer: KeyPrefixer;
15
+ /**
16
+ * @default
17
+ * ```ts
18
+ * import { Namespace } from "@daiso-tech/core/utilities";
19
+ *
20
+ * new Namespace(["@", "event-bus"])
21
+ * ```
22
+ */
23
+ namespace?: Namespace;
15
24
  /**
16
25
  * You can pass a {@link Factory | `Factory`} of {@link LazyPromise| `LazyPromise`} to configure default settings for all {@link LazyPromise| `LazyPromise`} instances used in the `EventBus` class.
17
26
  * @default
@@ -37,20 +46,18 @@ export type EventBusSettings = EventBusSettingsBase & {
37
46
  * IMPORT_PATH: `"@daiso-tech/core/event-bus"`
38
47
  * @group Derivables
39
48
  */
40
- export declare class EventBus<TEventMap extends BaseEventMap> implements IEventBus<TEventMap> {
49
+ export declare class EventBus<TEventMap extends BaseEventMap = BaseEventMap> implements IEventBus<TEventMap> {
41
50
  private readonly store;
42
51
  private readonly adapter;
43
52
  private readonly lazyPromiseFactory;
44
- private keyPrefixer;
53
+ private namespace;
45
54
  /**
46
55
  * @example
47
56
  * ```ts
48
57
  * import { MemoryEventBusAdapter } from "@daiso-tech/core/event-bus/adapters";
49
58
  * import { EventBus } from "@daiso-tech/core/event-bus";
50
- * import { KeyPrefixer } from "@daiso-tech/core/utilities";
51
59
  *
52
60
  * const eventBus = new EventBus({
53
- * keyPrefixer: new KeyPrefixer("event-bus"),
54
61
  * adapter: new MemoryEventBusAdapter()
55
62
  * });
56
63
  * ```
@@ -3,7 +3,9 @@
3
3
  */
4
4
  import { LazyPromise } from "../../../../async/_module-exports.js";
5
5
  import { UnableToDispatchEventBusError, UnableToRemoveListenerEventBusError, UnableToAddListenerEventBusError, } from "../../../../event-bus/contracts/_module-exports.js";
6
- import { resolveFactory, resolveInvokable, } from "../../../../utilities/_module-exports.js";
6
+ import { Namespace } from "../../../../utilities/_module-exports.js";
7
+ import {} from "../../../../utilities/_module-exports.js";
8
+ import { resolveInvokable } from "../../../../utilities/_module-exports.js";
7
9
  import { ListenerStore } from "../../../../event-bus/implementations/derivables/event-bus/listener-store.js";
8
10
  /**
9
11
  * `EventBus` class can be derived from any {@link IEventBusAdapter | `IEventBusAdapter`}.
@@ -15,56 +17,55 @@ export class EventBus {
15
17
  store = new ListenerStore();
16
18
  adapter;
17
19
  lazyPromiseFactory;
18
- keyPrefixer;
20
+ namespace;
19
21
  /**
20
22
  * @example
21
23
  * ```ts
22
24
  * import { MemoryEventBusAdapter } from "@daiso-tech/core/event-bus/adapters";
23
25
  * import { EventBus } from "@daiso-tech/core/event-bus";
24
- * import { KeyPrefixer } from "@daiso-tech/core/utilities";
25
26
  *
26
27
  * const eventBus = new EventBus({
27
- * keyPrefixer: new KeyPrefixer("event-bus"),
28
28
  * adapter: new MemoryEventBusAdapter()
29
29
  * });
30
30
  * ```
31
31
  */
32
32
  constructor(settings) {
33
- const { keyPrefixer, adapter, lazyPromiseFactory = (invokable) => new LazyPromise(invokable), } = settings;
34
- this.lazyPromiseFactory = resolveFactory(lazyPromiseFactory);
33
+ const { namespace = new Namespace(["@", "event-bus"]), adapter, lazyPromiseFactory = (invokable) => new LazyPromise(invokable), } = settings;
34
+ this.lazyPromiseFactory = resolveInvokable(lazyPromiseFactory);
35
35
  this.adapter = adapter;
36
- this.keyPrefixer = keyPrefixer;
36
+ this.namespace = namespace;
37
37
  }
38
38
  createLazyPromise(asyncFn) {
39
39
  return this.lazyPromiseFactory(asyncFn);
40
40
  }
41
41
  addListener(eventName, listener) {
42
42
  return this.createLazyPromise(async () => {
43
- const key = this.keyPrefixer.create(String(eventName));
44
- const resolvedListener = this.store.getOrAdd([key.prefixed, listener], resolveInvokable(listener));
43
+ const key = this.namespace._getInternal().create(String(eventName));
44
+ const resolvedListener = this.store.getOrAdd([key.namespaced, listener], resolveInvokable(listener));
45
45
  try {
46
- await this.adapter.addListener(key.prefixed, resolvedListener);
46
+ await this.adapter.addListener(key.namespaced, resolvedListener);
47
47
  }
48
48
  catch (error) {
49
- this.store.getAndRemove([key.prefixed, listener]);
49
+ this.store.getAndRemove([key.namespaced, listener]);
50
50
  throw new UnableToAddListenerEventBusError(`A listener with name of "${String(eventName)}" could not added for "${String(eventName)}" event`, error);
51
51
  }
52
52
  });
53
53
  }
54
54
  removeListener(eventName, listener) {
55
55
  return this.createLazyPromise(async () => {
56
- const key = this.keyPrefixer.create(String(eventName));
56
+ const key = this.namespace._getInternal().create(String(eventName));
57
57
  const resolvedListener = this.store.getAndRemove([
58
- key.prefixed,
58
+ key.namespaced,
59
59
  listener,
60
60
  ]);
61
61
  if (resolvedListener === null) {
62
62
  return;
63
63
  }
64
64
  try {
65
- await this.adapter.removeListener(key.prefixed, resolvedListener);
65
+ await this.adapter.removeListener(key.namespaced, resolvedListener);
66
66
  }
67
67
  catch (error) {
68
+ this.store.getOrAdd([key.namespaced, listener], resolvedListener);
68
69
  throw new UnableToRemoveListenerEventBusError(`A listener with name of "${String(eventName)}" could not removed of "${String(eventName)}" event`, error);
69
70
  }
70
71
  });
@@ -80,13 +81,13 @@ export class EventBus {
80
81
  await this.removeListener(eventName, listener);
81
82
  }
82
83
  };
83
- const key = this.keyPrefixer.create(String(eventName));
84
- const resolvedListener = this.store.getOrAdd([key.prefixed, listener], wrappedListener);
84
+ const key = this.namespace._getInternal().create(String(eventName));
85
+ const resolvedListener = this.store.getOrAdd([key.namespaced, listener], wrappedListener);
85
86
  try {
86
- await this.adapter.addListener(key.prefixed, resolvedListener);
87
+ await this.adapter.addListener(key.namespaced, resolvedListener);
87
88
  }
88
89
  catch (error) {
89
- this.store.getAndRemove([key.prefixed, listener]);
90
+ this.store.getAndRemove([key.namespaced, listener]);
90
91
  throw new UnableToAddListenerEventBusError(`A listener with name of "${String(eventName)}" could not added for "${String(eventName)}" event`, error);
91
92
  }
92
93
  });
@@ -121,7 +122,8 @@ export class EventBus {
121
122
  dispatch(eventName, event) {
122
123
  return this.createLazyPromise(async () => {
123
124
  try {
124
- await this.adapter.dispatch(this.keyPrefixer.create(String(eventName)).prefixed, event);
125
+ await this.adapter.dispatch(this.namespace._getInternal().create(String(eventName))
126
+ .namespaced, event);
125
127
  }
126
128
  catch (error) {
127
129
  throw new UnableToDispatchEventBusError(`Events of type "${String(eventName)}" could not be dispatched`, error);
@@ -1 +1 @@
1
- {"version":3,"file":"event-bus.js","sourceRoot":"","sources":["../../../../../src/event-bus/implementations/derivables/event-bus/event-bus.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"event-bus.js","sourceRoot":"","sources":["../../../../../src/event-bus/implementations/derivables/event-bus/event-bus.ts"],"names":[],"mappings":"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"}
@@ -4,7 +4,7 @@
4
4
  import type { LazyPromise } from "../../../../async/_module-exports.js";
5
5
  import { type IEventBus, type IEventBusFactory, type BaseEventMap, type IEventBusAdapter } from "../../../../event-bus/contracts/_module-exports.js";
6
6
  import { type EventBusSettingsBase } from "../../../../event-bus/implementations/derivables/event-bus/_module.js";
7
- import type { AsyncLazy, Factory, KeyPrefixer } from "../../../../utilities/_module-exports.js";
7
+ import type { AsyncLazy, Factory, Namespace } from "../../../../utilities/_module-exports.js";
8
8
  /**
9
9
  *
10
10
  * IMPORT_PATH: `"@daiso-tech/core/event-bus"`
@@ -34,31 +34,18 @@ export declare class EventBusFactory<TAdapters extends string = string> implemen
34
34
  * import { type IEventBusAdapter, BaseEvent } from "@daiso-tech/core/event-bus/contracts";
35
35
  * import { EventBusFactory } from "@daiso-tech/core/event-bus";
36
36
  * import { MemoryEventBusAdapter, RedisPubSubEventBusAdapter } from "@daiso-tech/core/event-bus/adapters";
37
- * import { KeyPrefixer, type FactoryFn } from "@daiso-tech/core/utilities";
37
+ * import { type FactoryFn } from "@daiso-tech/core/utilities";
38
38
  * import { Serde } from "@daiso-tech/core/serde";
39
39
  * import { SuperJsonSerdeAdapter } from "@daiso-tech/core/serde/adapters"
40
40
  * import Redis from "ioredis";
41
41
  *
42
42
  * type Store = Partial<Record<string, IEventBusAdapter>>;
43
43
  *
44
- * function cahceAdapterFactory(store: Store): FactoryFn<string, IEventBusAdapter> {
45
- * return (prefix) => {
46
- * let adapter = store[prefix];
47
- * if (adapter === undefined) {
48
- * adapter = new MemoryEventBusAdapter();
49
- * store[prefix] = adapter;
50
- * }
51
- * return adapter;
52
- * }
53
- * }
54
- *
55
44
  * const serde = new Serde(new SuperJsonSerdeAdapter());
56
45
  * const store: Store = {};
57
46
  * const eventBusFactory = new EventBusFactory({
58
- * keyPrefixer: new KeyPrefixer("event-bus"),
59
47
  * adapters: {
60
48
  * memory: new MemoryEventBusAdapter(),
61
- * memoryFactory: cahceAdapterFactory(store),
62
49
  * redis: new RedisPubSubEventBusAdapter({
63
50
  * serde,
64
51
  * dispatcherClient: new Redis("YOUR_REDIS_CONNECTION_STRING"),
@@ -70,7 +57,7 @@ export declare class EventBusFactory<TAdapters extends string = string> implemen
70
57
  * ```
71
58
  */
72
59
  constructor(settings: EventBusFactorySettings<TAdapters>);
73
- setKeyPrefixer(keyPrefixer: KeyPrefixer): EventBusFactory<TAdapters>;
60
+ setNamespace(namespace: Namespace): EventBusFactory<TAdapters>;
74
61
  setLazyPromiseFactory(factory: Factory<AsyncLazy<any>, LazyPromise<any>>): EventBusFactory<TAdapters>;
75
62
  /**
76
63
  * @example
@@ -78,33 +65,15 @@ export declare class EventBusFactory<TAdapters extends string = string> implemen
78
65
  * import { type IEventBusAdapter, BaseEvent } from "@daiso-tech/core/event-bus/contracts";
79
66
  * import { EventBusFactory } from "@daiso-tech/core/event-bus";
80
67
  * import { MemoryEventBusAdapter, RedisPubSubEventBusAdapter } from "@daiso-tech/core/event-bus/adapters";
81
- * import { KeyPrefixer, type FactoryFn } from "@daiso-tech/core/utilities";
68
+ * import { type FactoryFn } from "@daiso-tech/core/utilities";
82
69
  * import { Serde } from "@daiso-tech/core/serde";
83
70
  * import { SuperJsonSerdeAdapter } from "@daiso-tech/core/serde/adapters"
84
71
  * import Redis from "ioredis";
85
72
  *
86
- * type Store = Partial<Record<string, IEventBusAdapter>>;
87
- *
88
- * function cahceAdapterFactory(store: Store): FactoryFn<string, IEventBusAdapter> {
89
- * return (prefix) => {
90
- * let adapter = store[prefix];
91
- * if (adapter === undefined) {
92
- * adapter = new MemoryEventBusAdapter();
93
- * store[prefix] = adapter;
94
- * }
95
- * return adapter;
96
- * }
97
- * }
98
- *
99
- * const dispatcherClient = new Redis("YOUR_REDIS_CONNECTION_STRING");
100
- * const listenerClient = new Redis("YOUR_REDIS_CONNECTION_STRING");
101
73
  * const serde = new Serde(new SuperJsonSerdeAdapter());
102
- * const store: Store = {};
103
74
  * const eventBusFactory = new EventBusFactory({
104
- * keyPrefixer: new KeyPrefixer("event-bus"),
105
75
  * adapters: {
106
76
  * memory: new MemoryEventBusAdapter(),
107
- * memoryFactory: cahceAdapterFactory(store),
108
77
  * redis: new RedisPubSubEventBusAdapter({
109
78
  * serde,
110
79
  * dispatcherClient: new Redis("YOUR_REDIS_CONNECTION_STRING"),
@@ -133,5 +102,5 @@ export declare class EventBusFactory<TAdapters extends string = string> implemen
133
102
  * .dispatch("add", { a: 1, b: 2 });
134
103
  * ```
135
104
  */
136
- use<TEventMap extends BaseEventMap>(adapterName?: TAdapters | undefined): IEventBus<TEventMap>;
105
+ use<TEventMap extends BaseEventMap = BaseEventMap>(adapterName?: TAdapters | undefined): IEventBus<TEventMap>;
137
106
  }
@@ -18,31 +18,18 @@ export class EventBusFactory {
18
18
  * import { type IEventBusAdapter, BaseEvent } from "@daiso-tech/core/event-bus/contracts";
19
19
  * import { EventBusFactory } from "@daiso-tech/core/event-bus";
20
20
  * import { MemoryEventBusAdapter, RedisPubSubEventBusAdapter } from "@daiso-tech/core/event-bus/adapters";
21
- * import { KeyPrefixer, type FactoryFn } from "@daiso-tech/core/utilities";
21
+ * import { type FactoryFn } from "@daiso-tech/core/utilities";
22
22
  * import { Serde } from "@daiso-tech/core/serde";
23
23
  * import { SuperJsonSerdeAdapter } from "@daiso-tech/core/serde/adapters"
24
24
  * import Redis from "ioredis";
25
25
  *
26
26
  * type Store = Partial<Record<string, IEventBusAdapter>>;
27
27
  *
28
- * function cahceAdapterFactory(store: Store): FactoryFn<string, IEventBusAdapter> {
29
- * return (prefix) => {
30
- * let adapter = store[prefix];
31
- * if (adapter === undefined) {
32
- * adapter = new MemoryEventBusAdapter();
33
- * store[prefix] = adapter;
34
- * }
35
- * return adapter;
36
- * }
37
- * }
38
- *
39
28
  * const serde = new Serde(new SuperJsonSerdeAdapter());
40
29
  * const store: Store = {};
41
30
  * const eventBusFactory = new EventBusFactory({
42
- * keyPrefixer: new KeyPrefixer("event-bus"),
43
31
  * adapters: {
44
32
  * memory: new MemoryEventBusAdapter(),
45
- * memoryFactory: cahceAdapterFactory(store),
46
33
  * redis: new RedisPubSubEventBusAdapter({
47
34
  * serde,
48
35
  * dispatcherClient: new Redis("YOUR_REDIS_CONNECTION_STRING"),
@@ -56,10 +43,10 @@ export class EventBusFactory {
56
43
  constructor(settings) {
57
44
  this.settings = settings;
58
45
  }
59
- setKeyPrefixer(keyPrefixer) {
46
+ setNamespace(namespace) {
60
47
  return new EventBusFactory({
61
48
  ...this.settings,
62
- keyPrefixer,
49
+ namespace,
63
50
  });
64
51
  }
65
52
  setLazyPromiseFactory(factory) {
@@ -74,33 +61,15 @@ export class EventBusFactory {
74
61
  * import { type IEventBusAdapter, BaseEvent } from "@daiso-tech/core/event-bus/contracts";
75
62
  * import { EventBusFactory } from "@daiso-tech/core/event-bus";
76
63
  * import { MemoryEventBusAdapter, RedisPubSubEventBusAdapter } from "@daiso-tech/core/event-bus/adapters";
77
- * import { KeyPrefixer, type FactoryFn } from "@daiso-tech/core/utilities";
64
+ * import { type FactoryFn } from "@daiso-tech/core/utilities";
78
65
  * import { Serde } from "@daiso-tech/core/serde";
79
66
  * import { SuperJsonSerdeAdapter } from "@daiso-tech/core/serde/adapters"
80
67
  * import Redis from "ioredis";
81
68
  *
82
- * type Store = Partial<Record<string, IEventBusAdapter>>;
83
- *
84
- * function cahceAdapterFactory(store: Store): FactoryFn<string, IEventBusAdapter> {
85
- * return (prefix) => {
86
- * let adapter = store[prefix];
87
- * if (adapter === undefined) {
88
- * adapter = new MemoryEventBusAdapter();
89
- * store[prefix] = adapter;
90
- * }
91
- * return adapter;
92
- * }
93
- * }
94
- *
95
- * const dispatcherClient = new Redis("YOUR_REDIS_CONNECTION_STRING");
96
- * const listenerClient = new Redis("YOUR_REDIS_CONNECTION_STRING");
97
69
  * const serde = new Serde(new SuperJsonSerdeAdapter());
98
- * const store: Store = {};
99
70
  * const eventBusFactory = new EventBusFactory({
100
- * keyPrefixer: new KeyPrefixer("event-bus"),
101
71
  * adapters: {
102
72
  * memory: new MemoryEventBusAdapter(),
103
- * memoryFactory: cahceAdapterFactory(store),
104
73
  * redis: new RedisPubSubEventBusAdapter({
105
74
  * serde,
106
75
  * dispatcherClient: new Redis("YOUR_REDIS_CONNECTION_STRING"),
@@ -1 +1 @@
1
- {"version":3,"file":"event-bus-factory.js","sourceRoot":"","sources":["../../../../../src/event-bus/implementations/derivables/event-bus-factory/event-bus-factory.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EAKN,MAAM,0CAA0C,CAAC;AAClD,OAAO,EACH,QAAQ,GAEX,MAAM,6DAA6D,CAAC;AAMrE,OAAO,EACH,6BAA6B,EAC7B,wBAAwB,GAC3B,MAAM,gCAAgC,CAAC;AAuBxC;;;;;GAKG;AACH,MAAM,OAAO,eAAe;IA6CH;IA1CrB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAwCG;IACH,YACqB,QAA4C;QAA5C,aAAQ,GAAR,QAAQ,CAAoC;IAC9D,CAAC;IAEJ,cAAc,CAAC,WAAwB;QACnC,OAAO,IAAI,eAAe,CAAC;YACvB,GAAG,IAAI,CAAC,QAAQ;YAChB,WAAW;SACd,CAAC,CAAC;IACP,CAAC;IAED,qBAAqB,CACjB,OAAkD;QAElD,OAAO,IAAI,eAAe,CAAC;YACvB,GAAG,IAAI,CAAC,QAAQ;YAChB,kBAAkB,EAAE,OAAO;SAC9B,CAAC,CAAC;IACP,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA4DG;IACH,GAAG,CACC,cAAqC,IAAI,CAAC,QAAQ,CAAC,cAAc;QAEjE,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;YAC5B,MAAM,IAAI,6BAA6B,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;QAClE,CAAC;QACD,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;QACpD,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;YACxB,MAAM,IAAI,wBAAwB,CAAC,WAAW,CAAC,CAAC;QACpD,CAAC;QACD,OAAO,IAAI,QAAQ,CAAC;YAChB,OAAO;YACP,GAAG,IAAI,CAAC,QAAQ;SACnB,CAAC,CAAC;IACP,CAAC;CACJ"}
1
+ {"version":3,"file":"event-bus-factory.js","sourceRoot":"","sources":["../../../../../src/event-bus/implementations/derivables/event-bus-factory/event-bus-factory.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EAKN,MAAM,0CAA0C,CAAC;AAClD,OAAO,EACH,QAAQ,GAEX,MAAM,6DAA6D,CAAC;AAMrE,OAAO,EACH,6BAA6B,EAC7B,wBAAwB,GAC3B,MAAM,gCAAgC,CAAC;AAuBxC;;;;;GAKG;AACH,MAAM,OAAO,eAAe;IAgCH;IA7BrB;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2BG;IACH,YACqB,QAA4C;QAA5C,aAAQ,GAAR,QAAQ,CAAoC;IAC9D,CAAC;IAEJ,YAAY,CAAC,SAAoB;QAC7B,OAAO,IAAI,eAAe,CAAC;YACvB,GAAG,IAAI,CAAC,QAAQ;YAChB,SAAS;SACZ,CAAC,CAAC;IACP,CAAC;IAED,qBAAqB,CACjB,OAAkD;QAElD,OAAO,IAAI,eAAe,CAAC;YACvB,GAAG,IAAI,CAAC,QAAQ;YAChB,kBAAkB,EAAE,OAAO;SAC9B,CAAC,CAAC;IACP,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA0CG;IACH,GAAG,CACC,cAAqC,IAAI,CAAC,QAAQ,CAAC,cAAc;QAEjE,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;YAC5B,MAAM,IAAI,6BAA6B,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;QAClE,CAAC;QACD,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;QACpD,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;YACxB,MAAM,IAAI,wBAAwB,CAAC,WAAW,CAAC,CAAC;QACpD,CAAC;QACD,OAAO,IAAI,QAAQ,CAAC;YAChB,OAAO;YACP,GAAG,IAAI,CAAC,QAAQ;SACnB,CAAC,CAAC;IACP,CAAC;CACJ"}
@@ -2,7 +2,7 @@
2
2
  * @module Lock
3
3
  */
4
4
  import { type ISerializedError, type OneOrMore } from "../../utilities/_module-exports.js";
5
- import type { IFlexibleSerde, ISerializable } from "../../serde/contracts/_module-exports.js";
5
+ import type { ISerderRegister, ISerializable } from "../../serde/contracts/_module-exports.js";
6
6
  /**
7
7
  *
8
8
  * IMPORT_PATH: `"@daiso-tech/core/lock/contracts"`
@@ -97,4 +97,4 @@ export declare const LOCK_ERRORS: {
97
97
  * IMPORT_PATH: `"@daiso-tech/core/lock/contracts"`
98
98
  * @group Errors
99
99
  */
100
- export declare function registerLockErrorsToSerde(serde: OneOrMore<IFlexibleSerde>): void;
100
+ export declare function registerLockErrorsToSerde(serde: OneOrMore<ISerderRegister>): void;
@@ -1 +1 @@
1
- {"version":3,"file":"lock.errors.js","sourceRoot":"","sources":["../../../src/lock/contracts/lock.errors.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,EACH,IAAI,EACJ,gBAAgB,GAGnB,MAAM,gCAAgC,CAAC;AAMxC;;;;GAIG;AACH,MAAM,OAAO,SACT,SAAQ,KAAK;IAGb,MAAM,CAAC,WAAW,CAAC,eAAiC;QAChD,OAAO,IAAI,SAAS,CAAC,eAAe,CAAC,OAAO,EAAE,eAAe,CAAC,KAAK,CAAC,CAAC;IACzE,CAAC;IAED,YAAY,OAAe,EAAE,KAAe;QACxC,KAAK,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;IAC9B,CAAC;IAED,SAAS;QACL,OAAO;YACH,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,IAAI,EAAE,IAAI,CAAC,IAAI;SAClB,CAAC;IACN,CAAC;CACJ;AAED;;;;GAIG;AACH,MAAM,OAAO,mBACT,SAAQ,SAAS;IAGjB,MAAM,CAAU,WAAW,CACvB,eAAiC;QAEjC,OAAO,IAAI,mBAAmB,CAC1B,eAAe,CAAC,OAAO,EACvB,eAAe,CAAC,KAAK,CACxB,CAAC;IACN,CAAC;IAED,YAAY,OAAe,EAAE,KAAe;QACxC,KAAK,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;IAC9B,CAAC;IAEQ,SAAS;QACd,OAAO;YACH,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,IAAI,EAAE,IAAI,CAAC,IAAI;SAClB,CAAC;IACN,CAAC;CACJ;AAED;;;;;GAKG;AACH,MAAM,OAAO,uBACT,SAAQ,mBAAmB;IAG3B,MAAM,CAAU,WAAW,CACvB,eAAiC;QAEjC,OAAO,IAAI,uBAAuB,CAC9B,eAAe,CAAC,OAAO,EACvB,eAAe,CAAC,KAAK,CACxB,CAAC;IACN,CAAC;IAED,YAAY,OAAe,EAAE,KAAe;QACxC,KAAK,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;IAC9B,CAAC;IAEQ,SAAS;QACd,OAAO;YACH,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,IAAI,EAAE,IAAI,CAAC,IAAI;SAClB,CAAC;IACN,CAAC;CACJ;AAED;;;;;GAKG;AACH,MAAM,OAAO,wBACT,SAAQ,mBAAmB;IAG3B,MAAM,CAAU,WAAW,CACvB,eAAiC;QAEjC,OAAO,IAAI,wBAAwB,CAC/B,eAAe,CAAC,OAAO,EACvB,eAAe,CAAC,KAAK,CACxB,CAAC;IACN,CAAC;IAED,YAAY,OAAe,EAAE,KAAe;QACxC,KAAK,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;IAC9B,CAAC;IAEQ,SAAS;QACd,OAAO;YACH,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,IAAI,EAAE,IAAI,CAAC,IAAI;SAClB,CAAC;IACN,CAAC;CACJ;AAED;;;;;GAKG;AACH,MAAM,OAAO,2BACT,SAAQ,SAAS;IAGjB,MAAM,CAAU,WAAW,CACvB,eAAiC;QAEjC,OAAO,IAAI,2BAA2B,CAClC,eAAe,CAAC,OAAO,EACvB,eAAe,CAAC,KAAK,CACxB,CAAC;IACN,CAAC;IAED,YAAY,OAAe,EAAE,KAAe;QACxC,KAAK,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;IAC9B,CAAC;IAEQ,SAAS;QACd,OAAO;YACH,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,IAAI,EAAE,IAAI,CAAC,IAAI;SAClB,CAAC;IACN,CAAC;CACJ;AAED;;;;;GAKG;AACH,MAAM,OAAO,uBACT,SAAQ,SAAS;IAGjB,MAAM,CAAU,WAAW,CACvB,eAAiC;QAEjC,OAAO,IAAI,uBAAuB,CAC9B,eAAe,CAAC,OAAO,EACvB,eAAe,CAAC,KAAK,CACxB,CAAC;IACN,CAAC;IAED,YAAY,OAAe,EAAE,KAAe;QACxC,KAAK,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;IAC9B,CAAC;IAEQ,SAAS;QACd,OAAO;YACH,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,IAAI,EAAE,IAAI,CAAC,IAAI;SAClB,CAAC;IACN,CAAC;CACJ;AAED;;;;;GAKG;AACH,MAAM,OAAO,uBACT,SAAQ,SAAS;IAGjB,MAAM,CAAU,WAAW,CACvB,eAAiC;QAEjC,OAAO,IAAI,uBAAuB,CAC9B,eAAe,CAAC,OAAO,EACvB,eAAe,CAAC,KAAK,CACxB,CAAC;IACN,CAAC;IAED,YAAY,OAAe,EAAE,KAAe;QACxC,KAAK,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;IAC9B,CAAC;IAEQ,SAAS;QACd,OAAO;YACH,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,IAAI,EAAE,IAAI,CAAC,IAAI;SAClB,CAAC;IACN,CAAC;CACJ;AAED;;;;GAIG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG;IACvB,IAAI,EAAE,SAAS;IACf,UAAU,EAAE,mBAAmB;IAC/B,cAAc,EAAE,uBAAuB;IACvC,eAAe,EAAE,wBAAwB;IACzC,kBAAkB,EAAE,2BAA2B;IAC/C,cAAc,EAAE,uBAAuB;CACjC,CAAC;AAEX;;;;;GAKG;AACH,MAAM,UAAU,yBAAyB,CACrC,KAAgC;IAEhC,KAAK,MAAM,MAAM,IAAI,gBAAgB,CAAC,KAAK,CAAC,EAAE,CAAC;QAC3C,MAAM;aACD,aAAa,CAAC,SAAS,EAAE,IAAI,CAAC;aAC9B,aAAa,CAAC,mBAAmB,EAAE,IAAI,CAAC;aACxC,aAAa,CAAC,uBAAuB,EAAE,IAAI,CAAC;aAC5C,aAAa,CAAC,wBAAwB,EAAE,IAAI,CAAC;aAC7C,aAAa,CAAC,2BAA2B,EAAE,IAAI,CAAC;aAChD,aAAa,CAAC,uBAAuB,EAAE,IAAI,CAAC,CAAC;IACtD,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"lock.errors.js","sourceRoot":"","sources":["../../../src/lock/contracts/lock.errors.ts"],"names":[],"mappings":"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"}
@@ -3,7 +3,7 @@
3
3
  */
4
4
  import type { IDatabaseLockAdapter, ILockData } from "../../../../lock/contracts/_module-exports.js";
5
5
  import type { Kysely } from "kysely";
6
- import { type IDeinitizable, type IInitizable, TimeSpan } from "../../../../utilities/_module-exports.js";
6
+ import { type IDeinitizable, type IInitizable, type IPrunable, TimeSpan } from "../../../../utilities/_module-exports.js";
7
7
  /**
8
8
  * @internal
9
9
  */
@@ -29,7 +29,7 @@ type KyselySettings = {
29
29
  /**
30
30
  * @internal
31
31
  */
32
- export declare class KyselyLockAdapter implements IDatabaseLockAdapter, IDeinitizable, IInitizable {
32
+ export declare class KyselyLockAdapter implements IDatabaseLockAdapter, IDeinitizable, IInitizable, IPrunable {
33
33
  private readonly database;
34
34
  private readonly expiredKeysRemovalInterval;
35
35
  private readonly shouldRemoveExpiredKeys;
@@ -37,7 +37,7 @@ export declare class KyselyLockAdapter implements IDatabaseLockAdapter, IDeiniti
37
37
  constructor(settings: KyselySettings);
38
38
  deInit(): Promise<void>;
39
39
  init(): Promise<void>;
40
- removeExpiredKeys(): Promise<void>;
40
+ removeAllExpired(): Promise<void>;
41
41
  insert(key: string, owner: string, expiration: Date | null): Promise<void>;
42
42
  update(key: string, owner: string, expiration: Date | null): Promise<number>;
43
43
  remove(key: string, owner: string | null): Promise<void>;
@@ -43,11 +43,11 @@ export class KyselyLockAdapter {
43
43
  .execute();
44
44
  if (this.shouldRemoveExpiredKeys) {
45
45
  this.timeoutId = setTimeout(() => {
46
- void this.removeExpiredKeys();
46
+ void this.removeAllExpired();
47
47
  }, this.expiredKeysRemovalInterval.toMilliseconds());
48
48
  }
49
49
  }
50
- async removeExpiredKeys() {
50
+ async removeAllExpired() {
51
51
  await this.database
52
52
  .deleteFrom("lock")
53
53
  .where("lock.expiresAt", "<=", new Date().getTime())
@@ -1 +1 @@
1
- {"version":3,"file":"kysely-lock-adapter.js","sourceRoot":"","sources":["../../../../../src/lock/implementations/adapters/kysely-lock-adapter/kysely-lock-adapter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"kysely-lock-adapter.js","sourceRoot":"","sources":["../../../../../src/lock/implementations/adapters/kysely-lock-adapter/kysely-lock-adapter.ts"],"names":[],"mappings":"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"}
@@ -2,7 +2,7 @@
2
2
  * @module Lock
3
3
  */
4
4
  import type { IDatabaseLockAdapter, ILockData } from "../../../../lock/contracts/_module-exports.js";
5
- import { type IDeinitizable, type IInitizable, TimeSpan } from "../../../../utilities/_module-exports.js";
5
+ import { type IDeinitizable, type IInitizable, type IPrunable, TimeSpan } from "../../../../utilities/_module-exports.js";
6
6
  import type { Client } from "@libsql/client";
7
7
  /**
8
8
  *
@@ -24,7 +24,7 @@ export type LibsqlLockAdapterSettings = {
24
24
  * IMPORT_PATH: `"@daiso-tech/core/lock/adapters"`
25
25
  * @group Adapters
26
26
  */
27
- export declare class LibsqlLockAdapter implements IDatabaseLockAdapter, IDeinitizable, IInitizable {
27
+ export declare class LibsqlLockAdapter implements IDatabaseLockAdapter, IDeinitizable, IInitizable, IPrunable {
28
28
  private databaseLockAdapter;
29
29
  /***
30
30
  * @example
@@ -41,7 +41,7 @@ export declare class LibsqlLockAdapter implements IDatabaseLockAdapter, IDeiniti
41
41
  * ```
42
42
  */
43
43
  constructor(settings: LibsqlLockAdapterSettings);
44
- removeExpiredKeys(): Promise<void>;
44
+ removeAllExpired(): Promise<void>;
45
45
  /**
46
46
  * Removes the table where the lock keys are stored and removes the table indexes.
47
47
  * Note all lock data will be removed.
@@ -48,8 +48,8 @@ export class LibsqlLockAdapter {
48
48
  shouldRemoveExpiredKeys,
49
49
  });
50
50
  }
51
- async removeExpiredKeys() {
52
- await this.databaseLockAdapter.removeExpiredKeys();
51
+ async removeAllExpired() {
52
+ await this.databaseLockAdapter.removeAllExpired();
53
53
  }
54
54
  /**
55
55
  * Removes the table where the lock keys are stored and removes the table indexes.
@@ -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;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"}
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,EAIH,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,gBAAgB;QAClB,MAAM,IAAI,CAAC,mBAAmB,CAAC,gBAAgB,EAAE,CAAC;IACtD,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"}
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @module Lock
3
3
  */
4
- import { type IDeinitizable, type IInitizable } from "../../../../utilities/_module-exports.js";
4
+ import { type IDeinitizable, type IInitizable, type IPrunable } from "../../../../utilities/_module-exports.js";
5
5
  import type { IDatabaseLockAdapter, ILockData } from "../../../../lock/contracts/_module-exports.js";
6
6
  import type { CollectionOptions, Db } from "mongodb";
7
7
  /**
@@ -11,6 +11,9 @@ import type { CollectionOptions, Db } from "mongodb";
11
11
  */
12
12
  export type MongodbLockAdapterSettings = {
13
13
  database: Db;
14
+ /**
15
+ * @default {"lock"}
16
+ */
14
17
  collectionName?: string;
15
18
  collectionSettings?: CollectionOptions;
16
19
  };
@@ -22,7 +25,7 @@ export type MongodbLockAdapterSettings = {
22
25
  * IMPORT_PATH: `"@daiso-tech/core/lock/adapters"`
23
26
  * @group Adapters
24
27
  */
25
- export declare class MongodbLockAdapter implements IDatabaseLockAdapter, IDeinitizable, IInitizable {
28
+ export declare class MongodbLockAdapter implements IDatabaseLockAdapter, IDeinitizable, IInitizable, IPrunable {
26
29
  private readonly database;
27
30
  private readonly collection;
28
31
  private readonly collectionName;
@@ -42,7 +45,7 @@ export declare class MongodbLockAdapter implements IDatabaseLockAdapter, IDeinit
42
45
  * ```
43
46
  */
44
47
  constructor({ collectionName, collectionSettings, database, }: MongodbLockAdapterSettings);
45
- removeExpiredKeys(): Promise<void>;
48
+ removeAllExpired(): Promise<void>;
46
49
  /**
47
50
  * Creates all related indexes.
48
51
  * Note the `init` method needs to be called before using the adapter.
@@ -36,7 +36,7 @@ export class MongodbLockAdapter {
36
36
  this.database = database;
37
37
  this.collection = database.collection(collectionName, collectionSettings);
38
38
  }
39
- async removeExpiredKeys() {
39
+ async removeAllExpired() {
40
40
  await this.collection.deleteMany({
41
41
  expiresAt: {
42
42
  $lte: new Date(),
@@ -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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"}
@@ -2,7 +2,7 @@
2
2
  * @module Lock
3
3
  */
4
4
  import type { IDatabaseLockAdapter, ILockData } from "../../../../lock/contracts/_module-exports.js";
5
- import { type IDeinitizable, type IInitizable, type ISqliteDatabase, TimeSpan } from "../../../../utilities/_module-exports.js";
5
+ import { type IDeinitizable, type IInitizable, type IPrunable, type ISqliteDatabase, TimeSpan } from "../../../../utilities/_module-exports.js";
6
6
  /**
7
7
  *
8
8
  * IMPORT_PATH: `"@daiso-tech/core/lock/adapters"`
@@ -18,12 +18,12 @@ export type SqliteLockAdapterSettings = {
18
18
  * To utilize the `SqliteLockAdapter`, you must install the `"better-sqlite3"` and `"@types/better-sqlite3"` packages.
19
19
  *
20
20
  * Note the `SqliteLockAdapter` is limited to single server usage and cannot be shared across multiple servers but it can be shared between different processes.
21
- * To use it correctly, ensure all process instances access the same consistent, persisted database.
21
+ * To use it correctly, ensure all process instances access the same persisted database.
22
22
  *
23
23
  * IMPORT_PATH: `"@daiso-tech/core/lock/adapters"`
24
24
  * @group Adapters
25
25
  */
26
- export declare class SqliteLockAdapter implements IDatabaseLockAdapter, IDeinitizable, IInitizable {
26
+ export declare class SqliteLockAdapter implements IDatabaseLockAdapter, IDeinitizable, IInitizable, IPrunable {
27
27
  private databaseLockAdapter;
28
28
  /**
29
29
  * @example
@@ -40,7 +40,7 @@ export declare class SqliteLockAdapter implements IDatabaseLockAdapter, IDeiniti
40
40
  * ```
41
41
  */
42
42
  constructor(settings: SqliteLockAdapterSettings);
43
- removeExpiredKeys(): Promise<void>;
43
+ removeAllExpired(): Promise<void>;
44
44
  /**
45
45
  * Removes the table where the lock keys are stored and removes the table indexes.
46
46
  * Note all lock data will be removed.