n8n-workflow 1.98.0 → 1.99.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 (707) hide show
  1. package/dist/{augment-object.d.ts → cjs/augment-object.d.ts} +1 -0
  2. package/dist/cjs/augment-object.d.ts.map +1 -0
  3. package/dist/cjs/augment-object.js +159 -0
  4. package/dist/cjs/augment-object.js.map +1 -0
  5. package/dist/{constants.d.ts → cjs/constants.d.ts} +12 -0
  6. package/dist/cjs/constants.d.ts.map +1 -0
  7. package/dist/cjs/constants.js +112 -0
  8. package/dist/cjs/constants.js.map +1 -0
  9. package/dist/{cron.d.ts → cjs/cron.d.ts} +1 -0
  10. package/dist/cjs/cron.d.ts.map +1 -0
  11. package/dist/cjs/cron.js +37 -0
  12. package/dist/cjs/cron.js.map +1 -0
  13. package/dist/{deferred-promise.d.ts → cjs/deferred-promise.d.ts} +1 -0
  14. package/dist/cjs/deferred-promise.d.ts.map +1 -0
  15. package/dist/cjs/deferred-promise.js +22 -0
  16. package/dist/cjs/deferred-promise.js.map +1 -0
  17. package/dist/{errors → cjs/errors}/abstract/execution-base.error.d.ts +1 -0
  18. package/dist/cjs/errors/abstract/execution-base.error.d.ts.map +1 -0
  19. package/dist/cjs/errors/abstract/execution-base.error.js +50 -0
  20. package/dist/cjs/errors/abstract/execution-base.error.js.map +1 -0
  21. package/dist/cjs/errors/abstract/node.error.d.ts +48 -0
  22. package/dist/cjs/errors/abstract/node.error.d.ts.map +1 -0
  23. package/dist/cjs/errors/abstract/node.error.js +178 -0
  24. package/dist/cjs/errors/abstract/node.error.js.map +1 -0
  25. package/dist/{errors → cjs/errors}/application.error.d.ts +6 -2
  26. package/dist/cjs/errors/application.error.d.ts.map +1 -0
  27. package/dist/cjs/errors/application.error.js +41 -0
  28. package/dist/cjs/errors/application.error.js.map +1 -0
  29. package/dist/{errors → cjs/errors}/base/base.error.d.ts +12 -0
  30. package/dist/cjs/errors/base/base.error.d.ts.map +1 -0
  31. package/dist/cjs/errors/base/base.error.js +53 -0
  32. package/dist/cjs/errors/base/base.error.js.map +1 -0
  33. package/dist/{errors → cjs/errors}/base/operational.error.d.ts +8 -0
  34. package/dist/cjs/errors/base/operational.error.d.ts.map +1 -0
  35. package/dist/cjs/errors/base/operational.error.js +29 -0
  36. package/dist/cjs/errors/base/operational.error.js.map +1 -0
  37. package/dist/{errors → cjs/errors}/base/unexpected.error.d.ts +8 -0
  38. package/dist/cjs/errors/base/unexpected.error.d.ts.map +1 -0
  39. package/dist/cjs/errors/base/unexpected.error.js +29 -0
  40. package/dist/cjs/errors/base/unexpected.error.js.map +1 -0
  41. package/dist/{errors → cjs/errors}/base/user.error.d.ts +8 -0
  42. package/dist/cjs/errors/base/user.error.d.ts.map +1 -0
  43. package/dist/cjs/errors/base/user.error.js +29 -0
  44. package/dist/cjs/errors/base/user.error.js.map +1 -0
  45. package/dist/{errors → cjs/errors}/cli-subworkflow-operation.error.d.ts +1 -0
  46. package/dist/cjs/errors/cli-subworkflow-operation.error.d.ts.map +1 -0
  47. package/dist/cjs/errors/cli-subworkflow-operation.error.js +18 -0
  48. package/dist/cjs/errors/cli-subworkflow-operation.error.js.map +1 -0
  49. package/dist/{errors → cjs/errors}/db-connection-timeout-error.d.ts +1 -0
  50. package/dist/cjs/errors/db-connection-timeout-error.d.ts.map +1 -0
  51. package/dist/cjs/errors/db-connection-timeout-error.js +23 -0
  52. package/dist/cjs/errors/db-connection-timeout-error.js.map +1 -0
  53. package/dist/cjs/errors/ensure-error.d.ts +3 -0
  54. package/dist/cjs/errors/ensure-error.d.ts.map +1 -0
  55. package/dist/cjs/errors/ensure-error.js +23 -0
  56. package/dist/cjs/errors/ensure-error.js.map +1 -0
  57. package/dist/{errors → cjs/errors}/error.types.d.ts +2 -0
  58. package/dist/cjs/errors/error.types.d.ts.map +1 -0
  59. package/dist/cjs/errors/error.types.js +13 -0
  60. package/dist/{errors → cjs/errors}/error.types.js.map +1 -1
  61. package/dist/{errors → cjs/errors}/execution-cancelled.error.d.ts +1 -0
  62. package/dist/cjs/errors/execution-cancelled.error.d.ts.map +1 -0
  63. package/dist/cjs/errors/execution-cancelled.error.js +24 -0
  64. package/dist/cjs/errors/execution-cancelled.error.js.map +1 -0
  65. package/dist/{errors → cjs/errors}/expression-extension.error.d.ts +1 -0
  66. package/dist/cjs/errors/expression-extension.error.d.ts.map +1 -0
  67. package/dist/cjs/errors/expression-extension.error.js +18 -0
  68. package/dist/cjs/errors/expression-extension.error.js.map +1 -0
  69. package/dist/{errors → cjs/errors}/expression.error.d.ts +4 -0
  70. package/dist/cjs/errors/expression.error.d.ts.map +1 -0
  71. package/dist/cjs/errors/expression.error.js +48 -0
  72. package/dist/cjs/errors/expression.error.js.map +1 -0
  73. package/dist/{errors → cjs/errors}/index.d.ts +1 -0
  74. package/dist/cjs/errors/index.d.ts.map +1 -0
  75. package/dist/cjs/errors/index.js +58 -0
  76. package/dist/cjs/errors/index.js.map +1 -0
  77. package/dist/{errors → cjs/errors}/node-api.error.d.ts +8 -0
  78. package/dist/cjs/errors/node-api.error.d.ts.map +1 -0
  79. package/dist/cjs/errors/node-api.error.js +257 -0
  80. package/dist/cjs/errors/node-api.error.js.map +1 -0
  81. package/dist/{errors → cjs/errors}/node-operation.error.d.ts +4 -0
  82. package/dist/cjs/errors/node-operation.error.d.ts.map +1 -0
  83. package/dist/cjs/errors/node-operation.error.js +50 -0
  84. package/dist/cjs/errors/node-operation.error.js.map +1 -0
  85. package/dist/{errors → cjs/errors}/node-ssl.error.d.ts +1 -0
  86. package/dist/cjs/errors/node-ssl.error.d.ts.map +1 -0
  87. package/dist/cjs/errors/node-ssl.error.js +21 -0
  88. package/dist/cjs/errors/node-ssl.error.js.map +1 -0
  89. package/dist/{errors → cjs/errors}/subworkflow-operation.error.d.ts +1 -0
  90. package/dist/cjs/errors/subworkflow-operation.error.d.ts.map +1 -0
  91. package/dist/cjs/errors/subworkflow-operation.error.js +30 -0
  92. package/dist/cjs/errors/subworkflow-operation.error.js.map +1 -0
  93. package/dist/{errors → cjs/errors}/trigger-close.error.d.ts +1 -0
  94. package/dist/cjs/errors/trigger-close.error.d.ts.map +1 -0
  95. package/dist/cjs/errors/trigger-close.error.js +24 -0
  96. package/dist/cjs/errors/trigger-close.error.js.map +1 -0
  97. package/dist/{errors → cjs/errors}/webhook-taken.error.d.ts +1 -0
  98. package/dist/cjs/errors/webhook-taken.error.d.ts.map +1 -0
  99. package/dist/cjs/errors/webhook-taken.error.js +21 -0
  100. package/dist/cjs/errors/webhook-taken.error.js.map +1 -0
  101. package/dist/{errors → cjs/errors}/workflow-activation.error.d.ts +4 -0
  102. package/dist/cjs/errors/workflow-activation.error.d.ts.map +1 -0
  103. package/dist/cjs/errors/workflow-activation.error.js +54 -0
  104. package/dist/cjs/errors/workflow-activation.error.js.map +1 -0
  105. package/dist/{errors → cjs/errors}/workflow-deactivation.error.d.ts +1 -0
  106. package/dist/cjs/errors/workflow-deactivation.error.d.ts.map +1 -0
  107. package/dist/cjs/errors/workflow-deactivation.error.js +18 -0
  108. package/dist/cjs/errors/workflow-deactivation.error.js.map +1 -0
  109. package/dist/{errors → cjs/errors}/workflow-operation.error.d.ts +4 -0
  110. package/dist/cjs/errors/workflow-operation.error.d.ts.map +1 -0
  111. package/dist/cjs/errors/workflow-operation.error.js +32 -0
  112. package/dist/cjs/errors/workflow-operation.error.js.map +1 -0
  113. package/dist/{execution-status.d.ts → cjs/execution-status.d.ts} +1 -0
  114. package/dist/cjs/execution-status.d.ts.map +1 -0
  115. package/dist/cjs/execution-status.js +24 -0
  116. package/dist/cjs/execution-status.js.map +1 -0
  117. package/dist/{expression-evaluator-proxy.d.ts → cjs/expression-evaluator-proxy.d.ts} +1 -0
  118. package/dist/cjs/expression-evaluator-proxy.d.ts.map +1 -0
  119. package/dist/cjs/expression-evaluator-proxy.js +30 -0
  120. package/dist/cjs/expression-evaluator-proxy.js.map +1 -0
  121. package/dist/{expression-sandboxing.d.ts → cjs/expression-sandboxing.d.ts} +1 -0
  122. package/dist/cjs/expression-sandboxing.d.ts.map +1 -0
  123. package/dist/cjs/expression-sandboxing.js +62 -0
  124. package/dist/cjs/expression-sandboxing.js.map +1 -0
  125. package/dist/{expression.d.ts → cjs/expression.d.ts} +33 -0
  126. package/dist/cjs/expression.d.ts.map +1 -0
  127. package/dist/cjs/expression.js +368 -0
  128. package/dist/cjs/expression.js.map +1 -0
  129. package/dist/cjs/expressions/expression-helpers.d.ts +6 -0
  130. package/dist/cjs/expressions/expression-helpers.d.ts.map +1 -0
  131. package/dist/cjs/expressions/expression-helpers.js +24 -0
  132. package/dist/cjs/expressions/expression-helpers.js.map +1 -0
  133. package/dist/{extensions → cjs/extensions}/array-extensions.d.ts +1 -0
  134. package/dist/cjs/extensions/array-extensions.d.ts.map +1 -0
  135. package/dist/cjs/extensions/array-extensions.js +627 -0
  136. package/dist/cjs/extensions/array-extensions.js.map +1 -0
  137. package/dist/{extensions → cjs/extensions}/boolean-extensions.d.ts +1 -0
  138. package/dist/cjs/extensions/boolean-extensions.d.ts.map +1 -0
  139. package/dist/cjs/extensions/boolean-extensions.js +49 -0
  140. package/dist/cjs/extensions/boolean-extensions.js.map +1 -0
  141. package/dist/{extensions → cjs/extensions}/date-extensions.d.ts +1 -0
  142. package/dist/cjs/extensions/date-extensions.d.ts.map +1 -0
  143. package/dist/cjs/extensions/date-extensions.js +528 -0
  144. package/dist/cjs/extensions/date-extensions.js.map +1 -0
  145. package/dist/{extensions → cjs/extensions}/expression-extension.d.ts +22 -0
  146. package/dist/cjs/extensions/expression-extension.d.ts.map +1 -0
  147. package/dist/cjs/extensions/expression-extension.js +493 -0
  148. package/dist/cjs/extensions/expression-extension.js.map +1 -0
  149. package/dist/{extensions → cjs/extensions}/expression-parser.d.ts +1 -0
  150. package/dist/cjs/extensions/expression-parser.d.ts.map +1 -0
  151. package/dist/cjs/extensions/expression-parser.js +94 -0
  152. package/dist/cjs/extensions/expression-parser.js.map +1 -0
  153. package/dist/{extensions → cjs/extensions}/extended-functions.d.ts +1 -0
  154. package/dist/cjs/extensions/extended-functions.d.ts.map +1 -0
  155. package/dist/cjs/extensions/extended-functions.js +89 -0
  156. package/dist/cjs/extensions/extended-functions.js.map +1 -0
  157. package/dist/{extensions → cjs/extensions}/extensions.d.ts +1 -0
  158. package/dist/cjs/extensions/extensions.d.ts.map +1 -0
  159. package/dist/cjs/extensions/extensions.js +13 -0
  160. package/dist/cjs/extensions/extensions.js.map +1 -0
  161. package/dist/{extensions → cjs/extensions}/index.d.ts +1 -0
  162. package/dist/cjs/extensions/index.d.ts.map +1 -0
  163. package/dist/cjs/extensions/index.js +21 -0
  164. package/dist/cjs/extensions/index.js.map +1 -0
  165. package/dist/{extensions → cjs/extensions}/number-extensions.d.ts +1 -0
  166. package/dist/cjs/extensions/number-extensions.d.ts.map +1 -0
  167. package/dist/cjs/extensions/number-extensions.js +236 -0
  168. package/dist/cjs/extensions/number-extensions.js.map +1 -0
  169. package/dist/{extensions → cjs/extensions}/object-extensions.d.ts +1 -0
  170. package/dist/cjs/extensions/object-extensions.d.ts.map +1 -0
  171. package/dist/cjs/extensions/object-extensions.js +296 -0
  172. package/dist/cjs/extensions/object-extensions.js.map +1 -0
  173. package/dist/{extensions → cjs/extensions}/string-extensions.d.ts +1 -0
  174. package/dist/cjs/extensions/string-extensions.d.ts.map +1 -0
  175. package/dist/cjs/extensions/string-extensions.js +788 -0
  176. package/dist/cjs/extensions/string-extensions.js.map +1 -0
  177. package/dist/{extensions → cjs/extensions}/utils.d.ts +1 -0
  178. package/dist/cjs/extensions/utils.d.ts.map +1 -0
  179. package/dist/cjs/extensions/utils.js +42 -0
  180. package/dist/cjs/extensions/utils.js.map +1 -0
  181. package/dist/cjs/from-ai-parse-utils.d.ts +44 -0
  182. package/dist/cjs/from-ai-parse-utils.d.ts.map +1 -0
  183. package/dist/cjs/from-ai-parse-utils.js +291 -0
  184. package/dist/cjs/from-ai-parse-utils.js.map +1 -0
  185. package/dist/{global-state.d.ts → cjs/global-state.d.ts} +1 -0
  186. package/dist/cjs/global-state.d.ts.map +1 -0
  187. package/dist/cjs/global-state.js +23 -0
  188. package/dist/cjs/global-state.js.map +1 -0
  189. package/dist/{graph → cjs/graph}/graph-utils.d.ts +21 -0
  190. package/dist/cjs/graph/graph-utils.d.ts.map +1 -0
  191. package/dist/cjs/graph/graph-utils.js +195 -0
  192. package/dist/cjs/graph/graph-utils.js.map +1 -0
  193. package/dist/{index.d.ts → cjs/index.d.ts} +2 -0
  194. package/dist/cjs/index.d.ts.map +1 -0
  195. package/dist/cjs/index.js +114 -0
  196. package/dist/cjs/index.js.map +1 -0
  197. package/dist/{interfaces.d.ts → cjs/interfaces.d.ts} +90 -0
  198. package/dist/cjs/interfaces.d.ts.map +1 -0
  199. package/dist/cjs/interfaces.js +53 -0
  200. package/dist/cjs/interfaces.js.map +1 -0
  201. package/dist/{logger-proxy.d.ts → cjs/logger-proxy.d.ts} +1 -0
  202. package/dist/cjs/logger-proxy.d.ts.map +1 -0
  203. package/dist/cjs/logger-proxy.js +26 -0
  204. package/dist/cjs/logger-proxy.js.map +1 -0
  205. package/dist/{message-event-bus.d.ts → cjs/message-event-bus.d.ts} +1 -0
  206. package/dist/cjs/message-event-bus.d.ts.map +1 -0
  207. package/dist/cjs/message-event-bus.js +96 -0
  208. package/dist/cjs/message-event-bus.js.map +1 -0
  209. package/dist/{metadata-utils.d.ts → cjs/metadata-utils.d.ts} +1 -0
  210. package/dist/cjs/metadata-utils.d.ts.map +1 -0
  211. package/dist/cjs/metadata-utils.js +37 -0
  212. package/dist/cjs/metadata-utils.js.map +1 -0
  213. package/dist/{native-methods → cjs/native-methods}/array.methods.d.ts +1 -0
  214. package/dist/cjs/native-methods/array.methods.d.ts.map +1 -0
  215. package/dist/cjs/native-methods/array.methods.js +552 -0
  216. package/dist/cjs/native-methods/array.methods.js.map +1 -0
  217. package/dist/{native-methods → cjs/native-methods}/boolean.methods.d.ts +1 -0
  218. package/dist/cjs/native-methods/boolean.methods.d.ts.map +1 -0
  219. package/dist/cjs/native-methods/boolean.methods.js +31 -0
  220. package/dist/cjs/native-methods/boolean.methods.js.map +1 -0
  221. package/dist/{native-methods → cjs/native-methods}/index.d.ts +1 -0
  222. package/dist/cjs/native-methods/index.d.ts.map +1 -0
  223. package/dist/cjs/native-methods/index.js +27 -0
  224. package/dist/cjs/native-methods/index.js.map +1 -0
  225. package/dist/{native-methods → cjs/native-methods}/number.methods.d.ts +1 -0
  226. package/dist/cjs/native-methods/number.methods.d.ts.map +1 -0
  227. package/dist/cjs/native-methods/number.methods.js +95 -0
  228. package/dist/cjs/native-methods/number.methods.js.map +1 -0
  229. package/dist/{native-methods → cjs/native-methods}/object.methods.d.ts +1 -0
  230. package/dist/cjs/native-methods/object.methods.d.ts.map +1 -0
  231. package/dist/cjs/native-methods/object.methods.js +18 -0
  232. package/dist/cjs/native-methods/object.methods.js.map +1 -0
  233. package/dist/{native-methods → cjs/native-methods}/string.methods.d.ts +1 -0
  234. package/dist/cjs/native-methods/string.methods.d.ts.map +1 -0
  235. package/dist/cjs/native-methods/string.methods.js +499 -0
  236. package/dist/cjs/native-methods/string.methods.js.map +1 -0
  237. package/dist/{node-helpers.d.ts → cjs/node-helpers.d.ts} +109 -1
  238. package/dist/cjs/node-helpers.d.ts.map +1 -0
  239. package/dist/cjs/node-helpers.js +1369 -0
  240. package/dist/cjs/node-helpers.js.map +1 -0
  241. package/dist/{node-parameters → cjs/node-parameters}/filter-parameter.d.ts +1 -0
  242. package/dist/cjs/node-parameters/filter-parameter.d.ts.map +1 -0
  243. package/dist/cjs/node-parameters/filter-parameter.js +383 -0
  244. package/dist/cjs/node-parameters/filter-parameter.js.map +1 -0
  245. package/dist/{node-parameters → cjs/node-parameters}/rename-node-utils.d.ts +2 -1
  246. package/dist/cjs/node-parameters/rename-node-utils.d.ts.map +1 -0
  247. package/dist/cjs/node-parameters/rename-node-utils.js +36 -0
  248. package/dist/cjs/node-parameters/rename-node-utils.js.map +1 -0
  249. package/dist/{node-reference-parser-utils.d.ts → cjs/node-reference-parser-utils.d.ts} +11 -0
  250. package/dist/cjs/node-reference-parser-utils.d.ts.map +1 -0
  251. package/dist/cjs/node-reference-parser-utils.js +468 -0
  252. package/dist/cjs/node-reference-parser-utils.js.map +1 -0
  253. package/dist/{observable-object.d.ts → cjs/observable-object.d.ts} +1 -0
  254. package/dist/cjs/observable-object.d.ts.map +1 -0
  255. package/dist/cjs/observable-object.js +72 -0
  256. package/dist/cjs/observable-object.js.map +1 -0
  257. package/dist/{result.d.ts → cjs/result.d.ts} +7 -0
  258. package/dist/cjs/result.d.ts.map +1 -0
  259. package/dist/cjs/result.js +41 -0
  260. package/dist/cjs/result.js.map +1 -0
  261. package/dist/{telemetry-helpers.d.ts → cjs/telemetry-helpers.d.ts} +7 -0
  262. package/dist/cjs/telemetry-helpers.d.ts.map +1 -0
  263. package/dist/cjs/telemetry-helpers.js +522 -0
  264. package/dist/cjs/telemetry-helpers.js.map +1 -0
  265. package/dist/{type-guards.d.ts → cjs/type-guards.d.ts} +1 -0
  266. package/dist/cjs/type-guards.d.ts.map +1 -0
  267. package/dist/cjs/type-guards.js +56 -0
  268. package/dist/cjs/type-guards.js.map +1 -0
  269. package/dist/{type-validation.d.ts → cjs/type-validation.d.ts} +1 -0
  270. package/dist/cjs/type-validation.d.ts.map +1 -0
  271. package/dist/cjs/type-validation.js +408 -0
  272. package/dist/cjs/type-validation.js.map +1 -0
  273. package/dist/cjs/typecheck.tsbuildinfo +1 -0
  274. package/dist/{utils.d.ts → cjs/utils.d.ts} +31 -0
  275. package/dist/cjs/utils.d.ts.map +1 -0
  276. package/dist/cjs/utils.js +334 -0
  277. package/dist/cjs/utils.js.map +1 -0
  278. package/dist/{versioned-node-type.d.ts → cjs/versioned-node-type.d.ts} +1 -0
  279. package/dist/cjs/versioned-node-type.d.ts.map +1 -0
  280. package/dist/cjs/versioned-node-type.js +36 -0
  281. package/dist/cjs/versioned-node-type.js.map +1 -0
  282. package/dist/cjs/workflow-data-proxy-env-provider.d.ts +25 -0
  283. package/dist/cjs/workflow-data-proxy-env-provider.d.ts.map +1 -0
  284. package/dist/cjs/workflow-data-proxy-env-provider.js +70 -0
  285. package/dist/cjs/workflow-data-proxy-env-provider.js.map +1 -0
  286. package/dist/{workflow-data-proxy-helpers.d.ts → cjs/workflow-data-proxy-helpers.d.ts} +1 -0
  287. package/dist/cjs/workflow-data-proxy-helpers.d.ts.map +1 -0
  288. package/dist/cjs/workflow-data-proxy-helpers.js +20 -0
  289. package/dist/cjs/workflow-data-proxy-helpers.js.map +1 -0
  290. package/dist/{workflow-data-proxy.d.ts → cjs/workflow-data-proxy.d.ts} +45 -0
  291. package/dist/cjs/workflow-data-proxy.d.ts.map +1 -0
  292. package/dist/cjs/workflow-data-proxy.js +1189 -0
  293. package/dist/cjs/workflow-data-proxy.js.map +1 -0
  294. package/dist/cjs/workflow.d.ts +157 -0
  295. package/dist/cjs/workflow.d.ts.map +1 -0
  296. package/dist/cjs/workflow.js +765 -0
  297. package/dist/cjs/workflow.js.map +1 -0
  298. package/dist/esm/augment-object.d.ts +3 -0
  299. package/dist/esm/augment-object.d.ts.map +1 -0
  300. package/dist/{augment-object.js → esm/augment-object.js} +9 -6
  301. package/dist/esm/augment-object.js.map +1 -0
  302. package/dist/esm/constants.d.ts +73 -0
  303. package/dist/esm/constants.d.ts.map +1 -0
  304. package/dist/esm/constants.js +99 -0
  305. package/dist/esm/constants.js.map +1 -0
  306. package/dist/esm/cron.d.ts +35 -0
  307. package/dist/esm/cron.d.ts.map +1 -0
  308. package/dist/{cron.js → esm/cron.js} +4 -8
  309. package/dist/esm/cron.js.map +1 -0
  310. package/dist/esm/deferred-promise.d.ts +10 -0
  311. package/dist/esm/deferred-promise.d.ts.map +1 -0
  312. package/dist/esm/deferred-promise.js +9 -0
  313. package/dist/esm/deferred-promise.js.map +1 -0
  314. package/dist/esm/errors/abstract/execution-base.error.d.ts +28 -0
  315. package/dist/esm/errors/abstract/execution-base.error.d.ts.map +1 -0
  316. package/dist/{errors → esm/errors}/abstract/execution-base.error.js +9 -8
  317. package/dist/esm/errors/abstract/execution-base.error.js.map +1 -0
  318. package/dist/esm/errors/abstract/node.error.d.ts +48 -0
  319. package/dist/esm/errors/abstract/node.error.d.ts.map +1 -0
  320. package/dist/{errors → esm/errors}/abstract/node.error.js +52 -12
  321. package/dist/esm/errors/abstract/node.error.js.map +1 -0
  322. package/dist/esm/errors/application.error.d.ts +13 -0
  323. package/dist/esm/errors/application.error.d.ts.map +1 -0
  324. package/dist/esm/errors/application.error.js +24 -0
  325. package/dist/esm/errors/application.error.js.map +1 -0
  326. package/dist/esm/errors/base/base.error.d.ts +26 -0
  327. package/dist/esm/errors/base/base.error.d.ts.map +1 -0
  328. package/dist/{errors → esm/errors}/base/base.error.js +20 -10
  329. package/dist/esm/errors/base/base.error.js.map +1 -0
  330. package/dist/esm/errors/base/operational.error.d.ts +16 -0
  331. package/dist/esm/errors/base/operational.error.d.ts.map +1 -0
  332. package/dist/esm/errors/base/operational.error.js +15 -0
  333. package/dist/esm/errors/base/operational.error.js.map +1 -0
  334. package/dist/esm/errors/base/unexpected.error.d.ts +16 -0
  335. package/dist/esm/errors/base/unexpected.error.d.ts.map +1 -0
  336. package/dist/esm/errors/base/unexpected.error.js +15 -0
  337. package/dist/esm/errors/base/unexpected.error.js.map +1 -0
  338. package/dist/esm/errors/base/user.error.d.ts +18 -0
  339. package/dist/esm/errors/base/user.error.d.ts.map +1 -0
  340. package/dist/esm/errors/base/user.error.js +15 -0
  341. package/dist/esm/errors/base/user.error.js.map +1 -0
  342. package/dist/esm/errors/cli-subworkflow-operation.error.d.ts +4 -0
  343. package/dist/esm/errors/cli-subworkflow-operation.error.d.ts.map +1 -0
  344. package/dist/esm/errors/cli-subworkflow-operation.error.js +4 -0
  345. package/dist/esm/errors/cli-subworkflow-operation.error.js.map +1 -0
  346. package/dist/esm/errors/db-connection-timeout-error.d.ts +9 -0
  347. package/dist/esm/errors/db-connection-timeout-error.d.ts.map +1 -0
  348. package/dist/{errors → esm/errors}/db-connection-timeout-error.js +2 -6
  349. package/dist/esm/errors/db-connection-timeout-error.js.map +1 -0
  350. package/dist/esm/errors/ensure-error.d.ts +3 -0
  351. package/dist/esm/errors/ensure-error.d.ts.map +1 -0
  352. package/dist/esm/errors/ensure-error.js +10 -0
  353. package/dist/esm/errors/ensure-error.js.map +1 -0
  354. package/dist/esm/errors/error.types.d.ts +12 -0
  355. package/dist/esm/errors/error.types.d.ts.map +1 -0
  356. package/dist/esm/errors/error.types.js +2 -0
  357. package/dist/esm/errors/error.types.js.map +1 -0
  358. package/dist/esm/errors/execution-cancelled.error.d.ts +5 -0
  359. package/dist/esm/errors/execution-cancelled.error.d.ts.map +1 -0
  360. package/dist/esm/errors/execution-cancelled.error.js +10 -0
  361. package/dist/esm/errors/execution-cancelled.error.js.map +1 -0
  362. package/dist/esm/errors/expression-extension.error.d.ts +4 -0
  363. package/dist/esm/errors/expression-extension.error.d.ts.map +1 -0
  364. package/dist/esm/errors/expression-extension.error.js +4 -0
  365. package/dist/esm/errors/expression-extension.error.js.map +1 -0
  366. package/dist/esm/errors/expression.error.d.ts +22 -0
  367. package/dist/esm/errors/expression.error.d.ts.map +1 -0
  368. package/dist/{errors → esm/errors}/expression.error.js +5 -6
  369. package/dist/esm/errors/expression.error.js.map +1 -0
  370. package/dist/esm/errors/index.d.ts +24 -0
  371. package/dist/esm/errors/index.d.ts.map +1 -0
  372. package/dist/esm/errors/index.js +23 -0
  373. package/dist/esm/errors/index.js.map +1 -0
  374. package/dist/esm/errors/node-api.error.d.ts +39 -0
  375. package/dist/esm/errors/node-api.error.d.ts.map +1 -0
  376. package/dist/{errors → esm/errors}/node-api.error.js +55 -19
  377. package/dist/esm/errors/node-api.error.js.map +1 -0
  378. package/dist/esm/errors/node-operation.error.d.ts +11 -0
  379. package/dist/esm/errors/node-operation.error.d.ts.map +1 -0
  380. package/dist/{errors → esm/errors}/node-operation.error.js +9 -9
  381. package/dist/esm/errors/node-operation.error.js.map +1 -0
  382. package/dist/esm/errors/node-ssl.error.d.ts +5 -0
  383. package/dist/esm/errors/node-ssl.error.d.ts.map +1 -0
  384. package/dist/esm/errors/node-ssl.error.js +7 -0
  385. package/dist/esm/errors/node-ssl.error.js.map +1 -0
  386. package/dist/esm/errors/subworkflow-operation.error.d.ts +7 -0
  387. package/dist/esm/errors/subworkflow-operation.error.d.ts.map +1 -0
  388. package/dist/esm/errors/subworkflow-operation.error.js +16 -0
  389. package/dist/esm/errors/subworkflow-operation.error.js.map +1 -0
  390. package/dist/esm/errors/trigger-close.error.d.ts +12 -0
  391. package/dist/esm/errors/trigger-close.error.d.ts.map +1 -0
  392. package/dist/esm/errors/trigger-close.error.js +10 -0
  393. package/dist/esm/errors/trigger-close.error.js.map +1 -0
  394. package/dist/esm/errors/webhook-taken.error.d.ts +5 -0
  395. package/dist/esm/errors/webhook-taken.error.d.ts.map +1 -0
  396. package/dist/esm/errors/webhook-taken.error.js +7 -0
  397. package/dist/esm/errors/webhook-taken.error.js.map +1 -0
  398. package/dist/esm/errors/workflow-activation.error.d.ts +20 -0
  399. package/dist/esm/errors/workflow-activation.error.d.ts.map +1 -0
  400. package/dist/{errors → esm/errors}/workflow-activation.error.js +12 -11
  401. package/dist/esm/errors/workflow-activation.error.js.map +1 -0
  402. package/dist/esm/errors/workflow-deactivation.error.d.ts +4 -0
  403. package/dist/esm/errors/workflow-deactivation.error.d.ts.map +1 -0
  404. package/dist/esm/errors/workflow-deactivation.error.js +4 -0
  405. package/dist/esm/errors/workflow-deactivation.error.js.map +1 -0
  406. package/dist/esm/errors/workflow-operation.error.d.ts +11 -0
  407. package/dist/esm/errors/workflow-operation.error.d.ts.map +1 -0
  408. package/dist/esm/errors/workflow-operation.error.js +18 -0
  409. package/dist/esm/errors/workflow-operation.error.js.map +1 -0
  410. package/dist/esm/execution-status.d.ts +3 -0
  411. package/dist/esm/execution-status.d.ts.map +1 -0
  412. package/dist/esm/execution-status.js +11 -0
  413. package/dist/esm/execution-status.js.map +1 -0
  414. package/dist/esm/expression-evaluator-proxy.d.ts +6 -0
  415. package/dist/esm/expression-evaluator-proxy.d.ts.map +1 -0
  416. package/dist/esm/expression-evaluator-proxy.js +15 -0
  417. package/dist/esm/expression-evaluator-proxy.js.map +1 -0
  418. package/dist/esm/expression-sandboxing.d.ts +5 -0
  419. package/dist/esm/expression-sandboxing.d.ts.map +1 -0
  420. package/dist/esm/expression-sandboxing.js +47 -0
  421. package/dist/esm/expression-sandboxing.js.map +1 -0
  422. package/dist/esm/expression.d.ts +46 -0
  423. package/dist/esm/expression.d.ts.map +1 -0
  424. package/dist/{expression.js → esm/expression.js} +125 -44
  425. package/dist/esm/expression.js.map +1 -0
  426. package/dist/esm/expressions/expression-helpers.d.ts +6 -0
  427. package/dist/esm/expressions/expression-helpers.d.ts.map +1 -0
  428. package/dist/esm/expressions/expression-helpers.js +10 -0
  429. package/dist/esm/expressions/expression-helpers.js.map +1 -0
  430. package/dist/esm/extensions/array-extensions.d.ts +33 -0
  431. package/dist/esm/extensions/array-extensions.d.ts.map +1 -0
  432. package/dist/{extensions → esm/extensions}/array-extensions.js +41 -42
  433. package/dist/esm/extensions/array-extensions.js.map +1 -0
  434. package/dist/esm/extensions/boolean-extensions.d.ts +6 -0
  435. package/dist/esm/extensions/boolean-extensions.d.ts.map +1 -0
  436. package/dist/{extensions → esm/extensions}/boolean-extensions.js +4 -10
  437. package/dist/esm/extensions/boolean-extensions.js.map +1 -0
  438. package/dist/esm/extensions/date-extensions.d.ts +3 -0
  439. package/dist/esm/extensions/date-extensions.d.ts.map +1 -0
  440. package/dist/{extensions → esm/extensions}/date-extensions.js +27 -29
  441. package/dist/esm/extensions/date-extensions.js.map +1 -0
  442. package/dist/esm/extensions/expression-extension.d.ts +32 -0
  443. package/dist/esm/extensions/expression-extension.d.ts.map +1 -0
  444. package/dist/esm/extensions/expression-extension.js +474 -0
  445. package/dist/esm/extensions/expression-extension.js.map +1 -0
  446. package/dist/esm/extensions/expression-parser.d.ts +14 -0
  447. package/dist/esm/extensions/expression-parser.d.ts.map +1 -0
  448. package/dist/{extensions → esm/extensions}/expression-parser.js +9 -11
  449. package/dist/esm/extensions/expression-parser.js.map +1 -0
  450. package/dist/esm/extensions/extended-functions.d.ts +28 -0
  451. package/dist/esm/extensions/extended-functions.d.ts.map +1 -0
  452. package/dist/{extensions → esm/extensions}/extended-functions.js +8 -10
  453. package/dist/esm/extensions/extended-functions.js.map +1 -0
  454. package/dist/esm/extensions/extensions.d.ts +42 -0
  455. package/dist/esm/extensions/extensions.d.ts.map +1 -0
  456. package/dist/esm/extensions/extensions.js +2 -0
  457. package/dist/esm/extensions/extensions.js.map +1 -0
  458. package/dist/esm/extensions/index.d.ts +3 -0
  459. package/dist/esm/extensions/index.d.ts.map +1 -0
  460. package/dist/esm/extensions/index.js +2 -0
  461. package/dist/esm/extensions/index.js.map +1 -0
  462. package/dist/esm/extensions/number-extensions.d.ts +27 -0
  463. package/dist/esm/extensions/number-extensions.d.ts.map +1 -0
  464. package/dist/{extensions → esm/extensions}/number-extensions.js +14 -15
  465. package/dist/esm/extensions/number-extensions.js.map +1 -0
  466. package/dist/esm/extensions/object-extensions.d.ts +46 -0
  467. package/dist/esm/extensions/object-extensions.d.ts.map +1 -0
  468. package/dist/{extensions → esm/extensions}/object-extensions.js +18 -21
  469. package/dist/esm/extensions/object-extensions.js.map +1 -0
  470. package/dist/esm/extensions/string-extensions.d.ts +38 -0
  471. package/dist/esm/extensions/string-extensions.d.ts.map +1 -0
  472. package/dist/{extensions → esm/extensions}/string-extensions.js +121 -40
  473. package/dist/esm/extensions/string-extensions.js.map +1 -0
  474. package/dist/esm/extensions/utils.d.ts +4 -0
  475. package/dist/esm/extensions/utils.d.ts.map +1 -0
  476. package/dist/esm/extensions/utils.js +27 -0
  477. package/dist/esm/extensions/utils.js.map +1 -0
  478. package/dist/esm/from-ai-parse-utils.d.ts +44 -0
  479. package/dist/esm/from-ai-parse-utils.d.ts.map +1 -0
  480. package/dist/{from-ai-parse-utils.js → esm/from-ai-parse-utils.js} +63 -18
  481. package/dist/esm/from-ai-parse-utils.js.map +1 -0
  482. package/dist/esm/global-state.d.ts +6 -0
  483. package/dist/esm/global-state.d.ts.map +1 -0
  484. package/dist/esm/global-state.js +9 -0
  485. package/dist/esm/global-state.js.map +1 -0
  486. package/dist/esm/graph/graph-utils.d.ts +57 -0
  487. package/dist/esm/graph/graph-utils.d.ts.map +1 -0
  488. package/dist/{graph → esm/graph}/graph-utils.js +35 -16
  489. package/dist/esm/graph/graph-utils.js.map +1 -0
  490. package/dist/esm/index.d.ts +49 -0
  491. package/dist/esm/index.d.ts.map +1 -0
  492. package/dist/esm/index.js +33 -0
  493. package/dist/esm/index.js.map +1 -0
  494. package/dist/esm/interfaces.d.ts +2173 -0
  495. package/dist/esm/interfaces.d.ts.map +1 -0
  496. package/dist/{interfaces.js → esm/interfaces.js} +13 -11
  497. package/dist/esm/interfaces.js.map +1 -0
  498. package/dist/esm/logger-proxy.d.ts +7 -0
  499. package/dist/esm/logger-proxy.d.ts.map +1 -0
  500. package/dist/esm/logger-proxy.js +12 -0
  501. package/dist/esm/logger-proxy.js.map +1 -0
  502. package/dist/esm/message-event-bus.d.ts +107 -0
  503. package/dist/esm/message-event-bus.d.ts.map +1 -0
  504. package/dist/{message-event-bus.js → esm/message-event-bus.js} +26 -23
  505. package/dist/esm/message-event-bus.js.map +1 -0
  506. package/dist/esm/metadata-utils.d.ts +5 -0
  507. package/dist/esm/metadata-utils.d.ts.map +1 -0
  508. package/dist/{metadata-utils.js → esm/metadata-utils.js} +6 -7
  509. package/dist/esm/metadata-utils.js.map +1 -0
  510. package/dist/esm/native-methods/array.methods.d.ts +3 -0
  511. package/dist/esm/native-methods/array.methods.d.ts.map +1 -0
  512. package/dist/{native-methods → esm/native-methods}/array.methods.js +1 -4
  513. package/dist/esm/native-methods/array.methods.js.map +1 -0
  514. package/dist/esm/native-methods/boolean.methods.d.ts +3 -0
  515. package/dist/esm/native-methods/boolean.methods.d.ts.map +1 -0
  516. package/dist/{native-methods → esm/native-methods}/boolean.methods.js +1 -4
  517. package/dist/esm/native-methods/boolean.methods.js.map +1 -0
  518. package/dist/esm/native-methods/index.d.ts +4 -0
  519. package/dist/esm/native-methods/index.d.ts.map +1 -0
  520. package/dist/esm/native-methods/index.js +14 -0
  521. package/dist/esm/native-methods/index.js.map +1 -0
  522. package/dist/esm/native-methods/number.methods.d.ts +3 -0
  523. package/dist/esm/native-methods/number.methods.d.ts.map +1 -0
  524. package/dist/{native-methods → esm/native-methods}/number.methods.js +1 -4
  525. package/dist/esm/native-methods/number.methods.js.map +1 -0
  526. package/dist/esm/native-methods/object.methods.d.ts +3 -0
  527. package/dist/esm/native-methods/object.methods.d.ts.map +1 -0
  528. package/dist/esm/native-methods/object.methods.js +5 -0
  529. package/dist/esm/native-methods/object.methods.js.map +1 -0
  530. package/dist/esm/native-methods/string.methods.d.ts +3 -0
  531. package/dist/esm/native-methods/string.methods.d.ts.map +1 -0
  532. package/dist/{native-methods → esm/native-methods}/string.methods.js +1 -4
  533. package/dist/esm/native-methods/string.methods.js.map +1 -0
  534. package/dist/esm/node-helpers.d.ts +145 -0
  535. package/dist/esm/node-helpers.d.ts.map +1 -0
  536. package/dist/{node-helpers.js → esm/node-helpers.js} +302 -106
  537. package/dist/esm/node-helpers.js.map +1 -0
  538. package/dist/esm/node-parameters/filter-parameter.d.ts +21 -0
  539. package/dist/esm/node-parameters/filter-parameter.d.ts.map +1 -0
  540. package/dist/{node-parameters → esm/node-parameters}/filter-parameter.js +13 -51
  541. package/dist/esm/node-parameters/filter-parameter.js.map +1 -0
  542. package/dist/esm/node-parameters/rename-node-utils.d.ts +3 -0
  543. package/dist/esm/node-parameters/rename-node-utils.d.ts.map +1 -0
  544. package/dist/{node-parameters → esm/node-parameters}/rename-node-utils.js +4 -5
  545. package/dist/esm/node-parameters/rename-node-utils.js.map +1 -0
  546. package/dist/esm/node-reference-parser-utils.d.ts +20 -0
  547. package/dist/esm/node-reference-parser-utils.d.ts.map +1 -0
  548. package/dist/{node-reference-parser-utils.js → esm/node-reference-parser-utils.js} +135 -46
  549. package/dist/esm/node-reference-parser-utils.js.map +1 -0
  550. package/dist/esm/observable-object.d.ts +7 -0
  551. package/dist/esm/observable-object.d.ts.map +1 -0
  552. package/dist/{observable-object.js → esm/observable-object.js} +13 -5
  553. package/dist/esm/observable-object.js.map +1 -0
  554. package/dist/esm/result.d.ts +19 -0
  555. package/dist/esm/result.d.ts.map +1 -0
  556. package/dist/esm/result.js +25 -0
  557. package/dist/esm/result.js.map +1 -0
  558. package/dist/esm/telemetry-helpers.d.ts +45 -0
  559. package/dist/esm/telemetry-helpers.d.ts.map +1 -0
  560. package/dist/{telemetry-helpers.js → esm/telemetry-helpers.js} +67 -62
  561. package/dist/esm/telemetry-helpers.js.map +1 -0
  562. package/dist/esm/type-guards.d.ts +12 -0
  563. package/dist/esm/type-guards.d.ts.map +1 -0
  564. package/dist/esm/type-guards.js +33 -0
  565. package/dist/esm/type-guards.js.map +1 -0
  566. package/dist/esm/type-validation.d.ts +22 -0
  567. package/dist/esm/type-validation.d.ts.map +1 -0
  568. package/dist/{type-validation.js → esm/type-validation.js} +66 -78
  569. package/dist/esm/type-validation.js.map +1 -0
  570. package/dist/esm/typecheck.tsbuildinfo +1 -0
  571. package/dist/esm/utils.d.ts +94 -0
  572. package/dist/esm/utils.d.ts.map +1 -0
  573. package/dist/esm/utils.js +300 -0
  574. package/dist/esm/utils.js.map +1 -0
  575. package/dist/esm/versioned-node-type.d.ts +10 -0
  576. package/dist/esm/versioned-node-type.d.ts.map +1 -0
  577. package/dist/{versioned-node-type.js → esm/versioned-node-type.js} +4 -5
  578. package/dist/esm/versioned-node-type.js.map +1 -0
  579. package/dist/esm/workflow-data-proxy-env-provider.d.ts +25 -0
  580. package/dist/esm/workflow-data-proxy-env-provider.d.ts.map +1 -0
  581. package/dist/{workflow-data-proxy-env-provider.js → esm/workflow-data-proxy-env-provider.js} +22 -9
  582. package/dist/esm/workflow-data-proxy-env-provider.js.map +1 -0
  583. package/dist/esm/workflow-data-proxy-helpers.d.ts +3 -0
  584. package/dist/esm/workflow-data-proxy-helpers.d.ts.map +1 -0
  585. package/dist/esm/workflow-data-proxy-helpers.js +7 -0
  586. package/dist/esm/workflow-data-proxy-helpers.js.map +1 -0
  587. package/dist/esm/workflow-data-proxy.d.ts +80 -0
  588. package/dist/esm/workflow-data-proxy.d.ts.map +1 -0
  589. package/dist/{workflow-data-proxy.js → esm/workflow-data-proxy.js} +174 -109
  590. package/dist/esm/workflow-data-proxy.js.map +1 -0
  591. package/dist/esm/workflow.d.ts +157 -0
  592. package/dist/esm/workflow.d.ts.map +1 -0
  593. package/dist/{workflow.js → esm/workflow.js} +223 -73
  594. package/dist/esm/workflow.js.map +1 -0
  595. package/package.json +20 -16
  596. package/dist/augment-object.js.map +0 -1
  597. package/dist/build.tsbuildinfo +0 -1
  598. package/dist/constants.js +0 -89
  599. package/dist/constants.js.map +0 -1
  600. package/dist/cron.js.map +0 -1
  601. package/dist/deferred-promise.js +0 -12
  602. package/dist/deferred-promise.js.map +0 -1
  603. package/dist/errors/abstract/execution-base.error.js.map +0 -1
  604. package/dist/errors/abstract/node.error.d.ts +0 -12
  605. package/dist/errors/abstract/node.error.js.map +0 -1
  606. package/dist/errors/application.error.js +0 -24
  607. package/dist/errors/application.error.js.map +0 -1
  608. package/dist/errors/base/base.error.js.map +0 -1
  609. package/dist/errors/base/operational.error.js +0 -12
  610. package/dist/errors/base/operational.error.js.map +0 -1
  611. package/dist/errors/base/unexpected.error.js +0 -12
  612. package/dist/errors/base/unexpected.error.js.map +0 -1
  613. package/dist/errors/base/user.error.js +0 -12
  614. package/dist/errors/base/user.error.js.map +0 -1
  615. package/dist/errors/cli-subworkflow-operation.error.js +0 -8
  616. package/dist/errors/cli-subworkflow-operation.error.js.map +0 -1
  617. package/dist/errors/db-connection-timeout-error.js.map +0 -1
  618. package/dist/errors/ensure-error.d.ts +0 -1
  619. package/dist/errors/ensure-error.js +0 -11
  620. package/dist/errors/ensure-error.js.map +0 -1
  621. package/dist/errors/error.types.js +0 -3
  622. package/dist/errors/execution-cancelled.error.js +0 -14
  623. package/dist/errors/execution-cancelled.error.js.map +0 -1
  624. package/dist/errors/expression-extension.error.js +0 -8
  625. package/dist/errors/expression-extension.error.js.map +0 -1
  626. package/dist/errors/expression.error.js.map +0 -1
  627. package/dist/errors/index.js +0 -48
  628. package/dist/errors/index.js.map +0 -1
  629. package/dist/errors/node-api.error.js.map +0 -1
  630. package/dist/errors/node-operation.error.js.map +0 -1
  631. package/dist/errors/node-ssl.error.js +0 -11
  632. package/dist/errors/node-ssl.error.js.map +0 -1
  633. package/dist/errors/subworkflow-operation.error.js +0 -19
  634. package/dist/errors/subworkflow-operation.error.js.map +0 -1
  635. package/dist/errors/trigger-close.error.js +0 -13
  636. package/dist/errors/trigger-close.error.js.map +0 -1
  637. package/dist/errors/webhook-taken.error.js +0 -11
  638. package/dist/errors/webhook-taken.error.js.map +0 -1
  639. package/dist/errors/workflow-activation.error.js.map +0 -1
  640. package/dist/errors/workflow-deactivation.error.js +0 -8
  641. package/dist/errors/workflow-deactivation.error.js.map +0 -1
  642. package/dist/errors/workflow-operation.error.js +0 -17
  643. package/dist/errors/workflow-operation.error.js.map +0 -1
  644. package/dist/execution-status.js +0 -14
  645. package/dist/execution-status.js.map +0 -1
  646. package/dist/expression-evaluator-proxy.js +0 -20
  647. package/dist/expression-evaluator-proxy.js.map +0 -1
  648. package/dist/expression-sandboxing.js +0 -43
  649. package/dist/expression-sandboxing.js.map +0 -1
  650. package/dist/expression.js.map +0 -1
  651. package/dist/extensions/array-extensions.js.map +0 -1
  652. package/dist/extensions/boolean-extensions.js.map +0 -1
  653. package/dist/extensions/date-extensions.js.map +0 -1
  654. package/dist/extensions/expression-extension.js +0 -362
  655. package/dist/extensions/expression-extension.js.map +0 -1
  656. package/dist/extensions/expression-parser.js.map +0 -1
  657. package/dist/extensions/extended-functions.js.map +0 -1
  658. package/dist/extensions/extensions.js +0 -3
  659. package/dist/extensions/extensions.js.map +0 -1
  660. package/dist/extensions/index.js +0 -11
  661. package/dist/extensions/index.js.map +0 -1
  662. package/dist/extensions/number-extensions.js.map +0 -1
  663. package/dist/extensions/object-extensions.js.map +0 -1
  664. package/dist/extensions/string-extensions.js.map +0 -1
  665. package/dist/extensions/utils.js +0 -31
  666. package/dist/extensions/utils.js.map +0 -1
  667. package/dist/from-ai-parse-utils.d.ts +0 -12
  668. package/dist/from-ai-parse-utils.js.map +0 -1
  669. package/dist/global-state.js +0 -13
  670. package/dist/global-state.js.map +0 -1
  671. package/dist/graph/graph-utils.js.map +0 -1
  672. package/dist/index.js +0 -103
  673. package/dist/index.js.map +0 -1
  674. package/dist/interfaces.js.map +0 -1
  675. package/dist/logger-proxy.js +0 -16
  676. package/dist/logger-proxy.js.map +0 -1
  677. package/dist/message-event-bus.js.map +0 -1
  678. package/dist/metadata-utils.js.map +0 -1
  679. package/dist/native-methods/array.methods.js.map +0 -1
  680. package/dist/native-methods/boolean.methods.js.map +0 -1
  681. package/dist/native-methods/index.js +0 -17
  682. package/dist/native-methods/index.js.map +0 -1
  683. package/dist/native-methods/number.methods.js.map +0 -1
  684. package/dist/native-methods/object.methods.js +0 -8
  685. package/dist/native-methods/object.methods.js.map +0 -1
  686. package/dist/native-methods/string.methods.js.map +0 -1
  687. package/dist/node-helpers.js.map +0 -1
  688. package/dist/node-parameters/filter-parameter.js.map +0 -1
  689. package/dist/node-parameters/rename-node-utils.js.map +0 -1
  690. package/dist/node-reference-parser-utils.js.map +0 -1
  691. package/dist/observable-object.js.map +0 -1
  692. package/dist/result.js +0 -25
  693. package/dist/result.js.map +0 -1
  694. package/dist/telemetry-helpers.js.map +0 -1
  695. package/dist/type-guards.js +0 -46
  696. package/dist/type-guards.js.map +0 -1
  697. package/dist/type-validation.js.map +0 -1
  698. package/dist/utils.js +0 -259
  699. package/dist/utils.js.map +0 -1
  700. package/dist/versioned-node-type.js.map +0 -1
  701. package/dist/workflow-data-proxy-env-provider.d.ts +0 -7
  702. package/dist/workflow-data-proxy-env-provider.js.map +0 -1
  703. package/dist/workflow-data-proxy-helpers.js +0 -10
  704. package/dist/workflow-data-proxy-helpers.js.map +0 -1
  705. package/dist/workflow-data-proxy.js.map +0 -1
  706. package/dist/workflow.d.ts +0 -54
  707. package/dist/workflow.js.map +0 -1
@@ -1,19 +1,12 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.hasDotNotationBannedChar = hasDotNotationBannedChar;
7
- exports.backslashEscape = backslashEscape;
8
- exports.dollarEscape = dollarEscape;
9
- exports.applyAccessPatterns = applyAccessPatterns;
10
- exports.extractReferencesInNodeExpressions = extractReferencesInNodeExpressions;
11
- const cloneDeep_1 = __importDefault(require("lodash/cloneDeep"));
12
- const escapeRegExp_1 = __importDefault(require("lodash/escapeRegExp"));
13
- const isEqual_1 = __importDefault(require("lodash/isEqual"));
14
- const mapValues_1 = __importDefault(require("lodash/mapValues"));
15
- const errors_1 = require("./errors");
1
+ import cloneDeep from 'lodash/cloneDeep';
2
+ import escapeRegExp from 'lodash/escapeRegExp';
3
+ import isEqual from 'lodash/isEqual';
4
+ import mapValues from 'lodash/mapValues';
5
+ import { OperationalError } from './errors';
16
6
  class LazyRegExp {
7
+ pattern;
8
+ flags;
9
+ regExp;
17
10
  constructor(pattern, flags) {
18
11
  this.pattern = pattern;
19
12
  this.flags = flags;
@@ -27,24 +20,27 @@ class LazyRegExp {
27
20
  const DOT_REFERENCEABLE_JS_VARIABLE = /\w[\w\d_\$]*/;
28
21
  const INVALID_JS_DOT_PATH = /[^\.\w\d_\$]/;
29
22
  const INVALID_JS_DOT_NAME = /[^\w\d_\$]/;
23
+ // These are the keys that are followed by one of DATA_ACCESSORS
30
24
  const ITEM_TO_DATA_ACCESSORS = [
31
25
  /^first\(\)/,
32
26
  /^last\(\)/,
33
27
  /^all\(\)/,
34
- /^itemMatching\(\d+\)/,
28
+ // The order here is relevant because `item` would match occurrences of `itemMatching`
29
+ /^itemMatching\(\d+\)/, // We only support trivial itemMatching arguments
35
30
  /^item/,
36
31
  ];
32
+ // These we safely can convert to a normal argument
37
33
  const ITEM_ACCESSORS = ['params', 'isExecuted'];
38
34
  const DATA_ACCESSORS = ['json', 'binary'];
39
- function hasDotNotationBannedChar(nodeName) {
35
+ export function hasDotNotationBannedChar(nodeName) {
40
36
  const DOT_NOTATION_BANNED_CHARS = /^(\d)|[\\ `!@#$%^&*()_+\-=[\]{};':"\\|,.<>?~]/g;
41
37
  return DOT_NOTATION_BANNED_CHARS.test(nodeName);
42
38
  }
43
- function backslashEscape(nodeName) {
39
+ export function backslashEscape(nodeName) {
44
40
  const BACKSLASH_ESCAPABLE_CHARS = /[.*+?^${}()|[\]\\]/g;
45
41
  return nodeName.replace(BACKSLASH_ESCAPABLE_CHARS, (char) => `\\${char}`);
46
42
  }
47
- function dollarEscape(nodeName) {
43
+ export function dollarEscape(nodeName) {
48
44
  return nodeName.replace(new RegExp('\\$', 'g'), '$$$$');
49
45
  }
50
46
  const ACCESS_PATTERNS = [
@@ -72,11 +68,14 @@ const ACCESS_PATTERNS = [
72
68
  replacePattern: (s) => String.raw `(\$items\(['"])${s}(['"],|['"]\))`,
73
69
  },
74
70
  ];
75
- function applyAccessPatterns(expression, previousName, newName) {
71
+ export function applyAccessPatterns(expression, previousName, newName) {
72
+ // To not run the "expensive" regex stuff when it is not needed
73
+ // make a simple check first if it really contains the node-name
76
74
  if (!expression.includes(previousName))
77
75
  return expression;
78
- const escapedOldName = backslashEscape(previousName);
79
- const escapedNewName = dollarEscape(newName);
76
+ // Really contains node-name (even though we do not know yet if really as $node-expression)
77
+ const escapedOldName = backslashEscape(previousName); // for match
78
+ const escapedNewName = dollarEscape(newName); // for replacement
80
79
  for (const pattern of ACCESS_PATTERNS) {
81
80
  if (expression.includes(pattern.checkPattern)) {
82
81
  expression = expression.replace(new RegExp(pattern.replacePattern(escapedOldName), 'g'), `$1${escapedNewName}$2`);
@@ -95,6 +94,12 @@ function convertToUniqueJsDotName(nodeName, allNodeNames) {
95
94
  .join('');
96
95
  if (nodeName === jsLegal)
97
96
  return jsLegal;
97
+ // This accounts for theoretical cases where we collide with other reduced names
98
+ // By adding our own index in the array we also avoid running into theoretical cases
99
+ // where a node with the name 'ourName_27' exists for our reduced name 'ourName'
100
+ // because we must have a different index, so therefore only one of us can be `ourName_27_27`
101
+ //
102
+ // The underscore prevents colliding e.g. index 1 with 11
98
103
  while (allNodeNames.includes(jsLegal))
99
104
  jsLegal += `_${allNodeNames.indexOf(nodeName)}`;
100
105
  return jsLegal;
@@ -110,14 +115,18 @@ function convertDataAccessorName(name) {
110
115
  case 'all':
111
116
  return `${fnName}Items`;
112
117
  }
118
+ // use the digits without the )
113
119
  return `${fnName}_${maybeDigits?.slice(0, -1) ?? 'unknown'}`;
114
120
  }
115
121
  function parseExpressionMapping(isolatedExpression, nodeNameInExpression, nodeNamePlainJs, startNodeName) {
116
122
  const splitExpr = isolatedExpression.split('.');
123
+ // This supports literal . used in the node name
117
124
  const dotsInName = nodeNameInExpression?.split('').filter((x) => x === '.').length ?? 0;
118
125
  const dotInAccessorsOffset = isolatedExpression.startsWith('$node.') ? 1 : 0;
119
126
  const exprStart = splitExpr.slice(0, dotInAccessorsOffset + dotsInName + 1).join('.');
120
127
  const parts = splitExpr.slice(dotInAccessorsOffset + dotsInName + 1);
128
+ // The calling code is expected to only handle $json expressions for the root node
129
+ // As these are invalid conversions for inner nodes
121
130
  if (exprStart === '$json') {
122
131
  let partsIdx = 0;
123
132
  for (; partsIdx < parts.length; ++partsIdx) {
@@ -126,23 +135,32 @@ function parseExpressionMapping(isolatedExpression, nodeNameInExpression, nodeNa
126
135
  }
127
136
  return {
128
137
  nodeNameInExpression: null,
129
- originalExpression: `${exprStart}.${parts.slice(0, partsIdx + 1).join('.')}`,
130
- replacementPrefix: `${exprStart}`,
131
- replacementName: `${parts.slice(0, partsIdx).join('_')}`,
138
+ originalExpression: `${exprStart}.${parts.slice(0, partsIdx + 1).join('.')}`, // $json.valid.until, but not ['x'] after
139
+ replacementPrefix: `${exprStart}`, // $json
140
+ replacementName: `${parts.slice(0, partsIdx).join('_')}`, // valid_until
132
141
  };
133
142
  }
134
143
  if (parts.length === 0) {
144
+ // If a node is referenced by name without any accessor we return a proxy that stringifies as an empty object
145
+ // But it can still be validly passed to other functions
146
+ // However when passed to a sub-workflow it collapses into a true empty object
147
+ // So lets just abort porting this and don't touch it
135
148
  return null;
136
149
  }
150
+ // Handling `all()` is very awkward since we need to pass the value as a single parameter but
151
+ // can't do `$('Start').all() since it would be a different node's all
137
152
  const accessorPrefix = parts[0] === 'all()' ? 'first()' : parts[0];
138
153
  if (ITEM_TO_DATA_ACCESSORS.some((x) => parts[0].match(x))) {
139
154
  if (parts.length === 1) {
155
+ // this case is a literal use of the return value of `$('nodeName').first()`
156
+ // Note that it's safe to rename to first, even if there is a variable of the same name
157
+ // since we resolve duplicate names later in the process
140
158
  const originalName = parts[0];
141
159
  return {
142
160
  nodeNameInExpression,
143
- originalExpression: `${exprStart}.${parts[0]}`,
144
- replacementPrefix: `$('${startNodeName}').${accessorPrefix}.json`,
145
- replacementName: `${nodeNamePlainJs}_${convertDataAccessorName(originalName)}`,
161
+ originalExpression: `${exprStart}.${parts[0]}`, // $('abc').first()
162
+ replacementPrefix: `$('${startNodeName}').${accessorPrefix}.json`, // $('Start').first().json
163
+ replacementName: `${nodeNamePlainJs}_${convertDataAccessorName(originalName)}`, // nodeName_firstItem, nodeName_itemMatching_20
146
164
  };
147
165
  }
148
166
  else {
@@ -152,50 +170,71 @@ function parseExpressionMapping(isolatedExpression, nodeNameInExpression, nodeNa
152
170
  if (!DOT_REFERENCEABLE_JS_VARIABLE.test(parts[partsIdx]))
153
171
  break;
154
172
  }
173
+ // Use a separate name for anything except item to avoid users confusing their e.g. first() variables
155
174
  const replacementPostfix = parts[0] === 'item' ? '' : `_${convertDataAccessorName(parts[0])}`;
156
175
  return {
157
176
  nodeNameInExpression,
158
- originalExpression: `${exprStart}.${parts.slice(0, partsIdx + 1).join('.')}`,
159
- replacementPrefix: `$('${startNodeName}').${accessorPrefix}.${parts[1]}`,
160
- replacementName: parts.slice(2, partsIdx).join('_') + replacementPostfix,
177
+ originalExpression: `${exprStart}.${parts.slice(0, partsIdx + 1).join('.')}`, // $('abc').item.json.valid.until, but not ['x'] after
178
+ replacementPrefix: `$('${startNodeName}').${accessorPrefix}.${parts[1]}`, // $('Start').item.json
179
+ replacementName: parts.slice(2, partsIdx).join('_') + replacementPostfix, // valid_until, or valid_until_firstItem
161
180
  };
162
181
  }
163
182
  else {
183
+ // this case covers any normal ObjectExtensions functions called on the ITEM_TO_DATA_ACCESSORS entry
184
+ // e.g. $('nodeName').first().toJsonObject().randomJSFunction() or $('nodeName').all().map(x => ({...x, a: 3 }))
164
185
  return {
165
186
  nodeNameInExpression,
166
- originalExpression: `${exprStart}.${parts[0]}`,
167
- replacementPrefix: `$('${startNodeName}').${accessorPrefix}.json`,
168
- replacementName: `${nodeNamePlainJs}_${convertDataAccessorName(parts[0])}`,
187
+ originalExpression: `${exprStart}.${parts[0]}`, // $('abc').first()
188
+ replacementPrefix: `$('${startNodeName}').${accessorPrefix}.json`, // $('Start').first().json.
189
+ replacementName: `${nodeNamePlainJs}_${convertDataAccessorName(parts[0])}`, // nodeName_firstItem
169
190
  };
170
191
  }
171
192
  }
172
193
  }
194
+ // This covers specific metadata functions available on nodes
173
195
  const itemAccessorMatch = ITEM_ACCESSORS.flatMap((x) => (x === parts[0] ? x : []))[0];
174
196
  if (itemAccessorMatch !== undefined) {
175
197
  return {
176
198
  nodeNameInExpression,
177
- originalExpression: `${exprStart}.${parts[0]}`,
178
- replacementPrefix: `$('${startNodeName}').first().json`,
179
- replacementName: `${nodeNamePlainJs}_${parts[0]}`,
199
+ originalExpression: `${exprStart}.${parts[0]}`, // $('abc').isExecuted
200
+ replacementPrefix: `$('${startNodeName}').first().json`, // $('Start').first()
201
+ replacementName: `${nodeNamePlainJs}_${parts[0]}`, // nodeName_isExecuted
180
202
  };
181
203
  }
204
+ // If we end up here it means that:
205
+ // - we have a complex `itemMatching(<expr>)` case, or
206
+ // - the expression should be invalid, or
207
+ // - a new function was added that we're not aware of.
208
+ //
209
+ // In these cases let's just not touch it and keep it as is
182
210
  return null;
183
211
  }
212
+ // find `$('NodeName').item.json.path.to.x` in `{{ $('NodeName').item.json.path.to.x[someFunction()] }}`
184
213
  function extractExpressionCandidate(expression, startIndex, endIndex) {
185
214
  const firstPartException = ITEM_TO_DATA_ACCESSORS.map((x) => x.exec(expression.slice(endIndex))).filter((x) => x !== null);
215
+ // Note that by choosing match 0 we use `itemMatching` matches over `item`
216
+ // matches by relying on the order in ITEM_TO_DATA_ACCESSORS
186
217
  let after_accessor_idx = endIndex + (firstPartException[0]?.[0].length ?? -1);
218
+ // skip `.` to continue, but halt before other symbols like `[` in `all()[0]`
187
219
  if (expression[after_accessor_idx + 1] === '.')
188
220
  after_accessor_idx += 1;
189
221
  const after_accessor = expression.slice(after_accessor_idx);
190
222
  const firstInvalidCharMatch = INVALID_JS_DOT_PATH.exec(after_accessor);
223
+ // we should at least find the }} closing the JS expressions in valid cases
191
224
  if (!firstInvalidCharMatch)
192
225
  return null;
193
226
  return expression.slice(startIndex, after_accessor_idx + firstInvalidCharMatch.index);
194
227
  }
228
+ // Parse a given regex accessor match (e.g. `$('nodeName')`, `$node['nodeName']`)
229
+ // and extract a potential ExpressionMapping
195
230
  function parseCandidateMatch(match, expression, nodeNames, startNodeName) {
196
231
  const startIndex = match.index;
197
232
  const endIndex = startIndex + match[0].length + 1;
233
+ // this works because all access patterns define match groups
234
+ // [fullMatch, "$('", "nodeName", "')"]
198
235
  const nodeNameInExpression = match[2];
236
+ // This should be invalid in theory, since the regex matches should only act
237
+ // on known node names
199
238
  if (!nodeNames.includes(nodeNameInExpression))
200
239
  return null;
201
240
  const candidate = extractExpressionCandidate(expression, startIndex, endIndex);
@@ -203,12 +242,14 @@ function parseCandidateMatch(match, expression, nodeNames, startNodeName) {
203
242
  return null;
204
243
  return parseExpressionMapping(candidate, nodeNameInExpression, convertToUniqueJsDotName(nodeNameInExpression, nodeNames), startNodeName);
205
244
  }
245
+ // Handle matches of form `$json.path.to.value`, which is necessary for the selection input node
206
246
  function parse$jsonMatch(match, expression, startNodeName) {
207
247
  const candidate = extractExpressionCandidate(expression, match.index, match.index + match[0].length + 1);
208
248
  if (candidate === null)
209
249
  return null;
210
250
  return parseExpressionMapping(candidate, null, null, startNodeName);
211
251
  }
252
+ // Parse all references to other nodes in `expression` and return them as `ExpressionMappings`
212
253
  function parseReferencingExpressions(expression, nodeRegexps, nodeNames, startNodeName, parse$json) {
213
254
  const result = [];
214
255
  for (const [pattern, regexp] of nodeRegexps) {
@@ -228,6 +269,7 @@ function parseReferencingExpressions(expression, nodeRegexps, nodeNames, startNo
228
269
  }
229
270
  return result;
230
271
  }
272
+ // Recursively apply `mapper` to all expressions in `parameterValue`
231
273
  function applyParameterMapping(parameterValue, mapper, keyOfValue) {
232
274
  const result = {};
233
275
  if (typeof parameterValue !== 'object' || parameterValue === null) {
@@ -246,7 +288,9 @@ function applyParameterMapping(parameterValue, mapper, keyOfValue) {
246
288
  }
247
289
  return [result, allMappings];
248
290
  }
291
+ // Ensure all expressions have a unique variable name
249
292
  function resolveDuplicates(data, allNodeNames) {
293
+ // Map from candidate variableName to its expressionData
250
294
  const triggerArgumentMap = new Map();
251
295
  const originalExpressionMap = new Map();
252
296
  for (const mapping of data) {
@@ -256,12 +300,18 @@ function resolveDuplicates(data, allNodeNames) {
256
300
  const value = triggerArgumentMap.get(key);
257
301
  if (!value)
258
302
  return false;
259
- return !(0, isEqual_1.default)(value, mapping);
303
+ return !isEqual(value, mapping);
260
304
  };
305
+ // We need both parts in the key as we may need to pass e.g. `.first()` and `.item` separately
306
+ // Since we cannot pass the node itself as its proxy reduces it to an empty object
261
307
  const key = () => `${replacementPrefix}.${replacementName}`;
308
+ // This covers a realistic case where two nodes have the same path, e.g.
309
+ // $('original input').item.json.path.to.url
310
+ // $('some time later in the workflow').item.json.path.to.url
262
311
  if (hasKeyAndCollides(key()) && nodeNameInExpression) {
263
312
  replacementName = `${convertToUniqueJsDotName(nodeNameInExpression, allNodeNames)}_${replacementName}`;
264
313
  }
314
+ // This covers all other theoretical cases, like where `${nodeName}_${variable}` might clash with another variable name
265
315
  while (hasKeyAndCollides(key()))
266
316
  replacementName += '_1';
267
317
  triggerArgumentMap.set(key(), {
@@ -277,6 +327,7 @@ function resolveDuplicates(data, allNodeNames) {
277
327
  originalExpressionMap,
278
328
  };
279
329
  }
330
+ // Recursively loop through the nodeProperties and apply `parameterExtractMapping` where defined
280
331
  function applyExtractMappingToNode(node, parameterExtractMapping) {
281
332
  const usedMappings = [];
282
333
  const applyMapping = (parameters, mapping) => {
@@ -293,50 +344,88 @@ function applyExtractMappingToNode(node, parameterExtractMapping) {
293
344
  }
294
345
  return parameters;
295
346
  }
347
+ // This should be an invalid state, though an explicit check makes typings easier
296
348
  if (Array.isArray(mapping)) {
297
349
  return parameters;
298
350
  }
299
351
  if (Array.isArray(parameters) && typeof mapping === 'object' && !Array.isArray(mapping)) {
300
352
  return parameters.map((x, i) => applyMapping(x, mapping[i]));
301
353
  }
302
- return (0, mapValues_1.default)(parameters, (v, k) => applyMapping(v, mapping[k]));
354
+ return mapValues(parameters, (v, k) => applyMapping(v, mapping[k]));
303
355
  };
304
356
  const parameters = applyMapping(node.parameters, parameterExtractMapping);
305
357
  return { result: { ...node, parameters }, usedMappings };
306
358
  }
359
+ // Recursively find the finalized mapping for provisional mappings
307
360
  function applyCanonicalMapping(mapping, getCanonicalData) {
308
361
  if (!mapping)
309
362
  return;
310
363
  if (Array.isArray(mapping)) {
364
+ // Sort by longest so that we don't accidentally replace part of a longer expression
311
365
  return mapping
312
366
  .map(getCanonicalData)
313
367
  .filter((x) => x !== undefined)
314
368
  .sort((a, b) => b.originalExpression.length - a.originalExpression.length);
315
369
  }
316
- return (0, mapValues_1.default)(mapping, (v) => applyCanonicalMapping(v, getCanonicalData));
370
+ return mapValues(mapping, (v) => applyCanonicalMapping(v, getCanonicalData));
317
371
  }
318
- function extractReferencesInNodeExpressions(subGraph, nodeNames, insertedStartName, graphInputNodeNames) {
372
+ /**
373
+ * Extracts references to nodes in `nodeNames` from the nodes in `subGraph`.
374
+ *
375
+ * @returns an object with two keys:
376
+ * - nodes: Transformed copies of nodes in `subGraph`, ready for use in a sub-workflow
377
+ * - variables: A map from variable name in the sub-workflow to the replaced expression
378
+ *
379
+ * @throws if the startNodeName already exists in `nodeNames`
380
+ * @throws if `nodeNames` does not include all node names in `subGraph`
381
+ */
382
+ export function extractReferencesInNodeExpressions(subGraph, nodeNames, insertedStartName, graphInputNodeNames) {
383
+ ////
384
+ // STEP 1 - Validate input invariants
385
+ ////
319
386
  const subGraphNames = subGraph.map((x) => x.name);
320
387
  if (subGraphNames.includes(insertedStartName))
321
- throw new errors_1.OperationalError(`StartNodeName ${insertedStartName} already exists in nodeNames: ${JSON.stringify(subGraphNames)}`);
388
+ throw new OperationalError(`StartNodeName ${insertedStartName} already exists in nodeNames: ${JSON.stringify(subGraphNames)}`);
322
389
  if (subGraphNames.some((x) => !nodeNames.includes(x))) {
323
- throw new errors_1.OperationalError(`extractReferencesInNodeExpressions called with node in subGraph ${JSON.stringify(subGraphNames)} whose name is not in provided 'nodeNames' list ${JSON.stringify(nodeNames)}.`);
390
+ throw new OperationalError(`extractReferencesInNodeExpressions called with node in subGraph ${JSON.stringify(subGraphNames)} whose name is not in provided 'nodeNames' list ${JSON.stringify(nodeNames)}.`);
324
391
  }
325
- const namesRegexp = '(' + nodeNames.map(escapeRegExp_1.default).join('|') + ')';
392
+ ////
393
+ // STEP 2 - Compile all candidate regexp patterns
394
+ ////
395
+ // This looks scary for large workflows, but RegExp should support >1 million characters and
396
+ // it's a very linear pattern.
397
+ const namesRegexp = '(' + nodeNames.map(escapeRegExp).join('|') + ')';
326
398
  const nodeRegexps = ACCESS_PATTERNS.map((pattern) => [
327
399
  pattern.checkPattern,
400
+ // avoid compiling the expensive regex for rare legacy ways of accessing nodes
328
401
  new LazyRegExp(() => pattern.replacePattern(namesRegexp), 'g'),
329
402
  ]);
403
+ ////
404
+ // STEP 3 - Parse expressions used in parameters and build mappings
405
+ ////
406
+ // This map is used to change the actual expressions once resolved
407
+ // The value represents fields in the actual parameters object which require change
330
408
  const parameterTreeMappingByNode = new Map();
409
+ // This is used to track all candidates for change, necessary for deduplication
331
410
  const allData = [];
332
411
  for (const node of subGraph) {
333
412
  const [parameterMapping, allMappings] = applyParameterMapping(node.parameters, (s) => parseReferencingExpressions(s, nodeRegexps, nodeNames, insertedStartName, graphInputNodeNames?.includes(node.name) ?? false));
334
413
  parameterTreeMappingByNode.set(node.name, parameterMapping);
335
414
  allData.push(...allMappings);
336
415
  }
416
+ ////
417
+ // STEP 4 - Filter out nodes in subGraph and handle name clashes
418
+ ////
337
419
  const subGraphNodeNames = new Set(subGraphNames);
338
- const dataFromOutsideSubgraph = allData.filter((x) => !x.nodeNameInExpression || !subGraphNodeNames.has(x.nodeNameInExpression));
420
+ const dataFromOutsideSubgraph = allData.filter(
421
+ // `nodeNameInExpression` being absent implies direct access via `$json` or `$binary`
422
+ (x) => !x.nodeNameInExpression || !subGraphNodeNames.has(x.nodeNameInExpression));
339
423
  const { originalExpressionMap, triggerArgumentMap } = resolveDuplicates(dataFromOutsideSubgraph, nodeNames);
424
+ ////
425
+ // STEP 5 - Apply canonical mappings to nodes and track created variables
426
+ ////
427
+ // triggerArgumentMap[originalExpressionMap[originalExpression]] returns its canonical object
428
+ // These should never be undefined at this stage
340
429
  const getCanonicalData = (e) => {
341
430
  const key = originalExpressionMap.get(e.originalExpression);
342
431
  if (!key)
@@ -349,7 +438,7 @@ function extractReferencesInNodeExpressions(subGraph, nodeNames, insertedStartNa
349
438
  const allUsedMappings = [];
350
439
  const output = [];
351
440
  for (const node of subGraph) {
352
- const { result, usedMappings } = applyExtractMappingToNode((0, cloneDeep_1.default)(node), parameterTreeMappingByNode.get(node.name));
441
+ const { result, usedMappings } = applyExtractMappingToNode(cloneDeep(node), parameterTreeMappingByNode.get(node.name));
353
442
  allUsedMappings.push(...usedMappings);
354
443
  output.push(result);
355
444
  }
@@ -0,0 +1 @@
1
+ {"version":3,"file":"node-reference-parser-utils.js","sourceRoot":"","sources":["../../src/node-reference-parser-utils.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ import type { IDataObject, IObservableObject } from './interfaces';
2
+ interface IObservableOptions {
3
+ ignoreEmptyOnFirstChild?: boolean;
4
+ }
5
+ export declare function create(target: IDataObject, parent?: IObservableObject, option?: IObservableOptions, depth?: number): IDataObject;
6
+ export {};
7
+ //# sourceMappingURL=observable-object.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"observable-object.d.ts","sourceRoot":"","sources":["../../src/observable-object.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAEnE,UAAU,kBAAkB;IAC3B,uBAAuB,CAAC,EAAE,OAAO,CAAC;CAClC;AAED,wBAAgB,MAAM,CACrB,MAAM,EAAE,WAAW,EACnB,MAAM,CAAC,EAAE,iBAAiB,EAC1B,MAAM,CAAC,EAAE,kBAAkB,EAC3B,KAAK,CAAC,EAAE,MAAM,GACZ,WAAW,CA6Db"}
@@ -1,11 +1,14 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.create = create;
4
- function create(target, parent, option, depth) {
1
+ /* eslint-disable @typescript-eslint/no-unsafe-return */
2
+ /* eslint-disable @typescript-eslint/no-shadow */
3
+ export function create(target, parent, option, depth) {
4
+ // eslint-disable-next-line @typescript-eslint/prefer-nullish-coalescing
5
5
  depth = depth || 0;
6
+ // Make all the children of target also observable
6
7
  for (const key in target) {
7
8
  if (typeof target[key] === 'object' && target[key] !== null) {
8
- target[key] = create(target[key], (parent || target), option, depth + 1);
9
+ target[key] = create(target[key],
10
+ // eslint-disable-next-line @typescript-eslint/prefer-nullish-coalescing
11
+ (parent || target), option, depth + 1);
9
12
  }
10
13
  }
11
14
  Object.defineProperty(target, '__dataChanged', {
@@ -15,9 +18,11 @@ function create(target, parent, option, depth) {
15
18
  return new Proxy(target, {
16
19
  deleteProperty(target, name) {
17
20
  if (parent === undefined) {
21
+ // If no parent is given mark current data as changed
18
22
  target.__dataChanged = true;
19
23
  }
20
24
  else {
25
+ // If parent is given mark the parent data as changed
21
26
  parent.__dataChanged = true;
22
27
  }
23
28
  return Reflect.deleteProperty(target, name);
@@ -30,11 +35,13 @@ function create(target, parent, option, depth) {
30
35
  },
31
36
  set(target, name, value) {
32
37
  if (parent === undefined) {
38
+ // If no parent is given mark current data as changed
33
39
  if (option !== undefined &&
34
40
  option.ignoreEmptyOnFirstChild === true &&
35
41
  depth === 0 &&
36
42
  target[name.toString()] === undefined &&
37
43
  typeof value === 'object' &&
44
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-argument
38
45
  Object.keys(value).length === 0) {
39
46
  }
40
47
  else {
@@ -42,6 +49,7 @@ function create(target, parent, option, depth) {
42
49
  }
43
50
  }
44
51
  else {
52
+ // If parent is given mark the parent data as changed
45
53
  parent.__dataChanged = true;
46
54
  }
47
55
  return Reflect.set(target, name, value);
@@ -0,0 +1 @@
1
+ {"version":3,"file":"observable-object.js","sourceRoot":"","sources":["../../src/observable-object.ts"],"names":[],"mappings":"AAAA,wDAAwD;AACxD,iDAAiD;AAQjD,MAAM,UAAU,MAAM,CACrB,MAAmB,EACnB,MAA0B,EAC1B,MAA2B,EAC3B,KAAc;IAEd,wEAAwE;IACxE,KAAK,GAAG,KAAK,IAAI,CAAC,CAAC;IAEnB,kDAAkD;IAElD,KAAK,MAAM,GAAG,IAAI,MAAM,EAAE,CAAC;QAC1B,IAAI,OAAO,MAAM,CAAC,GAAG,CAAC,KAAK,QAAQ,IAAI,MAAM,CAAC,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC;YAC7D,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,CACnB,MAAM,CAAC,GAAG,CAAgB;YAC1B,wEAAwE;YACxE,CAAC,MAAM,IAAI,MAAM,CAAsB,EACvC,MAAM,EACN,KAAK,GAAG,CAAC,CACT,CAAC;QACH,CAAC;IACF,CAAC;IAED,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,eAAe,EAAE;QAC9C,KAAK,EAAE,KAAK;QACZ,QAAQ,EAAE,IAAI;KACd,CAAC,CAAC;IACH,OAAO,IAAI,KAAK,CAAC,MAAM,EAAE;QACxB,cAAc,CAAC,MAAM,EAAE,IAAI;YAC1B,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;gBAC1B,qDAAqD;gBACpD,MAA4B,CAAC,aAAa,GAAG,IAAI,CAAC;YACpD,CAAC;iBAAM,CAAC;gBACP,qDAAqD;gBACrD,MAAM,CAAC,aAAa,GAAG,IAAI,CAAC;YAC7B,CAAC;YACD,OAAO,OAAO,CAAC,cAAc,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QAC7C,CAAC;QACD,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,QAAQ;YACzB,OAAO,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;QAC5C,CAAC;QACD,GAAG,CAAC,MAAM,EAAE,GAAG;YACd,OAAO,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QACjC,CAAC;QACD,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,KAAK;YACtB,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;gBAC1B,qDAAqD;gBACrD,IACC,MAAM,KAAK,SAAS;oBACpB,MAAM,CAAC,uBAAuB,KAAK,IAAI;oBACvC,KAAK,KAAK,CAAC;oBACX,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,KAAK,SAAS;oBACrC,OAAO,KAAK,KAAK,QAAQ;oBACzB,iEAAiE;oBACjE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,KAAK,CAAC,EAC9B,CAAC;gBACH,CAAC;qBAAM,CAAC;oBACN,MAA4B,CAAC,aAAa,GAAG,IAAI,CAAC;gBACpD,CAAC;YACF,CAAC;iBAAM,CAAC;gBACP,qDAAqD;gBACrD,MAAM,CAAC,aAAa,GAAG,IAAI,CAAC;YAC7B,CAAC;YACD,OAAO,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;QACzC,CAAC;KACD,CAAC,CAAC;AACJ,CAAC"}
@@ -0,0 +1,19 @@
1
+ export type ResultOk<T> = {
2
+ ok: true;
3
+ result: T;
4
+ };
5
+ export type ResultError<E> = {
6
+ ok: false;
7
+ error: E;
8
+ };
9
+ export type Result<T, E> = ResultOk<T> | ResultError<E>;
10
+ export declare const createResultOk: <T>(data: T) => ResultOk<T>;
11
+ export declare const createResultError: <E = unknown>(error: E) => ResultError<E>;
12
+ /**
13
+ * Executes the given function and converts it to a Result object.
14
+ *
15
+ * @example
16
+ * const result = toResult(() => fs.writeFileSync('file.txt', 'Hello, World!'));
17
+ */
18
+ export declare const toResult: <T, E extends Error = Error>(fn: () => T) => Result<T, E>;
19
+ //# sourceMappingURL=result.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"result.d.ts","sourceRoot":"","sources":["../../src/result.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,QAAQ,CAAC,CAAC,IAAI;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,MAAM,EAAE,CAAC,CAAA;CAAE,CAAC;AAClD,MAAM,MAAM,WAAW,CAAC,CAAC,IAAI;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,CAAC,CAAA;CAAE,CAAC;AACrD,MAAM,MAAM,MAAM,CAAC,CAAC,EAAE,CAAC,IAAI,QAAQ,CAAC,CAAC,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC;AAExD,eAAO,MAAM,cAAc,GAAI,CAAC,EAAE,MAAM,CAAC,KAAG,QAAQ,CAAC,CAAC,CAGpD,CAAC;AAEH,eAAO,MAAM,iBAAiB,GAAI,CAAC,GAAG,OAAO,EAAE,OAAO,CAAC,KAAG,WAAW,CAAC,CAAC,CAGrE,CAAC;AAEH;;;;;GAKG;AACH,eAAO,MAAM,QAAQ,GAAI,CAAC,EAAE,CAAC,SAAS,KAAK,GAAG,KAAK,EAAE,IAAI,MAAM,CAAC,KAAG,MAAM,CAAC,CAAC,EAAE,CAAC,CAO7E,CAAC"}
@@ -0,0 +1,25 @@
1
+ import { ensureError } from './errors';
2
+ export const createResultOk = (data) => ({
3
+ ok: true,
4
+ result: data,
5
+ });
6
+ export const createResultError = (error) => ({
7
+ ok: false,
8
+ error,
9
+ });
10
+ /**
11
+ * Executes the given function and converts it to a Result object.
12
+ *
13
+ * @example
14
+ * const result = toResult(() => fs.writeFileSync('file.txt', 'Hello, World!'));
15
+ */
16
+ export const toResult = (fn) => {
17
+ try {
18
+ return createResultOk(fn());
19
+ }
20
+ catch (e) {
21
+ const error = ensureError(e);
22
+ return createResultError(error);
23
+ }
24
+ };
25
+ //# sourceMappingURL=result.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"result.js","sourceRoot":"","sources":["../../src/result.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAMvC,MAAM,CAAC,MAAM,cAAc,GAAG,CAAI,IAAO,EAAe,EAAE,CAAC,CAAC;IAC3D,EAAE,EAAE,IAAI;IACR,MAAM,EAAE,IAAI;CACZ,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAc,KAAQ,EAAkB,EAAE,CAAC,CAAC;IAC5E,EAAE,EAAE,KAAK;IACT,KAAK;CACL,CAAC,CAAC;AAEH;;;;;GAKG;AACH,MAAM,CAAC,MAAM,QAAQ,GAAG,CAA6B,EAAW,EAAgB,EAAE;IACjF,IAAI,CAAC;QACJ,OAAO,cAAc,CAAI,EAAE,EAAE,CAAC,CAAC;IAChC,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACZ,MAAM,KAAK,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC;QAC7B,OAAO,iBAAiB,CAAI,KAAU,CAAC,CAAC;IACzC,CAAC;AACF,CAAC,CAAC"}
@@ -0,0 +1,45 @@
1
+ import type { INode, INodesGraphResult, IWorkflowBase, INodeTypes, IRunData, IRun } from './interfaces';
2
+ export declare function getNodeTypeForName(workflow: IWorkflowBase, nodeName: string): INode | undefined;
3
+ export declare function isNumber(value: unknown): value is number;
4
+ export declare function getDomainBase(raw: string, urlParts?: RegExp): string;
5
+ export declare const ANONYMIZATION_CHARACTER = "*";
6
+ /**
7
+ * Return pathname plus query string from URL, anonymizing IDs in route and query params.
8
+ */
9
+ export declare function getDomainPath(raw: string, urlParts?: RegExp): string;
10
+ export declare function generateNodesGraph(workflow: Partial<IWorkflowBase>, nodeTypes: INodeTypes, options?: {
11
+ sourceInstanceId?: string;
12
+ nodeIdMap?: {
13
+ [curr: string]: string;
14
+ };
15
+ isCloudDeployment?: boolean;
16
+ runData?: IRunData;
17
+ }): INodesGraphResult;
18
+ export declare function extractLastExecutedNodeCredentialData(runData: IRun): null | {
19
+ credentialId: string;
20
+ credentialType: string;
21
+ };
22
+ export declare const userInInstanceRanOutOfFreeAiCredits: (runData: IRun) => boolean;
23
+ export type FromAICount = {
24
+ aiNodeCount: number;
25
+ aiToolCount: number;
26
+ fromAIOverrideCount: number;
27
+ fromAIExpressionCount: number;
28
+ };
29
+ export declare function resolveAIMetrics(nodes: INode[], nodeTypes: INodeTypes): FromAICount | {};
30
+ export type VectorStoreMetrics = {
31
+ insertedIntoVectorStore: boolean;
32
+ queriedDataFromVectorStore: boolean;
33
+ };
34
+ export declare function resolveVectorStoreMetrics(nodes: INode[], nodeTypes: INodeTypes, run: IRun): VectorStoreMetrics | {};
35
+ type AgentNodeStructuredOutputErrorInfo = {
36
+ output_parser_fail_reason?: string;
37
+ model_name?: string;
38
+ num_tools?: number;
39
+ };
40
+ /**
41
+ * Extract additional debug information if the last executed node was an agent node
42
+ */
43
+ export declare function extractLastExecutedNodeStructuredOutputErrorInfo(workflow: IWorkflowBase, nodeTypes: INodeTypes, runData: IRun): AgentNodeStructuredOutputErrorInfo;
44
+ export {};
45
+ //# sourceMappingURL=telemetry-helpers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"telemetry-helpers.d.ts","sourceRoot":"","sources":["../../src/telemetry-helpers.ts"],"names":[],"mappings":"AAuBA,OAAO,KAAK,EAEX,KAAK,EAIL,iBAAiB,EACjB,aAAa,EACb,UAAU,EAEV,QAAQ,EAER,IAAI,EAEJ,MAAM,cAAc,CAAC;AAQtB,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,GAAG,KAAK,GAAG,SAAS,CAE/F;AAED,wBAAgB,QAAQ,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,MAAM,CAExD;AA+CD,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,SAAkB,GAAG,MAAM,CAY7E;AAQD,eAAO,MAAM,uBAAuB,MAAM,CAAC;AAS3C;;GAEG;AACH,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,SAAkB,GAAG,MAAM,CAiB7E;AAiBD,wBAAgB,kBAAkB,CACjC,QAAQ,EAAE,OAAO,CAAC,aAAa,CAAC,EAChC,SAAS,EAAE,UAAU,EACrB,OAAO,CAAC,EAAE;IACT,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,SAAS,CAAC,EAAE;QAAE,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAC;IACvC,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,OAAO,CAAC,EAAE,QAAQ,CAAC;CACnB,GACC,iBAAiB,CA2UnB;AAED,wBAAgB,qCAAqC,CACpD,OAAO,EAAE,IAAI,GACX,IAAI,GAAG;IAAE,YAAY,EAAE,MAAM,CAAC;IAAC,cAAc,EAAE,MAAM,CAAA;CAAE,CAczD;AAED,eAAO,MAAM,mCAAmC,GAAI,SAAS,IAAI,KAAG,OA0BnE,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG;IACzB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,qBAAqB,EAAE,MAAM,CAAC;CAC9B,CAAC;AAEF,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,SAAS,EAAE,UAAU,GAAG,WAAW,GAAG,EAAE,CAgDxF;AAED,MAAM,MAAM,kBAAkB,GAAG;IAChC,uBAAuB,EAAE,OAAO,CAAC;IACjC,0BAA0B,EAAE,OAAO,CAAC;CACpC,CAAC;AAEF,wBAAgB,yBAAyB,CACxC,KAAK,EAAE,KAAK,EAAE,EACd,SAAS,EAAE,UAAU,EACrB,GAAG,EAAE,IAAI,GACP,kBAAkB,GAAG,EAAE,CA6BzB;AAED,KAAK,kCAAkC,GAAG;IACzC,yBAAyB,CAAC,EAAE,MAAM,CAAC;IACnC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF;;GAEG;AACH,wBAAgB,gDAAgD,CAC/D,QAAQ,EAAE,aAAa,EACvB,SAAS,EAAE,UAAU,EACrB,OAAO,EAAE,IAAI,GACX,kCAAkC,CAyEpC"}