@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
@@ -0,0 +1,36 @@
1
+ import type { JsonValue } from '../../flow/common/change.ts'
2
+
3
+ import { z } from 'zod'
4
+ import { schemaObject } from '../../flow/common/schema.ts'
5
+
6
+ /** Shared by decision entry points, the editor, and durable decision storage. */
7
+ export const waitCommentSchema = z
8
+ .string()
9
+ .trim()
10
+ .refine((value) => [...value].length <= 2000, 'Wait comment must contain at most 2,000 Unicode code points.')
11
+ .nullable()
12
+ .optional()
13
+
14
+ export function normalizeWaitComment(value?: string | null): string | null {
15
+ return waitCommentSchema.parse(value) || null
16
+ }
17
+
18
+ export function withWaitNotificationMessage(value: JsonValue): JsonValue {
19
+ const source = schemaObject(value)
20
+ if (source == null || (source.pageUrl !== undefined && source.message !== undefined)) return value
21
+ const pageUrl = source.pageUrl === undefined ? (source.continueUrl ?? source.approveUrl) : source.pageUrl
22
+ if (typeof pageUrl != 'string' || typeof source.prompt != 'string' || typeof source.expiresAt != 'string') return value
23
+ return {
24
+ ...source,
25
+ pageUrl,
26
+ message:
27
+ source.message === undefined
28
+ ? [
29
+ source.prompt,
30
+ ...(typeof source.autoContinueAt == 'string' ? [`Automatically continues at: ${source.autoContinueAt}`] : []),
31
+ `Expires at: ${source.expiresAt}`,
32
+ `Review request: ${pageUrl}`,
33
+ ].join('\n\n')
34
+ : source.message,
35
+ }
36
+ }
@@ -0,0 +1,305 @@
1
+ import type { AgentInput, AgentTool, InputPortDefinition, JsonValue, ManagedTaskDefinition, ManagedTaskExecutor } from './change.ts'
2
+
3
+ import { format } from '@cfworker/json-schema'
4
+ import { z } from 'zod'
5
+ import { portsByHandle } from './change.ts'
6
+ import { checkJsonDepth } from './json.ts'
7
+ import { matchesSchema, portsAssignable, schemaObject } from './schema.ts'
8
+
9
+ export type AgentConfig = Extract<ManagedTaskExecutor, { readonly kind: 'agent' }>
10
+
11
+ const schema: z.ZodType<JsonValue> = z.lazy(() =>
12
+ z.union([
13
+ z.boolean(),
14
+ z
15
+ .strictObject({
16
+ type: z
17
+ .union([
18
+ z.enum(['array', 'boolean', 'integer', 'null', 'number', 'object', 'string']),
19
+ z.array(z.enum(['array', 'boolean', 'integer', 'null', 'number', 'object', 'string'])).min(1),
20
+ ])
21
+ .optional(),
22
+ const: z.json().optional(),
23
+ allOf: z.array(schema).min(1).optional(),
24
+ anyOf: z.array(schema).min(1).optional(),
25
+ oneOf: z.array(schema).min(1).optional(),
26
+ not: schema.optional(),
27
+ if: schema.optional(),
28
+ // eslint-disable-next-line unicorn/no-thenable -- JSON Schema defines a conditional keyword named then.
29
+ then: schema.optional(),
30
+ else: schema.optional(),
31
+ $ref: z.string().optional(),
32
+ $schema: z
33
+ .enum([
34
+ 'http://json-schema.org/draft-07/schema#',
35
+ 'https://json-schema.org/draft-07/schema',
36
+ 'https://json-schema.org/draft/2019-09/schema',
37
+ 'https://json-schema.org/draft/2020-12/schema',
38
+ ])
39
+ .optional(),
40
+ $defs: z.record(z.string(), schema).optional(),
41
+ definitions: z.record(z.string(), schema).optional(),
42
+ pattern: z
43
+ .string()
44
+ .refine((value) => {
45
+ try {
46
+ return new RegExp(value, 'u').source.length > 0
47
+ } catch {
48
+ return false
49
+ }
50
+ }, 'Invalid regular expression.')
51
+ .optional(),
52
+ format: z
53
+ .string()
54
+ .refine((value) => Object.hasOwn(format, value), 'Unsupported string format.')
55
+ .optional(),
56
+ multipleOf: z.number().positive().optional(),
57
+ uniqueItems: z.boolean().optional(),
58
+ contains: schema.optional(),
59
+ minContains: z.number().int().nonnegative().optional(),
60
+ maxContains: z.number().int().nonnegative().optional(),
61
+ minProperties: z.number().int().nonnegative().optional(),
62
+ maxProperties: z.number().int().nonnegative().optional(),
63
+ propertyNames: schema.optional(),
64
+ patternProperties: z
65
+ .record(
66
+ z.string().refine((value) => {
67
+ try {
68
+ return new RegExp(value, 'u').source.length > 0
69
+ } catch {
70
+ return false
71
+ }
72
+ }, 'Invalid regular expression.'),
73
+ schema,
74
+ )
75
+ .optional(),
76
+ dependentRequired: z.record(z.string(), z.array(z.string())).optional(),
77
+ dependentSchemas: z.record(z.string(), schema).optional(),
78
+ dependencies: z.record(z.string(), z.union([schema, z.array(z.string())])).optional(),
79
+ prefixItems: z.array(schema).optional(),
80
+ additionalItems: schema.optional(),
81
+ unevaluatedItems: schema.optional(),
82
+ unevaluatedProperties: schema.optional(),
83
+ description: z.string().optional(),
84
+ title: z.string().optional(),
85
+ default: z.json().optional(),
86
+ examples: z.array(z.json()).optional(),
87
+ readOnly: z.boolean().optional(),
88
+ writeOnly: z.boolean().optional(),
89
+ deprecated: z.boolean().optional(),
90
+ $comment: z.string().optional(),
91
+ enum: z.array(z.json()).min(1).optional(),
92
+ properties: z.record(z.string(), schema).optional(),
93
+ required: z.array(z.string()).optional(),
94
+ additionalProperties: schema.optional(),
95
+ items: z.union([schema, z.array(schema)]).optional(),
96
+ minItems: z.number().int().nonnegative().optional(),
97
+ maxItems: z.number().int().nonnegative().optional(),
98
+ minLength: z.number().int().nonnegative().optional(),
99
+ maxLength: z.number().int().nonnegative().optional(),
100
+ minimum: z.number().optional(),
101
+ maximum: z.number().optional(),
102
+ exclusiveMinimum: z.number().optional(),
103
+ exclusiveMaximum: z.number().optional(),
104
+ })
105
+ .transform(
106
+ ({
107
+ title: _title,
108
+ default: _default,
109
+ examples: _examples,
110
+ readOnly: _readOnly,
111
+ writeOnly: _writeOnly,
112
+ deprecated: _deprecated,
113
+ $comment: _comment,
114
+ ...value
115
+ }) => value,
116
+ ),
117
+ ]),
118
+ )
119
+
120
+ const schemaMaps = new Set(['properties', 'patternProperties', 'dependentSchemas', '$defs', 'definitions'])
121
+ const schemaArrays = new Set(['allOf', 'anyOf', 'oneOf', 'prefixItems'])
122
+ const schemaChildren = new Set([
123
+ 'not',
124
+ 'if',
125
+ 'then',
126
+ 'else',
127
+ 'items',
128
+ 'additionalItems',
129
+ 'contains',
130
+ 'additionalProperties',
131
+ 'propertyNames',
132
+ 'unevaluatedProperties',
133
+ 'unevaluatedItems',
134
+ ])
135
+
136
+ function modelSchema(original: JsonValue, expand = true): JsonValue {
137
+ const root = schema.parse(original)
138
+ const draft7 = schemaObject(root)?.$schema?.toString().includes('draft-07') == true
139
+ let size = 0
140
+ const visit = (value: JsonValue, refs: readonly string[], depth: number): JsonValue => {
141
+ if (++size > 4096 || depth > 64) throw new Error('Expanded schema exceeds the size or depth limit.')
142
+ const object = schemaObject(value)
143
+ if (object == null) return value
144
+ if (typeof object.$ref == 'string') {
145
+ const ref = object.$ref
146
+ if (ref != '#' && !ref.startsWith('#/')) throw new Error(`External or anchor reference is not supported: ${ref}`)
147
+ if (refs.includes(ref)) {
148
+ if (!expand) return value
149
+ throw new Error(`Recursive reference cannot be expanded for the model: ${ref}`)
150
+ }
151
+ let target: JsonValue = root
152
+ for (const part of ref == '#' ? [] : ref.slice(2).split('/')) {
153
+ const key = decodeURIComponent(part).replace(/~1/g, '/').replace(/~0/g, '~')
154
+ const item = Array.isArray(target) ? Object.fromEntries(target.map((entry, index) => [String(index), entry])) : schemaObject(target)
155
+ if (item == null || !Object.hasOwn(item, key)) throw new Error(`Unresolved schema reference: ${ref}`)
156
+ target = item[key]!
157
+ }
158
+ if (typeof target != 'boolean' && schemaObject(target) == null) throw new Error(`Reference does not point to a schema: ${ref}`)
159
+ const resolved = visit(target, [...refs, ref], depth + 1)
160
+ const { $ref: _ref, ...siblings } = object
161
+ return draft7 || Object.keys(siblings).length == 0 ? resolved : { allOf: [resolved, visit(siblings, refs, depth + 1)] }
162
+ }
163
+ return Object.fromEntries(
164
+ Object.entries(object).flatMap<[string, JsonValue]>(([key, child]) => {
165
+ if (key == '$defs' || key == 'definitions' || key == '$schema') return []
166
+ if (schemaMaps.has(key))
167
+ return [[key, Object.fromEntries(Object.entries(schemaObject(child) ?? {}).map(([name, nested]) => [name, visit(nested, refs, depth + 1)]))]]
168
+ if (schemaArrays.has(key) || (key == 'items' && Array.isArray(child)))
169
+ return [[key, (child as readonly JsonValue[]).map((nested) => visit(nested, refs, depth + 1))]]
170
+ if (schemaChildren.has(key)) return [[key, visit(child, refs, depth + 1)]]
171
+ if (key == 'dependencies')
172
+ return [
173
+ [
174
+ key,
175
+ Object.fromEntries(
176
+ Object.entries(schemaObject(child) ?? {}).map(([name, nested]) => [name, Array.isArray(nested) ? nested : visit(nested, refs, depth + 1)]),
177
+ ),
178
+ ],
179
+ ]
180
+ return [[key, child]]
181
+ }),
182
+ )
183
+ }
184
+ return visit(root, [], 0)
185
+ }
186
+
187
+ function schemaIssue(value: JsonValue, forModel = false): string | undefined {
188
+ const result = schema.safeParse(value)
189
+ if (result.success) {
190
+ try {
191
+ modelSchema(value, forModel)
192
+ return
193
+ } catch (error) {
194
+ return error instanceof Error ? error.message : String(error)
195
+ }
196
+ }
197
+ const issues = [...result.error.issues]
198
+ for (let index = 0; index < issues.length; index++) {
199
+ const issue = issues[index]!
200
+ if (issue.code == 'invalid_union') issues.push(...issue.errors.flat())
201
+ }
202
+ const issue = issues.find((item) => item.code == 'unrecognized_keys') ?? issues.at(-1)!
203
+ const message = issue.code == 'unrecognized_keys' ? `unsupported keywords: ${issue.keys.join(', ')}` : issue.message
204
+ return `${issue.path.length == 0 ? '' : `${issue.path.map(String).join('.')}: `}${message}`
205
+ }
206
+
207
+ export function agentConfigIssues(task: ManagedTaskDefinition): readonly string[] {
208
+ if (task.executor.kind != 'agent') return []
209
+ const config = task.executor
210
+ const issues: string[] = []
211
+ const inputs = portsByHandle(task.inputs)
212
+ const sourceIssue = (source: Exclude<AgentInput, { readonly kind: 'model' }>, port: InputPortDefinition): boolean => {
213
+ if (source.kind == 'value') return !(source.value === null && port.nullable) && !matchesSchema(source.value, port.jsonSchema)
214
+ const input = inputs[source.input]
215
+ return input == null || !portsAssignable(input, port)
216
+ }
217
+ if (config.model.trim().length == 0) issues.push('Choose an Agent model.')
218
+ if (!Number.isSafeInteger(config.maxRounds) || config.maxRounds < 1 || config.maxRounds > 100) issues.push('Agent maxRounds must be between 1 and 100.')
219
+ if (typeof config.prompt != 'string') issues.push('Agent prompt must be a string template.')
220
+ const outputs = task.outputs.filter((port) => 'handle' in port)
221
+ if (outputs.length != 1 || outputs[0]?.handle != 'output' || outputs[0].nullable || schemaIssue(outputs[0].jsonSchema) != null) {
222
+ issues.push('Agent requires one non-nullable output named output with a supported JSON schema.')
223
+ }
224
+ if (config.tools.length > 64) issues.push('Declare at most 64 Agent tools.')
225
+ const ids = new Set<string>()
226
+ const names = new Set<string>()
227
+ for (const tool of config.tools) {
228
+ if (tool.id.length == 0 || ids.has(tool.id)) issues.push('Agent tool identities must be non-empty and unique.')
229
+ if (!/^[A-Za-z][A-Za-z0-9_-]{0,63}$/.test(tool.name) || names.has(tool.name)) issues.push('Agent tool names must be unique provider-compatible names.')
230
+ if (tool.name == 'read_result' || tool.name == 'run_code') issues.push(`Tool name ${tool.name} is reserved for built-in Agent tools.`)
231
+ ids.add(tool.id)
232
+ names.add(tool.name)
233
+ if (tool.description.trim().length == 0) issues.push(`Tool ${tool.name} requires a description.`)
234
+ if (tool.kind != 'workflow' && !/^[A-Za-z0-9_-]+\.[A-Za-z0-9_.-]+$/.test(tool.action)) issues.push(`Tool ${tool.name} has an invalid Action or Connection.`)
235
+ const fields = new Set<string>()
236
+ for (const port of tool.inputs) {
237
+ if (port.handle.length == 0 || fields.has(port.handle)) issues.push(`Tool ${tool.name} has an empty or duplicate input.`)
238
+ fields.add(port.handle)
239
+ const problem = schemaIssue(port.jsonSchema, port.source.kind == 'model')
240
+ if (problem != null) issues.push(`Tool ${tool.name} input ${port.handle} has an invalid schema (${problem}).`)
241
+ if (Object.hasOwn(port, 'value')) issues.push(`Tool ${tool.name} input ${port.handle} must specify its value through source.`)
242
+ if (port.source.kind != 'model' && sourceIssue(port.source, port)) issues.push(`Tool ${tool.name} input ${port.handle} has an incompatible source.`)
243
+ }
244
+ }
245
+ if (config.notification != null) {
246
+ const notice = config.notification
247
+ if (notice.action.length == 0) issues.push('Agent notification requires an action.')
248
+ const ports = portsByHandle(notice.inputDefinitions)
249
+ const message = ports[notice.messageHandle]
250
+ if (message == null || !portsAssignable({ jsonSchema: { type: 'string' }, nullable: false }, message))
251
+ issues.push('Agent notification requires a string message input.')
252
+ if (Object.hasOwn(notice.inputs, notice.messageHandle)) issues.push('Agent notification message is supplied by the host.')
253
+ for (const [handle, source] of Object.entries(notice.inputs)) {
254
+ const port = ports[handle]
255
+ if (port == null || sourceIssue(source, port)) issues.push(`Agent notification input ${handle} has an incompatible source.`)
256
+ }
257
+ for (const port of Object.values(ports)) {
258
+ if (port.handle != notice.messageHandle && !Object.hasOwn(notice.inputs, port.handle) && !port.nullable && !Object.hasOwn(port, 'value')) {
259
+ issues.push(`Agent notification input ${port.handle} requires a source.`)
260
+ }
261
+ }
262
+ }
263
+ return issues
264
+ }
265
+
266
+ export function agentInput(source: Exclude<AgentInput, { readonly kind: 'model' }>, input: Readonly<Record<string, JsonValue>>): JsonValue {
267
+ if (source.kind == 'value') return source.value
268
+ if (!Object.hasOwn(input, source.input)) throw new Error(`Agent input ${source.input} is missing.`)
269
+ return input[source.input]!
270
+ }
271
+
272
+ export function agentToolSchema(tool: AgentTool): JsonValue {
273
+ const ports = tool.inputs.filter((port) => port.source.kind == 'model')
274
+ return {
275
+ type: 'object',
276
+ additionalProperties: false,
277
+ properties: Object.fromEntries(
278
+ ports.map((port) => {
279
+ const value = modelSchema(port.jsonSchema)
280
+ return [
281
+ port.handle,
282
+ {
283
+ ...(port.nullable ? { anyOf: [value, { type: 'null' }] } : typeof value == 'object' && value != null ? value : { allOf: [value] }),
284
+ ...(port.description == null ? {} : { description: port.description }),
285
+ },
286
+ ]
287
+ }),
288
+ ),
289
+ required: ports.map((port) => port.handle),
290
+ }
291
+ }
292
+
293
+ export function agentToolInput(tool: AgentTool, input: Readonly<Record<string, JsonValue>>, argumentsValue: unknown): Readonly<Record<string, JsonValue>> {
294
+ checkJsonDepth(argumentsValue)
295
+ const args = z.record(z.string(), z.json()).parse(argumentsValue)
296
+ if (!matchesSchema(args, agentToolSchema(tool))) throw new Error(`Tool ${tool.name} arguments do not match the model input schema.`)
297
+ return Object.fromEntries(
298
+ tool.inputs.map((port) => {
299
+ const value = port.source.kind == 'model' ? args[port.handle] : agentInput(port.source, input)
300
+ if (value === undefined || (!(value === null && port.nullable) && !matchesSchema(value, port.jsonSchema)))
301
+ throw new Error(`Tool ${tool.name} input ${port.handle} is invalid.`)
302
+ return [port.handle, value]
303
+ }),
304
+ )
305
+ }
@@ -0,0 +1,30 @@
1
+ import { customAlphabet } from 'nanoid'
2
+
3
+ const randomAuthoringId = customAlphabet('23456789abcdefghjkmnpqrstuvwxyz', 10)
4
+
5
+ export const createAuthoringId = randomAuthoringId
6
+
7
+ export { connect, disconnect } from './edgeChanges.ts'
8
+ export { imports as moduleImports, rename as renameModule, replaceSource as replaceModuleSource } from './moduleChanges.ts'
9
+ export {
10
+ createBuiltinTrigger,
11
+ createCodeTask,
12
+ createCondition,
13
+ createDecisionTask,
14
+ createAgentTask,
15
+ createLlmTask,
16
+ createManagedTask,
17
+ createProviderTrigger,
18
+ createValue,
19
+ createWait,
20
+ deleteNodes,
21
+ cleanVariableBindings,
22
+ setConnectorConnection,
23
+ setCodeActions,
24
+ setInputSources,
25
+ setInputVariable,
26
+ setInputValues,
27
+ setTriggerConnection,
28
+ updateSettings,
29
+ updateTrigger,
30
+ } from './nodeChanges.ts'