@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
@@ -0,0 +1,144 @@
1
+ import type { JSONSchema7, JSONSchema7TypeName } from 'json-schema'
2
+ import type { Context } from './common.ts'
3
+ import type { InputSchema } from './compiler.ts'
4
+ import type { CompiledSchema } from './wrapper.ts'
5
+
6
+ import { pick } from '../utils.ts'
7
+ import { recordError, isJSONSchemaKey, recordWarn } from './common.ts'
8
+ import { CompiledKind, wrapCompiledSchema } from './wrapper.ts'
9
+
10
+ type NumericKeys = 'type' | 'multipleOf' | 'maximum' | 'exclusiveMaximum' | 'minimum' | 'exclusiveMinimum'
11
+ type StringKeys = 'type' | 'format' | 'maxLength' | 'minLength' | 'pattern'
12
+
13
+ const NUMERIC_KEYS = new Set<NumericKeys>(['type', 'multipleOf', 'maximum', 'exclusiveMaximum', 'minimum', 'exclusiveMinimum'])
14
+ const STRING_KEYS = new Set<StringKeys>(['type', 'format', 'maxLength', 'minLength', 'pattern'])
15
+
16
+ export type PrimitiveInputSchema = InputSchema & {
17
+ readonly type: Exclude<JSONSchema7TypeName, 'object' | 'array'>
18
+ }
19
+
20
+ export function compilePrimitiveSchema<E>(context: Context<E>, schema: PrimitiveInputSchema): CompiledSchema<E> | null {
21
+ const { type } = schema
22
+ switch (type) {
23
+ case 'number':
24
+ case 'integer': {
25
+ return compileNumericSchema(context, schema)
26
+ }
27
+ case 'string': {
28
+ return compileStringSchema(context, schema)
29
+ }
30
+ case 'boolean':
31
+ case 'null': {
32
+ const rejectKeys = Object.keys(schema).filter((k) => isJSONSchemaKey(k) && k !== 'type')
33
+ if (rejectKeys.length > 0) {
34
+ recordWarn(context, `key "type" will exclude other keys: ${rejectKeys.toSorted().join(', ')}`)
35
+ }
36
+ const kind = type === 'null' ? CompiledKind.Null : CompiledKind.Boolean
37
+ const compiledSchema = { type }
38
+ return wrapCompiledSchema(kind, compiledSchema, context.delegate, context.path)
39
+ }
40
+ default: {
41
+ recordError(context, `invalid type ${JSON.stringify(type)}`)
42
+ return null
43
+ }
44
+ }
45
+ }
46
+
47
+ function compileNumericSchema<E>(context: Context<E>, schema: PrimitiveInputSchema): CompiledSchema<E> | null {
48
+ const rejectKeys = Object.keys(schema).filter((k) => !NUMERIC_KEYS.has(k as NumericKeys) && isJSONSchemaKey(k))
49
+ if (rejectKeys.length > 0) {
50
+ recordWarn(context, `type=${JSON.stringify(schema.type)} will exclude other keys: ${rejectKeys.toSorted().join(', ')}`)
51
+ }
52
+ const compiledSchema = pick(schema, NUMERIC_KEYS)
53
+
54
+ for (const key of NUMERIC_KEYS) {
55
+ const value = compiledSchema[key]
56
+ if (key !== 'type' && value !== undefined && Number.isNaN(value)) {
57
+ recordWarn(context, 'found NaN', key)
58
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
59
+ delete (compiledSchema as any)[key]
60
+ }
61
+ }
62
+ const { maximum, exclusiveMaximum, minimum, exclusiveMinimum } = compiledSchema
63
+
64
+ if (maximum !== undefined && exclusiveMaximum !== undefined) {
65
+ if (maximum === exclusiveMaximum) {
66
+ delete compiledSchema.maximum
67
+ } else if (maximum < exclusiveMaximum) {
68
+ delete compiledSchema.exclusiveMaximum
69
+ } else if (maximum > exclusiveMaximum) {
70
+ delete compiledSchema.maximum
71
+ }
72
+ }
73
+ if (minimum !== undefined && exclusiveMinimum !== undefined) {
74
+ if (minimum === exclusiveMinimum) {
75
+ delete compiledSchema.minimum
76
+ } else if (minimum < exclusiveMinimum) {
77
+ delete compiledSchema.exclusiveMinimum
78
+ } else if (minimum > exclusiveMinimum) {
79
+ delete compiledSchema.minimum
80
+ }
81
+ }
82
+ const { multipleOf } = compiledSchema
83
+
84
+ if (multipleOf === 0) {
85
+ delete compiledSchema.multipleOf
86
+ compiledSchema.type = 'number'
87
+ recordWarn(context, 'cannot be 0', 'multipleOf')
88
+ }
89
+ let kind: CompiledKind = CompiledKind.Numeric
90
+ if (!isNumericPossibleInvalid(compiledSchema)) {
91
+ kind = CompiledKind.Never
92
+ }
93
+ return wrapCompiledSchema(kind, compiledSchema, context.delegate, context.path)
94
+ }
95
+
96
+ function isNumericPossibleInvalid(compiledSchema: JSONSchema7): boolean {
97
+ const { maximum, exclusiveMaximum, minimum, exclusiveMinimum } = compiledSchema
98
+
99
+ if (maximum !== undefined && minimum !== undefined) {
100
+ return maximum >= minimum
101
+ } else if (exclusiveMaximum !== undefined && minimum !== undefined) {
102
+ return exclusiveMaximum > minimum
103
+ } else if (maximum !== undefined && exclusiveMinimum !== undefined) {
104
+ return maximum > exclusiveMinimum
105
+ } else if (exclusiveMaximum !== undefined && exclusiveMinimum !== undefined) {
106
+ return exclusiveMaximum > exclusiveMinimum
107
+ } else {
108
+ return true
109
+ }
110
+ }
111
+
112
+ function compileStringSchema<E>(context: Context<E>, schema: PrimitiveInputSchema): CompiledSchema<E> | null {
113
+ const rejectKeys = Object.keys(schema).filter((k) => !STRING_KEYS.has(k as StringKeys) && isJSONSchemaKey(k))
114
+ if (rejectKeys.length > 0) {
115
+ recordWarn(context, `type="string" will exclude other keys: ${rejectKeys.toSorted().join(', ')}`)
116
+ }
117
+ const compiledSchema = pick(schema, STRING_KEYS)
118
+
119
+ cleanInvalidLength(context, compiledSchema, 'maxLength')
120
+ cleanInvalidLength(context, compiledSchema, 'minLength')
121
+
122
+ const max = compiledSchema.maxLength
123
+ const min = compiledSchema.minLength
124
+ let kind: CompiledKind = CompiledKind.String
125
+
126
+ if (max !== undefined) {
127
+ if (max < 0) {
128
+ kind = CompiledKind.Never
129
+ } else if (max !== undefined && min !== undefined && max < min) {
130
+ kind = CompiledKind.Never
131
+ }
132
+ }
133
+ return wrapCompiledSchema(kind, compiledSchema, context.delegate, context.path)
134
+ }
135
+
136
+ function cleanInvalidLength<E>(context: Context<E>, compiledSchema: JSONSchema7, key: 'maxLength' | 'minLength'): void {
137
+ const length = compiledSchema[key]
138
+ if (length !== undefined) {
139
+ if (Number.isNaN(length)) {
140
+ recordWarn(context, 'found NaN', key)
141
+ delete compiledSchema[key]
142
+ }
143
+ }
144
+ }
@@ -0,0 +1,24 @@
1
+ export function cleanEmptyValues<T extends object>(origin: T): Partial<T> {
2
+ for (const key in origin) {
3
+ const value = origin[key]
4
+ if (value === undefined) {
5
+ delete origin[key]
6
+ } else if (value && typeof value === 'object') {
7
+ if (Array.isArray(value)) {
8
+ if (value.length === 0) {
9
+ delete origin[key]
10
+ }
11
+ } else if (isEmptyObject(value)) {
12
+ delete origin[key]
13
+ }
14
+ }
15
+ }
16
+ return origin
17
+ }
18
+
19
+ function isEmptyObject(object: object): boolean {
20
+ for (const _ in object) {
21
+ return false
22
+ }
23
+ return true
24
+ }
@@ -0,0 +1,192 @@
1
+ import type { JSONSchema7 } from 'json-schema'
2
+ import type { ExtendsSchema } from '../extends/index.ts'
3
+ import type { Schema } from '../types.ts'
4
+ import type { JSONDelegate } from '../types.ts'
5
+ import type { DeepReadonly } from '../utils.ts'
6
+
7
+ import { createId, deepFreeze } from '../utils.ts'
8
+
9
+ const symbolID = Symbol('compiledId')
10
+ const symbolKind = Symbol('compiledKind')
11
+ const symbolPath = Symbol('compiledPath')
12
+ const symbolValidatorLoader = Symbol('validatorLoader')
13
+
14
+ export type SchemaPath = readonly (string | number)[]
15
+
16
+ export const CompiledKind = Object.freeze({
17
+ Extends: 0,
18
+ Never: 1,
19
+ Any: 2,
20
+ Null: 3,
21
+ String: 4,
22
+ Numeric: 5,
23
+ Boolean: 6,
24
+ Object: 7,
25
+ Array: 8,
26
+ Not: 9,
27
+ Combination: 10,
28
+ EnumOrConst: 11,
29
+ })
30
+
31
+ export type CompiledKind = (typeof CompiledKind)[keyof typeof CompiledKind]
32
+
33
+ export type CompiledValue = null | number | string | boolean | CompiledObject
34
+ export type CompiledObject = (CompiledValue[] | { [key: string]: CompiledValue }) & {
35
+ readonly [symbolID]: number
36
+ }
37
+
38
+ type ValidatorLoader<E> = () => (value: unknown) => boolean | readonly E[]
39
+
40
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
41
+ export const ANY: DeepReadonly<CompiledSchema<any>> = deepFreeze(toCompiledSchema(CompiledKind.Any, createId(), {}, () => () => true))
42
+
43
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
44
+ export const NEVER: DeepReadonly<CompiledSchema<any>> = deepFreeze(
45
+ toCompiledSchema(CompiledKind.Never, createId(), { type: 'string', maxLength: 0, minLength: 1 }, () => () => false),
46
+ )
47
+
48
+ export interface CompiledSchema<E> extends JSONSchema7 {
49
+ readonly [symbolKind]: CompiledKind
50
+ readonly [symbolID]: number
51
+ readonly [symbolPath]: SchemaPath
52
+ readonly [symbolValidatorLoader]?: ValidatorLoader<E>
53
+ readonly isValid?: (value: unknown) => boolean | readonly E[]
54
+ }
55
+
56
+ export function isCompiledObject(value: unknown): value is DeepReadonly<CompiledObject> {
57
+ if (value === null || typeof value !== 'object') {
58
+ return false
59
+ }
60
+ return symbolID in value
61
+ }
62
+
63
+ export function isCompiledSchema<E>(object: unknown): object is DeepReadonly<CompiledSchema<E>> {
64
+ if (object === null || typeof object !== 'object') {
65
+ return false
66
+ }
67
+ return symbolID in object && symbolKind in object
68
+ }
69
+
70
+ export function getKind<E>(schema: Schema<E>): CompiledKind {
71
+ if (isCompiledSchema(schema)) {
72
+ return schema[symbolKind]
73
+ } else {
74
+ return CompiledKind.Extends
75
+ }
76
+ }
77
+
78
+ export function getId<E>(schema: ExtendsSchema | DeepReadonly<CompiledSchema<E>> | DeepReadonly<CompiledObject>): number {
79
+ if (isCompiledSchema(schema) || isCompiledObject(schema)) {
80
+ return schema[symbolID]
81
+ } else {
82
+ return (schema as ExtendsSchema).id
83
+ }
84
+ }
85
+
86
+ export function getPath<E>(schema: Schema<E>): SchemaPath | undefined {
87
+ return isCompiledSchema(schema) ? schema[symbolPath] : undefined
88
+ }
89
+
90
+ export function assertCompiledValue<V>(value: V): asserts value is V & CompiledValue {
91
+ let failure = false
92
+ switch (typeof value) {
93
+ case 'number':
94
+ case 'string':
95
+ case 'boolean': {
96
+ break
97
+ }
98
+ case 'object': {
99
+ failure = !isCompiledObject(value)
100
+ break
101
+ }
102
+ default: {
103
+ failure = true
104
+ break
105
+ }
106
+ }
107
+ if (failure) {
108
+ throw new Error('assert a CompiledValue but fail')
109
+ }
110
+ }
111
+
112
+ export function wrapCompiledValue(value: unknown): CompiledValue {
113
+ if (value === null || typeof value !== 'object') {
114
+ return value as CompiledValue
115
+ }
116
+ Object.defineProperty(value, symbolID, {
117
+ value: createId(),
118
+ configurable: false,
119
+ writable: false,
120
+ enumerable: false,
121
+ })
122
+ return value as CompiledValue
123
+ }
124
+
125
+ export function wrapCompiledSchema<E>(kind: CompiledKind, schema: JSONSchema7, delegate?: JSONDelegate<E>, path: SchemaPath = []): CompiledSchema<E> {
126
+ return toCompiledSchema(
127
+ kind,
128
+ createId(),
129
+ schema,
130
+ delegate &&
131
+ (() => {
132
+ return delegate.compile(schema)
133
+ }),
134
+ path,
135
+ )
136
+ }
137
+
138
+ export function toNever<T extends CompiledSchema<E>, E>(schema: T): T {
139
+ return toCompiledSchema(CompiledKind.Never, createId(), { ...schema }, schema[symbolValidatorLoader], schema[symbolPath]) as T
140
+ }
141
+
142
+ function toCompiledSchema<E>(
143
+ kind: CompiledKind,
144
+ id: number,
145
+ schema: JSONSchema7,
146
+ validatorLoader?: ValidatorLoader<E>,
147
+ path: SchemaPath = [],
148
+ ): CompiledSchema<E> {
149
+ let validator: ReturnType<ValidatorLoader<E>> | null = null
150
+
151
+ Object.defineProperties(schema, {
152
+ [symbolKind]: {
153
+ value: kind,
154
+ configurable: false,
155
+ writable: false,
156
+ enumerable: false,
157
+ },
158
+ [symbolID]: {
159
+ value: id,
160
+ configurable: false,
161
+ writable: false,
162
+ enumerable: false,
163
+ },
164
+ [symbolPath]: {
165
+ value: path,
166
+ configurable: false,
167
+ writable: false,
168
+ enumerable: false,
169
+ },
170
+ [symbolValidatorLoader]: {
171
+ value: validatorLoader,
172
+ configurable: false,
173
+ writable: false,
174
+ enumerable: false,
175
+ },
176
+ isValid: {
177
+ configurable: false,
178
+ enumerable: false,
179
+ get: (): ((value: unknown) => boolean | readonly E[]) | undefined => {
180
+ if (validatorLoader) {
181
+ if (!validator) {
182
+ validator = validatorLoader()
183
+ }
184
+ return validator
185
+ } else {
186
+ return undefined
187
+ }
188
+ },
189
+ },
190
+ })
191
+ return schema as CompiledSchema<E>
192
+ }
@@ -0,0 +1,55 @@
1
+ export class SchemaError<E = unknown> extends Error {
2
+ public readonly items: readonly SchemaErrorItem<E>[]
3
+
4
+ public constructor(items: readonly SchemaErrorItem<E>[] = []) {
5
+ super(createSchemaErrorMessage(items))
6
+ this.name = 'SchemaError'
7
+ this.items = items
8
+ }
9
+ }
10
+
11
+ export type SchemaErrorItem<E = unknown> = CompiledSchemaErrorItem | ExternalSchemaErrorItem<E>
12
+
13
+ export type CompiledSchemaErrorItem = {
14
+ readonly kind: typeof SchemaErrorItemKind.Compiled
15
+ readonly path: (number | string)[]
16
+ readonly message: string
17
+ }
18
+
19
+ export type ExternalSchemaErrorItem<E = unknown> = {
20
+ readonly kind: typeof SchemaErrorItemKind.External
21
+ readonly error: E
22
+ }
23
+
24
+ export const SchemaErrorItemKind = Object.freeze({
25
+ Compiled: 0,
26
+ External: 1,
27
+ })
28
+
29
+ export type SchemaErrorItemKind = (typeof SchemaErrorItemKind)[keyof typeof SchemaErrorItemKind]
30
+
31
+ export function stringifySchemaError<E = unknown>(errorItem: SchemaErrorItem<E>): string {
32
+ switch (errorItem.kind) {
33
+ case SchemaErrorItemKind.Compiled: {
34
+ const { message, path } = errorItem
35
+ return `${message} (at ${path.length > 0 ? path.join('.') : '$root'})`
36
+ }
37
+ case SchemaErrorItemKind.External: {
38
+ return String(errorItem.error)
39
+ }
40
+ }
41
+ }
42
+
43
+ function createSchemaErrorMessage(items: readonly SchemaErrorItem[]): string {
44
+ switch (items.length) {
45
+ case 0: {
46
+ return 'without any items'
47
+ }
48
+ case 1: {
49
+ return stringifySchemaError(items[0])
50
+ }
51
+ default: {
52
+ return `${stringifySchemaError(items[0])} ... omit the rest ${items.length - 1} items`
53
+ }
54
+ }
55
+ }