@nextage/era-lib 1.0.118 → 1.0.119

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.
@@ -2,29 +2,26 @@ import { BaseModel } from '@nextage/nx-frame-be/build/common/base/base.model';
2
2
  import { BaseMongoDoc } from '@nextage/nx-frame-be/build/common/base/base.interfaces';
3
3
  import { BaseController } from '@nextage/nx-frame-be/build/common/base/base.controller';
4
4
  import { NxContext } from '@nextage/nx-frame-be';
5
- import { Publisher } from './base-publisher';
6
- import { NatsPublisher } from './base-nats-publisher';
7
- import { Event } from './interfaces';
5
+ import { Event, IPublisher } from './interfaces';
8
6
  import { QueueEventType } from './types/enums';
9
7
  export declare abstract class BaseEventCtrl<TCreate extends Event, TUpdate extends Event, TRemove extends Event, TAttrs, TDoc extends BaseMongoDoc, TModel extends BaseModel<TAttrs, TDoc, any>> extends BaseController<TAttrs, TDoc, TModel> {
10
8
  protected abstract parsePubCreateItem(item: TAttrs, type: QueueEventType): TCreate['data'];
11
9
  protected abstract parsePubUpdateItem(item: TAttrs, type: QueueEventType): TUpdate['data'];
12
10
  protected abstract parsePubRemoveItem(item: TAttrs, type: QueueEventType): TRemove['data'];
13
- protected abstract createPublisher: Publisher<TCreate> | NatsPublisher<TCreate>;
14
- protected abstract updatePublisher: Publisher<TUpdate> | NatsPublisher<TUpdate>;
15
- protected abstract removePublisher: Publisher<TRemove> | NatsPublisher<TRemove>;
11
+ protected abstract createPublisher: IPublisher<TCreate>[];
12
+ protected abstract updatePublisher: IPublisher<TUpdate>[];
13
+ protected abstract removePublisher: IPublisher<TRemove>[];
14
+ private publishConfig?;
15
+ /**
16
+ * Inizializza la configurazione dei publisher (lazy initialization)
17
+ */
18
+ private getPublishConfig;
16
19
  /**
17
20
  *
18
21
  * @param item
19
22
  * @param type
20
23
  * @param context
21
24
  */
22
- /**
23
- *
24
- * @param item
25
- * @param type
26
- * @param context
27
- */
28
25
  publish(item: TAttrs, type: QueueEventType, context: NxContext): Promise<void>;
29
26
  /**
30
27
  *
@@ -1 +1 @@
1
- {"version":3,"file":"base-event.controller.d.ts","sourceRoot":"","sources":["../../src/events/base-event.controller.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAsB,mDAAmD,CAAC;AAC9F,OAAO,EAAE,YAAY,EAAE,MAAmB,wDAAwD,CAAC;AACnG,OAAO,EAAE,cAAc,EAAE,MAAiB,wDAAwD,CAAC;AACnG,OAAO,EAAE,SAAS,EAAE,MAAsB,sBAAsB,CAAC;AAGjE,OAAO,EAAE,SAAS,EAAE,MAAsB,kBAAkB,CAAC;AAC7D,OAAO,EAAE,aAAa,EAAE,MAAkB,uBAAuB,CAAC;AAClE,OAAO,EAAE,KAAK,EAAsB,MAAM,cAAc,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAiB,eAAe,CAAC;AAE1D,8BAAsB,aAAa,CAAC,OAAO,SAAS,KAAK,EAAE,OAAO,SAAS,KAAK,EAAE,OAAO,SAAS,KAAK,EAAE,MAAM,EAAE,IAAI,SAAS,YAAY,EAAE,MAAM,SAAS,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,GAAG,CAAC,CAAE,SAAQ,cAAc,CAAC,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC;IAMnO,SAAS,CAAC,QAAQ,CAAC,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,cAAc,GAAI,OAAO,CAAC,MAAM,CAAC;IAC3F,SAAS,CAAC,QAAQ,CAAC,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,cAAc,GAAI,OAAO,CAAC,MAAM,CAAC;IAC3F,SAAS,CAAC,QAAQ,CAAC,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,cAAc,GAAI,OAAO,CAAC,MAAM,CAAC;IAE3F,SAAS,CAAC,QAAQ,CAAC,eAAe,EAAE,SAAS,CAAC,OAAO,CAAC,GAAG,aAAa,CAAC,OAAO,CAAC,CAAC;IAChF,SAAS,CAAC,QAAQ,CAAC,eAAe,EAAE,SAAS,CAAC,OAAO,CAAC,GAAG,aAAa,CAAC,OAAO,CAAC,CAAC;IAChF,SAAS,CAAC,QAAQ,CAAC,eAAe,EAAE,SAAS,CAAC,OAAO,CAAC,GAAG,aAAa,CAAC,OAAO,CAAC,CAAC;IAEhF;;;;;OAKG;IAoBD;;;;;KAKC;IACG,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,cAAc,EAAE,OAAO,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC;IAmBpF;;;;;OAKG;IACY,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC;IAQtE;;;;;OAKG;IACY,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC;IAQlF;;;;;OAKG;IACY,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC;CAOrE"}
1
+ {"version":3,"file":"base-event.controller.d.ts","sourceRoot":"","sources":["../../src/events/base-event.controller.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAc,mDAAmD,CAAC;AACtF,OAAO,EAAE,YAAY,EAAE,MAAW,wDAAwD,CAAC;AAC3F,OAAO,EAAE,cAAc,EAAE,MAAS,wDAAwD,CAAC;AAC3F,OAAO,EAAE,SAAS,EAAE,MAAc,sBAAsB,CAAC;AAGzD,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,EAAE,cAAc,EAAE,MAAS,eAAe,CAAC;AAOlD,8BAAsB,aAAa,CAAC,OAAO,SAAS,KAAK,EAAE,OAAO,SAAS,KAAK,EAAE,OAAO,SAAS,KAAK,EAAE,MAAM,EAAE,IAAI,SAAS,YAAY,EAAE,MAAM,SAAS,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,GAAG,CAAC,CAAE,SAAQ,cAAc,CAAC,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC;IAMnO,SAAS,CAAC,QAAQ,CAAC,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,cAAc,GAAI,OAAO,CAAC,MAAM,CAAC;IAC3F,SAAS,CAAC,QAAQ,CAAC,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,cAAc,GAAI,OAAO,CAAC,MAAM,CAAC;IAC3F,SAAS,CAAC,QAAQ,CAAC,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,cAAc,GAAI,OAAO,CAAC,MAAM,CAAC;IAE3F,SAAS,CAAC,QAAQ,CAAC,eAAe,EAAE,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;IAC1D,SAAS,CAAC,QAAQ,CAAC,eAAe,EAAE,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;IAC1D,SAAS,CAAC,QAAQ,CAAC,eAAe,EAAE,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;IAE1D,OAAO,CAAC,aAAa,CAAC,CAGnB;IAEH;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAuBxB;;;;;OAKG;IACG,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,cAAc,EAAE,OAAO,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC;IAYpF;;;;;OAKG;IACY,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC;IAQtE;;;;;OAKG;IACY,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC;IAQlF;;;;;OAKG;IACY,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC;CAOrE"}
@@ -4,49 +4,41 @@ exports.BaseEventCtrl = void 0;
4
4
  const base_controller_1 = require("@nextage/nx-frame-be/build/common/base/base.controller");
5
5
  const enums_1 = require("./types/enums");
6
6
  class BaseEventCtrl extends base_controller_1.BaseController {
7
+ /**
8
+ * Inizializza la configurazione dei publisher (lazy initialization)
9
+ */
10
+ getPublishConfig() {
11
+ if (!this.publishConfig) {
12
+ this.publishConfig = {
13
+ [enums_1.QueueEventType.create]: {
14
+ publishers: this.createPublisher,
15
+ parser: this.parsePubCreateItem.bind(this)
16
+ },
17
+ [enums_1.QueueEventType.update]: {
18
+ publishers: this.updatePublisher,
19
+ parser: this.parsePubUpdateItem.bind(this)
20
+ },
21
+ [enums_1.QueueEventType.remove]: {
22
+ publishers: this.removePublisher,
23
+ parser: this.parsePubRemoveItem.bind(this)
24
+ }
25
+ };
26
+ }
27
+ return this.publishConfig;
28
+ }
7
29
  /**
8
30
  *
9
31
  * @param item
10
32
  * @param type
11
33
  * @param context
12
34
  */
13
- // async publish(item: TAttrs, type: QueueEventType, context: NxContext): Promise<void> {
14
- // // publish event according to type
15
- // switch (type) {
16
- // case QueueEventType.create:
17
- // await new this.CreatePublisher(msgWrapper.client).publish(this.parsePubCreateItem(item, type));
18
- // break;
19
- // case QueueEventType.update:
20
- // await new this.UpdatePublisher(msgWrapper.client).publish(this.parsePubUpdateItem(item, type));
21
- // break;
22
- // case QueueEventType.remove:
23
- // await new this.RemovePublisher(msgWrapper.client).publish(this.parsePubRemoveItem(item, type));
24
- // break;
25
- // default:
26
- // break;
27
- // }
28
- // }
29
- /**
30
- *
31
- * @param item
32
- * @param type
33
- * @param context
34
- */
35
35
  async publish(item, type, context) {
36
- // publish event according to type
37
- switch (type) {
38
- case enums_1.QueueEventType.create:
39
- await this.createPublisher.publish(this.parsePubCreateItem(item, type));
40
- break;
41
- case enums_1.QueueEventType.update:
42
- await this.updatePublisher.publish(this.parsePubUpdateItem(item, type));
43
- break;
44
- case enums_1.QueueEventType.remove:
45
- await this.removePublisher.publish(this.parsePubRemoveItem(item, type));
46
- break;
47
- default:
48
- break;
49
- }
36
+ const config = this.getPublishConfig();
37
+ const { publishers, parser } = config[type] ?? {};
38
+ if (!publishers?.length || !parser)
39
+ return;
40
+ const data = parser(item, type);
41
+ await Promise.all(publishers.map(pub => pub.publish(data)));
50
42
  }
51
43
  /**
52
44
  *
@@ -1 +1 @@
1
- {"version":3,"file":"base-event.controller.js","sourceRoot":"","sources":["../../src/events/base-event.controller.ts"],"names":[],"mappings":";;;AAEA,4FAAmG;AAOnG,yCAA0D;AAE1D,MAAsB,aAAmK,SAAQ,gCAAoC;IAcnO;;;;;OAKG;IACH,yFAAyF;IAEzF,uCAAuC;IACvC,oBAAoB;IAEpB,kCAAkC;IAClC,wGAAwG;IACxG,eAAe;IACf,kCAAkC;IAClC,wGAAwG;IACxG,eAAe;IACf,kCAAkC;IAClC,wGAAwG;IACxG,eAAe;IACf,eAAe;IACf,iBAAiB;IACjB,MAAM;IACN,IAAI;IAEF;;;;;KAKC;IACH,KAAK,CAAC,OAAO,CAAC,IAAY,EAAE,IAAoB,EAAE,OAAkB;QAElE,kCAAkC;QAClC,QAAQ,IAAI,EAAE,CAAC;YAEb,KAAK,sBAAc,CAAC,MAAM;gBACxB,MAAM,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;gBACxE,MAAM;YACR,KAAK,sBAAc,CAAC,MAAM;gBACxB,MAAM,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;gBACxE,MAAM;YACR,KAAK,sBAAc,CAAC,MAAM;gBACxB,MAAM,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;gBACxE,MAAM;YACR;gBACI,MAAM;QACZ,CAAC;IACH,CAAC;IAED;;;;;OAKG;IACM,KAAK,CAAC,MAAM,CAAC,IAAY,EAAE,OAAkB;QAEpD,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAA,oCAAoC;QAElF,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,EAAE,sBAAc,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACjE,OAAO,GAAG,CAAC;IACb,CAAC;IAED;;;;;OAKG;IACM,KAAK,CAAC,MAAM,CAAC,EAAU,EAAE,IAAY,EAAE,OAAkB;QAEhE,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,MAAM,CAAC,EAAE,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;QAElD,MAAM,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,GAAG,GAAG,CAAC,QAAQ,EAAE,EAAE,EAAE,sBAAc,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAC9E,OAAO,GAAG,CAAC;IACb,CAAC;IAED;;;;;OAKG;IACM,KAAK,CAAC,MAAM,CAAC,EAAU,EAAE,OAAkB;QAElD,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;QAEjD,MAAM,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,GAAG,GAAG,CAAC,QAAQ,EAAE,EAAE,EAAE,sBAAc,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAC9E,OAAO,GAAG,CAAC;IACb,CAAC;CACF;AAzGD,sCAyGC"}
1
+ {"version":3,"file":"base-event.controller.js","sourceRoot":"","sources":["../../src/events/base-event.controller.ts"],"names":[],"mappings":";;;AAEA,4FAA2F;AAK3F,yCAAkD;AAOlD,MAAsB,aAAmK,SAAQ,gCAAoC;IAmBnO;;OAEG;IACK,gBAAgB;QAEtB,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;YAExB,IAAI,CAAC,aAAa,GAAG;gBACnB,CAAC,sBAAc,CAAC,MAAM,CAAC,EAAE;oBACvB,UAAU,EAAE,IAAI,CAAC,eAAe;oBAChC,MAAM,EAAE,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC;iBAC3C;gBACD,CAAC,sBAAc,CAAC,MAAM,CAAC,EAAE;oBACvB,UAAU,EAAE,IAAI,CAAC,eAAe;oBAChC,MAAM,EAAE,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC;iBAC3C;gBACD,CAAC,sBAAc,CAAC,MAAM,CAAC,EAAE;oBACvB,UAAU,EAAE,IAAI,CAAC,eAAe;oBAChC,MAAM,EAAE,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC;iBAC3C;aACF,CAAC;QACJ,CAAC;QAED,OAAO,IAAI,CAAC,aAAa,CAAC;IAC5B,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,OAAO,CAAC,IAAY,EAAE,IAAoB,EAAE,OAAkB;QAElE,MAAM,MAAM,GAAG,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAEvC,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;QAElD,IAAI,CAAC,UAAU,EAAE,MAAM,IAAI,CAAC,MAAM;YAAE,OAAO;QAE3C,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QAChC,MAAM,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED;;;;;OAKG;IACM,KAAK,CAAC,MAAM,CAAC,IAAY,EAAE,OAAkB;QAEpD,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAA,oCAAoC;QAElF,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,EAAE,sBAAc,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACjE,OAAO,GAAG,CAAC;IACb,CAAC;IAED;;;;;OAKG;IACM,KAAK,CAAC,MAAM,CAAC,EAAU,EAAE,IAAY,EAAE,OAAkB;QAEhE,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,MAAM,CAAC,EAAE,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;QAElD,MAAM,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,GAAG,GAAG,CAAC,QAAQ,EAAE,EAAE,EAAE,sBAAc,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAC9E,OAAO,GAAG,CAAC;IACb,CAAC;IAED;;;;;OAKG;IACM,KAAK,CAAC,MAAM,CAAC,EAAU,EAAE,OAAkB;QAElD,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;QAEjD,MAAM,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,GAAG,GAAG,CAAC,QAAQ,EAAE,EAAE,EAAE,sBAAc,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAC9E,OAAO,GAAG,CAAC;IACb,CAAC;CACF;AAxGD,sCAwGC"}
@@ -1,6 +1,6 @@
1
1
  import { JetStreamPublishOptions } from 'nats';
2
- import { Event, MsgClientInterface } from './interfaces';
3
- export declare abstract class NatsPublisher<T extends Event> {
2
+ import { Event, IPublisher, MsgClientInterface } from './interfaces';
3
+ export declare abstract class NatsPublisher<T extends Event> implements IPublisher<T, Partial<JetStreamPublishOptions>> {
4
4
  private readonly client;
5
5
  abstract subject: T['subject'];
6
6
  constructor(client: MsgClientInterface);
@@ -1 +1 @@
1
- {"version":3,"file":"base-nats-publisher.d.ts","sourceRoot":"","sources":["../../src/events/base-nats-publisher.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,uBAAuB,EAAE,MAAQ,MAAM,CAAC;AACjD,OAAO,EAAE,KAAK,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAEzD,8BAAsB,aAAa,CAAC,CAAC,SAAS,KAAK;IAIrC,OAAO,CAAC,QAAQ,CAAC,MAAM;IAFnC,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC;gBAEF,MAAM,EAAE,kBAAkB;IAEvD;;;;OAIG;IACG,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC,EAAE,OAAO,CAAC,uBAAuB,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;CAsB1F"}
1
+ {"version":3,"file":"base-nats-publisher.d.ts","sourceRoot":"","sources":["../../src/events/base-nats-publisher.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,uBAAuB,EAAE,MAAoB,MAAM,CAAC;AAC7D,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAErE,8BAAsB,aAAa,CAAC,CAAC,SAAS,KAAK,CAAE,YAAW,UAAU,CAAC,CAAC,EAAE,OAAO,CAAC,uBAAuB,CAAC,CAAC;IAIjG,OAAO,CAAC,QAAQ,CAAC,MAAM;IAFnC,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC;gBAEF,MAAM,EAAE,kBAAkB;IAEvD;;;;OAIG;IACG,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC,EAAE,OAAO,CAAC,uBAAuB,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;CAsB1F"}
@@ -1 +1 @@
1
- {"version":3,"file":"base-nats-publisher.js","sourceRoot":"","sources":["../../src/events/base-nats-publisher.ts"],"names":[],"mappings":";;;AAAA,sDAAiE;AAIjE,MAAsB,aAAa;IAIjC,YAA6B,MAA0B;QAA1B,WAAM,GAAN,MAAM,CAAoB;IAAG,CAAC;IAE3D;;;;OAIG;IACH,KAAK,CAAC,OAAO,CAAC,IAAe,EAAE,OAA0C;QAExE,IAAI,CAAC;YAEF,MAAM,OAAO,GAAG;gBACd,EAAE,EAAO,IAAA,kBAAI,GAAE;gBACf,OAAO,EAAE,IAAI,CAAC,OAAO;gBACrB,IAAI;gBACJ,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;aACpC,CAAC;YAEF,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CACvB,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EACvB,OAAO,CACR,CAAC;QAEJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,2BAA2B,IAAI,CAAC,OAAO,IAAI,EAAE,KAAK,CAAC,CAAC;YAClE,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;CACF;AAjCD,sCAiCC"}
1
+ {"version":3,"file":"base-nats-publisher.js","sourceRoot":"","sources":["../../src/events/base-nats-publisher.ts"],"names":[],"mappings":";;;AAAA,sDAA6E;AAI7E,MAAsB,aAAa;IAIjC,YAA6B,MAA0B;QAA1B,WAAM,GAAN,MAAM,CAAoB;IAAG,CAAC;IAE3D;;;;OAIG;IACH,KAAK,CAAC,OAAO,CAAC,IAAe,EAAE,OAA0C;QAExE,IAAI,CAAC;YAEF,MAAM,OAAO,GAAG;gBACd,EAAE,EAAO,IAAA,kBAAI,GAAE;gBACf,OAAO,EAAE,IAAI,CAAC,OAAO;gBACrB,IAAI;gBACJ,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;aACpC,CAAC;YAEF,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CACvB,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EACvB,OAAO,CACR,CAAC;QAEJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,2BAA2B,IAAI,CAAC,OAAO,IAAI,EAAE,KAAK,CAAC,CAAC;YAClE,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;CACF;AAjCD,sCAiCC"}
@@ -1,5 +1,5 @@
1
- import { Event, MsgClientInterface } from './interfaces';
2
- export declare abstract class Publisher<T extends Event> {
1
+ import { Event, IPublisher, MsgClientInterface } from './interfaces';
2
+ export declare abstract class Publisher<T extends Event> implements IPublisher<T> {
3
3
  abstract subject: T['subject'];
4
4
  private readonly client;
5
5
  constructor(client: MsgClientInterface);
@@ -1 +1 @@
1
- {"version":3,"file":"base-publisher.d.ts","sourceRoot":"","sources":["../../src/events/base-publisher.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAEzD,8BAAsB,SAAS,CAAC,CAAC,SAAS,KAAK;IAE7C,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC;IAE/B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAqB;gBAEhC,MAAM,EAAE,kBAAkB;IAKtC;;;;OAIG;IACG,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;CAI9C"}
1
+ {"version":3,"file":"base-publisher.d.ts","sourceRoot":"","sources":["../../src/events/base-publisher.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAErE,8BAAsB,SAAS,CAAC,CAAC,SAAS,KAAK,CAAE,YAAW,UAAU,CAAC,CAAC,CAAC;IAEvE,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC;IAE/B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAqB;gBAEhC,MAAM,EAAE,kBAAkB;IAKtC;;;;OAIG;IACG,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;CAI9C"}
@@ -13,4 +13,8 @@ export interface Event {
13
13
  subject: Subjects;
14
14
  data: any;
15
15
  }
16
+ export interface IPublisher<T extends Event, O = undefined> {
17
+ subject: T['subject'];
18
+ publish(data: T['data'], options?: O): Promise<void>;
19
+ }
16
20
  //# sourceMappingURL=interfaces.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"interfaces.d.ts","sourceRoot":"","sources":["../../src/events/interfaces.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAEhD,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAM,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,QAAQ,KAAK,OAAO,CAAC,GAAG,CAAC,CAAA;IACnF,SAAS,EAAI,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,CAAC;IACrC,WAAW,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,CAAC;CACtC;AAED,MAAM,WAAW,eAAe;IAC9B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAK,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,KAAK;IACpB,OAAO,EAAE,QAAQ,CAAC;IAClB,IAAI,EAAK,GAAG,CAAC;CACd"}
1
+ {"version":3,"file":"interfaces.d.ts","sourceRoot":"","sources":["../../src/events/interfaces.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAEhD,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAM,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,QAAQ,KAAK,OAAO,CAAC,GAAG,CAAC,CAAA;IACnF,SAAS,EAAI,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,CAAC;IACrC,WAAW,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,CAAC;CACtC;AAED,MAAM,WAAW,eAAe;IAC9B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAK,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,KAAK;IACpB,OAAO,EAAE,QAAQ,CAAC;IAClB,IAAI,EAAK,GAAG,CAAC;CACd;AAED,MAAM,WAAW,UAAU,CAAC,CAAC,SAAS,KAAK,EAAE,CAAC,GAAG,SAAS;IACxD,OAAO,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC;IACtB,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACtD"}
@@ -12,11 +12,12 @@ export interface AssetItem extends BaseEntity {
12
12
  criticalityMin?: number;
13
13
  criticality?: number;
14
14
  confidentiality?: AssetConfidentiality;
15
- assets?: AssetItem[];
16
15
  vulns?: AssetVulnerability[];
17
16
  controls?: AssetControl[];
18
17
  locations?: BaseEntity[];
19
18
  processes?: BaseEntity[];
19
+ assets?: AssetItem[];
20
+ parent?: AssetItem;
20
21
  analysisTypes?: string[];
21
22
  choosableATS?: string[];
22
23
  }
@@ -1 +1 @@
1
- {"version":3,"file":"asset.interfaces.d.ts","sourceRoot":"","sources":["../../../src/events/types/asset.interfaces.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAC9D,OAAO,EAAE,cAAc,EAAE,MAAkB,qBAAqB,CAAC;AACjE,OAAO,EAAE,oBAAoB,EAAE,MAAY,eAAe,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAoB,sBAAsB,CAAC;AAClE,OAAO,EAAE,kBAAkB,EAAE,MAAc,4BAA4B,CAAC;AAExE,MAAM,WAAW,SAAU,SAAQ,UAAU;IAC3C,WAAW,CAAC,EAAI,MAAM,CAAC;IAEvB,IAAI,CAAC,EAAa,cAAc,CAAC;IACjC,MAAM,CAAC,EAAW,cAAc,CAAC;IACjC,QAAQ,CAAC,EAAS,cAAc,CAAC;IACjC,YAAY,CAAC,EAAK,cAAc,CAAC;IACjC,cAAc,CAAC,EAAG,MAAM,CAAC;IACzB,WAAW,CAAC,EAAM,MAAM,CAAC;IACzB,eAAe,CAAC,EAAE,oBAAoB,CAAC;IACvC,MAAM,CAAC,EAAW,SAAS,EAAE,CAAC;IAC9B,KAAK,CAAC,EAAY,kBAAkB,EAAE,CAAC;IACvC,QAAQ,CAAC,EAAS,YAAY,EAAE,CAAC;IAGjC,SAAS,CAAC,EAAQ,UAAU,EAAE,CAAC;IAC/B,SAAS,CAAC,EAAQ,UAAU,EAAE,CAAC;IAC/B,aAAa,CAAC,EAAI,MAAM,EAAE,CAAC;IAC3B,YAAY,CAAC,EAAK,MAAM,EAAE,CAAC;CAC5B;AAED,MAAM,WAAW,cAAe,SAAQ,cAAc;IACpD,IAAI,CAAC,EAAW,cAAc,CAAC;IAC/B,QAAQ,CAAC,EAAO,cAAc,CAAC;IAC/B,YAAY,CAAC,EAAG,cAAc,CAAC;IAC/B,KAAK,CAAC,EAAU,cAAc,EAAE,CAAC;IACjC,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;CAC1B"}
1
+ {"version":3,"file":"asset.interfaces.d.ts","sourceRoot":"","sources":["../../../src/events/types/asset.interfaces.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAC9D,OAAO,EAAE,cAAc,EAAE,MAAkB,qBAAqB,CAAC;AACjE,OAAO,EAAE,oBAAoB,EAAE,MAAY,eAAe,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAoB,sBAAsB,CAAC;AAClE,OAAO,EAAE,kBAAkB,EAAE,MAAc,4BAA4B,CAAC;AAExE,MAAM,WAAW,SAAU,SAAQ,UAAU;IAC3C,WAAW,CAAC,EAAM,MAAM,CAAC;IAEzB,IAAI,CAAC,EAAa,cAAc,CAAC;IACjC,MAAM,CAAC,EAAW,cAAc,CAAC;IACjC,QAAQ,CAAC,EAAS,cAAc,CAAC;IACjC,YAAY,CAAC,EAAK,cAAc,CAAC;IACjC,cAAc,CAAC,EAAG,MAAM,CAAC;IACzB,WAAW,CAAC,EAAM,MAAM,CAAC;IACzB,eAAe,CAAC,EAAE,oBAAoB,CAAC;IACvC,KAAK,CAAC,EAAY,kBAAkB,EAAE,CAAC;IACvC,QAAQ,CAAC,EAAS,YAAY,EAAE,CAAC;IACjC,SAAS,CAAC,EAAQ,UAAU,EAAE,CAAC;IAC/B,SAAS,CAAC,EAAQ,UAAU,EAAE,CAAC;IAC/B,MAAM,CAAC,EAAW,SAAS,EAAE,CAAC;IAC9B,MAAM,CAAC,EAAW,SAAS,CAAC;IAC5B,aAAa,CAAC,EAAI,MAAM,EAAE,CAAC;IAC3B,YAAY,CAAC,EAAK,MAAM,EAAE,CAAC;CAG5B;AAED,MAAM,WAAW,cAAe,SAAQ,cAAc;IACpD,IAAI,CAAC,EAAW,cAAc,CAAC;IAC/B,QAAQ,CAAC,EAAO,cAAc,CAAC;IAC/B,YAAY,CAAC,EAAG,cAAc,CAAC;IAC/B,KAAK,CAAC,EAAU,cAAc,EAAE,CAAC;IACjC,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;CAC1B"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nextage/era-lib",
3
- "version": "1.0.118",
3
+ "version": "1.0.119",
4
4
  "main": "./build/index.js",
5
5
  "types": "./build/index.d.ts",
6
6
  "files": [