@multiplayer-app/ai-agent-node 0.1.0-beta.7 → 0.1.0-beta.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.
Files changed (127) hide show
  1. package/dist/cjs/config.cjs +13 -22
  2. package/dist/cjs/config.cjs.map +1 -1
  3. package/dist/cjs/config.d.ts +8 -11
  4. package/dist/cjs/config.d.ts.map +1 -1
  5. package/dist/cjs/helpers/FileHelper.cjs +3 -3
  6. package/dist/cjs/helpers/FileHelper.cjs.map +1 -1
  7. package/dist/cjs/helpers/SetupHelper.cjs +5 -2
  8. package/dist/cjs/helpers/SetupHelper.cjs.map +1 -1
  9. package/dist/cjs/helpers/SetupHelper.d.ts +3 -2
  10. package/dist/cjs/helpers/SetupHelper.d.ts.map +1 -1
  11. package/dist/cjs/index.cjs +3 -1
  12. package/dist/cjs/index.cjs.map +1 -1
  13. package/dist/cjs/index.d.ts +1 -0
  14. package/dist/cjs/index.d.ts.map +1 -1
  15. package/dist/cjs/libs/index.cjs +1 -0
  16. package/dist/cjs/libs/index.cjs.map +1 -1
  17. package/dist/cjs/libs/index.d.ts +1 -0
  18. package/dist/cjs/libs/index.d.ts.map +1 -1
  19. package/dist/cjs/libs/kafka/config.cjs +8 -0
  20. package/dist/cjs/libs/kafka/config.cjs.map +1 -0
  21. package/dist/cjs/libs/kafka/config.d.ts +5 -0
  22. package/dist/cjs/libs/kafka/config.d.ts.map +1 -0
  23. package/dist/cjs/libs/kafka/consumer.cjs +131 -0
  24. package/dist/cjs/libs/kafka/consumer.cjs.map +1 -0
  25. package/dist/cjs/libs/kafka/consumer.d.ts +16 -0
  26. package/dist/cjs/libs/kafka/consumer.d.ts.map +1 -0
  27. package/dist/cjs/libs/kafka/index.cjs +19 -0
  28. package/dist/cjs/libs/kafka/index.cjs.map +1 -0
  29. package/dist/cjs/libs/kafka/index.d.ts +3 -0
  30. package/dist/cjs/libs/kafka/index.d.ts.map +1 -0
  31. package/dist/cjs/libs/kafka/kafka.cjs +27 -0
  32. package/dist/cjs/libs/kafka/kafka.cjs.map +1 -0
  33. package/dist/cjs/libs/kafka/kafka.d.ts +3 -0
  34. package/dist/cjs/libs/kafka/kafka.d.ts.map +1 -0
  35. package/dist/cjs/libs/kafka/producer.cjs +48 -0
  36. package/dist/cjs/libs/kafka/producer.cjs.map +1 -0
  37. package/dist/cjs/libs/kafka/producer.d.ts +11 -0
  38. package/dist/cjs/libs/kafka/producer.d.ts.map +1 -0
  39. package/dist/cjs/libs/logger/config.cjs +3 -4
  40. package/dist/cjs/libs/logger/config.cjs.map +1 -1
  41. package/dist/cjs/libs/logger/config.d.ts.map +1 -1
  42. package/dist/cjs/libs/s3/config.cjs +7 -5
  43. package/dist/cjs/libs/s3/config.cjs.map +1 -1
  44. package/dist/cjs/libs/s3/config.d.ts +4 -1
  45. package/dist/cjs/libs/s3/config.d.ts.map +1 -1
  46. package/dist/cjs/processors/ChatProcessor.cjs +2 -13
  47. package/dist/cjs/processors/ChatProcessor.cjs.map +1 -1
  48. package/dist/cjs/processors/ChatProcessor.d.ts +0 -1
  49. package/dist/cjs/processors/ChatProcessor.d.ts.map +1 -1
  50. package/dist/cjs/services/KafkaService.cjs +122 -0
  51. package/dist/cjs/services/KafkaService.cjs.map +1 -0
  52. package/dist/cjs/services/KafkaService.d.ts +35 -0
  53. package/dist/cjs/services/KafkaService.d.ts.map +1 -0
  54. package/dist/cjs/services/SocketService.cjs +1 -1
  55. package/dist/cjs/services/SocketService.cjs.map +1 -1
  56. package/dist/cjs/services/SocketService.d.ts +1 -1
  57. package/dist/cjs/services/SocketService.d.ts.map +1 -1
  58. package/dist/cjs/services/index.cjs +1 -0
  59. package/dist/cjs/services/index.cjs.map +1 -1
  60. package/dist/cjs/services/index.d.ts +1 -0
  61. package/dist/cjs/services/index.d.ts.map +1 -1
  62. package/dist/cjs/tools/proposeFormValuesTool.d.ts +2 -2
  63. package/dist/cjs/tsconfig.cjs.tsbuildinfo +1 -1
  64. package/dist/esm/config.d.ts +8 -11
  65. package/dist/esm/config.d.ts.map +1 -1
  66. package/dist/esm/config.js +13 -22
  67. package/dist/esm/config.js.map +1 -1
  68. package/dist/esm/helpers/FileHelper.js +3 -3
  69. package/dist/esm/helpers/FileHelper.js.map +1 -1
  70. package/dist/esm/helpers/SetupHelper.d.ts +3 -2
  71. package/dist/esm/helpers/SetupHelper.d.ts.map +1 -1
  72. package/dist/esm/helpers/SetupHelper.js +6 -3
  73. package/dist/esm/helpers/SetupHelper.js.map +1 -1
  74. package/dist/esm/index.d.ts +1 -0
  75. package/dist/esm/index.d.ts.map +1 -1
  76. package/dist/esm/index.js +1 -0
  77. package/dist/esm/index.js.map +1 -1
  78. package/dist/esm/libs/index.d.ts +1 -0
  79. package/dist/esm/libs/index.d.ts.map +1 -1
  80. package/dist/esm/libs/index.js +1 -0
  81. package/dist/esm/libs/index.js.map +1 -1
  82. package/dist/esm/libs/kafka/config.d.ts +5 -0
  83. package/dist/esm/libs/kafka/config.d.ts.map +1 -0
  84. package/dist/esm/libs/kafka/config.js +5 -0
  85. package/dist/esm/libs/kafka/config.js.map +1 -0
  86. package/dist/esm/libs/kafka/consumer.d.ts +16 -0
  87. package/dist/esm/libs/kafka/consumer.d.ts.map +1 -0
  88. package/dist/esm/libs/kafka/consumer.js +125 -0
  89. package/dist/esm/libs/kafka/consumer.js.map +1 -0
  90. package/dist/esm/libs/kafka/index.d.ts +3 -0
  91. package/dist/esm/libs/kafka/index.d.ts.map +1 -0
  92. package/dist/esm/libs/kafka/index.js +3 -0
  93. package/dist/esm/libs/kafka/index.js.map +1 -0
  94. package/dist/esm/libs/kafka/kafka.d.ts +3 -0
  95. package/dist/esm/libs/kafka/kafka.d.ts.map +1 -0
  96. package/dist/esm/libs/kafka/kafka.js +24 -0
  97. package/dist/esm/libs/kafka/kafka.js.map +1 -0
  98. package/dist/esm/libs/kafka/producer.d.ts +11 -0
  99. package/dist/esm/libs/kafka/producer.d.ts.map +1 -0
  100. package/dist/esm/libs/kafka/producer.js +45 -0
  101. package/dist/esm/libs/kafka/producer.js.map +1 -0
  102. package/dist/esm/libs/logger/config.d.ts.map +1 -1
  103. package/dist/esm/libs/logger/config.js +3 -4
  104. package/dist/esm/libs/logger/config.js.map +1 -1
  105. package/dist/esm/libs/s3/config.d.ts +4 -1
  106. package/dist/esm/libs/s3/config.d.ts.map +1 -1
  107. package/dist/esm/libs/s3/config.js +6 -4
  108. package/dist/esm/libs/s3/config.js.map +1 -1
  109. package/dist/esm/processors/ChatProcessor.d.ts +0 -1
  110. package/dist/esm/processors/ChatProcessor.d.ts.map +1 -1
  111. package/dist/esm/processors/ChatProcessor.js +2 -13
  112. package/dist/esm/processors/ChatProcessor.js.map +1 -1
  113. package/dist/esm/services/KafkaService.d.ts +35 -0
  114. package/dist/esm/services/KafkaService.d.ts.map +1 -0
  115. package/dist/esm/services/KafkaService.js +123 -0
  116. package/dist/esm/services/KafkaService.js.map +1 -0
  117. package/dist/esm/services/SocketService.d.ts +1 -1
  118. package/dist/esm/services/SocketService.d.ts.map +1 -1
  119. package/dist/esm/services/SocketService.js +1 -1
  120. package/dist/esm/services/SocketService.js.map +1 -1
  121. package/dist/esm/services/index.d.ts +1 -0
  122. package/dist/esm/services/index.d.ts.map +1 -1
  123. package/dist/esm/services/index.js +1 -0
  124. package/dist/esm/services/index.js.map +1 -1
  125. package/dist/esm/tools/proposeFormValuesTool.d.ts +2 -2
  126. package/dist/esm/tsconfig.esm.tsbuildinfo +1 -1
  127. package/package.json +9 -7
@@ -7,15 +7,14 @@ require("dotenv/config");
7
7
  * Centralized configuration for the AI Agent Service
8
8
  * All environment variables are accessed through this file
9
9
  */
10
- const SERVICE_NAME = process.env.npm_package_name;
11
10
  exports.config = {
12
11
  // Redis configuration
13
12
  redis: {
14
- url: process.env.MP_AI_REDIS_URL,
15
- host: process.env.MP_AI_REDIS_HOST ?? 'localhost',
16
- port: Number(process.env.MP_AI_REDIS_PORT ?? 6379),
17
- password: process.env.MP_AI_REDIS_PASSWORD,
18
- database: process.env.MP_AI_REDIS_DATABASE ? Number(process.env.MP_AI_REDIS_DATABASE) : undefined,
13
+ url: process.env.REDIS_URL,
14
+ host: process.env.REDIS_HOST ?? 'localhost',
15
+ port: Number(process.env.REDIS_PORT ?? 6379),
16
+ password: process.env.REDIS_PASSWORD,
17
+ database: process.env.REDIS_DATABASE ? Number(process.env.REDIS_DATABASE) : undefined,
19
18
  },
20
19
  // AI Provider API Keys
21
20
  ai: {
@@ -23,26 +22,18 @@ exports.config = {
23
22
  anthropicApiKey: process.env.ANTHROPIC_API_KEY,
24
23
  googleApiKey: process.env.GOOGLE_GENERATIVE_AI_API_KEY,
25
24
  openrouterApiKey: process.env.OPENROUTER_API_KEY,
26
- maxContextMessages: Number(process.env.MP_AI_MAX_CONTEXT_MESSAGES) || 10,
27
- defaultModel: process.env.MP_AI_DEFAULT_MODEL,
25
+ maxContextMessages: Number(process.env.MAX_CONTEXT_MESSAGES) || 10,
26
+ defaultModel: process.env.DEFAULT_MODEL,
28
27
  },
29
28
  s3: {
30
- bucket: process.env.MP_AI_S3_ATTACHMENTS_BUCKET || 'ai-agent-attachments',
31
- host: process.env.MP_AI_S3_HOST,
32
- presignedUrlExpires: Number(process.env.MP_AI_S3_PRESIGNED_URL_EXPIRES) || 120,
33
- awsRegion: process.env.AWS_REGION,
29
+ bucket: process.env.S3_ATTACHMENTS_BUCKET || 'ai-agent-attachments',
34
30
  },
35
- // File processing configuration
36
- fileProcessing: {
37
- maxExtractedTextSize: Number(process.env.MP_AI_MAX_EXTRACTED_TEXT_SIZE) || 51200,
38
- enableTextExtraction: process.env.MP_AI_ENABLE_TEXT_EXTRACTION !== 'false',
31
+ // Kafka configuration
32
+ kafka: {
33
+ groupId: process.env.KAFKA_GROUP_ID ?? 'ai-agent-node',
34
+ chatTitleGenerationTopic: process.env.KAFKA_CHAT_TITLE_GENERATION_TOPIC ?? 'chat-title-generation',
35
+ backgroundChatProcessingTopic: process.env.KAFKA_BACKGROUND_CHAT_PROCESSING_TOPIC ?? 'background-chat-processing',
39
36
  },
40
- // Logger configuration
41
- logger: {
42
- nodeEnv: process.env.MP_AI_NODE_ENV || 'development',
43
- appName: SERVICE_NAME?.split('/').pop() || 'ai-agent-node',
44
- logLevel: process.env.MP_AI_LOG_LEVEL,
45
- }
46
37
  };
47
38
  /**
48
39
  * Get Redis connection URL
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/config.ts"],"names":[],"mappings":";;;AAkDA,kCAKC;AAvDD,yBAAuB;AAEvB;;;GAGG;AAEH,MAAM,YAAY,GAAG,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC;AAErC,QAAA,MAAM,GAAG;IACpB,sBAAsB;IACtB,KAAK,EAAE;QACL,GAAG,EAAE,OAAO,CAAC,GAAG,CAAC,eAAe;QAChC,IAAI,EAAE,OAAO,CAAC,GAAG,CAAC,gBAAgB,IAAI,WAAW;QACjD,IAAI,EAAE,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,gBAAgB,IAAI,IAAI,CAAC;QAClD,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,oBAAoB;QAC1C,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC,SAAS;KAClG;IAED,uBAAuB;IACvB,EAAE,EAAE;QACF,YAAY,EAAE,OAAO,CAAC,GAAG,CAAC,cAAc;QACxC,eAAe,EAAE,OAAO,CAAC,GAAG,CAAC,iBAAiB;QAC9C,YAAY,EAAE,OAAO,CAAC,GAAG,CAAC,4BAA4B;QACtD,gBAAgB,EAAE,OAAO,CAAC,GAAG,CAAC,kBAAkB;QAChD,kBAAkB,EAAE,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,0BAA0B,CAAC,IAAI,EAAE;QACxE,YAAY,EAAE,OAAO,CAAC,GAAG,CAAC,mBAAmB;KAC9C;IACD,EAAE,EAAE;QACF,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,2BAA2B,IAAI,sBAAsB;QACzE,IAAI,EAAE,OAAO,CAAC,GAAG,CAAC,aAAa;QAC/B,mBAAmB,EAAE,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,8BAA8B,CAAC,IAAI,GAAG;QAC9E,SAAS,EAAE,OAAO,CAAC,GAAG,CAAC,UAAoB;KAC5C;IACD,gCAAgC;IAChC,cAAc,EAAE;QACd,oBAAoB,EAAE,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,6BAA6B,CAAC,IAAI,KAAK;QAChF,oBAAoB,EAAE,OAAO,CAAC,GAAG,CAAC,4BAA4B,KAAK,OAAO;KAC3E;IACD,uBAAuB;IACvB,MAAM,EAAE;QACN,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,cAAc,IAAI,aAAa;QACpD,OAAO,EAAE,YAAY,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,IAAI,eAAe;QAC1D,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,eAAe;KACtC;CACO,CAAC;AAEX;;GAEG;AACH,SAAgB,WAAW;IACzB,IAAI,cAAM,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;QACrB,OAAO,cAAM,CAAC,KAAK,CAAC,GAAG,CAAC;IAC1B,CAAC;IACD,OAAO,WAAW,cAAM,CAAC,KAAK,CAAC,IAAI,IAAI,cAAM,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;AAC7D,CAAC"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/config.ts"],"names":[],"mappings":";;;AAwCA,kCAKC;AA7CD,yBAAuB;AAEvB;;;GAGG;AAEU,QAAA,MAAM,GAAG;IACpB,sBAAsB;IACtB,KAAK,EAAE;QACL,GAAG,EAAE,OAAO,CAAC,GAAG,CAAC,SAAS;QAC1B,IAAI,EAAE,OAAO,CAAC,GAAG,CAAC,UAAU,IAAI,WAAW;QAC3C,IAAI,EAAE,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,IAAI,IAAI,CAAC;QAC5C,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,cAAc;QACpC,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,SAAS;KACtF;IAED,uBAAuB;IACvB,EAAE,EAAE;QACF,YAAY,EAAE,OAAO,CAAC,GAAG,CAAC,cAAc;QACxC,eAAe,EAAE,OAAO,CAAC,GAAG,CAAC,iBAAiB;QAC9C,YAAY,EAAE,OAAO,CAAC,GAAG,CAAC,4BAA4B;QACtD,gBAAgB,EAAE,OAAO,CAAC,GAAG,CAAC,kBAAkB;QAChD,kBAAkB,EAAE,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,IAAI,EAAE;QAClE,YAAY,EAAE,OAAO,CAAC,GAAG,CAAC,aAAa;KACxC;IACD,EAAE,EAAE;QACF,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,qBAAqB,IAAI,sBAAsB;KACpE;IACD,sBAAsB;IACtB,KAAK,EAAE;QACL,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,cAAc,IAAI,eAAe;QACtD,wBAAwB,EAAE,OAAO,CAAC,GAAG,CAAC,iCAAiC,IAAI,uBAAuB;QAClG,6BAA6B,EAAE,OAAO,CAAC,GAAG,CAAC,sCAAsC,IAAI,4BAA4B;KAClH;CACO,CAAC;AAEX;;GAEG;AACH,SAAgB,WAAW;IACzB,IAAI,cAAM,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;QACrB,OAAO,cAAM,CAAC,KAAK,CAAC,GAAG,CAAC;IAC1B,CAAC;IACD,OAAO,WAAW,cAAM,CAAC,KAAK,CAAC,IAAI,IAAI,cAAM,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;AAC7D,CAAC"}
@@ -1,4 +1,8 @@
1
1
  import 'dotenv/config';
2
+ /**
3
+ * Centralized configuration for the AI Agent Service
4
+ * All environment variables are accessed through this file
5
+ */
2
6
  export declare const config: {
3
7
  readonly redis: {
4
8
  readonly url: string | undefined;
@@ -17,18 +21,11 @@ export declare const config: {
17
21
  };
18
22
  readonly s3: {
19
23
  readonly bucket: string;
20
- readonly host: string | undefined;
21
- readonly presignedUrlExpires: number;
22
- readonly awsRegion: string;
23
- };
24
- readonly fileProcessing: {
25
- readonly maxExtractedTextSize: number;
26
- readonly enableTextExtraction: boolean;
27
24
  };
28
- readonly logger: {
29
- readonly nodeEnv: string;
30
- readonly appName: string;
31
- readonly logLevel: string | undefined;
25
+ readonly kafka: {
26
+ readonly groupId: string;
27
+ readonly chatTitleGenerationTopic: string;
28
+ readonly backgroundChatProcessingTopic: string;
32
29
  };
33
30
  };
34
31
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,eAAe,CAAC;AASvB,eAAO,MAAM,MAAM;;;;;;;;;;;;;;;;;;;;4BAuBsB,MAAM;;;;;;;;;;;CAarC,CAAC;AAEX;;GAEG;AACH,wBAAgB,WAAW,IAAI,MAAM,CAKpC"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,eAAe,CAAC;AAEvB;;;GAGG;AAEH,eAAO,MAAM,MAAM;;;;;;;;;;;;;;;;;;;;;;;;CA4BT,CAAC;AAEX;;GAEG;AACH,wBAAgB,WAAW,IAAI,MAAM,CAKpC"}
@@ -115,7 +115,7 @@ async function extractTextFromPDF(buffer) {
115
115
  const parser = new PDFParse({ data: buffer });
116
116
  const text = (await parser.getText()).text || '';
117
117
  // Limit extracted text size
118
- const maxSize = config_1.config.fileProcessing.maxExtractedTextSize;
118
+ const maxSize = Number(process.env.MAX_EXTRACTED_TEXT_SIZE) || 51200;
119
119
  return text.length > maxSize ? text.substring(0, maxSize) + '...' : text;
120
120
  }
121
121
  catch (error) {
@@ -132,7 +132,7 @@ async function extractTextFromDOCX(buffer) {
132
132
  const result = await mammoth.extractRawText({ buffer });
133
133
  const text = result.value || '';
134
134
  // Limit extracted text size
135
- const maxSize = config_1.config.fileProcessing.maxExtractedTextSize;
135
+ const maxSize = Number(process.env.MAX_EXTRACTED_TEXT_SIZE) || 51200;
136
136
  return text.length > maxSize ? text.substring(0, maxSize) + '...' : text;
137
137
  }
138
138
  catch (error) {
@@ -150,7 +150,7 @@ async function processAttachment(attachment) {
150
150
  return processed;
151
151
  }
152
152
  // Check if text extraction is enabled
153
- const enableTextExtraction = config_1.config.fileProcessing.enableTextExtraction;
153
+ const enableTextExtraction = process.env.ENABLE_TEXT_EXTRACTION !== 'false';
154
154
  if (enableTextExtraction && isDocument(attachment)) {
155
155
  try {
156
156
  processed.processingStatus = 'pending';
@@ -1 +1 @@
1
- {"version":3,"file":"FileHelper.js","sourceRoot":"","sources":["../../../src/helpers/FileHelper.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"FileHelper.js","sourceRoot":"","sources":["../../../src/helpers/FileHelper.ts"],"names":[],"mappings":"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"}
@@ -19,8 +19,10 @@ async function fetchModels() {
19
19
  throw error;
20
20
  }
21
21
  }
22
- function startServices() {
22
+ function startServices(agentChatRepository, agentMessageRepository) {
23
+ services_1.kafkaService.setRepositories(agentChatRepository, agentMessageRepository);
23
24
  return Promise.all([
25
+ services_1.kafkaService.start(),
24
26
  store_1.agentStore.initialize(),
25
27
  fetchModels(),
26
28
  s3_1.s3.ensureBucketExists(config_1.config.s3.bucket),
@@ -28,7 +30,8 @@ function startServices() {
28
30
  }
29
31
  function stopServices() {
30
32
  return Promise.all([
31
- services_1.redisService.disconnect()
33
+ services_1.redisService.disconnect(),
34
+ services_1.kafkaService.stop()
32
35
  ]);
33
36
  }
34
37
  //# sourceMappingURL=SetupHelper.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"SetupHelper.js","sourceRoot":"","sources":["../../../src/helpers/SetupHelper.ts"],"names":[],"mappings":";;AAMA,kCASC;AAED,sCAMC;AAED,oCAIC;AA7BD,2CAAwC;AACxC,oCAAkD;AAClD,0CAAyD;AACzD,mCAAgC;AAChC,sCAAmC;AAE5B,KAAK,UAAU,WAAW;IAC7B,IAAI,CAAC;QACH,MAAM,YAAY,GAAG,IAAI,uBAAY,EAAE,CAAC;QACxC,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,cAAc,EAAE,CAAC;QACnD,kBAAU,CAAC,WAAW,EAAE,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;IAC7C,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,eAAM,CAAC,KAAK,CAAC,oCAAoC,EAAE,KAAK,CAAC,CAAC;QAC1D,MAAM,KAAK,CAAC;IACd,CAAC;AACL,CAAC;AAED,SAAgB,aAAa;IAC3B,OAAO,OAAO,CAAC,GAAG,CAAC;QACjB,kBAAU,CAAC,UAAU,EAAE;QACvB,WAAW,EAAE;QACb,OAAE,CAAC,kBAAkB,CAAC,eAAM,CAAC,EAAE,CAAC,MAAM,CAAC;KACxC,CAAC,CAAA;AACJ,CAAC;AAED,SAAgB,YAAY;IAC1B,OAAO,OAAO,CAAC,GAAG,CAAC;QACjB,uBAAY,CAAC,UAAU,EAAE;KAC1B,CAAC,CAAA;AACJ,CAAC"}
1
+ {"version":3,"file":"SetupHelper.js","sourceRoot":"","sources":["../../../src/helpers/SetupHelper.ts"],"names":[],"mappings":";;AAOA,kCASC;AAED,sCASC;AAED,oCAKC;AAlCD,2CAAwC;AACxC,oCAAkD;AAClD,0CAAuE;AACvE,mCAAgC;AAChC,sCAAmC;AAG5B,KAAK,UAAU,WAAW;IAC7B,IAAI,CAAC;QACH,MAAM,YAAY,GAAG,IAAI,uBAAY,EAAE,CAAC;QACxC,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,cAAc,EAAE,CAAC;QACnD,kBAAU,CAAC,WAAW,EAAE,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;IAC7C,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,eAAM,CAAC,KAAK,CAAC,oCAAoC,EAAE,KAAK,CAAC,CAAC;QAC1D,MAAM,KAAK,CAAC;IACd,CAAC;AACL,CAAC;AAED,SAAgB,aAAa,CAAC,mBAAwC,EAAE,sBAA8C;IACpH,uBAAY,CAAC,eAAe,CAAC,mBAAmB,EAAE,sBAAsB,CAAC,CAAC;IAE1E,OAAO,OAAO,CAAC,GAAG,CAAC;QACjB,uBAAY,CAAC,KAAK,EAAE;QACpB,kBAAU,CAAC,UAAU,EAAE;QACvB,WAAW,EAAE;QACb,OAAE,CAAC,kBAAkB,CAAC,eAAM,CAAC,EAAE,CAAC,MAAM,CAAC;KACxC,CAAC,CAAA;AACJ,CAAC;AAED,SAAgB,YAAY;IAC1B,OAAO,OAAO,CAAC,GAAG,CAAC;QACjB,uBAAY,CAAC,UAAU,EAAE;QACzB,uBAAY,CAAC,IAAI,EAAE;KACpB,CAAC,CAAA;AACJ,CAAC"}
@@ -1,4 +1,5 @@
1
+ import type { AgentChatRepository, AgentMessageRepository } from '@multiplayer-app/ai-agent-db';
1
2
  export declare function fetchModels(): Promise<void>;
2
- export declare function startServices(): Promise<[void, void, void]>;
3
- export declare function stopServices(): Promise<[void]>;
3
+ export declare function startServices(agentChatRepository: AgentChatRepository, agentMessageRepository: AgentMessageRepository): Promise<[void, void, void, void]>;
4
+ export declare function stopServices(): Promise<[void, void]>;
4
5
  //# sourceMappingURL=SetupHelper.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"SetupHelper.d.ts","sourceRoot":"","sources":["../../../src/helpers/SetupHelper.ts"],"names":[],"mappings":"AAMA,wBAAsB,WAAW,kBAShC;AAED,wBAAgB,aAAa,gCAM5B;AAED,wBAAgB,YAAY,oBAI3B"}
1
+ {"version":3,"file":"SetupHelper.d.ts","sourceRoot":"","sources":["../../../src/helpers/SetupHelper.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,mBAAmB,EAAE,sBAAsB,EAAE,MAAM,8BAA8B,CAAC;AAEhG,wBAAsB,WAAW,kBAShC;AAED,wBAAgB,aAAa,CAAC,mBAAmB,EAAE,mBAAmB,EAAE,sBAAsB,EAAE,sBAAsB,qCASrH;AAED,wBAAgB,YAAY,0BAK3B"}
@@ -1,6 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.logger = exports.getLogger = exports.setLogger = exports.s3 = exports.proposeFormValuesToolName = exports.createProposeFormValuesTool = exports.stopServices = exports.startServices = exports.ModelsProcessor = exports.ChatProcessor = exports.ArtifactStore = exports.ModelStore = exports.ConfigStore = exports.AgentProcessEventType = exports.agentStore = exports.socketService = exports.redisService = void 0;
3
+ exports.logger = exports.getLogger = exports.setLogger = exports.s3 = exports.proposeFormValuesToolName = exports.createProposeFormValuesTool = exports.stopServices = exports.startServices = exports.ModelsProcessor = exports.ChatProcessor = exports.ArtifactStore = exports.ModelStore = exports.ConfigStore = exports.AgentProcessEventType = exports.agentStore = exports.socketService = exports.redisService = exports.kafkaService = void 0;
4
+ var KafkaService_1 = require("./services/KafkaService.cjs");
5
+ Object.defineProperty(exports, "kafkaService", { enumerable: true, get: function () { return KafkaService_1.kafkaService; } });
4
6
  var RedisService_1 = require("./services/RedisService.cjs");
5
7
  Object.defineProperty(exports, "redisService", { enumerable: true, get: function () { return RedisService_1.redisService; } });
6
8
  var SocketService_1 = require("./services/SocketService.cjs");
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;AAAA,wDAAuD;AAA9C,4GAAA,YAAY,OAAA;AACrB,0DAAyD;AAAhD,8GAAA,aAAa,OAAA;AACtB,iDAAuE;AAA9D,wGAAA,UAAU,OAAA;AAAE,mHAAA,qBAAqB,OAAA;AAE1C,mDAAkD;AAAzC,0GAAA,WAAW,OAAA;AACpB,iDAAgD;AAAvC,wGAAA,UAAU,OAAA;AACnB,uDAAsD;AAA7C,8GAAA,aAAa,OAAA;AACtB,2CAA8D;AAArD,2GAAA,aAAa,OAAA;AAAE,6GAAA,eAAe,OAAA;AACvC,qDAAoE;AAA3D,4GAAA,aAAa,OAAA;AAAE,2GAAA,YAAY,OAAA;AACpC,uEAAuG;AAA9F,oIAAA,2BAA2B,OAAA;AAAE,kIAAA,yBAAyB,OAAA;AAC/D,gCAA+B;AAAtB,wFAAA,EAAE,OAAA;AACX,wCAA+E;AAAtE,mGAAA,SAAS,OAAA;AAAE,mGAAA,SAAS,OAAA;AAAE,gGAAA,MAAM,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;AAAA,wDAAuD;AAA9C,4GAAA,YAAY,OAAA;AACrB,wDAAuD;AAA9C,4GAAA,YAAY,OAAA;AACrB,0DAAyD;AAAhD,8GAAA,aAAa,OAAA;AACtB,iDAAuE;AAA9D,wGAAA,UAAU,OAAA;AAAE,mHAAA,qBAAqB,OAAA;AAE1C,mDAAkD;AAAzC,0GAAA,WAAW,OAAA;AACpB,iDAAgD;AAAvC,wGAAA,UAAU,OAAA;AACnB,uDAAsD;AAA7C,8GAAA,aAAa,OAAA;AACtB,2CAA8D;AAArD,2GAAA,aAAa,OAAA;AAAE,6GAAA,eAAe,OAAA;AACvC,qDAAoE;AAA3D,4GAAA,aAAa,OAAA;AAAE,2GAAA,YAAY,OAAA;AACpC,uEAAuG;AAA9F,oIAAA,2BAA2B,OAAA;AAAE,kIAAA,yBAAyB,OAAA;AAC/D,gCAA+B;AAAtB,wFAAA,EAAE,OAAA;AACX,wCAA+E;AAAtE,mGAAA,SAAS,OAAA;AAAE,mGAAA,SAAS,OAAA;AAAE,gGAAA,MAAM,OAAA"}
@@ -1,3 +1,4 @@
1
+ export { kafkaService } from './services/KafkaService';
1
2
  export { redisService } from './services/RedisService';
2
3
  export { socketService } from './services/SocketService';
3
4
  export { agentStore, AgentProcessEventType } from './store/AgentStore';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,UAAU,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AACvE,YAAY,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,YAAY,EAAE,wBAAwB,EAAE,MAAM,oBAAoB,CAAC;AAC1H,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAChD,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC9D,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACpE,OAAO,EAAE,2BAA2B,EAAE,yBAAyB,EAAE,MAAM,+BAA+B,CAAC;AACvG,OAAO,EAAE,EAAE,EAAE,MAAM,WAAW,CAAC;AAC/B,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,WAAW,EAAE,MAAM,eAAe,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,UAAU,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AACvE,YAAY,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,YAAY,EAAE,wBAAwB,EAAE,MAAM,oBAAoB,CAAC;AAC1H,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAChD,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC9D,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACpE,OAAO,EAAE,2BAA2B,EAAE,yBAAyB,EAAE,MAAM,+BAA+B,CAAC;AACvG,OAAO,EAAE,EAAE,EAAE,MAAM,WAAW,CAAC;AAC/B,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,WAAW,EAAE,MAAM,eAAe,CAAC"}
@@ -14,6 +14,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./kafka/index.cjs"), exports);
17
18
  __exportStar(require("./logger/index.cjs"), exports);
18
19
  __exportStar(require("./s3/index.cjs"), exports);
19
20
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/libs/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2CAAyB;AACzB,uCAAqB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/libs/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,0CAAwB;AACxB,2CAAyB;AACzB,uCAAqB"}
@@ -1,3 +1,4 @@
1
+ export * from './kafka';
1
2
  export * from './logger';
2
3
  export * from './s3';
3
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/libs/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,MAAM,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/libs/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,cAAc,MAAM,CAAC"}
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.KAFKA_SESSION_TIMEOUT = exports.KAFKA_CLIENT_ID = exports.KAFKA_URI = exports.SERVICE_NAME = void 0;
4
+ exports.SERVICE_NAME = process.env.npm_package_name;
5
+ exports.KAFKA_URI = (process.env.KAFKA_URI || 'localhost:9092').split(',');
6
+ exports.KAFKA_CLIENT_ID = process.env.KAFKA_CLIENT_ID || exports.SERVICE_NAME;
7
+ exports.KAFKA_SESSION_TIMEOUT = Number.parseInt(process.env.KAFKA_SESSION_TIMEOUT || '30000');
8
+ //# sourceMappingURL=config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../../../src/libs/kafka/config.ts"],"names":[],"mappings":";;;AAAa,QAAA,YAAY,GAAG,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAA;AAC3C,QAAA,SAAS,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,SAAmB,IAAI,gBAAgB,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;AAC5E,QAAA,eAAe,GAAG,OAAO,CAAC,GAAG,CAAC,eAAyB,IAAI,oBAAY,CAAA;AACvE,QAAA,qBAAqB,GAAG,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,qBAAqB,IAAI,OAAO,CAAC,CAAA"}
@@ -0,0 +1,5 @@
1
+ export declare const SERVICE_NAME: string | undefined;
2
+ export declare const KAFKA_URI: string[];
3
+ export declare const KAFKA_CLIENT_ID: string | undefined;
4
+ export declare const KAFKA_SESSION_TIMEOUT: number;
5
+ //# sourceMappingURL=config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../../src/libs/kafka/config.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,YAAY,oBAA+B,CAAA;AACxD,eAAO,MAAM,SAAS,UAAmE,CAAA;AACzF,eAAO,MAAM,eAAe,oBAAwD,CAAA;AACpF,eAAO,MAAM,qBAAqB,QAAgE,CAAA"}
@@ -0,0 +1,131 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.KafkaConsumer = void 0;
7
+ const logger_1 = __importDefault(require("../logger/index.cjs"));
8
+ const kafka_1 = require("./kafka.cjs");
9
+ const config_1 = require("./config.cjs");
10
+ const startTimer = () => {
11
+ const startTime = process.hrtime();
12
+ return startTime;
13
+ };
14
+ const getDuration = (startTime) => {
15
+ const diff = process.hrtime(startTime);
16
+ return diff[0] * 1e3 + diff[1] * 1e-6;
17
+ };
18
+ class KafkaConsumer {
19
+ constructor(groupId) {
20
+ this.listeners = {};
21
+ this.lastHeartbeat = 0;
22
+ this.consumer = kafka_1.kafka.consumer({
23
+ groupId,
24
+ sessionTimeout: config_1.KAFKA_SESSION_TIMEOUT,
25
+ });
26
+ this.consumer.on(this.consumer.events.HEARTBEAT, ({ timestamp }) => {
27
+ this.lastHeartbeat = timestamp;
28
+ });
29
+ this.consumer.on(this.consumer.events.REQUEST_TIMEOUT, ({ timestamp }) => {
30
+ this.lastHeartbeat = 0;
31
+ });
32
+ this.consumer.on(this.consumer.events.CRASH, ({ timestamp }) => {
33
+ this.lastHeartbeat = 0;
34
+ });
35
+ }
36
+ async isConnected() {
37
+ if (Date.now() - this.lastHeartbeat < config_1.KAFKA_SESSION_TIMEOUT) {
38
+ return true;
39
+ }
40
+ try {
41
+ const { state } = await this.consumer.describeGroup();
42
+ return ['CompletingRebalance', 'PreparingRebalance', 'Stable'].includes(state);
43
+ }
44
+ catch (err) {
45
+ return false;
46
+ }
47
+ }
48
+ async connect() {
49
+ await this.consumer.connect();
50
+ }
51
+ async disconnect() {
52
+ await this.consumer.disconnect();
53
+ }
54
+ async subscribe(topic, listener) {
55
+ logger_1.default.info({ topic }, '[KAFKAJS] Subscribing for topic');
56
+ if (!this.listeners[topic]) {
57
+ this.listeners[topic] = [];
58
+ }
59
+ this.listeners[topic].push(listener);
60
+ }
61
+ async listenFnWrapper(topic, message) {
62
+ const parseStartTime = startTimer();
63
+ try {
64
+ if (!this.listeners[topic]?.length) {
65
+ logger_1.default.error(`[KAFKAJS] Missing handler for topic ${topic}`);
66
+ }
67
+ if (!message?.value) {
68
+ return;
69
+ }
70
+ const key = message?.key?.toString('utf8');
71
+ const value = JSON.parse(message.value.toString('utf8'));
72
+ const headers = message.headers;
73
+ logger_1.default.debug({
74
+ topic,
75
+ key,
76
+ value,
77
+ }, `[KAFKAJS] Received message from topic ${topic}`);
78
+ await Promise.all(this.listeners[topic].map(func => func(key, value, headers)));
79
+ logger_1.default.debug({
80
+ key,
81
+ topic,
82
+ duration: getDuration(parseStartTime),
83
+ }, '[KAFKAJS] Done with processing data from kafka');
84
+ }
85
+ catch (err) {
86
+ logger_1.default.error(err, '[KAFKAJS] Error on handling incoming message');
87
+ }
88
+ }
89
+ async listen(options = {
90
+ partitionsConsumedConcurrently: 3, autoCommit: true,
91
+ }) {
92
+ const topics = Object.keys(this.listeners);
93
+ await this.consumer.subscribe({
94
+ topics,
95
+ fromBeginning: true,
96
+ });
97
+ await this.consumer.run({
98
+ autoCommit: true,
99
+ ...options,
100
+ eachMessage: async ({ topic, message }) => this.listenFnWrapper(topic, message),
101
+ });
102
+ }
103
+ async listenBatch(options) {
104
+ const topics = Object.keys(this.listeners);
105
+ await this.consumer.subscribe({
106
+ topics,
107
+ fromBeginning: true,
108
+ });
109
+ await this.consumer.run({
110
+ eachBatchAutoResolve: true,
111
+ ...options,
112
+ eachBatch: async ({ batch, resolveOffset, heartbeat, commitOffsetsIfNecessary, uncommittedOffsets, isRunning, isStale, pause, }) => {
113
+ for (const message of batch.messages) {
114
+ if (!this.listeners[batch.topic]?.length) {
115
+ logger_1.default.error(`[KAFKAJS] Missing handler for topic ${batch.topic}`);
116
+ }
117
+ try {
118
+ await Promise.all(batch.messages.map(message => this.listenFnWrapper(batch.topic, message)));
119
+ }
120
+ catch (batchError) {
121
+ logger_1.default.error(batchError, '[KAFKAJS] Batch fn error');
122
+ }
123
+ resolveOffset(message.offset);
124
+ await heartbeat();
125
+ }
126
+ },
127
+ });
128
+ }
129
+ }
130
+ exports.KafkaConsumer = KafkaConsumer;
131
+ //# sourceMappingURL=consumer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"consumer.js","sourceRoot":"","sources":["../../../../src/libs/kafka/consumer.ts"],"names":[],"mappings":";;;;;;AACA,uDAA8B;AAC9B,mCAA+B;AAC/B,qCAAgD;AAEhD,MAAM,UAAU,GAAG,GAAG,EAAE;IACtB,MAAM,SAAS,GAAG,OAAO,CAAC,MAAM,EAAE,CAAA;IAClC,OAAO,SAAS,CAAA;AAClB,CAAC,CAAA;AACD,MAAM,WAAW,GAAG,CAAC,SAAS,EAAE,EAAE;IAChC,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;IACtC,OAAO,IAAI,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,CAAA;AACvC,CAAC,CAAA;AAGD,MAAa,aAAa;IAKxB,YAAY,OAAe;QAHnB,cAAS,GAA4C,EAAE,CAAA;QACvD,kBAAa,GAAW,CAAC,CAAA;QAG/B,IAAI,CAAC,QAAQ,GAAG,aAAK,CAAC,QAAQ,CAAC;YAC7B,OAAO;YACP,cAAc,EAAE,8BAAqB;SACtC,CAAC,CAAA;QACF,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE;YACjE,IAAI,CAAC,aAAa,GAAG,SAAS,CAAA;QAChC,CAAC,CAAC,CAAA;QACF,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,eAAe,EAAE,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE;YACvE,IAAI,CAAC,aAAa,GAAG,CAAC,CAAA;QACxB,CAAC,CAAC,CAAA;QACF,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE;YAC7D,IAAI,CAAC,aAAa,GAAG,CAAC,CAAA;QACxB,CAAC,CAAC,CAAA;IACJ,CAAC;IAEM,KAAK,CAAC,WAAW;QACtB,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,aAAa,GAAG,8BAAqB,EAAE,CAAC;YAC5D,OAAO,IAAI,CAAA;QACb,CAAC;QACD,IAAI,CAAC;YACH,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,aAAa,EAAE,CAAA;YACrD,OAAO,CAAC,qBAAqB,EAAE,oBAAoB,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;QAChF,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,KAAK,CAAA;QACd,CAAC;IACH,CAAC;IAEM,KAAK,CAAC,OAAO;QAClB,MAAM,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAA;IAC/B,CAAC;IAEM,KAAK,CAAC,UAAU;QACrB,MAAM,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAA;IAClC,CAAC;IAEM,KAAK,CAAC,SAAS,CAAC,KAAa,EAAE,QAA+B;QACnE,gBAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE,iCAAiC,CAAC,CAAA;QAEzD,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC;YAC3B,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,EAAE,CAAA;QAC5B,CAAC;QACD,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;IACtC,CAAC;IAEO,KAAK,CAAC,eAAe,CAC3B,KAAa,EACb,OAAgB;QAGhB,MAAM,cAAc,GAAG,UAAU,EAAE,CAAA;QACnC,IAAI,CAAC;YACH,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;gBACnC,gBAAM,CAAC,KAAK,CAAC,uCAAuC,KAAK,EAAE,CAAC,CAAA;YAC9D,CAAC;YAED,IAAI,CAAC,OAAO,EAAE,KAAK,EAAE,CAAC;gBACpB,OAAM;YACR,CAAC;YAED,MAAM,GAAG,GAAG,OAAO,EAAE,GAAG,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAA;YAC1C,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAA;YACxD,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAA;YAE/B,gBAAM,CAAC,KAAK,CACV;gBACE,KAAK;gBACL,GAAG;gBACH,KAAK;aACN,EACD,yCAAyC,KAAK,EAAE,CACjD,CAAA;YAED,MAAM,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,CAAA;YAE/E,gBAAM,CAAC,KAAK,CAAC;gBACX,GAAG;gBACH,KAAK;gBACL,QAAQ,EAAE,WAAW,CAAC,cAAc,CAAC;aACtC,EAAE,gDAAgD,CAAC,CAAA;QACtD,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,gBAAM,CAAC,KAAK,CAAC,GAAG,EAAE,8CAA8C,CAAC,CAAA;QACnE,CAAC;IACH,CAAC;IAEM,KAAK,CAAC,MAAM,CAAC,UAAgE;QAClF,8BAA8B,EAAE,CAAC,EAAE,UAAU,EAAE,IAAI;KACpD;QACC,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;QAE1C,MAAM,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC;YAC5B,MAAM;YACN,aAAa,EAAE,IAAI;SACpB,CAAC,CAAA;QAEF,MAAM,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC;YACtB,UAAU,EAAE,IAAI;YAChB,GAAG,OAAO;YACV,WAAW,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,OAAO,CAAC;SAChF,CAAC,CAAA;IACJ,CAAC;IAEM,KAAK,CAAC,WAAW,CAAC,OAA6D;QACpF,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;QAE1C,MAAM,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC;YAC5B,MAAM;YACN,aAAa,EAAE,IAAI;SACpB,CAAC,CAAA;QAEF,MAAM,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC;YACtB,oBAAoB,EAAE,IAAI;YAC1B,GAAG,OAAO;YACV,SAAS,EAAE,KAAK,EAAE,EAChB,KAAK,EACL,aAAa,EACb,SAAS,EACT,wBAAwB,EACxB,kBAAkB,EAClB,SAAS,EACT,OAAO,EACP,KAAK,GACN,EAAE,EAAE;gBACH,KAAK,MAAM,OAAO,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;oBACrC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;wBACzC,gBAAM,CAAC,KAAK,CAAC,uCAAuC,KAAK,CAAC,KAAK,EAAE,CAAC,CAAA;oBACpE,CAAC;oBAED,IAAI,CAAC;wBACH,MAAM,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,CAAA;oBAC9F,CAAC;oBAAC,OAAO,UAAU,EAAE,CAAC;wBACpB,gBAAM,CAAC,KAAK,CAAC,UAAU,EAAE,0BAA0B,CAAC,CAAA;oBACtD,CAAC;oBAED,aAAa,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;oBAC7B,MAAM,SAAS,EAAE,CAAA;gBACnB,CAAC;YACH,CAAC;SACF,CAAC,CAAA;IACJ,CAAC;CACF;AAjJD,sCAiJC"}
@@ -0,0 +1,16 @@
1
+ import { ConsumerRunConfig, IHeaders } from 'kafkajs';
2
+ export type KafkaConsumerListener = (key: any, value: any, headers?: IHeaders) => void | Promise<void>;
3
+ export declare class KafkaConsumer {
4
+ private consumer;
5
+ private listeners;
6
+ private lastHeartbeat;
7
+ constructor(groupId: string);
8
+ isConnected(): Promise<boolean>;
9
+ connect(): Promise<void>;
10
+ disconnect(): Promise<void>;
11
+ subscribe(topic: string, listener: KafkaConsumerListener): Promise<void>;
12
+ private listenFnWrapper;
13
+ listen(options?: Omit<ConsumerRunConfig, 'eachMessage' | 'eachBatch'>): Promise<void>;
14
+ listenBatch(options: Omit<ConsumerRunConfig, 'eachMessage' | 'eachBatch'>): Promise<void>;
15
+ }
16
+ //# sourceMappingURL=consumer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"consumer.d.ts","sourceRoot":"","sources":["../../../../src/libs/kafka/consumer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,iBAAiB,EAAE,QAAQ,EAAW,MAAM,SAAS,CAAA;AAcxE,MAAM,MAAM,qBAAqB,GAAG,CAAC,GAAG,KAAA,EAAE,KAAK,KAAA,EAAE,OAAO,CAAC,EAAE,QAAQ,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;AAC5F,qBAAa,aAAa;IACxB,OAAO,CAAC,QAAQ,CAAU;IAC1B,OAAO,CAAC,SAAS,CAA8C;IAC/D,OAAO,CAAC,aAAa,CAAY;gBAErB,OAAO,EAAE,MAAM;IAgBd,WAAW;IAYX,OAAO;IAIP,UAAU;IAIV,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,qBAAqB;YASvD,eAAe;IAwChB,MAAM,CAAC,OAAO,GAAE,IAAI,CAAC,iBAAiB,EAAE,aAAa,GAAG,WAAW,CAE/E;IAeY,WAAW,CAAC,OAAO,EAAE,IAAI,CAAC,iBAAiB,EAAE,aAAa,GAAG,WAAW,CAAC;CAsCvF"}
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./consumer.cjs"), exports);
18
+ __exportStar(require("./producer.cjs"), exports);
19
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/libs/kafka/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,6CAA0B;AAC1B,6CAA0B"}
@@ -0,0 +1,3 @@
1
+ export * from './consumer';
2
+ export * from './producer';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/libs/kafka/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAA;AAC1B,cAAc,YAAY,CAAA"}
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.kafka = void 0;
4
+ const kafkajs_1 = require("kafkajs");
5
+ const config_1 = require("./config.cjs");
6
+ const logger_1 = require("../logger/index.cjs");
7
+ const toBunyanLogLevel = level => {
8
+ switch (level) {
9
+ case kafkajs_1.logLevel.ERROR:
10
+ case kafkajs_1.logLevel.NOTHING:
11
+ return 'error';
12
+ case kafkajs_1.logLevel.WARN:
13
+ return 'warn';
14
+ case kafkajs_1.logLevel.INFO:
15
+ return 'info';
16
+ case kafkajs_1.logLevel.DEBUG:
17
+ return 'debug';
18
+ default:
19
+ return 'info';
20
+ }
21
+ };
22
+ exports.kafka = new kafkajs_1.Kafka({
23
+ clientId: config_1.KAFKA_CLIENT_ID,
24
+ brokers: config_1.KAFKA_URI,
25
+ logCreator: (0, logger_1.KafkaJsLogCreator)(toBunyanLogLevel),
26
+ });
27
+ //# sourceMappingURL=kafka.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"kafka.js","sourceRoot":"","sources":["../../../../src/libs/kafka/kafka.ts"],"names":[],"mappings":";;;AAAA,qCAAyC;AACzC,qCAAqD;AACrD,sCAA6C;AAG7C,MAAM,gBAAgB,GAAG,KAAK,CAAC,EAAE;IAC/B,QAAQ,KAAK,EAAE,CAAC;QACd,KAAK,kBAAQ,CAAC,KAAK,CAAC;QACpB,KAAK,kBAAQ,CAAC,OAAO;YACnB,OAAO,OAAO,CAAA;QAChB,KAAK,kBAAQ,CAAC,IAAI;YAChB,OAAO,MAAM,CAAA;QACf,KAAK,kBAAQ,CAAC,IAAI;YAChB,OAAO,MAAM,CAAA;QACf,KAAK,kBAAQ,CAAC,KAAK;YACjB,OAAO,OAAO,CAAA;QAChB;YACE,OAAO,MAAM,CAAA;IACjB,CAAC;AACH,CAAC,CAAA;AAGY,QAAA,KAAK,GAAG,IAAI,eAAK,CAAC;IAC7B,QAAQ,EAAE,wBAAe;IACzB,OAAO,EAAE,kBAAS;IAClB,UAAU,EAAE,IAAA,0BAAiB,EAAC,gBAAgB,CAAC;CAChD,CAAC,CAAA"}
@@ -0,0 +1,3 @@
1
+ import { Kafka } from 'kafkajs';
2
+ export declare const kafka: Kafka;
3
+ //# sourceMappingURL=kafka.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"kafka.d.ts","sourceRoot":"","sources":["../../../../src/libs/kafka/kafka.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAY,MAAM,SAAS,CAAA;AAsBzC,eAAO,MAAM,KAAK,OAIhB,CAAA"}
@@ -0,0 +1,48 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.KafkaProducer = void 0;
4
+ const kafka_1 = require("./kafka.cjs");
5
+ class KafkaProducer {
6
+ constructor(config = {}) {
7
+ this._isConnected = false;
8
+ this.producer = kafka_1.kafka.producer(config);
9
+ }
10
+ async connect() {
11
+ try {
12
+ await this.producer.connect();
13
+ this._isConnected = true;
14
+ }
15
+ catch (err) {
16
+ this._isConnected = false;
17
+ throw err;
18
+ }
19
+ }
20
+ isConnected() {
21
+ return this._isConnected;
22
+ }
23
+ async disconnect() {
24
+ await this.producer.disconnect();
25
+ this._isConnected = false;
26
+ }
27
+ async send(topic, value, key, headers) {
28
+ try {
29
+ await this.producer.send({
30
+ topic,
31
+ messages: [
32
+ {
33
+ key,
34
+ value: JSON.stringify(value),
35
+ headers: headers
36
+ },
37
+ ],
38
+ });
39
+ this._isConnected = true;
40
+ }
41
+ catch (err) {
42
+ this._isConnected = false;
43
+ throw err;
44
+ }
45
+ }
46
+ }
47
+ exports.KafkaProducer = KafkaProducer;
48
+ //# sourceMappingURL=producer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"producer.js","sourceRoot":"","sources":["../../../../src/libs/kafka/producer.ts"],"names":[],"mappings":";;;AACA,mCAA+B;AAE/B,MAAa,aAAa;IAGxB,YAAY,SAAyB,EAAE;QAD/B,iBAAY,GAAG,KAAK,CAAA;QAE1B,IAAI,CAAC,QAAQ,GAAG,aAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAA;IACxC,CAAC;IAEM,KAAK,CAAC,OAAO;QAClB,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAA;YAC7B,IAAI,CAAC,YAAY,GAAG,IAAI,CAAA;QAC1B,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,CAAC,YAAY,GAAG,KAAK,CAAA;YACzB,MAAM,GAAG,CAAA;QACX,CAAC;IACH,CAAC;IAEM,WAAW;QAChB,OAAO,IAAI,CAAC,YAAY,CAAA;IAC1B,CAAC;IAEM,KAAK,CAAC,UAAU;QACrB,MAAM,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAA;QAChC,IAAI,CAAC,YAAY,GAAG,KAAK,CAAA;IAC3B,CAAC;IAEM,KAAK,CAAC,IAAI,CAAC,KAAa,EAAE,KAA0B,EAAE,GAAY,EAAE,OAAkB;QAC3F,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;gBACvB,KAAK;gBACL,QAAQ,EAAE;oBACR;wBACE,GAAG;wBACH,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC;wBAC5B,OAAO,EAAE,OAAO;qBACjB;iBACF;aACF,CAAC,CAAA;YACF,IAAI,CAAC,YAAY,GAAG,IAAI,CAAA;QAC1B,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,CAAC,YAAY,GAAG,KAAK,CAAA;YACzB,MAAM,GAAG,CAAA;QACX,CAAC;IACH,CAAC;CACF;AA5CD,sCA4CC"}
@@ -0,0 +1,11 @@
1
+ import { IHeaders, ProducerConfig } from 'kafkajs';
2
+ export declare class KafkaProducer {
3
+ private producer;
4
+ private _isConnected;
5
+ constructor(config?: ProducerConfig);
6
+ connect(): Promise<void>;
7
+ isConnected(): boolean;
8
+ disconnect(): Promise<void>;
9
+ send(topic: string, value: Record<string, any>, key?: string, headers?: IHeaders): Promise<void>;
10
+ }
11
+ //# sourceMappingURL=producer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"producer.d.ts","sourceRoot":"","sources":["../../../../src/libs/kafka/producer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAY,cAAc,EAAE,MAAM,SAAS,CAAA;AAG5D,qBAAa,aAAa;IACxB,OAAO,CAAC,QAAQ,CAAU;IAC1B,OAAO,CAAC,YAAY,CAAQ;gBAChB,MAAM,GAAE,cAAmB;IAI1B,OAAO;IAUb,WAAW;IAIL,UAAU;IAKV,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,GAAG,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,QAAQ;CAkB9F"}
@@ -1,9 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.LOG_LEVEL = exports.APP_NAME = exports.isProduction = exports.NODE_ENV = void 0;
4
- const config_1 = require("../../config.cjs");
5
- exports.NODE_ENV = config_1.config.logger.nodeEnv;
4
+ exports.NODE_ENV = process.env.NODE_ENV || 'development';
6
5
  exports.isProduction = exports.NODE_ENV === 'production';
7
- exports.APP_NAME = config_1.config.logger.appName;
8
- exports.LOG_LEVEL = config_1.config.logger.logLevel || (exports.isProduction ? 'info' : 'debug');
6
+ exports.APP_NAME = process.env.npm_package_name?.split('/').pop() || 'tests';
7
+ exports.LOG_LEVEL = process.env.LOG_LEVEL || (exports.isProduction ? 'info' : 'debug');
9
8
  //# sourceMappingURL=config.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../../../src/libs/logger/config.ts"],"names":[],"mappings":";;;AAAA,yCAAqC;AAExB,QAAA,QAAQ,GAAG,eAAM,CAAC,MAAM,CAAC,OAAO,CAAA;AAChC,QAAA,YAAY,GAAG,gBAAQ,KAAK,YAAY,CAAA;AACxC,QAAA,QAAQ,GAAG,eAAM,CAAC,MAAM,CAAC,OAAiB,CAAA;AAC1C,QAAA,SAAS,GAAG,eAAM,CAAC,MAAM,CAAC,QAAQ,IAAI,CAAC,oBAAY,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAA"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../../../src/libs/logger/config.ts"],"names":[],"mappings":";;;AAAa,QAAA,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,QAAQ,IAAI,aAAa,CAAA;AAChD,QAAA,YAAY,GAAG,gBAAQ,KAAK,YAAY,CAAA;AACxC,QAAA,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,gBAAgB,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAY,IAAI,OAAO,CAAA;AAC9E,QAAA,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,SAAS,IAAI,CAAC,oBAAY,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAA"}