@solidstarters/solid-core 1.2.161 → 1.2.165

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 (191) hide show
  1. package/dist/commands/ingest.command.d.ts +16 -0
  2. package/dist/commands/ingest.command.d.ts.map +1 -0
  3. package/dist/commands/ingest.command.js +50 -0
  4. package/dist/commands/ingest.command.js.map +1 -0
  5. package/dist/commands/refresh-module.command.d.ts.map +1 -1
  6. package/dist/commands/refresh-module.command.js.map +1 -1
  7. package/dist/controllers/service.controller.d.ts +16 -1
  8. package/dist/controllers/service.controller.d.ts.map +1 -1
  9. package/dist/controllers/service.controller.js +55 -2
  10. package/dist/controllers/service.controller.js.map +1 -1
  11. package/dist/controllers/test-queue.controller.d.ts +1 -1
  12. package/dist/controllers/test-queue.controller.d.ts.map +1 -1
  13. package/dist/controllers/test-queue.controller.js +6 -4
  14. package/dist/controllers/test-queue.controller.js.map +1 -1
  15. package/dist/controllers/test.controller.d.ts +6 -1
  16. package/dist/controllers/test.controller.d.ts.map +1 -1
  17. package/dist/controllers/test.controller.js +21 -3
  18. package/dist/controllers/test.controller.js.map +1 -1
  19. package/dist/entities/common.entity.d.ts.map +1 -1
  20. package/dist/entities/common.entity.js +14 -2
  21. package/dist/entities/common.entity.js.map +1 -1
  22. package/dist/entities/user.entity.d.ts.map +1 -1
  23. package/dist/entities/user.entity.js +11 -1
  24. package/dist/entities/user.entity.js.map +1 -1
  25. package/dist/helpers/error-mapper.service.d.ts +8 -0
  26. package/dist/helpers/error-mapper.service.d.ts.map +1 -0
  27. package/dist/helpers/error-mapper.service.js +108 -0
  28. package/dist/helpers/error-mapper.service.js.map +1 -0
  29. package/dist/jobs/chatter-queue-options.d.ts +8 -0
  30. package/dist/jobs/chatter-queue-options.d.ts.map +1 -0
  31. package/dist/jobs/chatter-queue-options.js +10 -0
  32. package/dist/jobs/chatter-queue-options.js.map +1 -0
  33. package/dist/jobs/chatter-queue-publisher.service.d.ts +22 -0
  34. package/dist/jobs/chatter-queue-publisher.service.d.ts.map +1 -0
  35. package/dist/jobs/chatter-queue-publisher.service.js +39 -0
  36. package/dist/jobs/chatter-queue-publisher.service.js.map +1 -0
  37. package/dist/jobs/chatter-queue-subscriber.service.d.ts +17 -0
  38. package/dist/jobs/chatter-queue-subscriber.service.d.ts.map +1 -0
  39. package/dist/jobs/chatter-queue-subscriber.service.js +59 -0
  40. package/dist/jobs/chatter-queue-subscriber.service.js.map +1 -0
  41. package/dist/jobs/{database/computed-field-evaluation-publisher.service.d.ts → computed-field-evaluation-publisher.service.d.ts} +2 -2
  42. package/dist/jobs/computed-field-evaluation-publisher.service.d.ts.map +1 -0
  43. package/dist/jobs/{database/computed-field-evaluation-publisher.service.js → computed-field-evaluation-publisher.service.js} +8 -8
  44. package/dist/jobs/computed-field-evaluation-publisher.service.js.map +1 -0
  45. package/dist/jobs/{database/computed-field-evaluation-queue-options.d.ts → computed-field-evaluation-queue-options.d.ts} +1 -1
  46. package/dist/jobs/computed-field-evaluation-queue-options.d.ts.map +1 -0
  47. package/dist/jobs/{database/computed-field-evaluation-queue-options.js → computed-field-evaluation-queue-options.js} +2 -2
  48. package/dist/jobs/computed-field-evaluation-queue-options.js.map +1 -0
  49. package/dist/jobs/{database/computed-field-evaluation-subscriber.service.d.ts → computed-field-evaluation-subscriber.service.d.ts} +3 -3
  50. package/dist/jobs/computed-field-evaluation-subscriber.service.d.ts.map +1 -0
  51. package/dist/jobs/computed-field-evaluation-subscriber.service.js +51 -0
  52. package/dist/jobs/computed-field-evaluation-subscriber.service.js.map +1 -0
  53. package/dist/jobs/database/computed-field-evaluation-publisher-database.service.d.ts +12 -0
  54. package/dist/jobs/database/computed-field-evaluation-publisher-database.service.d.ts.map +1 -0
  55. package/dist/jobs/database/computed-field-evaluation-publisher-database.service.js +39 -0
  56. package/dist/jobs/database/computed-field-evaluation-publisher-database.service.js.map +1 -0
  57. package/dist/jobs/database/computed-field-evaluation-queue-options-database.d.ts +8 -0
  58. package/dist/jobs/database/computed-field-evaluation-queue-options-database.d.ts.map +1 -0
  59. package/dist/jobs/database/computed-field-evaluation-queue-options-database.js +10 -0
  60. package/dist/jobs/database/computed-field-evaluation-queue-options-database.js.map +1 -0
  61. package/dist/jobs/database/computed-field-evaluation-subscriber-database.service.d.ts +18 -0
  62. package/dist/jobs/database/computed-field-evaluation-subscriber-database.service.d.ts.map +1 -0
  63. package/dist/jobs/database/{computed-field-evaluation-subscriber.service.js → computed-field-evaluation-subscriber-database.service.js} +8 -8
  64. package/dist/jobs/database/computed-field-evaluation-subscriber-database.service.js.map +1 -0
  65. package/dist/jobs/database/generate-code-queue-options-database.js +2 -2
  66. package/dist/jobs/database/generate-code-queue-options-database.js.map +1 -1
  67. package/dist/jobs/database/test-queue-subscriber-database.service.d.ts.map +1 -1
  68. package/dist/jobs/database/test-queue-subscriber-database.service.js +7 -1
  69. package/dist/jobs/database/test-queue-subscriber-database.service.js.map +1 -1
  70. package/dist/jobs/database/trigger-mcp-client-subscriber-database.service.d.ts.map +1 -1
  71. package/dist/jobs/database/trigger-mcp-client-subscriber-database.service.js +4 -2
  72. package/dist/jobs/database/trigger-mcp-client-subscriber-database.service.js.map +1 -1
  73. package/dist/jobs/generate-code-publisher.service.d.ts +11 -0
  74. package/dist/jobs/generate-code-publisher.service.d.ts.map +1 -0
  75. package/dist/jobs/generate-code-publisher.service.js +39 -0
  76. package/dist/jobs/generate-code-publisher.service.js.map +1 -0
  77. package/dist/jobs/generate-code-queue-options.d.ts +8 -0
  78. package/dist/jobs/generate-code-queue-options.d.ts.map +1 -0
  79. package/dist/jobs/generate-code-queue-options.js +10 -0
  80. package/dist/jobs/generate-code-queue-options.js.map +1 -0
  81. package/dist/jobs/generate-code-subscriber.service.d.ts +18 -0
  82. package/dist/jobs/generate-code-subscriber.service.d.ts.map +1 -0
  83. package/dist/jobs/generate-code-subscriber.service.js +70 -0
  84. package/dist/jobs/generate-code-subscriber.service.js.map +1 -0
  85. package/dist/jobs/test-queue-subscriber.service.d.ts +1 -1
  86. package/dist/jobs/test-queue-subscriber.service.d.ts.map +1 -1
  87. package/dist/jobs/test-queue-subscriber.service.js +9 -6
  88. package/dist/jobs/test-queue-subscriber.service.js.map +1 -1
  89. package/dist/jobs/trigger-mcp-client-publisher.service.d.ts +11 -0
  90. package/dist/jobs/trigger-mcp-client-publisher.service.d.ts.map +1 -0
  91. package/dist/jobs/trigger-mcp-client-publisher.service.js +39 -0
  92. package/dist/jobs/trigger-mcp-client-publisher.service.js.map +1 -0
  93. package/dist/jobs/trigger-mcp-client-queue-options.d.ts +8 -0
  94. package/dist/jobs/trigger-mcp-client-queue-options.d.ts.map +1 -0
  95. package/dist/jobs/trigger-mcp-client-queue-options.js +10 -0
  96. package/dist/jobs/trigger-mcp-client-queue-options.js.map +1 -0
  97. package/dist/jobs/trigger-mcp-client-subscriber.service.d.ts +18 -0
  98. package/dist/jobs/trigger-mcp-client-subscriber.service.d.ts.map +1 -0
  99. package/dist/jobs/trigger-mcp-client-subscriber.service.js +103 -0
  100. package/dist/jobs/trigger-mcp-client-subscriber.service.js.map +1 -0
  101. package/dist/jobs/twilio-sms-publisher.service.d.ts +11 -0
  102. package/dist/jobs/twilio-sms-publisher.service.d.ts.map +1 -0
  103. package/dist/jobs/twilio-sms-publisher.service.js +39 -0
  104. package/dist/jobs/twilio-sms-publisher.service.js.map +1 -0
  105. package/dist/jobs/twilio-sms-queue-options.d.ts +8 -0
  106. package/dist/jobs/twilio-sms-queue-options.d.ts.map +1 -0
  107. package/dist/jobs/twilio-sms-queue-options.js +10 -0
  108. package/dist/jobs/twilio-sms-queue-options.js.map +1 -0
  109. package/dist/jobs/twilio-sms-subscriber.service.d.ts +17 -0
  110. package/dist/jobs/twilio-sms-subscriber.service.d.ts.map +1 -0
  111. package/dist/jobs/twilio-sms-subscriber.service.js +48 -0
  112. package/dist/jobs/twilio-sms-subscriber.service.js.map +1 -0
  113. package/dist/seeders/seed-data/solid-core-metadata.json +21 -0
  114. package/dist/services/genai/ingest-metadata.service.d.ts +38 -0
  115. package/dist/services/genai/ingest-metadata.service.d.ts.map +1 -0
  116. package/dist/services/genai/ingest-metadata.service.js +530 -0
  117. package/dist/services/genai/ingest-metadata.service.js.map +1 -0
  118. package/dist/services/genai/r2r-helper.service.d.ts +7 -0
  119. package/dist/services/genai/r2r-helper.service.d.ts.map +1 -0
  120. package/dist/services/genai/r2r-helper.service.js +36 -0
  121. package/dist/services/genai/r2r-helper.service.js.map +1 -0
  122. package/dist/services/queues/database-publisher.service.js +2 -2
  123. package/dist/services/queues/database-publisher.service.js.map +1 -1
  124. package/dist/services/queues/database-subscriber.service.d.ts.map +1 -1
  125. package/dist/services/queues/database-subscriber.service.js +2 -1
  126. package/dist/services/queues/database-subscriber.service.js.map +1 -1
  127. package/dist/services/queues/publisher-factory.service.js +1 -1
  128. package/dist/services/queues/publisher-factory.service.js.map +1 -1
  129. package/dist/services/setting.service.d.ts.map +1 -1
  130. package/dist/services/setting.service.js +38 -20
  131. package/dist/services/setting.service.js.map +1 -1
  132. package/dist/solid-core.module.d.ts.map +1 -1
  133. package/dist/solid-core.module.js +29 -4
  134. package/dist/solid-core.module.js.map +1 -1
  135. package/dist/subscribers/audit.subscriber.d.ts +8 -0
  136. package/dist/subscribers/audit.subscriber.d.ts.map +1 -1
  137. package/dist/subscribers/audit.subscriber.js +52 -3
  138. package/dist/subscribers/audit.subscriber.js.map +1 -1
  139. package/dist/subscribers/computed-entity-field.subscriber.d.ts +3 -3
  140. package/dist/subscribers/computed-entity-field.subscriber.d.ts.map +1 -1
  141. package/dist/subscribers/computed-entity-field.subscriber.js +5 -7
  142. package/dist/subscribers/computed-entity-field.subscriber.js.map +1 -1
  143. package/dist/tsconfig.tsbuildinfo +1 -1
  144. package/package.json +2 -1
  145. package/src/commands/ingest-rag-chunking-strategy-for.md +224 -0
  146. package/src/commands/ingest.command.ts +36 -0
  147. package/src/commands/refresh-module.command.ts +0 -1
  148. package/src/controllers/service.controller.ts +66 -3
  149. package/src/controllers/test-queue.controller.ts +4 -3
  150. package/src/controllers/test.controller.ts +15 -3
  151. package/src/entities/common.entity.ts +10 -0
  152. package/src/entities/user.entity.ts +33 -1
  153. package/src/helpers/error-mapper.service.ts +214 -0
  154. package/src/jobs/chatter-queue-options.ts +9 -0
  155. package/src/jobs/chatter-queue-publisher.service.ts +37 -0
  156. package/src/jobs/chatter-queue-subscriber.service.ts +46 -0
  157. package/src/jobs/computed-field-evaluation-publisher.service.ts +23 -0
  158. package/src/jobs/{database/computed-field-evaluation-queue-options.ts → computed-field-evaluation-queue-options.ts} +2 -2
  159. package/src/jobs/computed-field-evaluation-subscriber.service.ts +38 -0
  160. package/src/jobs/database/{computed-field-evaluation-publisher.service.ts → computed-field-evaluation-publisher-database.service.ts} +2 -2
  161. package/src/jobs/database/computed-field-evaluation-queue-options-database.ts +9 -0
  162. package/src/jobs/database/{computed-field-evaluation-subscriber.service.ts → computed-field-evaluation-subscriber-database.service.ts} +2 -2
  163. package/src/jobs/database/generate-code-queue-options-database.ts +2 -2
  164. package/src/jobs/database/test-queue-subscriber-database.service.ts +10 -2
  165. package/src/jobs/database/trigger-mcp-client-subscriber-database.service.ts +4 -2
  166. package/src/jobs/generate-code-publisher.service.ts +23 -0
  167. package/src/jobs/generate-code-queue-options.ts +9 -0
  168. package/src/jobs/generate-code-subscriber.service.ts +59 -0
  169. package/src/jobs/test-queue-subscriber.service.ts +15 -7
  170. package/src/jobs/trigger-mcp-client-publisher.service.ts +22 -0
  171. package/src/jobs/trigger-mcp-client-queue-options.ts +9 -0
  172. package/src/jobs/trigger-mcp-client-subscriber.service.ts +104 -0
  173. package/src/jobs/twilio-sms-publisher.service.ts +23 -0
  174. package/src/jobs/twilio-sms-queue-options.ts +9 -0
  175. package/src/jobs/twilio-sms-subscriber.service.ts +32 -0
  176. package/src/seeders/seed-data/solid-core-metadata.json +21 -0
  177. package/src/services/genai/ingest-metadata.service.ts +695 -0
  178. package/src/services/genai/r2r-helper.service.ts +33 -0
  179. package/src/services/queues/database-publisher.service.ts +2 -2
  180. package/src/services/queues/database-subscriber.service.ts +2 -1
  181. package/src/services/queues/publisher-factory.service.ts +1 -1
  182. package/src/services/setting.service.ts +46 -22
  183. package/src/solid-core.module.ts +41 -8
  184. package/src/subscribers/audit.subscriber.ts +235 -5
  185. package/src/subscribers/computed-entity-field.subscriber.ts +7 -5
  186. package/dist/jobs/database/computed-field-evaluation-publisher.service.d.ts.map +0 -1
  187. package/dist/jobs/database/computed-field-evaluation-publisher.service.js.map +0 -1
  188. package/dist/jobs/database/computed-field-evaluation-queue-options.d.ts.map +0 -1
  189. package/dist/jobs/database/computed-field-evaluation-queue-options.js.map +0 -1
  190. package/dist/jobs/database/computed-field-evaluation-subscriber.service.d.ts.map +0 -1
  191. package/dist/jobs/database/computed-field-evaluation-subscriber.service.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"computed-field-evaluation-publisher-database.service.d.ts","sourceRoot":"","sources":["../../../src/jobs/database/computed-field-evaluation-publisher-database.service.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,EAAE,qBAAqB,EAAE,MAAM,uCAAuC,CAAC;AAC9E,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AACnE,OAAO,EAAE,iBAAiB,EAAE,MAAM,gDAAgD,CAAC;AACnF,OAAO,EAAE,8BAA8B,EAAE,MAAM,kDAAkD,CAAC;AAGlG,qBACa,wCAAyC,SAAQ,iBAAiB,CAAC,8BAA8B,CAAC;IAEvG,SAAS,CAAC,QAAQ,CAAC,gBAAgB,EAAE,gBAAgB;IACrD,SAAS,CAAC,QAAQ,CAAC,qBAAqB,EAAE,qBAAqB;gBAD5C,gBAAgB,EAAE,gBAAgB,EAClC,qBAAqB,EAAE,qBAAqB;IAKnE,OAAO,IAAI,mBAAmB;CAKjC"}
@@ -0,0 +1,39 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ var __importDefault = (this && this.__importDefault) || function (mod) {
12
+ return (mod && mod.__esModule) ? mod : { "default": mod };
13
+ };
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.ComputedFieldEvaluationPublisherDatabase = void 0;
16
+ const common_1 = require("@nestjs/common");
17
+ const mq_message_queue_service_1 = require("../../services/mq-message-queue.service");
18
+ const mq_message_service_1 = require("../../services/mq-message.service");
19
+ const database_publisher_service_1 = require("../../services/queues/database-publisher.service");
20
+ const computed_field_evaluation_queue_options_database_1 = __importDefault(require("./computed-field-evaluation-queue-options-database"));
21
+ let ComputedFieldEvaluationPublisherDatabase = class ComputedFieldEvaluationPublisherDatabase extends database_publisher_service_1.DatabasePublisher {
22
+ constructor(mqMessageService, mqMessageQueueService) {
23
+ super(mqMessageService, mqMessageQueueService);
24
+ this.mqMessageService = mqMessageService;
25
+ this.mqMessageQueueService = mqMessageQueueService;
26
+ }
27
+ options() {
28
+ return {
29
+ ...computed_field_evaluation_queue_options_database_1.default
30
+ };
31
+ }
32
+ };
33
+ exports.ComputedFieldEvaluationPublisherDatabase = ComputedFieldEvaluationPublisherDatabase;
34
+ exports.ComputedFieldEvaluationPublisherDatabase = ComputedFieldEvaluationPublisherDatabase = __decorate([
35
+ (0, common_1.Injectable)(),
36
+ __metadata("design:paramtypes", [mq_message_service_1.MqMessageService,
37
+ mq_message_queue_service_1.MqMessageQueueService])
38
+ ], ComputedFieldEvaluationPublisherDatabase);
39
+ //# sourceMappingURL=computed-field-evaluation-publisher-database.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"computed-field-evaluation-publisher-database.service.js","sourceRoot":"","sources":["../../../src/jobs/database/computed-field-evaluation-publisher-database.service.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,2CAA4C;AAE5C,sFAA8E;AAC9E,0EAAmE;AACnE,iGAAmF;AAEnF,0IAAqG;AAG9F,IAAM,wCAAwC,GAA9C,MAAM,wCAAyC,SAAQ,8CAAiD;IAC3G,YACuB,gBAAkC,EAClC,qBAA4C;QAE/D,KAAK,CAAC,gBAAgB,EAAE,qBAAqB,CAAC,CAAC;QAH5B,qBAAgB,GAAhB,gBAAgB,CAAkB;QAClC,0BAAqB,GAArB,qBAAqB,CAAuB;IAGnE,CAAC;IAED,OAAO;QACH,OAAO;YACH,GAAG,0DAAmC;SACzC,CAAC;IACN,CAAC;CACJ,CAAA;AAbY,4FAAwC;mDAAxC,wCAAwC;IADpD,IAAA,mBAAU,GAAE;qCAGgC,qCAAgB;QACX,gDAAqB;GAH1D,wCAAwC,CAapD","sourcesContent":["import { Injectable } from \"@nestjs/common\";\nimport { QueuesModuleOptions } from \"src/interfaces\";\nimport { MqMessageQueueService } from \"src/services/mq-message-queue.service\";\nimport { MqMessageService } from \"src/services/mq-message.service\";\nimport { DatabasePublisher } from \"src/services/queues/database-publisher.service\";\nimport { ComputedFieldEvaluationPayload } from \"src/subscribers/computed-entity-field.subscriber\";\nimport computedFieldEvaluationQueueOptions from \"./computed-field-evaluation-queue-options-database\";\n\n@Injectable()\nexport class ComputedFieldEvaluationPublisherDatabase extends DatabasePublisher<ComputedFieldEvaluationPayload> {\n constructor(\n protected readonly mqMessageService: MqMessageService,\n protected readonly mqMessageQueueService: MqMessageQueueService,\n ) {\n super(mqMessageService, mqMessageQueueService);\n }\n\n options(): QueuesModuleOptions {\n return {\n ...computedFieldEvaluationQueueOptions\n };\n }\n}"]}
@@ -0,0 +1,8 @@
1
+ import { BrokerType } from "../../interfaces";
2
+ declare const _default: {
3
+ name: string;
4
+ type: BrokerType;
5
+ queueName: string;
6
+ };
7
+ export default _default;
8
+ //# sourceMappingURL=computed-field-evaluation-queue-options-database.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"computed-field-evaluation-queue-options-database.d.ts","sourceRoot":"","sources":["../../../src/jobs/database/computed-field-evaluation-queue-options-database.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;;;;;;AAI9C,wBAIE"}
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const interfaces_1 = require("../../interfaces");
4
+ const QUEUE_NAME = 'computed_field_evaluation_queue_database';
5
+ exports.default = {
6
+ name: 'computedFieldEvaluationQueueDatabase',
7
+ type: interfaces_1.BrokerType.Database,
8
+ queueName: QUEUE_NAME,
9
+ };
10
+ //# sourceMappingURL=computed-field-evaluation-queue-options-database.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"computed-field-evaluation-queue-options-database.js","sourceRoot":"","sources":["../../../src/jobs/database/computed-field-evaluation-queue-options-database.ts"],"names":[],"mappings":";;AAAA,iDAA8C;AAE9C,MAAM,UAAU,GAAG,0CAA0C,CAAC;AAE9D,kBAAe;IACX,IAAI,EAAE,sCAAsC;IAC5C,IAAI,EAAE,uBAAU,CAAC,QAAQ;IACzB,SAAS,EAAE,UAAU;CACxB,CAAC","sourcesContent":["import { BrokerType } from \"../../interfaces\";\n\nconst QUEUE_NAME = 'computed_field_evaluation_queue_database';\n\nexport default {\n name: 'computedFieldEvaluationQueueDatabase',\n type: BrokerType.Database,\n queueName: QUEUE_NAME,\n};\n"]}
@@ -0,0 +1,18 @@
1
+ import { SolidRegistry } from "src/helpers/solid-registry";
2
+ import { QueuesModuleOptions } from "src/interfaces";
3
+ import { QueueMessage } from "src/interfaces/mq";
4
+ import { MqMessageQueueService } from "src/services/mq-message-queue.service";
5
+ import { MqMessageService } from "src/services/mq-message.service";
6
+ import { DatabaseSubscriber } from "src/services/queues/database-subscriber.service";
7
+ import { ComputedFieldEvaluationPayload } from "src/subscribers/computed-entity-field.subscriber";
8
+ import { PollerService } from "src/services/poller.service";
9
+ export declare class ComputedFieldEvaluationSubscriberDatabase extends DatabaseSubscriber<ComputedFieldEvaluationPayload> {
10
+ readonly mqMessageService: MqMessageService;
11
+ readonly mqMessageQueueService: MqMessageQueueService;
12
+ readonly solidRegistry: SolidRegistry;
13
+ readonly poller: PollerService;
14
+ constructor(mqMessageService: MqMessageService, mqMessageQueueService: MqMessageQueueService, solidRegistry: SolidRegistry, poller: PollerService);
15
+ options(): QueuesModuleOptions;
16
+ subscribe(message: QueueMessage<ComputedFieldEvaluationPayload>): Promise<void>;
17
+ }
18
+ //# sourceMappingURL=computed-field-evaluation-subscriber-database.service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"computed-field-evaluation-subscriber-database.service.d.ts","sourceRoot":"","sources":["../../../src/jobs/database/computed-field-evaluation-subscriber-database.service.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAiE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AACpH,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,qBAAqB,EAAE,MAAM,uCAAuC,CAAC;AAC9E,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AACnE,OAAO,EAAE,kBAAkB,EAAE,MAAM,iDAAiD,CAAC;AACrF,OAAO,EAAE,8BAA8B,EAAE,MAAM,kDAAkD,CAAC;AAElG,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAE5D,qBACa,yCAA0C,SAAQ,kBAAkB,CAAC,8BAA8B,CAAC;IAEzG,QAAQ,CAAC,gBAAgB,EAAE,gBAAgB;IAC3C,QAAQ,CAAC,qBAAqB,EAAE,qBAAqB;IACrD,QAAQ,CAAC,aAAa,EAAE,aAAa;IACrC,QAAQ,CAAC,MAAM,EAAE,aAAa;gBAHrB,gBAAgB,EAAE,gBAAgB,EAClC,qBAAqB,EAAE,qBAAqB,EAC5C,aAAa,EAAE,aAAa,EAC5B,MAAM,EAAE,aAAa;IAKlC,OAAO,IAAI,mBAAmB;IAQxB,SAAS,CAAC,OAAO,EAAE,YAAY,CAAC,8BAA8B,CAAC;CAOxE"}
@@ -12,15 +12,15 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
12
12
  return (mod && mod.__esModule) ? mod : { "default": mod };
13
13
  };
14
14
  Object.defineProperty(exports, "__esModule", { value: true });
15
- exports.ComputedFieldEvaluationSubscriber = void 0;
15
+ exports.ComputedFieldEvaluationSubscriberDatabase = void 0;
16
16
  const common_1 = require("@nestjs/common");
17
17
  const solid_registry_1 = require("../../helpers/solid-registry");
18
18
  const mq_message_queue_service_1 = require("../../services/mq-message-queue.service");
19
19
  const mq_message_service_1 = require("../../services/mq-message.service");
20
20
  const database_subscriber_service_1 = require("../../services/queues/database-subscriber.service");
21
- const computed_field_evaluation_queue_options_1 = __importDefault(require("./computed-field-evaluation-queue-options"));
21
+ const computed_field_evaluation_queue_options_database_1 = __importDefault(require("./computed-field-evaluation-queue-options-database"));
22
22
  const poller_service_1 = require("../../services/poller.service");
23
- let ComputedFieldEvaluationSubscriber = class ComputedFieldEvaluationSubscriber extends database_subscriber_service_1.DatabaseSubscriber {
23
+ let ComputedFieldEvaluationSubscriberDatabase = class ComputedFieldEvaluationSubscriberDatabase extends database_subscriber_service_1.DatabaseSubscriber {
24
24
  constructor(mqMessageService, mqMessageQueueService, solidRegistry, poller) {
25
25
  super(mqMessageService, mqMessageQueueService, poller);
26
26
  this.mqMessageService = mqMessageService;
@@ -30,7 +30,7 @@ let ComputedFieldEvaluationSubscriber = class ComputedFieldEvaluationSubscriber
30
30
  }
31
31
  options() {
32
32
  return {
33
- ...computed_field_evaluation_queue_options_1.default
33
+ ...computed_field_evaluation_queue_options_database_1.default
34
34
  };
35
35
  }
36
36
  async subscribe(message) {
@@ -40,12 +40,12 @@ let ComputedFieldEvaluationSubscriber = class ComputedFieldEvaluationSubscriber
40
40
  await providerInstance.postComputeAndSaveValue(databaseEntity, computedFieldMetadata);
41
41
  }
42
42
  };
43
- exports.ComputedFieldEvaluationSubscriber = ComputedFieldEvaluationSubscriber;
44
- exports.ComputedFieldEvaluationSubscriber = ComputedFieldEvaluationSubscriber = __decorate([
43
+ exports.ComputedFieldEvaluationSubscriberDatabase = ComputedFieldEvaluationSubscriberDatabase;
44
+ exports.ComputedFieldEvaluationSubscriberDatabase = ComputedFieldEvaluationSubscriberDatabase = __decorate([
45
45
  (0, common_1.Injectable)(),
46
46
  __metadata("design:paramtypes", [mq_message_service_1.MqMessageService,
47
47
  mq_message_queue_service_1.MqMessageQueueService,
48
48
  solid_registry_1.SolidRegistry,
49
49
  poller_service_1.PollerService])
50
- ], ComputedFieldEvaluationSubscriber);
51
- //# sourceMappingURL=computed-field-evaluation-subscriber.service.js.map
50
+ ], ComputedFieldEvaluationSubscriberDatabase);
51
+ //# sourceMappingURL=computed-field-evaluation-subscriber-database.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"computed-field-evaluation-subscriber-database.service.js","sourceRoot":"","sources":["../../../src/jobs/database/computed-field-evaluation-subscriber-database.service.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,2CAA4C;AAC5C,iEAA2D;AAG3D,sFAA8E;AAC9E,0EAAmE;AACnE,mGAAqF;AAErF,0IAAqG;AACrG,kEAA4D;AAGrD,IAAM,yCAAyC,GAA/C,MAAM,yCAA0C,SAAQ,gDAAkD;IAC7G,YACa,gBAAkC,EAClC,qBAA4C,EAC5C,aAA4B,EAC5B,MAAqB;QAE9B,KAAK,CAAC,gBAAgB,EAAE,qBAAqB,EAAE,MAAM,CAAC,CAAC;QAL9C,qBAAgB,GAAhB,gBAAgB,CAAkB;QAClC,0BAAqB,GAArB,qBAAqB,CAAuB;QAC5C,kBAAa,GAAb,aAAa,CAAe;QAC5B,WAAM,GAAN,MAAM,CAAe;IAGlC,CAAC;IAED,OAAO;QACH,OAAO;YACH,GAAG,0DAAmC;SACzC,CAAA;IACL,CAAC;IAID,KAAK,CAAC,SAAS,CAAC,OAAqD;QACjE,MAAM,EAAE,cAAc,EAAE,GAAG,qBAAqB,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC;QACrE,MAAM,QAAQ,GAAG,IAAI,CAAC,aAAa,CAAC,wBAAwB,CAAC,qBAAqB,CAAC,8BAA8B,CAAC,CAAC;QAEnH,MAAM,gBAAgB,GAAG,QAAQ,CAAC,QAAqD,CAAC;QACxF,MAAM,gBAAgB,CAAC,uBAAuB,CAAC,cAAc,EAAE,qBAAqB,CAAC,CAAC;IAC1F,CAAC;CACJ,CAAA;AAzBY,8FAAyC;oDAAzC,yCAAyC;IADrD,IAAA,mBAAU,GAAE;qCAGsB,qCAAgB;QACX,gDAAqB;QAC7B,8BAAa;QACpB,8BAAa;GALzB,yCAAyC,CAyBrD","sourcesContent":["import { Injectable } from \"@nestjs/common\";\nimport { SolidRegistry } from \"src/helpers/solid-registry\";\nimport { IEntityPostComputeFieldProvider, IEntityComputedFieldProvider, QueuesModuleOptions } from \"src/interfaces\";\nimport { QueueMessage } from \"src/interfaces/mq\";\nimport { MqMessageQueueService } from \"src/services/mq-message-queue.service\";\nimport { MqMessageService } from \"src/services/mq-message.service\";\nimport { DatabaseSubscriber } from \"src/services/queues/database-subscriber.service\";\nimport { ComputedFieldEvaluationPayload } from \"src/subscribers/computed-entity-field.subscriber\";\nimport computedFieldEvaluationQueueOptions from \"./computed-field-evaluation-queue-options-database\";\nimport { PollerService } from \"src/services/poller.service\";\n\n@Injectable()\nexport class ComputedFieldEvaluationSubscriberDatabase extends DatabaseSubscriber<ComputedFieldEvaluationPayload> {\n constructor(\n readonly mqMessageService: MqMessageService,\n readonly mqMessageQueueService: MqMessageQueueService,\n readonly solidRegistry: SolidRegistry,\n readonly poller: PollerService,\n ) {\n super(mqMessageService, mqMessageQueueService, poller);\n }\n\n options(): QueuesModuleOptions {\n return {\n ...computedFieldEvaluationQueueOptions\n }\n }\n\n // This method will use the ComputedFieldEvaluationPayload to evaluate the computed fields\n // It will then call the corresponding provider computeAndSave method to perform the evaluation\n async subscribe(message: QueueMessage<ComputedFieldEvaluationPayload>) {\n const { databaseEntity, ...computedFieldMetadata } = message.payload;\n const provider = this.solidRegistry.getComputedFieldProvider(computedFieldMetadata.computedFieldValueProviderName);\n // Get the instance of the provider and assert it is of type IEntityComputedFieldProvider\n const providerInstance = provider.instance as IEntityPostComputeFieldProvider<any, any>; // IEntityComputedFieldProvider\n await providerInstance.postComputeAndSaveValue(databaseEntity, computedFieldMetadata); //FIXME There should some way to check/assert if the provider actually has a postComputeAndSaveValue\n }\n}"]}
@@ -1,9 +1,9 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const interfaces_1 = require("../../interfaces");
4
- const QUEUE_NAME = 'generate_code_queue';
4
+ const QUEUE_NAME = 'generate_code_queue_database';
5
5
  exports.default = {
6
- name: 'generateCodeQueue',
6
+ name: 'generateCodeQueueDatabase',
7
7
  type: interfaces_1.BrokerType.Database,
8
8
  queueName: QUEUE_NAME,
9
9
  };
@@ -1 +1 @@
1
- {"version":3,"file":"generate-code-queue-options-database.js","sourceRoot":"","sources":["../../../src/jobs/database/generate-code-queue-options-database.ts"],"names":[],"mappings":";;AAAA,iDAA8C;AAE9C,MAAM,UAAU,GAAG,qBAAqB,CAAC;AAEzC,kBAAe;IACX,IAAI,EAAE,mBAAmB;IACzB,IAAI,EAAE,uBAAU,CAAC,QAAQ;IACzB,SAAS,EAAE,UAAU;CACxB,CAAC","sourcesContent":["import { BrokerType } from \"../../interfaces\";\n\nconst QUEUE_NAME = 'generate_code_queue';\n\nexport default {\n name: 'generateCodeQueue',\n type: BrokerType.Database,\n queueName: QUEUE_NAME,\n};\n"]}
1
+ {"version":3,"file":"generate-code-queue-options-database.js","sourceRoot":"","sources":["../../../src/jobs/database/generate-code-queue-options-database.ts"],"names":[],"mappings":";;AAAA,iDAA8C;AAE9C,MAAM,UAAU,GAAG,8BAA8B,CAAC;AAElD,kBAAe;IACX,IAAI,EAAE,2BAA2B;IACjC,IAAI,EAAE,uBAAU,CAAC,QAAQ;IACzB,SAAS,EAAE,UAAU;CACxB,CAAC","sourcesContent":["import { BrokerType } from \"../../interfaces\";\n\nconst QUEUE_NAME = 'generate_code_queue_database';\n\nexport default {\n name: 'generateCodeQueueDatabase',\n type: BrokerType.Database,\n queueName: QUEUE_NAME,\n};\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"test-queue-subscriber-database.service.d.ts","sourceRoot":"","sources":["../../../src/jobs/database/test-queue-subscriber-database.service.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AACrE,OAAO,EAAE,qBAAqB,EAAE,MAAM,yCAAyC,CAAC;AAChF,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAE,kBAAkB,EAAE,MAAM,iDAAiD,CAAC;AACrF,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAE5D,qBACa,2BAA4B,SAAQ,kBAAkB,CAAC,GAAG,CAAC;IAGhE,QAAQ,CAAC,gBAAgB,EAAE,gBAAgB;IAC3C,QAAQ,CAAC,qBAAqB,EAAE,qBAAqB;IACrD,QAAQ,CAAC,MAAM,EAAE,aAAa;IAJlC,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAgD;gBAEnE,gBAAgB,EAAE,gBAAgB,EAClC,qBAAqB,EAAE,qBAAqB,EAC5C,MAAM,EAAE,aAAa;IAKlC,OAAO,IAAI,mBAAmB;IAM9B,SAAS,CAAC,OAAO,EAAE,YAAY,CAAC,GAAG,CAAC;CAYvC"}
1
+ {"version":3,"file":"test-queue-subscriber-database.service.d.ts","sourceRoot":"","sources":["../../../src/jobs/database/test-queue-subscriber-database.service.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AACrE,OAAO,EAAE,qBAAqB,EAAE,MAAM,yCAAyC,CAAC;AAChF,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAE,kBAAkB,EAAE,MAAM,iDAAiD,CAAC;AACrF,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAE5D,qBACa,2BAA4B,SAAQ,kBAAkB,CAAC,GAAG,CAAC;IAGhE,QAAQ,CAAC,gBAAgB,EAAE,gBAAgB;IAC3C,QAAQ,CAAC,qBAAqB,EAAE,qBAAqB;IACrD,QAAQ,CAAC,MAAM,EAAE,aAAa;IAJlC,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAgD;gBAEnE,gBAAgB,EAAE,gBAAgB,EAClC,qBAAqB,EAAE,qBAAqB,EAC5C,MAAM,EAAE,aAAa;IAKlC,OAAO,IAAI,mBAAmB;IAM9B,SAAS,CAAC,OAAO,EAAE,YAAY,CAAC,GAAG,CAAC;CAoBvC"}
@@ -35,11 +35,17 @@ let TestQueueSubscriberDatabase = TestQueueSubscriberDatabase_1 = class TestQueu
35
35
  }
36
36
  subscribe(message) {
37
37
  this.testQueueLogger.debug(`Received message: ${JSON.stringify(message)}`);
38
+ let timeoutSecondsParsed = 10;
39
+ const timeoutSeconds = message?.payload?.timeoutSeconds;
40
+ if (timeoutSeconds) {
41
+ timeoutSecondsParsed = +timeoutSeconds;
42
+ }
43
+ this.testQueueLogger.debug(`Processing message with timeout: ${timeoutSecondsParsed}`);
38
44
  return new Promise((resolve, reject) => {
39
45
  setTimeout(() => {
40
46
  this.testQueueLogger.debug(`Processed message: ${JSON.stringify(message)}`);
41
47
  resolve({ status: 'success', messageId: message.messageId, message: `Processed message` });
42
- }, 10000);
48
+ }, timeoutSecondsParsed * 1000);
43
49
  });
44
50
  }
45
51
  };
@@ -1 +1 @@
1
- {"version":3,"file":"test-queue-subscriber-database.service.js","sourceRoot":"","sources":["../../../src/jobs/database/test-queue-subscriber-database.service.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2CAAoD;AAGpD,gGAA4D;AAC5D,0EAAqE;AACrE,sFAAgF;AAEhF,mGAAqF;AACrF,kEAA4D;AAGrD,IAAM,2BAA2B,mCAAjC,MAAM,2BAA4B,SAAQ,gDAAuB;IAEpE,YACa,gBAAkC,EAClC,qBAA4C,EAC5C,MAAqB;QAE9B,KAAK,CAAC,gBAAgB,EAAE,qBAAqB,EAAE,MAAM,CAAC,CAAC;QAJ9C,qBAAgB,GAAhB,gBAAgB,CAAkB;QAClC,0BAAqB,GAArB,qBAAqB,CAAuB;QAC5C,WAAM,GAAN,MAAM,CAAe;QAJjB,oBAAe,GAAG,IAAI,eAAM,CAAC,6BAA2B,CAAC,IAAI,CAAC,CAAC;IAOhF,CAAC;IAED,OAAO;QACH,OAAO;YACH,GAAG,qCAAe;SACrB,CAAA;IACL,CAAC;IAED,SAAS,CAAC,OAA0B;QAEhC,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,qBAAqB,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAE3E,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YAEnC,UAAU,CAAC,GAAG,EAAE;gBACZ,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,sBAAsB,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;gBAC5E,OAAO,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,OAAO,EAAE,mBAAmB,EAAE,CAAC,CAAC;YAC/F,CAAC,EAAE,KAAK,CAAC,CAAC;QACd,CAAC,CAAC,CAAC;IACP,CAAC;CACJ,CAAA;AA5BY,kEAA2B;sCAA3B,2BAA2B;IADvC,IAAA,mBAAU,GAAE;qCAIsB,qCAAgB;QACX,gDAAqB;QACpC,8BAAa;GALzB,2BAA2B,CA4BvC","sourcesContent":["import { Injectable, Logger } from '@nestjs/common';\n\nimport { QueueMessage } from 'src/interfaces/mq';\nimport testQueueConfig from './test-queue-options-database';\nimport { MqMessageService } from '../../services/mq-message.service';\nimport { MqMessageQueueService } from '../../services/mq-message-queue.service';\nimport { QueuesModuleOptions } from \"../../interfaces\";\nimport { DatabaseSubscriber } from 'src/services/queues/database-subscriber.service';\nimport { PollerService } from 'src/services/poller.service';\n\n@Injectable()\nexport class TestQueueSubscriberDatabase extends DatabaseSubscriber<any> {\n private readonly testQueueLogger = new Logger(TestQueueSubscriberDatabase.name);\n constructor(\n readonly mqMessageService: MqMessageService,\n readonly mqMessageQueueService: MqMessageQueueService,\n readonly poller: PollerService\n ) {\n super(mqMessageService, mqMessageQueueService, poller);\n }\n\n options(): QueuesModuleOptions {\n return {\n ...testQueueConfig\n }\n }\n\n subscribe(message: QueueMessage<any>) {\n // console.log(`Received message ${JSON.stringify(message)}`);\n this.testQueueLogger.debug(`Received message: ${JSON.stringify(message)}`);\n\n return new Promise((resolve, reject) => {\n // Simulate some processing time\n setTimeout(() => {\n this.testQueueLogger.debug(`Processed message: ${JSON.stringify(message)}`);\n resolve({ status: 'success', messageId: message.messageId, message: `Processed message` });\n }, 10000); // Simulate 1 second processing time\n });\n }\n}\n"]}
1
+ {"version":3,"file":"test-queue-subscriber-database.service.js","sourceRoot":"","sources":["../../../src/jobs/database/test-queue-subscriber-database.service.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2CAAoD;AAGpD,gGAA4D;AAC5D,0EAAqE;AACrE,sFAAgF;AAEhF,mGAAqF;AACrF,kEAA4D;AAGrD,IAAM,2BAA2B,mCAAjC,MAAM,2BAA4B,SAAQ,gDAAuB;IAEpE,YACa,gBAAkC,EAClC,qBAA4C,EAC5C,MAAqB;QAE9B,KAAK,CAAC,gBAAgB,EAAE,qBAAqB,EAAE,MAAM,CAAC,CAAC;QAJ9C,qBAAgB,GAAhB,gBAAgB,CAAkB;QAClC,0BAAqB,GAArB,qBAAqB,CAAuB;QAC5C,WAAM,GAAN,MAAM,CAAe;QAJjB,oBAAe,GAAG,IAAI,eAAM,CAAC,6BAA2B,CAAC,IAAI,CAAC,CAAC;IAOhF,CAAC;IAED,OAAO;QACH,OAAO;YACH,GAAG,qCAAe;SACrB,CAAA;IACL,CAAC;IAED,SAAS,CAAC,OAA0B;QAEhC,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,qBAAqB,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAE3E,IAAI,oBAAoB,GAAG,EAAE,CAAC;QAC9B,MAAM,cAAc,GAAG,OAAO,EAAE,OAAO,EAAE,cAAc,CAAC;QACxD,IAAI,cAAc,EAAE,CAAC;YACjB,oBAAoB,GAAG,CAAC,cAAc,CAAC;QAC3C,CAAC;QAED,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,oCAAoC,oBAAoB,EAAE,CAAC,CAAC;QAGvF,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACnC,UAAU,CAAC,GAAG,EAAE;gBACZ,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,sBAAsB,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;gBAC5E,OAAO,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,OAAO,EAAE,mBAAmB,EAAE,CAAC,CAAC;YAC/F,CAAC,EAAE,oBAAoB,GAAG,IAAI,CAAC,CAAC;QACpC,CAAC,CAAC,CAAC;IACP,CAAC;CACJ,CAAA;AApCY,kEAA2B;sCAA3B,2BAA2B;IADvC,IAAA,mBAAU,GAAE;qCAIsB,qCAAgB;QACX,gDAAqB;QACpC,8BAAa;GALzB,2BAA2B,CAoCvC","sourcesContent":["import { Injectable, Logger } from '@nestjs/common';\n\nimport { QueueMessage } from 'src/interfaces/mq';\nimport testQueueConfig from './test-queue-options-database';\nimport { MqMessageService } from '../../services/mq-message.service';\nimport { MqMessageQueueService } from '../../services/mq-message-queue.service';\nimport { QueuesModuleOptions } from \"../../interfaces\";\nimport { DatabaseSubscriber } from 'src/services/queues/database-subscriber.service';\nimport { PollerService } from 'src/services/poller.service';\n\n@Injectable()\nexport class TestQueueSubscriberDatabase extends DatabaseSubscriber<any> {\n private readonly testQueueLogger = new Logger(TestQueueSubscriberDatabase.name);\n constructor(\n readonly mqMessageService: MqMessageService,\n readonly mqMessageQueueService: MqMessageQueueService,\n readonly poller: PollerService\n ) {\n super(mqMessageService, mqMessageQueueService, poller);\n }\n\n options(): QueuesModuleOptions {\n return {\n ...testQueueConfig\n }\n }\n\n subscribe(message: QueueMessage<any>) {\n // console.log(`Received message ${JSON.stringify(message)}`);\n this.testQueueLogger.debug(`Received message: ${JSON.stringify(message)}`);\n\n let timeoutSecondsParsed = 10;\n const timeoutSeconds = message?.payload?.timeoutSeconds;\n if (timeoutSeconds) {\n timeoutSecondsParsed = +timeoutSeconds;\n }\n\n this.testQueueLogger.debug(`Processing message with timeout: ${timeoutSecondsParsed}`);\n\n // Simulate some processing time\n return new Promise((resolve, reject) => {\n setTimeout(() => {\n this.testQueueLogger.debug(`Processed message: ${JSON.stringify(message)}`);\n resolve({ status: 'success', messageId: message.messageId, message: `Processed message` });\n }, timeoutSecondsParsed * 1000);\n });\n }\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"trigger-mcp-client-subscriber-database.service.d.ts","sourceRoot":"","sources":["../../../src/jobs/database/trigger-mcp-client-subscriber-database.service.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AACrE,OAAO,EAAE,qBAAqB,EAAE,MAAM,yCAAyC,CAAC;AAChF,OAAO,EAAE,mBAAmB,EAAE,uBAAuB,EAAE,MAAM,kBAAkB,CAAC;AAChF,OAAO,EAAE,kBAAkB,EAAE,MAAM,iDAAiD,CAAC;AAErF,OAAO,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAC;AAC3E,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAE5D,qBACa,kCAAmC,SAAQ,kBAAkB,CAAC,uBAAuB,CAAC;IAI3F,QAAQ,CAAC,gBAAgB,EAAE,gBAAgB;IAC3C,QAAQ,CAAC,qBAAqB,EAAE,qBAAqB;IACrD,QAAQ,CAAC,MAAM,EAAE,aAAa;IAC9B,QAAQ,CAAC,oBAAoB,EAAE,oBAAoB;IANvD,OAAO,CAAC,QAAQ,CAAC,gCAAgC,CAAuD;gBAG3F,gBAAgB,EAAE,gBAAgB,EAClC,qBAAqB,EAAE,qBAAqB,EAC5C,MAAM,EAAE,aAAa,EACrB,oBAAoB,EAAE,oBAAoB;IAKvD,OAAO,IAAI,mBAAmB;IAMxB,SAAS,CAAC,OAAO,EAAE,YAAY,CAAC,uBAAuB,CAAC;CAuEjE"}
1
+ {"version":3,"file":"trigger-mcp-client-subscriber-database.service.d.ts","sourceRoot":"","sources":["../../../src/jobs/database/trigger-mcp-client-subscriber-database.service.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AACrE,OAAO,EAAE,qBAAqB,EAAE,MAAM,yCAAyC,CAAC;AAChF,OAAO,EAAE,mBAAmB,EAAE,uBAAuB,EAAE,MAAM,kBAAkB,CAAC;AAChF,OAAO,EAAE,kBAAkB,EAAE,MAAM,iDAAiD,CAAC;AAErF,OAAO,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAC;AAC3E,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAE5D,qBACa,kCAAmC,SAAQ,kBAAkB,CAAC,uBAAuB,CAAC;IAI3F,QAAQ,CAAC,gBAAgB,EAAE,gBAAgB;IAC3C,QAAQ,CAAC,qBAAqB,EAAE,qBAAqB;IACrD,QAAQ,CAAC,MAAM,EAAE,aAAa;IAC9B,QAAQ,CAAC,oBAAoB,EAAE,oBAAoB;IANvD,OAAO,CAAC,QAAQ,CAAC,gCAAgC,CAAuD;gBAG3F,gBAAgB,EAAE,gBAAgB,EAClC,qBAAqB,EAAE,qBAAqB,EAC5C,MAAM,EAAE,aAAa,EACrB,oBAAoB,EAAE,oBAAoB;IAKvD,OAAO,IAAI,mBAAmB;IAMxB,SAAS,CAAC,OAAO,EAAE,YAAY,CAAC,uBAAuB,CAAC;CAyEjE"}
@@ -64,7 +64,8 @@ let TriggerMcpClientSubscriberDatabase = TriggerMcpClientSubscriberDatabase_1 =
64
64
  modelUsed: aiResponse.model,
65
65
  responseTimeMs: aiResponse.duration_ms,
66
66
  metadata: JSON.stringify(aiResponse),
67
- isApplied: aiInteraction.isApplied
67
+ isApplied: aiInteraction.isApplied,
68
+ status: aiResponse.success ? 'succeeded' : 'failed'
68
69
  });
69
70
  throw new Error(errorsStr);
70
71
  }
@@ -81,7 +82,8 @@ let TriggerMcpClientSubscriberDatabase = TriggerMcpClientSubscriberDatabase_1 =
81
82
  modelUsed: aiResponse.model,
82
83
  responseTimeMs: aiResponse.duration_ms,
83
84
  metadata: JSON.stringify(aiResponse),
84
- isApplied: aiInteraction.isApplied
85
+ isApplied: aiInteraction.isApplied,
86
+ status: aiResponse.success ? 'succeeded' : 'failed'
85
87
  });
86
88
  if (aiInteraction.isAutoApply) {
87
89
  this.aiInteractionService.applySolidAiInteraction(genAiInteraction.id);
@@ -1 +1 @@
1
- {"version":3,"file":"trigger-mcp-client-subscriber-database.service.js","sourceRoot":"","sources":["../../../src/jobs/database/trigger-mcp-client-subscriber-database.service.ts"],"names":[],"mappings":"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","sourcesContent":["import { Injectable, Logger } from '@nestjs/common';\n\nimport { QueueMessage } from 'src/interfaces/mq';\nimport { MqMessageService } from '../../services/mq-message.service';\nimport { MqMessageQueueService } from '../../services/mq-message-queue.service';\nimport { QueuesModuleOptions, TriggerMcpClientOptions } from \"../../interfaces\";\nimport { DatabaseSubscriber } from 'src/services/queues/database-subscriber.service';\nimport triggerMcpClientQueueOptions from \"./trigger-mcp-client-queue-options\";\nimport { AiInteractionService } from 'src/services/ai-interaction.service';\nimport { PollerService } from 'src/services/poller.service';\n\n@Injectable()\nexport class TriggerMcpClientSubscriberDatabase extends DatabaseSubscriber<TriggerMcpClientOptions> {\n private readonly triggerMcpClientSubscriberLogger = new Logger(TriggerMcpClientSubscriberDatabase.name);\n\n constructor(\n readonly mqMessageService: MqMessageService,\n readonly mqMessageQueueService: MqMessageQueueService,\n readonly poller: PollerService,\n readonly aiInteractionService: AiInteractionService,\n ) {\n super(mqMessageService, mqMessageQueueService, poller);\n }\n\n options(): QueuesModuleOptions {\n return {\n ...triggerMcpClientQueueOptions\n }\n }\n\n async subscribe(message: QueueMessage<TriggerMcpClientOptions>) {\n this.triggerMcpClientSubscriberLogger.debug(`Received message: ${JSON.stringify(message)}`);\n\n const codeGnerationOptions = message.payload;\n\n const aiInteraction = await this.aiInteractionService.findOne(codeGnerationOptions.aiInteractionId, {\n populate: ['user']\n });\n if (!aiInteraction) {\n const m = `Unable to identified the aiInteraction entry that triggered this job... using id: ${codeGnerationOptions.aiInteractionId}`\n this.triggerMcpClientSubscriberLogger.log(m);\n throw new Error(m);\n }\n\n // The message contains the users prompt.\n const prompt = aiInteraction.message;\n\n // Use this to invoke our mcp client\n // TODO: try / catch ... \n // Handle the rejection gracefully...\n const aiResponse = await this.aiInteractionService.runMcpPrompt(prompt);\n this.triggerMcpClientSubscriberLogger.log(`aiResponse: `);\n this.triggerMcpClientSubscriberLogger.log(JSON.stringify(aiResponse));\n\n if (!aiResponse.success) {\n this.triggerMcpClientSubscriberLogger.log(`Gen ai has returned with a false status code`);\n\n const errorsStr = aiResponse.errors.join('; ');\n\n await this.aiInteractionService.create({\n userId: aiInteraction.user.id,\n threadId: aiInteraction.threadId,\n parentInteractionId: aiInteraction.id,\n role: 'gen-ai',\n message: '-',\n contentType: aiResponse.content_type,\n errorMessage: errorsStr,\n modelUsed: aiResponse.model,\n responseTimeMs: aiResponse.duration_ms,\n metadata: JSON.stringify(aiResponse),\n isApplied: aiInteraction.isApplied\n });\n\n // update the job entry with failure... raising an error will lead the job to be marked as failed...\n throw new Error(errorsStr);\n }\n else {\n let nestedResponse = aiResponse.response.trim();\n\n const genAiInteraction = await this.aiInteractionService.create({\n userId: aiInteraction.user.id,\n threadId: aiInteraction.threadId,\n parentInteractionId: aiInteraction.id,\n role: 'gen-ai',\n message: nestedResponse,\n contentType: aiResponse.content_type,\n errorMessage: '',\n modelUsed: aiResponse.model,\n responseTimeMs: aiResponse.duration_ms,\n metadata: JSON.stringify(aiResponse),\n isApplied: aiInteraction.isApplied\n });\n\n // If the human interaction was with isAutoApply=true, then we can go ahead and autoApply.\n if (aiInteraction.isAutoApply) {\n this.aiInteractionService.applySolidAiInteraction(genAiInteraction.id);\n }\n }\n\n return aiResponse;\n }\n}\n"]}
1
+ {"version":3,"file":"trigger-mcp-client-subscriber-database.service.js","sourceRoot":"","sources":["../../../src/jobs/database/trigger-mcp-client-subscriber-database.service.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2CAAoD;AAGpD,0EAAqE;AACrE,sFAAgF;AAEhF,mGAAqF;AACrF,0GAA8E;AAC9E,kFAA2E;AAC3E,kEAA4D;AAGrD,IAAM,kCAAkC,0CAAxC,MAAM,kCAAmC,SAAQ,gDAA2C;IAG/F,YACa,gBAAkC,EAClC,qBAA4C,EAC5C,MAAqB,EACrB,oBAA0C;QAEnD,KAAK,CAAC,gBAAgB,EAAE,qBAAqB,EAAE,MAAM,CAAC,CAAC;QAL9C,qBAAgB,GAAhB,gBAAgB,CAAkB;QAClC,0BAAqB,GAArB,qBAAqB,CAAuB;QAC5C,WAAM,GAAN,MAAM,CAAe;QACrB,yBAAoB,GAApB,oBAAoB,CAAsB;QANtC,qCAAgC,GAAG,IAAI,eAAM,CAAC,oCAAkC,CAAC,IAAI,CAAC,CAAC;IASxG,CAAC;IAED,OAAO;QACH,OAAO;YACH,GAAG,0CAA4B;SAClC,CAAA;IACL,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,OAA8C;QAC1D,IAAI,CAAC,gCAAgC,CAAC,KAAK,CAAC,qBAAqB,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAE5F,MAAM,oBAAoB,GAAG,OAAO,CAAC,OAAO,CAAC;QAE7C,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,oBAAoB,CAAC,eAAe,EAAE;YAChG,QAAQ,EAAE,CAAC,MAAM,CAAC;SACrB,CAAC,CAAC;QACH,IAAI,CAAC,aAAa,EAAE,CAAC;YACjB,MAAM,CAAC,GAAG,qFAAqF,oBAAoB,CAAC,eAAe,EAAE,CAAA;YACrI,IAAI,CAAC,gCAAgC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YAC7C,MAAM,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC;QACvB,CAAC;QAGD,MAAM,MAAM,GAAG,aAAa,CAAC,OAAO,CAAC;QAKrC,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,oBAAoB,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;QACxE,IAAI,CAAC,gCAAgC,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;QAC1D,IAAI,CAAC,gCAAgC,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC;QAEtE,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC;YACtB,IAAI,CAAC,gCAAgC,CAAC,GAAG,CAAC,8CAA8C,CAAC,CAAC;YAE1F,MAAM,SAAS,GAAG,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAE/C,MAAM,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC;gBACnC,MAAM,EAAE,aAAa,CAAC,IAAI,CAAC,EAAE;gBAC7B,QAAQ,EAAE,aAAa,CAAC,QAAQ;gBAChC,mBAAmB,EAAE,aAAa,CAAC,EAAE;gBACrC,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE,GAAG;gBACZ,WAAW,EAAE,UAAU,CAAC,YAAY;gBACpC,YAAY,EAAE,SAAS;gBACvB,SAAS,EAAE,UAAU,CAAC,KAAK;gBAC3B,cAAc,EAAE,UAAU,CAAC,WAAW;gBACtC,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC;gBACpC,SAAS,EAAE,aAAa,CAAC,SAAS;gBAClC,MAAM,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,QAAQ;aACtD,CAAC,CAAC;YAGH,MAAM,IAAI,KAAK,CAAC,SAAS,CAAC,CAAC;QAC/B,CAAC;aACI,CAAC;YACF,IAAI,cAAc,GAAG,UAAU,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;YAEhD,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC;gBAC5D,MAAM,EAAE,aAAa,CAAC,IAAI,CAAC,EAAE;gBAC7B,QAAQ,EAAE,aAAa,CAAC,QAAQ;gBAChC,mBAAmB,EAAE,aAAa,CAAC,EAAE;gBACrC,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE,cAAc;gBACvB,WAAW,EAAE,UAAU,CAAC,YAAY;gBACpC,YAAY,EAAE,EAAE;gBAChB,SAAS,EAAE,UAAU,CAAC,KAAK;gBAC3B,cAAc,EAAE,UAAU,CAAC,WAAW;gBACtC,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC;gBACpC,SAAS,EAAE,aAAa,CAAC,SAAS;gBAClC,MAAM,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,QAAQ;aACtD,CAAC,CAAC;YAGH,IAAI,aAAa,CAAC,WAAW,EAAE,CAAC;gBAC5B,IAAI,CAAC,oBAAoB,CAAC,uBAAuB,CAAC,gBAAgB,CAAC,EAAE,CAAC,CAAC;YAC3E,CAAC;QACL,CAAC;QAED,OAAO,UAAU,CAAC;IACtB,CAAC;CACJ,CAAA;AA3FY,gFAAkC;6CAAlC,kCAAkC;IAD9C,IAAA,mBAAU,GAAE;qCAKsB,qCAAgB;QACX,gDAAqB;QACpC,8BAAa;QACC,6CAAoB;GAP9C,kCAAkC,CA2F9C","sourcesContent":["import { Injectable, Logger } from '@nestjs/common';\n\nimport { QueueMessage } from 'src/interfaces/mq';\nimport { MqMessageService } from '../../services/mq-message.service';\nimport { MqMessageQueueService } from '../../services/mq-message-queue.service';\nimport { QueuesModuleOptions, TriggerMcpClientOptions } from \"../../interfaces\";\nimport { DatabaseSubscriber } from 'src/services/queues/database-subscriber.service';\nimport triggerMcpClientQueueOptions from \"./trigger-mcp-client-queue-options\";\nimport { AiInteractionService } from 'src/services/ai-interaction.service';\nimport { PollerService } from 'src/services/poller.service';\n\n@Injectable()\nexport class TriggerMcpClientSubscriberDatabase extends DatabaseSubscriber<TriggerMcpClientOptions> {\n private readonly triggerMcpClientSubscriberLogger = new Logger(TriggerMcpClientSubscriberDatabase.name);\n\n constructor(\n readonly mqMessageService: MqMessageService,\n readonly mqMessageQueueService: MqMessageQueueService,\n readonly poller: PollerService,\n readonly aiInteractionService: AiInteractionService,\n ) {\n super(mqMessageService, mqMessageQueueService, poller);\n }\n\n options(): QueuesModuleOptions {\n return {\n ...triggerMcpClientQueueOptions\n }\n }\n\n async subscribe(message: QueueMessage<TriggerMcpClientOptions>) {\n this.triggerMcpClientSubscriberLogger.debug(`Received message: ${JSON.stringify(message)}`);\n\n const codeGnerationOptions = message.payload;\n\n const aiInteraction = await this.aiInteractionService.findOne(codeGnerationOptions.aiInteractionId, {\n populate: ['user']\n });\n if (!aiInteraction) {\n const m = `Unable to identified the aiInteraction entry that triggered this job... using id: ${codeGnerationOptions.aiInteractionId}`\n this.triggerMcpClientSubscriberLogger.log(m);\n throw new Error(m);\n }\n\n // The message contains the users prompt.\n const prompt = aiInteraction.message;\n\n // Use this to invoke our mcp client\n // TODO: try / catch ... \n // Handle the rejection gracefully...\n const aiResponse = await this.aiInteractionService.runMcpPrompt(prompt);\n this.triggerMcpClientSubscriberLogger.log(`aiResponse: `);\n this.triggerMcpClientSubscriberLogger.log(JSON.stringify(aiResponse));\n\n if (!aiResponse.success) {\n this.triggerMcpClientSubscriberLogger.log(`Gen ai has returned with a false status code`);\n\n const errorsStr = aiResponse.errors.join('; ');\n\n await this.aiInteractionService.create({\n userId: aiInteraction.user.id,\n threadId: aiInteraction.threadId,\n parentInteractionId: aiInteraction.id,\n role: 'gen-ai',\n message: '-',\n contentType: aiResponse.content_type,\n errorMessage: errorsStr,\n modelUsed: aiResponse.model,\n responseTimeMs: aiResponse.duration_ms,\n metadata: JSON.stringify(aiResponse),\n isApplied: aiInteraction.isApplied,\n status: aiResponse.success ? 'succeeded' : 'failed'\n });\n\n // update the job entry with failure... raising an error will lead the job to be marked as failed...\n throw new Error(errorsStr);\n }\n else {\n let nestedResponse = aiResponse.response.trim();\n\n const genAiInteraction = await this.aiInteractionService.create({\n userId: aiInteraction.user.id,\n threadId: aiInteraction.threadId,\n parentInteractionId: aiInteraction.id,\n role: 'gen-ai',\n message: nestedResponse,\n contentType: aiResponse.content_type,\n errorMessage: '',\n modelUsed: aiResponse.model,\n responseTimeMs: aiResponse.duration_ms,\n metadata: JSON.stringify(aiResponse),\n isApplied: aiInteraction.isApplied,\n status: aiResponse.success ? 'succeeded' : 'failed'\n });\n\n // If the human interaction was with isAutoApply=true, then we can go ahead and autoApply.\n if (aiInteraction.isAutoApply) {\n this.aiInteractionService.applySolidAiInteraction(genAiInteraction.id);\n }\n }\n\n return aiResponse;\n }\n}\n"]}
@@ -0,0 +1,11 @@
1
+ import { RabbitMqPublisher } from 'src/services/queues/rabbitmq-publisher.service';
2
+ import { CodeGenerationOptions, QueuesModuleOptions } from "../interfaces";
3
+ import { MqMessageQueueService } from '../services/mq-message-queue.service';
4
+ import { MqMessageService } from '../services/mq-message.service';
5
+ export declare class GenerateCodePublisherRabbitmq extends RabbitMqPublisher<CodeGenerationOptions> {
6
+ protected readonly mqMessageService: MqMessageService;
7
+ protected readonly mqMessageQueueService: MqMessageQueueService;
8
+ constructor(mqMessageService: MqMessageService, mqMessageQueueService: MqMessageQueueService);
9
+ options(): QueuesModuleOptions;
10
+ }
11
+ //# sourceMappingURL=generate-code-publisher.service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generate-code-publisher.service.d.ts","sourceRoot":"","sources":["../../src/jobs/generate-code-publisher.service.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,iBAAiB,EAAE,MAAM,gDAAgD,CAAC;AACnF,OAAO,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAC3E,OAAO,EAAE,qBAAqB,EAAE,MAAM,sCAAsC,CAAC;AAC7E,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAGlE,qBACa,6BAA8B,SAAQ,iBAAiB,CAAC,qBAAqB,CAAC;IAEnF,SAAS,CAAC,QAAQ,CAAC,gBAAgB,EAAE,gBAAgB;IACrD,SAAS,CAAC,QAAQ,CAAC,qBAAqB,EAAE,qBAAqB;gBAD5C,gBAAgB,EAAE,gBAAgB,EAClC,qBAAqB,EAAE,qBAAqB;IAKnE,OAAO,IAAI,mBAAmB;CAKjC"}
@@ -0,0 +1,39 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ var __importDefault = (this && this.__importDefault) || function (mod) {
12
+ return (mod && mod.__esModule) ? mod : { "default": mod };
13
+ };
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.GenerateCodePublisherRabbitmq = void 0;
16
+ const common_1 = require("@nestjs/common");
17
+ const rabbitmq_publisher_service_1 = require("../services/queues/rabbitmq-publisher.service");
18
+ const mq_message_queue_service_1 = require("../services/mq-message-queue.service");
19
+ const mq_message_service_1 = require("../services/mq-message.service");
20
+ const generate_code_queue_options_1 = __importDefault(require("./generate-code-queue-options"));
21
+ let GenerateCodePublisherRabbitmq = class GenerateCodePublisherRabbitmq extends rabbitmq_publisher_service_1.RabbitMqPublisher {
22
+ constructor(mqMessageService, mqMessageQueueService) {
23
+ super(mqMessageService, mqMessageQueueService);
24
+ this.mqMessageService = mqMessageService;
25
+ this.mqMessageQueueService = mqMessageQueueService;
26
+ }
27
+ options() {
28
+ return {
29
+ ...generate_code_queue_options_1.default
30
+ };
31
+ }
32
+ };
33
+ exports.GenerateCodePublisherRabbitmq = GenerateCodePublisherRabbitmq;
34
+ exports.GenerateCodePublisherRabbitmq = GenerateCodePublisherRabbitmq = __decorate([
35
+ (0, common_1.Injectable)(),
36
+ __metadata("design:paramtypes", [mq_message_service_1.MqMessageService,
37
+ mq_message_queue_service_1.MqMessageQueueService])
38
+ ], GenerateCodePublisherRabbitmq);
39
+ //# sourceMappingURL=generate-code-publisher.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generate-code-publisher.service.js","sourceRoot":"","sources":["../../src/jobs/generate-code-publisher.service.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,2CAA4C;AAE5C,8FAAmF;AAEnF,mFAA6E;AAC7E,uEAAkE;AAClE,gGAAqE;AAG9D,IAAM,6BAA6B,GAAnC,MAAM,6BAA8B,SAAQ,8CAAwC;IACvF,YACuB,gBAAkC,EAClC,qBAA4C;QAE/D,KAAK,CAAC,gBAAgB,EAAE,qBAAqB,CAAC,CAAC;QAH5B,qBAAgB,GAAhB,gBAAgB,CAAkB;QAClC,0BAAqB,GAArB,qBAAqB,CAAuB;IAGnE,CAAC;IAED,OAAO;QACH,OAAO;YACH,GAAG,qCAAwB;SAC9B,CAAA;IACL,CAAC;CACJ,CAAA;AAbY,sEAA6B;wCAA7B,6BAA6B;IADzC,IAAA,mBAAU,GAAE;qCAGgC,qCAAgB;QACX,gDAAqB;GAH1D,6BAA6B,CAazC","sourcesContent":["import { Injectable } from '@nestjs/common';\n\nimport { RabbitMqPublisher } from 'src/services/queues/rabbitmq-publisher.service';\nimport { CodeGenerationOptions, QueuesModuleOptions } from \"../interfaces\";\nimport { MqMessageQueueService } from '../services/mq-message-queue.service';\nimport { MqMessageService } from '../services/mq-message.service';\nimport generateCodeQueueOptions from './generate-code-queue-options';\n\n@Injectable()\nexport class GenerateCodePublisherRabbitmq extends RabbitMqPublisher<CodeGenerationOptions> {\n constructor(\n protected readonly mqMessageService: MqMessageService,\n protected readonly mqMessageQueueService: MqMessageQueueService,\n ) {\n super(mqMessageService, mqMessageQueueService);\n }\n\n options(): QueuesModuleOptions {\n return {\n ...generateCodeQueueOptions\n }\n }\n}\n"]}
@@ -0,0 +1,8 @@
1
+ import { BrokerType } from "../interfaces";
2
+ declare const _default: {
3
+ name: string;
4
+ type: BrokerType;
5
+ queueName: string;
6
+ };
7
+ export default _default;
8
+ //# sourceMappingURL=generate-code-queue-options.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generate-code-queue-options.d.ts","sourceRoot":"","sources":["../../src/jobs/generate-code-queue-options.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;;;;;;AAI3C,wBAIE"}
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const interfaces_1 = require("../interfaces");
4
+ const QUEUE_NAME = 'generate_code_queue_rabbitmq';
5
+ exports.default = {
6
+ name: 'generateCodeQueueRabbitmq',
7
+ type: interfaces_1.BrokerType.RabbitMQ,
8
+ queueName: QUEUE_NAME,
9
+ };
10
+ //# sourceMappingURL=generate-code-queue-options.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generate-code-queue-options.js","sourceRoot":"","sources":["../../src/jobs/generate-code-queue-options.ts"],"names":[],"mappings":";;AAAA,8CAA2C;AAE3C,MAAM,UAAU,GAAG,8BAA8B,CAAC;AAElD,kBAAe;IACX,IAAI,EAAE,2BAA2B;IACjC,IAAI,EAAE,uBAAU,CAAC,QAAQ;IACzB,SAAS,EAAE,UAAU;CACxB,CAAC","sourcesContent":["import { BrokerType } from \"../interfaces\";\n\nconst QUEUE_NAME = 'generate_code_queue_rabbitmq';\n\nexport default {\n name: 'generateCodeQueueRabbitmq',\n type: BrokerType.RabbitMQ,\n queueName: QUEUE_NAME,\n};\n"]}
@@ -0,0 +1,18 @@
1
+ import { QueueMessage } from 'src/interfaces/mq';
2
+ import { ModelMetadataService } from 'src/services/model-metadata.service';
3
+ import { PollerService } from 'src/services/poller.service';
4
+ import { RabbitMqSubscriber } from 'src/services/queues/rabbitmq-subscriber.service';
5
+ import { CodeGenerationOptions, QueuesModuleOptions } from 'src/interfaces';
6
+ import { MqMessageQueueService } from 'src/services/mq-message-queue.service';
7
+ import { MqMessageService } from 'src/services/mq-message.service';
8
+ export declare class GenerateCodeSubscriberRabbitmq extends RabbitMqSubscriber<CodeGenerationOptions> {
9
+ readonly mqMessageService: MqMessageService;
10
+ readonly mqMessageQueueService: MqMessageQueueService;
11
+ readonly poller: PollerService;
12
+ readonly modelMetadataService: ModelMetadataService;
13
+ private readonly generateCodeSubscriberLogger;
14
+ constructor(mqMessageService: MqMessageService, mqMessageQueueService: MqMessageQueueService, poller: PollerService, modelMetadataService: ModelMetadataService);
15
+ options(): QueuesModuleOptions;
16
+ subscribe(message: QueueMessage<CodeGenerationOptions>): Promise<string>;
17
+ }
18
+ //# sourceMappingURL=generate-code-subscriber.service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generate-code-subscriber.service.d.ts","sourceRoot":"","sources":["../../src/jobs/generate-code-subscriber.service.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAGjD,OAAO,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAC;AAC3E,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAC5D,OAAO,EAAE,kBAAkB,EAAE,MAAM,iDAAiD,CAAC;AACrF,OAAO,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAC5E,OAAO,EAAE,qBAAqB,EAAE,MAAM,uCAAuC,CAAC;AAC9E,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AAGnE,qBACa,8BAA+B,SAAQ,kBAAkB,CAAC,qBAAqB,CAAC;IAIrF,QAAQ,CAAC,gBAAgB,EAAE,gBAAgB;IAC3C,QAAQ,CAAC,qBAAqB,EAAE,qBAAqB;IACrD,QAAQ,CAAC,MAAM,EAAE,aAAa;IAE9B,QAAQ,CAAC,oBAAoB,EAAE,oBAAoB;IAPvD,OAAO,CAAC,QAAQ,CAAC,4BAA4B,CAAmD;gBAGnF,gBAAgB,EAAE,gBAAgB,EAClC,qBAAqB,EAAE,qBAAqB,EAC5C,MAAM,EAAE,aAAa,EAErB,oBAAoB,EAAE,oBAAoB;IAKvD,OAAO,IAAI,mBAAmB;IAMxB,SAAS,CAAC,OAAO,EAAE,YAAY,CAAC,qBAAqB,CAAC;CAyB/D"}
@@ -0,0 +1,70 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
12
+ return function (target, key) { decorator(target, key, paramIndex); }
13
+ };
14
+ var __importDefault = (this && this.__importDefault) || function (mod) {
15
+ return (mod && mod.__esModule) ? mod : { "default": mod };
16
+ };
17
+ var GenerateCodeSubscriberRabbitmq_1;
18
+ Object.defineProperty(exports, "__esModule", { value: true });
19
+ exports.GenerateCodeSubscriberRabbitmq = void 0;
20
+ const common_1 = require("@nestjs/common");
21
+ const create_field_metadata_dto_1 = require("../dtos/create-field-metadata.dto");
22
+ const model_metadata_service_1 = require("../services/model-metadata.service");
23
+ const poller_service_1 = require("../services/poller.service");
24
+ const rabbitmq_subscriber_service_1 = require("../services/queues/rabbitmq-subscriber.service");
25
+ const mq_message_queue_service_1 = require("../services/mq-message-queue.service");
26
+ const mq_message_service_1 = require("../services/mq-message.service");
27
+ const generate_code_queue_options_1 = __importDefault(require("./generate-code-queue-options"));
28
+ let GenerateCodeSubscriberRabbitmq = GenerateCodeSubscriberRabbitmq_1 = class GenerateCodeSubscriberRabbitmq extends rabbitmq_subscriber_service_1.RabbitMqSubscriber {
29
+ constructor(mqMessageService, mqMessageQueueService, poller, modelMetadataService) {
30
+ super(mqMessageService, mqMessageQueueService);
31
+ this.mqMessageService = mqMessageService;
32
+ this.mqMessageQueueService = mqMessageQueueService;
33
+ this.poller = poller;
34
+ this.modelMetadataService = modelMetadataService;
35
+ this.generateCodeSubscriberLogger = new common_1.Logger(GenerateCodeSubscriberRabbitmq_1.name);
36
+ }
37
+ options() {
38
+ return {
39
+ ...generate_code_queue_options_1.default
40
+ };
41
+ }
42
+ async subscribe(message) {
43
+ this.generateCodeSubscriberLogger.debug(`Received message: ${JSON.stringify(message)}`);
44
+ const codeGnerationOptions = message.payload;
45
+ const { model, removeFieldCodeOuput, refreshModelCodeOutput } = await this.modelMetadataService.generateCode(codeGnerationOptions);
46
+ const coModelSingularNames = model.fields.
47
+ filter(field => field.type === create_field_metadata_dto_1.SolidFieldType.relation && field.relationCreateInverse === true)
48
+ .map(field => field.relationCoModelSingularName);
49
+ for (const singularName of coModelSingularNames) {
50
+ const coModel = await this.modelMetadataService.findOneBySingularName(singularName);
51
+ const inverseOptions = {
52
+ modelId: coModel.id,
53
+ dryRun: codeGnerationOptions.dryRun
54
+ };
55
+ await this.modelMetadataService.generateCode(inverseOptions);
56
+ }
57
+ await this.modelMetadataService.generateVAMConfig(model.id);
58
+ return `${removeFieldCodeOuput} \n ${refreshModelCodeOutput}`;
59
+ }
60
+ };
61
+ exports.GenerateCodeSubscriberRabbitmq = GenerateCodeSubscriberRabbitmq;
62
+ exports.GenerateCodeSubscriberRabbitmq = GenerateCodeSubscriberRabbitmq = GenerateCodeSubscriberRabbitmq_1 = __decorate([
63
+ (0, common_1.Injectable)(),
64
+ __param(3, (0, common_1.Inject)((0, common_1.forwardRef)(() => model_metadata_service_1.ModelMetadataService))),
65
+ __metadata("design:paramtypes", [mq_message_service_1.MqMessageService,
66
+ mq_message_queue_service_1.MqMessageQueueService,
67
+ poller_service_1.PollerService,
68
+ model_metadata_service_1.ModelMetadataService])
69
+ ], GenerateCodeSubscriberRabbitmq);
70
+ //# sourceMappingURL=generate-code-subscriber.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generate-code-subscriber.service.js","sourceRoot":"","sources":["../../src/jobs/generate-code-subscriber.service.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;AAAA,2CAAwE;AAIxE,iFAAoE;AACpE,+EAA2E;AAC3E,+DAA4D;AAC5D,gGAAqF;AAErF,mFAA8E;AAC9E,uEAAmE;AACnE,gGAAqE;AAG9D,IAAM,8BAA8B,sCAApC,MAAM,8BAA+B,SAAQ,gDAAyC;IAGzF,YACa,gBAAkC,EAClC,qBAA4C,EAC5C,MAAqB,EAE9B,oBAAmD;QAEnD,KAAK,CAAC,gBAAgB,EAAE,qBAAqB,CAAC,CAAC;QANtC,qBAAgB,GAAhB,gBAAgB,CAAkB;QAClC,0BAAqB,GAArB,qBAAqB,CAAuB;QAC5C,WAAM,GAAN,MAAM,CAAe;QAErB,yBAAoB,GAApB,oBAAoB,CAAsB;QAPtC,iCAA4B,GAAG,IAAI,eAAM,CAAC,gCAA8B,CAAC,IAAI,CAAC,CAAC;IAUhG,CAAC;IAED,OAAO;QACH,OAAO;YACH,GAAG,qCAAwB;SAC9B,CAAA;IACL,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,OAA4C;QACxD,IAAI,CAAC,4BAA4B,CAAC,KAAK,CAAC,qBAAqB,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAExF,MAAM,oBAAoB,GAAG,OAAO,CAAC,OAAO,CAAC;QAE7C,MAAM,EAAE,KAAK,EAAE,oBAAoB,EAAE,sBAAsB,EAAE,GAAG,MAAM,IAAI,CAAC,oBAAoB,CAAC,YAAY,CAAC,oBAAoB,CAAC,CAAC;QAGnI,MAAM,oBAAoB,GAAG,KAAK,CAAC,MAAM;YACrC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,0CAAc,CAAC,QAAQ,IAAI,KAAK,CAAC,qBAAqB,KAAK,IAAI,CAAC;aAC9F,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC;QAErD,KAAK,MAAM,YAAY,IAAI,oBAAoB,EAAE,CAAC;YAC9C,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,oBAAoB,CAAC,qBAAqB,CAAC,YAAY,CAAC,CAAC;YACpF,MAAM,cAAc,GAA0B;gBAC1C,OAAO,EAAE,OAAO,CAAC,EAAE;gBACnB,MAAM,EAAE,oBAAoB,CAAC,MAAM;aACtC,CAAC;YACF,MAAM,IAAI,CAAC,oBAAoB,CAAC,YAAY,CAAC,cAAc,CAAC,CAAC;QACjE,CAAC;QAED,MAAM,IAAI,CAAC,oBAAoB,CAAC,iBAAiB,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAE5D,OAAO,GAAG,oBAAoB,OAAO,sBAAsB,EAAE,CAAC;IAClE,CAAC;CACJ,CAAA;AA5CY,wEAA8B;yCAA9B,8BAA8B;IAD1C,IAAA,mBAAU,GAAE;IAQJ,WAAA,IAAA,eAAM,EAAC,IAAA,mBAAU,EAAC,GAAG,EAAE,CAAC,6CAAoB,CAAC,CAAC,CAAA;qCAHpB,qCAAgB;QACX,gDAAqB;QACpC,8BAAa;QAEC,6CAAoB;GAR9C,8BAA8B,CA4C1C","sourcesContent":["import { forwardRef, Inject, Injectable, Logger } from '@nestjs/common';\n\nimport { QueueMessage } from 'src/interfaces/mq';\nimport { DatabaseSubscriber } from 'src/services/queues/database-subscriber.service';\nimport { SolidFieldType } from 'src/dtos/create-field-metadata.dto';\nimport { ModelMetadataService } from 'src/services/model-metadata.service';\nimport { PollerService } from 'src/services/poller.service';\nimport { RabbitMqSubscriber } from 'src/services/queues/rabbitmq-subscriber.service';\nimport { CodeGenerationOptions, QueuesModuleOptions } from 'src/interfaces';\nimport { MqMessageQueueService } from 'src/services/mq-message-queue.service';\nimport { MqMessageService } from 'src/services/mq-message.service';\nimport generateCodeQueueOptions from './generate-code-queue-options';\n\n@Injectable()\nexport class GenerateCodeSubscriberRabbitmq extends RabbitMqSubscriber<CodeGenerationOptions> {\n private readonly generateCodeSubscriberLogger = new Logger(GenerateCodeSubscriberRabbitmq.name);\n\n constructor(\n readonly mqMessageService: MqMessageService,\n readonly mqMessageQueueService: MqMessageQueueService,\n readonly poller: PollerService,\n @Inject(forwardRef(() => ModelMetadataService))\n readonly modelMetadataService: ModelMetadataService,\n ) {\n super(mqMessageService, mqMessageQueueService);\n }\n\n options(): QueuesModuleOptions {\n return {\n ...generateCodeQueueOptions\n }\n }\n\n async subscribe(message: QueueMessage<CodeGenerationOptions>) {\n this.generateCodeSubscriberLogger.debug(`Received message: ${JSON.stringify(message)}`);\n\n const codeGnerationOptions = message.payload;\n\n const { model, removeFieldCodeOuput, refreshModelCodeOutput } = await this.modelMetadataService.generateCode(codeGnerationOptions);\n\n // Generate the code for models which are linked to fields having an inverse relation\n const coModelSingularNames = model.fields.\n filter(field => field.type === SolidFieldType.relation && field.relationCreateInverse === true)\n .map(field => field.relationCoModelSingularName);\n\n for (const singularName of coModelSingularNames) {\n const coModel = await this.modelMetadataService.findOneBySingularName(singularName);\n const inverseOptions: CodeGenerationOptions = {\n modelId: coModel.id,\n dryRun: codeGnerationOptions.dryRun\n };\n await this.modelMetadataService.generateCode(inverseOptions);\n }\n\n await this.modelMetadataService.generateVAMConfig(model.id);\n\n return `${removeFieldCodeOuput} \\n ${refreshModelCodeOutput}`;\n }\n}\n"]}
@@ -9,6 +9,6 @@ export declare class TestQueueSubscriber extends RabbitMqSubscriber<any> {
9
9
  private readonly testQueueLogger;
10
10
  constructor(mqMessageService: MqMessageService, mqMessageQueueService: MqMessageQueueService);
11
11
  options(): QueuesModuleOptions;
12
- subscribe(message: QueueMessage<any>): Promise<unknown>;
12
+ subscribe(message: QueueMessage<any>): void;
13
13
  }
14
14
  //# sourceMappingURL=test-queue-subscriber.service.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"test-queue-subscriber.service.d.ts","sourceRoot":"","sources":["../../src/jobs/test-queue-subscriber.service.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,kBAAkB,EAAE,MAAM,iDAAiD,CAAC;AACrF,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAClE,OAAO,EAAE,qBAAqB,EAAE,MAAM,sCAAsC,CAAC;AAC7E,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAEpD,qBACa,mBAAoB,SAAQ,kBAAkB,CAAC,GAAG,CAAC;IAGxD,QAAQ,CAAC,gBAAgB,EAAE,gBAAgB;IAC3C,QAAQ,CAAC,qBAAqB,EAAE,qBAAqB;IAHzD,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAwC;gBAE3D,gBAAgB,EAAE,gBAAgB,EAClC,qBAAqB,EAAE,qBAAqB;IAKzD,OAAO,IAAI,mBAAmB;IAM9B,SAAS,CAAC,OAAO,EAAE,YAAY,CAAC,GAAG,CAAC;CAYvC"}
1
+ {"version":3,"file":"test-queue-subscriber.service.d.ts","sourceRoot":"","sources":["../../src/jobs/test-queue-subscriber.service.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,kBAAkB,EAAE,MAAM,iDAAiD,CAAC;AACrF,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAClE,OAAO,EAAE,qBAAqB,EAAE,MAAM,sCAAsC,CAAC;AAC7E,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAEpD,qBACa,mBAAoB,SAAQ,kBAAkB,CAAC,GAAG,CAAC;IAGxD,QAAQ,CAAC,gBAAgB,EAAE,gBAAgB;IAC3C,QAAQ,CAAC,qBAAqB,EAAE,qBAAqB;IAHzD,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAwC;gBAE3D,gBAAgB,EAAE,gBAAgB,EAClC,qBAAqB,EAAE,qBAAqB;IAKzD,OAAO,IAAI,mBAAmB;IAM9B,SAAS,CAAC,OAAO,EAAE,YAAY,CAAC,GAAG,CAAC;CAoBvC"}
@@ -33,12 +33,15 @@ let TestQueueSubscriber = TestQueueSubscriber_1 = class TestQueueSubscriber exte
33
33
  }
34
34
  subscribe(message) {
35
35
  this.testQueueLogger.debug(`Received message: ${JSON.stringify(message)}`);
36
- return new Promise((resolve, reject) => {
37
- setTimeout(() => {
38
- this.testQueueLogger.debug(`Processed message: ${JSON.stringify(message)}`);
39
- resolve({ status: 'success', messageId: message.messageId, message: `Processed message` });
40
- }, 10000);
41
- });
36
+ let timeoutSecondsParsed = 10;
37
+ const timeoutSeconds = message?.payload?.timeoutSeconds;
38
+ if (timeoutSeconds) {
39
+ timeoutSecondsParsed = +timeoutSeconds;
40
+ }
41
+ this.testQueueLogger.debug(`Processing message with timeout: ${timeoutSecondsParsed}`);
42
+ setTimeout(() => {
43
+ this.testQueueLogger.debug(`Processed message: ${JSON.stringify(message)}`);
44
+ }, timeoutSecondsParsed * 1000);
42
45
  }
43
46
  };
44
47
  exports.TestQueueSubscriber = TestQueueSubscriber;
@@ -1 +1 @@
1
- {"version":3,"file":"test-queue-subscriber.service.js","sourceRoot":"","sources":["../../src/jobs/test-queue-subscriber.service.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2CAAoD;AAEpD,gGAAqF;AAErF,8EAAmD;AACnD,uEAAkE;AAClE,mFAA6E;AAItE,IAAM,mBAAmB,2BAAzB,MAAM,mBAAoB,SAAQ,gDAAuB;IAE5D,YACa,gBAAkC,EAClC,qBAA4C;QAErD,KAAK,CAAC,gBAAgB,EAAE,qBAAqB,CAAC,CAAC;QAHtC,qBAAgB,GAAhB,gBAAgB,CAAkB;QAClC,0BAAqB,GAArB,qBAAqB,CAAuB;QAHxC,oBAAe,GAAG,IAAI,eAAM,CAAC,qBAAmB,CAAC,IAAI,CAAC,CAAC;IAMxE,CAAC;IAED,OAAO;QACH,OAAO;YACH,GAAG,4BAAe;SACrB,CAAA;IACL,CAAC;IAED,SAAS,CAAC,OAA0B;QAEhC,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,qBAAqB,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAE3E,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YAEnC,UAAU,CAAC,GAAG,EAAE;gBACZ,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,sBAAsB,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;gBAC5E,OAAO,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,OAAO,EAAE,mBAAmB,EAAE,CAAC,CAAC;YAC/F,CAAC,EAAE,KAAK,CAAC,CAAC;QACd,CAAC,CAAC,CAAC;IACP,CAAC;CACJ,CAAA;AA3BY,kDAAmB;8BAAnB,mBAAmB;IAD/B,IAAA,mBAAU,GAAE;qCAIsB,qCAAgB;QACX,gDAAqB;GAJhD,mBAAmB,CA2B/B","sourcesContent":["import { Injectable, Logger } from '@nestjs/common';\n\nimport { RabbitMqSubscriber } from 'src/services/queues/rabbitmq-subscriber.service';\nimport { QueueMessage } from 'src/interfaces/mq';\nimport testQueueConfig from './test-queue-options';\nimport { MqMessageService } from '../services/mq-message.service';\nimport { MqMessageQueueService } from '../services/mq-message-queue.service';\nimport { QueuesModuleOptions } from \"../interfaces\";\n\n@Injectable()\nexport class TestQueueSubscriber extends RabbitMqSubscriber<any> {\n private readonly testQueueLogger = new Logger(TestQueueSubscriber.name);\n constructor(\n readonly mqMessageService: MqMessageService,\n readonly mqMessageQueueService: MqMessageQueueService,\n ) {\n super(mqMessageService, mqMessageQueueService);\n }\n\n options(): QueuesModuleOptions {\n return {\n ...testQueueConfig\n }\n }\n\n subscribe(message: QueueMessage<any>) {\n // console.log(`Received message ${JSON.stringify(message)}`);\n this.testQueueLogger.debug(`Received message: ${JSON.stringify(message)}`);\n\n return new Promise((resolve, reject) => {\n // Simulate some processing time\n setTimeout(() => {\n this.testQueueLogger.debug(`Processed message: ${JSON.stringify(message)}`);\n resolve({ status: 'success', messageId: message.messageId, message: `Processed message` });\n }, 10000); // Simulate 1 second processing time\n });\n }\n}\n"]}
1
+ {"version":3,"file":"test-queue-subscriber.service.js","sourceRoot":"","sources":["../../src/jobs/test-queue-subscriber.service.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2CAAoD;AAEpD,gGAAqF;AAErF,8EAAmD;AACnD,uEAAkE;AAClE,mFAA6E;AAItE,IAAM,mBAAmB,2BAAzB,MAAM,mBAAoB,SAAQ,gDAAuB;IAE5D,YACa,gBAAkC,EAClC,qBAA4C;QAErD,KAAK,CAAC,gBAAgB,EAAE,qBAAqB,CAAC,CAAC;QAHtC,qBAAgB,GAAhB,gBAAgB,CAAkB;QAClC,0BAAqB,GAArB,qBAAqB,CAAuB;QAHxC,oBAAe,GAAG,IAAI,eAAM,CAAC,qBAAmB,CAAC,IAAI,CAAC,CAAC;IAMxE,CAAC;IAED,OAAO;QACH,OAAO;YACH,GAAG,4BAAe;SACrB,CAAA;IACL,CAAC;IAED,SAAS,CAAC,OAA0B;QAEhC,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,qBAAqB,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAE3E,IAAI,oBAAoB,GAAG,EAAE,CAAC;QAC9B,MAAM,cAAc,GAAG,OAAO,EAAE,OAAO,EAAE,cAAc,CAAC;QACxD,IAAI,cAAc,EAAE,CAAC;YACjB,oBAAoB,GAAG,CAAC,cAAc,CAAC;QAC3C,CAAC;QAED,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,oCAAoC,oBAAoB,EAAE,CAAC,CAAC;QAGvF,UAAU,CAAC,GAAG,EAAE;YACZ,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,sBAAsB,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAEhF,CAAC,EAAE,oBAAoB,GAAG,IAAI,CAAC,CAAC;IAGpC,CAAC;CACJ,CAAA;AAnCY,kDAAmB;8BAAnB,mBAAmB;IAD/B,IAAA,mBAAU,GAAE;qCAIsB,qCAAgB;QACX,gDAAqB;GAJhD,mBAAmB,CAmC/B","sourcesContent":["import { Injectable, Logger } from '@nestjs/common';\n\nimport { RabbitMqSubscriber } from 'src/services/queues/rabbitmq-subscriber.service';\nimport { QueueMessage } from 'src/interfaces/mq';\nimport testQueueConfig from './test-queue-options';\nimport { MqMessageService } from '../services/mq-message.service';\nimport { MqMessageQueueService } from '../services/mq-message-queue.service';\nimport { QueuesModuleOptions } from \"../interfaces\";\n\n@Injectable()\nexport class TestQueueSubscriber extends RabbitMqSubscriber<any> {\n private readonly testQueueLogger = new Logger(TestQueueSubscriber.name);\n constructor(\n readonly mqMessageService: MqMessageService,\n readonly mqMessageQueueService: MqMessageQueueService,\n ) {\n super(mqMessageService, mqMessageQueueService);\n }\n\n options(): QueuesModuleOptions {\n return {\n ...testQueueConfig\n }\n }\n\n subscribe(message: QueueMessage<any>) {\n // console.log(`Received message ${JSON.stringify(message)}`);\n this.testQueueLogger.debug(`Received message: ${JSON.stringify(message)}`);\n\n let timeoutSecondsParsed = 10;\n const timeoutSeconds = message?.payload?.timeoutSeconds;\n if (timeoutSeconds) {\n timeoutSecondsParsed = +timeoutSeconds;\n }\n\n this.testQueueLogger.debug(`Processing message with timeout: ${timeoutSecondsParsed}`);\n\n // Simulate some processing time\n setTimeout(() => {\n this.testQueueLogger.debug(`Processed message: ${JSON.stringify(message)}`);\n // resolve({ status: 'success', messageId: message.messageId, message: `Processed message` });\n }, timeoutSecondsParsed * 1000);\n\n // return new Promise((resolve, reject) => {});\n }\n}\n"]}
@@ -0,0 +1,11 @@
1
+ import { QueuesModuleOptions, TriggerMcpClientOptions } from "src/interfaces";
2
+ import { MqMessageQueueService } from "src/services/mq-message-queue.service";
3
+ import { MqMessageService } from "src/services/mq-message.service";
4
+ import { RabbitMqPublisher } from "src/services/queues/rabbitmq-publisher.service";
5
+ export declare class TriggerMcpClientPublisherRabbitmq extends RabbitMqPublisher<TriggerMcpClientOptions> {
6
+ protected readonly mqMessageService: MqMessageService;
7
+ protected readonly mqMessageQueueService: MqMessageQueueService;
8
+ constructor(mqMessageService: MqMessageService, mqMessageQueueService: MqMessageQueueService);
9
+ options(): QueuesModuleOptions;
10
+ }
11
+ //# sourceMappingURL=trigger-mcp-client-publisher.service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"trigger-mcp-client-publisher.service.d.ts","sourceRoot":"","sources":["../../src/jobs/trigger-mcp-client-publisher.service.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,uBAAuB,EAAE,MAAM,gBAAgB,CAAC;AAC9E,OAAO,EAAE,qBAAqB,EAAE,MAAM,uCAAuC,CAAC;AAC9E,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AACnE,OAAO,EAAE,iBAAiB,EAAE,MAAM,gDAAgD,CAAC;AAGnF,qBACa,iCAAkC,SAAQ,iBAAiB,CAAC,uBAAuB,CAAC;IAEzF,SAAS,CAAC,QAAQ,CAAC,gBAAgB,EAAE,gBAAgB;IACrD,SAAS,CAAC,QAAQ,CAAC,qBAAqB,EAAE,qBAAqB;gBAD5C,gBAAgB,EAAE,gBAAgB,EAClC,qBAAqB,EAAE,qBAAqB;IAKnE,OAAO,IAAI,mBAAmB;CAKjC"}