@n8n/n8n-nodes-langchain 1.85.3 → 1.87.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.
- package/dist/credentials/AnthropicApi.credentials.js +64 -41
- package/dist/credentials/AnthropicApi.credentials.js.map +1 -1
- package/dist/credentials/AzureOpenAiApi.credentials.js +70 -47
- package/dist/credentials/AzureOpenAiApi.credentials.js.map +1 -1
- package/dist/credentials/CohereApi.credentials.js +55 -32
- package/dist/credentials/CohereApi.credentials.js.map +1 -1
- package/dist/credentials/DeepSeekApi.credentials.js +61 -38
- package/dist/credentials/DeepSeekApi.credentials.js.map +1 -1
- package/dist/credentials/GooglePalmApi.credentials.js +61 -38
- package/dist/credentials/GooglePalmApi.credentials.js.map +1 -1
- package/dist/credentials/GroqApi.credentials.js +55 -32
- package/dist/credentials/GroqApi.credentials.js.map +1 -1
- package/dist/credentials/HuggingFaceApi.credentials.js +55 -32
- package/dist/credentials/HuggingFaceApi.credentials.js.map +1 -1
- package/dist/credentials/MistralCloudApi.credentials.js +56 -33
- package/dist/credentials/MistralCloudApi.credentials.js.map +1 -1
- package/dist/credentials/MotorheadApi.credentials.js +68 -45
- package/dist/credentials/MotorheadApi.credentials.js.map +1 -1
- package/dist/credentials/OllamaApi.credentials.js +47 -24
- package/dist/credentials/OllamaApi.credentials.js.map +1 -1
- package/dist/credentials/OpenRouterApi.credentials.js +61 -38
- package/dist/credentials/OpenRouterApi.credentials.js.map +1 -1
- package/dist/credentials/PineconeApi.credentials.js +57 -34
- package/dist/credentials/PineconeApi.credentials.js.map +1 -1
- package/dist/credentials/QdrantApi.credentials.js +64 -41
- package/dist/credentials/QdrantApi.credentials.js.map +1 -1
- package/dist/credentials/SerpApi.credentials.js +55 -32
- package/dist/credentials/SerpApi.credentials.js.map +1 -1
- package/dist/credentials/WolframAlphaApi.credentials.js +59 -36
- package/dist/credentials/WolframAlphaApi.credentials.js.map +1 -1
- package/dist/credentials/XAiApi.credentials.js +61 -38
- package/dist/credentials/XAiApi.credentials.js.map +1 -1
- package/dist/credentials/XataApi.credentials.js +69 -46
- package/dist/credentials/XataApi.credentials.js.map +1 -1
- package/dist/credentials/ZepApi.credentials.js +74 -51
- package/dist/credentials/ZepApi.credentials.js.map +1 -1
- package/dist/known/nodes.json +12 -0
- package/dist/nodes/agents/Agent/Agent.node.js +426 -405
- package/dist/nodes/agents/Agent/Agent.node.js.map +1 -1
- package/dist/nodes/agents/Agent/agents/ConversationalAgent/description.js +111 -87
- package/dist/nodes/agents/Agent/agents/ConversationalAgent/description.js.map +1 -1
- package/dist/nodes/agents/Agent/agents/ConversationalAgent/execute.js +99 -75
- package/dist/nodes/agents/Agent/agents/ConversationalAgent/execute.js.map +1 -1
- package/dist/nodes/agents/Agent/agents/ConversationalAgent/prompt.js +30 -4
- package/dist/nodes/agents/Agent/agents/ConversationalAgent/prompt.js.map +1 -1
- package/dist/nodes/agents/Agent/agents/OpenAiFunctionsAgent/description.js +101 -77
- package/dist/nodes/agents/Agent/agents/OpenAiFunctionsAgent/description.js.map +1 -1
- package/dist/nodes/agents/Agent/agents/OpenAiFunctionsAgent/execute.js +108 -83
- package/dist/nodes/agents/Agent/agents/OpenAiFunctionsAgent/execute.js.map +1 -1
- package/dist/nodes/agents/Agent/agents/OpenAiFunctionsAgent/prompt.js +27 -3
- package/dist/nodes/agents/Agent/agents/OpenAiFunctionsAgent/prompt.js.map +1 -1
- package/dist/nodes/agents/Agent/agents/PlanAndExecuteAgent/description.js +87 -63
- package/dist/nodes/agents/Agent/agents/PlanAndExecuteAgent/description.js.map +1 -1
- package/dist/nodes/agents/Agent/agents/PlanAndExecuteAgent/execute.js +90 -67
- package/dist/nodes/agents/Agent/agents/PlanAndExecuteAgent/execute.js.map +1 -1
- package/dist/nodes/agents/Agent/agents/PlanAndExecuteAgent/prompt.js +27 -3
- package/dist/nodes/agents/Agent/agents/PlanAndExecuteAgent/prompt.js.map +1 -1
- package/dist/nodes/agents/Agent/agents/ReActAgent/description.js +131 -107
- package/dist/nodes/agents/Agent/agents/ReActAgent/description.js.map +1 -1
- package/dist/nodes/agents/Agent/agents/ReActAgent/execute.js +101 -82
- package/dist/nodes/agents/Agent/agents/ReActAgent/execute.js.map +1 -1
- package/dist/nodes/agents/Agent/agents/ReActAgent/prompt.js +36 -6
- package/dist/nodes/agents/Agent/agents/ReActAgent/prompt.js.map +1 -1
- package/dist/nodes/agents/Agent/agents/SqlAgent/description.js +206 -181
- package/dist/nodes/agents/Agent/agents/SqlAgent/description.js.map +1 -1
- package/dist/nodes/agents/Agent/agents/SqlAgent/execute.js +130 -104
- package/dist/nodes/agents/Agent/agents/SqlAgent/execute.js.map +1 -1
- package/dist/nodes/agents/Agent/agents/SqlAgent/other/handlers/mysql.js +40 -16
- package/dist/nodes/agents/Agent/agents/SqlAgent/other/handlers/mysql.js.map +1 -1
- package/dist/nodes/agents/Agent/agents/SqlAgent/other/handlers/postgres.js +41 -17
- package/dist/nodes/agents/Agent/agents/SqlAgent/other/handlers/postgres.js.map +1 -1
- package/dist/nodes/agents/Agent/agents/SqlAgent/other/handlers/sqlite.js +67 -67
- package/dist/nodes/agents/Agent/agents/SqlAgent/other/handlers/sqlite.js.map +1 -1
- package/dist/nodes/agents/Agent/agents/SqlAgent/other/prompts.js +30 -4
- package/dist/nodes/agents/Agent/agents/SqlAgent/other/prompts.js.map +1 -1
- package/dist/nodes/agents/Agent/agents/ToolsAgent/description.js +72 -48
- package/dist/nodes/agents/Agent/agents/ToolsAgent/description.js.map +1 -1
- package/dist/nodes/agents/Agent/agents/ToolsAgent/execute.js +262 -216
- package/dist/nodes/agents/Agent/agents/ToolsAgent/execute.js.map +1 -1
- package/dist/nodes/agents/Agent/agents/ToolsAgent/prompt.js +27 -3
- package/dist/nodes/agents/Agent/agents/ToolsAgent/prompt.js.map +1 -1
- package/dist/nodes/agents/Agent/agents/utils.js +48 -17
- package/dist/nodes/agents/Agent/agents/utils.js.map +1 -1
- package/dist/nodes/agents/OpenAiAssistant/OpenAiAssistant.node.js +377 -355
- package/dist/nodes/agents/OpenAiAssistant/OpenAiAssistant.node.js.map +1 -1
- package/dist/nodes/agents/OpenAiAssistant/utils.js +53 -27
- package/dist/nodes/agents/OpenAiAssistant/utils.js.map +1 -1
- package/dist/nodes/chains/ChainLLM/ChainLlm.node.js +126 -95
- package/dist/nodes/chains/ChainLLM/ChainLlm.node.js.map +1 -1
- package/dist/nodes/chains/ChainLLM/methods/chainExecutor.js +101 -69
- package/dist/nodes/chains/ChainLLM/methods/chainExecutor.js.map +1 -1
- package/dist/nodes/chains/ChainLLM/methods/config.js +268 -243
- package/dist/nodes/chains/ChainLLM/methods/config.js.map +1 -1
- package/dist/nodes/chains/ChainLLM/methods/imageUtils.js +94 -60
- package/dist/nodes/chains/ChainLLM/methods/imageUtils.js.map +1 -1
- package/dist/nodes/chains/ChainLLM/methods/index.js +35 -9
- package/dist/nodes/chains/ChainLLM/methods/index.js.map +1 -1
- package/dist/nodes/chains/ChainLLM/methods/promptUtils.js +100 -60
- package/dist/nodes/chains/ChainLLM/methods/promptUtils.js.map +1 -1
- package/dist/nodes/chains/ChainLLM/methods/responseFormatter.js +46 -22
- package/dist/nodes/chains/ChainLLM/methods/responseFormatter.js.map +1 -1
- package/dist/nodes/chains/ChainLLM/methods/types.js +15 -1
- package/dist/nodes/chains/ChainLLM/methods/types.js.map +1 -1
- package/dist/nodes/chains/ChainRetrievalQA/ChainRetrievalQa.node.js +260 -233
- package/dist/nodes/chains/ChainRetrievalQA/ChainRetrievalQa.node.js.map +1 -1
- package/dist/nodes/chains/ChainSummarization/ChainSummarization.node.js +60 -37
- package/dist/nodes/chains/ChainSummarization/ChainSummarization.node.js.map +1 -1
- package/dist/nodes/chains/ChainSummarization/V1/ChainSummarizationV1.node.js +234 -208
- package/dist/nodes/chains/ChainSummarization/V1/ChainSummarizationV1.node.js.map +1 -1
- package/dist/nodes/chains/ChainSummarization/V2/ChainSummarizationV2.node.js +379 -334
- package/dist/nodes/chains/ChainSummarization/V2/ChainSummarizationV2.node.js.map +1 -1
- package/dist/nodes/chains/ChainSummarization/helpers.js +67 -43
- package/dist/nodes/chains/ChainSummarization/helpers.js.map +1 -1
- package/dist/nodes/chains/ChainSummarization/prompt.js +30 -4
- package/dist/nodes/chains/ChainSummarization/prompt.js.map +1 -1
- package/dist/nodes/chains/InformationExtractor/InformationExtractor.node.js +261 -229
- package/dist/nodes/chains/InformationExtractor/InformationExtractor.node.js.map +1 -1
- package/dist/nodes/chains/InformationExtractor/helpers.js +48 -28
- package/dist/nodes/chains/InformationExtractor/helpers.js.map +1 -1
- package/dist/nodes/chains/InformationExtractor/types.js +15 -1
- package/dist/nodes/chains/InformationExtractor/types.js.map +1 -1
- package/dist/nodes/chains/SentimentAnalysis/SentimentAnalysis.node.js +227 -197
- package/dist/nodes/chains/SentimentAnalysis/SentimentAnalysis.node.js.map +1 -1
- package/dist/nodes/chains/TextClassifier/TextClassifier.node.js +242 -215
- package/dist/nodes/chains/TextClassifier/TextClassifier.node.js.map +1 -1
- package/dist/nodes/code/Code.node.js +308 -267
- package/dist/nodes/code/Code.node.js.map +1 -1
- package/dist/nodes/document_loaders/DocumentBinaryInputLoader/DocumentBinaryInputLoader.node.js +199 -166
- package/dist/nodes/document_loaders/DocumentBinaryInputLoader/DocumentBinaryInputLoader.node.js.map +1 -1
- package/dist/nodes/document_loaders/DocumentDefaultDataLoader/DocumentDefaultDataLoader.node.js +303 -277
- package/dist/nodes/document_loaders/DocumentDefaultDataLoader/DocumentDefaultDataLoader.node.js.map +1 -1
- package/dist/nodes/document_loaders/DocumentGithubLoader/DocumentGithubLoader.node.js +136 -110
- package/dist/nodes/document_loaders/DocumentGithubLoader/DocumentGithubLoader.node.js.map +1 -1
- package/dist/nodes/document_loaders/DocumentJSONInputLoader/DocumentJsonInputLoader.node.js +107 -77
- package/dist/nodes/document_loaders/DocumentJSONInputLoader/DocumentJsonInputLoader.node.js.map +1 -1
- package/dist/nodes/embeddings/EmbeddingsAwsBedrock/EmbeddingsAwsBedrock.node.js +135 -110
- package/dist/nodes/embeddings/EmbeddingsAwsBedrock/EmbeddingsAwsBedrock.node.js.map +1 -1
- package/dist/nodes/embeddings/EmbeddingsAzureOpenAi/EmbeddingsAzureOpenAi.node.js +152 -126
- package/dist/nodes/embeddings/EmbeddingsAzureOpenAi/EmbeddingsAzureOpenAi.node.js.map +1 -1
- package/dist/nodes/embeddings/EmbeddingsCohere/EmbeddingsCohere.node.js +126 -101
- package/dist/nodes/embeddings/EmbeddingsCohere/EmbeddingsCohere.node.js.map +1 -1
- package/dist/nodes/embeddings/EmbeddingsGoogleGemini/EmbeddingsGoogleGemini.node.js +146 -117
- package/dist/nodes/embeddings/EmbeddingsGoogleGemini/EmbeddingsGoogleGemini.node.js.map +1 -1
- package/dist/nodes/embeddings/EmbeddingsGoogleVertex/EmbeddingsGoogleVertex.node.js +166 -0
- package/dist/nodes/embeddings/EmbeddingsGoogleVertex/EmbeddingsGoogleVertex.node.js.map +1 -0
- package/dist/nodes/embeddings/EmbeddingsGoogleVertex/google.svg +1 -0
- package/dist/nodes/embeddings/EmbeddingsHuggingFaceInference/EmbeddingsHuggingFaceInference.node.js +118 -89
- package/dist/nodes/embeddings/EmbeddingsHuggingFaceInference/EmbeddingsHuggingFaceInference.node.js.map +1 -1
- package/dist/nodes/embeddings/EmbeddingsMistralCloud/EmbeddingsMistralCloud.node.js +165 -136
- package/dist/nodes/embeddings/EmbeddingsMistralCloud/EmbeddingsMistralCloud.node.js.map +1 -1
- package/dist/nodes/embeddings/EmbeddingsOllama/EmbeddingsOllama.node.js +76 -51
- package/dist/nodes/embeddings/EmbeddingsOllama/EmbeddingsOllama.node.js.map +1 -1
- package/dist/nodes/embeddings/EmbeddingsOpenAI/EmbeddingsOpenAi.node.js +228 -201
- package/dist/nodes/embeddings/EmbeddingsOpenAI/EmbeddingsOpenAi.node.js.map +1 -1
- package/dist/nodes/llms/LMChatAnthropic/LmChatAnthropic.node.js +306 -272
- package/dist/nodes/llms/LMChatAnthropic/LmChatAnthropic.node.js.map +1 -1
- package/dist/nodes/llms/LMChatAnthropic/methods/searchModels.js +58 -36
- package/dist/nodes/llms/LMChatAnthropic/methods/searchModels.js.map +1 -1
- package/dist/nodes/llms/LMChatOllama/LmChatOllama.node.js +87 -61
- package/dist/nodes/llms/LMChatOllama/LmChatOllama.node.js.map +1 -1
- package/dist/nodes/llms/LMChatOpenAi/LmChatOpenAi.node.js +340 -316
- package/dist/nodes/llms/LMChatOpenAi/LmChatOpenAi.node.js.map +1 -1
- package/dist/nodes/llms/LMChatOpenAi/methods/loadModels.js +54 -30
- package/dist/nodes/llms/LMChatOpenAi/methods/loadModels.js.map +1 -1
- package/dist/nodes/llms/LMCohere/LmCohere.node.js +119 -93
- package/dist/nodes/llms/LMCohere/LmCohere.node.js.map +1 -1
- package/dist/nodes/llms/LMOllama/LmOllama.node.js +86 -60
- package/dist/nodes/llms/LMOllama/LmOllama.node.js.map +1 -1
- package/dist/nodes/llms/LMOllama/description.js +235 -207
- package/dist/nodes/llms/LMOllama/description.js.map +1 -1
- package/dist/nodes/llms/LMOpenAi/LmOpenAi.node.js +239 -214
- package/dist/nodes/llms/LMOpenAi/LmOpenAi.node.js.map +1 -1
- package/dist/nodes/llms/LMOpenHuggingFaceInference/LmOpenHuggingFaceInference.node.js +159 -133
- package/dist/nodes/llms/LMOpenHuggingFaceInference/LmOpenHuggingFaceInference.node.js.map +1 -1
- package/dist/nodes/llms/LmChatAwsBedrock/LmChatAwsBedrock.node.js +167 -140
- package/dist/nodes/llms/LmChatAwsBedrock/LmChatAwsBedrock.node.js.map +1 -1
- package/dist/nodes/llms/LmChatAzureOpenAi/LmChatAzureOpenAi.node.js +193 -168
- package/dist/nodes/llms/LmChatAzureOpenAi/LmChatAzureOpenAi.node.js.map +1 -1
- package/dist/nodes/llms/LmChatDeepSeek/LmChatDeepSeek.node.js +236 -212
- package/dist/nodes/llms/LmChatDeepSeek/LmChatDeepSeek.node.js.map +1 -1
- package/dist/nodes/llms/LmChatGoogleGemini/LmChatGoogleGemini.node.js +163 -133
- package/dist/nodes/llms/LmChatGoogleGemini/LmChatGoogleGemini.node.js.map +1 -1
- package/dist/nodes/llms/LmChatGoogleVertex/LmChatGoogleVertex.node.js +194 -164
- package/dist/nodes/llms/LmChatGoogleVertex/LmChatGoogleVertex.node.js.map +1 -1
- package/dist/nodes/llms/LmChatGoogleVertex/error-handling.js +36 -14
- package/dist/nodes/llms/LmChatGoogleVertex/error-handling.js.map +1 -1
- package/dist/nodes/llms/LmChatGroq/LmChatGroq.node.js +160 -134
- package/dist/nodes/llms/LmChatGroq/LmChatGroq.node.js.map +1 -1
- package/dist/nodes/llms/LmChatMistralCloud/LmChatMistralCloud.node.js +205 -179
- package/dist/nodes/llms/LmChatMistralCloud/LmChatMistralCloud.node.js.map +1 -1
- package/dist/nodes/llms/LmChatOpenRouter/LmChatOpenRouter.node.js +235 -212
- package/dist/nodes/llms/LmChatOpenRouter/LmChatOpenRouter.node.js.map +1 -1
- package/dist/nodes/llms/LmChatXAiGrok/LmChatXAiGrok.node.js +236 -212
- package/dist/nodes/llms/LmChatXAiGrok/LmChatXAiGrok.node.js.map +1 -1
- package/dist/nodes/llms/N8nLlmTracing.js +162 -127
- package/dist/nodes/llms/N8nLlmTracing.js.map +1 -1
- package/dist/nodes/llms/gemini-common/additional-options.js +103 -78
- package/dist/nodes/llms/gemini-common/additional-options.js.map +1 -1
- package/dist/nodes/llms/gemini-common/safety-options.js +75 -49
- package/dist/nodes/llms/gemini-common/safety-options.js.map +1 -1
- package/dist/nodes/llms/n8nDefaultFailedAttemptHandler.js +60 -24
- package/dist/nodes/llms/n8nDefaultFailedAttemptHandler.js.map +1 -1
- package/dist/nodes/llms/n8nLlmFailedAttemptHandler.js +46 -24
- package/dist/nodes/llms/n8nLlmFailedAttemptHandler.js.map +1 -1
- package/dist/nodes/memory/MemoryBufferWindow/MemoryBufferWindow.node.js +153 -130
- package/dist/nodes/memory/MemoryBufferWindow/MemoryBufferWindow.node.js.map +1 -1
- package/dist/nodes/memory/MemoryChatRetriever/MemoryChatRetriever.node.js +109 -84
- package/dist/nodes/memory/MemoryChatRetriever/MemoryChatRetriever.node.js.map +1 -1
- package/dist/nodes/memory/MemoryManager/MemoryManager.node.js +358 -318
- package/dist/nodes/memory/MemoryManager/MemoryManager.node.js.map +1 -1
- package/dist/nodes/memory/MemoryMongoDbChat/MemoryMongoDbChat.node.js +155 -0
- package/dist/nodes/memory/MemoryMongoDbChat/MemoryMongoDbChat.node.js.map +1 -0
- package/dist/nodes/memory/MemoryMongoDbChat/mongodb.dark.svg +3 -0
- package/dist/nodes/memory/MemoryMongoDbChat/mongodb.svg +3 -0
- package/dist/nodes/memory/MemoryMotorhead/MemoryMotorhead.node.js +128 -104
- package/dist/nodes/memory/MemoryMotorhead/MemoryMotorhead.node.js.map +1 -1
- package/dist/nodes/memory/MemoryPostgresChat/MemoryPostgresChat.node.js +120 -97
- package/dist/nodes/memory/MemoryPostgresChat/MemoryPostgresChat.node.js.map +1 -1
- package/dist/nodes/memory/MemoryRedisChat/MemoryRedisChat.node.js +172 -150
- package/dist/nodes/memory/MemoryRedisChat/MemoryRedisChat.node.js.map +1 -1
- package/dist/nodes/memory/MemoryXata/MemoryXata.node.js +153 -125
- package/dist/nodes/memory/MemoryXata/MemoryXata.node.js.map +1 -1
- package/dist/nodes/memory/MemoryZep/MemoryZep.node.js +159 -133
- package/dist/nodes/memory/MemoryZep/MemoryZep.node.js.map +1 -1
- package/dist/nodes/memory/descriptions.js +78 -48
- package/dist/nodes/memory/descriptions.js.map +1 -1
- package/dist/nodes/output_parser/OutputParserAutofixing/OutputParserAutofixing.node.js +129 -90
- package/dist/nodes/output_parser/OutputParserAutofixing/OutputParserAutofixing.node.js.map +1 -1
- package/dist/nodes/output_parser/OutputParserAutofixing/prompt.js +27 -3
- package/dist/nodes/output_parser/OutputParserAutofixing/prompt.js.map +1 -1
- package/dist/nodes/output_parser/OutputParserItemList/OutputParserItemList.node.js +103 -68
- package/dist/nodes/output_parser/OutputParserItemList/OutputParserItemList.node.js.map +1 -1
- package/dist/nodes/output_parser/OutputParserStructured/OutputParserStructured.node.js +129 -102
- package/dist/nodes/output_parser/OutputParserStructured/OutputParserStructured.node.js.map +1 -1
- package/dist/nodes/retrievers/RetrieverContextualCompression/RetrieverContextualCompression.node.js +99 -69
- package/dist/nodes/retrievers/RetrieverContextualCompression/RetrieverContextualCompression.node.js.map +1 -1
- package/dist/nodes/retrievers/RetrieverMultiQuery/RetrieverMultiQuery.node.js +118 -88
- package/dist/nodes/retrievers/RetrieverMultiQuery/RetrieverMultiQuery.node.js.map +1 -1
- package/dist/nodes/retrievers/RetrieverVectorStore/RetrieverVectorStore.node.js +88 -60
- package/dist/nodes/retrievers/RetrieverVectorStore/RetrieverVectorStore.node.js.map +1 -1
- package/dist/nodes/retrievers/RetrieverWorkflow/RetrieverWorkflow.node.js +400 -356
- package/dist/nodes/retrievers/RetrieverWorkflow/RetrieverWorkflow.node.js.map +1 -1
- package/dist/nodes/text_splitters/TextSplitterCharacterTextSplitter/TextSplitterCharacterTextSplitter.node.js +99 -74
- package/dist/nodes/text_splitters/TextSplitterCharacterTextSplitter/TextSplitterCharacterTextSplitter.node.js.map +1 -1
- package/dist/nodes/text_splitters/TextSplitterRecursiveCharacterTextSplitter/TextSplitterRecursiveCharacterTextSplitter.node.js +132 -103
- package/dist/nodes/text_splitters/TextSplitterRecursiveCharacterTextSplitter/TextSplitterRecursiveCharacterTextSplitter.node.js.map +1 -1
- package/dist/nodes/text_splitters/TextSplitterTokenSplitter/TextSplitterTokenSplitter.node.js +96 -68
- package/dist/nodes/text_splitters/TextSplitterTokenSplitter/TextSplitterTokenSplitter.node.js.map +1 -1
- package/dist/nodes/tools/ToolCalculator/ToolCalculator.node.js +69 -44
- package/dist/nodes/tools/ToolCalculator/ToolCalculator.node.js.map +1 -1
- package/dist/nodes/tools/ToolCode/ToolCode.node.js +261 -235
- package/dist/nodes/tools/ToolCode/ToolCode.node.js.map +1 -1
- package/dist/nodes/tools/ToolHttpRequest/ToolHttpRequest.node.js +384 -328
- package/dist/nodes/tools/ToolHttpRequest/ToolHttpRequest.node.js.map +1 -1
- package/dist/nodes/tools/ToolHttpRequest/descriptions.js +394 -357
- package/dist/nodes/tools/ToolHttpRequest/descriptions.js.map +1 -1
- package/dist/nodes/tools/ToolHttpRequest/interfaces.js +15 -1
- package/dist/nodes/tools/ToolHttpRequest/interfaces.js.map +1 -1
- package/dist/nodes/tools/ToolHttpRequest/utils.js +587 -551
- package/dist/nodes/tools/ToolHttpRequest/utils.js.map +1 -1
- package/dist/nodes/tools/ToolSerpApi/ToolSerpApi.node.js +131 -106
- package/dist/nodes/tools/ToolSerpApi/ToolSerpApi.node.js.map +1 -1
- package/dist/nodes/tools/ToolThink/ToolThink.node.js +94 -0
- package/dist/nodes/tools/ToolThink/ToolThink.node.js.map +1 -0
- package/dist/nodes/tools/ToolVectorStore/ToolVectorStore.node.js +131 -100
- package/dist/nodes/tools/ToolVectorStore/ToolVectorStore.node.js.map +1 -1
- package/dist/nodes/tools/ToolWikipedia/ToolWikipedia.node.js +70 -46
- package/dist/nodes/tools/ToolWikipedia/ToolWikipedia.node.js.map +1 -1
- package/dist/nodes/tools/ToolWolframAlpha/ToolWolframAlpha.node.js +75 -50
- package/dist/nodes/tools/ToolWolframAlpha/ToolWolframAlpha.node.js.map +1 -1
- package/dist/nodes/tools/ToolWorkflow/ToolWorkflow.node.js +64 -41
- package/dist/nodes/tools/ToolWorkflow/ToolWorkflow.node.js.map +1 -1
- package/dist/nodes/tools/ToolWorkflow/v1/ToolWorkflowV1.node.js +193 -185
- package/dist/nodes/tools/ToolWorkflow/v1/ToolWorkflowV1.node.js.map +1 -1
- package/dist/nodes/tools/ToolWorkflow/v1/versionDescription.js +326 -287
- package/dist/nodes/tools/ToolWorkflow/v1/versionDescription.js.map +1 -1
- package/dist/nodes/tools/ToolWorkflow/v2/ToolWorkflowV2.node.js +50 -27
- package/dist/nodes/tools/ToolWorkflow/v2/ToolWorkflowV2.node.js.map +1 -1
- package/dist/nodes/tools/ToolWorkflow/v2/methods/index.js +36 -35
- package/dist/nodes/tools/ToolWorkflow/v2/methods/index.js.map +1 -1
- package/dist/nodes/tools/ToolWorkflow/v2/methods/localResourceMapping.js +40 -18
- package/dist/nodes/tools/ToolWorkflow/v2/methods/localResourceMapping.js.map +1 -1
- package/dist/nodes/tools/ToolWorkflow/v2/utils/WorkflowToolService.js +256 -201
- package/dist/nodes/tools/ToolWorkflow/v2/utils/WorkflowToolService.js.map +1 -1
- package/dist/nodes/tools/ToolWorkflow/v2/versionDescription.js +159 -126
- package/dist/nodes/tools/ToolWorkflow/v2/versionDescription.js.map +1 -1
- package/dist/nodes/trigger/ChatTrigger/ChatTrigger.node.js +513 -489
- package/dist/nodes/trigger/ChatTrigger/ChatTrigger.node.js.map +1 -1
- package/dist/nodes/trigger/ChatTrigger/GenericFunctions.js +70 -41
- package/dist/nodes/trigger/ChatTrigger/GenericFunctions.js.map +1 -1
- package/dist/nodes/trigger/ChatTrigger/constants.js +27 -3
- package/dist/nodes/trigger/ChatTrigger/constants.js.map +1 -1
- package/dist/nodes/trigger/ChatTrigger/error.js +39 -17
- package/dist/nodes/trigger/ChatTrigger/error.js.map +1 -1
- package/dist/nodes/trigger/ChatTrigger/templates.js +73 -33
- package/dist/nodes/trigger/ChatTrigger/templates.js.map +1 -1
- package/dist/nodes/trigger/ChatTrigger/types.js +15 -1
- package/dist/nodes/trigger/ChatTrigger/types.js.map +1 -1
- package/dist/nodes/trigger/ManualChatTrigger/ManualChatTrigger.node.js +87 -63
- package/dist/nodes/trigger/ManualChatTrigger/ManualChatTrigger.node.js.map +1 -1
- package/dist/nodes/vector_store/VectorStoreInMemory/VectorStoreInMemory.node.js +75 -52
- package/dist/nodes/vector_store/VectorStoreInMemory/VectorStoreInMemory.node.js.map +1 -1
- package/dist/nodes/vector_store/VectorStoreInMemoryInsert/VectorStoreInMemoryInsert.node.js +117 -83
- package/dist/nodes/vector_store/VectorStoreInMemoryInsert/VectorStoreInMemoryInsert.node.js.map +1 -1
- package/dist/nodes/vector_store/VectorStoreInMemoryLoad/VectorStoreInMemoryLoad.node.js +91 -62
- package/dist/nodes/vector_store/VectorStoreInMemoryLoad/VectorStoreInMemoryLoad.node.js.map +1 -1
- package/dist/nodes/vector_store/VectorStoreMongoDBAtlas/VectorStoreMongoDBAtlas.node.js +240 -213
- package/dist/nodes/vector_store/VectorStoreMongoDBAtlas/VectorStoreMongoDBAtlas.node.js.map +1 -1
- package/dist/nodes/vector_store/VectorStorePGVector/VectorStorePGVector.node.js +256 -221
- package/dist/nodes/vector_store/VectorStorePGVector/VectorStorePGVector.node.js.map +1 -1
- package/dist/nodes/vector_store/VectorStorePinecone/VectorStorePinecone.node.js +131 -109
- package/dist/nodes/vector_store/VectorStorePinecone/VectorStorePinecone.node.js.map +1 -1
- package/dist/nodes/vector_store/VectorStorePineconeInsert/VectorStorePineconeInsert.node.js +137 -107
- package/dist/nodes/vector_store/VectorStorePineconeInsert/VectorStorePineconeInsert.node.js.map +1 -1
- package/dist/nodes/vector_store/VectorStorePineconeLoad/VectorStorePineconeLoad.node.js +125 -98
- package/dist/nodes/vector_store/VectorStorePineconeLoad/VectorStorePineconeLoad.node.js.map +1 -1
- package/dist/nodes/vector_store/VectorStoreQdrant/VectorStoreQdrant.node.js +124 -100
- package/dist/nodes/vector_store/VectorStoreQdrant/VectorStoreQdrant.node.js.map +1 -1
- package/dist/nodes/vector_store/VectorStoreSupabase/VectorStoreSupabase.node.js +116 -95
- package/dist/nodes/vector_store/VectorStoreSupabase/VectorStoreSupabase.node.js.map +1 -1
- package/dist/nodes/vector_store/VectorStoreSupabaseInsert/VectorStoreSupabaseInsert.node.js +129 -99
- package/dist/nodes/vector_store/VectorStoreSupabaseInsert/VectorStoreSupabaseInsert.node.js.map +1 -1
- package/dist/nodes/vector_store/VectorStoreSupabaseLoad/VectorStoreSupabaseLoad.node.js +121 -94
- package/dist/nodes/vector_store/VectorStoreSupabaseLoad/VectorStoreSupabaseLoad.node.js.map +1 -1
- package/dist/nodes/vector_store/VectorStoreZep/VectorStoreZep.node.js +133 -113
- package/dist/nodes/vector_store/VectorStoreZep/VectorStoreZep.node.js.map +1 -1
- package/dist/nodes/vector_store/VectorStoreZepInsert/VectorStoreZepInsert.node.js +141 -111
- package/dist/nodes/vector_store/VectorStoreZepInsert/VectorStoreZepInsert.node.js.map +1 -1
- package/dist/nodes/vector_store/VectorStoreZepLoad/VectorStoreZepLoad.node.js +121 -94
- package/dist/nodes/vector_store/VectorStoreZepLoad/VectorStoreZepLoad.node.js.map +1 -1
- package/dist/nodes/vector_store/shared/MemoryManager/MemoryCalculator.js +65 -37
- package/dist/nodes/vector_store/shared/MemoryManager/MemoryCalculator.js.map +1 -1
- package/dist/nodes/vector_store/shared/MemoryManager/MemoryVectorStoreManager.js +220 -159
- package/dist/nodes/vector_store/shared/MemoryManager/MemoryVectorStoreManager.js.map +1 -1
- package/dist/nodes/vector_store/shared/MemoryManager/StoreCleanupService.js +120 -87
- package/dist/nodes/vector_store/shared/MemoryManager/StoreCleanupService.js.map +1 -1
- package/dist/nodes/vector_store/shared/MemoryManager/config.js +50 -26
- package/dist/nodes/vector_store/shared/MemoryManager/config.js.map +1 -1
- package/dist/nodes/vector_store/shared/MemoryManager/types.js +15 -1
- package/dist/nodes/vector_store/shared/MemoryManager/types.js.map +1 -1
- package/dist/nodes/vector_store/shared/createVectorStoreNode/constants.js +67 -41
- package/dist/nodes/vector_store/shared/createVectorStoreNode/constants.js.map +1 -1
- package/dist/nodes/vector_store/shared/createVectorStoreNode/createVectorStoreNode.js +240 -194
- package/dist/nodes/vector_store/shared/createVectorStoreNode/createVectorStoreNode.js.map +1 -1
- package/dist/nodes/vector_store/shared/createVectorStoreNode/methods/listSearch.js +75 -50
- package/dist/nodes/vector_store/shared/createVectorStoreNode/methods/listSearch.js.map +1 -1
- package/dist/nodes/vector_store/shared/createVectorStoreNode/operations/index.js +28 -19
- package/dist/nodes/vector_store/shared/createVectorStoreNode/operations/index.js.map +1 -1
- package/dist/nodes/vector_store/shared/createVectorStoreNode/operations/insertOperation.js +58 -29
- package/dist/nodes/vector_store/shared/createVectorStoreNode/operations/insertOperation.js.map +1 -1
- package/dist/nodes/vector_store/shared/createVectorStoreNode/operations/loadOperation.js +62 -29
- package/dist/nodes/vector_store/shared/createVectorStoreNode/operations/loadOperation.js.map +1 -1
- package/dist/nodes/vector_store/shared/createVectorStoreNode/operations/retrieveAsToolOperation.js +72 -38
- package/dist/nodes/vector_store/shared/createVectorStoreNode/operations/retrieveAsToolOperation.js.map +1 -1
- package/dist/nodes/vector_store/shared/createVectorStoreNode/operations/retrieveOperation.js +36 -12
- package/dist/nodes/vector_store/shared/createVectorStoreNode/operations/retrieveOperation.js.map +1 -1
- package/dist/nodes/vector_store/shared/createVectorStoreNode/operations/updateOperation.js +64 -34
- package/dist/nodes/vector_store/shared/createVectorStoreNode/operations/updateOperation.js.map +1 -1
- package/dist/nodes/vector_store/shared/createVectorStoreNode/types.js +15 -1
- package/dist/nodes/vector_store/shared/createVectorStoreNode/types.js.map +1 -1
- package/dist/nodes/vector_store/shared/createVectorStoreNode/utils.js +40 -12
- package/dist/nodes/vector_store/shared/createVectorStoreNode/utils.js.map +1 -1
- package/dist/nodes/vector_store/shared/descriptions.js +93 -65
- package/dist/nodes/vector_store/shared/descriptions.js.map +1 -1
- package/dist/nodes/vector_store/shared/processDocuments.js +58 -35
- package/dist/nodes/vector_store/shared/processDocuments.js.map +1 -1
- package/dist/nodes/vendors/OpenAi/OpenAi.node.js +39 -16
- package/dist/nodes/vendors/OpenAi/OpenAi.node.js.map +1 -1
- package/dist/nodes/vendors/OpenAi/actions/assistant/create.operation.js +267 -228
- package/dist/nodes/vendors/OpenAi/actions/assistant/create.operation.js.map +1 -1
- package/dist/nodes/vendors/OpenAi/actions/assistant/deleteAssistant.operation.js +49 -24
- package/dist/nodes/vendors/OpenAi/actions/assistant/deleteAssistant.operation.js.map +1 -1
- package/dist/nodes/vendors/OpenAi/actions/assistant/index.js +100 -94
- package/dist/nodes/vendors/OpenAi/actions/assistant/index.js.map +1 -1
- package/dist/nodes/vendors/OpenAi/actions/assistant/list.operation.js +83 -59
- package/dist/nodes/vendors/OpenAi/actions/assistant/list.operation.js.map +1 -1
- package/dist/nodes/vendors/OpenAi/actions/assistant/message.operation.js +255 -227
- package/dist/nodes/vendors/OpenAi/actions/assistant/message.operation.js.map +1 -1
- package/dist/nodes/vendors/OpenAi/actions/assistant/update.operation.js +216 -171
- package/dist/nodes/vendors/OpenAi/actions/assistant/update.operation.js.map +1 -1
- package/dist/nodes/vendors/OpenAi/actions/audio/generate.operation.js +186 -157
- package/dist/nodes/vendors/OpenAi/actions/audio/generate.operation.js.map +1 -1
- package/dist/nodes/vendors/OpenAi/actions/audio/index.js +92 -88
- package/dist/nodes/vendors/OpenAi/actions/audio/index.js.map +1 -1
- package/dist/nodes/vendors/OpenAi/actions/audio/transcribe.operation.js +108 -76
- package/dist/nodes/vendors/OpenAi/actions/audio/transcribe.operation.js.map +1 -1
- package/dist/nodes/vendors/OpenAi/actions/audio/translate.operation.js +99 -67
- package/dist/nodes/vendors/OpenAi/actions/audio/translate.operation.js.map +1 -1
- package/dist/nodes/vendors/OpenAi/actions/descriptions.js +75 -50
- package/dist/nodes/vendors/OpenAi/actions/descriptions.js.map +1 -1
- package/dist/nodes/vendors/OpenAi/actions/file/deleteFile.operation.js +75 -50
- package/dist/nodes/vendors/OpenAi/actions/file/deleteFile.operation.js.map +1 -1
- package/dist/nodes/vendors/OpenAi/actions/file/index.js +80 -76
- package/dist/nodes/vendors/OpenAi/actions/file/index.js.map +1 -1
- package/dist/nodes/vendors/OpenAi/actions/file/list.operation.js +74 -49
- package/dist/nodes/vendors/OpenAi/actions/file/list.operation.js.map +1 -1
- package/dist/nodes/vendors/OpenAi/actions/file/upload.operation.js +108 -78
- package/dist/nodes/vendors/OpenAi/actions/file/upload.operation.js.map +1 -1
- package/dist/nodes/vendors/OpenAi/actions/image/analyze.operation.js +206 -187
- package/dist/nodes/vendors/OpenAi/actions/image/analyze.operation.js.map +1 -1
- package/dist/nodes/vendors/OpenAi/actions/image/generate.operation.js +240 -213
- package/dist/nodes/vendors/OpenAi/actions/image/generate.operation.js.map +1 -1
- package/dist/nodes/vendors/OpenAi/actions/image/index.js +70 -67
- package/dist/nodes/vendors/OpenAi/actions/image/index.js.map +1 -1
- package/dist/nodes/vendors/OpenAi/actions/node.type.js +15 -1
- package/dist/nodes/vendors/OpenAi/actions/node.type.js.map +1 -1
- package/dist/nodes/vendors/OpenAi/actions/router.js +100 -97
- package/dist/nodes/vendors/OpenAi/actions/router.js.map +1 -1
- package/dist/nodes/vendors/OpenAi/actions/text/classify.operation.js +93 -70
- package/dist/nodes/vendors/OpenAi/actions/text/classify.operation.js.map +1 -1
- package/dist/nodes/vendors/OpenAi/actions/text/index.js +71 -67
- package/dist/nodes/vendors/OpenAi/actions/text/index.js.map +1 -1
- package/dist/nodes/vendors/OpenAi/actions/text/message.operation.js +307 -278
- package/dist/nodes/vendors/OpenAi/actions/text/message.operation.js.map +1 -1
- package/dist/nodes/vendors/OpenAi/actions/versionDescription.js +143 -141
- package/dist/nodes/vendors/OpenAi/actions/versionDescription.js.map +1 -1
- package/dist/nodes/vendors/OpenAi/helpers/constants.js +47 -23
- package/dist/nodes/vendors/OpenAi/helpers/constants.js.map +1 -1
- package/dist/nodes/vendors/OpenAi/helpers/error-handling.js +42 -17
- package/dist/nodes/vendors/OpenAi/helpers/error-handling.js.map +1 -1
- package/dist/nodes/vendors/OpenAi/helpers/interfaces.js +15 -1
- package/dist/nodes/vendors/OpenAi/helpers/interfaces.js.map +1 -1
- package/dist/nodes/vendors/OpenAi/helpers/utils.js +56 -29
- package/dist/nodes/vendors/OpenAi/helpers/utils.js.map +1 -1
- package/dist/nodes/vendors/OpenAi/methods/index.js +39 -36
- package/dist/nodes/vendors/OpenAi/methods/index.js.map +1 -1
- package/dist/nodes/vendors/OpenAi/methods/listSearch.js +118 -95
- package/dist/nodes/vendors/OpenAi/methods/listSearch.js.map +1 -1
- package/dist/nodes/vendors/OpenAi/methods/loadOptions.js +36 -12
- package/dist/nodes/vendors/OpenAi/methods/loadOptions.js.map +1 -1
- package/dist/nodes/vendors/OpenAi/transport/index.js +44 -20
- package/dist/nodes/vendors/OpenAi/transport/index.js.map +1 -1
- package/dist/types/nodes.json +9 -6
- package/dist/types/types.js.map +1 -1
- package/dist/types/zod.types.js +15 -1
- package/dist/types/zod.types.js.map +1 -1
- package/dist/utils/N8nBinaryLoader.js +186 -142
- package/dist/utils/N8nBinaryLoader.js.map +1 -1
- package/dist/utils/N8nJsonLoader.js +82 -59
- package/dist/utils/N8nJsonLoader.js.map +1 -1
- package/dist/utils/N8nTool.js +95 -75
- package/dist/utils/N8nTool.js.map +1 -1
- package/dist/utils/descriptions.js +128 -92
- package/dist/utils/descriptions.js.map +1 -1
- package/dist/utils/helpers.js +153 -137
- package/dist/utils/helpers.js.map +1 -1
- package/dist/utils/logWrapper.js +328 -285
- package/dist/utils/logWrapper.js.map +1 -1
- package/dist/utils/output_parsers/N8nItemListOutputParser.js +57 -35
- package/dist/utils/output_parsers/N8nItemListOutputParser.js.map +1 -1
- package/dist/utils/output_parsers/N8nOutputFixingParser.js +94 -62
- package/dist/utils/output_parsers/N8nOutputFixingParser.js.map +1 -1
- package/dist/utils/output_parsers/N8nOutputParser.js +44 -15
- package/dist/utils/output_parsers/N8nOutputParser.js.map +1 -1
- package/dist/utils/output_parsers/N8nStructuredOutputParser.js +109 -79
- package/dist/utils/output_parsers/N8nStructuredOutputParser.js.map +1 -1
- package/dist/utils/output_parsers/prompt.js +48 -0
- package/dist/utils/output_parsers/prompt.js.map +1 -0
- package/dist/utils/schemaParsing.js +43 -14
- package/dist/utils/schemaParsing.js.map +1 -1
- package/dist/utils/sharedFields.js +130 -104
- package/dist/utils/sharedFields.js.map +1 -1
- package/dist/utils/tracing.js +37 -15
- package/dist/utils/tracing.js.map +1 -1
- package/package.json +14 -9
- package/dist/build.tsbuildinfo +0 -1
- package/dist/credentials/AnthropicApi.credentials.d.ts +0 -9
- package/dist/credentials/AzureOpenAiApi.credentials.d.ts +0 -8
- package/dist/credentials/CohereApi.credentials.d.ts +0 -9
- package/dist/credentials/DeepSeekApi.credentials.d.ts +0 -9
- package/dist/credentials/GooglePalmApi.credentials.d.ts +0 -9
- package/dist/credentials/GroqApi.credentials.d.ts +0 -9
- package/dist/credentials/HuggingFaceApi.credentials.d.ts +0 -9
- package/dist/credentials/MistralCloudApi.credentials.d.ts +0 -9
- package/dist/credentials/MotorheadApi.credentials.d.ts +0 -9
- package/dist/credentials/OllamaApi.credentials.d.ts +0 -8
- package/dist/credentials/OpenRouterApi.credentials.d.ts +0 -9
- package/dist/credentials/PineconeApi.credentials.d.ts +0 -9
- package/dist/credentials/QdrantApi.credentials.d.ts +0 -9
- package/dist/credentials/SerpApi.credentials.d.ts +0 -9
- package/dist/credentials/WolframAlphaApi.credentials.d.ts +0 -9
- package/dist/credentials/XAiApi.credentials.d.ts +0 -9
- package/dist/credentials/XataApi.credentials.d.ts +0 -9
- package/dist/credentials/ZepApi.credentials.d.ts +0 -9
- package/dist/nodes/agents/Agent/Agent.node.d.ts +0 -5
- package/dist/nodes/agents/Agent/agents/ConversationalAgent/description.d.ts +0 -2
- package/dist/nodes/agents/Agent/agents/ConversationalAgent/execute.d.ts +0 -2
- package/dist/nodes/agents/Agent/agents/ConversationalAgent/prompt.d.ts +0 -2
- package/dist/nodes/agents/Agent/agents/OpenAiFunctionsAgent/description.d.ts +0 -2
- package/dist/nodes/agents/Agent/agents/OpenAiFunctionsAgent/execute.d.ts +0 -2
- package/dist/nodes/agents/Agent/agents/OpenAiFunctionsAgent/prompt.d.ts +0 -1
- package/dist/nodes/agents/Agent/agents/PlanAndExecuteAgent/description.d.ts +0 -2
- package/dist/nodes/agents/Agent/agents/PlanAndExecuteAgent/execute.d.ts +0 -2
- package/dist/nodes/agents/Agent/agents/PlanAndExecuteAgent/prompt.d.ts +0 -1
- package/dist/nodes/agents/Agent/agents/ReActAgent/description.d.ts +0 -2
- package/dist/nodes/agents/Agent/agents/ReActAgent/execute.d.ts +0 -2
- package/dist/nodes/agents/Agent/agents/ReActAgent/prompt.d.ts +0 -4
- package/dist/nodes/agents/Agent/agents/SqlAgent/description.d.ts +0 -2
- package/dist/nodes/agents/Agent/agents/SqlAgent/execute.d.ts +0 -2
- package/dist/nodes/agents/Agent/agents/SqlAgent/other/handlers/mysql.d.ts +0 -3
- package/dist/nodes/agents/Agent/agents/SqlAgent/other/handlers/postgres.d.ts +0 -3
- package/dist/nodes/agents/Agent/agents/SqlAgent/other/handlers/sqlite.d.ts +0 -3
- package/dist/nodes/agents/Agent/agents/SqlAgent/other/prompts.d.ts +0 -2
- package/dist/nodes/agents/Agent/agents/ToolsAgent/description.d.ts +0 -2
- package/dist/nodes/agents/Agent/agents/ToolsAgent/execute.d.ts +0 -31
- package/dist/nodes/agents/Agent/agents/ToolsAgent/prompt.d.ts +0 -1
- package/dist/nodes/agents/Agent/agents/utils.d.ts +0 -8
- package/dist/nodes/agents/OpenAiAssistant/OpenAiAssistant.node.d.ts +0 -5
- package/dist/nodes/agents/OpenAiAssistant/utils.d.ts +0 -5
- package/dist/nodes/chains/ChainLLM/ChainLlm.node.d.ts +0 -5
- package/dist/nodes/chains/ChainLLM/methods/chainExecutor.d.ts +0 -19
- package/dist/nodes/chains/ChainLLM/methods/config.d.ts +0 -3
- package/dist/nodes/chains/ChainLLM/methods/imageUtils.d.ts +0 -12
- package/dist/nodes/chains/ChainLLM/methods/index.d.ts +0 -4
- package/dist/nodes/chains/ChainLLM/methods/promptUtils.d.ts +0 -3
- package/dist/nodes/chains/ChainLLM/methods/responseFormatter.d.ts +0 -2
- package/dist/nodes/chains/ChainLLM/methods/types.d.ts +0 -28
- package/dist/nodes/chains/ChainRetrievalQA/ChainRetrievalQa.node.d.ts +0 -5
- package/dist/nodes/chains/ChainSummarization/ChainSummarization.node.d.ts +0 -4
- package/dist/nodes/chains/ChainSummarization/V1/ChainSummarizationV1.node.d.ts +0 -6
- package/dist/nodes/chains/ChainSummarization/V2/ChainSummarizationV2.node.d.ts +0 -6
- package/dist/nodes/chains/ChainSummarization/helpers.d.ts +0 -9
- package/dist/nodes/chains/ChainSummarization/prompt.d.ts +0 -2
- package/dist/nodes/chains/InformationExtractor/InformationExtractor.node.d.ts +0 -5
- package/dist/nodes/chains/InformationExtractor/helpers.d.ts +0 -7
- package/dist/nodes/chains/InformationExtractor/types.d.ts +0 -6
- package/dist/nodes/chains/SentimentAnalysis/SentimentAnalysis.node.d.ts +0 -5
- package/dist/nodes/chains/TextClassifier/TextClassifier.node.d.ts +0 -5
- package/dist/nodes/code/Code.node.d.ts +0 -7
- package/dist/nodes/document_loaders/DocumentBinaryInputLoader/DocumentBinaryInputLoader.node.d.ts +0 -8
- package/dist/nodes/document_loaders/DocumentDefaultDataLoader/DocumentDefaultDataLoader.node.d.ts +0 -8
- package/dist/nodes/document_loaders/DocumentGithubLoader/DocumentGithubLoader.node.d.ts +0 -5
- package/dist/nodes/document_loaders/DocumentJSONInputLoader/DocumentJsonInputLoader.node.d.ts +0 -5
- package/dist/nodes/embeddings/EmbeddingsAwsBedrock/EmbeddingsAwsBedrock.node.d.ts +0 -5
- package/dist/nodes/embeddings/EmbeddingsAzureOpenAi/EmbeddingsAzureOpenAi.node.d.ts +0 -5
- package/dist/nodes/embeddings/EmbeddingsCohere/EmbeddingsCohere.node.d.ts +0 -5
- package/dist/nodes/embeddings/EmbeddingsGoogleGemini/EmbeddingsGoogleGemini.node.d.ts +0 -5
- package/dist/nodes/embeddings/EmbeddingsHuggingFaceInference/EmbeddingsHuggingFaceInference.node.d.ts +0 -5
- package/dist/nodes/embeddings/EmbeddingsMistralCloud/EmbeddingsMistralCloud.node.d.ts +0 -5
- package/dist/nodes/embeddings/EmbeddingsOllama/EmbeddingsOllama.node.d.ts +0 -5
- package/dist/nodes/embeddings/EmbeddingsOpenAI/EmbeddingsOpenAi.node.d.ts +0 -5
- package/dist/nodes/llms/LMChatAnthropic/LmChatAnthropic.node.d.ts +0 -11
- package/dist/nodes/llms/LMChatAnthropic/methods/searchModels.d.ts +0 -8
- package/dist/nodes/llms/LMChatOllama/LmChatOllama.node.d.ts +0 -5
- package/dist/nodes/llms/LMChatOpenAi/LmChatOpenAi.node.d.ts +0 -11
- package/dist/nodes/llms/LMChatOpenAi/methods/loadModels.d.ts +0 -2
- package/dist/nodes/llms/LMCohere/LmCohere.node.d.ts +0 -5
- package/dist/nodes/llms/LMOllama/LmOllama.node.d.ts +0 -5
- package/dist/nodes/llms/LMOllama/description.d.ts +0 -4
- package/dist/nodes/llms/LMOpenAi/LmOpenAi.node.d.ts +0 -15
- package/dist/nodes/llms/LMOpenHuggingFaceInference/LmOpenHuggingFaceInference.node.d.ts +0 -5
- package/dist/nodes/llms/LmChatAwsBedrock/LmChatAwsBedrock.node.d.ts +0 -5
- package/dist/nodes/llms/LmChatAzureOpenAi/LmChatAzureOpenAi.node.d.ts +0 -5
- package/dist/nodes/llms/LmChatDeepSeek/LmChatDeepSeek.node.d.ts +0 -5
- package/dist/nodes/llms/LmChatGoogleGemini/LmChatGoogleGemini.node.d.ts +0 -5
- package/dist/nodes/llms/LmChatGoogleVertex/LmChatGoogleVertex.node.d.ts +0 -15
- package/dist/nodes/llms/LmChatGoogleVertex/error-handling.d.ts +0 -8
- package/dist/nodes/llms/LmChatGroq/LmChatGroq.node.d.ts +0 -5
- package/dist/nodes/llms/LmChatMistralCloud/LmChatMistralCloud.node.d.ts +0 -5
- package/dist/nodes/llms/LmChatOpenRouter/LmChatOpenRouter.node.d.ts +0 -5
- package/dist/nodes/llms/LmChatXAiGrok/LmChatXAiGrok.node.d.ts +0 -5
- package/dist/nodes/llms/N8nLlmTracing.d.ts +0 -44
- package/dist/nodes/llms/gemini-common/additional-options.d.ts +0 -2
- package/dist/nodes/llms/gemini-common/safety-options.d.ts +0 -3
- package/dist/nodes/llms/n8nDefaultFailedAttemptHandler.d.ts +0 -1
- package/dist/nodes/llms/n8nLlmFailedAttemptHandler.d.ts +0 -3
- package/dist/nodes/memory/MemoryBufferWindow/MemoryBufferWindow.node.d.ts +0 -5
- package/dist/nodes/memory/MemoryChatRetriever/MemoryChatRetriever.node.d.ts +0 -5
- package/dist/nodes/memory/MemoryManager/MemoryManager.node.d.ts +0 -5
- package/dist/nodes/memory/MemoryMotorhead/MemoryMotorhead.node.d.ts +0 -5
- package/dist/nodes/memory/MemoryPostgresChat/MemoryPostgresChat.node.d.ts +0 -11
- package/dist/nodes/memory/MemoryRedisChat/MemoryRedisChat.node.d.ts +0 -5
- package/dist/nodes/memory/MemoryXata/MemoryXata.node.d.ts +0 -5
- package/dist/nodes/memory/MemoryZep/MemoryZep.node.d.ts +0 -5
- package/dist/nodes/memory/descriptions.d.ts +0 -5
- package/dist/nodes/output_parser/OutputParserAutofixing/OutputParserAutofixing.node.d.ts +0 -5
- package/dist/nodes/output_parser/OutputParserAutofixing/prompt.d.ts +0 -1
- package/dist/nodes/output_parser/OutputParserItemList/OutputParserItemList.node.d.ts +0 -5
- package/dist/nodes/output_parser/OutputParserStructured/OutputParserStructured.node.d.ts +0 -5
- package/dist/nodes/retrievers/RetrieverContextualCompression/RetrieverContextualCompression.node.d.ts +0 -5
- package/dist/nodes/retrievers/RetrieverMultiQuery/RetrieverMultiQuery.node.d.ts +0 -5
- package/dist/nodes/retrievers/RetrieverVectorStore/RetrieverVectorStore.node.d.ts +0 -5
- package/dist/nodes/retrievers/RetrieverWorkflow/RetrieverWorkflow.node.d.ts +0 -5
- package/dist/nodes/text_splitters/TextSplitterCharacterTextSplitter/TextSplitterCharacterTextSplitter.node.d.ts +0 -5
- package/dist/nodes/text_splitters/TextSplitterRecursiveCharacterTextSplitter/TextSplitterRecursiveCharacterTextSplitter.node.d.ts +0 -5
- package/dist/nodes/text_splitters/TextSplitterTokenSplitter/TextSplitterTokenSplitter.node.d.ts +0 -5
- package/dist/nodes/tools/ToolCalculator/ToolCalculator.node.d.ts +0 -5
- package/dist/nodes/tools/ToolCode/ToolCode.node.d.ts +0 -5
- package/dist/nodes/tools/ToolHttpRequest/ToolHttpRequest.node.d.ts +0 -5
- package/dist/nodes/tools/ToolHttpRequest/descriptions.d.ts +0 -7
- package/dist/nodes/tools/ToolHttpRequest/interfaces.d.ts +0 -20
- package/dist/nodes/tools/ToolHttpRequest/utils.d.ts +0 -25
- package/dist/nodes/tools/ToolSerpApi/ToolSerpApi.node.d.ts +0 -5
- package/dist/nodes/tools/ToolVectorStore/ToolVectorStore.node.d.ts +0 -5
- package/dist/nodes/tools/ToolWikipedia/ToolWikipedia.node.d.ts +0 -5
- package/dist/nodes/tools/ToolWolframAlpha/ToolWolframAlpha.node.d.ts +0 -5
- package/dist/nodes/tools/ToolWorkflow/ToolWorkflow.node.d.ts +0 -4
- package/dist/nodes/tools/ToolWorkflow/v1/ToolWorkflowV1.node.d.ts +0 -6
- package/dist/nodes/tools/ToolWorkflow/v1/versionDescription.d.ts +0 -2
- package/dist/nodes/tools/ToolWorkflow/v2/ToolWorkflowV2.node.d.ts +0 -10
- package/dist/nodes/tools/ToolWorkflow/v2/methods/index.d.ts +0 -1
- package/dist/nodes/tools/ToolWorkflow/v2/methods/localResourceMapping.d.ts +0 -2
- package/dist/nodes/tools/ToolWorkflow/v2/utils/WorkflowToolService.d.ts +0 -26
- package/dist/nodes/tools/ToolWorkflow/v2/versionDescription.d.ts +0 -2
- package/dist/nodes/trigger/ChatTrigger/ChatTrigger.node.d.ts +0 -7
- package/dist/nodes/trigger/ChatTrigger/GenericFunctions.d.ts +0 -2
- package/dist/nodes/trigger/ChatTrigger/constants.d.ts +0 -1
- package/dist/nodes/trigger/ChatTrigger/error.d.ts +0 -5
- package/dist/nodes/trigger/ChatTrigger/templates.d.ts +0 -16
- package/dist/nodes/trigger/ChatTrigger/types.d.ts +0 -2
- package/dist/nodes/trigger/ManualChatTrigger/ManualChatTrigger.node.d.ts +0 -5
- package/dist/nodes/vector_store/VectorStoreInMemory/VectorStoreInMemory.node.d.ts +0 -15
- package/dist/nodes/vector_store/VectorStoreInMemoryInsert/VectorStoreInMemoryInsert.node.d.ts +0 -5
- package/dist/nodes/vector_store/VectorStoreInMemoryLoad/VectorStoreInMemoryLoad.node.d.ts +0 -5
- package/dist/nodes/vector_store/VectorStoreMongoDBAtlas/VectorStoreMongoDBAtlas.node.d.ts +0 -16
- package/dist/nodes/vector_store/VectorStorePGVector/VectorStorePGVector.node.d.ts +0 -15
- package/dist/nodes/vector_store/VectorStorePinecone/VectorStorePinecone.node.d.ts +0 -15
- package/dist/nodes/vector_store/VectorStorePineconeInsert/VectorStorePineconeInsert.node.d.ts +0 -11
- package/dist/nodes/vector_store/VectorStorePineconeLoad/VectorStorePineconeLoad.node.d.ts +0 -11
- package/dist/nodes/vector_store/VectorStoreQdrant/VectorStoreQdrant.node.d.ts +0 -15
- package/dist/nodes/vector_store/VectorStoreSupabase/VectorStoreSupabase.node.d.ts +0 -15
- package/dist/nodes/vector_store/VectorStoreSupabaseInsert/VectorStoreSupabaseInsert.node.d.ts +0 -11
- package/dist/nodes/vector_store/VectorStoreSupabaseLoad/VectorStoreSupabaseLoad.node.d.ts +0 -11
- package/dist/nodes/vector_store/VectorStoreZep/VectorStoreZep.node.d.ts +0 -15
- package/dist/nodes/vector_store/VectorStoreZepInsert/VectorStoreZepInsert.node.d.ts +0 -5
- package/dist/nodes/vector_store/VectorStoreZepLoad/VectorStoreZepLoad.node.d.ts +0 -5
- package/dist/nodes/vector_store/shared/MemoryManager/MemoryCalculator.d.ts +0 -7
- package/dist/nodes/vector_store/shared/MemoryManager/MemoryVectorStoreManager.d.ts +0 -32
- package/dist/nodes/vector_store/shared/MemoryManager/StoreCleanupService.d.ts +0 -16
- package/dist/nodes/vector_store/shared/MemoryManager/config.d.ts +0 -4
- package/dist/nodes/vector_store/shared/MemoryManager/types.d.ts +0 -39
- package/dist/nodes/vector_store/shared/createVectorStoreNode/constants.d.ts +0 -4
- package/dist/nodes/vector_store/shared/createVectorStoreNode/createVectorStoreNode.d.ts +0 -15
- package/dist/nodes/vector_store/shared/createVectorStoreNode/methods/listSearch.d.ts +0 -19
- package/dist/nodes/vector_store/shared/createVectorStoreNode/operations/index.d.ts +0 -5
- package/dist/nodes/vector_store/shared/createVectorStoreNode/operations/insertOperation.d.ts +0 -5
- package/dist/nodes/vector_store/shared/createVectorStoreNode/operations/loadOperation.d.ts +0 -5
- package/dist/nodes/vector_store/shared/createVectorStoreNode/operations/retrieveAsToolOperation.d.ts +0 -5
- package/dist/nodes/vector_store/shared/createVectorStoreNode/operations/retrieveOperation.d.ts +0 -5
- package/dist/nodes/vector_store/shared/createVectorStoreNode/operations/updateOperation.d.ts +0 -5
- package/dist/nodes/vector_store/shared/createVectorStoreNode/types.d.ts +0 -31
- package/dist/nodes/vector_store/shared/createVectorStoreNode/utils.d.ts +0 -6
- package/dist/nodes/vector_store/shared/descriptions.d.ts +0 -4
- package/dist/nodes/vector_store/shared/processDocuments.d.ts +0 -25
- package/dist/nodes/vendors/OpenAi/OpenAi.node.d.ts +0 -10
- package/dist/nodes/vendors/OpenAi/actions/assistant/create.operation.d.ts +0 -26
- package/dist/nodes/vendors/OpenAi/actions/assistant/deleteAssistant.operation.d.ts +0 -26
- package/dist/nodes/vendors/OpenAi/actions/assistant/index.d.ts +0 -8
- package/dist/nodes/vendors/OpenAi/actions/assistant/list.operation.d.ts +0 -26
- package/dist/nodes/vendors/OpenAi/actions/assistant/message.operation.d.ts +0 -26
- package/dist/nodes/vendors/OpenAi/actions/assistant/update.operation.d.ts +0 -26
- package/dist/nodes/vendors/OpenAi/actions/audio/generate.operation.d.ts +0 -26
- package/dist/nodes/vendors/OpenAi/actions/audio/index.d.ts +0 -6
- package/dist/nodes/vendors/OpenAi/actions/audio/transcribe.operation.d.ts +0 -26
- package/dist/nodes/vendors/OpenAi/actions/audio/translate.operation.d.ts +0 -26
- package/dist/nodes/vendors/OpenAi/actions/descriptions.d.ts +0 -3
- package/dist/nodes/vendors/OpenAi/actions/file/deleteFile.operation.d.ts +0 -26
- package/dist/nodes/vendors/OpenAi/actions/file/index.d.ts +0 -6
- package/dist/nodes/vendors/OpenAi/actions/file/list.operation.d.ts +0 -26
- package/dist/nodes/vendors/OpenAi/actions/file/upload.operation.d.ts +0 -26
- package/dist/nodes/vendors/OpenAi/actions/image/analyze.operation.d.ts +0 -26
- package/dist/nodes/vendors/OpenAi/actions/image/generate.operation.d.ts +0 -26
- package/dist/nodes/vendors/OpenAi/actions/image/index.d.ts +0 -5
- package/dist/nodes/vendors/OpenAi/actions/node.type.d.ts +0 -10
- package/dist/nodes/vendors/OpenAi/actions/router.d.ts +0 -2
- package/dist/nodes/vendors/OpenAi/actions/text/classify.operation.d.ts +0 -26
- package/dist/nodes/vendors/OpenAi/actions/text/index.d.ts +0 -5
- package/dist/nodes/vendors/OpenAi/actions/text/message.operation.d.ts +0 -26
- package/dist/nodes/vendors/OpenAi/actions/versionDescription.d.ts +0 -2
- package/dist/nodes/vendors/OpenAi/helpers/constants.d.ts +0 -1
- package/dist/nodes/vendors/OpenAi/helpers/error-handling.d.ts +0 -4
- package/dist/nodes/vendors/OpenAi/helpers/interfaces.d.ts +0 -55
- package/dist/nodes/vendors/OpenAi/helpers/utils.d.ts +0 -8
- package/dist/nodes/vendors/OpenAi/methods/index.d.ts +0 -2
- package/dist/nodes/vendors/OpenAi/methods/listSearch.d.ts +0 -5
- package/dist/nodes/vendors/OpenAi/methods/loadOptions.d.ts +0 -2
- package/dist/nodes/vendors/OpenAi/transport/index.d.ts +0 -10
- package/dist/types/types.d.ts +0 -4
- package/dist/types/zod.types.d.ts +0 -2
- package/dist/utils/N8nBinaryLoader.d.ts +0 -18
- package/dist/utils/N8nJsonLoader.d.ts +0 -11
- package/dist/utils/N8nTool.d.ts +0 -10
- package/dist/utils/descriptions.d.ts +0 -13
- package/dist/utils/helpers.d.ts +0 -23
- package/dist/utils/logWrapper.d.ts +0 -27
- package/dist/utils/output_parsers/N8nItemListOutputParser.d.ts +0 -13
- package/dist/utils/output_parsers/N8nOutputFixingParser.d.ts +0 -18
- package/dist/utils/output_parsers/N8nOutputParser.d.ts +0 -7
- package/dist/utils/output_parsers/N8nStructuredOutputParser.d.ts +0 -12
- package/dist/utils/schemaParsing.d.ts +0 -6
- package/dist/utils/sharedFields.d.ts +0 -6
- package/dist/utils/tracing.d.ts +0 -7
|
@@ -1,221 +1,276 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
2
|
+
var __create = Object.create;
|
|
3
|
+
var __defProp = Object.defineProperty;
|
|
4
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
7
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
8
|
+
var __export = (target, all) => {
|
|
9
|
+
for (var name in all)
|
|
10
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
11
|
+
};
|
|
12
|
+
var __copyProps = (to, from, except, desc) => {
|
|
13
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
14
|
+
for (let key of __getOwnPropNames(from))
|
|
15
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
16
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
17
|
+
}
|
|
18
|
+
return to;
|
|
19
|
+
};
|
|
20
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
21
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
22
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
23
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
24
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
25
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
26
|
+
mod
|
|
27
|
+
));
|
|
28
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
29
|
+
var WorkflowToolService_exports = {};
|
|
30
|
+
__export(WorkflowToolService_exports, {
|
|
31
|
+
WorkflowToolService: () => WorkflowToolService
|
|
17
32
|
});
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
return ownKeys(o);
|
|
26
|
-
};
|
|
27
|
-
return function (mod) {
|
|
28
|
-
if (mod && mod.__esModule) return mod;
|
|
29
|
-
var result = {};
|
|
30
|
-
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
-
__setModuleDefault(result, mod);
|
|
32
|
-
return result;
|
|
33
|
-
};
|
|
34
|
-
})();
|
|
35
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
-
exports.WorkflowToolService = void 0;
|
|
37
|
-
const tools_1 = require("@langchain/core/tools");
|
|
38
|
-
const lodash_1 = require("lodash");
|
|
39
|
-
const manual = __importStar(require("n8n-nodes-base/dist/nodes/Set/v2/manual.mode"));
|
|
40
|
-
const GenericFunctions_1 = require("n8n-nodes-base/dist/utils/workflowInputsResourceMapping/GenericFunctions");
|
|
41
|
-
const n8n_workflow_1 = require("n8n-workflow");
|
|
42
|
-
const zod_1 = require("zod");
|
|
33
|
+
module.exports = __toCommonJS(WorkflowToolService_exports);
|
|
34
|
+
var import_tools = require("@langchain/core/tools");
|
|
35
|
+
var import_lodash = require("lodash");
|
|
36
|
+
var manual = __toESM(require("n8n-nodes-base/dist/nodes/Set/v2/manual.mode"));
|
|
37
|
+
var import_GenericFunctions = require("n8n-nodes-base/dist/utils/workflowInputsResourceMapping/GenericFunctions");
|
|
38
|
+
var import_n8n_workflow = require("n8n-workflow");
|
|
39
|
+
var import_zod = require("zod");
|
|
43
40
|
function isNodeExecutionData(data) {
|
|
44
|
-
|
|
41
|
+
return (0, import_lodash.isArray)(data) && Boolean(data.length) && (0, import_lodash.isObject)(data[0]) && "json" in data[0];
|
|
45
42
|
}
|
|
46
43
|
class WorkflowToolService {
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
const reParsedData = (0, n8n_workflow_1.jsonParse)(processedResponse, {
|
|
72
|
-
fallbackValue: { response: processedResponse },
|
|
73
|
-
});
|
|
74
|
-
responseData = [{ json: reParsedData }];
|
|
75
|
-
}
|
|
76
|
-
let metadata;
|
|
77
|
-
if (this.subExecutionId && this.subWorkflowId) {
|
|
78
|
-
metadata = {
|
|
79
|
-
subExecution: {
|
|
80
|
-
executionId: this.subExecutionId,
|
|
81
|
-
workflowId: this.subWorkflowId,
|
|
82
|
-
},
|
|
83
|
-
};
|
|
84
|
-
}
|
|
85
|
-
void context.addOutputData(n8n_workflow_1.NodeConnectionTypes.AiTool, localRunIndex, [responseData], metadata);
|
|
86
|
-
return processedResponse;
|
|
87
|
-
}
|
|
88
|
-
catch (error) {
|
|
89
|
-
const executionError = error;
|
|
90
|
-
const errorResponse = `There was an error: "${executionError.message}"`;
|
|
91
|
-
const metadata = (0, n8n_workflow_1.parseErrorMetadata)(error);
|
|
92
|
-
void context.addOutputData(n8n_workflow_1.NodeConnectionTypes.AiTool, localRunIndex, executionError, metadata);
|
|
93
|
-
return errorResponse;
|
|
94
|
-
}
|
|
95
|
-
};
|
|
96
|
-
return this.useSchema
|
|
97
|
-
? await this.createStructuredTool(name, description, toolHandler)
|
|
98
|
-
: new tools_1.DynamicTool({ name, description, func: toolHandler });
|
|
99
|
-
}
|
|
100
|
-
handleToolResponse(response) {
|
|
101
|
-
if (typeof response === 'number') {
|
|
102
|
-
return response.toString();
|
|
103
|
-
}
|
|
44
|
+
constructor(baseContext, options) {
|
|
45
|
+
this.baseContext = baseContext;
|
|
46
|
+
this.returnAllItems = false;
|
|
47
|
+
const subWorkflowInputs = this.baseContext.getNode().parameters.workflowInputs;
|
|
48
|
+
this.useSchema = (subWorkflowInputs?.schema ?? []).length > 0;
|
|
49
|
+
this.returnAllItems = options?.returnAllItems ?? false;
|
|
50
|
+
}
|
|
51
|
+
// Creates the tool based on the provided parameters
|
|
52
|
+
async createTool({
|
|
53
|
+
name,
|
|
54
|
+
description,
|
|
55
|
+
itemIndex
|
|
56
|
+
}) {
|
|
57
|
+
let runIndex = 0;
|
|
58
|
+
const toolHandler = async (query, runManager) => {
|
|
59
|
+
const localRunIndex = runIndex++;
|
|
60
|
+
const context = this.baseContext.cloneWith({
|
|
61
|
+
runIndex: localRunIndex,
|
|
62
|
+
inputData: [[{ json: { query } }]]
|
|
63
|
+
});
|
|
64
|
+
try {
|
|
65
|
+
const response = await this.runFunction(context, query, itemIndex, runManager);
|
|
66
|
+
const processedResponse = this.handleToolResponse(response);
|
|
67
|
+
let responseData;
|
|
104
68
|
if (isNodeExecutionData(response)) {
|
|
105
|
-
|
|
106
|
-
}
|
|
107
|
-
|
|
108
|
-
|
|
69
|
+
responseData = response;
|
|
70
|
+
} else {
|
|
71
|
+
const reParsedData = (0, import_n8n_workflow.jsonParse)(processedResponse, {
|
|
72
|
+
fallbackValue: { response: processedResponse }
|
|
73
|
+
});
|
|
74
|
+
responseData = [{ json: reParsedData }];
|
|
109
75
|
}
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
76
|
+
let metadata;
|
|
77
|
+
if (this.subExecutionId && this.subWorkflowId) {
|
|
78
|
+
metadata = {
|
|
79
|
+
subExecution: {
|
|
80
|
+
executionId: this.subExecutionId,
|
|
81
|
+
workflowId: this.subWorkflowId
|
|
82
|
+
}
|
|
83
|
+
};
|
|
114
84
|
}
|
|
115
|
-
|
|
85
|
+
void context.addOutputData(
|
|
86
|
+
import_n8n_workflow.NodeConnectionTypes.AiTool,
|
|
87
|
+
localRunIndex,
|
|
88
|
+
[responseData],
|
|
89
|
+
metadata
|
|
90
|
+
);
|
|
91
|
+
return processedResponse;
|
|
92
|
+
} catch (error) {
|
|
93
|
+
const executionError = error;
|
|
94
|
+
const errorResponse = `There was an error: "${executionError.message}"`;
|
|
95
|
+
const metadata = (0, import_n8n_workflow.parseErrorMetadata)(error);
|
|
96
|
+
void context.addOutputData(
|
|
97
|
+
import_n8n_workflow.NodeConnectionTypes.AiTool,
|
|
98
|
+
localRunIndex,
|
|
99
|
+
executionError,
|
|
100
|
+
metadata
|
|
101
|
+
);
|
|
102
|
+
return errorResponse;
|
|
103
|
+
}
|
|
104
|
+
};
|
|
105
|
+
return this.useSchema ? await this.createStructuredTool(name, description, toolHandler) : new import_tools.DynamicTool({ name, description, func: toolHandler });
|
|
106
|
+
}
|
|
107
|
+
handleToolResponse(response) {
|
|
108
|
+
if (typeof response === "number") {
|
|
109
|
+
return response.toString();
|
|
116
110
|
}
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
workflowId: workflowProxy.$workflow.id,
|
|
124
|
-
},
|
|
125
|
-
});
|
|
126
|
-
this.subExecutionId = receivedData.executionId;
|
|
127
|
-
}
|
|
128
|
-
catch (error) {
|
|
129
|
-
throw new n8n_workflow_1.NodeOperationError(context.getNode(), error);
|
|
130
|
-
}
|
|
131
|
-
let response;
|
|
132
|
-
if (this.returnAllItems) {
|
|
133
|
-
response = receivedData?.data?.[0]?.length ? receivedData.data[0] : undefined;
|
|
134
|
-
}
|
|
135
|
-
else {
|
|
136
|
-
response = receivedData?.data?.[0]?.[0]?.json;
|
|
137
|
-
}
|
|
138
|
-
if (response === undefined) {
|
|
139
|
-
throw new n8n_workflow_1.NodeOperationError(context.getNode(), 'There was an error: "The workflow did not return a response"');
|
|
140
|
-
}
|
|
141
|
-
return { response, subExecutionId: receivedData.executionId };
|
|
111
|
+
if (isNodeExecutionData(response)) {
|
|
112
|
+
return JSON.stringify(
|
|
113
|
+
response.map((item) => item.json),
|
|
114
|
+
null,
|
|
115
|
+
2
|
|
116
|
+
);
|
|
142
117
|
}
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
const workflowProxy = context.getWorkflowDataProxy(0);
|
|
146
|
-
const { workflowInfo } = await this.getSubWorkflowInfo(context, source, itemIndex, workflowProxy);
|
|
147
|
-
const rawData = this.prepareRawData(context, query, itemIndex);
|
|
148
|
-
const items = await this.prepareWorkflowItems(context, query, itemIndex, rawData);
|
|
149
|
-
this.subWorkflowId = workflowInfo.id;
|
|
150
|
-
const { response } = await this.executeSubWorkflow(context, workflowInfo, items, workflowProxy, runManager);
|
|
151
|
-
return response;
|
|
118
|
+
if ((0, import_lodash.isObject)(response)) {
|
|
119
|
+
return JSON.stringify(response, null, 2);
|
|
152
120
|
}
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
const { value } = context.getNodeParameter('workflowId', itemIndex, {});
|
|
158
|
-
workflowInfo.id = value;
|
|
159
|
-
subWorkflowId = workflowInfo.id;
|
|
160
|
-
}
|
|
161
|
-
else if (source === 'parameter') {
|
|
162
|
-
const workflowJson = context.getNodeParameter('workflowJson', itemIndex);
|
|
163
|
-
try {
|
|
164
|
-
workflowInfo.code = JSON.parse(workflowJson);
|
|
165
|
-
subWorkflowId = workflowProxy.$workflow.id;
|
|
166
|
-
}
|
|
167
|
-
catch (error) {
|
|
168
|
-
throw new n8n_workflow_1.NodeOperationError(context.getNode(), `The provided workflow is not valid JSON: "${error.message}"`, { itemIndex });
|
|
169
|
-
}
|
|
170
|
-
}
|
|
171
|
-
return { workflowInfo, subWorkflowId: subWorkflowId };
|
|
121
|
+
if (typeof response !== "string") {
|
|
122
|
+
throw new import_n8n_workflow.NodeOperationError(this.baseContext.getNode(), "Wrong output type returned", {
|
|
123
|
+
description: `The response property should be a string, but it is an ${typeof response}`
|
|
124
|
+
});
|
|
172
125
|
}
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
126
|
+
return response;
|
|
127
|
+
}
|
|
128
|
+
/**
|
|
129
|
+
* Executes specified sub-workflow with provided inputs
|
|
130
|
+
*/
|
|
131
|
+
async executeSubWorkflow(context, workflowInfo, items, workflowProxy, runManager) {
|
|
132
|
+
let receivedData;
|
|
133
|
+
try {
|
|
134
|
+
receivedData = await context.executeWorkflow(workflowInfo, items, runManager?.getChild(), {
|
|
135
|
+
parentExecution: {
|
|
136
|
+
executionId: workflowProxy.$execution.id,
|
|
137
|
+
workflowId: workflowProxy.$workflow.id
|
|
182
138
|
}
|
|
183
|
-
|
|
139
|
+
});
|
|
140
|
+
this.subExecutionId = receivedData.executionId;
|
|
141
|
+
} catch (error) {
|
|
142
|
+
throw new import_n8n_workflow.NodeOperationError(context.getNode(), error);
|
|
184
143
|
}
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
jsonData = currentWorkflowInputs[itemIndex].json;
|
|
191
|
-
}
|
|
192
|
-
const newItem = await manual.execute.call(context, { json: jsonData }, itemIndex, options, rawData, context.getNode());
|
|
193
|
-
return [newItem];
|
|
144
|
+
let response;
|
|
145
|
+
if (this.returnAllItems) {
|
|
146
|
+
response = receivedData?.data?.[0]?.length ? receivedData.data[0] : void 0;
|
|
147
|
+
} else {
|
|
148
|
+
response = receivedData?.data?.[0]?.[0]?.json;
|
|
194
149
|
}
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
const schema = this.createZodSchema(collectedArguments);
|
|
201
|
-
return new tools_1.DynamicStructuredTool({ schema, name, description, func });
|
|
150
|
+
if (response === void 0) {
|
|
151
|
+
throw new import_n8n_workflow.NodeOperationError(
|
|
152
|
+
context.getNode(),
|
|
153
|
+
'There was an error: "The workflow did not return a response"'
|
|
154
|
+
);
|
|
202
155
|
}
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
156
|
+
return { response, subExecutionId: receivedData.executionId };
|
|
157
|
+
}
|
|
158
|
+
/**
|
|
159
|
+
* Gets the sub-workflow info based on the source and executes it.
|
|
160
|
+
* This function will be called as part of the tool execution (from the toolHandler)
|
|
161
|
+
*/
|
|
162
|
+
async runFunction(context, query, itemIndex, runManager) {
|
|
163
|
+
const source = context.getNodeParameter("source", itemIndex);
|
|
164
|
+
const workflowProxy = context.getWorkflowDataProxy(0);
|
|
165
|
+
const { workflowInfo } = await this.getSubWorkflowInfo(
|
|
166
|
+
context,
|
|
167
|
+
source,
|
|
168
|
+
itemIndex,
|
|
169
|
+
workflowProxy
|
|
170
|
+
);
|
|
171
|
+
const rawData = this.prepareRawData(context, query, itemIndex);
|
|
172
|
+
const items = await this.prepareWorkflowItems(context, query, itemIndex, rawData);
|
|
173
|
+
this.subWorkflowId = workflowInfo.id;
|
|
174
|
+
const { response } = await this.executeSubWorkflow(
|
|
175
|
+
context,
|
|
176
|
+
workflowInfo,
|
|
177
|
+
items,
|
|
178
|
+
workflowProxy,
|
|
179
|
+
runManager
|
|
180
|
+
);
|
|
181
|
+
return response;
|
|
182
|
+
}
|
|
183
|
+
/**
|
|
184
|
+
* Gets the sub-workflow info based on the source (database or parameter)
|
|
185
|
+
*/
|
|
186
|
+
async getSubWorkflowInfo(context, source, itemIndex, workflowProxy) {
|
|
187
|
+
const workflowInfo = {};
|
|
188
|
+
let subWorkflowId;
|
|
189
|
+
if (source === "database") {
|
|
190
|
+
const { value } = context.getNodeParameter(
|
|
191
|
+
"workflowId",
|
|
192
|
+
itemIndex,
|
|
193
|
+
{}
|
|
194
|
+
);
|
|
195
|
+
workflowInfo.id = value;
|
|
196
|
+
subWorkflowId = workflowInfo.id;
|
|
197
|
+
} else if (source === "parameter") {
|
|
198
|
+
const workflowJson = context.getNodeParameter("workflowJson", itemIndex);
|
|
199
|
+
try {
|
|
200
|
+
workflowInfo.code = JSON.parse(workflowJson);
|
|
201
|
+
subWorkflowId = workflowProxy.$workflow.id;
|
|
202
|
+
} catch (error) {
|
|
203
|
+
throw new import_n8n_workflow.NodeOperationError(
|
|
204
|
+
context.getNode(),
|
|
205
|
+
`The provided workflow is not valid JSON: "${error.message}"`,
|
|
206
|
+
{ itemIndex }
|
|
207
|
+
);
|
|
208
|
+
}
|
|
209
|
+
}
|
|
210
|
+
return { workflowInfo, subWorkflowId };
|
|
211
|
+
}
|
|
212
|
+
prepareRawData(context, query, itemIndex) {
|
|
213
|
+
const rawData = { query };
|
|
214
|
+
const workflowFieldsJson = context.getNodeParameter("fields.values", itemIndex, [], {
|
|
215
|
+
rawExpressions: true
|
|
216
|
+
});
|
|
217
|
+
for (const entry of workflowFieldsJson) {
|
|
218
|
+
if (entry.type === "objectValue" && entry.objectValue.startsWith("=")) {
|
|
219
|
+
rawData[entry.name] = entry.objectValue.replace(/^=+/, "");
|
|
220
|
+
}
|
|
211
221
|
}
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
222
|
+
return rawData;
|
|
223
|
+
}
|
|
224
|
+
/**
|
|
225
|
+
* Prepares the sub-workflow items for execution
|
|
226
|
+
*/
|
|
227
|
+
async prepareWorkflowItems(context, query, itemIndex, rawData) {
|
|
228
|
+
const options = { include: "all" };
|
|
229
|
+
let jsonData = typeof query === "object" ? query : { query };
|
|
230
|
+
if (this.useSchema) {
|
|
231
|
+
const currentWorkflowInputs = import_GenericFunctions.getCurrentWorkflowInputData.call(context);
|
|
232
|
+
jsonData = currentWorkflowInputs[itemIndex].json;
|
|
218
233
|
}
|
|
234
|
+
const newItem = await manual.execute.call(
|
|
235
|
+
context,
|
|
236
|
+
{ json: jsonData },
|
|
237
|
+
itemIndex,
|
|
238
|
+
options,
|
|
239
|
+
rawData,
|
|
240
|
+
context.getNode()
|
|
241
|
+
);
|
|
242
|
+
return [newItem];
|
|
243
|
+
}
|
|
244
|
+
/**
|
|
245
|
+
* Create structured tool by parsing the sub-workflow input schema
|
|
246
|
+
*/
|
|
247
|
+
async createStructuredTool(name, description, func) {
|
|
248
|
+
const collectedArguments = await this.extractFromAIParameters();
|
|
249
|
+
if (collectedArguments.length === 0) {
|
|
250
|
+
return new import_tools.DynamicTool({ name, description, func });
|
|
251
|
+
}
|
|
252
|
+
const schema = this.createZodSchema(collectedArguments);
|
|
253
|
+
return new import_tools.DynamicStructuredTool({ schema, name, description, func });
|
|
254
|
+
}
|
|
255
|
+
async extractFromAIParameters() {
|
|
256
|
+
const collectedArguments = [];
|
|
257
|
+
(0, import_n8n_workflow.traverseNodeParameters)(this.baseContext.getNode().parameters, collectedArguments);
|
|
258
|
+
const uniqueArgsMap = /* @__PURE__ */ new Map();
|
|
259
|
+
for (const arg of collectedArguments) {
|
|
260
|
+
uniqueArgsMap.set(arg.key, arg);
|
|
261
|
+
}
|
|
262
|
+
return Array.from(uniqueArgsMap.values());
|
|
263
|
+
}
|
|
264
|
+
createZodSchema(args) {
|
|
265
|
+
const schemaObj = args.reduce((acc, placeholder) => {
|
|
266
|
+
acc[placeholder.key] = (0, import_n8n_workflow.generateZodSchema)(placeholder);
|
|
267
|
+
return acc;
|
|
268
|
+
}, {});
|
|
269
|
+
return import_zod.z.object(schemaObj).required();
|
|
270
|
+
}
|
|
219
271
|
}
|
|
220
|
-
|
|
272
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
273
|
+
0 && (module.exports = {
|
|
274
|
+
WorkflowToolService
|
|
275
|
+
});
|
|
221
276
|
//# sourceMappingURL=WorkflowToolService.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WorkflowToolService.js","sourceRoot":"","sources":["../../../../../../nodes/tools/ToolWorkflow/v2/utils/WorkflowToolService.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"sources":["../../../../../../nodes/tools/ToolWorkflow/v2/utils/WorkflowToolService.ts"],"sourcesContent":["import type { CallbackManagerForToolRun } from '@langchain/core/callbacks/manager';\nimport { DynamicStructuredTool, DynamicTool } from '@langchain/core/tools';\nimport { isArray, isObject } from 'lodash';\nimport type { SetField, SetNodeOptions } from 'n8n-nodes-base/dist/nodes/Set/v2/helpers/interfaces';\nimport * as manual from 'n8n-nodes-base/dist/nodes/Set/v2/manual.mode';\nimport { getCurrentWorkflowInputData } from 'n8n-nodes-base/dist/utils/workflowInputsResourceMapping/GenericFunctions';\nimport type {\n\tExecuteWorkflowData,\n\tExecutionError,\n\tFromAIArgument,\n\tIDataObject,\n\tIExecuteWorkflowInfo,\n\tINodeExecutionData,\n\tINodeParameterResourceLocator,\n\tISupplyDataFunctions,\n\tITaskMetadata,\n\tIWorkflowBase,\n\tIWorkflowDataProxyData,\n\tResourceMapperValue,\n} from 'n8n-workflow';\nimport {\n\tgenerateZodSchema,\n\tjsonParse,\n\tNodeConnectionTypes,\n\tNodeOperationError,\n\tparseErrorMetadata,\n\ttraverseNodeParameters,\n} from 'n8n-workflow';\nimport { z } from 'zod';\n\nfunction isNodeExecutionData(data: unknown): data is INodeExecutionData[] {\n\treturn isArray(data) && Boolean(data.length) && isObject(data[0]) && 'json' in data[0];\n}\n\n/**\n\tMain class for creating the Workflow tool\n\tProcesses the node parameters and creates AI Agent tool capable of executing n8n workflows\n*/\nexport class WorkflowToolService {\n\t// Determines if we should use input schema when creating the tool\n\tprivate useSchema: boolean;\n\n\t// Sub-workflow id, pulled from referenced sub-workflow\n\tprivate subWorkflowId: string | undefined;\n\n\t// Sub-workflow execution id, will be set after the sub-workflow is executed\n\tprivate subExecutionId: string | undefined;\n\n\tprivate returnAllItems: boolean = false;\n\n\tconstructor(\n\t\tprivate baseContext: ISupplyDataFunctions,\n\t\toptions?: { returnAllItems: boolean },\n\t) {\n\t\tconst subWorkflowInputs = this.baseContext.getNode().parameters\n\t\t\t.workflowInputs as ResourceMapperValue;\n\t\tthis.useSchema = (subWorkflowInputs?.schema ?? []).length > 0;\n\t\tthis.returnAllItems = options?.returnAllItems ?? false;\n\t}\n\n\t// Creates the tool based on the provided parameters\n\tasync createTool({\n\t\tname,\n\t\tdescription,\n\t\titemIndex,\n\t}: {\n\t\tname: string;\n\t\tdescription: string;\n\t\titemIndex: number;\n\t}): Promise<DynamicTool | DynamicStructuredTool> {\n\t\tlet runIndex = 0;\n\t\t// Handler for the tool execution, will be called when the tool is executed\n\t\t// This function will execute the sub-workflow and return the response\n\t\tconst toolHandler = async (\n\t\t\tquery: string | IDataObject,\n\t\t\trunManager?: CallbackManagerForToolRun,\n\t\t): Promise<IDataObject | IDataObject[] | string> => {\n\t\t\tconst localRunIndex = runIndex++;\n\t\t\t// We need to clone the context here to handle runIndex correctly\n\t\t\t// Otherwise the runIndex will be shared between different executions\n\t\t\t// Causing incorrect data to be passed to the sub-workflow and via $fromAI\n\t\t\tconst context = this.baseContext.cloneWith({\n\t\t\t\trunIndex: localRunIndex,\n\t\t\t\tinputData: [[{ json: { query } }]],\n\t\t\t});\n\n\t\t\ttry {\n\t\t\t\tconst response = await this.runFunction(context, query, itemIndex, runManager);\n\n\t\t\t\tconst processedResponse = this.handleToolResponse(response);\n\n\t\t\t\tlet responseData: INodeExecutionData[];\n\t\t\t\tif (isNodeExecutionData(response)) {\n\t\t\t\t\tresponseData = response;\n\t\t\t\t} else {\n\t\t\t\t\tconst reParsedData = jsonParse<IDataObject>(processedResponse, {\n\t\t\t\t\t\tfallbackValue: { response: processedResponse },\n\t\t\t\t\t});\n\n\t\t\t\t\tresponseData = [{ json: reParsedData }];\n\t\t\t\t}\n\n\t\t\t\t// Once the sub-workflow is executed, add the output data to the context\n\t\t\t\t// This will be used to link the sub-workflow execution in the parent workflow\n\t\t\t\tlet metadata: ITaskMetadata | undefined;\n\t\t\t\tif (this.subExecutionId && this.subWorkflowId) {\n\t\t\t\t\tmetadata = {\n\t\t\t\t\t\tsubExecution: {\n\t\t\t\t\t\t\texecutionId: this.subExecutionId,\n\t\t\t\t\t\t\tworkflowId: this.subWorkflowId,\n\t\t\t\t\t\t},\n\t\t\t\t\t};\n\t\t\t\t}\n\n\t\t\t\tvoid context.addOutputData(\n\t\t\t\t\tNodeConnectionTypes.AiTool,\n\t\t\t\t\tlocalRunIndex,\n\t\t\t\t\t[responseData],\n\t\t\t\t\tmetadata,\n\t\t\t\t);\n\n\t\t\t\treturn processedResponse;\n\t\t\t} catch (error) {\n\t\t\t\tconst executionError = error as ExecutionError;\n\t\t\t\tconst errorResponse = `There was an error: \"${executionError.message}\"`;\n\n\t\t\t\tconst metadata = parseErrorMetadata(error);\n\t\t\t\tvoid context.addOutputData(\n\t\t\t\t\tNodeConnectionTypes.AiTool,\n\t\t\t\t\tlocalRunIndex,\n\t\t\t\t\texecutionError,\n\t\t\t\t\tmetadata,\n\t\t\t\t);\n\t\t\t\treturn errorResponse;\n\t\t\t}\n\t\t};\n\n\t\t// Create structured tool if input schema is provided\n\t\treturn this.useSchema\n\t\t\t? await this.createStructuredTool(name, description, toolHandler)\n\t\t\t: new DynamicTool({ name, description, func: toolHandler });\n\t}\n\n\tprivate handleToolResponse(response: unknown): string {\n\t\tif (typeof response === 'number') {\n\t\t\treturn response.toString();\n\t\t}\n\n\t\tif (isNodeExecutionData(response)) {\n\t\t\treturn JSON.stringify(\n\t\t\t\tresponse.map((item) => item.json),\n\t\t\t\tnull,\n\t\t\t\t2,\n\t\t\t);\n\t\t}\n\n\t\tif (isObject(response)) {\n\t\t\treturn JSON.stringify(response, null, 2);\n\t\t}\n\n\t\tif (typeof response !== 'string') {\n\t\t\tthrow new NodeOperationError(this.baseContext.getNode(), 'Wrong output type returned', {\n\t\t\t\tdescription: `The response property should be a string, but it is an ${typeof response}`,\n\t\t\t});\n\t\t}\n\n\t\treturn response;\n\t}\n\n\t/**\n\t * Executes specified sub-workflow with provided inputs\n\t */\n\tprivate async executeSubWorkflow(\n\t\tcontext: ISupplyDataFunctions,\n\t\tworkflowInfo: IExecuteWorkflowInfo,\n\t\titems: INodeExecutionData[],\n\t\tworkflowProxy: IWorkflowDataProxyData,\n\t\trunManager?: CallbackManagerForToolRun,\n\t): Promise<{ response: string | IDataObject | INodeExecutionData[]; subExecutionId: string }> {\n\t\tlet receivedData: ExecuteWorkflowData;\n\t\ttry {\n\t\t\treceivedData = await context.executeWorkflow(workflowInfo, items, runManager?.getChild(), {\n\t\t\t\tparentExecution: {\n\t\t\t\t\texecutionId: workflowProxy.$execution.id,\n\t\t\t\t\tworkflowId: workflowProxy.$workflow.id,\n\t\t\t\t},\n\t\t\t});\n\t\t\t// Set sub-workflow execution id so it can be used in other places\n\t\t\tthis.subExecutionId = receivedData.executionId;\n\t\t} catch (error) {\n\t\t\tthrow new NodeOperationError(context.getNode(), error as Error);\n\t\t}\n\n\t\tlet response: IDataObject | INodeExecutionData[] | undefined;\n\t\tif (this.returnAllItems) {\n\t\t\tresponse = receivedData?.data?.[0]?.length ? receivedData.data[0] : undefined;\n\t\t} else {\n\t\t\tresponse = receivedData?.data?.[0]?.[0]?.json;\n\t\t}\n\t\tif (response === undefined) {\n\t\t\tthrow new NodeOperationError(\n\t\t\t\tcontext.getNode(),\n\t\t\t\t'There was an error: \"The workflow did not return a response\"',\n\t\t\t);\n\t\t}\n\n\t\treturn { response, subExecutionId: receivedData.executionId };\n\t}\n\n\t/**\n\t * Gets the sub-workflow info based on the source and executes it.\n\t * This function will be called as part of the tool execution (from the toolHandler)\n\t */\n\tprivate async runFunction(\n\t\tcontext: ISupplyDataFunctions,\n\t\tquery: string | IDataObject,\n\t\titemIndex: number,\n\t\trunManager?: CallbackManagerForToolRun,\n\t): Promise<string | IDataObject | INodeExecutionData[]> {\n\t\tconst source = context.getNodeParameter('source', itemIndex) as string;\n\t\tconst workflowProxy = context.getWorkflowDataProxy(0);\n\n\t\tconst { workflowInfo } = await this.getSubWorkflowInfo(\n\t\t\tcontext,\n\t\t\tsource,\n\t\t\titemIndex,\n\t\t\tworkflowProxy,\n\t\t);\n\t\tconst rawData = this.prepareRawData(context, query, itemIndex);\n\t\tconst items = await this.prepareWorkflowItems(context, query, itemIndex, rawData);\n\n\t\tthis.subWorkflowId = workflowInfo.id;\n\n\t\tconst { response } = await this.executeSubWorkflow(\n\t\t\tcontext,\n\t\t\tworkflowInfo,\n\t\t\titems,\n\t\t\tworkflowProxy,\n\t\t\trunManager,\n\t\t);\n\t\treturn response;\n\t}\n\n\t/**\n\t * Gets the sub-workflow info based on the source (database or parameter)\n\t */\n\tprivate async getSubWorkflowInfo(\n\t\tcontext: ISupplyDataFunctions,\n\t\tsource: string,\n\t\titemIndex: number,\n\t\tworkflowProxy: IWorkflowDataProxyData,\n\t): Promise<{\n\t\tworkflowInfo: IExecuteWorkflowInfo;\n\t\tsubWorkflowId: string;\n\t}> {\n\t\tconst workflowInfo: IExecuteWorkflowInfo = {};\n\t\tlet subWorkflowId: string;\n\n\t\tif (source === 'database') {\n\t\t\tconst { value } = context.getNodeParameter(\n\t\t\t\t'workflowId',\n\t\t\t\titemIndex,\n\t\t\t\t{},\n\t\t\t) as INodeParameterResourceLocator;\n\t\t\tworkflowInfo.id = value as string;\n\t\t\tsubWorkflowId = workflowInfo.id;\n\t\t} else if (source === 'parameter') {\n\t\t\tconst workflowJson = context.getNodeParameter('workflowJson', itemIndex) as string;\n\t\t\ttry {\n\t\t\t\tworkflowInfo.code = JSON.parse(workflowJson) as IWorkflowBase;\n\t\t\t\t// subworkflow is same as parent workflow\n\t\t\t\tsubWorkflowId = workflowProxy.$workflow.id;\n\t\t\t} catch (error) {\n\t\t\t\tthrow new NodeOperationError(\n\t\t\t\t\tcontext.getNode(),\n\t\t\t\t\t`The provided workflow is not valid JSON: \"${(error as Error).message}\"`,\n\t\t\t\t\t{ itemIndex },\n\t\t\t\t);\n\t\t\t}\n\t\t}\n\n\t\treturn { workflowInfo, subWorkflowId: subWorkflowId! };\n\t}\n\n\tprivate prepareRawData(\n\t\tcontext: ISupplyDataFunctions,\n\t\tquery: string | IDataObject,\n\t\titemIndex: number,\n\t): IDataObject {\n\t\tconst rawData: IDataObject = { query };\n\t\tconst workflowFieldsJson = context.getNodeParameter('fields.values', itemIndex, [], {\n\t\t\trawExpressions: true,\n\t\t}) as SetField[];\n\n\t\t// Copied from Set Node v2\n\t\tfor (const entry of workflowFieldsJson) {\n\t\t\tif (entry.type === 'objectValue' && (entry.objectValue as string).startsWith('=')) {\n\t\t\t\trawData[entry.name] = (entry.objectValue as string).replace(/^=+/, '');\n\t\t\t}\n\t\t}\n\n\t\treturn rawData;\n\t}\n\n\t/**\n\t * Prepares the sub-workflow items for execution\n\t */\n\tprivate async prepareWorkflowItems(\n\t\tcontext: ISupplyDataFunctions,\n\t\tquery: string | IDataObject,\n\t\titemIndex: number,\n\t\trawData: IDataObject,\n\t): Promise<INodeExecutionData[]> {\n\t\tconst options: SetNodeOptions = { include: 'all' };\n\t\tlet jsonData = typeof query === 'object' ? query : { query };\n\n\t\tif (this.useSchema) {\n\t\t\tconst currentWorkflowInputs = getCurrentWorkflowInputData.call(context);\n\t\t\tjsonData = currentWorkflowInputs[itemIndex].json;\n\t\t}\n\n\t\tconst newItem = await manual.execute.call(\n\t\t\tcontext,\n\t\t\t{ json: jsonData },\n\t\t\titemIndex,\n\t\t\toptions,\n\t\t\trawData,\n\t\t\tcontext.getNode(),\n\t\t);\n\n\t\treturn [newItem] as INodeExecutionData[];\n\t}\n\n\t/**\n\t * Create structured tool by parsing the sub-workflow input schema\n\t */\n\tprivate async createStructuredTool(\n\t\tname: string,\n\t\tdescription: string,\n\t\tfunc: (\n\t\t\tquery: string | IDataObject,\n\t\t\trunManager?: CallbackManagerForToolRun,\n\t\t) => Promise<string | IDataObject | IDataObject[]>,\n\t): Promise<DynamicStructuredTool | DynamicTool> {\n\t\tconst collectedArguments = await this.extractFromAIParameters();\n\n\t\t// If there are no `fromAI` arguments, fallback to creating a simple tool\n\t\tif (collectedArguments.length === 0) {\n\t\t\treturn new DynamicTool({ name, description, func });\n\t\t}\n\n\t\t// Otherwise, prepare Zod schema and create a structured tool\n\t\tconst schema = this.createZodSchema(collectedArguments);\n\t\treturn new DynamicStructuredTool({ schema, name, description, func });\n\t}\n\n\tprivate async extractFromAIParameters(): Promise<FromAIArgument[]> {\n\t\tconst collectedArguments: FromAIArgument[] = [];\n\t\ttraverseNodeParameters(this.baseContext.getNode().parameters, collectedArguments);\n\n\t\tconst uniqueArgsMap = new Map<string, FromAIArgument>();\n\t\tfor (const arg of collectedArguments) {\n\t\t\tuniqueArgsMap.set(arg.key, arg);\n\t\t}\n\n\t\treturn Array.from(uniqueArgsMap.values());\n\t}\n\n\tprivate createZodSchema(args: FromAIArgument[]): z.ZodObject<any> {\n\t\tconst schemaObj = args.reduce((acc: Record<string, z.ZodTypeAny>, placeholder) => {\n\t\t\tacc[placeholder.key] = generateZodSchema(placeholder);\n\t\t\treturn acc;\n\t\t}, {});\n\n\t\treturn z.object(schemaObj).required();\n\t}\n}\n"],"mappings":"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","names":[]}
|