@oomol-lab/open-flow 0.1.0-beta.72 → 0.1.0-beta.74

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 (432) hide show
  1. package/LICENSE +36 -0
  2. package/NOTICE +7 -0
  3. package/README.md +40 -0
  4. package/dist/browser/{createResourceDialog-BWJkjiOO.js → createResourceDialog-DI9pL-Yr.js} +2 -2
  5. package/dist/browser/{dialog-CUy_fwx9.js → dialog-BYJGvItc.js} +54 -19
  6. package/dist/browser/{flowChanges-CgSnSqqP.js → flowChanges-RL-H4CjD.js} +306 -48
  7. package/dist/browser/{flowWorkspace-Bf7H-r0t.js → flowWorkspace-BkDsETj0.js} +20745 -20186
  8. package/dist/browser/preview.css +73 -3
  9. package/dist/browser/preview.js +21410 -20607
  10. package/dist/browser/{typeScriptSession-B0hC-C8y.js → typeScriptSession-CSRwWmZm.js} +1 -1
  11. package/dist/browser/ui.css +72 -2
  12. package/dist/browser/workbench.css +73 -3
  13. package/dist/browser/workbench.js +14 -76
  14. package/dist/browser/{workbenchSelect-C3e4J93X.js → workbenchSelect-BcWPWGzw.js} +1 -1
  15. package/dist/command/index.js +34 -34
  16. package/dist/common/authoring.d.ts +1 -1
  17. package/dist/common/authoringFields.d.ts +1 -1
  18. package/dist/common/authoringSchema.d.ts +28 -4
  19. package/dist/common/connector-proxy.d.ts +1 -1
  20. package/dist/common/control-api-conformance.d.ts +1 -1
  21. package/dist/common/control-api-conformance.js +61 -24
  22. package/dist/common/control-api.d.ts +4 -3
  23. package/dist/common/control-api.js +90 -42
  24. package/dist/common/control-requests.d.ts +2 -1
  25. package/dist/common/control-requests.js +204 -42
  26. package/dist/common/cron-trigger.d.ts +1 -1
  27. package/dist/common/decision.d.ts +1 -1
  28. package/dist/common/draftOperations.d.ts +1 -1
  29. package/dist/common/engine-contract.d.ts +3 -2
  30. package/dist/common/event-source-definition.d.ts +1 -1
  31. package/dist/common/flow-agent.d.ts +1 -1
  32. package/dist/{browser → common}/flow-authoring-node.d.ts +3 -3
  33. package/dist/{browser → common}/flow-authoring.js +75 -23
  34. package/dist/{browser → common}/flow-change-schema.d.ts +177 -6
  35. package/dist/{browser → common}/flow-change.d.ts +35 -15
  36. package/dist/{browser → common}/flow-change.js +77 -25
  37. package/dist/common/flow-connectionUsage.d.ts +1 -1
  38. package/dist/common/flow-encoding.d.ts +1 -1
  39. package/dist/common/flow-encoding.js +34 -16
  40. package/dist/common/flow-errorHandling.d.ts +1 -1
  41. package/dist/common/flow-graph.d.ts +1 -1
  42. package/dist/common/flow-modules.d.ts +1 -1
  43. package/dist/common/flow-promptTemplate.d.ts +1 -1
  44. package/dist/common/flow-retry.d.ts +1 -1
  45. package/dist/common/flow-semantics.d.ts +1 -1
  46. package/dist/common/flow-semantics.js +151 -32
  47. package/dist/common/flow-workflowFile.d.ts +1 -1
  48. package/dist/common/flowInspection.d.ts +3 -3
  49. package/dist/common/integration-trigger.d.ts +1 -1
  50. package/dist/common/licenses.md +118 -1
  51. package/dist/common/liveDetails.d.ts +1 -1
  52. package/dist/common/mcp.d.ts +2 -1
  53. package/dist/common/mcp.js +59 -22
  54. package/dist/common/openapi.d.ts +1 -1
  55. package/dist/common/poll-trigger.d.ts +1 -1
  56. package/dist/common/run-results.d.ts +8 -1
  57. package/dist/common/runtime-contract.d.ts +8 -2
  58. package/dist/common/runtime-contract.js +22 -5
  59. package/dist/common/scheduler-checkpoint.d.ts +1 -1
  60. package/dist/common/scheduler-dependencies.d.ts +1 -1
  61. package/dist/common/scheduler-node-execution.d.ts +1 -1
  62. package/dist/common/scheduler.d.ts +2 -2
  63. package/dist/common/scheduler.js +31 -12
  64. package/dist/common/trigger-catalog.d.ts +1 -1
  65. package/dist/common/trigger-config-options.d.ts +1 -1
  66. package/dist/common/trigger-config.d.ts +1 -1
  67. package/dist/common/trigger-contract.d.ts +2 -2
  68. package/dist/common/trigger-localization.d.ts +1 -1
  69. package/dist/common/webhook-response.d.ts +1 -1
  70. package/dist/common/webhook-trigger.d.ts +1 -1
  71. package/dist/common/workflow.d.ts +17 -1
  72. package/dist/common/workflow.js +68 -22
  73. package/dist/index.d.ts +6 -3
  74. package/package.json +7 -6
  75. package/src/base/common/json.ts +90 -0
  76. package/src/canvas/common/commands.ts +15 -0
  77. package/src/connector/common/actionSchema.ts +168 -0
  78. package/src/connector/common/proxy.ts +44 -0
  79. package/src/control/common/api.ts +1505 -0
  80. package/src/control/common/authoring.ts +912 -0
  81. package/src/control/common/authoringCondition.ts +110 -0
  82. package/src/control/common/authoringDiagnosticFields.ts +136 -0
  83. package/src/control/common/authoringExamples.ts +192 -0
  84. package/src/control/common/authoringFields.ts +53 -0
  85. package/src/control/common/authoringLlm.ts +70 -0
  86. package/src/control/common/authoringOpenApi.ts +129 -0
  87. package/src/control/common/authoringSchema.ts +404 -0
  88. package/src/control/common/authoringTools.ts +123 -0
  89. package/src/control/common/authoringTriggers.ts +26 -0
  90. package/src/control/common/checkDecoders.ts +65 -0
  91. package/src/control/common/conformance.ts +1989 -0
  92. package/src/control/common/connectorDecoders.ts +370 -0
  93. package/src/control/common/connectorQueries.ts +61 -0
  94. package/src/control/common/decoding.ts +60 -0
  95. package/src/control/common/draftOperations.ts +61 -0
  96. package/src/control/common/errors.ts +114 -0
  97. package/src/control/common/eventSourceSchemas.ts +13 -0
  98. package/src/control/common/eventSources.ts +186 -0
  99. package/src/control/common/flowDecoders.ts +153 -0
  100. package/src/control/common/flowInspection.ts +181 -0
  101. package/src/control/common/flowNotifications.ts +37 -0
  102. package/src/control/common/liveDetails.ts +124 -0
  103. package/src/control/common/mcp.ts +241 -0
  104. package/src/control/common/mcpConformance.ts +142 -0
  105. package/src/control/common/providerAccess.ts +28 -0
  106. package/src/control/common/providerIconSprite.ts +42 -0
  107. package/src/control/common/publicationDecoders.ts +98 -0
  108. package/src/control/common/random.ts +16 -0
  109. package/src/control/common/requests.ts +112 -0
  110. package/src/control/common/resultQuery.ts +8 -0
  111. package/src/control/common/results.ts +176 -0
  112. package/src/control/common/revisionDecoders.ts +52 -0
  113. package/src/control/common/runDecoders.ts +240 -0
  114. package/src/control/common/triggerCatalog.ts +89 -0
  115. package/src/control/common/triggerDecoders.ts +175 -0
  116. package/src/decision/common/decision.ts +168 -0
  117. package/src/event-source/common/catalog.generated.json +65 -0
  118. package/src/event-source/common/definition.ts +66 -0
  119. package/src/event-source/common/index.ts +99 -0
  120. package/src/execution/common/checkpoint.ts +311 -0
  121. package/src/execution/common/dependencies.ts +440 -0
  122. package/src/execution/common/engineContract.ts +80 -0
  123. package/src/execution/common/events.ts +328 -0
  124. package/src/execution/common/node-execution.ts +467 -0
  125. package/src/execution/common/runLifecycle.ts +250 -0
  126. package/src/execution/common/runtime.ts +563 -0
  127. package/src/execution/common/scheduler.ts +696 -0
  128. package/src/execution/common/wait.ts +36 -0
  129. package/src/flow/common/agent.ts +305 -0
  130. package/src/flow/common/authoring.ts +30 -0
  131. package/src/flow/common/change.ts +1036 -0
  132. package/src/flow/common/changeSchema.ts +783 -0
  133. package/src/flow/common/codePermissions.ts +2 -0
  134. package/src/flow/common/condition.ts +265 -0
  135. package/src/flow/common/connectionUsage.ts +131 -0
  136. package/src/flow/common/edgeChanges.ts +35 -0
  137. package/src/flow/common/encoding.ts +437 -0
  138. package/src/flow/common/errorHandling.ts +34 -0
  139. package/src/flow/common/graph.ts +892 -0
  140. package/src/flow/common/inputValue.ts +16 -0
  141. package/src/flow/common/json.ts +8 -0
  142. package/src/flow/common/moduleChanges.ts +31 -0
  143. package/src/flow/common/modules.ts +292 -0
  144. package/src/flow/common/nodeChanges.ts +762 -0
  145. package/src/flow/common/portChanges.ts +36 -0
  146. package/src/flow/common/promptTemplate.ts +15 -0
  147. package/src/flow/common/retry.ts +20 -0
  148. package/src/flow/common/schema.ts +162 -0
  149. package/src/flow/common/schemaCompare.ts +176 -0
  150. package/src/flow/common/schemaComparer.ts +178 -0
  151. package/src/flow/common/schemaKeywords.ts +53 -0
  152. package/src/flow/common/semantics.ts +474 -0
  153. package/src/flow/common/sourceField.ts +35 -0
  154. package/src/flow/common/triggerScheduleSchema.ts +8 -0
  155. package/src/flow/common/wait.ts +30 -0
  156. package/src/flow/common/webhookMethod.ts +7 -0
  157. package/src/flow/common/webhookResponse.ts +75 -0
  158. package/src/flow/common/workflowFile.ts +97 -0
  159. package/src/json-schema-subset/checker/array.ts +142 -0
  160. package/src/json-schema-subset/checker/cache.ts +57 -0
  161. package/src/json-schema-subset/checker/checker.ts +230 -0
  162. package/src/json-schema-subset/checker/enumAndConst.ts +113 -0
  163. package/src/json-schema-subset/checker/equals.ts +93 -0
  164. package/src/json-schema-subset/checker/numeric/checker.ts +50 -0
  165. package/src/json-schema-subset/checker/numeric/float.ts +121 -0
  166. package/src/json-schema-subset/checker/numeric/index.ts +1 -0
  167. package/src/json-schema-subset/checker/numeric/integer.ts +119 -0
  168. package/src/json-schema-subset/checker/numeric/integerNormalizer.ts +72 -0
  169. package/src/json-schema-subset/checker/object.ts +354 -0
  170. package/src/json-schema-subset/checker/range.ts +91 -0
  171. package/src/json-schema-subset/checker/string.ts +60 -0
  172. package/src/json-schema-subset/checker/tools/index.ts +3 -0
  173. package/src/json-schema-subset/checker/tools/mark.ts +82 -0
  174. package/src/json-schema-subset/checker/tools/quantum.ts +106 -0
  175. package/src/json-schema-subset/checker/tools/range.ts +210 -0
  176. package/src/json-schema-subset/checker/validator.ts +23 -0
  177. package/src/json-schema-subset/compiler/array.ts +163 -0
  178. package/src/json-schema-subset/compiler/combination.ts +109 -0
  179. package/src/json-schema-subset/compiler/common.ts +99 -0
  180. package/src/json-schema-subset/compiler/compiler.ts +188 -0
  181. package/src/json-schema-subset/compiler/enumAndConst.ts +75 -0
  182. package/src/json-schema-subset/compiler/index.ts +11 -0
  183. package/src/json-schema-subset/compiler/object.ts +411 -0
  184. package/src/json-schema-subset/compiler/primitive.ts +144 -0
  185. package/src/json-schema-subset/compiler/utils.ts +24 -0
  186. package/src/json-schema-subset/compiler/wrapper.ts +192 -0
  187. package/src/json-schema-subset/error.ts +55 -0
  188. package/src/json-schema-subset/expression/calculator.ts +442 -0
  189. package/src/json-schema-subset/expression/combination.ts +49 -0
  190. package/src/json-schema-subset/expression/expression.ts +191 -0
  191. package/src/json-schema-subset/expression/index.ts +25 -0
  192. package/src/json-schema-subset/expression/result.ts +88 -0
  193. package/src/json-schema-subset/expression/types.ts +36 -0
  194. package/src/json-schema-subset/extends/extendsContext.ts +89 -0
  195. package/src/json-schema-subset/extends/index.ts +2 -0
  196. package/src/json-schema-subset/extends/types.ts +12 -0
  197. package/src/json-schema-subset/global.ts +60 -0
  198. package/src/json-schema-subset/index.ts +8 -0
  199. package/src/json-schema-subset/preprocessing.ts +74 -0
  200. package/src/json-schema-subset/types.ts +8 -0
  201. package/src/json-schema-subset/utils.ts +95 -0
  202. package/src/localization/common/languages.ts +118 -0
  203. package/src/localization/common/timeZone.ts +25 -0
  204. package/src/openapi/common/authBindings.ts +12 -0
  205. package/src/openapi/common/openapi.ts +459 -0
  206. package/src/trigger/common/config.ts +56 -0
  207. package/src/trigger/common/configOptions.ts +15 -0
  208. package/src/trigger/common/configSchema.ts +8 -0
  209. package/src/trigger/common/contract.ts +132 -0
  210. package/src/trigger/common/cron.ts +151 -0
  211. package/src/trigger/common/integration.ts +498 -0
  212. package/src/trigger/common/poll.ts +187 -0
  213. package/src/trigger/common/webhook.ts +412 -0
  214. package/src/trigger/providers/airtable/locales/fr.json +18 -0
  215. package/src/trigger/providers/airtable/locales/ja.json +18 -0
  216. package/src/trigger/providers/airtable/locales/ko.json +18 -0
  217. package/src/trigger/providers/airtable/locales/ru.json +18 -0
  218. package/src/trigger/providers/airtable/locales/zh-CN.json +18 -0
  219. package/src/trigger/providers/airtable/locales/zh-TW.json +18 -0
  220. package/src/trigger/providers/asana/locales/fr.json +15 -0
  221. package/src/trigger/providers/asana/locales/ja.json +15 -0
  222. package/src/trigger/providers/asana/locales/ko.json +15 -0
  223. package/src/trigger/providers/asana/locales/ru.json +15 -0
  224. package/src/trigger/providers/asana/locales/zh-CN.json +15 -0
  225. package/src/trigger/providers/asana/locales/zh-TW.json +15 -0
  226. package/src/trigger/providers/calendly/locales/fr.json +16 -0
  227. package/src/trigger/providers/calendly/locales/ja.json +16 -0
  228. package/src/trigger/providers/calendly/locales/ko.json +16 -0
  229. package/src/trigger/providers/calendly/locales/ru.json +16 -0
  230. package/src/trigger/providers/calendly/locales/zh-CN.json +16 -0
  231. package/src/trigger/providers/calendly/locales/zh-TW.json +16 -0
  232. package/src/trigger/providers/catalog.generated.json +4996 -0
  233. package/src/trigger/providers/clickup/locales/fr.json +16 -0
  234. package/src/trigger/providers/clickup/locales/ja.json +16 -0
  235. package/src/trigger/providers/clickup/locales/ko.json +16 -0
  236. package/src/trigger/providers/clickup/locales/ru.json +16 -0
  237. package/src/trigger/providers/clickup/locales/zh-CN.json +16 -0
  238. package/src/trigger/providers/clickup/locales/zh-TW.json +16 -0
  239. package/src/trigger/providers/definitions.ts +19 -0
  240. package/src/trigger/providers/feishu/locales/fr.json +20 -0
  241. package/src/trigger/providers/feishu/locales/ja.json +20 -0
  242. package/src/trigger/providers/feishu/locales/ko.json +20 -0
  243. package/src/trigger/providers/feishu/locales/ru.json +20 -0
  244. package/src/trigger/providers/feishu/locales/zh-CN.json +20 -0
  245. package/src/trigger/providers/feishu/locales/zh-TW.json +20 -0
  246. package/src/trigger/providers/fieldDescriptions.ts +392 -0
  247. package/src/trigger/providers/fieldLabels.ts +256 -0
  248. package/src/trigger/providers/fireflies/locales/fr.json +17 -0
  249. package/src/trigger/providers/fireflies/locales/ja.json +17 -0
  250. package/src/trigger/providers/fireflies/locales/ko.json +17 -0
  251. package/src/trigger/providers/fireflies/locales/ru.json +17 -0
  252. package/src/trigger/providers/fireflies/locales/zh-CN.json +17 -0
  253. package/src/trigger/providers/fireflies/locales/zh-TW.json +17 -0
  254. package/src/trigger/providers/github/locales/fr.json +30 -0
  255. package/src/trigger/providers/github/locales/ja.json +30 -0
  256. package/src/trigger/providers/github/locales/ko.json +30 -0
  257. package/src/trigger/providers/github/locales/ru.json +30 -0
  258. package/src/trigger/providers/github/locales/zh-CN.json +30 -0
  259. package/src/trigger/providers/github/locales/zh-TW.json +30 -0
  260. package/src/trigger/providers/gitlab/locales/fr.json +18 -0
  261. package/src/trigger/providers/gitlab/locales/ja.json +18 -0
  262. package/src/trigger/providers/gitlab/locales/ko.json +18 -0
  263. package/src/trigger/providers/gitlab/locales/ru.json +18 -0
  264. package/src/trigger/providers/gitlab/locales/zh-CN.json +18 -0
  265. package/src/trigger/providers/gitlab/locales/zh-TW.json +18 -0
  266. package/src/trigger/providers/gmail/locales/fr.json +18 -0
  267. package/src/trigger/providers/gmail/locales/ja.json +18 -0
  268. package/src/trigger/providers/gmail/locales/ko.json +18 -0
  269. package/src/trigger/providers/gmail/locales/ru.json +18 -0
  270. package/src/trigger/providers/gmail/locales/zh-CN.json +18 -0
  271. package/src/trigger/providers/gmail/locales/zh-TW.json +18 -0
  272. package/src/trigger/providers/google-calendar/locales/fr.json +15 -0
  273. package/src/trigger/providers/google-calendar/locales/ja.json +15 -0
  274. package/src/trigger/providers/google-calendar/locales/ko.json +15 -0
  275. package/src/trigger/providers/google-calendar/locales/ru.json +15 -0
  276. package/src/trigger/providers/google-calendar/locales/zh-CN.json +15 -0
  277. package/src/trigger/providers/google-calendar/locales/zh-TW.json +15 -0
  278. package/src/trigger/providers/google-drive/locales/fr.json +48 -0
  279. package/src/trigger/providers/google-drive/locales/ja.json +48 -0
  280. package/src/trigger/providers/google-drive/locales/ko.json +48 -0
  281. package/src/trigger/providers/google-drive/locales/ru.json +48 -0
  282. package/src/trigger/providers/google-drive/locales/zh-CN.json +48 -0
  283. package/src/trigger/providers/google-drive/locales/zh-TW.json +48 -0
  284. package/src/trigger/providers/google-sheets/locales/fr.json +19 -0
  285. package/src/trigger/providers/google-sheets/locales/ja.json +19 -0
  286. package/src/trigger/providers/google-sheets/locales/ko.json +19 -0
  287. package/src/trigger/providers/google-sheets/locales/ru.json +19 -0
  288. package/src/trigger/providers/google-sheets/locales/zh-CN.json +19 -0
  289. package/src/trigger/providers/google-sheets/locales/zh-TW.json +19 -0
  290. package/src/trigger/providers/intercom/locales/fr.json +17 -0
  291. package/src/trigger/providers/intercom/locales/ja.json +17 -0
  292. package/src/trigger/providers/intercom/locales/ko.json +17 -0
  293. package/src/trigger/providers/intercom/locales/ru.json +17 -0
  294. package/src/trigger/providers/intercom/locales/zh-CN.json +17 -0
  295. package/src/trigger/providers/intercom/locales/zh-TW.json +17 -0
  296. package/src/trigger/providers/jira/locales/fr.json +17 -0
  297. package/src/trigger/providers/jira/locales/ja.json +17 -0
  298. package/src/trigger/providers/jira/locales/ko.json +17 -0
  299. package/src/trigger/providers/jira/locales/ru.json +17 -0
  300. package/src/trigger/providers/jira/locales/zh-CN.json +17 -0
  301. package/src/trigger/providers/jira/locales/zh-TW.json +17 -0
  302. package/src/trigger/providers/linear/locales/fr.json +13 -0
  303. package/src/trigger/providers/linear/locales/ja.json +13 -0
  304. package/src/trigger/providers/linear/locales/ko.json +13 -0
  305. package/src/trigger/providers/linear/locales/ru.json +13 -0
  306. package/src/trigger/providers/linear/locales/zh-CN.json +13 -0
  307. package/src/trigger/providers/linear/locales/zh-TW.json +13 -0
  308. package/src/trigger/providers/locales/fr.ts +71 -0
  309. package/src/trigger/providers/locales/ja.ts +71 -0
  310. package/src/trigger/providers/locales/ko.ts +71 -0
  311. package/src/trigger/providers/locales/ru.ts +71 -0
  312. package/src/trigger/providers/locales/zh-CN.ts +71 -0
  313. package/src/trigger/providers/locales/zh-TW.ts +71 -0
  314. package/src/trigger/providers/localization.ts +59 -0
  315. package/src/trigger/providers/notion/locales/fr.json +16 -0
  316. package/src/trigger/providers/notion/locales/ja.json +16 -0
  317. package/src/trigger/providers/notion/locales/ko.json +16 -0
  318. package/src/trigger/providers/notion/locales/ru.json +16 -0
  319. package/src/trigger/providers/notion/locales/zh-CN.json +16 -0
  320. package/src/trigger/providers/notion/locales/zh-TW.json +16 -0
  321. package/src/trigger/providers/one-drive/locales/fr.json +16 -0
  322. package/src/trigger/providers/one-drive/locales/ja.json +16 -0
  323. package/src/trigger/providers/one-drive/locales/ko.json +16 -0
  324. package/src/trigger/providers/one-drive/locales/ru.json +16 -0
  325. package/src/trigger/providers/one-drive/locales/zh-CN.json +16 -0
  326. package/src/trigger/providers/one-drive/locales/zh-TW.json +16 -0
  327. package/src/trigger/providers/outlook/locales/fr.json +18 -0
  328. package/src/trigger/providers/outlook/locales/ja.json +18 -0
  329. package/src/trigger/providers/outlook/locales/ko.json +18 -0
  330. package/src/trigger/providers/outlook/locales/ru.json +18 -0
  331. package/src/trigger/providers/outlook/locales/zh-CN.json +18 -0
  332. package/src/trigger/providers/outlook/locales/zh-TW.json +18 -0
  333. package/src/trigger/providers/pandadoc/locales/fr.json +12 -0
  334. package/src/trigger/providers/pandadoc/locales/ja.json +12 -0
  335. package/src/trigger/providers/pandadoc/locales/ko.json +12 -0
  336. package/src/trigger/providers/pandadoc/locales/ru.json +12 -0
  337. package/src/trigger/providers/pandadoc/locales/zh-CN.json +12 -0
  338. package/src/trigger/providers/pandadoc/locales/zh-TW.json +12 -0
  339. package/src/trigger/providers/pipedrive/locales/fr.json +15 -0
  340. package/src/trigger/providers/pipedrive/locales/ja.json +15 -0
  341. package/src/trigger/providers/pipedrive/locales/ko.json +15 -0
  342. package/src/trigger/providers/pipedrive/locales/ru.json +15 -0
  343. package/src/trigger/providers/pipedrive/locales/zh-CN.json +15 -0
  344. package/src/trigger/providers/pipedrive/locales/zh-TW.json +15 -0
  345. package/src/trigger/providers/remote.ts +163 -0
  346. package/src/trigger/providers/resend/locales/fr.json +16 -0
  347. package/src/trigger/providers/resend/locales/ja.json +16 -0
  348. package/src/trigger/providers/resend/locales/ko.json +16 -0
  349. package/src/trigger/providers/resend/locales/ru.json +16 -0
  350. package/src/trigger/providers/resend/locales/zh-CN.json +16 -0
  351. package/src/trigger/providers/resend/locales/zh-TW.json +16 -0
  352. package/src/trigger/providers/sentry/locales/fr.json +19 -0
  353. package/src/trigger/providers/sentry/locales/ja.json +19 -0
  354. package/src/trigger/providers/sentry/locales/ko.json +19 -0
  355. package/src/trigger/providers/sentry/locales/ru.json +19 -0
  356. package/src/trigger/providers/sentry/locales/zh-CN.json +19 -0
  357. package/src/trigger/providers/sentry/locales/zh-TW.json +19 -0
  358. package/src/trigger/providers/shopify/locales/fr.json +18 -0
  359. package/src/trigger/providers/shopify/locales/ja.json +18 -0
  360. package/src/trigger/providers/shopify/locales/ko.json +18 -0
  361. package/src/trigger/providers/shopify/locales/ru.json +18 -0
  362. package/src/trigger/providers/shopify/locales/zh-CN.json +18 -0
  363. package/src/trigger/providers/shopify/locales/zh-TW.json +18 -0
  364. package/src/trigger/providers/slack/locales/fr.json +18 -0
  365. package/src/trigger/providers/slack/locales/ja.json +18 -0
  366. package/src/trigger/providers/slack/locales/ko.json +18 -0
  367. package/src/trigger/providers/slack/locales/ru.json +18 -0
  368. package/src/trigger/providers/slack/locales/zh-CN.json +18 -0
  369. package/src/trigger/providers/slack/locales/zh-TW.json +18 -0
  370. package/src/trigger/providers/slackbot/locales/fr.json +23 -0
  371. package/src/trigger/providers/slackbot/locales/ja.json +23 -0
  372. package/src/trigger/providers/slackbot/locales/ko.json +23 -0
  373. package/src/trigger/providers/slackbot/locales/ru.json +23 -0
  374. package/src/trigger/providers/slackbot/locales/zh-CN.json +23 -0
  375. package/src/trigger/providers/slackbot/locales/zh-TW.json +23 -0
  376. package/src/trigger/providers/source-events.ts +25 -0
  377. package/src/trigger/providers/stripe/locales/fr.json +17 -0
  378. package/src/trigger/providers/stripe/locales/ja.json +17 -0
  379. package/src/trigger/providers/stripe/locales/ko.json +17 -0
  380. package/src/trigger/providers/stripe/locales/ru.json +17 -0
  381. package/src/trigger/providers/stripe/locales/zh-CN.json +17 -0
  382. package/src/trigger/providers/stripe/locales/zh-TW.json +17 -0
  383. package/src/trigger/providers/tally/locales/fr.json +12 -0
  384. package/src/trigger/providers/tally/locales/ja.json +12 -0
  385. package/src/trigger/providers/tally/locales/ko.json +12 -0
  386. package/src/trigger/providers/tally/locales/ru.json +12 -0
  387. package/src/trigger/providers/tally/locales/zh-CN.json +12 -0
  388. package/src/trigger/providers/tally/locales/zh-TW.json +12 -0
  389. package/src/trigger/providers/telegram/locales/fr.json +17 -0
  390. package/src/trigger/providers/telegram/locales/ja.json +17 -0
  391. package/src/trigger/providers/telegram/locales/ko.json +17 -0
  392. package/src/trigger/providers/telegram/locales/ru.json +17 -0
  393. package/src/trigger/providers/telegram/locales/zh-CN.json +17 -0
  394. package/src/trigger/providers/telegram/locales/zh-TW.json +17 -0
  395. package/src/trigger/providers/typeform/locales/fr.json +12 -0
  396. package/src/trigger/providers/typeform/locales/ja.json +12 -0
  397. package/src/trigger/providers/typeform/locales/ko.json +12 -0
  398. package/src/trigger/providers/typeform/locales/ru.json +12 -0
  399. package/src/trigger/providers/typeform/locales/zh-CN.json +12 -0
  400. package/src/trigger/providers/typeform/locales/zh-TW.json +12 -0
  401. package/src/trigger/providers/vercel/locales/fr.json +18 -0
  402. package/src/trigger/providers/vercel/locales/ja.json +18 -0
  403. package/src/trigger/providers/vercel/locales/ko.json +18 -0
  404. package/src/trigger/providers/vercel/locales/ru.json +18 -0
  405. package/src/trigger/providers/vercel/locales/zh-CN.json +18 -0
  406. package/src/trigger/providers/vercel/locales/zh-TW.json +18 -0
  407. package/src/trigger/providers/woocommerce/locales/fr.json +19 -0
  408. package/src/trigger/providers/woocommerce/locales/ja.json +19 -0
  409. package/src/trigger/providers/woocommerce/locales/ko.json +19 -0
  410. package/src/trigger/providers/woocommerce/locales/ru.json +19 -0
  411. package/src/trigger/providers/woocommerce/locales/zh-CN.json +19 -0
  412. package/src/trigger/providers/woocommerce/locales/zh-TW.json +19 -0
  413. package/src/trigger/providers/zendesk/locales/fr.json +15 -0
  414. package/src/trigger/providers/zendesk/locales/ja.json +15 -0
  415. package/src/trigger/providers/zendesk/locales/ko.json +15 -0
  416. package/src/trigger/providers/zendesk/locales/ru.json +15 -0
  417. package/src/trigger/providers/zendesk/locales/zh-CN.json +15 -0
  418. package/src/trigger/providers/zendesk/locales/zh-TW.json +15 -0
  419. package/src/trigger/providers/zoom/locales/fr.json +17 -0
  420. package/src/trigger/providers/zoom/locales/ja.json +17 -0
  421. package/src/trigger/providers/zoom/locales/ko.json +17 -0
  422. package/src/trigger/providers/zoom/locales/ru.json +17 -0
  423. package/src/trigger/providers/zoom/locales/zh-CN.json +17 -0
  424. package/src/trigger/providers/zoom/locales/zh-TW.json +17 -0
  425. package/src/types/index.ts +112 -0
  426. package/src/workflow/common/workflow.ts +273 -0
  427. package/dist/browser/lib-DrKav3HG.js +0 -11403
  428. /package/dist/{browser → common}/flow-authoring-edge.d.ts +0 -0
  429. /package/dist/{browser → common}/flow-authoring-module.d.ts +0 -0
  430. /package/dist/{browser → common}/flow-authoring.d.ts +0 -0
  431. /package/dist/{browser → common}/flow-input-value.d.ts +0 -0
  432. /package/dist/{browser → common}/webhook-method.d.ts +0 -0
@@ -8844,7 +8844,8 @@ var waitAutoContinueDraftSchema = discriminatedUnion("kind", [strictObject({
8844
8844
  at: string(),
8845
8845
  timezone: string().optional()
8846
8846
  })]);
8847
- discriminatedUnion("kind", [waitAutoContinueDraftSchema.options[0].extend({ durationMs: number().int().positive().max(Number.MAX_SAFE_INTEGER) }), waitAutoContinueDraftSchema.options[1].extend({
8847
+ /** Static business configuration; the deployment owns the allowed wait lifetime. */
8848
+ var waitAutoContinueSchema = discriminatedUnion("kind", [waitAutoContinueDraftSchema.options[0].extend({ durationMs: number().int().positive().max(Number.MAX_SAFE_INTEGER) }), waitAutoContinueDraftSchema.options[1].extend({
8848
8849
  at: datetime({ offset: true }),
8849
8850
  timezone: string().refine(isTimeZone, "Select a valid IANA timezone.").optional()
8850
8851
  })]);
@@ -8877,7 +8878,7 @@ var webhookResponseTimeout = {
8877
8878
  }).jsonSchema;
8878
8879
  //#endregion
8879
8880
  //#region src/flow/common/changeSchema.ts
8880
- var currentFlowModelVersion = 10;
8881
+ var currentFlowModelVersion = 11;
8881
8882
  var text = string();
8882
8883
  var actionConnection = text.describe("Account selection: omit while unconfigured; use an account ID to select it; use \"\" to explicitly defer configuration. Deferred Actions fail if called; deferred Agent tools are excluded from the callable tool set. Not supported by Triggers.");
8883
8884
  var json = json$1();
@@ -8917,7 +8918,7 @@ var ports = {
8917
8918
  inputs: array(union([input, group])),
8918
8919
  outputs: array(union([port, group]))
8919
8920
  };
8920
- var capability = union([
8921
+ var connectorCapabilitySchema = union([
8921
8922
  strictObject({
8922
8923
  kind: literal("connector"),
8923
8924
  action: text,
@@ -8949,6 +8950,15 @@ var capability = union([
8949
8950
  })).optional()
8950
8951
  })
8951
8952
  ]);
8953
+ var workflowCapabilitySchema = strictObject({
8954
+ kind: literal("workflow"),
8955
+ name: text,
8956
+ flowId: text,
8957
+ revisionId: text,
8958
+ inputs: array(port),
8959
+ outputs: array(port).nullable()
8960
+ });
8961
+ var capability = union([connectorCapabilitySchema, workflowCapabilitySchema]);
8952
8962
  var inline = object({
8953
8963
  ...ports,
8954
8964
  name: text,
@@ -8963,6 +8973,20 @@ var agentValue = union([object({
8963
8973
  input: text
8964
8974
  })]);
8965
8975
  var agentInput = union([agentValue, object({ kind: literal("model") })]);
8976
+ var agentToolFields = {
8977
+ id: text,
8978
+ name: text,
8979
+ description: text,
8980
+ approval: boolean(),
8981
+ inputs: array(input.extend({ source: agentInput }))
8982
+ };
8983
+ var connectorAgentToolSchema = object({
8984
+ ...agentToolFields,
8985
+ kind: literal("connector").optional(),
8986
+ action: text,
8987
+ connectionId: actionConnection.optional()
8988
+ });
8989
+ var workflowAgentToolSchema = workflowCapabilitySchema.extend(agentToolFields);
8966
8990
  var decisionQuestion = discriminatedUnion("type", [
8967
8991
  strictObject({
8968
8992
  name: text,
@@ -9031,15 +9055,7 @@ var managedFields = object({
9031
9055
  model: text,
9032
9056
  prompt: text,
9033
9057
  maxRounds: number(),
9034
- tools: array(object({
9035
- id: text,
9036
- name: text,
9037
- description: text,
9038
- action: text,
9039
- connectionId: actionConnection.optional(),
9040
- approval: boolean(),
9041
- inputs: array(input.extend({ source: agentInput }))
9042
- })),
9058
+ tools: array(union([workflowAgentToolSchema, connectorAgentToolSchema])),
9043
9059
  notification: object({
9044
9060
  action: text,
9045
9061
  connectionId: actionConnection.optional(),
@@ -9265,10 +9281,26 @@ var node = union([
9265
9281
  })
9266
9282
  })
9267
9283
  ]);
9268
- strictObject(condition), strictObject(wait), strictObject(webhook), managedFields.shape.executor.options[0].omit({ kind: true }).strict(), managedFields.shape.executor.options[1].omit({ kind: true }).strict(), managedFields.shape.executor.options[2].omit({ kind: true }).strict(), managedFields.shape.executor.options[3].omit({ kind: true }).strict(), managedFields.shape.executor.options[4].omit({
9269
- kind: true,
9270
- notification: true
9271
- }).strict();
9284
+ /** Configuration schemas shared by the node authoring boundary. */
9285
+ var authoringDefinitionSchemas = {
9286
+ input,
9287
+ port,
9288
+ ports,
9289
+ condition: strictObject(condition),
9290
+ wait: strictObject(wait),
9291
+ waitAutoContinue: waitAutoContinueSchema,
9292
+ webhook: strictObject(webhook),
9293
+ schedule: triggerScheduleSchema,
9294
+ capabilities: array(capability),
9295
+ connector: managedFields.shape.executor.options[0].omit({ kind: true }).strict(),
9296
+ openapi: managedFields.shape.executor.options[1].omit({ kind: true }).strict(),
9297
+ decision: managedFields.shape.executor.options[2].omit({ kind: true }).strict(),
9298
+ llm: managedFields.shape.executor.options[3].omit({ kind: true }).strict(),
9299
+ agent: managedFields.shape.executor.options[4].omit({
9300
+ kind: true,
9301
+ notification: true
9302
+ }).strict()
9303
+ };
9272
9304
  var edge = object({
9273
9305
  source: text,
9274
9306
  target: text,
@@ -9304,7 +9336,8 @@ var revision = object({
9304
9336
  literal(7),
9305
9337
  literal(8),
9306
9338
  literal(9),
9307
- literal(10)
9339
+ literal(10),
9340
+ literal(11)
9308
9341
  ]),
9309
9342
  document,
9310
9343
  modules: record$1(text, module)
@@ -9529,6 +9562,7 @@ function changeOperationsSchema(kind) {
9529
9562
  return toJSONSchema(schema, { io: "input" });
9530
9563
  }
9531
9564
  function checkModelVersion(content) {
9565
+ 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.");
9532
9566
  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.");
9533
9567
  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.");
9534
9568
  if (content.modelVersion < 9 && Object.values(content.document.graph.nodes).some((candidateNode) => {
@@ -9648,6 +9682,24 @@ function validVariableName(value) {
9648
9682
  function portsByHandle(ports) {
9649
9683
  return Object.fromEntries(ports.flatMap((port) => "handle" in port ? [[port.handle, port]] : []));
9650
9684
  }
9685
+ var workflowToolNamePattern = /^[A-Za-z][A-Za-z0-9_-]{0,63}$/;
9686
+ function workflowToolNameIssue(name, otherNames = []) {
9687
+ if (!workflowToolNamePattern.test(name)) return "invalid";
9688
+ for (const other of otherNames) if (other == name) return "duplicate";
9689
+ }
9690
+ function decodeTaskCapabilities(value) {
9691
+ if (!Array.isArray(value)) throw new TypeError("Task capabilities must be an array.");
9692
+ const parsed = authoringDefinitionSchemas.capabilities.parse(value);
9693
+ const connectors = decodeConnectorCapabilities(parsed.filter((item) => item.kind == "connector"));
9694
+ const names = /* @__PURE__ */ new Set();
9695
+ for (const item of parsed) {
9696
+ if (item.kind != "workflow") continue;
9697
+ if (workflowToolNameIssue(item.name, names)) throw new TypeError("Workflow tool names must be unique provider-compatible names.");
9698
+ names.add(item.name);
9699
+ }
9700
+ let connectorIndex = 0;
9701
+ return parsed.map((item) => item.kind == "connector" ? connectors[connectorIndex++] : item);
9702
+ }
9651
9703
  function decodeConnectorCapabilities(value) {
9652
9704
  if (!Array.isArray(value)) throw new TypeError("Connector capabilities must be an array.");
9653
9705
  if (value.length == 0) return [];
@@ -9780,10 +9832,10 @@ function upgradeRevisionContent(content) {
9780
9832
  function upgradeDecodedRevisionContent(content) {
9781
9833
  const graph = content.document.graph;
9782
9834
  const hasManual = Object.values(graph.nodes).some((node) => node.kind == "manual");
9783
- if (!hasManual && content.modelVersion == 10) return content;
9835
+ if (!hasManual && content.modelVersion == 11) return content;
9784
9836
  return {
9785
9837
  ...content,
9786
- modelVersion: 10,
9838
+ modelVersion: 11,
9787
9839
  document: {
9788
9840
  ...content.document,
9789
9841
  graph: hasManual ? {
@@ -9830,7 +9882,7 @@ function invalid(message) {
9830
9882
  throw new FlowChangeError(message);
9831
9883
  }
9832
9884
  function applyFlowChanges(content, operations) {
9833
- const source = content.modelVersion != 10 || Object.values(content.document.graph.nodes).some((node) => node.kind == "manual") ? decodeRevisionContent(content) : content;
9885
+ const source = content.modelVersion != 11 || Object.values(content.document.graph.nodes).some((node) => node.kind == "manual") ? decodeRevisionContent(content) : content;
9834
9886
  const document = { ...source.document };
9835
9887
  const modules = { ...source.modules };
9836
9888
  for (const operation of operations) switch (operation.kind) {
@@ -9944,7 +9996,7 @@ function applyFlowChanges(content, operations) {
9944
9996
  const graph = document.graph;
9945
9997
  if (!dequal(graph.nodes[operation.nodeId], operation.before)) invalid("The Node changed before this operation was applied.");
9946
9998
  if (operation.node.kind != operation.before.kind) invalid("Replacing a Node cannot change its kind.");
9947
- if (operation.node.kind == "task" && "moduleId" in operation.node.task && operation.node.task.capabilities !== void 0) decodeConnectorCapabilities(operation.node.task.capabilities);
9999
+ if (operation.node.kind == "task" && "moduleId" in operation.node.task && operation.node.task.capabilities !== void 0) decodeTaskCapabilities(operation.node.task.capabilities);
9948
10000
  const name = normalizeNodeName(operation.node.name ?? "");
9949
10001
  const issue = nodeNameIssue(graph, operation.nodeId, name);
9950
10002
  if (issue != null) invalid(`Node name is ${issue}.`);
@@ -9966,7 +10018,7 @@ function applyFlowChanges(content, operations) {
9966
10018
  if (graph.nodes[operation.nodeId] != null) invalid("A Node with this ID already exists in the target graph.");
9967
10019
  if (operation.node.kind == "error" && Object.values(graph.nodes).some((node) => node.kind == "error")) invalid("A graph can contain only one Flow Error node.");
9968
10020
  if ((operation.node.kind == "manual" || operation.node.kind == "start") && Object.values(graph.nodes).some((node) => node.kind == "manual" || node.kind == "start")) invalid("A graph can contain only one Start Trigger.");
9969
- if (operation.node.kind == "task" && "moduleId" in operation.node.task && operation.node.task.capabilities !== void 0) decodeConnectorCapabilities(operation.node.task.capabilities);
10021
+ if (operation.node.kind == "task" && "moduleId" in operation.node.task && operation.node.task.capabilities !== void 0) decodeTaskCapabilities(operation.node.task.capabilities);
9970
10022
  if (operation.node.name == null) invalid("A Node name cannot be empty.");
9971
10023
  if (operation.node.kind == "outputs" && Object.values(graph.nodes).some((node) => node.kind == "outputs")) invalid("A graph can contain only one Outputs node.");
9972
10024
  const name = normalizeNodeName(operation.node.name);
@@ -10065,7 +10117,7 @@ function applyFlowChanges(content, operations) {
10065
10117
  if (!dequal(node.task.capabilities, operation.before)) invalid("The inline Task capabilities changed before this operation was applied.");
10066
10118
  const task = { ...node.task };
10067
10119
  if (operation.value === void 0) delete task.capabilities;
10068
- else task.capabilities = decodeConnectorCapabilities(operation.value);
10120
+ else task.capabilities = decodeTaskCapabilities(operation.value);
10069
10121
  Object.assign(document, { graph: {
10070
10122
  ...graph,
10071
10123
  nodes: {
@@ -10278,9 +10330,9 @@ function applyFlowChanges(content, operations) {
10278
10330
  assertOpenApiAuthBindings(document);
10279
10331
  return upgradeDecodedRevisionContent({
10280
10332
  document,
10281
- modelVersion: 10,
10333
+ modelVersion: 11,
10282
10334
  modules
10283
10335
  });
10284
10336
  }
10285
10337
  //#endregion
10286
- export { FlowChangeError, applyFlowChanges, changeOperationsSchema, currentFlowModelVersion, decodeChangeOperations, decodeConnectorCapabilities, fixedInputValue, inputValue, inputValues, isSchemaKeyword, isTriggerNode, nextNodeName, nodeErrorSchema, nodeNameIssue, nodeSystemOutputPorts, normalizeNodeName, portsByHandle, resourceNameIssue, resourceNameMaxLength, supportsNodeErrorHandling, supportsNodeRetry, upgradeManualTrigger, upgradeRevisionContent, validVariableName };
10338
+ export { FlowChangeError, applyFlowChanges, changeOperationsSchema, currentFlowModelVersion, decodeChangeOperations, decodeConnectorCapabilities, decodeTaskCapabilities, fixedInputValue, inputValue, inputValues, isSchemaKeyword, isTriggerNode, nextNodeName, nodeErrorSchema, nodeNameIssue, nodeSystemOutputPorts, normalizeNodeName, portsByHandle, resourceNameIssue, resourceNameMaxLength, supportsNodeErrorHandling, supportsNodeRetry, upgradeManualTrigger, upgradeRevisionContent, validVariableName, workflowToolNameIssue, workflowToolNamePattern };
@@ -1,4 +1,4 @@
1
- import type { FlowDocument, RevisionContent } from '../browser/flow-change.js';
1
+ import type { FlowDocument, RevisionContent } from './flow-change.js';
2
2
  export interface ConnectionUsage {
3
3
  readonly providerId: string;
4
4
  readonly connectionId?: string;
@@ -1,7 +1,7 @@
1
1
  import type { CodeModule, FlowDocument, Graph, Group, InputMapping, InputPort, JsonValue, ManagedTaskDefinition, Port, RevisionContent, TriggerNode } from '@oomol-lab/open-flow/flow-change';
2
2
  export * from './flow-workflowFile.js';
3
3
  export { maxJsonDepth } from './flow-json.js';
4
- export { decodeFlowDocument, decodeRevisionContent, upgradeWorkflowInterfaceDocument } from '../browser/flow-change-schema.js';
4
+ export { decodeFlowDocument, decodeRevisionContent, upgradeWorkflowInterfaceDocument } from './flow-change-schema.js';
5
5
  export { upgradeRevisionContent } from '@oomol-lab/open-flow/flow-change';
6
6
  export declare function canonicalJsonBytes(value: JsonValue): Uint8Array;
7
7
  export declare function digestBytes(bytes: Uint8Array): Promise<string>;
@@ -8678,7 +8678,7 @@ var ports = {
8678
8678
  inputs: array(union([input, group])),
8679
8679
  outputs: array(union([port, group]))
8680
8680
  };
8681
- var capability = union([
8681
+ var connectorCapabilitySchema = union([
8682
8682
  strictObject({
8683
8683
  kind: literal("connector"),
8684
8684
  action: text,
@@ -8710,6 +8710,15 @@ var capability = union([
8710
8710
  })).optional()
8711
8711
  })
8712
8712
  ]);
8713
+ var workflowCapabilitySchema = strictObject({
8714
+ kind: literal("workflow"),
8715
+ name: text,
8716
+ flowId: text,
8717
+ revisionId: text,
8718
+ inputs: array(port),
8719
+ outputs: array(port).nullable()
8720
+ });
8721
+ var capability = union([connectorCapabilitySchema, workflowCapabilitySchema]);
8713
8722
  var inline = object({
8714
8723
  ...ports,
8715
8724
  name: text,
@@ -8724,6 +8733,20 @@ var agentValue = union([object({
8724
8733
  input: text
8725
8734
  })]);
8726
8735
  var agentInput = union([agentValue, object({ kind: literal("model") })]);
8736
+ var agentToolFields = {
8737
+ id: text,
8738
+ name: text,
8739
+ description: text,
8740
+ approval: boolean(),
8741
+ inputs: array(input.extend({ source: agentInput }))
8742
+ };
8743
+ var connectorAgentToolSchema = object({
8744
+ ...agentToolFields,
8745
+ kind: literal("connector").optional(),
8746
+ action: text,
8747
+ connectionId: actionConnection.optional()
8748
+ });
8749
+ var workflowAgentToolSchema = workflowCapabilitySchema.extend(agentToolFields);
8727
8750
  var decisionQuestion = discriminatedUnion("type", [
8728
8751
  strictObject({
8729
8752
  name: text,
@@ -8792,15 +8815,7 @@ var managedFields = object({
8792
8815
  model: text,
8793
8816
  prompt: text,
8794
8817
  maxRounds: number(),
8795
- tools: array(object({
8796
- id: text,
8797
- name: text,
8798
- description: text,
8799
- action: text,
8800
- connectionId: actionConnection.optional(),
8801
- approval: boolean(),
8802
- inputs: array(input.extend({ source: agentInput }))
8803
- })),
8818
+ tools: array(union([workflowAgentToolSchema, connectorAgentToolSchema])),
8804
8819
  notification: object({
8805
8820
  action: text,
8806
8821
  connectionId: actionConnection.optional(),
@@ -9065,7 +9080,8 @@ var revision = object({
9065
9080
  literal(7),
9066
9081
  literal(8),
9067
9082
  literal(9),
9068
- literal(10)
9083
+ literal(10),
9084
+ literal(11)
9069
9085
  ]),
9070
9086
  document,
9071
9087
  modules: record$1(text, module)
@@ -9320,14 +9336,14 @@ function repairRevisionEnvelope(value) {
9320
9336
  checkJsonDepth(value);
9321
9337
  const envelopeSource = record(value);
9322
9338
  if (envelopeSource.kind != "open-flow-flow-revision" || envelopeSource.version != 1) throw new TypeError("The value is not an Open Flow Revision envelope.");
9323
- if (typeof envelopeSource.modelVersion == "number" && envelopeSource.modelVersion > 10) throw new TypeError("The Flow model is newer than this package.");
9339
+ if (typeof envelopeSource.modelVersion == "number" && envelopeSource.modelVersion > 11) throw new TypeError("The Flow model is newer than this package.");
9324
9340
  let sourceDocument = record(envelopeSource.modelVersion == 1 || envelopeSource.modelVersion == 2 ? upgradeLegacyDocument(envelopeSource.document) : envelopeSource.document);
9325
9341
  if (typeof envelopeSource.modelVersion == "number" && envelopeSource.modelVersion < 6) sourceDocument = upgradeTaskNodes(sourceDocument);
9326
9342
  sourceDocument = record(normalizeDocument(sourceDocument));
9327
9343
  const bindings = record(sourceDocument.bindings);
9328
9344
  const sourceGraph = repairGraph(sourceDocument.graph, bindings);
9329
9345
  return decodeRevisionContent({
9330
- modelVersion: 10,
9346
+ modelVersion: 11,
9331
9347
  document: {
9332
9348
  bindings: repairedEntries(sourceDocument.bindings, binding),
9333
9349
  graph: sourceGraph
@@ -9529,6 +9545,7 @@ array(union([...new Map(Object.entries(shapes).map(([kind, shape]) => [kind, sha
9529
9545
  ...shape
9530
9546
  })])).values()])).min(1);
9531
9547
  function checkModelVersion(content) {
9548
+ 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.");
9532
9549
  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.");
9533
9550
  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.");
9534
9551
  if (content.modelVersion < 9 && Object.values(content.document.graph.nodes).some((candidateNode) => {
@@ -9584,10 +9601,10 @@ function upgradeRevisionContent(content) {
9584
9601
  function upgradeDecodedRevisionContent(content) {
9585
9602
  const graph = content.document.graph;
9586
9603
  const hasManual = Object.values(graph.nodes).some((node) => node.kind == "manual");
9587
- if (!hasManual && content.modelVersion == 10) return content;
9604
+ if (!hasManual && content.modelVersion == 11) return content;
9588
9605
  return {
9589
9606
  ...content,
9590
- modelVersion: 10,
9607
+ modelVersion: 11,
9591
9608
  document: {
9592
9609
  ...content.document,
9593
9610
  graph: hasManual ? {
@@ -9663,6 +9680,7 @@ function clearNodeConnections(graph, connectionId) {
9663
9680
  return [id, node];
9664
9681
  }
9665
9682
  const capabilities = node.task.capabilities?.map((capability) => {
9683
+ if (capability.kind == "workflow") return capability;
9666
9684
  if (!("mode" in capability)) {
9667
9685
  if ("action" in capability) {
9668
9686
  const { connectionId: selected, ...rest } = capability;
@@ -10158,7 +10176,7 @@ function revisionRepairKind(bytes) {
10158
10176
  return;
10159
10177
  }
10160
10178
  const source = value;
10161
- return typeof source.modelVersion == "number" && source.modelVersion < 10 ? "upgrade" : "repair";
10179
+ return typeof source.modelVersion == "number" && source.modelVersion < 11 ? "upgrade" : "repair";
10162
10180
  }
10163
10181
  function repairRevision(bytes) {
10164
10182
  return repairRevisionEnvelope(revisionValue(bytes));
@@ -1,4 +1,4 @@
1
- import type { GraphNode, PortDefinition } from '../browser/flow-change.js';
1
+ import type { GraphNode, PortDefinition } from './flow-change.js';
2
2
  export type NodeErrorData = {
3
3
  readonly code: string;
4
4
  readonly message: string;
@@ -1,4 +1,4 @@
1
- import type { Graph, GraphNode, InputPortDefinition, NodeSource, PortDefinition, RevisionContent, SchemaMismatch } from '../browser/flow-change.js';
1
+ import type { Graph, GraphNode, InputPortDefinition, NodeSource, PortDefinition, RevisionContent, SchemaMismatch } from './flow-change.js';
2
2
  import type { Diagnostic } from './flow-semantics.js';
3
3
  export declare function isResolutionNode(node: GraphNode | undefined): node is Extract<GraphNode, {
4
4
  readonly kind: 'approval' | 'wait';
@@ -1,5 +1,5 @@
1
1
  import type { EngineContract } from './engine-contract.js';
2
- import type { RevisionContent } from '../browser/flow-change.js';
2
+ import type { RevisionContent } from './flow-change.js';
3
3
  import type { Diagnostic } from './flow-semantics.js';
4
4
  interface ImportReference {
5
5
  readonly column: number;
@@ -1,4 +1,4 @@
1
- import type { JsonValue } from '../browser/flow-change.js';
1
+ import type { JsonValue } from './flow-change.js';
2
2
  export declare const promptReferencePattern: RegExp;
3
3
  export declare function renderPrompt(template: string, input: Readonly<Record<string, JsonValue>>): string;
4
4
  export declare function renamePromptInput(template: string, before: string, after: string): string;
@@ -1,4 +1,4 @@
1
- import type { GraphNode } from '../browser/flow-change.js';
1
+ import type { GraphNode } from './flow-change.js';
2
2
  import { z } from 'zod';
3
3
  export interface RetryConfiguration {
4
4
  readonly maxRetries: number;
@@ -3,7 +3,7 @@ export { connectionUsage, removeConnectionUsage } from './flow-connectionUsage.j
3
3
  export { matchesTriggerOutputs, normalizeTriggerOutputs, triggerOutputDefinitions, triggerOutputPorts } from './trigger-contract.js';
4
4
  import type { EngineContract } from './engine-contract.js';
5
5
  import type { RuntimeProgram } from './runtime-contract.js';
6
- import type { ConnectorActionCapability, ConnectorCapability, Graph, InputMapping, JsonValue, Port, RevisionContent, SchemaMismatch } from '../browser/flow-change.js';
6
+ import type { ConnectorActionCapability, ConnectorCapability, Graph, InputMapping, JsonValue, Port, RevisionContent, SchemaMismatch } from './flow-change.js';
7
7
  export { availableOutputs, graphOrder, nodeInputPorts } from './flow-graph.js';
8
8
  export { validateModules } from './flow-modules.js';
9
9
  export { matchesSchema, schemaValidationErrors, variableInputCompatible } from './flow-schema.js';