@n8n/n8n-nodes-langchain 2.16.0 → 2.17.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 (212) hide show
  1. package/dist/credentials/MoonshotApi.credentials.d.ts +9 -0
  2. package/dist/credentials/MoonshotApi.credentials.js +60 -0
  3. package/dist/credentials/MoonshotApi.credentials.js.map +1 -0
  4. package/dist/known/credentials.json +9 -0
  5. package/dist/known/nodes.json +12 -0
  6. package/dist/node-definitions/.nodes-hash +1 -1
  7. package/dist/node-definitions/index.ts +12 -0
  8. package/dist/node-definitions/nodes/n8n-nodes-langchain/alibabaCloud/index.ts +12 -0
  9. package/dist/node-definitions/nodes/n8n-nodes-langchain/alibabaCloud/v1/index.schema.js +24 -0
  10. package/dist/node-definitions/nodes/n8n-nodes-langchain/alibabaCloud/v1/index.ts +18 -0
  11. package/dist/node-definitions/nodes/n8n-nodes-langchain/alibabaCloud/v1/resource_image/index.schema.js +22 -0
  12. package/dist/node-definitions/nodes/n8n-nodes-langchain/alibabaCloud/v1/resource_image/index.ts +15 -0
  13. package/dist/node-definitions/nodes/n8n-nodes-langchain/alibabaCloud/v1/resource_image/operation_analyze.schema.js +34 -0
  14. package/dist/node-definitions/nodes/n8n-nodes-langchain/alibabaCloud/v1/resource_image/operation_analyze.ts +71 -0
  15. package/dist/node-definitions/nodes/n8n-nodes-langchain/alibabaCloud/v1/resource_image/operation_generate.schema.js +31 -0
  16. package/dist/node-definitions/nodes/n8n-nodes-langchain/alibabaCloud/v1/resource_image/operation_generate.ts +60 -0
  17. package/dist/node-definitions/nodes/n8n-nodes-langchain/alibabaCloud/v1/resource_text/index.schema.js +18 -0
  18. package/dist/node-definitions/nodes/n8n-nodes-langchain/alibabaCloud/v1/resource_text/index.ts +10 -0
  19. package/dist/node-definitions/nodes/n8n-nodes-langchain/alibabaCloud/v1/resource_text/operation_message.schema.js +31 -0
  20. package/dist/node-definitions/nodes/n8n-nodes-langchain/alibabaCloud/v1/resource_text/operation_message.ts +97 -0
  21. package/dist/node-definitions/nodes/n8n-nodes-langchain/alibabaCloud/v1/resource_video/index.schema.js +22 -0
  22. package/dist/node-definitions/nodes/n8n-nodes-langchain/alibabaCloud/v1/resource_video/index.ts +15 -0
  23. package/dist/node-definitions/nodes/n8n-nodes-langchain/alibabaCloud/v1/resource_video/operation_image_to_video.schema.js +38 -0
  24. package/dist/node-definitions/nodes/n8n-nodes-langchain/alibabaCloud/v1/resource_video/operation_image_to_video.ts +105 -0
  25. package/dist/node-definitions/nodes/n8n-nodes-langchain/alibabaCloud/v1/resource_video/operation_text_to_video.schema.js +35 -0
  26. package/dist/node-definitions/nodes/n8n-nodes-langchain/alibabaCloud/v1/resource_video/operation_text_to_video.ts +88 -0
  27. package/dist/node-definitions/nodes/n8n-nodes-langchain/lmChatMoonshot/index.ts +12 -0
  28. package/dist/node-definitions/nodes/n8n-nodes-langchain/lmChatMoonshot/v1.schema.js +25 -0
  29. package/dist/node-definitions/nodes/n8n-nodes-langchain/lmChatMoonshot/v1.ts +68 -0
  30. package/dist/node-definitions/nodes/n8n-nodes-langchain/moonshot/index.ts +12 -0
  31. package/dist/node-definitions/nodes/n8n-nodes-langchain/moonshot/v1/index.schema.js +22 -0
  32. package/dist/node-definitions/nodes/n8n-nodes-langchain/moonshot/v1/index.ts +15 -0
  33. package/dist/node-definitions/nodes/n8n-nodes-langchain/moonshot/v1/resource_image/index.schema.js +18 -0
  34. package/dist/node-definitions/nodes/n8n-nodes-langchain/moonshot/v1/resource_image/index.ts +10 -0
  35. package/dist/node-definitions/nodes/n8n-nodes-langchain/moonshot/v1/resource_image/operation_analyze.schema.js +32 -0
  36. package/dist/node-definitions/nodes/n8n-nodes-langchain/moonshot/v1/resource_image/operation_analyze.ts +58 -0
  37. package/dist/node-definitions/nodes/n8n-nodes-langchain/moonshot/v1/resource_text/index.schema.js +18 -0
  38. package/dist/node-definitions/nodes/n8n-nodes-langchain/moonshot/v1/resource_text/index.ts +10 -0
  39. package/dist/node-definitions/nodes/n8n-nodes-langchain/moonshot/v1/resource_text/operation_message.schema.js +33 -0
  40. package/dist/node-definitions/nodes/n8n-nodes-langchain/moonshot/v1/resource_text/operation_message.ts +114 -0
  41. package/dist/nodes/Guardrails/Guardrails.node.js +2 -1
  42. package/dist/nodes/Guardrails/Guardrails.node.js.map +1 -1
  43. package/dist/nodes/ModelSelector/ModelSelector.node.js +2 -2
  44. package/dist/nodes/ModelSelector/ModelSelector.node.js.map +1 -1
  45. package/dist/nodes/agents/Agent/Agent.node.js +1 -1
  46. package/dist/nodes/agents/Agent/Agent.node.js.map +1 -1
  47. package/dist/nodes/agents/Agent/V1/AgentV1.node.js +2 -0
  48. package/dist/nodes/agents/Agent/V1/AgentV1.node.js.map +1 -1
  49. package/dist/nodes/agents/Agent/agents/ToolsAgent/V3/helpers/runAgent.js +1 -1
  50. package/dist/nodes/agents/Agent/agents/ToolsAgent/V3/helpers/runAgent.js.map +1 -1
  51. package/dist/nodes/chains/ChainLLM/ChainLlm.node.js +1 -2
  52. package/dist/nodes/chains/ChainLLM/ChainLlm.node.js.map +1 -1
  53. package/dist/nodes/chains/ChainRetrievalQA/ChainRetrievalQa.node.js +1 -2
  54. package/dist/nodes/chains/ChainRetrievalQA/ChainRetrievalQa.node.js.map +1 -1
  55. package/dist/nodes/chains/ChainSummarization/ChainSummarization.node.js +1 -1
  56. package/dist/nodes/chains/ChainSummarization/ChainSummarization.node.js.map +1 -1
  57. package/dist/nodes/chains/InformationExtractor/InformationExtractor.node.js +1 -1
  58. package/dist/nodes/chains/InformationExtractor/InformationExtractor.node.js.map +1 -1
  59. package/dist/nodes/chains/SentimentAnalysis/SentimentAnalysis.node.js +1 -1
  60. package/dist/nodes/chains/SentimentAnalysis/SentimentAnalysis.node.js.map +1 -1
  61. package/dist/nodes/chains/TextClassifier/TextClassifier.node.js +1 -1
  62. package/dist/nodes/chains/TextClassifier/TextClassifier.node.js.map +1 -1
  63. package/dist/nodes/document_loaders/DocumentDefaultDataLoader/DocumentDefaultDataLoader.node.js +2 -1
  64. package/dist/nodes/document_loaders/DocumentDefaultDataLoader/DocumentDefaultDataLoader.node.js.map +1 -1
  65. package/dist/nodes/llms/LmChatAlibabaCloud/alibaba-cloud-base-url.d.ts +1 -0
  66. package/dist/nodes/llms/LmChatAlibabaCloud/alibaba-cloud-base-url.js +22 -10
  67. package/dist/nodes/llms/LmChatAlibabaCloud/alibaba-cloud-base-url.js.map +1 -1
  68. package/dist/nodes/llms/LmChatMoonshot/LmChatMoonshot.node.d.ts +5 -0
  69. package/dist/nodes/llms/LmChatMoonshot/LmChatMoonshot.node.js +226 -0
  70. package/dist/nodes/llms/LmChatMoonshot/LmChatMoonshot.node.js.map +1 -0
  71. package/dist/nodes/llms/LmChatMoonshot/moonshot.dark.svg +4 -0
  72. package/dist/nodes/llms/LmChatMoonshot/moonshot.svg +4 -0
  73. package/dist/nodes/mcp/McpClient/McpClient.node.js +64 -59
  74. package/dist/nodes/mcp/McpClient/McpClient.node.js.map +1 -1
  75. package/dist/nodes/mcp/McpClient/listSearch.js +18 -13
  76. package/dist/nodes/mcp/McpClient/listSearch.js.map +1 -1
  77. package/dist/nodes/mcp/McpClient/resourceMapping.js +13 -8
  78. package/dist/nodes/mcp/McpClient/resourceMapping.js.map +1 -1
  79. package/dist/nodes/mcp/McpClientTool/McpClientTool.node.js +74 -41
  80. package/dist/nodes/mcp/McpClientTool/McpClientTool.node.js.map +1 -1
  81. package/dist/nodes/mcp/McpClientTool/loadOptions.js +12 -7
  82. package/dist/nodes/mcp/McpClientTool/loadOptions.js.map +1 -1
  83. package/dist/nodes/mcp/McpClientTool/utils.d.ts +2 -1
  84. package/dist/nodes/mcp/McpClientTool/utils.js +20 -1
  85. package/dist/nodes/mcp/McpClientTool/utils.js.map +1 -1
  86. package/dist/nodes/memory/MemoryBufferWindow/MemoryBufferWindow.node.js +1 -1
  87. package/dist/nodes/memory/MemoryBufferWindow/MemoryBufferWindow.node.js.map +1 -1
  88. package/dist/nodes/memory/MemoryManager/MemoryManager.node.js +1 -1
  89. package/dist/nodes/memory/MemoryManager/MemoryManager.node.js.map +1 -1
  90. package/dist/nodes/output_parser/OutputParserItemList/OutputParserItemList.node.js +1 -1
  91. package/dist/nodes/output_parser/OutputParserItemList/OutputParserItemList.node.js.map +1 -1
  92. package/dist/nodes/output_parser/OutputParserStructured/OutputParserStructured.node.js +1 -1
  93. package/dist/nodes/output_parser/OutputParserStructured/OutputParserStructured.node.js.map +1 -1
  94. package/dist/nodes/retrievers/RetrieverContextualCompression/RetrieverContextualCompression.node.js +1 -1
  95. package/dist/nodes/retrievers/RetrieverContextualCompression/RetrieverContextualCompression.node.js.map +1 -1
  96. package/dist/nodes/retrievers/RetrieverMultiQuery/RetrieverMultiQuery.node.js +1 -1
  97. package/dist/nodes/retrievers/RetrieverMultiQuery/RetrieverMultiQuery.node.js.map +1 -1
  98. package/dist/nodes/retrievers/RetrieverVectorStore/RetrieverVectorStore.node.js +1 -1
  99. package/dist/nodes/retrievers/RetrieverVectorStore/RetrieverVectorStore.node.js.map +1 -1
  100. package/dist/nodes/retrievers/RetrieverWorkflow/RetrieverWorkflow.node.js +1 -1
  101. package/dist/nodes/retrievers/RetrieverWorkflow/RetrieverWorkflow.node.js.map +1 -1
  102. package/dist/nodes/text_splitters/TextSplitterCharacterTextSplitter/TextSplitterCharacterTextSplitter.node.js +1 -1
  103. package/dist/nodes/text_splitters/TextSplitterCharacterTextSplitter/TextSplitterCharacterTextSplitter.node.js.map +1 -1
  104. package/dist/nodes/text_splitters/TextSplitterRecursiveCharacterTextSplitter/TextSplitterRecursiveCharacterTextSplitter.node.js +1 -1
  105. package/dist/nodes/text_splitters/TextSplitterRecursiveCharacterTextSplitter/TextSplitterRecursiveCharacterTextSplitter.node.js.map +1 -1
  106. package/dist/nodes/text_splitters/TextSplitterTokenSplitter/TextSplitterTokenSplitter.node.js +1 -1
  107. package/dist/nodes/text_splitters/TextSplitterTokenSplitter/TextSplitterTokenSplitter.node.js.map +1 -1
  108. package/dist/nodes/tools/ToolCalculator/ToolCalculator.node.js +1 -1
  109. package/dist/nodes/tools/ToolCalculator/ToolCalculator.node.js.map +1 -1
  110. package/dist/nodes/tools/ToolThink/ToolThink.node.js +1 -1
  111. package/dist/nodes/tools/ToolThink/ToolThink.node.js.map +1 -1
  112. package/dist/nodes/tools/ToolVectorStore/ToolVectorStore.node.js +1 -1
  113. package/dist/nodes/tools/ToolVectorStore/ToolVectorStore.node.js.map +1 -1
  114. package/dist/nodes/tools/ToolWorkflow/ToolWorkflow.node.js +1 -1
  115. package/dist/nodes/tools/ToolWorkflow/ToolWorkflow.node.js.map +1 -1
  116. package/dist/nodes/trigger/ChatTrigger/Chat.node.js +1 -1
  117. package/dist/nodes/trigger/ChatTrigger/Chat.node.js.map +1 -1
  118. package/dist/nodes/trigger/ChatTrigger/ChatTrigger.node.js +5 -2
  119. package/dist/nodes/trigger/ChatTrigger/ChatTrigger.node.js.map +1 -1
  120. package/dist/nodes/vector_store/VectorStoreInMemory/VectorStoreInMemory.node.js +1 -1
  121. package/dist/nodes/vector_store/VectorStoreInMemory/VectorStoreInMemory.node.js.map +1 -1
  122. package/dist/nodes/vendors/AlibabaCloud/AlibabaCloud.node.d.ts +5 -0
  123. package/dist/nodes/vendors/AlibabaCloud/AlibabaCloud.node.js +15 -0
  124. package/dist/nodes/vendors/AlibabaCloud/AlibabaCloud.node.js.map +1 -0
  125. package/dist/nodes/vendors/AlibabaCloud/actions/image/analyze.operation.d.ts +29 -0
  126. package/dist/nodes/vendors/AlibabaCloud/actions/image/analyze.operation.js +188 -0
  127. package/dist/nodes/vendors/AlibabaCloud/actions/image/analyze.operation.js.map +1 -0
  128. package/dist/nodes/vendors/AlibabaCloud/actions/image/generate.operation.d.ts +29 -0
  129. package/dist/nodes/vendors/AlibabaCloud/actions/image/generate.operation.js +204 -0
  130. package/dist/nodes/vendors/AlibabaCloud/actions/image/generate.operation.js.map +1 -0
  131. package/dist/nodes/vendors/AlibabaCloud/actions/image/index.d.ts +5 -0
  132. package/dist/nodes/vendors/AlibabaCloud/actions/image/index.js +71 -0
  133. package/dist/nodes/vendors/AlibabaCloud/actions/image/index.js.map +1 -0
  134. package/dist/nodes/vendors/AlibabaCloud/actions/router.d.ts +2 -0
  135. package/dist/nodes/vendors/AlibabaCloud/actions/router.js +106 -0
  136. package/dist/nodes/vendors/AlibabaCloud/actions/router.js.map +1 -0
  137. package/dist/nodes/vendors/AlibabaCloud/actions/text/index.d.ts +4 -0
  138. package/dist/nodes/vendors/AlibabaCloud/actions/text/index.js +62 -0
  139. package/dist/nodes/vendors/AlibabaCloud/actions/text/index.js.map +1 -0
  140. package/dist/nodes/vendors/AlibabaCloud/actions/text/message.operation.d.ts +29 -0
  141. package/dist/nodes/vendors/AlibabaCloud/actions/text/message.operation.js +403 -0
  142. package/dist/nodes/vendors/AlibabaCloud/actions/text/message.operation.js.map +1 -0
  143. package/dist/nodes/vendors/AlibabaCloud/actions/versionDescription.d.ts +2 -0
  144. package/dist/nodes/vendors/AlibabaCloud/actions/versionDescription.js +112 -0
  145. package/dist/nodes/vendors/AlibabaCloud/actions/versionDescription.js.map +1 -0
  146. package/dist/nodes/vendors/AlibabaCloud/actions/video/generate.i2v.operation.d.ts +30 -0
  147. package/dist/nodes/vendors/AlibabaCloud/actions/video/generate.i2v.operation.js +312 -0
  148. package/dist/nodes/vendors/AlibabaCloud/actions/video/generate.i2v.operation.js.map +1 -0
  149. package/dist/nodes/vendors/AlibabaCloud/actions/video/generate.t2v.operation.d.ts +30 -0
  150. package/dist/nodes/vendors/AlibabaCloud/actions/video/generate.t2v.operation.js +251 -0
  151. package/dist/nodes/vendors/AlibabaCloud/actions/video/generate.t2v.operation.js.map +1 -0
  152. package/dist/nodes/vendors/AlibabaCloud/actions/video/index.d.ts +5 -0
  153. package/dist/nodes/vendors/AlibabaCloud/actions/video/index.js +71 -0
  154. package/dist/nodes/vendors/AlibabaCloud/actions/video/index.js.map +1 -0
  155. package/dist/nodes/vendors/AlibabaCloud/alibaba.svg +1 -0
  156. package/dist/nodes/vendors/AlibabaCloud/helpers/interfaces.d.ts +53 -0
  157. package/dist/nodes/vendors/AlibabaCloud/helpers/interfaces.js +3 -0
  158. package/dist/nodes/vendors/AlibabaCloud/helpers/interfaces.js.map +1 -0
  159. package/dist/nodes/vendors/AlibabaCloud/transport/index.d.ts +11 -0
  160. package/dist/nodes/vendors/AlibabaCloud/transport/index.js +60 -0
  161. package/dist/nodes/vendors/AlibabaCloud/transport/index.js.map +1 -0
  162. package/dist/nodes/vendors/Microsoft/microsoft-utils.d.ts +2 -1
  163. package/dist/nodes/vendors/Microsoft/microsoft-utils.js +3 -13
  164. package/dist/nodes/vendors/Microsoft/microsoft-utils.js.map +1 -1
  165. package/dist/nodes/vendors/Moonshot/Moonshot.node.d.ts +9 -0
  166. package/dist/nodes/vendors/Moonshot/Moonshot.node.js +19 -0
  167. package/dist/nodes/vendors/Moonshot/Moonshot.node.js.map +1 -0
  168. package/dist/nodes/vendors/Moonshot/actions/descriptions.d.ts +2 -0
  169. package/dist/nodes/vendors/Moonshot/actions/descriptions.js +28 -0
  170. package/dist/nodes/vendors/Moonshot/actions/descriptions.js.map +1 -0
  171. package/dist/nodes/vendors/Moonshot/actions/image/analyze.operation.d.ts +29 -0
  172. package/dist/nodes/vendors/Moonshot/actions/image/analyze.operation.js +114 -0
  173. package/dist/nodes/vendors/Moonshot/actions/image/analyze.operation.js.map +1 -0
  174. package/dist/nodes/vendors/Moonshot/actions/image/index.d.ts +4 -0
  175. package/dist/nodes/vendors/Moonshot/actions/image/index.js +62 -0
  176. package/dist/nodes/vendors/Moonshot/actions/image/index.js.map +1 -0
  177. package/dist/nodes/vendors/Moonshot/actions/node.type.d.ts +7 -0
  178. package/dist/nodes/vendors/Moonshot/actions/node.type.js +3 -0
  179. package/dist/nodes/vendors/Moonshot/actions/node.type.js.map +1 -0
  180. package/dist/nodes/vendors/Moonshot/actions/router.d.ts +2 -0
  181. package/dist/nodes/vendors/Moonshot/actions/router.js +78 -0
  182. package/dist/nodes/vendors/Moonshot/actions/router.js.map +1 -0
  183. package/dist/nodes/vendors/Moonshot/actions/text/index.d.ts +4 -0
  184. package/dist/nodes/vendors/Moonshot/actions/text/index.js +62 -0
  185. package/dist/nodes/vendors/Moonshot/actions/text/index.js.map +1 -0
  186. package/dist/nodes/vendors/Moonshot/actions/text/message.operation.d.ts +29 -0
  187. package/dist/nodes/vendors/Moonshot/actions/text/message.operation.js +390 -0
  188. package/dist/nodes/vendors/Moonshot/actions/text/message.operation.js.map +1 -0
  189. package/dist/nodes/vendors/Moonshot/actions/versionDescription.d.ts +2 -0
  190. package/dist/nodes/vendors/Moonshot/actions/versionDescription.js +106 -0
  191. package/dist/nodes/vendors/Moonshot/actions/versionDescription.js.map +1 -0
  192. package/dist/nodes/vendors/Moonshot/helpers/interfaces.d.ts +60 -0
  193. package/dist/nodes/vendors/Moonshot/helpers/interfaces.js +3 -0
  194. package/dist/nodes/vendors/Moonshot/helpers/interfaces.js.map +1 -0
  195. package/dist/nodes/vendors/Moonshot/helpers/utils.d.ts +2 -0
  196. package/dist/nodes/vendors/Moonshot/helpers/utils.js +14 -0
  197. package/dist/nodes/vendors/Moonshot/helpers/utils.js.map +1 -0
  198. package/dist/nodes/vendors/Moonshot/methods/index.d.ts +1 -0
  199. package/dist/nodes/vendors/Moonshot/methods/index.js +38 -0
  200. package/dist/nodes/vendors/Moonshot/methods/index.js.map +1 -0
  201. package/dist/nodes/vendors/Moonshot/methods/listSearch.d.ts +2 -0
  202. package/dist/nodes/vendors/Moonshot/methods/listSearch.js +18 -0
  203. package/dist/nodes/vendors/Moonshot/methods/listSearch.js.map +1 -0
  204. package/dist/nodes/vendors/Moonshot/moonshot.dark.svg +4 -0
  205. package/dist/nodes/vendors/Moonshot/moonshot.svg +4 -0
  206. package/dist/nodes/vendors/Moonshot/transport/index.d.ts +9 -0
  207. package/dist/nodes/vendors/Moonshot/transport/index.js +22 -0
  208. package/dist/nodes/vendors/Moonshot/transport/index.js.map +1 -0
  209. package/dist/typecheck.tsbuildinfo +1 -1
  210. package/dist/types/credentials.json +2 -1
  211. package/dist/types/nodes.json +37 -34
  212. package/package.json +14 -10
@@ -0,0 +1,312 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.description = exports.properties = void 0;
4
+ exports.execute = execute;
5
+ const n8n_workflow_1 = require("n8n-workflow");
6
+ const transport_1 = require("../../transport");
7
+ exports.properties = [
8
+ {
9
+ displayName: 'Model',
10
+ name: 'modelId',
11
+ type: 'options',
12
+ options: [
13
+ {
14
+ name: 'Wan 2.6 Image-to-Video Flash',
15
+ value: 'wan2.6-i2v-flash',
16
+ description: 'Fast image-to-video generation model',
17
+ },
18
+ {
19
+ name: 'Wan 2.6 Image-to-Video',
20
+ value: 'wan2.6-i2v',
21
+ description: 'Standard image-to-video generation model',
22
+ },
23
+ ],
24
+ default: 'wan2.6-i2v-flash',
25
+ description: 'The model to use for image-to-video generation',
26
+ },
27
+ {
28
+ displayName: 'Input Type',
29
+ name: 'inputType',
30
+ type: 'options',
31
+ options: [
32
+ {
33
+ name: 'Image URL',
34
+ value: 'url',
35
+ },
36
+ {
37
+ name: 'Binary File',
38
+ value: 'binary',
39
+ },
40
+ ],
41
+ default: 'url',
42
+ },
43
+ {
44
+ displayName: 'Image URL',
45
+ name: 'imgUrl',
46
+ type: 'string',
47
+ required: true,
48
+ default: '',
49
+ placeholder: 'https://example.com/image.png',
50
+ description: 'The URL of the first-frame image to generate video from',
51
+ displayOptions: {
52
+ show: {
53
+ inputType: ['url'],
54
+ },
55
+ },
56
+ },
57
+ {
58
+ displayName: 'Input Data Field Name',
59
+ name: 'binaryPropertyName',
60
+ type: 'string',
61
+ default: 'data',
62
+ required: true,
63
+ placeholder: 'e.g. data',
64
+ hint: 'The name of the input field containing the binary file data to be processed',
65
+ displayOptions: {
66
+ show: {
67
+ inputType: ['binary'],
68
+ },
69
+ },
70
+ },
71
+ {
72
+ displayName: 'Prompt',
73
+ name: 'prompt',
74
+ type: 'string',
75
+ typeOptions: {
76
+ rows: 4,
77
+ },
78
+ default: '',
79
+ description: 'A text prompt describing the desired content and visual characteristics for the generated video',
80
+ placeholder: 'A small cat running on the grass',
81
+ },
82
+ {
83
+ displayName: 'Resolution',
84
+ name: 'resolution',
85
+ type: 'options',
86
+ options: [
87
+ {
88
+ name: '720P',
89
+ value: '720P',
90
+ },
91
+ {
92
+ name: '1080P',
93
+ value: '1080P',
94
+ },
95
+ ],
96
+ default: '1080P',
97
+ description: 'Resolution tier of the generated video',
98
+ },
99
+ {
100
+ displayName: 'Duration (Seconds)',
101
+ name: 'duration',
102
+ type: 'number',
103
+ typeOptions: {
104
+ minValue: 2,
105
+ maxValue: 15,
106
+ },
107
+ default: 5,
108
+ description: 'Duration of the generated video in seconds (2–15)',
109
+ },
110
+ {
111
+ displayName: 'Shot Type',
112
+ name: 'shotType',
113
+ type: 'options',
114
+ options: [
115
+ {
116
+ name: 'Single',
117
+ value: 'single',
118
+ },
119
+ {
120
+ name: 'Multi',
121
+ value: 'multi',
122
+ },
123
+ ],
124
+ default: 'single',
125
+ description: 'Whether to generate a single-shot or multi-shot narrative video',
126
+ },
127
+ {
128
+ displayName: 'Download Video',
129
+ name: 'downloadVideo',
130
+ type: 'boolean',
131
+ default: true,
132
+ description: 'Whether to download the generated video as binary data. When disabled, only the video URL is returned.',
133
+ },
134
+ {
135
+ displayName: 'Simplify Output',
136
+ name: 'simplify',
137
+ type: 'boolean',
138
+ default: true,
139
+ description: 'Whether to return a simplified version of the response instead of the raw data',
140
+ },
141
+ {
142
+ displayName: 'Options',
143
+ name: 'imageToVideoOptions',
144
+ type: 'collection',
145
+ placeholder: 'Add Option',
146
+ default: {},
147
+ options: [
148
+ {
149
+ displayName: 'Prompt Extend',
150
+ name: 'promptExtend',
151
+ type: 'boolean',
152
+ default: false,
153
+ description: 'Whether to automatically extend and enhance the prompt',
154
+ },
155
+ {
156
+ displayName: 'Audio',
157
+ name: 'audio',
158
+ type: 'boolean',
159
+ default: true,
160
+ description: 'Whether to generate audio for the video',
161
+ },
162
+ {
163
+ displayName: 'Audio Input Type',
164
+ name: 'audioInputType',
165
+ type: 'options',
166
+ options: [
167
+ {
168
+ name: 'Audio URL',
169
+ value: 'url',
170
+ },
171
+ {
172
+ name: 'Binary File',
173
+ value: 'binary',
174
+ },
175
+ ],
176
+ default: 'url',
177
+ },
178
+ {
179
+ displayName: 'Audio URL',
180
+ name: 'audioUrl',
181
+ type: 'string',
182
+ default: '',
183
+ placeholder: 'https://example.com/audio.mp3',
184
+ description: 'URL of the audio file to use for the video',
185
+ displayOptions: {
186
+ show: {
187
+ audioInputType: ['url'],
188
+ },
189
+ },
190
+ },
191
+ {
192
+ displayName: 'Audio Data Field Name',
193
+ name: 'audioBinaryPropertyName',
194
+ type: 'string',
195
+ default: 'audio',
196
+ placeholder: 'e.g. audio',
197
+ hint: 'The name of the input field containing the binary audio data',
198
+ typeOptions: {
199
+ binaryDataProperty: true,
200
+ },
201
+ displayOptions: {
202
+ show: {
203
+ audioInputType: ['binary'],
204
+ },
205
+ },
206
+ },
207
+ ],
208
+ },
209
+ ];
210
+ const displayOptions = {
211
+ show: {
212
+ resource: ['video'],
213
+ operation: ['imageToVideo'],
214
+ },
215
+ };
216
+ exports.description = (0, n8n_workflow_1.updateDisplayOptions)(displayOptions, exports.properties);
217
+ async function execute(itemIndex) {
218
+ const model = this.getNodeParameter('modelId', itemIndex);
219
+ const imageInputType = this.getNodeParameter('inputType', itemIndex);
220
+ const prompt = this.getNodeParameter('prompt', itemIndex, '');
221
+ const resolution = this.getNodeParameter('resolution', itemIndex);
222
+ const duration = this.getNodeParameter('duration', itemIndex);
223
+ const shotType = this.getNodeParameter('shotType', itemIndex);
224
+ const simplify = this.getNodeParameter('simplify', itemIndex, true);
225
+ const downloadVideo = this.getNodeParameter('downloadVideo', itemIndex, true);
226
+ const options = this.getNodeParameter('imageToVideoOptions', itemIndex, {});
227
+ let imgUrl;
228
+ if (imageInputType === 'binary') {
229
+ const binaryPropertyName = this.getNodeParameter('binaryPropertyName', itemIndex);
230
+ const binaryData = this.helpers.assertBinaryData(itemIndex, binaryPropertyName);
231
+ const buffer = await this.helpers.getBinaryDataBuffer(itemIndex, binaryPropertyName);
232
+ const mimeType = binaryData.mimeType || 'image/png';
233
+ imgUrl = `data:${mimeType};base64,${buffer.toString('base64')}`;
234
+ }
235
+ else {
236
+ imgUrl = this.getNodeParameter('imgUrl', itemIndex);
237
+ }
238
+ const body = {
239
+ model,
240
+ input: {
241
+ img_url: imgUrl,
242
+ prompt,
243
+ },
244
+ parameters: {
245
+ resolution,
246
+ duration,
247
+ shot_type: shotType,
248
+ },
249
+ };
250
+ if (options.promptExtend !== undefined) {
251
+ body.parameters.prompt_extend = options.promptExtend;
252
+ }
253
+ if (options.audio !== undefined) {
254
+ body.parameters.audio = options.audio;
255
+ }
256
+ const audioInputType = options.audioInputType;
257
+ if (audioInputType === 'binary') {
258
+ const binaryPropertyName = options.audioBinaryPropertyName || 'audio';
259
+ const binaryData = this.helpers.assertBinaryData(itemIndex, binaryPropertyName);
260
+ const buffer = await this.helpers.getBinaryDataBuffer(itemIndex, binaryPropertyName);
261
+ const mimeType = binaryData.mimeType || 'audio/mpeg';
262
+ body.input.audio_url = `data:${mimeType};base64,${buffer.toString('base64')}`;
263
+ }
264
+ else if (options.audioUrl) {
265
+ body.input.audio_url = options.audioUrl;
266
+ }
267
+ const createResponse = await transport_1.apiRequest.call(this, 'POST', '/api/v1/services/aigc/video-generation/video-synthesis', {
268
+ headers: {
269
+ 'X-DashScope-Async': 'enable',
270
+ },
271
+ body,
272
+ });
273
+ const taskId = createResponse?.output?.task_id;
274
+ if (!taskId) {
275
+ throw new n8n_workflow_1.NodeOperationError(this.getNode(), `Failed to create video generation task: ${createResponse?.message || 'No task_id returned'}`);
276
+ }
277
+ const result = await transport_1.pollTaskResult.call(this, taskId);
278
+ const output = result.output;
279
+ const videoUrl = output?.video_url || '';
280
+ const jsonData = simplify
281
+ ? { videoUrl }
282
+ : {
283
+ videoUrl,
284
+ model,
285
+ taskId,
286
+ usage: result.usage,
287
+ taskStatus: output?.task_status,
288
+ submitTime: output?.submit_time,
289
+ endTime: output?.end_time,
290
+ };
291
+ if (downloadVideo && videoUrl) {
292
+ const videoResponse = await this.helpers.httpRequest({
293
+ method: 'GET',
294
+ url: videoUrl,
295
+ encoding: 'arraybuffer',
296
+ returnFullResponse: true,
297
+ });
298
+ const contentType = videoResponse.headers?.['content-type'] || 'video/mp4';
299
+ const fileContent = Buffer.from(videoResponse.body);
300
+ const binaryData = await this.helpers.prepareBinaryData(fileContent, 'video.mp4', contentType);
301
+ return {
302
+ binary: { data: binaryData },
303
+ json: jsonData,
304
+ pairedItem: itemIndex,
305
+ };
306
+ }
307
+ return {
308
+ json: jsonData,
309
+ pairedItem: itemIndex,
310
+ };
311
+ }
312
+ //# sourceMappingURL=generate.i2v.operation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generate.i2v.operation.js","sourceRoot":"","sources":["../../../../../../nodes/vendors/AlibabaCloud/actions/video/generate.i2v.operation.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,30 @@
1
+ import type { IExecuteFunctions, INodeExecutionData, INodeProperties } from 'n8n-workflow';
2
+ export declare const properties: INodeProperties[];
3
+ export declare const description: {
4
+ displayOptions: import("n8n-workflow").IDisplayOptions;
5
+ displayName: string;
6
+ name: string;
7
+ type: import("n8n-workflow").NodePropertyTypes;
8
+ typeOptions?: import("n8n-workflow").INodePropertyTypeOptions;
9
+ default: import("n8n-workflow").NodeParameterValueType;
10
+ description?: string;
11
+ hint?: string;
12
+ builderHint?: import("n8n-workflow").IParameterBuilderHint;
13
+ disabledOptions?: import("n8n-workflow").IDisplayOptions;
14
+ options?: Array<import("n8n-workflow").INodePropertyOptions | INodeProperties | import("n8n-workflow").INodePropertyCollection>;
15
+ placeholder?: string;
16
+ isNodeSetting?: boolean;
17
+ noDataExpression?: boolean;
18
+ required?: boolean;
19
+ routing?: import("n8n-workflow").INodePropertyRouting;
20
+ credentialTypes?: Array<"extends:oAuth2Api" | "extends:oAuth1Api" | "has:authenticate" | "has:genericAuth">;
21
+ extractValue?: import("n8n-workflow").INodePropertyValueExtractor;
22
+ modes?: import("n8n-workflow").INodePropertyMode[];
23
+ requiresDataPath?: "single" | "multiple";
24
+ doNotInherit?: boolean;
25
+ validateType?: import("n8n-workflow").FieldType;
26
+ ignoreValidationDuringExecution?: boolean;
27
+ allowArbitraryValues?: boolean;
28
+ resolvableField?: boolean;
29
+ }[];
30
+ export declare function execute(this: IExecuteFunctions, itemIndex: number): Promise<INodeExecutionData>;
@@ -0,0 +1,251 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.description = exports.properties = void 0;
4
+ exports.execute = execute;
5
+ const n8n_workflow_1 = require("n8n-workflow");
6
+ const transport_1 = require("../../transport");
7
+ exports.properties = [
8
+ {
9
+ displayName: 'Model',
10
+ name: 'modelId',
11
+ type: 'options',
12
+ options: [
13
+ {
14
+ name: 'Wan 2.6 Text-to-Video',
15
+ value: 'wan2.6-t2v',
16
+ description: 'Text-to-video generation model',
17
+ },
18
+ ],
19
+ default: 'wan2.6-t2v',
20
+ description: 'The model to use for text-to-video generation',
21
+ },
22
+ {
23
+ displayName: 'Prompt',
24
+ name: 'prompt',
25
+ type: 'string',
26
+ typeOptions: {
27
+ rows: 4,
28
+ },
29
+ default: '',
30
+ required: true,
31
+ description: 'The text prompt to generate video from',
32
+ placeholder: 'A cat playing with a ball of yarn',
33
+ },
34
+ {
35
+ displayName: 'Resolution',
36
+ name: 'resolution',
37
+ type: 'options',
38
+ options: [
39
+ {
40
+ name: '720P',
41
+ value: '720P',
42
+ },
43
+ {
44
+ name: '1080P',
45
+ value: '1080P',
46
+ },
47
+ ],
48
+ default: '1080P',
49
+ description: 'Resolution tier of the generated video',
50
+ },
51
+ {
52
+ displayName: 'Duration (Seconds)',
53
+ name: 'duration',
54
+ type: 'number',
55
+ typeOptions: {
56
+ minValue: 2,
57
+ maxValue: 15,
58
+ },
59
+ default: 5,
60
+ description: 'Duration of the generated video in seconds (2–15)',
61
+ },
62
+ {
63
+ displayName: 'Shot Type',
64
+ name: 'shotType',
65
+ type: 'options',
66
+ options: [
67
+ {
68
+ name: 'Single',
69
+ value: 'single',
70
+ },
71
+ {
72
+ name: 'Multi',
73
+ value: 'multi',
74
+ },
75
+ ],
76
+ default: 'single',
77
+ description: 'Whether to generate a single-shot or multi-shot narrative video',
78
+ },
79
+ {
80
+ displayName: 'Download Video',
81
+ name: 'downloadVideo',
82
+ type: 'boolean',
83
+ default: true,
84
+ description: 'Whether to download the generated video as binary data. When disabled, only the video URL is returned.',
85
+ },
86
+ {
87
+ displayName: 'Simplify Output',
88
+ name: 'simplify',
89
+ type: 'boolean',
90
+ default: true,
91
+ description: 'Whether to return a simplified version of the response instead of the raw data',
92
+ },
93
+ {
94
+ displayName: 'Options',
95
+ name: 'videoOptions',
96
+ type: 'collection',
97
+ placeholder: 'Add Option',
98
+ default: {},
99
+ options: [
100
+ {
101
+ displayName: 'Prompt Extend',
102
+ name: 'promptExtend',
103
+ type: 'boolean',
104
+ default: false,
105
+ description: 'Whether to automatically extend and enhance the prompt',
106
+ },
107
+ {
108
+ displayName: 'Audio',
109
+ name: 'audio',
110
+ type: 'boolean',
111
+ default: true,
112
+ description: 'Whether to generate audio for the video',
113
+ },
114
+ {
115
+ displayName: 'Audio Input Type',
116
+ name: 'audioInputType',
117
+ type: 'options',
118
+ options: [
119
+ {
120
+ name: 'Audio URL',
121
+ value: 'url',
122
+ },
123
+ {
124
+ name: 'Binary File',
125
+ value: 'binary',
126
+ },
127
+ ],
128
+ default: 'url',
129
+ },
130
+ {
131
+ displayName: 'Audio URL',
132
+ name: 'audioUrl',
133
+ type: 'string',
134
+ default: '',
135
+ placeholder: 'https://example.com/audio.mp3',
136
+ description: 'URL of the audio file to use for the video',
137
+ displayOptions: {
138
+ show: {
139
+ audioInputType: ['url'],
140
+ },
141
+ },
142
+ },
143
+ {
144
+ displayName: 'Audio Data Field Name',
145
+ name: 'audioBinaryPropertyName',
146
+ type: 'string',
147
+ default: 'audio',
148
+ placeholder: 'e.g. audio',
149
+ hint: 'The name of the input field containing the binary audio data',
150
+ typeOptions: {
151
+ binaryDataProperty: true,
152
+ },
153
+ displayOptions: {
154
+ show: {
155
+ audioInputType: ['binary'],
156
+ },
157
+ },
158
+ },
159
+ ],
160
+ },
161
+ ];
162
+ const displayOptions = {
163
+ show: {
164
+ resource: ['video'],
165
+ operation: ['textToVideo'],
166
+ },
167
+ };
168
+ exports.description = (0, n8n_workflow_1.updateDisplayOptions)(displayOptions, exports.properties);
169
+ async function execute(itemIndex) {
170
+ const model = this.getNodeParameter('modelId', itemIndex);
171
+ const prompt = this.getNodeParameter('prompt', itemIndex);
172
+ const resolution = this.getNodeParameter('resolution', itemIndex);
173
+ const duration = this.getNodeParameter('duration', itemIndex);
174
+ const shotType = this.getNodeParameter('shotType', itemIndex);
175
+ const simplify = this.getNodeParameter('simplify', itemIndex, true);
176
+ const downloadVideo = this.getNodeParameter('downloadVideo', itemIndex, true);
177
+ const videoOptions = this.getNodeParameter('videoOptions', itemIndex, {});
178
+ const body = {
179
+ model,
180
+ input: {
181
+ prompt,
182
+ },
183
+ parameters: {
184
+ resolution,
185
+ duration,
186
+ shot_type: shotType,
187
+ },
188
+ };
189
+ if (videoOptions.promptExtend !== undefined) {
190
+ body.parameters.prompt_extend = videoOptions.promptExtend;
191
+ }
192
+ if (videoOptions.audio !== undefined) {
193
+ body.parameters.audio = videoOptions.audio;
194
+ }
195
+ const audioInputType = videoOptions.audioInputType;
196
+ if (audioInputType === 'binary') {
197
+ const binaryPropertyName = videoOptions.audioBinaryPropertyName || 'audio';
198
+ const binaryData = this.helpers.assertBinaryData(itemIndex, binaryPropertyName);
199
+ const buffer = await this.helpers.getBinaryDataBuffer(itemIndex, binaryPropertyName);
200
+ const mimeType = binaryData.mimeType || 'audio/mpeg';
201
+ body.input.audio_url = `data:${mimeType};base64,${buffer.toString('base64')}`;
202
+ }
203
+ else if (videoOptions.audioUrl) {
204
+ body.input.audio_url = videoOptions.audioUrl;
205
+ }
206
+ const createResponse = await transport_1.apiRequest.call(this, 'POST', '/api/v1/services/aigc/video-generation/video-synthesis', {
207
+ headers: {
208
+ 'X-DashScope-Async': 'enable',
209
+ },
210
+ body,
211
+ });
212
+ const taskId = createResponse?.output?.task_id;
213
+ if (!taskId) {
214
+ throw new n8n_workflow_1.NodeOperationError(this.getNode(), `Failed to create video generation task: ${createResponse?.message || 'No task_id returned'}`);
215
+ }
216
+ const result = await transport_1.pollTaskResult.call(this, taskId);
217
+ const output = result.output;
218
+ const videoUrl = output?.video_url || '';
219
+ const jsonData = simplify
220
+ ? { videoUrl }
221
+ : {
222
+ videoUrl,
223
+ model,
224
+ taskId,
225
+ usage: result.usage,
226
+ taskStatus: output?.task_status,
227
+ submitTime: output?.submit_time,
228
+ endTime: output?.end_time,
229
+ };
230
+ if (downloadVideo && videoUrl) {
231
+ const videoResponse = await this.helpers.httpRequest({
232
+ method: 'GET',
233
+ url: videoUrl,
234
+ encoding: 'arraybuffer',
235
+ returnFullResponse: true,
236
+ });
237
+ const contentType = videoResponse.headers?.['content-type'] || 'video/mp4';
238
+ const fileContent = Buffer.from(videoResponse.body);
239
+ const binaryData = await this.helpers.prepareBinaryData(fileContent, 'video.mp4', contentType);
240
+ return {
241
+ binary: { data: binaryData },
242
+ json: jsonData,
243
+ pairedItem: itemIndex,
244
+ };
245
+ }
246
+ return {
247
+ json: jsonData,
248
+ pairedItem: itemIndex,
249
+ };
250
+ }
251
+ //# sourceMappingURL=generate.t2v.operation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generate.t2v.operation.js","sourceRoot":"","sources":["../../../../../../nodes/vendors/AlibabaCloud/actions/video/generate.t2v.operation.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ import type { INodeProperties } from 'n8n-workflow';
2
+ import * as textToVideo from './generate.t2v.operation';
3
+ import * as imageToVideo from './generate.i2v.operation';
4
+ export { textToVideo, imageToVideo };
5
+ export declare const description: INodeProperties[];