n8n-nodes-simple 2.2.14 → 2.3.0

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 (36) hide show
  1. package/dist/nodes/shared/api/openAiApiRequest.js +1 -10
  2. package/dist/nodes/shared/api/openAiApiRequest.js.map +1 -1
  3. package/dist/nodes/shared/config/properties/output.js +1 -1
  4. package/dist/nodes/shared/config/properties/output.js.map +1 -1
  5. package/dist/nodes/shared/core/execution/executor.d.ts +3 -3
  6. package/dist/nodes/shared/core/execution/executor.js +10 -13
  7. package/dist/nodes/shared/core/execution/executor.js.map +1 -1
  8. package/dist/nodes/shared/core/execution/messageOperation.js +3 -3
  9. package/dist/nodes/shared/core/execution/messageOperation.js.map +1 -1
  10. package/dist/nodes/shared/core/execution/outputData.d.ts +1 -1
  11. package/dist/nodes/shared/core/execution/outputData.js +5 -7
  12. package/dist/nodes/shared/core/execution/outputData.js.map +1 -1
  13. package/dist/nodes/shared/core/memory/index.d.ts +0 -1
  14. package/dist/nodes/shared/core/memory/index.js +0 -1
  15. package/dist/nodes/shared/core/memory/index.js.map +1 -1
  16. package/dist/nodes/shared/core/memory/io.d.ts +4 -5
  17. package/dist/nodes/shared/core/memory/io.js +48 -81
  18. package/dist/nodes/shared/core/memory/io.js.map +1 -1
  19. package/dist/nodes/shared/core/messages/chatHistory.d.ts +2 -1
  20. package/dist/nodes/shared/core/messages/chatHistory.js +24 -45
  21. package/dist/nodes/shared/core/messages/chatHistory.js.map +1 -1
  22. package/dist/nodes/shared/core/messages/converter.d.ts +0 -2
  23. package/dist/nodes/shared/core/messages/converter.js +6 -67
  24. package/dist/nodes/shared/core/messages/converter.js.map +1 -1
  25. package/dist/nodes/shared/core/messages/processor.d.ts +2 -2
  26. package/dist/nodes/shared/core/messages/processor.js +6 -53
  27. package/dist/nodes/shared/core/messages/processor.js.map +1 -1
  28. package/dist/nodes/shared/core/request/body.js +0 -23
  29. package/dist/nodes/shared/core/request/body.js.map +1 -1
  30. package/dist/nodes/shared/core/tools/executor.d.ts +1 -1
  31. package/dist/nodes/shared/core/tools/executor.js +11 -38
  32. package/dist/nodes/shared/core/tools/executor.js.map +1 -1
  33. package/dist/nodes/shared/core/tools/messageExtractor.js.map +1 -1
  34. package/dist/package.json +1 -1
  35. package/dist/tsconfig.tsbuildinfo +1 -1
  36. package/package.json +1 -1
@@ -18,15 +18,6 @@ async function openAiApiRequest(method, endpoint, parameters) {
18
18
  if (option && Object.keys(option).length !== 0) {
19
19
  Object.assign(options, option);
20
20
  }
21
- try {
22
- return await this.helpers.requestWithAuthentication.call(this, 'simpleOpenAiApi', options);
23
- }
24
- catch (error) {
25
- console.error('API Request failed. Request details:');
26
- console.error(`Method: ${method}`);
27
- console.error(`Endpoint: ${options.uri}`);
28
- console.error('Request body:', JSON.stringify(body, null, 2));
29
- throw error;
30
- }
21
+ return await this.helpers.requestWithAuthentication.call(this, 'simpleOpenAiApi', options);
31
22
  }
32
23
  //# sourceMappingURL=openAiApiRequest.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"openAiApiRequest.js","sourceRoot":"","sources":["../../../../nodes/shared/api/openAiApiRequest.ts"],"names":[],"mappings":";;AAeA,4CAuCC;AAvCM,KAAK,UAAU,gBAAgB,CAErC,MAA2B,EAC3B,QAAgB,EAChB,UAA8B;IAE9B,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,UAAU,aAAV,UAAU,cAAV,UAAU,GAAI,EAAE,CAAC;IAG5D,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,iBAAiB,CAAC,CAAC;IACjE,MAAM,OAAO,GAAG,MAAM,CAAC,WAAW,CAAC,OAAO,IAAI,2BAA2B,CAAC,CAAC;IAG3E,MAAM,gBAAgB,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IACrD,MAAM,iBAAiB,GAAG,QAAQ,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,QAAQ,EAAE,CAAC;IAE/E,MAAM,OAAO,GAAG;QACf,OAAO;QACP,MAAM;QACN,IAAI;QACJ,EAAE;QACF,GAAG,EAAE,GAAG,aAAH,GAAG,cAAH,GAAG,GAAI,GAAG,gBAAgB,GAAG,iBAAiB,EAAE;QACrD,IAAI,EAAE,IAAI;KACV,CAAC;IAEF,IAAI,MAAM,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAChD,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAChC,CAAC;IAED,IAAI,CAAC;QACJ,OAAO,MAAM,IAAI,CAAC,OAAO,CAAC,yBAAyB,CAAC,IAAI,CAAC,IAAI,EAAE,iBAAiB,EAAE,OAAO,CAAC,CAAC;IAC5F,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QAEhB,OAAO,CAAC,KAAK,CAAC,sCAAsC,CAAC,CAAC;QACtD,OAAO,CAAC,KAAK,CAAC,WAAW,MAAM,EAAE,CAAC,CAAC;QACnC,OAAO,CAAC,KAAK,CAAC,aAAa,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;QAC1C,OAAO,CAAC,KAAK,CAAC,eAAe,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;QAC9D,MAAM,KAAK,CAAC;IACb,CAAC;AACF,CAAC"}
1
+ {"version":3,"file":"openAiApiRequest.js","sourceRoot":"","sources":["../../../../nodes/shared/api/openAiApiRequest.ts"],"names":[],"mappings":";;AAeA,4CA8BC;AA9BM,KAAK,UAAU,gBAAgB,CAErC,MAA2B,EAC3B,QAAgB,EAChB,UAA8B;IAE9B,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,UAAU,aAAV,UAAU,cAAV,UAAU,GAAI,EAAE,CAAC;IAG5D,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,iBAAiB,CAAC,CAAC;IACjE,MAAM,OAAO,GAAG,MAAM,CAAC,WAAW,CAAC,OAAO,IAAI,2BAA2B,CAAC,CAAC;IAG3E,MAAM,gBAAgB,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IACrD,MAAM,iBAAiB,GAAG,QAAQ,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,QAAQ,EAAE,CAAC;IAE/E,MAAM,OAAO,GAAG;QACf,OAAO;QACP,MAAM;QACN,IAAI;QACJ,EAAE;QACF,GAAG,EAAE,GAAG,aAAH,GAAG,cAAH,GAAG,GAAI,GAAG,gBAAgB,GAAG,iBAAiB,EAAE;QACrD,IAAI,EAAE,IAAI;KACV,CAAC;IAEF,IAAI,MAAM,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAChD,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAChC,CAAC;IAED,OAAO,MAAM,IAAI,CAAC,OAAO,CAAC,yBAAyB,CAAC,IAAI,CAAC,IAAI,EAAE,iBAAiB,EAAE,OAAO,CAAC,CAAC;AAC5F,CAAC"}
@@ -276,7 +276,7 @@ exports.outputProperties = [
276
276
  },
277
277
  {
278
278
  name: 'Tool Calls',
279
- value: 'tool_calls',
279
+ value: 'toolCalls',
280
280
  description: "The model's intermediate steps (tools inputs and outputs)",
281
281
  },
282
282
  ],
@@ -1 +1 @@
1
- {"version":3,"file":"output.js","sourceRoot":"","sources":["../../../../../nodes/shared/config/properties/output.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"output.js","sourceRoot":"","sources":["../../../../../nodes/shared/config/properties/output.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import type { IExecuteFunctions, INodeExecutionData, IDataObject } from 'n8n-workflow';
2
- import type { BaseChatMemory } from 'langchain/memory';
2
+ import type { BufferWindowMemory } from 'langchain/memory';
3
3
  import type { ChatCompletion } from '../../api/types';
4
4
  import { ExtractedParameters } from '../../config/parameters';
5
5
  export declare function hasEmptyContent(response: ChatCompletion): boolean;
6
- export declare function executeWithFallback(executeFunctions: IExecuteFunctions, params: ExtractedParameters, memory: BaseChatMemory | undefined, messages: IDataObject[], index: number, parentMessageContentStr: string, parentMessageContentObj: object): Promise<INodeExecutionData[]>;
7
- export declare function executeSingleModel(executeFunctions: IExecuteFunctions, params: ExtractedParameters, memory: BaseChatMemory | undefined, messages: IDataObject[], index: number, parentMessageContentStr: string, parentMessageContentObj: object, modelToUse: string): Promise<INodeExecutionData[]>;
6
+ export declare function executeWithFallback(executeFunctions: IExecuteFunctions, params: ExtractedParameters, messages: IDataObject[], index: number, parentMessageContentStr: string, parentMessageContentObj: object, memory?: BufferWindowMemory): Promise<INodeExecutionData[]>;
7
+ export declare function executeSingleModel(executeFunctions: IExecuteFunctions, params: ExtractedParameters, messages: IDataObject[], index: number, parentMessageContentStr: string, parentMessageContentObj: object, modelToUse: string, memory?: BufferWindowMemory): Promise<INodeExecutionData[]>;
@@ -12,19 +12,19 @@ const io_1 = require("../memory/io");
12
12
  function hasEmptyContent(response) {
13
13
  var _a, _b, _c;
14
14
  const content = (_c = (_b = (_a = response === null || response === void 0 ? void 0 : response.choices) === null || _a === void 0 ? void 0 : _a[0]) === null || _b === void 0 ? void 0 : _b.message) === null || _c === void 0 ? void 0 : _c.content;
15
- return !content || content.trim() === '' || content === 'null' || content === 'undefined';
15
+ return !content || content.trim() === '';
16
16
  }
17
- async function executeWithFallback(executeFunctions, params, memory, messages, index, parentMessageContentStr, parentMessageContentObj) {
17
+ async function executeWithFallback(executeFunctions, params, messages, index, parentMessageContentStr, parentMessageContentObj, memory) {
18
18
  const shouldUseFallback = params.fallbackModel &&
19
19
  params.fallbackModel.trim() !== '' &&
20
20
  params.fallbackModel !== params.model;
21
21
  try {
22
- const result = await executeSingleModel(executeFunctions, params, memory, messages, index, parentMessageContentStr, parentMessageContentObj, params.model);
22
+ const result = await executeSingleModel(executeFunctions, params, messages, index, parentMessageContentStr, parentMessageContentObj, params.model, memory);
23
23
  if (shouldUseFallback && result.length > 0 && result[0].json.response) {
24
24
  const response = result[0].json.response;
25
25
  if (hasEmptyContent(response)) {
26
26
  console.log(`Primary model ${params.model} returned empty content, trying fallback model ${params.fallbackModel}`);
27
- return await executeSingleModel(executeFunctions, params, memory, messages, index, parentMessageContentStr, parentMessageContentObj, params.fallbackModel);
27
+ return await executeSingleModel(executeFunctions, params, messages, index, parentMessageContentStr, parentMessageContentObj, params.fallbackModel, memory);
28
28
  }
29
29
  }
30
30
  return result;
@@ -33,7 +33,7 @@ async function executeWithFallback(executeFunctions, params, memory, messages, i
33
33
  if (shouldUseFallback) {
34
34
  console.log(`Primary model ${params.model} failed with error, trying fallback model ${params.fallbackModel}:`, error);
35
35
  try {
36
- return await executeSingleModel(executeFunctions, params, memory, messages, index, parentMessageContentStr, parentMessageContentObj, params.fallbackModel);
36
+ return await executeSingleModel(executeFunctions, params, messages, index, parentMessageContentStr, parentMessageContentObj, params.fallbackModel, memory);
37
37
  }
38
38
  catch (fallbackError) {
39
39
  console.error(`Fallback model ${params.fallbackModel} also failed:`, fallbackError);
@@ -43,18 +43,15 @@ async function executeWithFallback(executeFunctions, params, memory, messages, i
43
43
  throw error;
44
44
  }
45
45
  }
46
- async function executeSingleModel(executeFunctions, params, memory, messages, index, parentMessageContentStr, parentMessageContentObj, modelToUse) {
47
- var _a, _b;
46
+ async function executeSingleModel(executeFunctions, params, messages, index, parentMessageContentStr, parentMessageContentObj, modelToUse, memory) {
48
47
  let response_format = (0, structuredOutput_1.configureResponseFormat)(params.responseFormat, params.outputJsonSchemaDefinition, params.structuredOutputName, params.structuredOutputDescription, params.structuredOutputProperties, params.structuredOutputIsArray, params.structuredOutputArrayName, params.structuredOutputArrayDescription);
49
48
  const { tools, invokableTools, tool_choice, structuredOutputTool, updatedResponseFormat } = await (0, setup_1.setupTools)(executeFunctions, params.structuredOutputToolsMode, response_format);
50
49
  response_format = updatedResponseFormat;
51
50
  const body = (0, body_1.prepareRequestBody)(modelToUse, messages, tools, tool_choice, response_format, params.options, params.customParameters);
52
- const originalMessagesLength = messages.length;
53
- const { response, output } = await (0, executor_1.processToolCalls)(executeFunctions, body, messages, invokableTools, structuredOutputTool, params.maxToolsIterations, params.abortSignal);
54
- const outputData = await (0, outputData_1.prepareOutputData)(response, output, messages, originalMessagesLength, params.addToOutput, params.agentType, executeFunctions, index, body, modelToUse, parentMessageContentStr);
55
- if (memory && ((_b = (_a = response === null || response === void 0 ? void 0 : response.choices) === null || _a === void 0 ? void 0 : _a[0]) === null || _b === void 0 ? void 0 : _b.message)) {
56
- const outputStringified = typeof output === 'string' ? output : JSON.stringify(output);
57
- await (0, io_1.saveToMemory)(memory, messages, response, outputStringified, params.saveToolCallsInChatMemory, originalMessagesLength);
51
+ const { response, output } = await (0, executor_1.processToolCalls)(executeFunctions, body, messages, invokableTools, params.maxToolsIterations, params.responseFormat, structuredOutputTool, params.abortSignal);
52
+ const outputData = await (0, outputData_1.prepareOutputData)(response, output, messages, params.addToOutput, params.agentType, executeFunctions, index, body, modelToUse, parentMessageContentStr);
53
+ if (memory) {
54
+ await (0, io_1.saveToMemory)(messages, output, params.saveToolCallsInChatMemory, memory);
58
55
  }
59
56
  return outputData;
60
57
  }
@@ -1 +1 @@
1
- {"version":3,"file":"executor.js","sourceRoot":"","sources":["../../../../../nodes/shared/core/execution/executor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"executor.js","sourceRoot":"","sources":["../../../../../nodes/shared/core/execution/executor.ts"],"names":[],"mappings":"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"}
@@ -7,8 +7,8 @@ const processor_1 = require("../messages/processor");
7
7
  const executor_1 = require("./executor");
8
8
  async function execute(i, parentMessageContentStr = '', parentMessageContentObj = {}) {
9
9
  const params = (0, parameters_1.extractParameters)(this, i);
10
- const memory = await (0, io_1.getMemoryFromInput)(this);
11
- const messages = await (0, processor_1.processMessages)(params.rawMessagesToSend, memory, parentMessageContentStr, parentMessageContentObj, params.loadToolCallsFromChatMemory);
12
- return await (0, executor_1.executeWithFallback)(this, params, memory, messages, i, parentMessageContentStr, parentMessageContentObj);
10
+ const memory = await (0, io_1.getOptionalMemory)(this);
11
+ const messages = await (0, processor_1.processMessages)(params.rawMessagesToSend, parentMessageContentStr, parentMessageContentObj, params.loadToolCallsFromChatMemory, memory);
12
+ return await (0, executor_1.executeWithFallback)(this, params, messages, i, parentMessageContentStr, parentMessageContentObj, memory);
13
13
  }
14
14
  //# sourceMappingURL=messageOperation.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"messageOperation.js","sourceRoot":"","sources":["../../../../../nodes/shared/core/execution/messageOperation.ts"],"names":[],"mappings":";;AAUA,0BA+BC;AAvCD,wDAA4D;AAC5D,qCAAkD;AAClD,qDAAwD;AACxD,yCAAiD;AAK1C,KAAK,UAAU,OAAO,CAE5B,CAAS,EACT,0BAAkC,EAAE,EACpC,0BAAkC,EAAE;IAGpC,MAAM,MAAM,GAAG,IAAA,8BAAiB,EAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IAG1C,MAAM,MAAM,GAAG,MAAM,IAAA,uBAAkB,EAAC,IAAI,CAAC,CAAC;IAG9C,MAAM,QAAQ,GAAG,MAAM,IAAA,2BAAe,EACrC,MAAM,CAAC,iBAAiB,EACxB,MAAM,EACN,uBAAuB,EACvB,uBAAuB,EACvB,MAAM,CAAC,2BAA2B,CAClC,CAAC;IAGF,OAAO,MAAM,IAAA,8BAAmB,EAC/B,IAAI,EACJ,MAAM,EACN,MAAM,EACN,QAAQ,EACR,CAAC,EACD,uBAAuB,EACvB,uBAAuB,CACvB,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"messageOperation.js","sourceRoot":"","sources":["../../../../../nodes/shared/core/execution/messageOperation.ts"],"names":[],"mappings":";;AAUA,0BA+BC;AAvCD,wDAA4D;AAC5D,qCAAiD;AACjD,qDAAwD;AACxD,yCAAiD;AAK1C,KAAK,UAAU,OAAO,CAE5B,CAAS,EACT,0BAAkC,EAAE,EACpC,0BAAkC,EAAE;IAGpC,MAAM,MAAM,GAAG,IAAA,8BAAiB,EAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IAG1C,MAAM,MAAM,GAAG,MAAM,IAAA,sBAAiB,EAAC,IAAI,CAAC,CAAC;IAG7C,MAAM,QAAQ,GAAG,MAAM,IAAA,2BAAe,EACrC,MAAM,CAAC,iBAAiB,EACxB,uBAAuB,EACvB,uBAAuB,EACvB,MAAM,CAAC,2BAA2B,EAClC,MAAM,CACN,CAAC;IAGF,OAAO,MAAM,IAAA,8BAAmB,EAC/B,IAAI,EACJ,MAAM,EACN,QAAQ,EACR,CAAC,EACD,uBAAuB,EACvB,uBAAuB,EACvB,MAAM,CACN,CAAC;AACH,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import type { IExecuteFunctions, INodeExecutionData, IDataObject } from 'n8n-workflow';
2
2
  import type { ChatCompletion } from '../../api/types';
3
- export declare function prepareOutputData(response: ChatCompletion, output: any, messages: IDataObject[], originalMessagesLength: number, addToOutput: string[], agentType: string, executeFunctions: IExecuteFunctions, index: number, body: IDataObject, model: string, parentMessageContentStr: string): Promise<INodeExecutionData[]>;
3
+ export declare function prepareOutputData(response: ChatCompletion, output: any, messages: IDataObject[], addToOutput: string[], agentType: string, executeFunctions: IExecuteFunctions, index: number, body: IDataObject, model: string, parentMessageContentStr: string): Promise<INodeExecutionData[]>;
4
4
  export declare function addModelOverview(executeFunctions: IExecuteFunctions, model: string, outputData: INodeExecutionData[]): Promise<void>;
5
5
  export declare function reorderOutputFields(outputData: INodeExecutionData[]): void;
@@ -4,7 +4,7 @@ exports.prepareOutputData = prepareOutputData;
4
4
  exports.addModelOverview = addModelOverview;
5
5
  exports.reorderOutputFields = reorderOutputFields;
6
6
  const messageExtractor_1 = require("../tools/messageExtractor");
7
- async function prepareOutputData(response, output, messages, originalMessagesLength, addToOutput, agentType, executeFunctions, index, body, model, parentMessageContentStr) {
7
+ async function prepareOutputData(response, output, messages, addToOutput, agentType, executeFunctions, index, body, model, parentMessageContentStr) {
8
8
  const outputData = [];
9
9
  if (agentType == 'subAgent' && parentMessageContentStr !== '') {
10
10
  outputData.push({
@@ -22,16 +22,14 @@ async function prepareOutputData(response, output, messages, originalMessagesLen
22
22
  return choice;
23
23
  });
24
24
  }
25
- output = output ? output : response.choices[0].message.content;
26
- var outputStringified = typeof output === 'string' ? output : JSON.stringify(output);
27
25
  outputData.push({ json: { output: output }, pairedItem: { item: index } });
28
26
  if (addToOutput.includes('fullResponse') || agentType === 'subAgent') {
29
27
  outputData.forEach((item) => {
30
28
  item.json.response = response;
31
29
  });
32
30
  }
33
- const newMessages = messages.slice(originalMessagesLength);
34
- if (addToOutput.includes('tool_calls')) {
31
+ const newMessages = (i => i === -1 ? [] : messages.slice(i + 1))(messages.map(o => o.role).lastIndexOf("user"));
32
+ if (addToOutput.includes('toolCalls')) {
35
33
  outputData.forEach((item) => {
36
34
  item.json.tool_calls = (0, messageExtractor_1.extractToolMessages)(newMessages);
37
35
  });
@@ -42,7 +40,7 @@ async function prepareOutputData(response, output, messages, originalMessagesLen
42
40
  let chatHistoryMessages = structuredClone(messages);
43
41
  if (!includeToolCallsInChatHistory) {
44
42
  chatHistoryMessages = chatHistoryMessages
45
- .filter((msg) => msg.content !== null && msg.role !== 'tool')
43
+ .filter((msg) => msg.content !== null && msg.content !== '' && msg.role !== 'tool')
46
44
  .map(({ role, content }) => ({ role, content }));
47
45
  }
48
46
  if (!includeSystemMessagesInChatHistory) {
@@ -52,7 +50,7 @@ async function prepareOutputData(response, output, messages, originalMessagesLen
52
50
  if (finalMessage) {
53
51
  let rootMessage = {
54
52
  role: finalMessage.role,
55
- content: outputStringified,
53
+ content: typeof output === 'string' ? output : JSON.stringify(output),
56
54
  };
57
55
  chatHistoryMessages.push(rootMessage);
58
56
  }
@@ -1 +1 @@
1
- {"version":3,"file":"outputData.js","sourceRoot":"","sources":["../../../../../nodes/shared/core/execution/outputData.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"outputData.js","sourceRoot":"","sources":["../../../../../nodes/shared/core/execution/outputData.ts"],"names":[],"mappings":"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"}
@@ -1,2 +1 @@
1
1
  export * from './io';
2
- export * from './optimizer';
@@ -15,5 +15,4 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./io"), exports);
18
- __exportStar(require("./optimizer"), exports);
19
18
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../nodes/shared/core/memory/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AACA,uCAAqB;AACrB,8CAA4B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../nodes/shared/core/memory/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AACA,uCAAqB"}
@@ -1,5 +1,4 @@
1
- import type { IExecuteFunctions, IDataObject } from 'n8n-workflow';
2
- import type { BaseChatMemory } from 'langchain/memory';
3
- import type { ChatCompletion } from '../../api/types';
4
- export declare function getMemoryFromInput(executeFunctions: IExecuteFunctions): Promise<BaseChatMemory | undefined>;
5
- export declare function saveToMemory(memory: BaseChatMemory | undefined, messages: IDataObject[], response: ChatCompletion, outputStringified: string, saveToolCallsInChatMemory: boolean, originalMessagesLength?: number): Promise<void>;
1
+ import type { IExecuteFunctions, ISupplyDataFunctions, IDataObject } from 'n8n-workflow';
2
+ import type { BufferWindowMemory } from 'langchain/memory';
3
+ export declare function getOptionalMemory(ctx: IExecuteFunctions | ISupplyDataFunctions): Promise<BufferWindowMemory | undefined>;
4
+ export declare function saveToMemory(messages: IDataObject[], output: any, saveToolCallsInChatMemory: boolean, memory: BufferWindowMemory): Promise<void>;
@@ -1,96 +1,63 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getMemoryFromInput = getMemoryFromInput;
3
+ exports.getOptionalMemory = getOptionalMemory;
4
4
  exports.saveToMemory = saveToMemory;
5
5
  const messages_1 = require("@langchain/core/messages");
6
- const converter_1 = require("../messages/converter");
7
- async function getMemoryFromInput(executeFunctions) {
8
- let memoryInput;
9
- try {
10
- memoryInput = (await executeFunctions.getInputConnectionData('ai_memory', 0, undefined));
6
+ const n8n_workflow_1 = require("n8n-workflow");
7
+ async function getOptionalMemory(ctx) {
8
+ return (await ctx.getInputConnectionData(n8n_workflow_1.NodeConnectionTypes.AiMemory, 0));
9
+ }
10
+ function extractMessages(messages) {
11
+ if (!Array.isArray(messages) || messages.length === 0) {
12
+ return { lastUser: null, messagesAfter: [] };
13
+ }
14
+ let lastUserIndex = -1;
15
+ for (let i = messages.length - 1; i >= 0; i--) {
16
+ if (messages[i].role === "user") {
17
+ lastUserIndex = i;
18
+ break;
19
+ }
11
20
  }
12
- catch (error) {
13
- memoryInput = undefined;
21
+ if (lastUserIndex === -1) {
22
+ return { lastUser: null, messagesAfter: [] };
14
23
  }
15
- return Array.isArray(memoryInput) ? memoryInput[0] : memoryInput;
24
+ const messagesAfter = messages.slice(lastUserIndex + 1);
25
+ return {
26
+ lastUser: messages[lastUserIndex],
27
+ messagesAfter
28
+ };
16
29
  }
17
- async function saveToMemory(memory, messages, response, outputStringified, saveToolCallsInChatMemory, originalMessagesLength = 0) {
18
- var _a, _b, _c, _d, _e;
19
- if (!memory || !((_b = (_a = response === null || response === void 0 ? void 0 : response.choices) === null || _a === void 0 ? void 0 : _a[0]) === null || _b === void 0 ? void 0 : _b.message)) {
30
+ async function saveToMemory(messages, output, saveToolCallsInChatMemory, memory) {
31
+ var _a;
32
+ const extractedMessages = extractMessages(messages);
33
+ const input = (_a = extractedMessages.lastUser) === null || _a === void 0 ? void 0 : _a.content;
34
+ if (!input) {
35
+ console.log('No user message found; no messages will be stored in the Chat Memory sub-node.');
20
36
  return;
21
37
  }
38
+ const stringifiedOutput = (typeof output === 'string' || typeof output === null) ? output : JSON.stringify(output);
22
39
  if (!saveToolCallsInChatMemory) {
23
- const lastUserMessageContent = ((_c = [...messages].reverse().find((msg) => msg.role === 'user')) === null || _c === void 0 ? void 0 : _c.content) || '';
24
- let assistantContent = outputStringified;
25
- if (!assistantContent || assistantContent === 'null' || assistantContent === 'undefined') {
26
- assistantContent = response.choices[0].message.content || '';
27
- if (!assistantContent && ((_d = response.choices[0].message.tool_calls) === null || _d === void 0 ? void 0 : _d.length)) {
28
- assistantContent =
29
- 'Used tools: ' +
30
- response.choices[0].message.tool_calls.map((tc) => tc.function.name).join(', ');
31
- }
32
- else if (!assistantContent) {
33
- assistantContent = '[No response content available]';
34
- }
35
- }
36
- if (typeof assistantContent !== 'string') {
37
- assistantContent = JSON.stringify(assistantContent);
38
- }
39
- try {
40
- await memory.saveContext({ input: lastUserMessageContent }, { output: assistantContent });
41
- }
42
- catch (error) {
43
- console.error('Error saving messages to memory:', error);
44
- }
40
+ await memory.saveContext({ input: input }, { output: stringifiedOutput });
45
41
  }
46
42
  else {
47
- try {
48
- const lastUserMessage = [...messages].reverse().find((msg) => msg.role === 'user');
49
- if (lastUserMessage === null || lastUserMessage === void 0 ? void 0 : lastUserMessage.content) {
50
- const humanMessage = new messages_1.HumanMessage(lastUserMessage.content);
51
- await memory.chatHistory.addMessage(humanMessage);
52
- }
53
- const conversationMessages = [];
54
- for (let i = originalMessagesLength; i < messages.length; i++) {
55
- const msg = messages[i];
56
- if (msg.role === 'assistant' || msg.role === 'tool') {
57
- const messageToSave = {
58
- role: msg.role,
59
- content: msg.content || '',
60
- ...(msg.tool_calls && Array.isArray(msg.tool_calls) && msg.tool_calls.length > 0 && { tool_calls: msg.tool_calls }),
61
- ...(msg.tool_call_id && { tool_call_id: msg.tool_call_id }),
62
- ...(msg.refusal && { refusal: msg.refusal }),
63
- };
64
- conversationMessages.push(messageToSave);
65
- }
66
- }
67
- let finalContent = outputStringified;
68
- if (!finalContent || finalContent === 'null' || finalContent === 'undefined') {
69
- finalContent = response.choices[0].message.content || '';
70
- if (!finalContent && ((_e = response.choices[0].message.tool_calls) === null || _e === void 0 ? void 0 : _e.length)) {
71
- finalContent =
72
- 'Used tools: ' +
73
- response.choices[0].message.tool_calls.map((tc) => tc.function.name).join(', ');
74
- }
75
- else if (!finalContent) {
76
- finalContent = '[No response content available]';
77
- }
78
- }
79
- if (typeof finalContent !== 'string') {
80
- finalContent = JSON.stringify(finalContent);
81
- }
82
- const sanitizedConversationMessages = conversationMessages.map(converter_1.sanitizeMessage);
83
- const aiMessage = new messages_1.AIMessage({
84
- content: finalContent,
85
- ...(sanitizedConversationMessages.length > 0 && { tool_calls: sanitizedConversationMessages }),
86
- additional_kwargs: {},
87
- response_metadata: {},
88
- });
89
- await memory.chatHistory.addMessage(aiMessage);
90
- }
91
- catch (error) {
92
- console.error('Error saving messages with tool calls to memory:', error);
93
- }
43
+ const humanMessage = new messages_1.HumanMessage(input);
44
+ await memory.chatHistory.addMessage(humanMessage);
45
+ const tool_calls = extractedMessages.messagesAfter
46
+ .filter(msg => msg.role === 'assistant' || msg.role === 'tool')
47
+ .map(msg => ({
48
+ role: msg.role,
49
+ content: msg.content || null,
50
+ ...(msg.tool_calls && { tool_calls: msg.tool_calls }),
51
+ ...(msg.tool_call_id && { tool_call_id: msg.tool_call_id }),
52
+ ...(msg.refusal && { refusal: msg.refusal }),
53
+ }));
54
+ const aiMessage = new messages_1.AIMessage({
55
+ content: stringifiedOutput,
56
+ tool_calls: tool_calls,
57
+ additional_kwargs: {},
58
+ response_metadata: {},
59
+ });
60
+ await memory.chatHistory.addMessage(aiMessage);
94
61
  }
95
62
  }
96
63
  //# sourceMappingURL=io.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"io.js","sourceRoot":"","sources":["../../../../../nodes/shared/core/memory/io.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"io.js","sourceRoot":"","sources":["../../../../../nodes/shared/core/memory/io.ts"],"names":[],"mappings":";;AAcA,8CAMC;AA0CD,oCA8CC;AAzGD,uDAAmE;AACnE,+CAAmD;AAU5C,KAAK,UAAU,iBAAiB,CACtC,GAA6C;IAE7C,OAAO,CAAC,MAAM,GAAG,CAAC,sBAAsB,CAAC,kCAAmB,CAAC,QAAQ,EAAE,CAAC,CAAC,CAE7D,CAAC;AACd,CAAC;AAWD,SAAS,eAAe,CAAC,QAAa;IACpC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACtD,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,aAAa,EAAE,EAAE,EAAE,CAAC;IAC/C,CAAC;IAGD,IAAI,aAAa,GAAG,CAAC,CAAC,CAAC;IACvB,KAAK,IAAI,CAAC,GAAG,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QAC9C,IAAI,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;YAChC,aAAa,GAAG,CAAC,CAAC;YAClB,MAAM;QACR,CAAC;IACH,CAAC;IAGD,IAAI,aAAa,KAAK,CAAC,CAAC,EAAE,CAAC;QACzB,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,aAAa,EAAE,EAAE,EAAE,CAAC;IAC/C,CAAC;IAGD,MAAM,aAAa,GAAG,QAAQ,CAAC,KAAK,CAAC,aAAa,GAAG,CAAC,CAAC,CAAC;IAExD,OAAO;QACL,QAAQ,EAAE,QAAQ,CAAC,aAAa,CAAC;QACjC,aAAa;KACd,CAAC;AACJ,CAAC;AAKM,KAAK,UAAU,YAAY,CACjC,QAAuB,EACvB,MAAW,EACX,yBAAkC,EAClC,MAA0B;;IAI1B,MAAM,iBAAiB,GAAG,eAAe,CAAC,QAAQ,CAAC,CAAA;IACnD,MAAM,KAAK,GAAG,MAAA,iBAAiB,CAAC,QAAQ,0CAAE,OAAO,CAAC;IAClD,IAAI,CAAC,KAAK,EAAE,CAAC;QACZ,OAAO,CAAC,GAAG,CAAC,gFAAgF,CAAC,CAAC;QAC9F,OAAM;IACP,CAAC;IAGD,MAAM,iBAAiB,GAAG,CAAC,OAAO,MAAM,KAAK,QAAQ,IAAI,OAAO,MAAM,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;IAEnH,IAAI,CAAC,yBAAyB,EAAE,CAAC;QAEhC,MAAM,MAAM,CAAC,WAAW,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,iBAAiB,EAAE,CAAC,CAAC;IAC3E,CAAC;SAAM,CAAC;QAEP,MAAM,YAAY,GAAG,IAAI,uBAAY,CAAC,KAAe,CAAC,CAAC;QACvD,MAAM,MAAM,CAAC,WAAW,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;QAGlD,MAAM,UAAU,GAAU,iBAAiB,CAAC,aAAa;aACvD,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,KAAK,WAAW,IAAI,GAAG,CAAC,IAAI,KAAK,MAAM,CAAC;aAC9D,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YACZ,IAAI,EAAE,GAAG,CAAC,IAAI;YACd,OAAO,EAAE,GAAG,CAAC,OAAO,IAAI,IAAI;YAC5B,GAAG,CAAC,GAAG,CAAC,UAAU,IAAI,EAAE,UAAU,EAAE,GAAG,CAAC,UAAU,EAAE,CAAC;YACrD,GAAG,CAAC,GAAG,CAAC,YAAY,IAAI,EAAE,YAAY,EAAE,GAAG,CAAC,YAAY,EAAE,CAAC;YAC3D,GAAG,CAAC,GAAG,CAAC,OAAO,IAAI,EAAE,OAAO,EAAE,GAAG,CAAC,OAAO,EAAE,CAAC;SAC5C,CAAC,CAAC,CAAC;QAGL,MAAM,SAAS,GAAG,IAAI,oBAAS,CAAC;YAC/B,OAAO,EAAE,iBAAiB;YAC1B,UAAU,EAAE,UAAU;YACtB,iBAAiB,EAAE,EAAE;YACrB,iBAAiB,EAAE,EAAE;SACrB,CAAC,CAAC;QACH,MAAM,MAAM,CAAC,WAAW,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;IAChD,CAAC;AACF,CAAC"}
@@ -1,2 +1,3 @@
1
1
  import { Message, RawMessage } from './types';
2
- export declare function unpackChatHistoryAndMemory(rawMessagesToSend: RawMessage[], memory?: any, loadToolCallsFromChatMemory?: boolean): Promise<Message[]>;
2
+ import type { BufferWindowMemory } from 'langchain/memory';
3
+ export declare function unpackChatHistoryAndMemory(rawMessagesToSend: RawMessage[], loadToolCallsFromChatMemory?: boolean, memory?: BufferWindowMemory): Promise<Message[]>;
@@ -1,63 +1,42 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.unpackChatHistoryAndMemory = unpackChatHistoryAndMemory;
4
- const optimizer_1 = require("../memory/optimizer");
5
4
  const converter_1 = require("./converter");
6
- async function unpackChatHistoryAndMemory(rawMessagesToSend, memory, loadToolCallsFromChatMemory = true) {
5
+ async function getChatMessages(memory) {
6
+ return (await memory.loadMemoryVariables({}))[memory.memoryKey];
7
+ }
8
+ async function unpackChatHistoryAndMemory(rawMessagesToSend, loadToolCallsFromChatMemory = true, memory) {
7
9
  const processedMessages = [];
8
10
  for (const rawMessage of rawMessagesToSend) {
9
- if (rawMessage.role !== 'chatHistoryRole' && rawMessage.role !== 'chatMemoryRole') {
10
- processedMessages.push(rawMessage);
11
- }
12
- else if (rawMessage.role === 'chatHistoryRole') {
13
- try {
14
- let chatHistory;
15
- if (typeof rawMessage.chatHistoryJson === 'string') {
16
- chatHistory = JSON.parse(rawMessage.chatHistoryJson || '[]');
17
- }
18
- else {
19
- chatHistory = rawMessage.chatHistoryJson;
20
- }
21
- if (Array.isArray(chatHistory)) {
22
- processedMessages.push(...chatHistory);
23
- }
24
- else {
25
- processedMessages.push({
26
- role: 'user',
27
- content: JSON.stringify(rawMessage.chatHistoryJson),
28
- });
29
- }
11
+ if (rawMessage.role === 'chatHistoryRole') {
12
+ let chatHistory;
13
+ if (typeof rawMessage.chatHistoryJson === 'string') {
14
+ chatHistory = JSON.parse(rawMessage.chatHistoryJson || '[]');
15
+ }
16
+ else {
17
+ chatHistory = rawMessage.chatHistoryJson;
30
18
  }
31
- catch (error) {
19
+ if (Array.isArray(chatHistory)) {
20
+ processedMessages.push(...chatHistory);
21
+ }
22
+ else {
32
23
  processedMessages.push({
33
24
  role: 'user',
34
25
  content: JSON.stringify(rawMessage.chatHistoryJson),
35
26
  });
36
27
  }
37
28
  }
38
- else if (rawMessage.role === 'chatMemoryRole' && memory && memory.chatHistory) {
39
- try {
40
- let k = memory.k;
41
- if (k === 0 || !memory.k) {
42
- }
43
- else {
44
- if (k > 0 && k < 1) {
45
- k = 1;
46
- }
47
- const rawMemoryMessages = await (0, optimizer_1.getLastKMessages)(memory, k);
48
- if (rawMemoryMessages.length === 0) {
49
- }
50
- else {
51
- const memoryMessages = (0, converter_1.convertMessages)(rawMemoryMessages, loadToolCallsFromChatMemory);
52
- processedMessages.push(...memoryMessages);
53
- }
54
- }
55
- }
56
- catch (error) {
57
- console.error('Error retrieving messages from memory:', error);
29
+ else if (rawMessage.role === 'chatMemoryRole' && memory) {
30
+ const rawMemoryMessages = await getChatMessages(memory);
31
+ if (rawMemoryMessages.length > 0) {
32
+ const memoryMessages = (0, converter_1.convertMessages)(rawMemoryMessages, loadToolCallsFromChatMemory);
33
+ processedMessages.push(...memoryMessages);
58
34
  }
59
35
  }
36
+ else {
37
+ processedMessages.push(rawMessage);
38
+ }
60
39
  }
61
- return (0, converter_1.expandToolCallsInMessages)(processedMessages, loadToolCallsFromChatMemory);
40
+ return processedMessages;
62
41
  }
63
42
  //# sourceMappingURL=chatHistory.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"chatHistory.js","sourceRoot":"","sources":["../../../../../nodes/shared/core/messages/chatHistory.ts"],"names":[],"mappings":";;AAYA,gEA2EC;AArFD,mDAAuD;AACvD,2CAAyE;AASlE,KAAK,UAAU,0BAA0B,CAC/C,iBAA+B,EAC/B,MAAY,EACZ,8BAAuC,IAAI;IAE3C,MAAM,iBAAiB,GAAc,EAAE,CAAC;IAExC,KAAK,MAAM,UAAU,IAAI,iBAAiB,EAAE,CAAC;QAC5C,IAAI,UAAU,CAAC,IAAI,KAAK,iBAAiB,IAAI,UAAU,CAAC,IAAI,KAAK,gBAAgB,EAAE,CAAC;YAEnF,iBAAiB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACpC,CAAC;aAAM,IAAI,UAAU,CAAC,IAAI,KAAK,iBAAiB,EAAE,CAAC;YAClD,IAAI,CAAC;gBAEJ,IAAI,WAAW,CAAC;gBAChB,IAAI,OAAO,UAAU,CAAC,eAAe,KAAK,QAAQ,EAAE,CAAC;oBACpD,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,eAAe,IAAI,IAAI,CAAC,CAAC;gBAC9D,CAAC;qBAAM,CAAC;oBACP,WAAW,GAAG,UAAU,CAAC,eAAe,CAAC;gBAC1C,CAAC;gBAED,IAAI,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC;oBAEhC,iBAAiB,CAAC,IAAI,CAAC,GAAG,WAAW,CAAC,CAAC;gBACxC,CAAC;qBAAM,CAAC;oBAEP,iBAAiB,CAAC,IAAI,CAAC;wBACtB,IAAI,EAAE,MAAM;wBACZ,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,eAAe,CAAC;qBACnD,CAAC,CAAC;gBACJ,CAAC;YACF,CAAC;YAAC,OAAO,KAAU,EAAE,CAAC;gBAErB,iBAAiB,CAAC,IAAI,CAAC;oBACtB,IAAI,EAAE,MAAM;oBACZ,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,eAAe,CAAC;iBACnD,CAAC,CAAC;YACJ,CAAC;QACF,CAAC;aAAM,IAAI,UAAU,CAAC,IAAI,KAAK,gBAAgB,IAAI,MAAM,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC;YACjF,IAAI,CAAC;gBAEJ,IAAI,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC;gBAEjB,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC;gBAG3B,CAAC;qBAAM,CAAC;oBAEP,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;wBACpB,CAAC,GAAG,CAAC,CAAC;oBACP,CAAC;oBAGD,MAAM,iBAAiB,GAAkB,MAAM,IAAA,4BAAgB,EAAC,MAAM,EAAE,CAAC,CAAC,CAAC;oBAG3E,IAAI,iBAAiB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBAErC,CAAC;yBAAM,CAAC;wBAEP,MAAM,cAAc,GAAc,IAAA,2BAAe,EAChD,iBAAiB,EACjB,2BAA2B,CAC3B,CAAC;wBACF,iBAAiB,CAAC,IAAI,CAAC,GAAG,cAAc,CAAC,CAAC;oBAC3C,CAAC;gBACF,CAAC;YACF,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBAChB,OAAO,CAAC,KAAK,CAAC,wCAAwC,EAAE,KAAK,CAAC,CAAC;YAChE,CAAC;QACF,CAAC;IACF,CAAC;IAGD,OAAO,IAAA,qCAAyB,EAAC,iBAAiB,EAAE,2BAA2B,CAAC,CAAC;AAClF,CAAC"}
1
+ {"version":3,"file":"chatHistory.js","sourceRoot":"","sources":["../../../../../nodes/shared/core/messages/chatHistory.ts"],"names":[],"mappings":";;AAgBA,gEAiDC;AA9DD,2CAA8C;AAE9C,KAAK,UAAU,eAAe,CAAC,MAA0B;IACxD,OAAO,CAAC,MAAM,MAAM,CAAC,mBAAmB,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAkB,CAAC;AAClF,CAAC;AASM,KAAK,UAAU,0BAA0B,CAC/C,iBAA+B,EAC/B,8BAAuC,IAAI,EAC3C,MAA2B;IAE3B,MAAM,iBAAiB,GAAc,EAAE,CAAC;IAExC,KAAK,MAAM,UAAU,IAAI,iBAAiB,EAAE,CAAC;QAC5C,IAAI,UAAU,CAAC,IAAI,KAAK,iBAAiB,EAAE,CAAC;YAG3C,IAAI,WAAW,CAAC;YAChB,IAAI,OAAO,UAAU,CAAC,eAAe,KAAK,QAAQ,EAAE,CAAC;gBACpD,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,eAAe,IAAI,IAAI,CAAC,CAAC;YAC9D,CAAC;iBAAM,CAAC;gBACP,WAAW,GAAG,UAAU,CAAC,eAAe,CAAC;YAC1C,CAAC;YAED,IAAI,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC;gBAEhC,iBAAiB,CAAC,IAAI,CAAC,GAAG,WAAW,CAAC,CAAC;YACxC,CAAC;iBAAM,CAAC;gBAEP,iBAAiB,CAAC,IAAI,CAAC;oBACtB,IAAI,EAAE,MAAM;oBACZ,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,eAAe,CAAC;iBACnD,CAAC,CAAC;YACJ,CAAC;QAEF,CAAC;aAAM,IAAI,UAAU,CAAC,IAAI,KAAK,gBAAgB,IAAI,MAAM,EAAE,CAAC;YAG3D,MAAM,iBAAiB,GAAkB,MAAM,eAAe,CAAC,MAAM,CAAC,CAAA;YAEtE,IAAI,iBAAiB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAElC,MAAM,cAAc,GAAc,IAAA,2BAAe,EAChD,iBAAiB,EACjB,2BAA2B,CAC3B,CAAC;gBACF,iBAAiB,CAAC,IAAI,CAAC,GAAG,cAAc,CAAC,CAAC;YAC3C,CAAC;QACF,CAAC;aAAM,CAAC;YAEP,iBAAiB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACpC,CAAC;IACF,CAAC;IAED,OAAO,iBAAiB,CAAC;AAC1B,CAAC"}
@@ -1,5 +1,3 @@
1
1
  import { Message } from './types';
2
2
  import { BaseMessage } from '@langchain/core/dist/messages/base';
3
3
  export declare function convertMessages(messages: BaseMessage[], loadToolCalls?: boolean): Message[];
4
- export declare function expandToolCallsInMessages(messages: Message[], loadToolCalls?: boolean): Message[];
5
- export declare function sanitizeMessage(message: any): any;