n8n 2.30.3 → 2.31.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 (532) hide show
  1. package/dist/agent-library-bundle.js +9 -0
  2. package/dist/blob-storage/azure-byte-store.ee.d.ts +1 -1
  3. package/dist/blob-storage/azure-byte-store.ee.js +3 -18
  4. package/dist/blob-storage/azure-byte-store.ee.js.map +1 -1
  5. package/dist/blob-storage/json-store.js +3 -0
  6. package/dist/blob-storage/json-store.js.map +1 -1
  7. package/dist/blob-storage/s3-byte-store.ee.d.ts +1 -1
  8. package/dist/blob-storage/s3-byte-store.ee.js +2 -17
  9. package/dist/blob-storage/s3-byte-store.ee.js.map +1 -1
  10. package/dist/build.tsbuildinfo +1 -1
  11. package/dist/commands/base-command.d.ts +2 -2
  12. package/dist/commands/base-command.js +5 -5
  13. package/dist/commands/base-command.js.map +1 -1
  14. package/dist/commands/start.js +2 -0
  15. package/dist/commands/start.js.map +1 -1
  16. package/dist/constants/workflow-reviews.d.ts +4 -0
  17. package/dist/constants/workflow-reviews.js +14 -0
  18. package/dist/constants/workflow-reviews.js.map +1 -0
  19. package/dist/constants.js +2 -0
  20. package/dist/constants.js.map +1 -1
  21. package/dist/controllers/e2e.controller.js +1 -0
  22. package/dist/controllers/e2e.controller.js.map +1 -1
  23. package/dist/controllers/security-settings.controller.d.ts +15 -10
  24. package/dist/controllers/security-settings.controller.js +41 -65
  25. package/dist/controllers/security-settings.controller.js.map +1 -1
  26. package/dist/controllers/users.controller.d.ts +2 -2
  27. package/dist/credentials/credential-connection-status-provider.interface.d.ts +2 -1
  28. package/dist/credentials/credential-connection-status-proxy.d.ts +2 -1
  29. package/dist/credentials/credential-connection-status-proxy.js +7 -2
  30. package/dist/credentials/credential-connection-status-proxy.js.map +1 -1
  31. package/dist/credentials/credentials.controller.js +5 -5
  32. package/dist/credentials/credentials.controller.js.map +1 -1
  33. package/dist/credentials/credentials.service.d.ts +1 -0
  34. package/dist/credentials/credentials.service.ee.d.ts +3 -1
  35. package/dist/credentials/credentials.service.ee.js +10 -2
  36. package/dist/credentials/credentials.service.ee.js.map +1 -1
  37. package/dist/credentials/credentials.service.js +14 -0
  38. package/dist/credentials/credentials.service.js.map +1 -1
  39. package/dist/eventbus/event-message-classes/index.d.ts +2 -2
  40. package/dist/eventbus/event-message-classes/index.js +4 -2
  41. package/dist/eventbus/event-message-classes/index.js.map +1 -1
  42. package/dist/events/maps/relay.event-map.d.ts +19 -2
  43. package/dist/events/relays/log-streaming.event-relay.d.ts +2 -0
  44. package/dist/events/relays/log-streaming.event-relay.js +30 -2
  45. package/dist/events/relays/log-streaming.event-relay.js.map +1 -1
  46. package/dist/events/relays/telemetry.event-relay.d.ts +3 -0
  47. package/dist/events/relays/telemetry.event-relay.js +88 -10
  48. package/dist/events/relays/telemetry.event-relay.js.map +1 -1
  49. package/dist/execution-lifecycle/execution-lifecycle-hooks.js +21 -4
  50. package/dist/execution-lifecycle/execution-lifecycle-hooks.js.map +1 -1
  51. package/dist/executions/execution-data/db-store.d.ts +8 -15
  52. package/dist/executions/execution-data/db-store.js +12 -25
  53. package/dist/executions/execution-data/db-store.js.map +1 -1
  54. package/dist/executions/execution-data/execution-data-json-store.d.ts +7 -0
  55. package/dist/executions/execution-data/execution-data-json-store.js +45 -0
  56. package/dist/executions/execution-data/execution-data-json-store.js.map +1 -0
  57. package/dist/executions/execution-data/types.d.ts +3 -14
  58. package/dist/executions/execution-data/types.js.map +1 -1
  59. package/dist/executions/execution-persistence.d.ts +7 -14
  60. package/dist/executions/execution-persistence.js +40 -88
  61. package/dist/executions/execution-persistence.js.map +1 -1
  62. package/dist/executions/execution.service.d.ts +3 -4
  63. package/dist/executions/execution.service.js +4 -13
  64. package/dist/executions/execution.service.js.map +1 -1
  65. package/dist/executions/executions.controller.js +1 -10
  66. package/dist/executions/executions.controller.js.map +1 -1
  67. package/dist/interfaces.d.ts +4 -1
  68. package/dist/load-nodes-and-credentials.js +1 -1
  69. package/dist/load-nodes-and-credentials.js.map +1 -1
  70. package/dist/metrics/prometheus/prometheus.service.d.ts +2 -1
  71. package/dist/metrics/prometheus/prometheus.service.js +5 -2
  72. package/dist/metrics/prometheus/prometheus.service.js.map +1 -1
  73. package/dist/metrics/prometheus/scheduler-metrics.service.d.ts +35 -0
  74. package/dist/metrics/prometheus/scheduler-metrics.service.js +187 -0
  75. package/dist/metrics/prometheus/scheduler-metrics.service.js.map +1 -0
  76. package/dist/modules/agents/adapters/agents-credential-provider.d.ts +1 -0
  77. package/dist/modules/agents/adapters/agents-credential-provider.js +13 -3
  78. package/dist/modules/agents/adapters/agents-credential-provider.js.map +1 -1
  79. package/dist/modules/agents/agent-config.service.js +11 -1
  80. package/dist/modules/agents/agent-config.service.js.map +1 -1
  81. package/dist/modules/agents/agent-knowledge.controller.js +1 -1
  82. package/dist/modules/agents/agent-knowledge.controller.js.map +1 -1
  83. package/dist/modules/agents/agent-upload.middleware.d.ts +2 -0
  84. package/dist/modules/agents/agent-upload.middleware.js +11 -0
  85. package/dist/modules/agents/agent-upload.middleware.js.map +1 -1
  86. package/dist/modules/agents/agent-validation.service.js +19 -2
  87. package/dist/modules/agents/agent-validation.service.js.map +1 -1
  88. package/dist/modules/agents/agent-vector-stores.controller.d.ts +11 -0
  89. package/dist/modules/agents/agent-vector-stores.controller.js +41 -0
  90. package/dist/modules/agents/agent-vector-stores.controller.js.map +1 -0
  91. package/dist/modules/agents/agent-vector-stores.service.d.ts +9 -0
  92. package/dist/modules/agents/agent-vector-stores.service.js +195 -0
  93. package/dist/modules/agents/agent-vector-stores.service.js.map +1 -0
  94. package/dist/modules/agents/agents-config.controller.d.ts +112 -69
  95. package/dist/modules/agents/agents.controller.d.ts +5 -1
  96. package/dist/modules/agents/agents.controller.js +11 -0
  97. package/dist/modules/agents/agents.controller.js.map +1 -1
  98. package/dist/modules/agents/agents.module.js +1 -0
  99. package/dist/modules/agents/agents.module.js.map +1 -1
  100. package/dist/modules/agents/agents.service.d.ts +7 -2
  101. package/dist/modules/agents/agents.service.js +65 -2
  102. package/dist/modules/agents/agents.service.js.map +1 -1
  103. package/dist/modules/agents/attachable-workflows.service.d.ts +12 -0
  104. package/dist/modules/agents/attachable-workflows.service.js +58 -0
  105. package/dist/modules/agents/attachable-workflows.service.js.map +1 -0
  106. package/dist/modules/agents/builder/agents-builder-model-recommendations.js +3 -2
  107. package/dist/modules/agents/builder/agents-builder-model-recommendations.js.map +1 -1
  108. package/dist/modules/agents/builder/agents-builder-prompts.d.ts +4 -4
  109. package/dist/modules/agents/builder/agents-builder-prompts.js +40 -27
  110. package/dist/modules/agents/builder/agents-builder-prompts.js.map +1 -1
  111. package/dist/modules/agents/builder/agents-builder-tools.service.d.ts +3 -5
  112. package/dist/modules/agents/builder/agents-builder-tools.service.js +48 -194
  113. package/dist/modules/agents/builder/agents-builder-tools.service.js.map +1 -1
  114. package/dist/modules/agents/builder/agents-builder.service.d.ts +10 -3
  115. package/dist/modules/agents/builder/agents-builder.service.js +22 -12
  116. package/dist/modules/agents/builder/agents-builder.service.js.map +1 -1
  117. package/dist/modules/agents/builder/builder-tool-names.js.map +1 -1
  118. package/dist/modules/agents/builder/errors.d.ts +3 -2
  119. package/dist/modules/agents/builder/errors.js +3 -2
  120. package/dist/modules/agents/builder/errors.js.map +1 -1
  121. package/dist/modules/agents/builder/get-resource-locator-options.tool.d.ts +99 -2
  122. package/dist/modules/agents/builder/get-resource-locator-options.tool.js +103 -101
  123. package/dist/modules/agents/builder/get-resource-locator-options.tool.js.map +1 -1
  124. package/dist/modules/agents/builder/interactive/ask-credential.tool.js +48 -32
  125. package/dist/modules/agents/builder/interactive/ask-credential.tool.js.map +1 -1
  126. package/dist/modules/agents/builder/interactive/ask-questions.tool.d.ts +2 -0
  127. package/dist/modules/agents/builder/interactive/ask-questions.tool.js +108 -0
  128. package/dist/modules/agents/builder/interactive/ask-questions.tool.js.map +1 -0
  129. package/dist/modules/agents/builder/interactive/configure-channel.tool.d.ts +7 -0
  130. package/dist/modules/agents/builder/interactive/configure-channel.tool.js +52 -0
  131. package/dist/modules/agents/builder/interactive/configure-channel.tool.js.map +1 -0
  132. package/dist/modules/agents/builder/interactive/index.d.ts +2 -2
  133. package/dist/modules/agents/builder/interactive/index.js +5 -5
  134. package/dist/modules/agents/builder/interactive/index.js.map +1 -1
  135. package/dist/modules/agents/builder/interactive/resolve-llm.tool.js +2 -2
  136. package/dist/modules/agents/builder/interactive/resolve-llm.tool.js.map +1 -1
  137. package/dist/modules/agents/builder/prompts/config-mutation.prompt.js +1 -1
  138. package/dist/modules/agents/builder/prompts/config-rules.prompt.js +2 -2
  139. package/dist/modules/agents/builder/prompts/llm-selection.prompt.js +10 -10
  140. package/dist/modules/agents/builder/prompts/llm-selection.prompt.js.map +1 -1
  141. package/dist/modules/agents/builder/prompts/memory.prompt.d.ts +1 -1
  142. package/dist/modules/agents/builder/prompts/memory.prompt.js +1 -1
  143. package/dist/modules/agents/builder/search-mcp-servers.tool.js +1 -63
  144. package/dist/modules/agents/builder/search-mcp-servers.tool.js.map +1 -1
  145. package/dist/modules/agents/builder/skills/index.d.ts +1 -1
  146. package/dist/modules/agents/builder/skills/index.js +5 -1
  147. package/dist/modules/agents/builder/skills/index.js.map +1 -1
  148. package/dist/modules/agents/builder/skills/integrations.skill.js +15 -6
  149. package/dist/modules/agents/builder/skills/integrations.skill.js.map +1 -1
  150. package/dist/modules/agents/builder/skills/mcp.skill.js +2 -2
  151. package/dist/modules/agents/builder/skills/mcp.skill.js.map +1 -1
  152. package/dist/modules/agents/builder/skills/resource-locators.skill.js +2 -2
  153. package/dist/modules/agents/builder/skills/resource-locators.skill.js.map +1 -1
  154. package/dist/modules/agents/builder/skills/sub-agents.skill.js +7 -5
  155. package/dist/modules/agents/builder/skills/sub-agents.skill.js.map +1 -1
  156. package/dist/modules/agents/builder/skills/target-skills.skill.js +5 -4
  157. package/dist/modules/agents/builder/skills/target-skills.skill.js.map +1 -1
  158. package/dist/modules/agents/builder/skills/target-tasks.skill.js +5 -5
  159. package/dist/modules/agents/builder/skills/target-tasks.skill.js.map +1 -1
  160. package/dist/modules/agents/instance-ai-builder-delegate.adapter.d.ts +14 -0
  161. package/dist/modules/agents/instance-ai-builder-delegate.adapter.js +96 -0
  162. package/dist/modules/agents/instance-ai-builder-delegate.adapter.js.map +1 -0
  163. package/dist/modules/agents/integrations/integration-action-executor.d.ts +72 -72
  164. package/dist/modules/agents/integrations/integration-tool-definitions.d.ts +574 -574
  165. package/dist/modules/agents/json-config/embedding-credential.d.ts +4 -0
  166. package/dist/modules/agents/json-config/embedding-credential.js +25 -0
  167. package/dist/modules/agents/json-config/embedding-credential.js.map +1 -0
  168. package/dist/modules/agents/json-config/from-json-config.d.ts +2 -6
  169. package/dist/modules/agents/json-config/from-json-config.js +16 -16
  170. package/dist/modules/agents/json-config/from-json-config.js.map +1 -1
  171. package/dist/modules/agents/json-config/model-config.js +2 -2
  172. package/dist/modules/agents/json-config/model-config.js.map +1 -1
  173. package/dist/modules/agents/json-config/vector-store-factory.d.ts +5 -0
  174. package/dist/modules/agents/json-config/vector-store-factory.js +138 -0
  175. package/dist/modules/agents/json-config/vector-store-factory.js.map +1 -0
  176. package/dist/modules/breaking-changes/rules/index.d.ts +8 -0
  177. package/dist/modules/breaking-changes/rules/index.js +8 -0
  178. package/dist/modules/breaking-changes/rules/index.js.map +1 -1
  179. package/dist/modules/breaking-changes/rules/v3/compression-node-limits.rule.d.ts +6 -0
  180. package/dist/modules/breaking-changes/rules/v3/compression-node-limits.rule.js +59 -0
  181. package/dist/modules/breaking-changes/rules/v3/compression-node-limits.rule.js.map +1 -0
  182. package/dist/modules/breaking-changes/rules/v3/docker-only-deployment.rule.d.ts +9 -0
  183. package/dist/modules/breaking-changes/rules/v3/docker-only-deployment.rule.js +57 -0
  184. package/dist/modules/breaking-changes/rules/v3/docker-only-deployment.rule.js.map +1 -0
  185. package/dist/modules/breaking-changes/rules/v3/get-paired-item.rule.d.ts +10 -0
  186. package/dist/modules/breaking-changes/rules/v3/get-paired-item.rule.js +53 -0
  187. package/dist/modules/breaking-changes/rules/v3/get-paired-item.rule.js.map +1 -0
  188. package/dist/modules/breaking-changes/rules/v3/in-memory-binary-data.rule.d.ts +9 -0
  189. package/dist/modules/breaking-changes/rules/v3/in-memory-binary-data.rule.js +56 -0
  190. package/dist/modules/breaking-changes/rules/v3/in-memory-binary-data.rule.js.map +1 -0
  191. package/dist/modules/breaking-changes/rules/v3/offload-manual-executions.rule.d.ts +9 -0
  192. package/dist/modules/breaking-changes/rules/v3/offload-manual-executions.rule.js +57 -0
  193. package/dist/modules/breaking-changes/rules/v3/offload-manual-executions.rule.js.map +1 -0
  194. package/dist/modules/breaking-changes/rules/v3/task-runner-task-timeout.rule.d.ts +6 -0
  195. package/dist/modules/breaking-changes/rules/v3/task-runner-task-timeout.rule.js +50 -0
  196. package/dist/modules/breaking-changes/rules/v3/task-runner-task-timeout.rule.js.map +1 -0
  197. package/dist/modules/breaking-changes/rules/v3/unverified-packages.rule.d.ts +9 -0
  198. package/dist/modules/breaking-changes/rules/v3/unverified-packages.rule.js +57 -0
  199. package/dist/modules/breaking-changes/rules/v3/unverified-packages.rule.js.map +1 -0
  200. package/dist/modules/breaking-changes/rules/v3/workflow-import-url-removed.rule.d.ts +6 -0
  201. package/dist/modules/breaking-changes/rules/v3/workflow-import-url-removed.rule.js +47 -0
  202. package/dist/modules/breaking-changes/rules/v3/workflow-import-url-removed.rule.js.map +1 -0
  203. package/dist/modules/chat-hub/chat-hub.module.d.ts +1 -1
  204. package/dist/modules/chat-hub/chat-hub.settings.controller.d.ts +3 -3
  205. package/dist/modules/data-table/data-table-ddl.service.d.ts +2 -0
  206. package/dist/modules/data-table/data-table-ddl.service.js +16 -0
  207. package/dist/modules/data-table/data-table-ddl.service.js.map +1 -1
  208. package/dist/modules/data-table/data-table.service.d.ts +6 -3
  209. package/dist/modules/data-table/data-table.service.js +19 -0
  210. package/dist/modules/data-table/data-table.service.js.map +1 -1
  211. package/dist/modules/data-table/utils/sql-utils.d.ts +1 -0
  212. package/dist/modules/data-table/utils/sql-utils.js +4 -0
  213. package/dist/modules/data-table/utils/sql-utils.js.map +1 -1
  214. package/dist/modules/dynamic-credentials.ee/dynamic-credentials.module.d.ts +0 -2
  215. package/dist/modules/dynamic-credentials.ee/dynamic-credentials.module.js +0 -13
  216. package/dist/modules/dynamic-credentials.ee/dynamic-credentials.module.js.map +1 -1
  217. package/dist/modules/dynamic-credentials.ee/services/credential-connection-status.service.d.ts +5 -3
  218. package/dist/modules/dynamic-credentials.ee/services/credential-connection-status.service.js +19 -7
  219. package/dist/modules/dynamic-credentials.ee/services/credential-connection-status.service.js.map +1 -1
  220. package/dist/modules/dynamic-credentials.ee/services/dynamic-credential-storage.service.js +1 -1
  221. package/dist/modules/dynamic-credentials.ee/services/dynamic-credential.service.js +1 -1
  222. package/dist/modules/dynamic-credentials.ee/services/dynamic-credential.service.js.map +1 -1
  223. package/dist/modules/favorites/dto/add-favorite.dto.d.ts +2 -2
  224. package/dist/modules/favorites/favorites.event-relay.js +2 -3
  225. package/dist/modules/favorites/favorites.event-relay.js.map +1 -1
  226. package/dist/modules/favorites/favorites.service.d.ts +4 -1
  227. package/dist/modules/favorites/favorites.service.js +28 -3
  228. package/dist/modules/favorites/favorites.service.js.map +1 -1
  229. package/dist/modules/instance-ai/eval/execution.service.d.ts +4 -1
  230. package/dist/modules/instance-ai/eval/execution.service.js +26 -3
  231. package/dist/modules/instance-ai/eval/execution.service.js.map +1 -1
  232. package/dist/modules/instance-ai/eval/mock-handler.js +1 -1
  233. package/dist/modules/instance-ai/eval/mock-handler.js.map +1 -1
  234. package/dist/modules/instance-ai/eval/mock-quirks.js +7 -0
  235. package/dist/modules/instance-ai/eval/mock-quirks.js.map +1 -1
  236. package/dist/modules/instance-ai/eval/pin-data-generator.js +17 -17
  237. package/dist/modules/instance-ai/eval/pin-data-generator.js.map +1 -1
  238. package/dist/modules/instance-ai/event-bus/in-process-event-bus.d.ts +17 -6
  239. package/dist/modules/instance-ai/event-bus/in-process-event-bus.js +153 -30
  240. package/dist/modules/instance-ai/event-bus/in-process-event-bus.js.map +1 -1
  241. package/dist/modules/instance-ai/instance-ai-memory.service.d.ts +7 -2
  242. package/dist/modules/instance-ai/instance-ai-memory.service.js +12 -1
  243. package/dist/modules/instance-ai/instance-ai-memory.service.js.map +1 -1
  244. package/dist/modules/instance-ai/instance-ai-settings.service.js +0 -7
  245. package/dist/modules/instance-ai/instance-ai-settings.service.js.map +1 -1
  246. package/dist/modules/instance-ai/instance-ai.adapter.service.d.ts +89 -3
  247. package/dist/modules/instance-ai/instance-ai.adapter.service.js +272 -42
  248. package/dist/modules/instance-ai/instance-ai.adapter.service.js.map +1 -1
  249. package/dist/modules/instance-ai/instance-ai.controller.js +9 -2
  250. package/dist/modules/instance-ai/instance-ai.controller.js.map +1 -1
  251. package/dist/modules/instance-ai/instance-ai.service.d.ts +0 -1
  252. package/dist/modules/instance-ai/instance-ai.service.js +45 -107
  253. package/dist/modules/instance-ai/instance-ai.service.js.map +1 -1
  254. package/dist/modules/instance-ai/workflow-templates.service.d.ts +17 -0
  255. package/dist/modules/instance-ai/workflow-templates.service.js +63 -0
  256. package/dist/modules/instance-ai/workflow-templates.service.js.map +1 -0
  257. package/dist/modules/log-streaming.ee/destinations/message-event-bus-destination.ee.d.ts +1 -0
  258. package/dist/modules/log-streaming.ee/destinations/message-event-bus-destination.ee.js +2 -0
  259. package/dist/modules/log-streaming.ee/destinations/message-event-bus-destination.ee.js.map +1 -1
  260. package/dist/modules/mcp/dto/update-workflows-availability.dto.d.ts +2 -0
  261. package/dist/modules/mcp/dto/update-workflows-availability.dto.js +1 -0
  262. package/dist/modules/mcp/dto/update-workflows-availability.dto.js.map +1 -1
  263. package/dist/modules/mcp/mcp-protected-resource.d.ts +4 -1
  264. package/dist/modules/mcp/mcp-protected-resource.js +13 -3
  265. package/dist/modules/mcp/mcp-protected-resource.js.map +1 -1
  266. package/dist/modules/mcp/mcp.config.d.ts +1 -0
  267. package/dist/modules/mcp/mcp.config.js +20 -0
  268. package/dist/modules/mcp/mcp.config.js.map +1 -1
  269. package/dist/modules/mcp/mcp.module.d.ts +1 -0
  270. package/dist/modules/mcp/mcp.module.js +3 -1
  271. package/dist/modules/mcp/mcp.module.js.map +1 -1
  272. package/dist/modules/mcp/mcp.settings.service.d.ts +1 -1
  273. package/dist/modules/mcp/mcp.settings.service.js +33 -18
  274. package/dist/modules/mcp/mcp.settings.service.js.map +1 -1
  275. package/dist/modules/mcp/tools/search-workflows.tool.js +4 -2
  276. package/dist/modules/mcp/tools/search-workflows.tool.js.map +1 -1
  277. package/dist/modules/mcp/tools/workflow-builder/create-workflow-from-code.tool.d.ts +2 -0
  278. package/dist/modules/mcp/tools/workflow-builder/create-workflow-from-code.tool.js +10 -5
  279. package/dist/modules/mcp/tools/workflow-builder/create-workflow-from-code.tool.js.map +1 -1
  280. package/dist/modules/mcp/tools/workflow-builder/restore-workflow-version.tool.js +4 -0
  281. package/dist/modules/mcp/tools/workflow-builder/restore-workflow-version.tool.js.map +1 -1
  282. package/dist/modules/mcp/tools/workflow-builder/skills-used.d.ts +1 -0
  283. package/dist/modules/mcp/tools/workflow-builder/skills-used.js +5 -1
  284. package/dist/modules/mcp/tools/workflow-builder/skills-used.js.map +1 -1
  285. package/dist/modules/mcp/tools/workflow-builder/update-workflow.tool.js +10 -5
  286. package/dist/modules/mcp/tools/workflow-builder/update-workflow.tool.js.map +1 -1
  287. package/dist/modules/mcp/tools/workflow-builder/version-metadata.d.ts +27 -0
  288. package/dist/modules/mcp/tools/workflow-builder/version-metadata.js +109 -0
  289. package/dist/modules/mcp/tools/workflow-builder/version-metadata.js.map +1 -0
  290. package/dist/modules/mcp-registry/registry/mcp-registry-search.d.ts +18 -0
  291. package/dist/modules/mcp-registry/registry/mcp-registry-search.js +64 -0
  292. package/dist/modules/mcp-registry/registry/mcp-registry-search.js.map +1 -0
  293. package/dist/modules/mcp-registry/registry/mcp-registry.service.d.ts +2 -0
  294. package/dist/modules/mcp-registry/registry/mcp-registry.service.js +4 -0
  295. package/dist/modules/mcp-registry/registry/mcp-registry.service.js.map +1 -1
  296. package/dist/modules/n8n-packages/engine/import-blocked.error.js +2 -1
  297. package/dist/modules/n8n-packages/engine/import-blocked.error.js.map +1 -1
  298. package/dist/modules/n8n-packages/engine/import-orchestrator.d.ts +30 -0
  299. package/dist/modules/n8n-packages/engine/import-orchestrator.js +86 -0
  300. package/dist/modules/n8n-packages/engine/import-orchestrator.js.map +1 -0
  301. package/dist/modules/n8n-packages/engine/import-result.d.ts +14 -0
  302. package/dist/modules/n8n-packages/engine/import-result.js +43 -0
  303. package/dist/modules/n8n-packages/engine/import-result.js.map +1 -0
  304. package/dist/modules/n8n-packages/engine/n8n-package-parser.d.ts +7 -0
  305. package/dist/modules/n8n-packages/engine/n8n-package-parser.js +72 -13
  306. package/dist/modules/n8n-packages/engine/n8n-package-parser.js.map +1 -1
  307. package/dist/modules/n8n-packages/engine/package-layout.d.ts +11 -0
  308. package/dist/modules/n8n-packages/engine/package-layout.js +21 -0
  309. package/dist/modules/n8n-packages/engine/package-layout.js.map +1 -0
  310. package/dist/modules/n8n-packages/engine/project-package-importer.d.ts +11 -0
  311. package/dist/modules/n8n-packages/engine/project-package-importer.js +44 -0
  312. package/dist/modules/n8n-packages/engine/project-package-importer.js.map +1 -0
  313. package/dist/modules/n8n-packages/engine/workflow-package-importer.d.ts +24 -0
  314. package/dist/modules/n8n-packages/engine/workflow-package-importer.js +168 -0
  315. package/dist/modules/n8n-packages/engine/workflow-package-importer.js.map +1 -0
  316. package/dist/modules/n8n-packages/entities/credential/credential-matcher-factory.d.ts +3 -1
  317. package/dist/modules/n8n-packages/entities/credential/credential-matcher-factory.js +8 -2
  318. package/dist/modules/n8n-packages/entities/credential/credential-matcher-factory.js.map +1 -1
  319. package/dist/modules/n8n-packages/entities/credential/credential-matcher.d.ts +6 -6
  320. package/dist/modules/n8n-packages/entities/credential/credential-matcher.js +34 -4
  321. package/dist/modules/n8n-packages/entities/credential/credential-matcher.js.map +1 -1
  322. package/dist/modules/n8n-packages/entities/credential/credential-tier-selection.d.ts +3 -0
  323. package/dist/modules/n8n-packages/entities/credential/credential-tier-selection.js +27 -0
  324. package/dist/modules/n8n-packages/entities/credential/credential-tier-selection.js.map +1 -0
  325. package/dist/modules/n8n-packages/entities/credential/credential.exporter.d.ts +2 -0
  326. package/dist/modules/n8n-packages/entities/credential/credential.exporter.js +18 -2
  327. package/dist/modules/n8n-packages/entities/credential/credential.exporter.js.map +1 -1
  328. package/dist/modules/n8n-packages/entities/credential/id-based-credential-matcher.d.ts +3 -7
  329. package/dist/modules/n8n-packages/entities/credential/id-based-credential-matcher.js +8 -23
  330. package/dist/modules/n8n-packages/entities/credential/id-based-credential-matcher.js.map +1 -1
  331. package/dist/modules/n8n-packages/entities/credential/name-and-type-credential-matcher.d.ts +8 -0
  332. package/dist/modules/n8n-packages/entities/credential/name-and-type-credential-matcher.js +31 -0
  333. package/dist/modules/n8n-packages/entities/credential/name-and-type-credential-matcher.js.map +1 -0
  334. package/dist/modules/n8n-packages/entities/credential/type-only-credential-matcher.d.ts +8 -0
  335. package/dist/modules/n8n-packages/entities/credential/type-only-credential-matcher.js +31 -0
  336. package/dist/modules/n8n-packages/entities/credential/type-only-credential-matcher.js.map +1 -0
  337. package/dist/modules/n8n-packages/entities/data-table/data-table-requirements.extractor.d.ts +6 -0
  338. package/dist/modules/n8n-packages/entities/data-table/data-table-requirements.extractor.js +38 -0
  339. package/dist/modules/n8n-packages/entities/data-table/data-table-requirements.extractor.js.map +1 -0
  340. package/dist/modules/n8n-packages/entities/data-table/data-table.exporter.d.ts +26 -0
  341. package/dist/modules/n8n-packages/entities/data-table/data-table.exporter.js +97 -0
  342. package/dist/modules/n8n-packages/entities/data-table/data-table.exporter.js.map +1 -0
  343. package/dist/modules/n8n-packages/entities/data-table/data-table.serializer.d.ts +5 -0
  344. package/dist/modules/n8n-packages/entities/data-table/data-table.serializer.js +31 -0
  345. package/dist/modules/n8n-packages/entities/data-table/data-table.serializer.js.map +1 -0
  346. package/dist/modules/n8n-packages/entities/data-table/data-table.types.d.ts +4 -0
  347. package/dist/modules/n8n-packages/entities/data-table/data-table.types.js +3 -0
  348. package/dist/modules/n8n-packages/entities/data-table/data-table.types.js.map +1 -0
  349. package/dist/modules/n8n-packages/entities/folder/folder-conflict-policy.d.ts +5 -0
  350. package/dist/modules/n8n-packages/entities/folder/folder-conflict-policy.js +11 -0
  351. package/dist/modules/n8n-packages/entities/folder/folder-conflict-policy.js.map +1 -0
  352. package/dist/modules/n8n-packages/entities/folder/folder-import.types.d.ts +20 -0
  353. package/dist/modules/n8n-packages/entities/folder/folder-import.types.js +3 -0
  354. package/dist/modules/n8n-packages/entities/folder/folder-import.types.js.map +1 -0
  355. package/dist/modules/n8n-packages/entities/folder/folder-importer.d.ts +10 -0
  356. package/dist/modules/n8n-packages/entities/folder/folder-importer.js +140 -0
  357. package/dist/modules/n8n-packages/entities/folder/folder-importer.js.map +1 -0
  358. package/dist/modules/n8n-packages/entities/folder/folder.exporter.d.ts +5 -2
  359. package/dist/modules/n8n-packages/entities/folder/folder.exporter.js +48 -44
  360. package/dist/modules/n8n-packages/entities/folder/folder.exporter.js.map +1 -1
  361. package/dist/modules/n8n-packages/entities/folder/folder.serializer.js.map +1 -1
  362. package/dist/modules/n8n-packages/entities/package-export.errors.d.ts +8 -0
  363. package/dist/modules/n8n-packages/entities/package-export.errors.js +27 -0
  364. package/dist/modules/n8n-packages/entities/package-export.errors.js.map +1 -0
  365. package/dist/modules/n8n-packages/entities/project/project-import.types.d.ts +15 -0
  366. package/dist/modules/n8n-packages/entities/project/project-import.types.js +3 -0
  367. package/dist/modules/n8n-packages/entities/project/project-import.types.js.map +1 -0
  368. package/dist/modules/n8n-packages/entities/project/project-importer.d.ts +13 -0
  369. package/dist/modules/n8n-packages/entities/project/project-importer.js +97 -0
  370. package/dist/modules/n8n-packages/entities/project/project-importer.js.map +1 -0
  371. package/dist/modules/n8n-packages/entities/project/project.exporter.d.ts +22 -4
  372. package/dist/modules/n8n-packages/entities/project/project.exporter.js +71 -26
  373. package/dist/modules/n8n-packages/entities/project/project.exporter.js.map +1 -1
  374. package/dist/modules/n8n-packages/entities/requirements.types.d.ts +2 -0
  375. package/dist/modules/n8n-packages/entities/requirements.types.js +1 -0
  376. package/dist/modules/n8n-packages/entities/requirements.types.js.map +1 -1
  377. package/dist/modules/n8n-packages/entities/workflow/workflow.exporter.d.ts +4 -3
  378. package/dist/modules/n8n-packages/entities/workflow/workflow.exporter.js +11 -17
  379. package/dist/modules/n8n-packages/entities/workflow/workflow.exporter.js.map +1 -1
  380. package/dist/modules/n8n-packages/n8n-packages.service.d.ts +12 -3
  381. package/dist/modules/n8n-packages/n8n-packages.service.js +51 -11
  382. package/dist/modules/n8n-packages/n8n-packages.service.js.map +1 -1
  383. package/dist/modules/n8n-packages/n8n-packages.types.d.ts +47 -22
  384. package/dist/modules/n8n-packages/n8n-packages.types.js +5 -1
  385. package/dist/modules/n8n-packages/n8n-packages.types.js.map +1 -1
  386. package/dist/modules/n8n-packages/package-failure-classifier.d.ts +2 -0
  387. package/dist/modules/n8n-packages/package-failure-classifier.js +29 -0
  388. package/dist/modules/n8n-packages/package-failure-classifier.js.map +1 -0
  389. package/dist/modules/n8n-packages/spec/manifest.schema.d.ts +62 -0
  390. package/dist/modules/n8n-packages/spec/requirements.schema.d.ts +55 -0
  391. package/dist/modules/n8n-packages/spec/requirements.schema.js +26 -15
  392. package/dist/modules/n8n-packages/spec/requirements.schema.js.map +1 -1
  393. package/dist/modules/n8n-packages/spec/serialized/data-table.schema.d.ts +49 -0
  394. package/dist/modules/n8n-packages/spec/serialized/data-table.schema.js +20 -0
  395. package/dist/modules/n8n-packages/spec/serialized/data-table.schema.js.map +1 -0
  396. package/dist/modules/redaction/executions/execution-redaction.service.js +1 -1
  397. package/dist/modules/redaction/executions/execution-redaction.service.js.map +1 -1
  398. package/dist/modules/source-control.ee/constants.d.ts +1 -0
  399. package/dist/modules/source-control.ee/constants.js +2 -1
  400. package/dist/modules/source-control.ee/constants.js.map +1 -1
  401. package/dist/modules/source-control.ee/source-control-git.service.ee.d.ts +0 -1
  402. package/dist/modules/source-control.ee/source-control-git.service.ee.js +0 -22
  403. package/dist/modules/source-control.ee/source-control-git.service.ee.js.map +1 -1
  404. package/dist/modules/source-control.ee/source-control-helper.ee.d.ts +3 -1
  405. package/dist/modules/source-control.ee/source-control-helper.ee.js +13 -0
  406. package/dist/modules/source-control.ee/source-control-helper.ee.js.map +1 -1
  407. package/dist/modules/source-control.ee/source-control-import.service.ee.d.ts +10 -2
  408. package/dist/modules/source-control.ee/source-control-import.service.ee.js +94 -59
  409. package/dist/modules/source-control.ee/source-control-import.service.ee.js.map +1 -1
  410. package/dist/modules/source-control.ee/source-control-status.service.ee.d.ts +0 -1
  411. package/dist/modules/source-control.ee/source-control-status.service.ee.js +30 -30
  412. package/dist/modules/source-control.ee/source-control-status.service.ee.js.map +1 -1
  413. package/dist/modules/source-control.ee/source-control.controller.ee.d.ts +6 -6
  414. package/dist/modules/source-control.ee/source-control.service.ee.d.ts +3 -3
  415. package/dist/modules/source-control.ee/source-control.service.ee.js +8 -1
  416. package/dist/modules/source-control.ee/source-control.service.ee.js.map +1 -1
  417. package/dist/public-api/types.d.ts +5 -1
  418. package/dist/public-api/v1/handlers/credentials/credentials.handler.js +9 -0
  419. package/dist/public-api/v1/handlers/credentials/credentials.handler.js.map +1 -1
  420. package/dist/public-api/v1/handlers/n8n-packages/n8n-packages.handler.js +87 -38
  421. package/dist/public-api/v1/handlers/n8n-packages/n8n-packages.handler.js.map +1 -1
  422. package/dist/public-api/v1/handlers/security-policy/security-policy.handler.d.ts +8 -0
  423. package/dist/public-api/v1/handlers/security-policy/security-policy.handler.js +39 -0
  424. package/dist/public-api/v1/handlers/security-policy/security-policy.handler.js.map +1 -0
  425. package/dist/public-api/v1/openapi.yml +243 -12
  426. package/dist/scaling/job-processor.js +44 -6
  427. package/dist/scaling/job-processor.js.map +1 -1
  428. package/dist/scaling/pubsub/pubsub.event-map.d.ts +4 -1
  429. package/dist/scheduling/durable-job-provisioner.d.ts +16 -0
  430. package/dist/scheduling/durable-job-provisioner.js +135 -0
  431. package/dist/scheduling/durable-job-provisioner.js.map +1 -0
  432. package/dist/scheduling/durable-scheduler.d.ts +16 -0
  433. package/dist/scheduling/durable-scheduler.js +117 -0
  434. package/dist/scheduling/durable-scheduler.js.map +1 -0
  435. package/dist/scheduling/schedule-trigger-node/schedule-trigger-task-handler.d.ts +23 -0
  436. package/dist/scheduling/schedule-trigger-node/schedule-trigger-task-handler.js +149 -0
  437. package/dist/scheduling/schedule-trigger-node/schedule-trigger-task-handler.js.map +1 -0
  438. package/dist/scheduling/schedule-trigger-node/schedule-trigger-task.d.ts +10 -0
  439. package/dist/scheduling/schedule-trigger-node/schedule-trigger-task.js +33 -0
  440. package/dist/scheduling/schedule-trigger-node/schedule-trigger-task.js.map +1 -0
  441. package/dist/scheduling/scheduler-tracer.d.ts +3 -0
  442. package/dist/scheduling/scheduler-tracer.js +11 -0
  443. package/dist/scheduling/scheduler-tracer.js.map +1 -0
  444. package/dist/server.js +6 -1
  445. package/dist/server.js.map +1 -1
  446. package/dist/services/folder-finder.service.d.ts +2 -0
  447. package/dist/services/folder-finder.service.js +16 -0
  448. package/dist/services/folder-finder.service.js.map +1 -1
  449. package/dist/services/folder.service.d.ts +3 -2
  450. package/dist/services/folder.service.js +11 -1
  451. package/dist/services/folder.service.js.map +1 -1
  452. package/dist/services/frontend.service.d.ts +3 -1
  453. package/dist/services/frontend.service.js +14 -2
  454. package/dist/services/frontend.service.js.map +1 -1
  455. package/dist/services/project.service.ee.d.ts +7 -1
  456. package/dist/services/project.service.ee.js +21 -4
  457. package/dist/services/project.service.ee.js.map +1 -1
  458. package/dist/services/protected-resource.registry.d.ts +1 -0
  459. package/dist/services/protected-resource.registry.js +11 -7
  460. package/dist/services/protected-resource.registry.js.map +1 -1
  461. package/dist/services/security-settings.service.d.ts +31 -1
  462. package/dist/services/security-settings.service.js +75 -2
  463. package/dist/services/security-settings.service.js.map +1 -1
  464. package/dist/services/workflow-review-policy.service.d.ts +11 -0
  465. package/dist/services/workflow-review-policy.service.js +52 -0
  466. package/dist/services/workflow-review-policy.service.js.map +1 -0
  467. package/dist/telemetry/index.d.ts +2 -0
  468. package/dist/telemetry/index.js +6 -3
  469. package/dist/telemetry/index.js.map +1 -1
  470. package/dist/webhooks/live-webhooks.js +2 -2
  471. package/dist/webhooks/live-webhooks.js.map +1 -1
  472. package/dist/webhooks/test-webhooks.js +4 -1
  473. package/dist/webhooks/test-webhooks.js.map +1 -1
  474. package/dist/webhooks/waiting-webhooks.js +2 -2
  475. package/dist/webhooks/waiting-webhooks.js.map +1 -1
  476. package/dist/workflow-execute-additional-data.js +5 -4
  477. package/dist/workflow-execute-additional-data.js.map +1 -1
  478. package/dist/workflow-helpers.js +26 -0
  479. package/dist/workflow-helpers.js.map +1 -1
  480. package/dist/workflows/triggers/webhook-trigger-registrar.js +22 -15
  481. package/dist/workflows/triggers/webhook-trigger-registrar.js.map +1 -1
  482. package/dist/workflows/triggers/workflow-trigger-activator.js +1 -7
  483. package/dist/workflows/triggers/workflow-trigger-activator.js.map +1 -1
  484. package/dist/workflows/workflow-creation.service.d.ts +2 -0
  485. package/dist/workflows/workflow-creation.service.js +4 -2
  486. package/dist/workflows/workflow-creation.service.js.map +1 -1
  487. package/dist/workflows/workflow-execution.service.js +8 -5
  488. package/dist/workflows/workflow-execution.service.js.map +1 -1
  489. package/dist/workflows/workflow-finder.service.d.ts +5 -2
  490. package/dist/workflows/workflow-finder.service.js +25 -2
  491. package/dist/workflows/workflow-finder.service.js.map +1 -1
  492. package/dist/workflows/workflow-history/workflow-history.service.d.ts +4 -1
  493. package/dist/workflows/workflow-history/workflow-history.service.js +3 -1
  494. package/dist/workflows/workflow-history/workflow-history.service.js.map +1 -1
  495. package/dist/workflows/workflow-validation.service.js +3 -3
  496. package/dist/workflows/workflow-validation.service.js.map +1 -1
  497. package/dist/workflows/workflow.request.d.ts +7 -22
  498. package/dist/workflows/workflow.service.d.ts +2 -0
  499. package/dist/workflows/workflow.service.js +4 -2
  500. package/dist/workflows/workflow.service.js.map +1 -1
  501. package/dist/workflows/workflows.controller.d.ts +1 -1
  502. package/dist/workflows/workflows.controller.js +8 -3
  503. package/dist/workflows/workflows.controller.js.map +1 -1
  504. package/package.json +45 -40
  505. package/templates/form-trigger-completion.handlebars +6 -6
  506. package/dist/executions/execution-data/azure-store.ee.d.ts +0 -15
  507. package/dist/executions/execution-data/azure-store.ee.js +0 -117
  508. package/dist/executions/execution-data/azure-store.ee.js.map +0 -1
  509. package/dist/executions/execution-data/fs-store.d.ts +0 -16
  510. package/dist/executions/execution-data/fs-store.js +0 -118
  511. package/dist/executions/execution-data/fs-store.js.map +0 -1
  512. package/dist/executions/execution-data/s3-store.ee.d.ts +0 -15
  513. package/dist/executions/execution-data/s3-store.ee.js +0 -116
  514. package/dist/executions/execution-data/s3-store.ee.js.map +0 -1
  515. package/dist/modules/agents/builder/from-ai-node-parameters.d.ts +0 -7
  516. package/dist/modules/agents/builder/from-ai-node-parameters.js +0 -43
  517. package/dist/modules/agents/builder/from-ai-node-parameters.js.map +0 -1
  518. package/dist/modules/agents/builder/interactive/ask-llm.tool.d.ts +0 -2
  519. package/dist/modules/agents/builder/interactive/ask-llm.tool.js +0 -25
  520. package/dist/modules/agents/builder/interactive/ask-llm.tool.js.map +0 -1
  521. package/dist/modules/agents/builder/interactive/ask-question.tool.d.ts +0 -2
  522. package/dist/modules/agents/builder/interactive/ask-question.tool.js +0 -27
  523. package/dist/modules/agents/builder/interactive/ask-question.tool.js.map +0 -1
  524. package/dist/modules/agents/json-config/model-id.d.ts +0 -1
  525. package/dist/modules/agents/json-config/model-id.js +0 -8
  526. package/dist/modules/agents/json-config/model-id.js.map +0 -1
  527. package/dist/modules/agents/json-config/native-web-search-provider-tools.d.ts +0 -7
  528. package/dist/modules/agents/json-config/native-web-search-provider-tools.js +0 -55
  529. package/dist/modules/agents/json-config/native-web-search-provider-tools.js.map +0 -1
  530. package/dist/modules/n8n-packages/engine/import-pipeline.d.ts +0 -28
  531. package/dist/modules/n8n-packages/engine/import-pipeline.js +0 -204
  532. package/dist/modules/n8n-packages/engine/import-pipeline.js.map +0 -1
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "n8n",
3
- "version": "2.30.3",
3
+ "version": "2.31.0",
4
4
  "description": "n8n Workflow Automation Tool",
5
5
  "main": "dist/index",
6
6
  "types": "dist/index.d.ts",
@@ -22,8 +22,8 @@
22
22
  "bin",
23
23
  "templates",
24
24
  "dist",
25
- "LICENSE_EE.md",
26
- "LICENSE.md"
25
+ "LICENSE.md",
26
+ "LICENSE_EE.md"
27
27
  ],
28
28
  "devDependencies": {
29
29
  "@faker-js/faker": "^8.0.2",
@@ -74,14 +74,14 @@
74
74
  "ts-essentials": "^7.0.3",
75
75
  "tsconfig-paths": "^4.2.0",
76
76
  "@vitest/coverage-v8": "4.1.9",
77
+ "typescript": "6.0.2",
77
78
  "vite": "^8.0.2",
78
79
  "vitest": "^4.1.9",
79
80
  "vitest-mock-extended": "^3.1.0",
80
- "@n8n/backend-test-utils": "1.30.2",
81
+ "@n8n/backend-test-utils": "1.31.0",
81
82
  "@n8n/playwright-janitor": "0.1.0",
82
- "@n8n/scheduler": "0.2.2",
83
- "@n8n/typescript-config": "1.8.0",
84
- "@n8n/vitest-config": "1.17.0",
83
+ "@n8n/typescript-config": "1.9.0",
84
+ "@n8n/vitest-config": "1.18.0",
85
85
  "n8n-containers": "1.0.0"
86
86
  },
87
87
  "dependencies": {
@@ -113,8 +113,12 @@
113
113
  "@opentelemetry/sdk-trace-node": "^2.7.1",
114
114
  "@opentelemetry/semantic-conventions": "^1.40.0",
115
115
  "@parcel/watcher": "^2.5.1",
116
+ "@pinecone-database/pinecone": "^5.0.2",
117
+ "@qdrant/js-client-rest": "^1.16.2",
116
118
  "@rudderstack/rudder-sdk-node": "3.0.5",
117
119
  "@sentry/node": "^10.55.0",
120
+ "@supabase/supabase-js": "2.50.0",
121
+ "ai": "^6.0.197",
118
122
  "aws4": "1.11.0",
119
123
  "bcryptjs": "2.4.3",
120
124
  "bull": "4.16.4",
@@ -138,7 +142,7 @@
138
142
  "fast-glob": "3.2.12",
139
143
  "fast-json-patch": "^3.1.1",
140
144
  "fastest-levenshtein": "1.0.16",
141
- "fflate": "0.7.4",
145
+ "fflate": "0.8.3",
142
146
  "flat": "5.0.2",
143
147
  "flatted": "3.4.2",
144
148
  "formidable": "3.5.4",
@@ -203,36 +207,37 @@
203
207
  "yargs-parser": "21.1.1",
204
208
  "zod": "3.25.67",
205
209
  "zod-to-json-schema": "3.23.3",
206
- "@n8n/agents": "0.15.2",
207
- "@n8n/ai-workflow-builder": "1.30.2",
208
- "@n8n/ai-utilities": "0.23.2",
209
- "@n8n/api-types": "1.30.2",
210
- "@n8n/backend-common": "1.30.2",
211
- "@n8n/backend-network": "1.4.2",
212
- "@n8n/client-oauth2": "1.12.1",
213
- "@n8n/chat-hub": "1.23.2",
214
- "@n8n/constants": "0.30.0",
215
- "@n8n/db": "1.30.2",
216
- "@n8n/di": "0.14.0",
217
- "@n8n/decorators": "1.30.2",
218
- "@n8n/ai-node-sdk": "0.20.2",
219
- "@n8n/errors": "0.11.0",
220
- "@n8n/expression-runtime": "0.21.0",
221
- "@n8n/mcp-apps": "0.7.1",
222
- "@n8n/config": "2.28.0",
223
- "@n8n/instance-ai": "1.15.2",
224
- "@n8n/permissions": "0.67.0",
225
- "@n8n/mcp-browser": "0.13.0",
226
- "@n8n/syslog-client": "1.7.0",
227
- "@n8n/typeorm": "0.4.0",
228
- "@n8n/n8n-nodes-langchain": "2.30.2",
229
- "@n8n/utils": "1.38.1",
230
- "n8n-core": "2.30.2",
231
- "@n8n/workflow-sdk": "0.23.1",
232
- "n8n-editor-ui": "2.30.3",
233
- "n8n-nodes-base": "2.30.2",
234
- "n8n-workflow": "2.30.1",
235
- "@n8n/task-runner": "2.30.2"
210
+ "@n8n/agents": "0.16.0",
211
+ "@n8n/ai-utilities": "0.24.0",
212
+ "@n8n/ai-node-sdk": "0.21.0",
213
+ "@n8n/ai-workflow-builder": "1.31.0",
214
+ "@n8n/backend-common": "1.31.0",
215
+ "@n8n/api-types": "1.31.0",
216
+ "@n8n/backend-network": "1.5.0",
217
+ "@n8n/chat-hub": "1.24.0",
218
+ "@n8n/client-oauth2": "1.13.0",
219
+ "@n8n/config": "2.29.0",
220
+ "@n8n/constants": "0.31.0",
221
+ "@n8n/db": "1.31.0",
222
+ "@n8n/decorators": "1.31.0",
223
+ "@n8n/di": "0.15.0",
224
+ "@n8n/errors": "0.12.0",
225
+ "@n8n/mcp-apps": "0.8.0",
226
+ "@n8n/instance-ai": "1.16.0",
227
+ "@n8n/mcp-browser": "0.14.0",
228
+ "@n8n/expression-runtime": "0.22.0",
229
+ "@n8n/n8n-nodes-langchain": "2.31.0",
230
+ "@n8n/task-runner": "2.31.0",
231
+ "@n8n/syslog-client": "1.8.0",
232
+ "@n8n/permissions": "0.68.0",
233
+ "@n8n/scheduler": "0.3.0",
234
+ "@n8n/utils": "1.39.0",
235
+ "@n8n/workflow-sdk": "0.24.0",
236
+ "n8n-editor-ui": "2.31.0",
237
+ "@n8n/typeorm": "0.5.0",
238
+ "n8n-core": "2.31.0",
239
+ "n8n-workflow": "2.31.0",
240
+ "n8n-nodes-base": "2.31.0"
236
241
  },
237
242
  "license": "SEE LICENSE IN LICENSE.md",
238
243
  "homepage": "https://n8n.io",
@@ -264,9 +269,9 @@
264
269
  "start": "node ../../scripts/os-normalize.mjs --dir bin n8n",
265
270
  "test": "N8N_LOG_LEVEL=silent DB_SQLITE_POOL_SIZE=4 DB_TYPE=sqlite vitest run",
266
271
  "test:unit": "N8N_LOG_LEVEL=silent DB_SQLITE_POOL_SIZE=4 DB_TYPE=sqlite vitest run",
267
- "test:unit:changed": "N8N_LOG_LEVEL=silent DB_SQLITE_POOL_SIZE=4 DB_TYPE=sqlite janitor test-scoped --runner=vitest",
272
+ "test:unit:changed": "N8N_LOG_LEVEL=silent DB_SQLITE_POOL_SIZE=4 DB_TYPE=sqlite janitor test-scoped",
268
273
  "test:integration": "N8N_LOG_LEVEL=silent DB_SQLITE_POOL_SIZE=4 DB_TYPE=sqlite vitest run --config vitest.config.integration.ts",
269
- "test:integration:changed": "N8N_LOG_LEVEL=silent DB_SQLITE_POOL_SIZE=4 DB_TYPE=sqlite janitor test-scoped --runner=vitest -- --config vitest.config.integration.ts",
274
+ "test:integration:changed": "N8N_LOG_LEVEL=silent DB_SQLITE_POOL_SIZE=4 DB_TYPE=sqlite janitor test-scoped -- --config vitest.config.integration.ts",
270
275
  "test:dev": "N8N_LOG_LEVEL=silent DB_SQLITE_POOL_SIZE=4 DB_TYPE=sqlite vitest --silent=false",
271
276
  "test:sqlite": "N8N_LOG_LEVEL=silent DB_SQLITE_POOL_SIZE=4 DB_TYPE=sqlite vitest run --config vitest.config.integration.ts",
272
277
  "test:sqlite:migrations": "N8N_LOG_LEVEL=silent DB_SQLITE_POOL_SIZE=4 DB_TYPE=sqlite vitest run --config vitest.config.migration.ts --coverage.enabled=false",
@@ -201,15 +201,15 @@
201
201
  };
202
202
 
203
203
  document.addEventListener('DOMContentLoaded', function () {
204
- const binary = "{{{responseBinary}}}"
204
+ const binaries = "{{{responseBinary}}}"
205
205
  ? JSON.parse(decodeURIComponent("{{{responseBinary}}}"))
206
- : '';
206
+ : [];
207
207
 
208
- const byteArray = binary.data.type === 'Buffer'
209
- ? new Uint8Array(binary.data.data)
210
- : Uint8Array.from(binary.data, c => c.charCodeAt(0));
208
+ for (const binary of binaries) {
209
+ const byteArray = binary.data.type === 'Buffer'
210
+ ? new Uint8Array(binary.data.data)
211
+ : Uint8Array.from(binary.data, c => c.charCodeAt(0));
211
212
 
212
- if (binary) {
213
213
  const blob = new Blob(
214
214
  [byteArray],
215
215
  { type: binary.type }
@@ -1,15 +0,0 @@
1
- import { ErrorReporter } from 'n8n-core';
2
- import { AzureBlobService } from 'n8n-core/dist/binary-data/azure-blob/azure-blob.service.ee';
3
- import type { ExecutionDataStore, ExecutionRef, ExecutionDataPayload, ExecutionDataBundle } from './types';
4
- export declare class AzureStore implements ExecutionDataStore {
5
- private readonly azureBlob;
6
- private readonly reporter;
7
- constructor(azureBlob: AzureBlobService, reporter: ErrorReporter);
8
- write(ref: ExecutionRef, payload: ExecutionDataPayload): Promise<number>;
9
- read(ref: ExecutionRef): Promise<ExecutionDataBundle | null>;
10
- readMany(refs: ExecutionRef[]): Promise<Map<string, ExecutionDataBundle>>;
11
- delete(ref: ExecutionRef | ExecutionRef[]): Promise<void>;
12
- private key;
13
- private tryRead;
14
- private isNotFound;
15
- }
@@ -1,117 +0,0 @@
1
- "use strict";
2
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
- return c > 3 && r && Object.defineProperty(target, key, r), r;
7
- };
8
- var __metadata = (this && this.__metadata) || function (k, v) {
9
- if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
- };
11
- var __importDefault = (this && this.__importDefault) || function (mod) {
12
- return (mod && mod.__esModule) ? mod : { "default": mod };
13
- };
14
- Object.defineProperty(exports, "__esModule", { value: true });
15
- exports.AzureStore = void 0;
16
- const di_1 = require("@n8n/di");
17
- const chunk_1 = __importDefault(require("lodash/chunk"));
18
- const n8n_core_1 = require("n8n-core");
19
- const azure_blob_service_ee_1 = require("n8n-core/dist/binary-data/azure-blob/azure-blob.service.ee");
20
- const ensure_error_1 = require("@n8n/utils/errors/ensure-error");
21
- const n8n_workflow_1 = require("n8n-workflow");
22
- const constants_1 = require("./constants");
23
- const corrupted_execution_data_error_1 = require("./corrupted-execution-data.error");
24
- const execution_data_write_error_1 = require("./execution-data-write.error");
25
- const MAX_READ_CONCURRENCY = 50;
26
- const MAX_DELETE_CONCURRENCY = 50;
27
- let AzureStore = class AzureStore {
28
- constructor(azureBlob, reporter) {
29
- this.azureBlob = azureBlob;
30
- this.reporter = reporter;
31
- }
32
- async write(ref, payload) {
33
- const body = Buffer.from((0, n8n_workflow_1.jsonStringify)({ ...payload, version: constants_1.EXECUTION_DATA_BUNDLE_VERSION }), 'utf-8');
34
- try {
35
- await this.azureBlob.put(this.key(ref), body, { mimeType: 'application/json' });
36
- }
37
- catch (error) {
38
- throw new execution_data_write_error_1.ExecutionDataWriteError(ref, error);
39
- }
40
- return body.length;
41
- }
42
- async read(ref) {
43
- let content;
44
- try {
45
- const buffer = await this.azureBlob.get(this.key(ref), { mode: 'buffer' });
46
- content = buffer.toString('utf-8');
47
- }
48
- catch (error) {
49
- if (this.isNotFound(error))
50
- return null;
51
- throw error;
52
- }
53
- try {
54
- return (0, n8n_workflow_1.jsonParse)(content);
55
- }
56
- catch (error) {
57
- throw new corrupted_execution_data_error_1.CorruptedExecutionDataError(ref, error);
58
- }
59
- }
60
- async readMany(refs) {
61
- const bundles = new Map();
62
- if (refs.length === 0)
63
- return bundles;
64
- for (const batch of (0, chunk_1.default)(refs, MAX_READ_CONCURRENCY)) {
65
- const bundlesInBatch = await Promise.all(batch.map(async (ref) => await this.tryRead(ref)));
66
- for (const [idx, bundle] of bundlesInBatch.entries()) {
67
- if (bundle)
68
- bundles.set(batch[idx].executionId, bundle);
69
- }
70
- }
71
- return bundles;
72
- }
73
- async delete(ref) {
74
- const refs = Array.isArray(ref) ? ref : [ref];
75
- if (refs.length === 0)
76
- return;
77
- for (const batch of (0, chunk_1.default)(refs, MAX_DELETE_CONCURRENCY)) {
78
- await Promise.all(batch.map((r) => this.azureBlob.delete(this.key(r))));
79
- }
80
- }
81
- key({ workflowId, executionId }) {
82
- return [
83
- 'workflows',
84
- workflowId,
85
- 'executions',
86
- executionId,
87
- 'execution_data',
88
- constants_1.EXECUTION_DATA_BUNDLE_FILENAME,
89
- ].join('/');
90
- }
91
- async tryRead(ref) {
92
- try {
93
- return await this.read(ref);
94
- }
95
- catch (error) {
96
- if (error instanceof corrupted_execution_data_error_1.CorruptedExecutionDataError) {
97
- this.reporter.error(error);
98
- return null;
99
- }
100
- throw error;
101
- }
102
- }
103
- isNotFound(error) {
104
- const original = (0, ensure_error_1.ensureError)(error).cause ?? error;
105
- if (typeof original !== 'object' || original === null)
106
- return false;
107
- const code = 'code' in original ? original.code : undefined;
108
- return code === 'BlobNotFound';
109
- }
110
- };
111
- exports.AzureStore = AzureStore;
112
- exports.AzureStore = AzureStore = __decorate([
113
- (0, di_1.Service)(),
114
- __metadata("design:paramtypes", [azure_blob_service_ee_1.AzureBlobService,
115
- n8n_core_1.ErrorReporter])
116
- ], AzureStore);
117
- //# sourceMappingURL=azure-store.ee.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"azure-store.ee.js","sourceRoot":"","sources":["../../../src/executions/execution-data/azure-store.ee.ts"],"names":[],"mappings":"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"}
@@ -1,16 +0,0 @@
1
- import { ErrorReporter, StorageConfig } from 'n8n-core';
2
- import type { ExecutionDataStore, ExecutionRef, ExecutionDataPayload, ExecutionDataBundle } from './types';
3
- export declare class FsStore implements ExecutionDataStore {
4
- private readonly storageConfig;
5
- private readonly errorReporter;
6
- constructor(storageConfig: StorageConfig, errorReporter: ErrorReporter);
7
- init(): Promise<void>;
8
- write(ref: ExecutionRef, payload: ExecutionDataPayload): Promise<number>;
9
- read(ref: ExecutionRef): Promise<ExecutionDataBundle | null>;
10
- readMany(refs: ExecutionRef[]): Promise<Map<string, ExecutionDataBundle>>;
11
- delete(ref: ExecutionRef | ExecutionRef[]): Promise<void>;
12
- private resolveExecutionDir;
13
- private resolveBundlePath;
14
- private isFileNotFound;
15
- private tryRead;
16
- }
@@ -1,118 +0,0 @@
1
- "use strict";
2
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
- return c > 3 && r && Object.defineProperty(target, key, r), r;
7
- };
8
- var __metadata = (this && this.__metadata) || function (k, v) {
9
- if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
- };
11
- var __importDefault = (this && this.__importDefault) || function (mod) {
12
- return (mod && mod.__esModule) ? mod : { "default": mod };
13
- };
14
- Object.defineProperty(exports, "__esModule", { value: true });
15
- exports.FsStore = void 0;
16
- const backend_common_1 = require("@n8n/backend-common");
17
- const di_1 = require("@n8n/di");
18
- const chunk_1 = __importDefault(require("lodash/chunk"));
19
- const n8n_core_1 = require("n8n-core");
20
- const n8n_workflow_1 = require("n8n-workflow");
21
- const promises_1 = __importDefault(require("node:fs/promises"));
22
- const node_path_1 = __importDefault(require("node:path"));
23
- const constants_1 = require("./constants");
24
- const corrupted_execution_data_error_1 = require("./corrupted-execution-data.error");
25
- const execution_data_write_error_1 = require("./execution-data-write.error");
26
- const MAX_READ_CONCURRENCY = 50;
27
- let FsStore = class FsStore {
28
- constructor(storageConfig, errorReporter) {
29
- this.storageConfig = storageConfig;
30
- this.errorReporter = errorReporter;
31
- }
32
- async init() {
33
- await (0, backend_common_1.assertDir)(this.storageConfig.storagePath);
34
- }
35
- async write(ref, payload) {
36
- const writePath = this.resolveBundlePath(ref);
37
- await (0, backend_common_1.assertDir)(node_path_1.default.dirname(writePath));
38
- const tempPath = `${writePath}.tmp.${Date.now()}`;
39
- let success = false;
40
- try {
41
- const serialized = (0, n8n_workflow_1.jsonStringify)({ ...payload, version: constants_1.EXECUTION_DATA_BUNDLE_VERSION });
42
- await promises_1.default.writeFile(tempPath, serialized, 'utf-8');
43
- await promises_1.default.rename(tempPath, writePath);
44
- success = true;
45
- return Buffer.byteLength(serialized, 'utf-8');
46
- }
47
- catch (error) {
48
- throw new execution_data_write_error_1.ExecutionDataWriteError(ref, error);
49
- }
50
- finally {
51
- if (!success)
52
- await promises_1.default.rm(tempPath, { force: true }).catch((e) => this.errorReporter.error(e));
53
- }
54
- }
55
- async read(ref) {
56
- const bundlePath = this.resolveBundlePath(ref);
57
- let content;
58
- try {
59
- content = await promises_1.default.readFile(bundlePath, 'utf-8');
60
- }
61
- catch (error) {
62
- if (this.isFileNotFound(error))
63
- return null;
64
- throw error;
65
- }
66
- try {
67
- return (0, n8n_workflow_1.jsonParse)(content);
68
- }
69
- catch (error) {
70
- throw new corrupted_execution_data_error_1.CorruptedExecutionDataError(ref, error);
71
- }
72
- }
73
- async readMany(refs) {
74
- const bundles = new Map();
75
- if (refs.length === 0)
76
- return bundles;
77
- for (const batch of (0, chunk_1.default)(refs, MAX_READ_CONCURRENCY)) {
78
- const bundlesInBatch = await Promise.all(batch.map(async (ref) => await this.tryRead(ref)));
79
- for (const [idx, bundle] of bundlesInBatch.entries()) {
80
- if (bundle)
81
- bundles.set(batch[idx].executionId, bundle);
82
- }
83
- }
84
- return bundles;
85
- }
86
- async delete(ref) {
87
- const refs = Array.isArray(ref) ? ref : [ref];
88
- await Promise.all(refs.map(async (r) => await promises_1.default.rm(this.resolveExecutionDir(r), { recursive: true, force: true })));
89
- }
90
- resolveExecutionDir({ workflowId, executionId }) {
91
- return node_path_1.default.join(this.storageConfig.storagePath, 'workflows', workflowId, 'executions', executionId);
92
- }
93
- resolveBundlePath(ref) {
94
- return node_path_1.default.join(this.resolveExecutionDir(ref), 'execution_data', constants_1.EXECUTION_DATA_BUNDLE_FILENAME);
95
- }
96
- isFileNotFound(error) {
97
- return (error !== null && typeof error === 'object' && 'code' in error && error.code === 'ENOENT');
98
- }
99
- async tryRead(ref) {
100
- try {
101
- return await this.read(ref);
102
- }
103
- catch (error) {
104
- if (error instanceof corrupted_execution_data_error_1.CorruptedExecutionDataError) {
105
- this.errorReporter.error(error);
106
- return null;
107
- }
108
- throw error;
109
- }
110
- }
111
- };
112
- exports.FsStore = FsStore;
113
- exports.FsStore = FsStore = __decorate([
114
- (0, di_1.Service)(),
115
- __metadata("design:paramtypes", [n8n_core_1.StorageConfig,
116
- n8n_core_1.ErrorReporter])
117
- ], FsStore);
118
- //# sourceMappingURL=fs-store.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"fs-store.js","sourceRoot":"","sources":["../../../src/executions/execution-data/fs-store.ts"],"names":[],"mappings":"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"}
@@ -1,15 +0,0 @@
1
- import { ErrorReporter } from 'n8n-core';
2
- import { ObjectStoreService } from 'n8n-core/dist/binary-data/object-store/object-store.service.ee';
3
- import type { ExecutionDataStore, ExecutionRef, ExecutionDataPayload, ExecutionDataBundle } from './types';
4
- export declare class S3Store implements ExecutionDataStore {
5
- private readonly objectStore;
6
- private readonly reporter;
7
- constructor(objectStore: ObjectStoreService, reporter: ErrorReporter);
8
- write(ref: ExecutionRef, payload: ExecutionDataPayload): Promise<number>;
9
- read(ref: ExecutionRef): Promise<ExecutionDataBundle | null>;
10
- readMany(refs: ExecutionRef[]): Promise<Map<string, ExecutionDataBundle>>;
11
- delete(ref: ExecutionRef | ExecutionRef[]): Promise<void>;
12
- private key;
13
- private isNotFound;
14
- private tryRead;
15
- }
@@ -1,116 +0,0 @@
1
- "use strict";
2
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
- return c > 3 && r && Object.defineProperty(target, key, r), r;
7
- };
8
- var __metadata = (this && this.__metadata) || function (k, v) {
9
- if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
- };
11
- var __importDefault = (this && this.__importDefault) || function (mod) {
12
- return (mod && mod.__esModule) ? mod : { "default": mod };
13
- };
14
- Object.defineProperty(exports, "__esModule", { value: true });
15
- exports.S3Store = void 0;
16
- const di_1 = require("@n8n/di");
17
- const chunk_1 = __importDefault(require("lodash/chunk"));
18
- const n8n_core_1 = require("n8n-core");
19
- const object_store_service_ee_1 = require("n8n-core/dist/binary-data/object-store/object-store.service.ee");
20
- const ensure_error_1 = require("@n8n/utils/errors/ensure-error");
21
- const n8n_workflow_1 = require("n8n-workflow");
22
- const constants_1 = require("./constants");
23
- const corrupted_execution_data_error_1 = require("./corrupted-execution-data.error");
24
- const execution_data_write_error_1 = require("./execution-data-write.error");
25
- const MAX_READ_MANY_CONCURRENCY = 50;
26
- let S3Store = class S3Store {
27
- constructor(objectStore, reporter) {
28
- this.objectStore = objectStore;
29
- this.reporter = reporter;
30
- }
31
- async write(ref, payload) {
32
- const body = Buffer.from((0, n8n_workflow_1.jsonStringify)({ ...payload, version: constants_1.EXECUTION_DATA_BUNDLE_VERSION }), 'utf-8');
33
- try {
34
- await this.objectStore.put(this.key(ref), body, {
35
- mimeType: 'application/json',
36
- });
37
- }
38
- catch (error) {
39
- throw new execution_data_write_error_1.ExecutionDataWriteError(ref, error);
40
- }
41
- return body.length;
42
- }
43
- async read(ref) {
44
- let content;
45
- try {
46
- const buffer = await this.objectStore.get(this.key(ref), { mode: 'buffer' });
47
- content = buffer.toString('utf-8');
48
- }
49
- catch (error) {
50
- if (this.isNotFound(error))
51
- return null;
52
- throw error;
53
- }
54
- try {
55
- return (0, n8n_workflow_1.jsonParse)(content);
56
- }
57
- catch (error) {
58
- throw new corrupted_execution_data_error_1.CorruptedExecutionDataError(ref, error);
59
- }
60
- }
61
- async readMany(refs) {
62
- const bundles = new Map();
63
- if (refs.length === 0)
64
- return bundles;
65
- for (const batch of (0, chunk_1.default)(refs, MAX_READ_MANY_CONCURRENCY)) {
66
- const bundlesInBatch = await Promise.all(batch.map(async (ref) => await this.tryRead(ref)));
67
- for (const [idx, bundle] of bundlesInBatch.entries()) {
68
- if (bundle)
69
- bundles.set(batch[idx].executionId, bundle);
70
- }
71
- }
72
- return bundles;
73
- }
74
- async delete(ref) {
75
- const refs = Array.isArray(ref) ? ref : [ref];
76
- if (refs.length === 0)
77
- return;
78
- await this.objectStore.deleteByKeys(refs.map((r) => this.key(r)));
79
- }
80
- key({ workflowId, executionId }) {
81
- return [
82
- 'workflows',
83
- workflowId,
84
- 'executions',
85
- executionId,
86
- 'execution_data',
87
- constants_1.EXECUTION_DATA_BUNDLE_FILENAME,
88
- ].join('/');
89
- }
90
- isNotFound(error) {
91
- const original = (0, ensure_error_1.ensureError)(error).cause ?? error;
92
- if (typeof original !== 'object' || original === null)
93
- return false;
94
- const name = 'name' in original ? original.name : undefined;
95
- return name === 'NoSuchKey' || name === 'NotFound';
96
- }
97
- async tryRead(ref) {
98
- try {
99
- return await this.read(ref);
100
- }
101
- catch (error) {
102
- if (error instanceof corrupted_execution_data_error_1.CorruptedExecutionDataError) {
103
- this.reporter.error(error);
104
- return null;
105
- }
106
- throw error;
107
- }
108
- }
109
- };
110
- exports.S3Store = S3Store;
111
- exports.S3Store = S3Store = __decorate([
112
- (0, di_1.Service)(),
113
- __metadata("design:paramtypes", [object_store_service_ee_1.ObjectStoreService,
114
- n8n_core_1.ErrorReporter])
115
- ], S3Store);
116
- //# sourceMappingURL=s3-store.ee.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"s3-store.ee.js","sourceRoot":"","sources":["../../../src/executions/execution-data/s3-store.ee.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,gCAAkC;AAClC,yDAAiC;AACjC,uCAAyC;AACzC,4GAAoG;AACpG,iEAA6D;AAC7D,+CAAwD;AAExD,2CAA4F;AAC5F,qFAA+E;AAC/E,6EAAuE;AAQvE,MAAM,yBAAyB,GAAG,EAAE,CAAC;AAG9B,IAAM,OAAO,GAAb,MAAM,OAAO;IACnB,YACkB,WAA+B,EAC/B,QAAuB;QADvB,gBAAW,GAAX,WAAW,CAAoB;QAC/B,aAAQ,GAAR,QAAQ,CAAe;IACtC,CAAC;IAEJ,KAAK,CAAC,KAAK,CAAC,GAAiB,EAAE,OAA6B;QAC3D,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CACvB,IAAA,4BAAa,EAAC,EAAE,GAAG,OAAO,EAAE,OAAO,EAAE,yCAA6B,EAAE,CAAC,EACrE,OAAO,CACP,CAAC;QAEF,IAAI,CAAC;YACJ,MAAM,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE;gBAC/C,QAAQ,EAAE,kBAAkB;aAC5B,CAAC,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAChB,MAAM,IAAI,oDAAuB,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;QAC/C,CAAC;QAED,OAAO,IAAI,CAAC,MAAM,CAAC;IACpB,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,GAAiB;QAC3B,IAAI,OAAe,CAAC;QAEpB,IAAI,CAAC;YACJ,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC;YAC7E,OAAO,GAAG,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACpC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAChB,IAAI,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC;gBAAE,OAAO,IAAI,CAAC;YACxC,MAAM,KAAK,CAAC;QACb,CAAC;QAED,IAAI,CAAC;YACJ,OAAO,IAAA,wBAAS,EAAsB,OAAO,CAAC,CAAC;QAChD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAChB,MAAM,IAAI,4DAA2B,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;QACnD,CAAC;IACF,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,IAAoB;QAClC,MAAM,OAAO,GAAG,IAAI,GAAG,EAA+B,CAAC;QAEvD,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,OAAO,CAAC;QAEtC,KAAK,MAAM,KAAK,IAAI,IAAA,eAAK,EAAC,IAAI,EAAE,yBAAyB,CAAC,EAAE,CAAC;YAC5D,MAAM,cAAc,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YAE5F,KAAK,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,IAAI,cAAc,CAAC,OAAO,EAAE,EAAE,CAAC;gBACtD,IAAI,MAAM;oBAAE,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;YACzD,CAAC;QACF,CAAC;QAED,OAAO,OAAO,CAAC;IAChB,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,GAAkC;QAC9C,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QAC9C,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO;QAE9B,MAAM,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACnE,CAAC;IAMO,GAAG,CAAC,EAAE,UAAU,EAAE,WAAW,EAAgB;QACpD,OAAO;YACN,WAAW;YACX,UAAU;YACV,YAAY;YACZ,WAAW;YACX,gBAAgB;YAChB,0CAA8B;SAC9B,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACb,CAAC;IAEO,UAAU,CAAC,KAAc;QAChC,MAAM,QAAQ,GAAG,IAAA,0BAAW,EAAC,KAAK,CAAC,CAAC,KAAK,IAAI,KAAK,CAAC;QACnD,IAAI,OAAO,QAAQ,KAAK,QAAQ,IAAI,QAAQ,KAAK,IAAI;YAAE,OAAO,KAAK,CAAC;QACpE,MAAM,IAAI,GAAG,MAAM,IAAI,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;QAC5D,OAAO,IAAI,KAAK,WAAW,IAAI,IAAI,KAAK,UAAU,CAAC;IACpD,CAAC;IAEO,KAAK,CAAC,OAAO,CAAC,GAAiB;QACtC,IAAI,CAAC;YACJ,OAAO,MAAM,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC7B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAChB,IAAI,KAAK,YAAY,4DAA2B,EAAE,CAAC;gBAClD,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;gBAC3B,OAAO,IAAI,CAAC;YACb,CAAC;YACD,MAAM,KAAK,CAAC;QACb,CAAC;IACF,CAAC;CACD,CAAA;AAjGY,0BAAO;kBAAP,OAAO;IADnB,IAAA,YAAO,GAAE;qCAGsB,4CAAkB;QACrB,wBAAa;GAH7B,OAAO,CAiGnB"}
@@ -1,7 +0,0 @@
1
- export type FromAiParameterReference = {
2
- parameterPath: string;
3
- jsonPointer: string;
4
- value: string;
5
- };
6
- export declare function collectFromAiParameterReferences(value: unknown, pathParts?: string[], jsonPointerParts?: string[]): FromAiParameterReference[];
7
- export declare function hasMatchingFromAiParameterReference(references: FromAiParameterReference[], candidate: FromAiParameterReference): boolean;
@@ -1,43 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.collectFromAiParameterReferences = collectFromAiParameterReferences;
4
- exports.hasMatchingFromAiParameterReference = hasMatchingFromAiParameterReference;
5
- const fromai_helpers_1 = require("@n8n/ai-utilities/fromai-helpers");
6
- function isRecord(value) {
7
- return typeof value === 'object' && value !== null && !Array.isArray(value);
8
- }
9
- function escapeJsonPointerPart(part) {
10
- return part.replaceAll('~', '~0').replaceAll('/', '~1');
11
- }
12
- function containsFromAiCall(value) {
13
- const parameters = { value };
14
- try {
15
- return (0, fromai_helpers_1.extractFromAIParameters)(parameters).length > 0;
16
- }
17
- catch {
18
- return false;
19
- }
20
- }
21
- function collectFromAiParameterReferences(value, pathParts = [], jsonPointerParts = pathParts) {
22
- if (typeof value === 'string') {
23
- if (!containsFromAiCall(value) || pathParts.length === 0)
24
- return [];
25
- return [
26
- {
27
- parameterPath: pathParts.join('.'),
28
- jsonPointer: jsonPointerParts.map(escapeJsonPointerPart).join('/'),
29
- value,
30
- },
31
- ];
32
- }
33
- if (Array.isArray(value)) {
34
- return value.flatMap((item, index) => collectFromAiParameterReferences(item, pathParts, [...jsonPointerParts, String(index)]));
35
- }
36
- if (!isRecord(value))
37
- return [];
38
- return Object.entries(value).flatMap(([key, nested]) => collectFromAiParameterReferences(nested, [...pathParts, key], [...jsonPointerParts, key]));
39
- }
40
- function hasMatchingFromAiParameterReference(references, candidate) {
41
- return references.some((reference) => reference.jsonPointer === candidate.jsonPointer && reference.value === candidate.value);
42
- }
43
- //# sourceMappingURL=from-ai-node-parameters.js.map