@daiso-tech/core 0.24.0 → 0.26.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 (96) hide show
  1. package/README.md +3 -2
  2. package/dist/async/utilities/lazy-promise/lazy-promise.d.ts +12 -3
  3. package/dist/async/utilities/lazy-promise/lazy-promise.js +37 -4
  4. package/dist/async/utilities/lazy-promise/lazy-promise.js.map +1 -1
  5. package/dist/cache/contracts/cache.contract.d.ts +4 -4
  6. package/dist/cache/implementations/adapters/kysely-sqlite-cache-adapter/kysely-sqlite-cache-adapter.js +2 -2
  7. package/dist/cache/implementations/adapters/kysely-sqlite-cache-adapter/kysely-sqlite-cache-adapter.js.map +1 -1
  8. package/dist/cache/implementations/adapters/memory-cache-adapter/memory-cache-adapter.js +4 -4
  9. package/dist/cache/implementations/adapters/memory-cache-adapter/memory-cache-adapter.js.map +1 -1
  10. package/dist/cache/implementations/adapters/mongodb-cache-adapter/mongodb-cache-adapter.js +2 -2
  11. package/dist/cache/implementations/adapters/mongodb-cache-adapter/mongodb-cache-adapter.js.map +1 -1
  12. package/dist/cache/implementations/adapters/redis-cache-adapter/redis-cache-adapter.js +5 -5
  13. package/dist/cache/implementations/adapters/redis-cache-adapter/redis-cache-adapter.js.map +1 -1
  14. package/dist/cache/implementations/derivables/cache/cache.d.ts +70 -184
  15. package/dist/cache/implementations/derivables/cache/cache.js +68 -185
  16. package/dist/cache/implementations/derivables/cache/cache.js.map +1 -1
  17. package/dist/cache/implementations/derivables/cache-factory/cache-factory.d.ts +11 -15
  18. package/dist/cache/implementations/derivables/cache-factory/cache-factory.js +0 -11
  19. package/dist/cache/implementations/derivables/cache-factory/cache-factory.js.map +1 -1
  20. package/dist/collection/implementations/async-iterable-collection/async-iterable-collection.js +5 -5
  21. package/dist/collection/implementations/async-iterable-collection/async-iterable-collection.js.map +1 -1
  22. package/dist/collection/implementations/iterable-collection/iterable-collection.js +5 -5
  23. package/dist/collection/implementations/iterable-collection/iterable-collection.js.map +1 -1
  24. package/dist/collection/implementations/list-collection/list-collection.js +5 -5
  25. package/dist/collection/implementations/list-collection/list-collection.js.map +1 -1
  26. package/dist/event-bus/contracts/_shared.d.ts +0 -7
  27. package/dist/event-bus/contracts/_shared.js.map +1 -1
  28. package/dist/event-bus/contracts/event-bus-adapter.contract.d.ts +6 -5
  29. package/dist/event-bus/contracts/event-bus.contract.d.ts +21 -16
  30. package/dist/event-bus/implementations/adapters/memory-event-bus-adapter/memory-event-bus-adapter.d.ts +4 -3
  31. package/dist/event-bus/implementations/adapters/memory-event-bus-adapter/memory-event-bus-adapter.js +3 -3
  32. package/dist/event-bus/implementations/adapters/memory-event-bus-adapter/memory-event-bus-adapter.js.map +1 -1
  33. package/dist/event-bus/implementations/adapters/no-op-event-bus-adapter/no-op-event-bus-adapter.d.ts +4 -3
  34. package/dist/event-bus/implementations/adapters/no-op-event-bus-adapter/no-op-event-bus-adapter.js.map +1 -1
  35. package/dist/event-bus/implementations/adapters/redis-pub-sub-event-bus-adapter/redis-pub-sub-event-bus-adapter.d.ts +4 -3
  36. package/dist/event-bus/implementations/adapters/redis-pub-sub-event-bus-adapter/redis-pub-sub-event-bus-adapter.js +3 -3
  37. package/dist/event-bus/implementations/adapters/redis-pub-sub-event-bus-adapter/redis-pub-sub-event-bus-adapter.js.map +1 -1
  38. package/dist/event-bus/implementations/derivables/event-bus/event-bus.d.ts +64 -33
  39. package/dist/event-bus/implementations/derivables/event-bus/event-bus.js +92 -33
  40. package/dist/event-bus/implementations/derivables/event-bus/event-bus.js.map +1 -1
  41. package/dist/event-bus/implementations/test-utilities/event-bus.test-suite.js +957 -201
  42. package/dist/event-bus/implementations/test-utilities/event-bus.test-suite.js.map +1 -1
  43. package/dist/lock/contracts/lock-provider.contract.d.ts +2 -2
  44. package/dist/lock/contracts/lock.contract.d.ts +24 -6
  45. package/dist/lock/implementations/adapters/kysely-lock-adapter/kysely-lock-adapter.js +2 -2
  46. package/dist/lock/implementations/adapters/kysely-lock-adapter/kysely-lock-adapter.js.map +1 -1
  47. package/dist/lock/implementations/adapters/memory-lock-adapter/memory-lock-adapter.js +4 -4
  48. package/dist/lock/implementations/adapters/memory-lock-adapter/memory-lock-adapter.js.map +1 -1
  49. package/dist/lock/implementations/adapters/mongodb-lock-adapter/mongodb-lock-adapter.js +2 -2
  50. package/dist/lock/implementations/adapters/mongodb-lock-adapter/mongodb-lock-adapter.js.map +1 -1
  51. package/dist/lock/implementations/adapters/redis-lock-adapter/redis-lock-adapter.js +4 -4
  52. package/dist/lock/implementations/adapters/redis-lock-adapter/redis-lock-adapter.js.map +1 -1
  53. package/dist/lock/implementations/derivables/lock-provider/lock-provider.d.ts +90 -48
  54. package/dist/lock/implementations/derivables/lock-provider/lock-provider.js +67 -43
  55. package/dist/lock/implementations/derivables/lock-provider/lock-provider.js.map +1 -1
  56. package/dist/lock/implementations/derivables/lock-provider/lock-serde-transformer.d.ts +4 -23
  57. package/dist/lock/implementations/derivables/lock-provider/lock-serde-transformer.js +8 -2
  58. package/dist/lock/implementations/derivables/lock-provider/lock-serde-transformer.js.map +1 -1
  59. package/dist/lock/implementations/derivables/lock-provider/lock.d.ts +744 -11
  60. package/dist/lock/implementations/derivables/lock-provider/lock.js +770 -3
  61. package/dist/lock/implementations/derivables/lock-provider/lock.js.map +1 -1
  62. package/dist/lock/implementations/derivables/lock-provider-factory/lock-provider-factory.d.ts +36 -5
  63. package/dist/lock/implementations/derivables/lock-provider-factory/lock-provider-factory.js +10 -4
  64. package/dist/lock/implementations/derivables/lock-provider-factory/lock-provider-factory.js.map +1 -1
  65. package/dist/lock/implementations/test-utilities/lock-provider.test-suite.d.ts +1 -0
  66. package/dist/lock/implementations/test-utilities/lock-provider.test-suite.js +417 -0
  67. package/dist/lock/implementations/test-utilities/lock-provider.test-suite.js.map +1 -1
  68. package/dist/serde/implementations/derivables/serde.js +4 -4
  69. package/dist/serde/implementations/derivables/serde.js.map +1 -1
  70. package/dist/utilities/{constants.js → _constants.js} +1 -1
  71. package/dist/utilities/_constants.js.map +1 -0
  72. package/dist/utilities/_module-exports.d.ts +1 -1
  73. package/dist/utilities/_module-exports.js +1 -1
  74. package/dist/utilities/_module-exports.js.map +1 -1
  75. package/dist/utilities/contracts/_module.d.ts +0 -1
  76. package/dist/utilities/contracts/_module.js +0 -1
  77. package/dist/utilities/contracts/_module.js.map +1 -1
  78. package/dist/utilities/functions.d.ts +3 -7
  79. package/dist/utilities/functions.js +3 -10
  80. package/dist/utilities/functions.js.map +1 -1
  81. package/dist/utilities/pipeline/_module.d.ts +1 -0
  82. package/dist/utilities/pipeline/_module.js +2 -0
  83. package/dist/utilities/pipeline/_module.js.map +1 -0
  84. package/dist/utilities/pipeline/pipeline.d.ts +45 -0
  85. package/dist/utilities/pipeline/pipeline.js +75 -0
  86. package/dist/utilities/pipeline/pipeline.js.map +1 -0
  87. package/dist/utilities/time-span/time-span.d.ts +3 -12
  88. package/dist/utilities/time-span/time-span.js +3 -6
  89. package/dist/utilities/time-span/time-span.js.map +1 -1
  90. package/dist/utilities/types.d.ts +19 -2
  91. package/package.json +1 -1
  92. package/dist/utilities/constants.js.map +0 -1
  93. package/dist/utilities/contracts/buildable.contract.d.ts +0 -11
  94. package/dist/utilities/contracts/buildable.contract.js +0 -5
  95. package/dist/utilities/contracts/buildable.contract.js.map +0 -1
  96. /package/dist/utilities/{constants.d.ts → _constants.d.ts} +0 -0
@@ -3,7 +3,7 @@
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 { getConstructorName, isArrayEmpty, simplifyOneOrMoreStr, } from "../../../../utilities/_module-exports.js";
6
+ import { getConstructorName, resolveOneOrMoreStr, } from "../../../../utilities/_module-exports.js";
7
7
  /**
8
8
  * <i>EventBus</i> class can be derived from any <i>{@link IEventBusAdapter}</i>.
9
9
  *
@@ -16,6 +16,7 @@ export class EventBus {
16
16
  backoffPolicy;
17
17
  retryPolicy;
18
18
  timeout;
19
+ listenerObjectMap = new Map();
19
20
  /**
20
21
  * @example
21
22
  * ```ts
@@ -66,7 +67,7 @@ export class EventBus {
66
67
  */
67
68
  withGroup(group) {
68
69
  return new EventBus({
69
- adapter: this.adapter.withGroup(simplifyOneOrMoreStr(group)),
70
+ adapter: this.adapter.withGroup(resolveOneOrMoreStr(group)),
70
71
  retryAttempts: this.retryAttempts,
71
72
  backoffPolicy: this.backoffPolicy,
72
73
  retryPolicy: this.retryPolicy,
@@ -92,6 +93,27 @@ export class EventBus {
92
93
  getGroup() {
93
94
  return this.adapter.getGroup();
94
95
  }
96
+ ensureListenerObject(listener) {
97
+ let listenerFn = this.listenerObjectMap.get(listener);
98
+ if (listenerFn !== undefined) {
99
+ return listenerFn;
100
+ }
101
+ listenerFn = listener.invoke.bind(listener);
102
+ this.listenerObjectMap.set(listener, listenerFn);
103
+ return listenerFn;
104
+ }
105
+ resolveListener(listener) {
106
+ if (typeof listener === "function") {
107
+ return listener;
108
+ }
109
+ return this.ensureListenerObject(listener);
110
+ }
111
+ deleteListener(listener) {
112
+ if (typeof listener === "function") {
113
+ return;
114
+ }
115
+ this.listenerObjectMap.delete(listener);
116
+ }
95
117
  /**
96
118
  * @example
97
119
  * ```ts
@@ -106,19 +128,21 @@ export class EventBus {
106
128
  *
107
129
  * class AddEvent extends BaseEvent<{ a: number, b: number }> {}
108
130
  *
109
- * const listener: Listener<AddEvent> = event => {
131
+ * const listener: Invokable<AddEvent> = event => {
110
132
  * console.log(event);
111
133
  * }
112
134
  * await eventBus.addListener(AddEvent, listener);
135
+ * await eventBus.dispatch(new AddEvent({ a: 1, b: 2,}));
113
136
  * ```
114
137
  */
115
138
  addListener(event, listener) {
116
139
  return this.createLayPromise(async () => {
140
+ const resolvedListener = this.resolveListener(listener);
117
141
  try {
118
- await this.adapter.addListener(event.name, listener);
142
+ await this.adapter.addListener(event.name, resolvedListener);
119
143
  }
120
144
  catch (error) {
121
- throw new UnableToAddListenerEventBusError(`A listener with name of "${listener.name}" could not added for "${String(event)}" event`, error);
145
+ throw new UnableToAddListenerEventBusError(`A listener with name of "${resolvedListener.name}" could not added for "${String(event)}" event`, error);
122
146
  }
123
147
  });
124
148
  }
@@ -136,19 +160,23 @@ export class EventBus {
136
160
  *
137
161
  * class AddEvent extends BaseEvent<{ a: number, b: number }> {}
138
162
  *
139
- * const listener: Listener<AddEvent> = event => {
163
+ * const listener: Invokable<AddEvent> = event => {
140
164
  * console.log(event);
141
165
  * }
166
+ * await eventBus.addListener(AddEvent, listener);
167
+ * await eventBus.dispatch(new AddEvent({ a: 1, b: 2,}));
142
168
  * await eventBus.removeListener(AddEvent, listener);
143
169
  * ```
144
170
  */
145
171
  removeListener(event, listener) {
146
172
  return this.createLayPromise(async () => {
173
+ const resolvedListener = this.resolveListener(listener);
147
174
  try {
148
- await this.adapter.removeListener(event.name, listener);
175
+ await this.adapter.removeListener(event.name, resolvedListener);
176
+ this.deleteListener(listener);
149
177
  }
150
178
  catch (error) {
151
- throw new UnableToRemoveListenerEventBusError(`A listener with name of "${listener.name}" could not removed of "${String(event)}" event`, error);
179
+ throw new UnableToRemoveListenerEventBusError(`A listener with name of "${resolvedListener.name}" could not removed of "${String(event)}" event`, error);
152
180
  }
153
181
  });
154
182
  }
@@ -167,15 +195,19 @@ export class EventBus {
167
195
  * class AddEvent extends BaseEvent<{ a: number, b: number }> {}
168
196
  * class SubEvent extends BaseEvent<{ c: number, d: number }> {}
169
197
  *
170
- * const listener: Listener<AddEvent | SubEvent> = event => {
198
+ * const listener: Invokable<AddEvent | SubEvent> = event => {
171
199
  * console.log(event)
172
200
  * }
173
201
  * await eventBus.addListenerMany([AddEvent, SubEvent], listener);
202
+ * await eventBus.dispatchMany([
203
+ * new AddEvent({ a: 1, b: 2 }),
204
+ * new SubEvent({ c: 1, d: 2 }),
205
+ * ]);
174
206
  * ```
175
207
  */
176
208
  addListenerMany(events, listener) {
177
209
  return this.createLayPromise(async () => {
178
- if (isArrayEmpty(events)) {
210
+ if (events.length === 0) {
179
211
  return;
180
212
  }
181
213
  const promises = [];
@@ -200,15 +232,20 @@ export class EventBus {
200
232
  * class AddEvent extends BaseEvent<{ a: number, b: number }> {}
201
233
  * class SubEvent extends BaseEvent<{ c: number, d: number }> {}
202
234
  *
203
- * const listener: Listener<AddEvent | SubEvent> = event => {
235
+ * const listener: Invokable<AddEvent | SubEvent> = event => {
204
236
  * console.log(event);
205
237
  * }
238
+ * await eventBus.addListenerMany([AddEvent, SubEvent], listener);
239
+ * await eventBus.dispatchMany([
240
+ * new AddEvent({ a: 1, b: 2 }),
241
+ * new SubEvent({ c: 1, d: 2 }),
242
+ * ]);
206
243
  * await eventBus.removeListenerMany([AddEvent, SubEvent], listener);
207
244
  * ```
208
245
  */
209
246
  removeListenerMany(events, listener) {
210
247
  return this.createLayPromise(async () => {
211
- if (isArrayEmpty(events)) {
248
+ if (events.length === 0) {
212
249
  return;
213
250
  }
214
251
  const promises = [];
@@ -232,17 +269,19 @@ export class EventBus {
232
269
  *
233
270
  * class AddEvent extends BaseEvent<{ a: number, b: number }> {}
234
271
  *
235
- * const listener: Listener<AddEvent> = event => {
272
+ * await eventBus.listenOnce(AddEvent, event => {
236
273
  * console.log(event);
237
- * }
238
- * await eventBus.listenOnce(AddEvent, listener);
274
+ * });
275
+ *
276
+ * await eventBus.dispatch(new AddEvent({ a: 1, b: 2,}));
239
277
  * ```
240
278
  */
241
279
  listenOnce(event, listener) {
242
280
  return this.createLayPromise(async () => {
243
281
  const wrappedListener = async (event_) => {
244
282
  try {
245
- await listener(event_);
283
+ const resolvedListener = this.resolveListener(listener);
284
+ await resolvedListener(event_);
246
285
  }
247
286
  finally {
248
287
  await this.removeListener(event, wrappedListener);
@@ -251,6 +290,34 @@ export class EventBus {
251
290
  await this.addListener(event, wrappedListener);
252
291
  });
253
292
  }
293
+ /**
294
+ * @example
295
+ * ```ts
296
+ * import type { IGroupableEventBus } from "@daiso-tech/core/event-bus/contracts";
297
+ * import { EventBus } from "@daiso-tech/core/event-bus/implementations/derivables";
298
+ * import { MemoryEventBusAdapter } from "@daiso-tech/core/event-bus/implementations/adapters";
299
+ * import { BaseEvent, type Listener } from "@daiso-tech/core/event-bus/contracts";
300
+ *
301
+ * const eventBus: IGroupableEventBus = new EventBus({
302
+ * adapter: new MemoryEventBusAdapter({ rootGroup: "@global" })
303
+ * });
304
+ *
305
+ * class AddEvent extends BaseEvent<{ a: number, b: number }> {}
306
+ *
307
+ * eventBus.asPromise(AddEvent).then(event => {
308
+ * console.log(event);
309
+ * });
310
+ *
311
+ * await eventBus.dispatch(new AddEvent({ a: 1, b: 2,}));
312
+ * ```
313
+ */
314
+ asPromise(event) {
315
+ return new LazyPromise(() => new Promise((resolve, reject) => {
316
+ this.listenOnce(event, resolve).then((event) => event,
317
+ // eslint-disable-next-line @typescript-eslint/use-unknown-in-catch-callback-variable
318
+ reject);
319
+ }));
320
+ }
254
321
  /**
255
322
  * @example
256
323
  * ```ts
@@ -268,6 +335,7 @@ export class EventBus {
268
335
  * const unsubscribe = await eventBus.subscribe(AddEvent, event => {
269
336
  * console.log(event);
270
337
  * });
338
+ * await eventBus.dispatch(new AddEvent({ a: 1, b: 2,}));
271
339
  * await unsubscribe();
272
340
  * ```
273
341
  */
@@ -292,6 +360,10 @@ export class EventBus {
292
360
  * const unsubscribe = await eventBus.subscribeMany([AddEvent, SubEvent], event => {
293
361
  * console.log(event);
294
362
  * });
363
+ * await eventBus.dispatchMany([
364
+ * new AddEvent({ a: 1, b: 2 }),
365
+ * new SubEvent({ c: 1, d: 2 }),
366
+ * ]);
295
367
  * await unsubscribe();
296
368
  * ```
297
369
  */
@@ -321,15 +393,9 @@ export class EventBus {
321
393
  * class AddEvent extends BaseEvent<{ a: number, b: number }> {}
322
394
  * class SubEvent extends BaseEvent<{ c: number, d: number }> {}
323
395
  *
324
- * await eventBus.dispatch([
325
- * new AddEvent({
326
- * a: 1,
327
- * b: 2,
328
- * }),
329
- * new SubEvent({
330
- * c: 4,
331
- * d: 3
332
- * })
396
+ * await eventBus.dispatchMany([
397
+ * new AddEvent({ a: 1, b: 2 }),
398
+ * new SubEvent({ c: 1, d: 2 }),
333
399
  * ]);
334
400
  * ```
335
401
  */
@@ -360,15 +426,8 @@ export class EventBus {
360
426
  * });
361
427
  *
362
428
  * class AddEvent extends BaseEvent<{ a: number, b: number }> {}
363
- * class SubEvent extends BaseEvent<{ c: number, d: number }> {}
364
429
  *
365
- * await eventBus.dispatch(
366
- * new AddEvent({
367
- * a: 1,
368
- * b: 2,
369
- * })
370
- * );
371
- * ```
430
+ * await eventBus.dispatch(new AddEvent({ a: 1, b: 2,}));
372
431
  * ```
373
432
  */
374
433
  dispatch(event) {
@@ -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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"}