@decaf-ts/integrations 0.10.5 → 0.10.8

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 (294) hide show
  1. package/dist/integrations.cjs +1 -1
  2. package/lib/cjs/graph/engine/catalog/GraphBuiltInRegistrations.cjs +12 -73
  3. package/lib/cjs/graph/engine/catalog/GraphBuiltInRegistrations.cjs.map +1 -1
  4. package/lib/cjs/graph/engine/execution/GraphExecutionContext.cjs +5 -1
  5. package/lib/cjs/graph/engine/execution/GraphExecutionContext.cjs.map +1 -1
  6. package/lib/cjs/graph/engine/execution/GraphExecutionEngine.cjs +66 -1
  7. package/lib/cjs/graph/engine/execution/GraphExecutionEngine.cjs.map +1 -1
  8. package/lib/cjs/graph/engine/execution/GraphExecutionFrame.cjs +16 -0
  9. package/lib/cjs/graph/engine/execution/GraphExecutionFrame.cjs.map +1 -1
  10. package/lib/cjs/graph/engine/execution/index.cjs +0 -4
  11. package/lib/cjs/graph/engine/execution/index.cjs.map +1 -1
  12. package/lib/cjs/graph/engine/index.cjs +0 -7
  13. package/lib/cjs/graph/engine/index.cjs.map +1 -1
  14. package/lib/cjs/graph/engine/loops/index.cjs +0 -3
  15. package/lib/cjs/graph/engine/loops/index.cjs.map +1 -1
  16. package/lib/cjs/graph/engine/validation/GraphLooseNodeValidation.cjs +36 -0
  17. package/lib/cjs/graph/engine/validation/GraphLooseNodeValidation.cjs.map +1 -0
  18. package/lib/cjs/graph/engine/validation/GraphParameterValidator.cjs +36 -3
  19. package/lib/cjs/graph/engine/validation/GraphParameterValidator.cjs.map +1 -1
  20. package/lib/cjs/graph/engine/validation/GraphWorkflowDocumentValidator.cjs +32 -1
  21. package/lib/cjs/graph/engine/validation/GraphWorkflowDocumentValidator.cjs.map +1 -1
  22. package/lib/cjs/graph/engine/validation/index.cjs +1 -0
  23. package/lib/cjs/graph/engine/validation/index.cjs.map +1 -1
  24. package/lib/cjs/graph/nodes/agents/agent.cjs +118 -0
  25. package/lib/cjs/graph/nodes/agents/agent.cjs.map +1 -0
  26. package/lib/cjs/graph/nodes/base.cjs +61 -0
  27. package/lib/cjs/graph/nodes/base.cjs.map +1 -0
  28. package/lib/cjs/graph/nodes/boundary/input-value.cjs +59 -0
  29. package/lib/cjs/graph/nodes/boundary/input-value.cjs.map +1 -0
  30. package/lib/cjs/graph/nodes/flow-control/break.cjs +71 -0
  31. package/lib/cjs/graph/nodes/flow-control/break.cjs.map +1 -0
  32. package/lib/cjs/graph/nodes/flow-control/error-boundary.cjs +72 -0
  33. package/lib/cjs/graph/nodes/flow-control/error-boundary.cjs.map +1 -0
  34. package/lib/cjs/graph/nodes/flow-control/human-approval.cjs +80 -0
  35. package/lib/cjs/graph/nodes/flow-control/human-approval.cjs.map +1 -0
  36. package/lib/cjs/graph/nodes/flow-control/if.cjs +82 -0
  37. package/lib/cjs/graph/nodes/flow-control/if.cjs.map +1 -0
  38. package/lib/cjs/graph/nodes/flow-control/parallel.cjs +69 -0
  39. package/lib/cjs/graph/nodes/flow-control/parallel.cjs.map +1 -0
  40. package/lib/cjs/graph/nodes/flow-control/switch.cjs +190 -0
  41. package/lib/cjs/graph/nodes/flow-control/switch.cjs.map +1 -0
  42. package/lib/cjs/graph/nodes/index.cjs +162 -0
  43. package/lib/cjs/graph/nodes/index.cjs.map +1 -0
  44. package/lib/cjs/graph/nodes/loops/foreach.cjs +189 -0
  45. package/lib/cjs/graph/nodes/loops/foreach.cjs.map +1 -0
  46. package/lib/cjs/graph/nodes/loops/loop-metadata.cjs +48 -0
  47. package/lib/cjs/graph/nodes/loops/loop-metadata.cjs.map +1 -0
  48. package/lib/cjs/graph/nodes/loops/until.cjs +136 -0
  49. package/lib/cjs/graph/nodes/loops/until.cjs.map +1 -0
  50. package/lib/cjs/graph/nodes/loops/while.cjs +133 -0
  51. package/lib/cjs/graph/nodes/loops/while.cjs.map +1 -0
  52. package/lib/cjs/graph/nodes/manifests.cjs +342 -0
  53. package/lib/cjs/graph/nodes/manifests.cjs.map +1 -0
  54. package/lib/cjs/graph/nodes/triggers/chat.cjs +82 -0
  55. package/lib/cjs/graph/nodes/triggers/chat.cjs.map +1 -0
  56. package/lib/cjs/graph/nodes/triggers/event.cjs +63 -0
  57. package/lib/cjs/graph/nodes/triggers/event.cjs.map +1 -0
  58. package/lib/cjs/graph/nodes/triggers/form.cjs +64 -0
  59. package/lib/cjs/graph/nodes/triggers/form.cjs.map +1 -0
  60. package/lib/cjs/graph/nodes/triggers/manual.cjs +65 -0
  61. package/lib/cjs/graph/nodes/triggers/manual.cjs.map +1 -0
  62. package/lib/cjs/graph/nodes/triggers/schedule.cjs +65 -0
  63. package/lib/cjs/graph/nodes/triggers/schedule.cjs.map +1 -0
  64. package/lib/cjs/graph/nodes/triggers/webhook.cjs +67 -0
  65. package/lib/cjs/graph/nodes/triggers/webhook.cjs.map +1 -0
  66. package/lib/cjs/graph/nodes/utility/code.cjs +139 -0
  67. package/lib/cjs/graph/nodes/utility/code.cjs.map +1 -0
  68. package/lib/cjs/graph/nodes/utility/delay.cjs +66 -0
  69. package/lib/cjs/graph/nodes/utility/delay.cjs.map +1 -0
  70. package/lib/cjs/graph/nodes/utility/log.cjs +70 -0
  71. package/lib/cjs/graph/nodes/utility/log.cjs.map +1 -0
  72. package/lib/cjs/graph/nodes/utility/map.cjs +69 -0
  73. package/lib/cjs/graph/nodes/utility/map.cjs.map +1 -0
  74. package/lib/cjs/graph/nodes/utility/merge.cjs +67 -0
  75. package/lib/cjs/graph/nodes/utility/merge.cjs.map +1 -0
  76. package/lib/cjs/graph/nodes/utility/return.cjs +69 -0
  77. package/lib/cjs/graph/nodes/utility/return.cjs.map +1 -0
  78. package/lib/cjs/graph/nodes/utility/utility-log.cjs +77 -0
  79. package/lib/cjs/graph/nodes/utility/utility-log.cjs.map +1 -0
  80. package/lib/cjs/index.cjs +3 -3
  81. package/lib/cjs/nest/graph/GraphExecutorRegistryFactory.cjs +8 -4
  82. package/lib/cjs/nest/graph/GraphExecutorRegistryFactory.cjs.map +1 -1
  83. package/lib/cjs/nest/graph/GraphWorkflowBoundaryValidation.cjs +2 -0
  84. package/lib/cjs/nest/graph/GraphWorkflowBoundaryValidation.cjs.map +1 -1
  85. package/lib/cjs/nest/graph/GraphWorkflowService.cjs +1 -13
  86. package/lib/cjs/nest/graph/GraphWorkflowService.cjs.map +1 -1
  87. package/lib/esm/graph/engine/catalog/GraphBuiltInRegistrations.js +11 -72
  88. package/lib/esm/graph/engine/catalog/GraphBuiltInRegistrations.js.map +1 -1
  89. package/lib/esm/graph/engine/execution/GraphExecutionContext.js +5 -1
  90. package/lib/esm/graph/engine/execution/GraphExecutionContext.js.map +1 -1
  91. package/lib/esm/graph/engine/execution/GraphExecutionEngine.js +66 -1
  92. package/lib/esm/graph/engine/execution/GraphExecutionEngine.js.map +1 -1
  93. package/lib/esm/graph/engine/execution/GraphExecutionFrame.js +16 -0
  94. package/lib/esm/graph/engine/execution/GraphExecutionFrame.js.map +1 -1
  95. package/lib/esm/graph/engine/execution/index.js +0 -4
  96. package/lib/esm/graph/engine/execution/index.js.map +1 -1
  97. package/lib/esm/graph/engine/index.js +0 -7
  98. package/lib/esm/graph/engine/index.js.map +1 -1
  99. package/lib/esm/graph/engine/loops/index.js +0 -3
  100. package/lib/esm/graph/engine/loops/index.js.map +1 -1
  101. package/lib/esm/graph/engine/validation/GraphLooseNodeValidation.js +32 -0
  102. package/lib/esm/graph/engine/validation/GraphLooseNodeValidation.js.map +1 -0
  103. package/lib/esm/graph/engine/validation/GraphParameterValidator.js +36 -3
  104. package/lib/esm/graph/engine/validation/GraphParameterValidator.js.map +1 -1
  105. package/lib/esm/graph/engine/validation/GraphWorkflowDocumentValidator.js +32 -1
  106. package/lib/esm/graph/engine/validation/GraphWorkflowDocumentValidator.js.map +1 -1
  107. package/lib/esm/graph/engine/validation/index.js +1 -0
  108. package/lib/esm/graph/engine/validation/index.js.map +1 -1
  109. package/lib/esm/graph/nodes/agents/agent.js +109 -0
  110. package/lib/esm/graph/nodes/agents/agent.js.map +1 -0
  111. package/lib/esm/graph/nodes/base.js +56 -0
  112. package/lib/esm/graph/nodes/base.js.map +1 -0
  113. package/lib/esm/graph/nodes/boundary/input-value.js +50 -0
  114. package/lib/esm/graph/nodes/boundary/input-value.js.map +1 -0
  115. package/lib/esm/graph/nodes/flow-control/break.js +62 -0
  116. package/lib/esm/graph/nodes/flow-control/break.js.map +1 -0
  117. package/lib/esm/graph/nodes/flow-control/error-boundary.js +63 -0
  118. package/lib/esm/graph/nodes/flow-control/error-boundary.js.map +1 -0
  119. package/lib/esm/graph/nodes/flow-control/human-approval.js +71 -0
  120. package/lib/esm/graph/nodes/flow-control/human-approval.js.map +1 -0
  121. package/lib/esm/graph/nodes/flow-control/if.js +73 -0
  122. package/lib/esm/graph/nodes/flow-control/if.js.map +1 -0
  123. package/lib/esm/graph/nodes/flow-control/parallel.js +60 -0
  124. package/lib/esm/graph/nodes/flow-control/parallel.js.map +1 -0
  125. package/lib/esm/graph/nodes/flow-control/switch.js +181 -0
  126. package/lib/esm/graph/nodes/flow-control/switch.js.map +1 -0
  127. package/lib/esm/graph/nodes/index.js +144 -0
  128. package/lib/esm/graph/nodes/index.js.map +1 -0
  129. package/lib/esm/graph/nodes/loops/foreach.js +180 -0
  130. package/lib/esm/graph/nodes/loops/foreach.js.map +1 -0
  131. package/lib/esm/graph/nodes/loops/loop-metadata.js +44 -0
  132. package/lib/esm/graph/nodes/loops/loop-metadata.js.map +1 -0
  133. package/lib/esm/graph/nodes/loops/until.js +127 -0
  134. package/lib/esm/graph/nodes/loops/until.js.map +1 -0
  135. package/lib/esm/graph/nodes/loops/while.js +124 -0
  136. package/lib/esm/graph/nodes/loops/while.js.map +1 -0
  137. package/lib/esm/graph/nodes/manifests.js +338 -0
  138. package/lib/esm/graph/nodes/manifests.js.map +1 -0
  139. package/lib/esm/graph/nodes/triggers/chat.js +73 -0
  140. package/lib/esm/graph/nodes/triggers/chat.js.map +1 -0
  141. package/lib/esm/graph/nodes/triggers/event.js +54 -0
  142. package/lib/esm/graph/nodes/triggers/event.js.map +1 -0
  143. package/lib/esm/graph/nodes/triggers/form.js +55 -0
  144. package/lib/esm/graph/nodes/triggers/form.js.map +1 -0
  145. package/lib/esm/graph/nodes/triggers/manual.js +56 -0
  146. package/lib/esm/graph/nodes/triggers/manual.js.map +1 -0
  147. package/lib/esm/graph/nodes/triggers/schedule.js +56 -0
  148. package/lib/esm/graph/nodes/triggers/schedule.js.map +1 -0
  149. package/lib/esm/graph/nodes/triggers/webhook.js +58 -0
  150. package/lib/esm/graph/nodes/triggers/webhook.js.map +1 -0
  151. package/lib/esm/graph/nodes/utility/code.js +130 -0
  152. package/lib/esm/graph/nodes/utility/code.js.map +1 -0
  153. package/lib/esm/graph/nodes/utility/delay.js +57 -0
  154. package/lib/esm/graph/nodes/utility/delay.js.map +1 -0
  155. package/lib/esm/graph/nodes/utility/log.js +61 -0
  156. package/lib/esm/graph/nodes/utility/log.js.map +1 -0
  157. package/lib/esm/graph/nodes/utility/map.js +60 -0
  158. package/lib/esm/graph/nodes/utility/map.js.map +1 -0
  159. package/lib/esm/graph/nodes/utility/merge.js +58 -0
  160. package/lib/esm/graph/nodes/utility/merge.js.map +1 -0
  161. package/lib/esm/graph/nodes/utility/return.js +60 -0
  162. package/lib/esm/graph/nodes/utility/return.js.map +1 -0
  163. package/lib/esm/graph/nodes/utility/utility-log.js +68 -0
  164. package/lib/esm/graph/nodes/utility/utility-log.js.map +1 -0
  165. package/lib/esm/index.js +3 -3
  166. package/lib/esm/nest/graph/GraphExecutorRegistryFactory.js +8 -4
  167. package/lib/esm/nest/graph/GraphExecutorRegistryFactory.js.map +1 -1
  168. package/lib/esm/nest/graph/GraphWorkflowBoundaryValidation.js +2 -0
  169. package/lib/esm/nest/graph/GraphWorkflowBoundaryValidation.js.map +1 -1
  170. package/lib/esm/nest/graph/GraphWorkflowService.js +2 -14
  171. package/lib/esm/nest/graph/GraphWorkflowService.js.map +1 -1
  172. package/lib/types/graph/engine/catalog/GraphBuiltInRegistrations.d.cts +4 -7
  173. package/lib/types/graph/engine/catalog/GraphBuiltInRegistrations.d.mts +4 -7
  174. package/lib/types/graph/engine/execution/GraphExecutionContext.d.cts +6 -1
  175. package/lib/types/graph/engine/execution/GraphExecutionContext.d.mts +6 -1
  176. package/lib/types/graph/engine/execution/GraphExecutionEngine.d.cts +27 -0
  177. package/lib/types/graph/engine/execution/GraphExecutionEngine.d.mts +27 -0
  178. package/lib/types/graph/engine/execution/GraphExecutionFrame.d.cts +12 -0
  179. package/lib/types/graph/engine/execution/GraphExecutionFrame.d.mts +12 -0
  180. package/lib/types/graph/engine/execution/index.d.cts +0 -4
  181. package/lib/types/graph/engine/execution/index.d.mts +0 -4
  182. package/lib/types/graph/engine/index.d.cts +0 -7
  183. package/lib/types/graph/engine/index.d.mts +0 -7
  184. package/lib/types/graph/engine/loops/index.d.cts +0 -3
  185. package/lib/types/graph/engine/loops/index.d.mts +0 -3
  186. package/lib/types/graph/engine/validation/GraphLooseNodeValidation.d.cts +21 -0
  187. package/lib/types/graph/engine/validation/GraphLooseNodeValidation.d.mts +21 -0
  188. package/lib/types/graph/engine/validation/GraphParameterValidator.d.cts +25 -1
  189. package/lib/types/graph/engine/validation/GraphParameterValidator.d.mts +25 -1
  190. package/lib/types/graph/engine/validation/index.d.cts +1 -0
  191. package/lib/types/graph/engine/validation/index.d.mts +1 -0
  192. package/lib/types/graph/nodes/agents/agent.d.cts +31 -0
  193. package/lib/types/graph/nodes/agents/agent.d.mts +31 -0
  194. package/lib/types/graph/nodes/base.d.cts +58 -0
  195. package/lib/types/graph/nodes/base.d.mts +58 -0
  196. package/lib/types/graph/nodes/boundary/input-value.d.cts +6 -0
  197. package/lib/types/graph/nodes/boundary/input-value.d.mts +6 -0
  198. package/lib/types/graph/nodes/flow-control/break.d.cts +8 -0
  199. package/lib/types/graph/nodes/flow-control/break.d.mts +8 -0
  200. package/lib/types/graph/nodes/flow-control/error-boundary.d.cts +8 -0
  201. package/lib/types/graph/nodes/flow-control/error-boundary.d.mts +8 -0
  202. package/lib/types/graph/nodes/flow-control/human-approval.d.cts +8 -0
  203. package/lib/types/graph/nodes/flow-control/human-approval.d.mts +8 -0
  204. package/lib/types/graph/nodes/flow-control/if.d.cts +8 -0
  205. package/lib/types/graph/nodes/flow-control/if.d.mts +8 -0
  206. package/lib/types/graph/nodes/flow-control/parallel.d.cts +7 -0
  207. package/lib/types/graph/nodes/flow-control/parallel.d.mts +7 -0
  208. package/lib/types/graph/nodes/flow-control/switch.d.cts +23 -0
  209. package/lib/types/graph/nodes/flow-control/switch.d.mts +23 -0
  210. package/lib/types/graph/nodes/index.d.cts +93 -0
  211. package/lib/types/graph/nodes/index.d.mts +93 -0
  212. package/lib/types/graph/nodes/loops/foreach.d.cts +11 -0
  213. package/lib/types/graph/nodes/loops/foreach.d.mts +11 -0
  214. package/lib/types/graph/nodes/loops/loop-metadata.d.cts +20 -0
  215. package/lib/types/graph/nodes/loops/loop-metadata.d.mts +20 -0
  216. package/lib/types/graph/nodes/loops/until.d.cts +8 -0
  217. package/lib/types/graph/nodes/loops/until.d.mts +8 -0
  218. package/lib/types/graph/nodes/loops/while.d.cts +8 -0
  219. package/lib/types/graph/nodes/loops/while.d.mts +8 -0
  220. package/lib/types/graph/nodes/manifests.d.cts +62 -0
  221. package/lib/types/graph/nodes/manifests.d.mts +62 -0
  222. package/lib/types/graph/nodes/triggers/chat.d.cts +8 -0
  223. package/lib/types/graph/nodes/triggers/chat.d.mts +8 -0
  224. package/lib/types/graph/nodes/triggers/event.d.cts +6 -0
  225. package/lib/types/graph/nodes/triggers/event.d.mts +6 -0
  226. package/lib/types/graph/nodes/triggers/form.d.cts +6 -0
  227. package/lib/types/graph/nodes/triggers/form.d.mts +6 -0
  228. package/lib/types/graph/nodes/triggers/manual.d.cts +6 -0
  229. package/lib/types/graph/nodes/triggers/manual.d.mts +6 -0
  230. package/lib/types/graph/nodes/triggers/schedule.d.cts +6 -0
  231. package/lib/types/graph/nodes/triggers/schedule.d.mts +6 -0
  232. package/lib/types/graph/nodes/triggers/webhook.d.cts +6 -0
  233. package/lib/types/graph/nodes/triggers/webhook.d.mts +6 -0
  234. package/lib/types/graph/nodes/utility/code.d.cts +36 -0
  235. package/lib/types/graph/nodes/utility/code.d.mts +36 -0
  236. package/lib/types/graph/nodes/utility/delay.d.cts +7 -0
  237. package/lib/types/graph/nodes/utility/delay.d.mts +7 -0
  238. package/lib/types/graph/nodes/utility/log.d.cts +8 -0
  239. package/lib/types/graph/nodes/utility/log.d.mts +8 -0
  240. package/lib/types/graph/nodes/utility/map.d.cts +7 -0
  241. package/lib/types/graph/nodes/utility/map.d.mts +7 -0
  242. package/lib/types/graph/nodes/utility/merge.d.cts +7 -0
  243. package/lib/types/graph/nodes/utility/merge.d.mts +7 -0
  244. package/lib/types/graph/nodes/utility/return.d.cts +7 -0
  245. package/lib/types/graph/nodes/utility/return.d.mts +7 -0
  246. package/lib/types/graph/nodes/utility/utility-log.d.cts +10 -0
  247. package/lib/types/graph/nodes/utility/utility-log.d.mts +10 -0
  248. package/lib/types/index.d.cts +2 -2
  249. package/lib/types/index.d.mts +2 -2
  250. package/lib/types/nest/graph/GraphExecutorRegistryFactory.d.cts +5 -3
  251. package/lib/types/nest/graph/GraphExecutorRegistryFactory.d.mts +5 -3
  252. package/package.json +1 -1
  253. package/lib/cjs/graph/engine/execution/BreakGraphNodeExecutor.cjs +0 -24
  254. package/lib/cjs/graph/engine/execution/BreakGraphNodeExecutor.cjs.map +0 -1
  255. package/lib/cjs/graph/engine/execution/CodeGraphNodeExecutor.cjs +0 -103
  256. package/lib/cjs/graph/engine/execution/CodeGraphNodeExecutor.cjs.map +0 -1
  257. package/lib/cjs/graph/engine/execution/LogGraphNodeExecutor.cjs +0 -47
  258. package/lib/cjs/graph/engine/execution/LogGraphNodeExecutor.cjs.map +0 -1
  259. package/lib/cjs/graph/engine/execution/SwitchGraphNodeExecutor.cjs +0 -121
  260. package/lib/cjs/graph/engine/execution/SwitchGraphNodeExecutor.cjs.map +0 -1
  261. package/lib/cjs/graph/engine/loops/ForeachGraphNodeExecutor.cjs +0 -146
  262. package/lib/cjs/graph/engine/loops/ForeachGraphNodeExecutor.cjs.map +0 -1
  263. package/lib/cjs/graph/engine/loops/UntilGraphNodeExecutor.cjs +0 -102
  264. package/lib/cjs/graph/engine/loops/UntilGraphNodeExecutor.cjs.map +0 -1
  265. package/lib/cjs/graph/engine/loops/WhileGraphNodeExecutor.cjs +0 -103
  266. package/lib/cjs/graph/engine/loops/WhileGraphNodeExecutor.cjs.map +0 -1
  267. package/lib/esm/graph/engine/execution/BreakGraphNodeExecutor.js +0 -19
  268. package/lib/esm/graph/engine/execution/BreakGraphNodeExecutor.js.map +0 -1
  269. package/lib/esm/graph/engine/execution/CodeGraphNodeExecutor.js +0 -98
  270. package/lib/esm/graph/engine/execution/CodeGraphNodeExecutor.js.map +0 -1
  271. package/lib/esm/graph/engine/execution/LogGraphNodeExecutor.js +0 -42
  272. package/lib/esm/graph/engine/execution/LogGraphNodeExecutor.js.map +0 -1
  273. package/lib/esm/graph/engine/execution/SwitchGraphNodeExecutor.js +0 -116
  274. package/lib/esm/graph/engine/execution/SwitchGraphNodeExecutor.js.map +0 -1
  275. package/lib/esm/graph/engine/loops/ForeachGraphNodeExecutor.js +0 -141
  276. package/lib/esm/graph/engine/loops/ForeachGraphNodeExecutor.js.map +0 -1
  277. package/lib/esm/graph/engine/loops/UntilGraphNodeExecutor.js +0 -97
  278. package/lib/esm/graph/engine/loops/UntilGraphNodeExecutor.js.map +0 -1
  279. package/lib/esm/graph/engine/loops/WhileGraphNodeExecutor.js +0 -98
  280. package/lib/esm/graph/engine/loops/WhileGraphNodeExecutor.js.map +0 -1
  281. package/lib/types/graph/engine/execution/BreakGraphNodeExecutor.d.cts +0 -22
  282. package/lib/types/graph/engine/execution/BreakGraphNodeExecutor.d.mts +0 -22
  283. package/lib/types/graph/engine/execution/CodeGraphNodeExecutor.d.cts +0 -65
  284. package/lib/types/graph/engine/execution/CodeGraphNodeExecutor.d.mts +0 -65
  285. package/lib/types/graph/engine/execution/LogGraphNodeExecutor.d.cts +0 -25
  286. package/lib/types/graph/engine/execution/LogGraphNodeExecutor.d.mts +0 -25
  287. package/lib/types/graph/engine/execution/SwitchGraphNodeExecutor.d.cts +0 -43
  288. package/lib/types/graph/engine/execution/SwitchGraphNodeExecutor.d.mts +0 -43
  289. package/lib/types/graph/engine/loops/ForeachGraphNodeExecutor.d.cts +0 -35
  290. package/lib/types/graph/engine/loops/ForeachGraphNodeExecutor.d.mts +0 -35
  291. package/lib/types/graph/engine/loops/UntilGraphNodeExecutor.d.cts +0 -22
  292. package/lib/types/graph/engine/loops/UntilGraphNodeExecutor.d.mts +0 -22
  293. package/lib/types/graph/engine/loops/WhileGraphNodeExecutor.d.cts +0 -26
  294. package/lib/types/graph/engine/loops/WhileGraphNodeExecutor.d.mts +0 -26
@@ -0,0 +1,127 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ var __metadata = (this && this.__metadata) || function (k, v) {
8
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
9
+ };
10
+ /**
11
+ * @module integrations/graph/nodes/loops/until
12
+ * @summary Until loop node declaration.
13
+ * @description Shared declaration for the `core.loop.until` system node kind
14
+ * (decorator id `graph-until-loop-node`), ported from the for-angular demo
15
+ * app so the loop kinds become shared canvas nodes. The class's own
16
+ * `static execute` is the only implementation of the kind, derived by
17
+ * `GraphBuiltInRegistrations`, and reaches engine services through
18
+ * `GraphExecutionContext.engine`. The loop-body workflow is demo/app-side
19
+ * content and is not part of the shared declaration — the shared class
20
+ * carries the port/metadata shape only.
21
+ */
22
+ import { model, required } from "@decaf-ts/decorator-validation";
23
+ import { uielement } from "@decaf-ts/ui-decorators";
24
+ import { input, node, output } from "@decaf-ts/ui-decorators/graph";
25
+ import { GraphNode } from "./../base.js";
26
+ import { GraphExecutionEventType } from "@decaf-ts/ui-decorators/graph";
27
+ import { GraphExecutionError } from "./../../engine/errors/GraphExecutionError.js";
28
+ import { GraphInputError } from "./../../engine/errors/GraphInputError.js";
29
+ import { GraphLoopLimitError } from "./../../engine/errors/GraphLoopLimitError.js";
30
+ import { extractLoopMetadata } from "./loop-metadata.js";
31
+ import { GRAPH_DEFAULT_MAX_LOOP_ITERATIONS } from "./../../engine/constants.js";
32
+ import { GraphConditionEvaluator } from "./../../engine/loops/GraphConditionEvaluator.js";
33
+ let GraphUntilLoopNode = class GraphUntilLoopNode extends GraphNode {
34
+ static async execute(request, context) {
35
+ const metadata = extractLoopMetadata(context, "until");
36
+ const input = request.inputs;
37
+ const maxIterations = metadata.maxIterations ?? GRAPH_DEFAULT_MAX_LOOP_ITERATIONS;
38
+ const condition = metadata.condition;
39
+ if (!condition) {
40
+ throw new GraphInputError("until node is missing a condition");
41
+ }
42
+ const statePort = metadata.statePort ?? "state";
43
+ const bodyWorkflow = metadata.body;
44
+ const engine = context.engine;
45
+ if (!engine) {
46
+ throw new GraphExecutionError("until node requires engine access", "GRAPH_ENGINE_NOT_AVAILABLE");
47
+ }
48
+ let state = input.state;
49
+ let iteration = 0;
50
+ await context.emit({ type: GraphExecutionEventType.LOOP_STARTED });
51
+ let shouldStop = false;
52
+ do {
53
+ if (iteration >= maxIterations) {
54
+ await context.emit({
55
+ type: GraphExecutionEventType.LOOP_LIMIT_REACHED,
56
+ iteration,
57
+ });
58
+ throw new GraphLoopLimitError(`until loop exceeded max iterations (${maxIterations})`);
59
+ }
60
+ await context.emit({
61
+ type: GraphExecutionEventType.LOOP_ITERATION_STARTED,
62
+ iteration,
63
+ });
64
+ const childResult = await engine.execute(bodyWorkflow, { [statePort]: state, iteration }, {
65
+ parentRunId: context.runId,
66
+ path: [...context.path, `iteration:${iteration}`],
67
+ });
68
+ state = childResult.outputs[statePort];
69
+ await context.emit({
70
+ type: GraphExecutionEventType.LOOP_ITERATION_COMPLETED,
71
+ iteration,
72
+ });
73
+ const conditionResult = new GraphConditionEvaluator().evaluate(condition, state);
74
+ await context.emit({
75
+ type: GraphExecutionEventType.LOOP_CONDITION_EVALUATED,
76
+ iteration,
77
+ payload: { result: conditionResult },
78
+ });
79
+ iteration++;
80
+ shouldStop = conditionResult;
81
+ } while (!shouldStop);
82
+ await context.emit({ type: GraphExecutionEventType.LOOP_COMPLETED });
83
+ return { [statePort]: state, iterations: iteration };
84
+ }
85
+ };
86
+ __decorate([
87
+ required(),
88
+ uielement("input", { label: "State", placeholder: "Initial state" }),
89
+ input({ handle: "state" }),
90
+ __metadata("design:type", Object)
91
+ ], GraphUntilLoopNode.prototype, "state", void 0);
92
+ __decorate([
93
+ required(),
94
+ uielement("input", {
95
+ label: "Final state",
96
+ placeholder: "Final state after loop",
97
+ }),
98
+ output({ handle: "state" }),
99
+ __metadata("design:type", Object)
100
+ ], GraphUntilLoopNode.prototype, "stateOut", void 0);
101
+ GraphUntilLoopNode = __decorate([
102
+ node("graph-until-loop-node", {
103
+ kind: "core.loop.until",
104
+ category: "Loop",
105
+ color: "#eab308",
106
+ icon: "ti-player-stop",
107
+ width: 96,
108
+ height: 96,
109
+ labels: ["loop", "conditional", "until"],
110
+ metadata: {
111
+ title: "Until loop",
112
+ description: "Repeats the body until the condition is true (post-condition, runs at least once).",
113
+ loop: {
114
+ maxIterations: 50,
115
+ statePort: "state",
116
+ condition: {
117
+ type: "greaterThanOrEqual",
118
+ left: "iteration",
119
+ right: 2,
120
+ },
121
+ },
122
+ },
123
+ }),
124
+ model()
125
+ ], GraphUntilLoopNode);
126
+ export { GraphUntilLoopNode };
127
+ //# sourceMappingURL=until.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"until.js","sourceRoot":"","sources":["../../../../../src/graph/nodes/loops/until.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,124 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ var __metadata = (this && this.__metadata) || function (k, v) {
8
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
9
+ };
10
+ /**
11
+ * @module integrations/graph/nodes/loops/while
12
+ * @summary While loop node declaration.
13
+ * @description Shared declaration for the `core.loop.while` system node kind
14
+ * (decorator id `graph-while-loop-node`), ported from the for-angular demo
15
+ * app so the loop kinds become shared canvas nodes. The class's own
16
+ * `static execute` is the only implementation of the kind, derived by
17
+ * `GraphBuiltInRegistrations`, and reaches engine services through
18
+ * `GraphExecutionContext.engine`. The loop-body workflow is demo/app-side
19
+ * content and is not part of the shared declaration — the shared class
20
+ * carries the port/metadata shape only.
21
+ */
22
+ import { model, required } from "@decaf-ts/decorator-validation";
23
+ import { uielement } from "@decaf-ts/ui-decorators";
24
+ import { input, node, output } from "@decaf-ts/ui-decorators/graph";
25
+ import { GraphNode } from "./../base.js";
26
+ import { GraphExecutionEventType } from "@decaf-ts/ui-decorators/graph";
27
+ import { GraphExecutionError } from "./../../engine/errors/GraphExecutionError.js";
28
+ import { GraphInputError } from "./../../engine/errors/GraphInputError.js";
29
+ import { GraphLoopLimitError } from "./../../engine/errors/GraphLoopLimitError.js";
30
+ import { extractLoopMetadata } from "./loop-metadata.js";
31
+ import { GRAPH_DEFAULT_MAX_LOOP_ITERATIONS } from "./../../engine/constants.js";
32
+ import { GraphConditionEvaluator } from "./../../engine/loops/GraphConditionEvaluator.js";
33
+ let GraphWhileLoopNode = class GraphWhileLoopNode extends GraphNode {
34
+ static async execute(request, context) {
35
+ const metadata = extractLoopMetadata(context, "while");
36
+ const input = request.inputs;
37
+ const maxIterations = metadata.maxIterations ?? GRAPH_DEFAULT_MAX_LOOP_ITERATIONS;
38
+ const condition = metadata.condition;
39
+ if (!condition) {
40
+ throw new GraphInputError("while node is missing a condition");
41
+ }
42
+ const statePort = metadata.statePort ?? "state";
43
+ const bodyWorkflow = metadata.body;
44
+ const engine = context.engine;
45
+ if (!engine) {
46
+ throw new GraphExecutionError("while node requires engine access", "GRAPH_ENGINE_NOT_AVAILABLE");
47
+ }
48
+ let state = input.state;
49
+ let iteration = 0;
50
+ await context.emit({ type: GraphExecutionEventType.LOOP_STARTED });
51
+ while (new GraphConditionEvaluator().evaluate(condition, state)) {
52
+ if (iteration >= maxIterations) {
53
+ await context.emit({
54
+ type: GraphExecutionEventType.LOOP_LIMIT_REACHED,
55
+ iteration,
56
+ });
57
+ throw new GraphLoopLimitError(`while loop exceeded max iterations (${maxIterations})`);
58
+ }
59
+ await context.emit({
60
+ type: GraphExecutionEventType.LOOP_CONDITION_EVALUATED,
61
+ iteration,
62
+ payload: { result: true },
63
+ });
64
+ await context.emit({
65
+ type: GraphExecutionEventType.LOOP_ITERATION_STARTED,
66
+ iteration,
67
+ });
68
+ const childResult = await engine.execute(bodyWorkflow, { [statePort]: state, iteration }, {
69
+ parentRunId: context.runId,
70
+ path: [...context.path, `iteration:${iteration}`],
71
+ });
72
+ state = childResult.outputs[statePort];
73
+ await context.emit({
74
+ type: GraphExecutionEventType.LOOP_ITERATION_COMPLETED,
75
+ iteration,
76
+ });
77
+ iteration++;
78
+ }
79
+ await context.emit({ type: GraphExecutionEventType.LOOP_COMPLETED });
80
+ return { [statePort]: state, iterations: iteration };
81
+ }
82
+ };
83
+ __decorate([
84
+ required(),
85
+ uielement("input", { label: "State", placeholder: "Initial state" }),
86
+ input({ handle: "state" }),
87
+ __metadata("design:type", Object)
88
+ ], GraphWhileLoopNode.prototype, "state", void 0);
89
+ __decorate([
90
+ required(),
91
+ uielement("input", {
92
+ label: "Final state",
93
+ placeholder: "Final state after loop",
94
+ }),
95
+ output({ handle: "state" }),
96
+ __metadata("design:type", Object)
97
+ ], GraphWhileLoopNode.prototype, "stateOut", void 0);
98
+ GraphWhileLoopNode = __decorate([
99
+ node("graph-while-loop-node", {
100
+ kind: "core.loop.while",
101
+ category: "Loop",
102
+ color: "#eab308",
103
+ icon: "ti-arrows-loop",
104
+ width: 96,
105
+ height: 96,
106
+ labels: ["loop", "conditional", "while"],
107
+ metadata: {
108
+ title: "While loop",
109
+ description: "Repeats the body while the condition is true (pre-condition).",
110
+ loop: {
111
+ maxIterations: 50,
112
+ statePort: "state",
113
+ condition: {
114
+ type: "lessThan",
115
+ left: "iteration",
116
+ right: 3,
117
+ },
118
+ },
119
+ },
120
+ }),
121
+ model()
122
+ ], GraphWhileLoopNode);
123
+ export { GraphWhileLoopNode };
124
+ //# sourceMappingURL=while.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"while.js","sourceRoot":"","sources":["../../../../../src/graph/nodes/loops/while.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,338 @@
1
+ import { graphNodeManifest } from "@decaf-ts/ui-decorators/graph";
2
+ import { AgentNode } from "./agents/agent.js";
3
+ import { BreakFlowNode } from "./flow-control/break.js";
4
+ import { ErrorBoundaryFlowNode } from "./flow-control/error-boundary.js";
5
+ import { HumanApprovalFlowNode } from "./flow-control/human-approval.js";
6
+ import { IfFlowNode } from "./flow-control/if.js";
7
+ import { ParallelFlowNode } from "./flow-control/parallel.js";
8
+ import { SwitchFlowNode } from "./flow-control/switch.js";
9
+ import { CodeNode } from "./utility/code.js";
10
+ import { DelayFlowNode } from "./utility/delay.js";
11
+ import { LogFlowNode } from "./utility/log.js";
12
+ import { MapNode } from "./utility/map.js";
13
+ import { MergeFlowNode } from "./utility/merge.js";
14
+ import { ReturnFlowNode } from "./utility/return.js";
15
+ import { UtilityLogNode } from "./utility/utility-log.js";
16
+ import { ChatTriggerNode } from "./triggers/chat.js";
17
+ import { EventTriggerNode } from "./triggers/event.js";
18
+ import { FormTriggerNode } from "./triggers/form.js";
19
+ import { ManualTriggerNode } from "./triggers/manual.js";
20
+ import { ScheduleTriggerNode } from "./triggers/schedule.js";
21
+ import { WebhookTriggerNode } from "./triggers/webhook.js";
22
+ /**
23
+ * Builds a single {@link GraphPortManifest} from its id, label, direction,
24
+ * and optional extra fields — the terse constructor used by the hand-authored
25
+ * loop manifests below.
26
+ *
27
+ * @param id - Port identifier (matches the decorated property handle).
28
+ * @param label - Human-readable port label.
29
+ * @param direction - Port direction (`input` or `output`).
30
+ * @param extra - Optional manifest fields merged over the defaults.
31
+ * @returns The assembled port manifest.
32
+ */
33
+ function port(id, label, direction, extra = {}) {
34
+ return { id, label, direction, ...extra };
35
+ }
36
+ /**
37
+ * Compiles a `@node`-decorated class into its published
38
+ * {@link GraphNodeManifest}, so the served shape matches what the Angular
39
+ * palette consumes.
40
+ *
41
+ * @param node - The decorated node class constructor.
42
+ * @param name - Display name override for the compiled manifest.
43
+ * @returns The compiled node manifest.
44
+ */
45
+ function compile(node, name) {
46
+ return graphNodeManifest(node, { name });
47
+ }
48
+ /** Manifest for the `core.loop.foreach` node: runs the loop body once per item (or slice) of the input array. */
49
+ export const FOREACH_GRAPH_NODE_MANIFEST = {
50
+ kind: "core.loop.foreach",
51
+ capabilities: ["loop"],
52
+ display: {
53
+ name: "Foreach",
54
+ description: "Runs the loop body once per item (or per slice of items) of the input array, collecting the results in order.",
55
+ // Single manifest display source per kind (G3-23): the hand-authored
56
+ // manifest remains the backend executor-port authority, but its display is
57
+ // mirrored from the decorated `GraphForeachLoopNode` class so the two
58
+ // authorities never diverge on category/colour/icon/labels.
59
+ category: "Loop",
60
+ color: "#eab308",
61
+ icon: { type: "catalogue", name: "ti-repeat" },
62
+ width: 120,
63
+ height: 140,
64
+ labels: ["loop", "iteration", "foreach"],
65
+ },
66
+ inputs: [
67
+ port("items", "Items", "input", {
68
+ required: true,
69
+ schema: { type: "array", items: { type: "any" } },
70
+ }),
71
+ port("slice", "Slice size", "input", { schema: { type: "number", integer: true, min: 1 } }),
72
+ port("state", "Initial state", "input", { schema: { type: "any" } }),
73
+ ],
74
+ outputs: [
75
+ port("results", "Results", "output", {
76
+ schema: { type: "array", items: { type: "any" } },
77
+ }),
78
+ port("completed", "Completed", "output", {
79
+ schema: { type: "array", items: { type: "any" } },
80
+ }),
81
+ port("iterations", "Iterations", "output", { schema: { type: "number", integer: true, min: 0 } }),
82
+ port("broken", "Broken", "output", { schema: { type: "boolean" } }),
83
+ port("state", "Final state", "output", { schema: { type: "any" } }),
84
+ ],
85
+ parameters: [
86
+ {
87
+ type: "number",
88
+ id: "maxIterations",
89
+ label: "Max iterations",
90
+ integer: true,
91
+ min: 1,
92
+ },
93
+ {
94
+ type: "object",
95
+ id: "condition",
96
+ label: "Condition",
97
+ },
98
+ {
99
+ type: "string",
100
+ id: "itemPort",
101
+ label: "Item port",
102
+ },
103
+ {
104
+ type: "string",
105
+ id: "resultPort",
106
+ label: "Result port",
107
+ },
108
+ {
109
+ type: "string",
110
+ id: "statePort",
111
+ label: "State port",
112
+ },
113
+ {
114
+ type: "number",
115
+ id: "slice",
116
+ label: "Slice size",
117
+ integer: true,
118
+ min: 1,
119
+ },
120
+ ],
121
+ };
122
+ /** Manifest for the `core.loop.while` node: repeats the loop body while the condition holds. */
123
+ export const WHILE_GRAPH_NODE_MANIFEST = {
124
+ kind: "core.loop.while",
125
+ capabilities: ["loop"],
126
+ display: {
127
+ name: "While",
128
+ description: "Runs the loop body while the configured condition evaluates to true, threading the state between iterations.",
129
+ category: "Loop",
130
+ color: "#eab308",
131
+ icon: { type: "catalogue", name: "ti-arrows-loop" },
132
+ width: 120,
133
+ height: 140,
134
+ labels: ["loop", "conditional", "while"],
135
+ },
136
+ inputs: [port("state", "Initial state", "input", { schema: { type: "any" } })],
137
+ outputs: [
138
+ port("state", "Final state", "output", { schema: { type: "any" } }),
139
+ port("iterations", "Iterations", "output", { schema: { type: "number", integer: true, min: 0 } }),
140
+ ],
141
+ parameters: [
142
+ {
143
+ type: "number",
144
+ id: "maxIterations",
145
+ label: "Max iterations",
146
+ integer: true,
147
+ min: 1,
148
+ },
149
+ {
150
+ type: "object",
151
+ id: "condition",
152
+ label: "Condition",
153
+ required: true,
154
+ },
155
+ {
156
+ type: "string",
157
+ id: "statePort",
158
+ label: "State port",
159
+ },
160
+ {
161
+ type: "string",
162
+ id: "inputPort",
163
+ label: "Input port",
164
+ },
165
+ {
166
+ type: "string",
167
+ id: "outputPort",
168
+ label: "Output port",
169
+ },
170
+ ],
171
+ };
172
+ /** Manifest for the `core.loop.until` node: repeats the loop body until the condition holds. */
173
+ export const UNTIL_GRAPH_NODE_MANIFEST = {
174
+ kind: "core.loop.until",
175
+ capabilities: ["loop"],
176
+ display: {
177
+ name: "Until",
178
+ description: "Runs the loop body at least once, then repeats until the configured condition evaluates to true.",
179
+ category: "Loop",
180
+ color: "#eab308",
181
+ icon: { type: "catalogue", name: "ti-player-stop" },
182
+ width: 120,
183
+ height: 140,
184
+ labels: ["loop", "conditional", "until"],
185
+ },
186
+ inputs: [port("state", "Initial state", "input", { schema: { type: "any" } })],
187
+ outputs: [
188
+ port("state", "Final state", "output", { schema: { type: "any" } }),
189
+ port("iterations", "Iterations", "output", { schema: { type: "number", integer: true, min: 0 } }),
190
+ ],
191
+ parameters: [
192
+ {
193
+ type: "number",
194
+ id: "maxIterations",
195
+ label: "Max iterations",
196
+ integer: true,
197
+ min: 1,
198
+ },
199
+ {
200
+ type: "object",
201
+ id: "condition",
202
+ label: "Condition",
203
+ required: true,
204
+ },
205
+ {
206
+ type: "string",
207
+ id: "statePort",
208
+ label: "State port",
209
+ },
210
+ {
211
+ type: "string",
212
+ id: "inputPort",
213
+ label: "Input port",
214
+ },
215
+ {
216
+ type: "string",
217
+ id: "outputPort",
218
+ label: "Output port",
219
+ },
220
+ ],
221
+ };
222
+ const switchCompiled = compile(SwitchFlowNode, "Switch");
223
+ /** Manifest for the `core.flow.switch` node: routes execution by switch-case conditions (cases live under `parameters["switch"]`). */
224
+ export const SWITCH_GRAPH_NODE_MANIFEST = {
225
+ ...switchCompiled,
226
+ outputs: [],
227
+ parameters: [
228
+ ...switchCompiled.parameters,
229
+ {
230
+ type: "collection",
231
+ id: "cases",
232
+ label: "Cases",
233
+ required: true,
234
+ itemIdPath: "outputPort",
235
+ itemLabelPath: "label",
236
+ },
237
+ {
238
+ type: "boolean",
239
+ id: "hasDefault",
240
+ label: "Has default",
241
+ defaultValue: false,
242
+ },
243
+ ],
244
+ dynamicPorts: [
245
+ {
246
+ type: "repeatFromParameter",
247
+ parameter: "cases",
248
+ itemIdPath: "outputPort",
249
+ itemLabelPath: "label",
250
+ direction: "output",
251
+ portIdTemplate: "${id}",
252
+ defaultPort: {
253
+ id: "case",
254
+ label: "Case",
255
+ direction: "output",
256
+ schema: { type: "any" },
257
+ },
258
+ },
259
+ {
260
+ type: "togglePort",
261
+ parameter: "hasDefault",
262
+ equals: true,
263
+ port: {
264
+ id: "default",
265
+ label: "Default",
266
+ direction: "output",
267
+ schema: { type: "any" },
268
+ },
269
+ },
270
+ ],
271
+ };
272
+ /** Manifest for the manual-trigger node (starts a run on demand). */
273
+ export const MANUAL_TRIGGER_GRAPH_NODE_MANIFEST = compile(ManualTriggerNode, "Manual trigger");
274
+ /** Manifest for the webhook-trigger node (starts a run from an inbound webhook). */
275
+ export const WEBHOOK_TRIGGER_GRAPH_NODE_MANIFEST = compile(WebhookTriggerNode, "Webhook trigger");
276
+ /** Manifest for the schedule-trigger node (starts a run on a schedule). */
277
+ export const SCHEDULE_TRIGGER_GRAPH_NODE_MANIFEST = compile(ScheduleTriggerNode, "Schedule trigger");
278
+ /** Manifest for the event-trigger node (starts a run on an observed event). */
279
+ export const EVENT_TRIGGER_GRAPH_NODE_MANIFEST = compile(EventTriggerNode, "Event trigger");
280
+ /** Manifest for the form-trigger node (starts a run from a form submission). */
281
+ export const FORM_TRIGGER_GRAPH_NODE_MANIFEST = compile(FormTriggerNode, "Form trigger");
282
+ /** Manifest for the chat-trigger node (starts a run from a chat message). */
283
+ export const CHAT_TRIGGER_GRAPH_NODE_MANIFEST = compile(ChatTriggerNode, "Chat trigger");
284
+ /** Manifest for the if node (conditional branch on a boolean condition). */
285
+ export const IF_GRAPH_NODE_MANIFEST = compile(IfFlowNode, "If");
286
+ /** Manifest for the parallel node (runs branches concurrently). */
287
+ export const PARALLEL_GRAPH_NODE_MANIFEST = compile(ParallelFlowNode, "Parallel");
288
+ /** Manifest for the merge node (joins parallel branches). */
289
+ export const MERGE_GRAPH_NODE_MANIFEST = compile(MergeFlowNode, "Merge");
290
+ /** Manifest for the map node (transforms each input item). */
291
+ export const MAP_GRAPH_NODE_MANIFEST = compile(MapNode, "Map");
292
+ /** Manifest for the delay node (pauses execution for a duration). */
293
+ export const DELAY_GRAPH_NODE_MANIFEST = compile(DelayFlowNode, "Delay");
294
+ /** Manifest for the error-boundary node (isolates branch failures). */
295
+ export const ERROR_BOUNDARY_GRAPH_NODE_MANIFEST = compile(ErrorBoundaryFlowNode, "Error boundary");
296
+ /** Manifest for the human-approval node (waits for an approval decision). */
297
+ export const HUMAN_APPROVAL_GRAPH_NODE_MANIFEST = compile(HumanApprovalFlowNode, "Human approval");
298
+ /** Manifest for the return node (terminates the workflow with output values). */
299
+ export const RETURN_GRAPH_NODE_MANIFEST = compile(ReturnFlowNode, "Return");
300
+ /** Manifest for the code node (executes user code). */
301
+ export const CODE_GRAPH_NODE_MANIFEST = compile(CodeNode, "Code");
302
+ /** Manifest for the log node (logs its input). */
303
+ export const LOG_GRAPH_NODE_MANIFEST = compile(LogFlowNode, "Log");
304
+ /** Manifest for the utility-log node (log-shaped utility sink). */
305
+ export const UTILITY_LOG_GRAPH_NODE_MANIFEST = compile(UtilityLogNode, "Utility Log");
306
+ /** Manifest for the break node (exits the enclosing loop). */
307
+ export const BREAK_GRAPH_NODE_MANIFEST = compile(BreakFlowNode, "Break");
308
+ /** Manifest for the agent node (delegates work to an agent). */
309
+ export const AGENT_GRAPH_NODE_MANIFEST = compile(AgentNode, "Agent");
310
+ /** All built-in node manifests, in catalogue display order. */
311
+ export const GRAPH_BUILT_IN_NODE_MANIFESTS = [
312
+ MANUAL_TRIGGER_GRAPH_NODE_MANIFEST,
313
+ WEBHOOK_TRIGGER_GRAPH_NODE_MANIFEST,
314
+ SCHEDULE_TRIGGER_GRAPH_NODE_MANIFEST,
315
+ EVENT_TRIGGER_GRAPH_NODE_MANIFEST,
316
+ FORM_TRIGGER_GRAPH_NODE_MANIFEST,
317
+ CHAT_TRIGGER_GRAPH_NODE_MANIFEST,
318
+ IF_GRAPH_NODE_MANIFEST,
319
+ SWITCH_GRAPH_NODE_MANIFEST,
320
+ PARALLEL_GRAPH_NODE_MANIFEST,
321
+ MERGE_GRAPH_NODE_MANIFEST,
322
+ MAP_GRAPH_NODE_MANIFEST,
323
+ DELAY_GRAPH_NODE_MANIFEST,
324
+ ERROR_BOUNDARY_GRAPH_NODE_MANIFEST,
325
+ HUMAN_APPROVAL_GRAPH_NODE_MANIFEST,
326
+ RETURN_GRAPH_NODE_MANIFEST,
327
+ CODE_GRAPH_NODE_MANIFEST,
328
+ LOG_GRAPH_NODE_MANIFEST,
329
+ UTILITY_LOG_GRAPH_NODE_MANIFEST,
330
+ BREAK_GRAPH_NODE_MANIFEST,
331
+ AGENT_GRAPH_NODE_MANIFEST,
332
+ FOREACH_GRAPH_NODE_MANIFEST,
333
+ WHILE_GRAPH_NODE_MANIFEST,
334
+ UNTIL_GRAPH_NODE_MANIFEST,
335
+ ];
336
+ /** Built-in manifests indexed by node `kind` — the source for built-in catalogue registrations. */
337
+ export const GRAPH_BUILT_IN_NODE_MANIFESTS_BY_KIND = Object.fromEntries(GRAPH_BUILT_IN_NODE_MANIFESTS.map((manifest) => [manifest.kind, manifest]));
338
+ //# sourceMappingURL=manifests.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"manifests.js","sourceRoot":"","sources":["../../../../src/graph/nodes/manifests.ts"],"names":[],"mappings":"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"}