@golemio/core 1.2.7 → 1.2.8

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/README.md CHANGED
@@ -80,7 +80,6 @@ yarn dev-start
80
80
 
81
81
  Now you can change code and immediately see the results.
82
82
 
83
-
84
83
  ## Tests
85
84
 
86
85
  To run all test defined in /test directory simply run this command:
@@ -92,6 +91,12 @@ yarn test
92
91
  from the application's root directory. All tests should pass.
93
92
 
94
93
 
94
+ ## Rabbit MQ
95
+
96
+ Core module defines main exchange in rabbit mq and its name is dependent on .env setting. Also it contains definition of queue for dead messages. All other queues are defined in separate modules and loaded dynamically by `QueueProcessor.ts`.
97
+
98
+ Core module also defines alternate exchange for messages that are unroutable. Name of the exchage is created from name of the main one with suffix `-alt` and it contains 1 queue named `alt-routes`.
99
+
95
100
  ## Contribution guidelines
96
101
 
97
102
  Please read `CONTRIBUTING.md`.
@@ -0,0 +1,7 @@
1
+ import amqplib from "amqplib";
2
+ export default class AlternateExchangeCreator {
3
+ private static EXCHANGE_NAME_SUFFIX;
4
+ private static EXCHANGE_QUEUE_NAME;
5
+ static createAlternateExchange: (channel: amqplib.Channel, originalExchangeName: string) => Promise<void>;
6
+ static getAltExchangeName: (originalExchangeName: string) => string;
7
+ }
@@ -0,0 +1,31 @@
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
+ var _a;
12
+ Object.defineProperty(exports, "__esModule", { value: true });
13
+ class AlternateExchangeCreator {
14
+ }
15
+ exports.default = AlternateExchangeCreator;
16
+ _a = AlternateExchangeCreator;
17
+ AlternateExchangeCreator.EXCHANGE_NAME_SUFFIX = "-alt";
18
+ AlternateExchangeCreator.EXCHANGE_QUEUE_NAME = ".alt-routes";
19
+ AlternateExchangeCreator.createAlternateExchange = (channel, originalExchangeName) => __awaiter(void 0, void 0, void 0, function* () {
20
+ const altExchangeName = _a.getAltExchangeName(originalExchangeName);
21
+ yield channel.assertExchange(altExchangeName, "fanout", { durable: false });
22
+ const q = yield channel.assertQueue(altExchangeName + _a.EXCHANGE_QUEUE_NAME, {
23
+ durable: true,
24
+ messageTtl: 3 * 24 * 60 * 60 * 1000, // 3 days in milliseconds
25
+ });
26
+ channel.bindQueue(q.queue, altExchangeName, "dead");
27
+ });
28
+ AlternateExchangeCreator.getAltExchangeName = (originalExchangeName) => {
29
+ return originalExchangeName.concat(_a.EXCHANGE_NAME_SUFFIX);
30
+ };
31
+ //# sourceMappingURL=AlternateExchangeCreator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AlternateExchangeCreator.js","sourceRoot":"","sources":["../../../../src/helpers/data-access/amqp/AlternateExchangeCreator.ts"],"names":[],"mappings":";;;;;;;;;;;;AAEA,MAAqB,wBAAwB;;AAA7C,2CAmBC;;AAlBkB,6CAAoB,GAAG,MAAO,CAAA;AAC9B,4CAAmB,GAAG,aAAc,CAAA;AAErC,gDAAuB,GAAG,CAAO,OAAwB,EAAE,oBAA4B,EAAiB,EAAE;IACpH,MAAM,eAAe,GAAG,EAAI,CAAC,kBAAkB,CAAC,oBAAoB,CAAC,CAAC;IACtE,MAAM,OAAO,CAAC,cAAc,CAAC,eAAyB,EAAE,QAAQ,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC;IAEtF,MAAM,CAAC,GAAG,MAAM,OAAO,CAAC,WAAW,CAAC,eAAe,GAAG,EAAI,CAAC,mBAAmB,EAAE;QAC5E,OAAO,EAAE,IAAI;QACb,UAAU,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,EAAE,yBAAyB;KACjE,CAAC,CAAC;IAEH,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,EAAE,eAAe,EAAE,MAAM,CAAC,CAAC;AACxD,CAAC,CAAC,CAAA;AAEY,2CAAkB,GAAG,CAAC,oBAA4B,EAAU,EAAE;IACxE,OAAO,oBAAoB,CAAC,MAAM,CAAC,EAAI,CAAC,oBAAoB,CAAC,CAAC;AAClE,CAAE,CAAA"}
@@ -17,6 +17,7 @@ const errors_1 = require("@golemio/errors");
17
17
  const amqplib_1 = __importDefault(require("amqplib"));
18
18
  const config_1 = require("../config");
19
19
  const helpers_1 = require("../helpers");
20
+ const AlternateExchangeCreator_1 = __importDefault(require("../../helpers/data-access/amqp/AlternateExchangeCreator"));
20
21
  /**
21
22
  * Class for connecting to RabbitMQ. Using amqplib https://www.npmjs.com/package/amqplib
22
23
  */
@@ -99,7 +100,10 @@ class MyAMQP {
99
100
  */
100
101
  assertDeadQueue(channel) {
101
102
  return __awaiter(this, void 0, void 0, function* () {
102
- yield channel.assertExchange(config_1.config.rabbit_exchange_name, "topic", { durable: false });
103
+ yield channel.assertExchange(config_1.config.rabbit_exchange_name, "topic", {
104
+ durable: false,
105
+ alternateExchange: AlternateExchangeCreator_1.default.getAltExchangeName(config_1.config.rabbit_exchange_name),
106
+ });
103
107
  const q = yield channel.assertQueue(config_1.config.rabbit_exchange_name + ".deadqueue", {
104
108
  durable: true,
105
109
  messageTtl: 3 * 24 * 60 * 60 * 1000, // 3 days in milliseconds
@@ -1 +1 @@
1
- {"version":3,"file":"AMQPConnector.js","sourceRoot":"","sources":["../../../src/input-gateway/connectors/AMQPConnector.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AMQPConnector.js","sourceRoot":"","sources":["../../../src/input-gateway/connectors/AMQPConnector.ts"],"names":[],"mappings":"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"}
@@ -8,12 +8,16 @@ 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
+ };
11
14
  Object.defineProperty(exports, "__esModule", { value: true });
12
15
  exports.BaseController = void 0;
13
- const errors_1 = require("@golemio/errors");
16
+ const AlternateExchangeCreator_1 = __importDefault(require("../../helpers/data-access/amqp/AlternateExchangeCreator"));
14
17
  const config_1 = require("../config");
15
18
  const connectors_1 = require("../connectors");
16
19
  const sentry_transactions_1 = require("../../monitoring/sentry/sentry-transactions");
20
+ const errors_1 = require("@golemio/errors");
17
21
  /**
18
22
  * Base controller class, defines basic structure of a controller. ProcessData function, mandatory name
19
23
  */
@@ -25,7 +29,10 @@ class BaseController {
25
29
  this.sendMessage = (key, msg, options = {}) => __awaiter(this, void 0, void 0, function* () {
26
30
  try {
27
31
  const ch = yield connectors_1.AMQPConnector.getChannel();
28
- yield ch.assertExchange(config_1.config.rabbit_exchange_name, "topic", { durable: false });
32
+ yield ch.assertExchange(config_1.config.rabbit_exchange_name, "topic", {
33
+ durable: false,
34
+ alternateExchange: AlternateExchangeCreator_1.default.getAltExchangeName(config_1.config.rabbit_exchange_name),
35
+ });
29
36
  yield ch.publish(config_1.config.rabbit_exchange_name, key, Buffer.from(msg), options);
30
37
  }
31
38
  catch (err) {
@@ -1 +1 @@
1
- {"version":3,"file":"BaseController.js","sourceRoot":"","sources":["../../../src/input-gateway/controllers/BaseController.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,4CAA8C;AAE9C,sCAAoC;AACpC,8CAA+C;AAC/C,qFAAiF;AAEjF;;GAEG;AACH,MAAsB,cAAc;IAUhC,YAAY,IAAY,EAAE,SAAqB;QAM/C;;WAEG;QACK,gBAAW,GAAG,CAAO,GAAW,EAAE,GAAQ,EAAE,UAAkB,EAAE,EAAiB,EAAE;YACvF,IAAI;gBACA,MAAM,EAAE,GAAG,MAAM,0BAAa,CAAC,UAAU,EAAE,CAAC;gBAC5C,MAAM,EAAE,CAAC,cAAc,CAAC,eAAM,CAAC,oBAA8B,EAAE,OAAO,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC;gBAC5F,MAAM,EAAE,CAAC,OAAO,CAAC,eAAM,CAAC,oBAA8B,EAAE,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,OAAO,CAAC,CAAC;aAC3F;YAAC,OAAO,GAAG,EAAE;gBACV,MAAM,IAAI,oBAAW,CAAC,yCAAyC,EAAE,IAAI,EAAE,gBAAgB,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;aACtG;QACL,CAAC,CAAA,CAAC;QAEQ,0BAAqB,GAAG,IAAA,6CAAuB,EAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAlBxE,IAAI,CAAC,IAAI,GAAG,IAAI,GAAG,YAAY,CAAC;QAChC,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,WAAW,GAAG,eAAM,CAAC,oBAAoB,GAAG,GAAG,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;IAC9E,CAAC;CAgBJ;AA9BD,wCA8BC"}
1
+ {"version":3,"file":"BaseController.js","sourceRoot":"","sources":["../../../src/input-gateway/controllers/BaseController.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,uHAA0F;AAC1F,sCAAoC;AACpC,8CAA+C;AAC/C,qFAAiF;AACjF,4CAA8C;AAG9C;;GAEG;AACH,MAAsB,cAAc;IAUhC,YAAY,IAAY,EAAE,SAAqB;QAM/C;;WAEG;QACK,gBAAW,GAAG,CAAO,GAAW,EAAE,GAAQ,EAAE,UAAkB,EAAE,EAAiB,EAAE;YACvF,IAAI;gBACA,MAAM,EAAE,GAAG,MAAM,0BAAa,CAAC,UAAU,EAAE,CAAC;gBAC5C,MAAM,EAAE,CAAC,cAAc,CAAC,eAAM,CAAC,oBAA8B,EAAE,OAAO,EAAE;oBACpE,OAAO,EAAE,KAAK;oBACd,iBAAiB,EAAE,kCAAwB,CAAC,kBAAkB,CAAC,eAAM,CAAC,oBAAqB,CAAC;iBAC/F,CAAC,CAAC;gBACH,MAAM,EAAE,CAAC,OAAO,CAAC,eAAM,CAAC,oBAA8B,EAAE,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,OAAO,CAAC,CAAC;aAC3F;YAAC,OAAO,GAAG,EAAE;gBACV,MAAM,IAAI,oBAAW,CAAC,yCAAyC,EAAE,IAAI,EAAE,gBAAgB,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;aACtG;QACL,CAAC,CAAA,CAAC;QAEQ,0BAAqB,GAAG,IAAA,6CAAuB,EAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QArBxE,IAAI,CAAC,IAAI,GAAG,IAAI,GAAG,YAAY,CAAC;QAChC,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,WAAW,GAAG,eAAM,CAAC,oBAAoB,GAAG,GAAG,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;IAC9E,CAAC;CAmBJ;AAjCD,wCAiCC"}
@@ -13,10 +13,11 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
13
13
  };
14
14
  Object.defineProperty(exports, "__esModule", { value: true });
15
15
  exports.AMQPConnector = void 0;
16
- const errors_1 = require("@golemio/errors");
17
- const amqplib_1 = __importDefault(require("amqplib"));
16
+ const AlternateExchangeCreator_1 = __importDefault(require("../../helpers/data-access/amqp/AlternateExchangeCreator"));
18
17
  const config_1 = require("../config");
19
18
  const helpers_1 = require("../helpers");
19
+ const errors_1 = require("@golemio/errors");
20
+ const amqplib_1 = __importDefault(require("amqplib"));
20
21
  class MyAMQP {
21
22
  constructor() {
22
23
  this.connect = () => __awaiter(this, void 0, void 0, function* () {
@@ -51,6 +52,7 @@ class MyAMQP {
51
52
  }
52
53
  });
53
54
  helpers_1.log.info("[AMQP] Connected to Queue!");
55
+ yield AlternateExchangeCreator_1.default.createAlternateExchange(this.channel, config_1.config.RABBIT_EXCHANGE_NAME);
54
56
  yield this.assertDeadQueue(this.channel);
55
57
  return this.channel;
56
58
  }
@@ -68,7 +70,10 @@ class MyAMQP {
68
70
  if (!config_1.config.RABBIT_EXCHANGE_NAME) {
69
71
  throw new errors_1.CustomError("[AMQP] The ENV variable RABBIT_EXCHANGE_NAME cannot be undefined.", true, this.constructor.name, 6003);
70
72
  }
71
- yield channel.assertExchange(config_1.config.RABBIT_EXCHANGE_NAME, "topic", { durable: false });
73
+ yield channel.assertExchange(config_1.config.RABBIT_EXCHANGE_NAME, "topic", {
74
+ durable: false,
75
+ alternateExchange: AlternateExchangeCreator_1.default.getAltExchangeName(config_1.config.RABBIT_EXCHANGE_NAME),
76
+ });
72
77
  const q = yield channel.assertQueue(config_1.config.RABBIT_EXCHANGE_NAME + ".deadqueue", {
73
78
  durable: true,
74
79
  messageTtl: 3 * 24 * 60 * 60 * 1000, // 3 days in milliseconds
@@ -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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"}
@@ -1,5 +1,5 @@
1
- import amqplib from "amqplib";
2
1
  import { IQueueDefinition } from "./";
2
+ import amqplib from "amqplib";
3
3
  export declare class QueueProcessor {
4
4
  protected channel: amqplib.Channel;
5
5
  private definition;
@@ -8,12 +8,16 @@ 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
+ };
11
14
  Object.defineProperty(exports, "__esModule", { value: true });
12
15
  exports.QueueProcessor = void 0;
13
- const errors_1 = require("@golemio/errors");
16
+ const AlternateExchangeCreator_1 = __importDefault(require("../../helpers/data-access/amqp/AlternateExchangeCreator"));
14
17
  const config_1 = require("../config");
15
18
  const helpers_1 = require("../helpers");
16
19
  const sentry_transactions_1 = require("../../monitoring/sentry/sentry-transactions");
20
+ const errors_1 = require("@golemio/errors");
17
21
  class QueueProcessor {
18
22
  constructor(channel, definition) {
19
23
  /**
@@ -67,7 +71,10 @@ class QueueProcessor {
67
71
  throw new errors_1.CustomError("[AMQP] The ENV variable RABBIT_EXCHANGE_NAME cannot be undefined.", true, this.constructor.name, 6003);
68
72
  }
69
73
  // Create exchange if not exists
70
- yield this.channel.assertExchange(config_1.config.RABBIT_EXCHANGE_NAME, "topic", { durable: false });
74
+ yield this.channel.assertExchange(config_1.config.RABBIT_EXCHANGE_NAME, "topic", {
75
+ durable: false,
76
+ alternateExchange: AlternateExchangeCreator_1.default.getAltExchangeName(config_1.config.RABBIT_EXCHANGE_NAME),
77
+ });
71
78
  // Create queue
72
79
  const q = yield this.channel.assertQueue(name, Object.assign(Object.assign({}, queueOptions), { durable: true }));
73
80
  // This tells RabbitMQ not to give more than one message to a worker at a time.
@@ -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":"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"}
@@ -8,18 +8,25 @@ 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
+ };
11
14
  Object.defineProperty(exports, "__esModule", { value: true });
12
15
  exports.BaseWorker = void 0;
13
- const errors_1 = require("@golemio/errors");
16
+ const AlternateExchangeCreator_1 = __importDefault(require("../../helpers/data-access/amqp/AlternateExchangeCreator"));
14
17
  const config_1 = require("../config");
15
18
  const connectors_1 = require("../connectors");
16
19
  const sentry_transactions_1 = require("../../monitoring/sentry/sentry-transactions");
20
+ const errors_1 = require("@golemio/errors");
17
21
  class BaseWorker {
18
22
  constructor() {
19
23
  this.sendMessage = (key, msg, options = {}) => __awaiter(this, void 0, void 0, function* () {
20
24
  try {
21
25
  const channel = connectors_1.AMQPConnector.getChannel();
22
- yield channel.assertExchange(config_1.config.RABBIT_EXCHANGE_NAME, "topic", { durable: false });
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
+ });
23
30
  return channel.publish(config_1.config.RABBIT_EXCHANGE_NAME, key, Buffer.from(msg), options);
24
31
  }
25
32
  catch (err) {
@@ -1 +1 @@
1
- {"version":3,"file":"BaseWorker.js","sourceRoot":"","sources":["../../../src/integration-engine/workers/BaseWorker.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,4CAA8C;AAC9C,sCAAoC;AACpC,8CAA+C;AAE/C,qFAAiF;AAEjF,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,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC;gBACjG,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;AA/BD,gCA+BC"}
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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@golemio/core",
3
- "version": "1.2.7",
3
+ "version": "1.2.8",
4
4
  "description": "Golemio Core Module",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -34,7 +34,7 @@
34
34
 
35
35
  // Paths for Schema Definitions
36
36
  "#sch": ["./src/schema-definitions"],
37
- "#sch/*": ["./src/schema-definitions/*"]
37
+ "#sch/*": ["./src/schema-definitions/*"],
38
38
  }
39
39
  }
40
40
  }