@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.
Files changed (692) hide show
  1. package/dist/credentials/AnthropicApi.credentials.js +64 -41
  2. package/dist/credentials/AnthropicApi.credentials.js.map +1 -1
  3. package/dist/credentials/AzureOpenAiApi.credentials.js +70 -47
  4. package/dist/credentials/AzureOpenAiApi.credentials.js.map +1 -1
  5. package/dist/credentials/CohereApi.credentials.js +55 -32
  6. package/dist/credentials/CohereApi.credentials.js.map +1 -1
  7. package/dist/credentials/DeepSeekApi.credentials.js +61 -38
  8. package/dist/credentials/DeepSeekApi.credentials.js.map +1 -1
  9. package/dist/credentials/GooglePalmApi.credentials.js +61 -38
  10. package/dist/credentials/GooglePalmApi.credentials.js.map +1 -1
  11. package/dist/credentials/GroqApi.credentials.js +55 -32
  12. package/dist/credentials/GroqApi.credentials.js.map +1 -1
  13. package/dist/credentials/HuggingFaceApi.credentials.js +55 -32
  14. package/dist/credentials/HuggingFaceApi.credentials.js.map +1 -1
  15. package/dist/credentials/MistralCloudApi.credentials.js +56 -33
  16. package/dist/credentials/MistralCloudApi.credentials.js.map +1 -1
  17. package/dist/credentials/MotorheadApi.credentials.js +68 -45
  18. package/dist/credentials/MotorheadApi.credentials.js.map +1 -1
  19. package/dist/credentials/OllamaApi.credentials.js +47 -24
  20. package/dist/credentials/OllamaApi.credentials.js.map +1 -1
  21. package/dist/credentials/OpenRouterApi.credentials.js +61 -38
  22. package/dist/credentials/OpenRouterApi.credentials.js.map +1 -1
  23. package/dist/credentials/PineconeApi.credentials.js +57 -34
  24. package/dist/credentials/PineconeApi.credentials.js.map +1 -1
  25. package/dist/credentials/QdrantApi.credentials.js +64 -41
  26. package/dist/credentials/QdrantApi.credentials.js.map +1 -1
  27. package/dist/credentials/SerpApi.credentials.js +55 -32
  28. package/dist/credentials/SerpApi.credentials.js.map +1 -1
  29. package/dist/credentials/WolframAlphaApi.credentials.js +59 -36
  30. package/dist/credentials/WolframAlphaApi.credentials.js.map +1 -1
  31. package/dist/credentials/XAiApi.credentials.js +61 -38
  32. package/dist/credentials/XAiApi.credentials.js.map +1 -1
  33. package/dist/credentials/XataApi.credentials.js +69 -46
  34. package/dist/credentials/XataApi.credentials.js.map +1 -1
  35. package/dist/credentials/ZepApi.credentials.js +74 -51
  36. package/dist/credentials/ZepApi.credentials.js.map +1 -1
  37. package/dist/known/nodes.json +12 -0
  38. package/dist/nodes/agents/Agent/Agent.node.js +426 -405
  39. package/dist/nodes/agents/Agent/Agent.node.js.map +1 -1
  40. package/dist/nodes/agents/Agent/agents/ConversationalAgent/description.js +111 -87
  41. package/dist/nodes/agents/Agent/agents/ConversationalAgent/description.js.map +1 -1
  42. package/dist/nodes/agents/Agent/agents/ConversationalAgent/execute.js +99 -75
  43. package/dist/nodes/agents/Agent/agents/ConversationalAgent/execute.js.map +1 -1
  44. package/dist/nodes/agents/Agent/agents/ConversationalAgent/prompt.js +30 -4
  45. package/dist/nodes/agents/Agent/agents/ConversationalAgent/prompt.js.map +1 -1
  46. package/dist/nodes/agents/Agent/agents/OpenAiFunctionsAgent/description.js +101 -77
  47. package/dist/nodes/agents/Agent/agents/OpenAiFunctionsAgent/description.js.map +1 -1
  48. package/dist/nodes/agents/Agent/agents/OpenAiFunctionsAgent/execute.js +108 -83
  49. package/dist/nodes/agents/Agent/agents/OpenAiFunctionsAgent/execute.js.map +1 -1
  50. package/dist/nodes/agents/Agent/agents/OpenAiFunctionsAgent/prompt.js +27 -3
  51. package/dist/nodes/agents/Agent/agents/OpenAiFunctionsAgent/prompt.js.map +1 -1
  52. package/dist/nodes/agents/Agent/agents/PlanAndExecuteAgent/description.js +87 -63
  53. package/dist/nodes/agents/Agent/agents/PlanAndExecuteAgent/description.js.map +1 -1
  54. package/dist/nodes/agents/Agent/agents/PlanAndExecuteAgent/execute.js +90 -67
  55. package/dist/nodes/agents/Agent/agents/PlanAndExecuteAgent/execute.js.map +1 -1
  56. package/dist/nodes/agents/Agent/agents/PlanAndExecuteAgent/prompt.js +27 -3
  57. package/dist/nodes/agents/Agent/agents/PlanAndExecuteAgent/prompt.js.map +1 -1
  58. package/dist/nodes/agents/Agent/agents/ReActAgent/description.js +131 -107
  59. package/dist/nodes/agents/Agent/agents/ReActAgent/description.js.map +1 -1
  60. package/dist/nodes/agents/Agent/agents/ReActAgent/execute.js +101 -82
  61. package/dist/nodes/agents/Agent/agents/ReActAgent/execute.js.map +1 -1
  62. package/dist/nodes/agents/Agent/agents/ReActAgent/prompt.js +36 -6
  63. package/dist/nodes/agents/Agent/agents/ReActAgent/prompt.js.map +1 -1
  64. package/dist/nodes/agents/Agent/agents/SqlAgent/description.js +206 -181
  65. package/dist/nodes/agents/Agent/agents/SqlAgent/description.js.map +1 -1
  66. package/dist/nodes/agents/Agent/agents/SqlAgent/execute.js +130 -104
  67. package/dist/nodes/agents/Agent/agents/SqlAgent/execute.js.map +1 -1
  68. package/dist/nodes/agents/Agent/agents/SqlAgent/other/handlers/mysql.js +40 -16
  69. package/dist/nodes/agents/Agent/agents/SqlAgent/other/handlers/mysql.js.map +1 -1
  70. package/dist/nodes/agents/Agent/agents/SqlAgent/other/handlers/postgres.js +41 -17
  71. package/dist/nodes/agents/Agent/agents/SqlAgent/other/handlers/postgres.js.map +1 -1
  72. package/dist/nodes/agents/Agent/agents/SqlAgent/other/handlers/sqlite.js +67 -67
  73. package/dist/nodes/agents/Agent/agents/SqlAgent/other/handlers/sqlite.js.map +1 -1
  74. package/dist/nodes/agents/Agent/agents/SqlAgent/other/prompts.js +30 -4
  75. package/dist/nodes/agents/Agent/agents/SqlAgent/other/prompts.js.map +1 -1
  76. package/dist/nodes/agents/Agent/agents/ToolsAgent/description.js +72 -48
  77. package/dist/nodes/agents/Agent/agents/ToolsAgent/description.js.map +1 -1
  78. package/dist/nodes/agents/Agent/agents/ToolsAgent/execute.js +262 -216
  79. package/dist/nodes/agents/Agent/agents/ToolsAgent/execute.js.map +1 -1
  80. package/dist/nodes/agents/Agent/agents/ToolsAgent/prompt.js +27 -3
  81. package/dist/nodes/agents/Agent/agents/ToolsAgent/prompt.js.map +1 -1
  82. package/dist/nodes/agents/Agent/agents/utils.js +48 -17
  83. package/dist/nodes/agents/Agent/agents/utils.js.map +1 -1
  84. package/dist/nodes/agents/OpenAiAssistant/OpenAiAssistant.node.js +377 -355
  85. package/dist/nodes/agents/OpenAiAssistant/OpenAiAssistant.node.js.map +1 -1
  86. package/dist/nodes/agents/OpenAiAssistant/utils.js +53 -27
  87. package/dist/nodes/agents/OpenAiAssistant/utils.js.map +1 -1
  88. package/dist/nodes/chains/ChainLLM/ChainLlm.node.js +126 -95
  89. package/dist/nodes/chains/ChainLLM/ChainLlm.node.js.map +1 -1
  90. package/dist/nodes/chains/ChainLLM/methods/chainExecutor.js +101 -69
  91. package/dist/nodes/chains/ChainLLM/methods/chainExecutor.js.map +1 -1
  92. package/dist/nodes/chains/ChainLLM/methods/config.js +268 -243
  93. package/dist/nodes/chains/ChainLLM/methods/config.js.map +1 -1
  94. package/dist/nodes/chains/ChainLLM/methods/imageUtils.js +94 -60
  95. package/dist/nodes/chains/ChainLLM/methods/imageUtils.js.map +1 -1
  96. package/dist/nodes/chains/ChainLLM/methods/index.js +35 -9
  97. package/dist/nodes/chains/ChainLLM/methods/index.js.map +1 -1
  98. package/dist/nodes/chains/ChainLLM/methods/promptUtils.js +100 -60
  99. package/dist/nodes/chains/ChainLLM/methods/promptUtils.js.map +1 -1
  100. package/dist/nodes/chains/ChainLLM/methods/responseFormatter.js +46 -22
  101. package/dist/nodes/chains/ChainLLM/methods/responseFormatter.js.map +1 -1
  102. package/dist/nodes/chains/ChainLLM/methods/types.js +15 -1
  103. package/dist/nodes/chains/ChainLLM/methods/types.js.map +1 -1
  104. package/dist/nodes/chains/ChainRetrievalQA/ChainRetrievalQa.node.js +260 -233
  105. package/dist/nodes/chains/ChainRetrievalQA/ChainRetrievalQa.node.js.map +1 -1
  106. package/dist/nodes/chains/ChainSummarization/ChainSummarization.node.js +60 -37
  107. package/dist/nodes/chains/ChainSummarization/ChainSummarization.node.js.map +1 -1
  108. package/dist/nodes/chains/ChainSummarization/V1/ChainSummarizationV1.node.js +234 -208
  109. package/dist/nodes/chains/ChainSummarization/V1/ChainSummarizationV1.node.js.map +1 -1
  110. package/dist/nodes/chains/ChainSummarization/V2/ChainSummarizationV2.node.js +379 -334
  111. package/dist/nodes/chains/ChainSummarization/V2/ChainSummarizationV2.node.js.map +1 -1
  112. package/dist/nodes/chains/ChainSummarization/helpers.js +67 -43
  113. package/dist/nodes/chains/ChainSummarization/helpers.js.map +1 -1
  114. package/dist/nodes/chains/ChainSummarization/prompt.js +30 -4
  115. package/dist/nodes/chains/ChainSummarization/prompt.js.map +1 -1
  116. package/dist/nodes/chains/InformationExtractor/InformationExtractor.node.js +261 -229
  117. package/dist/nodes/chains/InformationExtractor/InformationExtractor.node.js.map +1 -1
  118. package/dist/nodes/chains/InformationExtractor/helpers.js +48 -28
  119. package/dist/nodes/chains/InformationExtractor/helpers.js.map +1 -1
  120. package/dist/nodes/chains/InformationExtractor/types.js +15 -1
  121. package/dist/nodes/chains/InformationExtractor/types.js.map +1 -1
  122. package/dist/nodes/chains/SentimentAnalysis/SentimentAnalysis.node.js +227 -197
  123. package/dist/nodes/chains/SentimentAnalysis/SentimentAnalysis.node.js.map +1 -1
  124. package/dist/nodes/chains/TextClassifier/TextClassifier.node.js +242 -215
  125. package/dist/nodes/chains/TextClassifier/TextClassifier.node.js.map +1 -1
  126. package/dist/nodes/code/Code.node.js +308 -267
  127. package/dist/nodes/code/Code.node.js.map +1 -1
  128. package/dist/nodes/document_loaders/DocumentBinaryInputLoader/DocumentBinaryInputLoader.node.js +199 -166
  129. package/dist/nodes/document_loaders/DocumentBinaryInputLoader/DocumentBinaryInputLoader.node.js.map +1 -1
  130. package/dist/nodes/document_loaders/DocumentDefaultDataLoader/DocumentDefaultDataLoader.node.js +303 -277
  131. package/dist/nodes/document_loaders/DocumentDefaultDataLoader/DocumentDefaultDataLoader.node.js.map +1 -1
  132. package/dist/nodes/document_loaders/DocumentGithubLoader/DocumentGithubLoader.node.js +136 -110
  133. package/dist/nodes/document_loaders/DocumentGithubLoader/DocumentGithubLoader.node.js.map +1 -1
  134. package/dist/nodes/document_loaders/DocumentJSONInputLoader/DocumentJsonInputLoader.node.js +107 -77
  135. package/dist/nodes/document_loaders/DocumentJSONInputLoader/DocumentJsonInputLoader.node.js.map +1 -1
  136. package/dist/nodes/embeddings/EmbeddingsAwsBedrock/EmbeddingsAwsBedrock.node.js +135 -110
  137. package/dist/nodes/embeddings/EmbeddingsAwsBedrock/EmbeddingsAwsBedrock.node.js.map +1 -1
  138. package/dist/nodes/embeddings/EmbeddingsAzureOpenAi/EmbeddingsAzureOpenAi.node.js +152 -126
  139. package/dist/nodes/embeddings/EmbeddingsAzureOpenAi/EmbeddingsAzureOpenAi.node.js.map +1 -1
  140. package/dist/nodes/embeddings/EmbeddingsCohere/EmbeddingsCohere.node.js +126 -101
  141. package/dist/nodes/embeddings/EmbeddingsCohere/EmbeddingsCohere.node.js.map +1 -1
  142. package/dist/nodes/embeddings/EmbeddingsGoogleGemini/EmbeddingsGoogleGemini.node.js +146 -117
  143. package/dist/nodes/embeddings/EmbeddingsGoogleGemini/EmbeddingsGoogleGemini.node.js.map +1 -1
  144. package/dist/nodes/embeddings/EmbeddingsGoogleVertex/EmbeddingsGoogleVertex.node.js +166 -0
  145. package/dist/nodes/embeddings/EmbeddingsGoogleVertex/EmbeddingsGoogleVertex.node.js.map +1 -0
  146. package/dist/nodes/embeddings/EmbeddingsGoogleVertex/google.svg +1 -0
  147. package/dist/nodes/embeddings/EmbeddingsHuggingFaceInference/EmbeddingsHuggingFaceInference.node.js +118 -89
  148. package/dist/nodes/embeddings/EmbeddingsHuggingFaceInference/EmbeddingsHuggingFaceInference.node.js.map +1 -1
  149. package/dist/nodes/embeddings/EmbeddingsMistralCloud/EmbeddingsMistralCloud.node.js +165 -136
  150. package/dist/nodes/embeddings/EmbeddingsMistralCloud/EmbeddingsMistralCloud.node.js.map +1 -1
  151. package/dist/nodes/embeddings/EmbeddingsOllama/EmbeddingsOllama.node.js +76 -51
  152. package/dist/nodes/embeddings/EmbeddingsOllama/EmbeddingsOllama.node.js.map +1 -1
  153. package/dist/nodes/embeddings/EmbeddingsOpenAI/EmbeddingsOpenAi.node.js +228 -201
  154. package/dist/nodes/embeddings/EmbeddingsOpenAI/EmbeddingsOpenAi.node.js.map +1 -1
  155. package/dist/nodes/llms/LMChatAnthropic/LmChatAnthropic.node.js +306 -272
  156. package/dist/nodes/llms/LMChatAnthropic/LmChatAnthropic.node.js.map +1 -1
  157. package/dist/nodes/llms/LMChatAnthropic/methods/searchModels.js +58 -36
  158. package/dist/nodes/llms/LMChatAnthropic/methods/searchModels.js.map +1 -1
  159. package/dist/nodes/llms/LMChatOllama/LmChatOllama.node.js +87 -61
  160. package/dist/nodes/llms/LMChatOllama/LmChatOllama.node.js.map +1 -1
  161. package/dist/nodes/llms/LMChatOpenAi/LmChatOpenAi.node.js +340 -316
  162. package/dist/nodes/llms/LMChatOpenAi/LmChatOpenAi.node.js.map +1 -1
  163. package/dist/nodes/llms/LMChatOpenAi/methods/loadModels.js +54 -30
  164. package/dist/nodes/llms/LMChatOpenAi/methods/loadModels.js.map +1 -1
  165. package/dist/nodes/llms/LMCohere/LmCohere.node.js +119 -93
  166. package/dist/nodes/llms/LMCohere/LmCohere.node.js.map +1 -1
  167. package/dist/nodes/llms/LMOllama/LmOllama.node.js +86 -60
  168. package/dist/nodes/llms/LMOllama/LmOllama.node.js.map +1 -1
  169. package/dist/nodes/llms/LMOllama/description.js +235 -207
  170. package/dist/nodes/llms/LMOllama/description.js.map +1 -1
  171. package/dist/nodes/llms/LMOpenAi/LmOpenAi.node.js +239 -214
  172. package/dist/nodes/llms/LMOpenAi/LmOpenAi.node.js.map +1 -1
  173. package/dist/nodes/llms/LMOpenHuggingFaceInference/LmOpenHuggingFaceInference.node.js +159 -133
  174. package/dist/nodes/llms/LMOpenHuggingFaceInference/LmOpenHuggingFaceInference.node.js.map +1 -1
  175. package/dist/nodes/llms/LmChatAwsBedrock/LmChatAwsBedrock.node.js +167 -140
  176. package/dist/nodes/llms/LmChatAwsBedrock/LmChatAwsBedrock.node.js.map +1 -1
  177. package/dist/nodes/llms/LmChatAzureOpenAi/LmChatAzureOpenAi.node.js +193 -168
  178. package/dist/nodes/llms/LmChatAzureOpenAi/LmChatAzureOpenAi.node.js.map +1 -1
  179. package/dist/nodes/llms/LmChatDeepSeek/LmChatDeepSeek.node.js +236 -212
  180. package/dist/nodes/llms/LmChatDeepSeek/LmChatDeepSeek.node.js.map +1 -1
  181. package/dist/nodes/llms/LmChatGoogleGemini/LmChatGoogleGemini.node.js +163 -133
  182. package/dist/nodes/llms/LmChatGoogleGemini/LmChatGoogleGemini.node.js.map +1 -1
  183. package/dist/nodes/llms/LmChatGoogleVertex/LmChatGoogleVertex.node.js +194 -164
  184. package/dist/nodes/llms/LmChatGoogleVertex/LmChatGoogleVertex.node.js.map +1 -1
  185. package/dist/nodes/llms/LmChatGoogleVertex/error-handling.js +36 -14
  186. package/dist/nodes/llms/LmChatGoogleVertex/error-handling.js.map +1 -1
  187. package/dist/nodes/llms/LmChatGroq/LmChatGroq.node.js +160 -134
  188. package/dist/nodes/llms/LmChatGroq/LmChatGroq.node.js.map +1 -1
  189. package/dist/nodes/llms/LmChatMistralCloud/LmChatMistralCloud.node.js +205 -179
  190. package/dist/nodes/llms/LmChatMistralCloud/LmChatMistralCloud.node.js.map +1 -1
  191. package/dist/nodes/llms/LmChatOpenRouter/LmChatOpenRouter.node.js +235 -212
  192. package/dist/nodes/llms/LmChatOpenRouter/LmChatOpenRouter.node.js.map +1 -1
  193. package/dist/nodes/llms/LmChatXAiGrok/LmChatXAiGrok.node.js +236 -212
  194. package/dist/nodes/llms/LmChatXAiGrok/LmChatXAiGrok.node.js.map +1 -1
  195. package/dist/nodes/llms/N8nLlmTracing.js +162 -127
  196. package/dist/nodes/llms/N8nLlmTracing.js.map +1 -1
  197. package/dist/nodes/llms/gemini-common/additional-options.js +103 -78
  198. package/dist/nodes/llms/gemini-common/additional-options.js.map +1 -1
  199. package/dist/nodes/llms/gemini-common/safety-options.js +75 -49
  200. package/dist/nodes/llms/gemini-common/safety-options.js.map +1 -1
  201. package/dist/nodes/llms/n8nDefaultFailedAttemptHandler.js +60 -24
  202. package/dist/nodes/llms/n8nDefaultFailedAttemptHandler.js.map +1 -1
  203. package/dist/nodes/llms/n8nLlmFailedAttemptHandler.js +46 -24
  204. package/dist/nodes/llms/n8nLlmFailedAttemptHandler.js.map +1 -1
  205. package/dist/nodes/memory/MemoryBufferWindow/MemoryBufferWindow.node.js +153 -130
  206. package/dist/nodes/memory/MemoryBufferWindow/MemoryBufferWindow.node.js.map +1 -1
  207. package/dist/nodes/memory/MemoryChatRetriever/MemoryChatRetriever.node.js +109 -84
  208. package/dist/nodes/memory/MemoryChatRetriever/MemoryChatRetriever.node.js.map +1 -1
  209. package/dist/nodes/memory/MemoryManager/MemoryManager.node.js +358 -318
  210. package/dist/nodes/memory/MemoryManager/MemoryManager.node.js.map +1 -1
  211. package/dist/nodes/memory/MemoryMongoDbChat/MemoryMongoDbChat.node.js +155 -0
  212. package/dist/nodes/memory/MemoryMongoDbChat/MemoryMongoDbChat.node.js.map +1 -0
  213. package/dist/nodes/memory/MemoryMongoDbChat/mongodb.dark.svg +3 -0
  214. package/dist/nodes/memory/MemoryMongoDbChat/mongodb.svg +3 -0
  215. package/dist/nodes/memory/MemoryMotorhead/MemoryMotorhead.node.js +128 -104
  216. package/dist/nodes/memory/MemoryMotorhead/MemoryMotorhead.node.js.map +1 -1
  217. package/dist/nodes/memory/MemoryPostgresChat/MemoryPostgresChat.node.js +120 -97
  218. package/dist/nodes/memory/MemoryPostgresChat/MemoryPostgresChat.node.js.map +1 -1
  219. package/dist/nodes/memory/MemoryRedisChat/MemoryRedisChat.node.js +172 -150
  220. package/dist/nodes/memory/MemoryRedisChat/MemoryRedisChat.node.js.map +1 -1
  221. package/dist/nodes/memory/MemoryXata/MemoryXata.node.js +153 -125
  222. package/dist/nodes/memory/MemoryXata/MemoryXata.node.js.map +1 -1
  223. package/dist/nodes/memory/MemoryZep/MemoryZep.node.js +159 -133
  224. package/dist/nodes/memory/MemoryZep/MemoryZep.node.js.map +1 -1
  225. package/dist/nodes/memory/descriptions.js +78 -48
  226. package/dist/nodes/memory/descriptions.js.map +1 -1
  227. package/dist/nodes/output_parser/OutputParserAutofixing/OutputParserAutofixing.node.js +129 -90
  228. package/dist/nodes/output_parser/OutputParserAutofixing/OutputParserAutofixing.node.js.map +1 -1
  229. package/dist/nodes/output_parser/OutputParserAutofixing/prompt.js +27 -3
  230. package/dist/nodes/output_parser/OutputParserAutofixing/prompt.js.map +1 -1
  231. package/dist/nodes/output_parser/OutputParserItemList/OutputParserItemList.node.js +103 -68
  232. package/dist/nodes/output_parser/OutputParserItemList/OutputParserItemList.node.js.map +1 -1
  233. package/dist/nodes/output_parser/OutputParserStructured/OutputParserStructured.node.js +129 -102
  234. package/dist/nodes/output_parser/OutputParserStructured/OutputParserStructured.node.js.map +1 -1
  235. package/dist/nodes/retrievers/RetrieverContextualCompression/RetrieverContextualCompression.node.js +99 -69
  236. package/dist/nodes/retrievers/RetrieverContextualCompression/RetrieverContextualCompression.node.js.map +1 -1
  237. package/dist/nodes/retrievers/RetrieverMultiQuery/RetrieverMultiQuery.node.js +118 -88
  238. package/dist/nodes/retrievers/RetrieverMultiQuery/RetrieverMultiQuery.node.js.map +1 -1
  239. package/dist/nodes/retrievers/RetrieverVectorStore/RetrieverVectorStore.node.js +88 -60
  240. package/dist/nodes/retrievers/RetrieverVectorStore/RetrieverVectorStore.node.js.map +1 -1
  241. package/dist/nodes/retrievers/RetrieverWorkflow/RetrieverWorkflow.node.js +400 -356
  242. package/dist/nodes/retrievers/RetrieverWorkflow/RetrieverWorkflow.node.js.map +1 -1
  243. package/dist/nodes/text_splitters/TextSplitterCharacterTextSplitter/TextSplitterCharacterTextSplitter.node.js +99 -74
  244. package/dist/nodes/text_splitters/TextSplitterCharacterTextSplitter/TextSplitterCharacterTextSplitter.node.js.map +1 -1
  245. package/dist/nodes/text_splitters/TextSplitterRecursiveCharacterTextSplitter/TextSplitterRecursiveCharacterTextSplitter.node.js +132 -103
  246. package/dist/nodes/text_splitters/TextSplitterRecursiveCharacterTextSplitter/TextSplitterRecursiveCharacterTextSplitter.node.js.map +1 -1
  247. package/dist/nodes/text_splitters/TextSplitterTokenSplitter/TextSplitterTokenSplitter.node.js +96 -68
  248. package/dist/nodes/text_splitters/TextSplitterTokenSplitter/TextSplitterTokenSplitter.node.js.map +1 -1
  249. package/dist/nodes/tools/ToolCalculator/ToolCalculator.node.js +69 -44
  250. package/dist/nodes/tools/ToolCalculator/ToolCalculator.node.js.map +1 -1
  251. package/dist/nodes/tools/ToolCode/ToolCode.node.js +261 -235
  252. package/dist/nodes/tools/ToolCode/ToolCode.node.js.map +1 -1
  253. package/dist/nodes/tools/ToolHttpRequest/ToolHttpRequest.node.js +384 -328
  254. package/dist/nodes/tools/ToolHttpRequest/ToolHttpRequest.node.js.map +1 -1
  255. package/dist/nodes/tools/ToolHttpRequest/descriptions.js +394 -357
  256. package/dist/nodes/tools/ToolHttpRequest/descriptions.js.map +1 -1
  257. package/dist/nodes/tools/ToolHttpRequest/interfaces.js +15 -1
  258. package/dist/nodes/tools/ToolHttpRequest/interfaces.js.map +1 -1
  259. package/dist/nodes/tools/ToolHttpRequest/utils.js +587 -551
  260. package/dist/nodes/tools/ToolHttpRequest/utils.js.map +1 -1
  261. package/dist/nodes/tools/ToolSerpApi/ToolSerpApi.node.js +131 -106
  262. package/dist/nodes/tools/ToolSerpApi/ToolSerpApi.node.js.map +1 -1
  263. package/dist/nodes/tools/ToolThink/ToolThink.node.js +94 -0
  264. package/dist/nodes/tools/ToolThink/ToolThink.node.js.map +1 -0
  265. package/dist/nodes/tools/ToolVectorStore/ToolVectorStore.node.js +131 -100
  266. package/dist/nodes/tools/ToolVectorStore/ToolVectorStore.node.js.map +1 -1
  267. package/dist/nodes/tools/ToolWikipedia/ToolWikipedia.node.js +70 -46
  268. package/dist/nodes/tools/ToolWikipedia/ToolWikipedia.node.js.map +1 -1
  269. package/dist/nodes/tools/ToolWolframAlpha/ToolWolframAlpha.node.js +75 -50
  270. package/dist/nodes/tools/ToolWolframAlpha/ToolWolframAlpha.node.js.map +1 -1
  271. package/dist/nodes/tools/ToolWorkflow/ToolWorkflow.node.js +64 -41
  272. package/dist/nodes/tools/ToolWorkflow/ToolWorkflow.node.js.map +1 -1
  273. package/dist/nodes/tools/ToolWorkflow/v1/ToolWorkflowV1.node.js +193 -185
  274. package/dist/nodes/tools/ToolWorkflow/v1/ToolWorkflowV1.node.js.map +1 -1
  275. package/dist/nodes/tools/ToolWorkflow/v1/versionDescription.js +326 -287
  276. package/dist/nodes/tools/ToolWorkflow/v1/versionDescription.js.map +1 -1
  277. package/dist/nodes/tools/ToolWorkflow/v2/ToolWorkflowV2.node.js +50 -27
  278. package/dist/nodes/tools/ToolWorkflow/v2/ToolWorkflowV2.node.js.map +1 -1
  279. package/dist/nodes/tools/ToolWorkflow/v2/methods/index.js +36 -35
  280. package/dist/nodes/tools/ToolWorkflow/v2/methods/index.js.map +1 -1
  281. package/dist/nodes/tools/ToolWorkflow/v2/methods/localResourceMapping.js +40 -18
  282. package/dist/nodes/tools/ToolWorkflow/v2/methods/localResourceMapping.js.map +1 -1
  283. package/dist/nodes/tools/ToolWorkflow/v2/utils/WorkflowToolService.js +256 -201
  284. package/dist/nodes/tools/ToolWorkflow/v2/utils/WorkflowToolService.js.map +1 -1
  285. package/dist/nodes/tools/ToolWorkflow/v2/versionDescription.js +159 -126
  286. package/dist/nodes/tools/ToolWorkflow/v2/versionDescription.js.map +1 -1
  287. package/dist/nodes/trigger/ChatTrigger/ChatTrigger.node.js +513 -489
  288. package/dist/nodes/trigger/ChatTrigger/ChatTrigger.node.js.map +1 -1
  289. package/dist/nodes/trigger/ChatTrigger/GenericFunctions.js +70 -41
  290. package/dist/nodes/trigger/ChatTrigger/GenericFunctions.js.map +1 -1
  291. package/dist/nodes/trigger/ChatTrigger/constants.js +27 -3
  292. package/dist/nodes/trigger/ChatTrigger/constants.js.map +1 -1
  293. package/dist/nodes/trigger/ChatTrigger/error.js +39 -17
  294. package/dist/nodes/trigger/ChatTrigger/error.js.map +1 -1
  295. package/dist/nodes/trigger/ChatTrigger/templates.js +73 -33
  296. package/dist/nodes/trigger/ChatTrigger/templates.js.map +1 -1
  297. package/dist/nodes/trigger/ChatTrigger/types.js +15 -1
  298. package/dist/nodes/trigger/ChatTrigger/types.js.map +1 -1
  299. package/dist/nodes/trigger/ManualChatTrigger/ManualChatTrigger.node.js +87 -63
  300. package/dist/nodes/trigger/ManualChatTrigger/ManualChatTrigger.node.js.map +1 -1
  301. package/dist/nodes/vector_store/VectorStoreInMemory/VectorStoreInMemory.node.js +75 -52
  302. package/dist/nodes/vector_store/VectorStoreInMemory/VectorStoreInMemory.node.js.map +1 -1
  303. package/dist/nodes/vector_store/VectorStoreInMemoryInsert/VectorStoreInMemoryInsert.node.js +117 -83
  304. package/dist/nodes/vector_store/VectorStoreInMemoryInsert/VectorStoreInMemoryInsert.node.js.map +1 -1
  305. package/dist/nodes/vector_store/VectorStoreInMemoryLoad/VectorStoreInMemoryLoad.node.js +91 -62
  306. package/dist/nodes/vector_store/VectorStoreInMemoryLoad/VectorStoreInMemoryLoad.node.js.map +1 -1
  307. package/dist/nodes/vector_store/VectorStoreMongoDBAtlas/VectorStoreMongoDBAtlas.node.js +240 -213
  308. package/dist/nodes/vector_store/VectorStoreMongoDBAtlas/VectorStoreMongoDBAtlas.node.js.map +1 -1
  309. package/dist/nodes/vector_store/VectorStorePGVector/VectorStorePGVector.node.js +256 -221
  310. package/dist/nodes/vector_store/VectorStorePGVector/VectorStorePGVector.node.js.map +1 -1
  311. package/dist/nodes/vector_store/VectorStorePinecone/VectorStorePinecone.node.js +131 -109
  312. package/dist/nodes/vector_store/VectorStorePinecone/VectorStorePinecone.node.js.map +1 -1
  313. package/dist/nodes/vector_store/VectorStorePineconeInsert/VectorStorePineconeInsert.node.js +137 -107
  314. package/dist/nodes/vector_store/VectorStorePineconeInsert/VectorStorePineconeInsert.node.js.map +1 -1
  315. package/dist/nodes/vector_store/VectorStorePineconeLoad/VectorStorePineconeLoad.node.js +125 -98
  316. package/dist/nodes/vector_store/VectorStorePineconeLoad/VectorStorePineconeLoad.node.js.map +1 -1
  317. package/dist/nodes/vector_store/VectorStoreQdrant/VectorStoreQdrant.node.js +124 -100
  318. package/dist/nodes/vector_store/VectorStoreQdrant/VectorStoreQdrant.node.js.map +1 -1
  319. package/dist/nodes/vector_store/VectorStoreSupabase/VectorStoreSupabase.node.js +116 -95
  320. package/dist/nodes/vector_store/VectorStoreSupabase/VectorStoreSupabase.node.js.map +1 -1
  321. package/dist/nodes/vector_store/VectorStoreSupabaseInsert/VectorStoreSupabaseInsert.node.js +129 -99
  322. package/dist/nodes/vector_store/VectorStoreSupabaseInsert/VectorStoreSupabaseInsert.node.js.map +1 -1
  323. package/dist/nodes/vector_store/VectorStoreSupabaseLoad/VectorStoreSupabaseLoad.node.js +121 -94
  324. package/dist/nodes/vector_store/VectorStoreSupabaseLoad/VectorStoreSupabaseLoad.node.js.map +1 -1
  325. package/dist/nodes/vector_store/VectorStoreZep/VectorStoreZep.node.js +133 -113
  326. package/dist/nodes/vector_store/VectorStoreZep/VectorStoreZep.node.js.map +1 -1
  327. package/dist/nodes/vector_store/VectorStoreZepInsert/VectorStoreZepInsert.node.js +141 -111
  328. package/dist/nodes/vector_store/VectorStoreZepInsert/VectorStoreZepInsert.node.js.map +1 -1
  329. package/dist/nodes/vector_store/VectorStoreZepLoad/VectorStoreZepLoad.node.js +121 -94
  330. package/dist/nodes/vector_store/VectorStoreZepLoad/VectorStoreZepLoad.node.js.map +1 -1
  331. package/dist/nodes/vector_store/shared/MemoryManager/MemoryCalculator.js +65 -37
  332. package/dist/nodes/vector_store/shared/MemoryManager/MemoryCalculator.js.map +1 -1
  333. package/dist/nodes/vector_store/shared/MemoryManager/MemoryVectorStoreManager.js +220 -159
  334. package/dist/nodes/vector_store/shared/MemoryManager/MemoryVectorStoreManager.js.map +1 -1
  335. package/dist/nodes/vector_store/shared/MemoryManager/StoreCleanupService.js +120 -87
  336. package/dist/nodes/vector_store/shared/MemoryManager/StoreCleanupService.js.map +1 -1
  337. package/dist/nodes/vector_store/shared/MemoryManager/config.js +50 -26
  338. package/dist/nodes/vector_store/shared/MemoryManager/config.js.map +1 -1
  339. package/dist/nodes/vector_store/shared/MemoryManager/types.js +15 -1
  340. package/dist/nodes/vector_store/shared/MemoryManager/types.js.map +1 -1
  341. package/dist/nodes/vector_store/shared/createVectorStoreNode/constants.js +67 -41
  342. package/dist/nodes/vector_store/shared/createVectorStoreNode/constants.js.map +1 -1
  343. package/dist/nodes/vector_store/shared/createVectorStoreNode/createVectorStoreNode.js +240 -194
  344. package/dist/nodes/vector_store/shared/createVectorStoreNode/createVectorStoreNode.js.map +1 -1
  345. package/dist/nodes/vector_store/shared/createVectorStoreNode/methods/listSearch.js +75 -50
  346. package/dist/nodes/vector_store/shared/createVectorStoreNode/methods/listSearch.js.map +1 -1
  347. package/dist/nodes/vector_store/shared/createVectorStoreNode/operations/index.js +28 -19
  348. package/dist/nodes/vector_store/shared/createVectorStoreNode/operations/index.js.map +1 -1
  349. package/dist/nodes/vector_store/shared/createVectorStoreNode/operations/insertOperation.js +58 -29
  350. package/dist/nodes/vector_store/shared/createVectorStoreNode/operations/insertOperation.js.map +1 -1
  351. package/dist/nodes/vector_store/shared/createVectorStoreNode/operations/loadOperation.js +62 -29
  352. package/dist/nodes/vector_store/shared/createVectorStoreNode/operations/loadOperation.js.map +1 -1
  353. package/dist/nodes/vector_store/shared/createVectorStoreNode/operations/retrieveAsToolOperation.js +72 -38
  354. package/dist/nodes/vector_store/shared/createVectorStoreNode/operations/retrieveAsToolOperation.js.map +1 -1
  355. package/dist/nodes/vector_store/shared/createVectorStoreNode/operations/retrieveOperation.js +36 -12
  356. package/dist/nodes/vector_store/shared/createVectorStoreNode/operations/retrieveOperation.js.map +1 -1
  357. package/dist/nodes/vector_store/shared/createVectorStoreNode/operations/updateOperation.js +64 -34
  358. package/dist/nodes/vector_store/shared/createVectorStoreNode/operations/updateOperation.js.map +1 -1
  359. package/dist/nodes/vector_store/shared/createVectorStoreNode/types.js +15 -1
  360. package/dist/nodes/vector_store/shared/createVectorStoreNode/types.js.map +1 -1
  361. package/dist/nodes/vector_store/shared/createVectorStoreNode/utils.js +40 -12
  362. package/dist/nodes/vector_store/shared/createVectorStoreNode/utils.js.map +1 -1
  363. package/dist/nodes/vector_store/shared/descriptions.js +93 -65
  364. package/dist/nodes/vector_store/shared/descriptions.js.map +1 -1
  365. package/dist/nodes/vector_store/shared/processDocuments.js +58 -35
  366. package/dist/nodes/vector_store/shared/processDocuments.js.map +1 -1
  367. package/dist/nodes/vendors/OpenAi/OpenAi.node.js +39 -16
  368. package/dist/nodes/vendors/OpenAi/OpenAi.node.js.map +1 -1
  369. package/dist/nodes/vendors/OpenAi/actions/assistant/create.operation.js +267 -228
  370. package/dist/nodes/vendors/OpenAi/actions/assistant/create.operation.js.map +1 -1
  371. package/dist/nodes/vendors/OpenAi/actions/assistant/deleteAssistant.operation.js +49 -24
  372. package/dist/nodes/vendors/OpenAi/actions/assistant/deleteAssistant.operation.js.map +1 -1
  373. package/dist/nodes/vendors/OpenAi/actions/assistant/index.js +100 -94
  374. package/dist/nodes/vendors/OpenAi/actions/assistant/index.js.map +1 -1
  375. package/dist/nodes/vendors/OpenAi/actions/assistant/list.operation.js +83 -59
  376. package/dist/nodes/vendors/OpenAi/actions/assistant/list.operation.js.map +1 -1
  377. package/dist/nodes/vendors/OpenAi/actions/assistant/message.operation.js +255 -227
  378. package/dist/nodes/vendors/OpenAi/actions/assistant/message.operation.js.map +1 -1
  379. package/dist/nodes/vendors/OpenAi/actions/assistant/update.operation.js +216 -171
  380. package/dist/nodes/vendors/OpenAi/actions/assistant/update.operation.js.map +1 -1
  381. package/dist/nodes/vendors/OpenAi/actions/audio/generate.operation.js +186 -157
  382. package/dist/nodes/vendors/OpenAi/actions/audio/generate.operation.js.map +1 -1
  383. package/dist/nodes/vendors/OpenAi/actions/audio/index.js +92 -88
  384. package/dist/nodes/vendors/OpenAi/actions/audio/index.js.map +1 -1
  385. package/dist/nodes/vendors/OpenAi/actions/audio/transcribe.operation.js +108 -76
  386. package/dist/nodes/vendors/OpenAi/actions/audio/transcribe.operation.js.map +1 -1
  387. package/dist/nodes/vendors/OpenAi/actions/audio/translate.operation.js +99 -67
  388. package/dist/nodes/vendors/OpenAi/actions/audio/translate.operation.js.map +1 -1
  389. package/dist/nodes/vendors/OpenAi/actions/descriptions.js +75 -50
  390. package/dist/nodes/vendors/OpenAi/actions/descriptions.js.map +1 -1
  391. package/dist/nodes/vendors/OpenAi/actions/file/deleteFile.operation.js +75 -50
  392. package/dist/nodes/vendors/OpenAi/actions/file/deleteFile.operation.js.map +1 -1
  393. package/dist/nodes/vendors/OpenAi/actions/file/index.js +80 -76
  394. package/dist/nodes/vendors/OpenAi/actions/file/index.js.map +1 -1
  395. package/dist/nodes/vendors/OpenAi/actions/file/list.operation.js +74 -49
  396. package/dist/nodes/vendors/OpenAi/actions/file/list.operation.js.map +1 -1
  397. package/dist/nodes/vendors/OpenAi/actions/file/upload.operation.js +108 -78
  398. package/dist/nodes/vendors/OpenAi/actions/file/upload.operation.js.map +1 -1
  399. package/dist/nodes/vendors/OpenAi/actions/image/analyze.operation.js +206 -187
  400. package/dist/nodes/vendors/OpenAi/actions/image/analyze.operation.js.map +1 -1
  401. package/dist/nodes/vendors/OpenAi/actions/image/generate.operation.js +240 -213
  402. package/dist/nodes/vendors/OpenAi/actions/image/generate.operation.js.map +1 -1
  403. package/dist/nodes/vendors/OpenAi/actions/image/index.js +70 -67
  404. package/dist/nodes/vendors/OpenAi/actions/image/index.js.map +1 -1
  405. package/dist/nodes/vendors/OpenAi/actions/node.type.js +15 -1
  406. package/dist/nodes/vendors/OpenAi/actions/node.type.js.map +1 -1
  407. package/dist/nodes/vendors/OpenAi/actions/router.js +100 -97
  408. package/dist/nodes/vendors/OpenAi/actions/router.js.map +1 -1
  409. package/dist/nodes/vendors/OpenAi/actions/text/classify.operation.js +93 -70
  410. package/dist/nodes/vendors/OpenAi/actions/text/classify.operation.js.map +1 -1
  411. package/dist/nodes/vendors/OpenAi/actions/text/index.js +71 -67
  412. package/dist/nodes/vendors/OpenAi/actions/text/index.js.map +1 -1
  413. package/dist/nodes/vendors/OpenAi/actions/text/message.operation.js +307 -278
  414. package/dist/nodes/vendors/OpenAi/actions/text/message.operation.js.map +1 -1
  415. package/dist/nodes/vendors/OpenAi/actions/versionDescription.js +143 -141
  416. package/dist/nodes/vendors/OpenAi/actions/versionDescription.js.map +1 -1
  417. package/dist/nodes/vendors/OpenAi/helpers/constants.js +47 -23
  418. package/dist/nodes/vendors/OpenAi/helpers/constants.js.map +1 -1
  419. package/dist/nodes/vendors/OpenAi/helpers/error-handling.js +42 -17
  420. package/dist/nodes/vendors/OpenAi/helpers/error-handling.js.map +1 -1
  421. package/dist/nodes/vendors/OpenAi/helpers/interfaces.js +15 -1
  422. package/dist/nodes/vendors/OpenAi/helpers/interfaces.js.map +1 -1
  423. package/dist/nodes/vendors/OpenAi/helpers/utils.js +56 -29
  424. package/dist/nodes/vendors/OpenAi/helpers/utils.js.map +1 -1
  425. package/dist/nodes/vendors/OpenAi/methods/index.js +39 -36
  426. package/dist/nodes/vendors/OpenAi/methods/index.js.map +1 -1
  427. package/dist/nodes/vendors/OpenAi/methods/listSearch.js +118 -95
  428. package/dist/nodes/vendors/OpenAi/methods/listSearch.js.map +1 -1
  429. package/dist/nodes/vendors/OpenAi/methods/loadOptions.js +36 -12
  430. package/dist/nodes/vendors/OpenAi/methods/loadOptions.js.map +1 -1
  431. package/dist/nodes/vendors/OpenAi/transport/index.js +44 -20
  432. package/dist/nodes/vendors/OpenAi/transport/index.js.map +1 -1
  433. package/dist/types/nodes.json +9 -6
  434. package/dist/types/types.js.map +1 -1
  435. package/dist/types/zod.types.js +15 -1
  436. package/dist/types/zod.types.js.map +1 -1
  437. package/dist/utils/N8nBinaryLoader.js +186 -142
  438. package/dist/utils/N8nBinaryLoader.js.map +1 -1
  439. package/dist/utils/N8nJsonLoader.js +82 -59
  440. package/dist/utils/N8nJsonLoader.js.map +1 -1
  441. package/dist/utils/N8nTool.js +95 -75
  442. package/dist/utils/N8nTool.js.map +1 -1
  443. package/dist/utils/descriptions.js +128 -92
  444. package/dist/utils/descriptions.js.map +1 -1
  445. package/dist/utils/helpers.js +153 -137
  446. package/dist/utils/helpers.js.map +1 -1
  447. package/dist/utils/logWrapper.js +328 -285
  448. package/dist/utils/logWrapper.js.map +1 -1
  449. package/dist/utils/output_parsers/N8nItemListOutputParser.js +57 -35
  450. package/dist/utils/output_parsers/N8nItemListOutputParser.js.map +1 -1
  451. package/dist/utils/output_parsers/N8nOutputFixingParser.js +94 -62
  452. package/dist/utils/output_parsers/N8nOutputFixingParser.js.map +1 -1
  453. package/dist/utils/output_parsers/N8nOutputParser.js +44 -15
  454. package/dist/utils/output_parsers/N8nOutputParser.js.map +1 -1
  455. package/dist/utils/output_parsers/N8nStructuredOutputParser.js +109 -79
  456. package/dist/utils/output_parsers/N8nStructuredOutputParser.js.map +1 -1
  457. package/dist/utils/output_parsers/prompt.js +48 -0
  458. package/dist/utils/output_parsers/prompt.js.map +1 -0
  459. package/dist/utils/schemaParsing.js +43 -14
  460. package/dist/utils/schemaParsing.js.map +1 -1
  461. package/dist/utils/sharedFields.js +130 -104
  462. package/dist/utils/sharedFields.js.map +1 -1
  463. package/dist/utils/tracing.js +37 -15
  464. package/dist/utils/tracing.js.map +1 -1
  465. package/package.json +14 -9
  466. package/dist/build.tsbuildinfo +0 -1
  467. package/dist/credentials/AnthropicApi.credentials.d.ts +0 -9
  468. package/dist/credentials/AzureOpenAiApi.credentials.d.ts +0 -8
  469. package/dist/credentials/CohereApi.credentials.d.ts +0 -9
  470. package/dist/credentials/DeepSeekApi.credentials.d.ts +0 -9
  471. package/dist/credentials/GooglePalmApi.credentials.d.ts +0 -9
  472. package/dist/credentials/GroqApi.credentials.d.ts +0 -9
  473. package/dist/credentials/HuggingFaceApi.credentials.d.ts +0 -9
  474. package/dist/credentials/MistralCloudApi.credentials.d.ts +0 -9
  475. package/dist/credentials/MotorheadApi.credentials.d.ts +0 -9
  476. package/dist/credentials/OllamaApi.credentials.d.ts +0 -8
  477. package/dist/credentials/OpenRouterApi.credentials.d.ts +0 -9
  478. package/dist/credentials/PineconeApi.credentials.d.ts +0 -9
  479. package/dist/credentials/QdrantApi.credentials.d.ts +0 -9
  480. package/dist/credentials/SerpApi.credentials.d.ts +0 -9
  481. package/dist/credentials/WolframAlphaApi.credentials.d.ts +0 -9
  482. package/dist/credentials/XAiApi.credentials.d.ts +0 -9
  483. package/dist/credentials/XataApi.credentials.d.ts +0 -9
  484. package/dist/credentials/ZepApi.credentials.d.ts +0 -9
  485. package/dist/nodes/agents/Agent/Agent.node.d.ts +0 -5
  486. package/dist/nodes/agents/Agent/agents/ConversationalAgent/description.d.ts +0 -2
  487. package/dist/nodes/agents/Agent/agents/ConversationalAgent/execute.d.ts +0 -2
  488. package/dist/nodes/agents/Agent/agents/ConversationalAgent/prompt.d.ts +0 -2
  489. package/dist/nodes/agents/Agent/agents/OpenAiFunctionsAgent/description.d.ts +0 -2
  490. package/dist/nodes/agents/Agent/agents/OpenAiFunctionsAgent/execute.d.ts +0 -2
  491. package/dist/nodes/agents/Agent/agents/OpenAiFunctionsAgent/prompt.d.ts +0 -1
  492. package/dist/nodes/agents/Agent/agents/PlanAndExecuteAgent/description.d.ts +0 -2
  493. package/dist/nodes/agents/Agent/agents/PlanAndExecuteAgent/execute.d.ts +0 -2
  494. package/dist/nodes/agents/Agent/agents/PlanAndExecuteAgent/prompt.d.ts +0 -1
  495. package/dist/nodes/agents/Agent/agents/ReActAgent/description.d.ts +0 -2
  496. package/dist/nodes/agents/Agent/agents/ReActAgent/execute.d.ts +0 -2
  497. package/dist/nodes/agents/Agent/agents/ReActAgent/prompt.d.ts +0 -4
  498. package/dist/nodes/agents/Agent/agents/SqlAgent/description.d.ts +0 -2
  499. package/dist/nodes/agents/Agent/agents/SqlAgent/execute.d.ts +0 -2
  500. package/dist/nodes/agents/Agent/agents/SqlAgent/other/handlers/mysql.d.ts +0 -3
  501. package/dist/nodes/agents/Agent/agents/SqlAgent/other/handlers/postgres.d.ts +0 -3
  502. package/dist/nodes/agents/Agent/agents/SqlAgent/other/handlers/sqlite.d.ts +0 -3
  503. package/dist/nodes/agents/Agent/agents/SqlAgent/other/prompts.d.ts +0 -2
  504. package/dist/nodes/agents/Agent/agents/ToolsAgent/description.d.ts +0 -2
  505. package/dist/nodes/agents/Agent/agents/ToolsAgent/execute.d.ts +0 -31
  506. package/dist/nodes/agents/Agent/agents/ToolsAgent/prompt.d.ts +0 -1
  507. package/dist/nodes/agents/Agent/agents/utils.d.ts +0 -8
  508. package/dist/nodes/agents/OpenAiAssistant/OpenAiAssistant.node.d.ts +0 -5
  509. package/dist/nodes/agents/OpenAiAssistant/utils.d.ts +0 -5
  510. package/dist/nodes/chains/ChainLLM/ChainLlm.node.d.ts +0 -5
  511. package/dist/nodes/chains/ChainLLM/methods/chainExecutor.d.ts +0 -19
  512. package/dist/nodes/chains/ChainLLM/methods/config.d.ts +0 -3
  513. package/dist/nodes/chains/ChainLLM/methods/imageUtils.d.ts +0 -12
  514. package/dist/nodes/chains/ChainLLM/methods/index.d.ts +0 -4
  515. package/dist/nodes/chains/ChainLLM/methods/promptUtils.d.ts +0 -3
  516. package/dist/nodes/chains/ChainLLM/methods/responseFormatter.d.ts +0 -2
  517. package/dist/nodes/chains/ChainLLM/methods/types.d.ts +0 -28
  518. package/dist/nodes/chains/ChainRetrievalQA/ChainRetrievalQa.node.d.ts +0 -5
  519. package/dist/nodes/chains/ChainSummarization/ChainSummarization.node.d.ts +0 -4
  520. package/dist/nodes/chains/ChainSummarization/V1/ChainSummarizationV1.node.d.ts +0 -6
  521. package/dist/nodes/chains/ChainSummarization/V2/ChainSummarizationV2.node.d.ts +0 -6
  522. package/dist/nodes/chains/ChainSummarization/helpers.d.ts +0 -9
  523. package/dist/nodes/chains/ChainSummarization/prompt.d.ts +0 -2
  524. package/dist/nodes/chains/InformationExtractor/InformationExtractor.node.d.ts +0 -5
  525. package/dist/nodes/chains/InformationExtractor/helpers.d.ts +0 -7
  526. package/dist/nodes/chains/InformationExtractor/types.d.ts +0 -6
  527. package/dist/nodes/chains/SentimentAnalysis/SentimentAnalysis.node.d.ts +0 -5
  528. package/dist/nodes/chains/TextClassifier/TextClassifier.node.d.ts +0 -5
  529. package/dist/nodes/code/Code.node.d.ts +0 -7
  530. package/dist/nodes/document_loaders/DocumentBinaryInputLoader/DocumentBinaryInputLoader.node.d.ts +0 -8
  531. package/dist/nodes/document_loaders/DocumentDefaultDataLoader/DocumentDefaultDataLoader.node.d.ts +0 -8
  532. package/dist/nodes/document_loaders/DocumentGithubLoader/DocumentGithubLoader.node.d.ts +0 -5
  533. package/dist/nodes/document_loaders/DocumentJSONInputLoader/DocumentJsonInputLoader.node.d.ts +0 -5
  534. package/dist/nodes/embeddings/EmbeddingsAwsBedrock/EmbeddingsAwsBedrock.node.d.ts +0 -5
  535. package/dist/nodes/embeddings/EmbeddingsAzureOpenAi/EmbeddingsAzureOpenAi.node.d.ts +0 -5
  536. package/dist/nodes/embeddings/EmbeddingsCohere/EmbeddingsCohere.node.d.ts +0 -5
  537. package/dist/nodes/embeddings/EmbeddingsGoogleGemini/EmbeddingsGoogleGemini.node.d.ts +0 -5
  538. package/dist/nodes/embeddings/EmbeddingsHuggingFaceInference/EmbeddingsHuggingFaceInference.node.d.ts +0 -5
  539. package/dist/nodes/embeddings/EmbeddingsMistralCloud/EmbeddingsMistralCloud.node.d.ts +0 -5
  540. package/dist/nodes/embeddings/EmbeddingsOllama/EmbeddingsOllama.node.d.ts +0 -5
  541. package/dist/nodes/embeddings/EmbeddingsOpenAI/EmbeddingsOpenAi.node.d.ts +0 -5
  542. package/dist/nodes/llms/LMChatAnthropic/LmChatAnthropic.node.d.ts +0 -11
  543. package/dist/nodes/llms/LMChatAnthropic/methods/searchModels.d.ts +0 -8
  544. package/dist/nodes/llms/LMChatOllama/LmChatOllama.node.d.ts +0 -5
  545. package/dist/nodes/llms/LMChatOpenAi/LmChatOpenAi.node.d.ts +0 -11
  546. package/dist/nodes/llms/LMChatOpenAi/methods/loadModels.d.ts +0 -2
  547. package/dist/nodes/llms/LMCohere/LmCohere.node.d.ts +0 -5
  548. package/dist/nodes/llms/LMOllama/LmOllama.node.d.ts +0 -5
  549. package/dist/nodes/llms/LMOllama/description.d.ts +0 -4
  550. package/dist/nodes/llms/LMOpenAi/LmOpenAi.node.d.ts +0 -15
  551. package/dist/nodes/llms/LMOpenHuggingFaceInference/LmOpenHuggingFaceInference.node.d.ts +0 -5
  552. package/dist/nodes/llms/LmChatAwsBedrock/LmChatAwsBedrock.node.d.ts +0 -5
  553. package/dist/nodes/llms/LmChatAzureOpenAi/LmChatAzureOpenAi.node.d.ts +0 -5
  554. package/dist/nodes/llms/LmChatDeepSeek/LmChatDeepSeek.node.d.ts +0 -5
  555. package/dist/nodes/llms/LmChatGoogleGemini/LmChatGoogleGemini.node.d.ts +0 -5
  556. package/dist/nodes/llms/LmChatGoogleVertex/LmChatGoogleVertex.node.d.ts +0 -15
  557. package/dist/nodes/llms/LmChatGoogleVertex/error-handling.d.ts +0 -8
  558. package/dist/nodes/llms/LmChatGroq/LmChatGroq.node.d.ts +0 -5
  559. package/dist/nodes/llms/LmChatMistralCloud/LmChatMistralCloud.node.d.ts +0 -5
  560. package/dist/nodes/llms/LmChatOpenRouter/LmChatOpenRouter.node.d.ts +0 -5
  561. package/dist/nodes/llms/LmChatXAiGrok/LmChatXAiGrok.node.d.ts +0 -5
  562. package/dist/nodes/llms/N8nLlmTracing.d.ts +0 -44
  563. package/dist/nodes/llms/gemini-common/additional-options.d.ts +0 -2
  564. package/dist/nodes/llms/gemini-common/safety-options.d.ts +0 -3
  565. package/dist/nodes/llms/n8nDefaultFailedAttemptHandler.d.ts +0 -1
  566. package/dist/nodes/llms/n8nLlmFailedAttemptHandler.d.ts +0 -3
  567. package/dist/nodes/memory/MemoryBufferWindow/MemoryBufferWindow.node.d.ts +0 -5
  568. package/dist/nodes/memory/MemoryChatRetriever/MemoryChatRetriever.node.d.ts +0 -5
  569. package/dist/nodes/memory/MemoryManager/MemoryManager.node.d.ts +0 -5
  570. package/dist/nodes/memory/MemoryMotorhead/MemoryMotorhead.node.d.ts +0 -5
  571. package/dist/nodes/memory/MemoryPostgresChat/MemoryPostgresChat.node.d.ts +0 -11
  572. package/dist/nodes/memory/MemoryRedisChat/MemoryRedisChat.node.d.ts +0 -5
  573. package/dist/nodes/memory/MemoryXata/MemoryXata.node.d.ts +0 -5
  574. package/dist/nodes/memory/MemoryZep/MemoryZep.node.d.ts +0 -5
  575. package/dist/nodes/memory/descriptions.d.ts +0 -5
  576. package/dist/nodes/output_parser/OutputParserAutofixing/OutputParserAutofixing.node.d.ts +0 -5
  577. package/dist/nodes/output_parser/OutputParserAutofixing/prompt.d.ts +0 -1
  578. package/dist/nodes/output_parser/OutputParserItemList/OutputParserItemList.node.d.ts +0 -5
  579. package/dist/nodes/output_parser/OutputParserStructured/OutputParserStructured.node.d.ts +0 -5
  580. package/dist/nodes/retrievers/RetrieverContextualCompression/RetrieverContextualCompression.node.d.ts +0 -5
  581. package/dist/nodes/retrievers/RetrieverMultiQuery/RetrieverMultiQuery.node.d.ts +0 -5
  582. package/dist/nodes/retrievers/RetrieverVectorStore/RetrieverVectorStore.node.d.ts +0 -5
  583. package/dist/nodes/retrievers/RetrieverWorkflow/RetrieverWorkflow.node.d.ts +0 -5
  584. package/dist/nodes/text_splitters/TextSplitterCharacterTextSplitter/TextSplitterCharacterTextSplitter.node.d.ts +0 -5
  585. package/dist/nodes/text_splitters/TextSplitterRecursiveCharacterTextSplitter/TextSplitterRecursiveCharacterTextSplitter.node.d.ts +0 -5
  586. package/dist/nodes/text_splitters/TextSplitterTokenSplitter/TextSplitterTokenSplitter.node.d.ts +0 -5
  587. package/dist/nodes/tools/ToolCalculator/ToolCalculator.node.d.ts +0 -5
  588. package/dist/nodes/tools/ToolCode/ToolCode.node.d.ts +0 -5
  589. package/dist/nodes/tools/ToolHttpRequest/ToolHttpRequest.node.d.ts +0 -5
  590. package/dist/nodes/tools/ToolHttpRequest/descriptions.d.ts +0 -7
  591. package/dist/nodes/tools/ToolHttpRequest/interfaces.d.ts +0 -20
  592. package/dist/nodes/tools/ToolHttpRequest/utils.d.ts +0 -25
  593. package/dist/nodes/tools/ToolSerpApi/ToolSerpApi.node.d.ts +0 -5
  594. package/dist/nodes/tools/ToolVectorStore/ToolVectorStore.node.d.ts +0 -5
  595. package/dist/nodes/tools/ToolWikipedia/ToolWikipedia.node.d.ts +0 -5
  596. package/dist/nodes/tools/ToolWolframAlpha/ToolWolframAlpha.node.d.ts +0 -5
  597. package/dist/nodes/tools/ToolWorkflow/ToolWorkflow.node.d.ts +0 -4
  598. package/dist/nodes/tools/ToolWorkflow/v1/ToolWorkflowV1.node.d.ts +0 -6
  599. package/dist/nodes/tools/ToolWorkflow/v1/versionDescription.d.ts +0 -2
  600. package/dist/nodes/tools/ToolWorkflow/v2/ToolWorkflowV2.node.d.ts +0 -10
  601. package/dist/nodes/tools/ToolWorkflow/v2/methods/index.d.ts +0 -1
  602. package/dist/nodes/tools/ToolWorkflow/v2/methods/localResourceMapping.d.ts +0 -2
  603. package/dist/nodes/tools/ToolWorkflow/v2/utils/WorkflowToolService.d.ts +0 -26
  604. package/dist/nodes/tools/ToolWorkflow/v2/versionDescription.d.ts +0 -2
  605. package/dist/nodes/trigger/ChatTrigger/ChatTrigger.node.d.ts +0 -7
  606. package/dist/nodes/trigger/ChatTrigger/GenericFunctions.d.ts +0 -2
  607. package/dist/nodes/trigger/ChatTrigger/constants.d.ts +0 -1
  608. package/dist/nodes/trigger/ChatTrigger/error.d.ts +0 -5
  609. package/dist/nodes/trigger/ChatTrigger/templates.d.ts +0 -16
  610. package/dist/nodes/trigger/ChatTrigger/types.d.ts +0 -2
  611. package/dist/nodes/trigger/ManualChatTrigger/ManualChatTrigger.node.d.ts +0 -5
  612. package/dist/nodes/vector_store/VectorStoreInMemory/VectorStoreInMemory.node.d.ts +0 -15
  613. package/dist/nodes/vector_store/VectorStoreInMemoryInsert/VectorStoreInMemoryInsert.node.d.ts +0 -5
  614. package/dist/nodes/vector_store/VectorStoreInMemoryLoad/VectorStoreInMemoryLoad.node.d.ts +0 -5
  615. package/dist/nodes/vector_store/VectorStoreMongoDBAtlas/VectorStoreMongoDBAtlas.node.d.ts +0 -16
  616. package/dist/nodes/vector_store/VectorStorePGVector/VectorStorePGVector.node.d.ts +0 -15
  617. package/dist/nodes/vector_store/VectorStorePinecone/VectorStorePinecone.node.d.ts +0 -15
  618. package/dist/nodes/vector_store/VectorStorePineconeInsert/VectorStorePineconeInsert.node.d.ts +0 -11
  619. package/dist/nodes/vector_store/VectorStorePineconeLoad/VectorStorePineconeLoad.node.d.ts +0 -11
  620. package/dist/nodes/vector_store/VectorStoreQdrant/VectorStoreQdrant.node.d.ts +0 -15
  621. package/dist/nodes/vector_store/VectorStoreSupabase/VectorStoreSupabase.node.d.ts +0 -15
  622. package/dist/nodes/vector_store/VectorStoreSupabaseInsert/VectorStoreSupabaseInsert.node.d.ts +0 -11
  623. package/dist/nodes/vector_store/VectorStoreSupabaseLoad/VectorStoreSupabaseLoad.node.d.ts +0 -11
  624. package/dist/nodes/vector_store/VectorStoreZep/VectorStoreZep.node.d.ts +0 -15
  625. package/dist/nodes/vector_store/VectorStoreZepInsert/VectorStoreZepInsert.node.d.ts +0 -5
  626. package/dist/nodes/vector_store/VectorStoreZepLoad/VectorStoreZepLoad.node.d.ts +0 -5
  627. package/dist/nodes/vector_store/shared/MemoryManager/MemoryCalculator.d.ts +0 -7
  628. package/dist/nodes/vector_store/shared/MemoryManager/MemoryVectorStoreManager.d.ts +0 -32
  629. package/dist/nodes/vector_store/shared/MemoryManager/StoreCleanupService.d.ts +0 -16
  630. package/dist/nodes/vector_store/shared/MemoryManager/config.d.ts +0 -4
  631. package/dist/nodes/vector_store/shared/MemoryManager/types.d.ts +0 -39
  632. package/dist/nodes/vector_store/shared/createVectorStoreNode/constants.d.ts +0 -4
  633. package/dist/nodes/vector_store/shared/createVectorStoreNode/createVectorStoreNode.d.ts +0 -15
  634. package/dist/nodes/vector_store/shared/createVectorStoreNode/methods/listSearch.d.ts +0 -19
  635. package/dist/nodes/vector_store/shared/createVectorStoreNode/operations/index.d.ts +0 -5
  636. package/dist/nodes/vector_store/shared/createVectorStoreNode/operations/insertOperation.d.ts +0 -5
  637. package/dist/nodes/vector_store/shared/createVectorStoreNode/operations/loadOperation.d.ts +0 -5
  638. package/dist/nodes/vector_store/shared/createVectorStoreNode/operations/retrieveAsToolOperation.d.ts +0 -5
  639. package/dist/nodes/vector_store/shared/createVectorStoreNode/operations/retrieveOperation.d.ts +0 -5
  640. package/dist/nodes/vector_store/shared/createVectorStoreNode/operations/updateOperation.d.ts +0 -5
  641. package/dist/nodes/vector_store/shared/createVectorStoreNode/types.d.ts +0 -31
  642. package/dist/nodes/vector_store/shared/createVectorStoreNode/utils.d.ts +0 -6
  643. package/dist/nodes/vector_store/shared/descriptions.d.ts +0 -4
  644. package/dist/nodes/vector_store/shared/processDocuments.d.ts +0 -25
  645. package/dist/nodes/vendors/OpenAi/OpenAi.node.d.ts +0 -10
  646. package/dist/nodes/vendors/OpenAi/actions/assistant/create.operation.d.ts +0 -26
  647. package/dist/nodes/vendors/OpenAi/actions/assistant/deleteAssistant.operation.d.ts +0 -26
  648. package/dist/nodes/vendors/OpenAi/actions/assistant/index.d.ts +0 -8
  649. package/dist/nodes/vendors/OpenAi/actions/assistant/list.operation.d.ts +0 -26
  650. package/dist/nodes/vendors/OpenAi/actions/assistant/message.operation.d.ts +0 -26
  651. package/dist/nodes/vendors/OpenAi/actions/assistant/update.operation.d.ts +0 -26
  652. package/dist/nodes/vendors/OpenAi/actions/audio/generate.operation.d.ts +0 -26
  653. package/dist/nodes/vendors/OpenAi/actions/audio/index.d.ts +0 -6
  654. package/dist/nodes/vendors/OpenAi/actions/audio/transcribe.operation.d.ts +0 -26
  655. package/dist/nodes/vendors/OpenAi/actions/audio/translate.operation.d.ts +0 -26
  656. package/dist/nodes/vendors/OpenAi/actions/descriptions.d.ts +0 -3
  657. package/dist/nodes/vendors/OpenAi/actions/file/deleteFile.operation.d.ts +0 -26
  658. package/dist/nodes/vendors/OpenAi/actions/file/index.d.ts +0 -6
  659. package/dist/nodes/vendors/OpenAi/actions/file/list.operation.d.ts +0 -26
  660. package/dist/nodes/vendors/OpenAi/actions/file/upload.operation.d.ts +0 -26
  661. package/dist/nodes/vendors/OpenAi/actions/image/analyze.operation.d.ts +0 -26
  662. package/dist/nodes/vendors/OpenAi/actions/image/generate.operation.d.ts +0 -26
  663. package/dist/nodes/vendors/OpenAi/actions/image/index.d.ts +0 -5
  664. package/dist/nodes/vendors/OpenAi/actions/node.type.d.ts +0 -10
  665. package/dist/nodes/vendors/OpenAi/actions/router.d.ts +0 -2
  666. package/dist/nodes/vendors/OpenAi/actions/text/classify.operation.d.ts +0 -26
  667. package/dist/nodes/vendors/OpenAi/actions/text/index.d.ts +0 -5
  668. package/dist/nodes/vendors/OpenAi/actions/text/message.operation.d.ts +0 -26
  669. package/dist/nodes/vendors/OpenAi/actions/versionDescription.d.ts +0 -2
  670. package/dist/nodes/vendors/OpenAi/helpers/constants.d.ts +0 -1
  671. package/dist/nodes/vendors/OpenAi/helpers/error-handling.d.ts +0 -4
  672. package/dist/nodes/vendors/OpenAi/helpers/interfaces.d.ts +0 -55
  673. package/dist/nodes/vendors/OpenAi/helpers/utils.d.ts +0 -8
  674. package/dist/nodes/vendors/OpenAi/methods/index.d.ts +0 -2
  675. package/dist/nodes/vendors/OpenAi/methods/listSearch.d.ts +0 -5
  676. package/dist/nodes/vendors/OpenAi/methods/loadOptions.d.ts +0 -2
  677. package/dist/nodes/vendors/OpenAi/transport/index.d.ts +0 -10
  678. package/dist/types/types.d.ts +0 -4
  679. package/dist/types/zod.types.d.ts +0 -2
  680. package/dist/utils/N8nBinaryLoader.d.ts +0 -18
  681. package/dist/utils/N8nJsonLoader.d.ts +0 -11
  682. package/dist/utils/N8nTool.d.ts +0 -10
  683. package/dist/utils/descriptions.d.ts +0 -13
  684. package/dist/utils/helpers.d.ts +0 -23
  685. package/dist/utils/logWrapper.d.ts +0 -27
  686. package/dist/utils/output_parsers/N8nItemListOutputParser.d.ts +0 -13
  687. package/dist/utils/output_parsers/N8nOutputFixingParser.d.ts +0 -18
  688. package/dist/utils/output_parsers/N8nOutputParser.d.ts +0 -7
  689. package/dist/utils/output_parsers/N8nStructuredOutputParser.d.ts +0 -12
  690. package/dist/utils/schemaParsing.d.ts +0 -6
  691. package/dist/utils/sharedFields.d.ts +0 -6
  692. package/dist/utils/tracing.d.ts +0 -7
@@ -1,233 +1,260 @@
1
1
  "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.TextClassifier = void 0;
4
- const messages_1 = require("@langchain/core/messages");
5
- const prompts_1 = require("@langchain/core/prompts");
6
- const output_parsers_1 = require("langchain/output_parsers");
7
- const n8n_workflow_1 = require("n8n-workflow");
8
- const zod_1 = require("zod");
9
- const tracing_1 = require("../../../utils/tracing");
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+ var TextClassifier_node_exports = {};
20
+ __export(TextClassifier_node_exports, {
21
+ TextClassifier: () => TextClassifier
22
+ });
23
+ module.exports = __toCommonJS(TextClassifier_node_exports);
24
+ var import_messages = require("@langchain/core/messages");
25
+ var import_prompts = require("@langchain/core/prompts");
26
+ var import_output_parsers = require("langchain/output_parsers");
27
+ var import_n8n_workflow = require("n8n-workflow");
28
+ var import_zod = require("zod");
29
+ var import_tracing = require("../../../utils/tracing");
10
30
  const SYSTEM_PROMPT_TEMPLATE = "Please classify the text provided by the user into one of the following categories: {categories}, and use the provided formatting instructions below. Don't explain, and only output the json.";
11
31
  const configuredOutputs = (parameters) => {
12
- const categories = parameters.categories?.categories ?? [];
13
- const fallback = parameters.options?.fallback;
14
- const ret = categories.map((cat) => {
15
- return { type: 'main', displayName: cat.category };
16
- });
17
- if (fallback === 'other')
18
- ret.push({ type: 'main', displayName: 'Other' });
19
- return ret;
32
+ const categories = parameters.categories?.categories ?? [];
33
+ const fallback = parameters.options?.fallback;
34
+ const ret = categories.map((cat) => {
35
+ return { type: "main", displayName: cat.category };
36
+ });
37
+ if (fallback === "other") ret.push({ type: "main", displayName: "Other" });
38
+ return ret;
20
39
  };
21
40
  class TextClassifier {
22
- constructor() {
23
- this.description = {
24
- displayName: 'Text Classifier',
25
- name: 'textClassifier',
26
- icon: 'fa:tags',
27
- iconColor: 'black',
28
- group: ['transform'],
29
- version: 1,
30
- description: 'Classify your text into distinct categories',
31
- codex: {
32
- categories: ['AI'],
33
- subcategories: {
34
- AI: ['Chains', 'Root Nodes'],
35
- },
36
- resources: {
37
- primaryDocumentation: [
38
- {
39
- url: 'https://docs.n8n.io/integrations/builtin/cluster-nodes/root-nodes/n8n-nodes-langchain.text-classifier/',
40
- },
41
- ],
42
- },
43
- },
44
- defaults: {
45
- name: 'Text Classifier',
46
- },
47
- inputs: [
48
- { displayName: '', type: n8n_workflow_1.NodeConnectionTypes.Main },
41
+ constructor() {
42
+ this.description = {
43
+ displayName: "Text Classifier",
44
+ name: "textClassifier",
45
+ icon: "fa:tags",
46
+ iconColor: "black",
47
+ group: ["transform"],
48
+ version: 1,
49
+ description: "Classify your text into distinct categories",
50
+ codex: {
51
+ categories: ["AI"],
52
+ subcategories: {
53
+ AI: ["Chains", "Root Nodes"]
54
+ },
55
+ resources: {
56
+ primaryDocumentation: [
57
+ {
58
+ url: "https://docs.n8n.io/integrations/builtin/cluster-nodes/root-nodes/n8n-nodes-langchain.text-classifier/"
59
+ }
60
+ ]
61
+ }
62
+ },
63
+ defaults: {
64
+ name: "Text Classifier"
65
+ },
66
+ inputs: [
67
+ { displayName: "", type: import_n8n_workflow.NodeConnectionTypes.Main },
68
+ {
69
+ displayName: "Model",
70
+ maxConnections: 1,
71
+ type: import_n8n_workflow.NodeConnectionTypes.AiLanguageModel,
72
+ required: true
73
+ }
74
+ ],
75
+ outputs: `={{(${configuredOutputs})($parameter)}}`,
76
+ properties: [
77
+ {
78
+ displayName: "Text to Classify",
79
+ name: "inputText",
80
+ type: "string",
81
+ required: true,
82
+ default: "",
83
+ description: "Use an expression to reference data in previous nodes or enter static text",
84
+ typeOptions: {
85
+ rows: 2
86
+ }
87
+ },
88
+ {
89
+ displayName: "Categories",
90
+ name: "categories",
91
+ placeholder: "Add Category",
92
+ type: "fixedCollection",
93
+ default: {},
94
+ typeOptions: {
95
+ multipleValues: true
96
+ },
97
+ options: [
98
+ {
99
+ name: "categories",
100
+ displayName: "Categories",
101
+ values: [
49
102
  {
50
- displayName: 'Model',
51
- maxConnections: 1,
52
- type: n8n_workflow_1.NodeConnectionTypes.AiLanguageModel,
53
- required: true,
103
+ displayName: "Category",
104
+ name: "category",
105
+ type: "string",
106
+ default: "",
107
+ description: "Category to add",
108
+ required: true
54
109
  },
55
- ],
56
- outputs: `={{(${configuredOutputs})($parameter)}}`,
57
- properties: [
58
110
  {
59
- displayName: 'Text to Classify',
60
- name: 'inputText',
61
- type: 'string',
62
- required: true,
63
- default: '',
64
- description: 'Use an expression to reference data in previous nodes or enter static text',
65
- typeOptions: {
66
- rows: 2,
67
- },
68
- },
111
+ displayName: "Description",
112
+ name: "description",
113
+ type: "string",
114
+ default: "",
115
+ description: "Describe your category if it's not obvious"
116
+ }
117
+ ]
118
+ }
119
+ ]
120
+ },
121
+ {
122
+ displayName: "Options",
123
+ name: "options",
124
+ type: "collection",
125
+ default: {},
126
+ placeholder: "Add Option",
127
+ options: [
128
+ {
129
+ displayName: "Allow Multiple Classes To Be True",
130
+ name: "multiClass",
131
+ type: "boolean",
132
+ default: false
133
+ },
134
+ {
135
+ displayName: "When No Clear Match",
136
+ name: "fallback",
137
+ type: "options",
138
+ default: "discard",
139
+ description: "What to do with items that don\u2019t match the categories exactly",
140
+ options: [
69
141
  {
70
- displayName: 'Categories',
71
- name: 'categories',
72
- placeholder: 'Add Category',
73
- type: 'fixedCollection',
74
- default: {},
75
- typeOptions: {
76
- multipleValues: true,
77
- },
78
- options: [
79
- {
80
- name: 'categories',
81
- displayName: 'Categories',
82
- values: [
83
- {
84
- displayName: 'Category',
85
- name: 'category',
86
- type: 'string',
87
- default: '',
88
- description: 'Category to add',
89
- required: true,
90
- },
91
- {
92
- displayName: 'Description',
93
- name: 'description',
94
- type: 'string',
95
- default: '',
96
- description: "Describe your category if it's not obvious",
97
- },
98
- ],
99
- },
100
- ],
142
+ name: "Discard Item",
143
+ value: "discard",
144
+ description: "Ignore the item and drop it from the output"
101
145
  },
102
146
  {
103
- displayName: 'Options',
104
- name: 'options',
105
- type: 'collection',
106
- default: {},
107
- placeholder: 'Add Option',
108
- options: [
109
- {
110
- displayName: 'Allow Multiple Classes To Be True',
111
- name: 'multiClass',
112
- type: 'boolean',
113
- default: false,
114
- },
115
- {
116
- displayName: 'When No Clear Match',
117
- name: 'fallback',
118
- type: 'options',
119
- default: 'discard',
120
- description: 'What to do with items that don’t match the categories exactly',
121
- options: [
122
- {
123
- name: 'Discard Item',
124
- value: 'discard',
125
- description: 'Ignore the item and drop it from the output',
126
- },
127
- {
128
- name: "Output on Extra, 'Other' Branch",
129
- value: 'other',
130
- description: "Create a separate output branch called 'Other'",
131
- },
132
- ],
133
- },
134
- {
135
- displayName: 'System Prompt Template',
136
- name: 'systemPromptTemplate',
137
- type: 'string',
138
- default: SYSTEM_PROMPT_TEMPLATE,
139
- description: 'String to use directly as the system prompt template',
140
- typeOptions: {
141
- rows: 6,
142
- },
143
- },
144
- {
145
- displayName: 'Enable Auto-Fixing',
146
- name: 'enableAutoFixing',
147
- type: 'boolean',
148
- default: true,
149
- description: 'Whether to enable auto-fixing (may trigger an additional LLM call if output is broken)',
150
- },
151
- ],
152
- },
153
- ],
154
- };
155
- }
156
- async execute() {
157
- const items = this.getInputData();
158
- const llm = (await this.getInputConnectionData(n8n_workflow_1.NodeConnectionTypes.AiLanguageModel, 0));
159
- const categories = this.getNodeParameter('categories.categories', 0, []);
160
- if (categories.length === 0) {
161
- throw new n8n_workflow_1.NodeOperationError(this.getNode(), 'At least one category must be defined');
147
+ name: "Output on Extra, 'Other' Branch",
148
+ value: "other",
149
+ description: "Create a separate output branch called 'Other'"
150
+ }
151
+ ]
152
+ },
153
+ {
154
+ displayName: "System Prompt Template",
155
+ name: "systemPromptTemplate",
156
+ type: "string",
157
+ default: SYSTEM_PROMPT_TEMPLATE,
158
+ description: "String to use directly as the system prompt template",
159
+ typeOptions: {
160
+ rows: 6
161
+ }
162
+ },
163
+ {
164
+ displayName: "Enable Auto-Fixing",
165
+ name: "enableAutoFixing",
166
+ type: "boolean",
167
+ default: true,
168
+ description: "Whether to enable auto-fixing (may trigger an additional LLM call if output is broken)"
169
+ }
170
+ ]
162
171
  }
163
- const options = this.getNodeParameter('options', 0, {});
164
- const multiClass = options?.multiClass ?? false;
165
- const fallback = options?.fallback ?? 'discard';
166
- const schemaEntries = categories.map((cat) => [
167
- cat.category,
168
- zod_1.z
169
- .boolean()
170
- .describe(`Should be true if the input has category "${cat.category}" (description: ${cat.description})`),
171
- ]);
172
- if (fallback === 'other')
173
- schemaEntries.push([
174
- 'fallback',
175
- zod_1.z.boolean().describe('Should be true if none of the other categories apply'),
176
- ]);
177
- const schema = zod_1.z.object(Object.fromEntries(schemaEntries));
178
- const structuredParser = output_parsers_1.StructuredOutputParser.fromZodSchema(schema);
179
- const parser = options.enableAutoFixing
180
- ? output_parsers_1.OutputFixingParser.fromLLM(llm, structuredParser)
181
- : structuredParser;
182
- const multiClassPrompt = multiClass
183
- ? 'Categories are not mutually exclusive, and multiple can be true'
184
- : 'Categories are mutually exclusive, and only one can be true';
185
- const fallbackPrompt = {
186
- other: 'If no categories apply, select the "fallback" option.',
187
- discard: 'If there is not a very fitting category, select none of the categories.',
188
- }[fallback];
189
- const returnData = Array.from({ length: categories.length + (fallback === 'other' ? 1 : 0) }, (_) => []);
190
- for (let itemIdx = 0; itemIdx < items.length; itemIdx++) {
191
- const item = items[itemIdx];
192
- item.pairedItem = { item: itemIdx };
193
- const input = this.getNodeParameter('inputText', itemIdx);
194
- const inputPrompt = new messages_1.HumanMessage(input);
195
- const systemPromptTemplateOpt = this.getNodeParameter('options.systemPromptTemplate', itemIdx, SYSTEM_PROMPT_TEMPLATE);
196
- const systemPromptTemplate = prompts_1.SystemMessagePromptTemplate.fromTemplate(`${systemPromptTemplateOpt ?? SYSTEM_PROMPT_TEMPLATE}
172
+ ]
173
+ };
174
+ }
175
+ async execute() {
176
+ const items = this.getInputData();
177
+ const llm = await this.getInputConnectionData(
178
+ import_n8n_workflow.NodeConnectionTypes.AiLanguageModel,
179
+ 0
180
+ );
181
+ const categories = this.getNodeParameter("categories.categories", 0, []);
182
+ if (categories.length === 0) {
183
+ throw new import_n8n_workflow.NodeOperationError(this.getNode(), "At least one category must be defined");
184
+ }
185
+ const options = this.getNodeParameter("options", 0, {});
186
+ const multiClass = options?.multiClass ?? false;
187
+ const fallback = options?.fallback ?? "discard";
188
+ const schemaEntries = categories.map((cat) => [
189
+ cat.category,
190
+ import_zod.z.boolean().describe(
191
+ `Should be true if the input has category "${cat.category}" (description: ${cat.description})`
192
+ )
193
+ ]);
194
+ if (fallback === "other")
195
+ schemaEntries.push([
196
+ "fallback",
197
+ import_zod.z.boolean().describe("Should be true if none of the other categories apply")
198
+ ]);
199
+ const schema = import_zod.z.object(Object.fromEntries(schemaEntries));
200
+ const structuredParser = import_output_parsers.StructuredOutputParser.fromZodSchema(schema);
201
+ const parser = options.enableAutoFixing ? import_output_parsers.OutputFixingParser.fromLLM(llm, structuredParser) : structuredParser;
202
+ const multiClassPrompt = multiClass ? "Categories are not mutually exclusive, and multiple can be true" : "Categories are mutually exclusive, and only one can be true";
203
+ const fallbackPrompt = {
204
+ other: 'If no categories apply, select the "fallback" option.',
205
+ discard: "If there is not a very fitting category, select none of the categories."
206
+ }[fallback];
207
+ const returnData = Array.from(
208
+ { length: categories.length + (fallback === "other" ? 1 : 0) },
209
+ (_) => []
210
+ );
211
+ for (let itemIdx = 0; itemIdx < items.length; itemIdx++) {
212
+ const item = items[itemIdx];
213
+ item.pairedItem = { item: itemIdx };
214
+ const input = this.getNodeParameter("inputText", itemIdx);
215
+ const inputPrompt = new import_messages.HumanMessage(input);
216
+ const systemPromptTemplateOpt = this.getNodeParameter(
217
+ "options.systemPromptTemplate",
218
+ itemIdx,
219
+ SYSTEM_PROMPT_TEMPLATE
220
+ );
221
+ const systemPromptTemplate = import_prompts.SystemMessagePromptTemplate.fromTemplate(
222
+ `${systemPromptTemplateOpt ?? SYSTEM_PROMPT_TEMPLATE}
197
223
  {format_instructions}
198
224
  ${multiClassPrompt}
199
- ${fallbackPrompt}`);
200
- const messages = [
201
- await systemPromptTemplate.format({
202
- categories: categories.map((cat) => cat.category).join(', '),
203
- format_instructions: parser.getFormatInstructions(),
204
- }),
205
- inputPrompt,
206
- ];
207
- const prompt = prompts_1.ChatPromptTemplate.fromMessages(messages);
208
- const chain = prompt.pipe(llm).pipe(parser).withConfig((0, tracing_1.getTracingConfig)(this));
209
- try {
210
- const output = await chain.invoke(messages);
211
- categories.forEach((cat, idx) => {
212
- if (output[cat.category])
213
- returnData[idx].push(item);
214
- });
215
- if (fallback === 'other' && output.fallback)
216
- returnData[returnData.length - 1].push(item);
217
- }
218
- catch (error) {
219
- if (this.continueOnFail()) {
220
- returnData[0].push({
221
- json: { error: error.message },
222
- pairedItem: { item: itemIdx },
223
- });
224
- continue;
225
- }
226
- throw error;
227
- }
225
+ ${fallbackPrompt}`
226
+ );
227
+ const messages = [
228
+ await systemPromptTemplate.format({
229
+ categories: categories.map((cat) => cat.category).join(", "),
230
+ format_instructions: parser.getFormatInstructions()
231
+ }),
232
+ inputPrompt
233
+ ];
234
+ const prompt = import_prompts.ChatPromptTemplate.fromMessages(messages);
235
+ const chain = prompt.pipe(llm).pipe(parser).withConfig((0, import_tracing.getTracingConfig)(this));
236
+ try {
237
+ const output = await chain.invoke(messages);
238
+ categories.forEach((cat, idx) => {
239
+ if (output[cat.category]) returnData[idx].push(item);
240
+ });
241
+ if (fallback === "other" && output.fallback) returnData[returnData.length - 1].push(item);
242
+ } catch (error) {
243
+ if (this.continueOnFail()) {
244
+ returnData[0].push({
245
+ json: { error: error.message },
246
+ pairedItem: { item: itemIdx }
247
+ });
248
+ continue;
228
249
  }
229
- return returnData;
250
+ throw error;
251
+ }
230
252
  }
253
+ return returnData;
254
+ }
231
255
  }
232
- exports.TextClassifier = TextClassifier;
256
+ // Annotate the CommonJS export names for ESM import in node:
257
+ 0 && (module.exports = {
258
+ TextClassifier
259
+ });
233
260
  //# sourceMappingURL=TextClassifier.node.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"TextClassifier.node.js","sourceRoot":"","sources":["../../../../nodes/chains/TextClassifier/TextClassifier.node.ts"],"names":[],"mappings":";;;AACA,uDAAwD;AACxD,qDAA0F;AAC1F,6DAAsF;AACtF,+CAAuE;AASvE,6BAAwB;AAExB,4CAAkD;AAElD,MAAM,sBAAsB,GAC3B,gMAAgM,CAAC;AAElM,MAAM,iBAAiB,GAAG,CAAC,UAA2B,EAAE,EAAE;IACzD,MAAM,UAAU,GAAK,UAAU,CAAC,UAA0B,EAAE,UAA4B,IAAI,EAAE,CAAC;IAC/F,MAAM,QAAQ,GAAI,UAAU,CAAC,OAAuB,EAAE,QAAkB,CAAC;IACzE,MAAM,GAAG,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;QAClC,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,GAAG,CAAC,QAAQ,EAAE,CAAC;IACpD,CAAC,CAAC,CAAC;IACH,IAAI,QAAQ,KAAK,OAAO;QAAE,GAAG,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,CAAC,CAAC;IAC3E,OAAO,GAAG,CAAC;AACZ,CAAC,CAAC;AAEF,MAAa,cAAc;IAA3B;QACC,gBAAW,GAAyB;YACnC,WAAW,EAAE,iBAAiB;YAC9B,IAAI,EAAE,gBAAgB;YACtB,IAAI,EAAE,SAAS;YACf,SAAS,EAAE,OAAO;YAClB,KAAK,EAAE,CAAC,WAAW,CAAC;YACpB,OAAO,EAAE,CAAC;YACV,WAAW,EAAE,6CAA6C;YAC1D,KAAK,EAAE;gBACN,UAAU,EAAE,CAAC,IAAI,CAAC;gBAClB,aAAa,EAAE;oBACd,EAAE,EAAE,CAAC,QAAQ,EAAE,YAAY,CAAC;iBAC5B;gBACD,SAAS,EAAE;oBACV,oBAAoB,EAAE;wBACrB;4BACC,GAAG,EAAE,wGAAwG;yBAC7G;qBACD;iBACD;aACD;YACD,QAAQ,EAAE;gBACT,IAAI,EAAE,iBAAiB;aACvB;YACD,MAAM,EAAE;gBACP,EAAE,WAAW,EAAE,EAAE,EAAE,IAAI,EAAE,kCAAmB,CAAC,IAAI,EAAE;gBACnD;oBACC,WAAW,EAAE,OAAO;oBACpB,cAAc,EAAE,CAAC;oBACjB,IAAI,EAAE,kCAAmB,CAAC,eAAe;oBACzC,QAAQ,EAAE,IAAI;iBACd;aACD;YACD,OAAO,EAAE,OAAO,iBAAiB,iBAAiB;YAClD,UAAU,EAAE;gBACX;oBACC,WAAW,EAAE,kBAAkB;oBAC/B,IAAI,EAAE,WAAW;oBACjB,IAAI,EAAE,QAAQ;oBACd,QAAQ,EAAE,IAAI;oBACd,OAAO,EAAE,EAAE;oBACX,WAAW,EAAE,4EAA4E;oBACzF,WAAW,EAAE;wBACZ,IAAI,EAAE,CAAC;qBACP;iBACD;gBACD;oBACC,WAAW,EAAE,YAAY;oBACzB,IAAI,EAAE,YAAY;oBAClB,WAAW,EAAE,cAAc;oBAC3B,IAAI,EAAE,iBAAiB;oBACvB,OAAO,EAAE,EAAE;oBACX,WAAW,EAAE;wBACZ,cAAc,EAAE,IAAI;qBACpB;oBACD,OAAO,EAAE;wBACR;4BACC,IAAI,EAAE,YAAY;4BAClB,WAAW,EAAE,YAAY;4BACzB,MAAM,EAAE;gCACP;oCACC,WAAW,EAAE,UAAU;oCACvB,IAAI,EAAE,UAAU;oCAChB,IAAI,EAAE,QAAQ;oCACd,OAAO,EAAE,EAAE;oCACX,WAAW,EAAE,iBAAiB;oCAC9B,QAAQ,EAAE,IAAI;iCACd;gCACD;oCACC,WAAW,EAAE,aAAa;oCAC1B,IAAI,EAAE,aAAa;oCACnB,IAAI,EAAE,QAAQ;oCACd,OAAO,EAAE,EAAE;oCACX,WAAW,EAAE,4CAA4C;iCACzD;6BACD;yBACD;qBACD;iBACD;gBACD;oBACC,WAAW,EAAE,SAAS;oBACtB,IAAI,EAAE,SAAS;oBACf,IAAI,EAAE,YAAY;oBAClB,OAAO,EAAE,EAAE;oBACX,WAAW,EAAE,YAAY;oBACzB,OAAO,EAAE;wBACR;4BACC,WAAW,EAAE,mCAAmC;4BAChD,IAAI,EAAE,YAAY;4BAClB,IAAI,EAAE,SAAS;4BACf,OAAO,EAAE,KAAK;yBACd;wBACD;4BACC,WAAW,EAAE,qBAAqB;4BAClC,IAAI,EAAE,UAAU;4BAChB,IAAI,EAAE,SAAS;4BACf,OAAO,EAAE,SAAS;4BAClB,WAAW,EAAE,+DAA+D;4BAC5E,OAAO,EAAE;gCACR;oCACC,IAAI,EAAE,cAAc;oCACpB,KAAK,EAAE,SAAS;oCAChB,WAAW,EAAE,6CAA6C;iCAC1D;gCACD;oCACC,IAAI,EAAE,iCAAiC;oCACvC,KAAK,EAAE,OAAO;oCACd,WAAW,EAAE,gDAAgD;iCAC7D;6BACD;yBACD;wBACD;4BACC,WAAW,EAAE,wBAAwB;4BACrC,IAAI,EAAE,sBAAsB;4BAC5B,IAAI,EAAE,QAAQ;4BACd,OAAO,EAAE,sBAAsB;4BAC/B,WAAW,EAAE,sDAAsD;4BACnE,WAAW,EAAE;gCACZ,IAAI,EAAE,CAAC;6BACP;yBACD;wBACD;4BACC,WAAW,EAAE,oBAAoB;4BACjC,IAAI,EAAE,kBAAkB;4BACxB,IAAI,EAAE,SAAS;4BACf,OAAO,EAAE,IAAI;4BACb,WAAW,EACV,wFAAwF;yBACzF;qBACD;iBACD;aACD;SACD,CAAC;IAiHH,CAAC;IA/GA,KAAK,CAAC,OAAO;QACZ,MAAM,KAAK,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;QAElC,MAAM,GAAG,GAAG,CAAC,MAAM,IAAI,CAAC,sBAAsB,CAC7C,kCAAmB,CAAC,eAAe,EACnC,CAAC,CACD,CAAsB,CAAC;QAExB,MAAM,UAAU,GAAG,IAAI,CAAC,gBAAgB,CAAC,uBAAuB,EAAE,CAAC,EAAE,EAAE,CAGrE,CAAC;QAEH,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC7B,MAAM,IAAI,iCAAkB,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,uCAAuC,CAAC,CAAC;QACvF,CAAC;QAED,MAAM,OAAO,GAAG,IAAI,CAAC,gBAAgB,CAAC,SAAS,EAAE,CAAC,EAAE,EAAE,CAKrD,CAAC;QACF,MAAM,UAAU,GAAG,OAAO,EAAE,UAAU,IAAI,KAAK,CAAC;QAChD,MAAM,QAAQ,GAAG,OAAO,EAAE,QAAQ,IAAI,SAAS,CAAC;QAEhD,MAAM,aAAa,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC;YAC7C,GAAG,CAAC,QAAQ;YACZ,OAAC;iBACC,OAAO,EAAE;iBACT,QAAQ,CACR,6CAA6C,GAAG,CAAC,QAAQ,mBAAmB,GAAG,CAAC,WAAW,GAAG,CAC9F;SACF,CAAC,CAAC;QACH,IAAI,QAAQ,KAAK,OAAO;YACvB,aAAa,CAAC,IAAI,CAAC;gBAClB,UAAU;gBACV,OAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,CAAC,sDAAsD,CAAC;aAC5E,CAAC,CAAC;QACJ,MAAM,MAAM,GAAG,OAAC,CAAC,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC,CAAC;QAE3D,MAAM,gBAAgB,GAAG,uCAAsB,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;QAEtE,MAAM,MAAM,GAAG,OAAO,CAAC,gBAAgB;YACtC,CAAC,CAAC,mCAAkB,CAAC,OAAO,CAAC,GAAG,EAAE,gBAAgB,CAAC;YACnD,CAAC,CAAC,gBAAgB,CAAC;QAEpB,MAAM,gBAAgB,GAAG,UAAU;YAClC,CAAC,CAAC,iEAAiE;YACnE,CAAC,CAAC,6DAA6D,CAAC;QAEjE,MAAM,cAAc,GAAG;YACtB,KAAK,EAAE,uDAAuD;YAC9D,OAAO,EAAE,yEAAyE;SAClF,CAAC,QAAQ,CAAC,CAAC;QAEZ,MAAM,UAAU,GAA2B,KAAK,CAAC,IAAI,CACpD,EAAE,MAAM,EAAE,UAAU,CAAC,MAAM,GAAG,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAC9D,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CACT,CAAC;QACF,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,GAAG,KAAK,CAAC,MAAM,EAAE,OAAO,EAAE,EAAE,CAAC;YACzD,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC;YAC5B,IAAI,CAAC,UAAU,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;YACpC,MAAM,KAAK,GAAG,IAAI,CAAC,gBAAgB,CAAC,WAAW,EAAE,OAAO,CAAW,CAAC;YACpE,MAAM,WAAW,GAAG,IAAI,uBAAY,CAAC,KAAK,CAAC,CAAC;YAE5C,MAAM,uBAAuB,GAAG,IAAI,CAAC,gBAAgB,CACpD,8BAA8B,EAC9B,OAAO,EACP,sBAAsB,CACZ,CAAC;YACZ,MAAM,oBAAoB,GAAG,qCAA2B,CAAC,YAAY,CACpE,GAAG,uBAAuB,IAAI,sBAAsB;;EAEtD,gBAAgB;EAChB,cAAc,EAAE,CACd,CAAC;YAEF,MAAM,QAAQ,GAAG;gBAChB,MAAM,oBAAoB,CAAC,MAAM,CAAC;oBACjC,UAAU,EAAE,UAAU,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;oBAC5D,mBAAmB,EAAE,MAAM,CAAC,qBAAqB,EAAE;iBACnD,CAAC;gBACF,WAAW;aACX,CAAC;YACF,MAAM,MAAM,GAAG,4BAAkB,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;YACzD,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,UAAU,CAAC,IAAA,0BAAgB,EAAC,IAAI,CAAC,CAAC,CAAC;YAE/E,IAAI,CAAC;gBACJ,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;gBAE5C,UAAU,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;oBAC/B,IAAI,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;wBAAE,UAAU,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACtD,CAAC,CAAC,CAAC;gBACH,IAAI,QAAQ,KAAK,OAAO,IAAI,MAAM,CAAC,QAAQ;oBAAE,UAAU,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC3F,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBAChB,IAAI,IAAI,CAAC,cAAc,EAAE,EAAE,CAAC;oBAC3B,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;wBAClB,IAAI,EAAE,EAAE,KAAK,EAAE,KAAK,CAAC,OAAO,EAAE;wBAC9B,UAAU,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE;qBAC7B,CAAC,CAAC;oBAEH,SAAS;gBACV,CAAC;gBAED,MAAM,KAAK,CAAC;YACb,CAAC;QACF,CAAC;QAED,OAAO,UAAU,CAAC;IACnB,CAAC;CACD;AAtPD,wCAsPC"}
1
+ {"version":3,"sources":["../../../../nodes/chains/TextClassifier/TextClassifier.node.ts"],"sourcesContent":["import type { BaseLanguageModel } from '@langchain/core/language_models/base';\nimport { HumanMessage } from '@langchain/core/messages';\nimport { SystemMessagePromptTemplate, ChatPromptTemplate } from '@langchain/core/prompts';\nimport { OutputFixingParser, StructuredOutputParser } from 'langchain/output_parsers';\nimport { NodeOperationError, NodeConnectionTypes } from 'n8n-workflow';\nimport type {\n\tIDataObject,\n\tIExecuteFunctions,\n\tINodeExecutionData,\n\tINodeParameters,\n\tINodeType,\n\tINodeTypeDescription,\n} from 'n8n-workflow';\nimport { z } from 'zod';\n\nimport { getTracingConfig } from '@utils/tracing';\n\nconst SYSTEM_PROMPT_TEMPLATE =\n\t\"Please classify the text provided by the user into one of the following categories: {categories}, and use the provided formatting instructions below. Don't explain, and only output the json.\";\n\nconst configuredOutputs = (parameters: INodeParameters) => {\n\tconst categories = ((parameters.categories as IDataObject)?.categories as IDataObject[]) ?? [];\n\tconst fallback = (parameters.options as IDataObject)?.fallback as string;\n\tconst ret = categories.map((cat) => {\n\t\treturn { type: 'main', displayName: cat.category };\n\t});\n\tif (fallback === 'other') ret.push({ type: 'main', displayName: 'Other' });\n\treturn ret;\n};\n\nexport class TextClassifier implements INodeType {\n\tdescription: INodeTypeDescription = {\n\t\tdisplayName: 'Text Classifier',\n\t\tname: 'textClassifier',\n\t\ticon: 'fa:tags',\n\t\ticonColor: 'black',\n\t\tgroup: ['transform'],\n\t\tversion: 1,\n\t\tdescription: 'Classify your text into distinct categories',\n\t\tcodex: {\n\t\t\tcategories: ['AI'],\n\t\t\tsubcategories: {\n\t\t\t\tAI: ['Chains', 'Root Nodes'],\n\t\t\t},\n\t\t\tresources: {\n\t\t\t\tprimaryDocumentation: [\n\t\t\t\t\t{\n\t\t\t\t\t\turl: 'https://docs.n8n.io/integrations/builtin/cluster-nodes/root-nodes/n8n-nodes-langchain.text-classifier/',\n\t\t\t\t\t},\n\t\t\t\t],\n\t\t\t},\n\t\t},\n\t\tdefaults: {\n\t\t\tname: 'Text Classifier',\n\t\t},\n\t\tinputs: [\n\t\t\t{ displayName: '', type: NodeConnectionTypes.Main },\n\t\t\t{\n\t\t\t\tdisplayName: 'Model',\n\t\t\t\tmaxConnections: 1,\n\t\t\t\ttype: NodeConnectionTypes.AiLanguageModel,\n\t\t\t\trequired: true,\n\t\t\t},\n\t\t],\n\t\toutputs: `={{(${configuredOutputs})($parameter)}}`,\n\t\tproperties: [\n\t\t\t{\n\t\t\t\tdisplayName: 'Text to Classify',\n\t\t\t\tname: 'inputText',\n\t\t\t\ttype: 'string',\n\t\t\t\trequired: true,\n\t\t\t\tdefault: '',\n\t\t\t\tdescription: 'Use an expression to reference data in previous nodes or enter static text',\n\t\t\t\ttypeOptions: {\n\t\t\t\t\trows: 2,\n\t\t\t\t},\n\t\t\t},\n\t\t\t{\n\t\t\t\tdisplayName: 'Categories',\n\t\t\t\tname: 'categories',\n\t\t\t\tplaceholder: 'Add Category',\n\t\t\t\ttype: 'fixedCollection',\n\t\t\t\tdefault: {},\n\t\t\t\ttypeOptions: {\n\t\t\t\t\tmultipleValues: true,\n\t\t\t\t},\n\t\t\t\toptions: [\n\t\t\t\t\t{\n\t\t\t\t\t\tname: 'categories',\n\t\t\t\t\t\tdisplayName: 'Categories',\n\t\t\t\t\t\tvalues: [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tdisplayName: 'Category',\n\t\t\t\t\t\t\t\tname: 'category',\n\t\t\t\t\t\t\t\ttype: 'string',\n\t\t\t\t\t\t\t\tdefault: '',\n\t\t\t\t\t\t\t\tdescription: 'Category to add',\n\t\t\t\t\t\t\t\trequired: true,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tdisplayName: 'Description',\n\t\t\t\t\t\t\t\tname: 'description',\n\t\t\t\t\t\t\t\ttype: 'string',\n\t\t\t\t\t\t\t\tdefault: '',\n\t\t\t\t\t\t\t\tdescription: \"Describe your category if it's not obvious\",\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t],\n\t\t\t\t\t},\n\t\t\t\t],\n\t\t\t},\n\t\t\t{\n\t\t\t\tdisplayName: 'Options',\n\t\t\t\tname: 'options',\n\t\t\t\ttype: 'collection',\n\t\t\t\tdefault: {},\n\t\t\t\tplaceholder: 'Add Option',\n\t\t\t\toptions: [\n\t\t\t\t\t{\n\t\t\t\t\t\tdisplayName: 'Allow Multiple Classes To Be True',\n\t\t\t\t\t\tname: 'multiClass',\n\t\t\t\t\t\ttype: 'boolean',\n\t\t\t\t\t\tdefault: false,\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tdisplayName: 'When No Clear Match',\n\t\t\t\t\t\tname: 'fallback',\n\t\t\t\t\t\ttype: 'options',\n\t\t\t\t\t\tdefault: 'discard',\n\t\t\t\t\t\tdescription: 'What to do with items that don’t match the categories exactly',\n\t\t\t\t\t\toptions: [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tname: 'Discard Item',\n\t\t\t\t\t\t\t\tvalue: 'discard',\n\t\t\t\t\t\t\t\tdescription: 'Ignore the item and drop it from the output',\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tname: \"Output on Extra, 'Other' Branch\",\n\t\t\t\t\t\t\t\tvalue: 'other',\n\t\t\t\t\t\t\t\tdescription: \"Create a separate output branch called 'Other'\",\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t],\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tdisplayName: 'System Prompt Template',\n\t\t\t\t\t\tname: 'systemPromptTemplate',\n\t\t\t\t\t\ttype: 'string',\n\t\t\t\t\t\tdefault: SYSTEM_PROMPT_TEMPLATE,\n\t\t\t\t\t\tdescription: 'String to use directly as the system prompt template',\n\t\t\t\t\t\ttypeOptions: {\n\t\t\t\t\t\t\trows: 6,\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tdisplayName: 'Enable Auto-Fixing',\n\t\t\t\t\t\tname: 'enableAutoFixing',\n\t\t\t\t\t\ttype: 'boolean',\n\t\t\t\t\t\tdefault: true,\n\t\t\t\t\t\tdescription:\n\t\t\t\t\t\t\t'Whether to enable auto-fixing (may trigger an additional LLM call if output is broken)',\n\t\t\t\t\t},\n\t\t\t\t],\n\t\t\t},\n\t\t],\n\t};\n\n\tasync execute(this: IExecuteFunctions): Promise<INodeExecutionData[][]> {\n\t\tconst items = this.getInputData();\n\n\t\tconst llm = (await this.getInputConnectionData(\n\t\t\tNodeConnectionTypes.AiLanguageModel,\n\t\t\t0,\n\t\t)) as BaseLanguageModel;\n\n\t\tconst categories = this.getNodeParameter('categories.categories', 0, []) as Array<{\n\t\t\tcategory: string;\n\t\t\tdescription: string;\n\t\t}>;\n\n\t\tif (categories.length === 0) {\n\t\t\tthrow new NodeOperationError(this.getNode(), 'At least one category must be defined');\n\t\t}\n\n\t\tconst options = this.getNodeParameter('options', 0, {}) as {\n\t\t\tmultiClass: boolean;\n\t\t\tfallback?: string;\n\t\t\tsystemPromptTemplate?: string;\n\t\t\tenableAutoFixing: boolean;\n\t\t};\n\t\tconst multiClass = options?.multiClass ?? false;\n\t\tconst fallback = options?.fallback ?? 'discard';\n\n\t\tconst schemaEntries = categories.map((cat) => [\n\t\t\tcat.category,\n\t\t\tz\n\t\t\t\t.boolean()\n\t\t\t\t.describe(\n\t\t\t\t\t`Should be true if the input has category \"${cat.category}\" (description: ${cat.description})`,\n\t\t\t\t),\n\t\t]);\n\t\tif (fallback === 'other')\n\t\t\tschemaEntries.push([\n\t\t\t\t'fallback',\n\t\t\t\tz.boolean().describe('Should be true if none of the other categories apply'),\n\t\t\t]);\n\t\tconst schema = z.object(Object.fromEntries(schemaEntries));\n\n\t\tconst structuredParser = StructuredOutputParser.fromZodSchema(schema);\n\n\t\tconst parser = options.enableAutoFixing\n\t\t\t? OutputFixingParser.fromLLM(llm, structuredParser)\n\t\t\t: structuredParser;\n\n\t\tconst multiClassPrompt = multiClass\n\t\t\t? 'Categories are not mutually exclusive, and multiple can be true'\n\t\t\t: 'Categories are mutually exclusive, and only one can be true';\n\n\t\tconst fallbackPrompt = {\n\t\t\tother: 'If no categories apply, select the \"fallback\" option.',\n\t\t\tdiscard: 'If there is not a very fitting category, select none of the categories.',\n\t\t}[fallback];\n\n\t\tconst returnData: INodeExecutionData[][] = Array.from(\n\t\t\t{ length: categories.length + (fallback === 'other' ? 1 : 0) },\n\t\t\t(_) => [],\n\t\t);\n\t\tfor (let itemIdx = 0; itemIdx < items.length; itemIdx++) {\n\t\t\tconst item = items[itemIdx];\n\t\t\titem.pairedItem = { item: itemIdx };\n\t\t\tconst input = this.getNodeParameter('inputText', itemIdx) as string;\n\t\t\tconst inputPrompt = new HumanMessage(input);\n\n\t\t\tconst systemPromptTemplateOpt = this.getNodeParameter(\n\t\t\t\t'options.systemPromptTemplate',\n\t\t\t\titemIdx,\n\t\t\t\tSYSTEM_PROMPT_TEMPLATE,\n\t\t\t) as string;\n\t\t\tconst systemPromptTemplate = SystemMessagePromptTemplate.fromTemplate(\n\t\t\t\t`${systemPromptTemplateOpt ?? SYSTEM_PROMPT_TEMPLATE}\n{format_instructions}\n${multiClassPrompt}\n${fallbackPrompt}`,\n\t\t\t);\n\n\t\t\tconst messages = [\n\t\t\t\tawait systemPromptTemplate.format({\n\t\t\t\t\tcategories: categories.map((cat) => cat.category).join(', '),\n\t\t\t\t\tformat_instructions: parser.getFormatInstructions(),\n\t\t\t\t}),\n\t\t\t\tinputPrompt,\n\t\t\t];\n\t\t\tconst prompt = ChatPromptTemplate.fromMessages(messages);\n\t\t\tconst chain = prompt.pipe(llm).pipe(parser).withConfig(getTracingConfig(this));\n\n\t\t\ttry {\n\t\t\t\tconst output = await chain.invoke(messages);\n\n\t\t\t\tcategories.forEach((cat, idx) => {\n\t\t\t\t\tif (output[cat.category]) returnData[idx].push(item);\n\t\t\t\t});\n\t\t\t\tif (fallback === 'other' && output.fallback) returnData[returnData.length - 1].push(item);\n\t\t\t} catch (error) {\n\t\t\t\tif (this.continueOnFail()) {\n\t\t\t\t\treturnData[0].push({\n\t\t\t\t\t\tjson: { error: error.message },\n\t\t\t\t\t\tpairedItem: { item: itemIdx },\n\t\t\t\t\t});\n\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\n\t\t\t\tthrow error;\n\t\t\t}\n\t\t}\n\n\t\treturn returnData;\n\t}\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,sBAA6B;AAC7B,qBAAgE;AAChE,4BAA2D;AAC3D,0BAAwD;AASxD,iBAAkB;AAElB,qBAAiC;AAEjC,MAAM,yBACL;AAED,MAAM,oBAAoB,CAAC,eAAgC;AAC1D,QAAM,aAAe,WAAW,YAA4B,cAAgC,CAAC;AAC7F,QAAM,WAAY,WAAW,SAAyB;AACtD,QAAM,MAAM,WAAW,IAAI,CAAC,QAAQ;AACnC,WAAO,EAAE,MAAM,QAAQ,aAAa,IAAI,SAAS;AAAA,EAClD,CAAC;AACD,MAAI,aAAa,QAAS,KAAI,KAAK,EAAE,MAAM,QAAQ,aAAa,QAAQ,CAAC;AACzE,SAAO;AACR;AAEO,MAAM,eAAoC;AAAA,EAA1C;AACN,uBAAoC;AAAA,MACnC,aAAa;AAAA,MACb,MAAM;AAAA,MACN,MAAM;AAAA,MACN,WAAW;AAAA,MACX,OAAO,CAAC,WAAW;AAAA,MACnB,SAAS;AAAA,MACT,aAAa;AAAA,MACb,OAAO;AAAA,QACN,YAAY,CAAC,IAAI;AAAA,QACjB,eAAe;AAAA,UACd,IAAI,CAAC,UAAU,YAAY;AAAA,QAC5B;AAAA,QACA,WAAW;AAAA,UACV,sBAAsB;AAAA,YACrB;AAAA,cACC,KAAK;AAAA,YACN;AAAA,UACD;AAAA,QACD;AAAA,MACD;AAAA,MACA,UAAU;AAAA,QACT,MAAM;AAAA,MACP;AAAA,MACA,QAAQ;AAAA,QACP,EAAE,aAAa,IAAI,MAAM,wCAAoB,KAAK;AAAA,QAClD;AAAA,UACC,aAAa;AAAA,UACb,gBAAgB;AAAA,UAChB,MAAM,wCAAoB;AAAA,UAC1B,UAAU;AAAA,QACX;AAAA,MACD;AAAA,MACA,SAAS,OAAO,iBAAiB;AAAA,MACjC,YAAY;AAAA,QACX;AAAA,UACC,aAAa;AAAA,UACb,MAAM;AAAA,UACN,MAAM;AAAA,UACN,UAAU;AAAA,UACV,SAAS;AAAA,UACT,aAAa;AAAA,UACb,aAAa;AAAA,YACZ,MAAM;AAAA,UACP;AAAA,QACD;AAAA,QACA;AAAA,UACC,aAAa;AAAA,UACb,MAAM;AAAA,UACN,aAAa;AAAA,UACb,MAAM;AAAA,UACN,SAAS,CAAC;AAAA,UACV,aAAa;AAAA,YACZ,gBAAgB;AAAA,UACjB;AAAA,UACA,SAAS;AAAA,YACR;AAAA,cACC,MAAM;AAAA,cACN,aAAa;AAAA,cACb,QAAQ;AAAA,gBACP;AAAA,kBACC,aAAa;AAAA,kBACb,MAAM;AAAA,kBACN,MAAM;AAAA,kBACN,SAAS;AAAA,kBACT,aAAa;AAAA,kBACb,UAAU;AAAA,gBACX;AAAA,gBACA;AAAA,kBACC,aAAa;AAAA,kBACb,MAAM;AAAA,kBACN,MAAM;AAAA,kBACN,SAAS;AAAA,kBACT,aAAa;AAAA,gBACd;AAAA,cACD;AAAA,YACD;AAAA,UACD;AAAA,QACD;AAAA,QACA;AAAA,UACC,aAAa;AAAA,UACb,MAAM;AAAA,UACN,MAAM;AAAA,UACN,SAAS,CAAC;AAAA,UACV,aAAa;AAAA,UACb,SAAS;AAAA,YACR;AAAA,cACC,aAAa;AAAA,cACb,MAAM;AAAA,cACN,MAAM;AAAA,cACN,SAAS;AAAA,YACV;AAAA,YACA;AAAA,cACC,aAAa;AAAA,cACb,MAAM;AAAA,cACN,MAAM;AAAA,cACN,SAAS;AAAA,cACT,aAAa;AAAA,cACb,SAAS;AAAA,gBACR;AAAA,kBACC,MAAM;AAAA,kBACN,OAAO;AAAA,kBACP,aAAa;AAAA,gBACd;AAAA,gBACA;AAAA,kBACC,MAAM;AAAA,kBACN,OAAO;AAAA,kBACP,aAAa;AAAA,gBACd;AAAA,cACD;AAAA,YACD;AAAA,YACA;AAAA,cACC,aAAa;AAAA,cACb,MAAM;AAAA,cACN,MAAM;AAAA,cACN,SAAS;AAAA,cACT,aAAa;AAAA,cACb,aAAa;AAAA,gBACZ,MAAM;AAAA,cACP;AAAA,YACD;AAAA,YACA;AAAA,cACC,aAAa;AAAA,cACb,MAAM;AAAA,cACN,MAAM;AAAA,cACN,SAAS;AAAA,cACT,aACC;AAAA,YACF;AAAA,UACD;AAAA,QACD;AAAA,MACD;AAAA,IACD;AAAA;AAAA,EAEA,MAAM,UAAkE;AACvE,UAAM,QAAQ,KAAK,aAAa;AAEhC,UAAM,MAAO,MAAM,KAAK;AAAA,MACvB,wCAAoB;AAAA,MACpB;AAAA,IACD;AAEA,UAAM,aAAa,KAAK,iBAAiB,yBAAyB,GAAG,CAAC,CAAC;AAKvE,QAAI,WAAW,WAAW,GAAG;AAC5B,YAAM,IAAI,uCAAmB,KAAK,QAAQ,GAAG,uCAAuC;AAAA,IACrF;AAEA,UAAM,UAAU,KAAK,iBAAiB,WAAW,GAAG,CAAC,CAAC;AAMtD,UAAM,aAAa,SAAS,cAAc;AAC1C,UAAM,WAAW,SAAS,YAAY;AAEtC,UAAM,gBAAgB,WAAW,IAAI,CAAC,QAAQ;AAAA,MAC7C,IAAI;AAAA,MACJ,aACE,QAAQ,EACR;AAAA,QACA,6CAA6C,IAAI,QAAQ,mBAAmB,IAAI,WAAW;AAAA,MAC5F;AAAA,IACF,CAAC;AACD,QAAI,aAAa;AAChB,oBAAc,KAAK;AAAA,QAClB;AAAA,QACA,aAAE,QAAQ,EAAE,SAAS,sDAAsD;AAAA,MAC5E,CAAC;AACF,UAAM,SAAS,aAAE,OAAO,OAAO,YAAY,aAAa,CAAC;AAEzD,UAAM,mBAAmB,6CAAuB,cAAc,MAAM;AAEpE,UAAM,SAAS,QAAQ,mBACpB,yCAAmB,QAAQ,KAAK,gBAAgB,IAChD;AAEH,UAAM,mBAAmB,aACtB,oEACA;AAEH,UAAM,iBAAiB;AAAA,MACtB,OAAO;AAAA,MACP,SAAS;AAAA,IACV,EAAE,QAAQ;AAEV,UAAM,aAAqC,MAAM;AAAA,MAChD,EAAE,QAAQ,WAAW,UAAU,aAAa,UAAU,IAAI,GAAG;AAAA,MAC7D,CAAC,MAAM,CAAC;AAAA,IACT;AACA,aAAS,UAAU,GAAG,UAAU,MAAM,QAAQ,WAAW;AACxD,YAAM,OAAO,MAAM,OAAO;AAC1B,WAAK,aAAa,EAAE,MAAM,QAAQ;AAClC,YAAM,QAAQ,KAAK,iBAAiB,aAAa,OAAO;AACxD,YAAM,cAAc,IAAI,6BAAa,KAAK;AAE1C,YAAM,0BAA0B,KAAK;AAAA,QACpC;AAAA,QACA;AAAA,QACA;AAAA,MACD;AACA,YAAM,uBAAuB,2CAA4B;AAAA,QACxD,GAAG,2BAA2B,sBAAsB;AAAA;AAAA,EAEtD,gBAAgB;AAAA,EAChB,cAAc;AAAA,MACb;AAEA,YAAM,WAAW;AAAA,QAChB,MAAM,qBAAqB,OAAO;AAAA,UACjC,YAAY,WAAW,IAAI,CAAC,QAAQ,IAAI,QAAQ,EAAE,KAAK,IAAI;AAAA,UAC3D,qBAAqB,OAAO,sBAAsB;AAAA,QACnD,CAAC;AAAA,QACD;AAAA,MACD;AACA,YAAM,SAAS,kCAAmB,aAAa,QAAQ;AACvD,YAAM,QAAQ,OAAO,KAAK,GAAG,EAAE,KAAK,MAAM,EAAE,eAAW,iCAAiB,IAAI,CAAC;AAE7E,UAAI;AACH,cAAM,SAAS,MAAM,MAAM,OAAO,QAAQ;AAE1C,mBAAW,QAAQ,CAAC,KAAK,QAAQ;AAChC,cAAI,OAAO,IAAI,QAAQ,EAAG,YAAW,GAAG,EAAE,KAAK,IAAI;AAAA,QACpD,CAAC;AACD,YAAI,aAAa,WAAW,OAAO,SAAU,YAAW,WAAW,SAAS,CAAC,EAAE,KAAK,IAAI;AAAA,MACzF,SAAS,OAAO;AACf,YAAI,KAAK,eAAe,GAAG;AAC1B,qBAAW,CAAC,EAAE,KAAK;AAAA,YAClB,MAAM,EAAE,OAAO,MAAM,QAAQ;AAAA,YAC7B,YAAY,EAAE,MAAM,QAAQ;AAAA,UAC7B,CAAC;AAED;AAAA,QACD;AAEA,cAAM;AAAA,MACP;AAAA,IACD;AAEA,WAAO;AAAA,EACR;AACD;","names":[]}