@multiplayer-app/ai-agent-node 0.1.0-beta.3 → 0.1.0-beta.5

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 (230) hide show
  1. package/dist/cjs/{config.js → config.cjs} +5 -6
  2. package/dist/cjs/config.cjs.map +1 -0
  3. package/dist/cjs/helpers/{AIHelper.js → AIHelper.cjs} +46 -49
  4. package/dist/cjs/helpers/AIHelper.cjs.map +1 -0
  5. package/dist/cjs/helpers/AIHelper.d.ts +1 -1
  6. package/dist/cjs/helpers/AIHelper.d.ts.map +1 -1
  7. package/dist/cjs/helpers/{AIHelper.test.js → AIHelper.test.cjs} +14 -14
  8. package/dist/cjs/helpers/{AIHelper.test.js.map → AIHelper.test.cjs.map} +1 -1
  9. package/dist/cjs/helpers/{ConfigHelper.js → ConfigHelper.cjs} +4 -5
  10. package/dist/cjs/helpers/ConfigHelper.cjs.map +1 -0
  11. package/dist/cjs/helpers/{ContextLimiter.js → ContextLimiter.cjs} +2 -3
  12. package/dist/cjs/helpers/{ContextLimiter.js.map → ContextLimiter.cjs.map} +1 -1
  13. package/dist/cjs/helpers/{FileHelper.js → FileHelper.cjs} +17 -19
  14. package/dist/cjs/helpers/FileHelper.cjs.map +1 -0
  15. package/dist/cjs/helpers/SetupHelper.cjs +37 -0
  16. package/dist/cjs/helpers/SetupHelper.cjs.map +1 -0
  17. package/dist/cjs/helpers/{index.js → index.cjs} +5 -5
  18. package/dist/cjs/helpers/{index.js.map → index.cjs.map} +1 -1
  19. package/dist/cjs/helpers/index.d.ts +5 -5
  20. package/dist/cjs/helpers/index.d.ts.map +1 -1
  21. package/dist/cjs/index.cjs +34 -0
  22. package/dist/cjs/index.cjs.map +1 -0
  23. package/dist/cjs/index.d.ts +13 -13
  24. package/dist/cjs/index.d.ts.map +1 -1
  25. package/dist/cjs/libs/{index.js → index.cjs} +3 -3
  26. package/dist/cjs/libs/{index.js.map → index.cjs.map} +1 -1
  27. package/dist/cjs/libs/index.d.ts +3 -3
  28. package/dist/cjs/libs/index.d.ts.map +1 -1
  29. package/dist/cjs/libs/kafka/{consumer.js → consumer.cjs} +17 -19
  30. package/dist/cjs/libs/kafka/consumer.cjs.map +1 -0
  31. package/dist/cjs/libs/kafka/{index.js → index.cjs} +2 -2
  32. package/dist/cjs/libs/kafka/{index.js.map → index.cjs.map} +1 -1
  33. package/dist/cjs/libs/kafka/index.d.ts +2 -2
  34. package/dist/cjs/libs/kafka/index.d.ts.map +1 -1
  35. package/dist/cjs/libs/kafka/{kafka.js → kafka.cjs} +5 -5
  36. package/dist/cjs/libs/kafka/{kafka.js.map → kafka.cjs.map} +1 -1
  37. package/dist/cjs/libs/kafka/{producer.js → producer.cjs} +2 -2
  38. package/dist/cjs/libs/kafka/producer.cjs.map +1 -0
  39. package/dist/cjs/libs/logger/{config.js → config.cjs} +1 -2
  40. package/dist/cjs/libs/logger/config.cjs.map +1 -0
  41. package/dist/cjs/libs/logger/{index.js → index.cjs} +5 -5
  42. package/dist/cjs/libs/logger/{index.js.map → index.cjs.map} +1 -1
  43. package/dist/cjs/libs/logger/index.d.ts +2 -2
  44. package/dist/cjs/libs/logger/index.d.ts.map +1 -1
  45. package/dist/cjs/libs/logger/{kafkajs-logger-creator.js → kafkajs-logger-creator.cjs} +2 -2
  46. package/dist/cjs/libs/logger/{kafkajs-logger-creator.js.map → kafkajs-logger-creator.cjs.map} +1 -1
  47. package/dist/cjs/libs/s3/{index.js → index.cjs} +2 -2
  48. package/dist/cjs/libs/s3/{index.js.map → index.cjs.map} +1 -1
  49. package/dist/cjs/libs/s3/index.d.ts +2 -2
  50. package/dist/cjs/libs/s3/index.d.ts.map +1 -1
  51. package/dist/cjs/libs/s3/{s3.lib.js → s3.lib.cjs} +22 -26
  52. package/dist/cjs/libs/s3/s3.lib.cjs.map +1 -0
  53. package/dist/cjs/processors/{ChatProcessor.js → ChatProcessor.cjs} +78 -83
  54. package/dist/cjs/processors/ChatProcessor.cjs.map +1 -0
  55. package/dist/cjs/processors/ChatProcessor.d.ts +2 -2
  56. package/dist/cjs/processors/ChatProcessor.d.ts.map +1 -1
  57. package/dist/cjs/processors/{ModelsProcessor.js → ModelsProcessor.cjs} +2 -2
  58. package/dist/cjs/processors/{ModelsProcessor.js.map → ModelsProcessor.cjs.map} +1 -1
  59. package/dist/cjs/processors/{index.js → index.cjs} +2 -2
  60. package/dist/cjs/processors/{index.js.map → index.cjs.map} +1 -1
  61. package/dist/cjs/processors/index.d.ts +2 -2
  62. package/dist/cjs/processors/index.d.ts.map +1 -1
  63. package/dist/cjs/services/{AIService.js → AIService.cjs} +15 -19
  64. package/dist/cjs/services/AIService.cjs.map +1 -0
  65. package/dist/cjs/services/AIService.d.ts +1 -1
  66. package/dist/cjs/services/AIService.d.ts.map +1 -1
  67. package/dist/cjs/services/{InternalEventsHandler.js → InternalEventsHandler.cjs} +4 -4
  68. package/dist/cjs/services/{InternalEventsHandler.js.map → InternalEventsHandler.cjs.map} +1 -1
  69. package/dist/cjs/services/{KafkaService.js → KafkaService.cjs} +19 -20
  70. package/dist/cjs/services/KafkaService.cjs.map +1 -0
  71. package/dist/cjs/services/{ModelFetcher.js → ModelFetcher.cjs} +12 -12
  72. package/dist/cjs/services/ModelFetcher.cjs.map +1 -0
  73. package/dist/cjs/services/{RedisService.js → RedisService.cjs} +27 -28
  74. package/dist/cjs/services/RedisService.cjs.map +1 -0
  75. package/dist/cjs/services/{SocketService.js → SocketService.cjs} +13 -14
  76. package/dist/cjs/services/SocketService.cjs.map +1 -0
  77. package/dist/cjs/services/index.cjs +23 -0
  78. package/dist/cjs/services/{index.js.map → index.cjs.map} +1 -1
  79. package/dist/cjs/services/index.d.ts +6 -6
  80. package/dist/cjs/services/index.d.ts.map +1 -1
  81. package/dist/cjs/store/{AgentStore.js → AgentStore.cjs} +2 -2
  82. package/dist/cjs/store/{AgentStore.js.map → AgentStore.cjs.map} +1 -1
  83. package/dist/cjs/store/{ArtifactStore.js → ArtifactStore.cjs} +2 -4
  84. package/dist/cjs/store/ArtifactStore.cjs.map +1 -0
  85. package/dist/cjs/store/{ConfigStore.js → ConfigStore.cjs} +9 -10
  86. package/dist/cjs/store/ConfigStore.cjs.map +1 -0
  87. package/dist/cjs/store/{ConfigStore.test.js → ConfigStore.test.cjs} +2 -2
  88. package/dist/cjs/store/{ConfigStore.test.js.map → ConfigStore.test.cjs.map} +1 -1
  89. package/dist/cjs/store/{ModelStore.js → ModelStore.cjs} +4 -4
  90. package/dist/cjs/store/ModelStore.cjs.map +1 -0
  91. package/dist/cjs/store/{ModelStore.test.js → ModelStore.test.cjs} +17 -17
  92. package/dist/cjs/store/ModelStore.test.cjs.map +1 -0
  93. package/dist/cjs/store/{index.js → index.cjs} +4 -4
  94. package/dist/cjs/store/{index.js.map → index.cjs.map} +1 -1
  95. package/dist/cjs/store/index.d.ts +4 -4
  96. package/dist/cjs/store/index.d.ts.map +1 -1
  97. package/dist/cjs/tsconfig.cjs.tsbuildinfo +1 -0
  98. package/dist/esm/config.js +5 -6
  99. package/dist/esm/config.js.map +1 -1
  100. package/dist/esm/helpers/AIHelper.d.ts +1 -1
  101. package/dist/esm/helpers/AIHelper.d.ts.map +1 -1
  102. package/dist/esm/helpers/AIHelper.js +34 -37
  103. package/dist/esm/helpers/AIHelper.js.map +1 -1
  104. package/dist/esm/helpers/AIHelper.test.js +2 -2
  105. package/dist/esm/helpers/AIHelper.test.js.map +1 -1
  106. package/dist/esm/helpers/ConfigHelper.js +2 -3
  107. package/dist/esm/helpers/ConfigHelper.js.map +1 -1
  108. package/dist/esm/helpers/ContextLimiter.js +2 -3
  109. package/dist/esm/helpers/ContextLimiter.js.map +1 -1
  110. package/dist/esm/helpers/FileHelper.js +5 -7
  111. package/dist/esm/helpers/FileHelper.js.map +1 -1
  112. package/dist/esm/helpers/SetupHelper.js +5 -5
  113. package/dist/esm/helpers/SetupHelper.js.map +1 -1
  114. package/dist/esm/helpers/index.d.ts +5 -5
  115. package/dist/esm/helpers/index.d.ts.map +1 -1
  116. package/dist/esm/helpers/index.js +5 -5
  117. package/dist/esm/helpers/index.js.map +1 -1
  118. package/dist/esm/index.d.ts +13 -13
  119. package/dist/esm/index.d.ts.map +1 -1
  120. package/dist/esm/index.js +12 -12
  121. package/dist/esm/index.js.map +1 -1
  122. package/dist/esm/libs/index.d.ts +3 -3
  123. package/dist/esm/libs/index.d.ts.map +1 -1
  124. package/dist/esm/libs/index.js +3 -3
  125. package/dist/esm/libs/index.js.map +1 -1
  126. package/dist/esm/libs/kafka/consumer.js +10 -11
  127. package/dist/esm/libs/kafka/consumer.js.map +1 -1
  128. package/dist/esm/libs/kafka/index.d.ts +2 -2
  129. package/dist/esm/libs/kafka/index.d.ts.map +1 -1
  130. package/dist/esm/libs/kafka/index.js +2 -2
  131. package/dist/esm/libs/kafka/index.js.map +1 -1
  132. package/dist/esm/libs/kafka/kafka.js +2 -2
  133. package/dist/esm/libs/kafka/kafka.js.map +1 -1
  134. package/dist/esm/libs/kafka/producer.js +3 -2
  135. package/dist/esm/libs/kafka/producer.js.map +1 -1
  136. package/dist/esm/libs/logger/config.js +1 -2
  137. package/dist/esm/libs/logger/config.js.map +1 -1
  138. package/dist/esm/libs/logger/index.d.ts +2 -2
  139. package/dist/esm/libs/logger/index.d.ts.map +1 -1
  140. package/dist/esm/libs/logger/index.js +2 -2
  141. package/dist/esm/libs/logger/index.js.map +1 -1
  142. package/dist/esm/libs/logger/kafkajs-logger-creator.js +1 -1
  143. package/dist/esm/libs/logger/kafkajs-logger-creator.js.map +1 -1
  144. package/dist/esm/libs/s3/index.d.ts +2 -2
  145. package/dist/esm/libs/s3/index.d.ts.map +1 -1
  146. package/dist/esm/libs/s3/index.js +2 -2
  147. package/dist/esm/libs/s3/index.js.map +1 -1
  148. package/dist/esm/libs/s3/s3.lib.js +10 -14
  149. package/dist/esm/libs/s3/s3.lib.js.map +1 -1
  150. package/dist/esm/processors/ChatProcessor.d.ts +2 -2
  151. package/dist/esm/processors/ChatProcessor.d.ts.map +1 -1
  152. package/dist/esm/processors/ChatProcessor.js +35 -37
  153. package/dist/esm/processors/ChatProcessor.js.map +1 -1
  154. package/dist/esm/processors/ModelsProcessor.js +1 -1
  155. package/dist/esm/processors/ModelsProcessor.js.map +1 -1
  156. package/dist/esm/processors/index.d.ts +2 -2
  157. package/dist/esm/processors/index.d.ts.map +1 -1
  158. package/dist/esm/processors/index.js +2 -2
  159. package/dist/esm/processors/index.js.map +1 -1
  160. package/dist/esm/services/AIService.d.ts +1 -1
  161. package/dist/esm/services/AIService.d.ts.map +1 -1
  162. package/dist/esm/services/AIService.js +11 -14
  163. package/dist/esm/services/AIService.js.map +1 -1
  164. package/dist/esm/services/InternalEventsHandler.js +7 -6
  165. package/dist/esm/services/InternalEventsHandler.js.map +1 -1
  166. package/dist/esm/services/KafkaService.js +13 -10
  167. package/dist/esm/services/KafkaService.js.map +1 -1
  168. package/dist/esm/services/ModelFetcher.js +3 -2
  169. package/dist/esm/services/ModelFetcher.js.map +1 -1
  170. package/dist/esm/services/RedisService.js +11 -14
  171. package/dist/esm/services/RedisService.js.map +1 -1
  172. package/dist/esm/services/SocketService.js +7 -9
  173. package/dist/esm/services/SocketService.js.map +1 -1
  174. package/dist/esm/services/index.d.ts +6 -6
  175. package/dist/esm/services/index.d.ts.map +1 -1
  176. package/dist/esm/services/index.js +6 -6
  177. package/dist/esm/services/index.js.map +1 -1
  178. package/dist/esm/store/AgentStore.js +3 -5
  179. package/dist/esm/store/AgentStore.js.map +1 -1
  180. package/dist/esm/store/ArtifactStore.js +3 -7
  181. package/dist/esm/store/ArtifactStore.js.map +1 -1
  182. package/dist/esm/store/ConfigStore.js +18 -19
  183. package/dist/esm/store/ConfigStore.js.map +1 -1
  184. package/dist/esm/store/ConfigStore.test.js +1 -1
  185. package/dist/esm/store/ConfigStore.test.js.map +1 -1
  186. package/dist/esm/store/ModelStore.js +6 -6
  187. package/dist/esm/store/ModelStore.js.map +1 -1
  188. package/dist/esm/store/ModelStore.test.js +12 -12
  189. package/dist/esm/store/ModelStore.test.js.map +1 -1
  190. package/dist/esm/store/index.d.ts +4 -4
  191. package/dist/esm/store/index.d.ts.map +1 -1
  192. package/dist/esm/store/index.js +4 -4
  193. package/dist/esm/store/index.js.map +1 -1
  194. package/dist/esm/tsconfig.esm.tsbuildinfo +1 -0
  195. package/package.json +8 -7
  196. package/dist/cjs/config.js.map +0 -1
  197. package/dist/cjs/helpers/AIHelper.js.map +0 -1
  198. package/dist/cjs/helpers/ConfigHelper.js.map +0 -1
  199. package/dist/cjs/helpers/FileHelper.js.map +0 -1
  200. package/dist/cjs/helpers/SetupHelper.js +0 -37
  201. package/dist/cjs/helpers/SetupHelper.js.map +0 -1
  202. package/dist/cjs/index.js +0 -34
  203. package/dist/cjs/index.js.map +0 -1
  204. package/dist/cjs/libs/kafka/consumer.js.map +0 -1
  205. package/dist/cjs/libs/kafka/producer.js.map +0 -1
  206. package/dist/cjs/libs/logger/config.js.map +0 -1
  207. package/dist/cjs/libs/s3/s3.lib.js.map +0 -1
  208. package/dist/cjs/processors/ChatProcessor.js.map +0 -1
  209. package/dist/cjs/services/AIService.js.map +0 -1
  210. package/dist/cjs/services/KafkaService.js.map +0 -1
  211. package/dist/cjs/services/ModelFetcher.js.map +0 -1
  212. package/dist/cjs/services/RedisService.js.map +0 -1
  213. package/dist/cjs/services/SocketService.js.map +0 -1
  214. package/dist/cjs/services/index.js +0 -23
  215. package/dist/cjs/store/ArtifactStore.js.map +0 -1
  216. package/dist/cjs/store/ConfigStore.js.map +0 -1
  217. package/dist/cjs/store/ModelStore.js.map +0 -1
  218. package/dist/cjs/store/ModelStore.test.js.map +0 -1
  219. package/dist/tsconfig.cjs.tsbuildinfo +0 -1
  220. package/dist/tsconfig.esm.tsbuildinfo +0 -1
  221. /package/dist/cjs/libs/kafka/{config.js → config.cjs} +0 -0
  222. /package/dist/cjs/libs/kafka/{config.js.map → config.cjs.map} +0 -0
  223. /package/dist/cjs/libs/logger/{logger.js → logger.cjs} +0 -0
  224. /package/dist/cjs/libs/logger/{logger.js.map → logger.cjs.map} +0 -0
  225. /package/dist/cjs/libs/s3/{config.js → config.cjs} +0 -0
  226. /package/dist/cjs/libs/s3/{config.js.map → config.cjs.map} +0 -0
  227. /package/dist/cjs/tools/{generateChartTool.js → generateChartTool.cjs} +0 -0
  228. /package/dist/cjs/tools/{generateChartTool.js.map → generateChartTool.cjs.map} +0 -0
  229. /package/dist/cjs/tools/{proposeFormValuesTool.js → proposeFormValuesTool.cjs} +0 -0
  230. /package/dist/cjs/tools/{proposeFormValuesTool.js.map → proposeFormValuesTool.cjs.map} +0 -0
@@ -2,15 +2,15 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.ChatProcessor = void 0;
4
4
  const ai_agent_types_1 = require("@multiplayer-app/ai-agent-types");
5
- const index_js_1 = require("../services/index.js");
6
- const index_js_2 = require("../services/index.js");
7
- const index_js_3 = require("../helpers/index.js");
8
- const index_js_4 = require("../store/index.js");
9
- const index_js_5 = require("../helpers/index.js");
10
- const config_js_1 = require("../config.js");
5
+ const services_1 = require("../services/index.cjs");
6
+ const services_2 = require("../services/index.cjs");
7
+ const helpers_1 = require("../helpers/index.cjs");
8
+ const store_1 = require("../store/index.cjs");
9
+ const helpers_2 = require("../helpers/index.cjs");
10
+ const config_1 = require("../config.cjs");
11
11
  const stream_1 = require("stream");
12
12
  const util_1 = require("util");
13
- const index_js_6 = require("../libs/logger/index.js");
13
+ const logger_1 = require("../libs/logger/index.cjs");
14
14
  const pipelineAsync = (0, util_1.promisify)(stream_1.pipeline);
15
15
  class ChatProcessor {
16
16
  constructor(chatRepository, messageRepository, artifactStore) {
@@ -22,22 +22,21 @@ class ChatProcessor {
22
22
  return `${contextKey} session ${new Date().toISOString()}`;
23
23
  }
24
24
  async listChats(params) {
25
- var _a, _b;
26
25
  // Build filter object from params
27
26
  const filter = {};
28
- if (params === null || params === void 0 ? void 0 : params.userId) {
27
+ if (params?.userId) {
29
28
  filter.userId = params.userId;
30
29
  }
31
- if (params === null || params === void 0 ? void 0 : params.contextKey) {
30
+ if (params?.contextKey) {
32
31
  filter.contextKey = params.contextKey;
33
32
  }
34
33
  // Build query options for sort and limit with defaults
35
34
  const options = {
36
35
  sort: {
37
- field: (_a = params === null || params === void 0 ? void 0 : params.sortField) !== null && _a !== void 0 ? _a : 'updatedAt',
38
- order: (_b = params === null || params === void 0 ? void 0 : params.sortOrder) !== null && _b !== void 0 ? _b : ai_agent_types_1.SortOrder.Desc
36
+ field: params?.sortField ?? 'updatedAt',
37
+ order: params?.sortOrder ?? ai_agent_types_1.SortOrder.Desc
39
38
  },
40
- limit: params === null || params === void 0 ? void 0 : params.limit
39
+ limit: params?.limit
41
40
  };
42
41
  // Use aggregation to fetch chats with related messages
43
42
  return this.chatRepository.findWithMessages(filter, options);
@@ -61,8 +60,7 @@ class ChatProcessor {
61
60
  this.artifactStore.deleteArtifacts(chatId);
62
61
  }
63
62
  async upsertAndGetChat(payload, excludeSocketId) {
64
- var _a;
65
- const targetUserId = (_a = payload.userId) !== null && _a !== void 0 ? _a : 'guest';
63
+ const targetUserId = payload.userId ?? 'guest';
66
64
  let chat = null;
67
65
  if (payload.chatId) {
68
66
  chat = await this.chatRepository.findById(payload.chatId);
@@ -94,7 +92,7 @@ class ChatProcessor {
94
92
  if (!content) {
95
93
  return this.getTemporaryTitle(payload.contextKey);
96
94
  }
97
- return index_js_3.AIHelper.generateTitleForMessage(payload.contextKey, [{
95
+ return helpers_1.AIHelper.generateTitleForMessage(payload.contextKey, [{
98
96
  role: ai_agent_types_1.MessageRole.User,
99
97
  content: content
100
98
  }]);
@@ -105,18 +103,17 @@ class ChatProcessor {
105
103
  role,
106
104
  content: messageData.content,
107
105
  agentName: messageData.agentName,
108
- attachments: attachments !== null && attachments !== void 0 ? attachments : [],
106
+ attachments: attachments ?? [],
109
107
  reasoning: "",
110
108
  toolCalls: []
111
109
  });
112
110
  if (chat.userId) {
113
- index_js_1.socketService.emitMessageUpdate(chat.userId, message, excludeSocketId);
111
+ services_1.socketService.emitMessageUpdate(chat.userId, message, excludeSocketId);
114
112
  }
115
113
  return message;
116
114
  }
117
115
  async createChat(payload, excludeSocketId) {
118
- var _a;
119
- const targetUserId = (_a = payload.userId) !== null && _a !== void 0 ? _a : 'guest';
116
+ const targetUserId = payload.userId ?? 'guest';
120
117
  const contextKey = 'contextKey' in payload ? payload.contextKey : 'default';
121
118
  const metadata = 'metadata' in payload ? payload.metadata : {};
122
119
  const chat = await this.chatRepository.create({
@@ -128,12 +125,12 @@ class ChatProcessor {
128
125
  metadata,
129
126
  ...(payload.model ? { model: payload.model } : {})
130
127
  });
131
- await index_js_2.kafkaService.sendChatTitleGenerationEvent(chat.id);
128
+ await services_2.kafkaService.sendChatTitleGenerationEvent(chat.id);
132
129
  const initialChatResponse = {
133
130
  ...chat,
134
131
  messages: []
135
132
  };
136
- index_js_1.socketService.emitChatUpdate(targetUserId, initialChatResponse, excludeSocketId);
133
+ services_1.socketService.emitChatUpdate(targetUserId, initialChatResponse, excludeSocketId);
137
134
  return chat;
138
135
  }
139
136
  /**
@@ -141,23 +138,22 @@ class ChatProcessor {
141
138
  * This updates the message containing the tool call and optionally appends a System message.
142
139
  */
143
140
  async recordToolCallAction(params) {
144
- var _a, _b, _c, _d;
145
141
  const chat = await this.chatRepository.findById(params.chatId);
146
142
  if (!chat) {
147
143
  throw new Error('Chat not found');
148
144
  }
149
145
  const messages = await this.messageRepository.findByChatId(params.chatId);
150
- const message = messages.find((m) => { var _a; return ((_a = m.toolCalls) !== null && _a !== void 0 ? _a : []).some((c) => c.id === params.toolCallId); });
146
+ const message = messages.find((m) => (m.toolCalls ?? []).some((c) => c.id === params.toolCallId));
151
147
  if (!message) {
152
148
  throw new Error('Tool call not found');
153
149
  }
154
- const toolCalls = (_a = message.toolCalls) !== null && _a !== void 0 ? _a : [];
150
+ const toolCalls = message.toolCalls ?? [];
155
151
  const target = toolCalls.find((c) => c.id === params.toolCallId);
156
152
  if (!target) {
157
153
  throw new Error('Tool call not found');
158
154
  }
159
155
  const now = new Date().toISOString();
160
- const output = ((_b = target.output) !== null && _b !== void 0 ? _b : {});
156
+ const output = (target.output ?? {});
161
157
  const mp = (output['_mp'] && typeof output['_mp'] === 'object' && !Array.isArray(output['_mp']))
162
158
  ? output['_mp']
163
159
  : {};
@@ -167,14 +163,14 @@ class ChatProcessor {
167
163
  lastAction: {
168
164
  action: params.action,
169
165
  at: now,
170
- data: (_c = params.data) !== null && _c !== void 0 ? _c : {},
166
+ data: params.data ?? {},
171
167
  },
172
168
  actions: [
173
169
  ...actions,
174
170
  {
175
171
  action: params.action,
176
172
  at: now,
177
- data: (_d = params.data) !== null && _d !== void 0 ? _d : {},
173
+ data: params.data ?? {},
178
174
  }
179
175
  ]
180
176
  };
@@ -189,7 +185,7 @@ class ChatProcessor {
189
185
  await this.messageRepository.update(message.id, { toolCalls });
190
186
  // Bump chat updatedAt so listChats ordering reflects the action.
191
187
  await this.chatRepository.update(chat.id, { updatedAt: now });
192
- index_js_1.socketService.emitMessageUpdate(chat.userId, updatedMessage, params.excludeSocketId);
188
+ services_1.socketService.emitMessageUpdate(chat.userId, updatedMessage, params.excludeSocketId);
193
189
  if (params.systemMessage) {
194
190
  //todo discuss support for system messages
195
191
  //await this.createMessage(chat, MessageRole.System, params.systemMessage, undefined, params.excludeSocketId);
@@ -197,26 +193,25 @@ class ChatProcessor {
197
193
  return { ok: true };
198
194
  }
199
195
  async streamMessageStep(params) {
200
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l;
201
196
  const { chat, assistantMessage, existingMessages, signal, excludeSocketId, agentOptions } = params;
202
197
  if (signal.aborted) {
203
198
  return;
204
199
  }
205
- const result = await index_js_3.AIHelper.streamAssistantResponse(existingMessages, signal, agentOptions);
200
+ const result = await helpers_1.AIHelper.streamAssistantResponse(existingMessages, signal, agentOptions);
206
201
  try {
207
202
  for await (const chunk of result.fullStream) {
208
203
  if (chunk.type === 'error') {
209
- await index_js_4.agentStore.shareAgentProcessEvent(chat.id, { type: index_js_4.AgentProcessEventType.Error, data: chunk.error });
204
+ await store_1.agentStore.shareAgentProcessEvent(chat.id, { type: store_1.AgentProcessEventType.Error, data: chunk.error });
210
205
  assistantMessage.content = chunk.error.message || 'Sorry, I cannot process you request due to the error';
211
206
  await this.messageRepository.update(assistantMessage.id, assistantMessage);
212
207
  await this.chatRepository.update(chat.id, { status: ai_agent_types_1.AgentStatus.Error });
213
208
  continue;
214
209
  }
215
210
  if (chunk.type === 'abort') {
216
- await index_js_4.agentStore.shareAgentProcessEvent(chat.id, { type: index_js_4.AgentProcessEventType.Aborted, data: undefined });
211
+ await store_1.agentStore.shareAgentProcessEvent(chat.id, { type: store_1.AgentProcessEventType.Aborted, data: undefined });
217
212
  await this.chatRepository.update(chat.id, { status: ai_agent_types_1.AgentStatus.Aborted });
218
213
  await this.messageRepository.update(assistantMessage.id, assistantMessage);
219
- index_js_1.socketService.emitMessageUpdate(chat.userId, assistantMessage, excludeSocketId);
214
+ services_1.socketService.emitMessageUpdate(chat.userId, assistantMessage, excludeSocketId);
220
215
  continue;
221
216
  }
222
217
  if (chunk.type === 'finish') {
@@ -229,33 +224,34 @@ class ChatProcessor {
229
224
  }
230
225
  if (chunk.totalUsage && typeof chunk.totalUsage === 'object') {
231
226
  const totalUsage = chunk.totalUsage;
232
- assistantMessage.tokens = (_a = totalUsage.totalTokens) !== null && _a !== void 0 ? _a : (((_b = totalUsage.promptTokens) !== null && _b !== void 0 ? _b : 0) + ((_c = totalUsage.completionTokens) !== null && _c !== void 0 ? _c : 0));
227
+ assistantMessage.tokens = totalUsage.totalTokens ??
228
+ ((totalUsage.promptTokens ?? 0) + (totalUsage.completionTokens ?? 0));
233
229
  }
234
230
  await this.messageRepository.update(assistantMessage.id, { ...assistantMessage });
235
231
  if (chunk.finishReason === 'stop') {
236
- if ((_d = assistantMessage.toolCalls) === null || _d === void 0 ? void 0 : _d.some(toolCall => toolCall.requiresConfirmation && toolCall.approvalId && !toolCall.output)) {
232
+ if (assistantMessage.toolCalls?.some(toolCall => toolCall.requiresConfirmation && toolCall.approvalId && !toolCall.output)) {
237
233
  await this.chatRepository.update(chat.id, { status: ai_agent_types_1.AgentStatus.WaitingForUserAction });
238
234
  }
239
- else if (!assistantMessage.content && ((_e = assistantMessage.toolCalls) === null || _e === void 0 ? void 0 : _e.length) && assistantMessage.toolCalls[((_f = assistantMessage.toolCalls) === null || _f === void 0 ? void 0 : _f.length) - 1].output) {
235
+ else if (!assistantMessage.content && assistantMessage.toolCalls?.length && assistantMessage.toolCalls[assistantMessage.toolCalls?.length - 1].output) {
240
236
  // handle tool-calls stop, openrouter provider does not return valid type
241
- await index_js_4.agentStore.shareAgentProcessEvent(chat.id, { type: index_js_4.AgentProcessEventType.Update, data: assistantMessage });
237
+ await store_1.agentStore.shareAgentProcessEvent(chat.id, { type: store_1.AgentProcessEventType.Update, data: assistantMessage });
242
238
  await this.streamMessageStep(params);
243
239
  continue;
244
240
  }
245
241
  else {
246
242
  await this.chatRepository.update(chat.id, { status: ai_agent_types_1.AgentStatus.Finished });
247
243
  }
248
- await index_js_4.agentStore.shareAgentProcessEvent(chat.id, { type: index_js_4.AgentProcessEventType.Finished, data: assistantMessage });
244
+ await store_1.agentStore.shareAgentProcessEvent(chat.id, { type: store_1.AgentProcessEventType.Finished, data: assistantMessage });
249
245
  continue;
250
246
  }
251
247
  if (chunk.finishReason === 'tool-calls') {
252
- if ((_g = assistantMessage.toolCalls) === null || _g === void 0 ? void 0 : _g.some(toolCall => toolCall.requiresConfirmation && toolCall.approvalId && !toolCall.output)) {
248
+ if (assistantMessage.toolCalls?.some(toolCall => toolCall.requiresConfirmation && toolCall.approvalId && !toolCall.output)) {
253
249
  await this.chatRepository.update(chat.id, { status: ai_agent_types_1.AgentStatus.WaitingForUserAction });
254
- await index_js_4.agentStore.shareAgentProcessEvent(chat.id, { type: index_js_4.AgentProcessEventType.Finished, data: assistantMessage });
250
+ await store_1.agentStore.shareAgentProcessEvent(chat.id, { type: store_1.AgentProcessEventType.Finished, data: assistantMessage });
255
251
  }
256
252
  else {
257
- await index_js_4.agentStore.shareAgentProcessEvent(chat.id, {
258
- type: index_js_4.AgentProcessEventType.Update,
253
+ await store_1.agentStore.shareAgentProcessEvent(chat.id, {
254
+ type: store_1.AgentProcessEventType.Update,
259
255
  data: assistantMessage
260
256
  });
261
257
  await this.streamMessageStep(params);
@@ -263,7 +259,7 @@ class ChatProcessor {
263
259
  continue;
264
260
  }
265
261
  //todo: Handle other finish reasons // length, content, error, other, undefined
266
- await index_js_4.agentStore.shareAgentProcessEvent(chat.id, { type: index_js_4.AgentProcessEventType.Finished, data: assistantMessage });
262
+ await store_1.agentStore.shareAgentProcessEvent(chat.id, { type: store_1.AgentProcessEventType.Finished, data: assistantMessage });
267
263
  continue;
268
264
  }
269
265
  if (chunk.type === 'text-delta') {
@@ -272,8 +268,8 @@ class ChatProcessor {
272
268
  ...assistantMessage,
273
269
  content: assistantMessage.content
274
270
  };
275
- index_js_1.socketService.emitMessageUpdate(chat.userId, updatedMessage, excludeSocketId);
276
- await index_js_4.agentStore.shareAgentProcessEvent(chat.id, { type: index_js_4.AgentProcessEventType.Update, data: updatedMessage });
271
+ services_1.socketService.emitMessageUpdate(chat.userId, updatedMessage, excludeSocketId);
272
+ await store_1.agentStore.shareAgentProcessEvent(chat.id, { type: store_1.AgentProcessEventType.Update, data: updatedMessage });
277
273
  await this.messageRepository.update(assistantMessage.id, { content: assistantMessage.content });
278
274
  continue;
279
275
  }
@@ -289,7 +285,7 @@ class ChatProcessor {
289
285
  continue;
290
286
  }
291
287
  if (chunk.type === 'tool-call') { //Todo possible place to handle user-approval
292
- const toolCall = (_h = assistantMessage.toolCalls) === null || _h === void 0 ? void 0 : _h.find(toolCall => toolCall.id === chunk.toolCallId);
288
+ const toolCall = assistantMessage.toolCalls?.find(toolCall => toolCall.id === chunk.toolCallId);
293
289
  if (toolCall) {
294
290
  toolCall.status = ai_agent_types_1.AgentToolCallStatus.Running;
295
291
  toolCall.input = chunk.input;
@@ -297,7 +293,7 @@ class ChatProcessor {
297
293
  continue;
298
294
  }
299
295
  if (chunk.type === 'tool-error') {
300
- const toolCall = (_j = assistantMessage.toolCalls) === null || _j === void 0 ? void 0 : _j.find(toolCall => toolCall.id === chunk.toolCallId);
296
+ const toolCall = assistantMessage.toolCalls?.find(toolCall => toolCall.id === chunk.toolCallId);
301
297
  if (toolCall) {
302
298
  toolCall.status = ai_agent_types_1.AgentToolCallStatus.Failed;
303
299
  toolCall.error = JSON.stringify(chunk.error);
@@ -305,7 +301,7 @@ class ChatProcessor {
305
301
  continue;
306
302
  }
307
303
  if (chunk.type === 'tool-approval-request') {
308
- const toolCall = (_k = assistantMessage.toolCalls) === null || _k === void 0 ? void 0 : _k.find(toolCall => toolCall.id === chunk.toolCall.toolCallId);
304
+ const toolCall = assistantMessage.toolCalls?.find(toolCall => toolCall.id === chunk.toolCall.toolCallId);
309
305
  if (toolCall) {
310
306
  toolCall.requiresConfirmation = true;
311
307
  toolCall.approvalId = chunk.approvalId;
@@ -313,7 +309,7 @@ class ChatProcessor {
313
309
  continue;
314
310
  }
315
311
  if (chunk.type === 'tool-result') {
316
- const toolCall = (_l = assistantMessage.toolCalls) === null || _l === void 0 ? void 0 : _l.find(toolCall => toolCall.id === chunk.toolCallId);
312
+ const toolCall = assistantMessage.toolCalls?.find(toolCall => toolCall.id === chunk.toolCallId);
317
313
  if (toolCall) {
318
314
  if (chunk.output.requiresApproval) {
319
315
  toolCall.requiresConfirmation = true;
@@ -328,9 +324,9 @@ class ChatProcessor {
328
324
  if (!assistantMessage.reasoning)
329
325
  assistantMessage.reasoning = '';
330
326
  assistantMessage.reasoning += chunk.text;
331
- index_js_1.socketService.emitMessageUpdate(chat.userId, assistantMessage, excludeSocketId);
327
+ services_1.socketService.emitMessageUpdate(chat.userId, assistantMessage, excludeSocketId);
332
328
  await this.messageRepository.update(assistantMessage.id, { reasoning: assistantMessage.reasoning });
333
- await index_js_4.agentStore.shareAgentProcessEvent(chat.id, { type: index_js_4.AgentProcessEventType.Update, data: assistantMessage });
329
+ await store_1.agentStore.shareAgentProcessEvent(chat.id, { type: store_1.AgentProcessEventType.Update, data: assistantMessage });
334
330
  continue;
335
331
  }
336
332
  }
@@ -339,7 +335,7 @@ class ChatProcessor {
339
335
  if (streamError instanceof Error && streamError.name === 'AbortError') {
340
336
  return;
341
337
  }
342
- await index_js_4.agentStore.shareAgentProcessEvent(chat.id, { type: index_js_4.AgentProcessEventType.Error, data: streamError });
338
+ await store_1.agentStore.shareAgentProcessEvent(chat.id, { type: store_1.AgentProcessEventType.Error, data: streamError });
343
339
  throw streamError;
344
340
  }
345
341
  }
@@ -347,16 +343,15 @@ class ChatProcessor {
347
343
  return 'approvalId' in payload;
348
344
  }
349
345
  async processApprovalPayload(chat, payload) {
350
- var _a, _b, _c;
351
346
  const assistantMessage = await this.messageRepository.findById(payload.messageId);
352
347
  if (!assistantMessage || assistantMessage.chat !== chat.id) {
353
348
  throw new Error(`Assistant message with id ${payload.messageId} not found`);
354
349
  }
355
- const agentOptions = await index_js_3.AIHelper.getAgentOptions({
350
+ const agentOptions = await helpers_1.AIHelper.getAgentOptions({
356
351
  agentName: assistantMessage.agentName,
357
352
  context: payload.context
358
353
  });
359
- const toolCall = (_a = assistantMessage.toolCalls) === null || _a === void 0 ? void 0 : _a.find(tc => tc.approvalId === payload.approvalId);
354
+ const toolCall = assistantMessage.toolCalls?.find(tc => tc.approvalId === payload.approvalId);
360
355
  if (!toolCall) {
361
356
  // continue, tool is not found
362
357
  return {
@@ -374,14 +369,14 @@ class ChatProcessor {
374
369
  toolCall.status = ai_agent_types_1.AgentToolCallStatus.Failed;
375
370
  }
376
371
  else {
377
- const executeFunction = (_c = (_b = agentOptions.tools) === null || _b === void 0 ? void 0 : _b[toolCall.name]) === null || _c === void 0 ? void 0 : _c.execute;
372
+ const executeFunction = agentOptions.tools?.[toolCall.name]?.execute;
378
373
  if (executeFunction) {
379
374
  try {
380
375
  toolCall.output = await executeFunction(toolCall.input, { toolCallId: toolCall.id, messages: [] });
381
376
  toolCall.status = ai_agent_types_1.AgentToolCallStatus.Succeeded;
382
377
  }
383
378
  catch (error) {
384
- index_js_6.logger.error(error);
379
+ logger_1.logger.error(error);
385
380
  toolCall.status = ai_agent_types_1.AgentToolCallStatus.Failed;
386
381
  toolCall.output = {
387
382
  type: 'execution-denied',
@@ -405,10 +400,10 @@ class ChatProcessor {
405
400
  }
406
401
  async processNewUserMessage(chat, payload, prevMessages, excludeSocketId) {
407
402
  const userMessage = await this.createMessage(chat, ai_agent_types_1.MessageRole.User, { content: payload.content, agentName: undefined }, payload.attachments);
408
- await index_js_4.agentStore.shareAgentProcessEvent(chat.id, { type: index_js_4.AgentProcessEventType.Update, data: userMessage });
409
- const agentOptions = await index_js_3.AIHelper.getAgentOptions({
403
+ await store_1.agentStore.shareAgentProcessEvent(chat.id, { type: store_1.AgentProcessEventType.Update, data: userMessage });
404
+ const agentOptions = await helpers_1.AIHelper.getAgentOptions({
410
405
  contextKey: chat.contextKey,
411
- messages: await index_js_3.AIHelper.convertMessages([...prevMessages, userMessage], true),
406
+ messages: await helpers_1.AIHelper.convertMessages([...prevMessages, userMessage], true),
412
407
  context: payload.context,
413
408
  agentName: undefined,
414
409
  modelId: chat.model,
@@ -423,14 +418,14 @@ class ChatProcessor {
423
418
  }
424
419
  async streamMessage(chat, payload, excludeSocketId, onAgentStart) {
425
420
  try {
426
- const abortController = index_js_4.agentStore.registerAgentProcess(chat.id);
427
- onAgentStart === null || onAgentStart === void 0 ? void 0 : onAgentStart();
421
+ const abortController = store_1.agentStore.registerAgentProcess(chat.id);
422
+ onAgentStart?.();
428
423
  let assistantMessage;
429
424
  let agentOptions;
430
425
  const existingMessages = await this.messageRepository.findByChatId(chat.id);
431
426
  // Limit context to prevent exceeding token limits
432
- const limitedMessages = index_js_5.ContextLimiter.limitContext(existingMessages, {
433
- maxMessages: config_js_1.config.ai.maxContextMessages,
427
+ const limitedMessages = helpers_2.ContextLimiter.limitContext(existingMessages, {
428
+ maxMessages: config_1.config.ai.maxContextMessages,
434
429
  keepFirstUserMessage: true,
435
430
  keepSystemMessages: true,
436
431
  });
@@ -470,25 +465,25 @@ class ChatProcessor {
470
465
  }
471
466
  eventToChunk(event) {
472
467
  switch (event.type) {
473
- case index_js_4.AgentProcessEventType.Update:
468
+ case store_1.AgentProcessEventType.Update:
474
469
  return {
475
470
  type: ai_agent_types_1.StreamChunkType.Message,
476
471
  message: event.data
477
472
  };
478
- case index_js_4.AgentProcessEventType.Error:
473
+ case store_1.AgentProcessEventType.Error:
479
474
  return {
480
475
  type: ai_agent_types_1.StreamChunkType.Error,
481
476
  error: event.data.message || 'Unknown error occurred'
482
477
  };
483
- case index_js_4.AgentProcessEventType.Finished:
478
+ case store_1.AgentProcessEventType.Finished:
484
479
  return {
485
480
  type: ai_agent_types_1.StreamChunkType.Message,
486
481
  message: event.data
487
482
  };
488
- case index_js_4.AgentProcessEventType.Aborted:
483
+ case store_1.AgentProcessEventType.Aborted:
489
484
  // Aborted events don't produce chunks, they just signal stream end
490
485
  return null;
491
- case index_js_4.AgentProcessEventType.Stop:
486
+ case store_1.AgentProcessEventType.Stop:
492
487
  // Stop events don't produce chunks
493
488
  return null;
494
489
  default:
@@ -503,7 +498,7 @@ class ChatProcessor {
503
498
  return;
504
499
  ended = true;
505
500
  if (error) {
506
- index_js_6.logger.error({ error }, 'Message stream error');
501
+ logger_1.logger.error({ error }, 'Message stream error');
507
502
  }
508
503
  if (!stream.destroyed && !stream.writableEnded) {
509
504
  try {
@@ -511,7 +506,7 @@ class ChatProcessor {
511
506
  stream.end();
512
507
  }
513
508
  catch (e) {
514
- index_js_6.logger.error({ e }, 'Failed to end SSE stream');
509
+ logger_1.logger.error({ e }, 'Failed to end SSE stream');
515
510
  }
516
511
  }
517
512
  };
@@ -528,11 +523,11 @@ class ChatProcessor {
528
523
  if (chunk) {
529
524
  pushChunk(chunk);
530
525
  }
531
- if (event.type === index_js_4.AgentProcessEventType.Finished ||
532
- event.type === index_js_4.AgentProcessEventType.Error ||
533
- event.type === index_js_4.AgentProcessEventType.Aborted) {
526
+ if (event.type === store_1.AgentProcessEventType.Finished ||
527
+ event.type === store_1.AgentProcessEventType.Error ||
528
+ event.type === store_1.AgentProcessEventType.Aborted) {
534
529
  endStream();
535
- index_js_4.agentStore.removeListener(chatId, listener);
530
+ store_1.agentStore.removeListener(chatId, listener);
536
531
  }
537
532
  }
538
533
  catch (err) {
@@ -541,21 +536,21 @@ class ChatProcessor {
541
536
  error: err instanceof Error ? err.message : 'Unknown error occurred',
542
537
  });
543
538
  endStream(err);
544
- index_js_4.agentStore.removeListener(chatId, listener);
539
+ store_1.agentStore.removeListener(chatId, listener);
545
540
  }
546
541
  };
547
542
  // Cleanup on consumer side closing
548
543
  const closeHandler = () => {
549
- index_js_4.agentStore.removeListener(chatId, listener);
544
+ store_1.agentStore.removeListener(chatId, listener);
550
545
  };
551
546
  const errorHandler = (err) => {
552
- index_js_6.logger.error({ err }, 'Readable stream error');
553
- index_js_4.agentStore.removeListener(chatId, listener);
547
+ logger_1.logger.error({ err }, 'Readable stream error');
548
+ store_1.agentStore.removeListener(chatId, listener);
554
549
  endStream(err);
555
550
  };
556
551
  stream.on('close', closeHandler);
557
552
  stream.on('error', errorHandler);
558
- const listenerAttached = index_js_4.agentStore.addListener(chatId, listener);
553
+ const listenerAttached = store_1.agentStore.addListener(chatId, listener);
559
554
  if (!listenerAttached) {
560
555
  // Remove stream listeners if listener attachment failed to prevent memory leak
561
556
  stream.removeListener('close', closeHandler);
@@ -592,7 +587,7 @@ class ChatProcessor {
592
587
  });
593
588
  }
594
589
  catch (error) {
595
- index_js_6.logger.error({ error }, 'createMessageStream failed');
590
+ logger_1.logger.error({ error }, 'createMessageStream failed');
596
591
  if (!stream.destroyed && !stream.writableEnded) {
597
592
  stream.write(`data: ${JSON.stringify({
598
593
  type: ai_agent_types_1.StreamChunkType.Error,
@@ -603,7 +598,7 @@ class ChatProcessor {
603
598
  }
604
599
  }
605
600
  })().catch((err) => {
606
- index_js_6.logger.error({ err }, 'Unhandled stream task error');
601
+ logger_1.logger.error({ err }, 'Unhandled stream task error');
607
602
  if (!stream.destroyed)
608
603
  stream.destroy(err);
609
604
  });
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ChatProcessor.js","sourceRoot":"","sources":["../../../src/processors/ChatProcessor.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import type { AgentChatRepository, AgentMessageRepository } from '@multiplayer-app/ai-agent-db';
2
2
  import { AgentArtifact, AgentChat, AgentChatResponse, AgentAttachment, AgentMessage, MessageRole, SendMessagePayload, SortOrder, SendMessagePayloadWithContent, AdditionalContext } from '@multiplayer-app/ai-agent-types';
3
- import { ArtifactStore } from '../store/index.js';
4
- import { GenerateTextOptions } from '../services/index.js';
3
+ import { ArtifactStore } from '../store';
4
+ import { GenerateTextOptions } from '../services';
5
5
  import { PassThrough } from 'stream';
6
6
  export declare class ChatProcessor {
7
7
  private chatRepository;
@@ -1 +1 @@
1
- {"version":3,"file":"ChatProcessor.d.ts","sourceRoot":"","sources":["../../../src/processors/ChatProcessor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ChatProcessor.d.ts","sourceRoot":"","sources":["../../../src/processors/ChatProcessor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,mBAAmB,EAAE,sBAAsB,EAAC,MAAM,8BAA8B,CAAC;AAC9F,OAAO,EACL,aAAa,EACb,SAAS,EACT,iBAAiB,EACjB,eAAe,EACf,YAAY,EAIZ,WAAW,EACX,kBAAkB,EAClB,SAAS,EAIT,6BAA6B,EAC7B,iBAAiB,EAClB,MAAM,iCAAiC,CAAC;AACzC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAKzC,OAAO,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAGlD,OAAO,EAAE,WAAW,EAAY,MAAM,QAAQ,CAAC;AAO/C,qBAAa,aAAa;IAEtB,OAAO,CAAC,cAAc;IACtB,OAAO,CAAC,iBAAiB;IACzB,OAAO,CAAC,aAAa;gBAFb,cAAc,EAAE,mBAAmB,EACnC,iBAAiB,EAAE,sBAAsB,EACzC,aAAa,EAAE,aAAa;IAGtC,OAAO,CAAC,iBAAiB;IAInB,SAAS,CAAC,MAAM,CAAC,EAAE;QACvB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,SAAS,CAAC,EAAE,SAAS,CAAC;KACvB,GAAG,OAAO,CAAC,iBAAiB,EAAE,CAAC;IA0B1B,OAAO,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAYnD,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAQzC,gBAAgB,CAAC,OAAO,EAAE,kBAAkB,EAAE,eAAe,CAAC,EAAE,MAAM;IAyBtE,YAAY,CAAC,OAAO,EAAE;QAC1B,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,UAAU,EAAE,MAAM,CAAC;QACnB,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,GAAG,OAAO,CAAC,MAAM,CAAC;IAkBb,aAAa,CAAC,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,WAAW,EAAE,WAAW,EAAE,IAAI,CAAC,YAAY,EAAE,SAAS,GAAG,WAAW,CAAC,EAAE,WAAW,CAAC,EAAE,eAAe,EAAE,EAAE,eAAe,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC;IAgB7L,UAAU,CAAC,OAAO,EAAE,kBAAkB,EAAE,eAAe,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC;IAuB3F;;;OAGG;IACG,oBAAoB,CAAC,MAAM,EAAE;QACjC,MAAM,EAAE,MAAM,CAAC;QACf,UAAU,EAAE,MAAM,CAAC;QACnB,MAAM,EAAE,MAAM,CAAC;QACf,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAC9B,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,eAAe,CAAC,EAAE,MAAM,CAAC;KAC1B,GAAG,OAAO,CAAC;QAAE,EAAE,EAAE,IAAI,CAAA;KAAE,CAAC;YAiEX,iBAAiB;IAmJ/B,OAAO,CAAC,iBAAiB;YAIX,sBAAsB;IAyD9B,qBAAqB,CAAC,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,6BAA6B,GAAG;QAAE,OAAO,CAAC,EAAE,iBAAiB,CAAA;KAAE,EAAE,YAAY,EAAE,YAAY,EAAE,EAAE,eAAe,CAAC,EAAE,MAAM;;;;;;;IAsBvK,aAAa,CAAC,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,kBAAkB,GAAG;QAAE,OAAO,CAAC,EAAE,iBAAiB,CAAA;KAAE,EAAE,eAAe,CAAC,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAiDvK,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,aAAa,EAAE;IAI9C,OAAO,CAAC,YAAY;IA6BpB,gBAAgB,CAAC,MAAM,EAAE,MAAM,GAAG,WAAW;IAgFvC,mBAAmB,CACrB,OAAO,EAAE,kBAAkB,GAAG;QAAE,OAAO,CAAC,EAAE,iBAAiB,CAAA;KAAE,EAC7D,eAAe,CAAC,EAAE,MAAM,GACzB,OAAO,CAAC,WAAW,CAAC;CAyDxB"}
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.ModelsProcessor = void 0;
4
- const index_js_1 = require("../store/index.js");
4
+ const store_1 = require("../store/index.cjs");
5
5
  const providerNames = {
6
6
  openai: 'OpenAI',
7
7
  anthropic: 'Anthropic',
@@ -10,7 +10,7 @@ const providerNames = {
10
10
  };
11
11
  class ModelsProcessor {
12
12
  async getModels() {
13
- const modelStore = index_js_1.ModelStore.getInstance();
13
+ const modelStore = store_1.ModelStore.getInstance();
14
14
  if (!modelStore.hasModels()) {
15
15
  // Return empty if models haven't been loaded yet
16
16
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"ModelsProcessor.js","sourceRoot":"","sources":["../../../src/processors/ModelsProcessor.ts"],"names":[],"mappings":";;;AAAA,gDAA+C;AAE/C,MAAM,aAAa,GAA2B;IAC1C,MAAM,EAAE,QAAQ;IAChB,SAAS,EAAE,WAAW;IACtB,MAAM,EAAE,QAAQ;IAChB,UAAU,EAAE,YAAY;CAC3B,CAAC;AACF,MAAa,eAAe;IAEzB,KAAK,CAAC,SAAS;QACd,MAAM,UAAU,GAAG,qBAAU,CAAC,WAAW,EAAE,CAAC;QAE5C,IAAI,CAAC,UAAU,CAAC,SAAS,EAAE,EAAE,CAAC;YAC5B,iDAAiD;YACjD,OAAO;gBACL,MAAM,EAAE,EAAE;gBACV,SAAS,EAAE,EAAE;aACd,CAAC;QACJ,CAAC;QAED,MAAM,MAAM,GAAG,UAAU,CAAC,SAAS,EAAE,CAAC;QACtC,MAAM,SAAS,GAAG,UAAU,CAAC,YAAY,EAAE,CAAC;QAE5C,OAAO;YACL,MAAM;YACN,SAAS,EAAE,SAAS,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;gBACxC,EAAE,EAAE,UAAU;gBACd,IAAI,EAAE,aAAa,CAAC,UAAU,CAAC,IAAI,UAAU;gBAC7C,MAAM,EAAE,UAAU,CAAC,mBAAmB,CAAC,UAAU,CAAC;aACnD,CAAC,CAAC;SACJ,CAAC;IACJ,CAAC;CACF;AAzBD,0CAyBC"}
1
+ {"version":3,"file":"ModelsProcessor.js","sourceRoot":"","sources":["../../../src/processors/ModelsProcessor.ts"],"names":[],"mappings":";;;AAAA,oCAAsC;AAEtC,MAAM,aAAa,GAA2B;IAC1C,MAAM,EAAE,QAAQ;IAChB,SAAS,EAAE,WAAW;IACtB,MAAM,EAAE,QAAQ;IAChB,UAAU,EAAE,YAAY;CAC3B,CAAC;AACF,MAAa,eAAe;IAEzB,KAAK,CAAC,SAAS;QACd,MAAM,UAAU,GAAG,kBAAU,CAAC,WAAW,EAAE,CAAC;QAE5C,IAAI,CAAC,UAAU,CAAC,SAAS,EAAE,EAAE,CAAC;YAC5B,iDAAiD;YACjD,OAAO;gBACL,MAAM,EAAE,EAAE;gBACV,SAAS,EAAE,EAAE;aACd,CAAC;QACJ,CAAC;QAED,MAAM,MAAM,GAAG,UAAU,CAAC,SAAS,EAAE,CAAC;QACtC,MAAM,SAAS,GAAG,UAAU,CAAC,YAAY,EAAE,CAAC;QAE5C,OAAO;YACL,MAAM;YACN,SAAS,EAAE,SAAS,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;gBACxC,EAAE,EAAE,UAAU;gBACd,IAAI,EAAE,aAAa,CAAC,UAAU,CAAC,IAAI,UAAU;gBAC7C,MAAM,EAAE,UAAU,CAAC,mBAAmB,CAAC,UAAU,CAAC;aACnD,CAAC,CAAC;SACJ,CAAC;IACJ,CAAC;CACF;AAzBD,0CAyBC"}
@@ -14,6 +14,6 @@ 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("./ChatProcessor.js"), exports);
18
- __exportStar(require("./ModelsProcessor.js"), exports);
17
+ __exportStar(require("./ChatProcessor.cjs"), exports);
18
+ __exportStar(require("./ModelsProcessor.cjs"), exports);
19
19
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/processors/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,qDAAmC;AACnC,uDAAqC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/processors/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,kDAAgC;AAChC,oDAAkC"}
@@ -1,3 +1,3 @@
1
- export * from './ChatProcessor.js';
2
- export * from './ModelsProcessor.js';
1
+ export * from './ChatProcessor';
2
+ export * from './ModelsProcessor';
3
3
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/processors/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC;AACnC,cAAc,sBAAsB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/processors/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,mBAAmB,CAAC"}