@golemio/core 1.2.16-dev.601731327 → 1.2.16

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 (41) hide show
  1. package/dist/integration-engine/connectors/AMQPConnector.d.ts +1 -0
  2. package/dist/integration-engine/connectors/AMQPConnector.js +13 -0
  3. package/dist/integration-engine/connectors/AMQPConnector.js.map +1 -1
  4. package/dist/integration-engine/queueprocessors/QueueManager.d.ts +5 -0
  5. package/dist/integration-engine/queueprocessors/QueueManager.js +13 -0
  6. package/dist/integration-engine/queueprocessors/QueueManager.js.map +1 -0
  7. package/dist/integration-engine/queueprocessors/QueueProcessor.d.ts +5 -5
  8. package/dist/integration-engine/queueprocessors/QueueProcessor.js +15 -6
  9. package/dist/integration-engine/queueprocessors/QueueProcessor.js.map +1 -1
  10. package/dist/integration-engine/queueprocessors/abstract.d.ts +13 -7
  11. package/dist/integration-engine/queueprocessors/index.d.ts +1 -0
  12. package/dist/integration-engine/queueprocessors/index.js +1 -0
  13. package/dist/integration-engine/queueprocessors/index.js.map +1 -1
  14. package/dist/integration-engine/workers/AbstractEmptyTask.d.ts +5 -0
  15. package/dist/integration-engine/workers/AbstractEmptyTask.js +12 -0
  16. package/dist/integration-engine/workers/AbstractEmptyTask.js.map +1 -0
  17. package/dist/integration-engine/workers/AbstractTask.d.ts +13 -0
  18. package/dist/integration-engine/workers/AbstractTask.js +63 -0
  19. package/dist/integration-engine/workers/AbstractTask.js.map +1 -0
  20. package/dist/integration-engine/workers/AbstractWorker.d.ts +13 -0
  21. package/dist/integration-engine/workers/AbstractWorker.js +38 -0
  22. package/dist/integration-engine/workers/AbstractWorker.js.map +1 -0
  23. package/dist/integration-engine/workers/BaseWorker.d.ts +3 -1
  24. package/dist/integration-engine/workers/BaseWorker.js +4 -19
  25. package/dist/integration-engine/workers/BaseWorker.js.map +1 -1
  26. package/dist/integration-engine/workers/index.d.ts +3 -0
  27. package/dist/integration-engine/workers/index.js +3 -0
  28. package/dist/integration-engine/workers/index.js.map +1 -1
  29. package/dist/integration-engine/workers/interfaces/ITask.d.ts +7 -0
  30. package/dist/integration-engine/workers/interfaces/ITask.js +3 -0
  31. package/dist/integration-engine/workers/interfaces/ITask.js.map +1 -0
  32. package/dist/integration-engine/workers/interfaces/index.d.ts +1 -0
  33. package/dist/integration-engine/workers/interfaces/index.js +18 -0
  34. package/dist/integration-engine/workers/interfaces/index.js.map +1 -0
  35. package/dist/shared/class-transformer.d.ts +2 -0
  36. package/dist/shared/class-transformer.js +27 -0
  37. package/dist/shared/class-transformer.js.map +1 -0
  38. package/dist/shared/class-validator.d.ts +2 -0
  39. package/dist/shared/class-validator.js +27 -0
  40. package/dist/shared/class-validator.js.map +1 -0
  41. package/package.json +126 -124
@@ -6,6 +6,7 @@ declare class MyAMQP {
6
6
  constructor();
7
7
  connect: () => Promise<amqplib.Channel>;
8
8
  getChannel: () => amqplib.Channel;
9
+ sendMessage: (key: string, msg: string, options?: amqplib.Options.Publish) => Promise<boolean>;
9
10
  private assertDeadQueue;
10
11
  isConnected: () => Promise<boolean>;
11
12
  disconnect: () => Promise<void>;
@@ -69,6 +69,19 @@ class MyAMQP {
69
69
  }
70
70
  return this.channel;
71
71
  };
72
+ this.sendMessage = (key, msg, options = {}) => __awaiter(this, void 0, void 0, function* () {
73
+ try {
74
+ const channel = AMQPConnector.getChannel();
75
+ yield channel.assertExchange(config_1.config.RABBIT_EXCHANGE_NAME, "topic", {
76
+ durable: false,
77
+ alternateExchange: AlternateExchangeCreator_1.default.getAltExchangeName(config_1.config.RABBIT_EXCHANGE_NAME),
78
+ });
79
+ return channel.publish(config_1.config.RABBIT_EXCHANGE_NAME, key, Buffer.from(msg), options);
80
+ }
81
+ catch (err) {
82
+ throw new errors_1.CustomError("Sending the message to exchange failed.", true, this.constructor.name, 1003, err);
83
+ }
84
+ });
72
85
  this.assertDeadQueue = (channel) => __awaiter(this, void 0, void 0, function* () {
73
86
  if (!config_1.config.RABBIT_EXCHANGE_NAME) {
74
87
  throw new errors_1.CustomError("[AMQP] The ENV variable RABBIT_EXCHANGE_NAME cannot be undefined.", true, this.constructor.name, 6003);
@@ -1 +1 @@
1
- {"version":3,"file":"AMQPConnector.js","sourceRoot":"","sources":["../../../src/integration-engine/connectors/AMQPConnector.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AMQPConnector.js","sourceRoot":"","sources":["../../../src/integration-engine/connectors/AMQPConnector.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ import { Options } from "amqplib";
2
+ export declare class QueueManager {
3
+ static sendMessageToExchange(queuePrefix: string, queueName: string, data: Record<string, any>, options?: Options.Publish): Promise<boolean>;
4
+ private static sendMessage;
5
+ }
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.QueueManager = void 0;
4
+ const connectors_1 = require("../connectors");
5
+ const sentry_transactions_1 = require("../../monitoring/sentry/sentry-transactions");
6
+ class QueueManager {
7
+ static sendMessageToExchange(queuePrefix, queueName, data, options = {}) {
8
+ return QueueManager.sendMessage(`workers.${queuePrefix}.${queueName}`, JSON.stringify(data), options);
9
+ }
10
+ }
11
+ exports.QueueManager = QueueManager;
12
+ QueueManager.sendMessage = (0, sentry_transactions_1.withSentryProducerTrace)(connectors_1.AMQPConnector.sendMessage);
13
+ //# sourceMappingURL=QueueManager.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"QueueManager.js","sourceRoot":"","sources":["../../../src/integration-engine/queueprocessors/QueueManager.ts"],"names":[],"mappings":";;;AAAA,8CAA+C;AAC/C,qFAAiF;AAGjF,MAAa,YAAY;IACd,MAAM,CAAC,qBAAqB,CAC/B,WAAmB,EACnB,SAAiB,EACjB,IAAyB,EACzB,UAA2B,EAAE;QAE7B,OAAO,YAAY,CAAC,WAAW,CAAC,WAAW,WAAW,IAAI,SAAS,EAAE,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC,CAAC;IAC1G,CAAC;;AARL,oCAWC;AADkB,wBAAW,GAAG,IAAA,6CAAuB,EAAC,0BAAa,CAAC,WAAW,CAAC,CAAC"}
@@ -1,11 +1,11 @@
1
1
  import { IQueueDefinition } from "./";
2
- import amqplib from "amqplib";
2
+ import { Options, Channel, ConsumeMessage } from "amqplib";
3
3
  export declare class QueueProcessor {
4
- protected channel: amqplib.Channel;
4
+ protected channel: Channel;
5
5
  private definition;
6
6
  private consumers;
7
7
  private isGracefulShutdown;
8
- constructor(channel: amqplib.Channel, definition: IQueueDefinition);
8
+ constructor(channel: Channel, definition: IQueueDefinition);
9
9
  /**
10
10
  * Registering all queues from definition
11
11
  */
@@ -17,6 +17,6 @@ export declare class QueueProcessor {
17
17
  /**
18
18
  * Default queue processor
19
19
  */
20
- protected defaultProcessor: (msg: any, name: string, worker: () => Promise<void>) => Promise<void>;
21
- protected registerQueue: (name: string, key: string, processor: (msg: any) => any, queueOptions?: object) => Promise<any>;
20
+ protected defaultProcessor: (msg: any, name: string, worker: () => Promise<any>) => Promise<void>;
21
+ protected registerQueue: (name: string, key: string, processor: (msg: ConsumeMessage | null) => any, queueOptions?: Options.AssertQueue) => Promise<any>;
22
22
  }
@@ -31,13 +31,22 @@ class QueueProcessor {
31
31
  ? q.customProcessFunction // custom processor from definition
32
32
  : (msg) => __awaiter(this, void 0, void 0, function* () {
33
33
  // default processor
34
- yield this.defaultProcessor(msg, q.name, () => __awaiter(this, void 0, void 0, function* () {
35
- if (!q.worker || !q.workerMethod) {
36
- throw new errors_1.CustomError("[AMQP QueueProcessor] Worker and worker method must be defined.", false, this.constructor.name, 5005);
34
+ yield this.defaultProcessor(msg, q.name, () => {
35
+ if (q.validateAndExecute) {
36
+ return (0, sentry_transactions_1.withSentryConsumerTrace)(q.validateAndExecute)(msg);
37
37
  }
38
- const w = new q.worker();
39
- yield (0, sentry_transactions_1.withSentryConsumerTrace)(w[q.workerMethod].bind(w))(msg);
40
- }));
38
+ if (q.worker && q.workerMethod) {
39
+ const worker = new q.worker();
40
+ const workerMethod = worker[q.workerMethod];
41
+ if (typeof workerMethod !== "function") {
42
+ throw new errors_1.CustomError(
43
+ // eslint-disable-next-line max-len
44
+ `[AMQP QueueProcessor] Worker method ${q.workerMethod} does not exist on worker ${worker.constructor.name}`, false, this.constructor.name);
45
+ }
46
+ return (0, sentry_transactions_1.withSentryConsumerTrace)(workerMethod.bind(worker))(msg);
47
+ }
48
+ throw new errors_1.CustomError("[AMQP QueueProcessor] validateAndExecute method or worker and its method must be defined", false, this.constructor.name);
49
+ });
41
50
  }), q.options // queue options
42
51
  );
43
52
  });
@@ -1 +1 @@
1
- {"version":3,"file":"QueueProcessor.js","sourceRoot":"","sources":["../../../src/integration-engine/queueprocessors/QueueProcessor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"QueueProcessor.js","sourceRoot":"","sources":["../../../src/integration-engine/queueprocessors/QueueProcessor.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,uHAA0F;AAC1F,sCAAoC;AACpC,wCAAuF;AAEvF,qFAAiF;AACjF,4CAA8C;AAG9C,MAAa,cAAc;IAMvB,YAAY,OAAgB,EAAE,UAA4B;QAO1D;;WAEG;QACI,mBAAc,GAAG,GAAwB,EAAE;YAC9C,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;gBAC9C,OAAO,IAAI,CAAC,aAAa,CACrB,IAAI,CAAC,UAAU,CAAC,WAAW,GAAG,GAAG,GAAG,CAAC,CAAC,IAAI,EAAE,aAAa;gBACzD,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,WAAW,GAAG,GAAG,GAAG,CAAC,CAAC,IAAI,EAAE,qBAAqB;gBACxE,CAAC,CAAC,qBAAqB,CAAC,kBAAkB;oBACtC,CAAC,CAAC,CAAC,CAAC,qBAAqB,CAAC,mCAAmC;oBAC7D,CAAC,CAAC,CAAO,GAAG,EAAE,EAAE;wBACV,oBAAoB;wBACpB,MAAM,IAAI,CAAC,gBAAgB,CAAC,GAAG,EAAE,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE;4BAC1C,IAAI,CAAC,CAAC,kBAAkB,EAAE;gCACtB,OAAO,IAAA,6CAAuB,EAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,GAAG,CAAC,CAAC;6BAC7D;4BAED,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,YAAY,EAAE;gCAC5B,MAAM,MAAM,GAAG,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC;gCAC9B,MAAM,YAAY,GAAI,MAA8B,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC;gCAErE,IAAI,OAAO,YAAY,KAAK,UAAU,EAAE;oCACpC,MAAM,IAAI,oBAAW;oCACjB,mCAAmC;oCACnC,uCAAuC,CAAC,CAAC,YAAY,6BAA6B,MAAM,CAAC,WAAW,CAAC,IAAI,EAAE,EAC3G,KAAK,EACL,IAAI,CAAC,WAAW,CAAC,IAAI,CACxB,CAAC;iCACL;gCAED,OAAO,IAAA,6CAAuB,EAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;6BAClE;4BAED,MAAM,IAAI,oBAAW,CACjB,0FAA0F,EAC1F,KAAK,EACL,IAAI,CAAC,WAAW,CAAC,IAAI,CACxB,CAAC;wBACN,CAAC,CAAC,CAAC;oBACP,CAAC,CAAA,EACP,CAAC,CAAC,OAAO,CAAC,gBAAgB;iBAC7B,CAAC;YACN,CAAC,CAAC,CAAC;YACH,MAAM,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAChC,CAAC,CAAA,CAAC;QAEF;;WAEG;QACI,oBAAe,GAAG,GAAwB,EAAE;YAC/C,aAAG,CAAC,IAAI,CAAC,gFAAgF,CAAC,CAAC;YAC3F,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC;YAE/B,iCAAiC;YACjC,KAAK,MAAM,WAAW,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,EAAE;gBAC/C,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;aAC1C;QACL,CAAC,CAAA,CAAC;QAEF;;WAEG;QACO,qBAAgB,GAAG,CAAO,GAAQ,EAAE,IAAY,EAAE,MAA0B,EAAiB,EAAE;YACrG,IAAI;gBACA,aAAG,CAAC,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,WAAW,GAAG,GAAG,GAAG,IAAI,GAAG,uBAAuB,CAAC,CAAC;gBAEzF,qDAAqD;gBACrD,IAAI,IAAI,CAAC,kBAAkB,EAAE;oBACzB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;oBACpC,aAAG,CAAC,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,WAAW,GAAG,GAAG,GAAG,IAAI,GAAG,YAAY,CAAC,CAAC;oBAC9E,OAAO;iBACV;gBAED,MAAM,MAAM,EAAE,CAAC;gBAEf,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;gBACtB,aAAG,CAAC,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,WAAW,GAAG,GAAG,GAAG,IAAI,GAAG,QAAQ,CAAC,CAAC;aAC7E;YAAC,OAAO,GAAG,EAAE;gBACV,gDAAgD;gBAChD,MAAM,SAAS,GAA+B,iCAAuB,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;gBAClF,6EAA6E;gBAC7E,IAAI,SAAS,CAAC,GAAG,EAAE;oBACf,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;oBACtB,8CAA8C;iBACjD;qBAAM;oBACH,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;iBACxC;aACJ;QACL,CAAC,CAAA,CAAC;QAEQ,kBAAa,GAAG,CACtB,IAAY,EACZ,GAAW,EACX,SAA8C,EAC9C,eAAoC,EAAE,EAC1B,EAAE;YACd,IAAI,CAAC,eAAM,CAAC,oBAAoB,EAAE;gBAC9B,MAAM,IAAI,oBAAW,CACjB,mEAAmE,EACnE,IAAI,EACJ,IAAI,CAAC,WAAW,CAAC,IAAI,EACrB,IAAI,CACP,CAAC;aACL;YAED,gCAAgC;YAChC,MAAM,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,eAAM,CAAC,oBAAoB,EAAE,OAAO,EAAE;gBACpE,OAAO,EAAE,KAAK;gBACd,iBAAiB,EAAE,kCAAwB,CAAC,kBAAkB,CAAC,eAAM,CAAC,oBAAqB,CAAC;aAC/F,CAAC,CAAC;YACH,eAAe;YACf,MAAM,CAAC,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,kCAAO,YAAY,GAAK,EAAE,OAAO,EAAE,IAAI,EAAE,EAAG,CAAC;YAC1F,yBAAyB;YACzB,MAAM,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,EAAE,eAAM,CAAC,oBAAoB,EAAE,GAAG,CAAC,CAAC;YACxE,aAAG,CAAC,OAAO,CAAC,8BAA8B,GAAG,IAAI,GAAG,SAAS,GAAG,GAAG,GAAG,GAAG,CAAC,CAAC;YAC3E,uCAAuC;YACvC,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,SAAS,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;YACtF,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QACpC,CAAC,CAAA,CAAC;QA5HE,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,SAAS,GAAG,IAAI,GAAG,EAAE,CAAC;QAC3B,IAAI,CAAC,kBAAkB,GAAG,KAAK,CAAC;IACpC,CAAC;CAyHJ;AApID,wCAoIC"}
@@ -1,11 +1,17 @@
1
+ import { Options, ConsumeMessage, Message } from "amqplib";
2
+ import { BaseWorker } from "../workers";
1
3
  export interface IQueueDefinition {
2
4
  name: string;
3
5
  queuePrefix: string;
4
- queues: Array<{
5
- customProcessFunction?: (msg: any) => Promise<void>;
6
- name: string;
7
- options: any;
8
- worker: any | undefined;
9
- workerMethod: string | undefined;
10
- }>;
6
+ queues: IQueueTask[];
7
+ }
8
+ export interface IQueueTask {
9
+ name: string;
10
+ options?: Options.AssertQueue;
11
+ customProcessFunction?: (msg: ConsumeMessage | null) => any;
12
+ validateAndExecute?: (msg: Message | null) => any;
13
+ /** @deprecated Define validateAndExecute instead */
14
+ worker?: new () => BaseWorker;
15
+ /** @deprecated Define validateAndExecute instead */
16
+ workerMethod?: string;
11
17
  }
@@ -1,3 +1,4 @@
1
1
  export * from "./abstract";
2
2
  export * from "./helpers";
3
3
  export * from "./QueueProcessor";
4
+ export * from "./QueueManager";
@@ -18,4 +18,5 @@ Object.defineProperty(exports, "__esModule", { value: true });
18
18
  __exportStar(require("./abstract"), exports);
19
19
  __exportStar(require("./helpers"), exports);
20
20
  __exportStar(require("./QueueProcessor"), exports);
21
+ __exportStar(require("./QueueManager"), exports);
21
22
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/integration-engine/queueprocessors/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,iCAAiC;AACjC,6CAA2B;AAC3B,4CAA0B;AAC1B,mDAAiC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/integration-engine/queueprocessors/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,iCAAiC;AACjC,6CAA2B;AAC3B,4CAA0B;AAC1B,mDAAiC;AACjC,iDAA+B"}
@@ -0,0 +1,5 @@
1
+ import { AbstractTask } from "./AbstractTask";
2
+ export declare abstract class AbstractEmptyTask extends AbstractTask<object> {
3
+ protected schema?: undefined;
4
+ constructor(queuePrefix: string);
5
+ }
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.AbstractEmptyTask = void 0;
4
+ const AbstractTask_1 = require("./AbstractTask");
5
+ class AbstractEmptyTask extends AbstractTask_1.AbstractTask {
6
+ constructor(queuePrefix) {
7
+ super(queuePrefix);
8
+ this.schema = undefined;
9
+ }
10
+ }
11
+ exports.AbstractEmptyTask = AbstractEmptyTask;
12
+ //# sourceMappingURL=AbstractEmptyTask.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AbstractEmptyTask.js","sourceRoot":"","sources":["../../../src/integration-engine/workers/AbstractEmptyTask.ts"],"names":[],"mappings":";;;AAAA,iDAA8C;AAE9C,MAAsB,iBAAkB,SAAQ,2BAAoB;IAGhE,YAAY,WAAmB;QAC3B,KAAK,CAAC,WAAW,CAAC,CAAC;QAHb,WAAM,GAAI,SAAS,CAAC;IAI9B,CAAC;CACJ;AAND,8CAMC"}
@@ -0,0 +1,13 @@
1
+ import { Message } from "amqplib";
2
+ import { ClassConstructor } from "class-transformer";
3
+ import { ITask } from "./interfaces";
4
+ export declare abstract class AbstractTask<TRawData extends object> implements ITask {
5
+ abstract queueName: string;
6
+ queueTtl?: number;
7
+ queuePrefix: string;
8
+ protected abstract schema?: ClassConstructor<TRawData> | undefined;
9
+ constructor(queuePrefix: string);
10
+ validateAndExecute(msg: Message | null): Promise<void>;
11
+ protected abstract execute(data: TRawData): void | Promise<void>;
12
+ private validate;
13
+ }
@@ -0,0 +1,63 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.AbstractTask = void 0;
13
+ const class_transformer_1 = require("class-transformer");
14
+ const class_validator_1 = require("class-validator");
15
+ const errors_1 = require("@golemio/errors");
16
+ const helpers_1 = require("../helpers");
17
+ class AbstractTask {
18
+ constructor(queuePrefix) {
19
+ this.queuePrefix = queuePrefix;
20
+ }
21
+ validateAndExecute(msg) {
22
+ var _a;
23
+ return __awaiter(this, void 0, void 0, function* () {
24
+ if (!this.schema) {
25
+ return this.execute({});
26
+ }
27
+ let msgContent = "";
28
+ let data;
29
+ try {
30
+ msgContent = (_a = msg === null || msg === void 0 ? void 0 : msg.content.toString()) !== null && _a !== void 0 ? _a : "";
31
+ data = (0, class_transformer_1.plainToInstance)(this.schema, JSON.parse(msgContent));
32
+ }
33
+ catch (err) {
34
+ const exception = new errors_1.CustomError(`[${this.constructor.name}] Message parsing failed: ${`'${msgContent.substring(0, 2000)}'`}`, true, this.constructor.name, undefined, err);
35
+ helpers_1.log.error(exception);
36
+ throw exception;
37
+ }
38
+ yield this.validate(data);
39
+ return this.execute(data);
40
+ });
41
+ }
42
+ validate(data) {
43
+ return __awaiter(this, void 0, void 0, function* () {
44
+ let errors = [];
45
+ try {
46
+ errors = yield (0, class_validator_1.validate)(data);
47
+ }
48
+ catch (err) {
49
+ const exception = new errors_1.CustomError(`[${this.constructor.name}] Message validation failed: ${err.message}`, true, this.constructor.name, undefined, err);
50
+ helpers_1.log.error(exception);
51
+ throw exception;
52
+ }
53
+ if (errors.length > 0) {
54
+ const constraints = errors.flatMap(({ constraints }) => (constraints ? Object.values(constraints) : []));
55
+ const exception = new errors_1.CustomError(`[${this.constructor.name}] Message validation failed: [${constraints.join(", ")}]`, true, this.constructor.name);
56
+ helpers_1.log.error(exception);
57
+ throw exception;
58
+ }
59
+ });
60
+ }
61
+ }
62
+ exports.AbstractTask = AbstractTask;
63
+ //# sourceMappingURL=AbstractTask.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AbstractTask.js","sourceRoot":"","sources":["../../../src/integration-engine/workers/AbstractTask.ts"],"names":[],"mappings":";;;;;;;;;;;;AACA,yDAAsE;AACtE,qDAA4D;AAC5D,4CAA8C;AAC9C,wCAAkC;AAGlC,MAAsB,YAAY;IAM9B,YAAY,WAAmB;QAC3B,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;IACnC,CAAC;IAEY,kBAAkB,CAAC,GAAmB;;;YAC/C,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE;gBACd,OAAO,IAAI,CAAC,OAAO,CAAC,EAAc,CAAC,CAAC;aACvC;YAED,IAAI,UAAU,GAAG,EAAE,CAAC;YACpB,IAAI,IAAc,CAAC;YAEnB,IAAI;gBACA,UAAU,GAAG,MAAA,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,OAAO,CAAC,QAAQ,EAAE,mCAAI,EAAE,CAAC;gBAC3C,IAAI,GAAG,IAAA,mCAAe,EAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC;aAC/D;YAAC,OAAO,GAAG,EAAE;gBACV,MAAM,SAAS,GAAG,IAAI,oBAAW,CAC7B,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI,6BAA6B,IAAI,UAAU,CAAC,SAAS,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,EAAE,EAC5F,IAAI,EACJ,IAAI,CAAC,WAAW,CAAC,IAAI,EACrB,SAAS,EACT,GAAG,CACN,CAAC;gBAEF,aAAG,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;gBACrB,MAAM,SAAS,CAAC;aACnB;YAED,MAAM,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YAC1B,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;;KAC7B;IAIa,QAAQ,CAAC,IAAc;;YACjC,IAAI,MAAM,GAAsB,EAAE,CAAC;YACnC,IAAI;gBACA,MAAM,GAAG,MAAM,IAAA,0BAAQ,EAAC,IAAI,CAAC,CAAC;aACjC;YAAC,OAAO,GAAG,EAAE;gBACV,MAAM,SAAS,GAAG,IAAI,oBAAW,CAC7B,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI,gCAAgC,GAAG,CAAC,OAAO,EAAE,EACtE,IAAI,EACJ,IAAI,CAAC,WAAW,CAAC,IAAI,EACrB,SAAS,EACT,GAAG,CACN,CAAC;gBAEF,aAAG,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;gBACrB,MAAM,SAAS,CAAC;aACnB;YAED,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE;gBACnB,MAAM,WAAW,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;gBACzG,MAAM,SAAS,GAAG,IAAI,oBAAW,CAC7B,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI,iCAAiC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EACnF,IAAI,EACJ,IAAI,CAAC,WAAW,CAAC,IAAI,CACxB,CAAC;gBAEF,aAAG,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;gBACrB,MAAM,SAAS,CAAC;aACnB;QACL,CAAC;KAAA;CACJ;AArED,oCAqEC"}
@@ -0,0 +1,13 @@
1
+ import { IQueueDefinition } from "../queueprocessors";
2
+ import { AbstractTask } from "./AbstractTask";
3
+ export declare abstract class AbstractWorker {
4
+ protected abstract readonly name: string;
5
+ private queues;
6
+ registerTask(task: AbstractTask<any>): void;
7
+ /**
8
+ * Generate queue definition from registed tasks
9
+ */
10
+ getQueueDefinition(): IQueueDefinition;
11
+ getQueuePrefix(): string;
12
+ private getQueueTask;
13
+ }
@@ -0,0 +1,38 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.AbstractWorker = void 0;
4
+ const config_1 = require("../config");
5
+ class AbstractWorker {
6
+ constructor() {
7
+ this.queues = [];
8
+ }
9
+ registerTask(task) {
10
+ this.queues.push(this.getQueueTask(task));
11
+ }
12
+ /**
13
+ * Generate queue definition from registed tasks
14
+ */
15
+ getQueueDefinition() {
16
+ return {
17
+ name: this.name,
18
+ queuePrefix: this.getQueuePrefix(),
19
+ queues: this.queues,
20
+ };
21
+ }
22
+ getQueuePrefix() {
23
+ return config_1.config.RABBIT_EXCHANGE_NAME + "." + this.name.toLowerCase();
24
+ }
25
+ getQueueTask(task) {
26
+ return {
27
+ name: task.queueName,
28
+ options: {
29
+ deadLetterExchange: config_1.config.RABBIT_EXCHANGE_NAME,
30
+ deadLetterRoutingKey: "dead",
31
+ messageTtl: task.queueTtl,
32
+ },
33
+ validateAndExecute: task.validateAndExecute.bind(task),
34
+ };
35
+ }
36
+ }
37
+ exports.AbstractWorker = AbstractWorker;
38
+ //# sourceMappingURL=AbstractWorker.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AbstractWorker.js","sourceRoot":"","sources":["../../../src/integration-engine/workers/AbstractWorker.ts"],"names":[],"mappings":";;;AAAA,sCAAoC;AAKpC,MAAsB,cAAc;IAApC;QAEY,WAAM,GAAiB,EAAE,CAAC;IAgCtC,CAAC;IA9BU,YAAY,CAAC,IAAuB;QACvC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC;IAC9C,CAAC;IAED;;OAEG;IACI,kBAAkB;QACrB,OAAO;YACH,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,WAAW,EAAE,IAAI,CAAC,cAAc,EAAE;YAClC,MAAM,EAAE,IAAI,CAAC,MAAM;SACtB,CAAC;IACN,CAAC;IAEM,cAAc;QACjB,OAAO,eAAM,CAAC,oBAAoB,GAAG,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;IACvE,CAAC;IAEO,YAAY,CAAC,IAAW;QAC5B,OAAO;YACH,IAAI,EAAE,IAAI,CAAC,SAAS;YACpB,OAAO,EAAE;gBACL,kBAAkB,EAAE,eAAM,CAAC,oBAAoB;gBAC/C,oBAAoB,EAAE,MAAM;gBAC5B,UAAU,EAAE,IAAI,CAAC,QAAQ;aAC5B;YACD,kBAAkB,EAAE,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC;SACzD,CAAC;IACN,CAAC;CACJ;AAlCD,wCAkCC"}
@@ -1,6 +1,8 @@
1
1
  import { DataSourceStream } from "../datasources/DataSourceStream";
2
+ /**
3
+ * @deprecated Use AbstractWorker instead
4
+ */
2
5
  export declare class BaseWorker {
3
- private sendMessage;
4
6
  protected sendMessageToExchange: (key: string, msg: string, options?: Record<string, any> | undefined) => Promise<boolean>;
5
7
  protected processDataStream: (dataSourceStream: Promise<DataSourceStream>, onDataFunction: (data: any) => Promise<void>) => Promise<void>;
6
8
  }
@@ -8,32 +8,17 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
8
8
  step((generator = generator.apply(thisArg, _arguments || [])).next());
9
9
  });
10
10
  };
11
- var __importDefault = (this && this.__importDefault) || function (mod) {
12
- return (mod && mod.__esModule) ? mod : { "default": mod };
13
- };
14
11
  Object.defineProperty(exports, "__esModule", { value: true });
15
12
  exports.BaseWorker = void 0;
16
- const AlternateExchangeCreator_1 = __importDefault(require("../../helpers/data-access/amqp/AlternateExchangeCreator"));
17
- const config_1 = require("../config");
18
13
  const connectors_1 = require("../connectors");
19
14
  const sentry_transactions_1 = require("../../monitoring/sentry/sentry-transactions");
20
15
  const errors_1 = require("@golemio/errors");
16
+ /**
17
+ * @deprecated Use AbstractWorker instead
18
+ */
21
19
  class BaseWorker {
22
20
  constructor() {
23
- this.sendMessage = (key, msg, options = {}) => __awaiter(this, void 0, void 0, function* () {
24
- try {
25
- const channel = connectors_1.AMQPConnector.getChannel();
26
- yield channel.assertExchange(config_1.config.RABBIT_EXCHANGE_NAME, "topic", {
27
- durable: false,
28
- alternateExchange: AlternateExchangeCreator_1.default.getAltExchangeName(config_1.config.RABBIT_EXCHANGE_NAME),
29
- });
30
- return channel.publish(config_1.config.RABBIT_EXCHANGE_NAME, key, Buffer.from(msg), options);
31
- }
32
- catch (err) {
33
- throw new errors_1.CustomError("Sending the message to exchange failed.", true, this.constructor.name, 1003, err);
34
- }
35
- });
36
- this.sendMessageToExchange = (0, sentry_transactions_1.withSentryProducerTrace)(this.sendMessage);
21
+ this.sendMessageToExchange = (0, sentry_transactions_1.withSentryProducerTrace)(connectors_1.AMQPConnector.sendMessage);
37
22
  this.processDataStream = (dataSourceStream, onDataFunction) => __awaiter(this, void 0, void 0, function* () {
38
23
  let dataStream;
39
24
  try {
@@ -1 +1 @@
1
- {"version":3,"file":"BaseWorker.js","sourceRoot":"","sources":["../../../src/integration-engine/workers/BaseWorker.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,uHAA0F;AAC1F,sCAAoC;AACpC,8CAA+C;AAE/C,qFAAiF;AACjF,4CAA8C;AAE9C,MAAa,UAAU;IAAvB;QACY,gBAAW,GAAG,CAAO,GAAW,EAAE,GAAW,EAAE,UAAkB,EAAE,EAAoB,EAAE;YAC7F,IAAI;gBACA,MAAM,OAAO,GAAG,0BAAa,CAAC,UAAU,EAAE,CAAC;gBAC3C,MAAM,OAAO,CAAC,cAAc,CAAC,eAAM,CAAC,oBAA8B,EAAE,OAAO,EAAE;oBACzE,OAAO,EAAE,KAAK;oBACd,iBAAiB,EAAE,kCAAwB,CAAC,kBAAkB,CAAC,eAAM,CAAC,oBAAqB,CAAC;iBAC/F,CAAC,CAAC;gBACH,OAAO,OAAO,CAAC,OAAO,CAAC,eAAM,CAAC,oBAA8B,EAAE,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,OAAO,CAAC,CAAC;aACjG;YAAC,OAAO,GAAG,EAAE;gBACV,MAAM,IAAI,oBAAW,CAAC,yCAAyC,EAAE,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC;aAC5G;QACL,CAAC,CAAA,CAAC;QAEQ,0BAAqB,GAAG,IAAA,6CAAuB,EAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAElE,sBAAiB,GAAG,CAC1B,gBAA2C,EAC3C,cAA4C,EAC/B,EAAE;YACf,IAAI,UAA4B,CAAC;YAEjC,IAAI;gBACA,UAAU,GAAG,MAAM,gBAAgB,CAAC;aACvC;YAAC,OAAO,GAAG,EAAE;gBACV,MAAM,IAAI,oBAAW,CAAC,0BAA0B,EAAE,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC;aAC7F;YAED,IAAI;gBACA,MAAM,UAAU,CAAC,gBAAgB,CAAC,cAAc,CAAC,CAAC,OAAO,EAAE,CAAC;aAC/D;YAAC,OAAO,GAAG,EAAE;gBACV,MAAM,IAAI,oBAAW,CAAC,6BAA6B,EAAE,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC;aAChG;QACL,CAAC,CAAA,CAAC;IACN,CAAC;CAAA;AAlCD,gCAkCC"}
1
+ {"version":3,"file":"BaseWorker.js","sourceRoot":"","sources":["../../../src/integration-engine/workers/BaseWorker.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,8CAA+C;AAE/C,qFAAiF;AACjF,4CAA8C;AAE9C;;GAEG;AACH,MAAa,UAAU;IAAvB;QACc,0BAAqB,GAAG,IAAA,6CAAuB,EAAC,0BAAa,CAAC,WAAW,CAAC,CAAC;QAE3E,sBAAiB,GAAG,CAC1B,gBAA2C,EAC3C,cAA4C,EAC/B,EAAE;YACf,IAAI,UAA4B,CAAC;YAEjC,IAAI;gBACA,UAAU,GAAG,MAAM,gBAAgB,CAAC;aACvC;YAAC,OAAO,GAAG,EAAE;gBACV,MAAM,IAAI,oBAAW,CAAC,0BAA0B,EAAE,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC;aAC7F;YAED,IAAI;gBACA,MAAM,UAAU,CAAC,gBAAgB,CAAC,cAAc,CAAC,CAAC,OAAO,EAAE,CAAC;aAC/D;YAAC,OAAO,GAAG,EAAE;gBACV,MAAM,IAAI,oBAAW,CAAC,6BAA6B,EAAE,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC;aAChG;QACL,CAAC,CAAA,CAAC;IACN,CAAC;CAAA;AArBD,gCAqBC"}
@@ -1 +1,4 @@
1
1
  export * from "./BaseWorker";
2
+ export * from "./AbstractTask";
3
+ export * from "./AbstractEmptyTask";
4
+ export * from "./AbstractWorker";
@@ -16,4 +16,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
17
  /* ie/workers/index.ts */
18
18
  __exportStar(require("./BaseWorker"), exports);
19
+ __exportStar(require("./AbstractTask"), exports);
20
+ __exportStar(require("./AbstractEmptyTask"), exports);
21
+ __exportStar(require("./AbstractWorker"), exports);
19
22
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/integration-engine/workers/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,yBAAyB;AACzB,+CAA6B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/integration-engine/workers/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,yBAAyB;AACzB,+CAA6B;AAC7B,iDAA+B;AAC/B,sDAAoC;AACpC,mDAAiC"}
@@ -0,0 +1,7 @@
1
+ import { Message } from "amqplib";
2
+ export interface ITask {
3
+ queueName: string;
4
+ queueTtl?: number;
5
+ queuePrefix: string;
6
+ validateAndExecute(msg: Message | null): any;
7
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=ITask.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ITask.js","sourceRoot":"","sources":["../../../../src/integration-engine/workers/interfaces/ITask.ts"],"names":[],"mappings":""}
@@ -0,0 +1 @@
1
+ export * from "./ITask";
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./ITask"), exports);
18
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/integration-engine/workers/interfaces/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,0CAAwB"}
@@ -0,0 +1,2 @@
1
+ import * as classTransformer from "class-transformer";
2
+ export = classTransformer;
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ const classTransformer = __importStar(require("class-transformer"));
26
+ module.exports = classTransformer;
27
+ //# sourceMappingURL=class-transformer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"class-transformer.js","sourceRoot":"","sources":["../../src/shared/class-transformer.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAAA,oEAAsD;AACtD,iBAAS,gBAAgB,CAAC"}
@@ -0,0 +1,2 @@
1
+ import * as classValidator from "class-validator";
2
+ export = classValidator;
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ const classValidator = __importStar(require("class-validator"));
26
+ module.exports = classValidator;
27
+ //# sourceMappingURL=class-validator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"class-validator.js","sourceRoot":"","sources":["../../src/shared/class-validator.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAAA,gEAAkD;AAClD,iBAAS,cAAc,CAAC"}
package/package.json CHANGED
@@ -1,126 +1,128 @@
1
1
  {
2
- "name": "@golemio/core",
3
- "version": "1.2.16-dev.601731327",
4
- "description": "Golemio Core Module",
5
- "main": "dist/index.js",
6
- "types": "dist/index.d.ts",
7
- "bin": {
8
- "golemio-import-test-data": "bin/import-test-data.js"
9
- },
10
- "scripts": {
11
- "build": "rimraf ./dist && ttsc -p ./tsconfig.build.json",
12
- "build-minimal": "run-s 'build --sourceMap false --declaration false'",
13
- "build-watch": "run-s 'build --watch --preserveWatchOutput'",
14
- "test": "cross-env NODE_ENV=test TS_NODE_COMPILER='ttypescript' mocha --exit --check-leaks --timeout 120000 -r ts-node/register -r dotenv/config 'test/**/*.test.ts'",
15
- "test-debug": "run-s 'test --inspect-brk=9230'",
16
- "code-coverage": "nyc run-s 'test -r source-map-support/register'",
17
- "generate-docs": "typedoc --out docs/typedoc src",
18
- "lint": "eslint --cache \"{src,test}/**/*.ts\""
19
- },
20
- "keywords": [
21
- "golemio"
22
- ],
23
- "author": "Operator ICT, a.s.",
24
- "license": "MIT",
25
- "repository": {
26
- "type": "git",
27
- "url": "https://gitlab.com/operator-ict/golemio/code/modules/core"
28
- },
29
- "devDependencies": {
30
- "@commitlint/cli": "^16.2.1",
31
- "@commitlint/config-conventional": "^16.2.1",
32
- "@golemio/eslint-config": "^1.1.0",
33
- "@ovos-media/ts-transform-paths": "^1.7.18-1",
34
- "@types/amqplib": "^0.5.17",
35
- "@types/chai": "4.2.3",
36
- "@types/chai-as-promised": "7.1.2",
37
- "@types/content-type": "^1.1.3",
38
- "@types/debug": "0.0.31",
39
- "@types/decompress": "^4.2.3",
40
- "@types/lodash": "^4.14.165",
41
- "@types/mocha": "^8.2.0",
42
- "@types/morgan": "^1.9.2",
43
- "@types/node": "^16.11.35",
44
- "@types/sinon": "7.0.13",
45
- "@types/ssh2-sftp-client": "^5.3.1",
46
- "@types/supertest": "^2.0.11",
47
- "chai": "4.2.0",
48
- "chai-as-promised": "7.1.1",
49
- "cross-env": "^7.0.3",
50
- "eslint": "^8.1.1",
51
- "husky": "^4.3.7",
52
- "mocha": "^9.1.2",
53
- "nock": "^13.0.5",
54
- "npm-run-all": "^4.1.5",
55
- "nyc": "^15.1.0",
56
- "prettier": "^2.5.1",
57
- "pretty-quick": "^3.1.0",
58
- "rimraf": "^3.0.2",
59
- "sinon": "7.1.1",
60
- "source-map-support": "0.5.9",
61
- "supertest": "^6.1.6",
62
- "ts-node": "^10.7.0",
63
- "ttypescript": "^1.5.13",
64
- "typedoc": "^0.22.15",
65
- "typescript": "4.6.4"
66
- },
67
- "dependencies": {
68
- "@golemio/errors": "^1.0.1",
69
- "@golemio/utils": "^1.0.0",
70
- "@golemio/validator": "0.2.3",
71
- "@google-cloud/storage": "^5.18.0",
72
- "@opentelemetry/api": "1.0.4",
73
- "@opentelemetry/exporter-jaeger": "^1.2.0",
74
- "@opentelemetry/instrumentation-amqplib": "^0.28.0",
75
- "@opentelemetry/instrumentation-aws-sdk": "^0.6.0",
76
- "@opentelemetry/instrumentation-express": "^0.28.0",
77
- "@opentelemetry/instrumentation-http": "^0.27.0",
78
- "@opentelemetry/instrumentation-ioredis": "^0.28.0",
79
- "@opentelemetry/instrumentation-pg": "^0.28.0",
80
- "@opentelemetry/instrumentation-redis": "^0.29.0",
81
- "@opentelemetry/resources": "^1.2.0",
82
- "@opentelemetry/sdk-trace-base": "^1.2.0",
83
- "@opentelemetry/sdk-trace-node": "^1.2.0",
84
- "@sentry/node": "^6.19.7",
85
- "@sentry/tracing": "^6.19.7",
86
- "@types/express": "^4.16.0",
87
- "@types/luxon": "^2.3.1",
88
- "@types/request-promise": "^4.1.45",
89
- "ajv": "^8.10.0",
90
- "amqplib": "^0.7.1",
91
- "apicache-plus": "^2.3.1",
92
- "aws-sdk": "^2.823.0",
93
- "axios": "^0.24.0",
94
- "basic-ftp": "^4.6.6",
95
- "content-type": "^1.0.4",
96
- "debug": "3.1.0",
97
- "decompress": "^4.2.1",
98
- "dotenv": "^8.2.0",
99
- "express": "^4.16.4",
100
- "express-validator": "^5.3.1",
101
- "fast-csv": "^4.3.6",
102
- "fast-glob": "^3.2.5",
103
- "iconv-lite": "^0.6.2",
104
- "ioredis": "^4.28.5",
105
- "lightship": "^6.7.2",
106
- "lodash": "^4.17.21",
107
- "luxon": "^2.3.2",
108
- "moment-timezone": "^0.5.26",
109
- "mongodb-restore-dump": "1.0.1",
110
- "mongoose": "^5.3.6",
111
- "morgan": "^1.10.0",
112
- "opentelemetry-instrumentation-mongoose": "^0.27.1",
113
- "opentelemetry-instrumentation-sequelize": "^0.27.1",
114
- "path-to-regexp": "^6.2.0",
115
- "pg": "^8.6.0",
116
- "prom-client": "^14.0.0",
117
- "redis": "^3.1.1",
118
- "request": "2.88.0",
119
- "request-promise": "^4.2.5",
120
- "sequelize": "^6.21.2",
121
- "ssh2-sftp-client": "^7.1.0",
122
- "winston": "^3.3.3",
123
- "xml2js-es6-promise": "^1.1.1"
124
- },
125
- "resolutions": {}
2
+ "name": "@golemio/core",
3
+ "version": "1.2.16",
4
+ "description": "Golemio Core Module",
5
+ "main": "dist/index.js",
6
+ "types": "dist/index.d.ts",
7
+ "bin": {
8
+ "golemio-import-test-data": "bin/import-test-data.js"
9
+ },
10
+ "scripts": {
11
+ "build": "rimraf ./dist && ttsc -p ./tsconfig.build.json",
12
+ "build-minimal": "run-s 'build --sourceMap false --declaration false'",
13
+ "build-watch": "run-s 'build --watch --preserveWatchOutput'",
14
+ "test": "cross-env NODE_ENV=test TS_NODE_COMPILER='ttypescript' mocha --exit --check-leaks --timeout 120000 -r ts-node/register -r dotenv/config 'test/**/*.test.ts'",
15
+ "test-debug": "run-s 'test --inspect-brk=9230'",
16
+ "code-coverage": "nyc run-s 'test -r source-map-support/register'",
17
+ "generate-docs": "typedoc --out docs/typedoc src",
18
+ "lint": "eslint --cache \"{src,test}/**/*.ts\""
19
+ },
20
+ "keywords": [
21
+ "golemio"
22
+ ],
23
+ "author": "Operator ICT, a.s.",
24
+ "license": "MIT",
25
+ "repository": {
26
+ "type": "git",
27
+ "url": "https://gitlab.com/operator-ict/golemio/code/modules/core"
28
+ },
29
+ "devDependencies": {
30
+ "@commitlint/cli": "^16.2.1",
31
+ "@commitlint/config-conventional": "^16.2.1",
32
+ "@golemio/eslint-config": "^1.1.0",
33
+ "@ovos-media/ts-transform-paths": "^1.7.18-1",
34
+ "@types/amqplib": "^0.5.17",
35
+ "@types/chai": "4.2.3",
36
+ "@types/chai-as-promised": "7.1.2",
37
+ "@types/content-type": "^1.1.3",
38
+ "@types/debug": "0.0.31",
39
+ "@types/decompress": "^4.2.3",
40
+ "@types/lodash": "^4.14.165",
41
+ "@types/mocha": "^8.2.0",
42
+ "@types/morgan": "^1.9.2",
43
+ "@types/node": "^16.11.35",
44
+ "@types/sinon": "7.0.13",
45
+ "@types/ssh2-sftp-client": "^5.3.1",
46
+ "@types/supertest": "^2.0.11",
47
+ "chai": "4.2.0",
48
+ "chai-as-promised": "7.1.1",
49
+ "cross-env": "^7.0.3",
50
+ "eslint": "^8.1.1",
51
+ "husky": "^4.3.7",
52
+ "mocha": "^9.1.2",
53
+ "nock": "^13.0.5",
54
+ "npm-run-all": "^4.1.5",
55
+ "nyc": "^15.1.0",
56
+ "prettier": "^2.5.1",
57
+ "pretty-quick": "^3.1.0",
58
+ "rimraf": "^3.0.2",
59
+ "sinon": "7.1.1",
60
+ "source-map-support": "0.5.9",
61
+ "supertest": "^6.1.6",
62
+ "ts-node": "^10.7.0",
63
+ "ttypescript": "^1.5.13",
64
+ "typedoc": "^0.22.15",
65
+ "typescript": "4.6.4"
66
+ },
67
+ "dependencies": {
68
+ "@golemio/errors": "^1.0.1",
69
+ "@golemio/utils": "^1.0.0",
70
+ "@golemio/validator": "0.2.3",
71
+ "@google-cloud/storage": "^5.18.0",
72
+ "@opentelemetry/api": "1.0.4",
73
+ "@opentelemetry/exporter-jaeger": "^1.2.0",
74
+ "@opentelemetry/instrumentation-amqplib": "^0.28.0",
75
+ "@opentelemetry/instrumentation-aws-sdk": "^0.6.0",
76
+ "@opentelemetry/instrumentation-express": "^0.28.0",
77
+ "@opentelemetry/instrumentation-http": "^0.27.0",
78
+ "@opentelemetry/instrumentation-ioredis": "^0.28.0",
79
+ "@opentelemetry/instrumentation-pg": "^0.28.0",
80
+ "@opentelemetry/instrumentation-redis": "^0.29.0",
81
+ "@opentelemetry/resources": "^1.2.0",
82
+ "@opentelemetry/sdk-trace-base": "^1.2.0",
83
+ "@opentelemetry/sdk-trace-node": "^1.2.0",
84
+ "@sentry/node": "^6.19.7",
85
+ "@sentry/tracing": "^6.19.7",
86
+ "@types/express": "^4.16.0",
87
+ "@types/luxon": "^2.3.1",
88
+ "@types/request-promise": "^4.1.45",
89
+ "ajv": "^8.10.0",
90
+ "amqplib": "^0.7.1",
91
+ "apicache-plus": "^2.3.1",
92
+ "aws-sdk": "^2.823.0",
93
+ "axios": "^0.24.0",
94
+ "basic-ftp": "^4.6.6",
95
+ "class-transformer": "^0.5.1",
96
+ "class-validator": "^0.13.2",
97
+ "content-type": "^1.0.4",
98
+ "debug": "3.1.0",
99
+ "decompress": "^4.2.1",
100
+ "dotenv": "^8.2.0",
101
+ "express": "^4.16.4",
102
+ "express-validator": "^5.3.1",
103
+ "fast-csv": "^4.3.6",
104
+ "fast-glob": "^3.2.5",
105
+ "iconv-lite": "^0.6.2",
106
+ "ioredis": "^4.28.5",
107
+ "lightship": "^6.7.2",
108
+ "lodash": "^4.17.21",
109
+ "luxon": "^2.3.2",
110
+ "moment-timezone": "^0.5.26",
111
+ "mongodb-restore-dump": "1.0.1",
112
+ "mongoose": "^5.3.6",
113
+ "morgan": "^1.10.0",
114
+ "opentelemetry-instrumentation-mongoose": "^0.27.1",
115
+ "opentelemetry-instrumentation-sequelize": "^0.27.1",
116
+ "path-to-regexp": "^6.2.0",
117
+ "pg": "^8.6.0",
118
+ "prom-client": "^14.0.0",
119
+ "redis": "^3.1.1",
120
+ "request": "2.88.0",
121
+ "request-promise": "^4.2.5",
122
+ "sequelize": "^6.21.2",
123
+ "ssh2-sftp-client": "^7.1.0",
124
+ "winston": "^3.3.3",
125
+ "xml2js-es6-promise": "^1.1.1"
126
+ },
127
+ "resolutions": {}
126
128
  }