@oomol-lab/open-flow 0.1.0-beta.73 → 0.1.0-beta.75

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 (444) hide show
  1. package/LICENSE +36 -0
  2. package/NOTICE +7 -0
  3. package/README.md +41 -0
  4. package/dist/browser/{ContentIcon-CUQHjQIw.js → ContentIcon-FCpKiwjp.js} +2 -1
  5. package/dist/browser/{FlowCanvas-Dtf8_cQp.js → FlowCanvas-dzRBnlUT.js} +1 -1
  6. package/dist/browser/{createResourceDialog-BWJkjiOO.js → createResourceDialog-BeYDdUl-.js} +2 -2
  7. package/dist/browser/{dialog-CUy_fwx9.js → dialog-ZtpsFbl4.js} +337 -31
  8. package/dist/browser/{exportSvg-BOoy7-Db.js → exportSvg-DqXw1yf-.js} +2 -2
  9. package/dist/browser/{flowChanges-CgSnSqqP.js → flowChanges-b_5UobFj.js} +586 -87
  10. package/dist/browser/{flowWorkspace-Bf7H-r0t.js → flowWorkspace-ItojZbO4.js} +21162 -20242
  11. package/dist/browser/preview.css +254 -179
  12. package/dist/browser/preview.js +22201 -20625
  13. package/dist/browser/{typeScriptSession-B0hC-C8y.js → typeScriptSession-CSRwWmZm.js} +1 -1
  14. package/dist/browser/ui.css +72 -2
  15. package/dist/browser/workbench.css +254 -179
  16. package/dist/browser/workbench.js +22 -78
  17. package/dist/browser/{workbenchSelect-C3e4J93X.js → workbenchSelect-M441Lz0d.js} +1 -1
  18. package/dist/command/index.js +42 -42
  19. package/dist/common/authoring.d.ts +5 -5
  20. package/dist/common/authoringExamples.d.ts +3 -2
  21. package/dist/common/authoringFields.d.ts +1 -1
  22. package/dist/common/authoringSchema.d.ts +95 -8
  23. package/dist/common/connector-proxy.d.ts +1 -1
  24. package/dist/common/control-api-conformance.d.ts +1 -1
  25. package/dist/common/control-api-conformance.js +119 -31
  26. package/dist/common/control-api.d.ts +4 -3
  27. package/dist/common/control-api.js +117 -29
  28. package/dist/common/control-requests.d.ts +5 -4
  29. package/dist/common/control-requests.js +437 -103
  30. package/dist/common/cron-trigger.d.ts +1 -1
  31. package/dist/common/decision.d.ts +1 -1
  32. package/dist/common/draftOperations.d.ts +1 -1
  33. package/dist/common/engine-contract.d.ts +4 -2
  34. package/dist/common/event-source-definition.d.ts +1 -1
  35. package/dist/common/flow-agent.d.ts +1 -1
  36. package/dist/{browser → common}/flow-authoring-node.d.ts +3 -3
  37. package/dist/{browser → common}/flow-authoring.js +131 -30
  38. package/dist/{browser → common}/flow-change-schema.d.ts +177 -6
  39. package/dist/{browser → common}/flow-change.d.ts +35 -15
  40. package/dist/{browser → common}/flow-change.js +133 -32
  41. package/dist/common/flow-connectionUsage.d.ts +1 -1
  42. package/dist/common/flow-encoding.d.ts +1 -1
  43. package/dist/common/flow-encoding.js +89 -23
  44. package/dist/common/flow-errorHandling.d.ts +1 -1
  45. package/dist/common/flow-graph.d.ts +3 -2
  46. package/dist/common/flow-modules.d.ts +1 -1
  47. package/dist/common/flow-promptTemplate.d.ts +1 -1
  48. package/dist/common/flow-retry.d.ts +2 -2
  49. package/dist/common/flow-semantics.d.ts +1 -1
  50. package/dist/common/flow-semantics.js +966 -614
  51. package/dist/common/flow-workflowFile.d.ts +1 -1
  52. package/dist/common/flowInspection.d.ts +3 -3
  53. package/dist/common/http-request.d.ts +156 -0
  54. package/dist/common/http-request.js +5254 -0
  55. package/dist/common/integration-trigger.d.ts +1 -1
  56. package/dist/common/licenses.md +118 -1
  57. package/dist/common/liveDetails.d.ts +1 -1
  58. package/dist/common/mcp.d.ts +5 -4
  59. package/dist/common/mcp.js +117 -29
  60. package/dist/common/openapi.d.ts +1 -1
  61. package/dist/common/poll-trigger.d.ts +1 -1
  62. package/dist/common/run-events.js +11 -9
  63. package/dist/common/run-results.d.ts +8 -1
  64. package/dist/common/runtime-contract.d.ts +8 -2
  65. package/dist/common/runtime-contract.js +25 -5
  66. package/dist/common/scheduler-checkpoint.d.ts +1 -1
  67. package/dist/common/scheduler-dependencies.d.ts +1 -1
  68. package/dist/common/scheduler-node-execution.d.ts +1 -1
  69. package/dist/common/scheduler.d.ts +3 -3
  70. package/dist/common/scheduler.js +101 -33
  71. package/dist/common/trigger-catalog.d.ts +1 -1
  72. package/dist/common/trigger-config-options.d.ts +1 -1
  73. package/dist/common/trigger-config.d.ts +1 -1
  74. package/dist/common/trigger-contract.d.ts +2 -2
  75. package/dist/common/trigger-localization.d.ts +1 -1
  76. package/dist/common/webhook-response.d.ts +1 -3
  77. package/dist/common/webhook-trigger.d.ts +1 -1
  78. package/dist/common/webhook-trigger.js +12 -11
  79. package/dist/common/workflow.d.ts +17 -1
  80. package/dist/common/workflow.js +68 -22
  81. package/dist/index.d.ts +6 -3
  82. package/package.json +11 -6
  83. package/skills/open-flow/references/flow-authoring.md +1 -0
  84. package/skills/open-flow/references/flow-n8n-conversion.md +19 -15
  85. package/src/base/common/json.ts +90 -0
  86. package/src/canvas/common/commands.ts +15 -0
  87. package/src/connector/common/actionSchema.ts +168 -0
  88. package/src/connector/common/proxy.ts +44 -0
  89. package/src/control/common/api.ts +1506 -0
  90. package/src/control/common/authoring.ts +923 -0
  91. package/src/control/common/authoringCondition.ts +110 -0
  92. package/src/control/common/authoringDiagnosticFields.ts +136 -0
  93. package/src/control/common/authoringExamples.ts +200 -0
  94. package/src/control/common/authoringFields.ts +53 -0
  95. package/src/control/common/authoringLlm.ts +70 -0
  96. package/src/control/common/authoringOpenApi.ts +129 -0
  97. package/src/control/common/authoringSchema.ts +410 -0
  98. package/src/control/common/authoringTools.ts +123 -0
  99. package/src/control/common/authoringTriggers.ts +26 -0
  100. package/src/control/common/checkDecoders.ts +65 -0
  101. package/src/control/common/conformance.ts +1989 -0
  102. package/src/control/common/connectorDecoders.ts +370 -0
  103. package/src/control/common/connectorQueries.ts +61 -0
  104. package/src/control/common/decoding.ts +60 -0
  105. package/src/control/common/draftOperations.ts +61 -0
  106. package/src/control/common/errors.ts +114 -0
  107. package/src/control/common/eventSourceSchemas.ts +13 -0
  108. package/src/control/common/eventSources.ts +186 -0
  109. package/src/control/common/flowDecoders.ts +153 -0
  110. package/src/control/common/flowInspection.ts +181 -0
  111. package/src/control/common/flowNotifications.ts +37 -0
  112. package/src/control/common/liveDetails.ts +124 -0
  113. package/src/control/common/mcp.ts +241 -0
  114. package/src/control/common/mcpConformance.ts +142 -0
  115. package/src/control/common/providerAccess.ts +28 -0
  116. package/src/control/common/providerIconSprite.ts +42 -0
  117. package/src/control/common/publicationDecoders.ts +98 -0
  118. package/src/control/common/random.ts +16 -0
  119. package/src/control/common/requests.ts +112 -0
  120. package/src/control/common/resultQuery.ts +8 -0
  121. package/src/control/common/results.ts +176 -0
  122. package/src/control/common/revisionDecoders.ts +52 -0
  123. package/src/control/common/runDecoders.ts +240 -0
  124. package/src/control/common/triggerCatalog.ts +89 -0
  125. package/src/control/common/triggerDecoders.ts +175 -0
  126. package/src/decision/common/decision.ts +168 -0
  127. package/src/event-source/common/catalog.generated.json +65 -0
  128. package/src/event-source/common/definition.ts +66 -0
  129. package/src/event-source/common/index.ts +99 -0
  130. package/src/execution/common/checkpoint.ts +311 -0
  131. package/src/execution/common/dependencies.ts +440 -0
  132. package/src/execution/common/engineContract.ts +84 -0
  133. package/src/execution/common/events.ts +331 -0
  134. package/src/execution/common/node-execution.ts +469 -0
  135. package/src/execution/common/runLifecycle.ts +250 -0
  136. package/src/execution/common/runtime.ts +563 -0
  137. package/src/execution/common/scheduler.ts +697 -0
  138. package/src/execution/common/wait.ts +36 -0
  139. package/src/flow/common/agent.ts +305 -0
  140. package/src/flow/common/authoring.ts +30 -0
  141. package/src/flow/common/change.ts +1037 -0
  142. package/src/flow/common/changeSchema.ts +792 -0
  143. package/src/flow/common/codePermissions.ts +2 -0
  144. package/src/flow/common/condition.ts +265 -0
  145. package/src/flow/common/connectionUsage.ts +131 -0
  146. package/src/flow/common/edgeChanges.ts +35 -0
  147. package/src/flow/common/encoding.ts +437 -0
  148. package/src/flow/common/errorHandling.ts +34 -0
  149. package/src/flow/common/graph.ts +898 -0
  150. package/src/flow/common/inputValue.ts +16 -0
  151. package/src/flow/common/json.ts +8 -0
  152. package/src/flow/common/moduleChanges.ts +31 -0
  153. package/src/flow/common/modules.ts +292 -0
  154. package/src/flow/common/nodeChanges.ts +762 -0
  155. package/src/flow/common/portChanges.ts +36 -0
  156. package/src/flow/common/promptTemplate.ts +15 -0
  157. package/src/flow/common/retry.ts +20 -0
  158. package/src/flow/common/schema.ts +162 -0
  159. package/src/flow/common/schemaCompare.ts +176 -0
  160. package/src/flow/common/schemaComparer.ts +178 -0
  161. package/src/flow/common/schemaKeywords.ts +53 -0
  162. package/src/flow/common/semantics.ts +531 -0
  163. package/src/flow/common/sourceField.ts +35 -0
  164. package/src/flow/common/triggerScheduleSchema.ts +8 -0
  165. package/src/flow/common/wait.ts +30 -0
  166. package/src/flow/common/webhookMethod.ts +7 -0
  167. package/src/flow/common/webhookResponse.ts +71 -0
  168. package/src/flow/common/workflowFile.ts +97 -0
  169. package/src/http/common/authBindings.ts +12 -0
  170. package/src/http/common/headers.ts +5 -0
  171. package/src/http/common/httpRequest.ts +251 -0
  172. package/src/json-schema-subset/checker/array.ts +142 -0
  173. package/src/json-schema-subset/checker/cache.ts +57 -0
  174. package/src/json-schema-subset/checker/checker.ts +230 -0
  175. package/src/json-schema-subset/checker/enumAndConst.ts +113 -0
  176. package/src/json-schema-subset/checker/equals.ts +93 -0
  177. package/src/json-schema-subset/checker/numeric/checker.ts +50 -0
  178. package/src/json-schema-subset/checker/numeric/float.ts +121 -0
  179. package/src/json-schema-subset/checker/numeric/index.ts +1 -0
  180. package/src/json-schema-subset/checker/numeric/integer.ts +119 -0
  181. package/src/json-schema-subset/checker/numeric/integerNormalizer.ts +72 -0
  182. package/src/json-schema-subset/checker/object.ts +354 -0
  183. package/src/json-schema-subset/checker/range.ts +91 -0
  184. package/src/json-schema-subset/checker/string.ts +60 -0
  185. package/src/json-schema-subset/checker/tools/index.ts +3 -0
  186. package/src/json-schema-subset/checker/tools/mark.ts +82 -0
  187. package/src/json-schema-subset/checker/tools/quantum.ts +106 -0
  188. package/src/json-schema-subset/checker/tools/range.ts +210 -0
  189. package/src/json-schema-subset/checker/validator.ts +23 -0
  190. package/src/json-schema-subset/compiler/array.ts +163 -0
  191. package/src/json-schema-subset/compiler/combination.ts +109 -0
  192. package/src/json-schema-subset/compiler/common.ts +99 -0
  193. package/src/json-schema-subset/compiler/compiler.ts +188 -0
  194. package/src/json-schema-subset/compiler/enumAndConst.ts +75 -0
  195. package/src/json-schema-subset/compiler/index.ts +11 -0
  196. package/src/json-schema-subset/compiler/object.ts +411 -0
  197. package/src/json-schema-subset/compiler/primitive.ts +144 -0
  198. package/src/json-schema-subset/compiler/utils.ts +24 -0
  199. package/src/json-schema-subset/compiler/wrapper.ts +192 -0
  200. package/src/json-schema-subset/error.ts +55 -0
  201. package/src/json-schema-subset/expression/calculator.ts +442 -0
  202. package/src/json-schema-subset/expression/combination.ts +49 -0
  203. package/src/json-schema-subset/expression/expression.ts +191 -0
  204. package/src/json-schema-subset/expression/index.ts +25 -0
  205. package/src/json-schema-subset/expression/result.ts +88 -0
  206. package/src/json-schema-subset/expression/types.ts +36 -0
  207. package/src/json-schema-subset/extends/extendsContext.ts +89 -0
  208. package/src/json-schema-subset/extends/index.ts +2 -0
  209. package/src/json-schema-subset/extends/types.ts +12 -0
  210. package/src/json-schema-subset/global.ts +60 -0
  211. package/src/json-schema-subset/index.ts +8 -0
  212. package/src/json-schema-subset/preprocessing.ts +74 -0
  213. package/src/json-schema-subset/types.ts +8 -0
  214. package/src/json-schema-subset/utils.ts +95 -0
  215. package/src/localization/common/languages.ts +118 -0
  216. package/src/localization/common/timeZone.ts +25 -0
  217. package/src/openapi/common/openapi.ts +459 -0
  218. package/src/trigger/common/config.ts +56 -0
  219. package/src/trigger/common/configOptions.ts +15 -0
  220. package/src/trigger/common/configSchema.ts +8 -0
  221. package/src/trigger/common/contract.ts +132 -0
  222. package/src/trigger/common/cron.ts +151 -0
  223. package/src/trigger/common/integration.ts +498 -0
  224. package/src/trigger/common/poll.ts +187 -0
  225. package/src/trigger/common/webhook.ts +413 -0
  226. package/src/trigger/providers/airtable/locales/fr.json +18 -0
  227. package/src/trigger/providers/airtable/locales/ja.json +18 -0
  228. package/src/trigger/providers/airtable/locales/ko.json +18 -0
  229. package/src/trigger/providers/airtable/locales/ru.json +18 -0
  230. package/src/trigger/providers/airtable/locales/zh-CN.json +18 -0
  231. package/src/trigger/providers/airtable/locales/zh-TW.json +18 -0
  232. package/src/trigger/providers/asana/locales/fr.json +15 -0
  233. package/src/trigger/providers/asana/locales/ja.json +15 -0
  234. package/src/trigger/providers/asana/locales/ko.json +15 -0
  235. package/src/trigger/providers/asana/locales/ru.json +15 -0
  236. package/src/trigger/providers/asana/locales/zh-CN.json +15 -0
  237. package/src/trigger/providers/asana/locales/zh-TW.json +15 -0
  238. package/src/trigger/providers/calendly/locales/fr.json +16 -0
  239. package/src/trigger/providers/calendly/locales/ja.json +16 -0
  240. package/src/trigger/providers/calendly/locales/ko.json +16 -0
  241. package/src/trigger/providers/calendly/locales/ru.json +16 -0
  242. package/src/trigger/providers/calendly/locales/zh-CN.json +16 -0
  243. package/src/trigger/providers/calendly/locales/zh-TW.json +16 -0
  244. package/src/trigger/providers/catalog.generated.json +4996 -0
  245. package/src/trigger/providers/clickup/locales/fr.json +16 -0
  246. package/src/trigger/providers/clickup/locales/ja.json +16 -0
  247. package/src/trigger/providers/clickup/locales/ko.json +16 -0
  248. package/src/trigger/providers/clickup/locales/ru.json +16 -0
  249. package/src/trigger/providers/clickup/locales/zh-CN.json +16 -0
  250. package/src/trigger/providers/clickup/locales/zh-TW.json +16 -0
  251. package/src/trigger/providers/definitions.ts +19 -0
  252. package/src/trigger/providers/feishu/locales/fr.json +20 -0
  253. package/src/trigger/providers/feishu/locales/ja.json +20 -0
  254. package/src/trigger/providers/feishu/locales/ko.json +20 -0
  255. package/src/trigger/providers/feishu/locales/ru.json +20 -0
  256. package/src/trigger/providers/feishu/locales/zh-CN.json +20 -0
  257. package/src/trigger/providers/feishu/locales/zh-TW.json +20 -0
  258. package/src/trigger/providers/fieldDescriptions.ts +392 -0
  259. package/src/trigger/providers/fieldLabels.ts +256 -0
  260. package/src/trigger/providers/fireflies/locales/fr.json +17 -0
  261. package/src/trigger/providers/fireflies/locales/ja.json +17 -0
  262. package/src/trigger/providers/fireflies/locales/ko.json +17 -0
  263. package/src/trigger/providers/fireflies/locales/ru.json +17 -0
  264. package/src/trigger/providers/fireflies/locales/zh-CN.json +17 -0
  265. package/src/trigger/providers/fireflies/locales/zh-TW.json +17 -0
  266. package/src/trigger/providers/github/locales/fr.json +30 -0
  267. package/src/trigger/providers/github/locales/ja.json +30 -0
  268. package/src/trigger/providers/github/locales/ko.json +30 -0
  269. package/src/trigger/providers/github/locales/ru.json +30 -0
  270. package/src/trigger/providers/github/locales/zh-CN.json +30 -0
  271. package/src/trigger/providers/github/locales/zh-TW.json +30 -0
  272. package/src/trigger/providers/gitlab/locales/fr.json +18 -0
  273. package/src/trigger/providers/gitlab/locales/ja.json +18 -0
  274. package/src/trigger/providers/gitlab/locales/ko.json +18 -0
  275. package/src/trigger/providers/gitlab/locales/ru.json +18 -0
  276. package/src/trigger/providers/gitlab/locales/zh-CN.json +18 -0
  277. package/src/trigger/providers/gitlab/locales/zh-TW.json +18 -0
  278. package/src/trigger/providers/gmail/locales/fr.json +18 -0
  279. package/src/trigger/providers/gmail/locales/ja.json +18 -0
  280. package/src/trigger/providers/gmail/locales/ko.json +18 -0
  281. package/src/trigger/providers/gmail/locales/ru.json +18 -0
  282. package/src/trigger/providers/gmail/locales/zh-CN.json +18 -0
  283. package/src/trigger/providers/gmail/locales/zh-TW.json +18 -0
  284. package/src/trigger/providers/google-calendar/locales/fr.json +15 -0
  285. package/src/trigger/providers/google-calendar/locales/ja.json +15 -0
  286. package/src/trigger/providers/google-calendar/locales/ko.json +15 -0
  287. package/src/trigger/providers/google-calendar/locales/ru.json +15 -0
  288. package/src/trigger/providers/google-calendar/locales/zh-CN.json +15 -0
  289. package/src/trigger/providers/google-calendar/locales/zh-TW.json +15 -0
  290. package/src/trigger/providers/google-drive/locales/fr.json +48 -0
  291. package/src/trigger/providers/google-drive/locales/ja.json +48 -0
  292. package/src/trigger/providers/google-drive/locales/ko.json +48 -0
  293. package/src/trigger/providers/google-drive/locales/ru.json +48 -0
  294. package/src/trigger/providers/google-drive/locales/zh-CN.json +48 -0
  295. package/src/trigger/providers/google-drive/locales/zh-TW.json +48 -0
  296. package/src/trigger/providers/google-sheets/locales/fr.json +19 -0
  297. package/src/trigger/providers/google-sheets/locales/ja.json +19 -0
  298. package/src/trigger/providers/google-sheets/locales/ko.json +19 -0
  299. package/src/trigger/providers/google-sheets/locales/ru.json +19 -0
  300. package/src/trigger/providers/google-sheets/locales/zh-CN.json +19 -0
  301. package/src/trigger/providers/google-sheets/locales/zh-TW.json +19 -0
  302. package/src/trigger/providers/intercom/locales/fr.json +17 -0
  303. package/src/trigger/providers/intercom/locales/ja.json +17 -0
  304. package/src/trigger/providers/intercom/locales/ko.json +17 -0
  305. package/src/trigger/providers/intercom/locales/ru.json +17 -0
  306. package/src/trigger/providers/intercom/locales/zh-CN.json +17 -0
  307. package/src/trigger/providers/intercom/locales/zh-TW.json +17 -0
  308. package/src/trigger/providers/jira/locales/fr.json +17 -0
  309. package/src/trigger/providers/jira/locales/ja.json +17 -0
  310. package/src/trigger/providers/jira/locales/ko.json +17 -0
  311. package/src/trigger/providers/jira/locales/ru.json +17 -0
  312. package/src/trigger/providers/jira/locales/zh-CN.json +17 -0
  313. package/src/trigger/providers/jira/locales/zh-TW.json +17 -0
  314. package/src/trigger/providers/linear/locales/fr.json +13 -0
  315. package/src/trigger/providers/linear/locales/ja.json +13 -0
  316. package/src/trigger/providers/linear/locales/ko.json +13 -0
  317. package/src/trigger/providers/linear/locales/ru.json +13 -0
  318. package/src/trigger/providers/linear/locales/zh-CN.json +13 -0
  319. package/src/trigger/providers/linear/locales/zh-TW.json +13 -0
  320. package/src/trigger/providers/locales/fr.ts +71 -0
  321. package/src/trigger/providers/locales/ja.ts +71 -0
  322. package/src/trigger/providers/locales/ko.ts +71 -0
  323. package/src/trigger/providers/locales/ru.ts +71 -0
  324. package/src/trigger/providers/locales/zh-CN.ts +71 -0
  325. package/src/trigger/providers/locales/zh-TW.ts +71 -0
  326. package/src/trigger/providers/localization.ts +59 -0
  327. package/src/trigger/providers/notion/locales/fr.json +16 -0
  328. package/src/trigger/providers/notion/locales/ja.json +16 -0
  329. package/src/trigger/providers/notion/locales/ko.json +16 -0
  330. package/src/trigger/providers/notion/locales/ru.json +16 -0
  331. package/src/trigger/providers/notion/locales/zh-CN.json +16 -0
  332. package/src/trigger/providers/notion/locales/zh-TW.json +16 -0
  333. package/src/trigger/providers/one-drive/locales/fr.json +16 -0
  334. package/src/trigger/providers/one-drive/locales/ja.json +16 -0
  335. package/src/trigger/providers/one-drive/locales/ko.json +16 -0
  336. package/src/trigger/providers/one-drive/locales/ru.json +16 -0
  337. package/src/trigger/providers/one-drive/locales/zh-CN.json +16 -0
  338. package/src/trigger/providers/one-drive/locales/zh-TW.json +16 -0
  339. package/src/trigger/providers/outlook/locales/fr.json +18 -0
  340. package/src/trigger/providers/outlook/locales/ja.json +18 -0
  341. package/src/trigger/providers/outlook/locales/ko.json +18 -0
  342. package/src/trigger/providers/outlook/locales/ru.json +18 -0
  343. package/src/trigger/providers/outlook/locales/zh-CN.json +18 -0
  344. package/src/trigger/providers/outlook/locales/zh-TW.json +18 -0
  345. package/src/trigger/providers/pandadoc/locales/fr.json +12 -0
  346. package/src/trigger/providers/pandadoc/locales/ja.json +12 -0
  347. package/src/trigger/providers/pandadoc/locales/ko.json +12 -0
  348. package/src/trigger/providers/pandadoc/locales/ru.json +12 -0
  349. package/src/trigger/providers/pandadoc/locales/zh-CN.json +12 -0
  350. package/src/trigger/providers/pandadoc/locales/zh-TW.json +12 -0
  351. package/src/trigger/providers/pipedrive/locales/fr.json +15 -0
  352. package/src/trigger/providers/pipedrive/locales/ja.json +15 -0
  353. package/src/trigger/providers/pipedrive/locales/ko.json +15 -0
  354. package/src/trigger/providers/pipedrive/locales/ru.json +15 -0
  355. package/src/trigger/providers/pipedrive/locales/zh-CN.json +15 -0
  356. package/src/trigger/providers/pipedrive/locales/zh-TW.json +15 -0
  357. package/src/trigger/providers/remote.ts +163 -0
  358. package/src/trigger/providers/resend/locales/fr.json +16 -0
  359. package/src/trigger/providers/resend/locales/ja.json +16 -0
  360. package/src/trigger/providers/resend/locales/ko.json +16 -0
  361. package/src/trigger/providers/resend/locales/ru.json +16 -0
  362. package/src/trigger/providers/resend/locales/zh-CN.json +16 -0
  363. package/src/trigger/providers/resend/locales/zh-TW.json +16 -0
  364. package/src/trigger/providers/sentry/locales/fr.json +19 -0
  365. package/src/trigger/providers/sentry/locales/ja.json +19 -0
  366. package/src/trigger/providers/sentry/locales/ko.json +19 -0
  367. package/src/trigger/providers/sentry/locales/ru.json +19 -0
  368. package/src/trigger/providers/sentry/locales/zh-CN.json +19 -0
  369. package/src/trigger/providers/sentry/locales/zh-TW.json +19 -0
  370. package/src/trigger/providers/shopify/locales/fr.json +18 -0
  371. package/src/trigger/providers/shopify/locales/ja.json +18 -0
  372. package/src/trigger/providers/shopify/locales/ko.json +18 -0
  373. package/src/trigger/providers/shopify/locales/ru.json +18 -0
  374. package/src/trigger/providers/shopify/locales/zh-CN.json +18 -0
  375. package/src/trigger/providers/shopify/locales/zh-TW.json +18 -0
  376. package/src/trigger/providers/slack/locales/fr.json +18 -0
  377. package/src/trigger/providers/slack/locales/ja.json +18 -0
  378. package/src/trigger/providers/slack/locales/ko.json +18 -0
  379. package/src/trigger/providers/slack/locales/ru.json +18 -0
  380. package/src/trigger/providers/slack/locales/zh-CN.json +18 -0
  381. package/src/trigger/providers/slack/locales/zh-TW.json +18 -0
  382. package/src/trigger/providers/slackbot/locales/fr.json +23 -0
  383. package/src/trigger/providers/slackbot/locales/ja.json +23 -0
  384. package/src/trigger/providers/slackbot/locales/ko.json +23 -0
  385. package/src/trigger/providers/slackbot/locales/ru.json +23 -0
  386. package/src/trigger/providers/slackbot/locales/zh-CN.json +23 -0
  387. package/src/trigger/providers/slackbot/locales/zh-TW.json +23 -0
  388. package/src/trigger/providers/source-events.ts +25 -0
  389. package/src/trigger/providers/stripe/locales/fr.json +17 -0
  390. package/src/trigger/providers/stripe/locales/ja.json +17 -0
  391. package/src/trigger/providers/stripe/locales/ko.json +17 -0
  392. package/src/trigger/providers/stripe/locales/ru.json +17 -0
  393. package/src/trigger/providers/stripe/locales/zh-CN.json +17 -0
  394. package/src/trigger/providers/stripe/locales/zh-TW.json +17 -0
  395. package/src/trigger/providers/tally/locales/fr.json +12 -0
  396. package/src/trigger/providers/tally/locales/ja.json +12 -0
  397. package/src/trigger/providers/tally/locales/ko.json +12 -0
  398. package/src/trigger/providers/tally/locales/ru.json +12 -0
  399. package/src/trigger/providers/tally/locales/zh-CN.json +12 -0
  400. package/src/trigger/providers/tally/locales/zh-TW.json +12 -0
  401. package/src/trigger/providers/telegram/locales/fr.json +17 -0
  402. package/src/trigger/providers/telegram/locales/ja.json +17 -0
  403. package/src/trigger/providers/telegram/locales/ko.json +17 -0
  404. package/src/trigger/providers/telegram/locales/ru.json +17 -0
  405. package/src/trigger/providers/telegram/locales/zh-CN.json +17 -0
  406. package/src/trigger/providers/telegram/locales/zh-TW.json +17 -0
  407. package/src/trigger/providers/typeform/locales/fr.json +12 -0
  408. package/src/trigger/providers/typeform/locales/ja.json +12 -0
  409. package/src/trigger/providers/typeform/locales/ko.json +12 -0
  410. package/src/trigger/providers/typeform/locales/ru.json +12 -0
  411. package/src/trigger/providers/typeform/locales/zh-CN.json +12 -0
  412. package/src/trigger/providers/typeform/locales/zh-TW.json +12 -0
  413. package/src/trigger/providers/vercel/locales/fr.json +18 -0
  414. package/src/trigger/providers/vercel/locales/ja.json +18 -0
  415. package/src/trigger/providers/vercel/locales/ko.json +18 -0
  416. package/src/trigger/providers/vercel/locales/ru.json +18 -0
  417. package/src/trigger/providers/vercel/locales/zh-CN.json +18 -0
  418. package/src/trigger/providers/vercel/locales/zh-TW.json +18 -0
  419. package/src/trigger/providers/woocommerce/locales/fr.json +19 -0
  420. package/src/trigger/providers/woocommerce/locales/ja.json +19 -0
  421. package/src/trigger/providers/woocommerce/locales/ko.json +19 -0
  422. package/src/trigger/providers/woocommerce/locales/ru.json +19 -0
  423. package/src/trigger/providers/woocommerce/locales/zh-CN.json +19 -0
  424. package/src/trigger/providers/woocommerce/locales/zh-TW.json +19 -0
  425. package/src/trigger/providers/zendesk/locales/fr.json +15 -0
  426. package/src/trigger/providers/zendesk/locales/ja.json +15 -0
  427. package/src/trigger/providers/zendesk/locales/ko.json +15 -0
  428. package/src/trigger/providers/zendesk/locales/ru.json +15 -0
  429. package/src/trigger/providers/zendesk/locales/zh-CN.json +15 -0
  430. package/src/trigger/providers/zendesk/locales/zh-TW.json +15 -0
  431. package/src/trigger/providers/zoom/locales/fr.json +17 -0
  432. package/src/trigger/providers/zoom/locales/ja.json +17 -0
  433. package/src/trigger/providers/zoom/locales/ko.json +17 -0
  434. package/src/trigger/providers/zoom/locales/ru.json +17 -0
  435. package/src/trigger/providers/zoom/locales/zh-CN.json +17 -0
  436. package/src/trigger/providers/zoom/locales/zh-TW.json +17 -0
  437. package/src/types/index.ts +112 -0
  438. package/src/workflow/common/workflow.ts +273 -0
  439. package/dist/browser/lib-DrKav3HG.js +0 -11403
  440. /package/dist/{browser → common}/flow-authoring-edge.d.ts +0 -0
  441. /package/dist/{browser → common}/flow-authoring-module.d.ts +0 -0
  442. /package/dist/{browser → common}/flow-authoring.d.ts +0 -0
  443. /package/dist/{browser → common}/flow-input-value.d.ts +0 -0
  444. /package/dist/{browser → common}/webhook-method.d.ts +0 -0
@@ -1,6 +1,6 @@
1
1
  export { resolveTriggerConfig, triggerConfigValues } from './trigger-config.js';
2
2
  import type { ConnectorProxy } from './connector-proxy.js';
3
- import type { IntegrationEndpointMethod, JsonValue, TriggerKeySnapshot } from '../browser/flow-change.js';
3
+ import type { IntegrationEndpointMethod, JsonValue, TriggerKeySnapshot } from './flow-change.js';
4
4
  import type { TriggerConfigOption, TriggerConfigOptionsContext } from './trigger-config-options.js';
5
5
  export declare const maximumIntegrationBodyBytes: number;
6
6
  export declare const maximumIntegrationDeliveryPages = 5;
@@ -1,3 +1,120 @@
1
1
  # Licenses
2
2
 
3
- The app does not bundle any dependencies with licenses.
3
+ The app bundles dependencies which contain the following licenses:
4
+
5
+ ## @babel/parser - 8.0.4 (MIT)
6
+
7
+ Copyright (C) 2012-2014 by various contributors (see AUTHORS)
8
+
9
+ Permission is hereby granted, free of charge, to any person obtaining a copy
10
+ of this software and associated documentation files (the "Software"), to deal
11
+ in the Software without restriction, including without limitation the rights
12
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
13
+ copies of the Software, and to permit persons to whom the Software is
14
+ furnished to do so, subject to the following conditions:
15
+
16
+ The above copyright notice and this permission notice shall be included in
17
+ all copies or substantial portions of the Software.
18
+
19
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
20
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
21
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
22
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
23
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
24
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
25
+ THE SOFTWARE.
26
+
27
+ ## @wopjs/cast - 0.1.16 (MIT)
28
+
29
+ MIT License
30
+
31
+ Copyright (c) 2026 wopjs
32
+
33
+ Permission is hereby granted, free of charge, to any person obtaining a copy
34
+ of this software and associated documentation files (the "Software"), to deal
35
+ in the Software without restriction, including without limitation the rights
36
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
37
+ copies of the Software, and to permit persons to whom the Software is
38
+ furnished to do so, subject to the following conditions:
39
+
40
+ The above copyright notice and this permission notice shall be included in all
41
+ copies or substantial portions of the Software.
42
+
43
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
44
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
45
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
46
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
47
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
48
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
49
+ SOFTWARE.
50
+
51
+ ## dequal - 2.0.3 (MIT)
52
+
53
+ The MIT License (MIT)
54
+
55
+ Copyright (c) Luke Edwards <luke.edwards05@gmail.com> (lukeed.com)
56
+
57
+ Permission is hereby granted, free of charge, to any person obtaining a copy
58
+ of this software and associated documentation files (the "Software"), to deal
59
+ in the Software without restriction, including without limitation the rights
60
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
61
+ copies of the Software, and to permit persons to whom the Software is
62
+ furnished to do so, subject to the following conditions:
63
+
64
+ The above copyright notice and this permission notice shall be included in
65
+ all copies or substantial portions of the Software.
66
+
67
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
68
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
69
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
70
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
71
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
72
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
73
+ THE SOFTWARE.
74
+
75
+ ## nanoid - 6.0.1 (MIT)
76
+
77
+ The MIT License (MIT)
78
+
79
+ Copyright 2017 Andrey Sitnik <andrey@sitnik.es>
80
+
81
+ Permission is hereby granted, free of charge, to any person obtaining a copy of
82
+ this software and associated documentation files (the "Software"), to deal in
83
+ the Software without restriction, including without limitation the rights to
84
+ use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
85
+ the Software, and to permit persons to whom the Software is furnished to do so,
86
+ subject to the following conditions:
87
+
88
+ The above copyright notice and this permission notice shall be included in all
89
+ copies or substantial portions of the Software.
90
+
91
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
92
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
93
+ FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
94
+ COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
95
+ IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
96
+ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
97
+
98
+ ## zod - 4.6.5 (MIT)
99
+
100
+ MIT License
101
+
102
+ Copyright (c) 2025 Colin McDonnell
103
+
104
+ Permission is hereby granted, free of charge, to any person obtaining a copy
105
+ of this software and associated documentation files (the "Software"), to deal
106
+ in the Software without restriction, including without limitation the rights
107
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
108
+ copies of the Software, and to permit persons to whom the Software is
109
+ furnished to do so, subject to the following conditions:
110
+
111
+ The above copyright notice and this permission notice shall be included in all
112
+ copies or substantial portions of the Software.
113
+
114
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
115
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
116
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
117
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
118
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
119
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
120
+ SOFTWARE.
@@ -1,4 +1,4 @@
1
- import type { RevisionContent } from '../browser/flow-change.js';
1
+ import type { RevisionContent } from './flow-change.js';
2
2
  import type { Publication, TriggerBinding } from './control-api.js';
3
3
  import { z } from 'zod';
4
4
  import { flowInputFieldsView } from './authoringSchema.js';
@@ -1,4 +1,4 @@
1
- import type { JsonValue } from '../browser/flow-change.js';
1
+ import type { JsonValue } from './flow-change.js';
2
2
  import { z } from 'zod';
3
3
  export declare const mcpProtocolVersion = "2026-07-28";
4
4
  export declare const mcpInstructions: string;
@@ -161,7 +161,7 @@ export declare const mcpTools: {
161
161
  value: {
162
162
  revision?: string | undefined;
163
163
  query: string;
164
- type?: "agent" | "approval" | "code" | "condition" | "connector" | "cron" | "decision" | "error" | "integration" | "llm" | "openapi" | "outputs" | "poll" | "start" | "value" | "wait" | "webhook" | "webhook-response" | "workflow" | undefined;
164
+ type?: "agent" | "approval" | "code" | "condition" | "connector" | "cron" | "decision" | "error" | "http-request" | "integration" | "llm" | "openapi" | "outputs" | "poll" | "start" | "value" | "wait" | "webhook" | "webhook-response" | "workflow" | undefined;
165
165
  offset: number;
166
166
  limit: number;
167
167
  flowId: string;
@@ -193,7 +193,7 @@ export declare const mcpTools: {
193
193
  };
194
194
  validate(value: unknown): {
195
195
  value: {
196
- type?: "agent" | "approval" | "code" | "condition" | "connector" | "cron" | "decision" | "error" | "integration" | "llm" | "openapi" | "outputs" | "poll" | "start" | "value" | "wait" | "webhook" | "webhook-response" | "workflow" | undefined;
196
+ type?: "agent" | "approval" | "code" | "condition" | "connector" | "cron" | "decision" | "error" | "http-request" | "integration" | "llm" | "openapi" | "outputs" | "poll" | "start" | "value" | "wait" | "webhook" | "webhook-response" | "workflow" | undefined;
197
197
  action?: string | undefined;
198
198
  flowId?: string | undefined;
199
199
  };
@@ -321,7 +321,7 @@ export declare const mcpTools: {
321
321
  edits: ({
322
322
  op: "node.add";
323
323
  as: string;
324
- type: "agent" | "approval" | "code" | "condition" | "connector" | "cron" | "decision" | "error" | "integration" | "llm" | "openapi" | "outputs" | "poll" | "start" | "value" | "wait" | "webhook" | "webhook-response" | "workflow";
324
+ type: "agent" | "approval" | "code" | "condition" | "connector" | "cron" | "decision" | "error" | "http-request" | "integration" | "llm" | "openapi" | "outputs" | "poll" | "start" | "value" | "wait" | "webhook" | "webhook-response" | "workflow";
325
325
  name: string;
326
326
  onError?: "error" | "stop" | undefined;
327
327
  retry?: {
@@ -388,6 +388,7 @@ export declare const mcpTools: {
388
388
  } | {
389
389
  op: "node.refresh";
390
390
  node: string;
391
+ tool?: string | undefined;
391
392
  } | {
392
393
  op: "node.remove";
393
394
  node: string;
@@ -8693,12 +8693,12 @@ function isSchemaKeyword(value) {
8693
8693
  /** Shared by decision entry points, the editor, and durable decision storage. */
8694
8694
  var waitCommentSchema = string$1().trim().refine((value) => [...value].length <= 2e3, "Wait comment must contain at most 2,000 Unicode code points.").nullable().optional();
8695
8695
  //#endregion
8696
- //#region src/openapi/common/authBindings.ts
8696
+ //#region src/http/common/authBindings.ts
8697
8697
  /** Never allow credentials to enter a Revision as literal node inputs. */
8698
- function assertOpenApiAuthBindings(document) {
8698
+ function assertHttpAuthBindings(document) {
8699
8699
  for (const node of Object.values(document.graph.nodes)) {
8700
- if (node.kind != "task" || !("executor" in node.task) || node.task.executor.kind != "openapi") continue;
8701
- for (const [handle, mapping] of Object.entries(node.inputs)) if (handle.startsWith("auth.") && mapping.kind == "value") throw new TypeError("OpenAPI authentication accepts deployment variables and upstream outputs only.");
8700
+ if (node.kind != "task" || !("executor" in node.task) || !["openapi", "http-request"].includes(node.task.executor.kind)) continue;
8701
+ for (const [handle, mapping] of Object.entries(node.inputs)) if (handle.startsWith("auth.") && mapping.kind == "value") throw new TypeError("HTTP authentication accepts deployment variables and upstream outputs only.");
8702
8702
  }
8703
8703
  }
8704
8704
  //#endregion
@@ -8791,6 +8791,53 @@ function answerSchema(question) {
8791
8791
  required: Object.keys(properties)
8792
8792
  };
8793
8793
  }
8794
+ //#endregion
8795
+ //#region src/http/common/httpRequest.ts
8796
+ var parameterSchema = strictObject({
8797
+ mode: _enum(["fields", "object"]).default("fields"),
8798
+ names: array(string$1()).default([])
8799
+ });
8800
+ var httpRequestConfigSchema = strictObject({
8801
+ method: _enum([
8802
+ "GET",
8803
+ "POST",
8804
+ "PUT",
8805
+ "PATCH",
8806
+ "DELETE",
8807
+ "HEAD",
8808
+ "OPTIONS"
8809
+ ]).default("GET"),
8810
+ query: parameterSchema.default({
8811
+ mode: "fields",
8812
+ names: []
8813
+ }),
8814
+ headers: parameterSchema.default({
8815
+ mode: "fields",
8816
+ names: []
8817
+ }),
8818
+ bodyFormat: _enum([
8819
+ "none",
8820
+ "json",
8821
+ "text",
8822
+ "form"
8823
+ ]).default("none"),
8824
+ authentication: union([
8825
+ strictObject({ type: literal("none") }),
8826
+ strictObject({ type: _enum(["bearer", "basic"]) }),
8827
+ strictObject({
8828
+ type: literal("apiKey"),
8829
+ name: string$1(),
8830
+ in: _enum(["header", "query"])
8831
+ })
8832
+ ]).default({ type: "none" }),
8833
+ responseFormat: _enum([
8834
+ "auto",
8835
+ "json",
8836
+ "text"
8837
+ ]).default("auto"),
8838
+ statusPolicy: _enum(["success", "all"]).default("success")
8839
+ });
8840
+ var httpRequestExecutorSchema = httpRequestConfigSchema.extend({ kind: literal("http-request") });
8794
8841
  function checkJsonDepth(value, depth = 0) {
8795
8842
  if (depth > 64) throw new TypeError("Value exceeds the maximum JSON depth.");
8796
8843
  if (value != null && typeof value == "object") for (const child of Object.values(value)) checkJsonDepth(child, depth + 1);
@@ -8920,7 +8967,7 @@ var ports$1 = {
8920
8967
  inputs: array(union([input, group])),
8921
8968
  outputs: array(union([port$1, group]))
8922
8969
  };
8923
- var capability = union([
8970
+ var connectorCapabilitySchema = union([
8924
8971
  strictObject({
8925
8972
  kind: literal("connector"),
8926
8973
  action: text,
@@ -8952,6 +8999,15 @@ var capability = union([
8952
8999
  })).optional()
8953
9000
  })
8954
9001
  ]);
9002
+ var workflowCapabilitySchema = strictObject({
9003
+ kind: literal("workflow"),
9004
+ name: text,
9005
+ flowId: text,
9006
+ revisionId: text,
9007
+ inputs: array(port$1),
9008
+ outputs: array(port$1).nullable()
9009
+ });
9010
+ var capability = union([connectorCapabilitySchema, workflowCapabilitySchema]);
8955
9011
  var inline = object({
8956
9012
  ...ports$1,
8957
9013
  name: text,
@@ -8966,6 +9022,20 @@ var agentValue = union([object({
8966
9022
  input: text
8967
9023
  })]);
8968
9024
  var agentInput = union([agentValue, object({ kind: literal("model") })]);
9025
+ var agentToolFields = {
9026
+ id: text,
9027
+ name: text,
9028
+ description: text,
9029
+ approval: boolean(),
9030
+ inputs: array(input.extend({ source: agentInput }))
9031
+ };
9032
+ var connectorAgentToolSchema = object({
9033
+ ...agentToolFields,
9034
+ kind: literal("connector").optional(),
9035
+ action: text,
9036
+ connectionId: actionConnection.optional()
9037
+ });
9038
+ var workflowAgentToolSchema = workflowCapabilitySchema.extend(agentToolFields);
8969
9039
  var decisionQuestion = discriminatedUnion("type", [
8970
9040
  strictObject({
8971
9041
  name: text,
@@ -9034,15 +9104,7 @@ var managedFields = object({
9034
9104
  model: text,
9035
9105
  prompt: text,
9036
9106
  maxRounds: number(),
9037
- tools: array(object({
9038
- id: text,
9039
- name: text,
9040
- description: text,
9041
- action: text,
9042
- connectionId: actionConnection.optional(),
9043
- approval: boolean(),
9044
- inputs: array(input.extend({ source: agentInput }))
9045
- })),
9107
+ tools: array(union([workflowAgentToolSchema, connectorAgentToolSchema])),
9046
9108
  notification: object({
9047
9109
  action: text,
9048
9110
  connectionId: actionConnection.optional(),
@@ -9055,7 +9117,8 @@ var managedFields = object({
9055
9117
  kind: literal("workflow"),
9056
9118
  flowId: text,
9057
9119
  revisionId: text
9058
- })
9120
+ }),
9121
+ httpRequestExecutorSchema
9059
9122
  ])
9060
9123
  });
9061
9124
  var managed = managedFields.transform(limitDecisionTask);
@@ -9323,7 +9386,8 @@ var revision = object({
9323
9386
  literal(7),
9324
9387
  literal(8),
9325
9388
  literal(9),
9326
- literal(10)
9389
+ literal(10),
9390
+ literal(11)
9327
9391
  ]),
9328
9392
  document,
9329
9393
  modules: record$2(text, module)
@@ -9354,7 +9418,7 @@ function decodeRevisionContent(value) {
9354
9418
  checkJsonDepth(value);
9355
9419
  const content = revision.parse(value);
9356
9420
  checkModelVersion(content);
9357
- assertOpenApiAuthBindings(content.document);
9421
+ assertHttpAuthBindings(content.document);
9358
9422
  return content;
9359
9423
  }
9360
9424
  var shapes = {
@@ -9524,6 +9588,8 @@ array(union([...new Map(Object.entries(shapes).map(([kind, shape]) => [kind, sha
9524
9588
  ...shape
9525
9589
  })])).values()])).min(1);
9526
9590
  function checkModelVersion(content) {
9591
+ if (content.modelVersion < 11 && Object.values(content.document.graph.nodes).some((candidateNode) => candidateNode.kind == "task" && "executor" in candidateNode.task && candidateNode.task.executor.kind == "http-request")) throw new TypeError("HTTP Request requires Flow model version 11.");
9592
+ if (content.modelVersion < 11 && Object.values(content.document.graph.nodes).some((candidateNode) => candidateNode.kind == "task" && ("moduleId" in candidateNode.task ? candidateNode.task.capabilities?.some((item) => item.kind == "workflow") : candidateNode.task.executor.kind == "agent" && candidateNode.task.executor.tools.some((item) => item.kind == "workflow")))) throw new TypeError("Workflow tools require Flow model version 11.");
9527
9593
  if (content.modelVersion < 10 && Object.values(content.document.graph.nodes).some((candidateNode) => candidateNode.kind == "webhook" && (candidateNode.options?.responseBody != null || candidateNode.options?.responseStatusCodeOutput != null || candidateNode.options?.responseHeadersSource != null || candidateNode.options?.responseHeaderOutputs != null))) throw new TypeError("Dynamic Webhook responses require Flow model version 10.");
9528
9594
  if (content.modelVersion < 9 && Object.values(content.document.graph.nodes).some((candidateNode) => "retry" in candidateNode && candidateNode.retry != null)) throw new TypeError("Node retries require Flow model version 9.");
9529
9595
  if (content.modelVersion < 9 && Object.values(content.document.graph.nodes).some((candidateNode) => {
@@ -9595,6 +9661,7 @@ var type = _enum([
9595
9661
  "llm",
9596
9662
  "decision",
9597
9663
  "openapi",
9664
+ "http-request",
9598
9665
  "condition",
9599
9666
  "value",
9600
9667
  "wait",
@@ -9646,10 +9713,21 @@ var operand = union([
9646
9713
  system,
9647
9714
  variable$1
9648
9715
  ]);
9649
- var agentTool = authoringDefinitionSchemas.agent.shape.tools.element.omit({
9716
+ var toolSources = record$2(id$2, agentToolFields.inputs.element.shape.source).optional().describe("Tool input sources by name. The platform resolves types from the selected Action or workflow. New inputs default to model-provided; omitted existing sources are preserved.");
9717
+ var agentTool = union([workflowAgentToolSchema.omit({
9718
+ id: true,
9719
+ inputs: true,
9720
+ outputs: true,
9721
+ revisionId: true
9722
+ }).extend({ inputs: toolSources }).strict(), connectorAgentToolSchema.omit({
9650
9723
  id: true,
9651
9724
  inputs: true
9652
- }).extend({ inputs: record$2(id$2, authoringDefinitionSchemas.agent.shape.tools.element.shape.inputs.element.shape.source).optional().describe("Action input sources by name. The tool resolves types from the Action. New inputs default to model-provided; existing sources are preserved when omitted.") }).strict();
9725
+ }).extend({ inputs: toolSources }).strict()]);
9726
+ var authoringCapabilities = array(union([connectorCapabilitySchema, strictObject({
9727
+ kind: literal("workflow"),
9728
+ name: id$2,
9729
+ flowId: id$2
9730
+ })]));
9653
9731
  var notification = strictObject({
9654
9732
  ...authoringDefinitionSchemas.connector.shape,
9655
9733
  messageHandle: id$2,
@@ -9705,10 +9783,11 @@ var authoringConfigurations = {
9705
9783
  "code": strictObject({
9706
9784
  inputs: inputFields,
9707
9785
  outputs: outputFields,
9708
- capabilities: authoringDefinitionSchemas.capabilities.optional()
9786
+ capabilities: authoringCapabilities.optional()
9709
9787
  }),
9710
9788
  "connector": authoringDefinitionSchemas.connector.omit({ outputMode: true }).strict(),
9711
9789
  "openapi": authoringOpenApiSchema,
9790
+ "http-request": httpRequestConfigSchema,
9712
9791
  "agent": authoringDefinitionSchemas.agent.omit({
9713
9792
  prompt: true,
9714
9793
  tools: true
@@ -9769,7 +9848,8 @@ var authoringEditSchema = discriminatedUnion("op", [
9769
9848
  }),
9770
9849
  strictObject({
9771
9850
  op: literal("node.refresh"),
9772
- node: referenceSchema
9851
+ node: referenceSchema,
9852
+ tool: id$2.optional().describe("Name of a workflow tool on an Agent or Code node. Omit for a Call Workflow node.")
9773
9853
  }),
9774
9854
  strictObject({
9775
9855
  op: literal("node.remove"),
@@ -9901,7 +9981,7 @@ var resultQuerySchema = strictObject({
9901
9981
  });
9902
9982
  //#endregion
9903
9983
  //#region src/execution/common/engineContract.ts
9904
- var currentEngineContract = "open-flow-engine/v7";
9984
+ var currentEngineContract = "open-flow-engine/v8";
9905
9985
  `${JSON.stringify(currentEngineContract)}`, new Set([
9906
9986
  "assert",
9907
9987
  "assert/strict",
@@ -9927,7 +10007,7 @@ var currentEngineContract = "open-flow-engine/v7";
9927
10007
  "url",
9928
10008
  "util",
9929
10009
  "zlib"
9930
- ].flatMap((name) => [name, `node:${name}`])), `${JSON.stringify("open-flow-engine/v7/nodejs-compat-v1")}`;
10010
+ ].flatMap((name) => [name, `node:${name}`])), `${JSON.stringify("open-flow-engine/v8/nodejs-compat-v1")}`;
9931
10011
  //#endregion
9932
10012
  //#region src/workflow/common/workflow.ts
9933
10013
  var portSchema = object({
@@ -11090,10 +11170,17 @@ var result = object({
11090
11170
  resultId: string$1().min(1),
11091
11171
  callId: string$1().min(1),
11092
11172
  toolId: string$1().min(1),
11093
- source: discriminatedUnion("kind", [object({
11094
- kind: literal("connector"),
11095
- action: string$1().min(1)
11096
- }), object({ kind: literal("code") })]),
11173
+ source: discriminatedUnion("kind", [
11174
+ object({
11175
+ kind: literal("connector"),
11176
+ action: string$1().min(1)
11177
+ }),
11178
+ object({ kind: literal("code") }),
11179
+ object({
11180
+ kind: literal("workflow"),
11181
+ flowId: string$1().min(1)
11182
+ })
11183
+ ]),
11097
11184
  bytes: number().int().nonnegative(),
11098
11185
  digest: string$1().regex(/^[a-f0-9]{64}$/),
11099
11186
  createdAt: string$1().datetime()
@@ -11499,7 +11586,8 @@ function workflowIdentity(value) {
11499
11586
  flowId: string(ref.flowId),
11500
11587
  runId: string(ref.runId),
11501
11588
  nodeId: string(ref.nodeId),
11502
- executionId: string(ref.executionId)
11589
+ executionId: string(ref.executionId),
11590
+ ...ref.callId == null ? {} : { callId: string(ref.callId) }
11503
11591
  };
11504
11592
  }
11505
11593
  function runInitiator(value) {
@@ -11818,7 +11906,7 @@ function decodeRunEvent(value) {
11818
11906
  switch (kind) {
11819
11907
  case "node.started": {
11820
11908
  const nodeKind = payload.nodeKind;
11821
- if (nodeKind !== void 0 && nodeKind !== "approval" && nodeKind !== "condition" && nodeKind !== "connector" && nodeKind !== "javascript" && nodeKind !== "decision" && nodeKind !== "openapi" && nodeKind !== "llm" && nodeKind !== "agent" && nodeKind !== "value" && nodeKind !== "outputs" && nodeKind !== "webhook-response" && nodeKind !== "workflow" && nodeKind !== "wait") return invalidResponse();
11909
+ if (nodeKind !== void 0 && nodeKind !== "approval" && nodeKind !== "condition" && nodeKind !== "connector" && nodeKind !== "javascript" && nodeKind !== "decision" && nodeKind !== "openapi" && nodeKind !== "http-request" && nodeKind !== "llm" && nodeKind !== "agent" && nodeKind !== "value" && nodeKind !== "outputs" && nodeKind !== "webhook-response" && nodeKind !== "workflow" && nodeKind !== "wait") return invalidResponse();
11822
11910
  return {
11823
11911
  ...base,
11824
11912
  kind,
@@ -1,4 +1,4 @@
1
- import type { JsonValue, ManagedTaskDefinition } from '../browser/flow-change.js';
1
+ import type { JsonValue, ManagedTaskDefinition } from './flow-change.js';
2
2
  type ObjectValue = {
3
3
  [key: string]: JsonValue;
4
4
  };
@@ -1,6 +1,6 @@
1
1
  export { resolveTriggerConfig, triggerConfigValues } from './trigger-config.js';
2
2
  import type { ConnectorProxy } from './connector-proxy.js';
3
- import type { JsonValue, TriggerKeySnapshot, TriggerSchedule } from '../browser/flow-change.js';
3
+ import type { JsonValue, TriggerKeySnapshot, TriggerSchedule } from './flow-change.js';
4
4
  import type { TriggerConfigOption, TriggerConfigOptionsContext } from './trigger-config-options.js';
5
5
  export declare const maximumPollCheckpointBytes: number;
6
6
  export declare const maximumPollDedupeKeyBytes = 1024;
@@ -1,8 +1,15 @@
1
+ //#region src/http/common/headers.ts
2
+ /** Header names are case-insensitive; never silently combine duplicate business fields. */
3
+ function httpHeaderNameIssue(name, names) {
4
+ if (!/^[!#$%&'*+.^_`|~0-9A-Za-z-]+$/.test(name)) return "invalid";
5
+ if (names.some((candidate) => candidate.toLowerCase() === name.toLowerCase())) return "duplicate";
6
+ }
7
+ //#endregion
1
8
  //#region src/flow/common/webhookResponse.ts
2
9
  function webhookResponseAllowsBody(status) {
3
10
  return status !== 204 && status !== 205 && status !== 304;
4
11
  }
5
- var webhookHeadersPort = {
12
+ ({
6
13
  jsonSchema: {
7
14
  type: "object",
8
15
  additionalProperties: { type: [
@@ -12,13 +19,7 @@ var webhookHeadersPort = {
12
19
  ] }
13
20
  },
14
21
  nullable: true
15
- };
16
- /** Header names are case-insensitive; never silently combine duplicate business fields. */
17
- function webhookHeaderNameIssue(name, names) {
18
- if (!/^[!#$%&'*+.^_`|~0-9A-Za-z-]+$/.test(name)) return "invalid";
19
- if (names.some((candidate) => candidate.toLowerCase() === name.toLowerCase())) return "duplicate";
20
- }
21
- webhookHeadersPort.jsonSchema;
22
+ }).jsonSchema;
22
23
  function validWebhookStatus(value) {
23
24
  return typeof value === "number" && Number.isInteger(value) && value >= 200 && value <= 599 && webhookResponseAllowsBody(value);
24
25
  }
@@ -28,7 +29,7 @@ function webhookHeaderValues(source) {
28
29
  const headers = {};
29
30
  const names = [];
30
31
  for (const [name, value] of Object.entries(source)) {
31
- if (webhookHeaderNameIssue(name, names) != null) return;
32
+ if (httpHeaderNameIssue(name, names) != null) return;
32
33
  if (typeof value !== "string" && typeof value !== "boolean" && !(typeof value === "number" && Number.isFinite(value))) return;
33
34
  const text = String(value);
34
35
  if ([...text].some((character) => character.charCodeAt(0) > 255 || /[\0\r\n]/.test(character))) return;
@@ -52,6 +53,7 @@ var nodeKinds = /* @__PURE__ */ new Set([
52
53
  "decision",
53
54
  "javascript",
54
55
  "openapi",
56
+ "http-request",
55
57
  "llm",
56
58
  "value",
57
59
  "wait",
@@ -1,4 +1,4 @@
1
- import type { JsonValue } from '../browser/flow-change.js';
1
+ import type { JsonValue } from './flow-change.js';
2
2
  export type ResultCall = {
3
3
  readonly id: string;
4
4
  readonly kind: 'connector';
@@ -7,6 +7,10 @@ export type ResultCall = {
7
7
  } | {
8
8
  readonly id: string;
9
9
  readonly kind: 'code';
10
+ } | {
11
+ readonly id: string;
12
+ readonly kind: 'workflow';
13
+ readonly flowId: string;
10
14
  };
11
15
  export interface ResultInfo {
12
16
  readonly resultId: string;
@@ -17,6 +21,9 @@ export interface ResultInfo {
17
21
  readonly action: string;
18
22
  } | {
19
23
  readonly kind: 'code';
24
+ } | {
25
+ readonly kind: 'workflow';
26
+ readonly flowId: string;
20
27
  };
21
28
  readonly bytes: number;
22
29
  readonly digest: string;
@@ -1,4 +1,4 @@
1
- import type { CodeModule, ConnectorCapability, JsonValue } from '../browser/flow-change.js';
1
+ import type { CodeModule, ConnectorCapability, TaskCapability, JsonValue } from './flow-change.js';
2
2
  export { currentEngineContract, nodejsEngineContract, findEngineContract, type EngineContract } from './engine-contract.js';
3
3
  export type RuntimeModule = Pick<CodeModule, 'imports' | 'source'>;
4
4
  /** Snapshot a Task result before JSON transport can discard or coerce invalid values. */
@@ -11,6 +11,8 @@ export interface RuntimeProgram {
11
11
  readonly modules: Readonly<Record<string, RuntimeModule>>;
12
12
  }
13
13
  export interface RuntimeCapabilityCall {
14
+ readonly nodeId?: string;
15
+ readonly jobId?: string;
14
16
  readonly callId: string;
15
17
  readonly invocationId: string;
16
18
  readonly kind: string;
@@ -65,7 +67,7 @@ export interface AgentInvocation {
65
67
  };
66
68
  }
67
69
  export interface RuntimeInvocation {
68
- readonly capabilities?: readonly ConnectorCapability[];
70
+ readonly capabilities?: readonly TaskCapability[];
69
71
  readonly capability: (call: RuntimeCapabilityCall) => Promise<RuntimeCapabilityResponse>;
70
72
  readonly input: JsonValue;
71
73
  readonly invocationId: string;
@@ -95,3 +97,7 @@ export interface DecisionTaskInvocation {
95
97
  readonly version: 1;
96
98
  }
97
99
  export type InvokeDecisionTask = (invocation: DecisionTaskInvocation) => Promise<LlmTaskResult>;
100
+ /** Serialized into the sandbox alongside the strict JSON snapshot helper. */
101
+ export declare function createWorkflows(invoke: (payload: JsonValue) => Promise<RuntimeCapabilityResponse>): Readonly<{
102
+ call(name: string, input?: Readonly<Record<string, JsonValue>>): Promise<JsonValue>;
103
+ }>;
@@ -23,9 +23,11 @@ function dequal(foo, bar) {
23
23
  }
24
24
  //#endregion
25
25
  //#region src/execution/common/engineContract.ts
26
- var currentEngineContract = "open-flow-engine/v7";
27
- var nodejsEngineContract = "open-flow-engine/v7/nodejs-compat-v1";
26
+ var currentEngineContract = "open-flow-engine/v8";
27
+ var nodejsEngineContract = "open-flow-engine/v8/nodejs-compat-v1";
28
28
  var currentContract = {
29
+ workflowTools: true,
30
+ httpRequests: true,
29
31
  waitAutoContinue: true,
30
32
  webhookResponses: true,
31
33
  platformExports: /* @__PURE__ */ new Set(["engineContract", "identity"]),
@@ -67,10 +69,18 @@ export function identity(value) { return value }
67
69
  `
68
70
  };
69
71
  function findEngineContract(contract) {
70
- if (contract == "open-flow-engine/v7") return currentContract;
71
- if (contract == "open-flow-engine/v7/nodejs-compat-v1") return nodejsContract;
72
+ if (contract == "open-flow-engine/v8") return currentContract;
73
+ if (contract == "open-flow-engine/v8/nodejs-compat-v1") return nodejsContract;
74
+ if (contract == "open-flow-engine/v7" || contract == "open-flow-engine/v7/nodejs-compat-v1") return {
75
+ ...contract.endsWith("/nodejs-compat-v1") ? nodejsContract : currentContract,
76
+ workflowTools: false,
77
+ httpRequests: false,
78
+ platformSource: `export const engineContract = ${JSON.stringify(contract)}\nexport function identity(value) { return value }\n`
79
+ };
72
80
  if (contract == "open-flow-engine/v6" || contract == "open-flow-engine/v6/nodejs-compat-v1") return {
73
81
  ...contract == "open-flow-engine/v6" ? currentContract : nodejsContract,
82
+ workflowTools: false,
83
+ httpRequests: false,
74
84
  waitAutoContinue: false,
75
85
  webhookResponses: false,
76
86
  platformSource: `export const engineContract = ${JSON.stringify(contract)}
@@ -545,5 +555,15 @@ function resolveAction(declarations, payload) {
545
555
  ...connectionId == null ? {} : { connectionId }
546
556
  };
547
557
  }
558
+ /** Serialized into the sandbox alongside the strict JSON snapshot helper. */
559
+ function createWorkflows(invoke) {
560
+ return Object.freeze({ async call(name, input = {}) {
561
+ if (typeof name != "string" || input == null || typeof input != "object" || Array.isArray(input)) throw Object.assign(/* @__PURE__ */ new Error("Workflow name and input object are required."), { code: "capability.invalid" });
562
+ return (await invoke({
563
+ name,
564
+ input: snapshotRuntimeResult(input)
565
+ })).body;
566
+ } });
567
+ }
548
568
  //#endregion
549
- export { createActions, currentEngineContract, findEngineContract, nodejsEngineContract, nodejsRuntimeConformanceCases, resolveAction, runtimeConformanceCases, snapshotRuntimeResult };
569
+ export { createActions, createWorkflows, currentEngineContract, findEngineContract, nodejsEngineContract, nodejsRuntimeConformanceCases, resolveAction, runtimeConformanceCases, snapshotRuntimeResult };
@@ -1,4 +1,4 @@
1
- import type { Graph, JsonValue } from '../browser/flow-change.js';
1
+ import type { Graph, JsonValue } from './flow-change.js';
2
2
  import type { DependenciesCheckpoint } from './scheduler-dependencies.js';
3
3
  import type { ExecutableNode } from './scheduler-node-execution.js';
4
4
  import type { AgentCheckpoint } from './runtime-contract.js';
@@ -1,4 +1,4 @@
1
- import type { Graph, JsonValue } from '../browser/flow-change.js';
1
+ import type { Graph, JsonValue } from './flow-change.js';
2
2
  import { z } from 'zod';
3
3
  export interface DependenciesCheckpoint {
4
4
  nextId: number;
@@ -1,5 +1,5 @@
1
1
  import type { AgentConfig } from './flow-agent.js';
2
- import type { Graph, GraphNode, JsonValue, TriggerNode } from '../browser/flow-change.js';
2
+ import type { Graph, GraphNode, JsonValue, TriggerNode } from './flow-change.js';
3
3
  import type { WebhookResponseSnapshot } from './webhook-response.js';
4
4
  import type { FlowRunCheckpoint } from './scheduler-checkpoint.js';
5
5
  import type { Dependencies } from './scheduler-dependencies.js';