@tsed/event-emitter 6.107.3 → 6.108.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.
package/.nycrc CHANGED
@@ -20,7 +20,7 @@
20
20
  ],
21
21
  "check-coverage": true,
22
22
  "statements": 100,
23
- "branches": 86.67,
23
+ "branches": 86.66,
24
24
  "functions": 83.33,
25
25
  "lines": 100
26
26
  }
@@ -2,8 +2,8 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.EventEmitterModule = void 0;
4
4
  const tslib_1 = require("tslib");
5
- const common_1 = require("@tsed/common");
6
5
  const di_1 = require("@tsed/di");
6
+ const logger_1 = require("@tsed/logger");
7
7
  const EventEmitterFactory_1 = require("./services/EventEmitterFactory");
8
8
  let EventEmitterModule = class EventEmitterModule {
9
9
  async $afterListen() {
@@ -27,15 +27,15 @@ let EventEmitterModule = class EventEmitterModule {
27
27
  listenerCount
28
28
  };
29
29
  });
30
- this.injector.logger.info("EventEmitter events mounted:");
31
- const str = common_1.$log.drawTable(list, {
30
+ this.logger.info("EventEmitter events mounted:");
31
+ const str = this.logger.drawTable(list, {
32
32
  padding: 1,
33
33
  header: {
34
34
  eventName: "Event name",
35
35
  listenerCount: "Number of listener"
36
36
  }
37
37
  });
38
- this.injector.logger.info("\n" + str.trim());
38
+ this.logger.info("\n" + str.trim());
39
39
  }
40
40
  getProviders() {
41
41
  return Array.from(this.injector.getProviders());
@@ -56,27 +56,27 @@ let EventEmitterModule = class EventEmitterModule {
56
56
  }
57
57
  }
58
58
  };
59
- (0, tslib_1.__decorate)([
59
+ tslib_1.__decorate([
60
60
  (0, di_1.Constant)("eventEmitter.disableSummary", false),
61
- (0, tslib_1.__metadata)("design:type", Boolean)
61
+ tslib_1.__metadata("design:type", Boolean)
62
62
  ], EventEmitterModule.prototype, "disableSummary", void 0);
63
- (0, tslib_1.__decorate)([
63
+ tslib_1.__decorate([
64
64
  (0, di_1.Inject)(),
65
- (0, tslib_1.__metadata)("design:type", common_1.Logger)
65
+ tslib_1.__metadata("design:type", logger_1.Logger)
66
66
  ], EventEmitterModule.prototype, "logger", void 0);
67
- (0, tslib_1.__decorate)([
67
+ tslib_1.__decorate([
68
68
  (0, di_1.Inject)(),
69
- (0, tslib_1.__metadata)("design:type", di_1.InjectorService)
69
+ tslib_1.__metadata("design:type", di_1.InjectorService)
70
70
  ], EventEmitterModule.prototype, "injector", void 0);
71
- (0, tslib_1.__decorate)([
71
+ tslib_1.__decorate([
72
72
  (0, di_1.Inject)(),
73
- (0, tslib_1.__metadata)("design:type", EventEmitterFactory_1.EventEmitterService)
73
+ tslib_1.__metadata("design:type", EventEmitterFactory_1.EventEmitterService)
74
74
  ], EventEmitterModule.prototype, "eventEmitter", void 0);
75
- (0, tslib_1.__decorate)([
75
+ tslib_1.__decorate([
76
76
  (0, di_1.Constant)("eventEmitter.enabled", false),
77
- (0, tslib_1.__metadata)("design:type", Boolean)
77
+ tslib_1.__metadata("design:type", Boolean)
78
78
  ], EventEmitterModule.prototype, "loadEventEmitter", void 0);
79
- EventEmitterModule = (0, tslib_1.__decorate)([
79
+ EventEmitterModule = tslib_1.__decorate([
80
80
  (0, di_1.Module)()
81
81
  ], EventEmitterModule);
82
82
  exports.EventEmitterModule = EventEmitterModule;
@@ -1 +1 @@
1
- {"version":3,"file":"EventEmitterModule.js","sourceRoot":"","sources":["../../src/EventEmitterModule.ts"],"names":[],"mappings":"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","sourcesContent":["import {$log, AfterListen, Logger} from \"@tsed/common\";\nimport {Constant, Inject, InjectorService, Module, Provider} from \"@tsed/di\";\nimport {ListenerFn} from \"eventemitter2\";\nimport {EventEmitterStore} from \"./interfaces/EventEmitterStore\";\nimport {EventEmitterService} from \"./services/EventEmitterFactory\";\n\n@Module()\nexport class EventEmitterModule implements AfterListen {\n @Constant(\"eventEmitter.disableSummary\", false)\n disableSummary: boolean;\n\n @Inject()\n protected logger: Logger;\n\n @Inject()\n protected injector: InjectorService;\n\n @Inject()\n protected eventEmitter: EventEmitterService;\n\n @Constant(\"eventEmitter.enabled\", false)\n private loadEventEmitter: boolean;\n\n async $afterListen(): Promise<any> {\n if (this.loadEventEmitter) {\n const providers = this.getProviders();\n providers.forEach((provider) => this.addEventListenerForProvider(provider));\n if (!this.disableSummary) {\n this.printEvents();\n }\n this.logger.info(\"EventEmitter listening...\");\n } else {\n this.logger.info(\"EventEmitter disabled...\");\n }\n }\n\n public printEvents() {\n const list = this.eventEmitter.eventNames().map((eventName) => {\n const listenerCount = this.eventEmitter.listenerCount(eventName).toString();\n return {\n eventName,\n listenerCount\n };\n });\n\n this.injector.logger.info(\"EventEmitter events mounted:\");\n\n const str = $log.drawTable(list, {\n padding: 1,\n header: {\n eventName: \"Event name\",\n listenerCount: \"Number of listener\"\n }\n });\n\n this.injector.logger.info(\"\\n\" + str.trim());\n }\n\n protected getProviders(): Provider<any>[] {\n return Array.from(this.injector.getProviders());\n }\n\n private addEventListenerForProvider(provider: Provider<any>) {\n const store = provider.store.get<EventEmitterStore | undefined>(\"eventEmitter\");\n\n const eventListenerDefinitions = Object.entries(store?.onEvent || {});\n\n for (const [propertyKey, {event, options}] of eventListenerDefinitions) {\n const instance = this.injector.get(provider.token);\n\n const listenerFn: ListenerFn = instance[propertyKey].bind(instance) as ListenerFn;\n this.eventEmitter.on(event, listenerFn, options);\n }\n\n const anyEventListenerDefinitions = Object.keys(store?.onAny || {});\n for (const propertyKey of anyEventListenerDefinitions) {\n const instance = this.injector.get(provider.token);\n\n const listenerFn: ListenerFn = instance[propertyKey].bind(instance) as ListenerFn;\n this.eventEmitter.onAny(listenerFn);\n }\n }\n}\n"]}
1
+ {"version":3,"file":"EventEmitterModule.js","sourceRoot":"","sources":["../../src/EventEmitterModule.ts"],"names":[],"mappings":";;;;AAAA,iCAA6E;AAC7E,yCAAoC;AAGpC,wEAAmE;AAGnE,IAAa,kBAAkB,GAA/B,MAAa,kBAAkB;IAgB7B,KAAK,CAAC,YAAY;QAChB,IAAI,IAAI,CAAC,gBAAgB,EAAE;YACzB,MAAM,SAAS,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;YACtC,SAAS,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,IAAI,CAAC,2BAA2B,CAAC,QAAQ,CAAC,CAAC,CAAC;YAC5E,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE;gBACxB,IAAI,CAAC,WAAW,EAAE,CAAC;aACpB;YACD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC;SAC/C;aAAM;YACL,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC;SAC9C;IACH,CAAC;IAEM,WAAW;QAChB,MAAM,IAAI,GAAG,IAAI,CAAC,YAAY,CAAC,UAAU,EAAE,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE;YAC5D,MAAM,aAAa,GAAG,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,QAAQ,EAAE,CAAC;YAC5E,OAAO;gBACL,SAAS;gBACT,aAAa;aACd,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,8BAA8B,CAAC,CAAC;QAEjD,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,EAAE;YACtC,OAAO,EAAE,CAAC;YACV,MAAM,EAAE;gBACN,SAAS,EAAE,YAAY;gBACvB,aAAa,EAAE,oBAAoB;aACpC;SACF,CAAC,CAAC;QAEH,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC;IACtC,CAAC;IAES,YAAY;QACpB,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,YAAY,EAAE,CAAC,CAAC;IAClD,CAAC;IAEO,2BAA2B,CAAC,QAAuB;QACzD,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAgC,cAAc,CAAC,CAAC;QAEhF,MAAM,wBAAwB,GAAG,MAAM,CAAC,OAAO,CAAC,CAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,OAAO,KAAI,EAAE,CAAC,CAAC;QAEtE,KAAK,MAAM,CAAC,WAAW,EAAE,EAAC,KAAK,EAAE,OAAO,EAAC,CAAC,IAAI,wBAAwB,EAAE;YACtE,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;YAEnD,MAAM,UAAU,GAAe,QAAQ,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAe,CAAC;YAClF,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;SAClD;QAED,MAAM,2BAA2B,GAAG,MAAM,CAAC,IAAI,CAAC,CAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,KAAK,KAAI,EAAE,CAAC,CAAC;QACpE,KAAK,MAAM,WAAW,IAAI,2BAA2B,EAAE;YACrD,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;YAEnD,MAAM,UAAU,GAAe,QAAQ,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAe,CAAC;YAClF,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;SACrC;IACH,CAAC;CACF,CAAA;AAzEC;IADC,IAAA,aAAQ,EAAC,6BAA6B,EAAE,KAAK,CAAC;;0DACvB;AAGxB;IADC,IAAA,WAAM,GAAE;sCACS,eAAM;kDAAC;AAGzB;IADC,IAAA,WAAM,GAAE;sCACW,oBAAe;oDAAC;AAGpC;IADC,IAAA,WAAM,GAAE;sCACe,yCAAmB;wDAAC;AAG5C;IADC,IAAA,aAAQ,EAAC,sBAAsB,EAAE,KAAK,CAAC;;4DACN;AAdvB,kBAAkB;IAD9B,IAAA,WAAM,GAAE;GACI,kBAAkB,CA2E9B;AA3EY,gDAAkB","sourcesContent":["import {Constant, Inject, InjectorService, Module, Provider} from \"@tsed/di\";\nimport {Logger} from \"@tsed/logger\";\nimport {ListenerFn} from \"eventemitter2\";\nimport {EventEmitterStore} from \"./interfaces/EventEmitterStore\";\nimport {EventEmitterService} from \"./services/EventEmitterFactory\";\n\n@Module()\nexport class EventEmitterModule {\n @Constant(\"eventEmitter.disableSummary\", false)\n disableSummary: boolean;\n\n @Inject()\n protected logger: Logger;\n\n @Inject()\n protected injector: InjectorService;\n\n @Inject()\n protected eventEmitter: EventEmitterService;\n\n @Constant(\"eventEmitter.enabled\", false)\n private loadEventEmitter: boolean;\n\n async $afterListen(): Promise<any> {\n if (this.loadEventEmitter) {\n const providers = this.getProviders();\n providers.forEach((provider) => this.addEventListenerForProvider(provider));\n if (!this.disableSummary) {\n this.printEvents();\n }\n this.logger.info(\"EventEmitter listening...\");\n } else {\n this.logger.info(\"EventEmitter disabled...\");\n }\n }\n\n public printEvents() {\n const list = this.eventEmitter.eventNames().map((eventName) => {\n const listenerCount = this.eventEmitter.listenerCount(eventName).toString();\n return {\n eventName,\n listenerCount\n };\n });\n\n this.logger.info(\"EventEmitter events mounted:\");\n\n const str = this.logger.drawTable(list, {\n padding: 1,\n header: {\n eventName: \"Event name\",\n listenerCount: \"Number of listener\"\n }\n });\n\n this.logger.info(\"\\n\" + str.trim());\n }\n\n protected getProviders(): Provider<any>[] {\n return Array.from(this.injector.getProviders());\n }\n\n private addEventListenerForProvider(provider: Provider<any>) {\n const store = provider.store.get<EventEmitterStore | undefined>(\"eventEmitter\");\n\n const eventListenerDefinitions = Object.entries(store?.onEvent || {});\n\n for (const [propertyKey, {event, options}] of eventListenerDefinitions) {\n const instance = this.injector.get(provider.token);\n\n const listenerFn: ListenerFn = instance[propertyKey].bind(instance) as ListenerFn;\n this.eventEmitter.on(event, listenerFn, options);\n }\n\n const anyEventListenerDefinitions = Object.keys(store?.onAny || {});\n for (const propertyKey of anyEventListenerDefinitions) {\n const instance = this.injector.get(provider.token);\n\n const listenerFn: ListenerFn = instance[propertyKey].bind(instance) as ListenerFn;\n this.eventEmitter.onAny(listenerFn);\n }\n }\n}\n"]}
package/lib/cjs/index.js CHANGED
@@ -4,10 +4,10 @@
4
4
  */
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const tslib_1 = require("tslib");
7
- (0, tslib_1.__exportStar)(require("./EventEmitterModule"), exports);
8
- (0, tslib_1.__exportStar)(require("./decorators/onAny"), exports);
9
- (0, tslib_1.__exportStar)(require("./decorators/onEvent"), exports);
10
- (0, tslib_1.__exportStar)(require("./interfaces/EventEmitterStore"), exports);
11
- (0, tslib_1.__exportStar)(require("./interfaces/interfaces"), exports);
12
- (0, tslib_1.__exportStar)(require("./services/EventEmitterFactory"), exports);
7
+ tslib_1.__exportStar(require("./EventEmitterModule"), exports);
8
+ tslib_1.__exportStar(require("./decorators/onAny"), exports);
9
+ tslib_1.__exportStar(require("./decorators/onEvent"), exports);
10
+ tslib_1.__exportStar(require("./interfaces/EventEmitterStore"), exports);
11
+ tslib_1.__exportStar(require("./interfaces/interfaces"), exports);
12
+ tslib_1.__exportStar(require("./services/EventEmitterFactory"), exports);
13
13
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAEH,oEAAqC;AACrC,kEAAmC;AACnC,oEAAqC;AACrC,8EAA+C;AAC/C,uEAAwC;AACxC,8EAA+C","sourcesContent":["/**\n * @file Automatically generated by barrelsby.\n */\n\nexport * from \"./EventEmitterModule\";\nexport * from \"./decorators/onAny\";\nexport * from \"./decorators/onEvent\";\nexport * from \"./interfaces/EventEmitterStore\";\nexport * from \"./interfaces/interfaces\";\nexport * from \"./services/EventEmitterFactory\";\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAEH,+DAAqC;AACrC,6DAAmC;AACnC,+DAAqC;AACrC,yEAA+C;AAC/C,kEAAwC;AACxC,yEAA+C","sourcesContent":["/**\n * @file Automatically generated by barrelsby.\n */\n\nexport * from \"./EventEmitterModule\";\nexport * from \"./decorators/onAny\";\nexport * from \"./decorators/onEvent\";\nexport * from \"./interfaces/EventEmitterStore\";\nexport * from \"./interfaces/interfaces\";\nexport * from \"./services/EventEmitterFactory\";\n"]}
@@ -1,6 +1,6 @@
1
1
  import { __decorate, __metadata } from "tslib";
2
- import { $log, Logger } from "@tsed/common";
3
2
  import { Constant, Inject, InjectorService, Module } from "@tsed/di";
3
+ import { Logger } from "@tsed/logger";
4
4
  import { EventEmitterService } from "./services/EventEmitterFactory.js";
5
5
  let EventEmitterModule = class EventEmitterModule {
6
6
  async $afterListen() {
@@ -24,15 +24,15 @@ let EventEmitterModule = class EventEmitterModule {
24
24
  listenerCount
25
25
  };
26
26
  });
27
- this.injector.logger.info("EventEmitter events mounted:");
28
- const str = $log.drawTable(list, {
27
+ this.logger.info("EventEmitter events mounted:");
28
+ const str = this.logger.drawTable(list, {
29
29
  padding: 1,
30
30
  header: {
31
31
  eventName: "Event name",
32
32
  listenerCount: "Number of listener"
33
33
  }
34
34
  });
35
- this.injector.logger.info("\n" + str.trim());
35
+ this.logger.info("\n" + str.trim());
36
36
  }
37
37
  getProviders() {
38
38
  return Array.from(this.injector.getProviders());
@@ -1 +1 @@
1
- {"version":3,"file":"EventEmitterModule.js","sourceRoot":"","sources":["../../src/EventEmitterModule.ts"],"names":[],"mappings":"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","sourcesContent":["import {$log, AfterListen, Logger} from \"@tsed/common\";\nimport {Constant, Inject, InjectorService, Module, Provider} from \"@tsed/di\";\nimport {ListenerFn} from \"eventemitter2\";\nimport {EventEmitterStore} from \"./interfaces/EventEmitterStore\";\nimport {EventEmitterService} from \"./services/EventEmitterFactory\";\n\n@Module()\nexport class EventEmitterModule implements AfterListen {\n @Constant(\"eventEmitter.disableSummary\", false)\n disableSummary: boolean;\n\n @Inject()\n protected logger: Logger;\n\n @Inject()\n protected injector: InjectorService;\n\n @Inject()\n protected eventEmitter: EventEmitterService;\n\n @Constant(\"eventEmitter.enabled\", false)\n private loadEventEmitter: boolean;\n\n async $afterListen(): Promise<any> {\n if (this.loadEventEmitter) {\n const providers = this.getProviders();\n providers.forEach((provider) => this.addEventListenerForProvider(provider));\n if (!this.disableSummary) {\n this.printEvents();\n }\n this.logger.info(\"EventEmitter listening...\");\n } else {\n this.logger.info(\"EventEmitter disabled...\");\n }\n }\n\n public printEvents() {\n const list = this.eventEmitter.eventNames().map((eventName) => {\n const listenerCount = this.eventEmitter.listenerCount(eventName).toString();\n return {\n eventName,\n listenerCount\n };\n });\n\n this.injector.logger.info(\"EventEmitter events mounted:\");\n\n const str = $log.drawTable(list, {\n padding: 1,\n header: {\n eventName: \"Event name\",\n listenerCount: \"Number of listener\"\n }\n });\n\n this.injector.logger.info(\"\\n\" + str.trim());\n }\n\n protected getProviders(): Provider<any>[] {\n return Array.from(this.injector.getProviders());\n }\n\n private addEventListenerForProvider(provider: Provider<any>) {\n const store = provider.store.get<EventEmitterStore | undefined>(\"eventEmitter\");\n\n const eventListenerDefinitions = Object.entries(store?.onEvent || {});\n\n for (const [propertyKey, {event, options}] of eventListenerDefinitions) {\n const instance = this.injector.get(provider.token);\n\n const listenerFn: ListenerFn = instance[propertyKey].bind(instance) as ListenerFn;\n this.eventEmitter.on(event, listenerFn, options);\n }\n\n const anyEventListenerDefinitions = Object.keys(store?.onAny || {});\n for (const propertyKey of anyEventListenerDefinitions) {\n const instance = this.injector.get(provider.token);\n\n const listenerFn: ListenerFn = instance[propertyKey].bind(instance) as ListenerFn;\n this.eventEmitter.onAny(listenerFn);\n }\n }\n}\n"]}
1
+ {"version":3,"file":"EventEmitterModule.js","sourceRoot":"","sources":["../../src/EventEmitterModule.ts"],"names":[],"mappings":"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","sourcesContent":["import {Constant, Inject, InjectorService, Module, Provider} from \"@tsed/di\";\nimport {Logger} from \"@tsed/logger\";\nimport {ListenerFn} from \"eventemitter2\";\nimport {EventEmitterStore} from \"./interfaces/EventEmitterStore\";\nimport {EventEmitterService} from \"./services/EventEmitterFactory\";\n\n@Module()\nexport class EventEmitterModule {\n @Constant(\"eventEmitter.disableSummary\", false)\n disableSummary: boolean;\n\n @Inject()\n protected logger: Logger;\n\n @Inject()\n protected injector: InjectorService;\n\n @Inject()\n protected eventEmitter: EventEmitterService;\n\n @Constant(\"eventEmitter.enabled\", false)\n private loadEventEmitter: boolean;\n\n async $afterListen(): Promise<any> {\n if (this.loadEventEmitter) {\n const providers = this.getProviders();\n providers.forEach((provider) => this.addEventListenerForProvider(provider));\n if (!this.disableSummary) {\n this.printEvents();\n }\n this.logger.info(\"EventEmitter listening...\");\n } else {\n this.logger.info(\"EventEmitter disabled...\");\n }\n }\n\n public printEvents() {\n const list = this.eventEmitter.eventNames().map((eventName) => {\n const listenerCount = this.eventEmitter.listenerCount(eventName).toString();\n return {\n eventName,\n listenerCount\n };\n });\n\n this.logger.info(\"EventEmitter events mounted:\");\n\n const str = this.logger.drawTable(list, {\n padding: 1,\n header: {\n eventName: \"Event name\",\n listenerCount: \"Number of listener\"\n }\n });\n\n this.logger.info(\"\\n\" + str.trim());\n }\n\n protected getProviders(): Provider<any>[] {\n return Array.from(this.injector.getProviders());\n }\n\n private addEventListenerForProvider(provider: Provider<any>) {\n const store = provider.store.get<EventEmitterStore | undefined>(\"eventEmitter\");\n\n const eventListenerDefinitions = Object.entries(store?.onEvent || {});\n\n for (const [propertyKey, {event, options}] of eventListenerDefinitions) {\n const instance = this.injector.get(provider.token);\n\n const listenerFn: ListenerFn = instance[propertyKey].bind(instance) as ListenerFn;\n this.eventEmitter.on(event, listenerFn, options);\n }\n\n const anyEventListenerDefinitions = Object.keys(store?.onAny || {});\n for (const propertyKey of anyEventListenerDefinitions) {\n const instance = this.injector.get(provider.token);\n\n const listenerFn: ListenerFn = instance[propertyKey].bind(instance) as ListenerFn;\n this.eventEmitter.onAny(listenerFn);\n }\n }\n}\n"]}
@@ -1,7 +1,7 @@
1
- import { AfterListen, Logger } from "@tsed/common";
2
1
  import { InjectorService, Provider } from "@tsed/di";
2
+ import { Logger } from "@tsed/logger";
3
3
  import { EventEmitterService } from "./services/EventEmitterFactory";
4
- export declare class EventEmitterModule implements AfterListen {
4
+ export declare class EventEmitterModule {
5
5
  disableSummary: boolean;
6
6
  protected logger: Logger;
7
7
  protected injector: InjectorService;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tsed/event-emitter",
3
- "version": "6.107.3",
3
+ "version": "6.108.0",
4
4
  "description": "EventEmitter package for Ts.ED framework",
5
5
  "source": "./src/index.ts",
6
6
  "main": "./lib/cjs/index.js",
@@ -20,13 +20,13 @@
20
20
  "test": "cross-env NODE_ENV=test nyc mocha"
21
21
  },
22
22
  "dependencies": {
23
- "tslib": "2.2.0"
23
+ "tslib": "2.3.1"
24
24
  },
25
25
  "private": false,
26
26
  "devDependencies": {
27
- "@tsed/common": "6.107.3",
28
- "@tsed/core": "6.107.3",
29
- "@tsed/di": "6.107.3",
27
+ "@tsed/common": "6.108.0",
28
+ "@tsed/core": "6.108.0",
29
+ "@tsed/di": "6.108.0",
30
30
  "eventemitter2": "^6.4.4"
31
31
  },
32
32
  "peerDependencies": {
@@ -1,11 +1,11 @@
1
- import {$log, AfterListen, Logger} from "@tsed/common";
2
1
  import {Constant, Inject, InjectorService, Module, Provider} from "@tsed/di";
2
+ import {Logger} from "@tsed/logger";
3
3
  import {ListenerFn} from "eventemitter2";
4
4
  import {EventEmitterStore} from "./interfaces/EventEmitterStore";
5
5
  import {EventEmitterService} from "./services/EventEmitterFactory";
6
6
 
7
7
  @Module()
8
- export class EventEmitterModule implements AfterListen {
8
+ export class EventEmitterModule {
9
9
  @Constant("eventEmitter.disableSummary", false)
10
10
  disableSummary: boolean;
11
11
 
@@ -43,9 +43,9 @@ export class EventEmitterModule implements AfterListen {
43
43
  };
44
44
  });
45
45
 
46
- this.injector.logger.info("EventEmitter events mounted:");
46
+ this.logger.info("EventEmitter events mounted:");
47
47
 
48
- const str = $log.drawTable(list, {
48
+ const str = this.logger.drawTable(list, {
49
49
  padding: 1,
50
50
  header: {
51
51
  eventName: "Event name",
@@ -53,7 +53,7 @@ export class EventEmitterModule implements AfterListen {
53
53
  }
54
54
  });
55
55
 
56
- this.injector.logger.info("\n" + str.trim());
56
+ this.logger.info("\n" + str.trim());
57
57
  }
58
58
 
59
59
  protected getProviders(): Provider<any>[] {