n8n 2.5.2 → 2.6.1

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 (277) hide show
  1. package/dist/active-executions.d.ts +1 -1
  2. package/dist/active-executions.js +43 -34
  3. package/dist/active-executions.js.map +1 -1
  4. package/dist/auth/auth.service.d.ts +4 -0
  5. package/dist/auth/auth.service.js +16 -3
  6. package/dist/auth/auth.service.js.map +1 -1
  7. package/dist/auth/methods/email.js +2 -2
  8. package/dist/auth/methods/email.js.map +1 -1
  9. package/dist/build.tsbuildinfo +1 -1
  10. package/dist/concurrency/concurrency-capacity-reservation.d.ts +8 -0
  11. package/dist/concurrency/concurrency-capacity-reservation.js +26 -0
  12. package/dist/concurrency/concurrency-capacity-reservation.js.map +1 -0
  13. package/dist/concurrency/concurrency-control.service.d.ts +8 -10
  14. package/dist/concurrency/concurrency-control.service.js.map +1 -1
  15. package/dist/controller.registry.d.ts +3 -2
  16. package/dist/controller.registry.js +26 -17
  17. package/dist/controller.registry.js.map +1 -1
  18. package/dist/controllers/ai.controller.js +4 -4
  19. package/dist/controllers/ai.controller.js.map +1 -1
  20. package/dist/controllers/api-keys.controller.d.ts +8 -4
  21. package/dist/controllers/api-keys.controller.js +23 -6
  22. package/dist/controllers/api-keys.controller.js.map +1 -1
  23. package/dist/controllers/auth.controller.js +16 -4
  24. package/dist/controllers/auth.controller.js.map +1 -1
  25. package/dist/controllers/invitation.controller.js +15 -3
  26. package/dist/controllers/invitation.controller.js.map +1 -1
  27. package/dist/controllers/me.controller.js +3 -1
  28. package/dist/controllers/me.controller.js.map +1 -1
  29. package/dist/controllers/mfa.controller.js +12 -3
  30. package/dist/controllers/mfa.controller.js.map +1 -1
  31. package/dist/controllers/password-reset.controller.d.ts +3 -1
  32. package/dist/controllers/password-reset.controller.js +73 -52
  33. package/dist/controllers/password-reset.controller.js.map +1 -1
  34. package/dist/controllers/posthog.controller.js +10 -10
  35. package/dist/controllers/posthog.controller.js.map +1 -1
  36. package/dist/controllers/project.controller.d.ts +2 -0
  37. package/dist/controllers/telemetry.controller.js +4 -4
  38. package/dist/controllers/telemetry.controller.js.map +1 -1
  39. package/dist/credentials/credentials.controller.d.ts +1 -0
  40. package/dist/credentials/credentials.controller.js +2 -0
  41. package/dist/credentials/credentials.controller.js.map +1 -1
  42. package/dist/credentials/credentials.service.d.ts +1 -0
  43. package/dist/credentials/credentials.service.js +1 -0
  44. package/dist/credentials/credentials.service.js.map +1 -1
  45. package/dist/credentials-overwrites.d.ts +1 -2
  46. package/dist/credentials-overwrites.js +2 -11
  47. package/dist/credentials-overwrites.js.map +1 -1
  48. package/dist/events/maps/relay.event-map.d.ts +12 -0
  49. package/dist/events/relays/telemetry.event-relay.d.ts +4 -0
  50. package/dist/events/relays/telemetry.event-relay.js +87 -3
  51. package/dist/events/relays/telemetry.event-relay.js.map +1 -1
  52. package/dist/executions/execution-data/constants.d.ts +2 -0
  53. package/dist/executions/execution-data/constants.js +6 -0
  54. package/dist/executions/execution-data/constants.js.map +1 -0
  55. package/dist/executions/execution-data/corrupted-execution-data.error.d.ts +5 -0
  56. package/dist/executions/execution-data/corrupted-execution-data.error.js +11 -0
  57. package/dist/executions/execution-data/corrupted-execution-data.error.js.map +1 -0
  58. package/dist/executions/execution-data/db-store.d.ts +9 -0
  59. package/dist/executions/execution-data/db-store.js +42 -0
  60. package/dist/executions/execution-data/db-store.js.map +1 -0
  61. package/dist/executions/execution-data/execution-data-write.error.d.ts +5 -0
  62. package/dist/executions/execution-data/execution-data-write.error.js +11 -0
  63. package/dist/executions/execution-data/execution-data-write.error.js.map +1 -0
  64. package/dist/executions/execution-data/fs-store.d.ts +14 -0
  65. package/dist/executions/execution-data/fs-store.js +89 -0
  66. package/dist/executions/execution-data/fs-store.js.map +1 -0
  67. package/dist/executions/execution-data/types.d.ts +8 -5
  68. package/dist/executions/execution-data/types.js +4 -0
  69. package/dist/executions/execution-data/types.js.map +1 -1
  70. package/dist/interfaces.d.ts +1 -0
  71. package/dist/load-nodes-and-credentials.d.ts +1 -6
  72. package/dist/load-nodes-and-credentials.js +18 -106
  73. package/dist/load-nodes-and-credentials.js.map +1 -1
  74. package/dist/manual-execution.service.js +13 -1
  75. package/dist/manual-execution.service.js.map +1 -1
  76. package/dist/middlewares/cors.js +1 -1
  77. package/dist/middlewares/cors.js.map +1 -1
  78. package/dist/middlewares/index.d.ts +1 -0
  79. package/dist/middlewares/index.js +1 -0
  80. package/dist/middlewares/index.js.map +1 -1
  81. package/dist/middlewares/jitter.d.ts +6 -0
  82. package/dist/middlewares/jitter.js +14 -0
  83. package/dist/middlewares/jitter.js.map +1 -0
  84. package/dist/middlewares/list-query/dtos/pagination.dto.js +1 -1
  85. package/dist/middlewares/list-query/dtos/pagination.dto.js.map +1 -1
  86. package/dist/modules/chat-hub/chat-hub-extractor.d.ts +14 -3
  87. package/dist/modules/chat-hub/chat-hub-extractor.js +70 -23
  88. package/dist/modules/chat-hub/chat-hub-extractor.js.map +1 -1
  89. package/dist/modules/chat-hub/chat-hub-workflow.service.d.ts +6 -3
  90. package/dist/modules/chat-hub/chat-hub-workflow.service.js +28 -7
  91. package/dist/modules/chat-hub/chat-hub-workflow.service.js.map +1 -1
  92. package/dist/modules/chat-hub/chat-hub.constants.js +97 -19
  93. package/dist/modules/chat-hub/chat-hub.constants.js.map +1 -1
  94. package/dist/modules/chat-hub/chat-hub.controller.js +4 -3
  95. package/dist/modules/chat-hub/chat-hub.controller.js.map +1 -1
  96. package/dist/modules/chat-hub/chat-hub.service.d.ts +4 -3
  97. package/dist/modules/chat-hub/chat-hub.service.js +16 -16
  98. package/dist/modules/chat-hub/chat-hub.service.js.map +1 -1
  99. package/dist/modules/community-packages/community-node-types-utils.d.ts +8 -1
  100. package/dist/modules/community-packages/community-node-types-utils.js +27 -3
  101. package/dist/modules/community-packages/community-node-types-utils.js.map +1 -1
  102. package/dist/modules/community-packages/community-node-types.service.d.ts +2 -1
  103. package/dist/modules/community-packages/community-node-types.service.js +53 -6
  104. package/dist/modules/community-packages/community-node-types.service.js.map +1 -1
  105. package/dist/modules/community-packages/community-packages.service.js +25 -9
  106. package/dist/modules/community-packages/community-packages.service.js.map +1 -1
  107. package/dist/modules/community-packages/strapi-utils.d.ts +21 -1
  108. package/dist/modules/community-packages/strapi-utils.js +16 -11
  109. package/dist/modules/community-packages/strapi-utils.js.map +1 -1
  110. package/dist/modules/dynamic-credentials.ee/context-establishment-hooks/http-header-extractor.js +7 -7
  111. package/dist/modules/dynamic-credentials.ee/context-establishment-hooks/http-header-extractor.js.map +1 -1
  112. package/dist/modules/dynamic-credentials.ee/credential-resolvers/index.d.ts +0 -1
  113. package/dist/modules/dynamic-credentials.ee/credential-resolvers/index.js +0 -1
  114. package/dist/modules/dynamic-credentials.ee/credential-resolvers/index.js.map +1 -1
  115. package/dist/modules/dynamic-credentials.ee/credential-resolvers/storage/dynamic-credential-user-entry-storage.d.ts +11 -0
  116. package/dist/modules/dynamic-credentials.ee/credential-resolvers/storage/dynamic-credential-user-entry-storage.js +59 -0
  117. package/dist/modules/dynamic-credentials.ee/credential-resolvers/storage/dynamic-credential-user-entry-storage.js.map +1 -0
  118. package/dist/modules/dynamic-credentials.ee/database/entities/dynamic-credential-user-entry.d.ts +12 -0
  119. package/dist/modules/dynamic-credentials.ee/database/entities/dynamic-credential-user-entry.js +65 -0
  120. package/dist/modules/dynamic-credentials.ee/database/entities/dynamic-credential-user-entry.js.map +1 -0
  121. package/dist/modules/dynamic-credentials.ee/database/repositories/dynamic-credential-user-entry.repository.d.ts +5 -0
  122. package/dist/modules/dynamic-credentials.ee/database/repositories/dynamic-credential-user-entry.repository.js +26 -0
  123. package/dist/modules/dynamic-credentials.ee/database/repositories/dynamic-credential-user-entry.repository.js.map +1 -0
  124. package/dist/modules/dynamic-credentials.ee/dynamic-credentials.config.d.ts +1 -0
  125. package/dist/modules/dynamic-credentials.ee/dynamic-credentials.config.js +5 -0
  126. package/dist/modules/dynamic-credentials.ee/dynamic-credentials.config.js.map +1 -1
  127. package/dist/modules/dynamic-credentials.ee/dynamic-credentials.controller.js +6 -5
  128. package/dist/modules/dynamic-credentials.ee/dynamic-credentials.controller.js.map +1 -1
  129. package/dist/modules/dynamic-credentials.ee/dynamic-credentials.module.d.ts +1 -1
  130. package/dist/modules/dynamic-credentials.ee/dynamic-credentials.module.js +2 -1
  131. package/dist/modules/dynamic-credentials.ee/dynamic-credentials.module.js.map +1 -1
  132. package/dist/modules/dynamic-credentials.ee/services/dynamic-credential-cors.service.js +1 -1
  133. package/dist/modules/dynamic-credentials.ee/services/dynamic-credential-cors.service.js.map +1 -1
  134. package/dist/modules/dynamic-credentials.ee/services/dynamic-credential.service.d.ts +5 -1
  135. package/dist/modules/dynamic-credentials.ee/services/dynamic-credential.service.js +24 -4
  136. package/dist/modules/dynamic-credentials.ee/services/dynamic-credential.service.js.map +1 -1
  137. package/dist/modules/dynamic-credentials.ee/utils.d.ts +1 -0
  138. package/dist/modules/dynamic-credentials.ee/utils.js +7 -0
  139. package/dist/modules/dynamic-credentials.ee/utils.js.map +1 -1
  140. package/dist/modules/dynamic-credentials.ee/workflow-status.controller.js +4 -1
  141. package/dist/modules/dynamic-credentials.ee/workflow-status.controller.js.map +1 -1
  142. package/dist/modules/external-secrets.ee/external-secrets.module.js +4 -0
  143. package/dist/modules/external-secrets.ee/external-secrets.module.js.map +1 -1
  144. package/dist/modules/external-secrets.ee/providers/aws-secrets-manager.js +35 -2
  145. package/dist/modules/external-secrets.ee/providers/aws-secrets-manager.js.map +1 -1
  146. package/dist/modules/external-secrets.ee/providers/infisical.js +39 -9
  147. package/dist/modules/external-secrets.ee/providers/infisical.js.map +1 -1
  148. package/dist/modules/external-secrets.ee/secrets-providers-autocomplete.controller.ee.d.ts +11 -0
  149. package/dist/modules/external-secrets.ee/secrets-providers-autocomplete.controller.ee.js +64 -0
  150. package/dist/modules/external-secrets.ee/secrets-providers-autocomplete.controller.ee.js.map +1 -0
  151. package/dist/modules/external-secrets.ee/secrets-providers-connections.controller.ee.d.ts +18 -0
  152. package/dist/modules/external-secrets.ee/secrets-providers-connections.controller.ee.js +141 -0
  153. package/dist/modules/external-secrets.ee/secrets-providers-connections.controller.ee.js.map +1 -0
  154. package/dist/modules/external-secrets.ee/secrets-providers-project.controller.ee.d.ts +10 -0
  155. package/dist/modules/external-secrets.ee/secrets-providers-project.controller.ee.js +53 -0
  156. package/dist/modules/external-secrets.ee/secrets-providers-project.controller.ee.js.map +1 -0
  157. package/dist/modules/external-secrets.ee/secrets-providers-types.controller.ee.d.ts +11 -0
  158. package/dist/modules/external-secrets.ee/secrets-providers-types.controller.ee.js +64 -0
  159. package/dist/modules/external-secrets.ee/secrets-providers-types.controller.ee.js.map +1 -0
  160. package/dist/modules/ldap.ee/constants.js.map +1 -0
  161. package/dist/{ldap.ee → modules/ldap.ee}/helpers.ee.d.ts +0 -3
  162. package/dist/{ldap.ee → modules/ldap.ee}/helpers.ee.js +1 -11
  163. package/dist/modules/ldap.ee/helpers.ee.js.map +1 -0
  164. package/dist/{ldap.ee → modules/ldap.ee}/ldap.controller.ee.d.ts +1 -1
  165. package/dist/{ldap.ee → modules/ldap.ee}/ldap.controller.ee.js +2 -2
  166. package/dist/modules/ldap.ee/ldap.controller.ee.js.map +1 -0
  167. package/dist/modules/ldap.ee/ldap.module.d.ts +4 -0
  168. package/dist/modules/ldap.ee/ldap.module.js +57 -0
  169. package/dist/modules/ldap.ee/ldap.module.js.map +1 -0
  170. package/dist/{ldap.ee → modules/ldap.ee}/ldap.service.ee.d.ts +5 -3
  171. package/dist/{ldap.ee → modules/ldap.ee}/ldap.service.ee.js +47 -10
  172. package/dist/modules/ldap.ee/ldap.service.ee.js.map +1 -0
  173. package/dist/{ldap.ee → modules/ldap.ee}/types.js.map +1 -1
  174. package/dist/modules/log-streaming.ee/database/repositories/event-destination.repository.js.map +1 -1
  175. package/dist/modules/log-streaming.ee/destinations/message-event-bus-destination-sentry.ee.js +0 -7
  176. package/dist/modules/log-streaming.ee/destinations/message-event-bus-destination-sentry.ee.js.map +1 -1
  177. package/dist/modules/log-streaming.ee/destinations/message-event-bus-destination-syslog.ee.js +0 -6
  178. package/dist/modules/log-streaming.ee/destinations/message-event-bus-destination-syslog.ee.js.map +1 -1
  179. package/dist/modules/log-streaming.ee/destinations/message-event-bus-destination-webhook.ee.js +1 -8
  180. package/dist/modules/log-streaming.ee/destinations/message-event-bus-destination-webhook.ee.js.map +1 -1
  181. package/dist/modules/log-streaming.ee/destinations/message-event-bus-destination.ee.d.ts +0 -2
  182. package/dist/modules/log-streaming.ee/destinations/message-event-bus-destination.ee.js +6 -2
  183. package/dist/modules/log-streaming.ee/destinations/message-event-bus-destination.ee.js.map +1 -1
  184. package/dist/modules/log-streaming.ee/log-streaming-destination.service.d.ts +4 -5
  185. package/dist/modules/log-streaming.ee/log-streaming-destination.service.js +6 -10
  186. package/dist/modules/log-streaming.ee/log-streaming-destination.service.js.map +1 -1
  187. package/dist/modules/log-streaming.ee/log-streaming.controller.d.ts +6 -6
  188. package/dist/modules/log-streaming.ee/log-streaming.controller.js +33 -71
  189. package/dist/modules/log-streaming.ee/log-streaming.controller.js.map +1 -1
  190. package/dist/modules/mcp/mcp.controller.js +1 -1
  191. package/dist/modules/mcp/mcp.controller.js.map +1 -1
  192. package/dist/modules/mcp/mcp.oauth.controller.js +17 -2
  193. package/dist/modules/mcp/mcp.oauth.controller.js.map +1 -1
  194. package/dist/modules/source-control.ee/source-control-export.service.ee.d.ts +1 -1
  195. package/dist/modules/source-control.ee/source-control-export.service.ee.js +2 -3
  196. package/dist/modules/source-control.ee/source-control-export.service.ee.js.map +1 -1
  197. package/dist/modules/source-control.ee/source-control-import.service.ee.d.ts +5 -8
  198. package/dist/modules/source-control.ee/source-control-import.service.ee.js +27 -9
  199. package/dist/modules/source-control.ee/source-control-import.service.ee.js.map +1 -1
  200. package/dist/modules/source-control.ee/source-control-status.service.ee.d.ts +7 -6
  201. package/dist/modules/source-control.ee/source-control-status.service.ee.js +18 -1
  202. package/dist/modules/source-control.ee/source-control-status.service.ee.js.map +1 -1
  203. package/dist/modules/source-control.ee/source-control.controller.ee.d.ts +10 -10
  204. package/dist/modules/source-control.ee/source-control.service.ee.d.ts +5 -5
  205. package/dist/modules/source-control.ee/source-control.service.ee.js +2 -2
  206. package/dist/modules/source-control.ee/source-control.service.ee.js.map +1 -1
  207. package/dist/modules/source-control.ee/types/exportable-tags.d.ts +4 -2
  208. package/dist/modules/sso-oidc/oidc.controller.ee.d.ts +1 -1
  209. package/dist/modules/sso-oidc/oidc.service.ee.d.ts +2 -0
  210. package/dist/modules/sso-oidc/oidc.service.ee.js +16 -6
  211. package/dist/modules/sso-oidc/oidc.service.ee.js.map +1 -1
  212. package/dist/modules/sso-saml/saml-validator.d.ts +1 -0
  213. package/dist/modules/sso-saml/saml-validator.js +5 -3
  214. package/dist/modules/sso-saml/saml-validator.js.map +1 -1
  215. package/dist/modules/sso-saml/saml.service.ee.js +2 -1
  216. package/dist/modules/sso-saml/saml.service.ee.js.map +1 -1
  217. package/dist/node-types.js +9 -6
  218. package/dist/node-types.js.map +1 -1
  219. package/dist/public-api/v1/handlers/credentials/credentials.service.js +1 -0
  220. package/dist/public-api/v1/handlers/credentials/credentials.service.js.map +1 -1
  221. package/dist/scaling/multi-main-setup.ee.d.ts +3 -2
  222. package/dist/scaling/multi-main-setup.ee.js +11 -2
  223. package/dist/scaling/multi-main-setup.ee.js.map +1 -1
  224. package/dist/server.js +0 -6
  225. package/dist/server.js.map +1 -1
  226. package/dist/services/ai-workflow-builder.service.d.ts +3 -1
  227. package/dist/services/ai-workflow-builder.service.js +16 -3
  228. package/dist/services/ai-workflow-builder.service.js.map +1 -1
  229. package/dist/services/dynamic-node-parameters.service.d.ts +1 -0
  230. package/dist/services/dynamic-node-parameters.service.js +15 -2
  231. package/dist/services/dynamic-node-parameters.service.js.map +1 -1
  232. package/dist/services/frontend.service.js +3 -2
  233. package/dist/services/frontend.service.js.map +1 -1
  234. package/dist/services/pruning/workflow-history-compaction.service.d.ts +3 -1
  235. package/dist/services/pruning/workflow-history-compaction.service.js +16 -9
  236. package/dist/services/pruning/workflow-history-compaction.service.js.map +1 -1
  237. package/dist/services/rate-limit.service.d.ts +11 -0
  238. package/dist/services/rate-limit.service.js +78 -0
  239. package/dist/services/rate-limit.service.js.map +1 -0
  240. package/dist/services/static-auth-service.d.ts +4 -0
  241. package/dist/services/static-auth-service.js +30 -0
  242. package/dist/services/static-auth-service.js.map +1 -0
  243. package/dist/tool-generation/ai-tools.d.ts +7 -0
  244. package/dist/tool-generation/ai-tools.js +83 -0
  245. package/dist/tool-generation/ai-tools.js.map +1 -0
  246. package/dist/tool-generation/hitl-tools.d.ts +7 -0
  247. package/dist/tool-generation/hitl-tools.js +150 -0
  248. package/dist/tool-generation/hitl-tools.js.map +1 -0
  249. package/dist/tool-generation/index.d.ts +3 -0
  250. package/dist/tool-generation/index.js +16 -0
  251. package/dist/tool-generation/index.js.map +1 -0
  252. package/dist/tool-generation/utils.d.ts +4 -0
  253. package/dist/tool-generation/utils.js +29 -0
  254. package/dist/tool-generation/utils.js.map +1 -0
  255. package/dist/webhooks/waiting-webhooks.js +19 -1
  256. package/dist/webhooks/waiting-webhooks.js.map +1 -1
  257. package/dist/webhooks/webhook.service.d.ts +6 -0
  258. package/dist/webhooks/webhook.service.js +49 -0
  259. package/dist/webhooks/webhook.service.js.map +1 -1
  260. package/dist/workflows/workflow.service.d.ts +8 -2
  261. package/dist/workflows/workflow.service.ee.d.ts +1 -0
  262. package/dist/workflows/workflow.service.ee.js +45 -0
  263. package/dist/workflows/workflow.service.ee.js.map +1 -1
  264. package/dist/workflows/workflow.service.js +49 -2
  265. package/dist/workflows/workflow.service.js.map +1 -1
  266. package/package.json +17 -17
  267. package/dist/ldap.ee/constants.js.map +0 -1
  268. package/dist/ldap.ee/helpers.ee.js.map +0 -1
  269. package/dist/ldap.ee/ldap.controller.ee.js.map +0 -1
  270. package/dist/ldap.ee/ldap.service.ee.js.map +0 -1
  271. package/dist/modules/dynamic-credentials.ee/credential-resolvers/stub-credential-resolver.d.ts +0 -28
  272. package/dist/modules/dynamic-credentials.ee/credential-resolvers/stub-credential-resolver.js +0 -86
  273. package/dist/modules/dynamic-credentials.ee/credential-resolvers/stub-credential-resolver.js.map +0 -1
  274. /package/dist/{ldap.ee → modules/ldap.ee}/constants.d.ts +0 -0
  275. /package/dist/{ldap.ee → modules/ldap.ee}/constants.js +0 -0
  276. /package/dist/{ldap.ee → modules/ldap.ee}/types.d.ts +0 -0
  277. /package/dist/{ldap.ee → modules/ldap.ee}/types.js +0 -0
@@ -0,0 +1,83 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.findLastCalloutIndex = findLastCalloutIndex;
4
+ exports.convertNodeToAiTool = convertNodeToAiTool;
5
+ exports.createAiTools = createAiTools;
6
+ const n8n_workflow_1 = require("n8n-workflow");
7
+ const utils_1 = require("./utils");
8
+ function findLastCalloutIndex(properties) {
9
+ for (let i = properties.length - 1; i >= 0; i--) {
10
+ if (properties[i].type === 'callout')
11
+ return i;
12
+ }
13
+ return -1;
14
+ }
15
+ function convertNodeToAiTool(item) {
16
+ if ((0, utils_1.isFullDescription)(item.description)) {
17
+ item.description.name += 'Tool';
18
+ item.description.inputs = [];
19
+ item.description.outputs = [n8n_workflow_1.NodeConnectionTypes.AiTool];
20
+ item.description.displayName += ' Tool';
21
+ delete item.description.usableAsTool;
22
+ const hasResource = item.description.properties.some((prop) => prop.name === 'resource');
23
+ const hasOperation = item.description.properties.some((prop) => prop.name === 'operation');
24
+ if (!item.description.properties.map((prop) => prop.name).includes('toolDescription')) {
25
+ const descriptionType = {
26
+ displayName: 'Tool Description',
27
+ name: 'descriptionType',
28
+ type: 'options',
29
+ noDataExpression: true,
30
+ options: [
31
+ {
32
+ name: 'Set Automatically',
33
+ value: 'auto',
34
+ description: 'Automatically set based on resource and operation',
35
+ },
36
+ {
37
+ name: 'Set Manually',
38
+ value: 'manual',
39
+ description: 'Manually set the description',
40
+ },
41
+ ],
42
+ default: 'auto',
43
+ };
44
+ const descProp = {
45
+ displayName: 'Description',
46
+ name: 'toolDescription',
47
+ type: 'string',
48
+ default: item.description.description,
49
+ required: true,
50
+ typeOptions: { rows: 2 },
51
+ description: 'Explain to the LLM what this tool does, a good, specific description would allow LLMs to produce expected results much more often',
52
+ };
53
+ const lastCallout = findLastCalloutIndex(item.description.properties);
54
+ item.description.properties.splice(lastCallout + 1, 0, descProp);
55
+ if (hasResource || hasOperation) {
56
+ item.description.properties.splice(lastCallout + 1, 0, descriptionType);
57
+ descProp.displayOptions = {
58
+ show: {
59
+ descriptionType: ['manual'],
60
+ },
61
+ };
62
+ }
63
+ }
64
+ }
65
+ (0, utils_1.setToolCodex)(item.description, 'Other Tools', true);
66
+ return item;
67
+ }
68
+ function createAiTools(types, known) {
69
+ const usableNodes = types.nodes.filter((nodeType) => Boolean(nodeType.usableAsTool));
70
+ for (const usableNode of usableNodes) {
71
+ const description = typeof usableNode.usableAsTool === 'object'
72
+ ? {
73
+ ...(0, n8n_workflow_1.deepCopy)(usableNode),
74
+ ...usableNode.usableAsTool?.replacements,
75
+ }
76
+ : (0, n8n_workflow_1.deepCopy)(usableNode);
77
+ const wrapped = convertNodeToAiTool({ description }).description;
78
+ types.nodes.push(wrapped);
79
+ known.nodes[wrapped.name] = { ...known.nodes[usableNode.name] };
80
+ (0, utils_1.copyCredentialSupport)(known, usableNode.name, wrapped.name);
81
+ }
82
+ }
83
+ //# sourceMappingURL=ai-tools.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ai-tools.js","sourceRoot":"","sources":["../../src/tool-generation/ai-tools.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ import type { Types } from 'n8n-core';
2
+ import type { INodeTypeBaseDescription, INodeTypeDescription, KnownNodesAndCredentials } from 'n8n-workflow';
3
+ export declare function hasSendAndWaitOperation(nodeType: INodeTypeDescription): boolean;
4
+ export declare function convertNodeToHitlTool<T extends object & {
5
+ description: INodeTypeDescription | INodeTypeBaseDescription;
6
+ }>(item: T): T;
7
+ export declare function createHitlTools(types: Types, known: KnownNodesAndCredentials): void;
@@ -0,0 +1,150 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.hasSendAndWaitOperation = hasSendAndWaitOperation;
4
+ exports.convertNodeToHitlTool = convertNodeToHitlTool;
5
+ exports.createHitlTools = createHitlTools;
6
+ const n8n_workflow_1 = require("n8n-workflow");
7
+ const utils_1 = require("./utils");
8
+ function hasSendAndWaitOperation(nodeType) {
9
+ if (nodeType.name.endsWith('Tool')) {
10
+ return false;
11
+ }
12
+ if (!nodeType.webhooks || nodeType.webhooks.length === 0) {
13
+ return false;
14
+ }
15
+ const operationProps = nodeType.properties.filter((p) => p.name === 'operation');
16
+ if (operationProps.length === 0) {
17
+ return false;
18
+ }
19
+ for (const operationProp of operationProps) {
20
+ if (!Array.isArray(operationProp.options))
21
+ continue;
22
+ const hasSendAndWait = operationProp.options.some((opt) => typeof opt === 'object' && 'value' in opt && opt.value === n8n_workflow_1.SEND_AND_WAIT_OPERATION);
23
+ if (hasSendAndWait) {
24
+ return true;
25
+ }
26
+ }
27
+ return false;
28
+ }
29
+ function findSendAndWaitResource(properties) {
30
+ for (const prop of properties) {
31
+ if (prop.name === 'operation' && Array.isArray(prop.options)) {
32
+ const hasSendAndWait = prop.options.some((opt) => typeof opt === 'object' && 'value' in opt && opt.value === n8n_workflow_1.SEND_AND_WAIT_OPERATION);
33
+ if (hasSendAndWait && prop.displayOptions?.show?.resource) {
34
+ const resources = prop.displayOptions.show.resource;
35
+ if (Array.isArray(resources) && resources.length > 0) {
36
+ return resources[0];
37
+ }
38
+ }
39
+ }
40
+ }
41
+ return undefined;
42
+ }
43
+ function filterHitlToolProperties(properties, sendAndWaitResource) {
44
+ const filtered = [];
45
+ filtered.push({
46
+ displayName: 'Message',
47
+ name: 'message',
48
+ type: 'string',
49
+ default: '=The agent wants to call {{ $tool.name }}',
50
+ required: true,
51
+ typeOptions: { rows: 3 },
52
+ description: 'Message to send for approval. Use expressions to include tool details: {{ $tool.parameters }}, {{ $json.toolCallId }}',
53
+ });
54
+ for (const prop of properties) {
55
+ if (prop.name === 'resource') {
56
+ if (sendAndWaitResource) {
57
+ filtered.push({
58
+ displayName: 'Resource',
59
+ name: 'resource',
60
+ type: 'hidden',
61
+ default: sendAndWaitResource,
62
+ });
63
+ }
64
+ continue;
65
+ }
66
+ if (prop.name === 'operation') {
67
+ filtered.push({
68
+ displayName: 'Operation',
69
+ name: 'operation',
70
+ type: 'hidden',
71
+ default: n8n_workflow_1.SEND_AND_WAIT_OPERATION,
72
+ });
73
+ continue;
74
+ }
75
+ if (prop.name === 'message') {
76
+ continue;
77
+ }
78
+ if (prop.name === 'responseType') {
79
+ filtered.push({
80
+ displayName: 'Response Type',
81
+ name: 'responseType',
82
+ type: 'hidden',
83
+ default: 'approval',
84
+ });
85
+ continue;
86
+ }
87
+ if (prop.name === 'approvalOptions') {
88
+ filtered.push((0, n8n_workflow_1.deepCopy)(prop));
89
+ continue;
90
+ }
91
+ filtered.push((0, n8n_workflow_1.deepCopy)(prop));
92
+ }
93
+ return filtered;
94
+ }
95
+ function convertNodeToHitlTool(item) {
96
+ if ((0, utils_1.isFullDescription)(item.description)) {
97
+ const originalDisplayName = item.description.displayName;
98
+ const sendAndWaitResource = findSendAndWaitResource(item.description.properties);
99
+ item.description.name += 'HitlTool';
100
+ item.description.displayName = originalDisplayName;
101
+ item.description.subtitle = 'Send and wait';
102
+ item.description.description = 'Request human approval for tools';
103
+ item.description.defaults = {
104
+ ...item.description.defaults,
105
+ name: originalDisplayName,
106
+ };
107
+ item.description.skipNameGeneration = true;
108
+ item.description.inputs = [
109
+ {
110
+ displayName: 'Tool',
111
+ type: n8n_workflow_1.NodeConnectionTypes.AiTool,
112
+ required: true,
113
+ },
114
+ ];
115
+ item.description.outputs = [
116
+ {
117
+ displayName: 'Human review',
118
+ type: n8n_workflow_1.NodeConnectionTypes.AiTool,
119
+ filter: {
120
+ nodes: ['@n8n/n8n-nodes-langchain.agent', '@n8n/n8n-nodes-langchain.agentTool'],
121
+ },
122
+ },
123
+ ];
124
+ item.description.properties = filterHitlToolProperties(item.description.properties, sendAndWaitResource);
125
+ }
126
+ (0, utils_1.setToolCodex)(item.description, 'Human in the Loop');
127
+ const nodeItem = item;
128
+ if (nodeItem.execute) {
129
+ const originalExecute = nodeItem.execute;
130
+ nodeItem.execute = async function () {
131
+ const node = this.getNode();
132
+ node.rewireOutputLogTo = n8n_workflow_1.NodeConnectionTypes.AiTool;
133
+ return await originalExecute.call(this);
134
+ };
135
+ }
136
+ return item;
137
+ }
138
+ function createHitlTools(types, known) {
139
+ const sendAndWaitNodes = types.nodes.filter(hasSendAndWaitOperation);
140
+ for (const sendAndWaitNode of sendAndWaitNodes) {
141
+ const description = (0, n8n_workflow_1.deepCopy)(sendAndWaitNode);
142
+ const wrapped = convertNodeToHitlTool({ description }).description;
143
+ types.nodes.push(wrapped);
144
+ known.nodes[wrapped.name] = {
145
+ ...known.nodes[sendAndWaitNode.name],
146
+ };
147
+ (0, utils_1.copyCredentialSupport)(known, sendAndWaitNode.name, wrapped.name);
148
+ }
149
+ }
150
+ //# sourceMappingURL=hitl-tools.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hitl-tools.js","sourceRoot":"","sources":["../../src/tool-generation/hitl-tools.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ export { createAiTools, convertNodeToAiTool, findLastCalloutIndex } from './ai-tools';
2
+ export { createHitlTools, convertNodeToHitlTool, hasSendAndWaitOperation, } from './hitl-tools';
3
+ export { copyCredentialSupport, isFullDescription, setToolCodex } from './utils';
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.setToolCodex = exports.isFullDescription = exports.copyCredentialSupport = exports.hasSendAndWaitOperation = exports.convertNodeToHitlTool = exports.createHitlTools = exports.findLastCalloutIndex = exports.convertNodeToAiTool = exports.createAiTools = void 0;
4
+ var ai_tools_1 = require("./ai-tools");
5
+ Object.defineProperty(exports, "createAiTools", { enumerable: true, get: function () { return ai_tools_1.createAiTools; } });
6
+ Object.defineProperty(exports, "convertNodeToAiTool", { enumerable: true, get: function () { return ai_tools_1.convertNodeToAiTool; } });
7
+ Object.defineProperty(exports, "findLastCalloutIndex", { enumerable: true, get: function () { return ai_tools_1.findLastCalloutIndex; } });
8
+ var hitl_tools_1 = require("./hitl-tools");
9
+ Object.defineProperty(exports, "createHitlTools", { enumerable: true, get: function () { return hitl_tools_1.createHitlTools; } });
10
+ Object.defineProperty(exports, "convertNodeToHitlTool", { enumerable: true, get: function () { return hitl_tools_1.convertNodeToHitlTool; } });
11
+ Object.defineProperty(exports, "hasSendAndWaitOperation", { enumerable: true, get: function () { return hitl_tools_1.hasSendAndWaitOperation; } });
12
+ var utils_1 = require("./utils");
13
+ Object.defineProperty(exports, "copyCredentialSupport", { enumerable: true, get: function () { return utils_1.copyCredentialSupport; } });
14
+ Object.defineProperty(exports, "isFullDescription", { enumerable: true, get: function () { return utils_1.isFullDescription; } });
15
+ Object.defineProperty(exports, "setToolCodex", { enumerable: true, get: function () { return utils_1.setToolCodex; } });
16
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tool-generation/index.ts"],"names":[],"mappings":";;;AAAA,uCAAsF;AAA7E,yGAAA,aAAa,OAAA;AAAE,+GAAA,mBAAmB,OAAA;AAAE,gHAAA,oBAAoB,OAAA;AACjE,2CAIsB;AAHrB,6GAAA,eAAe,OAAA;AACf,mHAAA,qBAAqB,OAAA;AACrB,qHAAA,uBAAuB,OAAA;AAExB,iCAAiF;AAAxE,8GAAA,qBAAqB,OAAA;AAAE,0GAAA,iBAAiB,OAAA;AAAE,qGAAA,YAAY,OAAA"}
@@ -0,0 +1,4 @@
1
+ import type { INodeTypeBaseDescription, INodeTypeDescription, KnownNodesAndCredentials } from 'n8n-workflow';
2
+ export declare function isFullDescription(obj: unknown): obj is INodeTypeDescription;
3
+ export declare function copyCredentialSupport(known: KnownNodesAndCredentials, originalNodeName: string, newNodeName: string): void;
4
+ export declare function setToolCodex(description: INodeTypeDescription | INodeTypeBaseDescription, toolSubcategory: string, preserveExisting?: boolean): void;
@@ -0,0 +1,29 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.isFullDescription = isFullDescription;
4
+ exports.copyCredentialSupport = copyCredentialSupport;
5
+ exports.setToolCodex = setToolCodex;
6
+ function isFullDescription(obj) {
7
+ return typeof obj === 'object' && obj !== null && 'properties' in obj;
8
+ }
9
+ function copyCredentialSupport(known, originalNodeName, newNodeName) {
10
+ const credentialNames = Object.entries(known.credentials)
11
+ .filter(([_, credential]) => credential?.supportedNodes?.includes(originalNodeName))
12
+ .map(([credentialName]) => credentialName);
13
+ credentialNames.forEach((name) => {
14
+ known.credentials[name]?.supportedNodes?.push(newNodeName);
15
+ });
16
+ }
17
+ function setToolCodex(description, toolSubcategory, preserveExisting = false) {
18
+ const resources = description.codex?.resources ?? {};
19
+ const existingToolsSubcategory = description.codex?.subcategories?.Tools;
20
+ description.codex = {
21
+ categories: ['AI'],
22
+ subcategories: {
23
+ AI: ['Tools'],
24
+ Tools: preserveExisting && existingToolsSubcategory ? existingToolsSubcategory : [toolSubcategory],
25
+ },
26
+ resources,
27
+ };
28
+ }
29
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/tool-generation/utils.ts"],"names":[],"mappings":";;AASA,8CAEC;AAMD,sDAYC;AAMD,oCAiBC;AA3CD,SAAgB,iBAAiB,CAAC,GAAY;IAC7C,OAAO,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,IAAI,IAAI,YAAY,IAAI,GAAG,CAAC;AACvE,CAAC;AAMD,SAAgB,qBAAqB,CACpC,KAA+B,EAC/B,gBAAwB,EACxB,WAAmB;IAEnB,MAAM,eAAe,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC;SACvD,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,UAAU,CAAC,EAAE,EAAE,CAAC,UAAU,EAAE,cAAc,EAAE,QAAQ,CAAC,gBAAgB,CAAC,CAAC;SACnF,GAAG,CAAC,CAAC,CAAC,cAAc,CAAC,EAAE,EAAE,CAAC,cAAc,CAAC,CAAC;IAE5C,eAAe,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;QAChC,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,cAAc,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;IAC5D,CAAC,CAAC,CAAC;AACJ,CAAC;AAMD,SAAgB,YAAY,CAC3B,WAA4D,EAC5D,eAAuB,EACvB,gBAAgB,GAAG,KAAK;IAExB,MAAM,SAAS,GAAG,WAAW,CAAC,KAAK,EAAE,SAAS,IAAI,EAAE,CAAC;IACrD,MAAM,wBAAwB,GAAG,WAAW,CAAC,KAAK,EAAE,aAAa,EAAE,KAAK,CAAC;IAEzE,WAAW,CAAC,KAAK,GAAG;QACnB,UAAU,EAAE,CAAC,IAAI,CAAC;QAClB,aAAa,EAAE;YACd,EAAE,EAAE,CAAC,OAAO,CAAC;YACb,KAAK,EACJ,gBAAgB,IAAI,wBAAwB,CAAC,CAAC,CAAC,wBAAwB,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC;SAC5F;QACD,SAAS;KACT,CAAC;AACH,CAAC"}
@@ -170,7 +170,25 @@ let WaitingWebhooks = class WaitingWebhooks {
170
170
  async getWebhookExecutionData({ execution, req, res, lastNodeExecuted, executionId, suffix, }) {
171
171
  this.disableNode(execution, req.method);
172
172
  execution.data.waitTill = undefined;
173
- execution.data.resultData.runData[lastNodeExecuted].pop();
173
+ const nodeExecutionStack = execution.data.executionData?.nodeExecutionStack;
174
+ const executionStackEntry = nodeExecutionStack?.[0];
175
+ const isHitlNode = executionStackEntry?.node?.type?.endsWith('HitlTool') ?? false;
176
+ if (isHitlNode && executionStackEntry) {
177
+ executionStackEntry.node.rewireOutputLogTo = n8n_workflow_1.NodeConnectionTypes.AiTool;
178
+ }
179
+ const runDataArray = execution.data.resultData.runData[lastNodeExecuted];
180
+ const entryToPop = runDataArray[runDataArray.length - 1];
181
+ const preservedInputOverride = entryToPop?.inputOverride;
182
+ runDataArray.pop();
183
+ if (preservedInputOverride) {
184
+ runDataArray.push({
185
+ startTime: 0,
186
+ executionTime: 0,
187
+ executionIndex: 0,
188
+ source: entryToPop?.source ?? [],
189
+ inputOverride: preservedInputOverride,
190
+ });
191
+ }
174
192
  const { workflowData } = execution;
175
193
  const workflow = this.createWorkflow(workflowData);
176
194
  const workflowStartNode = workflow.getNode(lastNodeExecuted);
@@ -1 +1 @@
1
- {"version":3,"file":"waiting-webhooks.js","sourceRoot":"","sources":["../../src/webhooks/waiting-webhooks.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,wDAA6C;AAE7C,gCAA8C;AAC9C,gCAAkC;AAClC,oDAA4B;AAE5B,uCAKkB;AAClB,+CAOsB;AAEtB,2EAAqE;AACrE,uDAAmD;AAOnD,4EAAwE;AACxE,8EAAyE;AACzE,kEAAuF;AACvF,6CAAyC;AACzC,2EAA6D;AAC7D,kGAAoF;AACpF,iDAA8C;AAQvC,IAAM,eAAe,GAArB,MAAM,eAAe;IAG3B,YACoB,MAAc,EACd,SAAoB,EACtB,mBAAwC,EACxC,cAA8B,EAC9B,gBAAkC;QAJhC,WAAM,GAAN,MAAM,CAAQ;QACd,cAAS,GAAT,SAAS,CAAW;QACtB,wBAAmB,GAAnB,mBAAmB,CAAqB;QACxC,mBAAc,GAAd,cAAc,CAAgB;QAC9B,qBAAgB,GAAhB,gBAAgB,CAAkB;QAP1C,iBAAY,GAAG,KAAK,CAAC;IAQ5B,CAAC;IAIJ,KAAK,CAAC,wBAAwB;QAG7B,OAAO;YACN,cAAc,EAAE,GAAG;SACnB,CAAC;IACH,CAAC;IAES,kBAAkB,CAAC,MAAc,EAAE,WAAmB;QAC/D,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,6BAA6B,MAAM,oBAAoB,WAAW,GAAG,CAAC,CAAC;IAC1F,CAAC;IAES,WAAW,CAAC,SAA6B,EAAE,OAAgB;QACpE,SAAS,CAAC,IAAI,CAAC,aAAc,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;IAC1E,CAAC;IAEO,oBAAoB,CAAC,KAAa,EAAE,MAA0B;QACrE,OAAO,CACN,MAAM;YACN,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CACtB,CAAC,IAAI,EAAE,EAAE,CACR,KAAK,CAAC,IAAI,CAAC,CAAC,EAAE,KAAK,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC,UAAU,CAAC,SAAS,KAAK,sCAAuB,CAC1F,CACD,CAAC;IACH,CAAC;IAGS,cAAc,CAAC,YAA2B;QACnD,OAAO,IAAI,uBAAQ,CAAC;YACnB,EAAE,EAAE,YAAY,CAAC,EAAE;YACnB,IAAI,EAAE,YAAY,CAAC,IAAI;YACvB,KAAK,EAAE,YAAY,CAAC,KAAK;YACzB,WAAW,EAAE,YAAY,CAAC,WAAW;YACrC,MAAM,EAAE,IAAA,yDAAuC,EAAC,YAAY,CAAC;YAC7D,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,UAAU,EAAE,YAAY,CAAC,UAAU;YACnC,QAAQ,EAAE,YAAY,CAAC,QAAQ;SAC/B,CAAC,CAAC;IACJ,CAAC;IAES,KAAK,CAAC,YAAY,CAAC,WAAmB;QAC/C,OAAO,MAAM,IAAI,CAAC,mBAAmB,CAAC,mBAAmB,CAAC,WAAW,EAAE;YACtE,WAAW,EAAE,IAAI;YACjB,aAAa,EAAE,IAAI;SACnB,CAAC,CAAC;IACJ,CAAC;IAED,0BAA0B,CAAC,GAAoB;QAC9C,IAAI,CAAC;YACJ,MAAM,WAAW,GAAG,GAAG,CAAC,KAAK,CAAC,oCAAyB,CAAC,CAAC;YAEzD,IAAI,OAAO,WAAW,KAAK,QAAQ;gBAAE,OAAO,KAAK,CAAC;YAIlD,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,UAAU,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC;YACzD,SAAS,CAAC,YAAY,CAAC,MAAM,CAAC,oCAAyB,CAAC,CAAC;YAEzD,MAAM,aAAa,GAAG,IAAA,+BAAoB,EAAC,SAAS,CAAC,CAAC;YAEtD,MAAM,aAAa,GAAG,IAAA,+BAAoB,EACzC,aAAa,EACb,IAAI,CAAC,gBAAgB,CAAC,mBAAmB,CACzC,CAAC;YAEF,MAAM,KAAK,GAAG,gBAAM,CAAC,eAAe,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC;YAC3F,OAAO,KAAK,CAAC;QACd,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAChB,OAAO,KAAK,CAAC;QACd,CAAC;IACF,CAAC;IAED,KAAK,CAAC,cAAc,CACnB,GAA0B,EAC1B,GAAqB;QAErB,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC;QAEjD,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;QAEjD,IAAA,kDAAsB,EAAC,GAAG,CAAC,CAAC;QAG5B,GAAG,CAAC,MAAM,GAAG,EAAqC,CAAC;QAEnD,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC;QAEvD,IAAI,SAAS,EAAE,IAAI,CAAC,iBAAiB,EAAE,CAAC;YACvC,MAAM,gBAAgB,GAAG,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,gBAA0B,CAAC;YAC9E,MAAM,QAAQ,GAAG,SAAS,CAAC,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,gBAAgB,CAAC,CAAC;YAC7F,MAAM,cAAc,GAAG,QAAQ,EAAE,UAAU,CAAC,SAAS,KAAK,sCAAuB,CAAC;YAElF,IAAI,cAAc,IAAI,CAAC,IAAI,CAAC,0BAA0B,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC7D,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,eAAe,EAAE,CAAC,CAAC;gBACjD,OAAO,EAAE,iBAAiB,EAAE,IAAI,EAAE,CAAC;YACpC,CAAC;QACF,CAAC;QAED,IAAI,CAAC,SAAS,EAAE,CAAC;YAChB,MAAM,IAAI,+BAAa,CAAC,kBAAkB,WAAW,mBAAmB,CAAC,CAAC;QAC3E,CAAC;QAED,IAAI,SAAS,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;YACpC,MAAM,IAAI,8BAAa,CAAC,kBAAkB,WAAW,uBAAuB,CAAC,CAAC;QAC/E,CAAC;QAED,IAAI,SAAS,CAAC,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC;YACvC,MAAM,OAAO,GAAG,kBAAkB,WAAW,4BAA4B,CAAC;YAC1E,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC,CAAC;YACvE,MAAM,IAAI,8BAAa,CAAC,OAAO,CAAC,CAAC;QAClC,CAAC;QAED,IAAI,SAAS,CAAC,QAAQ,EAAE,CAAC;YACxB,MAAM,EAAE,YAAY,EAAE,GAAG,SAAS,CAAC;YACnC,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC;YACpD,IAAI,IAAI,CAAC,oBAAoB,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,CAAC;gBAC9C,GAAG,CAAC,MAAM,CAAC,kCAAkC,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,CAAC,CAAC;gBACzE,OAAO,EAAE,iBAAiB,EAAE,IAAI,EAAE,CAAC;YACpC,CAAC;iBAAM,CAAC;gBACP,MAAM,IAAI,8BAAa,CAAC,kBAAkB,WAAW,wBAAwB,CAAC,CAAC;YAChF,CAAC;QACF,CAAC;QAED,MAAM,gBAAgB,GAAG,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,gBAA0B,CAAC;QAE9E,IAAA,qBAAS,EAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QAEpB,OAAO,MAAM,IAAI,CAAC,uBAAuB,CAAC;YACzC,SAAS;YACT,GAAG;YACH,GAAG;YACH,gBAAgB;YAChB,WAAW;YACX,MAAM;SACN,CAAC,CAAC;IACJ,CAAC;IAES,KAAK,CAAC,uBAAuB,CAAC,EACvC,SAAS,EACT,GAAG,EACH,GAAG,EACH,gBAAgB,EAChB,WAAW,EACX,MAAM,GAQN;QAGA,IAAI,CAAC,WAAW,CAAC,SAAS,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;QAGxC,SAAS,CAAC,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAC;QAGpC,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC,GAAG,EAAE,CAAC;QAE1D,MAAM,EAAE,YAAY,EAAE,GAAG,SAAS,CAAC;QACnC,MAAM,QAAQ,GAAG,IAAI,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC;QAEnD,MAAM,iBAAiB,GAAG,QAAQ,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC;QAC7D,IAAI,iBAAiB,KAAK,IAAI,EAAE,CAAC;YAChC,MAAM,IAAI,+BAAa,CAAC,yCAAyC,CAAC,CAAC;QACpE,CAAC;QAED,MAAM,cAAc,GAAG,MAAM,6BAA6B,CAAC,OAAO,CAAC;YAClE,UAAU,EAAE,QAAQ,CAAC,EAAE;SACvB,CAAC,CAAC;QACH,MAAM,WAAW,GAAG,IAAI,CAAC,cAAc;aACrC,eAAe,CAAC,QAAQ,EAAE,iBAAiB,EAAE,cAAc,CAAC;aAC5D,IAAI,CACJ,CAAC,OAAO,EAAE,EAAE,CACX,OAAO,CAAC,UAAU,KAAK,GAAG,CAAC,MAAM;YACjC,OAAO,CAAC,IAAI,KAAK,CAAC,MAAM,IAAI,EAAE,CAAC;YAC/B,OAAO,CAAC,kBAAkB,CAAC,cAAc,KAAK,IAAI;YAClD,CAAC,OAAO,CAAC,kBAAkB,CAAC,QAAQ,KAAK,MAAM,IAAI,KAAK,CAAC,KAAK,IAAI,CAAC,YAAY,CAChF,CAAC;QAEH,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;YAG/B,MAAM,YAAY,GAAG,+BAA+B,WAAW,mEAAmE,CAAC;YAEnI,IAAI,IAAI,CAAC,oBAAoB,CAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,CAAC;gBACvD,GAAG,CAAC,MAAM,CAAC,kCAAkC,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,CAAC,CAAC;gBACzE,OAAO,EAAE,iBAAiB,EAAE,IAAI,EAAE,CAAC;YACpC,CAAC;YAED,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,IAAI,SAAS,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;gBACxE,MAAM,UAAU,GAAG,QAAQ,CAAC,aAAa,CACxC,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,gBAA0B,CACpD,CAAC;gBAEF,MAAM,aAAa,GAAG,UAAU,CAAC,IAAI,CACpC,CAAC,IAAI,EAAE,EAAE,CACR,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,KAAK,6BAAc;oBAC5C,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,KAAK,6BAAc,CAC7C,CAAC;gBAEF,IAAI,aAAa,EAAE,CAAC;oBACnB,OAAO,EAAE,iBAAiB,EAAE,IAAI,EAAE,CAAC;gBACpC,CAAC;YACF,CAAC;YAED,MAAM,IAAI,+BAAa,CAAC,YAAY,CAAC,CAAC;QACvC,CAAC;QAED,MAAM,gBAAgB,GAAG,SAAS,CAAC,IAAI,CAAC;QAExC,OAAO,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YAC5C,KAAK,cAAc,CAAC,cAAc,CACjC,QAAQ,EACR,WAAW,EACX,YAAY,EACZ,iBAAiB,EACjB,SAAS,CAAC,IAAI,EACd,gBAAgB,CAAC,OAAO,EACxB,gBAAgB,EAChB,SAAS,CAAC,EAAE,EACZ,GAAG,EACH,GAAG,EAEH,CAAC,KAAmB,EAAE,IAAY,EAAE,EAAE;gBACrC,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;oBACpB,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC;gBACtB,CAAC;gBACD,OAAO,CAAC,IAAI,CAAC,CAAC;YACf,CAAC,CACD,CAAC;QACH,CAAC,CAAC,CAAC;IACJ,CAAC;CACD,CAAA;AAzPY,0CAAe;0BAAf,eAAe;IAD3B,IAAA,YAAO,GAAE;qCAKmB,uBAAM;QACH,sBAAS;QACD,wBAAmB;QACxB,gCAAc;QACZ,2BAAgB;GARxC,eAAe,CAyP3B"}
1
+ {"version":3,"file":"waiting-webhooks.js","sourceRoot":"","sources":["../../src/webhooks/waiting-webhooks.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,wDAA6C;AAE7C,gCAA8C;AAC9C,gCAAkC;AAClC,oDAA4B;AAE5B,uCAKkB;AAClB,+CAQsB;AAEtB,2EAAqE;AACrE,uDAAmD;AAOnD,4EAAwE;AACxE,8EAAyE;AACzE,kEAAuF;AACvF,6CAAyC;AACzC,2EAA6D;AAC7D,kGAAoF;AACpF,iDAA8C;AAQvC,IAAM,eAAe,GAArB,MAAM,eAAe;IAG3B,YACoB,MAAc,EACd,SAAoB,EACtB,mBAAwC,EACxC,cAA8B,EAC9B,gBAAkC;QAJhC,WAAM,GAAN,MAAM,CAAQ;QACd,cAAS,GAAT,SAAS,CAAW;QACtB,wBAAmB,GAAnB,mBAAmB,CAAqB;QACxC,mBAAc,GAAd,cAAc,CAAgB;QAC9B,qBAAgB,GAAhB,gBAAgB,CAAkB;QAP1C,iBAAY,GAAG,KAAK,CAAC;IAQ5B,CAAC;IAIJ,KAAK,CAAC,wBAAwB;QAG7B,OAAO;YACN,cAAc,EAAE,GAAG;SACnB,CAAC;IACH,CAAC;IAES,kBAAkB,CAAC,MAAc,EAAE,WAAmB;QAC/D,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,6BAA6B,MAAM,oBAAoB,WAAW,GAAG,CAAC,CAAC;IAC1F,CAAC;IAES,WAAW,CAAC,SAA6B,EAAE,OAAgB;QACpE,SAAS,CAAC,IAAI,CAAC,aAAc,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;IAC1E,CAAC;IAEO,oBAAoB,CAAC,KAAa,EAAE,MAA0B;QACrE,OAAO,CACN,MAAM;YACN,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CACtB,CAAC,IAAI,EAAE,EAAE,CACR,KAAK,CAAC,IAAI,CAAC,CAAC,EAAE,KAAK,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC,UAAU,CAAC,SAAS,KAAK,sCAAuB,CAC1F,CACD,CAAC;IACH,CAAC;IAGS,cAAc,CAAC,YAA2B;QACnD,OAAO,IAAI,uBAAQ,CAAC;YACnB,EAAE,EAAE,YAAY,CAAC,EAAE;YACnB,IAAI,EAAE,YAAY,CAAC,IAAI;YACvB,KAAK,EAAE,YAAY,CAAC,KAAK;YACzB,WAAW,EAAE,YAAY,CAAC,WAAW;YACrC,MAAM,EAAE,IAAA,yDAAuC,EAAC,YAAY,CAAC;YAC7D,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,UAAU,EAAE,YAAY,CAAC,UAAU;YACnC,QAAQ,EAAE,YAAY,CAAC,QAAQ;SAC/B,CAAC,CAAC;IACJ,CAAC;IAES,KAAK,CAAC,YAAY,CAAC,WAAmB;QAC/C,OAAO,MAAM,IAAI,CAAC,mBAAmB,CAAC,mBAAmB,CAAC,WAAW,EAAE;YACtE,WAAW,EAAE,IAAI;YACjB,aAAa,EAAE,IAAI;SACnB,CAAC,CAAC;IACJ,CAAC;IAED,0BAA0B,CAAC,GAAoB;QAC9C,IAAI,CAAC;YACJ,MAAM,WAAW,GAAG,GAAG,CAAC,KAAK,CAAC,oCAAyB,CAAC,CAAC;YAEzD,IAAI,OAAO,WAAW,KAAK,QAAQ;gBAAE,OAAO,KAAK,CAAC;YAIlD,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,UAAU,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC;YACzD,SAAS,CAAC,YAAY,CAAC,MAAM,CAAC,oCAAyB,CAAC,CAAC;YAEzD,MAAM,aAAa,GAAG,IAAA,+BAAoB,EAAC,SAAS,CAAC,CAAC;YAEtD,MAAM,aAAa,GAAG,IAAA,+BAAoB,EACzC,aAAa,EACb,IAAI,CAAC,gBAAgB,CAAC,mBAAmB,CACzC,CAAC;YAEF,MAAM,KAAK,GAAG,gBAAM,CAAC,eAAe,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC;YAC3F,OAAO,KAAK,CAAC;QACd,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAChB,OAAO,KAAK,CAAC;QACd,CAAC;IACF,CAAC;IAED,KAAK,CAAC,cAAc,CACnB,GAA0B,EAC1B,GAAqB;QAErB,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC;QAEjD,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;QAEjD,IAAA,kDAAsB,EAAC,GAAG,CAAC,CAAC;QAG5B,GAAG,CAAC,MAAM,GAAG,EAAqC,CAAC;QAEnD,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC;QAEvD,IAAI,SAAS,EAAE,IAAI,CAAC,iBAAiB,EAAE,CAAC;YACvC,MAAM,gBAAgB,GAAG,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,gBAA0B,CAAC;YAC9E,MAAM,QAAQ,GAAG,SAAS,CAAC,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,gBAAgB,CAAC,CAAC;YAC7F,MAAM,cAAc,GAAG,QAAQ,EAAE,UAAU,CAAC,SAAS,KAAK,sCAAuB,CAAC;YAElF,IAAI,cAAc,IAAI,CAAC,IAAI,CAAC,0BAA0B,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC7D,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,eAAe,EAAE,CAAC,CAAC;gBACjD,OAAO,EAAE,iBAAiB,EAAE,IAAI,EAAE,CAAC;YACpC,CAAC;QACF,CAAC;QAED,IAAI,CAAC,SAAS,EAAE,CAAC;YAChB,MAAM,IAAI,+BAAa,CAAC,kBAAkB,WAAW,mBAAmB,CAAC,CAAC;QAC3E,CAAC;QAED,IAAI,SAAS,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;YACpC,MAAM,IAAI,8BAAa,CAAC,kBAAkB,WAAW,uBAAuB,CAAC,CAAC;QAC/E,CAAC;QAED,IAAI,SAAS,CAAC,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC;YACvC,MAAM,OAAO,GAAG,kBAAkB,WAAW,4BAA4B,CAAC;YAC1E,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC,CAAC;YACvE,MAAM,IAAI,8BAAa,CAAC,OAAO,CAAC,CAAC;QAClC,CAAC;QAED,IAAI,SAAS,CAAC,QAAQ,EAAE,CAAC;YACxB,MAAM,EAAE,YAAY,EAAE,GAAG,SAAS,CAAC;YACnC,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC;YACpD,IAAI,IAAI,CAAC,oBAAoB,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,CAAC;gBAC9C,GAAG,CAAC,MAAM,CAAC,kCAAkC,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,CAAC,CAAC;gBACzE,OAAO,EAAE,iBAAiB,EAAE,IAAI,EAAE,CAAC;YACpC,CAAC;iBAAM,CAAC;gBACP,MAAM,IAAI,8BAAa,CAAC,kBAAkB,WAAW,wBAAwB,CAAC,CAAC;YAChF,CAAC;QACF,CAAC;QAED,MAAM,gBAAgB,GAAG,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,gBAA0B,CAAC;QAE9E,IAAA,qBAAS,EAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QAEpB,OAAO,MAAM,IAAI,CAAC,uBAAuB,CAAC;YACzC,SAAS;YACT,GAAG;YACH,GAAG;YACH,gBAAgB;YAChB,WAAW;YACX,MAAM;SACN,CAAC,CAAC;IACJ,CAAC;IAES,KAAK,CAAC,uBAAuB,CAAC,EACvC,SAAS,EACT,GAAG,EACH,GAAG,EACH,gBAAgB,EAChB,WAAW,EACX,MAAM,GAQN;QAGA,IAAI,CAAC,WAAW,CAAC,SAAS,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;QAGxC,SAAS,CAAC,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAC;QAGpC,MAAM,kBAAkB,GAAG,SAAS,CAAC,IAAI,CAAC,aAAa,EAAE,kBAAkB,CAAC;QAC5E,MAAM,mBAAmB,GAAG,kBAAkB,EAAE,CAAC,CAAC,CAAC,CAAC;QACpD,MAAM,UAAU,GAAG,mBAAmB,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,CAAC,UAAU,CAAC,IAAI,KAAK,CAAC;QAElF,IAAI,UAAU,IAAI,mBAAmB,EAAE,CAAC;YAEvC,mBAAmB,CAAC,IAAI,CAAC,iBAAiB,GAAG,kCAAmB,CAAC,MAAM,CAAC;QACzE,CAAC;QAGD,MAAM,YAAY,GAAG,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC;QACzE,MAAM,UAAU,GAAG,YAAY,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QACzD,MAAM,sBAAsB,GAAG,UAAU,EAAE,aAAa,CAAC;QAGzD,YAAY,CAAC,GAAG,EAAE,CAAC;QAInB,IAAI,sBAAsB,EAAE,CAAC;YAC5B,YAAY,CAAC,IAAI,CAAC;gBACjB,SAAS,EAAE,CAAC;gBACZ,aAAa,EAAE,CAAC;gBAChB,cAAc,EAAE,CAAC;gBACjB,MAAM,EAAE,UAAU,EAAE,MAAM,IAAI,EAAE;gBAChC,aAAa,EAAE,sBAAsB;aACrC,CAAC,CAAC;QACJ,CAAC;QAED,MAAM,EAAE,YAAY,EAAE,GAAG,SAAS,CAAC;QACnC,MAAM,QAAQ,GAAG,IAAI,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC;QAEnD,MAAM,iBAAiB,GAAG,QAAQ,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC;QAC7D,IAAI,iBAAiB,KAAK,IAAI,EAAE,CAAC;YAChC,MAAM,IAAI,+BAAa,CAAC,yCAAyC,CAAC,CAAC;QACpE,CAAC;QAED,MAAM,cAAc,GAAG,MAAM,6BAA6B,CAAC,OAAO,CAAC;YAClE,UAAU,EAAE,QAAQ,CAAC,EAAE;SACvB,CAAC,CAAC;QACH,MAAM,WAAW,GAAG,IAAI,CAAC,cAAc;aACrC,eAAe,CAAC,QAAQ,EAAE,iBAAiB,EAAE,cAAc,CAAC;aAC5D,IAAI,CACJ,CAAC,OAAO,EAAE,EAAE,CACX,OAAO,CAAC,UAAU,KAAK,GAAG,CAAC,MAAM;YACjC,OAAO,CAAC,IAAI,KAAK,CAAC,MAAM,IAAI,EAAE,CAAC;YAC/B,OAAO,CAAC,kBAAkB,CAAC,cAAc,KAAK,IAAI;YAClD,CAAC,OAAO,CAAC,kBAAkB,CAAC,QAAQ,KAAK,MAAM,IAAI,KAAK,CAAC,KAAK,IAAI,CAAC,YAAY,CAChF,CAAC;QAEH,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;YAG/B,MAAM,YAAY,GAAG,+BAA+B,WAAW,mEAAmE,CAAC;YAEnI,IAAI,IAAI,CAAC,oBAAoB,CAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,CAAC;gBACvD,GAAG,CAAC,MAAM,CAAC,kCAAkC,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,CAAC,CAAC;gBACzE,OAAO,EAAE,iBAAiB,EAAE,IAAI,EAAE,CAAC;YACpC,CAAC;YAED,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,IAAI,SAAS,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;gBACxE,MAAM,UAAU,GAAG,QAAQ,CAAC,aAAa,CACxC,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,gBAA0B,CACpD,CAAC;gBAEF,MAAM,aAAa,GAAG,UAAU,CAAC,IAAI,CACpC,CAAC,IAAI,EAAE,EAAE,CACR,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,KAAK,6BAAc;oBAC5C,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,KAAK,6BAAc,CAC7C,CAAC;gBAEF,IAAI,aAAa,EAAE,CAAC;oBACnB,OAAO,EAAE,iBAAiB,EAAE,IAAI,EAAE,CAAC;gBACpC,CAAC;YACF,CAAC;YAED,MAAM,IAAI,+BAAa,CAAC,YAAY,CAAC,CAAC;QACvC,CAAC;QAED,MAAM,gBAAgB,GAAG,SAAS,CAAC,IAAI,CAAC;QAExC,OAAO,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YAC5C,KAAK,cAAc,CAAC,cAAc,CACjC,QAAQ,EACR,WAAW,EACX,YAAY,EACZ,iBAAiB,EACjB,SAAS,CAAC,IAAI,EACd,gBAAgB,CAAC,OAAO,EACxB,gBAAgB,EAChB,SAAS,CAAC,EAAE,EACZ,GAAG,EACH,GAAG,EAEH,CAAC,KAAmB,EAAE,IAAY,EAAE,EAAE;gBACrC,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;oBACpB,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC;gBACtB,CAAC;gBACD,OAAO,CAAC,IAAI,CAAC,CAAC;YACf,CAAC,CACD,CAAC;QACH,CAAC,CAAC,CAAC;IACJ,CAAC;CACD,CAAA;AApRY,0CAAe;0BAAf,eAAe;IAD3B,IAAA,YAAO,GAAE;qCAKmB,uBAAM;QACH,sBAAS;QACD,wBAAmB;QACxB,gCAAc;QACZ,2BAAgB;GARxC,eAAe,CAoR3B"}
@@ -23,7 +23,13 @@ export declare class WebhookService {
23
23
  private deleteWebhooks;
24
24
  getWebhookMethods(rawPath: string): Promise<IHttpRequestMethods[]>;
25
25
  private isDynamicPath;
26
+ getWebhookPath(webhook: IWebhookData): string;
26
27
  getNodeWebhooks(workflow: Workflow, node: INode, additionalData: IWorkflowExecuteAdditionalData, ignoreRestartWebhooks?: boolean): IWebhookData[];
28
+ private _findWebhookConflicts;
29
+ findWebhookConflicts(workflow: Workflow, additionalData: IWorkflowExecuteAdditionalData): Promise<{
30
+ trigger: INode;
31
+ conflict: Partial<WebhookEntity>;
32
+ }[]>;
27
33
  createWebhookIfNotExists(workflow: Workflow, webhookData: IWebhookData, mode: WorkflowExecuteMode, activation: WorkflowActivateMode): Promise<void>;
28
34
  deleteWebhook(workflow: Workflow, webhookData: IWebhookData, mode: WorkflowExecuteMode, activation: WorkflowActivateMode): Promise<void>;
29
35
  private runWebhookMethod;
@@ -130,6 +130,11 @@ let WebhookService = class WebhookService {
130
130
  return false;
131
131
  return path.startsWith(':') || path.includes('/:');
132
132
  }
133
+ getWebhookPath(webhook) {
134
+ return [webhook.path.includes(':') ? webhook.webhookId : undefined, webhook.path]
135
+ .filter((part) => !!part)
136
+ .join('/');
137
+ }
133
138
  getNodeWebhooks(workflow, node, additionalData, ignoreRestartWebhooks = false) {
134
139
  if (node.disabled === true) {
135
140
  return [];
@@ -187,6 +192,50 @@ let WebhookService = class WebhookService {
187
192
  }
188
193
  return returnData;
189
194
  }
195
+ async _findWebhookConflicts(workflow, checkEntries) {
196
+ const conflicts = [];
197
+ const processedWebhooks = new Map();
198
+ const webhookToKey = (webhook) => `${webhook.httpMethod} ${this.getWebhookPath(webhook)}`;
199
+ for (const { node, webhooks } of checkEntries) {
200
+ for (const webhook of webhooks) {
201
+ const webhookKey = webhookToKey(webhook);
202
+ const conflict = processedWebhooks.get(webhookKey);
203
+ if (conflict) {
204
+ conflicts.push({
205
+ trigger: node,
206
+ conflict: {
207
+ workflowId: workflow.id,
208
+ webhookPath: conflict.path,
209
+ method: conflict.httpMethod,
210
+ node: conflict.node,
211
+ webhookId: conflict.webhookId,
212
+ },
213
+ });
214
+ continue;
215
+ }
216
+ const potentialConflict = await this.findWebhook(webhook.httpMethod, this.getWebhookPath(webhook));
217
+ if (potentialConflict && potentialConflict.workflowId !== workflow.id) {
218
+ conflicts.push({
219
+ trigger: node,
220
+ conflict: potentialConflict,
221
+ });
222
+ continue;
223
+ }
224
+ processedWebhooks.set(webhookKey, webhook);
225
+ }
226
+ }
227
+ return conflicts;
228
+ }
229
+ async findWebhookConflicts(workflow, additionalData) {
230
+ const checkEntries = Object.values(workflow.nodes)
231
+ .map((node) => ({
232
+ node,
233
+ webhooks: this.getNodeWebhooks(workflow, node, additionalData)
234
+ .filter(({ path, webhookId }) => path || webhookId),
235
+ }))
236
+ .filter(({ webhooks }) => webhooks.length !== 0);
237
+ return await this._findWebhookConflicts(workflow, checkEntries);
238
+ }
190
239
  async createWebhookIfNotExists(workflow, webhookData, mode, activation) {
191
240
  const webhookExists = await this.runWebhookMethod('checkExists', workflow, webhookData, mode, activation);
192
241
  if (!webhookExists) {
@@ -1 +1 @@
1
- {"version":3,"file":"webhook.service.js","sourceRoot":"","sources":["../../src/webhooks/webhook.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"webhook.service.js","sourceRoot":"","sources":["../../src/webhooks/webhook.service.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { Logger } from '@n8n/backend-common';
1
+ import { LicenseState, Logger } from '@n8n/backend-common';
2
2
  import { GlobalConfig } from '@n8n/config';
3
3
  import type { User, WorkflowEntity } from '@n8n/db';
4
4
  import { SharedWorkflow, ExecutionRepository, FolderRepository, WorkflowTagMappingRepository, SharedWorkflowRepository, WorkflowRepository, WorkflowPublishHistoryRepository } from '@n8n/db';
@@ -19,6 +19,7 @@ import { ProjectService } from '../services/project.service.ee';
19
19
  import { RoleService } from '../services/role.service';
20
20
  import { TagService } from '../services/tag.service';
21
21
  import { WorkflowValidationService } from './workflow-validation.service';
22
+ import { WebhookService } from '../webhooks/webhook.service';
22
23
  export declare class WorkflowService {
23
24
  private readonly logger;
24
25
  private readonly sharedWorkflowRepository;
@@ -41,7 +42,9 @@ export declare class WorkflowService {
41
42
  private readonly workflowPublishHistoryRepository;
42
43
  private readonly workflowValidationService;
43
44
  private readonly nodeTypes;
44
- constructor(logger: Logger, sharedWorkflowRepository: SharedWorkflowRepository, workflowRepository: WorkflowRepository, workflowTagMappingRepository: WorkflowTagMappingRepository, binaryDataService: BinaryDataService, ownershipService: OwnershipService, tagService: TagService, workflowHistoryService: WorkflowHistoryService, externalHooks: ExternalHooks, activeWorkflowManager: ActiveWorkflowManager, roleService: RoleService, workflowSharingService: WorkflowSharingService, projectService: ProjectService, executionRepository: ExecutionRepository, eventService: EventService, globalConfig: GlobalConfig, folderRepository: FolderRepository, workflowFinderService: WorkflowFinderService, workflowPublishHistoryRepository: WorkflowPublishHistoryRepository, workflowValidationService: WorkflowValidationService, nodeTypes: NodeTypes);
45
+ private readonly webhookService;
46
+ private readonly licenseState;
47
+ constructor(logger: Logger, sharedWorkflowRepository: SharedWorkflowRepository, workflowRepository: WorkflowRepository, workflowTagMappingRepository: WorkflowTagMappingRepository, binaryDataService: BinaryDataService, ownershipService: OwnershipService, tagService: TagService, workflowHistoryService: WorkflowHistoryService, externalHooks: ExternalHooks, activeWorkflowManager: ActiveWorkflowManager, roleService: RoleService, workflowSharingService: WorkflowSharingService, projectService: ProjectService, executionRepository: ExecutionRepository, eventService: EventService, globalConfig: GlobalConfig, folderRepository: FolderRepository, workflowFinderService: WorkflowFinderService, workflowPublishHistoryRepository: WorkflowPublishHistoryRepository, workflowValidationService: WorkflowValidationService, nodeTypes: NodeTypes, webhookService: WebhookService, licenseState: LicenseState);
45
48
  getMany(user: User, options?: ListQuery.Options, includeScopes?: boolean, includeFolders?: boolean, onlySharedWithMe?: boolean, requiredScopes?: Scope[]): Promise<{
46
49
  workflows: ((Pick<WorkflowEntity, "id"> & Partial<Pick<WorkflowEntity, "description" | "tags" | "name" | "active" | "versionId" | "activeVersionId" | "createdAt" | "updatedAt">>) | (import("@n8n/db").Folder & {
47
50
  workflowCount?: boolean;
@@ -51,6 +54,7 @@ export declare class WorkflowService {
51
54
  }))[];
52
55
  count: number;
53
56
  }>;
57
+ private addResolvableCredentialsFlag;
54
58
  private processSharedWorkflows;
55
59
  private addSharedRelation;
56
60
  private addUserScopes;
@@ -67,6 +71,8 @@ export declare class WorkflowService {
67
71
  autosaved?: boolean;
68
72
  }): Promise<WorkflowEntity>;
69
73
  private _addToActiveWorkflowManager;
74
+ private _findConflictingWebhooks;
75
+ private _detectWebhookConflicts;
70
76
  activateWorkflow(user: User, workflowId: string, options?: {
71
77
  versionId?: string;
72
78
  name?: string;
@@ -36,6 +36,7 @@ export declare class EnterpriseWorkflowService {
36
36
  id: string;
37
37
  }>): T;
38
38
  getNodesWithInaccessibleCreds(workflow: IWorkflowBase, userCredIds: string[]): import("n8n-workflow").INode[];
39
+ getWorkflowIdsWithResolvableCredentials(workflowIds: string[]): Promise<Set<string>>;
39
40
  transferWorkflow(user: User, workflowId: string, destinationProjectId: string, shareCredentials?: string[], destinationParentFolderId?: string): Promise<{
40
41
  error: {
41
42
  message: string;
@@ -174,6 +174,51 @@ let EnterpriseWorkflowService = class EnterpriseWorkflowService {
174
174
  return allUsedCredentialIds.some((nodeCredId) => nodeCredId && !userCredIds.includes(nodeCredId));
175
175
  });
176
176
  }
177
+ async getWorkflowIdsWithResolvableCredentials(workflowIds) {
178
+ if (workflowIds.length === 0) {
179
+ return new Set();
180
+ }
181
+ const workflows = await this.workflowRepository.findByIds(workflowIds, {
182
+ fields: ['id', 'nodes'],
183
+ });
184
+ const credentialIdToWorkflowIds = new Map();
185
+ for (const workflow of workflows) {
186
+ if (!workflow.nodes)
187
+ continue;
188
+ for (const node of workflow.nodes) {
189
+ if (!node.credentials)
190
+ continue;
191
+ for (const credentialType of Object.keys(node.credentials)) {
192
+ const credentialId = node.credentials[credentialType]?.id;
193
+ if (credentialId) {
194
+ const workflowIdsList = credentialIdToWorkflowIds.get(credentialId) ?? [];
195
+ workflowIdsList.push(workflow.id);
196
+ credentialIdToWorkflowIds.set(credentialId, workflowIdsList);
197
+ }
198
+ }
199
+ }
200
+ }
201
+ if (credentialIdToWorkflowIds.size === 0) {
202
+ return new Set();
203
+ }
204
+ const resolvableCredentials = await this.credentialsRepository.find({
205
+ where: {
206
+ id: (0, typeorm_1.In)(Array.from(credentialIdToWorkflowIds.keys())),
207
+ isResolvable: true,
208
+ },
209
+ select: ['id'],
210
+ });
211
+ const workflowIdsWithResolvableCredentials = new Set();
212
+ for (const credential of resolvableCredentials) {
213
+ const workflowIdsList = credentialIdToWorkflowIds.get(credential.id);
214
+ if (workflowIdsList) {
215
+ for (const workflowId of workflowIdsList) {
216
+ workflowIdsWithResolvableCredentials.add(workflowId);
217
+ }
218
+ }
219
+ }
220
+ return workflowIdsWithResolvableCredentials;
221
+ }
177
222
  async transferWorkflow(user, workflowId, destinationProjectId, shareCredentials = [], destinationParentFolderId) {
178
223
  const workflow = await this.workflowFinderService.findWorkflowForUser(workflowId, user, ['workflow:move'], {
179
224
  includeParentFolder: true,