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
@@ -0,0 +1,788 @@
1
+ var __importDefault = (this && this.__importDefault) || function (mod) {
2
+ return (mod && mod.__esModule) ? mod : { "default": mod };
3
+ };
4
+ (function (factory) {
5
+ if (typeof module === "object" && typeof module.exports === "object") {
6
+ var v = factory(require, exports);
7
+ if (v !== undefined) module.exports = v;
8
+ }
9
+ else if (typeof define === "function" && define.amd) {
10
+ define(["require", "exports", "js-base64", "jssha", "luxon", "md5", "title-case", "transliteration", "./number-extensions", "../errors/expression-extension.error", "../type-validation"], factory);
11
+ }
12
+ })(function (require, exports) {
13
+ "use strict";
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.stringExtensions = exports.SupportedHashAlgorithms = void 0;
16
+ exports.toJsonString = toJsonString;
17
+ exports.toDateTime = toDateTime;
18
+ const js_base64_1 = require("js-base64");
19
+ const jssha_1 = __importDefault(require("jssha"));
20
+ const luxon_1 = require("luxon");
21
+ const md5_1 = __importDefault(require("md5"));
22
+ const title_case_1 = require("title-case");
23
+ const transliteration_1 = require("transliteration");
24
+ const number_extensions_1 = require("./number-extensions");
25
+ const expression_extension_error_1 = require("../errors/expression-extension.error");
26
+ const type_validation_1 = require("../type-validation");
27
+ exports.SupportedHashAlgorithms = [
28
+ 'md5',
29
+ 'sha1',
30
+ 'sha224',
31
+ 'sha256',
32
+ 'sha384',
33
+ 'sha512',
34
+ 'sha3',
35
+ ];
36
+ // All symbols from https://www.xe.com/symbols/ as for 2022/11/09
37
+ const CURRENCY_REGEXP = /(\u004c\u0065\u006b|\u060b|\u0024|\u0192|\u20bc|\u0042\u0072|\u0042\u005a\u0024|\u0024\u0062|\u004b\u004d|\u0050|\u043b\u0432|\u0052\u0024|\u17db|\u00a5|\u20a1|\u006b\u006e|\u20b1|\u004b\u010d|\u006b\u0072|\u0052\u0044\u0024|\u00a3|\u20ac|\u00a2|\u0051|\u004c|\u0046\u0074|\u20b9|\u0052\u0070|\ufdfc|\u20aa|\u004a\u0024|\u20a9|\u20ad|\u0434\u0435\u043d|\u0052\u004d|\u20a8|\u20ae|\u004d\u0054|\u0043\u0024|\u20a6|\u0042\u002f\u002e|\u0047\u0073|\u0053\u002f\u002e|\u007a\u0142|\u006c\u0065\u0069|\u20bd|\u0414\u0438\u043d\u002e|\u0053|\u0052|\u0043\u0048\u0046|\u004e\u0054\u0024|\u0e3f|\u0054\u0054\u0024|\u20ba|\u20b4|\u0024\u0055|\u0042\u0073|\u20ab|\u005a\u0024)/gu;
38
+ /*
39
+ Extract the domain part from various inputs, including URLs, email addresses, and plain domains.
40
+
41
+ /^(?:(?:https?|ftp):\/\/)? // Match optional http, https, or ftp protocols
42
+ (?:mailto:)? // Match optional mailto:
43
+ (?:\/\/)? // Match optional double slashes
44
+ (?:www\.)? // Match optional www prefix
45
+ (?:[-\w]*\.)? // Match any optional subdomain
46
+ ( // Capture the domain part
47
+ (?:(?:[-\w]+\.)+ // Match one or more subdomains
48
+ (?:[a-zA-Z]{2,}|xn--[a-zA-Z0-9]+) // Match top-level domain or Punycode encoded IDN(xn--80aswg.xn--p1ai)
49
+ |localhost // Match localhost
50
+ |\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3} // Match IPv4 addresses
51
+ )
52
+ )
53
+ (?::\d+)? // Match optional port number
54
+ (?:\/[^\s?]*)? // Match optional path
55
+ (?:\?[^\s#]*)? // Match optional query string
56
+ (?:#[^\s]*)?$/i; // Match optional hash fragment
57
+ */
58
+ const DOMAIN_EXTRACT_REGEXP = /^(?:(?:https?|ftp):\/\/)?(?:mailto:)?(?:\/\/)?((?:www\.)?(?:(?:[-\w]+\.)+(?:[a-zA-Z]{2,}|xn--[a-zA-Z0-9]+)|localhost|\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}))(?::\d+)?(?:\/[^\s?]*)?(?:\?[^\s#]*)?(?:#[^\s]*)?$/i;
59
+ /*
60
+ Matches domain names without the protocol or optional subdomains
61
+
62
+ /^(?:www\.)? // Match optional www prefix
63
+ ( // Capture the domain part
64
+ (?:(?:[-\w]+\.)+ // Match one or more subdomains
65
+ (?:[a-zA-Z]{2,}|xn--[a-zA-Z0-9]+) // Match top-level domain or Punycode encoded IDN
66
+ |localhost // Match localhost
67
+ |\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3} // Match IPv4 addresses
68
+ )
69
+ )
70
+ (?::\d+)? // Match optional port number
71
+ (?:\/[^\s?]*)? // Match optional path
72
+ (?:\?[^\s#]*)? // Match optional query string
73
+ (?:#[^\s]*)?$/i; // Match optional fragment at the end of the string
74
+ */
75
+ const DOMAIN_REGEXP = /^(?:www\.)?((?:(?:[-\w]+\.)+(?:[a-zA-Z]{2,}|xn--[a-zA-Z0-9]+)|localhost|\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}))(?::\d+)?(?:\/[^\s?]*)?(?:\?[^\s#]*)?(?:#[^\s]*)?$/i;
76
+ /*
77
+ Matches email addresses
78
+
79
+ /(
80
+ ( // Capture local part of the email address
81
+ ([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*) // One or more characters not in the set, followed by
82
+ a period, followed by one or more characters not in the set
83
+ |(".+") // Or one or more characters inside quotes
84
+ )
85
+ )
86
+ @ // Match @ symbol
87
+ (?<domain>( // Capture the domain part of the email address
88
+ \[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\] // Match IPv4 address inside brackets
89
+ |(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}) // Or match domain with at least two subdomains and TLD
90
+ ))/;
91
+ */
92
+ const EMAIL_REGEXP = /(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@(?<domain>(\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))/;
93
+ /*
94
+ Matches URLs with strict beginning and end of the string checks
95
+
96
+ /^(?:(?:https?|ftp):\/\/) // Match http, https, or ftp protocols at the start of the string
97
+ (?:www\.)? // Match optional www prefix
98
+ ( // Capture the domain part
99
+ (?:(?:[-\w]+\.)+ // Match one or more subdomains
100
+ (?:[a-zA-Z]{2,}|xn--[a-zA-Z0-9]+) // Match top-level domain or Punycode encoded IDN
101
+ |localhost // Match localhost
102
+ |\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3} // Match IPv4 addresses
103
+ )
104
+ )
105
+ (?::\d+)? // Match optional port number
106
+ (?:\/[^\s?#]*)? // Match optional path
107
+ (?:\?[^\s#]*)? // Match optional query string
108
+ (?=([^\s]+#.*)?) // Positive lookahead for the fragment identifier
109
+ #?[^\s]*$/i; // Match optional fragment at the end of the string
110
+ */
111
+ const URL_REGEXP_EXACT = /^(?:(?:https?|ftp):\/\/)(?:www\.)?((?:(?:[-\w]+\.)+(?:[a-zA-Z]{2,}|xn--[a-zA-Z0-9]+)|localhost|\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}))(?::\d+)?(?:\/[^\s?#]*)?(?:\?[^\s#]*)?(?=([^\s]+#.*)?)#?[^\s]*$/i;
112
+ /*
113
+ Same as URL_REGEXP_EXACT but without the strict beginning and end of the string checks to allow for
114
+ matching URLs in the middle of a string
115
+ */
116
+ const URL_REGEXP = /(?:(?:https?|ftp):\/\/)(?:www\.)?((?:(?:[-\w]+\.)+(?:[a-zA-Z]{2,}|xn--[a-zA-Z0-9]+)|localhost|\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}))(?::\d+)?(?:\/[^\s?#]*)?(?:\?[^\s#]*)?(?=([^\s]+#.*)?)#?[^\s]*/i;
117
+ const CHAR_TEST_REGEXP = /\p{L}/u;
118
+ const PUNC_TEST_REGEXP = /[!?.]/;
119
+ function hash(value, extraArgs) {
120
+ const algorithm = extraArgs[0]?.toLowerCase() ?? 'md5';
121
+ switch (algorithm) {
122
+ case 'base64':
123
+ return (0, js_base64_1.toBase64)(value);
124
+ case 'md5':
125
+ return (0, md5_1.default)(value);
126
+ case 'sha1':
127
+ case 'sha224':
128
+ case 'sha256':
129
+ case 'sha384':
130
+ case 'sha512':
131
+ case 'sha3':
132
+ const variant = {
133
+ sha1: 'SHA-1',
134
+ sha224: 'SHA-224',
135
+ sha256: 'SHA-256',
136
+ sha384: 'SHA-384',
137
+ sha512: 'SHA-512',
138
+ sha3: 'SHA3-512',
139
+ }[algorithm];
140
+ return new jssha_1.default(variant, 'TEXT').update(value).getHash('HEX');
141
+ default:
142
+ throw new expression_extension_error_1.ExpressionExtensionError(`Unknown algorithm ${algorithm}. Available algorithms are: ${exports.SupportedHashAlgorithms.join()}, and Base64.`);
143
+ }
144
+ }
145
+ function isEmpty(value) {
146
+ return value === '';
147
+ }
148
+ function isNotEmpty(value) {
149
+ return !isEmpty(value);
150
+ }
151
+ function length(value) {
152
+ return value.length;
153
+ }
154
+ function toJsonString(value) {
155
+ return JSON.stringify(value);
156
+ }
157
+ function removeMarkdown(value) {
158
+ let output = value;
159
+ try {
160
+ output = output.replace(/^([\s\t]*)([*\-+]|\d\.)\s+/gm, '$1');
161
+ output = output
162
+ // Header
163
+ .replace(/\n={2,}/g, '\n')
164
+ // Strikethrough
165
+ .replace(/~~/g, '')
166
+ // Fenced codeblocks
167
+ .replace(/`{3}.*\n/g, '');
168
+ output = output
169
+ // Remove HTML tags
170
+ .replace(/<[\w|\s|=|'|"|:|(|)|,|;|/|0-9|.|-]+[>|\\>]/g, '')
171
+ // Remove setext-style headers
172
+ .replace(/^[=-]{2,}\s*$/g, '')
173
+ // Remove footnotes?
174
+ .replace(/\[\^.+?\](: .*?$)?/g, '')
175
+ .replace(/\s{0,2}\[.*?\]: .*?$/g, '')
176
+ // Remove images
177
+ .replace(/!\[.*?\][[(].*?[\])]/g, '')
178
+ // Remove inline links
179
+ .replace(/\[(.*?)\][[(].*?[\])]/g, '$1')
180
+ // Remove Blockquotes
181
+ .replace(/>/g, '')
182
+ // Remove reference-style links?
183
+ .replace(/^\s{1,2}\[(.*?)\]: (\S+)( ".*?")?\s*$/g, '')
184
+ // Remove atx-style headers
185
+ .replace(/^#{1,6}\s*([^#]*)\s*(#{1,6})?/gm, '$1')
186
+ .replace(/([*_]{1,3})(\S.*?\S)\1/g, '$2')
187
+ .replace(/(`{3,})(.*?)\1/gm, '$2')
188
+ .replace(/^-{3,}\s*$/g, '')
189
+ .replace(/`(.+?)`/g, '$1')
190
+ .replace(/\n{2,}/g, '\n\n');
191
+ }
192
+ catch (e) {
193
+ return value;
194
+ }
195
+ return output;
196
+ }
197
+ function removeTags(value) {
198
+ return value.replace(/<[^>]*>?/gm, '');
199
+ }
200
+ function toDate(value) {
201
+ const date = new Date(Date.parse(value));
202
+ if (date.toString() === 'Invalid Date') {
203
+ throw new expression_extension_error_1.ExpressionExtensionError('cannot convert to date');
204
+ }
205
+ // If time component is not specified, force 00:00h
206
+ if (!/:/.test(value)) {
207
+ date.setHours(0, 0, 0);
208
+ }
209
+ return date;
210
+ }
211
+ function toDateTime(value, extraArgs = ['']) {
212
+ try {
213
+ const [valueFormat] = extraArgs;
214
+ if (valueFormat) {
215
+ if (valueFormat === 'ms' ||
216
+ valueFormat === 's' ||
217
+ valueFormat === 'us' ||
218
+ valueFormat === 'excel') {
219
+ return (0, number_extensions_1.toDateTime)(Number(value), [valueFormat]);
220
+ }
221
+ return luxon_1.DateTime.fromFormat(value, valueFormat);
222
+ }
223
+ return (0, type_validation_1.tryToParseDateTime)(value);
224
+ }
225
+ catch (error) {
226
+ throw new expression_extension_error_1.ExpressionExtensionError('cannot convert to Luxon DateTime');
227
+ }
228
+ }
229
+ function urlDecode(value, extraArgs) {
230
+ const [entireString = false] = extraArgs;
231
+ if (entireString) {
232
+ return decodeURI(value.toString());
233
+ }
234
+ return decodeURIComponent(value.toString());
235
+ }
236
+ function urlEncode(value, extraArgs) {
237
+ const [entireString = false] = extraArgs;
238
+ if (entireString) {
239
+ return encodeURI(value.toString());
240
+ }
241
+ return encodeURIComponent(value.toString());
242
+ }
243
+ function toInt(value, extraArgs) {
244
+ const [radix] = extraArgs;
245
+ const int = parseInt(value.replace(CURRENCY_REGEXP, ''), radix);
246
+ if (isNaN(int)) {
247
+ throw new expression_extension_error_1.ExpressionExtensionError('cannot convert to integer');
248
+ }
249
+ return int;
250
+ }
251
+ function toFloat(value) {
252
+ if (value.includes(',')) {
253
+ throw new expression_extension_error_1.ExpressionExtensionError('cannot convert to float, expected . as decimal separator');
254
+ }
255
+ const float = parseFloat(value.replace(CURRENCY_REGEXP, ''));
256
+ if (isNaN(float)) {
257
+ throw new expression_extension_error_1.ExpressionExtensionError('cannot convert to float');
258
+ }
259
+ return float;
260
+ }
261
+ function toNumber(value) {
262
+ const num = Number(value.replace(CURRENCY_REGEXP, ''));
263
+ if (isNaN(num)) {
264
+ throw new expression_extension_error_1.ExpressionExtensionError('cannot convert to number');
265
+ }
266
+ return num;
267
+ }
268
+ function quote(value, extraArgs) {
269
+ const [quoteChar = '"'] = extraArgs;
270
+ return `${quoteChar}${value
271
+ .replace(/\\/g, '\\\\')
272
+ .replace(new RegExp(`\\${quoteChar}`, 'g'), `\\${quoteChar}`)}${quoteChar}`;
273
+ }
274
+ function isNumeric(value) {
275
+ if (value.includes(' '))
276
+ return false;
277
+ return !isNaN(value) && !isNaN(parseFloat(value));
278
+ }
279
+ function isUrl(value) {
280
+ return URL_REGEXP_EXACT.test(value);
281
+ }
282
+ function isDomain(value) {
283
+ return DOMAIN_REGEXP.test(value);
284
+ }
285
+ function isEmail(value) {
286
+ const result = EMAIL_REGEXP.test(value);
287
+ // email regex is loose so check manually for now
288
+ if (result && value.includes(' ')) {
289
+ return false;
290
+ }
291
+ return result;
292
+ }
293
+ function toTitleCase(value) {
294
+ return (0, title_case_1.titleCase)(value);
295
+ }
296
+ function replaceSpecialChars(value) {
297
+ return (0, transliteration_1.transliterate)(value, { unknown: '?' });
298
+ }
299
+ function toSentenceCase(value) {
300
+ let current = value.slice();
301
+ let buffer = '';
302
+ while (CHAR_TEST_REGEXP.test(current)) {
303
+ const charIndex = current.search(CHAR_TEST_REGEXP);
304
+ current =
305
+ current.slice(0, charIndex) +
306
+ current[charIndex].toLocaleUpperCase() +
307
+ current.slice(charIndex + 1).toLocaleLowerCase();
308
+ const puncIndex = current.search(PUNC_TEST_REGEXP);
309
+ if (puncIndex === -1) {
310
+ buffer += current;
311
+ current = '';
312
+ break;
313
+ }
314
+ buffer += current.slice(0, puncIndex + 1);
315
+ current = current.slice(puncIndex + 1);
316
+ }
317
+ return buffer;
318
+ }
319
+ function toSnakeCase(value) {
320
+ return value
321
+ .toLocaleLowerCase()
322
+ .replace(/[ \-]/g, '_')
323
+ .replace(/[\u2000-\u206F\u2E00-\u2E7F\\'!"#$%&()*+,.\/:;<=>?@\[\]^`{|}~]/g, '');
324
+ }
325
+ function extractEmail(value) {
326
+ const matched = EMAIL_REGEXP.exec(value);
327
+ if (!matched) {
328
+ return undefined;
329
+ }
330
+ return matched[0];
331
+ }
332
+ function extractDomain(value) {
333
+ if (isEmail(value)) {
334
+ const matched = EMAIL_REGEXP.exec(value);
335
+ // This shouldn't happen
336
+ if (!matched) {
337
+ return undefined;
338
+ }
339
+ return matched.groups?.domain;
340
+ }
341
+ const domainMatch = value.match(DOMAIN_EXTRACT_REGEXP);
342
+ if (domainMatch) {
343
+ return domainMatch[1];
344
+ }
345
+ return undefined;
346
+ }
347
+ function extractUrl(value) {
348
+ const matched = URL_REGEXP.exec(value);
349
+ if (!matched) {
350
+ return undefined;
351
+ }
352
+ return matched[0];
353
+ }
354
+ function extractUrlPath(value) {
355
+ try {
356
+ const url = new URL(value);
357
+ return url.pathname;
358
+ }
359
+ catch (error) {
360
+ return undefined;
361
+ }
362
+ }
363
+ function parseJson(value) {
364
+ try {
365
+ return JSON.parse(value);
366
+ }
367
+ catch (error) {
368
+ if (value.includes("'")) {
369
+ throw new expression_extension_error_1.ExpressionExtensionError("Parsing failed. Check you're using double quotes");
370
+ }
371
+ throw new expression_extension_error_1.ExpressionExtensionError('Parsing failed');
372
+ }
373
+ }
374
+ function toBoolean(value) {
375
+ const normalized = value.toLowerCase();
376
+ const FALSY = new Set(['false', 'no', '0']);
377
+ return normalized.length > 0 && !FALSY.has(normalized);
378
+ }
379
+ function base64Encode(value) {
380
+ return (0, js_base64_1.toBase64)(value);
381
+ }
382
+ function base64Decode(value) {
383
+ return (0, js_base64_1.fromBase64)(value);
384
+ }
385
+ removeMarkdown.doc = {
386
+ name: 'removeMarkdown',
387
+ description: 'Removes any Markdown formatting from the string. Also removes HTML tags.',
388
+ section: 'edit',
389
+ returnType: 'string',
390
+ docURL: 'https://docs.n8n.io/code/builtin/data-transformation-functions/strings/#string-removeMarkdown',
391
+ examples: [{ example: '"*bold*, [link]()".removeMarkdown()', evaluated: '"bold, link"' }],
392
+ };
393
+ removeTags.doc = {
394
+ name: 'removeTags',
395
+ description: 'Removes tags, such as HTML or XML, from the string.',
396
+ section: 'edit',
397
+ returnType: 'string',
398
+ docURL: 'https://docs.n8n.io/code/builtin/data-transformation-functions/strings/#string-removeTags',
399
+ examples: [{ example: '"<b>bold</b>, <a>link</a>".removeTags()', evaluated: '"bold, link"' }],
400
+ };
401
+ toDate.doc = {
402
+ name: 'toDate',
403
+ description: 'Converts a string to a date.',
404
+ section: 'cast',
405
+ returnType: 'Date',
406
+ hidden: true,
407
+ docURL: 'https://docs.n8n.io/code/builtin/data-transformation-functions/strings/#string-toDate',
408
+ };
409
+ toDateTime.doc = {
410
+ name: 'toDateTime',
411
+ description: 'Converts the string to a <a target="_blank" href="https://moment.github.io/luxon/api-docs/">Luxon</a> DateTime. Useful for further transformation. Supported formats for the string are ISO 8601, HTTP, RFC2822, SQL and Unix timestamp in milliseconds. To parse other formats, use <a target="_blank" href=”https://moment.github.io/luxon/api-docs/index.html#datetimefromformat”> <code>DateTime.fromFormat()</code></a>.',
412
+ section: 'cast',
413
+ returnType: 'DateTime',
414
+ docURL: 'https://docs.n8n.io/code/builtin/data-transformation-functions/strings/#string-toDateTime',
415
+ examples: [
416
+ { example: '"2024-03-29T18:06:31.798+01:00".toDateTime()' },
417
+ { example: '"Fri, 29 Mar 2024 18:08:01 +0100".toDateTime()' },
418
+ { example: '"20240329".toDateTime()' },
419
+ { example: '"1711732132990".toDateTime("ms")' },
420
+ { example: '"31-01-2024".toDateTime("dd-MM-yyyy")' },
421
+ ],
422
+ args: [
423
+ {
424
+ name: 'format',
425
+ optional: true,
426
+ description: 'The format of the date string. Options are <code>ms</code> (for Unix timestamp in milliseconds), <code>s</code> (for Unix timestamp in seconds), <code>us</code> (for Unix timestamp in microseconds) or <code>excel</code> (for days since 1900). Custom formats can be specified using <a href="https://moment.github.io/luxon/#/formatting?id=table-of-tokens">Luxon tokens</a>.',
427
+ type: 'string',
428
+ },
429
+ ],
430
+ };
431
+ toBoolean.doc = {
432
+ name: 'toBoolean',
433
+ description: 'Converts the string to a boolean value. <code>0</code>, <code>false</code> and <code>no</code> resolve to <code>false</code>, everything else to <code>true</code>. Case-insensitive.',
434
+ section: 'cast',
435
+ returnType: 'boolean',
436
+ docURL: 'https://docs.n8n.io/code/builtin/data-transformation-functions/strings/#string-toBoolean',
437
+ examples: [
438
+ { example: '"true".toBoolean()', evaluated: 'true' },
439
+ { example: '"false".toBoolean()', evaluated: 'false' },
440
+ { example: '"0".toBoolean()', evaluated: 'false' },
441
+ { example: '"hello".toBoolean()', evaluated: 'true' },
442
+ ],
443
+ };
444
+ toFloat.doc = {
445
+ name: 'toFloat',
446
+ description: 'Converts a string to a decimal number.',
447
+ section: 'cast',
448
+ returnType: 'number',
449
+ aliases: ['toDecimalNumber'],
450
+ hidden: true,
451
+ docURL: 'https://docs.n8n.io/code/builtin/data-transformation-functions/strings/#string-toDecimalNumber',
452
+ };
453
+ toInt.doc = {
454
+ name: 'toInt',
455
+ description: 'Converts a string to an integer.',
456
+ section: 'cast',
457
+ returnType: 'number',
458
+ args: [{ name: 'radix?', type: 'number' }],
459
+ aliases: ['toWholeNumber'],
460
+ hidden: true,
461
+ docURL: 'https://docs.n8n.io/code/builtin/data-transformation-functions/strings/#string-toInt',
462
+ };
463
+ toSentenceCase.doc = {
464
+ name: 'toSentenceCase',
465
+ description: 'Changes the capitalization of the string to sentence case. The first letter of each sentence is capitalized and all others are lowercased.',
466
+ examples: [{ example: '"quick! brown FOX".toSentenceCase()', evaluated: '"Quick! Brown fox"' }],
467
+ section: 'case',
468
+ returnType: 'string',
469
+ docURL: 'https://docs.n8n.io/code/builtin/data-transformation-functions/strings/#string-toSentenceCase',
470
+ };
471
+ toSnakeCase.doc = {
472
+ name: 'toSnakeCase',
473
+ description: 'Changes the format of the string to snake case. Spaces and dashes are replaced by <code>_</code>, symbols are removed and all letters are lowercased.',
474
+ examples: [{ example: '"quick brown $FOX".toSnakeCase()', evaluated: '"quick_brown_fox"' }],
475
+ section: 'case',
476
+ returnType: 'string',
477
+ docURL: 'https://docs.n8n.io/code/builtin/data-transformation-functions/strings/#string-toSnakeCase',
478
+ };
479
+ toTitleCase.doc = {
480
+ name: 'toTitleCase',
481
+ description: "Changes the capitalization of the string to title case. The first letter of each word is capitalized and the others left unchanged. Short prepositions and conjunctions aren't capitalized (e.g. 'a', 'the').",
482
+ examples: [{ example: '"quick a brown FOX".toTitleCase()', evaluated: '"Quick a Brown Fox"' }],
483
+ section: 'case',
484
+ returnType: 'string',
485
+ docURL: 'https://docs.n8n.io/code/builtin/data-transformation-functions/strings/#string-toTitleCase',
486
+ };
487
+ urlEncode.doc = {
488
+ name: 'urlEncode',
489
+ description: 'Encodes the string so that it can be used in a URL. Spaces and special characters are replaced with codes of the form <code>%XX</code>.',
490
+ section: 'edit',
491
+ args: [
492
+ {
493
+ name: 'allChars',
494
+ optional: true,
495
+ description: 'Whether to encode characters that are part of the URI syntax (e.g. <code>=</code>, <code>?</code>)',
496
+ default: 'false',
497
+ type: 'boolean',
498
+ },
499
+ ],
500
+ returnType: 'string',
501
+ docURL: 'https://docs.n8n.io/code/builtin/data-transformation-functions/strings/#string-urlEncode',
502
+ examples: [
503
+ { example: '"name=Nathan Automat".urlEncode()', evaluated: '"name%3DNathan%20Automat"' },
504
+ { example: '"name=Nathan Automat".urlEncode(true)', evaluated: '"name=Nathan%20Automat"' },
505
+ ],
506
+ };
507
+ urlDecode.doc = {
508
+ name: 'urlDecode',
509
+ description: 'Decodes a URL-encoded string. Replaces any character codes in the form of <code>%XX</code> with their corresponding characters.',
510
+ args: [
511
+ {
512
+ name: 'allChars',
513
+ optional: true,
514
+ description: 'Whether to decode characters that are part of the URI syntax (e.g. <code>=</code>, <code>?</code>)',
515
+ default: 'false',
516
+ type: 'boolean',
517
+ },
518
+ ],
519
+ section: 'edit',
520
+ returnType: 'string',
521
+ docURL: 'https://docs.n8n.io/code/builtin/data-transformation-functions/strings/#string-urlDecode',
522
+ examples: [
523
+ { example: '"name%3DNathan%20Automat".urlDecode()', evaluated: '"name=Nathan Automat"' },
524
+ { example: '"name%3DNathan%20Automat".urlDecode(true)', evaluated: '"name%3DNathan Automat"' },
525
+ ],
526
+ };
527
+ replaceSpecialChars.doc = {
528
+ name: 'replaceSpecialChars',
529
+ description: 'Replaces special characters in the string with the closest ASCII character',
530
+ section: 'edit',
531
+ returnType: 'string',
532
+ docURL: 'https://docs.n8n.io/code/builtin/data-transformation-functions/strings/#string-replaceSpecialChars',
533
+ examples: [{ example: '"déjà".replaceSpecialChars()', evaluated: '"deja"' }],
534
+ };
535
+ length.doc = {
536
+ name: 'length',
537
+ section: 'query',
538
+ hidden: true,
539
+ description: 'Returns the character count of a string.',
540
+ returnType: 'number',
541
+ docURL: 'https://docs.n8n.io/code/builtin/data-transformation-functions/strings',
542
+ };
543
+ isDomain.doc = {
544
+ name: 'isDomain',
545
+ description: 'Returns <code>true</code> if a string is a domain.',
546
+ section: 'validation',
547
+ returnType: 'boolean',
548
+ docURL: 'https://docs.n8n.io/code/builtin/data-transformation-functions/strings/#string-isDomain',
549
+ examples: [
550
+ { example: '"n8n.io".isDomain()', evaluated: 'true' },
551
+ { example: '"http://n8n.io".isDomain()', evaluated: 'false' },
552
+ { example: '"hello".isDomain()', evaluated: 'false' },
553
+ ],
554
+ };
555
+ isEmail.doc = {
556
+ name: 'isEmail',
557
+ description: 'Returns <code>true</code> if the string is an email.',
558
+ section: 'validation',
559
+ returnType: 'boolean',
560
+ docURL: 'https://docs.n8n.io/code/builtin/data-transformation-functions/strings/#string-isEmail',
561
+ examples: [
562
+ { example: '"me@example.com".isEmail()', evaluated: 'true' },
563
+ { example: '"It\'s me@example.com".isEmail()', evaluated: 'false' },
564
+ { example: '"hello".isEmail()', evaluated: 'false' },
565
+ ],
566
+ };
567
+ isNumeric.doc = {
568
+ name: 'isNumeric',
569
+ description: 'Returns <code>true</code> if the string represents a number.',
570
+ section: 'validation',
571
+ returnType: 'boolean',
572
+ docURL: 'https://docs.n8n.io/code/builtin/data-transformation-functions/strings/#string-isNumeric',
573
+ examples: [
574
+ { example: '"1.2234".isNumeric()', evaluated: 'true' },
575
+ { example: '"hello".isNumeric()', evaluated: 'false' },
576
+ { example: '"123E23".isNumeric()', evaluated: 'true' },
577
+ ],
578
+ };
579
+ isUrl.doc = {
580
+ name: 'isUrl',
581
+ description: 'Returns <code>true</code> if a string is a valid URL',
582
+ section: 'validation',
583
+ returnType: 'boolean',
584
+ docURL: 'https://docs.n8n.io/code/builtin/data-transformation-functions/strings/#string-isUrl',
585
+ examples: [
586
+ { example: '"https://n8n.io".isUrl()', evaluated: 'true' },
587
+ { example: '"n8n.io".isUrl()', evaluated: 'false' },
588
+ { example: '"hello".isUrl()', evaluated: 'false' },
589
+ ],
590
+ };
591
+ isEmpty.doc = {
592
+ name: 'isEmpty',
593
+ description: 'Returns <code>true</code> if the string has no characters or is <code>null</code>',
594
+ section: 'validation',
595
+ returnType: 'boolean',
596
+ docURL: 'https://docs.n8n.io/code/builtin/data-transformation-functions/strings/#string-isEmpty',
597
+ examples: [
598
+ { example: '"".isEmpty()', evaluated: 'true' },
599
+ { example: '"hello".isEmpty()', evaluated: 'false' },
600
+ ],
601
+ };
602
+ isNotEmpty.doc = {
603
+ name: 'isNotEmpty',
604
+ description: 'Returns <code>true</code> if the string has at least one character.',
605
+ section: 'validation',
606
+ returnType: 'boolean',
607
+ docURL: 'https://docs.n8n.io/code/builtin/data-transformation-functions/strings/#string-isNotEmpty',
608
+ examples: [
609
+ { example: '"hello".isNotEmpty()', evaluated: 'true' },
610
+ { example: '"".isNotEmpty()', evaluated: 'false' },
611
+ ],
612
+ };
613
+ toJsonString.doc = {
614
+ name: 'toJsonString',
615
+ description: 'Prepares the string to be inserted into a JSON object. Escapes any quotes and special characters (e.g. new lines), and wraps the string in quotes.The same as JavaScript’s JSON.stringify().',
616
+ section: 'edit',
617
+ returnType: 'string',
618
+ docURL: 'https://docs.n8n.io/code/builtin/data-transformation-functions/strings/#string-toJsonString',
619
+ examples: [
620
+ {
621
+ example: 'The "best" colours: red\nbrown.toJsonString()',
622
+ evaluated: '"The \\"best\\" colours: red\\nbrown"',
623
+ },
624
+ { example: 'foo.toJsonString()', evaluated: '"foo"' },
625
+ ],
626
+ };
627
+ extractEmail.doc = {
628
+ name: 'extractEmail',
629
+ description: 'Extracts the first email found in the string. Returns <code>undefined</code> if none is found.',
630
+ section: 'edit',
631
+ returnType: 'string',
632
+ docURL: 'https://docs.n8n.io/code/builtin/data-transformation-functions/strings/#string-extractEmail',
633
+ examples: [
634
+ { example: '"My email is me@example.com".extractEmail()', evaluated: "'me@example.com'" },
635
+ ],
636
+ };
637
+ extractDomain.doc = {
638
+ name: 'extractDomain',
639
+ description: 'If the string is an email address or URL, returns its domain (or <code>undefined</code> if nothing found). If the string also contains other content, try using <code>extractEmail()</code> or <code>extractUrl()</code> first.',
640
+ section: 'edit',
641
+ returnType: 'string',
642
+ docURL: 'https://docs.n8n.io/code/builtin/data-transformation-functions/strings/#string-extractDomain',
643
+ examples: [
644
+ { example: '"me@example.com".extractDomain()', evaluated: "'example.com'" },
645
+ { example: '"http://n8n.io/workflows".extractDomain()', evaluated: "'n8n.io'" },
646
+ {
647
+ example: '"It\'s me@example.com".extractEmail().extractDomain()',
648
+ evaluated: "'example.com'",
649
+ },
650
+ ],
651
+ };
652
+ extractUrl.doc = {
653
+ name: 'extractUrl',
654
+ description: 'Extracts the first URL found in the string. Returns <code>undefined</code> if none is found. Only recognizes full URLs, e.g. those starting with <code>http</code>.',
655
+ section: 'edit',
656
+ returnType: 'string',
657
+ docURL: 'https://docs.n8n.io/code/builtin/data-transformation-functions/strings/#string-extractUrl',
658
+ examples: [{ example: '"Check out http://n8n.io".extractUrl()', evaluated: "'http://n8n.io'" }],
659
+ };
660
+ extractUrlPath.doc = {
661
+ name: 'extractUrlPath',
662
+ description: 'Returns the part of a URL after the domain, or <code>undefined</code> if no URL found. If the string also contains other content, try using <code>extractUrl()</code> first.',
663
+ section: 'edit',
664
+ returnType: 'string',
665
+ docURL: 'https://docs.n8n.io/code/builtin/data-transformation-functions/strings/#string-extractUrlPath',
666
+ examples: [
667
+ { example: '"http://n8n.io/workflows".extractUrlPath()', evaluated: "'/workflows'" },
668
+ {
669
+ example: '"Check out http://n8n.io/workflows".extractUrl().extractUrlPath()',
670
+ evaluated: "'/workflows'",
671
+ },
672
+ ],
673
+ };
674
+ hash.doc = {
675
+ name: 'hash',
676
+ description: 'Returns the string hashed with the given algorithm. Defaults to md5 if not specified.',
677
+ section: 'edit',
678
+ returnType: 'string',
679
+ args: [
680
+ {
681
+ name: 'algo',
682
+ optional: true,
683
+ description: 'The hashing algorithm to use. One of <code>md5</code>, <code>base64</code>, <code>sha1</code>, <code>sha224</code>, <code>sha256</code>, <code>sha384</code>, <code>sha512</code>, <code>sha3</code>, <code>ripemd160</code>\n ',
684
+ default: '"md5"',
685
+ type: 'string',
686
+ },
687
+ ],
688
+ docURL: 'https://docs.n8n.io/code/builtin/data-transformation-functions/strings/#string-hash',
689
+ examples: [{ example: '"hello".hash()', evaluated: "'5d41402abc4b2a76b9719d911017c592'" }],
690
+ };
691
+ quote.doc = {
692
+ name: 'quote',
693
+ description: 'Wraps a string in quotation marks, and escapes any quotation marks already in the string. Useful when constructing JSON, SQL, etc.',
694
+ section: 'edit',
695
+ returnType: 'string',
696
+ args: [
697
+ {
698
+ name: 'mark',
699
+ optional: true,
700
+ description: 'The type of quotation mark to use',
701
+ default: '"',
702
+ type: 'string',
703
+ },
704
+ ],
705
+ docURL: 'https://docs.n8n.io/code/builtin/data-transformation-functions/strings/#string-quote',
706
+ examples: [{ example: '\'Nathan says "hi"\'.quote()', evaluated: '\'"Nathan says \\"hi\\""\'' }],
707
+ };
708
+ parseJson.doc = {
709
+ name: 'parseJson',
710
+ description: "Returns the JavaScript value or object represented by the string, or <code>undefined</code> if the string isn't valid JSON. Single-quoted JSON is not supported.",
711
+ section: 'cast',
712
+ returnType: 'any',
713
+ docURL: 'https://docs.n8n.io/code/builtin/data-transformation-functions/strings/#string-parseJson',
714
+ examples: [
715
+ { example: '\'{"name":"Nathan"}\'.parseJson()', evaluated: '\'{"name":"Nathan"}\'' },
716
+ { example: "\"{'name':'Nathan'}\".parseJson()", evaluated: 'undefined' },
717
+ { example: "'hello'.parseJson()", evaluated: 'undefined' },
718
+ ],
719
+ };
720
+ base64Encode.doc = {
721
+ name: 'base64Encode',
722
+ description: 'Converts plain text to a base64-encoded string',
723
+ examples: [{ example: '"hello".base64Encode()', evaluated: '"aGVsbG8="' }],
724
+ section: 'edit',
725
+ returnType: 'string',
726
+ docURL: 'https://docs.n8n.io/code/builtin/data-transformation-functions/strings/#string-base64Encode',
727
+ };
728
+ base64Decode.doc = {
729
+ name: 'base64Decode',
730
+ description: 'Converts a base64-encoded string to plain text',
731
+ examples: [{ example: '"aGVsbG8=".base64Decode()', evaluated: '"hello"' }],
732
+ section: 'edit',
733
+ returnType: 'string',
734
+ docURL: 'https://docs.n8n.io/code/builtin/data-transformation-functions/strings/#string-base64Decode',
735
+ };
736
+ toNumber.doc = {
737
+ name: 'toNumber',
738
+ description: "Converts a string representing a number to a number. Errors if the string doesn't start with a valid number.",
739
+ section: 'cast',
740
+ returnType: 'number',
741
+ docURL: 'https://docs.n8n.io/code/builtin/data-transformation-functions/strings/#string-toNumber',
742
+ examples: [
743
+ { example: '"123".toNumber()', evaluated: '123' },
744
+ { example: '"1.23E10".toNumber()', evaluated: '12300000000' },
745
+ ],
746
+ };
747
+ const toDecimalNumber = toFloat.bind({});
748
+ const toWholeNumber = toInt.bind({});
749
+ exports.stringExtensions = {
750
+ typeName: 'String',
751
+ functions: {
752
+ hash,
753
+ removeMarkdown,
754
+ removeTags,
755
+ toDate,
756
+ toDateTime,
757
+ toBoolean,
758
+ toDecimalNumber,
759
+ toNumber,
760
+ toFloat,
761
+ toInt,
762
+ toWholeNumber,
763
+ toSentenceCase,
764
+ toSnakeCase,
765
+ toTitleCase,
766
+ urlDecode,
767
+ urlEncode,
768
+ quote,
769
+ replaceSpecialChars,
770
+ length,
771
+ isDomain,
772
+ isEmail,
773
+ isNumeric,
774
+ isUrl,
775
+ isEmpty,
776
+ isNotEmpty,
777
+ toJsonString,
778
+ extractEmail,
779
+ extractDomain,
780
+ extractUrl,
781
+ extractUrlPath,
782
+ parseJson,
783
+ base64Encode,
784
+ base64Decode,
785
+ },
786
+ };
787
+ });
788
+ //# sourceMappingURL=string-extensions.js.map