@atom8n/n8n-nodes-langchain 2.2.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 (1000) hide show
  1. package/README.md +9 -0
  2. package/dist/credentials/AnthropicApi.credentials.js +106 -0
  3. package/dist/credentials/AnthropicApi.credentials.js.map +1 -0
  4. package/dist/credentials/AzureAiSearchApi.credentials.js +75 -0
  5. package/dist/credentials/AzureAiSearchApi.credentials.js.map +1 -0
  6. package/dist/credentials/AzureEntraCognitiveServicesOAuth2Api.credentials.js +133 -0
  7. package/dist/credentials/AzureEntraCognitiveServicesOAuth2Api.credentials.js.map +1 -0
  8. package/dist/credentials/AzureOpenAiApi.credentials.js +74 -0
  9. package/dist/credentials/AzureOpenAiApi.credentials.js.map +1 -0
  10. package/dist/credentials/CohereApi.credentials.js +65 -0
  11. package/dist/credentials/CohereApi.credentials.js.map +1 -0
  12. package/dist/credentials/DeepSeekApi.credentials.js +65 -0
  13. package/dist/credentials/DeepSeekApi.credentials.js.map +1 -0
  14. package/dist/credentials/GooglePalmApi.credentials.js +65 -0
  15. package/dist/credentials/GooglePalmApi.credentials.js.map +1 -0
  16. package/dist/credentials/GroqApi.credentials.js +59 -0
  17. package/dist/credentials/GroqApi.credentials.js.map +1 -0
  18. package/dist/credentials/HuggingFaceApi.credentials.js +59 -0
  19. package/dist/credentials/HuggingFaceApi.credentials.js.map +1 -0
  20. package/dist/credentials/LemonadeApi.credentials.js +70 -0
  21. package/dist/credentials/LemonadeApi.credentials.js.map +1 -0
  22. package/dist/credentials/McpOAuth2Api.credentials.js +44 -0
  23. package/dist/credentials/McpOAuth2Api.credentials.js.map +1 -0
  24. package/dist/credentials/MilvusApi.credentials.js +72 -0
  25. package/dist/credentials/MilvusApi.credentials.js.map +1 -0
  26. package/dist/credentials/MistralCloudApi.credentials.js +60 -0
  27. package/dist/credentials/MistralCloudApi.credentials.js.map +1 -0
  28. package/dist/credentials/MotorheadApi.credentials.js +72 -0
  29. package/dist/credentials/MotorheadApi.credentials.js.map +1 -0
  30. package/dist/credentials/OllamaApi.credentials.js +68 -0
  31. package/dist/credentials/OllamaApi.credentials.js.map +1 -0
  32. package/dist/credentials/OpenRouterApi.credentials.js +65 -0
  33. package/dist/credentials/OpenRouterApi.credentials.js.map +1 -0
  34. package/dist/credentials/PineconeApi.credentials.js +61 -0
  35. package/dist/credentials/PineconeApi.credentials.js.map +1 -0
  36. package/dist/credentials/QdrantApi.credentials.js +66 -0
  37. package/dist/credentials/QdrantApi.credentials.js.map +1 -0
  38. package/dist/credentials/SearXngApi.credentials.js +44 -0
  39. package/dist/credentials/SearXngApi.credentials.js.map +1 -0
  40. package/dist/credentials/SerpApi.credentials.js +59 -0
  41. package/dist/credentials/SerpApi.credentials.js.map +1 -0
  42. package/dist/credentials/VercelAiGatewayApi.credentials.js +81 -0
  43. package/dist/credentials/VercelAiGatewayApi.credentials.js.map +1 -0
  44. package/dist/credentials/WeaviateApi.credentials.js +164 -0
  45. package/dist/credentials/WeaviateApi.credentials.js.map +1 -0
  46. package/dist/credentials/WolframAlphaApi.credentials.js +63 -0
  47. package/dist/credentials/WolframAlphaApi.credentials.js.map +1 -0
  48. package/dist/credentials/XAiApi.credentials.js +65 -0
  49. package/dist/credentials/XAiApi.credentials.js.map +1 -0
  50. package/dist/credentials/XataApi.credentials.js +73 -0
  51. package/dist/credentials/XataApi.credentials.js.map +1 -0
  52. package/dist/credentials/ZepApi.credentials.js +84 -0
  53. package/dist/credentials/ZepApi.credentials.js.map +1 -0
  54. package/dist/known/credentials.json +210 -0
  55. package/dist/known/nodes.json +426 -0
  56. package/dist/methods/defined.json +11 -0
  57. package/dist/methods/referenced.json +11 -0
  58. package/dist/nodes/Guardrails/Guardrails.node.js +62 -0
  59. package/dist/nodes/Guardrails/Guardrails.node.js.map +1 -0
  60. package/dist/nodes/Guardrails/actions/checks/jailbreak.js +50 -0
  61. package/dist/nodes/Guardrails/actions/checks/jailbreak.js.map +1 -0
  62. package/dist/nodes/Guardrails/actions/checks/keywords.js +84 -0
  63. package/dist/nodes/Guardrails/actions/checks/keywords.js.map +1 -0
  64. package/dist/nodes/Guardrails/actions/checks/nsfw.js +53 -0
  65. package/dist/nodes/Guardrails/actions/checks/nsfw.js.map +1 -0
  66. package/dist/nodes/Guardrails/actions/checks/pii.js +232 -0
  67. package/dist/nodes/Guardrails/actions/checks/pii.js.map +1 -0
  68. package/dist/nodes/Guardrails/actions/checks/secretKeys.js +201 -0
  69. package/dist/nodes/Guardrails/actions/checks/secretKeys.js.map +1 -0
  70. package/dist/nodes/Guardrails/actions/checks/topicalAlignment.js +38 -0
  71. package/dist/nodes/Guardrails/actions/checks/topicalAlignment.js.map +1 -0
  72. package/dist/nodes/Guardrails/actions/checks/urls.js +245 -0
  73. package/dist/nodes/Guardrails/actions/checks/urls.js.map +1 -0
  74. package/dist/nodes/Guardrails/actions/execute.js +68 -0
  75. package/dist/nodes/Guardrails/actions/execute.js.map +1 -0
  76. package/dist/nodes/Guardrails/actions/process.js +223 -0
  77. package/dist/nodes/Guardrails/actions/process.js.map +1 -0
  78. package/dist/nodes/Guardrails/actions/types.js +35 -0
  79. package/dist/nodes/Guardrails/actions/types.js.map +1 -0
  80. package/dist/nodes/Guardrails/description.js +415 -0
  81. package/dist/nodes/Guardrails/description.js.map +1 -0
  82. package/dist/nodes/Guardrails/guardrails.svg +11 -0
  83. package/dist/nodes/Guardrails/helpers/base.js +67 -0
  84. package/dist/nodes/Guardrails/helpers/base.js.map +1 -0
  85. package/dist/nodes/Guardrails/helpers/common.js +45 -0
  86. package/dist/nodes/Guardrails/helpers/common.js.map +1 -0
  87. package/dist/nodes/Guardrails/helpers/configureNodeInputs.js +84 -0
  88. package/dist/nodes/Guardrails/helpers/configureNodeInputs.js.map +1 -0
  89. package/dist/nodes/Guardrails/helpers/mappers.js +100 -0
  90. package/dist/nodes/Guardrails/helpers/mappers.js.map +1 -0
  91. package/dist/nodes/Guardrails/helpers/model.js +144 -0
  92. package/dist/nodes/Guardrails/helpers/model.js.map +1 -0
  93. package/dist/nodes/Guardrails/helpers/preflight.js +61 -0
  94. package/dist/nodes/Guardrails/helpers/preflight.js.map +1 -0
  95. package/dist/nodes/Guardrails/v1/GuardrailsV1.node.js +59 -0
  96. package/dist/nodes/Guardrails/v1/GuardrailsV1.node.js.map +1 -0
  97. package/dist/nodes/Guardrails/v2/GuardrailsV2.node.js +59 -0
  98. package/dist/nodes/Guardrails/v2/GuardrailsV2.node.js.map +1 -0
  99. package/dist/nodes/ModelSelector/ModelSelector.node.js +188 -0
  100. package/dist/nodes/ModelSelector/ModelSelector.node.js.map +1 -0
  101. package/dist/nodes/ModelSelector/helpers.js +85 -0
  102. package/dist/nodes/ModelSelector/helpers.js.map +1 -0
  103. package/dist/nodes/ToolExecutor/ToolExecutor.node.js +105 -0
  104. package/dist/nodes/ToolExecutor/ToolExecutor.node.js.map +1 -0
  105. package/dist/nodes/ToolExecutor/ToolExecutor.node.json +17 -0
  106. package/dist/nodes/ToolExecutor/utils/convertToSchema.js +64 -0
  107. package/dist/nodes/ToolExecutor/utils/convertToSchema.js.map +1 -0
  108. package/dist/nodes/ToolExecutor/utils/executeTool.js +39 -0
  109. package/dist/nodes/ToolExecutor/utils/executeTool.js.map +1 -0
  110. package/dist/nodes/agents/Agent/Agent.node.js +79 -0
  111. package/dist/nodes/agents/Agent/Agent.node.js.map +1 -0
  112. package/dist/nodes/agents/Agent/AgentTool.node.js +59 -0
  113. package/dist/nodes/agents/Agent/AgentTool.node.js.map +1 -0
  114. package/dist/nodes/agents/Agent/V1/AgentV1.node.js +449 -0
  115. package/dist/nodes/agents/Agent/V1/AgentV1.node.js.map +1 -0
  116. package/dist/nodes/agents/Agent/V2/AgentToolV2.node.js +104 -0
  117. package/dist/nodes/agents/Agent/V2/AgentToolV2.node.js.map +1 -0
  118. package/dist/nodes/agents/Agent/V2/AgentV2.node.js +153 -0
  119. package/dist/nodes/agents/Agent/V2/AgentV2.node.js.map +1 -0
  120. package/dist/nodes/agents/Agent/V2/utils.js +92 -0
  121. package/dist/nodes/agents/Agent/V2/utils.js.map +1 -0
  122. package/dist/nodes/agents/Agent/V3/AgentToolV3.node.js +99 -0
  123. package/dist/nodes/agents/Agent/V3/AgentToolV3.node.js.map +1 -0
  124. package/dist/nodes/agents/Agent/V3/AgentV3.node.js +141 -0
  125. package/dist/nodes/agents/Agent/V3/AgentV3.node.js.map +1 -0
  126. package/dist/nodes/agents/Agent/agents/ConversationalAgent/description.js +118 -0
  127. package/dist/nodes/agents/Agent/agents/ConversationalAgent/description.js.map +1 -0
  128. package/dist/nodes/agents/Agent/agents/ConversationalAgent/execute.js +107 -0
  129. package/dist/nodes/agents/Agent/agents/ConversationalAgent/execute.js.map +1 -0
  130. package/dist/nodes/agents/Agent/agents/ConversationalAgent/prompt.js +50 -0
  131. package/dist/nodes/agents/Agent/agents/ConversationalAgent/prompt.js.map +1 -0
  132. package/dist/nodes/agents/Agent/agents/OpenAiFunctionsAgent/description.js +108 -0
  133. package/dist/nodes/agents/Agent/agents/OpenAiFunctionsAgent/description.js.map +1 -0
  134. package/dist/nodes/agents/Agent/agents/OpenAiFunctionsAgent/execute.js +32 -0
  135. package/dist/nodes/agents/Agent/agents/OpenAiFunctionsAgent/execute.js.map +1 -0
  136. package/dist/nodes/agents/Agent/agents/OpenAiFunctionsAgent/prompt.js +29 -0
  137. package/dist/nodes/agents/Agent/agents/OpenAiFunctionsAgent/prompt.js.map +1 -0
  138. package/dist/nodes/agents/Agent/agents/PlanAndExecuteAgent/description.js +94 -0
  139. package/dist/nodes/agents/Agent/agents/PlanAndExecuteAgent/description.js.map +1 -0
  140. package/dist/nodes/agents/Agent/agents/PlanAndExecuteAgent/execute.js +97 -0
  141. package/dist/nodes/agents/Agent/agents/PlanAndExecuteAgent/execute.js.map +1 -0
  142. package/dist/nodes/agents/Agent/agents/PlanAndExecuteAgent/prompt.js +35 -0
  143. package/dist/nodes/agents/Agent/agents/PlanAndExecuteAgent/prompt.js.map +1 -0
  144. package/dist/nodes/agents/Agent/agents/ReActAgent/description.js +138 -0
  145. package/dist/nodes/agents/Agent/agents/ReActAgent/description.js.map +1 -0
  146. package/dist/nodes/agents/Agent/agents/ReActAgent/execute.js +108 -0
  147. package/dist/nodes/agents/Agent/agents/ReActAgent/execute.js.map +1 -0
  148. package/dist/nodes/agents/Agent/agents/ReActAgent/prompt.js +41 -0
  149. package/dist/nodes/agents/Agent/agents/ReActAgent/prompt.js.map +1 -0
  150. package/dist/nodes/agents/Agent/agents/SqlAgent/description.js +227 -0
  151. package/dist/nodes/agents/Agent/agents/SqlAgent/description.js.map +1 -0
  152. package/dist/nodes/agents/Agent/agents/SqlAgent/execute.js +137 -0
  153. package/dist/nodes/agents/Agent/agents/SqlAgent/execute.js.map +1 -0
  154. package/dist/nodes/agents/Agent/agents/SqlAgent/other/handlers/mysql.js +44 -0
  155. package/dist/nodes/agents/Agent/agents/SqlAgent/other/handlers/mysql.js.map +1 -0
  156. package/dist/nodes/agents/Agent/agents/SqlAgent/other/handlers/postgres.js +45 -0
  157. package/dist/nodes/agents/Agent/agents/SqlAgent/other/handlers/postgres.js.map +1 -0
  158. package/dist/nodes/agents/Agent/agents/SqlAgent/other/handlers/sqlite.js +72 -0
  159. package/dist/nodes/agents/Agent/agents/SqlAgent/other/handlers/sqlite.js.map +1 -0
  160. package/dist/nodes/agents/Agent/agents/SqlAgent/other/prompts.js +49 -0
  161. package/dist/nodes/agents/Agent/agents/SqlAgent/other/prompts.js.map +1 -0
  162. package/dist/nodes/agents/Agent/agents/ToolsAgent/V1/description.js +44 -0
  163. package/dist/nodes/agents/Agent/agents/ToolsAgent/V1/description.js.map +1 -0
  164. package/dist/nodes/agents/Agent/agents/ToolsAgent/V1/execute.js +129 -0
  165. package/dist/nodes/agents/Agent/agents/ToolsAgent/V1/execute.js.map +1 -0
  166. package/dist/nodes/agents/Agent/agents/ToolsAgent/V2/description.js +71 -0
  167. package/dist/nodes/agents/Agent/agents/ToolsAgent/V2/description.js.map +1 -0
  168. package/dist/nodes/agents/Agent/agents/ToolsAgent/V2/execute.js +295 -0
  169. package/dist/nodes/agents/Agent/agents/ToolsAgent/V2/execute.js.map +1 -0
  170. package/dist/nodes/agents/Agent/agents/ToolsAgent/V3/description.js +57 -0
  171. package/dist/nodes/agents/Agent/agents/ToolsAgent/V3/description.js.map +1 -0
  172. package/dist/nodes/agents/Agent/agents/ToolsAgent/V3/execute.js +64 -0
  173. package/dist/nodes/agents/Agent/agents/ToolsAgent/V3/execute.js.map +1 -0
  174. package/dist/nodes/agents/Agent/agents/ToolsAgent/V3/helpers/buildExecutionContext.js +74 -0
  175. package/dist/nodes/agents/Agent/agents/ToolsAgent/V3/helpers/buildExecutionContext.js.map +1 -0
  176. package/dist/nodes/agents/Agent/agents/ToolsAgent/V3/helpers/buildResponseMetadata.js +37 -0
  177. package/dist/nodes/agents/Agent/agents/ToolsAgent/V3/helpers/buildResponseMetadata.js.map +1 -0
  178. package/dist/nodes/agents/Agent/agents/ToolsAgent/V3/helpers/checkMaxIterations.js +40 -0
  179. package/dist/nodes/agents/Agent/agents/ToolsAgent/V3/helpers/checkMaxIterations.js.map +1 -0
  180. package/dist/nodes/agents/Agent/agents/ToolsAgent/V3/helpers/createAgentSequence.js +61 -0
  181. package/dist/nodes/agents/Agent/agents/ToolsAgent/V3/helpers/createAgentSequence.js.map +1 -0
  182. package/dist/nodes/agents/Agent/agents/ToolsAgent/V3/helpers/executeBatch.js +92 -0
  183. package/dist/nodes/agents/Agent/agents/ToolsAgent/V3/helpers/executeBatch.js.map +1 -0
  184. package/dist/nodes/agents/Agent/agents/ToolsAgent/V3/helpers/finalizeResult.js +58 -0
  185. package/dist/nodes/agents/Agent/agents/ToolsAgent/V3/helpers/finalizeResult.js.map +1 -0
  186. package/dist/nodes/agents/Agent/agents/ToolsAgent/V3/helpers/index.js +50 -0
  187. package/dist/nodes/agents/Agent/agents/ToolsAgent/V3/helpers/index.js.map +1 -0
  188. package/dist/nodes/agents/Agent/agents/ToolsAgent/V3/helpers/prepareItemContext.js +66 -0
  189. package/dist/nodes/agents/Agent/agents/ToolsAgent/V3/helpers/prepareItemContext.js.map +1 -0
  190. package/dist/nodes/agents/Agent/agents/ToolsAgent/V3/helpers/runAgent.js +91 -0
  191. package/dist/nodes/agents/Agent/agents/ToolsAgent/V3/helpers/runAgent.js.map +1 -0
  192. package/dist/nodes/agents/Agent/agents/ToolsAgent/V3/types.js +17 -0
  193. package/dist/nodes/agents/Agent/agents/ToolsAgent/V3/types.js.map +1 -0
  194. package/dist/nodes/agents/Agent/agents/ToolsAgent/common.js +265 -0
  195. package/dist/nodes/agents/Agent/agents/ToolsAgent/common.js.map +1 -0
  196. package/dist/nodes/agents/Agent/agents/ToolsAgent/options.js +62 -0
  197. package/dist/nodes/agents/Agent/agents/ToolsAgent/options.js.map +1 -0
  198. package/dist/nodes/agents/Agent/agents/ToolsAgent/prompt.js +29 -0
  199. package/dist/nodes/agents/Agent/agents/ToolsAgent/prompt.js.map +1 -0
  200. package/dist/nodes/agents/Agent/agents/utils.js +54 -0
  201. package/dist/nodes/agents/Agent/agents/utils.js.map +1 -0
  202. package/dist/nodes/agents/Agent/utils.js +92 -0
  203. package/dist/nodes/agents/Agent/utils.js.map +1 -0
  204. package/dist/nodes/agents/OpenAiAssistant/OpenAiAssistant.node.js +397 -0
  205. package/dist/nodes/agents/OpenAiAssistant/OpenAiAssistant.node.js.map +1 -0
  206. package/dist/nodes/agents/OpenAiAssistant/utils.js +61 -0
  207. package/dist/nodes/agents/OpenAiAssistant/utils.js.map +1 -0
  208. package/dist/nodes/chains/ChainLLM/ChainLlm.node.js +152 -0
  209. package/dist/nodes/chains/ChainLLM/ChainLlm.node.js.map +1 -0
  210. package/dist/nodes/chains/ChainLLM/methods/chainExecutor.js +148 -0
  211. package/dist/nodes/chains/ChainLLM/methods/chainExecutor.js.map +1 -0
  212. package/dist/nodes/chains/ChainLLM/methods/config.js +328 -0
  213. package/dist/nodes/chains/ChainLLM/methods/config.js.map +1 -0
  214. package/dist/nodes/chains/ChainLLM/methods/imageUtils.js +100 -0
  215. package/dist/nodes/chains/ChainLLM/methods/imageUtils.js.map +1 -0
  216. package/dist/nodes/chains/ChainLLM/methods/index.js +37 -0
  217. package/dist/nodes/chains/ChainLLM/methods/index.js.map +1 -0
  218. package/dist/nodes/chains/ChainLLM/methods/processItem.js +98 -0
  219. package/dist/nodes/chains/ChainLLM/methods/processItem.js.map +1 -0
  220. package/dist/nodes/chains/ChainLLM/methods/promptUtils.js +142 -0
  221. package/dist/nodes/chains/ChainLLM/methods/promptUtils.js.map +1 -0
  222. package/dist/nodes/chains/ChainLLM/methods/responseFormatter.js +53 -0
  223. package/dist/nodes/chains/ChainLLM/methods/responseFormatter.js.map +1 -0
  224. package/dist/nodes/chains/ChainLLM/methods/types.js +17 -0
  225. package/dist/nodes/chains/ChainLLM/methods/types.js.map +1 -0
  226. package/dist/nodes/chains/ChainRetrievalQA/ChainRetrievalQa.node.js +264 -0
  227. package/dist/nodes/chains/ChainRetrievalQA/ChainRetrievalQa.node.js.map +1 -0
  228. package/dist/nodes/chains/ChainRetrievalQA/constants.js +49 -0
  229. package/dist/nodes/chains/ChainRetrievalQA/constants.js.map +1 -0
  230. package/dist/nodes/chains/ChainRetrievalQA/processItem.js +91 -0
  231. package/dist/nodes/chains/ChainRetrievalQA/processItem.js.map +1 -0
  232. package/dist/nodes/chains/ChainSummarization/ChainSummarization.node.js +64 -0
  233. package/dist/nodes/chains/ChainSummarization/ChainSummarization.node.js.map +1 -0
  234. package/dist/nodes/chains/ChainSummarization/V1/ChainSummarizationV1.node.js +242 -0
  235. package/dist/nodes/chains/ChainSummarization/V1/ChainSummarizationV1.node.js.map +1 -0
  236. package/dist/nodes/chains/ChainSummarization/V2/ChainSummarizationV2.node.js +378 -0
  237. package/dist/nodes/chains/ChainSummarization/V2/ChainSummarizationV2.node.js.map +1 -0
  238. package/dist/nodes/chains/ChainSummarization/V2/processItem.js +95 -0
  239. package/dist/nodes/chains/ChainSummarization/V2/processItem.js.map +1 -0
  240. package/dist/nodes/chains/ChainSummarization/helpers.js +74 -0
  241. package/dist/nodes/chains/ChainSummarization/helpers.js.map +1 -0
  242. package/dist/nodes/chains/ChainSummarization/prompt.js +49 -0
  243. package/dist/nodes/chains/ChainSummarization/prompt.js.map +1 -0
  244. package/dist/nodes/chains/InformationExtractor/InformationExtractor.node.js +315 -0
  245. package/dist/nodes/chains/InformationExtractor/InformationExtractor.node.js.map +1 -0
  246. package/dist/nodes/chains/InformationExtractor/constants.js +31 -0
  247. package/dist/nodes/chains/InformationExtractor/constants.js.map +1 -0
  248. package/dist/nodes/chains/InformationExtractor/helpers.js +54 -0
  249. package/dist/nodes/chains/InformationExtractor/helpers.js.map +1 -0
  250. package/dist/nodes/chains/InformationExtractor/processItem.js +56 -0
  251. package/dist/nodes/chains/InformationExtractor/processItem.js.map +1 -0
  252. package/dist/nodes/chains/InformationExtractor/types.js +17 -0
  253. package/dist/nodes/chains/InformationExtractor/types.js.map +1 -0
  254. package/dist/nodes/chains/SentimentAnalysis/SentimentAnalysis.node.js +366 -0
  255. package/dist/nodes/chains/SentimentAnalysis/SentimentAnalysis.node.js.map +1 -0
  256. package/dist/nodes/chains/TextClassifier/TextClassifier.node.js +303 -0
  257. package/dist/nodes/chains/TextClassifier/TextClassifier.node.js.map +1 -0
  258. package/dist/nodes/chains/TextClassifier/constants.js +29 -0
  259. package/dist/nodes/chains/TextClassifier/constants.js.map +1 -0
  260. package/dist/nodes/chains/TextClassifier/processItem.js +65 -0
  261. package/dist/nodes/chains/TextClassifier/processItem.js.map +1 -0
  262. package/dist/nodes/code/Code.node.js +413 -0
  263. package/dist/nodes/code/Code.node.js.map +1 -0
  264. package/dist/nodes/document_loaders/DocumentBinaryInputLoader/DocumentBinaryInputLoader.node.js +203 -0
  265. package/dist/nodes/document_loaders/DocumentBinaryInputLoader/DocumentBinaryInputLoader.node.js.map +1 -0
  266. package/dist/nodes/document_loaders/DocumentBinaryInputLoader/binary.svg +1 -0
  267. package/dist/nodes/document_loaders/DocumentDefaultDataLoader/DocumentDefaultDataLoader.node.js +348 -0
  268. package/dist/nodes/document_loaders/DocumentDefaultDataLoader/DocumentDefaultDataLoader.node.js.map +1 -0
  269. package/dist/nodes/document_loaders/DocumentDefaultDataLoader/binary.svg +1 -0
  270. package/dist/nodes/document_loaders/DocumentGithubLoader/DocumentGithubLoader.node.js +182 -0
  271. package/dist/nodes/document_loaders/DocumentGithubLoader/DocumentGithubLoader.node.js.map +1 -0
  272. package/dist/nodes/document_loaders/DocumentGithubLoader/github.svg +1 -0
  273. package/dist/nodes/document_loaders/DocumentJSONInputLoader/DocumentJsonInputLoader.node.js +109 -0
  274. package/dist/nodes/document_loaders/DocumentJSONInputLoader/DocumentJsonInputLoader.node.js.map +1 -0
  275. package/dist/nodes/document_loaders/DocumentJSONInputLoader/json.svg +1 -0
  276. package/dist/nodes/embeddings/EmbeddingsAwsBedrock/EmbeddingsAwsBedrock.node.js +155 -0
  277. package/dist/nodes/embeddings/EmbeddingsAwsBedrock/EmbeddingsAwsBedrock.node.js.map +1 -0
  278. package/dist/nodes/embeddings/EmbeddingsAwsBedrock/bedrock.svg +1 -0
  279. package/dist/nodes/embeddings/EmbeddingsAzureOpenAi/EmbeddingsAzureOpenAi.node.js +171 -0
  280. package/dist/nodes/embeddings/EmbeddingsAzureOpenAi/EmbeddingsAzureOpenAi.node.js.map +1 -0
  281. package/dist/nodes/embeddings/EmbeddingsAzureOpenAi/azure.svg +1 -0
  282. package/dist/nodes/embeddings/EmbeddingsCohere/EmbeddingsCohere.node.js +131 -0
  283. package/dist/nodes/embeddings/EmbeddingsCohere/EmbeddingsCohere.node.js.map +1 -0
  284. package/dist/nodes/embeddings/EmbeddingsCohere/cohere.dark.svg +5 -0
  285. package/dist/nodes/embeddings/EmbeddingsCohere/cohere.svg +5 -0
  286. package/dist/nodes/embeddings/EmbeddingsGoogleGemini/EmbeddingsGoogleGemini.node.js +152 -0
  287. package/dist/nodes/embeddings/EmbeddingsGoogleGemini/EmbeddingsGoogleGemini.node.js.map +1 -0
  288. package/dist/nodes/embeddings/EmbeddingsGoogleGemini/google.svg +1 -0
  289. package/dist/nodes/embeddings/EmbeddingsGoogleVertex/EmbeddingsGoogleVertex.node.js +164 -0
  290. package/dist/nodes/embeddings/EmbeddingsGoogleVertex/EmbeddingsGoogleVertex.node.js.map +1 -0
  291. package/dist/nodes/embeddings/EmbeddingsGoogleVertex/google.svg +1 -0
  292. package/dist/nodes/embeddings/EmbeddingsHuggingFaceInference/EmbeddingsHuggingFaceInference.node.js +134 -0
  293. package/dist/nodes/embeddings/EmbeddingsHuggingFaceInference/EmbeddingsHuggingFaceInference.node.js.map +1 -0
  294. package/dist/nodes/embeddings/EmbeddingsHuggingFaceInference/huggingface.svg +1 -0
  295. package/dist/nodes/embeddings/EmbeddingsLemonade/EmbeddingsLemonade.node.js +87 -0
  296. package/dist/nodes/embeddings/EmbeddingsLemonade/EmbeddingsLemonade.node.js.map +1 -0
  297. package/dist/nodes/embeddings/EmbeddingsLemonade/lemonade.svg +53 -0
  298. package/dist/nodes/embeddings/EmbeddingsMistralCloud/EmbeddingsMistralCloud.node.js +170 -0
  299. package/dist/nodes/embeddings/EmbeddingsMistralCloud/EmbeddingsMistralCloud.node.js.map +1 -0
  300. package/dist/nodes/embeddings/EmbeddingsMistralCloud/mistral.svg +262 -0
  301. package/dist/nodes/embeddings/EmbeddingsOllama/EmbeddingsOllama.node.js +82 -0
  302. package/dist/nodes/embeddings/EmbeddingsOllama/EmbeddingsOllama.node.js.map +1 -0
  303. package/dist/nodes/embeddings/EmbeddingsOllama/ollama.svg +1 -0
  304. package/dist/nodes/embeddings/EmbeddingsOpenAI/EmbeddingsOpenAi.node.js +274 -0
  305. package/dist/nodes/embeddings/EmbeddingsOpenAI/EmbeddingsOpenAi.node.js.map +1 -0
  306. package/dist/nodes/embeddings/EmbeddingsOpenAI/openAiLight.dark.svg +3 -0
  307. package/dist/nodes/embeddings/EmbeddingsOpenAI/openAiLight.svg +3 -0
  308. package/dist/nodes/llms/LMChatAnthropic/LmChatAnthropic.node.js +344 -0
  309. package/dist/nodes/llms/LMChatAnthropic/LmChatAnthropic.node.js.map +1 -0
  310. package/dist/nodes/llms/LMChatAnthropic/anthropic.png +0 -0
  311. package/dist/nodes/llms/LMChatAnthropic/anthropic.svg +1 -0
  312. package/dist/nodes/llms/LMChatAnthropic/methods/searchModels.js +66 -0
  313. package/dist/nodes/llms/LMChatAnthropic/methods/searchModels.js.map +1 -0
  314. package/dist/nodes/llms/LMChatLemonade/LmChatLemonade.node.js +106 -0
  315. package/dist/nodes/llms/LMChatLemonade/LmChatLemonade.node.js.map +1 -0
  316. package/dist/nodes/llms/LMChatLemonade/lemonade.svg +53 -0
  317. package/dist/nodes/llms/LMChatOllama/LmChatOllama.node.js +92 -0
  318. package/dist/nodes/llms/LMChatOllama/LmChatOllama.node.js.map +1 -0
  319. package/dist/nodes/llms/LMChatOllama/ollama.svg +1 -0
  320. package/dist/nodes/llms/LMChatOpenAi/LmChatOpenAi.node.js +800 -0
  321. package/dist/nodes/llms/LMChatOpenAi/LmChatOpenAi.node.js.map +1 -0
  322. package/dist/nodes/llms/LMChatOpenAi/common.js +155 -0
  323. package/dist/nodes/llms/LMChatOpenAi/common.js.map +1 -0
  324. package/dist/nodes/llms/LMChatOpenAi/methods/loadModels.js +71 -0
  325. package/dist/nodes/llms/LMChatOpenAi/methods/loadModels.js.map +1 -0
  326. package/dist/nodes/llms/LMChatOpenAi/openAiLight.dark.svg +3 -0
  327. package/dist/nodes/llms/LMChatOpenAi/openAiLight.svg +3 -0
  328. package/dist/nodes/llms/LMChatOpenAi/types.js +17 -0
  329. package/dist/nodes/llms/LMChatOpenAi/types.js.map +1 -0
  330. package/dist/nodes/llms/LMCohere/LmCohere.node.js +122 -0
  331. package/dist/nodes/llms/LMCohere/LmCohere.node.js.map +1 -0
  332. package/dist/nodes/llms/LMCohere/cohere.dark.svg +5 -0
  333. package/dist/nodes/llms/LMCohere/cohere.svg +5 -0
  334. package/dist/nodes/llms/LMLemonade/LmLemonade.node.js +107 -0
  335. package/dist/nodes/llms/LMLemonade/LmLemonade.node.js.map +1 -0
  336. package/dist/nodes/llms/LMLemonade/description.js +147 -0
  337. package/dist/nodes/llms/LMLemonade/description.js.map +1 -0
  338. package/dist/nodes/llms/LMLemonade/lemonade.svg +53 -0
  339. package/dist/nodes/llms/LMOllama/LmOllama.node.js +91 -0
  340. package/dist/nodes/llms/LMOllama/LmOllama.node.js.map +1 -0
  341. package/dist/nodes/llms/LMOllama/description.js +242 -0
  342. package/dist/nodes/llms/LMOllama/description.js.map +1 -0
  343. package/dist/nodes/llms/LMOllama/ollama.svg +1 -0
  344. package/dist/nodes/llms/LMOpenAi/LmOpenAi.node.js +255 -0
  345. package/dist/nodes/llms/LMOpenAi/LmOpenAi.node.js.map +1 -0
  346. package/dist/nodes/llms/LMOpenAi/openAiLight.dark.svg +3 -0
  347. package/dist/nodes/llms/LMOpenAi/openAiLight.svg +3 -0
  348. package/dist/nodes/llms/LMOpenHuggingFaceInference/LmOpenHuggingFaceInference.node.js +162 -0
  349. package/dist/nodes/llms/LMOpenHuggingFaceInference/LmOpenHuggingFaceInference.node.js.map +1 -0
  350. package/dist/nodes/llms/LMOpenHuggingFaceInference/huggingface.svg +1 -0
  351. package/dist/nodes/llms/LmChatAwsBedrock/LmChatAwsBedrock.node.js +272 -0
  352. package/dist/nodes/llms/LmChatAwsBedrock/LmChatAwsBedrock.node.js.map +1 -0
  353. package/dist/nodes/llms/LmChatAwsBedrock/bedrock.svg +1 -0
  354. package/dist/nodes/llms/LmChatAzureOpenAi/LmChatAzureOpenAi.node.js +149 -0
  355. package/dist/nodes/llms/LmChatAzureOpenAi/LmChatAzureOpenAi.node.js.map +1 -0
  356. package/dist/nodes/llms/LmChatAzureOpenAi/azure.svg +1 -0
  357. package/dist/nodes/llms/LmChatAzureOpenAi/credentials/N8nOAuth2TokenCredential.js +75 -0
  358. package/dist/nodes/llms/LmChatAzureOpenAi/credentials/N8nOAuth2TokenCredential.js.map +1 -0
  359. package/dist/nodes/llms/LmChatAzureOpenAi/credentials/api-key.js +53 -0
  360. package/dist/nodes/llms/LmChatAzureOpenAi/credentials/api-key.js.map +1 -0
  361. package/dist/nodes/llms/LmChatAzureOpenAi/credentials/oauth2.js +54 -0
  362. package/dist/nodes/llms/LmChatAzureOpenAi/credentials/oauth2.js.map +1 -0
  363. package/dist/nodes/llms/LmChatAzureOpenAi/properties.js +155 -0
  364. package/dist/nodes/llms/LmChatAzureOpenAi/properties.js.map +1 -0
  365. package/dist/nodes/llms/LmChatAzureOpenAi/types.js +42 -0
  366. package/dist/nodes/llms/LmChatAzureOpenAi/types.js.map +1 -0
  367. package/dist/nodes/llms/LmChatCohere/LmChatCohere.node.js +181 -0
  368. package/dist/nodes/llms/LmChatCohere/LmChatCohere.node.js.map +1 -0
  369. package/dist/nodes/llms/LmChatCohere/cohere.dark.svg +5 -0
  370. package/dist/nodes/llms/LmChatCohere/cohere.svg +5 -0
  371. package/dist/nodes/llms/LmChatDeepSeek/LmChatDeepSeek.node.js +248 -0
  372. package/dist/nodes/llms/LmChatDeepSeek/LmChatDeepSeek.node.js.map +1 -0
  373. package/dist/nodes/llms/LmChatDeepSeek/deepseek.svg +1 -0
  374. package/dist/nodes/llms/LmChatGoogleGemini/LmChatGoogleGemini.node.js +171 -0
  375. package/dist/nodes/llms/LmChatGoogleGemini/LmChatGoogleGemini.node.js.map +1 -0
  376. package/dist/nodes/llms/LmChatGoogleGemini/google.svg +1 -0
  377. package/dist/nodes/llms/LmChatGoogleVertex/LmChatGoogleVertex.node.js +214 -0
  378. package/dist/nodes/llms/LmChatGoogleVertex/LmChatGoogleVertex.node.js.map +1 -0
  379. package/dist/nodes/llms/LmChatGoogleVertex/error-handling.js +40 -0
  380. package/dist/nodes/llms/LmChatGoogleVertex/error-handling.js.map +1 -0
  381. package/dist/nodes/llms/LmChatGoogleVertex/google.svg +1 -0
  382. package/dist/nodes/llms/LmChatGroq/LmChatGroq.node.js +166 -0
  383. package/dist/nodes/llms/LmChatGroq/LmChatGroq.node.js.map +1 -0
  384. package/dist/nodes/llms/LmChatGroq/groq.svg +20 -0
  385. package/dist/nodes/llms/LmChatMistralCloud/LmChatMistralCloud.node.js +222 -0
  386. package/dist/nodes/llms/LmChatMistralCloud/LmChatMistralCloud.node.js.map +1 -0
  387. package/dist/nodes/llms/LmChatMistralCloud/mistral.svg +262 -0
  388. package/dist/nodes/llms/LmChatOpenRouter/LmChatOpenRouter.node.js +248 -0
  389. package/dist/nodes/llms/LmChatOpenRouter/LmChatOpenRouter.node.js.map +1 -0
  390. package/dist/nodes/llms/LmChatOpenRouter/openrouter.dark.svg +1 -0
  391. package/dist/nodes/llms/LmChatOpenRouter/openrouter.svg +1 -0
  392. package/dist/nodes/llms/LmChatVercelAiGateway/LmChatVercelAiGateway.node.js +248 -0
  393. package/dist/nodes/llms/LmChatVercelAiGateway/LmChatVercelAiGateway.node.js.map +1 -0
  394. package/dist/nodes/llms/LmChatVercelAiGateway/vercel.dark.svg +1 -0
  395. package/dist/nodes/llms/LmChatVercelAiGateway/vercel.svg +6 -0
  396. package/dist/nodes/llms/LmChatXAiGrok/LmChatXAiGrok.node.js +251 -0
  397. package/dist/nodes/llms/LmChatXAiGrok/LmChatXAiGrok.node.js.map +1 -0
  398. package/dist/nodes/llms/LmChatXAiGrok/logo.dark.svg +1 -0
  399. package/dist/nodes/llms/LmChatXAiGrok/logo.svg +1 -0
  400. package/dist/nodes/llms/N8nLlmTracing.js +202 -0
  401. package/dist/nodes/llms/N8nLlmTracing.js.map +1 -0
  402. package/dist/nodes/llms/N8nNonEstimatingTracing.js +167 -0
  403. package/dist/nodes/llms/N8nNonEstimatingTracing.js.map +1 -0
  404. package/dist/nodes/llms/gemini-common/additional-options.js +126 -0
  405. package/dist/nodes/llms/gemini-common/additional-options.js.map +1 -0
  406. package/dist/nodes/llms/gemini-common/safety-options.js +79 -0
  407. package/dist/nodes/llms/gemini-common/safety-options.js.map +1 -0
  408. package/dist/nodes/llms/n8nDefaultFailedAttemptHandler.js +66 -0
  409. package/dist/nodes/llms/n8nDefaultFailedAttemptHandler.js.map +1 -0
  410. package/dist/nodes/llms/n8nLlmFailedAttemptHandler.js +50 -0
  411. package/dist/nodes/llms/n8nLlmFailedAttemptHandler.js.map +1 -0
  412. package/dist/nodes/mcp/McpClient/McpClient.node.js +335 -0
  413. package/dist/nodes/mcp/McpClient/McpClient.node.js.map +1 -0
  414. package/dist/nodes/mcp/McpClient/listSearch.js +58 -0
  415. package/dist/nodes/mcp/McpClient/listSearch.js.map +1 -0
  416. package/dist/nodes/mcp/McpClient/resourceMapping.js +61 -0
  417. package/dist/nodes/mcp/McpClient/resourceMapping.js.map +1 -0
  418. package/dist/nodes/mcp/McpClient/utils.js +248 -0
  419. package/dist/nodes/mcp/McpClient/utils.js.map +1 -0
  420. package/dist/nodes/mcp/McpClientTool/McpClientTool.node.js +402 -0
  421. package/dist/nodes/mcp/McpClientTool/McpClientTool.node.js.map +1 -0
  422. package/dist/nodes/mcp/McpClientTool/loadOptions.js +61 -0
  423. package/dist/nodes/mcp/McpClientTool/loadOptions.js.map +1 -0
  424. package/dist/nodes/mcp/McpClientTool/types.js +17 -0
  425. package/dist/nodes/mcp/McpClientTool/types.js.map +1 -0
  426. package/dist/nodes/mcp/McpClientTool/utils.js +120 -0
  427. package/dist/nodes/mcp/McpClientTool/utils.js.map +1 -0
  428. package/dist/nodes/mcp/McpTrigger/FlushingTransport.js +60 -0
  429. package/dist/nodes/mcp/McpTrigger/FlushingTransport.js.map +1 -0
  430. package/dist/nodes/mcp/McpTrigger/McpServer.js +255 -0
  431. package/dist/nodes/mcp/McpTrigger/McpServer.js.map +1 -0
  432. package/dist/nodes/mcp/McpTrigger/McpTrigger.node.js +199 -0
  433. package/dist/nodes/mcp/McpTrigger/McpTrigger.node.js.map +1 -0
  434. package/dist/nodes/mcp/mcp.dark.svg +7 -0
  435. package/dist/nodes/mcp/mcp.svg +7 -0
  436. package/dist/nodes/mcp/shared/descriptions.js +89 -0
  437. package/dist/nodes/mcp/shared/descriptions.js.map +1 -0
  438. package/dist/nodes/mcp/shared/types.js +17 -0
  439. package/dist/nodes/mcp/shared/types.js.map +1 -0
  440. package/dist/nodes/mcp/shared/utils.js +231 -0
  441. package/dist/nodes/mcp/shared/utils.js.map +1 -0
  442. package/dist/nodes/memory/MemoryBufferWindow/MemoryBufferWindow.node.js +163 -0
  443. package/dist/nodes/memory/MemoryBufferWindow/MemoryBufferWindow.node.js.map +1 -0
  444. package/dist/nodes/memory/MemoryChatRetriever/MemoryChatRetriever.node.js +116 -0
  445. package/dist/nodes/memory/MemoryChatRetriever/MemoryChatRetriever.node.js.map +1 -0
  446. package/dist/nodes/memory/MemoryManager/MemoryManager.node.js +387 -0
  447. package/dist/nodes/memory/MemoryManager/MemoryManager.node.js.map +1 -0
  448. package/dist/nodes/memory/MemoryMongoDbChat/MemoryMongoDbChat.node.js +156 -0
  449. package/dist/nodes/memory/MemoryMongoDbChat/MemoryMongoDbChat.node.js.map +1 -0
  450. package/dist/nodes/memory/MemoryMongoDbChat/mongodb.dark.svg +3 -0
  451. package/dist/nodes/memory/MemoryMongoDbChat/mongodb.svg +3 -0
  452. package/dist/nodes/memory/MemoryMotorhead/MemoryMotorhead.node.js +134 -0
  453. package/dist/nodes/memory/MemoryMotorhead/MemoryMotorhead.node.js.map +1 -0
  454. package/dist/nodes/memory/MemoryPostgresChat/MemoryPostgresChat.node.js +123 -0
  455. package/dist/nodes/memory/MemoryPostgresChat/MemoryPostgresChat.node.js.map +1 -0
  456. package/dist/nodes/memory/MemoryPostgresChat/postgres.svg +1 -0
  457. package/dist/nodes/memory/MemoryRedisChat/MemoryRedisChat.node.js +179 -0
  458. package/dist/nodes/memory/MemoryRedisChat/MemoryRedisChat.node.js.map +1 -0
  459. package/dist/nodes/memory/MemoryRedisChat/redis.svg +1 -0
  460. package/dist/nodes/memory/MemoryXata/MemoryXata.node.js +160 -0
  461. package/dist/nodes/memory/MemoryXata/MemoryXata.node.js.map +1 -0
  462. package/dist/nodes/memory/MemoryXata/xata.svg +1 -0
  463. package/dist/nodes/memory/MemoryZep/MemoryZep.node.js +175 -0
  464. package/dist/nodes/memory/MemoryZep/MemoryZep.node.js.map +1 -0
  465. package/dist/nodes/memory/MemoryZep/zep.png +0 -0
  466. package/dist/nodes/memory/descriptions.js +85 -0
  467. package/dist/nodes/memory/descriptions.js.map +1 -0
  468. package/dist/nodes/output_parser/OutputParserAutofixing/OutputParserAutofixing.node.js +133 -0
  469. package/dist/nodes/output_parser/OutputParserAutofixing/OutputParserAutofixing.node.js.map +1 -0
  470. package/dist/nodes/output_parser/OutputParserAutofixing/prompt.js +44 -0
  471. package/dist/nodes/output_parser/OutputParserAutofixing/prompt.js.map +1 -0
  472. package/dist/nodes/output_parser/OutputParserItemList/OutputParserItemList.node.js +106 -0
  473. package/dist/nodes/output_parser/OutputParserItemList/OutputParserItemList.node.js.map +1 -0
  474. package/dist/nodes/output_parser/OutputParserStructured/OutputParserStructured.node.js +239 -0
  475. package/dist/nodes/output_parser/OutputParserStructured/OutputParserStructured.node.js.map +1 -0
  476. package/dist/nodes/output_parser/OutputParserStructured/prompt.js +44 -0
  477. package/dist/nodes/output_parser/OutputParserStructured/prompt.js.map +1 -0
  478. package/dist/nodes/rerankers/RerankerCohere/RerankerCohere.node.js +116 -0
  479. package/dist/nodes/rerankers/RerankerCohere/RerankerCohere.node.js.map +1 -0
  480. package/dist/nodes/rerankers/RerankerCohere/cohere.dark.svg +5 -0
  481. package/dist/nodes/rerankers/RerankerCohere/cohere.svg +5 -0
  482. package/dist/nodes/retrievers/RetrieverContextualCompression/RetrieverContextualCompression.node.js +102 -0
  483. package/dist/nodes/retrievers/RetrieverContextualCompression/RetrieverContextualCompression.node.js.map +1 -0
  484. package/dist/nodes/retrievers/RetrieverMultiQuery/RetrieverMultiQuery.node.js +121 -0
  485. package/dist/nodes/retrievers/RetrieverMultiQuery/RetrieverMultiQuery.node.js.map +1 -0
  486. package/dist/nodes/retrievers/RetrieverVectorStore/RetrieverVectorStore.node.js +100 -0
  487. package/dist/nodes/retrievers/RetrieverVectorStore/RetrieverVectorStore.node.js.map +1 -0
  488. package/dist/nodes/retrievers/RetrieverWorkflow/RetrieverWorkflow.node.js +429 -0
  489. package/dist/nodes/retrievers/RetrieverWorkflow/RetrieverWorkflow.node.js.map +1 -0
  490. package/dist/nodes/text_splitters/TextSplitterCharacterTextSplitter/TextSplitterCharacterTextSplitter.node.js +103 -0
  491. package/dist/nodes/text_splitters/TextSplitterCharacterTextSplitter/TextSplitterCharacterTextSplitter.node.js.map +1 -0
  492. package/dist/nodes/text_splitters/TextSplitterRecursiveCharacterTextSplitter/TextSplitterRecursiveCharacterTextSplitter.node.js +139 -0
  493. package/dist/nodes/text_splitters/TextSplitterRecursiveCharacterTextSplitter/TextSplitterRecursiveCharacterTextSplitter.node.js.map +1 -0
  494. package/dist/nodes/text_splitters/TextSplitterTokenSplitter/TextSplitterTokenSplitter.node.js +97 -0
  495. package/dist/nodes/text_splitters/TextSplitterTokenSplitter/TextSplitterTokenSplitter.node.js.map +1 -0
  496. package/dist/nodes/text_splitters/TextSplitterTokenSplitter/TokenTextSplitter.js +86 -0
  497. package/dist/nodes/text_splitters/TextSplitterTokenSplitter/TokenTextSplitter.js.map +1 -0
  498. package/dist/nodes/tools/ToolCalculator/ToolCalculator.node.js +94 -0
  499. package/dist/nodes/tools/ToolCalculator/ToolCalculator.node.js.map +1 -0
  500. package/dist/nodes/tools/ToolCode/ToolCode.node.js +325 -0
  501. package/dist/nodes/tools/ToolCode/ToolCode.node.js.map +1 -0
  502. package/dist/nodes/tools/ToolHttpRequest/ToolHttpRequest.node.js +396 -0
  503. package/dist/nodes/tools/ToolHttpRequest/ToolHttpRequest.node.js.map +1 -0
  504. package/dist/nodes/tools/ToolHttpRequest/descriptions.js +426 -0
  505. package/dist/nodes/tools/ToolHttpRequest/descriptions.js.map +1 -0
  506. package/dist/nodes/tools/ToolHttpRequest/httprequest.dark.svg +3 -0
  507. package/dist/nodes/tools/ToolHttpRequest/httprequest.svg +1 -0
  508. package/dist/nodes/tools/ToolHttpRequest/interfaces.js +17 -0
  509. package/dist/nodes/tools/ToolHttpRequest/interfaces.js.map +1 -0
  510. package/dist/nodes/tools/ToolHttpRequest/utils.js +651 -0
  511. package/dist/nodes/tools/ToolHttpRequest/utils.js.map +1 -0
  512. package/dist/nodes/tools/ToolSearXng/ToolSearXng.node.js +155 -0
  513. package/dist/nodes/tools/ToolSearXng/ToolSearXng.node.js.map +1 -0
  514. package/dist/nodes/tools/ToolSearXng/searXng.svg +1 -0
  515. package/dist/nodes/tools/ToolSerpApi/ToolSerpApi.node.js +163 -0
  516. package/dist/nodes/tools/ToolSerpApi/ToolSerpApi.node.js.map +1 -0
  517. package/dist/nodes/tools/ToolSerpApi/serpApi.svg +1 -0
  518. package/dist/nodes/tools/ToolThink/ToolThink.node.js +118 -0
  519. package/dist/nodes/tools/ToolThink/ToolThink.node.js.map +1 -0
  520. package/dist/nodes/tools/ToolVectorStore/ToolVectorStore.node.js +161 -0
  521. package/dist/nodes/tools/ToolVectorStore/ToolVectorStore.node.js.map +1 -0
  522. package/dist/nodes/tools/ToolWikipedia/ToolWikipedia.node.js +93 -0
  523. package/dist/nodes/tools/ToolWikipedia/ToolWikipedia.node.js.map +1 -0
  524. package/dist/nodes/tools/ToolWikipedia/wikipedia.svg +1 -0
  525. package/dist/nodes/tools/ToolWolframAlpha/ToolWolframAlpha.node.js +95 -0
  526. package/dist/nodes/tools/ToolWolframAlpha/ToolWolframAlpha.node.js.map +1 -0
  527. package/dist/nodes/tools/ToolWolframAlpha/wolfram-alpha.svg +1 -0
  528. package/dist/nodes/tools/ToolWorkflow/ToolWorkflow.node.js +68 -0
  529. package/dist/nodes/tools/ToolWorkflow/ToolWorkflow.node.js.map +1 -0
  530. package/dist/nodes/tools/ToolWorkflow/v1/ToolWorkflowV1.node.js +202 -0
  531. package/dist/nodes/tools/ToolWorkflow/v1/ToolWorkflowV1.node.js.map +1 -0
  532. package/dist/nodes/tools/ToolWorkflow/v1/versionDescription.js +347 -0
  533. package/dist/nodes/tools/ToolWorkflow/v1/versionDescription.js.map +1 -0
  534. package/dist/nodes/tools/ToolWorkflow/v2/ToolWorkflowV2.node.js +87 -0
  535. package/dist/nodes/tools/ToolWorkflow/v2/ToolWorkflowV2.node.js.map +1 -0
  536. package/dist/nodes/tools/ToolWorkflow/v2/methods/index.js +39 -0
  537. package/dist/nodes/tools/ToolWorkflow/v2/methods/index.js.map +1 -0
  538. package/dist/nodes/tools/ToolWorkflow/v2/methods/localResourceMapping.js +47 -0
  539. package/dist/nodes/tools/ToolWorkflow/v2/methods/localResourceMapping.js.map +1 -0
  540. package/dist/nodes/tools/ToolWorkflow/v2/utils/WorkflowToolService.js +308 -0
  541. package/dist/nodes/tools/ToolWorkflow/v2/utils/WorkflowToolService.js.map +1 -0
  542. package/dist/nodes/tools/ToolWorkflow/v2/versionDescription.js +172 -0
  543. package/dist/nodes/tools/ToolWorkflow/v2/versionDescription.js.map +1 -0
  544. package/dist/nodes/trigger/ChatTrigger/Chat.node.js +277 -0
  545. package/dist/nodes/trigger/ChatTrigger/Chat.node.js.map +1 -0
  546. package/dist/nodes/trigger/ChatTrigger/ChatTrigger.node.js +813 -0
  547. package/dist/nodes/trigger/ChatTrigger/ChatTrigger.node.js.map +1 -0
  548. package/dist/nodes/trigger/ChatTrigger/GenericFunctions.js +78 -0
  549. package/dist/nodes/trigger/ChatTrigger/GenericFunctions.js.map +1 -0
  550. package/dist/nodes/trigger/ChatTrigger/constants.js +149 -0
  551. package/dist/nodes/trigger/ChatTrigger/constants.js.map +1 -0
  552. package/dist/nodes/trigger/ChatTrigger/error.js +43 -0
  553. package/dist/nodes/trigger/ChatTrigger/error.js.map +1 -0
  554. package/dist/nodes/trigger/ChatTrigger/templates.js +175 -0
  555. package/dist/nodes/trigger/ChatTrigger/templates.js.map +1 -0
  556. package/dist/nodes/trigger/ChatTrigger/types.js +38 -0
  557. package/dist/nodes/trigger/ChatTrigger/types.js.map +1 -0
  558. package/dist/nodes/trigger/ChatTrigger/util.js +82 -0
  559. package/dist/nodes/trigger/ChatTrigger/util.js.map +1 -0
  560. package/dist/nodes/trigger/ManualChatTrigger/ManualChatTrigger.node.js +91 -0
  561. package/dist/nodes/trigger/ManualChatTrigger/ManualChatTrigger.node.js.map +1 -0
  562. package/dist/nodes/vector_store/VectorStoreAzureAISearch/VectorStoreAzureAISearch.node.js +388 -0
  563. package/dist/nodes/vector_store/VectorStoreAzureAISearch/VectorStoreAzureAISearch.node.js.map +1 -0
  564. package/dist/nodes/vector_store/VectorStoreAzureAISearch/azure-aisearch.svg +1 -0
  565. package/dist/nodes/vector_store/VectorStoreInMemory/VectorStoreInMemory.node.js +179 -0
  566. package/dist/nodes/vector_store/VectorStoreInMemory/VectorStoreInMemory.node.js.map +1 -0
  567. package/dist/nodes/vector_store/VectorStoreInMemoryInsert/VectorStoreInMemoryInsert.node.js +120 -0
  568. package/dist/nodes/vector_store/VectorStoreInMemoryInsert/VectorStoreInMemoryInsert.node.js.map +1 -0
  569. package/dist/nodes/vector_store/VectorStoreInMemoryLoad/VectorStoreInMemoryLoad.node.js +94 -0
  570. package/dist/nodes/vector_store/VectorStoreInMemoryLoad/VectorStoreInMemoryLoad.node.js.map +1 -0
  571. package/dist/nodes/vector_store/VectorStoreMilvus/VectorStoreMilvus.node.js +106 -0
  572. package/dist/nodes/vector_store/VectorStoreMilvus/VectorStoreMilvus.node.js.map +1 -0
  573. package/dist/nodes/vector_store/VectorStoreMilvus/milvus-icon-black.svg +1 -0
  574. package/dist/nodes/vector_store/VectorStoreMilvus/milvus-icon-white.svg +1 -0
  575. package/dist/nodes/vector_store/VectorStoreMongoDBAtlas/VectorStoreMongoDBAtlas.node.js +380 -0
  576. package/dist/nodes/vector_store/VectorStoreMongoDBAtlas/VectorStoreMongoDBAtlas.node.js.map +1 -0
  577. package/dist/nodes/vector_store/VectorStoreMongoDBAtlas/mongodb.dark.svg +3 -0
  578. package/dist/nodes/vector_store/VectorStoreMongoDBAtlas/mongodb.svg +3 -0
  579. package/dist/nodes/vector_store/VectorStorePGVector/VectorStorePGVector.node.js +283 -0
  580. package/dist/nodes/vector_store/VectorStorePGVector/VectorStorePGVector.node.js.map +1 -0
  581. package/dist/nodes/vector_store/VectorStorePGVector/postgres.svg +1 -0
  582. package/dist/nodes/vector_store/VectorStorePinecone/VectorStorePinecone.node.js +141 -0
  583. package/dist/nodes/vector_store/VectorStorePinecone/VectorStorePinecone.node.js.map +1 -0
  584. package/dist/nodes/vector_store/VectorStorePinecone/pinecone.dark.svg +21 -0
  585. package/dist/nodes/vector_store/VectorStorePinecone/pinecone.svg +21 -0
  586. package/dist/nodes/vector_store/VectorStorePineconeInsert/VectorStorePineconeInsert.node.js +143 -0
  587. package/dist/nodes/vector_store/VectorStorePineconeInsert/VectorStorePineconeInsert.node.js.map +1 -0
  588. package/dist/nodes/vector_store/VectorStorePineconeInsert/pinecone.svg +1 -0
  589. package/dist/nodes/vector_store/VectorStorePineconeLoad/VectorStorePineconeLoad.node.js +129 -0
  590. package/dist/nodes/vector_store/VectorStorePineconeLoad/VectorStorePineconeLoad.node.js.map +1 -0
  591. package/dist/nodes/vector_store/VectorStorePineconeLoad/pinecone.svg +1 -0
  592. package/dist/nodes/vector_store/VectorStoreQdrant/Qdrant.utils.js +54 -0
  593. package/dist/nodes/vector_store/VectorStoreQdrant/Qdrant.utils.js.map +1 -0
  594. package/dist/nodes/vector_store/VectorStoreQdrant/VectorStoreQdrant.node.js +172 -0
  595. package/dist/nodes/vector_store/VectorStoreQdrant/VectorStoreQdrant.node.js.map +1 -0
  596. package/dist/nodes/vector_store/VectorStoreQdrant/qdrant.svg +25 -0
  597. package/dist/nodes/vector_store/VectorStoreRedis/VectorStoreRedis.node.js +339 -0
  598. package/dist/nodes/vector_store/VectorStoreRedis/VectorStoreRedis.node.js.map +1 -0
  599. package/dist/nodes/vector_store/VectorStoreRedis/redis.dark.svg +37 -0
  600. package/dist/nodes/vector_store/VectorStoreRedis/redis.svg +37 -0
  601. package/dist/nodes/vector_store/VectorStoreSupabase/VectorStoreSupabase.node.js +129 -0
  602. package/dist/nodes/vector_store/VectorStoreSupabase/VectorStoreSupabase.node.js.map +1 -0
  603. package/dist/nodes/vector_store/VectorStoreSupabase/supabase.svg +1 -0
  604. package/dist/nodes/vector_store/VectorStoreSupabaseInsert/VectorStoreSupabaseInsert.node.js +133 -0
  605. package/dist/nodes/vector_store/VectorStoreSupabaseInsert/VectorStoreSupabaseInsert.node.js.map +1 -0
  606. package/dist/nodes/vector_store/VectorStoreSupabaseInsert/supabase.svg +1 -0
  607. package/dist/nodes/vector_store/VectorStoreSupabaseLoad/VectorStoreSupabaseLoad.node.js +125 -0
  608. package/dist/nodes/vector_store/VectorStoreSupabaseLoad/VectorStoreSupabaseLoad.node.js.map +1 -0
  609. package/dist/nodes/vector_store/VectorStoreSupabaseLoad/supabase.svg +1 -0
  610. package/dist/nodes/vector_store/VectorStoreWeaviate/VectorStoreWeaviate.node.js +242 -0
  611. package/dist/nodes/vector_store/VectorStoreWeaviate/VectorStoreWeaviate.node.js.map +1 -0
  612. package/dist/nodes/vector_store/VectorStoreWeaviate/Weaviate.utils.js +127 -0
  613. package/dist/nodes/vector_store/VectorStoreWeaviate/Weaviate.utils.js.map +1 -0
  614. package/dist/nodes/vector_store/VectorStoreWeaviate/weaviate.svg +2 -0
  615. package/dist/nodes/vector_store/VectorStoreZep/VectorStoreZep.node.js +151 -0
  616. package/dist/nodes/vector_store/VectorStoreZep/VectorStoreZep.node.js.map +1 -0
  617. package/dist/nodes/vector_store/VectorStoreZep/zep.png +0 -0
  618. package/dist/nodes/vector_store/VectorStoreZepInsert/VectorStoreZepInsert.node.js +152 -0
  619. package/dist/nodes/vector_store/VectorStoreZepInsert/VectorStoreZepInsert.node.js.map +1 -0
  620. package/dist/nodes/vector_store/VectorStoreZepInsert/zep.png +0 -0
  621. package/dist/nodes/vector_store/VectorStoreZepLoad/VectorStoreZepLoad.node.js +132 -0
  622. package/dist/nodes/vector_store/VectorStoreZepLoad/VectorStoreZepLoad.node.js.map +1 -0
  623. package/dist/nodes/vector_store/VectorStoreZepLoad/zep.png +0 -0
  624. package/dist/nodes/vector_store/shared/MemoryManager/MemoryCalculator.js +78 -0
  625. package/dist/nodes/vector_store/shared/MemoryManager/MemoryCalculator.js.map +1 -0
  626. package/dist/nodes/vector_store/shared/MemoryManager/MemoryVectorStoreManager.js +237 -0
  627. package/dist/nodes/vector_store/shared/MemoryManager/MemoryVectorStoreManager.js.map +1 -0
  628. package/dist/nodes/vector_store/shared/MemoryManager/StoreCleanupService.js +128 -0
  629. package/dist/nodes/vector_store/shared/MemoryManager/StoreCleanupService.js.map +1 -0
  630. package/dist/nodes/vector_store/shared/MemoryManager/config.js +62 -0
  631. package/dist/nodes/vector_store/shared/MemoryManager/config.js.map +1 -0
  632. package/dist/nodes/vector_store/shared/MemoryManager/types.js +17 -0
  633. package/dist/nodes/vector_store/shared/MemoryManager/types.js.map +1 -0
  634. package/dist/nodes/vector_store/shared/createVectorStoreNode/constants.js +71 -0
  635. package/dist/nodes/vector_store/shared/createVectorStoreNode/constants.js.map +1 -0
  636. package/dist/nodes/vector_store/shared/createVectorStoreNode/createVectorStoreNode.js +320 -0
  637. package/dist/nodes/vector_store/shared/createVectorStoreNode/createVectorStoreNode.js.map +1 -0
  638. package/dist/nodes/vector_store/shared/createVectorStoreNode/methods/listSearch.js +109 -0
  639. package/dist/nodes/vector_store/shared/createVectorStoreNode/methods/listSearch.js.map +1 -0
  640. package/dist/nodes/vector_store/shared/createVectorStoreNode/operations/index.js +33 -0
  641. package/dist/nodes/vector_store/shared/createVectorStoreNode/operations/index.js.map +1 -0
  642. package/dist/nodes/vector_store/shared/createVectorStoreNode/operations/insertOperation.js +64 -0
  643. package/dist/nodes/vector_store/shared/createVectorStoreNode/operations/insertOperation.js.map +1 -0
  644. package/dist/nodes/vector_store/shared/createVectorStoreNode/operations/loadOperation.js +80 -0
  645. package/dist/nodes/vector_store/shared/createVectorStoreNode/operations/loadOperation.js.map +1 -0
  646. package/dist/nodes/vector_store/shared/createVectorStoreNode/operations/retrieveAsToolExecuteOperation.js +98 -0
  647. package/dist/nodes/vector_store/shared/createVectorStoreNode/operations/retrieveAsToolExecuteOperation.js.map +1 -0
  648. package/dist/nodes/vector_store/shared/createVectorStoreNode/operations/retrieveAsToolOperation.js +95 -0
  649. package/dist/nodes/vector_store/shared/createVectorStoreNode/operations/retrieveAsToolOperation.js.map +1 -0
  650. package/dist/nodes/vector_store/shared/createVectorStoreNode/operations/retrieveOperation.js +55 -0
  651. package/dist/nodes/vector_store/shared/createVectorStoreNode/operations/retrieveOperation.js.map +1 -0
  652. package/dist/nodes/vector_store/shared/createVectorStoreNode/operations/updateOperation.js +69 -0
  653. package/dist/nodes/vector_store/shared/createVectorStoreNode/operations/updateOperation.js.map +1 -0
  654. package/dist/nodes/vector_store/shared/createVectorStoreNode/types.js +17 -0
  655. package/dist/nodes/vector_store/shared/createVectorStoreNode/types.js.map +1 -0
  656. package/dist/nodes/vector_store/shared/createVectorStoreNode/utils.js +48 -0
  657. package/dist/nodes/vector_store/shared/createVectorStoreNode/utils.js.map +1 -0
  658. package/dist/nodes/vector_store/shared/descriptions.js +146 -0
  659. package/dist/nodes/vector_store/shared/descriptions.js.map +1 -0
  660. package/dist/nodes/vector_store/shared/processDocuments.js +65 -0
  661. package/dist/nodes/vector_store/shared/processDocuments.js.map +1 -0
  662. package/dist/nodes/vendors/Anthropic/Anthropic.node.js +42 -0
  663. package/dist/nodes/vendors/Anthropic/Anthropic.node.js.map +1 -0
  664. package/dist/nodes/vendors/Anthropic/actions/descriptions.js +52 -0
  665. package/dist/nodes/vendors/Anthropic/actions/descriptions.js.map +1 -0
  666. package/dist/nodes/vendors/Anthropic/actions/document/analyze.operation.js +125 -0
  667. package/dist/nodes/vendors/Anthropic/actions/document/analyze.operation.js.map +1 -0
  668. package/dist/nodes/vendors/Anthropic/actions/document/index.js +64 -0
  669. package/dist/nodes/vendors/Anthropic/actions/document/index.js.map +1 -0
  670. package/dist/nodes/vendors/Anthropic/actions/file/delete.operation.js +61 -0
  671. package/dist/nodes/vendors/Anthropic/actions/file/delete.operation.js.map +1 -0
  672. package/dist/nodes/vendors/Anthropic/actions/file/get.operation.js +63 -0
  673. package/dist/nodes/vendors/Anthropic/actions/file/get.operation.js.map +1 -0
  674. package/dist/nodes/vendors/Anthropic/actions/file/index.js +94 -0
  675. package/dist/nodes/vendors/Anthropic/actions/file/index.js.map +1 -0
  676. package/dist/nodes/vendors/Anthropic/actions/file/list.operation.js +108 -0
  677. package/dist/nodes/vendors/Anthropic/actions/file/list.operation.js.map +1 -0
  678. package/dist/nodes/vendors/Anthropic/actions/file/upload.operation.js +126 -0
  679. package/dist/nodes/vendors/Anthropic/actions/file/upload.operation.js.map +1 -0
  680. package/dist/nodes/vendors/Anthropic/actions/image/analyze.operation.js +125 -0
  681. package/dist/nodes/vendors/Anthropic/actions/image/analyze.operation.js.map +1 -0
  682. package/dist/nodes/vendors/Anthropic/actions/image/index.js +64 -0
  683. package/dist/nodes/vendors/Anthropic/actions/image/index.js.map +1 -0
  684. package/dist/nodes/vendors/Anthropic/actions/node.type.js +17 -0
  685. package/dist/nodes/vendors/Anthropic/actions/node.type.js.map +1 -0
  686. package/dist/nodes/vendors/Anthropic/actions/prompt/generate.operation.js +87 -0
  687. package/dist/nodes/vendors/Anthropic/actions/prompt/generate.operation.js.map +1 -0
  688. package/dist/nodes/vendors/Anthropic/actions/prompt/improve.operation.js +154 -0
  689. package/dist/nodes/vendors/Anthropic/actions/prompt/improve.operation.js.map +1 -0
  690. package/dist/nodes/vendors/Anthropic/actions/prompt/index.js +95 -0
  691. package/dist/nodes/vendors/Anthropic/actions/prompt/index.js.map +1 -0
  692. package/dist/nodes/vendors/Anthropic/actions/prompt/templatize.operation.js +146 -0
  693. package/dist/nodes/vendors/Anthropic/actions/prompt/templatize.operation.js.map +1 -0
  694. package/dist/nodes/vendors/Anthropic/actions/router.js +93 -0
  695. package/dist/nodes/vendors/Anthropic/actions/router.js.map +1 -0
  696. package/dist/nodes/vendors/Anthropic/actions/text/index.js +64 -0
  697. package/dist/nodes/vendors/Anthropic/actions/text/index.js.map +1 -0
  698. package/dist/nodes/vendors/Anthropic/actions/text/message.operation.js +540 -0
  699. package/dist/nodes/vendors/Anthropic/actions/text/message.operation.js.map +1 -0
  700. package/dist/nodes/vendors/Anthropic/actions/versionDescription.js +125 -0
  701. package/dist/nodes/vendors/Anthropic/actions/versionDescription.js.map +1 -0
  702. package/dist/nodes/vendors/Anthropic/anthropic.svg +1 -0
  703. package/dist/nodes/vendors/Anthropic/helpers/baseAnalyze.js +109 -0
  704. package/dist/nodes/vendors/Anthropic/helpers/baseAnalyze.js.map +1 -0
  705. package/dist/nodes/vendors/Anthropic/helpers/interfaces.js +17 -0
  706. package/dist/nodes/vendors/Anthropic/helpers/interfaces.js.map +1 -0
  707. package/dist/nodes/vendors/Anthropic/helpers/utils.js +84 -0
  708. package/dist/nodes/vendors/Anthropic/helpers/utils.js.map +1 -0
  709. package/dist/nodes/vendors/Anthropic/methods/index.js +39 -0
  710. package/dist/nodes/vendors/Anthropic/methods/index.js.map +1 -0
  711. package/dist/nodes/vendors/Anthropic/methods/listSearch.js +42 -0
  712. package/dist/nodes/vendors/Anthropic/methods/listSearch.js.map +1 -0
  713. package/dist/nodes/vendors/Anthropic/transport/index.js +61 -0
  714. package/dist/nodes/vendors/Anthropic/transport/index.js.map +1 -0
  715. package/dist/nodes/vendors/GoogleGemini/GoogleGemini.node.js +42 -0
  716. package/dist/nodes/vendors/GoogleGemini/GoogleGemini.node.js.map +1 -0
  717. package/dist/nodes/vendors/GoogleGemini/actions/audio/analyze.operation.js +125 -0
  718. package/dist/nodes/vendors/GoogleGemini/actions/audio/analyze.operation.js.map +1 -0
  719. package/dist/nodes/vendors/GoogleGemini/actions/audio/index.js +74 -0
  720. package/dist/nodes/vendors/GoogleGemini/actions/audio/index.js.map +1 -0
  721. package/dist/nodes/vendors/GoogleGemini/actions/audio/transcribe.operation.js +184 -0
  722. package/dist/nodes/vendors/GoogleGemini/actions/audio/transcribe.operation.js.map +1 -0
  723. package/dist/nodes/vendors/GoogleGemini/actions/descriptions.js +52 -0
  724. package/dist/nodes/vendors/GoogleGemini/actions/descriptions.js.map +1 -0
  725. package/dist/nodes/vendors/GoogleGemini/actions/document/analyze.operation.js +125 -0
  726. package/dist/nodes/vendors/GoogleGemini/actions/document/analyze.operation.js.map +1 -0
  727. package/dist/nodes/vendors/GoogleGemini/actions/document/index.js +64 -0
  728. package/dist/nodes/vendors/GoogleGemini/actions/document/index.js.map +1 -0
  729. package/dist/nodes/vendors/GoogleGemini/actions/file/index.js +64 -0
  730. package/dist/nodes/vendors/GoogleGemini/actions/file/index.js.map +1 -0
  731. package/dist/nodes/vendors/GoogleGemini/actions/file/upload.operation.js +102 -0
  732. package/dist/nodes/vendors/GoogleGemini/actions/file/upload.operation.js.map +1 -0
  733. package/dist/nodes/vendors/GoogleGemini/actions/fileSearch/createStore.operation.js +64 -0
  734. package/dist/nodes/vendors/GoogleGemini/actions/fileSearch/createStore.operation.js.map +1 -0
  735. package/dist/nodes/vendors/GoogleGemini/actions/fileSearch/deleteStore.operation.js +72 -0
  736. package/dist/nodes/vendors/GoogleGemini/actions/fileSearch/deleteStore.operation.js.map +1 -0
  737. package/dist/nodes/vendors/GoogleGemini/actions/fileSearch/index.js +94 -0
  738. package/dist/nodes/vendors/GoogleGemini/actions/fileSearch/index.js.map +1 -0
  739. package/dist/nodes/vendors/GoogleGemini/actions/fileSearch/listStores.operation.js +75 -0
  740. package/dist/nodes/vendors/GoogleGemini/actions/fileSearch/listStores.operation.js.map +1 -0
  741. package/dist/nodes/vendors/GoogleGemini/actions/fileSearch/uploadToStore.operation.js +129 -0
  742. package/dist/nodes/vendors/GoogleGemini/actions/fileSearch/uploadToStore.operation.js.map +1 -0
  743. package/dist/nodes/vendors/GoogleGemini/actions/image/analyze.operation.js +125 -0
  744. package/dist/nodes/vendors/GoogleGemini/actions/image/analyze.operation.js.map +1 -0
  745. package/dist/nodes/vendors/GoogleGemini/actions/image/edit.operation.js +211 -0
  746. package/dist/nodes/vendors/GoogleGemini/actions/image/edit.operation.js.map +1 -0
  747. package/dist/nodes/vendors/GoogleGemini/actions/image/generate.operation.js +168 -0
  748. package/dist/nodes/vendors/GoogleGemini/actions/image/generate.operation.js.map +1 -0
  749. package/dist/nodes/vendors/GoogleGemini/actions/image/index.js +84 -0
  750. package/dist/nodes/vendors/GoogleGemini/actions/image/index.js.map +1 -0
  751. package/dist/nodes/vendors/GoogleGemini/actions/node.type.js +17 -0
  752. package/dist/nodes/vendors/GoogleGemini/actions/node.type.js.map +1 -0
  753. package/dist/nodes/vendors/GoogleGemini/actions/router.js +101 -0
  754. package/dist/nodes/vendors/GoogleGemini/actions/router.js.map +1 -0
  755. package/dist/nodes/vendors/GoogleGemini/actions/text/index.js +64 -0
  756. package/dist/nodes/vendors/GoogleGemini/actions/text/index.js.map +1 -0
  757. package/dist/nodes/vendors/GoogleGemini/actions/text/message.operation.js +547 -0
  758. package/dist/nodes/vendors/GoogleGemini/actions/text/message.operation.js.map +1 -0
  759. package/dist/nodes/vendors/GoogleGemini/actions/versionDescription.js +138 -0
  760. package/dist/nodes/vendors/GoogleGemini/actions/versionDescription.js.map +1 -0
  761. package/dist/nodes/vendors/GoogleGemini/actions/video/analyze.operation.js +125 -0
  762. package/dist/nodes/vendors/GoogleGemini/actions/video/analyze.operation.js.map +1 -0
  763. package/dist/nodes/vendors/GoogleGemini/actions/video/download.operation.js +88 -0
  764. package/dist/nodes/vendors/GoogleGemini/actions/video/download.operation.js.map +1 -0
  765. package/dist/nodes/vendors/GoogleGemini/actions/video/generate.operation.js +228 -0
  766. package/dist/nodes/vendors/GoogleGemini/actions/video/generate.operation.js.map +1 -0
  767. package/dist/nodes/vendors/GoogleGemini/actions/video/index.js +84 -0
  768. package/dist/nodes/vendors/GoogleGemini/actions/video/index.js.map +1 -0
  769. package/dist/nodes/vendors/GoogleGemini/gemini.svg +1 -0
  770. package/dist/nodes/vendors/GoogleGemini/helpers/baseAnalyze.js +106 -0
  771. package/dist/nodes/vendors/GoogleGemini/helpers/baseAnalyze.js.map +1 -0
  772. package/dist/nodes/vendors/GoogleGemini/helpers/interfaces.js +29 -0
  773. package/dist/nodes/vendors/GoogleGemini/helpers/interfaces.js.map +1 -0
  774. package/dist/nodes/vendors/GoogleGemini/helpers/utils.js +272 -0
  775. package/dist/nodes/vendors/GoogleGemini/helpers/utils.js.map +1 -0
  776. package/dist/nodes/vendors/GoogleGemini/methods/index.js +39 -0
  777. package/dist/nodes/vendors/GoogleGemini/methods/index.js.map +1 -0
  778. package/dist/nodes/vendors/GoogleGemini/methods/listSearch.js +94 -0
  779. package/dist/nodes/vendors/GoogleGemini/methods/listSearch.js.map +1 -0
  780. package/dist/nodes/vendors/GoogleGemini/transport/index.js +48 -0
  781. package/dist/nodes/vendors/GoogleGemini/transport/index.js.map +1 -0
  782. package/dist/nodes/vendors/Ollama/Ollama.node.js +42 -0
  783. package/dist/nodes/vendors/Ollama/Ollama.node.js.map +1 -0
  784. package/dist/nodes/vendors/Ollama/actions/descriptions.js +52 -0
  785. package/dist/nodes/vendors/Ollama/actions/descriptions.js.map +1 -0
  786. package/dist/nodes/vendors/Ollama/actions/image/analyze.operation.js +412 -0
  787. package/dist/nodes/vendors/Ollama/actions/image/analyze.operation.js.map +1 -0
  788. package/dist/nodes/vendors/Ollama/actions/image/index.js +64 -0
  789. package/dist/nodes/vendors/Ollama/actions/image/index.js.map +1 -0
  790. package/dist/nodes/vendors/Ollama/actions/node.type.js +17 -0
  791. package/dist/nodes/vendors/Ollama/actions/node.type.js.map +1 -0
  792. package/dist/nodes/vendors/Ollama/actions/router.js +78 -0
  793. package/dist/nodes/vendors/Ollama/actions/router.js.map +1 -0
  794. package/dist/nodes/vendors/Ollama/actions/text/index.js +64 -0
  795. package/dist/nodes/vendors/Ollama/actions/text/index.js.map +1 -0
  796. package/dist/nodes/vendors/Ollama/actions/text/message.operation.js +440 -0
  797. package/dist/nodes/vendors/Ollama/actions/text/message.operation.js.map +1 -0
  798. package/dist/nodes/vendors/Ollama/actions/versionDescription.js +107 -0
  799. package/dist/nodes/vendors/Ollama/actions/versionDescription.js.map +1 -0
  800. package/dist/nodes/vendors/Ollama/helpers/index.js +17 -0
  801. package/dist/nodes/vendors/Ollama/helpers/index.js.map +1 -0
  802. package/dist/nodes/vendors/Ollama/helpers/interfaces.js +17 -0
  803. package/dist/nodes/vendors/Ollama/helpers/interfaces.js.map +1 -0
  804. package/dist/nodes/vendors/Ollama/methods/index.js +39 -0
  805. package/dist/nodes/vendors/Ollama/methods/index.js.map +1 -0
  806. package/dist/nodes/vendors/Ollama/methods/listSearch.js +39 -0
  807. package/dist/nodes/vendors/Ollama/methods/listSearch.js.map +1 -0
  808. package/dist/nodes/vendors/Ollama/ollama.svg +1 -0
  809. package/dist/nodes/vendors/Ollama/transport/index.js +56 -0
  810. package/dist/nodes/vendors/Ollama/transport/index.js.map +1 -0
  811. package/dist/nodes/vendors/OpenAi/OpenAi.node.js +83 -0
  812. package/dist/nodes/vendors/OpenAi/OpenAi.node.js.map +1 -0
  813. package/dist/nodes/vendors/OpenAi/helpers/binary-data.js +38 -0
  814. package/dist/nodes/vendors/OpenAi/helpers/binary-data.js.map +1 -0
  815. package/dist/nodes/vendors/OpenAi/helpers/constants.js +50 -0
  816. package/dist/nodes/vendors/OpenAi/helpers/constants.js.map +1 -0
  817. package/dist/nodes/vendors/OpenAi/helpers/description.js +75 -0
  818. package/dist/nodes/vendors/OpenAi/helpers/description.js.map +1 -0
  819. package/dist/nodes/vendors/OpenAi/helpers/error-handling.js +52 -0
  820. package/dist/nodes/vendors/OpenAi/helpers/error-handling.js.map +1 -0
  821. package/dist/nodes/vendors/OpenAi/helpers/interfaces.js +17 -0
  822. package/dist/nodes/vendors/OpenAi/helpers/interfaces.js.map +1 -0
  823. package/dist/nodes/vendors/OpenAi/helpers/modelFiltering.js +34 -0
  824. package/dist/nodes/vendors/OpenAi/helpers/modelFiltering.js.map +1 -0
  825. package/dist/nodes/vendors/OpenAi/helpers/polling.js +52 -0
  826. package/dist/nodes/vendors/OpenAi/helpers/polling.js.map +1 -0
  827. package/dist/nodes/vendors/OpenAi/helpers/utils.js +98 -0
  828. package/dist/nodes/vendors/OpenAi/helpers/utils.js.map +1 -0
  829. package/dist/nodes/vendors/OpenAi/methods/index.js +42 -0
  830. package/dist/nodes/vendors/OpenAi/methods/index.js.map +1 -0
  831. package/dist/nodes/vendors/OpenAi/methods/listSearch.js +138 -0
  832. package/dist/nodes/vendors/OpenAi/methods/listSearch.js.map +1 -0
  833. package/dist/nodes/vendors/OpenAi/methods/loadOptions.js +40 -0
  834. package/dist/nodes/vendors/OpenAi/methods/loadOptions.js.map +1 -0
  835. package/dist/nodes/vendors/OpenAi/openAi.dark.svg +3 -0
  836. package/dist/nodes/vendors/OpenAi/openAi.svg +3 -0
  837. package/dist/nodes/vendors/OpenAi/transport/index.js +55 -0
  838. package/dist/nodes/vendors/OpenAi/transport/index.js.map +1 -0
  839. package/dist/nodes/vendors/OpenAi/v1/OpenAiV1.node.js +110 -0
  840. package/dist/nodes/vendors/OpenAi/v1/OpenAiV1.node.js.map +1 -0
  841. package/dist/nodes/vendors/OpenAi/v1/actions/assistant/create.operation.js +284 -0
  842. package/dist/nodes/vendors/OpenAi/v1/actions/assistant/create.operation.js.map +1 -0
  843. package/dist/nodes/vendors/OpenAi/v1/actions/assistant/deleteAssistant.operation.js +55 -0
  844. package/dist/nodes/vendors/OpenAi/v1/actions/assistant/deleteAssistant.operation.js.map +1 -0
  845. package/dist/nodes/vendors/OpenAi/v1/actions/assistant/index.js +104 -0
  846. package/dist/nodes/vendors/OpenAi/v1/actions/assistant/index.js.map +1 -0
  847. package/dist/nodes/vendors/OpenAi/v1/actions/assistant/list.operation.js +92 -0
  848. package/dist/nodes/vendors/OpenAi/v1/actions/assistant/list.operation.js.map +1 -0
  849. package/dist/nodes/vendors/OpenAi/v1/actions/assistant/message.operation.js +278 -0
  850. package/dist/nodes/vendors/OpenAi/v1/actions/assistant/message.operation.js.map +1 -0
  851. package/dist/nodes/vendors/OpenAi/v1/actions/assistant/update.operation.js +230 -0
  852. package/dist/nodes/vendors/OpenAi/v1/actions/assistant/update.operation.js.map +1 -0
  853. package/dist/nodes/vendors/OpenAi/v1/actions/audio/generate.operation.js +197 -0
  854. package/dist/nodes/vendors/OpenAi/v1/actions/audio/generate.operation.js.map +1 -0
  855. package/dist/nodes/vendors/OpenAi/v1/actions/audio/index.js +96 -0
  856. package/dist/nodes/vendors/OpenAi/v1/actions/audio/index.js.map +1 -0
  857. package/dist/nodes/vendors/OpenAi/v1/actions/audio/transcribe.operation.js +121 -0
  858. package/dist/nodes/vendors/OpenAi/v1/actions/audio/transcribe.operation.js.map +1 -0
  859. package/dist/nodes/vendors/OpenAi/v1/actions/audio/translate.operation.js +111 -0
  860. package/dist/nodes/vendors/OpenAi/v1/actions/audio/translate.operation.js.map +1 -0
  861. package/dist/nodes/vendors/OpenAi/v1/actions/descriptions.js +79 -0
  862. package/dist/nodes/vendors/OpenAi/v1/actions/descriptions.js.map +1 -0
  863. package/dist/nodes/vendors/OpenAi/v1/actions/file/deleteFile.operation.js +84 -0
  864. package/dist/nodes/vendors/OpenAi/v1/actions/file/deleteFile.operation.js.map +1 -0
  865. package/dist/nodes/vendors/OpenAi/v1/actions/file/index.js +84 -0
  866. package/dist/nodes/vendors/OpenAi/v1/actions/file/index.js.map +1 -0
  867. package/dist/nodes/vendors/OpenAi/v1/actions/file/list.operation.js +83 -0
  868. package/dist/nodes/vendors/OpenAi/v1/actions/file/list.operation.js.map +1 -0
  869. package/dist/nodes/vendors/OpenAi/v1/actions/file/upload.operation.js +122 -0
  870. package/dist/nodes/vendors/OpenAi/v1/actions/file/upload.operation.js.map +1 -0
  871. package/dist/nodes/vendors/OpenAi/v1/actions/image/analyze.operation.js +221 -0
  872. package/dist/nodes/vendors/OpenAi/v1/actions/image/analyze.operation.js.map +1 -0
  873. package/dist/nodes/vendors/OpenAi/v1/actions/image/generate.operation.js +319 -0
  874. package/dist/nodes/vendors/OpenAi/v1/actions/image/generate.operation.js.map +1 -0
  875. package/dist/nodes/vendors/OpenAi/v1/actions/image/index.js +74 -0
  876. package/dist/nodes/vendors/OpenAi/v1/actions/image/index.js.map +1 -0
  877. package/dist/nodes/vendors/OpenAi/v1/actions/node.type.js +17 -0
  878. package/dist/nodes/vendors/OpenAi/v1/actions/node.type.js.map +1 -0
  879. package/dist/nodes/vendors/OpenAi/v1/actions/router.js +107 -0
  880. package/dist/nodes/vendors/OpenAi/v1/actions/router.js.map +1 -0
  881. package/dist/nodes/vendors/OpenAi/v1/actions/text/classify.operation.js +102 -0
  882. package/dist/nodes/vendors/OpenAi/v1/actions/text/classify.operation.js.map +1 -0
  883. package/dist/nodes/vendors/OpenAi/v1/actions/text/index.js +75 -0
  884. package/dist/nodes/vendors/OpenAi/v1/actions/text/index.js.map +1 -0
  885. package/dist/nodes/vendors/OpenAi/v1/actions/text/message.operation.js +352 -0
  886. package/dist/nodes/vendors/OpenAi/v1/actions/text/message.operation.js.map +1 -0
  887. package/dist/nodes/vendors/OpenAi/v2/OpenAiV2.node.js +116 -0
  888. package/dist/nodes/vendors/OpenAi/v2/OpenAiV2.node.js.map +1 -0
  889. package/dist/nodes/vendors/OpenAi/v2/actions/audio/generate.operation.js +197 -0
  890. package/dist/nodes/vendors/OpenAi/v2/actions/audio/generate.operation.js.map +1 -0
  891. package/dist/nodes/vendors/OpenAi/v2/actions/audio/index.js +96 -0
  892. package/dist/nodes/vendors/OpenAi/v2/actions/audio/index.js.map +1 -0
  893. package/dist/nodes/vendors/OpenAi/v2/actions/audio/transcribe.operation.js +121 -0
  894. package/dist/nodes/vendors/OpenAi/v2/actions/audio/transcribe.operation.js.map +1 -0
  895. package/dist/nodes/vendors/OpenAi/v2/actions/audio/translate.operation.js +111 -0
  896. package/dist/nodes/vendors/OpenAi/v2/actions/audio/translate.operation.js.map +1 -0
  897. package/dist/nodes/vendors/OpenAi/v2/actions/conversation/create.operation.js +120 -0
  898. package/dist/nodes/vendors/OpenAi/v2/actions/conversation/create.operation.js.map +1 -0
  899. package/dist/nodes/vendors/OpenAi/v2/actions/conversation/get.operation.js +60 -0
  900. package/dist/nodes/vendors/OpenAi/v2/actions/conversation/get.operation.js.map +1 -0
  901. package/dist/nodes/vendors/OpenAi/v2/actions/conversation/index.js +94 -0
  902. package/dist/nodes/vendors/OpenAi/v2/actions/conversation/index.js.map +1 -0
  903. package/dist/nodes/vendors/OpenAi/v2/actions/conversation/remove.operation.js +60 -0
  904. package/dist/nodes/vendors/OpenAi/v2/actions/conversation/remove.operation.js.map +1 -0
  905. package/dist/nodes/vendors/OpenAi/v2/actions/conversation/update.operation.js +75 -0
  906. package/dist/nodes/vendors/OpenAi/v2/actions/conversation/update.operation.js.map +1 -0
  907. package/dist/nodes/vendors/OpenAi/v2/actions/descriptions.js +279 -0
  908. package/dist/nodes/vendors/OpenAi/v2/actions/descriptions.js.map +1 -0
  909. package/dist/nodes/vendors/OpenAi/v2/actions/file/deleteFile.operation.js +84 -0
  910. package/dist/nodes/vendors/OpenAi/v2/actions/file/deleteFile.operation.js.map +1 -0
  911. package/dist/nodes/vendors/OpenAi/v2/actions/file/index.js +84 -0
  912. package/dist/nodes/vendors/OpenAi/v2/actions/file/index.js.map +1 -0
  913. package/dist/nodes/vendors/OpenAi/v2/actions/file/list.operation.js +92 -0
  914. package/dist/nodes/vendors/OpenAi/v2/actions/file/list.operation.js.map +1 -0
  915. package/dist/nodes/vendors/OpenAi/v2/actions/file/upload.operation.js +130 -0
  916. package/dist/nodes/vendors/OpenAi/v2/actions/file/upload.operation.js.map +1 -0
  917. package/dist/nodes/vendors/OpenAi/v2/actions/image/analyze.operation.js +211 -0
  918. package/dist/nodes/vendors/OpenAi/v2/actions/image/analyze.operation.js.map +1 -0
  919. package/dist/nodes/vendors/OpenAi/v2/actions/image/edit.operation.js +464 -0
  920. package/dist/nodes/vendors/OpenAi/v2/actions/image/edit.operation.js.map +1 -0
  921. package/dist/nodes/vendors/OpenAi/v2/actions/image/generate.operation.js +319 -0
  922. package/dist/nodes/vendors/OpenAi/v2/actions/image/generate.operation.js.map +1 -0
  923. package/dist/nodes/vendors/OpenAi/v2/actions/image/index.js +84 -0
  924. package/dist/nodes/vendors/OpenAi/v2/actions/image/index.js.map +1 -0
  925. package/dist/nodes/vendors/OpenAi/v2/actions/node.type.js +17 -0
  926. package/dist/nodes/vendors/OpenAi/v2/actions/node.type.js.map +1 -0
  927. package/dist/nodes/vendors/OpenAi/v2/actions/router.js +111 -0
  928. package/dist/nodes/vendors/OpenAi/v2/actions/router.js.map +1 -0
  929. package/dist/nodes/vendors/OpenAi/v2/actions/text/classify.operation.js +111 -0
  930. package/dist/nodes/vendors/OpenAi/v2/actions/text/classify.operation.js.map +1 -0
  931. package/dist/nodes/vendors/OpenAi/v2/actions/text/helpers/responses.js +253 -0
  932. package/dist/nodes/vendors/OpenAi/v2/actions/text/helpers/responses.js.map +1 -0
  933. package/dist/nodes/vendors/OpenAi/v2/actions/text/index.js +75 -0
  934. package/dist/nodes/vendors/OpenAi/v2/actions/text/index.js.map +1 -0
  935. package/dist/nodes/vendors/OpenAi/v2/actions/text/response.operation.js +701 -0
  936. package/dist/nodes/vendors/OpenAi/v2/actions/text/response.operation.js.map +1 -0
  937. package/dist/nodes/vendors/OpenAi/v2/actions/video/generate.operation.js +199 -0
  938. package/dist/nodes/vendors/OpenAi/v2/actions/video/generate.operation.js.map +1 -0
  939. package/dist/nodes/vendors/OpenAi/v2/actions/video/index.js +64 -0
  940. package/dist/nodes/vendors/OpenAi/v2/actions/video/index.js.map +1 -0
  941. package/dist/types/credentials.json +28 -0
  942. package/dist/types/nodes.json +115 -0
  943. package/dist/types/types.js +17 -0
  944. package/dist/types/types.js.map +1 -0
  945. package/dist/types/zod.types.js +17 -0
  946. package/dist/types/zod.types.js.map +1 -0
  947. package/dist/utils/N8nBinaryLoader.js +203 -0
  948. package/dist/utils/N8nBinaryLoader.js.map +1 -0
  949. package/dist/utils/N8nJsonLoader.js +89 -0
  950. package/dist/utils/N8nJsonLoader.js.map +1 -0
  951. package/dist/utils/N8nTool.js +106 -0
  952. package/dist/utils/N8nTool.js.map +1 -0
  953. package/dist/utils/agent-execution/buildSteps.js +153 -0
  954. package/dist/utils/agent-execution/buildSteps.js.map +1 -0
  955. package/dist/utils/agent-execution/createEngineRequests.js +88 -0
  956. package/dist/utils/agent-execution/createEngineRequests.js.map +1 -0
  957. package/dist/utils/agent-execution/index.js +42 -0
  958. package/dist/utils/agent-execution/index.js.map +1 -0
  959. package/dist/utils/agent-execution/memoryManagement.js +67 -0
  960. package/dist/utils/agent-execution/memoryManagement.js.map +1 -0
  961. package/dist/utils/agent-execution/processEventStream.js +82 -0
  962. package/dist/utils/agent-execution/processEventStream.js.map +1 -0
  963. package/dist/utils/agent-execution/types.js +41 -0
  964. package/dist/utils/agent-execution/types.js.map +1 -0
  965. package/dist/utils/descriptions.js +212 -0
  966. package/dist/utils/descriptions.js.map +1 -0
  967. package/dist/utils/embeddings/embeddingInputValidation.js +55 -0
  968. package/dist/utils/embeddings/embeddingInputValidation.js.map +1 -0
  969. package/dist/utils/fromAIToolFactory.js +61 -0
  970. package/dist/utils/fromAIToolFactory.js.map +1 -0
  971. package/dist/utils/helpers.js +254 -0
  972. package/dist/utils/helpers.js.map +1 -0
  973. package/dist/utils/httpProxyAgent.js +69 -0
  974. package/dist/utils/httpProxyAgent.js.map +1 -0
  975. package/dist/utils/logWrapper.js +376 -0
  976. package/dist/utils/logWrapper.js.map +1 -0
  977. package/dist/utils/output_parsers/N8nItemListOutputParser.js +64 -0
  978. package/dist/utils/output_parsers/N8nItemListOutputParser.js.map +1 -0
  979. package/dist/utils/output_parsers/N8nOutputFixingParser.js +99 -0
  980. package/dist/utils/output_parsers/N8nOutputFixingParser.js.map +1 -0
  981. package/dist/utils/output_parsers/N8nOutputParser.js +48 -0
  982. package/dist/utils/output_parsers/N8nOutputParser.js.map +1 -0
  983. package/dist/utils/output_parsers/N8nStructuredOutputParser.js +127 -0
  984. package/dist/utils/output_parsers/N8nStructuredOutputParser.js.map +1 -0
  985. package/dist/utils/output_parsers/prompt.js +48 -0
  986. package/dist/utils/output_parsers/prompt.js.map +1 -0
  987. package/dist/utils/schemaParsing.js +75 -0
  988. package/dist/utils/schemaParsing.js.map +1 -0
  989. package/dist/utils/sharedFields.js +176 -0
  990. package/dist/utils/sharedFields.js.map +1 -0
  991. package/dist/utils/tokenizer/cl100k_base.json +1 -0
  992. package/dist/utils/tokenizer/o200k_base.json +1 -0
  993. package/dist/utils/tokenizer/tiktoken.js +65 -0
  994. package/dist/utils/tokenizer/tiktoken.js.map +1 -0
  995. package/dist/utils/tokenizer/token-estimator.js +119 -0
  996. package/dist/utils/tokenizer/token-estimator.js.map +1 -0
  997. package/dist/utils/tracing.js +41 -0
  998. package/dist/utils/tracing.js.map +1 -0
  999. package/index.js +0 -0
  1000. package/package.json +255 -0
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../nodes/trigger/ChatTrigger/ChatTrigger.node.ts"],"sourcesContent":["import type { BaseChatMemory } from '@langchain/community/memory/chat_memory';\nimport pick from 'lodash/pick';\nimport {\n\tNode,\n\tNodeConnectionTypes,\n\tNodeOperationError,\n\tassertParamIsBoolean,\n\tvalidateNodeParameters,\n\tassertParamIsString,\n} from 'n8n-workflow';\nimport type {\n\tIDataObject,\n\tIWebhookFunctions,\n\tIWebhookResponseData,\n\tINodeTypeDescription,\n\tMultiPartFormData,\n\tINodeExecutionData,\n\tIBinaryData,\n\tINodeProperties,\n} from 'n8n-workflow';\nimport * as a from 'node:assert';\n\nimport { cssVariables } from './constants';\nimport { validateAuth } from './GenericFunctions';\nimport { createPage } from './templates';\nimport { assertValidLoadPreviousSessionOption } from './types';\n\nconst CHAT_TRIGGER_PATH_IDENTIFIER = 'chat';\nconst allowFileUploadsOption: INodeProperties = {\n\tdisplayName: 'Allow File Uploads',\n\tname: 'allowFileUploads',\n\ttype: 'boolean',\n\tdefault: false,\n\tdescription: 'Whether to allow file uploads in the chat',\n};\nconst allowedFileMimeTypeOption: INodeProperties = {\n\tdisplayName: 'Allowed File Mime Types',\n\tname: 'allowedFilesMimeTypes',\n\ttype: 'string',\n\tdefault: '*',\n\tplaceholder: 'e.g. image/*, text/*, application/pdf',\n\tdescription:\n\t\t'Allowed file types for upload. Comma-separated list of <a href=\"https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types/Common_types\" target=\"_blank\">MIME types</a>.',\n};\n\nconst respondToWebhookResponseMode = {\n\tname: \"Using 'Respond to Webhook' Node\",\n\tvalue: 'responseNode',\n\tdescription: 'Response defined in that node',\n};\n\nconst lastNodeResponseMode = {\n\tname: 'When Last Node Finishes',\n\tvalue: 'lastNode',\n\tdescription: 'Returns data of the last-executed node',\n};\n\nconst streamingResponseMode = {\n\tname: 'Streaming',\n\tvalue: 'streaming',\n\tdescription: 'Streaming response from specified nodes (e.g. Agents)',\n};\n\nconst respondNodesResponseMode = {\n\tname: 'Using Response Nodes',\n\tvalue: 'responseNodes',\n\tdescription: \"Send responses to the chat by using 'Respond to Chat' node\",\n};\n\nconst commonOptionsFields: INodeProperties[] = [\n\t// CORS parameters are only valid for when chat is used in hosted or webhook mode\n\t{\n\t\tdisplayName: 'Allowed Origins (CORS)',\n\t\tname: 'allowedOrigins',\n\t\ttype: 'string',\n\t\tdefault: '*',\n\t\tdescription:\n\t\t\t'Comma-separated list of URLs allowed for cross-origin non-preflight requests. Use * (default) to allow all origins.',\n\t\tdisplayOptions: {\n\t\t\tshow: {\n\t\t\t\t'/mode': ['hostedChat', 'webhook'],\n\t\t\t},\n\t\t},\n\t},\n\t{\n\t\t...allowFileUploadsOption,\n\t\tdisplayOptions: {\n\t\t\tshow: {\n\t\t\t\t'/mode': ['hostedChat'],\n\t\t\t},\n\t\t},\n\t},\n\t{\n\t\t...allowedFileMimeTypeOption,\n\t\tdisplayOptions: {\n\t\t\tshow: {\n\t\t\t\t'/mode': ['hostedChat'],\n\t\t\t},\n\t\t},\n\t},\n\t{\n\t\tdisplayName: 'Input Placeholder',\n\t\tname: 'inputPlaceholder',\n\t\ttype: 'string',\n\t\tdisplayOptions: {\n\t\t\tshow: {\n\t\t\t\t'/mode': ['hostedChat'],\n\t\t\t},\n\t\t},\n\t\tdefault: 'Type your question..',\n\t\tplaceholder: 'e.g. Type your message here',\n\t\tdescription: 'Shown as placeholder text in the chat input field',\n\t},\n\t{\n\t\tdisplayName: 'Load Previous Session',\n\t\tname: 'loadPreviousSession',\n\t\ttype: 'options',\n\t\toptions: [\n\t\t\t{\n\t\t\t\tname: 'Off',\n\t\t\t\tvalue: 'notSupported',\n\t\t\t\tdescription: 'Loading messages of previous session is turned off',\n\t\t\t},\n\t\t\t{\n\t\t\t\tname: 'From Memory',\n\t\t\t\tvalue: 'memory',\n\t\t\t\tdescription: 'Load session messages from memory',\n\t\t\t},\n\t\t\t{\n\t\t\t\tname: 'Manually',\n\t\t\t\tvalue: 'manually',\n\t\t\t\tdescription: 'Manually return messages of session',\n\t\t\t},\n\t\t],\n\t\tdefault: 'notSupported',\n\t\tdescription: 'If loading messages of a previous session should be enabled',\n\t},\n\t{\n\t\tdisplayName: 'Require Button Click to Start Chat',\n\t\tname: 'showWelcomeScreen',\n\t\ttype: 'boolean',\n\t\tdisplayOptions: {\n\t\t\tshow: {\n\t\t\t\t'/mode': ['hostedChat'],\n\t\t\t},\n\t\t},\n\t\tdefault: false,\n\t\tdescription: 'Whether to show the welcome screen at the start of the chat',\n\t},\n\t{\n\t\tdisplayName: 'Start Conversation Button Text',\n\t\tname: 'getStarted',\n\t\ttype: 'string',\n\t\tdisplayOptions: {\n\t\t\tshow: {\n\t\t\t\tshowWelcomeScreen: [true],\n\t\t\t\t'/mode': ['hostedChat'],\n\t\t\t},\n\t\t},\n\t\tdefault: 'New Conversation',\n\t\tplaceholder: 'e.g. New Conversation',\n\t\tdescription: 'Shown as part of the welcome screen, in the middle of the chat window',\n\t},\n\t{\n\t\tdisplayName: 'Subtitle',\n\t\tname: 'subtitle',\n\t\ttype: 'string',\n\t\tdisplayOptions: {\n\t\t\tshow: {\n\t\t\t\t'/mode': ['hostedChat'],\n\t\t\t},\n\t\t},\n\t\tdefault: \"Start a chat. We're here to help you 24/7.\",\n\t\tplaceholder: \"e.g. We're here for you\",\n\t\tdescription: 'Shown at the top of the chat, under the title',\n\t},\n\t{\n\t\tdisplayName: 'Title',\n\t\tname: 'title',\n\t\ttype: 'string',\n\t\tdisplayOptions: {\n\t\t\tshow: {\n\t\t\t\t'/mode': ['hostedChat'],\n\t\t\t},\n\t\t},\n\t\tdefault: 'Hi there! 👋',\n\t\tplaceholder: 'e.g. Welcome',\n\t\tdescription: 'Shown at the top of the chat',\n\t},\n\t{\n\t\tdisplayName: 'Custom Chat Styling',\n\t\tname: 'customCss',\n\t\ttype: 'string',\n\t\ttypeOptions: {\n\t\t\trows: 10,\n\t\t\teditor: 'cssEditor',\n\t\t},\n\t\tdisplayOptions: {\n\t\t\tshow: {\n\t\t\t\t'/mode': ['hostedChat'],\n\t\t\t},\n\t\t},\n\t\tdefault: `\n${cssVariables}\n\n/* You can override any class styles, too. Right-click inspect in Chat UI to find class to override. */\n.chat-message {\n\tmax-width: 50%;\n}\n`.trim(),\n\t\tdescription: 'Override default styling of the public chat interface with CSS',\n\t},\n];\n\nexport class ChatTrigger extends Node {\n\tdescription: INodeTypeDescription = {\n\t\tdisplayName: 'Chat Trigger',\n\t\tname: 'chatTrigger',\n\t\ticon: 'fa:comments',\n\t\ticonColor: 'black',\n\t\tgroup: ['trigger'],\n\t\tversion: [1, 1.1, 1.2, 1.3, 1.4],\n\t\tdefaultVersion: 1.4,\n\t\tdescription: 'Runs the workflow when an n8n generated webchat is submitted',\n\t\tdefaults: {\n\t\t\tname: 'When chat message received',\n\t\t},\n\t\tcodex: {\n\t\t\tcategories: ['Core Nodes'],\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/core-nodes/n8n-nodes-langchain.chattrigger/',\n\t\t\t\t\t},\n\t\t\t\t],\n\t\t\t},\n\t\t},\n\t\tmaxNodes: 1,\n\t\tinputs: `={{ (() => {\n\t\t\tif (!['hostedChat', 'webhook'].includes($parameter.mode)) {\n\t\t\t\treturn [];\n\t\t\t}\n\t\t\tif ($parameter.options?.loadPreviousSession !== 'memory') {\n\t\t\t\treturn [];\n\t\t\t}\n\n\t\t\treturn [\n\t\t\t\t{\n\t\t\t\t\tdisplayName: 'Memory',\n\t\t\t\t\tmaxConnections: 1,\n\t\t\t\t\ttype: '${NodeConnectionTypes.AiMemory}',\n\t\t\t\t\trequired: true,\n\t\t\t\t}\n\t\t\t];\n\t\t })() }}`,\n\t\toutputs: [NodeConnectionTypes.Main],\n\t\tcredentials: [\n\t\t\t{\n\t\t\t\t// eslint-disable-next-line n8n-nodes-base/node-class-description-credentials-name-unsuffixed\n\t\t\t\tname: 'httpBasicAuth',\n\t\t\t\trequired: true,\n\t\t\t\tdisplayOptions: {\n\t\t\t\t\tshow: {\n\t\t\t\t\t\tauthentication: ['basicAuth'],\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t],\n\t\twebhooks: [\n\t\t\t{\n\t\t\t\tname: 'setup',\n\t\t\t\thttpMethod: 'GET',\n\t\t\t\tresponseMode: 'onReceived',\n\t\t\t\tpath: CHAT_TRIGGER_PATH_IDENTIFIER,\n\t\t\t\tndvHideUrl: true,\n\t\t\t},\n\t\t\t{\n\t\t\t\tname: 'default',\n\t\t\t\thttpMethod: 'POST',\n\t\t\t\tresponseMode:\n\t\t\t\t\t'={{$parameter.options?.[\"responseMode\"] ?? ($parameter.availableInChat ? \"streaming\" : \"lastNode\") }}',\n\t\t\t\tpath: CHAT_TRIGGER_PATH_IDENTIFIER,\n\t\t\t\tndvHideMethod: true,\n\t\t\t\tndvHideUrl: '={{ !$parameter.public }}',\n\t\t\t},\n\t\t],\n\t\teventTriggerDescription: 'Waiting for you to submit the chat',\n\t\tactivationMessage: 'You can now make calls to your production chat URL.',\n\t\ttriggerPanel: false,\n\t\tproperties: [\n\t\t\t/**\n\t\t\t * @note If we change this property, also update it in ChatEmbedModal.vue\n\t\t\t */\n\t\t\t{\n\t\t\t\tdisplayName: 'Make Chat Publicly Available',\n\t\t\t\tname: 'public',\n\t\t\t\ttype: 'boolean',\n\t\t\t\tdefault: false,\n\t\t\t\tdescription:\n\t\t\t\t\t'Whether the chat should be publicly available or only accessible through the manual chat interface',\n\t\t\t},\n\t\t\t{\n\t\t\t\tdisplayName: 'Mode',\n\t\t\t\tname: 'mode',\n\t\t\t\ttype: 'options',\n\t\t\t\toptions: [\n\t\t\t\t\t{\n\t\t\t\t\t\tname: 'Hosted Chat',\n\t\t\t\t\t\tvalue: 'hostedChat',\n\t\t\t\t\t\tdescription: 'Chat on a page served by n8n',\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tname: 'Embedded Chat',\n\t\t\t\t\t\tvalue: 'webhook',\n\t\t\t\t\t\tdescription: 'Chat through a widget embedded in another page, or by calling a webhook',\n\t\t\t\t\t},\n\t\t\t\t],\n\t\t\t\tdefault: 'hostedChat',\n\t\t\t\tdisplayOptions: {\n\t\t\t\t\tshow: {\n\t\t\t\t\t\tpublic: [true],\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\t{\n\t\t\t\tdisplayName:\n\t\t\t\t\t'Chat will be live at the URL above once this workflow is published. Live executions will show up in the ‘executions’ tab',\n\t\t\t\tname: 'hostedChatNotice',\n\t\t\t\ttype: 'notice',\n\t\t\t\tdisplayOptions: {\n\t\t\t\t\tshow: {\n\t\t\t\t\t\tmode: ['hostedChat'],\n\t\t\t\t\t\tpublic: [true],\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tdefault: '',\n\t\t\t},\n\t\t\t{\n\t\t\t\tdisplayName:\n\t\t\t\t\t'Follow the instructions <a href=\"https://www.npmjs.com/package/@n8n/chat\" target=\"_blank\">here</a> to embed chat in a webpage (or just call the webhook URL at the top of this section). Chat will be live once you publish this workflow',\n\t\t\t\tname: 'embeddedChatNotice',\n\t\t\t\ttype: 'notice',\n\t\t\t\tdisplayOptions: {\n\t\t\t\t\tshow: {\n\t\t\t\t\t\tmode: ['webhook'],\n\t\t\t\t\t\tpublic: [true],\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tdefault: '',\n\t\t\t},\n\t\t\t{\n\t\t\t\tdisplayName: 'Authentication',\n\t\t\t\tname: 'authentication',\n\t\t\t\ttype: 'options',\n\t\t\t\tdisplayOptions: {\n\t\t\t\t\tshow: {\n\t\t\t\t\t\tpublic: [true],\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\toptions: [\n\t\t\t\t\t{\n\t\t\t\t\t\tname: 'Basic Auth',\n\t\t\t\t\t\tvalue: 'basicAuth',\n\t\t\t\t\t\tdescription: 'Simple username and password (the same one for all users)',\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\t// eslint-disable-next-line n8n-nodes-base/node-param-display-name-miscased\n\t\t\t\t\t\tname: 'n8n User Auth',\n\t\t\t\t\t\tvalue: 'n8nUserAuth',\n\t\t\t\t\t\tdescription: 'Require user to be logged in with their n8n account',\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tname: 'None',\n\t\t\t\t\t\tvalue: 'none',\n\t\t\t\t\t},\n\t\t\t\t],\n\t\t\t\tdefault: 'none',\n\t\t\t\tdescription: 'The way to authenticate',\n\t\t\t},\n\t\t\t{\n\t\t\t\tdisplayName: 'Initial Message(s)',\n\t\t\t\tname: 'initialMessages',\n\t\t\t\ttype: 'string',\n\t\t\t\tdisplayOptions: {\n\t\t\t\t\tshow: {\n\t\t\t\t\t\tmode: ['hostedChat'],\n\t\t\t\t\t\tpublic: [true],\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\ttypeOptions: {\n\t\t\t\t\trows: 3,\n\t\t\t\t},\n\t\t\t\tdefault: 'Hi there! 👋\\nMy name is Nathan. How can I assist you today?',\n\t\t\t\tdescription: 'Default messages shown at the start of the chat, one per line',\n\t\t\t},\n\t\t\t{\n\t\t\t\t// eslint-disable-next-line n8n-nodes-base/node-param-display-name-miscased\n\t\t\t\tdisplayName: 'Make Available in n8n Chat',\n\t\t\t\tname: 'availableInChat',\n\t\t\t\ttype: 'boolean',\n\t\t\t\tdefault: false,\n\t\t\t\tnoDataExpression: true,\n\t\t\t\tdescription: 'Whether to make the agent available in n8n Chat',\n\t\t\t},\n\t\t\t{\n\t\t\t\tdisplayName:\n\t\t\t\t\t'Your Chat Trigger node is out of date. To update, delete this node and insert a new Chat Trigger node.',\n\t\t\t\tname: 'availableInChatNotice',\n\t\t\t\ttype: 'notice',\n\t\t\t\tdisplayOptions: {\n\t\t\t\t\tshow: {\n\t\t\t\t\t\tavailableInChat: [true],\n\t\t\t\t\t\t'@version': [{ _cnd: { lt: 1.2 } }],\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tdefault: '',\n\t\t\t},\n\t\t\t{\n\t\t\t\tdisplayName:\n\t\t\t\t\t'Your n8n users will be able to use this agent in <a href=\"/home/chat/\" target=\"_blank\">Chat</a> once this workflow is published. Make sure to share this workflow with at least Project Chat User access to all users who should use it. Currently, only streaming response mode is supported.',\n\t\t\t\tname: 'availableInChatNotice',\n\t\t\t\ttype: 'notice',\n\t\t\t\tdisplayOptions: {\n\t\t\t\t\tshow: {\n\t\t\t\t\t\tavailableInChat: [true],\n\t\t\t\t\t\t'@version': [{ _cnd: { gte: 1.2 } }],\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tdefault: '',\n\t\t\t},\n\t\t\t{\n\t\t\t\tdisplayName: 'Agent Name',\n\t\t\t\tname: 'agentName',\n\t\t\t\ttype: 'string',\n\t\t\t\tdefault: '',\n\t\t\t\tnoDataExpression: true,\n\t\t\t\tdescription:\n\t\t\t\t\t'The name of the agent on n8n Chat. Name of the workflow is used if left empty.',\n\t\t\t\tdisplayOptions: {\n\t\t\t\t\tshow: {\n\t\t\t\t\t\tavailableInChat: [true],\n\t\t\t\t\t\t'@version': [{ _cnd: { gte: 1.2 } }],\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\t{\n\t\t\t\tdisplayName: 'Agent Description',\n\t\t\t\tname: 'agentDescription',\n\t\t\t\ttype: 'string',\n\t\t\t\ttypeOptions: {\n\t\t\t\t\trows: 2,\n\t\t\t\t},\n\t\t\t\tdefault: '',\n\t\t\t\tnoDataExpression: true,\n\t\t\t\tdescription: 'The description of the agent on n8n Chat',\n\t\t\t\tdisplayOptions: {\n\t\t\t\t\tshow: {\n\t\t\t\t\t\tavailableInChat: [true],\n\t\t\t\t\t\t'@version': [{ _cnd: { gte: 1.2 } }],\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\tdisplayOptions: {\n\t\t\t\t\tshow: {\n\t\t\t\t\t\tpublic: [false],\n\t\t\t\t\t\t'@version': [1, 1.1],\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tplaceholder: 'Add Field',\n\t\t\t\tdefault: {},\n\t\t\t\toptions: [allowFileUploadsOption, allowedFileMimeTypeOption],\n\t\t\t},\n\t\t\t// Options for versions 1.0 and 1.1 (without streaming)\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\tdisplayOptions: {\n\t\t\t\t\tshow: {\n\t\t\t\t\t\tmode: ['hostedChat', 'webhook'],\n\t\t\t\t\t\tpublic: [true],\n\t\t\t\t\t\t'@version': [1, 1.1],\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tplaceholder: 'Add Field',\n\t\t\t\tdefault: {},\n\t\t\t\toptions: [\n\t\t\t\t\t...commonOptionsFields,\n\t\t\t\t\t{\n\t\t\t\t\t\tdisplayName: 'Response Mode',\n\t\t\t\t\t\tname: 'responseMode',\n\t\t\t\t\t\ttype: 'options',\n\t\t\t\t\t\toptions: [lastNodeResponseMode, respondToWebhookResponseMode],\n\t\t\t\t\t\tdefault: 'lastNode',\n\t\t\t\t\t\tdescription: 'When and how to respond to the webhook',\n\t\t\t\t\t},\n\t\t\t\t],\n\t\t\t},\n\t\t\t// Options for version 1.2 (with streaming)\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\tdisplayOptions: {\n\t\t\t\t\tshow: {\n\t\t\t\t\t\tmode: ['hostedChat', 'webhook'],\n\t\t\t\t\t\tpublic: [true],\n\t\t\t\t\t\t'@version': [1.2],\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tplaceholder: 'Add Field',\n\t\t\t\tdefault: {},\n\t\t\t\toptions: [\n\t\t\t\t\t...commonOptionsFields,\n\t\t\t\t\t{\n\t\t\t\t\t\tdisplayName: 'Response Mode',\n\t\t\t\t\t\tname: 'responseMode',\n\t\t\t\t\t\ttype: 'options',\n\t\t\t\t\t\toptions: [lastNodeResponseMode, respondToWebhookResponseMode, streamingResponseMode],\n\t\t\t\t\t\tdefault: 'lastNode',\n\t\t\t\t\t\tdescription: 'When and how to respond to the webhook',\n\t\t\t\t\t\tdisplayOptions: { show: { '/availableInChat': [false] } },\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tdisplayName: 'Response Mode',\n\t\t\t\t\t\tname: 'responseMode',\n\t\t\t\t\t\ttype: 'options',\n\t\t\t\t\t\toptions: [streamingResponseMode],\n\t\t\t\t\t\tdefault: 'streaming',\n\t\t\t\t\t\tdescription: 'When and how to respond to the webhook',\n\t\t\t\t\t\tdisplayOptions: { show: { '/availableInChat': [true] } },\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\tdisplayOptions: {\n\t\t\t\t\tshow: {\n\t\t\t\t\t\tpublic: [false],\n\t\t\t\t\t\t'@version': [{ _cnd: { gte: 1.3 } }],\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tplaceholder: 'Add Field',\n\t\t\t\tdefault: {},\n\t\t\t\toptions: [\n\t\t\t\t\tallowFileUploadsOption,\n\t\t\t\t\tallowedFileMimeTypeOption,\n\t\t\t\t\t{\n\t\t\t\t\t\tdisplayName: 'Response Mode',\n\t\t\t\t\t\tname: 'responseMode',\n\t\t\t\t\t\ttype: 'options',\n\t\t\t\t\t\toptions: [lastNodeResponseMode, respondNodesResponseMode, streamingResponseMode],\n\t\t\t\t\t\tdefault: 'lastNode',\n\t\t\t\t\t\tdescription: 'When and how to respond to the chat',\n\t\t\t\t\t\tdisplayOptions: { show: { '/availableInChat': [false] } },\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tdisplayName: 'Response Mode',\n\t\t\t\t\t\tname: 'responseMode',\n\t\t\t\t\t\ttype: 'options',\n\t\t\t\t\t\toptions: [streamingResponseMode],\n\t\t\t\t\t\tdefault: 'streaming',\n\t\t\t\t\t\tdescription: 'When and how to respond to the webhook',\n\t\t\t\t\t\tdisplayOptions: { show: { '/availableInChat': [true] } },\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\tdisplayOptions: {\n\t\t\t\t\tshow: {\n\t\t\t\t\t\tmode: ['hostedChat', 'webhook'],\n\t\t\t\t\t\tpublic: [true],\n\t\t\t\t\t\t'@version': [{ _cnd: { gte: 1.3 } }],\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tplaceholder: 'Add Field',\n\t\t\t\tdefault: {},\n\t\t\t\toptions: [\n\t\t\t\t\t...commonOptionsFields,\n\t\t\t\t\t{\n\t\t\t\t\t\tdisplayName: 'Response Mode',\n\t\t\t\t\t\tname: 'responseMode',\n\t\t\t\t\t\ttype: 'options',\n\t\t\t\t\t\toptions: [streamingResponseMode],\n\t\t\t\t\t\tdefault: 'streaming',\n\t\t\t\t\t\tdescription: 'When and how to respond to the webhook',\n\t\t\t\t\t\tdisplayOptions: { show: { '/availableInChat': [true] } },\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tdisplayName: 'Response Mode',\n\t\t\t\t\t\tname: 'responseMode',\n\t\t\t\t\t\ttype: 'options',\n\t\t\t\t\t\toptions: [lastNodeResponseMode, streamingResponseMode, respondToWebhookResponseMode],\n\t\t\t\t\t\tdefault: 'lastNode',\n\t\t\t\t\t\tdescription: 'When and how to respond to the chat',\n\t\t\t\t\t\tdisplayOptions: { show: { '/mode': ['webhook'], '/availableInChat': [false] } },\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tdisplayName: 'Response Mode',\n\t\t\t\t\t\tname: 'responseMode',\n\t\t\t\t\t\ttype: 'options',\n\t\t\t\t\t\toptions: [lastNodeResponseMode, streamingResponseMode, respondNodesResponseMode],\n\t\t\t\t\t\tdefault: 'lastNode',\n\t\t\t\t\t\tdescription: 'When and how to respond to the webhook',\n\t\t\t\t\t\tdisplayOptions: { show: { '/mode': ['hostedChat'], '/availableInChat': [false] } },\n\t\t\t\t\t},\n\t\t\t\t],\n\t\t\t},\n\t\t],\n\t};\n\n\tprivate async handleFormData(context: IWebhookFunctions) {\n\t\tconst req = context.getRequestObject() as MultiPartFormData.Request;\n\t\ta.ok(req.contentType === 'multipart/form-data', 'Expected multipart/form-data');\n\t\tconst options = context.getNodeParameter('options', {}) as IDataObject;\n\t\tconst { data, files } = req.body;\n\n\t\tconst returnItem: INodeExecutionData = {\n\t\t\tjson: data,\n\t\t};\n\n\t\tif (files && Object.keys(files).length) {\n\t\t\treturnItem.json.files = [] as Array<Omit<IBinaryData, 'data'>>;\n\t\t\treturnItem.binary = {};\n\n\t\t\tconst count = 0;\n\t\t\tfor (const fileKey of Object.keys(files)) {\n\t\t\t\tconst processedFiles: MultiPartFormData.File[] = [];\n\t\t\t\tif (Array.isArray(files[fileKey])) {\n\t\t\t\t\tprocessedFiles.push(...files[fileKey]);\n\t\t\t\t} else {\n\t\t\t\t\tprocessedFiles.push(files[fileKey]);\n\t\t\t\t}\n\n\t\t\t\tlet fileIndex = 0;\n\t\t\t\tfor (const file of processedFiles) {\n\t\t\t\t\tlet binaryPropertyName = 'data';\n\n\t\t\t\t\t// Remove the '[]' suffix from the binaryPropertyName if it exists\n\t\t\t\t\tif (binaryPropertyName.endsWith('[]')) {\n\t\t\t\t\t\tbinaryPropertyName = binaryPropertyName.slice(0, -2);\n\t\t\t\t\t}\n\t\t\t\t\tif (options.binaryPropertyName) {\n\t\t\t\t\t\tbinaryPropertyName = `${options.binaryPropertyName.toString()}${count}`;\n\t\t\t\t\t}\n\n\t\t\t\t\tconst binaryFile = await context.nodeHelpers.copyBinaryFile(\n\t\t\t\t\t\tfile.filepath,\n\t\t\t\t\t\tfile.originalFilename ?? file.newFilename,\n\t\t\t\t\t\tfile.mimetype,\n\t\t\t\t\t);\n\n\t\t\t\t\tconst binaryKey = `${binaryPropertyName}${fileIndex}`;\n\n\t\t\t\t\tconst binaryInfo = {\n\t\t\t\t\t\t...pick(binaryFile, ['fileName', 'fileSize', 'fileType', 'mimeType', 'fileExtension']),\n\t\t\t\t\t\tbinaryKey,\n\t\t\t\t\t};\n\n\t\t\t\t\treturnItem.binary = Object.assign(returnItem.binary ?? {}, {\n\t\t\t\t\t\t[`${binaryKey}`]: binaryFile,\n\t\t\t\t\t});\n\t\t\t\t\treturnItem.json.files = [\n\t\t\t\t\t\t...(returnItem.json.files as Array<Omit<IBinaryData, 'data'>>),\n\t\t\t\t\t\tbinaryInfo,\n\t\t\t\t\t];\n\t\t\t\t\tfileIndex += 1;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn returnItem;\n\t}\n\n\tasync webhook(ctx: IWebhookFunctions): Promise<IWebhookResponseData> {\n\t\tconst res = ctx.getResponseObject();\n\n\t\tconst isPublic = ctx.getNodeParameter('public', false);\n\t\tassertParamIsBoolean('public', isPublic, ctx.getNode());\n\n\t\tconst nodeMode = ctx.getNodeParameter('mode', 'hostedChat');\n\t\tassertParamIsString('mode', nodeMode, ctx.getNode());\n\n\t\tif (!isPublic) {\n\t\t\tres.status(404).end();\n\t\t\treturn {\n\t\t\t\tnoWebhookResponse: true,\n\t\t\t};\n\t\t}\n\n\t\tconst availableInChat = ctx.getNodeParameter('availableInChat', false);\n\t\tconst options = ctx.getNodeParameter('options', {});\n\t\tvalidateNodeParameters(\n\t\t\toptions,\n\t\t\t{\n\t\t\t\tgetStarted: { type: 'string' },\n\t\t\t\tinputPlaceholder: { type: 'string' },\n\t\t\t\tloadPreviousSession: { type: 'string' },\n\t\t\t\tshowWelcomeScreen: { type: 'boolean' },\n\t\t\t\tsubtitle: { type: 'string' },\n\t\t\t\ttitle: { type: 'string' },\n\t\t\t\tallowFileUploads: { type: 'boolean' },\n\t\t\t\tallowedFilesMimeTypes: { type: 'string' },\n\t\t\t\tcustomCss: { type: 'string' },\n\t\t\t\tresponseMode: { type: 'string' },\n\t\t\t},\n\t\t\tctx.getNode(),\n\t\t);\n\n\t\tconst loadPreviousSession = options.loadPreviousSession;\n\t\tassertValidLoadPreviousSessionOption(loadPreviousSession, ctx.getNode());\n\n\t\tconst enableStreaming = availableInChat\n\t\t\t? !options.responseMode || options.responseMode === 'streaming'\n\t\t\t: options.responseMode === 'streaming';\n\n\t\tconst req = ctx.getRequestObject();\n\t\tconst webhookName = ctx.getWebhookName();\n\t\tconst mode = ctx.getMode() === 'manual' ? 'test' : 'production';\n\t\tconst bodyData = ctx.getBodyData() ?? {};\n\n\t\ttry {\n\t\t\tawait validateAuth(ctx);\n\t\t} catch (error) {\n\t\t\tif (error) {\n\t\t\t\tres.writeHead((error as IDataObject).responseCode as number, {\n\t\t\t\t\t'www-authenticate': 'Basic realm=\"Webhook\"',\n\t\t\t\t});\n\t\t\t\tres.end((error as IDataObject).message as string);\n\t\t\t\treturn { noWebhookResponse: true };\n\t\t\t}\n\t\t\tthrow error;\n\t\t}\n\t\tif (nodeMode === 'hostedChat') {\n\t\t\t// Show the chat on GET request\n\t\t\tif (webhookName === 'setup') {\n\t\t\t\tconst webhookUrlRaw = ctx.getNodeWebhookUrl('default');\n\t\t\t\tif (!webhookUrlRaw) {\n\t\t\t\t\tthrow new NodeOperationError(ctx.getNode(), 'Default webhook url not set');\n\t\t\t\t}\n\n\t\t\t\tconst webhookUrl =\n\t\t\t\t\tmode === 'test' ? webhookUrlRaw.replace('/webhook', '/webhook-test') : webhookUrlRaw;\n\t\t\t\tconst authentication = ctx.getNodeParameter('authentication') as\n\t\t\t\t\t| 'none'\n\t\t\t\t\t| 'basicAuth'\n\t\t\t\t\t| 'n8nUserAuth';\n\t\t\t\tconst initialMessagesRaw = ctx.getNodeParameter('initialMessages', '');\n\t\t\t\tassertParamIsString('initialMessage', initialMessagesRaw, ctx.getNode());\n\t\t\t\tconst instanceId = ctx.getInstanceId();\n\n\t\t\t\tconst i18nConfig: Record<string, string> = {};\n\t\t\t\tconst keys = ['getStarted', 'inputPlaceholder', 'subtitle', 'title'] as const;\n\t\t\t\tfor (const key of keys) {\n\t\t\t\t\tif (options[key] !== undefined) {\n\t\t\t\t\t\ti18nConfig[key] = options[key];\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tconst page = createPage({\n\t\t\t\t\ti18n: {\n\t\t\t\t\t\ten: i18nConfig,\n\t\t\t\t\t},\n\t\t\t\t\tshowWelcomeScreen: options.showWelcomeScreen,\n\t\t\t\t\tloadPreviousSession,\n\t\t\t\t\tinitialMessages: initialMessagesRaw,\n\t\t\t\t\twebhookUrl,\n\t\t\t\t\tmode,\n\t\t\t\t\tinstanceId,\n\t\t\t\t\tauthentication,\n\t\t\t\t\tallowFileUploads: options.allowFileUploads,\n\t\t\t\t\tallowedFilesMimeTypes: options.allowedFilesMimeTypes,\n\t\t\t\t\tcustomCss: options.customCss,\n\t\t\t\t\tenableStreaming,\n\t\t\t\t});\n\n\t\t\t\tres.status(200).send(page).end();\n\t\t\t\treturn {\n\t\t\t\t\tnoWebhookResponse: true,\n\t\t\t\t};\n\t\t\t}\n\t\t}\n\n\t\tif (bodyData.action === 'loadPreviousSession') {\n\t\t\tif (options?.loadPreviousSession === 'memory') {\n\t\t\t\tconst memory = (await ctx.getInputConnectionData(NodeConnectionTypes.AiMemory, 0)) as\n\t\t\t\t\t| BaseChatMemory\n\t\t\t\t\t| undefined;\n\t\t\t\tconst messages = ((await memory?.chatHistory.getMessages()) ?? [])\n\t\t\t\t\t.filter((message) => !message?.additional_kwargs?.hideFromUI)\n\t\t\t\t\t.map((message) => message?.toJSON());\n\t\t\t\treturn {\n\t\t\t\t\twebhookResponse: { data: messages },\n\t\t\t\t};\n\t\t\t} else if (!options?.loadPreviousSession || options?.loadPreviousSession === 'notSupported') {\n\t\t\t\t// If messages of a previous session should not be loaded, simply return an empty array\n\t\t\t\treturn {\n\t\t\t\t\twebhookResponse: { data: [] },\n\t\t\t\t};\n\t\t\t}\n\t\t}\n\n\t\tlet returnData: INodeExecutionData[];\n\t\tconst webhookResponse: IDataObject = { status: 200 };\n\n\t\t// Handle streaming responses\n\t\tif (enableStreaming) {\n\t\t\t// Set up streaming response headers\n\t\t\tres.writeHead(200, {\n\t\t\t\t'Content-Type': 'application/json; charset=utf-8',\n\t\t\t\t'Transfer-Encoding': 'chunked',\n\t\t\t\t'Cache-Control': 'no-cache',\n\t\t\t\tConnection: 'keep-alive',\n\t\t\t});\n\n\t\t\t// Flush headers immediately\n\t\t\tres.flushHeaders();\n\n\t\t\tif (req.contentType === 'multipart/form-data') {\n\t\t\t\treturnData = [await this.handleFormData(ctx)];\n\t\t\t} else {\n\t\t\t\treturnData = [{ json: bodyData }];\n\t\t\t}\n\n\t\t\treturn {\n\t\t\t\tworkflowData: [ctx.helpers.returnJsonArray(returnData)],\n\t\t\t\tnoWebhookResponse: true,\n\t\t\t};\n\t\t}\n\n\t\tif (req.contentType === 'multipart/form-data') {\n\t\t\treturnData = [await this.handleFormData(ctx)];\n\t\t\treturn {\n\t\t\t\twebhookResponse,\n\t\t\t\tworkflowData: [returnData],\n\t\t\t};\n\t\t} else {\n\t\t\treturnData = [{ json: bodyData }];\n\t\t}\n\n\t\treturn {\n\t\t\twebhookResponse,\n\t\t\tworkflowData: [ctx.helpers.returnJsonArray(returnData)],\n\t\t};\n\t}\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,kBAAiB;AACjB,0BAOO;AAWP,QAAmB;AAEnB,uBAA6B;AAC7B,8BAA6B;AAC7B,uBAA2B;AAC3B,mBAAqD;AAErD,MAAM,+BAA+B;AACrC,MAAM,yBAA0C;AAAA,EAC/C,aAAa;AAAA,EACb,MAAM;AAAA,EACN,MAAM;AAAA,EACN,SAAS;AAAA,EACT,aAAa;AACd;AACA,MAAM,4BAA6C;AAAA,EAClD,aAAa;AAAA,EACb,MAAM;AAAA,EACN,MAAM;AAAA,EACN,SAAS;AAAA,EACT,aAAa;AAAA,EACb,aACC;AACF;AAEA,MAAM,+BAA+B;AAAA,EACpC,MAAM;AAAA,EACN,OAAO;AAAA,EACP,aAAa;AACd;AAEA,MAAM,uBAAuB;AAAA,EAC5B,MAAM;AAAA,EACN,OAAO;AAAA,EACP,aAAa;AACd;AAEA,MAAM,wBAAwB;AAAA,EAC7B,MAAM;AAAA,EACN,OAAO;AAAA,EACP,aAAa;AACd;AAEA,MAAM,2BAA2B;AAAA,EAChC,MAAM;AAAA,EACN,OAAO;AAAA,EACP,aAAa;AACd;AAEA,MAAM,sBAAyC;AAAA;AAAA,EAE9C;AAAA,IACC,aAAa;AAAA,IACb,MAAM;AAAA,IACN,MAAM;AAAA,IACN,SAAS;AAAA,IACT,aACC;AAAA,IACD,gBAAgB;AAAA,MACf,MAAM;AAAA,QACL,SAAS,CAAC,cAAc,SAAS;AAAA,MAClC;AAAA,IACD;AAAA,EACD;AAAA,EACA;AAAA,IACC,GAAG;AAAA,IACH,gBAAgB;AAAA,MACf,MAAM;AAAA,QACL,SAAS,CAAC,YAAY;AAAA,MACvB;AAAA,IACD;AAAA,EACD;AAAA,EACA;AAAA,IACC,GAAG;AAAA,IACH,gBAAgB;AAAA,MACf,MAAM;AAAA,QACL,SAAS,CAAC,YAAY;AAAA,MACvB;AAAA,IACD;AAAA,EACD;AAAA,EACA;AAAA,IACC,aAAa;AAAA,IACb,MAAM;AAAA,IACN,MAAM;AAAA,IACN,gBAAgB;AAAA,MACf,MAAM;AAAA,QACL,SAAS,CAAC,YAAY;AAAA,MACvB;AAAA,IACD;AAAA,IACA,SAAS;AAAA,IACT,aAAa;AAAA,IACb,aAAa;AAAA,EACd;AAAA,EACA;AAAA,IACC,aAAa;AAAA,IACb,MAAM;AAAA,IACN,MAAM;AAAA,IACN,SAAS;AAAA,MACR;AAAA,QACC,MAAM;AAAA,QACN,OAAO;AAAA,QACP,aAAa;AAAA,MACd;AAAA,MACA;AAAA,QACC,MAAM;AAAA,QACN,OAAO;AAAA,QACP,aAAa;AAAA,MACd;AAAA,MACA;AAAA,QACC,MAAM;AAAA,QACN,OAAO;AAAA,QACP,aAAa;AAAA,MACd;AAAA,IACD;AAAA,IACA,SAAS;AAAA,IACT,aAAa;AAAA,EACd;AAAA,EACA;AAAA,IACC,aAAa;AAAA,IACb,MAAM;AAAA,IACN,MAAM;AAAA,IACN,gBAAgB;AAAA,MACf,MAAM;AAAA,QACL,SAAS,CAAC,YAAY;AAAA,MACvB;AAAA,IACD;AAAA,IACA,SAAS;AAAA,IACT,aAAa;AAAA,EACd;AAAA,EACA;AAAA,IACC,aAAa;AAAA,IACb,MAAM;AAAA,IACN,MAAM;AAAA,IACN,gBAAgB;AAAA,MACf,MAAM;AAAA,QACL,mBAAmB,CAAC,IAAI;AAAA,QACxB,SAAS,CAAC,YAAY;AAAA,MACvB;AAAA,IACD;AAAA,IACA,SAAS;AAAA,IACT,aAAa;AAAA,IACb,aAAa;AAAA,EACd;AAAA,EACA;AAAA,IACC,aAAa;AAAA,IACb,MAAM;AAAA,IACN,MAAM;AAAA,IACN,gBAAgB;AAAA,MACf,MAAM;AAAA,QACL,SAAS,CAAC,YAAY;AAAA,MACvB;AAAA,IACD;AAAA,IACA,SAAS;AAAA,IACT,aAAa;AAAA,IACb,aAAa;AAAA,EACd;AAAA,EACA;AAAA,IACC,aAAa;AAAA,IACb,MAAM;AAAA,IACN,MAAM;AAAA,IACN,gBAAgB;AAAA,MACf,MAAM;AAAA,QACL,SAAS,CAAC,YAAY;AAAA,MACvB;AAAA,IACD;AAAA,IACA,SAAS;AAAA,IACT,aAAa;AAAA,IACb,aAAa;AAAA,EACd;AAAA,EACA;AAAA,IACC,aAAa;AAAA,IACb,MAAM;AAAA,IACN,MAAM;AAAA,IACN,aAAa;AAAA,MACZ,MAAM;AAAA,MACN,QAAQ;AAAA,IACT;AAAA,IACA,gBAAgB;AAAA,MACf,MAAM;AAAA,QACL,SAAS,CAAC,YAAY;AAAA,MACvB;AAAA,IACD;AAAA,IACA,SAAS;AAAA,EACT,6BAAY;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAMZ,KAAK;AAAA,IACL,aAAa;AAAA,EACd;AACD;AAEO,MAAM,oBAAoB,yBAAK;AAAA,EAA/B;AAAA;AACN,uBAAoC;AAAA,MACnC,aAAa;AAAA,MACb,MAAM;AAAA,MACN,MAAM;AAAA,MACN,WAAW;AAAA,MACX,OAAO,CAAC,SAAS;AAAA,MACjB,SAAS,CAAC,GAAG,KAAK,KAAK,KAAK,GAAG;AAAA,MAC/B,gBAAgB;AAAA,MAChB,aAAa;AAAA,MACb,UAAU;AAAA,QACT,MAAM;AAAA,MACP;AAAA,MACA,OAAO;AAAA,QACN,YAAY,CAAC,YAAY;AAAA,QACzB,WAAW;AAAA,UACV,sBAAsB;AAAA,YACrB;AAAA,cACC,KAAK;AAAA,YACN;AAAA,UACD;AAAA,QACD;AAAA,MACD;AAAA,MACA,UAAU;AAAA,MACV,QAAQ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,cAYI,wCAAoB,QAAQ;AAAA;AAAA;AAAA;AAAA;AAAA,MAKxC,SAAS,CAAC,wCAAoB,IAAI;AAAA,MAClC,aAAa;AAAA,QACZ;AAAA;AAAA,UAEC,MAAM;AAAA,UACN,UAAU;AAAA,UACV,gBAAgB;AAAA,YACf,MAAM;AAAA,cACL,gBAAgB,CAAC,WAAW;AAAA,YAC7B;AAAA,UACD;AAAA,QACD;AAAA,MACD;AAAA,MACA,UAAU;AAAA,QACT;AAAA,UACC,MAAM;AAAA,UACN,YAAY;AAAA,UACZ,cAAc;AAAA,UACd,MAAM;AAAA,UACN,YAAY;AAAA,QACb;AAAA,QACA;AAAA,UACC,MAAM;AAAA,UACN,YAAY;AAAA,UACZ,cACC;AAAA,UACD,MAAM;AAAA,UACN,eAAe;AAAA,UACf,YAAY;AAAA,QACb;AAAA,MACD;AAAA,MACA,yBAAyB;AAAA,MACzB,mBAAmB;AAAA,MACnB,cAAc;AAAA,MACd,YAAY;AAAA;AAAA;AAAA;AAAA,QAIX;AAAA,UACC,aAAa;AAAA,UACb,MAAM;AAAA,UACN,MAAM;AAAA,UACN,SAAS;AAAA,UACT,aACC;AAAA,QACF;AAAA,QACA;AAAA,UACC,aAAa;AAAA,UACb,MAAM;AAAA,UACN,MAAM;AAAA,UACN,SAAS;AAAA,YACR;AAAA,cACC,MAAM;AAAA,cACN,OAAO;AAAA,cACP,aAAa;AAAA,YACd;AAAA,YACA;AAAA,cACC,MAAM;AAAA,cACN,OAAO;AAAA,cACP,aAAa;AAAA,YACd;AAAA,UACD;AAAA,UACA,SAAS;AAAA,UACT,gBAAgB;AAAA,YACf,MAAM;AAAA,cACL,QAAQ,CAAC,IAAI;AAAA,YACd;AAAA,UACD;AAAA,QACD;AAAA,QACA;AAAA,UACC,aACC;AAAA,UACD,MAAM;AAAA,UACN,MAAM;AAAA,UACN,gBAAgB;AAAA,YACf,MAAM;AAAA,cACL,MAAM,CAAC,YAAY;AAAA,cACnB,QAAQ,CAAC,IAAI;AAAA,YACd;AAAA,UACD;AAAA,UACA,SAAS;AAAA,QACV;AAAA,QACA;AAAA,UACC,aACC;AAAA,UACD,MAAM;AAAA,UACN,MAAM;AAAA,UACN,gBAAgB;AAAA,YACf,MAAM;AAAA,cACL,MAAM,CAAC,SAAS;AAAA,cAChB,QAAQ,CAAC,IAAI;AAAA,YACd;AAAA,UACD;AAAA,UACA,SAAS;AAAA,QACV;AAAA,QACA;AAAA,UACC,aAAa;AAAA,UACb,MAAM;AAAA,UACN,MAAM;AAAA,UACN,gBAAgB;AAAA,YACf,MAAM;AAAA,cACL,QAAQ,CAAC,IAAI;AAAA,YACd;AAAA,UACD;AAAA,UACA,SAAS;AAAA,YACR;AAAA,cACC,MAAM;AAAA,cACN,OAAO;AAAA,cACP,aAAa;AAAA,YACd;AAAA,YACA;AAAA;AAAA,cAEC,MAAM;AAAA,cACN,OAAO;AAAA,cACP,aAAa;AAAA,YACd;AAAA,YACA;AAAA,cACC,MAAM;AAAA,cACN,OAAO;AAAA,YACR;AAAA,UACD;AAAA,UACA,SAAS;AAAA,UACT,aAAa;AAAA,QACd;AAAA,QACA;AAAA,UACC,aAAa;AAAA,UACb,MAAM;AAAA,UACN,MAAM;AAAA,UACN,gBAAgB;AAAA,YACf,MAAM;AAAA,cACL,MAAM,CAAC,YAAY;AAAA,cACnB,QAAQ,CAAC,IAAI;AAAA,YACd;AAAA,UACD;AAAA,UACA,aAAa;AAAA,YACZ,MAAM;AAAA,UACP;AAAA,UACA,SAAS;AAAA,UACT,aAAa;AAAA,QACd;AAAA,QACA;AAAA;AAAA,UAEC,aAAa;AAAA,UACb,MAAM;AAAA,UACN,MAAM;AAAA,UACN,SAAS;AAAA,UACT,kBAAkB;AAAA,UAClB,aAAa;AAAA,QACd;AAAA,QACA;AAAA,UACC,aACC;AAAA,UACD,MAAM;AAAA,UACN,MAAM;AAAA,UACN,gBAAgB;AAAA,YACf,MAAM;AAAA,cACL,iBAAiB,CAAC,IAAI;AAAA,cACtB,YAAY,CAAC,EAAE,MAAM,EAAE,IAAI,IAAI,EAAE,CAAC;AAAA,YACnC;AAAA,UACD;AAAA,UACA,SAAS;AAAA,QACV;AAAA,QACA;AAAA,UACC,aACC;AAAA,UACD,MAAM;AAAA,UACN,MAAM;AAAA,UACN,gBAAgB;AAAA,YACf,MAAM;AAAA,cACL,iBAAiB,CAAC,IAAI;AAAA,cACtB,YAAY,CAAC,EAAE,MAAM,EAAE,KAAK,IAAI,EAAE,CAAC;AAAA,YACpC;AAAA,UACD;AAAA,UACA,SAAS;AAAA,QACV;AAAA,QACA;AAAA,UACC,aAAa;AAAA,UACb,MAAM;AAAA,UACN,MAAM;AAAA,UACN,SAAS;AAAA,UACT,kBAAkB;AAAA,UAClB,aACC;AAAA,UACD,gBAAgB;AAAA,YACf,MAAM;AAAA,cACL,iBAAiB,CAAC,IAAI;AAAA,cACtB,YAAY,CAAC,EAAE,MAAM,EAAE,KAAK,IAAI,EAAE,CAAC;AAAA,YACpC;AAAA,UACD;AAAA,QACD;AAAA,QACA;AAAA,UACC,aAAa;AAAA,UACb,MAAM;AAAA,UACN,MAAM;AAAA,UACN,aAAa;AAAA,YACZ,MAAM;AAAA,UACP;AAAA,UACA,SAAS;AAAA,UACT,kBAAkB;AAAA,UAClB,aAAa;AAAA,UACb,gBAAgB;AAAA,YACf,MAAM;AAAA,cACL,iBAAiB,CAAC,IAAI;AAAA,cACtB,YAAY,CAAC,EAAE,MAAM,EAAE,KAAK,IAAI,EAAE,CAAC;AAAA,YACpC;AAAA,UACD;AAAA,QACD;AAAA,QACA;AAAA,UACC,aAAa;AAAA,UACb,MAAM;AAAA,UACN,MAAM;AAAA,UACN,gBAAgB;AAAA,YACf,MAAM;AAAA,cACL,QAAQ,CAAC,KAAK;AAAA,cACd,YAAY,CAAC,GAAG,GAAG;AAAA,YACpB;AAAA,UACD;AAAA,UACA,aAAa;AAAA,UACb,SAAS,CAAC;AAAA,UACV,SAAS,CAAC,wBAAwB,yBAAyB;AAAA,QAC5D;AAAA;AAAA,QAEA;AAAA,UACC,aAAa;AAAA,UACb,MAAM;AAAA,UACN,MAAM;AAAA,UACN,gBAAgB;AAAA,YACf,MAAM;AAAA,cACL,MAAM,CAAC,cAAc,SAAS;AAAA,cAC9B,QAAQ,CAAC,IAAI;AAAA,cACb,YAAY,CAAC,GAAG,GAAG;AAAA,YACpB;AAAA,UACD;AAAA,UACA,aAAa;AAAA,UACb,SAAS,CAAC;AAAA,UACV,SAAS;AAAA,YACR,GAAG;AAAA,YACH;AAAA,cACC,aAAa;AAAA,cACb,MAAM;AAAA,cACN,MAAM;AAAA,cACN,SAAS,CAAC,sBAAsB,4BAA4B;AAAA,cAC5D,SAAS;AAAA,cACT,aAAa;AAAA,YACd;AAAA,UACD;AAAA,QACD;AAAA;AAAA,QAEA;AAAA,UACC,aAAa;AAAA,UACb,MAAM;AAAA,UACN,MAAM;AAAA,UACN,gBAAgB;AAAA,YACf,MAAM;AAAA,cACL,MAAM,CAAC,cAAc,SAAS;AAAA,cAC9B,QAAQ,CAAC,IAAI;AAAA,cACb,YAAY,CAAC,GAAG;AAAA,YACjB;AAAA,UACD;AAAA,UACA,aAAa;AAAA,UACb,SAAS,CAAC;AAAA,UACV,SAAS;AAAA,YACR,GAAG;AAAA,YACH;AAAA,cACC,aAAa;AAAA,cACb,MAAM;AAAA,cACN,MAAM;AAAA,cACN,SAAS,CAAC,sBAAsB,8BAA8B,qBAAqB;AAAA,cACnF,SAAS;AAAA,cACT,aAAa;AAAA,cACb,gBAAgB,EAAE,MAAM,EAAE,oBAAoB,CAAC,KAAK,EAAE,EAAE;AAAA,YACzD;AAAA,YACA;AAAA,cACC,aAAa;AAAA,cACb,MAAM;AAAA,cACN,MAAM;AAAA,cACN,SAAS,CAAC,qBAAqB;AAAA,cAC/B,SAAS;AAAA,cACT,aAAa;AAAA,cACb,gBAAgB,EAAE,MAAM,EAAE,oBAAoB,CAAC,IAAI,EAAE,EAAE;AAAA,YACxD;AAAA,UACD;AAAA,QACD;AAAA,QACA;AAAA,UACC,aAAa;AAAA,UACb,MAAM;AAAA,UACN,MAAM;AAAA,UACN,gBAAgB;AAAA,YACf,MAAM;AAAA,cACL,QAAQ,CAAC,KAAK;AAAA,cACd,YAAY,CAAC,EAAE,MAAM,EAAE,KAAK,IAAI,EAAE,CAAC;AAAA,YACpC;AAAA,UACD;AAAA,UACA,aAAa;AAAA,UACb,SAAS,CAAC;AAAA,UACV,SAAS;AAAA,YACR;AAAA,YACA;AAAA,YACA;AAAA,cACC,aAAa;AAAA,cACb,MAAM;AAAA,cACN,MAAM;AAAA,cACN,SAAS,CAAC,sBAAsB,0BAA0B,qBAAqB;AAAA,cAC/E,SAAS;AAAA,cACT,aAAa;AAAA,cACb,gBAAgB,EAAE,MAAM,EAAE,oBAAoB,CAAC,KAAK,EAAE,EAAE;AAAA,YACzD;AAAA,YACA;AAAA,cACC,aAAa;AAAA,cACb,MAAM;AAAA,cACN,MAAM;AAAA,cACN,SAAS,CAAC,qBAAqB;AAAA,cAC/B,SAAS;AAAA,cACT,aAAa;AAAA,cACb,gBAAgB,EAAE,MAAM,EAAE,oBAAoB,CAAC,IAAI,EAAE,EAAE;AAAA,YACxD;AAAA,UACD;AAAA,QACD;AAAA,QACA;AAAA,UACC,aAAa;AAAA,UACb,MAAM;AAAA,UACN,MAAM;AAAA,UACN,gBAAgB;AAAA,YACf,MAAM;AAAA,cACL,MAAM,CAAC,cAAc,SAAS;AAAA,cAC9B,QAAQ,CAAC,IAAI;AAAA,cACb,YAAY,CAAC,EAAE,MAAM,EAAE,KAAK,IAAI,EAAE,CAAC;AAAA,YACpC;AAAA,UACD;AAAA,UACA,aAAa;AAAA,UACb,SAAS,CAAC;AAAA,UACV,SAAS;AAAA,YACR,GAAG;AAAA,YACH;AAAA,cACC,aAAa;AAAA,cACb,MAAM;AAAA,cACN,MAAM;AAAA,cACN,SAAS,CAAC,qBAAqB;AAAA,cAC/B,SAAS;AAAA,cACT,aAAa;AAAA,cACb,gBAAgB,EAAE,MAAM,EAAE,oBAAoB,CAAC,IAAI,EAAE,EAAE;AAAA,YACxD;AAAA,YACA;AAAA,cACC,aAAa;AAAA,cACb,MAAM;AAAA,cACN,MAAM;AAAA,cACN,SAAS,CAAC,sBAAsB,uBAAuB,4BAA4B;AAAA,cACnF,SAAS;AAAA,cACT,aAAa;AAAA,cACb,gBAAgB,EAAE,MAAM,EAAE,SAAS,CAAC,SAAS,GAAG,oBAAoB,CAAC,KAAK,EAAE,EAAE;AAAA,YAC/E;AAAA,YACA;AAAA,cACC,aAAa;AAAA,cACb,MAAM;AAAA,cACN,MAAM;AAAA,cACN,SAAS,CAAC,sBAAsB,uBAAuB,wBAAwB;AAAA,cAC/E,SAAS;AAAA,cACT,aAAa;AAAA,cACb,gBAAgB,EAAE,MAAM,EAAE,SAAS,CAAC,YAAY,GAAG,oBAAoB,CAAC,KAAK,EAAE,EAAE;AAAA,YAClF;AAAA,UACD;AAAA,QACD;AAAA,MACD;AAAA,IACD;AAAA;AAAA,EAEA,MAAc,eAAe,SAA4B;AACxD,UAAM,MAAM,QAAQ,iBAAiB;AACrC,MAAE,GAAG,IAAI,gBAAgB,uBAAuB,8BAA8B;AAC9E,UAAM,UAAU,QAAQ,iBAAiB,WAAW,CAAC,CAAC;AACtD,UAAM,EAAE,MAAM,MAAM,IAAI,IAAI;AAE5B,UAAM,aAAiC;AAAA,MACtC,MAAM;AAAA,IACP;AAEA,QAAI,SAAS,OAAO,KAAK,KAAK,EAAE,QAAQ;AACvC,iBAAW,KAAK,QAAQ,CAAC;AACzB,iBAAW,SAAS,CAAC;AAErB,YAAM,QAAQ;AACd,iBAAW,WAAW,OAAO,KAAK,KAAK,GAAG;AACzC,cAAM,iBAA2C,CAAC;AAClD,YAAI,MAAM,QAAQ,MAAM,OAAO,CAAC,GAAG;AAClC,yBAAe,KAAK,GAAG,MAAM,OAAO,CAAC;AAAA,QACtC,OAAO;AACN,yBAAe,KAAK,MAAM,OAAO,CAAC;AAAA,QACnC;AAEA,YAAI,YAAY;AAChB,mBAAW,QAAQ,gBAAgB;AAClC,cAAI,qBAAqB;AAGzB,cAAI,mBAAmB,SAAS,IAAI,GAAG;AACtC,iCAAqB,mBAAmB,MAAM,GAAG,EAAE;AAAA,UACpD;AACA,cAAI,QAAQ,oBAAoB;AAC/B,iCAAqB,GAAG,QAAQ,mBAAmB,SAAS,CAAC,GAAG,KAAK;AAAA,UACtE;AAEA,gBAAM,aAAa,MAAM,QAAQ,YAAY;AAAA,YAC5C,KAAK;AAAA,YACL,KAAK,oBAAoB,KAAK;AAAA,YAC9B,KAAK;AAAA,UACN;AAEA,gBAAM,YAAY,GAAG,kBAAkB,GAAG,SAAS;AAEnD,gBAAM,aAAa;AAAA,YAClB,OAAG,YAAAA,SAAK,YAAY,CAAC,YAAY,YAAY,YAAY,YAAY,eAAe,CAAC;AAAA,YACrF;AAAA,UACD;AAEA,qBAAW,SAAS,OAAO,OAAO,WAAW,UAAU,CAAC,GAAG;AAAA,YAC1D,CAAC,GAAG,SAAS,EAAE,GAAG;AAAA,UACnB,CAAC;AACD,qBAAW,KAAK,QAAQ;AAAA,YACvB,GAAI,WAAW,KAAK;AAAA,YACpB;AAAA,UACD;AACA,uBAAa;AAAA,QACd;AAAA,MACD;AAAA,IACD;AAEA,WAAO;AAAA,EACR;AAAA,EAEA,MAAM,QAAQ,KAAuD;AACpE,UAAM,MAAM,IAAI,kBAAkB;AAElC,UAAM,WAAW,IAAI,iBAAiB,UAAU,KAAK;AACrD,kDAAqB,UAAU,UAAU,IAAI,QAAQ,CAAC;AAEtD,UAAM,WAAW,IAAI,iBAAiB,QAAQ,YAAY;AAC1D,iDAAoB,QAAQ,UAAU,IAAI,QAAQ,CAAC;AAEnD,QAAI,CAAC,UAAU;AACd,UAAI,OAAO,GAAG,EAAE,IAAI;AACpB,aAAO;AAAA,QACN,mBAAmB;AAAA,MACpB;AAAA,IACD;AAEA,UAAM,kBAAkB,IAAI,iBAAiB,mBAAmB,KAAK;AACrE,UAAM,UAAU,IAAI,iBAAiB,WAAW,CAAC,CAAC;AAClD;AAAA,MACC;AAAA,MACA;AAAA,QACC,YAAY,EAAE,MAAM,SAAS;AAAA,QAC7B,kBAAkB,EAAE,MAAM,SAAS;AAAA,QACnC,qBAAqB,EAAE,MAAM,SAAS;AAAA,QACtC,mBAAmB,EAAE,MAAM,UAAU;AAAA,QACrC,UAAU,EAAE,MAAM,SAAS;AAAA,QAC3B,OAAO,EAAE,MAAM,SAAS;AAAA,QACxB,kBAAkB,EAAE,MAAM,UAAU;AAAA,QACpC,uBAAuB,EAAE,MAAM,SAAS;AAAA,QACxC,WAAW,EAAE,MAAM,SAAS;AAAA,QAC5B,cAAc,EAAE,MAAM,SAAS;AAAA,MAChC;AAAA,MACA,IAAI,QAAQ;AAAA,IACb;AAEA,UAAM,sBAAsB,QAAQ;AACpC,2DAAqC,qBAAqB,IAAI,QAAQ,CAAC;AAEvE,UAAM,kBAAkB,kBACrB,CAAC,QAAQ,gBAAgB,QAAQ,iBAAiB,cAClD,QAAQ,iBAAiB;AAE5B,UAAM,MAAM,IAAI,iBAAiB;AACjC,UAAM,cAAc,IAAI,eAAe;AACvC,UAAM,OAAO,IAAI,QAAQ,MAAM,WAAW,SAAS;AACnD,UAAM,WAAW,IAAI,YAAY,KAAK,CAAC;AAEvC,QAAI;AACH,gBAAM,sCAAa,GAAG;AAAA,IACvB,SAAS,OAAO;AACf,UAAI,OAAO;AACV,YAAI,UAAW,MAAsB,cAAwB;AAAA,UAC5D,oBAAoB;AAAA,QACrB,CAAC;AACD,YAAI,IAAK,MAAsB,OAAiB;AAChD,eAAO,EAAE,mBAAmB,KAAK;AAAA,MAClC;AACA,YAAM;AAAA,IACP;AACA,QAAI,aAAa,cAAc;AAE9B,UAAI,gBAAgB,SAAS;AAC5B,cAAM,gBAAgB,IAAI,kBAAkB,SAAS;AACrD,YAAI,CAAC,eAAe;AACnB,gBAAM,IAAI,uCAAmB,IAAI,QAAQ,GAAG,6BAA6B;AAAA,QAC1E;AAEA,cAAM,aACL,SAAS,SAAS,cAAc,QAAQ,YAAY,eAAe,IAAI;AACxE,cAAM,iBAAiB,IAAI,iBAAiB,gBAAgB;AAI5D,cAAM,qBAAqB,IAAI,iBAAiB,mBAAmB,EAAE;AACrE,qDAAoB,kBAAkB,oBAAoB,IAAI,QAAQ,CAAC;AACvE,cAAM,aAAa,IAAI,cAAc;AAErC,cAAM,aAAqC,CAAC;AAC5C,cAAM,OAAO,CAAC,cAAc,oBAAoB,YAAY,OAAO;AACnE,mBAAW,OAAO,MAAM;AACvB,cAAI,QAAQ,GAAG,MAAM,QAAW;AAC/B,uBAAW,GAAG,IAAI,QAAQ,GAAG;AAAA,UAC9B;AAAA,QACD;AAEA,cAAM,WAAO,6BAAW;AAAA,UACvB,MAAM;AAAA,YACL,IAAI;AAAA,UACL;AAAA,UACA,mBAAmB,QAAQ;AAAA,UAC3B;AAAA,UACA,iBAAiB;AAAA,UACjB;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA,kBAAkB,QAAQ;AAAA,UAC1B,uBAAuB,QAAQ;AAAA,UAC/B,WAAW,QAAQ;AAAA,UACnB;AAAA,QACD,CAAC;AAED,YAAI,OAAO,GAAG,EAAE,KAAK,IAAI,EAAE,IAAI;AAC/B,eAAO;AAAA,UACN,mBAAmB;AAAA,QACpB;AAAA,MACD;AAAA,IACD;AAEA,QAAI,SAAS,WAAW,uBAAuB;AAC9C,UAAI,SAAS,wBAAwB,UAAU;AAC9C,cAAM,SAAU,MAAM,IAAI,uBAAuB,wCAAoB,UAAU,CAAC;AAGhF,cAAM,YAAa,MAAM,QAAQ,YAAY,YAAY,KAAM,CAAC,GAC9D,OAAO,CAAC,YAAY,CAAC,SAAS,mBAAmB,UAAU,EAC3D,IAAI,CAAC,YAAY,SAAS,OAAO,CAAC;AACpC,eAAO;AAAA,UACN,iBAAiB,EAAE,MAAM,SAAS;AAAA,QACnC;AAAA,MACD,WAAW,CAAC,SAAS,uBAAuB,SAAS,wBAAwB,gBAAgB;AAE5F,eAAO;AAAA,UACN,iBAAiB,EAAE,MAAM,CAAC,EAAE;AAAA,QAC7B;AAAA,MACD;AAAA,IACD;AAEA,QAAI;AACJ,UAAM,kBAA+B,EAAE,QAAQ,IAAI;AAGnD,QAAI,iBAAiB;AAEpB,UAAI,UAAU,KAAK;AAAA,QAClB,gBAAgB;AAAA,QAChB,qBAAqB;AAAA,QACrB,iBAAiB;AAAA,QACjB,YAAY;AAAA,MACb,CAAC;AAGD,UAAI,aAAa;AAEjB,UAAI,IAAI,gBAAgB,uBAAuB;AAC9C,qBAAa,CAAC,MAAM,KAAK,eAAe,GAAG,CAAC;AAAA,MAC7C,OAAO;AACN,qBAAa,CAAC,EAAE,MAAM,SAAS,CAAC;AAAA,MACjC;AAEA,aAAO;AAAA,QACN,cAAc,CAAC,IAAI,QAAQ,gBAAgB,UAAU,CAAC;AAAA,QACtD,mBAAmB;AAAA,MACpB;AAAA,IACD;AAEA,QAAI,IAAI,gBAAgB,uBAAuB;AAC9C,mBAAa,CAAC,MAAM,KAAK,eAAe,GAAG,CAAC;AAC5C,aAAO;AAAA,QACN;AAAA,QACA,cAAc,CAAC,UAAU;AAAA,MAC1B;AAAA,IACD,OAAO;AACN,mBAAa,CAAC,EAAE,MAAM,SAAS,CAAC;AAAA,IACjC;AAEA,WAAO;AAAA,MACN;AAAA,MACA,cAAc,CAAC,IAAI,QAAQ,gBAAgB,UAAU,CAAC;AAAA,IACvD;AAAA,EACD;AACD;","names":["pick"]}
@@ -0,0 +1,78 @@
1
+ "use strict";
2
+ var __create = Object.create;
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getProtoOf = Object.getPrototypeOf;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __export = (target, all) => {
9
+ for (var name in all)
10
+ __defProp(target, name, { get: all[name], enumerable: true });
11
+ };
12
+ var __copyProps = (to, from, except, desc) => {
13
+ if (from && typeof from === "object" || typeof from === "function") {
14
+ for (let key of __getOwnPropNames(from))
15
+ if (!__hasOwnProp.call(to, key) && key !== except)
16
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
+ }
18
+ return to;
19
+ };
20
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
25
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
+ mod
27
+ ));
28
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
+ var GenericFunctions_exports = {};
30
+ __export(GenericFunctions_exports, {
31
+ validateAuth: () => validateAuth
32
+ });
33
+ module.exports = __toCommonJS(GenericFunctions_exports);
34
+ var import_basic_auth = __toESM(require("basic-auth"));
35
+ var import_error = require("./error");
36
+ async function validateAuth(context) {
37
+ const authentication = context.getNodeParameter("authentication");
38
+ const req = context.getRequestObject();
39
+ const headers = context.getHeaderData();
40
+ if (authentication === "none") {
41
+ return;
42
+ } else if (authentication === "basicAuth") {
43
+ let expectedAuth;
44
+ try {
45
+ expectedAuth = await context.getCredentials("httpBasicAuth");
46
+ } catch {
47
+ }
48
+ if (expectedAuth === void 0 || !expectedAuth.user || !expectedAuth.password) {
49
+ throw new import_error.ChatTriggerAuthorizationError(500, "No authentication data defined on node!");
50
+ }
51
+ const providedAuth = (0, import_basic_auth.default)(req);
52
+ if (!providedAuth) throw new import_error.ChatTriggerAuthorizationError(401);
53
+ if (providedAuth.name !== expectedAuth.user || providedAuth.pass !== expectedAuth.password) {
54
+ throw new import_error.ChatTriggerAuthorizationError(403);
55
+ }
56
+ } else if (authentication === "n8nUserAuth") {
57
+ let getCookie2 = function(name) {
58
+ const value = `; ${headers.cookie}`;
59
+ const parts = value.split(`; ${name}=`);
60
+ if (parts.length === 2) {
61
+ return parts.pop()?.split(";").shift();
62
+ }
63
+ return "";
64
+ };
65
+ var getCookie = getCookie2;
66
+ const webhookName = context.getWebhookName();
67
+ const authCookie = getCookie2("n8n-auth");
68
+ if (!authCookie && webhookName !== "setup") {
69
+ throw new import_error.ChatTriggerAuthorizationError(500, "User not authenticated!");
70
+ }
71
+ }
72
+ return;
73
+ }
74
+ // Annotate the CommonJS export names for ESM import in node:
75
+ 0 && (module.exports = {
76
+ validateAuth
77
+ });
78
+ //# sourceMappingURL=GenericFunctions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../nodes/trigger/ChatTrigger/GenericFunctions.ts"],"sourcesContent":["import basicAuth from 'basic-auth';\nimport type { ICredentialDataDecryptedObject, IWebhookFunctions } from 'n8n-workflow';\n\nimport { ChatTriggerAuthorizationError } from './error';\nimport type { AuthenticationChatOption } from './types';\n\nexport async function validateAuth(context: IWebhookFunctions) {\n\tconst authentication = context.getNodeParameter('authentication') as AuthenticationChatOption;\n\tconst req = context.getRequestObject();\n\tconst headers = context.getHeaderData();\n\n\tif (authentication === 'none') {\n\t\treturn;\n\t} else if (authentication === 'basicAuth') {\n\t\t// Basic authorization is needed to call webhook\n\t\tlet expectedAuth: ICredentialDataDecryptedObject | undefined;\n\t\ttry {\n\t\t\texpectedAuth = await context.getCredentials<ICredentialDataDecryptedObject>('httpBasicAuth');\n\t\t} catch {}\n\n\t\tif (expectedAuth === undefined || !expectedAuth.user || !expectedAuth.password) {\n\t\t\t// Data is not defined on node so can not authenticate\n\t\t\tthrow new ChatTriggerAuthorizationError(500, 'No authentication data defined on node!');\n\t\t}\n\n\t\tconst providedAuth = basicAuth(req);\n\t\t// Authorization data is missing\n\t\tif (!providedAuth) throw new ChatTriggerAuthorizationError(401);\n\n\t\tif (providedAuth.name !== expectedAuth.user || providedAuth.pass !== expectedAuth.password) {\n\t\t\t// Provided authentication data is wrong\n\t\t\tthrow new ChatTriggerAuthorizationError(403);\n\t\t}\n\t} else if (authentication === 'n8nUserAuth') {\n\t\tconst webhookName = context.getWebhookName();\n\n\t\tfunction getCookie(name: string) {\n\t\t\tconst value = `; ${headers.cookie}`;\n\t\t\tconst parts = value.split(`; ${name}=`);\n\n\t\t\tif (parts.length === 2) {\n\t\t\t\treturn parts.pop()?.split(';').shift();\n\t\t\t}\n\t\t\treturn '';\n\t\t}\n\n\t\tconst authCookie = getCookie('n8n-auth');\n\t\tif (!authCookie && webhookName !== 'setup') {\n\t\t\t// Data is not defined on node so can not authenticate\n\t\t\tthrow new ChatTriggerAuthorizationError(500, 'User not authenticated!');\n\t\t}\n\t}\n\n\treturn;\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,wBAAsB;AAGtB,mBAA8C;AAG9C,eAAsB,aAAa,SAA4B;AAC9D,QAAM,iBAAiB,QAAQ,iBAAiB,gBAAgB;AAChE,QAAM,MAAM,QAAQ,iBAAiB;AACrC,QAAM,UAAU,QAAQ,cAAc;AAEtC,MAAI,mBAAmB,QAAQ;AAC9B;AAAA,EACD,WAAW,mBAAmB,aAAa;AAE1C,QAAI;AACJ,QAAI;AACH,qBAAe,MAAM,QAAQ,eAA+C,eAAe;AAAA,IAC5F,QAAQ;AAAA,IAAC;AAET,QAAI,iBAAiB,UAAa,CAAC,aAAa,QAAQ,CAAC,aAAa,UAAU;AAE/E,YAAM,IAAI,2CAA8B,KAAK,yCAAyC;AAAA,IACvF;AAEA,UAAM,mBAAe,kBAAAA,SAAU,GAAG;AAElC,QAAI,CAAC,aAAc,OAAM,IAAI,2CAA8B,GAAG;AAE9D,QAAI,aAAa,SAAS,aAAa,QAAQ,aAAa,SAAS,aAAa,UAAU;AAE3F,YAAM,IAAI,2CAA8B,GAAG;AAAA,IAC5C;AAAA,EACD,WAAW,mBAAmB,eAAe;AAG5C,QAASC,aAAT,SAAmB,MAAc;AAChC,YAAM,QAAQ,KAAK,QAAQ,MAAM;AACjC,YAAM,QAAQ,MAAM,MAAM,KAAK,IAAI,GAAG;AAEtC,UAAI,MAAM,WAAW,GAAG;AACvB,eAAO,MAAM,IAAI,GAAG,MAAM,GAAG,EAAE,MAAM;AAAA,MACtC;AACA,aAAO;AAAA,IACR;AARS,oBAAAA;AAFT,UAAM,cAAc,QAAQ,eAAe;AAY3C,UAAM,aAAaA,WAAU,UAAU;AACvC,QAAI,CAAC,cAAc,gBAAgB,SAAS;AAE3C,YAAM,IAAI,2CAA8B,KAAK,yBAAyB;AAAA,IACvE;AAAA,EACD;AAEA;AACD;","names":["basicAuth","getCookie"]}
@@ -0,0 +1,149 @@
1
+ "use strict";
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 constants_exports = {};
20
+ __export(constants_exports, {
21
+ cssVariables: () => cssVariables
22
+ });
23
+ module.exports = __toCommonJS(constants_exports);
24
+ const cssVariables = `
25
+ :root {
26
+ /* Colors */
27
+ --chat--color-primary: #e74266;
28
+ --chat--color-primary-shade-50: #db4061;
29
+ --chat--color-primary-shade-100: #cf3c5c;
30
+ --chat--color-secondary: #20b69e;
31
+ --chat--color-secondary-shade-50: #1ca08a;
32
+ --chat--color-white: #ffffff;
33
+ --chat--color-light: #f2f4f8;
34
+ --chat--color-light-shade-50: #e6e9f1;
35
+ --chat--color-light-shade-100: #c2c5cc;
36
+ --chat--color-medium: #d2d4d9;
37
+ --chat--color-dark: #101330;
38
+ --chat--color-disabled: #d2d4d9;
39
+ --chat--color-typing: #404040;
40
+
41
+ /* Base Layout */
42
+ --chat--spacing: 1rem;
43
+ --chat--border-radius: 0.25rem;
44
+ --chat--transition-duration: 0.15s;
45
+ --chat--font-family: (
46
+ -apple-system,
47
+ BlinkMacSystemFont,
48
+ 'Segoe UI',
49
+ Roboto,
50
+ Oxygen-Sans,
51
+ Ubuntu,
52
+ Cantarell,
53
+ 'Helvetica Neue',
54
+ sans-serif
55
+ );
56
+
57
+ /* Window Dimensions */
58
+ --chat--window--width: 400px;
59
+ --chat--window--height: 600px;
60
+ --chat--window--bottom: var(--chat--spacing);
61
+ --chat--window--right: var(--chat--spacing);
62
+ --chat--window--z-index: 9999;
63
+ --chat--window--border: 1px solid var(--chat--color-light-shade-50);
64
+ --chat--window--border-radius: var(--chat--border-radius);
65
+ --chat--window--margin-bottom: var(--chat--spacing);
66
+
67
+ /* Header Styles */
68
+ --chat--header-height: auto;
69
+ --chat--header--padding: var(--chat--spacing);
70
+ --chat--header--background: var(--chat--color-dark);
71
+ --chat--header--color: var(--chat--color-light);
72
+ --chat--header--border-top: none;
73
+ --chat--header--border-bottom: none;
74
+ --chat--header--border-left: none;
75
+ --chat--header--border-right: none;
76
+ --chat--heading--font-size: 2em;
77
+ --chat--subtitle--font-size: inherit;
78
+ --chat--subtitle--line-height: 1.8;
79
+
80
+ /* Message Styles */
81
+ --chat--message--font-size: 1rem;
82
+ --chat--message--padding: var(--chat--spacing);
83
+ --chat--message--border-radius: var(--chat--border-radius);
84
+ --chat--message-line-height: 1.5;
85
+ --chat--message--margin-bottom: calc(var(--chat--spacing) * 1);
86
+ --chat--message--bot--background: var(--chat--color-white);
87
+ --chat--message--bot--color: var(--chat--color-dark);
88
+ --chat--message--bot--border: none;
89
+ --chat--message--user--background: var(--chat--color-secondary);
90
+ --chat--message--user--color: var(--chat--color-white);
91
+ --chat--message--user--border: none;
92
+ --chat--message--pre--background: rgba(0, 0, 0, 0.05);
93
+ --chat--messages-list--padding: var(--chat--spacing);
94
+
95
+ /* Toggle Button */
96
+ --chat--toggle--size: 64px;
97
+ --chat--toggle--width: var(--chat--toggle--size);
98
+ --chat--toggle--height: var(--chat--toggle--size);
99
+ --chat--toggle--border-radius: 50%;
100
+ --chat--toggle--background: var(--chat--color-primary);
101
+ --chat--toggle--hover--background: var(--chat--color-primary-shade-50);
102
+ --chat--toggle--active--background: var(--chat--color-primary-shade-100);
103
+ --chat--toggle--color: var(--chat--color-white);
104
+
105
+ /* Input Area */
106
+ --chat--textarea--height: 50px;
107
+ --chat--textarea--max-height: 30rem;
108
+ --chat--input--font-size: inherit;
109
+ --chat--input--border: 0;
110
+ --chat--input--border-radius: 0;
111
+ --chat--input--padding: 0.8rem;
112
+ --chat--input--background: var(--chat--color-white);
113
+ --chat--input--text-color: initial;
114
+ --chat--input--line-height: 1.5;
115
+ --chat--input--placeholder--font-size: var(--chat--input--font-size);
116
+ --chat--input--border-active: 0;
117
+ --chat--input--left--panel--width: 2rem;
118
+
119
+ /* Button Styles */
120
+ --chat--button--color: var(--chat--color-light);
121
+ --chat--button--background: var(--chat--color-primary);
122
+ --chat--button--padding: calc(var(--chat--spacing) * 1 / 2) var(--chat--spacing);
123
+ --chat--button--border-radius: var(--chat--border-radius);
124
+ --chat--button--hover--color: var(--chat--color-light);
125
+ --chat--button--hover--background: var(--chat--color-primary-shade-50);
126
+ --chat--close--button--color-hover: var(--chat--color-primary);
127
+
128
+ /* Send and File Buttons */
129
+ --chat--input--send--button--background: var(--chat--color-white);
130
+ --chat--input--send--button--color: var(--chat--color-secondary);
131
+ --chat--input--send--button--background-hover: var(--chat--color-primary-shade-50);
132
+ --chat--input--send--button--color-hover: var(--chat--color-secondary-shade-50);
133
+ --chat--input--file--button--background: var(--chat--color-white);
134
+ --chat--input--file--button--color: var(--chat--color-secondary);
135
+ --chat--input--file--button--background-hover: var(--chat--input--file--button--background);
136
+ --chat--input--file--button--color-hover: var(--chat--color-secondary-shade-50);
137
+ --chat--files-spacing: 0.25rem;
138
+
139
+ /* Body and Footer */
140
+ --chat--body--background: var(--chat--color-light);
141
+ --chat--footer--background: var(--chat--color-light);
142
+ --chat--footer--color: var(--chat--color-dark);
143
+ }
144
+ `;
145
+ // Annotate the CommonJS export names for ESM import in node:
146
+ 0 && (module.exports = {
147
+ cssVariables
148
+ });
149
+ //# sourceMappingURL=constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../nodes/trigger/ChatTrigger/constants.ts"],"sourcesContent":["// CSS Variables are defined in `@n8n/chat/src/css/_tokens.scss`\nexport const cssVariables = `\n:root {\n /* Colors */\n --chat--color-primary: #e74266;\n --chat--color-primary-shade-50: #db4061;\n --chat--color-primary-shade-100: #cf3c5c;\n --chat--color-secondary: #20b69e;\n --chat--color-secondary-shade-50: #1ca08a;\n --chat--color-white: #ffffff;\n --chat--color-light: #f2f4f8;\n --chat--color-light-shade-50: #e6e9f1;\n --chat--color-light-shade-100: #c2c5cc;\n --chat--color-medium: #d2d4d9;\n --chat--color-dark: #101330;\n --chat--color-disabled: #d2d4d9;\n --chat--color-typing: #404040;\n\n /* Base Layout */\n --chat--spacing: 1rem;\n --chat--border-radius: 0.25rem;\n --chat--transition-duration: 0.15s;\n --chat--font-family: (\n -apple-system,\n BlinkMacSystemFont,\n 'Segoe UI',\n Roboto,\n Oxygen-Sans,\n Ubuntu,\n Cantarell,\n 'Helvetica Neue',\n sans-serif\n );\n\n /* Window Dimensions */\n --chat--window--width: 400px;\n --chat--window--height: 600px;\n --chat--window--bottom: var(--chat--spacing);\n --chat--window--right: var(--chat--spacing);\n --chat--window--z-index: 9999;\n --chat--window--border: 1px solid var(--chat--color-light-shade-50);\n --chat--window--border-radius: var(--chat--border-radius);\n --chat--window--margin-bottom: var(--chat--spacing);\n\n /* Header Styles */\n --chat--header-height: auto;\n --chat--header--padding: var(--chat--spacing);\n --chat--header--background: var(--chat--color-dark);\n --chat--header--color: var(--chat--color-light);\n --chat--header--border-top: none;\n --chat--header--border-bottom: none;\n --chat--header--border-left: none;\n --chat--header--border-right: none;\n --chat--heading--font-size: 2em;\n --chat--subtitle--font-size: inherit;\n --chat--subtitle--line-height: 1.8;\n\n /* Message Styles */\n --chat--message--font-size: 1rem;\n --chat--message--padding: var(--chat--spacing);\n --chat--message--border-radius: var(--chat--border-radius);\n --chat--message-line-height: 1.5;\n --chat--message--margin-bottom: calc(var(--chat--spacing) * 1);\n --chat--message--bot--background: var(--chat--color-white);\n --chat--message--bot--color: var(--chat--color-dark);\n --chat--message--bot--border: none;\n --chat--message--user--background: var(--chat--color-secondary);\n --chat--message--user--color: var(--chat--color-white);\n --chat--message--user--border: none;\n --chat--message--pre--background: rgba(0, 0, 0, 0.05);\n --chat--messages-list--padding: var(--chat--spacing);\n\n /* Toggle Button */\n --chat--toggle--size: 64px;\n --chat--toggle--width: var(--chat--toggle--size);\n --chat--toggle--height: var(--chat--toggle--size);\n --chat--toggle--border-radius: 50%;\n --chat--toggle--background: var(--chat--color-primary);\n --chat--toggle--hover--background: var(--chat--color-primary-shade-50);\n --chat--toggle--active--background: var(--chat--color-primary-shade-100);\n --chat--toggle--color: var(--chat--color-white);\n\n /* Input Area */\n --chat--textarea--height: 50px;\n --chat--textarea--max-height: 30rem;\n --chat--input--font-size: inherit;\n --chat--input--border: 0;\n --chat--input--border-radius: 0;\n --chat--input--padding: 0.8rem;\n --chat--input--background: var(--chat--color-white);\n --chat--input--text-color: initial;\n --chat--input--line-height: 1.5;\n --chat--input--placeholder--font-size: var(--chat--input--font-size);\n --chat--input--border-active: 0;\n --chat--input--left--panel--width: 2rem;\n\n /* Button Styles */\n --chat--button--color: var(--chat--color-light);\n --chat--button--background: var(--chat--color-primary);\n --chat--button--padding: calc(var(--chat--spacing) * 1 / 2) var(--chat--spacing);\n --chat--button--border-radius: var(--chat--border-radius);\n --chat--button--hover--color: var(--chat--color-light);\n --chat--button--hover--background: var(--chat--color-primary-shade-50);\n --chat--close--button--color-hover: var(--chat--color-primary);\n\n /* Send and File Buttons */\n --chat--input--send--button--background: var(--chat--color-white);\n --chat--input--send--button--color: var(--chat--color-secondary);\n --chat--input--send--button--background-hover: var(--chat--color-primary-shade-50);\n --chat--input--send--button--color-hover: var(--chat--color-secondary-shade-50);\n --chat--input--file--button--background: var(--chat--color-white);\n --chat--input--file--button--color: var(--chat--color-secondary);\n --chat--input--file--button--background-hover: var(--chat--input--file--button--background);\n --chat--input--file--button--color-hover: var(--chat--color-secondary-shade-50);\n --chat--files-spacing: 0.25rem;\n\n /* Body and Footer */\n --chat--body--background: var(--chat--color-light);\n --chat--footer--background: var(--chat--color-light);\n --chat--footer--color: var(--chat--color-dark);\n}\n`;\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AACO,MAAM,eAAe;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;","names":[]}
@@ -0,0 +1,43 @@
1
+ "use strict";
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 error_exports = {};
20
+ __export(error_exports, {
21
+ ChatTriggerAuthorizationError: () => ChatTriggerAuthorizationError
22
+ });
23
+ module.exports = __toCommonJS(error_exports);
24
+ var import_errors = require("@n8n/errors");
25
+ class ChatTriggerAuthorizationError extends import_errors.ApplicationError {
26
+ constructor(responseCode, message) {
27
+ if (message === void 0) {
28
+ message = "Authorization problem!";
29
+ if (responseCode === 401) {
30
+ message = "Authorization is required!";
31
+ } else if (responseCode === 403) {
32
+ message = "Authorization data is wrong!";
33
+ }
34
+ }
35
+ super(message);
36
+ this.responseCode = responseCode;
37
+ }
38
+ }
39
+ // Annotate the CommonJS export names for ESM import in node:
40
+ 0 && (module.exports = {
41
+ ChatTriggerAuthorizationError
42
+ });
43
+ //# sourceMappingURL=error.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../nodes/trigger/ChatTrigger/error.ts"],"sourcesContent":["import { ApplicationError } from '@n8n/errors';\n\nexport class ChatTriggerAuthorizationError extends ApplicationError {\n\tconstructor(\n\t\treadonly responseCode: number,\n\t\tmessage?: string,\n\t) {\n\t\tif (message === undefined) {\n\t\t\tmessage = 'Authorization problem!';\n\t\t\tif (responseCode === 401) {\n\t\t\t\tmessage = 'Authorization is required!';\n\t\t\t} else if (responseCode === 403) {\n\t\t\t\tmessage = 'Authorization data is wrong!';\n\t\t\t}\n\t\t}\n\t\tsuper(message);\n\t}\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,oBAAiC;AAE1B,MAAM,sCAAsC,+BAAiB;AAAA,EACnE,YACU,cACT,SACC;AACD,QAAI,YAAY,QAAW;AAC1B,gBAAU;AACV,UAAI,iBAAiB,KAAK;AACzB,kBAAU;AAAA,MACX,WAAW,iBAAiB,KAAK;AAChC,kBAAU;AAAA,MACX;AAAA,IACD;AACA,UAAM,OAAO;AAXJ;AAAA,EAYV;AACD;","names":[]}
@@ -0,0 +1,175 @@
1
+ "use strict";
2
+ var __create = Object.create;
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getProtoOf = Object.getPrototypeOf;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __export = (target, all) => {
9
+ for (var name in all)
10
+ __defProp(target, name, { get: all[name], enumerable: true });
11
+ };
12
+ var __copyProps = (to, from, except, desc) => {
13
+ if (from && typeof from === "object" || typeof from === "function") {
14
+ for (let key of __getOwnPropNames(from))
15
+ if (!__hasOwnProp.call(to, key) && key !== except)
16
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
+ }
18
+ return to;
19
+ };
20
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
25
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
+ mod
27
+ ));
28
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
+ var templates_exports = {};
30
+ __export(templates_exports, {
31
+ createPage: () => createPage,
32
+ getSanitizedI18nConfig: () => getSanitizedI18nConfig,
33
+ getSanitizedInitialMessages: () => getSanitizedInitialMessages
34
+ });
35
+ module.exports = __toCommonJS(templates_exports);
36
+ var import_sanitize_html = __toESM(require("sanitize-html"));
37
+ function sanitizeUserInput(input) {
38
+ let sanitized = (0, import_sanitize_html.default)(input, {
39
+ allowedTags: [],
40
+ allowedAttributes: {}
41
+ });
42
+ sanitized = sanitized.replace(/javascript:/gi, "");
43
+ sanitized = sanitized.replace(/data:/gi, "");
44
+ sanitized = sanitized.replace(/vbscript:/gi, "");
45
+ return sanitized;
46
+ }
47
+ function getSanitizedInitialMessages(initialMessages) {
48
+ const sanitizedString = sanitizeUserInput(initialMessages);
49
+ return sanitizedString.split("\n").map((line) => line.trim()).filter((line) => line !== "");
50
+ }
51
+ function getSanitizedI18nConfig(config) {
52
+ const sanitized = {};
53
+ for (const [key, value] of Object.entries(config)) {
54
+ sanitized[key] = sanitizeUserInput(value);
55
+ }
56
+ return sanitized;
57
+ }
58
+ function createPage({
59
+ instanceId,
60
+ webhookUrl,
61
+ showWelcomeScreen,
62
+ loadPreviousSession,
63
+ i18n: { en },
64
+ initialMessages,
65
+ authentication,
66
+ allowFileUploads,
67
+ allowedFilesMimeTypes,
68
+ customCss,
69
+ enableStreaming
70
+ }) {
71
+ const validAuthenticationOptions = [
72
+ "none",
73
+ "basicAuth",
74
+ "n8nUserAuth"
75
+ ];
76
+ const validLoadPreviousSessionOptions = [
77
+ "manually",
78
+ "memory",
79
+ "notSupported"
80
+ ];
81
+ const sanitizedAuthentication = validAuthenticationOptions.includes(authentication) ? authentication : "none";
82
+ const sanitizedShowWelcomeScreen = !!showWelcomeScreen;
83
+ const sanitizedAllowFileUploads = !!allowFileUploads;
84
+ const sanitizedAllowedFilesMimeTypes = allowedFilesMimeTypes?.toString() ?? "";
85
+ const sanitizedCustomCss = (0, import_sanitize_html.default)(`<style>${customCss?.toString() ?? ""}</style>`, {
86
+ allowedTags: ["style"],
87
+ allowedAttributes: false
88
+ });
89
+ const sanitizedLoadPreviousSession = validLoadPreviousSessionOptions.includes(
90
+ loadPreviousSession
91
+ ) ? loadPreviousSession : "notSupported";
92
+ const sanitizedInitialMessages = getSanitizedInitialMessages(initialMessages);
93
+ const sanitizedI18nConfig = getSanitizedI18nConfig(en || {});
94
+ return `<!doctype html>
95
+ <html lang="en">
96
+ <head>
97
+ <meta charset="utf-8">
98
+ <meta name="viewport" content="width=device-width, initial-scale=1">
99
+ <title>Chat</title>
100
+ <link href="https://cdn.jsdelivr.net/npm/normalize.css@8.0.1/normalize.min.css" rel="stylesheet" />
101
+ <link href="https://cdn.jsdelivr.net/npm/@n8n/chat/dist/style.css" rel="stylesheet" />
102
+ <style>
103
+ html,
104
+ body,
105
+ #n8n-chat {
106
+ width: 100%;
107
+ height: 100%;
108
+ }
109
+ </style>
110
+ ${sanitizedCustomCss}
111
+ </head>
112
+ <body>
113
+ <script type="module">
114
+ import { createChat } from 'https://cdn.jsdelivr.net/npm/@n8n/chat/dist/chat.bundle.es.js';
115
+
116
+ (async function () {
117
+ const authentication = '${sanitizedAuthentication}';
118
+ let metadata;
119
+ if (authentication === 'n8nUserAuth') {
120
+ try {
121
+ const response = await fetch('/rest/login', {
122
+ method: 'GET',
123
+ headers: { 'browser-id': localStorage.getItem('n8n-browserId') }
124
+ });
125
+
126
+ if (response.status !== 200) {
127
+ throw new Error('Not logged in');
128
+ }
129
+
130
+ const responseData = await response.json();
131
+ metadata = {
132
+ user: {
133
+ id: responseData.data.id,
134
+ firstName: responseData.data.firstName,
135
+ lastName: responseData.data.lastName,
136
+ email: responseData.data.email,
137
+ },
138
+ };
139
+ } catch (error) {
140
+ window.location.href = '/signin?redirect=' + window.location.href;
141
+ return;
142
+ }
143
+ }
144
+
145
+ createChat({
146
+ mode: 'fullscreen',
147
+ webhookUrl: '${webhookUrl}',
148
+ showWelcomeScreen: ${sanitizedShowWelcomeScreen},
149
+ loadPreviousSession: ${sanitizedLoadPreviousSession !== "notSupported"},
150
+ metadata: metadata,
151
+ webhookConfig: {
152
+ headers: {
153
+ 'X-Instance-Id': '${instanceId}',
154
+ }
155
+ },
156
+ allowFileUploads: ${sanitizedAllowFileUploads},
157
+ allowedFilesMimeTypes: ${JSON.stringify(sanitizedAllowedFilesMimeTypes)},
158
+ i18n: {
159
+ ${Object.keys(sanitizedI18nConfig).length ? `en: ${JSON.stringify(sanitizedI18nConfig)},` : ""}
160
+ },
161
+ ${sanitizedInitialMessages.length ? `initialMessages: ${JSON.stringify(sanitizedInitialMessages)},` : ""}
162
+ enableStreaming: ${!!enableStreaming},
163
+ });
164
+ })();
165
+ </script>
166
+ </body>
167
+ </html>`;
168
+ }
169
+ // Annotate the CommonJS export names for ESM import in node:
170
+ 0 && (module.exports = {
171
+ createPage,
172
+ getSanitizedI18nConfig,
173
+ getSanitizedInitialMessages
174
+ });
175
+ //# sourceMappingURL=templates.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../nodes/trigger/ChatTrigger/templates.ts"],"sourcesContent":["import sanitizeHtml from 'sanitize-html';\n\nimport type { AuthenticationChatOption, LoadPreviousSessionChatOption } from './types';\n\nfunction sanitizeUserInput(input: string): string {\n\t// Sanitize HTML tags and entities\n\tlet sanitized = sanitizeHtml(input, {\n\t\tallowedTags: [],\n\t\tallowedAttributes: {},\n\t});\n\t// Remove dangerous protocols\n\tsanitized = sanitized.replace(/javascript:/gi, '');\n\tsanitized = sanitized.replace(/data:/gi, '');\n\tsanitized = sanitized.replace(/vbscript:/gi, '');\n\treturn sanitized;\n}\n\nexport function getSanitizedInitialMessages(initialMessages: string): string[] {\n\tconst sanitizedString = sanitizeUserInput(initialMessages);\n\n\treturn sanitizedString\n\t\t.split('\\n')\n\t\t.map((line) => line.trim())\n\t\t.filter((line) => line !== '');\n}\n\nexport function getSanitizedI18nConfig(config: Record<string, string>): Record<string, string> {\n\tconst sanitized: Record<string, string> = {};\n\n\tfor (const [key, value] of Object.entries<string>(config)) {\n\t\tsanitized[key] = sanitizeUserInput(value);\n\t}\n\n\treturn sanitized;\n}\nexport function createPage({\n\tinstanceId,\n\twebhookUrl,\n\tshowWelcomeScreen,\n\tloadPreviousSession,\n\ti18n: { en },\n\tinitialMessages,\n\tauthentication,\n\tallowFileUploads,\n\tallowedFilesMimeTypes,\n\tcustomCss,\n\tenableStreaming,\n}: {\n\tinstanceId: string;\n\twebhookUrl?: string;\n\tshowWelcomeScreen?: boolean;\n\tloadPreviousSession?: LoadPreviousSessionChatOption;\n\ti18n: {\n\t\ten: Record<string, string>;\n\t};\n\tinitialMessages: string;\n\tmode: 'test' | 'production';\n\tauthentication: AuthenticationChatOption;\n\tallowFileUploads?: boolean;\n\tallowedFilesMimeTypes?: string;\n\tcustomCss?: string;\n\tenableStreaming?: boolean;\n}) {\n\tconst validAuthenticationOptions: AuthenticationChatOption[] = [\n\t\t'none',\n\t\t'basicAuth',\n\t\t'n8nUserAuth',\n\t];\n\tconst validLoadPreviousSessionOptions: LoadPreviousSessionChatOption[] = [\n\t\t'manually',\n\t\t'memory',\n\t\t'notSupported',\n\t];\n\n\tconst sanitizedAuthentication = validAuthenticationOptions.includes(authentication)\n\t\t? authentication\n\t\t: 'none';\n\tconst sanitizedShowWelcomeScreen = !!showWelcomeScreen;\n\tconst sanitizedAllowFileUploads = !!allowFileUploads;\n\tconst sanitizedAllowedFilesMimeTypes = allowedFilesMimeTypes?.toString() ?? '';\n\tconst sanitizedCustomCss = sanitizeHtml(`<style>${customCss?.toString() ?? ''}</style>`, {\n\t\tallowedTags: ['style'],\n\t\tallowedAttributes: false,\n\t});\n\n\tconst sanitizedLoadPreviousSession = validLoadPreviousSessionOptions.includes(\n\t\tloadPreviousSession as LoadPreviousSessionChatOption,\n\t)\n\t\t? loadPreviousSession\n\t\t: 'notSupported';\n\n\tconst sanitizedInitialMessages = getSanitizedInitialMessages(initialMessages);\n\tconst sanitizedI18nConfig = getSanitizedI18nConfig(en || {});\n\n\treturn `<!doctype html>\n\t<html lang=\"en\">\n\t\t<head>\n\t\t\t<meta charset=\"utf-8\">\n\t\t\t<meta name=\"viewport\" content=\"width=device-width, initial-scale=1\">\n\t\t\t<title>Chat</title>\n\t\t\t<link href=\"https://cdn.jsdelivr.net/npm/normalize.css@8.0.1/normalize.min.css\" rel=\"stylesheet\" />\n\t\t\t<link href=\"https://cdn.jsdelivr.net/npm/@n8n/chat/dist/style.css\" rel=\"stylesheet\" />\n\t\t\t<style>\n\t\t\t\thtml,\n\t\t\t\tbody,\n\t\t\t\t#n8n-chat {\n\t\t\t\t\twidth: 100%;\n\t\t\t\t\theight: 100%;\n\t\t\t\t}\n\t\t\t</style>\n\t\t\t${sanitizedCustomCss}\n\t\t</head>\n\t\t<body>\n\t\t\t<script type=\"module\">\n\t\t\t\timport { createChat } from 'https://cdn.jsdelivr.net/npm/@n8n/chat/dist/chat.bundle.es.js';\n\n\t\t\t\t(async function () {\n\t\t\t\t\tconst authentication = '${sanitizedAuthentication}';\n\t\t\t\t\tlet metadata;\n\t\t\t\t\tif (authentication === 'n8nUserAuth') {\n\t\t\t\t\t\ttry {\n\t\t\t\t\t\t\tconst response = await fetch('/rest/login', {\n\t\t\t\t\t\t\t\t\tmethod: 'GET',\n\t\t\t\t\t\t\t\t\theaders: { 'browser-id': localStorage.getItem('n8n-browserId') }\n\t\t\t\t\t\t\t});\n\n\t\t\t\t\t\t\tif (response.status !== 200) {\n\t\t\t\t\t\t\t\tthrow new Error('Not logged in');\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\tconst responseData = await response.json();\n\t\t\t\t\t\t\tmetadata = {\n\t\t\t\t\t\t\t\tuser: {\n\t\t\t\t\t\t\t\t\tid: responseData.data.id,\n\t\t\t\t\t\t\t\t\tfirstName: responseData.data.firstName,\n\t\t\t\t\t\t\t\t\tlastName: responseData.data.lastName,\n\t\t\t\t\t\t\t\t\temail: responseData.data.email,\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t};\n\t\t\t\t\t\t} catch (error) {\n\t\t\t\t\t\t\twindow.location.href = '/signin?redirect=' + window.location.href;\n\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\tcreateChat({\n\t\t\t\t\t\tmode: 'fullscreen',\n\t\t\t\t\t\twebhookUrl: '${webhookUrl}',\n\t\t\t\t\t\tshowWelcomeScreen: ${sanitizedShowWelcomeScreen},\n\t\t\t\t\t\tloadPreviousSession: ${sanitizedLoadPreviousSession !== 'notSupported'},\n\t\t\t\t\t\tmetadata: metadata,\n\t\t\t\t\t\twebhookConfig: {\n\t\t\t\t\t\t\theaders: {\n\t\t\t\t\t\t\t\t'X-Instance-Id': '${instanceId}',\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t},\n\t\t\t\t\t\tallowFileUploads: ${sanitizedAllowFileUploads},\n\t\t\t\t\t\tallowedFilesMimeTypes: ${JSON.stringify(sanitizedAllowedFilesMimeTypes)},\n\t\t\t\t\t\ti18n: {\n\t\t\t\t\t\t\t${Object.keys(sanitizedI18nConfig).length ? `en: ${JSON.stringify(sanitizedI18nConfig)},` : ''}\n\t\t\t\t\t\t},\n\t\t\t\t\t\t${sanitizedInitialMessages.length ? `initialMessages: ${JSON.stringify(sanitizedInitialMessages)},` : ''}\n\t\t\t\t\t\tenableStreaming: ${!!enableStreaming},\n\t\t\t\t\t});\n\t\t\t\t})();\n\t\t\t</script>\n\t\t</body>\n\t</html>`;\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,2BAAyB;AAIzB,SAAS,kBAAkB,OAAuB;AAEjD,MAAI,gBAAY,qBAAAA,SAAa,OAAO;AAAA,IACnC,aAAa,CAAC;AAAA,IACd,mBAAmB,CAAC;AAAA,EACrB,CAAC;AAED,cAAY,UAAU,QAAQ,iBAAiB,EAAE;AACjD,cAAY,UAAU,QAAQ,WAAW,EAAE;AAC3C,cAAY,UAAU,QAAQ,eAAe,EAAE;AAC/C,SAAO;AACR;AAEO,SAAS,4BAA4B,iBAAmC;AAC9E,QAAM,kBAAkB,kBAAkB,eAAe;AAEzD,SAAO,gBACL,MAAM,IAAI,EACV,IAAI,CAAC,SAAS,KAAK,KAAK,CAAC,EACzB,OAAO,CAAC,SAAS,SAAS,EAAE;AAC/B;AAEO,SAAS,uBAAuB,QAAwD;AAC9F,QAAM,YAAoC,CAAC;AAE3C,aAAW,CAAC,KAAK,KAAK,KAAK,OAAO,QAAgB,MAAM,GAAG;AAC1D,cAAU,GAAG,IAAI,kBAAkB,KAAK;AAAA,EACzC;AAEA,SAAO;AACR;AACO,SAAS,WAAW;AAAA,EAC1B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,MAAM,EAAE,GAAG;AAAA,EACX;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACD,GAeG;AACF,QAAM,6BAAyD;AAAA,IAC9D;AAAA,IACA;AAAA,IACA;AAAA,EACD;AACA,QAAM,kCAAmE;AAAA,IACxE;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAEA,QAAM,0BAA0B,2BAA2B,SAAS,cAAc,IAC/E,iBACA;AACH,QAAM,6BAA6B,CAAC,CAAC;AACrC,QAAM,4BAA4B,CAAC,CAAC;AACpC,QAAM,iCAAiC,uBAAuB,SAAS,KAAK;AAC5E,QAAM,yBAAqB,qBAAAA,SAAa,UAAU,WAAW,SAAS,KAAK,EAAE,YAAY;AAAA,IACxF,aAAa,CAAC,OAAO;AAAA,IACrB,mBAAmB;AAAA,EACpB,CAAC;AAED,QAAM,+BAA+B,gCAAgC;AAAA,IACpE;AAAA,EACD,IACG,sBACA;AAEH,QAAM,2BAA2B,4BAA4B,eAAe;AAC5E,QAAM,sBAAsB,uBAAuB,MAAM,CAAC,CAAC;AAE3D,SAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,KAgBH,kBAAkB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,+BAOQ,uBAAuB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,qBA8BjC,UAAU;AAAA,2BACJ,0BAA0B;AAAA,6BACxB,iCAAiC,cAAc;AAAA;AAAA;AAAA;AAAA,4BAIhD,UAAU;AAAA;AAAA;AAAA,0BAGZ,yBAAyB;AAAA,+BACpB,KAAK,UAAU,8BAA8B,CAAC;AAAA;AAAA,SAEpE,OAAO,KAAK,mBAAmB,EAAE,SAAS,OAAO,KAAK,UAAU,mBAAmB,CAAC,MAAM,EAAE;AAAA;AAAA,QAE7F,yBAAyB,SAAS,oBAAoB,KAAK,UAAU,wBAAwB,CAAC,MAAM,EAAE;AAAA,yBACrF,CAAC,CAAC,eAAe;AAAA;AAAA;AAAA;AAAA;AAAA;AAM1C;","names":["sanitizeHtml"]}
@@ -0,0 +1,38 @@
1
+ "use strict";
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 types_exports = {};
20
+ __export(types_exports, {
21
+ assertValidLoadPreviousSessionOption: () => assertValidLoadPreviousSessionOption
22
+ });
23
+ module.exports = __toCommonJS(types_exports);
24
+ var import_n8n_workflow = require("n8n-workflow");
25
+ const validOptions = ["notSupported", "memory", "manually"];
26
+ function isValidLoadPreviousSessionOption(value) {
27
+ return typeof value === "string" && validOptions.includes(value);
28
+ }
29
+ function assertValidLoadPreviousSessionOption(value, node) {
30
+ if (value && !isValidLoadPreviousSessionOption(value)) {
31
+ throw new import_n8n_workflow.NodeOperationError(node, `Invalid loadPreviousSession option: ${value}`);
32
+ }
33
+ }
34
+ // Annotate the CommonJS export names for ESM import in node:
35
+ 0 && (module.exports = {
36
+ assertValidLoadPreviousSessionOption
37
+ });
38
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../nodes/trigger/ChatTrigger/types.ts"],"sourcesContent":["import type { INode } from 'n8n-workflow';\nimport { NodeOperationError } from 'n8n-workflow';\n\nconst validOptions = ['notSupported', 'memory', 'manually'] as const;\nexport type AuthenticationChatOption = 'none' | 'basicAuth' | 'n8nUserAuth';\nexport type LoadPreviousSessionChatOption = (typeof validOptions)[number];\n\nfunction isValidLoadPreviousSessionOption(value: unknown): value is LoadPreviousSessionChatOption {\n\treturn typeof value === 'string' && (validOptions as readonly string[]).includes(value);\n}\n\nexport function assertValidLoadPreviousSessionOption(\n\tvalue: string | undefined,\n\tnode: INode,\n): asserts value is LoadPreviousSessionChatOption | undefined {\n\tif (value && !isValidLoadPreviousSessionOption(value)) {\n\t\tthrow new NodeOperationError(node, `Invalid loadPreviousSession option: ${value}`);\n\t}\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,0BAAmC;AAEnC,MAAM,eAAe,CAAC,gBAAgB,UAAU,UAAU;AAI1D,SAAS,iCAAiC,OAAwD;AACjG,SAAO,OAAO,UAAU,YAAa,aAAmC,SAAS,KAAK;AACvF;AAEO,SAAS,qCACf,OACA,MAC6D;AAC7D,MAAI,SAAS,CAAC,iCAAiC,KAAK,GAAG;AACtD,UAAM,IAAI,uCAAmB,MAAM,uCAAuC,KAAK,EAAE;AAAA,EAClF;AACD;","names":[]}