@xyne/workflow-sdk 3.2.38 → 3.2.40

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 (212) hide show
  1. package/dist/builder/index.d.ts +3 -1
  2. package/dist/builder/index.d.ts.map +1 -1
  3. package/dist/builder/index.js +7 -1
  4. package/dist/builder/index.js.map +1 -1
  5. package/dist/client/types.d.ts +13 -0
  6. package/dist/client/types.d.ts.map +1 -1
  7. package/dist/client/workflow-client.d.ts.map +1 -1
  8. package/dist/client/workflow-client.js +8 -0
  9. package/dist/client/workflow-client.js.map +1 -1
  10. package/dist/common/citation-ref.d.ts +36 -36
  11. package/dist/connectors/builtin/builtin-connector.d.ts +1 -0
  12. package/dist/connectors/builtin/builtin-connector.d.ts.map +1 -1
  13. package/dist/connectors/builtin/builtin-connector.js +1 -0
  14. package/dist/connectors/builtin/builtin-connector.js.map +1 -1
  15. package/dist/connectors/builtin/steps/http-request.step.d.ts +2 -2
  16. package/dist/connectors/builtin/steps/switch.step.d.ts +12 -12
  17. package/dist/connectors/builtin/steps/wait.step.d.ts +90 -90
  18. package/dist/connectors/builtin/triggers/default-cron-trigger.d.ts +9 -1
  19. package/dist/connectors/builtin/triggers/default-cron-trigger.d.ts.map +1 -1
  20. package/dist/connectors/builtin/triggers/default-cron-trigger.js +3 -3
  21. package/dist/connectors/builtin/triggers/default-cron-trigger.js.map +1 -1
  22. package/dist/connectors/builtin/triggers/default-event-trigger.d.ts +12 -1
  23. package/dist/connectors/builtin/triggers/default-event-trigger.d.ts.map +1 -1
  24. package/dist/connectors/builtin/triggers/default-event-trigger.js +13 -1
  25. package/dist/connectors/builtin/triggers/default-event-trigger.js.map +1 -1
  26. package/dist/connectors/builtin/triggers/default-manual-trigger.d.ts +4 -1
  27. package/dist/connectors/builtin/triggers/default-manual-trigger.d.ts.map +1 -1
  28. package/dist/connectors/builtin/triggers/default-manual-trigger.js +3 -1
  29. package/dist/connectors/builtin/triggers/default-manual-trigger.js.map +1 -1
  30. package/dist/connectors/core/base-connector.d.ts +5 -0
  31. package/dist/connectors/core/base-connector.d.ts.map +1 -1
  32. package/dist/connectors/core/base-connector.js +5 -0
  33. package/dist/connectors/core/base-connector.js.map +1 -1
  34. package/dist/connectors/core/connector-registry.d.ts.map +1 -1
  35. package/dist/connectors/core/connector-registry.js +26 -12
  36. package/dist/connectors/core/connector-registry.js.map +1 -1
  37. package/dist/engine/condition-evaluator.d.ts.map +1 -1
  38. package/dist/engine/condition-evaluator.js +41 -5
  39. package/dist/engine/condition-evaluator.js.map +1 -1
  40. package/dist/engine/config-validator.d.ts +8 -0
  41. package/dist/engine/config-validator.d.ts.map +1 -1
  42. package/dist/engine/config-validator.js +61 -4
  43. package/dist/engine/config-validator.js.map +1 -1
  44. package/dist/engine/workflow-executor.d.ts.map +1 -1
  45. package/dist/engine/workflow-executor.js +5 -28
  46. package/dist/engine/workflow-executor.js.map +1 -1
  47. package/dist/index.d.ts +8 -4
  48. package/dist/index.d.ts.map +1 -1
  49. package/dist/index.js +3 -1
  50. package/dist/index.js.map +1 -1
  51. package/dist/ingest/start-policy.d.ts +202 -0
  52. package/dist/ingest/start-policy.d.ts.map +1 -0
  53. package/dist/ingest/start-policy.js +199 -0
  54. package/dist/ingest/start-policy.js.map +1 -0
  55. package/dist/ingest/types.d.ts +25 -6
  56. package/dist/ingest/types.d.ts.map +1 -1
  57. package/dist/persistence/in-memory-adapter.d.ts +4 -2
  58. package/dist/persistence/in-memory-adapter.d.ts.map +1 -1
  59. package/dist/persistence/in-memory-adapter.js +9 -1
  60. package/dist/persistence/in-memory-adapter.js.map +1 -1
  61. package/dist/persistence/types.d.ts +53 -1
  62. package/dist/persistence/types.d.ts.map +1 -1
  63. package/dist/router/types.d.ts +1 -0
  64. package/dist/router/types.d.ts.map +1 -1
  65. package/dist/router/workflow-router.d.ts.map +1 -1
  66. package/dist/router/workflow-router.js +57 -5
  67. package/dist/router/workflow-router.js.map +1 -1
  68. package/dist/runtime/types.d.ts +5 -0
  69. package/dist/runtime/types.d.ts.map +1 -1
  70. package/dist/runtime/workflow-runtime.d.ts +121 -7
  71. package/dist/runtime/workflow-runtime.d.ts.map +1 -1
  72. package/dist/runtime/workflow-runtime.js +430 -57
  73. package/dist/runtime/workflow-runtime.js.map +1 -1
  74. package/dist/schema/options.d.ts +101 -0
  75. package/dist/schema/options.d.ts.map +1 -0
  76. package/dist/schema/options.js +14 -0
  77. package/dist/schema/options.js.map +1 -0
  78. package/dist/steps/base-step.d.ts +12 -1
  79. package/dist/steps/base-step.d.ts.map +1 -1
  80. package/dist/steps/base-step.js +1 -0
  81. package/dist/steps/base-step.js.map +1 -1
  82. package/dist/steps/step-descriptor.d.ts +2 -0
  83. package/dist/steps/step-descriptor.d.ts.map +1 -1
  84. package/dist/steps/step-descriptor.js +1 -0
  85. package/dist/steps/step-descriptor.js.map +1 -1
  86. package/dist/triggers/api-trigger.d.ts +1 -1
  87. package/dist/triggers/api-trigger.d.ts.map +1 -1
  88. package/dist/triggers/api-trigger.js.map +1 -1
  89. package/dist/triggers/base-trigger.d.ts +67 -8
  90. package/dist/triggers/base-trigger.d.ts.map +1 -1
  91. package/dist/triggers/base-trigger.js +15 -3
  92. package/dist/triggers/base-trigger.js.map +1 -1
  93. package/dist/triggers/cron-trigger.d.ts +1 -1
  94. package/dist/triggers/cron-trigger.d.ts.map +1 -1
  95. package/dist/triggers/cron-trigger.js.map +1 -1
  96. package/dist/triggers/event-trigger.d.ts +3 -3
  97. package/dist/triggers/event-trigger.d.ts.map +1 -1
  98. package/dist/triggers/event-trigger.js +2 -2
  99. package/dist/triggers/event-trigger.js.map +1 -1
  100. package/dist/triggers/manual-trigger.d.ts +1 -1
  101. package/dist/triggers/manual-trigger.d.ts.map +1 -1
  102. package/dist/triggers/manual-trigger.js.map +1 -1
  103. package/dist/triggers/trigger-descriptor.d.ts +2 -0
  104. package/dist/triggers/trigger-descriptor.d.ts.map +1 -1
  105. package/dist/triggers/trigger-descriptor.js +1 -0
  106. package/dist/triggers/trigger-descriptor.js.map +1 -1
  107. package/dist/triggers/webhook-trigger.d.ts +25 -6
  108. package/dist/triggers/webhook-trigger.d.ts.map +1 -1
  109. package/dist/triggers/webhook-trigger.js +23 -2
  110. package/dist/triggers/webhook-trigger.js.map +1 -1
  111. package/dist/types/config-path.d.ts +24 -0
  112. package/dist/types/config-path.d.ts.map +1 -0
  113. package/dist/types/config-path.js +18 -0
  114. package/dist/types/config-path.js.map +1 -0
  115. package/dist/types/context.d.ts.map +1 -1
  116. package/dist/types/operators.d.ts +15 -1
  117. package/dist/types/operators.d.ts.map +1 -1
  118. package/dist/types/operators.js +21 -0
  119. package/dist/types/operators.js.map +1 -1
  120. package/dist/types/workflow-config.d.ts +13 -0
  121. package/dist/types/workflow-config.d.ts.map +1 -1
  122. package/dist/types/workflow-config.js +9 -7
  123. package/dist/types/workflow-config.js.map +1 -1
  124. package/dist/util/option-mark.d.ts +44 -0
  125. package/dist/util/option-mark.d.ts.map +1 -0
  126. package/dist/util/option-mark.js +132 -0
  127. package/dist/util/option-mark.js.map +1 -0
  128. package/dist/util/schema-convert.d.ts +5 -0
  129. package/dist/util/schema-convert.d.ts.map +1 -1
  130. package/dist/util/schema-convert.js +7 -1
  131. package/dist/util/schema-convert.js.map +1 -1
  132. package/dist/util/schema-marks.d.ts +58 -0
  133. package/dist/util/schema-marks.d.ts.map +1 -0
  134. package/dist/util/schema-marks.js +161 -0
  135. package/dist/util/schema-marks.js.map +1 -0
  136. package/dist/util/variable-ref.d.ts +0 -5
  137. package/dist/util/variable-ref.d.ts.map +1 -1
  138. package/dist/util/variable-ref.js +0 -5
  139. package/dist/util/variable-ref.js.map +1 -1
  140. package/package.json +1 -1
  141. package/dist/runtime/execution-event-bus.d.ts +0 -38
  142. package/dist/runtime/execution-event-bus.d.ts.map +0 -1
  143. package/dist/runtime/execution-event-bus.js +0 -87
  144. package/dist/runtime/execution-event-bus.js.map +0 -1
  145. package/dist/steps/builtin/code.step.d.ts +0 -99
  146. package/dist/steps/builtin/code.step.d.ts.map +0 -1
  147. package/dist/steps/builtin/code.step.js +0 -152
  148. package/dist/steps/builtin/code.step.js.map +0 -1
  149. package/dist/steps/builtin/conditional.step.d.ts +0 -182
  150. package/dist/steps/builtin/conditional.step.d.ts.map +0 -1
  151. package/dist/steps/builtin/conditional.step.js +0 -82
  152. package/dist/steps/builtin/conditional.step.js.map +0 -1
  153. package/dist/steps/builtin/dedup.step.d.ts +0 -65
  154. package/dist/steps/builtin/dedup.step.d.ts.map +0 -1
  155. package/dist/steps/builtin/dedup.step.js +0 -61
  156. package/dist/steps/builtin/dedup.step.js.map +0 -1
  157. package/dist/steps/builtin/http-request.step.d.ts +0 -1020
  158. package/dist/steps/builtin/http-request.step.d.ts.map +0 -1
  159. package/dist/steps/builtin/http-request.step.js +0 -491
  160. package/dist/steps/builtin/http-request.step.js.map +0 -1
  161. package/dist/steps/builtin/loop.step.d.ts +0 -100
  162. package/dist/steps/builtin/loop.step.d.ts.map +0 -1
  163. package/dist/steps/builtin/loop.step.js +0 -73
  164. package/dist/steps/builtin/loop.step.js.map +0 -1
  165. package/dist/steps/builtin/map.step.d.ts +0 -148
  166. package/dist/steps/builtin/map.step.d.ts.map +0 -1
  167. package/dist/steps/builtin/map.step.js +0 -111
  168. package/dist/steps/builtin/map.step.js.map +0 -1
  169. package/dist/steps/builtin/parallel.step.d.ts +0 -246
  170. package/dist/steps/builtin/parallel.step.d.ts.map +0 -1
  171. package/dist/steps/builtin/parallel.step.js +0 -175
  172. package/dist/steps/builtin/parallel.step.js.map +0 -1
  173. package/dist/steps/builtin/ssrf-guard.d.ts +0 -9
  174. package/dist/steps/builtin/ssrf-guard.d.ts.map +0 -1
  175. package/dist/steps/builtin/ssrf-guard.js +0 -115
  176. package/dist/steps/builtin/ssrf-guard.js.map +0 -1
  177. package/dist/steps/builtin/switch.step.d.ts +0 -235
  178. package/dist/steps/builtin/switch.step.d.ts.map +0 -1
  179. package/dist/steps/builtin/switch.step.js +0 -101
  180. package/dist/steps/builtin/switch.step.js.map +0 -1
  181. package/dist/steps/builtin/wait.step.d.ts +0 -1072
  182. package/dist/steps/builtin/wait.step.d.ts.map +0 -1
  183. package/dist/steps/builtin/wait.step.js +0 -254
  184. package/dist/steps/builtin/wait.step.js.map +0 -1
  185. package/dist/steps/step-registry.d.ts +0 -62
  186. package/dist/steps/step-registry.d.ts.map +0 -1
  187. package/dist/steps/step-registry.js +0 -103
  188. package/dist/steps/step-registry.js.map +0 -1
  189. package/dist/triggers/builtin/default-cron-trigger.d.ts +0 -44
  190. package/dist/triggers/builtin/default-cron-trigger.d.ts.map +0 -1
  191. package/dist/triggers/builtin/default-cron-trigger.js +0 -31
  192. package/dist/triggers/builtin/default-cron-trigger.js.map +0 -1
  193. package/dist/triggers/builtin/default-event-trigger.d.ts +0 -32
  194. package/dist/triggers/builtin/default-event-trigger.d.ts.map +0 -1
  195. package/dist/triggers/builtin/default-event-trigger.js +0 -21
  196. package/dist/triggers/builtin/default-event-trigger.js.map +0 -1
  197. package/dist/triggers/builtin/default-manual-trigger.d.ts +0 -45
  198. package/dist/triggers/builtin/default-manual-trigger.d.ts.map +0 -1
  199. package/dist/triggers/builtin/default-manual-trigger.js +0 -51
  200. package/dist/triggers/builtin/default-manual-trigger.js.map +0 -1
  201. package/dist/triggers/builtin/default-webhook-trigger.d.ts +0 -72
  202. package/dist/triggers/builtin/default-webhook-trigger.d.ts.map +0 -1
  203. package/dist/triggers/builtin/default-webhook-trigger.js +0 -91
  204. package/dist/triggers/builtin/default-webhook-trigger.js.map +0 -1
  205. package/dist/triggers/builtin/default-webhook-v2-trigger.d.ts +0 -29
  206. package/dist/triggers/builtin/default-webhook-v2-trigger.d.ts.map +0 -1
  207. package/dist/triggers/builtin/default-webhook-v2-trigger.js +0 -38
  208. package/dist/triggers/builtin/default-webhook-v2-trigger.js.map +0 -1
  209. package/dist/triggers/trigger-registry.d.ts +0 -48
  210. package/dist/triggers/trigger-registry.d.ts.map +0 -1
  211. package/dist/triggers/trigger-registry.js +0 -83
  212. package/dist/triggers/trigger-registry.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"base-trigger.d.ts","sourceRoot":"","sources":["../../src/triggers/base-trigger.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAC7B,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAC7D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,mCAAmC,CAAC;AAC/E,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AACnE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAEjE,6DAA6D;AAC7D,MAAM,WAAW,uBAAuB;IACtC,uEAAuE;IACvE,QAAQ,CAAC,WAAW,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAC,CAAC;IACnE,0CAA0C;IAC1C,QAAQ,CAAC,UAAU,EAAE,kBAAkB,CAAC,UAAU,CAAC,CAAC;IACpD,wEAAwE;IACxE,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AAED;;;;;;;;;;GAUG;AACH,8BAAsB,WAAW,CAAC,OAAO,SAAS,CAAC,CAAC,UAAU;IAC5D,QAAQ,CAAC,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC;IACpC,QAAQ,CAAC,QAAQ,CAAC,YAAY,EAAE,OAAO,CAAC;IACxC,QAAQ,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IACtC,QAAQ,CAAC,QAAQ,CAAC,YAAY,EAAE,CAAC,CAAC,UAAU,CAAC;IAC7C,QAAQ,CAAC,QAAQ,CAAC,QAAQ,EAAE,eAAe,CAAC;IAC5C,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAEvB;;;OAGG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;IAEhC;;;OAGG;IACH,QAAQ,CAAC,eAAe,CAAC,EAAE,SAAS,cAAc,EAAE,CAAC;IAErD;;;OAGG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE,qBAAqB,CAAC;IAE5C,qEAAqE;IACrE,QAAQ,CAAC,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAEvC,mEAAmE;IACnE,QAAQ,CAAC,iBAAiB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAE/C,wDAAwD;IACxD,QAAQ,CAAC,MAAM,EAAE,OAAO,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC;IAI3C;;;OAGG;IACH,cAAc,CAAC,CACb,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC/B,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAEnC;;;OAGG;IACH,YAAY,CACV,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAChC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAChC,OAAO;IAIV;;;OAGG;IACH,oBAAoB,CAClB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAClC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAI1B;;;;;;;;;;;OAWG;IACH,uBAAuB,CAAC,CACtB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC9B,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;CAC3B"}
1
+ {"version":3,"file":"base-trigger.d.ts","sourceRoot":"","sources":["../../src/triggers/base-trigger.ts"],"names":[],"mappings":"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"}
@@ -17,6 +17,7 @@ export class BaseTrigger {
17
17
  */
18
18
  connectorId;
19
19
  connectorName;
20
+ connectorIcon;
20
21
  /**
21
22
  * Config fields holding a credential name, resolved by the engine. Same
22
23
  * contract as a step's slots.
@@ -36,10 +37,21 @@ export class BaseTrigger {
36
37
  return this.configSchema.parse(config);
37
38
  }
38
39
  /**
39
- * Does the incoming event match the user-configured filters?
40
- * Default: always matches. Override for domain-specific filter logic.
40
+ * Is this workflow watching this event at all?
41
+ *
42
+ * The trigger's ONLY say in what starts a run, and it is about the event rather
43
+ * than the world: the actions a binding subscribes to, the boards a rule
44
+ * follows, whether a transition happened. Those are facts of what arrived, so
45
+ * all of them are knowable before any enrichment — which is why this is pure,
46
+ * synchronous, and evaluated on the raw event.
47
+ *
48
+ * Questions about how things ARE — is the ticket still unassigned — are not a
49
+ * trigger's to answer. They belong to the author's conditions, which the runtime
50
+ * evaluates on enriched data at the moment the run acts. That split is what lets
51
+ * a delayed rule arm now and decide later: judge a condition here and a rule
52
+ * whose condition becomes true during the wait would never arm at all.
41
53
  */
42
- matchFilters(_filter, _payload) {
54
+ accepts(_event, _config) {
43
55
  return true;
44
56
  }
45
57
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"base-trigger.js","sourceRoot":"","sources":["../../src/triggers/base-trigger.ts"],"names":[],"mappings":"AAkBA;;;;;;;;;;GAUG;AACH,MAAM,OAAgB,WAAW;IAOtB,IAAI,CAAU;IAEvB;;;OAGG;IACM,WAAW,CAAU;IACrB,aAAa,CAAU;IAEhC;;;OAGG;IACM,eAAe,CAA6B;IAErD;;;OAGG;IACM,UAAU,CAAyB;IAE5C,qEAAqE;IAC5D,mBAAmB,CAAW;IAEvC,mEAAmE;IAC1D,iBAAiB,CAAqB;IAE/C,wDAAwD;IACxD,QAAQ,CAAC,MAAe;QACtB,OAAO,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,MAAM,CAAqB,CAAC;IAC7D,CAAC;IAUD;;;OAGG;IACH,YAAY,CACV,OAAgC,EAChC,QAAiC;QAEjC,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;OAGG;IACH,oBAAoB,CAClB,UAAmC;QAEnC,OAAO,UAAU,CAAC;IACpB,CAAC;CAiBF"}
1
+ {"version":3,"file":"base-trigger.js","sourceRoot":"","sources":["../../src/triggers/base-trigger.ts"],"names":[],"mappings":"AAiCA;;;;;;;;;;GAUG;AACH,MAAM,OAAgB,WAAW;IAqBtB,IAAI,CAAU;IAEvB;;;OAGG;IACM,WAAW,CAAU;IACrB,aAAa,CAAU;IACvB,aAAa,CAAU;IAEhC;;;OAGG;IACM,eAAe,CAA6B;IAErD;;;OAGG;IACM,UAAU,CAAyB;IAE5C,qEAAqE;IAC5D,mBAAmB,CAAW;IAEvC,mEAAmE;IAC1D,iBAAiB,CAAqB;IAE/C,wDAAwD;IACxD,QAAQ,CAAC,MAAe;QACtB,OAAO,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,MAAM,CAAqB,CAAC;IAC7D,CAAC;IAED;;;;;;;;;;;;;;OAcG;IACH,OAAO,CAAC,MAA0B,EAAE,OAAyB;QAC3D,OAAO,IAAI,CAAC;IACd,CAAC;IAsCD;;;OAGG;IACH,oBAAoB,CAClB,UAAmC;QAEnC,OAAO,UAAU,CAAC;IACpB,CAAC;CAiBF"}
@@ -32,7 +32,7 @@ export interface CronPollContext<TServices extends Record<string, unknown> = Rec
32
32
  * `poll()` is useful for "check every 5 minutes for new items" patterns.
33
33
  * Use `staticData` to track high-water marks across ticks.
34
34
  */
35
- export declare abstract class CronTrigger<TConfig extends z.ZodTypeAny = z.ZodTypeAny> extends BaseTrigger<TConfig> {
35
+ export declare abstract class CronTrigger<TConfig extends z.ZodTypeAny = z.ZodTypeAny, TOutput extends z.ZodTypeAny = z.ZodTypeAny> extends BaseTrigger<TConfig, TOutput> {
36
36
  /**
37
37
  * Extract the cron schedule from the trigger config.
38
38
  */
@@ -1 +1 @@
1
- {"version":3,"file":"cron-trigger.d.ts","sourceRoot":"","sources":["../../src/triggers/cron-trigger.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAC7B,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAIrE;;;;;;;;GAQG;AACH,MAAM,WAAW,YAAY;IAC3B,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,eAAe,CAC9B,SAAS,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAEnE,QAAQ,EAAE,eAAe,CAAC,SAAS,CAAC,CAAC;IACrC,UAAU,EAAE;QACV,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;QACnC,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;QAChD,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;KACpC,CAAC;IACF,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACnC;AAID;;;;;;;;;GASG;AACH,8BAAsB,WAAW,CAC/B,OAAO,SAAS,CAAC,CAAC,UAAU,GAAG,CAAC,CAAC,UAAU,CAC3C,SAAQ,WAAW,CAAC,OAAO,CAAC;IAC5B;;OAEG;IACH,QAAQ,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,YAAY;IAE5D;;;OAGG;IACH,IAAI,CAAC,CACH,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,EACxB,GAAG,EAAE,eAAe,GACnB,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;IAE1C;;;;OAIG;IACH,YAAY,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;CACjE"}
1
+ {"version":3,"file":"cron-trigger.d.ts","sourceRoot":"","sources":["../../src/triggers/cron-trigger.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAC7B,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAIrE;;;;;;;;GAQG;AACH,MAAM,WAAW,YAAY;IAC3B,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,eAAe,CAC9B,SAAS,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAEnE,QAAQ,EAAE,eAAe,CAAC,SAAS,CAAC,CAAC;IACrC,UAAU,EAAE;QACV,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;QACnC,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;QAChD,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;KACpC,CAAC;IACF,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACnC;AAID;;;;;;;;;GASG;AACH,8BAAsB,WAAW,CAC/B,OAAO,SAAS,CAAC,CAAC,UAAU,GAAG,CAAC,CAAC,UAAU,EAC3C,OAAO,SAAS,CAAC,CAAC,UAAU,GAAG,CAAC,CAAC,UAAU,CAC3C,SAAQ,WAAW,CAAC,OAAO,EAAE,OAAO,CAAC;IACrC;;OAEG;IACH,QAAQ,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,YAAY;IAE5D;;;OAGG;IACH,IAAI,CAAC,CACH,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,EACxB,GAAG,EAAE,eAAe,GACnB,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;IAE1C;;;;OAIG;IACH,YAAY,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;CACjE"}
@@ -1 +1 @@
1
- {"version":3,"file":"cron-trigger.js","sourceRoot":"","sources":["../../src/triggers/cron-trigger.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AA8BhD,sBAAsB;AAEtB;;;;;;;;;GASG;AACH,MAAM,OAAgB,WAEpB,SAAQ,WAAoB;CAqB7B"}
1
+ {"version":3,"file":"cron-trigger.js","sourceRoot":"","sources":["../../src/triggers/cron-trigger.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AA8BhD,sBAAsB;AAEtB;;;;;;;;;GASG;AACH,MAAM,OAAgB,WAGpB,SAAQ,WAA6B;CAqBtC"}
@@ -4,11 +4,11 @@ import { BaseTrigger } from './base-trigger.js';
4
4
  * Passive trigger — fires when the host calls `runtime.dispatchEvent()`.
5
5
  *
6
6
  * The runtime looks up all active workflows whose trigger type matches the
7
- * event type, runs `hydratePayload()` + `matchFilters()`, and enqueues
8
- * executions for the ones that match.
7
+ * event type, then admits each one through `accepts()` `hydrate()` the
8
+ * author's conditions, and enqueues the survivors.
9
9
  *
10
10
  * Hosts extend this for domain events (e.g. TicketCreatedTrigger).
11
11
  */
12
- export declare abstract class EventTrigger<TConfig extends z.ZodTypeAny = z.ZodTypeAny> extends BaseTrigger<TConfig> {
12
+ export declare abstract class EventTrigger<TConfig extends z.ZodTypeAny = z.ZodTypeAny, TOutput extends z.ZodTypeAny = z.ZodTypeAny, TRaw extends Record<string, unknown> = Record<string, unknown>> extends BaseTrigger<TConfig, TOutput, TRaw> {
13
13
  }
14
14
  //# sourceMappingURL=event-trigger.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"event-trigger.d.ts","sourceRoot":"","sources":["../../src/triggers/event-trigger.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAC7B,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEhD;;;;;;;;GAQG;AACH,8BAAsB,YAAY,CAChC,OAAO,SAAS,CAAC,CAAC,UAAU,GAAG,CAAC,CAAC,UAAU,CAC3C,SAAQ,WAAW,CAAC,OAAO,CAAC;CAAG"}
1
+ {"version":3,"file":"event-trigger.d.ts","sourceRoot":"","sources":["../../src/triggers/event-trigger.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAC7B,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEhD;;;;;;;;GAQG;AACH,8BAAsB,YAAY,CAChC,OAAO,SAAS,CAAC,CAAC,UAAU,GAAG,CAAC,CAAC,UAAU,EAC3C,OAAO,SAAS,CAAC,CAAC,UAAU,GAAG,CAAC,CAAC,UAAU,EAC3C,IAAI,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAC9D,SAAQ,WAAW,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC;CAAG"}
@@ -3,8 +3,8 @@ import { BaseTrigger } from './base-trigger.js';
3
3
  * Passive trigger — fires when the host calls `runtime.dispatchEvent()`.
4
4
  *
5
5
  * The runtime looks up all active workflows whose trigger type matches the
6
- * event type, runs `hydratePayload()` + `matchFilters()`, and enqueues
7
- * executions for the ones that match.
6
+ * event type, then admits each one through `accepts()` `hydrate()` the
7
+ * author's conditions, and enqueues the survivors.
8
8
  *
9
9
  * Hosts extend this for domain events (e.g. TicketCreatedTrigger).
10
10
  */
@@ -1 +1 @@
1
- {"version":3,"file":"event-trigger.js","sourceRoot":"","sources":["../../src/triggers/event-trigger.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEhD;;;;;;;;GAQG;AACH,MAAM,OAAgB,YAEpB,SAAQ,WAAoB;CAAG"}
1
+ {"version":3,"file":"event-trigger.js","sourceRoot":"","sources":["../../src/triggers/event-trigger.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEhD;;;;;;;;GAQG;AACH,MAAM,OAAgB,YAIpB,SAAQ,WAAmC;CAAG"}
@@ -6,6 +6,6 @@ import { BaseTrigger } from './base-trigger.js';
6
6
  * Used for test runs and user-initiated workflow executions.
7
7
  * The payload is whatever the caller passes.
8
8
  */
9
- export declare abstract class ManualTrigger<TConfig extends z.ZodTypeAny = z.ZodTypeAny> extends BaseTrigger<TConfig> {
9
+ export declare abstract class ManualTrigger<TConfig extends z.ZodTypeAny = z.ZodTypeAny, TOutput extends z.ZodTypeAny = z.ZodTypeAny> extends BaseTrigger<TConfig, TOutput> {
10
10
  }
11
11
  //# sourceMappingURL=manual-trigger.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"manual-trigger.d.ts","sourceRoot":"","sources":["../../src/triggers/manual-trigger.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAC7B,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEhD;;;;;GAKG;AACH,8BAAsB,aAAa,CACjC,OAAO,SAAS,CAAC,CAAC,UAAU,GAAG,CAAC,CAAC,UAAU,CAC3C,SAAQ,WAAW,CAAC,OAAO,CAAC;CAAG"}
1
+ {"version":3,"file":"manual-trigger.d.ts","sourceRoot":"","sources":["../../src/triggers/manual-trigger.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAC7B,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEhD;;;;;GAKG;AACH,8BAAsB,aAAa,CACjC,OAAO,SAAS,CAAC,CAAC,UAAU,GAAG,CAAC,CAAC,UAAU,EAC3C,OAAO,SAAS,CAAC,CAAC,UAAU,GAAG,CAAC,CAAC,UAAU,CAC3C,SAAQ,WAAW,CAAC,OAAO,EAAE,OAAO,CAAC;CAAG"}
@@ -1 +1 @@
1
- {"version":3,"file":"manual-trigger.js","sourceRoot":"","sources":["../../src/triggers/manual-trigger.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEhD;;;;;GAKG;AACH,MAAM,OAAgB,aAEpB,SAAQ,WAAoB;CAAG"}
1
+ {"version":3,"file":"manual-trigger.js","sourceRoot":"","sources":["../../src/triggers/manual-trigger.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEhD;;;;;GAKG;AACH,MAAM,OAAgB,aAGpB,SAAQ,WAA6B;CAAG"}
@@ -19,6 +19,8 @@ export interface TriggerSummary {
19
19
  /** The connector that provides this trigger. Stamped at registration. */
20
20
  connectorId?: string;
21
21
  connectorName?: string;
22
+ /** Its icon name, for the palette's connector list. Absent when the connector sets none. */
23
+ connectorIcon?: string;
22
24
  }
23
25
  export interface TriggerDescriptor extends TriggerSummary {
24
26
  /** JSON Schema for the trigger's config — generated from the Zod schema. */
@@ -1 +1 @@
1
- {"version":3,"file":"trigger-descriptor.d.ts","sourceRoot":"","sources":["../../src/triggers/trigger-descriptor.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAC7B,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAC7D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEhD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAIlE,KAAK,UAAU,GAAG,WAAW,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;AAI5C,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,WAAW,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,eAAe,CAAC;IAC1B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,yEAAyE;IACzE,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAID,MAAM,WAAW,iBAAkB,SAAQ,cAAc;IACvD,4EAA4E;IAC5E,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACtC,4EAA4E;IAC5E,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACtC,qEAAqE;IACrE,mBAAmB,EAAE,OAAO,CAAC;IAC7B,mEAAmE;IACnE,iBAAiB,EAAE,SAAS,MAAM,EAAE,CAAC;IACrC,mEAAmE;IACnE,eAAe,EAAE,SAAS,cAAc,EAAE,CAAC;IAC3C,kEAAkE;IAClE,UAAU,EAAE,SAAS,iBAAiB,EAAE,CAAC;IACzC,oEAAoE;IACpE,OAAO,EAAE,OAAO,CAAC;CAClB;AAID,wBAAgB,mBAAmB,CAAC,CAAC,EAAE,UAAU,GAAG,cAAc,CAUjE;AAED,wBAAgB,sBAAsB,CAAC,CAAC,EAAE,UAAU,GAAG,iBAAiB,CAWvE"}
1
+ {"version":3,"file":"trigger-descriptor.d.ts","sourceRoot":"","sources":["../../src/triggers/trigger-descriptor.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAC7B,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAC7D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEhD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAIlE,KAAK,UAAU,GAAG,WAAW,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;AAI5C,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,WAAW,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,eAAe,CAAC;IAC1B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,yEAAyE;IACzE,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,4FAA4F;IAC5F,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAID,MAAM,WAAW,iBAAkB,SAAQ,cAAc;IACvD,4EAA4E;IAC5E,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACtC,4EAA4E;IAC5E,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACtC,qEAAqE;IACrE,mBAAmB,EAAE,OAAO,CAAC;IAC7B,mEAAmE;IACnE,iBAAiB,EAAE,SAAS,MAAM,EAAE,CAAC;IACrC,mEAAmE;IACnE,eAAe,EAAE,SAAS,cAAc,EAAE,CAAC;IAC3C,kEAAkE;IAClE,UAAU,EAAE,SAAS,iBAAiB,EAAE,CAAC;IACzC,oEAAoE;IACpE,OAAO,EAAE,OAAO,CAAC;CAClB;AAID,wBAAgB,mBAAmB,CAAC,CAAC,EAAE,UAAU,GAAG,cAAc,CAWjE;AAED,wBAAgB,sBAAsB,CAAC,CAAC,EAAE,UAAU,GAAG,iBAAiB,CAWvE"}
@@ -12,6 +12,7 @@ export function buildTriggerSummary(t) {
12
12
  ...(t.icon !== undefined ? { icon: t.icon } : {}),
13
13
  ...(t.connectorId !== undefined ? { connectorId: t.connectorId } : {}),
14
14
  ...(t.connectorName !== undefined ? { connectorName: t.connectorName } : {}),
15
+ ...(t.connectorIcon !== undefined ? { connectorIcon: t.connectorIcon } : {}),
15
16
  };
16
17
  }
17
18
  export function buildTriggerDescriptor(t) {
@@ -1 +1 @@
1
- {"version":3,"file":"trigger-descriptor.js","sourceRoot":"","sources":["../../src/triggers/trigger-descriptor.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAGtD,OAAO,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAClE,OAAO,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAC;AAoCvE,mBAAmB;AAEnB,MAAM,UAAU,mBAAmB,CAAC,CAAa;IAC/C,OAAO;QACL,IAAI,EAAE,CAAC,CAAC,IAAI;QACZ,IAAI,EAAE,CAAC,CAAC,IAAI;QACZ,WAAW,EAAE,CAAC,CAAC,WAAW;QAC1B,QAAQ,EAAE,CAAC,CAAC,QAAQ;QACpB,GAAG,CAAC,CAAC,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACjD,GAAG,CAAC,CAAC,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACtE,GAAG,CAAC,CAAC,CAAC,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,CAAC,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC7E,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,CAAa;IAClD,OAAO;QACL,GAAG,mBAAmB,CAAC,CAAC,CAAC;QACzB,YAAY,EAAE,CAAC,CAAC,oBAAoB,CAAC,qBAAqB,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC;QAC3E,YAAY,EAAE,qBAAqB,CAAC,CAAC,CAAC,YAAY,CAAC;QACnD,mBAAmB,EAAE,CAAC,CAAC,mBAAmB,IAAI,KAAK;QACnD,iBAAiB,EAAE,CAAC,CAAC,iBAAiB,IAAI,EAAE;QAC5C,eAAe,EAAE,CAAC,CAAC,eAAe,IAAI,EAAE;QACxC,UAAU,EAAE,kBAAkB,CAAC,CAAC,CAAC,UAAU,CAAC;QAC5C,OAAO,EAAE,CAAC,YAAY,cAAc;KACrC,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"trigger-descriptor.js","sourceRoot":"","sources":["../../src/triggers/trigger-descriptor.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAGtD,OAAO,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAClE,OAAO,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAC;AAsCvE,mBAAmB;AAEnB,MAAM,UAAU,mBAAmB,CAAC,CAAa;IAC/C,OAAO;QACL,IAAI,EAAE,CAAC,CAAC,IAAI;QACZ,IAAI,EAAE,CAAC,CAAC,IAAI;QACZ,WAAW,EAAE,CAAC,CAAC,WAAW;QAC1B,QAAQ,EAAE,CAAC,CAAC,QAAQ;QACpB,GAAG,CAAC,CAAC,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACjD,GAAG,CAAC,CAAC,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACtE,GAAG,CAAC,CAAC,CAAC,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,CAAC,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC5E,GAAG,CAAC,CAAC,CAAC,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,CAAC,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC7E,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,CAAa;IAClD,OAAO;QACL,GAAG,mBAAmB,CAAC,CAAC,CAAC;QACzB,YAAY,EAAE,CAAC,CAAC,oBAAoB,CAAC,qBAAqB,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC;QAC3E,YAAY,EAAE,qBAAqB,CAAC,CAAC,CAAC,YAAY,CAAC;QACnD,mBAAmB,EAAE,CAAC,CAAC,mBAAmB,IAAI,KAAK;QACnD,iBAAiB,EAAE,CAAC,CAAC,iBAAiB,IAAI,EAAE;QAC5C,eAAe,EAAE,CAAC,CAAC,eAAe,IAAI,EAAE;QACxC,UAAU,EAAE,kBAAkB,CAAC,CAAC,CAAC,UAAU,CAAC;QAC5C,OAAO,EAAE,CAAC,YAAY,cAAc;KACrC,CAAC;AACJ,CAAC"}
@@ -1,7 +1,7 @@
1
1
  import type { z } from 'zod';
2
2
  import { BaseTrigger } from './base-trigger.js';
3
3
  import type { TriggerExecutionContext } from './base-trigger.js';
4
- import type { InboundHttpRequest, RawInboundRequest, Translation } from '../ingest/types.js';
4
+ import type { InboundHttpRequest, InboundReply, RawInboundRequest, Translation } from '../ingest/types.js';
5
5
  /**
6
6
  * Webhook trigger — fires when an external service POSTs to
7
7
  * `<baseUrl>/webhooks/<workflowId>`.
@@ -12,8 +12,9 @@ import type { InboundHttpRequest, RawInboundRequest, Translation } from '../inge
12
12
  * 1. finds the workflow and checks it is active,
13
13
  * 2. resolves the trigger's credentials, rejecting the request if one is
14
14
  * missing, revoked, or of a type the trigger does not accept,
15
- * 3. calls {@link verify} with the exact bytes and those credentials,
16
- * 4. parses the body,
15
+ * 3. calls {@link handshake}, and sends its reply if it returns one,
16
+ * 4. calls {@link verify} with the exact bytes and those credentials,
17
+ * 5. parses the body,
17
18
  *
18
19
  * and only then calls {@link handleRequest}. Each event it returns must pass
19
20
  * the workflow's trigger filter to become a run.
@@ -24,7 +25,25 @@ import type { InboundHttpRequest, RawInboundRequest, Translation } from '../inge
24
25
  * an implementation that accepts everything leaves the workflow open to anyone
25
26
  * who learns its id.
26
27
  */
27
- export declare abstract class WebhookTrigger<TConfig extends z.ZodTypeAny = z.ZodTypeAny> extends BaseTrigger<TConfig> {
28
+ export declare abstract class WebhookTrigger<TConfig extends z.ZodTypeAny = z.ZodTypeAny, TOutput extends z.ZodTypeAny = z.ZodTypeAny, TRaw extends Record<string, unknown> = Record<string, unknown>> extends BaseTrigger<TConfig, TOutput, TRaw> {
29
+ /**
30
+ * Answer a provider's URL handshake: the request some providers send when the
31
+ * URL is registered, before any real delivery, expecting a reply in their own
32
+ * format. Return that reply, or `undefined` for every other request.
33
+ *
34
+ * Runs before {@link verify}, so the request is unauthenticated: some handshakes
35
+ * are unsigned (Microsoft Graph's `validationToken`), and some arrive as GET
36
+ * (Meta's `hub.challenge`). That is why a handshake can only reply, never start
37
+ * a run. Match the provider's handshake exactly, echo only what it expects echoed,
38
+ * and check a token it sends against the credentials where it sends one.
39
+ *
40
+ * A GET reaches no other method: when this returns `undefined` for one, the
41
+ * sender gets 404. A signed handshake, such as Slack's `url_verification`, is
42
+ * better answered from {@link handleRequest}, after verification.
43
+ *
44
+ * A thrown error is logged and the request carries on to {@link verify}.
45
+ */
46
+ handshake(_request: InboundHttpRequest, _config: z.infer<TConfig>, _ctx: TriggerExecutionContext): Promise<InboundReply | undefined>;
28
47
  /**
29
48
  * Is this request really from the provider? Return false, or throw, to reject
30
49
  * it with 401. Runs before the body is parsed.
@@ -36,8 +55,8 @@ export declare abstract class WebhookTrigger<TConfig extends z.ZodTypeAny = z.Zo
36
55
  * Turn a verified request into events, and say what to reply.
37
56
  *
38
57
  * Should be pure: no network calls. Enrichment that needs the provider's API
39
- * belongs in `hydratePayload`, which runs inside the execution.
58
+ * belongs in `hydrate`, which runs before the run starts.
40
59
  */
41
- abstract handleRequest(request: RawInboundRequest, config: z.infer<TConfig>, ctx: TriggerExecutionContext): Promise<Translation>;
60
+ abstract handleRequest(request: RawInboundRequest, config: z.infer<TConfig>, ctx: TriggerExecutionContext): Promise<Translation<TRaw>>;
42
61
  }
43
62
  //# sourceMappingURL=webhook-trigger.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"webhook-trigger.d.ts","sourceRoot":"","sources":["../../src/triggers/webhook-trigger.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAC7B,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,mBAAmB,CAAC;AACjE,OAAO,KAAK,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAE7F;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,8BAAsB,cAAc,CAClC,OAAO,SAAS,CAAC,CAAC,UAAU,GAAG,CAAC,CAAC,UAAU,CAC3C,SAAQ,WAAW,CAAC,OAAO,CAAC;IAC5B;;;;;OAKG;IACH,QAAQ,CAAC,MAAM,CACb,OAAO,EAAE,kBAAkB,EAC3B,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,EACxB,GAAG,EAAE,uBAAuB,GAC3B,OAAO,CAAC,OAAO,CAAC;IAEnB;;;;;OAKG;IACH,QAAQ,CAAC,aAAa,CACpB,OAAO,EAAE,iBAAiB,EAC1B,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,EACxB,GAAG,EAAE,uBAAuB,GAC3B,OAAO,CAAC,WAAW,CAAC;CACxB"}
1
+ {"version":3,"file":"webhook-trigger.d.ts","sourceRoot":"","sources":["../../src/triggers/webhook-trigger.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAC7B,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,mBAAmB,CAAC;AACjE,OAAO,KAAK,EAAE,kBAAkB,EAAE,YAAY,EAAE,iBAAiB,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAE3G;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,8BAAsB,cAAc,CAClC,OAAO,SAAS,CAAC,CAAC,UAAU,GAAG,CAAC,CAAC,UAAU,EAC3C,OAAO,SAAS,CAAC,CAAC,UAAU,GAAG,CAAC,CAAC,UAAU,EAC3C,IAAI,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAC9D,SAAQ,WAAW,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC;IAC3C;;;;;;;;;;;;;;;;OAgBG;IACH,SAAS,CACP,QAAQ,EAAE,kBAAkB,EAC5B,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,EACzB,IAAI,EAAE,uBAAuB,GAC5B,OAAO,CAAC,YAAY,GAAG,SAAS,CAAC;IAIpC;;;;;OAKG;IACH,QAAQ,CAAC,MAAM,CACb,OAAO,EAAE,kBAAkB,EAC3B,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,EACxB,GAAG,EAAE,uBAAuB,GAC3B,OAAO,CAAC,OAAO,CAAC;IAEnB;;;;;OAKG;IACH,QAAQ,CAAC,aAAa,CACpB,OAAO,EAAE,iBAAiB,EAC1B,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,EACxB,GAAG,EAAE,uBAAuB,GAC3B,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;CAC9B"}
@@ -9,8 +9,9 @@ import { BaseTrigger } from './base-trigger.js';
9
9
  * 1. finds the workflow and checks it is active,
10
10
  * 2. resolves the trigger's credentials, rejecting the request if one is
11
11
  * missing, revoked, or of a type the trigger does not accept,
12
- * 3. calls {@link verify} with the exact bytes and those credentials,
13
- * 4. parses the body,
12
+ * 3. calls {@link handshake}, and sends its reply if it returns one,
13
+ * 4. calls {@link verify} with the exact bytes and those credentials,
14
+ * 5. parses the body,
14
15
  *
15
16
  * and only then calls {@link handleRequest}. Each event it returns must pass
16
17
  * the workflow's trigger filter to become a run.
@@ -22,5 +23,25 @@ import { BaseTrigger } from './base-trigger.js';
22
23
  * who learns its id.
23
24
  */
24
25
  export class WebhookTrigger extends BaseTrigger {
26
+ /**
27
+ * Answer a provider's URL handshake: the request some providers send when the
28
+ * URL is registered, before any real delivery, expecting a reply in their own
29
+ * format. Return that reply, or `undefined` for every other request.
30
+ *
31
+ * Runs before {@link verify}, so the request is unauthenticated: some handshakes
32
+ * are unsigned (Microsoft Graph's `validationToken`), and some arrive as GET
33
+ * (Meta's `hub.challenge`). That is why a handshake can only reply, never start
34
+ * a run. Match the provider's handshake exactly, echo only what it expects echoed,
35
+ * and check a token it sends against the credentials where it sends one.
36
+ *
37
+ * A GET reaches no other method: when this returns `undefined` for one, the
38
+ * sender gets 404. A signed handshake, such as Slack's `url_verification`, is
39
+ * better answered from {@link handleRequest}, after verification.
40
+ *
41
+ * A thrown error is logged and the request carries on to {@link verify}.
42
+ */
43
+ handshake(_request, _config, _ctx) {
44
+ return Promise.resolve(undefined);
45
+ }
25
46
  }
26
47
  //# sourceMappingURL=webhook-trigger.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"webhook-trigger.js","sourceRoot":"","sources":["../../src/triggers/webhook-trigger.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAIhD;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,OAAgB,cAEpB,SAAQ,WAAoB;CAwB7B"}
1
+ {"version":3,"file":"webhook-trigger.js","sourceRoot":"","sources":["../../src/triggers/webhook-trigger.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAIhD;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,MAAM,OAAgB,cAIpB,SAAQ,WAAmC;IAC3C;;;;;;;;;;;;;;;;OAgBG;IACH,SAAS,CACP,QAA4B,EAC5B,OAAyB,EACzB,IAA6B;QAE7B,OAAO,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IACpC,CAAC;CAyBF"}
@@ -0,0 +1,24 @@
1
+ /**
2
+ * Dotted paths into a config object, as a type.
3
+ *
4
+ * Used to declare which of a component's fields offer choices. A name is how the
5
+ * editor finds the field and how `getOptions` tells them apart, so a typo means a
6
+ * picker that never appears and nothing that says why — the one failure this
7
+ * declaration exists to prevent. Typing the paths turns it into a build error.
8
+ *
9
+ * ConfigPath<{ repo: string; owner: { login: string } }>
10
+ * → 'repo' | 'owner' | 'owner.login'
11
+ *
12
+ * Depth is capped at three levels: config shapes that nest deeper are a sign the
13
+ * form itself needs rethinking, and an uncapped recursive type is a tax on every
14
+ * compile. An array's own name is a valid path (that field will take a multi
15
+ * picker); paths *into* an array are not, until the editor can render one.
16
+ */
17
+ type Primitive = string | number | boolean | bigint | symbol | null | undefined;
18
+ type Depth = 0 | 1 | 2 | 3;
19
+ type Decrement = [never, 0, 1, 2];
20
+ export type ConfigPath<T, D extends Depth = 3> = [D] extends [never] ? never : T extends Primitive ? never : T extends readonly unknown[] ? never : {
21
+ [K in Extract<keyof T, string>]: NonNullable<T[K]> extends Primitive ? K : NonNullable<T[K]> extends readonly unknown[] ? K : K | `${K}.${ConfigPath<NonNullable<T[K]>, Decrement[D]>}`;
22
+ }[Extract<keyof T, string>];
23
+ export {};
24
+ //# sourceMappingURL=config-path.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config-path.d.ts","sourceRoot":"","sources":["../../src/types/config-path.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,KAAK,SAAS,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;AAEhF,KAAK,KAAK,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AAC3B,KAAK,SAAS,GAAG,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;AAElC,MAAM,MAAM,UAAU,CAAC,CAAC,EAAE,CAAC,SAAS,KAAK,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,GAChE,KAAK,GACL,CAAC,SAAS,SAAS,GACjB,KAAK,GACL,CAAC,SAAS,SAAS,OAAO,EAAE,GAC1B,KAAK,GACL;KACG,CAAC,IAAI,OAAO,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,SAAS,GAChE,CAAC,GACD,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,SAAS,OAAO,EAAE,GAC1C,CAAC,GACD,CAAC,GAAG,GAAG,CAAC,IAAI,UAAU,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE;CAChE,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC"}
@@ -0,0 +1,18 @@
1
+ /**
2
+ * Dotted paths into a config object, as a type.
3
+ *
4
+ * Used to declare which of a component's fields offer choices. A name is how the
5
+ * editor finds the field and how `getOptions` tells them apart, so a typo means a
6
+ * picker that never appears and nothing that says why — the one failure this
7
+ * declaration exists to prevent. Typing the paths turns it into a build error.
8
+ *
9
+ * ConfigPath<{ repo: string; owner: { login: string } }>
10
+ * → 'repo' | 'owner' | 'owner.login'
11
+ *
12
+ * Depth is capped at three levels: config shapes that nest deeper are a sign the
13
+ * form itself needs rethinking, and an uncapped recursive type is a tax on every
14
+ * compile. An array's own name is a valid path (that field will take a multi
15
+ * picker); paths *into* an array are not, until the editor can render one.
16
+ */
17
+ export {};
18
+ //# sourceMappingURL=config-path.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config-path.js","sourceRoot":"","sources":["../../src/types/config-path.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG"}
@@ -1 +1 @@
1
- {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../src/types/context.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AACjE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAE5D;;;GAGG;AACH,MAAM,MAAM,cAAc,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC;AAExE,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,QAAQ,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;;;;;;;GASG;AACH,MAAM,WAAW,eAAe;IAC9B,QAAQ,EAAE;QACR,EAAE,EAAE,MAAM,CAAC;QACX;;;;;;;;;;;;;WAaG;QACH,UAAU,EAAE,kBAAkB,CAAC,UAAU,CAAC,CAAC;QAC3C;;;;WAIG;QACH,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KACnC,CAAC;IACF,OAAO,EAAE,cAAc,CAAC;IACxB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;IACxC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;IACpC,MAAM,CAAC,EAAE;QACP,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QACtB,KAAK,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;QAC1B;;;WAGG;QACH,WAAW,CAAC,EAAE;YACZ,WAAW,EAAE,MAAM,CAAC;YACpB,aAAa,EAAE,MAAM,CAAC;YACtB,UAAU,EAAE,MAAM,CAAC;SACpB,CAAC;QACF;;;;;WAKG;QACH,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAC3C;;;;WAIG;QACH,iBAAiB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KAC7C,CAAC;CACH"}
1
+ {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../src/types/context.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AACjE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAE5D;;;GAGG;AACH,MAAM,MAAM,cAAc,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC;AAExE,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,QAAQ,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;;;;;;;GASG;AACH,MAAM,WAAW,eAAe;IAC9B,QAAQ,EAAE;QACR,EAAE,EAAE,MAAM,CAAC;QACX;;;;;;;;;;;;;WAaG;QACH,UAAU,EAAE,kBAAkB,CAAC,UAAU,CAAC,CAAC;QAC3C;;;;WAIG;QACH,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KACnC,CAAC;IACF,OAAO,EAAE,cAAc,CAAC;IACxB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;IACxC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;IACpC,MAAM,CAAC,EAAE;QACP,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QACtB,KAAK,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;QAE1B;;;WAGG;QACH,WAAW,CAAC,EAAE;YACZ,WAAW,EAAE,MAAM,CAAC;YACpB,aAAa,EAAE,MAAM,CAAC;YACtB,UAAU,EAAE,MAAM,CAAC;SACpB,CAAC;QACF;;;;;WAKG;QACH,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAC3C;;;;WAIG;QACH,iBAAiB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KAC7C,CAAC;CACH"}
@@ -1,13 +1,27 @@
1
1
  import { z } from 'zod';
2
+ /**
3
+ * What a condition can ask of a value.
4
+ *
5
+ * Deliberately small: anything the tree can already say another way is left out.
6
+ * `in` is an `any` group of `eq`s, `not in` is an `all` group of `neq`s — adding
7
+ * operators for those would give authors two ways to write one rule. What IS here
8
+ * is what the tree cannot express at all: negation of a substring test, the two
9
+ * ends of a string, and the difference between absent and empty.
10
+ */
2
11
  export declare enum ConditionOperator {
3
12
  EQ = "eq",
4
13
  NEQ = "neq",
5
14
  CONTAINS = "contains",
15
+ NOT_CONTAINS = "not_contains",
16
+ STARTS_WITH = "starts_with",
17
+ ENDS_WITH = "ends_with",
6
18
  GT = "gt",
7
19
  GTE = "gte",
8
20
  LT = "lt",
9
21
  LTE = "lte",
10
- EXISTS = "exists"
22
+ EXISTS = "exists",
23
+ NOT_EXISTS = "not_exists",
24
+ IS_EMPTY = "is_empty"
11
25
  }
12
26
  export declare const ConditionOperatorSchema: z.ZodNativeEnum<typeof ConditionOperator>;
13
27
  export declare const VALUE_LESS_OPERATORS: ReadonlySet<ConditionOperator>;
@@ -1 +1 @@
1
- {"version":3,"file":"operators.d.ts","sourceRoot":"","sources":["../../src/types/operators.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,oBAAY,iBAAiB;IAC3B,EAAE,OAAO;IACT,GAAG,QAAQ;IACX,QAAQ,aAAa;IACrB,EAAE,OAAO;IACT,GAAG,QAAQ;IACX,EAAE,OAAO;IACT,GAAG,QAAQ;IACX,MAAM,WAAW;CAClB;AAED,eAAO,MAAM,uBAAuB,2CAAkC,CAAC;AAEvE,eAAO,MAAM,oBAAoB,EAAE,WAAW,CAAC,iBAAiB,CAE9D,CAAC;AAIH,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,KAAK,EAAE,iBAAiB,CAAC;IAClC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,SAAS,EAAE,QAAQ,GAAG,QAAQ,GAAG,SAAS,GAAG,MAAM,CAAC;CAC9D;AAED,eAAO,MAAM,oBAAoB,EAAE,SAAS,kBAAkB,EAS7D,CAAC"}
1
+ {"version":3,"file":"operators.d.ts","sourceRoot":"","sources":["../../src/types/operators.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;;;;;;;GAQG;AACH,oBAAY,iBAAiB;IAC3B,EAAE,OAAO;IACT,GAAG,QAAQ;IACX,QAAQ,aAAa;IACrB,YAAY,iBAAiB;IAC7B,WAAW,gBAAgB;IAC3B,SAAS,cAAc;IACvB,EAAE,OAAO;IACT,GAAG,QAAQ;IACX,EAAE,OAAO;IACT,GAAG,QAAQ;IACX,MAAM,WAAW;IACjB,UAAU,eAAe;IACzB,QAAQ,aAAa;CACtB;AAED,eAAO,MAAM,uBAAuB,2CAAkC,CAAC;AAEvE,eAAO,MAAM,oBAAoB,EAAE,WAAW,CAAC,iBAAiB,CAI9D,CAAC;AAIH,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,KAAK,EAAE,iBAAiB,CAAC;IAClC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,SAAS,EAAE,QAAQ,GAAG,QAAQ,GAAG,SAAS,GAAG,MAAM,CAAC;CAC9D;AAED,eAAO,MAAM,oBAAoB,EAAE,SAAS,kBAAkB,EAc7D,CAAC"}
@@ -1,27 +1,48 @@
1
1
  import { z } from 'zod';
2
+ /**
3
+ * What a condition can ask of a value.
4
+ *
5
+ * Deliberately small: anything the tree can already say another way is left out.
6
+ * `in` is an `any` group of `eq`s, `not in` is an `all` group of `neq`s — adding
7
+ * operators for those would give authors two ways to write one rule. What IS here
8
+ * is what the tree cannot express at all: negation of a substring test, the two
9
+ * ends of a string, and the difference between absent and empty.
10
+ */
2
11
  export var ConditionOperator;
3
12
  (function (ConditionOperator) {
4
13
  ConditionOperator["EQ"] = "eq";
5
14
  ConditionOperator["NEQ"] = "neq";
6
15
  ConditionOperator["CONTAINS"] = "contains";
16
+ ConditionOperator["NOT_CONTAINS"] = "not_contains";
17
+ ConditionOperator["STARTS_WITH"] = "starts_with";
18
+ ConditionOperator["ENDS_WITH"] = "ends_with";
7
19
  ConditionOperator["GT"] = "gt";
8
20
  ConditionOperator["GTE"] = "gte";
9
21
  ConditionOperator["LT"] = "lt";
10
22
  ConditionOperator["LTE"] = "lte";
11
23
  ConditionOperator["EXISTS"] = "exists";
24
+ ConditionOperator["NOT_EXISTS"] = "not_exists";
25
+ ConditionOperator["IS_EMPTY"] = "is_empty";
12
26
  })(ConditionOperator || (ConditionOperator = {}));
13
27
  export const ConditionOperatorSchema = z.nativeEnum(ConditionOperator);
14
28
  export const VALUE_LESS_OPERATORS = new Set([
15
29
  ConditionOperator.EXISTS,
30
+ ConditionOperator.NOT_EXISTS,
31
+ ConditionOperator.IS_EMPTY,
16
32
  ]);
17
33
  export const OPERATOR_DESCRIPTORS = [
18
34
  { value: ConditionOperator.EQ, label: 'equals', valueType: 'string' },
19
35
  { value: ConditionOperator.NEQ, label: 'does not equal', valueType: 'string' },
20
36
  { value: ConditionOperator.CONTAINS, label: 'contains', valueType: 'string' },
37
+ { value: ConditionOperator.NOT_CONTAINS, label: 'does not contain', valueType: 'string' },
38
+ { value: ConditionOperator.STARTS_WITH, label: 'starts with', valueType: 'string' },
39
+ { value: ConditionOperator.ENDS_WITH, label: 'ends with', valueType: 'string' },
21
40
  { value: ConditionOperator.GT, label: 'is greater than', valueType: 'number' },
22
41
  { value: ConditionOperator.GTE, label: 'is greater than or equal to', valueType: 'number' },
23
42
  { value: ConditionOperator.LT, label: 'is less than', valueType: 'number' },
24
43
  { value: ConditionOperator.LTE, label: 'is less than or equal to', valueType: 'number' },
25
44
  { value: ConditionOperator.EXISTS, label: 'exists', valueType: 'none' },
45
+ { value: ConditionOperator.NOT_EXISTS, label: 'does not exist', valueType: 'none' },
46
+ { value: ConditionOperator.IS_EMPTY, label: 'is empty', valueType: 'none' },
26
47
  ];
27
48
  //# sourceMappingURL=operators.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"operators.js","sourceRoot":"","sources":["../../src/types/operators.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,MAAM,CAAN,IAAY,iBASX;AATD,WAAY,iBAAiB;IAC3B,8BAAS,CAAA;IACT,gCAAW,CAAA;IACX,0CAAqB,CAAA;IACrB,8BAAS,CAAA;IACT,gCAAW,CAAA;IACX,8BAAS,CAAA;IACT,gCAAW,CAAA;IACX,sCAAiB,CAAA;AACnB,CAAC,EATW,iBAAiB,KAAjB,iBAAiB,QAS5B;AAED,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAC;AAEvE,MAAM,CAAC,MAAM,oBAAoB,GAAmC,IAAI,GAAG,CAAC;IAC1E,iBAAiB,CAAC,MAAM;CACzB,CAAC,CAAC;AAUH,MAAM,CAAC,MAAM,oBAAoB,GAAkC;IACjE,EAAE,KAAK,EAAE,iBAAiB,CAAC,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE;IACrE,EAAE,KAAK,EAAE,iBAAiB,CAAC,GAAG,EAAE,KAAK,EAAE,gBAAgB,EAAE,SAAS,EAAE,QAAQ,EAAE;IAC9E,EAAE,KAAK,EAAE,iBAAiB,CAAC,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,QAAQ,EAAE;IAC7E,EAAE,KAAK,EAAE,iBAAiB,CAAC,EAAE,EAAE,KAAK,EAAE,iBAAiB,EAAE,SAAS,EAAE,QAAQ,EAAE;IAC9E,EAAE,KAAK,EAAE,iBAAiB,CAAC,GAAG,EAAE,KAAK,EAAE,6BAA6B,EAAE,SAAS,EAAE,QAAQ,EAAE;IAC3F,EAAE,KAAK,EAAE,iBAAiB,CAAC,EAAE,EAAE,KAAK,EAAE,cAAc,EAAE,SAAS,EAAE,QAAQ,EAAE;IAC3E,EAAE,KAAK,EAAE,iBAAiB,CAAC,GAAG,EAAE,KAAK,EAAE,0BAA0B,EAAE,SAAS,EAAE,QAAQ,EAAE;IACxF,EAAE,KAAK,EAAE,iBAAiB,CAAC,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE;CACxE,CAAC"}
1
+ {"version":3,"file":"operators.js","sourceRoot":"","sources":["../../src/types/operators.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;;;;;;;GAQG;AACH,MAAM,CAAN,IAAY,iBAcX;AAdD,WAAY,iBAAiB;IAC3B,8BAAS,CAAA;IACT,gCAAW,CAAA;IACX,0CAAqB,CAAA;IACrB,kDAA6B,CAAA;IAC7B,gDAA2B,CAAA;IAC3B,4CAAuB,CAAA;IACvB,8BAAS,CAAA;IACT,gCAAW,CAAA;IACX,8BAAS,CAAA;IACT,gCAAW,CAAA;IACX,sCAAiB,CAAA;IACjB,8CAAyB,CAAA;IACzB,0CAAqB,CAAA;AACvB,CAAC,EAdW,iBAAiB,KAAjB,iBAAiB,QAc5B;AAED,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAC;AAEvE,MAAM,CAAC,MAAM,oBAAoB,GAAmC,IAAI,GAAG,CAAC;IAC1E,iBAAiB,CAAC,MAAM;IACxB,iBAAiB,CAAC,UAAU;IAC5B,iBAAiB,CAAC,QAAQ;CAC3B,CAAC,CAAC;AAUH,MAAM,CAAC,MAAM,oBAAoB,GAAkC;IACjE,EAAE,KAAK,EAAE,iBAAiB,CAAC,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE;IACrE,EAAE,KAAK,EAAE,iBAAiB,CAAC,GAAG,EAAE,KAAK,EAAE,gBAAgB,EAAE,SAAS,EAAE,QAAQ,EAAE;IAC9E,EAAE,KAAK,EAAE,iBAAiB,CAAC,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,QAAQ,EAAE;IAC7E,EAAE,KAAK,EAAE,iBAAiB,CAAC,YAAY,EAAE,KAAK,EAAE,kBAAkB,EAAE,SAAS,EAAE,QAAQ,EAAE;IACzF,EAAE,KAAK,EAAE,iBAAiB,CAAC,WAAW,EAAE,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,QAAQ,EAAE;IACnF,EAAE,KAAK,EAAE,iBAAiB,CAAC,SAAS,EAAE,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,QAAQ,EAAE;IAC/E,EAAE,KAAK,EAAE,iBAAiB,CAAC,EAAE,EAAE,KAAK,EAAE,iBAAiB,EAAE,SAAS,EAAE,QAAQ,EAAE;IAC9E,EAAE,KAAK,EAAE,iBAAiB,CAAC,GAAG,EAAE,KAAK,EAAE,6BAA6B,EAAE,SAAS,EAAE,QAAQ,EAAE;IAC3F,EAAE,KAAK,EAAE,iBAAiB,CAAC,EAAE,EAAE,KAAK,EAAE,cAAc,EAAE,SAAS,EAAE,QAAQ,EAAE;IAC3E,EAAE,KAAK,EAAE,iBAAiB,CAAC,GAAG,EAAE,KAAK,EAAE,0BAA0B,EAAE,SAAS,EAAE,QAAQ,EAAE;IACxF,EAAE,KAAK,EAAE,iBAAiB,CAAC,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE;IACvE,EAAE,KAAK,EAAE,iBAAiB,CAAC,UAAU,EAAE,KAAK,EAAE,gBAAgB,EAAE,SAAS,EAAE,MAAM,EAAE;IACnF,EAAE,KAAK,EAAE,iBAAiB,CAAC,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,EAAE;CAC5E,CAAC"}
@@ -1,4 +1,5 @@
1
1
  import { z } from 'zod';
2
+ import type { TriggerStart } from '../ingest/start-policy.js';
2
3
  import type { TriggerType } from './trigger-types.js';
3
4
  import type { StepType } from './step-types.js';
4
5
  import { BuiltinStepType } from './known-types.js';
@@ -9,6 +10,11 @@ import type { WorkflowVariable } from './workflow-variable.js';
9
10
  * Wraps a Zod schema to also accept a `{{...}}` variable reference string.
10
11
  * Used in step config schemas — e.g. `variableRef(z.string())` accepts
11
12
  * either a literal string or a `{{trigger.someField}}` reference.
13
+ *
14
+ * The union is marked rather than described: a reference being legal is a fact
15
+ * about the field, not a sentence about it, and `description` belongs to the
16
+ * author. The inner schema keeps its own description, which is where the editor
17
+ * reads it from.
12
18
  */
13
19
  export declare function variableRef<T extends z.ZodTypeAny>(inner: T): z.ZodUnion<[T, z.ZodString]>;
14
20
  /**
@@ -184,6 +190,13 @@ export interface WorkflowConfig {
184
190
  * is which of its events the workflow wants. See {@link TriggerFilter}.
185
191
  */
186
192
  filter?: TriggerFilter;
193
+ /**
194
+ * When a matching event becomes a run — immediately, or later. A delayed
195
+ * binding is armed on arrival and admitted when it fires, so {@link filter}
196
+ * and the trigger's own filter judge the world as it is then, not as it was.
197
+ * See {@link TriggerStart}.
198
+ */
199
+ start?: TriggerStart;
187
200
  };
188
201
  steps: WorkflowStepConfig[];
189
202
  settings?: WorkflowSettings;
@@ -1 +1 @@
1
- {"version":3,"file":"workflow-config.d.ts","sourceRoot":"","sources":["../../src/types/workflow-config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"workflow-config.d.ts","sourceRoot":"","sources":["../../src/types/workflow-config.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,8 @@
1
1
  import { z } from 'zod';
2
2
  import { BuiltinStepType } from './known-types.js';
3
3
  import { ConditionOperatorSchema } from './operators.js';
4
- import { VARIABLE_REF_REGEX, VARIABLE_REF_DESCRIPTION_PREFIX, } from '../util/variable-ref.js';
4
+ import { VARIABLE_REF_REGEX } from '../util/variable-ref.js';
5
+ import { isMarked, markSchema } from '../util/schema-marks.js';
5
6
  // ─── Variable Reference Helpers ───
6
7
  const variableRefStringSchema = z
7
8
  .string()
@@ -10,20 +11,21 @@ const variableRefStringSchema = z
10
11
  * Wraps a Zod schema to also accept a `{{...}}` variable reference string.
11
12
  * Used in step config schemas — e.g. `variableRef(z.string())` accepts
12
13
  * either a literal string or a `{{trigger.someField}}` reference.
14
+ *
15
+ * The union is marked rather than described: a reference being legal is a fact
16
+ * about the field, not a sentence about it, and `description` belongs to the
17
+ * author. The inner schema keeps its own description, which is where the editor
18
+ * reads it from.
13
19
  */
14
20
  export function variableRef(inner) {
15
- return z
16
- .union([inner, variableRefStringSchema])
17
- .describe(`${VARIABLE_REF_DESCRIPTION_PREFIX}${inner.description ?? inner._def.typeName}`);
21
+ return markSchema(z.union([inner, variableRefStringSchema]), 'isVariableRef');
18
22
  }
19
23
  /**
20
24
  * Given a schema that may be a variableRef union, extract the inner (non-ref) schema.
21
25
  * Returns null if the schema is not a variableRef union.
22
26
  */
23
27
  export function getVariableRefInnerSchema(schema) {
24
- if (schema instanceof z.ZodUnion &&
25
- typeof schema.description === 'string' &&
26
- schema.description.startsWith(VARIABLE_REF_DESCRIPTION_PREFIX)) {
28
+ if (schema instanceof z.ZodUnion && isMarked(schema._def, 'isVariableRef')) {
27
29
  const options = schema._def
28
30
  .options;
29
31
  return options[0] ?? null;
@@ -1 +1 @@
1
- {"version":3,"file":"workflow-config.js","sourceRoot":"","sources":["../../src/types/workflow-config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"workflow-config.js","sourceRoot":"","sources":["../../src/types/workflow-config.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,44 @@
1
+ /**
2
+ * Marking a config field as one whose values the owning component can list.
3
+ *
4
+ * The mark rides on the Zod schema and is projected into the generated JSON
5
+ * Schema by `zod-to-json-schema`'s `postProcess` hook, which fires once per
6
+ * converted node. That is the entire mechanism. Because the converter already
7
+ * recurses, nesting, arrays, arrays-of-objects and union variants need no code
8
+ * here — and because nothing is addressed by name, there is no path to typo and
9
+ * no second traversal that could disagree with the first.
10
+ */
11
+ import type { z } from 'zod';
12
+ import type { PostProcessCallback } from 'zod-to-json-schema';
13
+ /**
14
+ * Declare that this field's values are drawn from a set the component can
15
+ * enumerate — the difference between pasting a repository id and picking one.
16
+ *
17
+ * Wrap the innermost schema: `withOptions(z.string()).optional()`, not
18
+ * `withOptions(z.string().optional())`, so the mark lands on the node the
19
+ * converter actually emits for the field.
20
+ *
21
+ * A suggestion, not a constraint. Free text and `{{trigger.x}}` references stay
22
+ * legal, which is why this is not `z.enum` — it says where good values come
23
+ * from, not which values are allowed. The component answers with `getOptions`,
24
+ * and `ctx.field` tells it which field is asking.
25
+ */
26
+ export declare function withOptions<T extends z.ZodTypeAny>(inner: T): T;
27
+ /** Whether {@link withOptions} marked the schema this def belongs to. */
28
+ export declare function isOptionMarked(def: object): boolean;
29
+ /**
30
+ * Projects the mark onto the generated JSON Schema as `hasOptions: true`.
31
+ *
32
+ * Passed to every conversion in `zodToJsonSchemaRecord`, so a component never
33
+ * has to know the editor's vocabulary, and `decorateConfigSchema` is left alone.
34
+ */
35
+ export declare const markOptions: PostProcessCallback;
36
+ /**
37
+ * Whether any field in a converted schema offers choices.
38
+ *
39
+ * Asks the generated JSON Schema rather than the Zod tree, because that is what
40
+ * the editor reads: a mark that failed to survive conversion is not a picker,
41
+ * whatever the declaration said.
42
+ */
43
+ export declare function schemaOffersOptions(node: unknown): boolean;
44
+ //# sourceMappingURL=option-mark.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"option-mark.d.ts","sourceRoot":"","sources":["../../src/util/option-mark.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAC7B,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAqB9D;;;;;;;;;;;;GAYG;AACH,wBAAgB,WAAW,CAAC,CAAC,SAAS,CAAC,CAAC,UAAU,EAAE,KAAK,EAAE,CAAC,GAAG,CAAC,CAQ/D;AAED,yEAAyE;AACzE,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAEnD;AAED;;;;;GAKG;AACH,eAAO,MAAM,WAAW,EAAE,mBAKzB,CAAC;AAiDF;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO,CAM1D"}