@seidor-cloud-produtos/orbit-backend-lib 2.0.100 → 2.0.102

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.
@@ -1,8 +1,9 @@
1
1
  import { AuthorizerHeaders } from '../../infra/http/handle-authorizer-headers';
2
2
  import { Entity } from '../../domain/entities/entity';
3
- import ConsistencyEvent from '../../domain/events/consistency-event';
3
+ import ConsistencyEvent from '../../domain/events/consistency-event/consistency-event';
4
+ import { EventsName } from '../../domain/events/consistency-event/events-enum';
4
5
  export declare abstract class ConsistencyEventDispatcher {
5
- dispatch(entity: Entity<any>, authorizerHeaders: AuthorizerHeaders, eventName: string): Promise<void>;
6
- dispatchBatch(entities: Entity<any>[], authorizerHeaders: AuthorizerHeaders, eventName: string): Promise<void>;
6
+ dispatch(entity: Entity<any>, authorizerHeaders: AuthorizerHeaders, eventName: EventsName): Promise<void>;
7
+ dispatchBatch(entities: Entity<any>[], authorizerHeaders: AuthorizerHeaders, eventName: EventsName): Promise<void>;
7
8
  abstract publish(event: ConsistencyEvent): Promise<void>;
8
9
  }
@@ -2,7 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.ConsistencyEventDispatcher = void 0;
4
4
  const tslib_1 = require("tslib");
5
- const consistency_event_1 = tslib_1.__importDefault(require("../../domain/events/consistency-event"));
5
+ const consistency_event_1 = tslib_1.__importDefault(require("../../domain/events/consistency-event/consistency-event"));
6
6
  class ConsistencyEventDispatcher {
7
7
  async dispatch(entity, authorizerHeaders, eventName) {
8
8
  try {
@@ -0,0 +1,15 @@
1
+ import { AuthorizerHeaders } from '../../../infra/http/handle-authorizer-headers';
2
+ import { Entity } from '../../entities/entity';
3
+ import DomainEvent from '../domain-event';
4
+ import { EventsName } from './events-enum';
5
+ export interface ConsistencyEventMessage {
6
+ eventName: string;
7
+ origin: AuthorizerHeaders;
8
+ payload: Record<string, unknown>;
9
+ }
10
+ export default class ConsistencyEvent implements DomainEvent {
11
+ readonly eventDate: Date;
12
+ readonly name: string;
13
+ readonly input: ConsistencyEventMessage;
14
+ constructor(entity: Entity<any>, authorizerHeaders: AuthorizerHeaders, eventName: EventsName);
15
+ }
@@ -2,11 +2,11 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  class ConsistencyEvent {
4
4
  eventDate = new Date();
5
- name;
5
+ name = '';
6
6
  input;
7
7
  constructor(entity, authorizerHeaders, eventName) {
8
- this.name = eventName;
9
8
  this.input = {
9
+ eventName,
10
10
  origin: authorizerHeaders,
11
11
  payload: entity.toEventDispatchObject(),
12
12
  };
@@ -0,0 +1,3 @@
1
+ export declare enum EventsName {
2
+ USER_TEMPORARY_PASSWORD_GENERATED = "user-temporary-password-generated"
3
+ }
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.EventsName = void 0;
4
+ var EventsName;
5
+ (function (EventsName) {
6
+ EventsName["USER_TEMPORARY_PASSWORD_GENERATED"] = "user-temporary-password-generated";
7
+ })(EventsName || (exports.EventsName = EventsName = {}));
@@ -1,6 +1,6 @@
1
1
  import { ConsistencyEventDispatcher } from '../../application/consistency-event-dispatcher/consistency-event-dispatcher';
2
2
  import AmqpQueue from '../queue/rabbitmq/amqp-lib';
3
- import ConsistencyEvent from '../../domain/events/consistency-event';
3
+ import ConsistencyEvent from '../../domain/events/consistency-event/consistency-event';
4
4
  export declare class AmqpConsistencyEventDispatcher extends ConsistencyEventDispatcher {
5
5
  protected amqp: AmqpQueue;
6
6
  constructor(amqp: AmqpQueue);
@@ -2,6 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.AmqpConsistencyEventDispatcher = void 0;
4
4
  const consistency_event_dispatcher_1 = require("../../application/consistency-event-dispatcher/consistency-event-dispatcher");
5
+ const exchanges_enum_1 = require("./exchanges-enum");
5
6
  class AmqpConsistencyEventDispatcher extends consistency_event_dispatcher_1.ConsistencyEventDispatcher {
6
7
  amqp;
7
8
  constructor(amqp) {
@@ -9,7 +10,9 @@ class AmqpConsistencyEventDispatcher extends consistency_event_dispatcher_1.Cons
9
10
  this.amqp = amqp;
10
11
  }
11
12
  async publish(event) {
12
- await this.amqp.publish(event.name, event, { storeMessageOnError: false });
13
+ await this.amqp.publish(`${exchanges_enum_1.PREFIX}.${event.name}.${exchanges_enum_1.TYPE}`, event, {
14
+ storeMessageOnError: false,
15
+ });
13
16
  }
14
17
  }
15
18
  exports.AmqpConsistencyEventDispatcher = AmqpConsistencyEventDispatcher;
@@ -0,0 +1,5 @@
1
+ export declare const PREFIX = "consistency";
2
+ export declare const TYPE = "fanout";
3
+ export declare enum ExchangesEnum {
4
+ CONSISTENCY_USER_TEMPORARY_PASSWORD_GENERATED = "consistency.user-temporary-password-generated.fanout"
5
+ }
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ExchangesEnum = exports.TYPE = exports.PREFIX = void 0;
4
+ const events_enum_1 = require("../../domain/events/consistency-event/events-enum");
5
+ exports.PREFIX = 'consistency';
6
+ exports.TYPE = 'fanout';
7
+ var ExchangesEnum;
8
+ (function (ExchangesEnum) {
9
+ ExchangesEnum["CONSISTENCY_USER_TEMPORARY_PASSWORD_GENERATED"] = "consistency.user-temporary-password-generated.fanout";
10
+ })(ExchangesEnum || (exports.ExchangesEnum = ExchangesEnum = {}));
@@ -1,5 +1,5 @@
1
1
  import { ConsistencyEventDispatcher } from '../../application/consistency-event-dispatcher/consistency-event-dispatcher';
2
- import ConsistencyEvent from '../../domain/events/consistency-event';
2
+ import ConsistencyEvent from '../../domain/events/consistency-event/consistency-event';
3
3
  export declare class InMemoryConsistencyEventDispatcher extends ConsistencyEventDispatcher {
4
4
  protected events: ConsistencyEvent[];
5
5
  constructor(events?: ConsistencyEvent[]);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@seidor-cloud-produtos/orbit-backend-lib",
3
- "version": "2.0.100",
3
+ "version": "2.0.102",
4
4
  "description": "Internal lib for backend components",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -1,13 +0,0 @@
1
- import { AuthorizerHeaders } from '../../infra/http/handle-authorizer-headers';
2
- import { Entity } from '../entities/entity';
3
- import DomainEvent from './domain-event';
4
- export interface ConsistencyEventMessage {
5
- origin: AuthorizerHeaders;
6
- payload: Record<string, unknown>;
7
- }
8
- export default class ConsistencyEvent implements DomainEvent {
9
- readonly eventDate: Date;
10
- readonly name: string;
11
- readonly input: Record<string, unknown>;
12
- constructor(entity: Entity<any>, authorizerHeaders: AuthorizerHeaders, eventName: string);
13
- }