redis-smq-common 9.0.0-next.3 → 9.0.0-next.4

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 (152) hide show
  1. package/CHANGELOG.md +32 -0
  2. package/dist/cjs/src/event-bus/errors/index.d.ts +0 -1
  3. package/dist/cjs/src/event-bus/errors/index.d.ts.map +1 -1
  4. package/dist/cjs/src/event-bus/errors/index.js +0 -1
  5. package/dist/cjs/src/event-bus/errors/index.js.map +1 -1
  6. package/dist/cjs/src/event-bus/event-bus-redis.d.ts +15 -10
  7. package/dist/cjs/src/event-bus/event-bus-redis.d.ts.map +1 -1
  8. package/dist/cjs/src/event-bus/event-bus-redis.js +99 -106
  9. package/dist/cjs/src/event-bus/event-bus-redis.js.map +1 -1
  10. package/dist/cjs/src/event-bus/event-bus.d.ts +8 -11
  11. package/dist/cjs/src/event-bus/event-bus.d.ts.map +1 -1
  12. package/dist/cjs/src/event-bus/event-bus.js +21 -64
  13. package/dist/cjs/src/event-bus/event-bus.js.map +1 -1
  14. package/dist/cjs/src/event-bus/index.d.ts +0 -2
  15. package/dist/cjs/src/event-bus/index.d.ts.map +1 -1
  16. package/dist/cjs/src/event-bus/index.js +0 -2
  17. package/dist/cjs/src/event-bus/index.js.map +1 -1
  18. package/dist/cjs/src/event-bus/types/event-bus.d.ts +8 -4
  19. package/dist/cjs/src/event-bus/types/event-bus.d.ts.map +1 -1
  20. package/dist/cjs/src/logger/console-logger/console-logger.d.ts +7 -4
  21. package/dist/cjs/src/logger/console-logger/console-logger.d.ts.map +1 -1
  22. package/dist/cjs/src/logger/console-logger/console-logger.js +24 -18
  23. package/dist/cjs/src/logger/console-logger/console-logger.js.map +1 -1
  24. package/dist/cjs/src/logger/console-logger/console-message-formatter.d.ts +4 -3
  25. package/dist/cjs/src/logger/console-logger/console-message-formatter.d.ts.map +1 -1
  26. package/dist/cjs/src/logger/console-logger/console-message-formatter.js +9 -16
  27. package/dist/cjs/src/logger/console-logger/console-message-formatter.js.map +1 -1
  28. package/dist/cjs/src/logger/logger.d.ts +1 -9
  29. package/dist/cjs/src/logger/logger.d.ts.map +1 -1
  30. package/dist/cjs/src/logger/logger.js +3 -60
  31. package/dist/cjs/src/logger/logger.js.map +1 -1
  32. package/dist/cjs/src/redis-client/index.d.ts +1 -2
  33. package/dist/cjs/src/redis-client/index.d.ts.map +1 -1
  34. package/dist/cjs/src/redis-client/index.js +1 -2
  35. package/dist/cjs/src/redis-client/index.js.map +1 -1
  36. package/dist/cjs/src/redis-client/redis-client-factory.d.ts +7 -3
  37. package/dist/cjs/src/redis-client/redis-client-factory.d.ts.map +1 -1
  38. package/dist/cjs/src/redis-client/redis-client-factory.js +81 -3
  39. package/dist/cjs/src/redis-client/redis-client-factory.js.map +1 -1
  40. package/dist/cjs/src/redis-client/types/index.d.ts +1 -0
  41. package/dist/cjs/src/redis-client/types/index.d.ts.map +1 -1
  42. package/dist/cjs/src/redis-client/types/index.js +1 -0
  43. package/dist/cjs/src/redis-client/types/index.js.map +1 -1
  44. package/dist/cjs/src/redis-client/types/watch-transaction.d.ts +14 -0
  45. package/dist/cjs/src/redis-client/types/watch-transaction.d.ts.map +1 -0
  46. package/dist/cjs/src/redis-client/types/watch-transaction.js +3 -0
  47. package/dist/cjs/src/redis-client/types/watch-transaction.js.map +1 -0
  48. package/dist/cjs/src/redis-client/with-watch-transaction.d.ts +5 -0
  49. package/dist/cjs/src/redis-client/with-watch-transaction.d.ts.map +1 -0
  50. package/dist/cjs/src/redis-client/with-watch-transaction.js +67 -0
  51. package/dist/cjs/src/redis-client/with-watch-transaction.js.map +1 -0
  52. package/dist/cjs/src/worker/worker-resource-group.d.ts +1 -1
  53. package/dist/cjs/src/worker/worker-resource-group.d.ts.map +1 -1
  54. package/dist/cjs/src/worker/worker-resource-group.js.map +1 -1
  55. package/dist/cjs/src/worker/worker.js +1 -1
  56. package/dist/cjs/src/worker/worker.js.map +1 -1
  57. package/dist/esm/src/event-bus/errors/index.d.ts +0 -1
  58. package/dist/esm/src/event-bus/errors/index.d.ts.map +1 -1
  59. package/dist/esm/src/event-bus/errors/index.js +0 -1
  60. package/dist/esm/src/event-bus/errors/index.js.map +1 -1
  61. package/dist/esm/src/event-bus/event-bus-redis.d.ts +15 -10
  62. package/dist/esm/src/event-bus/event-bus-redis.d.ts.map +1 -1
  63. package/dist/esm/src/event-bus/event-bus-redis.js +98 -105
  64. package/dist/esm/src/event-bus/event-bus-redis.js.map +1 -1
  65. package/dist/esm/src/event-bus/event-bus.d.ts +8 -11
  66. package/dist/esm/src/event-bus/event-bus.d.ts.map +1 -1
  67. package/dist/esm/src/event-bus/event-bus.js +20 -62
  68. package/dist/esm/src/event-bus/event-bus.js.map +1 -1
  69. package/dist/esm/src/event-bus/index.d.ts +0 -2
  70. package/dist/esm/src/event-bus/index.d.ts.map +1 -1
  71. package/dist/esm/src/event-bus/index.js +0 -2
  72. package/dist/esm/src/event-bus/index.js.map +1 -1
  73. package/dist/esm/src/event-bus/types/event-bus.d.ts +8 -4
  74. package/dist/esm/src/event-bus/types/event-bus.d.ts.map +1 -1
  75. package/dist/esm/src/logger/console-logger/console-logger.d.ts +7 -4
  76. package/dist/esm/src/logger/console-logger/console-logger.d.ts.map +1 -1
  77. package/dist/esm/src/logger/console-logger/console-logger.js +25 -18
  78. package/dist/esm/src/logger/console-logger/console-logger.js.map +1 -1
  79. package/dist/esm/src/logger/console-logger/console-message-formatter.d.ts +4 -3
  80. package/dist/esm/src/logger/console-logger/console-message-formatter.d.ts.map +1 -1
  81. package/dist/esm/src/logger/console-logger/console-message-formatter.js +9 -16
  82. package/dist/esm/src/logger/console-logger/console-message-formatter.js.map +1 -1
  83. package/dist/esm/src/logger/logger.d.ts +1 -9
  84. package/dist/esm/src/logger/logger.d.ts.map +1 -1
  85. package/dist/esm/src/logger/logger.js +2 -59
  86. package/dist/esm/src/logger/logger.js.map +1 -1
  87. package/dist/esm/src/redis-client/index.d.ts +1 -2
  88. package/dist/esm/src/redis-client/index.d.ts.map +1 -1
  89. package/dist/esm/src/redis-client/index.js +1 -2
  90. package/dist/esm/src/redis-client/index.js.map +1 -1
  91. package/dist/esm/src/redis-client/redis-client-factory.d.ts +7 -3
  92. package/dist/esm/src/redis-client/redis-client-factory.d.ts.map +1 -1
  93. package/dist/esm/src/redis-client/redis-client-factory.js +51 -4
  94. package/dist/esm/src/redis-client/redis-client-factory.js.map +1 -1
  95. package/dist/esm/src/redis-client/types/index.d.ts +1 -0
  96. package/dist/esm/src/redis-client/types/index.d.ts.map +1 -1
  97. package/dist/esm/src/redis-client/types/index.js +1 -0
  98. package/dist/esm/src/redis-client/types/index.js.map +1 -1
  99. package/dist/esm/src/redis-client/types/watch-transaction.d.ts +14 -0
  100. package/dist/esm/src/redis-client/types/watch-transaction.d.ts.map +1 -0
  101. package/dist/esm/src/redis-client/types/watch-transaction.js +2 -0
  102. package/dist/esm/src/redis-client/types/watch-transaction.js.map +1 -0
  103. package/dist/esm/src/redis-client/with-watch-transaction.d.ts +5 -0
  104. package/dist/esm/src/redis-client/with-watch-transaction.d.ts.map +1 -0
  105. package/dist/esm/src/redis-client/with-watch-transaction.js +61 -0
  106. package/dist/esm/src/redis-client/with-watch-transaction.js.map +1 -0
  107. package/dist/esm/src/worker/worker-resource-group.d.ts +1 -1
  108. package/dist/esm/src/worker/worker-resource-group.d.ts.map +1 -1
  109. package/dist/esm/src/worker/worker-resource-group.js.map +1 -1
  110. package/dist/esm/src/worker/worker.js +2 -2
  111. package/dist/esm/src/worker/worker.js.map +1 -1
  112. package/package.json +1 -1
  113. package/dist/cjs/src/event-bus/errors/event-bus-instance-lock.error.d.ts +0 -4
  114. package/dist/cjs/src/event-bus/errors/event-bus-instance-lock.error.d.ts.map +0 -1
  115. package/dist/cjs/src/event-bus/errors/event-bus-instance-lock.error.js +0 -8
  116. package/dist/cjs/src/event-bus/errors/event-bus-instance-lock.error.js.map +0 -1
  117. package/dist/cjs/src/event-bus/event-bus-redis-factory.d.ts +0 -15
  118. package/dist/cjs/src/event-bus/event-bus-redis-factory.d.ts.map +0 -1
  119. package/dist/cjs/src/event-bus/event-bus-redis-factory.js +0 -59
  120. package/dist/cjs/src/event-bus/event-bus-redis-factory.js.map +0 -1
  121. package/dist/cjs/src/event-bus/with-event-bus.d.ts +0 -5
  122. package/dist/cjs/src/event-bus/with-event-bus.d.ts.map +0 -1
  123. package/dist/cjs/src/event-bus/with-event-bus.js +0 -8
  124. package/dist/cjs/src/event-bus/with-event-bus.js.map +0 -1
  125. package/dist/cjs/src/redis-client/create-redis-client.d.ts +0 -4
  126. package/dist/cjs/src/redis-client/create-redis-client.d.ts.map +0 -1
  127. package/dist/cjs/src/redis-client/create-redis-client.js +0 -85
  128. package/dist/cjs/src/redis-client/create-redis-client.js.map +0 -1
  129. package/dist/cjs/src/redis-client/with-redis-client.d.ts +0 -5
  130. package/dist/cjs/src/redis-client/with-redis-client.d.ts.map +0 -1
  131. package/dist/cjs/src/redis-client/with-redis-client.js +0 -8
  132. package/dist/cjs/src/redis-client/with-redis-client.js.map +0 -1
  133. package/dist/esm/src/event-bus/errors/event-bus-instance-lock.error.d.ts +0 -4
  134. package/dist/esm/src/event-bus/errors/event-bus-instance-lock.error.d.ts.map +0 -1
  135. package/dist/esm/src/event-bus/errors/event-bus-instance-lock.error.js +0 -4
  136. package/dist/esm/src/event-bus/errors/event-bus-instance-lock.error.js.map +0 -1
  137. package/dist/esm/src/event-bus/event-bus-redis-factory.d.ts +0 -15
  138. package/dist/esm/src/event-bus/event-bus-redis-factory.d.ts.map +0 -1
  139. package/dist/esm/src/event-bus/event-bus-redis-factory.js +0 -56
  140. package/dist/esm/src/event-bus/event-bus-redis-factory.js.map +0 -1
  141. package/dist/esm/src/event-bus/with-event-bus.d.ts +0 -5
  142. package/dist/esm/src/event-bus/with-event-bus.d.ts.map +0 -1
  143. package/dist/esm/src/event-bus/with-event-bus.js +0 -5
  144. package/dist/esm/src/event-bus/with-event-bus.js.map +0 -1
  145. package/dist/esm/src/redis-client/create-redis-client.d.ts +0 -4
  146. package/dist/esm/src/redis-client/create-redis-client.d.ts.map +0 -1
  147. package/dist/esm/src/redis-client/create-redis-client.js +0 -51
  148. package/dist/esm/src/redis-client/create-redis-client.js.map +0 -1
  149. package/dist/esm/src/redis-client/with-redis-client.d.ts +0 -5
  150. package/dist/esm/src/redis-client/with-redis-client.d.ts.map +0 -1
  151. package/dist/esm/src/redis-client/with-redis-client.js +0 -5
  152. package/dist/esm/src/redis-client/with-redis-client.js.map +0 -1
package/CHANGELOG.md CHANGED
@@ -3,6 +3,38 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ ## [9.0.0-next.4](https://github.com/weyoss/redis-smq/compare/v9.0.0-next.3...v9.0.0-next.4) (2025-10-09)
7
+
8
+ ### ⚠ BREAKING CHANGES
9
+
10
+ - **redis-smq-common:** consolidate Redis client creation logic into factory class
11
+ - **redis-smq-common:** simplify logger architecture, improve namespace handling
12
+
13
+ ### ✨ Features
14
+
15
+ - **redis-smq-common:** add child logger creation ([20c4c80](https://github.com/weyoss/redis-smq/commit/20c4c803ee48f3bf9aeb3c23e9846adfa1138bb8))
16
+ - **redis-smq-common:** add WATCH/MULTI/EXEC transaction helper with retry logic ([7d8420b](https://github.com/weyoss/redis-smq/commit/7d8420bf356532c56cc8ebefb0754c79ae4bb16f))
17
+
18
+ ### 📝 Documentation
19
+
20
+ - **redis-smq-common:** add API documentation for WATCH transaction helper ([053ada5](https://github.com/weyoss/redis-smq/commit/053ada52cfe52f2c57123647d81826e89e20d8e1))
21
+ - **redis-smq-common:** restructure and expand logger documentation ([1b2e341](https://github.com/weyoss/redis-smq/commit/1b2e34106b42a91289fa373c855076ec295dedf3))
22
+ - **redis-smq-common:** update API reference ([be62a09](https://github.com/weyoss/redis-smq/commit/be62a09a5748743ae89c143925c22e8db7b15aea))
23
+ - **redis-smq-common:** update error classes reference ([f74e2d4](https://github.com/weyoss/redis-smq/commit/f74e2d47eb028917f6a1917f33b6226cd5233d59))
24
+ - **redis-smq-common:** update Redis client documentation ([78abf35](https://github.com/weyoss/redis-smq/commit/78abf35841fd8fe78f0217916ba0b8d0dd1a165f))
25
+
26
+ ### ♻️ Code Refactoring
27
+
28
+ - **redis-smq-common:** clean up ConsoleLogger ([7900592](https://github.com/weyoss/redis-smq/commit/7900592344cbffad324705edc311ea5b8c98f26f))
29
+ - **redis-smq-common:** consolidate Redis client creation logic into factory class ([0742c5d](https://github.com/weyoss/redis-smq/commit/0742c5d0be7c0bc6a3b8b5c07d576ab09d32a97d))
30
+ - **redis-smq-common:** redesign event bus architecture with Runnable base class ([1e5fcb4](https://github.com/weyoss/redis-smq/commit/1e5fcb46905b6374109762258562f08c2d0f0e7c))
31
+ - **redis-smq-common:** remove isFormatted method ([cd3523c](https://github.com/weyoss/redis-smq/commit/cd3523cfa80e792ef45b817f408903dd970a3546))
32
+ - **redis-smq-common:** simplify logger architecture, improve namespace handling ([64d30c2](https://github.com/weyoss/redis-smq/commit/64d30c2ab0ecb59aefc939e89d1d6b3cac390c61))
33
+ - **redis-smq-common:** update copyright headers ([d14cde3](https://github.com/weyoss/redis-smq/commit/d14cde3e13d3d28b8a3868d07a0b7b1098cd1cd2))
34
+ - **redis-smq-common:** update test utilities to use RedisClientFactory ([fa077d5](https://github.com/weyoss/redis-smq/commit/fa077d506f6d04231e1c5454b93ab196e664c833))
35
+ - **redis-smq-common:** use RedisClientFactory in EventBusRedis ([b7a16c6](https://github.com/weyoss/redis-smq/commit/b7a16c640814d817b1f8bfeb881e9543ff93ef17))
36
+ - **redis-smq:** integrate connection pooling and reorganize error handling ([fa61afb](https://github.com/weyoss/redis-smq/commit/fa61afbd7c2538383b086c200b275749c5b96314))
37
+
6
38
  ## [9.0.0-next.3](https://github.com/weyoss/redis-smq/compare/v9.0.0-next.2...v9.0.0-next.3) (2025-09-09)
7
39
 
8
40
  ### 📝 Documentation
@@ -1,4 +1,3 @@
1
1
  export * from './event-bus.error.js';
2
2
  export * from './event-bus-not-connected.error.js';
3
- export * from './event-bus-instance-lock.error.js';
4
3
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/event-bus/errors/index.ts"],"names":[],"mappings":"AASA,cAAc,sBAAsB,CAAC;AACrC,cAAc,oCAAoC,CAAC;AACnD,cAAc,oCAAoC,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/event-bus/errors/index.ts"],"names":[],"mappings":"AASA,cAAc,sBAAsB,CAAC;AACrC,cAAc,oCAAoC,CAAC"}
@@ -16,5 +16,4 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./event-bus.error.js"), exports);
18
18
  __exportStar(require("./event-bus-not-connected.error.js"), exports);
19
- __exportStar(require("./event-bus-instance-lock.error.js"), exports);
20
19
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/event-bus/errors/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AASA,uDAAqC;AACrC,qEAAmD;AACnD,qEAAmD"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/event-bus/errors/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AASA,uDAAqC;AACrC,qEAAmD"}
@@ -1,17 +1,22 @@
1
1
  import { ICallback } from '../async/index.js';
2
- import { EventEmitter, IEventBus, TEventBusEvent } from '../event/index.js';
3
- import { IRedisClient, IRedisConfig } from '../redis-client/index.js';
4
- export declare class EventBusRedis<Events extends TEventBusEvent> extends EventEmitter<Events> implements IEventBus<Events> {
5
- protected connected: boolean;
6
- protected pubClient: IRedisClient;
7
- protected subClient: IRedisClient;
8
- protected constructor(pubClient: IRedisClient, subClient: IRedisClient);
2
+ import { IEventBusRedisConfig, TEventBusEvent } from './types/index.js';
3
+ import { RedisClientFactory } from '../redis-client/index.js';
4
+ import { EventBus } from './event-bus.js';
5
+ export declare class EventBusRedis<Events extends TEventBusEvent> extends EventBus<Events> {
6
+ protected pubClient: RedisClientFactory;
7
+ protected subClient: RedisClientFactory;
8
+ private readonly subscribedEvents;
9
+ constructor(config: IEventBusRedisConfig);
9
10
  emit<E extends keyof Events>(event: E, ...args: Parameters<Events[E]>): boolean;
10
11
  on<E extends keyof Events>(event: E, listener: Events[E]): this;
11
12
  once<E extends keyof Events>(event: E, listener: Events[E]): this;
12
- removeAllListeners<E extends keyof Events>(event?: Extract<E, string>): this;
13
13
  removeListener<E extends keyof Events>(event: E, listener: Events[E]): this;
14
- shutdown(cb: ICallback<void>): void;
15
- static createInstance<T extends TEventBusEvent>(config: IRedisConfig, cb: ICallback<IEventBus<T>>): void;
14
+ removeAllListeners<E extends keyof Events>(event?: Extract<E, string>): this;
15
+ private ensureSubscribed;
16
+ private ensureUnsubscribed;
17
+ private syncSubscriptionsWithListeners;
18
+ private getListenerEventNames;
19
+ protected goingUp(): ((cb: ICallback<void>) => void)[];
20
+ protected goingDown(): ((cb: ICallback<void>) => void)[];
16
21
  }
17
22
  //# sourceMappingURL=event-bus-redis.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"event-bus-redis.d.ts","sourceRoot":"","sources":["../../../../src/event-bus/event-bus-redis.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAC5E,OAAO,EAEL,YAAY,EACZ,YAAY,EACb,MAAM,0BAA0B,CAAC;AAGlC,qBAAa,aAAa,CAAC,MAAM,SAAS,cAAc,CACtD,SAAQ,YAAY,CAAC,MAAM,CAC3B,YAAW,SAAS,CAAC,MAAM,CAAC;IAE5B,SAAS,CAAC,SAAS,UAAS;IAC5B,SAAS,CAAC,SAAS,eAAC;IACpB,SAAS,CAAC,SAAS,eAAC;IAEpB,SAAS,aAAa,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE,YAAY;IAqB7D,IAAI,CAAC,CAAC,SAAS,MAAM,MAAM,EAClC,KAAK,EAAE,CAAC,EACR,GAAG,IAAI,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,GAC7B,OAAO;IASD,EAAE,CAAC,CAAC,SAAS,MAAM,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC,GAAG,IAAI;IAc/D,IAAI,CAAC,CAAC,SAAS,MAAM,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC,GAAG,IAAI;IAcjE,kBAAkB,CAAC,CAAC,SAAS,MAAM,MAAM,EAChD,KAAK,CAAC,EAAE,OAAO,CAAC,CAAC,EAAE,MAAM,CAAC,GACzB,IAAI;IAeE,cAAc,CAAC,CAAC,SAAS,MAAM,MAAM,EAC5C,KAAK,EAAE,CAAC,EACR,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC,GAClB,IAAI;IAaP,QAAQ,CAAC,EAAE,EAAE,SAAS,CAAC,IAAI,CAAC;IAe5B,MAAM,CAAC,cAAc,CAAC,CAAC,SAAS,cAAc,EAC5C,MAAM,EAAE,YAAY,EACpB,EAAE,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,GAC1B,IAAI;CAmCR"}
1
+ {"version":3,"file":"event-bus-redis.d.ts","sourceRoot":"","sources":["../../../../src/event-bus/event-bus-redis.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,EAAE,oBAAoB,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AACxE,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAE9D,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAE1C,qBAAa,aAAa,CACxB,MAAM,SAAS,cAAc,CAC7B,SAAQ,QAAQ,CAAC,MAAM,CAAC;IACxB,SAAS,CAAC,SAAS,EAAE,kBAAkB,CAAC;IACxC,SAAS,CAAC,SAAS,EAAE,kBAAkB,CAAC;IAGxC,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAqB;gBAE1C,MAAM,EAAE,oBAAoB;IAS/B,IAAI,CAAC,CAAC,SAAS,MAAM,MAAM,EAClC,KAAK,EAAE,CAAC,EACR,GAAG,IAAI,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,GAC7B,OAAO;IAeD,EAAE,CAAC,CAAC,SAAS,MAAM,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC,GAAG,IAAI;IAM/D,IAAI,CAAC,CAAC,SAAS,MAAM,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC,GAAG,IAAI;IAMjE,cAAc,CAAC,CAAC,SAAS,MAAM,MAAM,EAC5C,KAAK,EAAE,CAAC,EACR,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC,GAClB,IAAI;IAYE,kBAAkB,CAAC,CAAC,SAAS,MAAM,MAAM,EAChD,KAAK,CAAC,EAAE,OAAO,CAAC,CAAC,EAAE,MAAM,CAAC,GACzB,IAAI;IAWP,OAAO,CAAC,gBAAgB;IAWxB,OAAO,CAAC,kBAAkB;IAiB1B,OAAO,CAAC,8BAA8B;IAQtC,OAAO,CAAC,qBAAqB;cAOV,OAAO,IAAI,CAAC,CAAC,EAAE,EAAE,SAAS,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,EAAE;cA2B5C,SAAS,IAAI,CAAC,CAAC,EAAE,EAAE,SAAS,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,EAAE;CAWlE"}
@@ -1,137 +1,130 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.EventBusRedis = void 0;
4
- const index_js_1 = require("../async/index.js");
5
- const index_js_2 = require("../event/index.js");
6
- const index_js_3 = require("../redis-client/index.js");
7
- const index_js_4 = require("./errors/index.js");
8
- class EventBusRedis extends index_js_2.EventEmitter {
9
- constructor(pubClient, subClient) {
10
- super();
11
- this.connected = false;
12
- this.pubClient = pubClient;
13
- this.pubClient.on('error', (err) => {
14
- this.eventEmitter.emit('error', err);
15
- });
16
- this.subClient = subClient;
17
- this.subClient.on('message', (channel, message) => {
18
- this.eventEmitter.emit(String(channel), ...JSON.parse(message));
19
- });
20
- this.subClient.on('error', (err) => {
21
- this.eventEmitter.emit('error', err);
22
- });
23
- this.connected = true;
4
+ const index_js_1 = require("../redis-client/index.js");
5
+ const index_js_2 = require("./errors/index.js");
6
+ const event_bus_js_1 = require("./event-bus.js");
7
+ class EventBusRedis extends event_bus_js_1.EventBus {
8
+ constructor(config) {
9
+ super(config);
10
+ this.subscribedEvents = new Set();
11
+ this.pubClient = new index_js_1.RedisClientFactory(config.redis);
12
+ this.pubClient.on('error', (err) => this.handleError(err));
13
+ this.subClient = new index_js_1.RedisClientFactory(config.redis);
14
+ this.subClient.on('error', (err) => this.handleError(err));
24
15
  }
25
16
  emit(event, ...args) {
26
- if (!this.connected) {
27
- this.eventEmitter.emit('error', new index_js_4.EventBusNotConnectedError());
17
+ if (event === 'error') {
18
+ return super.emit(event, ...args);
19
+ }
20
+ if (!this.isRunning()) {
21
+ this.eventEmitter.emit('error', new index_js_2.EventBusNotConnectedError());
28
22
  return false;
29
23
  }
30
- this.pubClient.publish(String(event), JSON.stringify(args), () => void 0);
24
+ this.pubClient
25
+ .getInstance()
26
+ .publish(String(event), JSON.stringify(args), () => void 0);
31
27
  return true;
32
28
  }
33
29
  on(event, listener) {
34
- if (event === 'error') {
35
- super.on('error', listener);
36
- return this;
37
- }
38
- if (!this.connected) {
39
- this.eventEmitter.emit('error', new index_js_4.EventBusNotConnectedError());
40
- return this;
41
- }
42
- this.subClient.subscribe(String(event));
43
30
  super.on(event, listener);
31
+ this.ensureSubscribed(String(event));
44
32
  return this;
45
33
  }
46
34
  once(event, listener) {
47
- if (event === 'error') {
48
- super.once('error', listener);
49
- return this;
50
- }
51
- if (!this.connected) {
52
- this.eventEmitter.emit('error', new index_js_4.EventBusNotConnectedError());
53
- return this;
54
- }
55
- this.subClient.subscribe(String(event));
56
35
  super.once(event, listener);
36
+ this.ensureSubscribed(String(event));
37
+ return this;
38
+ }
39
+ removeListener(event, listener) {
40
+ super.removeListener(event, listener);
41
+ if (event !== 'error' &&
42
+ this.eventEmitter.listenerCount(String(event)) === 0) {
43
+ this.ensureUnsubscribed(String(event));
44
+ }
57
45
  return this;
58
46
  }
59
47
  removeAllListeners(event) {
60
- if (event === 'error') {
61
- super.removeAllListeners('error');
62
- return this;
48
+ super.removeAllListeners(event);
49
+ if (event && event !== 'error') {
50
+ this.ensureUnsubscribed(String(event));
63
51
  }
64
- if (!this.connected) {
65
- this.eventEmitter.emit('error', new index_js_4.EventBusNotConnectedError());
66
- return this;
52
+ else if (!event) {
53
+ this.ensureUnsubscribed();
67
54
  }
68
- if (event)
69
- this.subClient.unsubscribe(String(event));
70
- else
71
- this.subClient.unsubscribe();
72
- super.removeAllListeners(event);
73
55
  return this;
74
56
  }
75
- removeListener(event, listener) {
76
- if (event === 'error') {
77
- super.removeListener('error', listener);
78
- return this;
57
+ ensureSubscribed(eventName) {
58
+ if (eventName !== 'error' &&
59
+ this.isRunning() &&
60
+ !this.subscribedEvents.has(eventName)) {
61
+ this.subClient.getInstance().subscribe(eventName);
62
+ this.subscribedEvents.add(eventName);
63
+ }
64
+ }
65
+ ensureUnsubscribed(eventName) {
66
+ if (eventName === 'error')
67
+ return;
68
+ if (!eventName) {
69
+ if (this.subscribedEvents.size > 0) {
70
+ this.subClient.getInstance().unsubscribe();
71
+ this.subscribedEvents.clear();
72
+ }
73
+ return;
79
74
  }
80
- if (!this.connected) {
81
- this.eventEmitter.emit('error', new index_js_4.EventBusNotConnectedError());
82
- return this;
75
+ if (this.subscribedEvents.has(eventName)) {
76
+ this.subClient.getInstance().unsubscribe(eventName);
77
+ this.subscribedEvents.delete(eventName);
83
78
  }
84
- super.removeListener(event, listener);
85
- return this;
86
79
  }
87
- shutdown(cb) {
88
- if (this.connected) {
89
- index_js_1.async.series([
90
- (cb) => this.subClient.halt(() => cb()),
91
- (cb) => this.pubClient.halt(() => cb()),
92
- ], () => {
93
- this.connected = false;
94
- cb();
95
- });
80
+ syncSubscriptionsWithListeners() {
81
+ if (!this.isRunning())
82
+ return;
83
+ for (const name of this.getListenerEventNames()) {
84
+ this.ensureSubscribed(name);
96
85
  }
97
- else
98
- cb();
99
86
  }
100
- static createInstance(config, cb) {
101
- let pubClient = null;
102
- let subClient = null;
103
- index_js_1.async.series([
104
- (cb) => (0, index_js_3.createRedisClient)(config, (err, client) => {
105
- if (err)
106
- cb(err);
107
- else {
108
- pubClient = client;
109
- cb();
110
- }
111
- }),
112
- (cb) => (0, index_js_3.createRedisClient)(config, (err, client) => {
113
- if (err)
114
- cb(err);
115
- else {
116
- subClient = client;
87
+ getListenerEventNames() {
88
+ return this.eventEmitter
89
+ .eventNames()
90
+ .map((n) => String(n))
91
+ .filter((n) => n !== 'error');
92
+ }
93
+ goingUp() {
94
+ return super.goingUp().concat([
95
+ (cb) => this.pubClient.init(cb),
96
+ (cb) => {
97
+ this.subClient.init((err) => {
98
+ if (err)
99
+ return cb(err);
100
+ this.subClient
101
+ .getInstance()
102
+ .on('message', (channel, message) => {
103
+ try {
104
+ this.eventEmitter.emit(channel, ...JSON.parse(message));
105
+ }
106
+ catch (parseError) {
107
+ const err = parseError instanceof Error
108
+ ? parseError
109
+ : new index_js_2.EventBusError(String(parseError));
110
+ this.handleError(err);
111
+ }
112
+ });
113
+ this.syncSubscriptionsWithListeners();
117
114
  cb();
118
- }
119
- }),
120
- ], (err) => {
121
- if (err) {
122
- if (pubClient)
123
- pubClient.halt(() => void 0);
124
- if (subClient)
125
- subClient.halt(() => void 0);
126
- cb(err);
127
- }
128
- else if (!pubClient || !subClient)
129
- cb(new Error());
130
- else {
131
- const instance = new EventBusRedis(pubClient, subClient);
132
- cb(null, instance);
133
- }
134
- });
115
+ });
116
+ },
117
+ ]);
118
+ }
119
+ goingDown() {
120
+ return [
121
+ (cb) => {
122
+ this.ensureUnsubscribed();
123
+ cb();
124
+ },
125
+ (cb) => this.subClient.shutdown(cb),
126
+ (cb) => this.pubClient.shutdown(cb),
127
+ ].concat(super.goingDown());
135
128
  }
136
129
  }
137
130
  exports.EventBusRedis = EventBusRedis;
@@ -1 +1 @@
1
- {"version":3,"file":"event-bus-redis.js","sourceRoot":"","sources":["../../../../src/event-bus/event-bus-redis.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"event-bus-redis.js","sourceRoot":"","sources":["../../../../src/event-bus/event-bus-redis.ts"],"names":[],"mappings":"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"}
@@ -1,15 +1,12 @@
1
+ import { IEventBusConfig, TEventBusEvent } from './types/index.js';
2
+ import { Runnable } from '../runnable/index.js';
3
+ import { ILogger } from '../logger/index.js';
1
4
  import { ICallback } from '../async/index.js';
2
- import { EventEmitter } from '../event/index.js';
3
- import { IEventBus, TEventBusEvent } from './types/index.js';
4
- export declare class EventBus<Events extends TEventBusEvent> extends EventEmitter<Events> implements IEventBus<Events> {
5
- protected connected: boolean;
6
- protected constructor();
5
+ export declare class EventBus<Events extends TEventBusEvent> extends Runnable<Events> {
6
+ private readonly logger;
7
+ constructor(config?: IEventBusConfig);
8
+ protected getLogger(): ILogger;
7
9
  emit<E extends keyof Events>(event: E, ...args: Parameters<Events[E]>): boolean;
8
- on<E extends keyof Events>(event: E, listener: Events[E]): this;
9
- once<E extends keyof Events>(event: E, listener: Events[E]): this;
10
- removeAllListeners<E extends keyof Events>(event?: Extract<E, string>): this;
11
- removeListener<E extends keyof Events>(event: E, listener: Events[E]): this;
12
- shutdown(cb: ICallback<void>): void;
13
- static createInstance<T extends TEventBusEvent>(cb: ICallback<IEventBus<T>>): void;
10
+ protected goingDown(): ((cb: ICallback<void>) => void)[];
14
11
  }
15
12
  //# sourceMappingURL=event-bus.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"event-bus.d.ts","sourceRoot":"","sources":["../../../../src/event-bus/event-bus.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEjD,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAE7D,qBAAa,QAAQ,CAAC,MAAM,SAAS,cAAc,CACjD,SAAQ,YAAY,CAAC,MAAM,CAC3B,YAAW,SAAS,CAAC,MAAM,CAAC;IAE5B,SAAS,CAAC,SAAS,UAAS;IAE5B,SAAS;IAKA,IAAI,CAAC,CAAC,SAAS,MAAM,MAAM,EAClC,KAAK,EAAE,CAAC,EACR,GAAG,IAAI,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,GAC7B,OAAO;IAQD,EAAE,CAAC,CAAC,SAAS,MAAM,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC,GAAG,IAAI;IAa/D,IAAI,CAAC,CAAC,SAAS,MAAM,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC,GAAG,IAAI;IAajE,kBAAkB,CAAC,CAAC,SAAS,MAAM,MAAM,EAChD,KAAK,CAAC,EAAE,OAAO,CAAC,CAAC,EAAE,MAAM,CAAC,GACzB,IAAI;IAaE,cAAc,CAAC,CAAC,SAAS,MAAM,MAAM,EAC5C,KAAK,EAAE,CAAC,EACR,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC,GAClB,IAAI;IAaP,QAAQ,CAAC,EAAE,EAAE,SAAS,CAAC,IAAI,CAAC;IAK5B,MAAM,CAAC,cAAc,CAAC,CAAC,SAAS,cAAc,EAC5C,EAAE,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,GAC1B,IAAI;CAIR"}
1
+ {"version":3,"file":"event-bus.d.ts","sourceRoot":"","sources":["../../../../src/event-bus/event-bus.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AACnE,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAgB,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAC3D,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAQ9C,qBAAa,QAAQ,CAAC,MAAM,SAAS,cAAc,CAAE,SAAQ,QAAQ,CAAC,MAAM,CAAC;IAC3E,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAU;gBAErB,MAAM,GAAE,eAAoB;cAKrB,SAAS,IAAI,OAAO;IAS9B,IAAI,CAAC,CAAC,SAAS,MAAM,MAAM,EAClC,KAAK,EAAE,CAAC,EACR,GAAG,IAAI,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,GAC7B,OAAO;cAcS,SAAS,IAAI,CAAC,CAAC,EAAE,EAAE,SAAS,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,EAAE;CAQlE"}
@@ -1,77 +1,34 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.EventBus = void 0;
4
- const index_js_1 = require("../event/index.js");
5
- const index_js_2 = require("./errors/index.js");
6
- class EventBus extends index_js_1.EventEmitter {
7
- constructor() {
4
+ const index_js_1 = require("./errors/index.js");
5
+ const index_js_2 = require("../runnable/index.js");
6
+ const index_js_3 = require("../logger/index.js");
7
+ class EventBus extends index_js_2.Runnable {
8
+ constructor(config = {}) {
8
9
  super();
9
- this.connected = false;
10
- this.connected = true;
10
+ this.logger = (0, index_js_3.createLogger)(config === null || config === void 0 ? void 0 : config.logger);
11
11
  }
12
- emit(event, ...args) {
13
- if (!this.connected) {
14
- this.eventEmitter.emit('error', new index_js_2.EventBusNotConnectedError());
15
- return false;
16
- }
17
- return super.emit(event, ...args);
18
- }
19
- on(event, listener) {
20
- if (event === 'error') {
21
- super.on('error', listener);
22
- return this;
23
- }
24
- if (!this.connected) {
25
- this.eventEmitter.emit('error', new index_js_2.EventBusNotConnectedError());
26
- return this;
27
- }
28
- super.on(event, listener);
29
- return this;
30
- }
31
- once(event, listener) {
32
- if (event === 'error') {
33
- super.once('error', listener);
34
- return this;
35
- }
36
- if (!this.connected) {
37
- this.eventEmitter.emit('error', new index_js_2.EventBusNotConnectedError());
38
- return this;
39
- }
40
- super.once(event, listener);
41
- return this;
42
- }
43
- removeAllListeners(event) {
44
- if (event === 'error') {
45
- super.removeAllListeners('error');
46
- return this;
47
- }
48
- if (!this.connected) {
49
- this.eventEmitter.emit('error', new index_js_2.EventBusNotConnectedError());
50
- return this;
51
- }
52
- super.removeAllListeners(event);
53
- return this;
12
+ getLogger() {
13
+ return this.logger;
54
14
  }
55
- removeListener(event, listener) {
15
+ emit(event, ...args) {
56
16
  if (event === 'error') {
57
- super.removeListener('error', listener);
58
- return this;
17
+ return super.emit(event, ...args);
59
18
  }
60
- if (!this.connected) {
61
- this.eventEmitter.emit('error', new index_js_2.EventBusNotConnectedError());
62
- return this;
19
+ if (!this.isRunning()) {
20
+ this.eventEmitter.emit('error', new index_js_1.EventBusNotConnectedError());
21
+ return false;
63
22
  }
64
- super.removeListener(event, listener);
65
- return this;
66
- }
67
- shutdown(cb) {
68
- if (this.connected)
69
- this.connected = false;
70
- cb();
23
+ return super.emit(event, ...args);
71
24
  }
72
- static createInstance(cb) {
73
- const instance = new EventBus();
74
- cb(null, instance);
25
+ goingDown() {
26
+ return [
27
+ (cb) => {
28
+ super.removeAllListeners();
29
+ cb();
30
+ },
31
+ ].concat(super.goingDown());
75
32
  }
76
33
  }
77
34
  exports.EventBus = EventBus;
@@ -1 +1 @@
1
- {"version":3,"file":"event-bus.js","sourceRoot":"","sources":["../../../../src/event-bus/event-bus.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"event-bus.js","sourceRoot":"","sources":["../../../../src/event-bus/event-bus.ts"],"names":[],"mappings":";;;AASA,gDAA8D;AAE9D,mDAAgD;AAChD,iDAA2D;AAS3D,MAAa,QAAwC,SAAQ,mBAAgB;IAG3E,YAAY,SAA0B,EAAE;QACtC,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,MAAM,GAAG,IAAA,uBAAY,EAAC,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,MAAM,CAAC,CAAC;IAC7C,CAAC;IAEkB,SAAS;QAC1B,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAOQ,IAAI,CACX,KAAQ,EACR,GAAG,IAA2B;QAE9B,IAAI,KAAK,KAAK,OAAO,EAAE,CAAC;YACtB,OAAO,KAAK,CAAC,IAAI,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,CAAC;QACpC,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,EAAE,CAAC;YACtB,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,oCAAyB,EAAE,CAAC,CAAC;YACjE,OAAO,KAAK,CAAC;QACf,CAAC;QACD,OAAO,KAAK,CAAC,IAAI,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,CAAC;IACpC,CAAC;IAKkB,SAAS;QAC1B,OAAO;YACL,CAAC,EAAmB,EAAE,EAAE;gBACtB,KAAK,CAAC,kBAAkB,EAAE,CAAC;gBAC3B,EAAE,EAAE,CAAC;YACP,CAAC;SACF,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC,CAAC;IAC9B,CAAC;CACF;AA1CD,4BA0CC"}
@@ -2,6 +2,4 @@ export * from './errors/index.js';
2
2
  export * from './types/index.js';
3
3
  export * from './event-bus.js';
4
4
  export * from './event-bus-redis.js';
5
- export * from './event-bus-redis-factory.js';
6
- export * from './with-event-bus.js';
7
5
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/event-bus/index.ts"],"names":[],"mappings":"AASA,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,sBAAsB,CAAC;AACrC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,qBAAqB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/event-bus/index.ts"],"names":[],"mappings":"AASA,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,sBAAsB,CAAC"}
@@ -18,6 +18,4 @@ __exportStar(require("./errors/index.js"), exports);
18
18
  __exportStar(require("./types/index.js"), exports);
19
19
  __exportStar(require("./event-bus.js"), exports);
20
20
  __exportStar(require("./event-bus-redis.js"), exports);
21
- __exportStar(require("./event-bus-redis-factory.js"), exports);
22
- __exportStar(require("./with-event-bus.js"), exports);
23
21
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/event-bus/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AASA,oDAAkC;AAClC,mDAAiC;AACjC,iDAA+B;AAC/B,uDAAqC;AACrC,+DAA6C;AAC7C,sDAAoC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/event-bus/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AASA,oDAAkC;AAClC,mDAAiC;AACjC,iDAA+B;AAC/B,uDAAqC"}
@@ -1,9 +1,13 @@
1
- import { ICallback } from '../../async/index.js';
2
- import { IEventEmitter, TEventEmitterEvent } from '../../event/index.js';
1
+ import { TEventEmitterEvent } from '../../event/index.js';
2
+ import { ILoggerConfig } from '../../logger/index.js';
3
+ import { IRedisConfig } from '../../redis-client/index.js';
3
4
  export type TEventBusEvent = TEventEmitterEvent & {
4
5
  error: (err: Error) => void;
5
6
  };
6
- export interface IEventBus<Events extends TEventBusEvent> extends IEventEmitter<Events> {
7
- shutdown(cb: ICallback<void>): void;
7
+ export interface IEventBusConfig {
8
+ logger?: ILoggerConfig;
9
+ }
10
+ export interface IEventBusRedisConfig extends IEventBusConfig {
11
+ redis: IRedisConfig;
8
12
  }
9
13
  //# sourceMappingURL=event-bus.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"event-bus.d.ts","sourceRoot":"","sources":["../../../../../src/event-bus/types/event-bus.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAEzE,MAAM,MAAM,cAAc,GAAG,kBAAkB,GAAG;IAChD,KAAK,EAAE,CAAC,GAAG,EAAE,KAAK,KAAK,IAAI,CAAC;CAC7B,CAAC;AAEF,MAAM,WAAW,SAAS,CAAC,MAAM,SAAS,cAAc,CACtD,SAAQ,aAAa,CAAC,MAAM,CAAC;IAC7B,QAAQ,CAAC,EAAE,EAAE,SAAS,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;CACrC"}
1
+ {"version":3,"file":"event-bus.d.ts","sourceRoot":"","sources":["../../../../../src/event-bus/types/event-bus.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAE3D,MAAM,MAAM,cAAc,GAAG,kBAAkB,GAAG;IAChD,KAAK,EAAE,CAAC,GAAG,EAAE,KAAK,KAAK,IAAI,CAAC;CAC7B,CAAC;AAEF,MAAM,WAAW,eAAe;IAC9B,MAAM,CAAC,EAAE,aAAa,CAAC;CACxB;AAED,MAAM,WAAW,oBAAqB,SAAQ,eAAe;IAC3D,KAAK,EAAE,YAAY,CAAC;CACrB"}
@@ -1,14 +1,17 @@
1
1
  import { ILogger } from '../types/index.js';
2
- import { IConsoleLoggerOptions } from './types/index.js';
2
+ import { EConsoleLoggerLevel, IConsoleLoggerOptions } from './types/index.js';
3
3
  export declare class ConsoleLogger implements ILogger {
4
4
  private readonly logLevel;
5
5
  private readonly formatter;
6
- constructor(options?: IConsoleLoggerOptions);
7
- private shouldLog;
8
- isFormatted(message: unknown): boolean;
6
+ private readonly namespaces;
7
+ constructor(options?: IConsoleLoggerOptions, namespaces?: string | string[]);
8
+ getNamespaces(): string[];
9
+ getLogLevel(): EConsoleLoggerLevel;
9
10
  debug(message: unknown, ...params: unknown[]): void;
10
11
  error(message: unknown, ...params: unknown[]): void;
11
12
  info(message: unknown, ...params: unknown[]): void;
12
13
  warn(message: unknown, ...params: unknown[]): void;
14
+ private validateNamespaces;
15
+ private shouldLog;
13
16
  }
14
17
  //# sourceMappingURL=console-logger.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"console-logger.d.ts","sourceRoot":"","sources":["../../../../../src/logger/console-logger/console-logger.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAE5C,OAAO,EAAuB,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AAM9E,qBAAa,aAAc,YAAW,OAAO;IAC3C,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAsB;IAC/C,OAAO,CAAC,QAAQ,CAAC,SAAS,CAA0B;gBAWxC,OAAO,GAAE,qBAA0B;IAsB/C,OAAO,CAAC,SAAS;IAWV,WAAW,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO;IAUtC,KAAK,CAAC,OAAO,EAAE,OAAO,EAAE,GAAG,MAAM,EAAE,OAAO,EAAE,GAAG,IAAI;IAgBnD,KAAK,CAAC,OAAO,EAAE,OAAO,EAAE,GAAG,MAAM,EAAE,OAAO,EAAE,GAAG,IAAI;IAgBnD,IAAI,CAAC,OAAO,EAAE,OAAO,EAAE,GAAG,MAAM,EAAE,OAAO,EAAE,GAAG,IAAI;IAgBlD,IAAI,CAAC,OAAO,EAAE,OAAO,EAAE,GAAG,MAAM,EAAE,OAAO,EAAE,GAAG,IAAI;CAS1D"}
1
+ {"version":3,"file":"console-logger.d.ts","sourceRoot":"","sources":["../../../../../src/logger/console-logger/console-logger.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAE5C,OAAO,EAAE,mBAAmB,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AA4B9E,qBAAa,aAAc,YAAW,OAAO;IAC3C,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAsB;IAC/C,OAAO,CAAC,QAAQ,CAAC,SAAS,CAA0B;IACpD,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAW;gBA4BpC,OAAO,GAAE,qBAA0B,EACnC,UAAU,GAAE,MAAM,GAAG,MAAM,EAAO;IAyC7B,aAAa,IAAI,MAAM,EAAE;IAgBzB,WAAW,IAAI,mBAAmB;IAmBlC,KAAK,CAAC,OAAO,EAAE,OAAO,EAAE,GAAG,MAAM,EAAE,OAAO,EAAE,GAAG,IAAI;IAqBnD,KAAK,CAAC,OAAO,EAAE,OAAO,EAAE,GAAG,MAAM,EAAE,OAAO,EAAE,GAAG,IAAI;IAqBnD,IAAI,CAAC,OAAO,EAAE,OAAO,EAAE,GAAG,MAAM,EAAE,OAAO,EAAE,GAAG,IAAI;IAsBlD,IAAI,CAAC,OAAO,EAAE,OAAO,EAAE,GAAG,MAAM,EAAE,OAAO,EAAE,GAAG,IAAI;IAkBzD,OAAO,CAAC,kBAAkB;IA0B1B,OAAO,CAAC,SAAS;CAGlB"}