@n8n/n8n-nodes-langchain 1.51.1 → 1.53.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 (78) hide show
  1. package/dist/build.tsbuildinfo +1 -1
  2. package/dist/known/nodes.json +8 -0
  3. package/dist/nodes/agents/Agent/Agent.node.js +16 -9
  4. package/dist/nodes/agents/Agent/Agent.node.js.map +1 -1
  5. package/dist/nodes/chains/ChainLLM/ChainLlm.node.js +1 -1
  6. package/dist/nodes/chains/ChainLLM/ChainLlm.node.js.map +1 -1
  7. package/dist/nodes/chains/InformationExtractor/InformationExtractor.node.d.ts +5 -0
  8. package/dist/nodes/chains/InformationExtractor/InformationExtractor.node.js +266 -0
  9. package/dist/nodes/chains/InformationExtractor/InformationExtractor.node.js.map +1 -0
  10. package/dist/nodes/chains/InformationExtractor/helpers.d.ts +7 -0
  11. package/dist/nodes/chains/InformationExtractor/helpers.js +34 -0
  12. package/dist/nodes/chains/InformationExtractor/helpers.js.map +1 -0
  13. package/dist/nodes/chains/InformationExtractor/types.d.ts +6 -0
  14. package/dist/nodes/chains/InformationExtractor/types.js +3 -0
  15. package/dist/nodes/chains/InformationExtractor/types.js.map +1 -0
  16. package/dist/nodes/chains/SentimentAnalysis/SentimentAnalysis.node.d.ts +5 -0
  17. package/dist/nodes/chains/SentimentAnalysis/SentimentAnalysis.node.js +211 -0
  18. package/dist/nodes/chains/SentimentAnalysis/SentimentAnalysis.node.js.map +1 -0
  19. package/dist/nodes/chains/TextClassifier/TextClassifier.node.js +29 -13
  20. package/dist/nodes/chains/TextClassifier/TextClassifier.node.js.map +1 -1
  21. package/dist/nodes/llms/LMChatAnthropic/LmChatAnthropic.node.js +1 -0
  22. package/dist/nodes/llms/LMChatAnthropic/LmChatAnthropic.node.js.map +1 -1
  23. package/dist/nodes/llms/LMChatOllama/LmChatOllama.node.js +2 -1
  24. package/dist/nodes/llms/LMChatOllama/LmChatOllama.node.js.map +1 -1
  25. package/dist/nodes/llms/LMChatOpenAi/LmChatOpenAi.node.js +1 -0
  26. package/dist/nodes/llms/LMChatOpenAi/LmChatOpenAi.node.js.map +1 -1
  27. package/dist/nodes/llms/LMCohere/LmCohere.node.js +1 -0
  28. package/dist/nodes/llms/LMCohere/LmCohere.node.js.map +1 -1
  29. package/dist/nodes/llms/LMOllama/LmOllama.node.js +1 -0
  30. package/dist/nodes/llms/LMOllama/LmOllama.node.js.map +1 -1
  31. package/dist/nodes/llms/LMOpenAi/LmOpenAi.node.js +8 -2
  32. package/dist/nodes/llms/LMOpenAi/LmOpenAi.node.js.map +1 -1
  33. package/dist/nodes/llms/LMOpenHuggingFaceInference/LmOpenHuggingFaceInference.node.js +1 -0
  34. package/dist/nodes/llms/LMOpenHuggingFaceInference/LmOpenHuggingFaceInference.node.js.map +1 -1
  35. package/dist/nodes/llms/LmChatAwsBedrock/LmChatAwsBedrock.node.js +1 -0
  36. package/dist/nodes/llms/LmChatAwsBedrock/LmChatAwsBedrock.node.js.map +1 -1
  37. package/dist/nodes/llms/LmChatAzureOpenAi/LmChatAzureOpenAi.node.js +1 -0
  38. package/dist/nodes/llms/LmChatAzureOpenAi/LmChatAzureOpenAi.node.js.map +1 -1
  39. package/dist/nodes/llms/LmChatGoogleGemini/LmChatGoogleGemini.node.js +1 -0
  40. package/dist/nodes/llms/LmChatGoogleGemini/LmChatGoogleGemini.node.js.map +1 -1
  41. package/dist/nodes/llms/LmChatGooglePalm/LmChatGooglePalm.node.js +8 -2
  42. package/dist/nodes/llms/LmChatGooglePalm/LmChatGooglePalm.node.js.map +1 -1
  43. package/dist/nodes/llms/LmChatGoogleVertex/LmChatGoogleVertex.node.js +2 -1
  44. package/dist/nodes/llms/LmChatGoogleVertex/LmChatGoogleVertex.node.js.map +1 -1
  45. package/dist/nodes/llms/LmChatGroq/LmChatGroq.node.js +1 -0
  46. package/dist/nodes/llms/LmChatGroq/LmChatGroq.node.js.map +1 -1
  47. package/dist/nodes/llms/LmChatMistralCloud/LmChatMistralCloud.node.js +1 -0
  48. package/dist/nodes/llms/LmChatMistralCloud/LmChatMistralCloud.node.js.map +1 -1
  49. package/dist/nodes/llms/LmGooglePalm/LmGooglePalm.node.js +8 -2
  50. package/dist/nodes/llms/LmGooglePalm/LmGooglePalm.node.js.map +1 -1
  51. package/dist/nodes/tools/ToolCalculator/ToolCalculator.node.js +1 -0
  52. package/dist/nodes/tools/ToolCalculator/ToolCalculator.node.js.map +1 -1
  53. package/dist/nodes/tools/ToolCode/ToolCode.node.js +3 -2
  54. package/dist/nodes/tools/ToolCode/ToolCode.node.js.map +1 -1
  55. package/dist/nodes/tools/ToolHttpRequest/ToolHttpRequest.node.js +1 -0
  56. package/dist/nodes/tools/ToolHttpRequest/ToolHttpRequest.node.js.map +1 -1
  57. package/dist/nodes/tools/ToolSerpApi/ToolSerpApi.node.js +1 -0
  58. package/dist/nodes/tools/ToolSerpApi/ToolSerpApi.node.js.map +1 -1
  59. package/dist/nodes/tools/ToolVectorStore/ToolVectorStore.node.js +1 -0
  60. package/dist/nodes/tools/ToolVectorStore/ToolVectorStore.node.js.map +1 -1
  61. package/dist/nodes/tools/ToolWikipedia/ToolWikipedia.node.js +1 -0
  62. package/dist/nodes/tools/ToolWikipedia/ToolWikipedia.node.js.map +1 -1
  63. package/dist/nodes/tools/ToolWolframAlpha/ToolWolframAlpha.node.js +1 -0
  64. package/dist/nodes/tools/ToolWolframAlpha/ToolWolframAlpha.node.js.map +1 -1
  65. package/dist/nodes/tools/ToolWorkflow/ToolWorkflow.node.js +3 -2
  66. package/dist/nodes/tools/ToolWorkflow/ToolWorkflow.node.js.map +1 -1
  67. package/dist/nodes/vector_store/VectorStorePinecone/VectorStorePinecone.node.js +10 -17
  68. package/dist/nodes/vector_store/VectorStorePinecone/VectorStorePinecone.node.js.map +1 -1
  69. package/dist/nodes/vector_store/VectorStoreSupabase/VectorStoreSupabase.node.js +12 -19
  70. package/dist/nodes/vector_store/VectorStoreSupabase/VectorStoreSupabase.node.js.map +1 -1
  71. package/dist/nodes/vector_store/shared/createVectorStoreNode.d.ts +3 -0
  72. package/dist/nodes/vector_store/shared/createVectorStoreNode.js +85 -23
  73. package/dist/nodes/vector_store/shared/createVectorStoreNode.js.map +1 -1
  74. package/dist/types/nodes.json +32 -30
  75. package/dist/utils/helpers.js +1 -1
  76. package/dist/utils/helpers.js.map +1 -1
  77. package/dist/utils/logWrapper.d.ts +1 -1
  78. package/package.json +23 -20
@@ -8,6 +8,13 @@ const createVectorStoreNode_1 = require("../shared/createVectorStoreNode");
8
8
  const sharedFields_1 = require("../../../utils/sharedFields");
9
9
  const descriptions_1 = require("../shared/descriptions");
10
10
  const listSearch_1 = require("../shared/methods/listSearch");
11
+ const queryNameField = {
12
+ displayName: 'Query Name',
13
+ name: 'queryName',
14
+ type: 'string',
15
+ default: 'match_documents',
16
+ description: 'Name of the query to use for matching documents',
17
+ };
11
18
  const sharedFields = [descriptions_1.supabaseTableNameRLC];
12
19
  const insertFields = [
13
20
  {
@@ -16,15 +23,7 @@ const insertFields = [
16
23
  type: 'collection',
17
24
  placeholder: 'Add Option',
18
25
  default: {},
19
- options: [
20
- {
21
- displayName: 'Query Name',
22
- name: 'queryName',
23
- type: 'string',
24
- default: 'match_documents',
25
- description: 'Name of the query to use for matching documents',
26
- },
27
- ],
26
+ options: [queryNameField],
28
27
  },
29
28
  ];
30
29
  const retrieveFields = [
@@ -34,18 +33,10 @@ const retrieveFields = [
34
33
  type: 'collection',
35
34
  placeholder: 'Add Option',
36
35
  default: {},
37
- options: [
38
- {
39
- displayName: 'Query Name',
40
- name: 'queryName',
41
- type: 'string',
42
- default: 'match_documents',
43
- description: 'Name of the query to use for matching documents',
44
- },
45
- sharedFields_1.metadataFilterField,
46
- ],
36
+ options: [queryNameField, sharedFields_1.metadataFilterField],
47
37
  },
48
38
  ];
39
+ const updateFields = [...insertFields];
49
40
  exports.VectorStoreSupabase = (0, createVectorStoreNode_1.createVectorStoreNode)({
50
41
  meta: {
51
42
  description: 'Work with your data in Supabase Vector Store',
@@ -59,6 +50,7 @@ exports.VectorStoreSupabase = (0, createVectorStoreNode_1.createVectorStoreNode)
59
50
  required: true,
60
51
  },
61
52
  ],
53
+ operationModes: ['load', 'insert', 'retrieve', 'update'],
62
54
  },
63
55
  methods: {
64
56
  listSearch: { supabaseTableNameSearch: listSearch_1.supabaseTableNameSearch },
@@ -67,6 +59,7 @@ exports.VectorStoreSupabase = (0, createVectorStoreNode_1.createVectorStoreNode)
67
59
  insertFields,
68
60
  loadFields: retrieveFields,
69
61
  retrieveFields,
62
+ updateFields,
70
63
  async getVectorStoreClient(context, filter, embeddings, itemIndex) {
71
64
  var _a;
72
65
  const tableName = context.getNodeParameter('tableName', itemIndex, '', {
@@ -1 +1 @@
1
- {"version":3,"file":"VectorStoreSupabase.node.js","sourceRoot":"","sources":["../../../../nodes/vector_store/VectorStoreSupabase/VectorStoreSupabase.node.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"VectorStoreSupabase.node.js","sourceRoot":"","sources":["../../../../nodes/vector_store/VectorStoreSupabase/VectorStoreSupabase.node.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,7 @@ import type { VectorStore } from '@langchain/core/vectorstores';
2
2
  import type { INodeCredentialDescription, INodeProperties, INodeExecutionData, IExecuteFunctions, INodeTypeDescription, SupplyData, ILoadOptionsFunctions, INodeListSearchResult, Icon } from 'n8n-workflow';
3
3
  import type { Embeddings } from '@langchain/core/embeddings';
4
4
  import type { Document } from '@langchain/core/documents';
5
+ type NodeOperationMode = 'insert' | 'load' | 'retrieve' | 'update';
5
6
  interface NodeMeta {
6
7
  displayName: string;
7
8
  name: string;
@@ -9,6 +10,7 @@ interface NodeMeta {
9
10
  docsUrl: string;
10
11
  icon: Icon;
11
12
  credentials?: INodeCredentialDescription[];
13
+ operationModes?: NodeOperationMode[];
12
14
  }
13
15
  interface VectorStoreNodeConstructorArgs {
14
16
  meta: NodeMeta;
@@ -21,6 +23,7 @@ interface VectorStoreNodeConstructorArgs {
21
23
  insertFields?: INodeProperties[];
22
24
  loadFields?: INodeProperties[];
23
25
  retrieveFields?: INodeProperties[];
26
+ updateFields?: INodeProperties[];
24
27
  populateVectorStore: (context: IExecuteFunctions, embeddings: Embeddings, documents: Array<Document<Record<string, unknown>>>, itemIndex: number) => Promise<void>;
25
28
  getVectorStoreClient: (context: IExecuteFunctions, filter: Record<string, never> | undefined, embeddings: Embeddings, itemIndex: number) => Promise<VectorStore>;
26
29
  }
@@ -3,18 +3,55 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.createVectorStoreNode = void 0;
4
4
  const n8n_workflow_1 = require("n8n-workflow");
5
5
  const logWrapper_1 = require("../../../utils/logWrapper");
6
+ const N8nJsonLoader_1 = require("../../../utils/N8nJsonLoader");
6
7
  const helpers_1 = require("../../../utils/helpers");
7
8
  const sharedFields_1 = require("../../../utils/sharedFields");
8
9
  const processDocuments_1 = require("./processDocuments");
10
+ const DEFAULT_OPERATION_MODES = ['load', 'insert', 'retrieve'];
9
11
  function transformDescriptionForOperationMode(fields, mode) {
10
12
  return fields.map((field) => ({
11
13
  ...field,
12
14
  displayOptions: { show: { mode: [mode] } },
13
15
  }));
14
16
  }
17
+ function isUpdateSupported(args) {
18
+ var _a, _b;
19
+ return (_b = (_a = args.meta.operationModes) === null || _a === void 0 ? void 0 : _a.includes('update')) !== null && _b !== void 0 ? _b : false;
20
+ }
21
+ function getOperationModeOptions(args) {
22
+ var _a;
23
+ const enabledOperationModes = (_a = args.meta.operationModes) !== null && _a !== void 0 ? _a : DEFAULT_OPERATION_MODES;
24
+ const allOptions = [
25
+ {
26
+ name: 'Get Many',
27
+ value: 'load',
28
+ description: 'Get many ranked documents from vector store for query',
29
+ action: 'Get many ranked documents from vector store for query',
30
+ },
31
+ {
32
+ name: 'Insert Documents',
33
+ value: 'insert',
34
+ description: 'Insert documents into vector store',
35
+ action: 'Insert documents into vector store',
36
+ },
37
+ {
38
+ name: 'Retrieve Documents (For Agent/Chain)',
39
+ value: 'retrieve',
40
+ description: 'Retrieve documents from vector store to be used with AI nodes',
41
+ action: 'Retrieve documents from vector store to be used with AI nodes',
42
+ },
43
+ {
44
+ name: 'Update Documents',
45
+ value: 'update',
46
+ description: 'Update documents in vector store by ID',
47
+ action: 'Update documents in vector store by ID',
48
+ },
49
+ ];
50
+ return allOptions.filter(({ value }) => enabledOperationModes.includes(value));
51
+ }
15
52
  const createVectorStoreNode = (args) => class VectorStoreNodeType {
16
53
  constructor() {
17
- var _a, _b, _c;
54
+ var _a, _b, _c, _d;
18
55
  this.description = {
19
56
  displayName: args.meta.displayName,
20
57
  name: args.meta.name,
@@ -44,11 +81,11 @@ const createVectorStoreNode = (args) => class VectorStoreNodeType {
44
81
  const mode = parameters?.mode;
45
82
  const inputs = [{ displayName: "Embedding", type: "${"ai_embedding"}", required: true, maxConnections: 1}]
46
83
 
47
- if (['insert', 'load'].includes(mode)) {
84
+ if (['insert', 'load', 'update'].includes(mode)) {
48
85
  inputs.push({ displayName: "", type: "${"main"}"})
49
86
  }
50
87
 
51
- if (mode === 'insert') {
88
+ if (['insert'].includes(mode)) {
52
89
  inputs.push({ displayName: "Document", type: "${"ai_document"}", required: true, maxConnections: 1})
53
90
  }
54
91
  return inputs
@@ -70,26 +107,7 @@ const createVectorStoreNode = (args) => class VectorStoreNodeType {
70
107
  type: 'options',
71
108
  noDataExpression: true,
72
109
  default: 'retrieve',
73
- options: [
74
- {
75
- name: 'Get Many',
76
- value: 'load',
77
- description: 'Get many ranked documents from vector store for query',
78
- action: 'Get many ranked documents from vector store for query',
79
- },
80
- {
81
- name: 'Insert Documents',
82
- value: 'insert',
83
- description: 'Insert documents into vector store',
84
- action: 'Insert documents into vector store',
85
- },
86
- {
87
- name: 'Retrieve Documents (For Agent/Chain)',
88
- value: 'retrieve',
89
- description: 'Retrieve documents from vector store to be used with AI nodes',
90
- action: 'Retrieve documents from vector store to be used with AI nodes',
91
- },
92
- ],
110
+ options: getOperationModeOptions(args),
93
111
  },
94
112
  {
95
113
  ...(0, sharedFields_1.getConnectionHintNoticeField)(["ai_retriever"]),
@@ -126,8 +144,22 @@ const createVectorStoreNode = (args) => class VectorStoreNodeType {
126
144
  },
127
145
  },
128
146
  },
147
+ {
148
+ displayName: 'ID',
149
+ name: 'id',
150
+ type: 'string',
151
+ default: '',
152
+ required: true,
153
+ description: 'ID of an embedding entry',
154
+ displayOptions: {
155
+ show: {
156
+ mode: ['update'],
157
+ },
158
+ },
159
+ },
129
160
  ...transformDescriptionForOperationMode((_b = args.loadFields) !== null && _b !== void 0 ? _b : [], 'load'),
130
161
  ...transformDescriptionForOperationMode((_c = args.retrieveFields) !== null && _c !== void 0 ? _c : [], 'retrieve'),
162
+ ...transformDescriptionForOperationMode((_d = args.updateFields) !== null && _d !== void 0 ? _d : [], 'update'),
131
163
  ],
132
164
  };
133
165
  this.methods = args.methods;
@@ -180,6 +212,36 @@ const createVectorStoreNode = (args) => class VectorStoreNodeType {
180
212
  }
181
213
  return [resultData];
182
214
  }
215
+ if (mode === 'update') {
216
+ if (!isUpdateSupported(args)) {
217
+ throw new n8n_workflow_1.NodeOperationError(this.getNode(), 'Update operation is not implemented for this Vector Store');
218
+ }
219
+ const items = this.getInputData();
220
+ const loader = new N8nJsonLoader_1.N8nJsonLoader(this);
221
+ const resultData = [];
222
+ for (let itemIndex = 0; itemIndex < items.length; itemIndex++) {
223
+ const itemData = items[itemIndex];
224
+ const documentId = this.getNodeParameter('id', itemIndex, '', {
225
+ extractValue: true,
226
+ });
227
+ const vectorStore = await args.getVectorStoreClient(this, undefined, embeddings, itemIndex);
228
+ const { processedDocuments, serializedDocuments } = await (0, processDocuments_1.processDocument)(loader, itemData, itemIndex);
229
+ if ((processedDocuments === null || processedDocuments === void 0 ? void 0 : processedDocuments.length) !== 1) {
230
+ throw new n8n_workflow_1.NodeOperationError(this.getNode(), 'Single document per item expected');
231
+ }
232
+ resultData.push(...serializedDocuments);
233
+ try {
234
+ await vectorStore.addDocuments(processedDocuments, {
235
+ ids: [documentId],
236
+ });
237
+ void (0, helpers_1.logAiEvent)(this, 'n8n.ai.vector.store.updated');
238
+ }
239
+ catch (error) {
240
+ throw error;
241
+ }
242
+ }
243
+ return [resultData];
244
+ }
183
245
  throw new n8n_workflow_1.NodeOperationError(this.getNode(), 'Only the "load" and "insert" operation modes are supported with execute');
184
246
  }
185
247
  async supplyData(itemIndex) {
@@ -1 +1 @@
1
- {"version":3,"file":"createVectorStoreNode.js","sourceRoot":"","sources":["../../../../nodes/vector_store/shared/createVectorStoreNode.ts"],"names":[],"mappings":";;;AAGA,+CAAsE;AAetE,0DAAuD;AAGvD,oDAA8E;AAC9E,8DAA2E;AAC3E,yDAAqD;AAuCrD,SAAS,oCAAoC,CAC5C,MAAyB,EACzB,IAAoC;IAEpC,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QAC7B,GAAG,KAAK;QACR,cAAc,EAAE,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC,IAAI,CAAC,EAAE,EAAE;KAC1C,CAAC,CAAC,CAAC;AACL,CAAC;AACM,MAAM,qBAAqB,GAAG,CAAC,IAAoC,EAAE,EAAE,CAC7E,MAAM,mBAAmB;IAAzB;;QACC,gBAAW,GAAyB;YACnC,WAAW,EAAE,IAAI,CAAC,IAAI,CAAC,WAAW;YAClC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI;YACpB,WAAW,EAAE,IAAI,CAAC,IAAI,CAAC,WAAW;YAClC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI;YACpB,KAAK,EAAE,CAAC,WAAW,CAAC;YACpB,OAAO,EAAE,CAAC;YACV,QAAQ,EAAE;gBACT,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,WAAW;aAC3B;YACD,KAAK,EAAE;gBACN,UAAU,EAAE,CAAC,IAAI,CAAC;gBAClB,aAAa,EAAE;oBACd,EAAE,EAAE,CAAC,eAAe,EAAE,YAAY,CAAC;iBACnC;gBACD,SAAS,EAAE;oBACV,oBAAoB,EAAE;wBACrB;4BACC,GAAG,EAAE,IAAI,CAAC,IAAI,CAAC,OAAO;yBACtB;qBACD;iBACD;aACD;YACD,WAAW,EAAE,IAAI,CAAC,IAAI,CAAC,WAAW;YAElC,MAAM,EAAE;;;yDAG8C,cAA8B;;;6CAG1C,MAAuB;;;;qDAIf,aAA6B;;;;KAI7E;YACF,OAAO,EAAE;;;;qDAIyC,gBAAgC;;wCAE7C,MAAuB;;KAE1D;YACF,UAAU,EAAE;gBACX;oBACC,WAAW,EAAE,gBAAgB;oBAC7B,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,SAAS;oBACf,gBAAgB,EAAE,IAAI;oBACtB,OAAO,EAAE,UAAU;oBACnB,OAAO,EAAE;wBACR;4BACC,IAAI,EAAE,UAAU;4BAChB,KAAK,EAAE,MAAM;4BACb,WAAW,EAAE,uDAAuD;4BACpE,MAAM,EAAE,uDAAuD;yBAC/D;wBACD;4BACC,IAAI,EAAE,kBAAkB;4BACxB,KAAK,EAAE,QAAQ;4BACf,WAAW,EAAE,oCAAoC;4BACjD,MAAM,EAAE,oCAAoC;yBAC5C;wBACD;4BACC,IAAI,EAAE,sCAAsC;4BAC5C,KAAK,EAAE,UAAU;4BACjB,WAAW,EAAE,+DAA+D;4BAC5E,MAAM,EAAE,+DAA+D;yBACvE;qBACD;iBACD;gBACD;oBACC,GAAG,IAAA,2CAA4B,EAAC,gBAAgC,CAAC;oBACjE,cAAc,EAAE;wBACf,IAAI,EAAE;4BACL,IAAI,EAAE,CAAC,UAAU,CAAC;yBAClB;qBACD;iBACD;gBACD,GAAG,IAAI,CAAC,YAAY;gBACpB,GAAG,oCAAoC,CAAC,MAAA,IAAI,CAAC,YAAY,mCAAI,EAAE,EAAE,QAAQ,CAAC;gBAE1E;oBACC,WAAW,EAAE,QAAQ;oBACrB,IAAI,EAAE,QAAQ;oBACd,IAAI,EAAE,QAAQ;oBACd,OAAO,EAAE,EAAE;oBACX,QAAQ,EAAE,IAAI;oBACd,WAAW,EACV,mGAAmG;oBACpG,cAAc,EAAE;wBACf,IAAI,EAAE;4BACL,IAAI,EAAE,CAAC,MAAM,CAAC;yBACd;qBACD;iBACD;gBACD;oBACC,WAAW,EAAE,OAAO;oBACpB,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,QAAQ;oBACd,OAAO,EAAE,CAAC;oBACV,WAAW,EAAE,kDAAkD;oBAC/D,cAAc,EAAE;wBACf,IAAI,EAAE;4BACL,IAAI,EAAE,CAAC,MAAM,CAAC;yBACd;qBACD;iBACD;gBACD,GAAG,oCAAoC,CAAC,MAAA,IAAI,CAAC,UAAU,mCAAI,EAAE,EAAE,MAAM,CAAC;gBACtE,GAAG,oCAAoC,CAAC,MAAA,IAAI,CAAC,cAAc,mCAAI,EAAE,EAAE,UAAU,CAAC;aAC9E;SACD,CAAC;QAEF,YAAO,GAAG,IAAI,CAAC,OAAO,CAAC;IA8GxB,CAAC;IA5GA,KAAK,CAAC,OAAO;QACZ,MAAM,IAAI,GAAG,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,CAAC,CAAmC,CAAC;QAEhF,MAAM,UAAU,GAAG,CAAC,MAAM,IAAI,CAAC,sBAAsB,iBAEpD,CAAC,CACD,CAAe,CAAC;QAEjB,IAAI,IAAI,KAAK,MAAM,EAAE,CAAC;YACrB,MAAM,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;YAEnC,MAAM,UAAU,GAAG,EAAE,CAAC;YACtB,KAAK,IAAI,SAAS,GAAG,CAAC,EAAE,SAAS,GAAG,KAAK,CAAC,MAAM,EAAE,SAAS,EAAE,EAAE,CAAC;gBAC/D,MAAM,MAAM,GAAG,IAAA,kCAAwB,EAAC,IAAI,EAAE,SAAS,CAAC,CAAC;gBACzD,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,oBAAoB,CAClD,IAAI,EAEJ,SAAS,EACT,UAAU,EACV,SAAS,CACT,CAAC;gBACF,MAAM,MAAM,GAAG,IAAI,CAAC,gBAAgB,CAAC,QAAQ,EAAE,SAAS,CAAW,CAAC;gBACpE,MAAM,IAAI,GAAG,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,SAAS,EAAE,CAAC,CAAW,CAAC;gBAEnE,MAAM,cAAc,GAAG,MAAM,UAAU,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;gBAC3D,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC,+BAA+B,CAC7D,cAAc,EACd,IAAI,EACJ,MAAM,CACN,CAAC;gBAEF,MAAM,cAAc,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;oBAChD,MAAM,QAAQ,GAAG;wBAChB,QAAQ,EAAE,GAAG,CAAC,QAAQ;wBACtB,WAAW,EAAE,GAAG,CAAC,WAAW;qBAC5B,CAAC;oBAEF,OAAO;wBACN,IAAI,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE;wBACzB,UAAU,EAAE;4BACX,IAAI,EAAE,SAAS;yBACf;qBACD,CAAC;gBACH,CAAC,CAAC,CAAC;gBAEH,UAAU,CAAC,IAAI,CAAC,GAAG,cAAc,CAAC,CAAC;gBACnC,KAAK,IAAA,oBAAU,EAAC,IAAI,EAAE,8BAA8B,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;YAC1E,CAAC;YAED,OAAO,CAAC,UAAU,CAAC,CAAC;QACrB,CAAC;QAED,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;YACvB,MAAM,KAAK,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;YAElC,MAAM,aAAa,GAAG,CAAC,MAAM,IAAI,CAAC,sBAAsB,gBAEvD,CAAC,CACD,CAA+E,CAAC;YAEjF,MAAM,UAAU,GAAG,EAAE,CAAC;YACtB,KAAK,IAAI,SAAS,GAAG,CAAC,EAAE,SAAS,GAAG,KAAK,CAAC,MAAM,EAAE,SAAS,EAAE,EAAE,CAAC;gBAC/D,MAAM,QAAQ,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC;gBAClC,MAAM,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,GAAG,MAAM,IAAA,kCAAe,EACxE,aAAa,EACb,QAAQ,EACR,SAAS,CACT,CAAC;gBACF,UAAU,CAAC,IAAI,CAAC,GAAG,mBAAmB,CAAC,CAAC;gBAExC,IAAI,CAAC;oBACJ,MAAM,IAAI,CAAC,mBAAmB,CAAC,IAAI,EAAE,UAAU,EAAE,kBAAkB,EAAE,SAAS,CAAC,CAAC;oBAEhF,KAAK,IAAA,oBAAU,EAAC,IAAI,EAAE,+BAA+B,CAAC,CAAC;gBACxD,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBAChB,MAAM,KAAK,CAAC;gBACb,CAAC;YACF,CAAC;YAED,OAAO,CAAC,UAAU,CAAC,CAAC;QACrB,CAAC;QAED,MAAM,IAAI,iCAAkB,CAC3B,IAAI,CAAC,OAAO,EAAE,EACd,yEAAyE,CACzE,CAAC;IACH,CAAC;IAED,KAAK,CAAC,UAAU,CAA0B,SAAiB;QAC1D,MAAM,IAAI,GAAG,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,CAAC,CAAmC,CAAC;QAChF,MAAM,MAAM,GAAG,IAAA,kCAAwB,EAAC,IAAI,EAAE,SAAS,CAAC,CAAC;QACzD,MAAM,UAAU,GAAG,CAAC,MAAM,IAAI,CAAC,sBAAsB,iBAEpD,CAAC,CACD,CAAe,CAAC;QAEjB,IAAI,IAAI,KAAK,UAAU,EAAE,CAAC;YACzB,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,oBAAoB,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,CAAC,CAAC;YACzF,OAAO;gBACN,QAAQ,EAAE,IAAA,uBAAU,EAAC,WAAW,EAAE,IAAI,CAAC;aACvC,CAAC;QACH,CAAC;QAED,MAAM,IAAI,iCAAkB,CAC3B,IAAI,CAAC,OAAO,EAAE,EACd,gEAAgE,CAChE,CAAC;IACH,CAAC;CACD,CAAC;AAvOU,QAAA,qBAAqB,yBAuO/B"}
1
+ {"version":3,"file":"createVectorStoreNode.js","sourceRoot":"","sources":["../../../../nodes/vector_store/shared/createVectorStoreNode.ts"],"names":[],"mappings":"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"}