@daiso-tech/core 0.31.0 → 0.32.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 (89) hide show
  1. package/dist/async/_module-exports.d.ts +1 -0
  2. package/dist/async/_module-exports.js +1 -0
  3. package/dist/async/_module-exports.js.map +1 -1
  4. package/dist/async/async.events.d.ts +82 -0
  5. package/dist/async/async.events.js +59 -0
  6. package/dist/async/async.events.js.map +1 -0
  7. package/dist/async/utilities/lazy-promise/lazy-promise-event-bus.d.ts +15 -0
  8. package/dist/async/utilities/lazy-promise/lazy-promise-event-bus.js +50 -0
  9. package/dist/async/utilities/lazy-promise/lazy-promise-event-bus.js.map +1 -0
  10. package/dist/async/utilities/lazy-promise/lazy-promise-listener.contract.d.ts +23 -0
  11. package/dist/async/utilities/lazy-promise/lazy-promise-listener.contract.js +44 -0
  12. package/dist/async/utilities/lazy-promise/lazy-promise-listener.contract.js.map +1 -0
  13. package/dist/async/utilities/lazy-promise/lazy-promise.d.ts +101 -51
  14. package/dist/async/utilities/lazy-promise/lazy-promise.js +155 -96
  15. package/dist/async/utilities/lazy-promise/lazy-promise.js.map +1 -1
  16. package/dist/async/utilities/retry/retry-or-fail.d.ts +1 -1
  17. package/dist/async/utilities/retry/retry-or-fail.js +1 -1
  18. package/dist/async/utilities/retry/retry-or-fail.js.map +1 -1
  19. package/dist/async/utilities/retry/retry.d.ts +1 -1
  20. package/dist/async/utilities/retry/retry.js.map +1 -1
  21. package/dist/cache/contracts/cache.contract.d.ts +2 -2
  22. package/dist/cache/implementations/derivables/cache/cache.d.ts +20 -159
  23. package/dist/cache/implementations/derivables/cache/cache.js +14 -174
  24. package/dist/cache/implementations/derivables/cache/cache.js.map +1 -1
  25. package/dist/cache/implementations/derivables/cache-factory/cache-factory.d.ts +11 -32
  26. package/dist/cache/implementations/derivables/cache-factory/cache-factory.js +10 -52
  27. package/dist/cache/implementations/derivables/cache-factory/cache-factory.js.map +1 -1
  28. package/dist/cache/implementations/test-utilities/cache-adapter.test-suite.d.ts +5 -5
  29. package/dist/cache/implementations/test-utilities/cache-adapter.test-suite.js +5 -5
  30. package/dist/collection/implementations/_shared.d.ts +2 -0
  31. package/dist/collection/implementations/_shared.js +2 -0
  32. package/dist/collection/implementations/_shared.js.map +1 -1
  33. package/dist/collection/implementations/async-iterable-collection/async-iterable-collection.d.ts +5 -8
  34. package/dist/collection/implementations/async-iterable-collection/async-iterable-collection.js +5 -19
  35. package/dist/collection/implementations/async-iterable-collection/async-iterable-collection.js.map +1 -1
  36. package/dist/event-bus/implementations/adapters/memory-event-bus-adapter/memory-event-bus-adapter.d.ts +5 -5
  37. package/dist/event-bus/implementations/adapters/memory-event-bus-adapter/memory-event-bus-adapter.js +5 -5
  38. package/dist/event-bus/implementations/derivables/event-bus/event-bus.d.ts +18 -13
  39. package/dist/event-bus/implementations/derivables/event-bus/event-bus.js +14 -33
  40. package/dist/event-bus/implementations/derivables/event-bus/event-bus.js.map +1 -1
  41. package/dist/event-bus/implementations/derivables/event-bus-factory/event-bus-factory.d.ts +9 -35
  42. package/dist/event-bus/implementations/derivables/event-bus-factory/event-bus-factory.js +8 -54
  43. package/dist/event-bus/implementations/derivables/event-bus-factory/event-bus-factory.js.map +1 -1
  44. package/dist/lock/contracts/lock.contract.d.ts +4 -4
  45. package/dist/lock/implementations/adapters/redis-lock-adapter/redis-lock-adapter.d.ts +1 -2
  46. package/dist/lock/implementations/adapters/redis-lock-adapter/redis-lock-adapter.js +1 -2
  47. package/dist/lock/implementations/adapters/redis-lock-adapter/redis-lock-adapter.js.map +1 -1
  48. package/dist/lock/implementations/derivables/lock-provider/lock-provider.d.ts +47 -24
  49. package/dist/lock/implementations/derivables/lock-provider/lock-provider.js +40 -40
  50. package/dist/lock/implementations/derivables/lock-provider/lock-provider.js.map +1 -1
  51. package/dist/lock/implementations/derivables/lock-provider/lock.d.ts +0 -204
  52. package/dist/lock/implementations/derivables/lock-provider/lock.js +0 -204
  53. package/dist/lock/implementations/derivables/lock-provider/lock.js.map +1 -1
  54. package/dist/lock/implementations/derivables/lock-provider-factory/lock-provider-factory.d.ts +11 -37
  55. package/dist/lock/implementations/derivables/lock-provider-factory/lock-provider-factory.js +10 -59
  56. package/dist/lock/implementations/derivables/lock-provider-factory/lock-provider-factory.js.map +1 -1
  57. package/dist/lock/implementations/test-utilities/database-lock-adapter.test-suite.d.ts +1 -2
  58. package/dist/lock/implementations/test-utilities/database-lock-adapter.test-suite.js +1 -2
  59. package/dist/lock/implementations/test-utilities/database-lock-adapter.test-suite.js.map +1 -1
  60. package/dist/lock/implementations/test-utilities/lock-adapter.test-suite.d.ts +0 -1
  61. package/dist/lock/implementations/test-utilities/lock-adapter.test-suite.js +0 -1
  62. package/dist/lock/implementations/test-utilities/lock-adapter.test-suite.js.map +1 -1
  63. package/dist/lock/implementations/test-utilities/lock-provider.test-suite.d.ts +1 -1
  64. package/dist/lock/implementations/test-utilities/lock-provider.test-suite.js +1 -1
  65. package/dist/serde/contracts/flexible-serde.contract.d.ts +1 -1
  66. package/dist/serde/implementations/derivables/serde.d.ts +7 -7
  67. package/dist/serde/implementations/derivables/serde.js +7 -7
  68. package/dist/serde/implementations/test-utilities/flexible-serde.test-suite.d.ts +0 -1
  69. package/dist/serde/implementations/test-utilities/flexible-serde.test-suite.js +0 -1
  70. package/dist/serde/implementations/test-utilities/flexible-serde.test-suite.js.map +1 -1
  71. package/dist/utilities/classes/_module.d.ts +1 -0
  72. package/dist/utilities/classes/_module.js +1 -0
  73. package/dist/utilities/classes/_module.js.map +1 -1
  74. package/dist/utilities/classes/sync-event-bus/_module.d.ts +1 -0
  75. package/dist/utilities/classes/sync-event-bus/_module.js +2 -0
  76. package/dist/utilities/classes/sync-event-bus/_module.js.map +1 -0
  77. package/dist/utilities/classes/sync-event-bus/sync-event-bus.d.ts +16 -0
  78. package/dist/utilities/classes/sync-event-bus/sync-event-bus.js +53 -0
  79. package/dist/utilities/classes/sync-event-bus/sync-event-bus.js.map +1 -0
  80. package/dist/utilities/contracts/_module.d.ts +1 -0
  81. package/dist/utilities/contracts/_module.js +1 -0
  82. package/dist/utilities/contracts/_module.js.map +1 -1
  83. package/dist/utilities/contracts/sync-event-bus-listenable.d.ts +13 -0
  84. package/dist/utilities/contracts/sync-event-bus-listenable.js +5 -0
  85. package/dist/utilities/contracts/sync-event-bus-listenable.js.map +1 -0
  86. package/dist/utilities/functions/invokable.d.ts +4 -0
  87. package/dist/utilities/functions/invokable.js +9 -0
  88. package/dist/utilities/functions/invokable.js.map +1 -1
  89. package/package.json +2 -2
@@ -1 +1 @@
1
- {"version":3,"file":"lock-adapter.test-suite.js","sourceRoot":"","sources":["../../../../src/lock/implementations/test-utilities/lock-adapter.test-suite.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"lock-adapter.test-suite.js","sourceRoot":"","sources":["../../../../src/lock/implementations/test-utilities/lock-adapter.test-suite.ts"],"names":[],"mappings":"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"}
@@ -25,7 +25,7 @@ export type LockProviderTestSuiteSettings = {
25
25
  * @group Utilities
26
26
  * @example
27
27
  * ```ts
28
- * import { describe, expect, test } from "vitest";
28
+ * import { describe, expect, test, beforeEach } from "vitest";
29
29
  * import { MemoryLockAdapter } from "@daiso-tech/core/lock/adapters";
30
30
  * import { LockProvider } from "@daiso-tech/core/lock";
31
31
  * import { EventBus } from "@daiso-tech/core/event-bus";
@@ -15,7 +15,7 @@ import { Serde } from "../../../serde/implementations/derivables/_module-exports
15
15
  * @group Utilities
16
16
  * @example
17
17
  * ```ts
18
- * import { describe, expect, test } from "vitest";
18
+ * import { describe, expect, test, beforeEach } from "vitest";
19
19
  * import { MemoryLockAdapter } from "@daiso-tech/core/lock/adapters";
20
20
  * import { LockProvider } from "@daiso-tech/core/lock";
21
21
  * import { EventBus } from "@daiso-tech/core/event-bus";
@@ -51,5 +51,5 @@ export interface IFlexibleSerde<TSerializedValue = unknown> extends ISerde<TSeri
51
51
  /**
52
52
  * The <i>registerCustom</i> method is used for registering custom values for serialization and deserialization.
53
53
  */
54
- registerCustom<TCustomSerialized, TCustomDeserialized>(transformer: ISerdeTransformer<TCustomSerialized, TCustomDeserialized>, prefix?: OneOrMore<string>): this;
54
+ registerCustom<TCustomDeserialized, TCustomSerialized>(transformer: ISerdeTransformer<TCustomDeserialized, TCustomSerialized>, prefix?: OneOrMore<string>): this;
55
55
  }
@@ -147,10 +147,10 @@ export declare class Serde<TSerializedValue> implements IFlexibleSerde<TSerializ
147
147
  * const deserializedValue = serde.deserialize(serde.serialize(value));
148
148
  *
149
149
  * // Will print out { a: 1, b: 2}
150
- * console.log(serializedValue);
150
+ * console.log(deserializedValue);
151
151
  *
152
152
  * // Will print false
153
- * console.log(value === serializedValue);
153
+ * console.log(value === deserializedValue);
154
154
  * ```
155
155
  */
156
156
  deserialize<TValue>(serializedValue: TSerializedValue): TValue;
@@ -169,7 +169,7 @@ export declare class Serde<TSerializedValue> implements IFlexibleSerde<TSerializ
169
169
  * serde.registerEvent(AddEvent);
170
170
  *
171
171
  * const event = new AddEvent({ a: 1, b: 2 });
172
- * const deserializedEvent = serde.deserialize(serde.serialize(event));
172
+ * const deserializedEvent = serde.deserialize<AddEvent>(serde.serialize(event));
173
173
  *
174
174
  * // Will print 1
175
175
  * console.log(deserializedEvent.fields.a);
@@ -218,7 +218,7 @@ export declare class Serde<TSerializedValue> implements IFlexibleSerde<TSerializ
218
218
  * serde.registerClass(AddEvent);
219
219
  *
220
220
  * const user = new User("Carl", 30);
221
- * const deserializedUser = serde.deserialize(serde.serialize(user));
221
+ * const deserializedUser = serde.deserialize<User>(serde.serialize(user));
222
222
  *
223
223
  * // Will print "Carl"
224
224
  * console.log(deserializedUser.name);
@@ -237,7 +237,7 @@ export declare class Serde<TSerializedValue> implements IFlexibleSerde<TSerializ
237
237
  /**
238
238
  * @example
239
239
  * ```ts
240
- * import type { IFlexibleSerde } from "@daiso-tech/core/serde/contracts";
240
+ * import type { IFlexibleSerde, ISerializable } from "@daiso-tech/core/serde/contracts";
241
241
  * import { SuperJsonSerdeAdapter } from "@daiso-tech/core/serde/adapters";
242
242
  * import { Serde } from "@daiso-tech/core/serde";
243
243
  *
@@ -263,7 +263,7 @@ export declare class Serde<TSerializedValue> implements IFlexibleSerde<TSerializ
263
263
  * }
264
264
  * }
265
265
  *
266
- * serde.registerCustom<ISerializedUser, User>({
266
+ * serde.registerCustom<User, ISerializedUser>({
267
267
  * name: User.name,
268
268
  * isApplicable: (value): value is User => {
269
269
  * return value instanceof User;
@@ -280,7 +280,7 @@ export declare class Serde<TSerializedValue> implements IFlexibleSerde<TSerializ
280
280
  * });
281
281
  *
282
282
  * const user = new User("Carl", 30);
283
- * const deserializedUser = serde.deserialize(serde.serialize(user));
283
+ * const deserializedUser = serde.deserialize<User>(serde.serialize(user));
284
284
  *
285
285
  * // Will print "Carl"
286
286
  * console.log(deserializedUser.name);
@@ -124,10 +124,10 @@ export class Serde {
124
124
  * const deserializedValue = serde.deserialize(serde.serialize(value));
125
125
  *
126
126
  * // Will print out { a: 1, b: 2}
127
- * console.log(serializedValue);
127
+ * console.log(deserializedValue);
128
128
  *
129
129
  * // Will print false
130
- * console.log(value === serializedValue);
130
+ * console.log(value === deserializedValue);
131
131
  * ```
132
132
  */
133
133
  deserialize(serializedValue) {
@@ -148,7 +148,7 @@ export class Serde {
148
148
  * serde.registerEvent(AddEvent);
149
149
  *
150
150
  * const event = new AddEvent({ a: 1, b: 2 });
151
- * const deserializedEvent = serde.deserialize(serde.serialize(event));
151
+ * const deserializedEvent = serde.deserialize<AddEvent>(serde.serialize(event));
152
152
  *
153
153
  * // Will print 1
154
154
  * console.log(deserializedEvent.fields.a);
@@ -210,7 +210,7 @@ export class Serde {
210
210
  * serde.registerClass(AddEvent);
211
211
  *
212
212
  * const user = new User("Carl", 30);
213
- * const deserializedUser = serde.deserialize(serde.serialize(user));
213
+ * const deserializedUser = serde.deserialize<User>(serde.serialize(user));
214
214
  *
215
215
  * // Will print "Carl"
216
216
  * console.log(deserializedUser.name);
@@ -243,7 +243,7 @@ export class Serde {
243
243
  /**
244
244
  * @example
245
245
  * ```ts
246
- * import type { IFlexibleSerde } from "@daiso-tech/core/serde/contracts";
246
+ * import type { IFlexibleSerde, ISerializable } from "@daiso-tech/core/serde/contracts";
247
247
  * import { SuperJsonSerdeAdapter } from "@daiso-tech/core/serde/adapters";
248
248
  * import { Serde } from "@daiso-tech/core/serde";
249
249
  *
@@ -269,7 +269,7 @@ export class Serde {
269
269
  * }
270
270
  * }
271
271
  *
272
- * serde.registerCustom<ISerializedUser, User>({
272
+ * serde.registerCustom<User, ISerializedUser>({
273
273
  * name: User.name,
274
274
  * isApplicable: (value): value is User => {
275
275
  * return value instanceof User;
@@ -286,7 +286,7 @@ export class Serde {
286
286
  * });
287
287
  *
288
288
  * const user = new User("Carl", 30);
289
- * const deserializedUser = serde.deserialize(serde.serialize(user));
289
+ * const deserializedUser = serde.deserialize<User>(serde.serialize(user));
290
290
  *
291
291
  * // Will print "Carl"
292
292
  * console.log(deserializedUser.name);
@@ -32,7 +32,6 @@ export type FlexibleSerdeSuiteSettings = {
32
32
  * expect,
33
33
  * });
34
34
  * });
35
- *
36
35
  * ```
37
36
  */
38
37
  export declare function flexibleSerdeTestSuite(settings: FlexibleSerdeSuiteSettings): void;
@@ -21,7 +21,6 @@ import { beforeEach } from "vitest";
21
21
  * expect,
22
22
  * });
23
23
  * });
24
- *
25
24
  * ```
26
25
  */
27
26
  export function flexibleSerdeTestSuite(settings) {
@@ -1 +1 @@
1
- {"version":3,"file":"flexible-serde.test-suite.js","sourceRoot":"","sources":["../../../../src/serde/implementations/test-utilities/flexible-serde.test-suite.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"flexible-serde.test-suite.js","sourceRoot":"","sources":["../../../../src/serde/implementations/test-utilities/flexible-serde.test-suite.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
1
  export * from "../../utilities/classes/key-prefixer/_module.js";
2
2
  export * from "../../utilities/classes/kysely-table-name-transformer-plugin/_module.js";
3
+ export * from "../../utilities/classes/sync-event-bus/_module.js";
3
4
  export * from "../../utilities/classes/time-span/_module.js";
@@ -1,4 +1,5 @@
1
1
  export * from "../../utilities/classes/key-prefixer/_module.js";
2
2
  export * from "../../utilities/classes/kysely-table-name-transformer-plugin/_module.js";
3
+ export * from "../../utilities/classes/sync-event-bus/_module.js";
3
4
  export * from "../../utilities/classes/time-span/_module.js";
4
5
  //# sourceMappingURL=_module.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"_module.js","sourceRoot":"","sources":["../../../src/utilities/classes/_module.ts"],"names":[],"mappings":"AAAA,cAAc,6CAA6C,CAAC;AAC5D,cAAc,qEAAqE,CAAC;AACpF,cAAc,0CAA0C,CAAC"}
1
+ {"version":3,"file":"_module.js","sourceRoot":"","sources":["../../../src/utilities/classes/_module.ts"],"names":[],"mappings":"AAAA,cAAc,6CAA6C,CAAC;AAC5D,cAAc,qEAAqE,CAAC;AACpF,cAAc,+CAA+C,CAAC;AAC9D,cAAc,0CAA0C,CAAC"}
@@ -0,0 +1 @@
1
+ export * from "../../../utilities/classes/sync-event-bus/sync-event-bus.js";
@@ -0,0 +1,2 @@
1
+ export * from "../../../utilities/classes/sync-event-bus/sync-event-bus.js";
2
+ //# sourceMappingURL=_module.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"_module.js","sourceRoot":"","sources":["../../../../src/utilities/classes/sync-event-bus/_module.ts"],"names":[],"mappings":"AAAA,cAAc,sDAAsD,CAAC"}
@@ -0,0 +1,16 @@
1
+ /**
2
+ * @module Utilities
3
+ */
4
+ import type { EventClass, EventInstance, EventListener } from "../../../event-bus/contracts/_module-exports.js";
5
+ import type { BaseEvent } from "../../../event-bus/contracts/_shared.js";
6
+ import type { ISyncEventListenable } from "../../../utilities/contracts/sync-event-bus-listenable.js";
7
+ /**
8
+ * @internal
9
+ */
10
+ export declare class SyncEventBus<TEvents extends BaseEvent> implements ISyncEventListenable<TEvents> {
11
+ private readonly eventMap;
12
+ addListener<TEventClass extends EventClass<TEvents>>(event: TEventClass, listener: EventListener<EventInstance<TEventClass>>): void;
13
+ removeListener<TEventClass extends EventClass<TEvents>>(event: TEventClass, listener: EventListener<EventInstance<TEventClass>>): void;
14
+ dispatch(event: TEvents): void;
15
+ clear(): void;
16
+ }
@@ -0,0 +1,53 @@
1
+ /**
2
+ * @module Utilities
3
+ */
4
+ import { callInvokable, getConstructorName, } from "../../../utilities/_module-exports.js";
5
+ /**
6
+ * @internal
7
+ */
8
+ export class SyncEventBus {
9
+ eventMap = new Map();
10
+ addListener(event, listener) {
11
+ const eventName = getConstructorName(event);
12
+ let listeners = this.eventMap.get(eventName);
13
+ if (listeners === undefined) {
14
+ listeners = new Set();
15
+ this.eventMap.set(eventName, listeners);
16
+ }
17
+ listeners.add(listener);
18
+ }
19
+ removeListener(event, listener) {
20
+ const eventName = getConstructorName(event);
21
+ const listeners = this.eventMap.get(eventName);
22
+ if (listeners === undefined) {
23
+ return;
24
+ }
25
+ listeners.delete(listener);
26
+ if (listeners.size === 0) {
27
+ this.eventMap.delete(eventName);
28
+ }
29
+ }
30
+ dispatch(event) {
31
+ const eventName = getConstructorName(event);
32
+ if (this.eventMap.size === 0) {
33
+ return;
34
+ }
35
+ const listeners = this.eventMap.get(eventName);
36
+ if (listeners === undefined) {
37
+ return;
38
+ }
39
+ if (listeners.size === 0) {
40
+ return;
41
+ }
42
+ for (const listener of listeners) {
43
+ callInvokable(listener, event);
44
+ }
45
+ }
46
+ clear() {
47
+ for (const listeners of this.eventMap.values()) {
48
+ listeners.clear();
49
+ }
50
+ this.eventMap.clear();
51
+ }
52
+ }
53
+ //# sourceMappingURL=sync-event-bus.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sync-event-bus.js","sourceRoot":"","sources":["../../../../src/utilities/classes/sync-event-bus/sync-event-bus.ts"],"names":[],"mappings":"AAAA;;GAEG;AAQH,OAAO,EACH,aAAa,EACb,kBAAkB,GACrB,MAAM,gCAAgC,CAAC;AAGxC;;GAEG;AACH,MAAM,OAAO,YAAY;IAGJ,QAAQ,GAAG,IAAI,GAAG,EAAmC,CAAC;IAEvE,WAAW,CACP,KAAkB,EAClB,QAAmD;QAEnD,MAAM,SAAS,GAAG,kBAAkB,CAAC,KAAK,CAAC,CAAC;QAC5C,IAAI,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAC7C,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;YAC1B,SAAS,GAAG,IAAI,GAAG,EAAE,CAAC;YACtB,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;QAC5C,CAAC;QACD,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC5B,CAAC;IAED,cAAc,CACV,KAAkB,EAClB,QAAmD;QAEnD,MAAM,SAAS,GAAG,kBAAkB,CAAC,KAAK,CAAC,CAAC;QAC5C,MAAM,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAC/C,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;YAC1B,OAAO;QACX,CAAC;QACD,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAC3B,IAAI,SAAS,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;YACvB,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QACpC,CAAC;IACL,CAAC;IAED,QAAQ,CAAC,KAAc;QACnB,MAAM,SAAS,GAAG,kBAAkB,CAAC,KAAK,CAAC,CAAC;QAC5C,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;YAC3B,OAAO;QACX,CAAC;QACD,MAAM,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAC/C,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;YAC1B,OAAO;QACX,CAAC;QACD,IAAI,SAAS,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;YACvB,OAAO;QACX,CAAC;QACD,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;YAC/B,aAAa,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;QACnC,CAAC;IACL,CAAC;IAED,KAAK;QACD,KAAK,MAAM,SAAS,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,EAAE,CAAC;YAC7C,SAAS,CAAC,KAAK,EAAE,CAAC;QACtB,CAAC;QACD,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;IAC1B,CAAC;CACJ"}
@@ -3,3 +3,4 @@ export * from "../../utilities/contracts/initizable.contract.js";
3
3
  export * from "../../utilities/contracts/prunable.contract.js";
4
4
  export * from "../../utilities/contracts/serialized-error.contract.js";
5
5
  export * from "../../utilities/contracts/sqlite-database.contract.js";
6
+ export * from "../../utilities/contracts/sync-event-bus-listenable.js";
@@ -3,4 +3,5 @@ export * from "../../utilities/contracts/initizable.contract.js";
3
3
  export * from "../../utilities/contracts/prunable.contract.js";
4
4
  export * from "../../utilities/contracts/serialized-error.contract.js";
5
5
  export * from "../../utilities/contracts/sqlite-database.contract.js";
6
+ export * from "../../utilities/contracts/sync-event-bus-listenable.js";
6
7
  //# sourceMappingURL=_module.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"_module.js","sourceRoot":"","sources":["../../../src/utilities/contracts/_module.ts"],"names":[],"mappings":"AAAA,cAAc,gDAAgD,CAAC;AAC/D,cAAc,8CAA8C,CAAC;AAC7D,cAAc,4CAA4C,CAAC;AAC3D,cAAc,oDAAoD,CAAC;AACnE,cAAc,mDAAmD,CAAC"}
1
+ {"version":3,"file":"_module.js","sourceRoot":"","sources":["../../../src/utilities/contracts/_module.ts"],"names":[],"mappings":"AAAA,cAAc,gDAAgD,CAAC;AAC/D,cAAc,8CAA8C,CAAC;AAC7D,cAAc,4CAA4C,CAAC;AAC3D,cAAc,oDAAoD,CAAC;AACnE,cAAc,mDAAmD,CAAC;AAClE,cAAc,oDAAoD,CAAC"}
@@ -0,0 +1,13 @@
1
+ /**
2
+ * @module Utilities
3
+ */
4
+ import type { BaseEvent, EventClass, EventInstance, EventListener } from "../../event-bus/contracts/_module-exports.js";
5
+ /**
6
+ *
7
+ * IMPORT_PATH: ```"@daiso-tech/core/utilities"```
8
+ * @group Contracts
9
+ */
10
+ export type ISyncEventListenable<TEvents extends BaseEvent> = {
11
+ addListener<TEventClass extends EventClass<TEvents>>(event: TEventClass, listener: EventListener<EventInstance<TEventClass>>): void;
12
+ removeListener<TEventClass extends EventClass<TEvents>>(event: TEventClass, listener: EventListener<EventInstance<TEventClass>>): void;
13
+ };
@@ -0,0 +1,5 @@
1
+ /**
2
+ * @module Utilities
3
+ */
4
+ export {};
5
+ //# sourceMappingURL=sync-event-bus-listenable.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sync-event-bus-listenable.js","sourceRoot":"","sources":["../../../src/utilities/contracts/sync-event-bus-listenable.ts"],"names":[],"mappings":"AAAA;;GAEG"}
@@ -18,3 +18,7 @@ export declare function isInvokable<TValue, TArgs extends unknown[], TReturn>(in
18
18
  * @internal
19
19
  */
20
20
  export declare function resolveInvokable<TArgs extends unknown[], TReturn>(invokable: Invokable<TArgs, TReturn>): InvokableFn<TArgs, TReturn>;
21
+ /**
22
+ * @internal
23
+ */
24
+ export declare function callInvokable<TArgs extends unknown[], TReturn>(invokable: Invokable<TArgs, TReturn>, ...args: TArgs): TReturn;
@@ -30,4 +30,13 @@ export function resolveInvokable(invokable) {
30
30
  }
31
31
  return invokable;
32
32
  }
33
+ /**
34
+ * @internal
35
+ */
36
+ export function callInvokable(invokable, ...args) {
37
+ if (isInvokableObject(invokable)) {
38
+ return invokable.invoke(...args);
39
+ }
40
+ return invokable(...args);
41
+ }
33
42
  //# sourceMappingURL=invokable.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"invokable.js","sourceRoot":"","sources":["../../../src/utilities/functions/invokable.ts"],"names":[],"mappings":"AAAA;;GAEG;AAOH,OAAO,EAAE,UAAU,EAAE,MAAM,sCAAsC,CAAC;AAElE;;GAEG;AACH,MAAM,UAAU,iBAAiB,CAC7B,SAA6C;IAE7C,MAAM,UAAU,GAAG,SAAoC,CAAC;IACxD,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI,OAAO,UAAU,CAAC,QAAQ,CAAC,KAAK,UAAU,CAAC;AAChF,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,aAAa,CACzB,SAA6C;IAE7C,OAAO,OAAO,SAAS,KAAK,UAAU,CAAC;AAC3C,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,WAAW,CACvB,SAA6C;IAE7C,OAAO,iBAAiB,CAAC,SAAS,CAAC,IAAI,aAAa,CAAC,SAAS,CAAC,CAAC;AACpE,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,gBAAgB,CAC5B,SAAoC;IAEpC,IAAI,iBAAiB,CAAC,SAAS,CAAC,EAAE,CAAC;QAC/B,OAAO,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAC5C,CAAC;IACD,OAAO,SAAS,CAAC;AACrB,CAAC"}
1
+ {"version":3,"file":"invokable.js","sourceRoot":"","sources":["../../../src/utilities/functions/invokable.ts"],"names":[],"mappings":"AAAA;;GAEG;AAOH,OAAO,EAAE,UAAU,EAAE,MAAM,sCAAsC,CAAC;AAElE;;GAEG;AACH,MAAM,UAAU,iBAAiB,CAC7B,SAA6C;IAE7C,MAAM,UAAU,GAAG,SAAoC,CAAC;IACxD,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI,OAAO,UAAU,CAAC,QAAQ,CAAC,KAAK,UAAU,CAAC;AAChF,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,aAAa,CACzB,SAA6C;IAE7C,OAAO,OAAO,SAAS,KAAK,UAAU,CAAC;AAC3C,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,WAAW,CACvB,SAA6C;IAE7C,OAAO,iBAAiB,CAAC,SAAS,CAAC,IAAI,aAAa,CAAC,SAAS,CAAC,CAAC;AACpE,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,gBAAgB,CAC5B,SAAoC;IAEpC,IAAI,iBAAiB,CAAC,SAAS,CAAC,EAAE,CAAC;QAC/B,OAAO,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAC5C,CAAC;IACD,OAAO,SAAS,CAAC;AACrB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,aAAa,CACzB,SAAoC,EACpC,GAAG,IAAW;IAEd,IAAI,iBAAiB,CAAC,SAAS,CAAC,EAAE,CAAC;QAC/B,OAAO,SAAS,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC;IACrC,CAAC;IACD,OAAO,SAAS,CAAC,GAAG,IAAI,CAAC,CAAC;AAC9B,CAAC"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@daiso-tech/core",
3
3
  "private": false,
4
- "version": "0.31.0",
4
+ "version": "0.32.0",
5
5
  "author": "Yousif Abdulkarim",
6
6
  "license": "Apache-2.0",
7
7
  "type": "module",
@@ -161,7 +161,7 @@
161
161
  "rimraf": "^6.0.1",
162
162
  "tsc-alias": "^1.8.10",
163
163
  "typedoc": "^0.26.5",
164
- "typedoc-material-theme": "^1.1.0",
164
+ "typedoc-material-theme": "^1.3.0",
165
165
  "typedoc-plugin-merge-modules": "^6.0.0",
166
166
  "typescript": "^5.5.4",
167
167
  "vite-tsconfig-paths": "^4.3.2",