@decaf-ts/integrations 0.3.7 → 0.3.9

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 (417) hide show
  1. package/dist/integrations.cjs +3 -3
  2. package/dist/integrations.js +3 -3
  3. package/lib/cjs/graph/engine/constants.cjs +58 -0
  4. package/lib/cjs/graph/engine/decorators.cjs +4 -0
  5. package/lib/cjs/graph/engine/errors/GraphCycleError.cjs +20 -0
  6. package/lib/cjs/graph/engine/errors/GraphExecutionError.cjs +27 -0
  7. package/lib/cjs/graph/engine/errors/GraphInputError.cjs +20 -0
  8. package/lib/cjs/graph/engine/errors/GraphLoopLimitError.cjs +20 -0
  9. package/lib/cjs/graph/engine/errors/GraphPinningError.cjs +20 -0
  10. package/lib/cjs/graph/engine/errors/GraphPortError.cjs +20 -0
  11. package/lib/cjs/graph/engine/errors/GraphStoreError.cjs +20 -0
  12. package/lib/cjs/graph/engine/errors/GraphTopologyError.cjs +20 -0
  13. package/lib/cjs/graph/{errors → engine/errors}/index.cjs +2 -2
  14. package/lib/cjs/graph/engine/events/GraphExecutionEvent.cjs +4 -0
  15. package/lib/cjs/graph/engine/events/GraphExecutionEventEmitter.cjs +40 -0
  16. package/lib/cjs/graph/engine/events/GraphExecutionEventFactory.cjs +37 -0
  17. package/lib/cjs/graph/engine/events/GraphExecutionObserver.cjs +4 -0
  18. package/lib/cjs/graph/{events → engine/events}/index.cjs +2 -2
  19. package/lib/cjs/graph/engine/execution/CodeSandboxEvaluator.cjs +4 -0
  20. package/lib/cjs/graph/engine/execution/GraphExecutionContext.cjs +79 -0
  21. package/lib/cjs/graph/engine/execution/GraphExecutionEngine.cjs +408 -0
  22. package/lib/cjs/graph/engine/execution/GraphExecutionFrame.cjs +32 -0
  23. package/lib/cjs/graph/engine/execution/GraphExecutionResult.cjs +30 -0
  24. package/lib/cjs/graph/engine/execution/GraphNodeExecutor.cjs +4 -0
  25. package/lib/cjs/graph/engine/execution/SwitchGraphNodeExecutor.cjs +103 -0
  26. package/lib/cjs/graph/{execution → engine/execution}/index.cjs +2 -2
  27. package/lib/cjs/graph/engine/index.cjs +84 -0
  28. package/lib/cjs/graph/engine/loops/ConditionExpressionEvaluator.cjs +87 -0
  29. package/lib/cjs/graph/engine/loops/ForeachGraphNodeExecutor.cjs +85 -0
  30. package/lib/cjs/graph/engine/loops/GraphConditionEvaluator.cjs +85 -0
  31. package/lib/cjs/graph/engine/loops/GraphLoopExecutionContext.cjs +16 -0
  32. package/lib/cjs/graph/engine/loops/UntilGraphNodeExecutor.cjs +77 -0
  33. package/lib/cjs/graph/engine/loops/WhileGraphNodeExecutor.cjs +78 -0
  34. package/lib/cjs/graph/{loops → engine/loops}/index.cjs +2 -2
  35. package/lib/cjs/graph/engine/pinning/GraphPinningDependencyResolver.cjs +28 -0
  36. package/lib/cjs/graph/engine/pinning/GraphPinningMetadata.cjs +20 -0
  37. package/lib/cjs/graph/engine/pinning/GraphPinningPolicy.cjs +34 -0
  38. package/lib/cjs/graph/engine/pinning/GraphPinningService.cjs +191 -0
  39. package/lib/cjs/graph/{pinning → engine/pinning}/index.cjs +2 -2
  40. package/lib/cjs/graph/engine/planning/GraphExecutionPlan.cjs +4 -0
  41. package/lib/cjs/graph/engine/planning/GraphExecutionPlanEdge.cjs +4 -0
  42. package/lib/cjs/graph/engine/planning/GraphExecutionPlanLayer.cjs +4 -0
  43. package/lib/cjs/graph/engine/planning/GraphExecutionPlanNode.cjs +4 -0
  44. package/lib/cjs/graph/engine/planning/GraphExecutionPlanner.cjs +197 -0
  45. package/lib/cjs/graph/engine/planning/GraphRelationResolver.cjs +172 -0
  46. package/lib/cjs/graph/engine/planning/GraphTopology.cjs +57 -0
  47. package/lib/cjs/graph/{planning → engine/planning}/index.cjs +2 -2
  48. package/lib/cjs/graph/engine/registry/GraphNodeExecutorRegistry.cjs +44 -0
  49. package/lib/cjs/graph/engine/registry/GraphNodeExecutorResolver.cjs +27 -0
  50. package/lib/cjs/graph/{registry → engine/registry}/index.cjs +2 -2
  51. package/lib/cjs/graph/engine/snapshots/GraphExecutionSnapshotMapper.cjs +53 -0
  52. package/lib/cjs/graph/{snapshots → engine/snapshots}/index.cjs +2 -2
  53. package/lib/cjs/graph/engine/store/GraphCachedValue.cjs +4 -0
  54. package/lib/cjs/graph/engine/store/GraphValueKey.cjs +4 -0
  55. package/lib/cjs/graph/engine/store/GraphValueStore.cjs +76 -0
  56. package/lib/cjs/graph/engine/store/GraphValueStoreAdapter.cjs +4 -0
  57. package/lib/cjs/graph/engine/store/InMemoryGraphValueStoreAdapter.cjs +69 -0
  58. package/lib/cjs/graph/{store → engine/store}/index.cjs +2 -2
  59. package/lib/cjs/graph/engine/types.cjs +4 -0
  60. package/lib/cjs/graph/engine/validation/GraphDefinitionValidator.cjs +33 -0
  61. package/lib/cjs/graph/engine/validation/GraphPortSchemaResolver.cjs +58 -0
  62. package/lib/cjs/graph/engine/validation/GraphValueValidator.cjs +52 -0
  63. package/lib/cjs/graph/{validation → engine/validation}/index.cjs +2 -2
  64. package/lib/cjs/graph/index.cjs +10 -60
  65. package/lib/cjs/graph/shared/constants.cjs +44 -0
  66. package/lib/cjs/graph/shared/index.cjs +38 -0
  67. package/lib/cjs/graph/{nodes → shared/nodes}/agent.cjs +2 -2
  68. package/lib/cjs/graph/shared/nodes/base.cjs +35 -0
  69. package/lib/cjs/graph/shared/nodes/category-styles.cjs +38 -0
  70. package/lib/cjs/graph/shared/nodes/flow-control.cjs +464 -0
  71. package/lib/cjs/graph/{nodes → shared/nodes}/index.cjs +2 -2
  72. package/lib/cjs/graph/shared/nodes/triggers.cjs +250 -0
  73. package/lib/cjs/graph/shared/types.cjs +4 -0
  74. package/lib/cjs/index.cjs +3 -3
  75. package/lib/cjs/nest/index.cjs +2 -3
  76. package/lib/esm/graph/engine/constants.js +62 -0
  77. package/lib/esm/graph/engine/decorators.js +2 -0
  78. package/lib/esm/graph/engine/errors/GraphCycleError.js +15 -0
  79. package/lib/esm/graph/engine/errors/GraphExecutionError.js +22 -0
  80. package/lib/esm/graph/engine/errors/GraphInputError.js +15 -0
  81. package/lib/esm/graph/engine/errors/GraphLoopLimitError.js +15 -0
  82. package/lib/esm/graph/engine/errors/GraphPinningError.js +15 -0
  83. package/lib/esm/graph/engine/errors/GraphPortError.js +15 -0
  84. package/lib/esm/graph/engine/errors/GraphStoreError.js +15 -0
  85. package/lib/esm/graph/engine/errors/GraphTopologyError.js +15 -0
  86. package/lib/esm/graph/engine/errors/index.js +14 -0
  87. package/lib/esm/graph/engine/events/GraphExecutionEvent.js +2 -0
  88. package/lib/esm/graph/engine/events/GraphExecutionEventEmitter.js +35 -0
  89. package/lib/esm/graph/engine/events/GraphExecutionEventFactory.js +32 -0
  90. package/lib/esm/graph/engine/events/GraphExecutionObserver.js +2 -0
  91. package/lib/esm/graph/engine/events/index.js +10 -0
  92. package/lib/esm/graph/engine/execution/CodeSandboxEvaluator.js +18 -0
  93. package/lib/esm/graph/engine/execution/GraphExecutionContext.js +74 -0
  94. package/lib/esm/graph/engine/execution/GraphExecutionEngine.js +403 -0
  95. package/lib/esm/graph/engine/execution/GraphExecutionFrame.js +27 -0
  96. package/lib/esm/graph/engine/execution/GraphExecutionResult.js +26 -0
  97. package/lib/esm/graph/engine/execution/GraphNodeExecutor.js +2 -0
  98. package/lib/esm/graph/engine/execution/SwitchGraphNodeExecutor.js +98 -0
  99. package/lib/esm/graph/engine/execution/index.js +13 -0
  100. package/lib/esm/graph/engine/index.js +67 -0
  101. package/lib/esm/graph/engine/loops/ConditionExpressionEvaluator.js +82 -0
  102. package/lib/esm/graph/engine/loops/ForeachGraphNodeExecutor.js +80 -0
  103. package/lib/esm/graph/engine/loops/GraphConditionEvaluator.js +80 -0
  104. package/lib/esm/graph/engine/loops/GraphLoopExecutionContext.js +11 -0
  105. package/lib/esm/graph/engine/loops/UntilGraphNodeExecutor.js +72 -0
  106. package/lib/esm/graph/engine/loops/WhileGraphNodeExecutor.js +73 -0
  107. package/lib/esm/graph/engine/loops/index.js +12 -0
  108. package/lib/esm/graph/engine/pinning/GraphPinningDependencyResolver.js +23 -0
  109. package/lib/esm/graph/engine/pinning/GraphPinningMetadata.js +15 -0
  110. package/lib/esm/graph/engine/pinning/GraphPinningPolicy.js +29 -0
  111. package/lib/esm/graph/engine/pinning/GraphPinningService.js +186 -0
  112. package/lib/esm/graph/engine/pinning/index.js +10 -0
  113. package/lib/esm/graph/engine/planning/GraphExecutionPlan.js +2 -0
  114. package/lib/esm/graph/engine/planning/GraphExecutionPlanEdge.js +7 -0
  115. package/lib/esm/graph/engine/planning/GraphExecutionPlanLayer.js +2 -0
  116. package/lib/esm/graph/engine/planning/GraphExecutionPlanNode.js +2 -0
  117. package/lib/esm/graph/engine/planning/GraphExecutionPlanner.js +192 -0
  118. package/lib/esm/graph/engine/planning/GraphRelationResolver.js +167 -0
  119. package/lib/esm/graph/engine/planning/GraphTopology.js +52 -0
  120. package/lib/esm/graph/engine/planning/index.js +13 -0
  121. package/lib/esm/graph/engine/registry/GraphNodeExecutorRegistry.js +39 -0
  122. package/lib/esm/graph/engine/registry/GraphNodeExecutorResolver.js +22 -0
  123. package/lib/esm/graph/engine/registry/index.js +8 -0
  124. package/lib/esm/graph/engine/snapshots/GraphExecutionSnapshotMapper.js +48 -0
  125. package/lib/esm/graph/engine/snapshots/index.js +7 -0
  126. package/lib/esm/graph/engine/store/GraphCachedValue.js +2 -0
  127. package/lib/esm/graph/engine/store/GraphValueKey.js +7 -0
  128. package/lib/esm/graph/engine/store/GraphValueStore.js +71 -0
  129. package/lib/esm/graph/engine/store/GraphValueStoreAdapter.js +2 -0
  130. package/lib/esm/graph/engine/store/InMemoryGraphValueStoreAdapter.js +64 -0
  131. package/lib/esm/graph/engine/store/index.js +11 -0
  132. package/lib/esm/graph/engine/types.js +2 -0
  133. package/lib/esm/graph/engine/validation/GraphDefinitionValidator.js +28 -0
  134. package/lib/esm/graph/engine/validation/GraphPortSchemaResolver.js +53 -0
  135. package/lib/esm/graph/engine/validation/GraphValueValidator.js +47 -0
  136. package/lib/esm/graph/engine/validation/index.js +9 -0
  137. package/lib/esm/graph/index.js +9 -59
  138. package/lib/esm/graph/shared/constants.js +56 -0
  139. package/lib/esm/graph/shared/index.js +19 -0
  140. package/lib/esm/graph/shared/nodes/agent.js +101 -0
  141. package/lib/esm/graph/shared/nodes/base.js +30 -0
  142. package/lib/esm/graph/shared/nodes/category-styles.js +34 -0
  143. package/lib/esm/graph/shared/nodes/flow-control.js +455 -0
  144. package/lib/esm/graph/shared/nodes/index.js +18 -0
  145. package/lib/esm/graph/shared/nodes/triggers.js +241 -0
  146. package/lib/esm/graph/shared/types.js +2 -0
  147. package/lib/esm/index.js +3 -3
  148. package/lib/esm/nest/index.js +1 -2
  149. package/lib/types/graph/engine/constants.d.cts +59 -0
  150. package/lib/types/graph/engine/constants.d.mts +59 -0
  151. package/lib/types/graph/{execution → engine/execution}/GraphExecutionResult.d.cts +1 -1
  152. package/lib/types/graph/{execution → engine/execution}/GraphExecutionResult.d.mts +1 -1
  153. package/lib/types/graph/engine/index.d.cts +61 -0
  154. package/lib/types/graph/engine/index.d.mts +61 -0
  155. package/lib/types/graph/{loops → engine/loops}/ConditionExpressionEvaluator.d.cts +1 -1
  156. package/lib/types/graph/{loops → engine/loops}/ConditionExpressionEvaluator.d.mts +1 -1
  157. package/lib/types/graph/{loops → engine/loops}/GraphConditionEvaluator.d.cts +2 -1
  158. package/lib/types/graph/{loops → engine/loops}/GraphConditionEvaluator.d.mts +2 -1
  159. package/lib/types/graph/{types.d.cts → engine/types.d.cts} +8 -116
  160. package/lib/types/graph/{types.d.mts → engine/types.d.mts} +8 -116
  161. package/lib/types/graph/index.d.cts +8 -53
  162. package/lib/types/graph/index.d.mts +8 -53
  163. package/lib/types/graph/shared/constants.d.cts +53 -0
  164. package/lib/types/graph/shared/constants.d.mts +53 -0
  165. package/lib/types/graph/shared/index.d.cts +18 -0
  166. package/lib/types/graph/shared/index.d.mts +18 -0
  167. package/lib/types/graph/shared/types.d.cts +121 -0
  168. package/lib/types/graph/shared/types.d.mts +121 -0
  169. package/lib/types/index.d.cts +2 -2
  170. package/lib/types/index.d.mts +2 -2
  171. package/lib/types/nest/index.d.cts +0 -1
  172. package/lib/types/nest/index.d.mts +0 -1
  173. package/package.json +25 -3
  174. package/lib/cjs/graph/constants.cjs +0 -94
  175. package/lib/cjs/graph/decorators.cjs +0 -4
  176. package/lib/cjs/graph/errors/GraphCycleError.cjs +0 -20
  177. package/lib/cjs/graph/errors/GraphExecutionError.cjs +0 -27
  178. package/lib/cjs/graph/errors/GraphInputError.cjs +0 -20
  179. package/lib/cjs/graph/errors/GraphLoopLimitError.cjs +0 -20
  180. package/lib/cjs/graph/errors/GraphPinningError.cjs +0 -20
  181. package/lib/cjs/graph/errors/GraphPortError.cjs +0 -20
  182. package/lib/cjs/graph/errors/GraphStoreError.cjs +0 -20
  183. package/lib/cjs/graph/errors/GraphTopologyError.cjs +0 -20
  184. package/lib/cjs/graph/events/GraphExecutionEvent.cjs +0 -4
  185. package/lib/cjs/graph/events/GraphExecutionEventEmitter.cjs +0 -40
  186. package/lib/cjs/graph/events/GraphExecutionEventFactory.cjs +0 -37
  187. package/lib/cjs/graph/events/GraphExecutionObserver.cjs +0 -4
  188. package/lib/cjs/graph/execution/CodeSandboxEvaluator.cjs +0 -4
  189. package/lib/cjs/graph/execution/GraphExecutionContext.cjs +0 -79
  190. package/lib/cjs/graph/execution/GraphExecutionEngine.cjs +0 -407
  191. package/lib/cjs/graph/execution/GraphExecutionFrame.cjs +0 -32
  192. package/lib/cjs/graph/execution/GraphExecutionResult.cjs +0 -30
  193. package/lib/cjs/graph/execution/GraphNodeExecutor.cjs +0 -4
  194. package/lib/cjs/graph/execution/SwitchGraphNodeExecutor.cjs +0 -103
  195. package/lib/cjs/graph/loops/ConditionExpressionEvaluator.cjs +0 -87
  196. package/lib/cjs/graph/loops/ForeachGraphNodeExecutor.cjs +0 -84
  197. package/lib/cjs/graph/loops/GraphConditionEvaluator.cjs +0 -85
  198. package/lib/cjs/graph/loops/GraphLoopExecutionContext.cjs +0 -16
  199. package/lib/cjs/graph/loops/UntilGraphNodeExecutor.cjs +0 -76
  200. package/lib/cjs/graph/loops/WhileGraphNodeExecutor.cjs +0 -77
  201. package/lib/cjs/graph/nodes/base.cjs +0 -35
  202. package/lib/cjs/graph/nodes/category-styles.cjs +0 -38
  203. package/lib/cjs/graph/nodes/flow-control.cjs +0 -464
  204. package/lib/cjs/graph/nodes/triggers.cjs +0 -250
  205. package/lib/cjs/graph/pinning/GraphPinningDependencyResolver.cjs +0 -28
  206. package/lib/cjs/graph/pinning/GraphPinningMetadata.cjs +0 -20
  207. package/lib/cjs/graph/pinning/GraphPinningPolicy.cjs +0 -34
  208. package/lib/cjs/graph/pinning/GraphPinningService.cjs +0 -191
  209. package/lib/cjs/graph/planning/GraphExecutionPlan.cjs +0 -4
  210. package/lib/cjs/graph/planning/GraphExecutionPlanEdge.cjs +0 -4
  211. package/lib/cjs/graph/planning/GraphExecutionPlanLayer.cjs +0 -4
  212. package/lib/cjs/graph/planning/GraphExecutionPlanNode.cjs +0 -4
  213. package/lib/cjs/graph/planning/GraphExecutionPlanner.cjs +0 -197
  214. package/lib/cjs/graph/planning/GraphRelationResolver.cjs +0 -172
  215. package/lib/cjs/graph/planning/GraphTopology.cjs +0 -57
  216. package/lib/cjs/graph/registry/GraphNodeExecutorRegistry.cjs +0 -44
  217. package/lib/cjs/graph/registry/GraphNodeExecutorResolver.cjs +0 -27
  218. package/lib/cjs/graph/snapshots/GraphExecutionSnapshotMapper.cjs +0 -53
  219. package/lib/cjs/graph/store/GraphCachedValue.cjs +0 -4
  220. package/lib/cjs/graph/store/GraphValueKey.cjs +0 -4
  221. package/lib/cjs/graph/store/GraphValueStore.cjs +0 -76
  222. package/lib/cjs/graph/store/GraphValueStoreAdapter.cjs +0 -4
  223. package/lib/cjs/graph/store/InMemoryGraphValueStoreAdapter.cjs +0 -69
  224. package/lib/cjs/graph/types.cjs +0 -4
  225. package/lib/cjs/graph/validation/GraphDefinitionValidator.cjs +0 -33
  226. package/lib/cjs/graph/validation/GraphPortSchemaResolver.cjs +0 -58
  227. package/lib/cjs/graph/validation/GraphValueValidator.cjs +0 -52
  228. package/lib/esm/graph/constants.js +0 -106
  229. package/lib/esm/graph/decorators.js +0 -2
  230. package/lib/esm/graph/errors/GraphCycleError.js +0 -15
  231. package/lib/esm/graph/errors/GraphExecutionError.js +0 -22
  232. package/lib/esm/graph/errors/GraphInputError.js +0 -15
  233. package/lib/esm/graph/errors/GraphLoopLimitError.js +0 -15
  234. package/lib/esm/graph/errors/GraphPinningError.js +0 -15
  235. package/lib/esm/graph/errors/GraphPortError.js +0 -15
  236. package/lib/esm/graph/errors/GraphStoreError.js +0 -15
  237. package/lib/esm/graph/errors/GraphTopologyError.js +0 -15
  238. package/lib/esm/graph/errors/index.js +0 -14
  239. package/lib/esm/graph/events/GraphExecutionEvent.js +0 -2
  240. package/lib/esm/graph/events/GraphExecutionEventEmitter.js +0 -35
  241. package/lib/esm/graph/events/GraphExecutionEventFactory.js +0 -32
  242. package/lib/esm/graph/events/GraphExecutionObserver.js +0 -2
  243. package/lib/esm/graph/events/index.js +0 -10
  244. package/lib/esm/graph/execution/CodeSandboxEvaluator.js +0 -18
  245. package/lib/esm/graph/execution/GraphExecutionContext.js +0 -74
  246. package/lib/esm/graph/execution/GraphExecutionEngine.js +0 -402
  247. package/lib/esm/graph/execution/GraphExecutionFrame.js +0 -27
  248. package/lib/esm/graph/execution/GraphExecutionResult.js +0 -26
  249. package/lib/esm/graph/execution/GraphNodeExecutor.js +0 -2
  250. package/lib/esm/graph/execution/SwitchGraphNodeExecutor.js +0 -98
  251. package/lib/esm/graph/execution/index.js +0 -13
  252. package/lib/esm/graph/loops/ConditionExpressionEvaluator.js +0 -82
  253. package/lib/esm/graph/loops/ForeachGraphNodeExecutor.js +0 -79
  254. package/lib/esm/graph/loops/GraphConditionEvaluator.js +0 -80
  255. package/lib/esm/graph/loops/GraphLoopExecutionContext.js +0 -11
  256. package/lib/esm/graph/loops/UntilGraphNodeExecutor.js +0 -71
  257. package/lib/esm/graph/loops/WhileGraphNodeExecutor.js +0 -72
  258. package/lib/esm/graph/loops/index.js +0 -12
  259. package/lib/esm/graph/nodes/agent.js +0 -101
  260. package/lib/esm/graph/nodes/base.js +0 -30
  261. package/lib/esm/graph/nodes/category-styles.js +0 -34
  262. package/lib/esm/graph/nodes/flow-control.js +0 -455
  263. package/lib/esm/graph/nodes/index.js +0 -18
  264. package/lib/esm/graph/nodes/triggers.js +0 -241
  265. package/lib/esm/graph/pinning/GraphPinningDependencyResolver.js +0 -23
  266. package/lib/esm/graph/pinning/GraphPinningMetadata.js +0 -15
  267. package/lib/esm/graph/pinning/GraphPinningPolicy.js +0 -29
  268. package/lib/esm/graph/pinning/GraphPinningService.js +0 -186
  269. package/lib/esm/graph/pinning/index.js +0 -10
  270. package/lib/esm/graph/planning/GraphExecutionPlan.js +0 -2
  271. package/lib/esm/graph/planning/GraphExecutionPlanEdge.js +0 -7
  272. package/lib/esm/graph/planning/GraphExecutionPlanLayer.js +0 -2
  273. package/lib/esm/graph/planning/GraphExecutionPlanNode.js +0 -2
  274. package/lib/esm/graph/planning/GraphExecutionPlanner.js +0 -192
  275. package/lib/esm/graph/planning/GraphRelationResolver.js +0 -167
  276. package/lib/esm/graph/planning/GraphTopology.js +0 -52
  277. package/lib/esm/graph/planning/index.js +0 -13
  278. package/lib/esm/graph/registry/GraphNodeExecutorRegistry.js +0 -39
  279. package/lib/esm/graph/registry/GraphNodeExecutorResolver.js +0 -22
  280. package/lib/esm/graph/registry/index.js +0 -8
  281. package/lib/esm/graph/snapshots/GraphExecutionSnapshotMapper.js +0 -48
  282. package/lib/esm/graph/snapshots/index.js +0 -7
  283. package/lib/esm/graph/store/GraphCachedValue.js +0 -2
  284. package/lib/esm/graph/store/GraphValueKey.js +0 -7
  285. package/lib/esm/graph/store/GraphValueStore.js +0 -71
  286. package/lib/esm/graph/store/GraphValueStoreAdapter.js +0 -2
  287. package/lib/esm/graph/store/InMemoryGraphValueStoreAdapter.js +0 -64
  288. package/lib/esm/graph/store/index.js +0 -11
  289. package/lib/esm/graph/types.js +0 -2
  290. package/lib/esm/graph/validation/GraphDefinitionValidator.js +0 -28
  291. package/lib/esm/graph/validation/GraphPortSchemaResolver.js +0 -53
  292. package/lib/esm/graph/validation/GraphValueValidator.js +0 -47
  293. package/lib/esm/graph/validation/index.js +0 -9
  294. package/lib/types/graph/constants.d.cts +0 -101
  295. package/lib/types/graph/constants.d.mts +0 -101
  296. /package/lib/types/graph/{decorators.d.cts → engine/decorators.d.cts} +0 -0
  297. /package/lib/types/graph/{decorators.d.mts → engine/decorators.d.mts} +0 -0
  298. /package/lib/types/graph/{errors → engine/errors}/GraphCycleError.d.cts +0 -0
  299. /package/lib/types/graph/{errors → engine/errors}/GraphCycleError.d.mts +0 -0
  300. /package/lib/types/graph/{errors → engine/errors}/GraphExecutionError.d.cts +0 -0
  301. /package/lib/types/graph/{errors → engine/errors}/GraphExecutionError.d.mts +0 -0
  302. /package/lib/types/graph/{errors → engine/errors}/GraphInputError.d.cts +0 -0
  303. /package/lib/types/graph/{errors → engine/errors}/GraphInputError.d.mts +0 -0
  304. /package/lib/types/graph/{errors → engine/errors}/GraphLoopLimitError.d.cts +0 -0
  305. /package/lib/types/graph/{errors → engine/errors}/GraphLoopLimitError.d.mts +0 -0
  306. /package/lib/types/graph/{errors → engine/errors}/GraphPinningError.d.cts +0 -0
  307. /package/lib/types/graph/{errors → engine/errors}/GraphPinningError.d.mts +0 -0
  308. /package/lib/types/graph/{errors → engine/errors}/GraphPortError.d.cts +0 -0
  309. /package/lib/types/graph/{errors → engine/errors}/GraphPortError.d.mts +0 -0
  310. /package/lib/types/graph/{errors → engine/errors}/GraphStoreError.d.cts +0 -0
  311. /package/lib/types/graph/{errors → engine/errors}/GraphStoreError.d.mts +0 -0
  312. /package/lib/types/graph/{errors → engine/errors}/GraphTopologyError.d.cts +0 -0
  313. /package/lib/types/graph/{errors → engine/errors}/GraphTopologyError.d.mts +0 -0
  314. /package/lib/types/graph/{errors → engine/errors}/index.d.cts +0 -0
  315. /package/lib/types/graph/{errors → engine/errors}/index.d.mts +0 -0
  316. /package/lib/types/graph/{events → engine/events}/GraphExecutionEvent.d.cts +0 -0
  317. /package/lib/types/graph/{events → engine/events}/GraphExecutionEvent.d.mts +0 -0
  318. /package/lib/types/graph/{events → engine/events}/GraphExecutionEventEmitter.d.cts +0 -0
  319. /package/lib/types/graph/{events → engine/events}/GraphExecutionEventEmitter.d.mts +0 -0
  320. /package/lib/types/graph/{events → engine/events}/GraphExecutionEventFactory.d.cts +0 -0
  321. /package/lib/types/graph/{events → engine/events}/GraphExecutionEventFactory.d.mts +0 -0
  322. /package/lib/types/graph/{events → engine/events}/GraphExecutionObserver.d.cts +0 -0
  323. /package/lib/types/graph/{events → engine/events}/GraphExecutionObserver.d.mts +0 -0
  324. /package/lib/types/graph/{events → engine/events}/index.d.cts +0 -0
  325. /package/lib/types/graph/{events → engine/events}/index.d.mts +0 -0
  326. /package/lib/types/graph/{execution → engine/execution}/CodeSandboxEvaluator.d.cts +0 -0
  327. /package/lib/types/graph/{execution → engine/execution}/CodeSandboxEvaluator.d.mts +0 -0
  328. /package/lib/types/graph/{execution → engine/execution}/GraphExecutionContext.d.cts +0 -0
  329. /package/lib/types/graph/{execution → engine/execution}/GraphExecutionContext.d.mts +0 -0
  330. /package/lib/types/graph/{execution → engine/execution}/GraphExecutionEngine.d.cts +0 -0
  331. /package/lib/types/graph/{execution → engine/execution}/GraphExecutionEngine.d.mts +0 -0
  332. /package/lib/types/graph/{execution → engine/execution}/GraphExecutionFrame.d.cts +0 -0
  333. /package/lib/types/graph/{execution → engine/execution}/GraphExecutionFrame.d.mts +0 -0
  334. /package/lib/types/graph/{execution → engine/execution}/GraphNodeExecutor.d.cts +0 -0
  335. /package/lib/types/graph/{execution → engine/execution}/GraphNodeExecutor.d.mts +0 -0
  336. /package/lib/types/graph/{execution → engine/execution}/SwitchGraphNodeExecutor.d.cts +0 -0
  337. /package/lib/types/graph/{execution → engine/execution}/SwitchGraphNodeExecutor.d.mts +0 -0
  338. /package/lib/types/graph/{execution → engine/execution}/index.d.cts +0 -0
  339. /package/lib/types/graph/{execution → engine/execution}/index.d.mts +0 -0
  340. /package/lib/types/graph/{loops → engine/loops}/ForeachGraphNodeExecutor.d.cts +0 -0
  341. /package/lib/types/graph/{loops → engine/loops}/ForeachGraphNodeExecutor.d.mts +0 -0
  342. /package/lib/types/graph/{loops → engine/loops}/GraphLoopExecutionContext.d.cts +0 -0
  343. /package/lib/types/graph/{loops → engine/loops}/GraphLoopExecutionContext.d.mts +0 -0
  344. /package/lib/types/graph/{loops → engine/loops}/UntilGraphNodeExecutor.d.cts +0 -0
  345. /package/lib/types/graph/{loops → engine/loops}/UntilGraphNodeExecutor.d.mts +0 -0
  346. /package/lib/types/graph/{loops → engine/loops}/WhileGraphNodeExecutor.d.cts +0 -0
  347. /package/lib/types/graph/{loops → engine/loops}/WhileGraphNodeExecutor.d.mts +0 -0
  348. /package/lib/types/graph/{loops → engine/loops}/index.d.cts +0 -0
  349. /package/lib/types/graph/{loops → engine/loops}/index.d.mts +0 -0
  350. /package/lib/types/graph/{pinning → engine/pinning}/GraphPinningDependencyResolver.d.cts +0 -0
  351. /package/lib/types/graph/{pinning → engine/pinning}/GraphPinningDependencyResolver.d.mts +0 -0
  352. /package/lib/types/graph/{pinning → engine/pinning}/GraphPinningMetadata.d.cts +0 -0
  353. /package/lib/types/graph/{pinning → engine/pinning}/GraphPinningMetadata.d.mts +0 -0
  354. /package/lib/types/graph/{pinning → engine/pinning}/GraphPinningPolicy.d.cts +0 -0
  355. /package/lib/types/graph/{pinning → engine/pinning}/GraphPinningPolicy.d.mts +0 -0
  356. /package/lib/types/graph/{pinning → engine/pinning}/GraphPinningService.d.cts +0 -0
  357. /package/lib/types/graph/{pinning → engine/pinning}/GraphPinningService.d.mts +0 -0
  358. /package/lib/types/graph/{pinning → engine/pinning}/index.d.cts +0 -0
  359. /package/lib/types/graph/{pinning → engine/pinning}/index.d.mts +0 -0
  360. /package/lib/types/graph/{planning → engine/planning}/GraphExecutionPlan.d.cts +0 -0
  361. /package/lib/types/graph/{planning → engine/planning}/GraphExecutionPlan.d.mts +0 -0
  362. /package/lib/types/graph/{planning → engine/planning}/GraphExecutionPlanEdge.d.cts +0 -0
  363. /package/lib/types/graph/{planning → engine/planning}/GraphExecutionPlanEdge.d.mts +0 -0
  364. /package/lib/types/graph/{planning → engine/planning}/GraphExecutionPlanLayer.d.cts +0 -0
  365. /package/lib/types/graph/{planning → engine/planning}/GraphExecutionPlanLayer.d.mts +0 -0
  366. /package/lib/types/graph/{planning → engine/planning}/GraphExecutionPlanNode.d.cts +0 -0
  367. /package/lib/types/graph/{planning → engine/planning}/GraphExecutionPlanNode.d.mts +0 -0
  368. /package/lib/types/graph/{planning → engine/planning}/GraphExecutionPlanner.d.cts +0 -0
  369. /package/lib/types/graph/{planning → engine/planning}/GraphExecutionPlanner.d.mts +0 -0
  370. /package/lib/types/graph/{planning → engine/planning}/GraphRelationResolver.d.cts +0 -0
  371. /package/lib/types/graph/{planning → engine/planning}/GraphRelationResolver.d.mts +0 -0
  372. /package/lib/types/graph/{planning → engine/planning}/GraphTopology.d.cts +0 -0
  373. /package/lib/types/graph/{planning → engine/planning}/GraphTopology.d.mts +0 -0
  374. /package/lib/types/graph/{planning → engine/planning}/index.d.cts +0 -0
  375. /package/lib/types/graph/{planning → engine/planning}/index.d.mts +0 -0
  376. /package/lib/types/graph/{registry → engine/registry}/GraphNodeExecutorRegistry.d.cts +0 -0
  377. /package/lib/types/graph/{registry → engine/registry}/GraphNodeExecutorRegistry.d.mts +0 -0
  378. /package/lib/types/graph/{registry → engine/registry}/GraphNodeExecutorResolver.d.cts +0 -0
  379. /package/lib/types/graph/{registry → engine/registry}/GraphNodeExecutorResolver.d.mts +0 -0
  380. /package/lib/types/graph/{registry → engine/registry}/index.d.cts +0 -0
  381. /package/lib/types/graph/{registry → engine/registry}/index.d.mts +0 -0
  382. /package/lib/types/graph/{snapshots → engine/snapshots}/GraphExecutionSnapshotMapper.d.cts +0 -0
  383. /package/lib/types/graph/{snapshots → engine/snapshots}/GraphExecutionSnapshotMapper.d.mts +0 -0
  384. /package/lib/types/graph/{snapshots → engine/snapshots}/index.d.cts +0 -0
  385. /package/lib/types/graph/{snapshots → engine/snapshots}/index.d.mts +0 -0
  386. /package/lib/types/graph/{store → engine/store}/GraphCachedValue.d.cts +0 -0
  387. /package/lib/types/graph/{store → engine/store}/GraphCachedValue.d.mts +0 -0
  388. /package/lib/types/graph/{store → engine/store}/GraphValueKey.d.cts +0 -0
  389. /package/lib/types/graph/{store → engine/store}/GraphValueKey.d.mts +0 -0
  390. /package/lib/types/graph/{store → engine/store}/GraphValueStore.d.cts +0 -0
  391. /package/lib/types/graph/{store → engine/store}/GraphValueStore.d.mts +0 -0
  392. /package/lib/types/graph/{store → engine/store}/GraphValueStoreAdapter.d.cts +0 -0
  393. /package/lib/types/graph/{store → engine/store}/GraphValueStoreAdapter.d.mts +0 -0
  394. /package/lib/types/graph/{store → engine/store}/InMemoryGraphValueStoreAdapter.d.cts +0 -0
  395. /package/lib/types/graph/{store → engine/store}/InMemoryGraphValueStoreAdapter.d.mts +0 -0
  396. /package/lib/types/graph/{store → engine/store}/index.d.cts +0 -0
  397. /package/lib/types/graph/{store → engine/store}/index.d.mts +0 -0
  398. /package/lib/types/graph/{validation → engine/validation}/GraphDefinitionValidator.d.cts +0 -0
  399. /package/lib/types/graph/{validation → engine/validation}/GraphDefinitionValidator.d.mts +0 -0
  400. /package/lib/types/graph/{validation → engine/validation}/GraphPortSchemaResolver.d.cts +0 -0
  401. /package/lib/types/graph/{validation → engine/validation}/GraphPortSchemaResolver.d.mts +0 -0
  402. /package/lib/types/graph/{validation → engine/validation}/GraphValueValidator.d.cts +0 -0
  403. /package/lib/types/graph/{validation → engine/validation}/GraphValueValidator.d.mts +0 -0
  404. /package/lib/types/graph/{validation → engine/validation}/index.d.cts +0 -0
  405. /package/lib/types/graph/{validation → engine/validation}/index.d.mts +0 -0
  406. /package/lib/types/graph/{nodes → shared/nodes}/agent.d.cts +0 -0
  407. /package/lib/types/graph/{nodes → shared/nodes}/agent.d.mts +0 -0
  408. /package/lib/types/graph/{nodes → shared/nodes}/base.d.cts +0 -0
  409. /package/lib/types/graph/{nodes → shared/nodes}/base.d.mts +0 -0
  410. /package/lib/types/graph/{nodes → shared/nodes}/category-styles.d.cts +0 -0
  411. /package/lib/types/graph/{nodes → shared/nodes}/category-styles.d.mts +0 -0
  412. /package/lib/types/graph/{nodes → shared/nodes}/flow-control.d.cts +0 -0
  413. /package/lib/types/graph/{nodes → shared/nodes}/flow-control.d.mts +0 -0
  414. /package/lib/types/graph/{nodes → shared/nodes}/index.d.cts +0 -0
  415. /package/lib/types/graph/{nodes → shared/nodes}/index.d.mts +0 -0
  416. /package/lib/types/graph/{nodes → shared/nodes}/triggers.d.cts +0 -0
  417. /package/lib/types/graph/{nodes → shared/nodes}/triggers.d.mts +0 -0
@@ -0,0 +1,7 @@
1
+ /**
2
+ * @module integrations/graph/snapshots
3
+ * @summary Graph execution snapshot mapping.
4
+ * @description Re-exports the snapshot patch mapper.
5
+ */
6
+ export * from "./GraphExecutionSnapshotMapper.js";
7
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvZ3JhcGgvZW5naW5lL3NuYXBzaG90cy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7OztHQUlHO0FBQ0gsa0RBQStDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbW9kdWxlIGludGVncmF0aW9ucy9ncmFwaC9zbmFwc2hvdHNcbiAqIEBzdW1tYXJ5IEdyYXBoIGV4ZWN1dGlvbiBzbmFwc2hvdCBtYXBwaW5nLlxuICogQGRlc2NyaXB0aW9uIFJlLWV4cG9ydHMgdGhlIHNuYXBzaG90IHBhdGNoIG1hcHBlci5cbiAqL1xuZXhwb3J0ICogZnJvbSBcIi4vR3JhcGhFeGVjdXRpb25TbmFwc2hvdE1hcHBlclwiO1xuIl19
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiR3JhcGhDYWNoZWRWYWx1ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9ncmFwaC9lbmdpbmUvc3RvcmUvR3JhcGhDYWNoZWRWYWx1ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbW9kdWxlIGludGVncmF0aW9ucy9ncmFwaC9zdG9yZS9HcmFwaENhY2hlZFZhbHVlXG4gKiBAc3VtbWFyeSBBIGNhY2hlZCBncmFwaCB2YWx1ZSB3aXRoIHBpbm5pbmcgbWV0YWRhdGEuXG4gKiBAZGVzY3JpcHRpb24gUmVwcmVzZW50cyBhIG5vZGUncyBvdXRwdXQgdGhhdCBoYXMgYmVlbiBjYWNoZWQgKGFuZCBvcHRpb25hbGx5IHBpbm5lZCkgaW4gdGhlIHZhbHVlIHN0b3JlLlxuICovXG5pbXBvcnQgdHlwZSB7IEdyYXBoRXhlY3V0aW9uVmFsdWVzIH0gZnJvbSBcIi4uL3R5cGVzXCI7XG5pbXBvcnQgdHlwZSB7IEdyYXBoVmFsdWVLZXkgfSBmcm9tIFwiLi9HcmFwaFZhbHVlS2V5XCI7XG5cbi8qKlxuICogQSB2YWx1ZSBzdG9yZWQgaW4gdGhlIGNhY2hlLCBpbmNsdWRpbmcgdGhlIG91dHB1dHMsIHBpbm5pbmcgc3RhdGUsIGFuZFxuICogdGltZXN0YW1wcyBmb3IgVFRMLWJhc2VkIGV4cGlyeS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBHcmFwaENhY2hlZFZhbHVlIHtcbiAga2V5OiBHcmFwaFZhbHVlS2V5O1xuICBvdXRwdXRzOiBHcmFwaEV4ZWN1dGlvblZhbHVlcztcbiAgcGlubmVkOiBib29sZWFuO1xuICBjcmVhdGVkQXQ6IHN0cmluZztcbiAgdXBkYXRlZEF0OiBzdHJpbmc7XG4gIGV4cGlyZXNBdD86IHN0cmluZztcbiAgbWV0YWRhdGE/OiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPjtcbn1cbiJdfQ==
@@ -0,0 +1,7 @@
1
+ /**
2
+ * @module integrations/graph/store/GraphValueKey
3
+ * @summary Stable key for cached graph values.
4
+ * @description Identifies a cached value in the store by workflow, node, fingerprint, and optional namespace/version.
5
+ */
6
+ export {};
7
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiR3JhcGhWYWx1ZUtleS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9ncmFwaC9lbmdpbmUvc3RvcmUvR3JhcGhWYWx1ZUtleS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7OztHQUlHIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbW9kdWxlIGludGVncmF0aW9ucy9ncmFwaC9zdG9yZS9HcmFwaFZhbHVlS2V5XG4gKiBAc3VtbWFyeSBTdGFibGUga2V5IGZvciBjYWNoZWQgZ3JhcGggdmFsdWVzLlxuICogQGRlc2NyaXB0aW9uIElkZW50aWZpZXMgYSBjYWNoZWQgdmFsdWUgaW4gdGhlIHN0b3JlIGJ5IHdvcmtmbG93LCBub2RlLCBmaW5nZXJwcmludCwgYW5kIG9wdGlvbmFsIG5hbWVzcGFjZS92ZXJzaW9uLlxuICovXG5cbi8qKlxuICogS2V5IHVzZWQgdG8gcmVhZC93cml0ZSBjYWNoZWQgdmFsdWVzIGluIGEge0BsaW5rIEdyYXBoVmFsdWVTdG9yZUFkYXB0ZXJ9LlxuICpcbiAqIFRoZSBgZmluZ2VycHJpbnRgIG11c3QgY2hhbmdlIHdoZW4gbWVhbmluZ2Z1bCBpbnB1dHMgb3IgZGVwZW5kZW5jaWVzIGNoYW5nZVxuICogc28gc3RhbGUgdmFsdWVzIGFyZSBuZXZlciBhY2NpZGVudGFsbHkgcmV1c2VkLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEdyYXBoVmFsdWVLZXkge1xuICB3b3JrZmxvd0lkOiBzdHJpbmc7XG4gIG5vZGVJZDogc3RyaW5nO1xuICBmaW5nZXJwcmludDogc3RyaW5nO1xuICBuYW1lc3BhY2U/OiBzdHJpbmc7XG4gIHZlcnNpb24/OiBzdHJpbmc7XG59XG4iXX0=
@@ -0,0 +1,71 @@
1
+ /**
2
+ * @module integrations/graph/store/GraphValueStore
3
+ * @summary Runtime value store wrapping a persistent adapter.
4
+ * @description Holds runtime values for the current execution in memory and delegates cached/pinned values to a {@link GraphValueStoreAdapter}.
5
+ */
6
+ import { GRAPH_WORKFLOW_BOUNDARY } from "./../constants.js";
7
+ /**
8
+ * Manages values during a single graph execution.
9
+ *
10
+ * Runtime values (workflow inputs, node outputs, workflow outputs) are kept in
11
+ * an in-memory map. Persistent cache and pinning operations are delegated to
12
+ * the configured {@link GraphValueStoreAdapter}.
13
+ */
14
+ export class GraphValueStore {
15
+ /**
16
+ * @param adapter - The persistent adapter for cached/pinned values.
17
+ */
18
+ constructor(adapter) {
19
+ this.adapter = adapter;
20
+ this.runtimeValues = new Map();
21
+ }
22
+ /** Seeds the workflow input values. */
23
+ seedWorkflowInputs(inputs) {
24
+ this.runtimeValues.set(GRAPH_WORKFLOW_BOUNDARY, { ...inputs });
25
+ }
26
+ /** Stores the outputs produced by a node. */
27
+ setNodeOutputs(nodeId, outputs) {
28
+ this.runtimeValues.set(nodeId, { ...outputs });
29
+ }
30
+ /** Reads a single port value from a node's stored outputs. */
31
+ getPort(nodeId, port) {
32
+ return this.runtimeValues.get(nodeId)?.[port];
33
+ }
34
+ /** Returns whether a node has a value for the given port. */
35
+ hasPort(nodeId, port) {
36
+ return Object.prototype.hasOwnProperty.call(this.runtimeValues.get(nodeId) ?? {}, port);
37
+ }
38
+ /** Sets a single workflow output port value. */
39
+ setWorkflowOutput(port, value) {
40
+ const current = this.runtimeValues.get(GRAPH_WORKFLOW_BOUNDARY) ?? {};
41
+ current[port] = value;
42
+ this.runtimeValues.set(GRAPH_WORKFLOW_BOUNDARY, current);
43
+ }
44
+ /** Returns all workflow-level values (inputs merged with outputs). */
45
+ getWorkflowValues() {
46
+ return {
47
+ ...(this.runtimeValues.get(GRAPH_WORKFLOW_BOUNDARY) ?? {}),
48
+ };
49
+ }
50
+ /** Reads a cached value from the adapter. */
51
+ async readCached(key) {
52
+ return this.adapter.read(key);
53
+ }
54
+ /** Writes a cached value through the adapter. */
55
+ async writeCached(key, value) {
56
+ await this.adapter.write(key, value);
57
+ }
58
+ /** Deletes a cached value through the adapter. */
59
+ async deleteCached(key) {
60
+ await this.adapter.delete(key);
61
+ }
62
+ /** Returns a snapshot of all runtime values. */
63
+ snapshot() {
64
+ return Object.fromEntries(this.runtimeValues.entries());
65
+ }
66
+ /** Returns the underlying adapter (used by the pinning service). */
67
+ getAdapter() {
68
+ return this.adapter;
69
+ }
70
+ }
71
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiR3JhcGhWYWx1ZVN0b3JlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2dyYXBoL2VuZ2luZS9zdG9yZS9HcmFwaFZhbHVlU3RvcmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7R0FJRztBQUNILE9BQU8sRUFBRSx1QkFBdUIsRUFBRSwwQkFBcUI7QUFNdkQ7Ozs7OztHQU1HO0FBQ0gsTUFBTSxPQUFPLGVBQWU7SUFHMUI7O09BRUc7SUFDSCxZQUE2QixPQUErQjtRQUEvQixZQUFPLEdBQVAsT0FBTyxDQUF3QjtRQUwzQyxrQkFBYSxHQUFHLElBQUksR0FBRyxFQUFnQyxDQUFDO0lBS1YsQ0FBQztJQUVoRSx1Q0FBdUM7SUFDdkMsa0JBQWtCLENBQUMsTUFBNEI7UUFDN0MsSUFBSSxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsdUJBQXVCLEVBQUUsRUFBRSxHQUFHLE1BQU0sRUFBRSxDQUFDLENBQUM7SUFDakUsQ0FBQztJQUVELDZDQUE2QztJQUM3QyxjQUFjLENBQUMsTUFBYyxFQUFFLE9BQTZCO1FBQzFELElBQUksQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUFDLE1BQU0sRUFBRSxFQUFFLEdBQUcsT0FBTyxFQUFFLENBQUMsQ0FBQztJQUNqRCxDQUFDO0lBRUQsOERBQThEO0lBQzlELE9BQU8sQ0FBQyxNQUFjLEVBQUUsSUFBWTtRQUNsQyxPQUFPLElBQUksQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDaEQsQ0FBQztJQUVELDZEQUE2RDtJQUM3RCxPQUFPLENBQUMsTUFBYyxFQUFFLElBQVk7UUFDbEMsT0FBTyxNQUFNLENBQUMsU0FBUyxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQ3pDLElBQUksQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsRUFDcEMsSUFBSSxDQUNMLENBQUM7SUFDSixDQUFDO0lBRUQsZ0RBQWdEO0lBQ2hELGlCQUFpQixDQUFDLElBQVksRUFBRSxLQUFjO1FBQzVDLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUFDLHVCQUF1QixDQUFDLElBQUksRUFBRSxDQUFDO1FBQ3RFLE9BQU8sQ0FBQyxJQUFJLENBQUMsR0FBRyxLQUFLLENBQUM7UUFDdEIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsdUJBQXVCLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDM0QsQ0FBQztJQUVELHNFQUFzRTtJQUN0RSxpQkFBaUI7UUFDZixPQUFPO1lBQ0wsR0FBRyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUFDLHVCQUF1QixDQUFDLElBQUksRUFBRSxDQUFDO1NBQzNELENBQUM7SUFDSixDQUFDO0lBRUQsNkNBQTZDO0lBQzdDLEtBQUssQ0FBQyxVQUFVLENBQUMsR0FBa0I7UUFDakMsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNoQyxDQUFDO0lBRUQsaURBQWlEO0lBQ2pELEtBQUssQ0FBQyxXQUFXLENBQUMsR0FBa0IsRUFBRSxLQUF1QjtRQUMzRCxNQUFNLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEdBQUcsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUN2QyxDQUFDO0lBRUQsa0RBQWtEO0lBQ2xELEtBQUssQ0FBQyxZQUFZLENBQUMsR0FBa0I7UUFDbkMsTUFBTSxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNqQyxDQUFDO0lBRUQsZ0RBQWdEO0lBQ2hELFFBQVE7UUFDTixPQUFPLE1BQU0sQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDO0lBQzFELENBQUM7SUFFRCxvRUFBb0U7SUFDcEUsVUFBVTtRQUNSLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQztJQUN0QixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBtb2R1bGUgaW50ZWdyYXRpb25zL2dyYXBoL3N0b3JlL0dyYXBoVmFsdWVTdG9yZVxuICogQHN1bW1hcnkgUnVudGltZSB2YWx1ZSBzdG9yZSB3cmFwcGluZyBhIHBlcnNpc3RlbnQgYWRhcHRlci5cbiAqIEBkZXNjcmlwdGlvbiBIb2xkcyBydW50aW1lIHZhbHVlcyBmb3IgdGhlIGN1cnJlbnQgZXhlY3V0aW9uIGluIG1lbW9yeSBhbmQgZGVsZWdhdGVzIGNhY2hlZC9waW5uZWQgdmFsdWVzIHRvIGEge0BsaW5rIEdyYXBoVmFsdWVTdG9yZUFkYXB0ZXJ9LlxuICovXG5pbXBvcnQgeyBHUkFQSF9XT1JLRkxPV19CT1VOREFSWSB9IGZyb20gXCIuLi9jb25zdGFudHNcIjtcbmltcG9ydCB0eXBlIHsgR3JhcGhFeGVjdXRpb25WYWx1ZXMgfSBmcm9tIFwiLi4vdHlwZXNcIjtcbmltcG9ydCB0eXBlIHsgR3JhcGhWYWx1ZVN0b3JlQWRhcHRlciB9IGZyb20gXCIuL0dyYXBoVmFsdWVTdG9yZUFkYXB0ZXJcIjtcbmltcG9ydCB0eXBlIHsgR3JhcGhWYWx1ZUtleSB9IGZyb20gXCIuL0dyYXBoVmFsdWVLZXlcIjtcbmltcG9ydCB0eXBlIHsgR3JhcGhDYWNoZWRWYWx1ZSB9IGZyb20gXCIuL0dyYXBoQ2FjaGVkVmFsdWVcIjtcblxuLyoqXG4gKiBNYW5hZ2VzIHZhbHVlcyBkdXJpbmcgYSBzaW5nbGUgZ3JhcGggZXhlY3V0aW9uLlxuICpcbiAqIFJ1bnRpbWUgdmFsdWVzICh3b3JrZmxvdyBpbnB1dHMsIG5vZGUgb3V0cHV0cywgd29ya2Zsb3cgb3V0cHV0cykgYXJlIGtlcHQgaW5cbiAqIGFuIGluLW1lbW9yeSBtYXAuIFBlcnNpc3RlbnQgY2FjaGUgYW5kIHBpbm5pbmcgb3BlcmF0aW9ucyBhcmUgZGVsZWdhdGVkIHRvXG4gKiB0aGUgY29uZmlndXJlZCB7QGxpbmsgR3JhcGhWYWx1ZVN0b3JlQWRhcHRlcn0uXG4gKi9cbmV4cG9ydCBjbGFzcyBHcmFwaFZhbHVlU3RvcmUge1xuICBwcml2YXRlIHJlYWRvbmx5IHJ1bnRpbWVWYWx1ZXMgPSBuZXcgTWFwPHN0cmluZywgR3JhcGhFeGVjdXRpb25WYWx1ZXM+KCk7XG5cbiAgLyoqXG4gICAqIEBwYXJhbSBhZGFwdGVyIC0gVGhlIHBlcnNpc3RlbnQgYWRhcHRlciBmb3IgY2FjaGVkL3Bpbm5lZCB2YWx1ZXMuXG4gICAqL1xuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IGFkYXB0ZXI6IEdyYXBoVmFsdWVTdG9yZUFkYXB0ZXIpIHt9XG5cbiAgLyoqIFNlZWRzIHRoZSB3b3JrZmxvdyBpbnB1dCB2YWx1ZXMuICovXG4gIHNlZWRXb3JrZmxvd0lucHV0cyhpbnB1dHM6IEdyYXBoRXhlY3V0aW9uVmFsdWVzKTogdm9pZCB7XG4gICAgdGhpcy5ydW50aW1lVmFsdWVzLnNldChHUkFQSF9XT1JLRkxPV19CT1VOREFSWSwgeyAuLi5pbnB1dHMgfSk7XG4gIH1cblxuICAvKiogU3RvcmVzIHRoZSBvdXRwdXRzIHByb2R1Y2VkIGJ5IGEgbm9kZS4gKi9cbiAgc2V0Tm9kZU91dHB1dHMobm9kZUlkOiBzdHJpbmcsIG91dHB1dHM6IEdyYXBoRXhlY3V0aW9uVmFsdWVzKTogdm9pZCB7XG4gICAgdGhpcy5ydW50aW1lVmFsdWVzLnNldChub2RlSWQsIHsgLi4ub3V0cHV0cyB9KTtcbiAgfVxuXG4gIC8qKiBSZWFkcyBhIHNpbmdsZSBwb3J0IHZhbHVlIGZyb20gYSBub2RlJ3Mgc3RvcmVkIG91dHB1dHMuICovXG4gIGdldFBvcnQobm9kZUlkOiBzdHJpbmcsIHBvcnQ6IHN0cmluZyk6IHVua25vd24ge1xuICAgIHJldHVybiB0aGlzLnJ1bnRpbWVWYWx1ZXMuZ2V0KG5vZGVJZCk/Lltwb3J0XTtcbiAgfVxuXG4gIC8qKiBSZXR1cm5zIHdoZXRoZXIgYSBub2RlIGhhcyBhIHZhbHVlIGZvciB0aGUgZ2l2ZW4gcG9ydC4gKi9cbiAgaGFzUG9ydChub2RlSWQ6IHN0cmluZywgcG9ydDogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChcbiAgICAgIHRoaXMucnVudGltZVZhbHVlcy5nZXQobm9kZUlkKSA/PyB7fSxcbiAgICAgIHBvcnRcbiAgICApO1xuICB9XG5cbiAgLyoqIFNldHMgYSBzaW5nbGUgd29ya2Zsb3cgb3V0cHV0IHBvcnQgdmFsdWUuICovXG4gIHNldFdvcmtmbG93T3V0cHV0KHBvcnQ6IHN0cmluZywgdmFsdWU6IHVua25vd24pOiB2b2lkIHtcbiAgICBjb25zdCBjdXJyZW50ID0gdGhpcy5ydW50aW1lVmFsdWVzLmdldChHUkFQSF9XT1JLRkxPV19CT1VOREFSWSkgPz8ge307XG4gICAgY3VycmVudFtwb3J0XSA9IHZhbHVlO1xuICAgIHRoaXMucnVudGltZVZhbHVlcy5zZXQoR1JBUEhfV09SS0ZMT1dfQk9VTkRBUlksIGN1cnJlbnQpO1xuICB9XG5cbiAgLyoqIFJldHVybnMgYWxsIHdvcmtmbG93LWxldmVsIHZhbHVlcyAoaW5wdXRzIG1lcmdlZCB3aXRoIG91dHB1dHMpLiAqL1xuICBnZXRXb3JrZmxvd1ZhbHVlcygpOiBHcmFwaEV4ZWN1dGlvblZhbHVlcyB7XG4gICAgcmV0dXJuIHtcbiAgICAgIC4uLih0aGlzLnJ1bnRpbWVWYWx1ZXMuZ2V0KEdSQVBIX1dPUktGTE9XX0JPVU5EQVJZKSA/PyB7fSksXG4gICAgfTtcbiAgfVxuXG4gIC8qKiBSZWFkcyBhIGNhY2hlZCB2YWx1ZSBmcm9tIHRoZSBhZGFwdGVyLiAqL1xuICBhc3luYyByZWFkQ2FjaGVkKGtleTogR3JhcGhWYWx1ZUtleSk6IFByb21pc2U8R3JhcGhDYWNoZWRWYWx1ZSB8IHVuZGVmaW5lZD4ge1xuICAgIHJldHVybiB0aGlzLmFkYXB0ZXIucmVhZChrZXkpO1xuICB9XG5cbiAgLyoqIFdyaXRlcyBhIGNhY2hlZCB2YWx1ZSB0aHJvdWdoIHRoZSBhZGFwdGVyLiAqL1xuICBhc3luYyB3cml0ZUNhY2hlZChrZXk6IEdyYXBoVmFsdWVLZXksIHZhbHVlOiBHcmFwaENhY2hlZFZhbHVlKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgYXdhaXQgdGhpcy5hZGFwdGVyLndyaXRlKGtleSwgdmFsdWUpO1xuICB9XG5cbiAgLyoqIERlbGV0ZXMgYSBjYWNoZWQgdmFsdWUgdGhyb3VnaCB0aGUgYWRhcHRlci4gKi9cbiAgYXN5bmMgZGVsZXRlQ2FjaGVkKGtleTogR3JhcGhWYWx1ZUtleSk6IFByb21pc2U8dm9pZD4ge1xuICAgIGF3YWl0IHRoaXMuYWRhcHRlci5kZWxldGUoa2V5KTtcbiAgfVxuXG4gIC8qKiBSZXR1cm5zIGEgc25hcHNob3Qgb2YgYWxsIHJ1bnRpbWUgdmFsdWVzLiAqL1xuICBzbmFwc2hvdCgpOiBSZWNvcmQ8c3RyaW5nLCBHcmFwaEV4ZWN1dGlvblZhbHVlcz4ge1xuICAgIHJldHVybiBPYmplY3QuZnJvbUVudHJpZXModGhpcy5ydW50aW1lVmFsdWVzLmVudHJpZXMoKSk7XG4gIH1cblxuICAvKiogUmV0dXJucyB0aGUgdW5kZXJseWluZyBhZGFwdGVyICh1c2VkIGJ5IHRoZSBwaW5uaW5nIHNlcnZpY2UpLiAqL1xuICBnZXRBZGFwdGVyKCk6IEdyYXBoVmFsdWVTdG9yZUFkYXB0ZXIge1xuICAgIHJldHVybiB0aGlzLmFkYXB0ZXI7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiR3JhcGhWYWx1ZVN0b3JlQWRhcHRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9ncmFwaC9lbmdpbmUvc3RvcmUvR3JhcGhWYWx1ZVN0b3JlQWRhcHRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbW9kdWxlIGludGVncmF0aW9ucy9ncmFwaC9zdG9yZS9HcmFwaFZhbHVlU3RvcmVBZGFwdGVyXG4gKiBAc3VtbWFyeSBBZGFwdGVyIGludGVyZmFjZSBmb3IgcGVyc2lzdGVudCBncmFwaCB2YWx1ZSBzdG9yYWdlLlxuICogQGRlc2NyaXB0aW9uIFVzZXJzIHByb3ZpZGUgaW1wbGVtZW50YXRpb25zIG9mIHRoaXMgaW50ZXJmYWNlIHRvIGNvbnRyb2wgd2hlcmUgY2FjaGVkL3Bpbm5lZCB2YWx1ZXMgbGl2ZSAoaW4tbWVtb3J5LCBkYXRhYmFzZSwgUmVkaXMsIGZpbGUsIGV0Yy4pLlxuICovXG5pbXBvcnQgdHlwZSB7IEdyYXBoRXhlY3V0aW9uVmFsdWVzIH0gZnJvbSBcIi4uL3R5cGVzXCI7XG5pbXBvcnQgdHlwZSB7IEdyYXBoVmFsdWVLZXkgfSBmcm9tIFwiLi9HcmFwaFZhbHVlS2V5XCI7XG5pbXBvcnQgdHlwZSB7IEdyYXBoQ2FjaGVkVmFsdWUgfSBmcm9tIFwiLi9HcmFwaENhY2hlZFZhbHVlXCI7XG5cbi8qKlxuICogQWRhcHRlciB0aGF0IHBlcnNpc3RzIGNhY2hlZCBhbmQgcGlubmVkIGdyYXBoIHZhbHVlcy5cbiAqXG4gKiBUaGUgZW5naW5lIG5ldmVyIGFzc3VtZXMgYSBzcGVjaWZpYyBzdG9yYWdlIGJhY2tlbmQ7IGl0IGFsd2F5cyBkZWxlZ2F0ZXMgdG9cbiAqIGFuIGFkYXB0ZXIuIFRoZSB7QGxpbmsgSW5NZW1vcnlHcmFwaFZhbHVlU3RvcmVBZGFwdGVyfSBpcyB0aGUgZGVmYXVsdC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBHcmFwaFZhbHVlU3RvcmVBZGFwdGVyIHtcbiAgLyoqIFJlYWRzIGEgY2FjaGVkIHZhbHVlIGZvciB0aGUgZ2l2ZW4ga2V5LiAqL1xuICByZWFkKGtleTogR3JhcGhWYWx1ZUtleSk6IFByb21pc2U8R3JhcGhDYWNoZWRWYWx1ZSB8IHVuZGVmaW5lZD47XG5cbiAgLyoqIFdyaXRlcyBhIGNhY2hlZCB2YWx1ZSBmb3IgdGhlIGdpdmVuIGtleS4gKi9cbiAgd3JpdGUoa2V5OiBHcmFwaFZhbHVlS2V5LCB2YWx1ZTogR3JhcGhDYWNoZWRWYWx1ZSk6IFByb21pc2U8dm9pZD47XG5cbiAgLyoqIERlbGV0ZXMgYSBjYWNoZWQgdmFsdWUgZm9yIHRoZSBnaXZlbiBrZXkuICovXG4gIGRlbGV0ZShrZXk6IEdyYXBoVmFsdWVLZXkpOiBQcm9taXNlPHZvaWQ+O1xuXG4gIC8qKiBSZXR1cm5zIHdoZXRoZXIgYSBjYWNoZWQgdmFsdWUgZXhpc3RzIGZvciB0aGUgZ2l2ZW4ga2V5LiAqL1xuICBoYXMoa2V5OiBHcmFwaFZhbHVlS2V5KTogUHJvbWlzZTxib29sZWFuPjtcblxuICAvKiogTGlzdHMgY2FjaGVkIHZhbHVlcyBtYXRjaGluZyBhIHByZWZpeCBvZiB0aGUga2V5LiAqL1xuICBsaXN0PyhwcmVmaXg6IFBhcnRpYWw8R3JhcGhWYWx1ZUtleT4pOiBQcm9taXNlPEdyYXBoQ2FjaGVkVmFsdWVbXT47XG5cbiAgLyoqIENsZWFycyBhbGwgY2FjaGVkIHZhbHVlcyBmb3IgYSBydW4uICovXG4gIGNsZWFyUnVuPyhydW5JZDogc3RyaW5nKTogUHJvbWlzZTx2b2lkPjtcblxuICAvKiogUmVhZHMgdGhlIHJ1bnRpbWUgdmFsdWVzIGZvciBhIG5vZGUgaW4gYSBydW4uICovXG4gIHJlYWRSdW50aW1lVmFsdWVzPyhcbiAgICBydW5JZDogc3RyaW5nLFxuICAgIG5vZGVJZDogc3RyaW5nXG4gICk6IFByb21pc2U8R3JhcGhFeGVjdXRpb25WYWx1ZXMgfCB1bmRlZmluZWQ+O1xuXG4gIC8qKiBXcml0ZXMgdGhlIHJ1bnRpbWUgdmFsdWVzIGZvciBhIG5vZGUgaW4gYSBydW4uICovXG4gIHdyaXRlUnVudGltZVZhbHVlcz8oXG4gICAgcnVuSWQ6IHN0cmluZyxcbiAgICBub2RlSWQ6IHN0cmluZyxcbiAgICB2YWx1ZXM6IEdyYXBoRXhlY3V0aW9uVmFsdWVzXG4gICk6IFByb21pc2U8dm9pZD47XG59XG4iXX0=
@@ -0,0 +1,64 @@
1
+ /**
2
+ * In-memory implementation of {@link GraphValueStoreAdapter}.
3
+ *
4
+ * Values are keyed by a serialized string combining namespace, workflowId,
5
+ * nodeId, version, and fingerprint.
6
+ */
7
+ export class InMemoryGraphValueStoreAdapter {
8
+ constructor() {
9
+ this.values = new Map();
10
+ }
11
+ /** @inheritDoc */
12
+ async read(key) {
13
+ return this.values.get(this.serializeKey(key));
14
+ }
15
+ /** @inheritDoc */
16
+ async write(key, value) {
17
+ this.values.set(this.serializeKey(key), value);
18
+ }
19
+ /** @inheritDoc */
20
+ async delete(key) {
21
+ this.values.delete(this.serializeKey(key));
22
+ }
23
+ /** @inheritDoc */
24
+ async has(key) {
25
+ return this.values.has(this.serializeKey(key));
26
+ }
27
+ /** @inheritDoc */
28
+ async list(prefix) {
29
+ const results = [];
30
+ for (const value of this.values.values()) {
31
+ const k = value.key;
32
+ if (prefix.workflowId !== undefined &&
33
+ k.workflowId !== prefix.workflowId)
34
+ continue;
35
+ if (prefix.nodeId !== undefined && k.nodeId !== prefix.nodeId)
36
+ continue;
37
+ if (prefix.namespace !== undefined &&
38
+ k.namespace !== prefix.namespace)
39
+ continue;
40
+ if (prefix.version !== undefined && k.version !== prefix.version)
41
+ continue;
42
+ results.push(value);
43
+ }
44
+ return results;
45
+ }
46
+ /** @inheritDoc */
47
+ async clearRun(runId) {
48
+ void runId;
49
+ this.values.clear();
50
+ }
51
+ /**
52
+ * Serializes a key into a stable string used as the Map key.
53
+ */
54
+ serializeKey(key) {
55
+ return [
56
+ key.namespace ?? "default",
57
+ key.workflowId,
58
+ key.nodeId,
59
+ key.version ?? "default",
60
+ key.fingerprint,
61
+ ].join(":");
62
+ }
63
+ }
64
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSW5NZW1vcnlHcmFwaFZhbHVlU3RvcmVBZGFwdGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2dyYXBoL2VuZ2luZS9zdG9yZS9Jbk1lbW9yeUdyYXBoVmFsdWVTdG9yZUFkYXB0ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBU0E7Ozs7O0dBS0c7QUFDSCxNQUFNLE9BQU8sOEJBQThCO0lBQTNDO1FBQ21CLFdBQU0sR0FBRyxJQUFJLEdBQUcsRUFBNEIsQ0FBQztJQStEaEUsQ0FBQztJQTdEQyxrQkFBa0I7SUFDbEIsS0FBSyxDQUFDLElBQUksQ0FBQyxHQUFrQjtRQUMzQixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztJQUNqRCxDQUFDO0lBRUQsa0JBQWtCO0lBQ2xCLEtBQUssQ0FBQyxLQUFLLENBQUMsR0FBa0IsRUFBRSxLQUF1QjtRQUNyRCxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQ2pELENBQUM7SUFFRCxrQkFBa0I7SUFDbEIsS0FBSyxDQUFDLE1BQU0sQ0FBQyxHQUFrQjtRQUM3QixJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7SUFDN0MsQ0FBQztJQUVELGtCQUFrQjtJQUNsQixLQUFLLENBQUMsR0FBRyxDQUFDLEdBQWtCO1FBQzFCLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO0lBQ2pELENBQUM7SUFFRCxrQkFBa0I7SUFDbEIsS0FBSyxDQUFDLElBQUksQ0FBQyxNQUE4QjtRQUN2QyxNQUFNLE9BQU8sR0FBdUIsRUFBRSxDQUFDO1FBQ3ZDLEtBQUssTUFBTSxLQUFLLElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUFDO1lBQ3pDLE1BQU0sQ0FBQyxHQUFHLEtBQUssQ0FBQyxHQUFHLENBQUM7WUFDcEIsSUFDRSxNQUFNLENBQUMsVUFBVSxLQUFLLFNBQVM7Z0JBQy9CLENBQUMsQ0FBQyxVQUFVLEtBQUssTUFBTSxDQUFDLFVBQVU7Z0JBRWxDLFNBQVM7WUFDWCxJQUFJLE1BQU0sQ0FBQyxNQUFNLEtBQUssU0FBUyxJQUFJLENBQUMsQ0FBQyxNQUFNLEtBQUssTUFBTSxDQUFDLE1BQU07Z0JBQUUsU0FBUztZQUN4RSxJQUNFLE1BQU0sQ0FBQyxTQUFTLEtBQUssU0FBUztnQkFDOUIsQ0FBQyxDQUFDLFNBQVMsS0FBSyxNQUFNLENBQUMsU0FBUztnQkFFaEMsU0FBUztZQUNYLElBQUksTUFBTSxDQUFDLE9BQU8sS0FBSyxTQUFTLElBQUksQ0FBQyxDQUFDLE9BQU8sS0FBSyxNQUFNLENBQUMsT0FBTztnQkFDOUQsU0FBUztZQUNYLE9BQU8sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDdEIsQ0FBQztRQUNELE9BQU8sT0FBTyxDQUFDO0lBQ2pCLENBQUM7SUFFRCxrQkFBa0I7SUFDbEIsS0FBSyxDQUFDLFFBQVEsQ0FBQyxLQUFhO1FBQzFCLEtBQUssS0FBSyxDQUFDO1FBQ1gsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUN0QixDQUFDO0lBRUQ7O09BRUc7SUFDSyxZQUFZLENBQUMsR0FBa0I7UUFDckMsT0FBTztZQUNMLEdBQUcsQ0FBQyxTQUFTLElBQUksU0FBUztZQUMxQixHQUFHLENBQUMsVUFBVTtZQUNkLEdBQUcsQ0FBQyxNQUFNO1lBQ1YsR0FBRyxDQUFDLE9BQU8sSUFBSSxTQUFTO1lBQ3hCLEdBQUcsQ0FBQyxXQUFXO1NBQ2hCLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ2QsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbW9kdWxlIGludGVncmF0aW9ucy9ncmFwaC9zdG9yZS9Jbk1lbW9yeUdyYXBoVmFsdWVTdG9yZUFkYXB0ZXJcbiAqIEBzdW1tYXJ5IERlZmF1bHQgaW4tbWVtb3J5IHZhbHVlIHN0b3JlIGFkYXB0ZXIuXG4gKiBAZGVzY3JpcHRpb24gU3RvcmVzIGFsbCBjYWNoZWQgdmFsdWVzIGluIGEgTWFwLiBTdWl0YWJsZSBmb3IgdGVzdGluZyBhbmQgc2luZ2xlLXByb2Nlc3MgZXhlY3V0aW9uLlxuICovXG5pbXBvcnQgdHlwZSB7IEdyYXBoVmFsdWVTdG9yZUFkYXB0ZXIgfSBmcm9tIFwiLi9HcmFwaFZhbHVlU3RvcmVBZGFwdGVyXCI7XG5pbXBvcnQgdHlwZSB7IEdyYXBoVmFsdWVLZXkgfSBmcm9tIFwiLi9HcmFwaFZhbHVlS2V5XCI7XG5pbXBvcnQgdHlwZSB7IEdyYXBoQ2FjaGVkVmFsdWUgfSBmcm9tIFwiLi9HcmFwaENhY2hlZFZhbHVlXCI7XG5cbi8qKlxuICogSW4tbWVtb3J5IGltcGxlbWVudGF0aW9uIG9mIHtAbGluayBHcmFwaFZhbHVlU3RvcmVBZGFwdGVyfS5cbiAqXG4gKiBWYWx1ZXMgYXJlIGtleWVkIGJ5IGEgc2VyaWFsaXplZCBzdHJpbmcgY29tYmluaW5nIG5hbWVzcGFjZSwgd29ya2Zsb3dJZCxcbiAqIG5vZGVJZCwgdmVyc2lvbiwgYW5kIGZpbmdlcnByaW50LlxuICovXG5leHBvcnQgY2xhc3MgSW5NZW1vcnlHcmFwaFZhbHVlU3RvcmVBZGFwdGVyIGltcGxlbWVudHMgR3JhcGhWYWx1ZVN0b3JlQWRhcHRlciB7XG4gIHByaXZhdGUgcmVhZG9ubHkgdmFsdWVzID0gbmV3IE1hcDxzdHJpbmcsIEdyYXBoQ2FjaGVkVmFsdWU+KCk7XG5cbiAgLyoqIEBpbmhlcml0RG9jICovXG4gIGFzeW5jIHJlYWQoa2V5OiBHcmFwaFZhbHVlS2V5KTogUHJvbWlzZTxHcmFwaENhY2hlZFZhbHVlIHwgdW5kZWZpbmVkPiB7XG4gICAgcmV0dXJuIHRoaXMudmFsdWVzLmdldCh0aGlzLnNlcmlhbGl6ZUtleShrZXkpKTtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdERvYyAqL1xuICBhc3luYyB3cml0ZShrZXk6IEdyYXBoVmFsdWVLZXksIHZhbHVlOiBHcmFwaENhY2hlZFZhbHVlKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgdGhpcy52YWx1ZXMuc2V0KHRoaXMuc2VyaWFsaXplS2V5KGtleSksIHZhbHVlKTtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdERvYyAqL1xuICBhc3luYyBkZWxldGUoa2V5OiBHcmFwaFZhbHVlS2V5KTogUHJvbWlzZTx2b2lkPiB7XG4gICAgdGhpcy52YWx1ZXMuZGVsZXRlKHRoaXMuc2VyaWFsaXplS2V5KGtleSkpO1xuICB9XG5cbiAgLyoqIEBpbmhlcml0RG9jICovXG4gIGFzeW5jIGhhcyhrZXk6IEdyYXBoVmFsdWVLZXkpOiBQcm9taXNlPGJvb2xlYW4+IHtcbiAgICByZXR1cm4gdGhpcy52YWx1ZXMuaGFzKHRoaXMuc2VyaWFsaXplS2V5KGtleSkpO1xuICB9XG5cbiAgLyoqIEBpbmhlcml0RG9jICovXG4gIGFzeW5jIGxpc3QocHJlZml4OiBQYXJ0aWFsPEdyYXBoVmFsdWVLZXk+KTogUHJvbWlzZTxHcmFwaENhY2hlZFZhbHVlW10+IHtcbiAgICBjb25zdCByZXN1bHRzOiBHcmFwaENhY2hlZFZhbHVlW10gPSBbXTtcbiAgICBmb3IgKGNvbnN0IHZhbHVlIG9mIHRoaXMudmFsdWVzLnZhbHVlcygpKSB7XG4gICAgICBjb25zdCBrID0gdmFsdWUua2V5O1xuICAgICAgaWYgKFxuICAgICAgICBwcmVmaXgud29ya2Zsb3dJZCAhPT0gdW5kZWZpbmVkICYmXG4gICAgICAgIGsud29ya2Zsb3dJZCAhPT0gcHJlZml4LndvcmtmbG93SWRcbiAgICAgIClcbiAgICAgICAgY29udGludWU7XG4gICAgICBpZiAocHJlZml4Lm5vZGVJZCAhPT0gdW5kZWZpbmVkICYmIGsubm9kZUlkICE9PSBwcmVmaXgubm9kZUlkKSBjb250aW51ZTtcbiAgICAgIGlmIChcbiAgICAgICAgcHJlZml4Lm5hbWVzcGFjZSAhPT0gdW5kZWZpbmVkICYmXG4gICAgICAgIGsubmFtZXNwYWNlICE9PSBwcmVmaXgubmFtZXNwYWNlXG4gICAgICApXG4gICAgICAgIGNvbnRpbnVlO1xuICAgICAgaWYgKHByZWZpeC52ZXJzaW9uICE9PSB1bmRlZmluZWQgJiYgay52ZXJzaW9uICE9PSBwcmVmaXgudmVyc2lvbilcbiAgICAgICAgY29udGludWU7XG4gICAgICByZXN1bHRzLnB1c2godmFsdWUpO1xuICAgIH1cbiAgICByZXR1cm4gcmVzdWx0cztcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdERvYyAqL1xuICBhc3luYyBjbGVhclJ1bihydW5JZDogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgdm9pZCBydW5JZDtcbiAgICB0aGlzLnZhbHVlcy5jbGVhcigpO1xuICB9XG5cbiAgLyoqXG4gICAqIFNlcmlhbGl6ZXMgYSBrZXkgaW50byBhIHN0YWJsZSBzdHJpbmcgdXNlZCBhcyB0aGUgTWFwIGtleS5cbiAgICovXG4gIHByaXZhdGUgc2VyaWFsaXplS2V5KGtleTogR3JhcGhWYWx1ZUtleSk6IHN0cmluZyB7XG4gICAgcmV0dXJuIFtcbiAgICAgIGtleS5uYW1lc3BhY2UgPz8gXCJkZWZhdWx0XCIsXG4gICAgICBrZXkud29ya2Zsb3dJZCxcbiAgICAgIGtleS5ub2RlSWQsXG4gICAgICBrZXkudmVyc2lvbiA/PyBcImRlZmF1bHRcIixcbiAgICAgIGtleS5maW5nZXJwcmludCxcbiAgICBdLmpvaW4oXCI6XCIpO1xuICB9XG59XG4iXX0=
@@ -0,0 +1,11 @@
1
+ /**
2
+ * @module integrations/graph/store
3
+ * @summary Graph value store, adapter, and key types.
4
+ * @description Re-exports the value store adapter interface, in-memory default, key/cached-value types, and the runtime store wrapper.
5
+ */
6
+ export * from "./GraphValueKey.js";
7
+ export * from "./GraphCachedValue.js";
8
+ export * from "./GraphValueStoreAdapter.js";
9
+ export * from "./InMemoryGraphValueStoreAdapter.js";
10
+ export * from "./GraphValueStore.js";
11
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvZ3JhcGgvZW5naW5lL3N0b3JlL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7O0dBSUc7QUFDSCxtQ0FBZ0M7QUFDaEMsc0NBQW1DO0FBQ25DLDRDQUF5QztBQUN6QyxvREFBaUQ7QUFDakQscUNBQWtDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbW9kdWxlIGludGVncmF0aW9ucy9ncmFwaC9zdG9yZVxuICogQHN1bW1hcnkgR3JhcGggdmFsdWUgc3RvcmUsIGFkYXB0ZXIsIGFuZCBrZXkgdHlwZXMuXG4gKiBAZGVzY3JpcHRpb24gUmUtZXhwb3J0cyB0aGUgdmFsdWUgc3RvcmUgYWRhcHRlciBpbnRlcmZhY2UsIGluLW1lbW9yeSBkZWZhdWx0LCBrZXkvY2FjaGVkLXZhbHVlIHR5cGVzLCBhbmQgdGhlIHJ1bnRpbWUgc3RvcmUgd3JhcHBlci5cbiAqL1xuZXhwb3J0ICogZnJvbSBcIi4vR3JhcGhWYWx1ZUtleVwiO1xuZXhwb3J0ICogZnJvbSBcIi4vR3JhcGhDYWNoZWRWYWx1ZVwiO1xuZXhwb3J0ICogZnJvbSBcIi4vR3JhcGhWYWx1ZVN0b3JlQWRhcHRlclwiO1xuZXhwb3J0ICogZnJvbSBcIi4vSW5NZW1vcnlHcmFwaFZhbHVlU3RvcmVBZGFwdGVyXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9HcmFwaFZhbHVlU3RvcmVcIjtcbiJdfQ==
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvZ3JhcGgvZW5naW5lL3R5cGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBtb2R1bGUgaW50ZWdyYXRpb25zL2dyYXBoL2VuZ2luZS90eXBlc1xuICogQHN1bW1hcnkgR3JhcGggZXhlY3V0aW9uIGVuZ2luZSBjb3JlIHR5cGVzLlxuICogQGRlc2NyaXB0aW9uIEVuZ2luZS1wcml2YXRlIHR5cGUgYWxpYXNlcyBhbmQgaW50ZXJmYWNlcy4gRnJvbnRlbmQtc2FmZVxuICogdHlwZXMgKGBFeHByVmFsdWVgLCBgQ29uZGl0aW9uRXhwcmVzc2lvbmAsIGBDb2RlQ29uZGl0aW9uYCxcbiAqIGBTd2l0Y2hDYXNlQ29uZGl0aW9uYCwgYFN3aXRjaENhc2VgLCBgU3dpdGNoTm9kZU1ldGFkYXRhYCxcbiAqIGBOb2RlTWV0YWRhdGFDaGFuZ2VgKSBsaXZlIGluIGAuLi9zaGFyZWQvdHlwZXNgOyBlbmdpbmUgbW9kdWxlcyBpbXBvcnRcbiAqIHNoYXJlZCBzeW1ib2xzIGZyb20gdGhlcmUgYW5kIGVuZ2luZS1wcml2YXRlIHN5bWJvbHMgZnJvbSBoZXJlLlxuICovXG5pbXBvcnQgdHlwZSB7XG4gIEdyYXBoTm9kZURlZmluaXRpb24sXG4gIEdyYXBoV29ya2Zsb3dEZWZpbml0aW9uLFxufSBmcm9tIFwiQGRlY2FmLXRzL3VpLWRlY29yYXRvcnMvZ3JhcGhcIjtcblxuaW1wb3J0IHR5cGUge1xuICBHcmFwaEV4ZWN1dGlvbkV2ZW50VHlwZSxcbiAgR3JhcGhFeGVjdXRpb25TdGF0dXMsXG59IGZyb20gXCIuLi9zaGFyZWQvY29uc3RhbnRzXCI7XG5cbi8qKlxuICogVW5pcXVlIGlkZW50aWZpZXIgZm9yIGEgc2luZ2xlIGdyYXBoIGV4ZWN1dGlvbiBydW4uXG4gKi9cbmV4cG9ydCB0eXBlIEdyYXBoUnVuSWQgPSBzdHJpbmc7XG5cbi8qKlxuICogSWRlbnRpZmllciBmb3IgYSB3b3JrZmxvdyBkZWZpbml0aW9uLlxuICovXG5leHBvcnQgdHlwZSBHcmFwaFdvcmtmbG93SWQgPSBzdHJpbmc7XG5cbi8qKlxuICogSWRlbnRpZmllciBmb3IgYSBub2RlIHdpdGhpbiBhIHdvcmtmbG93LlxuICovXG5leHBvcnQgdHlwZSBHcmFwaE5vZGVJZCA9IHN0cmluZztcblxuLyoqXG4gKiBOYW1lIG9mIGEgcG9ydCBvbiBhIG5vZGUgb3Igd29ya2Zsb3cgYm91bmRhcnkuXG4gKi9cbmV4cG9ydCB0eXBlIEdyYXBoUG9ydE5hbWUgPSBzdHJpbmc7XG5cbi8qKlxuICogQSBiYWcgb2YgbmFtZWQgdmFsdWVzIGV4Y2hhbmdlZCBiZXR3ZWVuIG5vZGVzIGFuZCB0aGUgd29ya2Zsb3cgYm91bmRhcnkuXG4gKi9cbmV4cG9ydCB0eXBlIEdyYXBoRXhlY3V0aW9uVmFsdWVzID0gUmVjb3JkPHN0cmluZywgdW5rbm93bj47XG5cbi8qKlxuICogT3B0aW9ucyB0aGF0IGluZmx1ZW5jZSBhIHNpbmdsZSBleGVjdXRpb24gb2YgYSB3b3JrZmxvdy5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBHcmFwaEV4ZWN1dGlvbk9wdGlvbnMge1xuICBydW5JZD86IEdyYXBoUnVuSWQ7XG4gIHBhcmVudFJ1bklkPzogR3JhcGhSdW5JZDtcbiAgd29ya2Zsb3dJZD86IEdyYXBoV29ya2Zsb3dJZDtcbiAgcGF0aD86IHN0cmluZ1tdO1xuICBjb25jdXJyZW5jeT86IG51bWJlcjtcbiAgZmFpbEZhc3Q/OiBib29sZWFuO1xuICB2YWxpZGF0ZUlucHV0cz86IGJvb2xlYW47XG4gIHZhbGlkYXRlT3V0cHV0cz86IGJvb2xlYW47XG4gIG1heExvb3BJdGVyYXRpb25zPzogbnVtYmVyO1xuICBtYXhGb3JlYWNoSXRlcmF0aW9ucz86IG51bWJlcjtcbiAgdXNlUGlubmVkVmFsdWVzPzogYm9vbGVhbjtcbiAgd3JpdGVUaHJvdWdoQ2FjaGU/OiBib29sZWFuO1xuICBtZXRhZGF0YT86IFJlY29yZDxzdHJpbmcsIHVua25vd24+O1xufVxuXG4vKipcbiAqIFNlcmlhbGl6ZWQgZXJyb3IgcGF5bG9hZCBpbmNsdWRlZCBpbiBleGVjdXRpb24gZXZlbnRzIGFuZCByZXN1bHRzLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEdyYXBoRXhlY3V0aW9uRXJyb3JQYXlsb2FkIHtcbiAgbmFtZTogc3RyaW5nO1xuICBtZXNzYWdlOiBzdHJpbmc7XG4gIHN0YWNrPzogc3RyaW5nO1xuICBjb2RlPzogc3RyaW5nO1xuICBkZXRhaWxzPzogdW5rbm93bjtcbn1cblxuLyoqXG4gKiBBIHNpbmdsZSBldmVudCBlbWl0dGVkIGR1cmluZyBncmFwaCBleGVjdXRpb24uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgR3JhcGhFeGVjdXRpb25FdmVudCB7XG4gIGlkOiBzdHJpbmc7XG4gIHNlcXVlbmNlOiBudW1iZXI7XG4gIHJ1bklkOiBHcmFwaFJ1bklkO1xuICBwYXJlbnRSdW5JZD86IEdyYXBoUnVuSWQ7XG4gIHdvcmtmbG93SWQ6IEdyYXBoV29ya2Zsb3dJZDtcbiAgdHlwZTogR3JhcGhFeGVjdXRpb25FdmVudFR5cGU7XG4gIHRpbWVzdGFtcDogRGF0ZTtcblxuICBub2RlSWQ/OiBHcmFwaE5vZGVJZDtcbiAgZWRnZUlkPzogc3RyaW5nO1xuICBwb3J0PzogR3JhcGhQb3J0TmFtZTtcbiAgaXRlcmF0aW9uPzogbnVtYmVyO1xuICBwYXRoOiBzdHJpbmdbXTtcblxuICBzdGF0dXM/OiBHcmFwaEV4ZWN1dGlvblN0YXR1cztcbiAgcGF5bG9hZD86IHVua25vd247XG4gIGVycm9yPzogR3JhcGhFeGVjdXRpb25FcnJvclBheWxvYWQ7XG4gIG1ldGFkYXRhPzogUmVjb3JkPHN0cmluZywgdW5rbm93bj47XG59XG5cbi8qKlxuICogUmVzdWx0IG9mIGV4ZWN1dGluZyBhIHNpbmdsZSBub2RlLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEdyYXBoTm9kZUV4ZWN1dGlvblJlc3VsdCB7XG4gIG5vZGVJZDogR3JhcGhOb2RlSWQ7XG4gIHN0YXR1czogR3JhcGhFeGVjdXRpb25TdGF0dXM7XG4gIGlucHV0czogR3JhcGhFeGVjdXRpb25WYWx1ZXM7XG4gIG91dHB1dHM/OiBHcmFwaEV4ZWN1dGlvblZhbHVlcztcbiAgZXJyb3I/OiBHcmFwaEV4ZWN1dGlvbkVycm9yUGF5bG9hZDtcbiAgc3RhcnRlZEF0OiBEYXRlO1xuICBmaW5pc2hlZEF0PzogRGF0ZTtcbiAgZnJvbUNhY2hlPzogYm9vbGVhbjtcbiAgcGlubmVkPzogYm9vbGVhbjtcbiAgZXZlbnRzOiBHcmFwaEV4ZWN1dGlvbkV2ZW50W107XG59XG5cbi8qKlxuICogUmVzdWx0IG9mIGV4ZWN1dGluZyBhbiBlbnRpcmUgd29ya2Zsb3cuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgR3JhcGhFeGVjdXRpb25SZXN1bHQge1xuICBydW5JZDogR3JhcGhSdW5JZDtcbiAgcGFyZW50UnVuSWQ/OiBHcmFwaFJ1bklkO1xuICB3b3JrZmxvd0lkOiBHcmFwaFdvcmtmbG93SWQ7XG4gIHN0YXR1czogR3JhcGhFeGVjdXRpb25TdGF0dXM7XG4gIHdvcmtmbG93OiBHcmFwaFdvcmtmbG93RGVmaW5pdGlvbjtcbiAgaW5wdXRzOiBHcmFwaEV4ZWN1dGlvblZhbHVlcztcbiAgb3V0cHV0czogR3JhcGhFeGVjdXRpb25WYWx1ZXM7XG4gIG5vZGVSZXN1bHRzOiBSZWNvcmQ8R3JhcGhOb2RlSWQsIEdyYXBoTm9kZUV4ZWN1dGlvblJlc3VsdD47XG4gIGV2ZW50czogR3JhcGhFeGVjdXRpb25FdmVudFtdO1xuICBzdGFydGVkQXQ6IERhdGU7XG4gIGZpbmlzaGVkQXQ/OiBEYXRlO1xuICBtZXRhZGF0YT86IFJlY29yZDxzdHJpbmcsIHVua25vd24+O1xufVxuXG4vKipcbiAqIE9wdGlvbnMgdXNlZCB0byBjb25zdHJ1Y3QgYSB7QGxpbmsgR3JhcGhFeGVjdXRpb25Db250ZXh0fS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBHcmFwaEV4ZWN1dGlvbkNvbnRleHRPcHRpb25zIHtcbiAgcnVuSWQ6IEdyYXBoUnVuSWQ7XG4gIHBhcmVudFJ1bklkPzogR3JhcGhSdW5JZDtcbiAgd29ya2Zsb3c6IEdyYXBoV29ya2Zsb3dEZWZpbml0aW9uO1xuICBub2RlOiBHcmFwaE5vZGVEZWZpbml0aW9uO1xuICBwYXRoOiBzdHJpbmdbXTtcbiAgbWV0YWRhdGE/OiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPjtcbn1cblxuLyoqXG4gKiBNZXRhZGF0YSBkZXNjcmliaW5nIGEgbG9vcCBub2RlJ3MgYmVoYXZpb3VyLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEdyYXBoTG9vcE1ldGFkYXRhIHtcbiAgYm9keTogR3JhcGhXb3JrZmxvd0RlZmluaXRpb24gfCB1bmtub3duO1xuICBtYXhJdGVyYXRpb25zPzogbnVtYmVyO1xuICB0aW1lb3V0TXM/OiBudW1iZXI7XG4gIGNvbmRpdGlvbj86IEdyYXBoQ29uZGl0aW9uRGVmaW5pdGlvbjtcbiAgY29uY3VycmVuY3k/OiBudW1iZXI7XG4gIGlucHV0UG9ydD86IHN0cmluZztcbiAgb3V0cHV0UG9ydD86IHN0cmluZztcbiAgaXRlbVBvcnQ/OiBzdHJpbmc7XG4gIHJlc3VsdFBvcnQ/OiBzdHJpbmc7XG4gIHN0YXRlUG9ydD86IHN0cmluZztcbn1cblxuLyoqXG4gKiBEZWZpbml0aW9uIG9mIGEgY29uZGl0aW9uIGV2YWx1YXRlZCBieSB0aGUgbG9vcCBjb25kaXRpb24gZXZhbHVhdG9yLlxuICpcbiAqIFdoZW4gdGhlIGNvbmRpdGlvbiBvYmplY3QgY2FycmllcyBhbiBgb3BgIGZpZWxkIChzZWUge0BsaW5rIENvbmRpdGlvbkV4cHJlc3Npb259KSxcbiAqIHRoZSB7QGxpbmsgR3JhcGhDb25kaXRpb25FdmFsdWF0b3J9IGRpc3BhdGNoZXMgdG8gdGhlIHtAbGluayBDb25kaXRpb25FeHByZXNzaW9uRXZhbHVhdG9yfVxuICogaW5zdGVhZCBvZiB0aGUgYnVpbHQtaW4gYHR5cGVgLWJhc2VkIHN3aXRjaC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBHcmFwaENvbmRpdGlvbkRlZmluaXRpb24ge1xuICB0eXBlOlxuICAgIHwgXCJ0cnV0aHlcIlxuICAgIHwgXCJmYWxzeVwiXG4gICAgfCBcImVxdWFsc1wiXG4gICAgfCBcIm5vdEVxdWFsc1wiXG4gICAgfCBcImdyZWF0ZXJUaGFuXCJcbiAgICB8IFwiZ3JlYXRlclRoYW5PckVxdWFsXCJcbiAgICB8IFwibGVzc1RoYW5cIlxuICAgIHwgXCJsZXNzVGhhbk9yRXF1YWxcIlxuICAgIHwgXCJleGlzdHNcIlxuICAgIHwgXCJjdXN0b21cIjtcbiAgbGVmdD86IHN0cmluZztcbiAgcmlnaHQ/OiB1bmtub3duO1xuICBldmFsdWF0b3I/OiBzdHJpbmc7XG4gIG1ldGFkYXRhPzogUmVjb3JkPHN0cmluZywgdW5rbm93bj47XG59XG5cbi8qKlxuICogUGlubmluZyBtZXRhZGF0YSBhdHRhY2hlZCB0byBhIG5vZGUgdmlhIGBAcGlubmFibGUoKWAuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgR3JhcGhQaW5uaW5nTWV0YWRhdGEge1xuICBlbmFibGVkOiBib29sZWFuO1xuICB0dGxNcz86IG51bWJlcjtcbiAgc3RyYXRlZ3k6IFwibWFudWFsXCIgfCBcImF1dG9tYXRpY1wiIHwgXCJkaXNhYmxlZFwiO1xuICBpbmNsdWRlRGVwZW5kZW5jaWVzOiBib29sZWFuO1xuICBtZXRhZGF0YT86IFJlY29yZDxzdHJpbmcsIHVua25vd24+O1xufVxuXG4vKipcbiAqIE9wdGlvbnMgZm9yIHBpbm5pbmcgYSBub2RlIGFmdGVyIGEgY29tcGxldGVkIHJ1bi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBHcmFwaFBpbk5vZGVPcHRpb25zIHtcbiAgd29ya2Zsb3c6IEdyYXBoV29ya2Zsb3dEZWZpbml0aW9uO1xuICBwbGFuOiB1bmtub3duO1xuICByZXN1bHQ6IEdyYXBoRXhlY3V0aW9uUmVzdWx0O1xuICBub2RlSWQ6IHN0cmluZztcbiAgaW5jbHVkZURlcGVuZGVuY2llcz86IGJvb2xlYW47XG4gIG5hbWVzcGFjZT86IHN0cmluZztcbn1cblxuLyoqXG4gKiBPcHRpb25zIGZvciB1bnBpbm5pbmcgYSBub2RlLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEdyYXBoVW5waW5Ob2RlT3B0aW9ucyB7XG4gIHdvcmtmbG93OiBHcmFwaFdvcmtmbG93RGVmaW5pdGlvbjtcbiAgbm9kZUlkOiBzdHJpbmc7XG4gIGZpbmdlcnByaW50OiBzdHJpbmc7XG4gIG5hbWVzcGFjZT86IHN0cmluZztcbn1cblxuLyoqXG4gKiBBIHBhdGNoIGFwcGxpZWQgdG8gYSBncmFwaCB3b3JrZmxvdyBzbmFwc2hvdCBhZnRlciBleGVjdXRpb24uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgR3JhcGhFeGVjdXRpb25TbmFwc2hvdFBhdGNoIHtcbiAgcnVuSWQ6IHN0cmluZztcbiAgc3RhdHVzOiBHcmFwaEV4ZWN1dGlvblN0YXR1cztcbiAgbm9kZXM6IFJlY29yZDxcbiAgICBzdHJpbmcsXG4gICAge1xuICAgICAgc3RhdHVzOiBHcmFwaEV4ZWN1dGlvblN0YXR1cztcbiAgICAgIHN0YXJ0ZWRBdD86IHN0cmluZztcbiAgICAgIGZpbmlzaGVkQXQ/OiBzdHJpbmc7XG4gICAgICBlcnJvcj86IEdyYXBoRXhlY3V0aW9uRXJyb3JQYXlsb2FkO1xuICAgICAgb3V0cHV0cz86IFJlY29yZDxzdHJpbmcsIHVua25vd24+O1xuICAgICAgZnJvbUNhY2hlPzogYm9vbGVhbjtcbiAgICAgIHBpbm5lZD86IGJvb2xlYW47XG4gICAgfVxuICA+O1xuICBlZGdlczogUmVjb3JkPFxuICAgIHN0cmluZyxcbiAgICB7XG4gICAgICBzdGF0dXM6IEdyYXBoRXhlY3V0aW9uU3RhdHVzO1xuICAgICAgbGFzdFZhbHVlPzogdW5rbm93bjtcbiAgICAgIHVwZGF0ZWRBdDogc3RyaW5nO1xuICAgIH1cbiAgPjtcbiAgb3V0cHV0czogUmVjb3JkPHN0cmluZywgdW5rbm93bj47XG4gIGV2ZW50czogR3JhcGhFeGVjdXRpb25FdmVudFtdO1xufVxuIl19
@@ -0,0 +1,28 @@
1
+ import { GraphInputError } from "./../errors/GraphInputError.js";
2
+ import { GraphExecutionPlanner } from "./../planning/GraphExecutionPlanner.js";
3
+ /**
4
+ * Validates a {@link GraphWorkflowDefinition} before execution.
5
+ */
6
+ export class GraphDefinitionValidator {
7
+ constructor(planner) {
8
+ this.planner = planner ?? new GraphExecutionPlanner();
9
+ }
10
+ /**
11
+ * Validates the workflow definition.
12
+ *
13
+ * @throws {GraphInputError} when the workflow has no name or invalid structure.
14
+ * @throws {GraphCycleError} when the workflow contains an unsupported cycle.
15
+ */
16
+ validate(workflow) {
17
+ if (!workflow.name) {
18
+ throw new GraphInputError("Workflow must have a name");
19
+ }
20
+ const nodeIds = new Set((workflow.nodes ?? []).map((n) => n.id));
21
+ if (nodeIds.size !== (workflow.nodes ?? []).length) {
22
+ throw new GraphInputError("Workflow node IDs must be unique");
23
+ }
24
+ // The planner performs full topology validation (endpoints, ports, cycles)
25
+ this.planner.plan(workflow);
26
+ }
27
+ }
28
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiR3JhcGhEZWZpbml0aW9uVmFsaWRhdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2dyYXBoL2VuZ2luZS92YWxpZGF0aW9uL0dyYXBoRGVmaW5pdGlvblZhbGlkYXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFPQSxPQUFPLEVBQUUsZUFBZSxFQUFFLHVDQUFrQztBQUM1RCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsK0NBQTBDO0FBRTFFOztHQUVHO0FBQ0gsTUFBTSxPQUFPLHdCQUF3QjtJQUduQyxZQUFZLE9BQStCO1FBQ3pDLElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxJQUFJLElBQUkscUJBQXFCLEVBQUUsQ0FBQztJQUN4RCxDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSCxRQUFRLENBQUMsUUFBaUM7UUFDeEMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUNuQixNQUFNLElBQUksZUFBZSxDQUFDLDJCQUEyQixDQUFDLENBQUM7UUFDekQsQ0FBQztRQUVELE1BQU0sT0FBTyxHQUFHLElBQUksR0FBRyxDQUFDLENBQUMsUUFBUSxDQUFDLEtBQUssSUFBSSxFQUFFLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQ2pFLElBQUksT0FBTyxDQUFDLElBQUksS0FBSyxDQUFDLFFBQVEsQ0FBQyxLQUFLLElBQUksRUFBRSxDQUFDLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDbkQsTUFBTSxJQUFJLGVBQWUsQ0FBQyxrQ0FBa0MsQ0FBQyxDQUFDO1FBQ2hFLENBQUM7UUFFRCwyRUFBMkU7UUFDM0UsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDOUIsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbW9kdWxlIGludGVncmF0aW9ucy9ncmFwaC92YWxpZGF0aW9uL0dyYXBoRGVmaW5pdGlvblZhbGlkYXRvclxuICogQHN1bW1hcnkgVmFsaWRhdGVzIGdyYXBoIHdvcmtmbG93IGRlZmluaXRpb25zIGJlZm9yZSBleGVjdXRpb24uXG4gKiBAZGVzY3JpcHRpb24gQ2hlY2tzIHdvcmtmbG93IHN0cnVjdHVyZSwgbm9kZSBJRHMsIHJlbGF0aW9uIGVuZHBvaW50cy9wb3J0cywgcmVxdWlyZWQgcG9ydCBzb3VyY2VzLCBjeWNsZXMsIGFuZCBsb29wIG1ldGFkYXRhLlxuICovXG5pbXBvcnQgdHlwZSB7IEdyYXBoV29ya2Zsb3dEZWZpbml0aW9uIH0gZnJvbSBcIkBkZWNhZi10cy91aS1kZWNvcmF0b3JzL2dyYXBoXCI7XG5cbmltcG9ydCB7IEdyYXBoSW5wdXRFcnJvciB9IGZyb20gXCIuLi9lcnJvcnMvR3JhcGhJbnB1dEVycm9yXCI7XG5pbXBvcnQgeyBHcmFwaEV4ZWN1dGlvblBsYW5uZXIgfSBmcm9tIFwiLi4vcGxhbm5pbmcvR3JhcGhFeGVjdXRpb25QbGFubmVyXCI7XG5cbi8qKlxuICogVmFsaWRhdGVzIGEge0BsaW5rIEdyYXBoV29ya2Zsb3dEZWZpbml0aW9ufSBiZWZvcmUgZXhlY3V0aW9uLlxuICovXG5leHBvcnQgY2xhc3MgR3JhcGhEZWZpbml0aW9uVmFsaWRhdG9yIHtcbiAgcHJpdmF0ZSByZWFkb25seSBwbGFubmVyOiBHcmFwaEV4ZWN1dGlvblBsYW5uZXI7XG5cbiAgY29uc3RydWN0b3IocGxhbm5lcj86IEdyYXBoRXhlY3V0aW9uUGxhbm5lcikge1xuICAgIHRoaXMucGxhbm5lciA9IHBsYW5uZXIgPz8gbmV3IEdyYXBoRXhlY3V0aW9uUGxhbm5lcigpO1xuICB9XG5cbiAgLyoqXG4gICAqIFZhbGlkYXRlcyB0aGUgd29ya2Zsb3cgZGVmaW5pdGlvbi5cbiAgICpcbiAgICogQHRocm93cyB7R3JhcGhJbnB1dEVycm9yfSB3aGVuIHRoZSB3b3JrZmxvdyBoYXMgbm8gbmFtZSBvciBpbnZhbGlkIHN0cnVjdHVyZS5cbiAgICogQHRocm93cyB7R3JhcGhDeWNsZUVycm9yfSB3aGVuIHRoZSB3b3JrZmxvdyBjb250YWlucyBhbiB1bnN1cHBvcnRlZCBjeWNsZS5cbiAgICovXG4gIHZhbGlkYXRlKHdvcmtmbG93OiBHcmFwaFdvcmtmbG93RGVmaW5pdGlvbik6IHZvaWQge1xuICAgIGlmICghd29ya2Zsb3cubmFtZSkge1xuICAgICAgdGhyb3cgbmV3IEdyYXBoSW5wdXRFcnJvcihcIldvcmtmbG93IG11c3QgaGF2ZSBhIG5hbWVcIik7XG4gICAgfVxuXG4gICAgY29uc3Qgbm9kZUlkcyA9IG5ldyBTZXQoKHdvcmtmbG93Lm5vZGVzID8/IFtdKS5tYXAoKG4pID0+IG4uaWQpKTtcbiAgICBpZiAobm9kZUlkcy5zaXplICE9PSAod29ya2Zsb3cubm9kZXMgPz8gW10pLmxlbmd0aCkge1xuICAgICAgdGhyb3cgbmV3IEdyYXBoSW5wdXRFcnJvcihcIldvcmtmbG93IG5vZGUgSURzIG11c3QgYmUgdW5pcXVlXCIpO1xuICAgIH1cblxuICAgIC8vIFRoZSBwbGFubmVyIHBlcmZvcm1zIGZ1bGwgdG9wb2xvZ3kgdmFsaWRhdGlvbiAoZW5kcG9pbnRzLCBwb3J0cywgY3ljbGVzKVxuICAgIHRoaXMucGxhbm5lci5wbGFuKHdvcmtmbG93KTtcbiAgfVxufVxuIl19
@@ -0,0 +1,53 @@
1
+ /**
2
+ * Resolves a {@link GraphPortDefinition} to a Zod schema (or a lightweight
3
+ * validation function when Zod is not available).
4
+ *
5
+ * This implementation uses primitive type mapping. When the port's `model`
6
+ * field or underlying Decaf metadata references a `Model` class, consumers
7
+ * should use `modelToZod` from `@decaf-ts/as-zod` to build the schema.
8
+ */
9
+ export class GraphPortSchemaResolver {
10
+ /**
11
+ * Resolves a single port to a schema descriptor.
12
+ *
13
+ * @returns A descriptor with the port name, a `validate` function, and
14
+ * optional Zod schema reference.
15
+ */
16
+ resolve(port) {
17
+ const validate = this.createValidator(port);
18
+ return { name: port.name, required: port.required, validate };
19
+ }
20
+ /**
21
+ * Resolves multiple ports into a map of name -> descriptor.
22
+ */
23
+ resolveAll(ports) {
24
+ const result = {};
25
+ for (const port of ports) {
26
+ result[port.name] = this.resolve(port);
27
+ }
28
+ return result;
29
+ }
30
+ /**
31
+ * Creates a validation function based on the port's type.
32
+ */
33
+ createValidator(port) {
34
+ const type = (port.type ?? port.designType ?? "").toLowerCase();
35
+ switch (type) {
36
+ case "string":
37
+ return (v) => typeof v === "string";
38
+ case "number":
39
+ return (v) => typeof v === "number";
40
+ case "boolean":
41
+ return (v) => typeof v === "boolean";
42
+ case "date":
43
+ return (v) => v instanceof Date || (typeof v === "string" && !isNaN(Date.parse(v)));
44
+ case "array":
45
+ return (v) => Array.isArray(v);
46
+ case "bigint":
47
+ return (v) => typeof v === "bigint";
48
+ default:
49
+ return () => true;
50
+ }
51
+ }
52
+ }
53
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiR3JhcGhQb3J0U2NoZW1hUmVzb2x2ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvZ3JhcGgvZW5naW5lL3ZhbGlkYXRpb24vR3JhcGhQb3J0U2NoZW1hUmVzb2x2ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBT0E7Ozs7Ozs7R0FPRztBQUNILE1BQU0sT0FBTyx1QkFBdUI7SUFDbEM7Ozs7O09BS0c7SUFDSCxPQUFPLENBQUMsSUFBeUI7UUFLL0IsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUM1QyxPQUFPLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBQyxJQUFJLEVBQUUsUUFBUSxFQUFFLElBQUksQ0FBQyxRQUFRLEVBQUUsUUFBUSxFQUFFLENBQUM7SUFDaEUsQ0FBQztJQUVEOztPQUVHO0lBQ0gsVUFBVSxDQUFDLEtBQTRCO1FBQ3JDLE1BQU0sTUFBTSxHQUErRixFQUFFLENBQUM7UUFDOUcsS0FBSyxNQUFNLElBQUksSUFBSSxLQUFLLEVBQUUsQ0FBQztZQUN6QixNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDekMsQ0FBQztRQUNELE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7SUFFRDs7T0FFRztJQUNLLGVBQWUsQ0FBQyxJQUF5QjtRQUMvQyxNQUFNLElBQUksR0FBRyxDQUFDLElBQUksQ0FBQyxJQUFJLElBQUksSUFBSSxDQUFDLFVBQVUsSUFBSSxFQUFFLENBQUMsQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUNoRSxRQUFRLElBQUksRUFBRSxDQUFDO1lBQ2IsS0FBSyxRQUFRO2dCQUNYLE9BQU8sQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLE9BQU8sQ0FBQyxLQUFLLFFBQVEsQ0FBQztZQUN0QyxLQUFLLFFBQVE7Z0JBQ1gsT0FBTyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsT0FBTyxDQUFDLEtBQUssUUFBUSxDQUFDO1lBQ3RDLEtBQUssU0FBUztnQkFDWixPQUFPLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxPQUFPLENBQUMsS0FBSyxTQUFTLENBQUM7WUFDdkMsS0FBSyxNQUFNO2dCQUNULE9BQU8sQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsWUFBWSxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxRQUFRLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDdEYsS0FBSyxPQUFPO2dCQUNWLE9BQU8sQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDakMsS0FBSyxRQUFRO2dCQUNYLE9BQU8sQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLE9BQU8sQ0FBQyxLQUFLLFFBQVEsQ0FBQztZQUN0QztnQkFDRSxPQUFPLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQztRQUN0QixDQUFDO0lBQ0gsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbW9kdWxlIGludGVncmF0aW9ucy9ncmFwaC92YWxpZGF0aW9uL0dyYXBoUG9ydFNjaGVtYVJlc29sdmVyXG4gKiBAc3VtbWFyeSBSZXNvbHZlcyBncmFwaCBwb3J0IGRlZmluaXRpb25zIHRvIFpvZCBzY2hlbWFzLlxuICogQGRlc2NyaXB0aW9uIFByZWZlcnMgYEBkZWNhZi10cy9hcy16b2RgIGZvciBtb2RlbC1iYWNrZWQgcG9ydHMgYW5kIGZhbGxzIGJhY2sgdG8gcHJpbWl0aXZlIHR5cGUgbWFwcGluZy5cbiAqL1xuaW1wb3J0IHR5cGUgeyBHcmFwaFBvcnREZWZpbml0aW9uIH0gZnJvbSBcIkBkZWNhZi10cy91aS1kZWNvcmF0b3JzL2dyYXBoXCI7XG5cbi8qKlxuICogUmVzb2x2ZXMgYSB7QGxpbmsgR3JhcGhQb3J0RGVmaW5pdGlvbn0gdG8gYSBab2Qgc2NoZW1hIChvciBhIGxpZ2h0d2VpZ2h0XG4gKiB2YWxpZGF0aW9uIGZ1bmN0aW9uIHdoZW4gWm9kIGlzIG5vdCBhdmFpbGFibGUpLlxuICpcbiAqIFRoaXMgaW1wbGVtZW50YXRpb24gdXNlcyBwcmltaXRpdmUgdHlwZSBtYXBwaW5nLiBXaGVuIHRoZSBwb3J0J3MgYG1vZGVsYFxuICogZmllbGQgb3IgdW5kZXJseWluZyBEZWNhZiBtZXRhZGF0YSByZWZlcmVuY2VzIGEgYE1vZGVsYCBjbGFzcywgY29uc3VtZXJzXG4gKiBzaG91bGQgdXNlIGBtb2RlbFRvWm9kYCBmcm9tIGBAZGVjYWYtdHMvYXMtem9kYCB0byBidWlsZCB0aGUgc2NoZW1hLlxuICovXG5leHBvcnQgY2xhc3MgR3JhcGhQb3J0U2NoZW1hUmVzb2x2ZXIge1xuICAvKipcbiAgICogUmVzb2x2ZXMgYSBzaW5nbGUgcG9ydCB0byBhIHNjaGVtYSBkZXNjcmlwdG9yLlxuICAgKlxuICAgKiBAcmV0dXJucyBBIGRlc2NyaXB0b3Igd2l0aCB0aGUgcG9ydCBuYW1lLCBhIGB2YWxpZGF0ZWAgZnVuY3Rpb24sIGFuZFxuICAgKiBvcHRpb25hbCBab2Qgc2NoZW1hIHJlZmVyZW5jZS5cbiAgICovXG4gIHJlc29sdmUocG9ydDogR3JhcGhQb3J0RGVmaW5pdGlvbik6IHtcbiAgICBuYW1lOiBzdHJpbmc7XG4gICAgcmVxdWlyZWQ6IGJvb2xlYW47XG4gICAgdmFsaWRhdGU6ICh2YWx1ZTogdW5rbm93bikgPT4gYm9vbGVhbjtcbiAgfSB7XG4gICAgY29uc3QgdmFsaWRhdGUgPSB0aGlzLmNyZWF0ZVZhbGlkYXRvcihwb3J0KTtcbiAgICByZXR1cm4geyBuYW1lOiBwb3J0Lm5hbWUsIHJlcXVpcmVkOiBwb3J0LnJlcXVpcmVkLCB2YWxpZGF0ZSB9O1xuICB9XG5cbiAgLyoqXG4gICAqIFJlc29sdmVzIG11bHRpcGxlIHBvcnRzIGludG8gYSBtYXAgb2YgbmFtZSAtPiBkZXNjcmlwdG9yLlxuICAgKi9cbiAgcmVzb2x2ZUFsbChwb3J0czogR3JhcGhQb3J0RGVmaW5pdGlvbltdKTogUmVjb3JkPHN0cmluZywgeyBuYW1lOiBzdHJpbmc7IHJlcXVpcmVkOiBib29sZWFuOyB2YWxpZGF0ZTogKHZhbHVlOiB1bmtub3duKSA9PiBib29sZWFuIH0+IHtcbiAgICBjb25zdCByZXN1bHQ6IFJlY29yZDxzdHJpbmcsIHsgbmFtZTogc3RyaW5nOyByZXF1aXJlZDogYm9vbGVhbjsgdmFsaWRhdGU6ICh2YWx1ZTogdW5rbm93bikgPT4gYm9vbGVhbiB9PiA9IHt9O1xuICAgIGZvciAoY29uc3QgcG9ydCBvZiBwb3J0cykge1xuICAgICAgcmVzdWx0W3BvcnQubmFtZV0gPSB0aGlzLnJlc29sdmUocG9ydCk7XG4gICAgfVxuICAgIHJldHVybiByZXN1bHQ7XG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlcyBhIHZhbGlkYXRpb24gZnVuY3Rpb24gYmFzZWQgb24gdGhlIHBvcnQncyB0eXBlLlxuICAgKi9cbiAgcHJpdmF0ZSBjcmVhdGVWYWxpZGF0b3IocG9ydDogR3JhcGhQb3J0RGVmaW5pdGlvbik6ICh2YWx1ZTogdW5rbm93bikgPT4gYm9vbGVhbiB7XG4gICAgY29uc3QgdHlwZSA9IChwb3J0LnR5cGUgPz8gcG9ydC5kZXNpZ25UeXBlID8/IFwiXCIpLnRvTG93ZXJDYXNlKCk7XG4gICAgc3dpdGNoICh0eXBlKSB7XG4gICAgICBjYXNlIFwic3RyaW5nXCI6XG4gICAgICAgIHJldHVybiAodikgPT4gdHlwZW9mIHYgPT09IFwic3RyaW5nXCI7XG4gICAgICBjYXNlIFwibnVtYmVyXCI6XG4gICAgICAgIHJldHVybiAodikgPT4gdHlwZW9mIHYgPT09IFwibnVtYmVyXCI7XG4gICAgICBjYXNlIFwiYm9vbGVhblwiOlxuICAgICAgICByZXR1cm4gKHYpID0+IHR5cGVvZiB2ID09PSBcImJvb2xlYW5cIjtcbiAgICAgIGNhc2UgXCJkYXRlXCI6XG4gICAgICAgIHJldHVybiAodikgPT4gdiBpbnN0YW5jZW9mIERhdGUgfHwgKHR5cGVvZiB2ID09PSBcInN0cmluZ1wiICYmICFpc05hTihEYXRlLnBhcnNlKHYpKSk7XG4gICAgICBjYXNlIFwiYXJyYXlcIjpcbiAgICAgICAgcmV0dXJuICh2KSA9PiBBcnJheS5pc0FycmF5KHYpO1xuICAgICAgY2FzZSBcImJpZ2ludFwiOlxuICAgICAgICByZXR1cm4gKHYpID0+IHR5cGVvZiB2ID09PSBcImJpZ2ludFwiO1xuICAgICAgZGVmYXVsdDpcbiAgICAgICAgcmV0dXJuICgpID0+IHRydWU7XG4gICAgfVxuICB9XG59XG4iXX0=
@@ -0,0 +1,47 @@
1
+ import { GraphInputError } from "./../errors/GraphInputError.js";
2
+ /**
3
+ * Validates runtime values against port definitions.
4
+ */
5
+ export class GraphValueValidator {
6
+ constructor(resolver) {
7
+ this.resolver = resolver;
8
+ }
9
+ /** Validates workflow-level input values. */
10
+ validateWorkflowInputs(workflow, values) {
11
+ this.validatePorts(workflow.inputs, values, "workflow input");
12
+ }
13
+ /** Validates workflow-level output values. */
14
+ validateWorkflowOutputs(workflow, values) {
15
+ this.validatePorts(workflow.outputs, values, "workflow output");
16
+ }
17
+ /** Validates a node's input values. */
18
+ validateNodeInputs(node, values) {
19
+ const inputPorts = (node.ports ?? []).filter((p) => p.direction === "input");
20
+ this.validatePorts(inputPorts, values, `node '${node.name}' input`);
21
+ }
22
+ /** Validates a node's output values. */
23
+ validateNodeOutputs(node, values) {
24
+ const outputPorts = (node.ports ?? []).filter((p) => p.direction === "output");
25
+ this.validatePorts(outputPorts, values, `node '${node.name}' output`);
26
+ }
27
+ /**
28
+ * Validates values against a set of port definitions.
29
+ */
30
+ validatePorts(ports, values, context) {
31
+ if (!ports)
32
+ return;
33
+ for (const port of ports) {
34
+ const has = Object.prototype.hasOwnProperty.call(values, port.name);
35
+ if (port.required && !has) {
36
+ throw new GraphInputError(`Missing required ${context} port '${port.name}'`);
37
+ }
38
+ if (has) {
39
+ const descriptor = this.resolver.resolve(port);
40
+ if (!descriptor.validate(values[port.name])) {
41
+ throw new GraphInputError(`Invalid value for ${context} port '${port.name}'`);
42
+ }
43
+ }
44
+ }
45
+ }
46
+ }
47
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiR3JhcGhWYWx1ZVZhbGlkYXRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9ncmFwaC9lbmdpbmUvdmFsaWRhdGlvbi9HcmFwaFZhbHVlVmFsaWRhdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQVdBLE9BQU8sRUFBRSxlQUFlLEVBQUUsdUNBQWtDO0FBSTVEOztHQUVHO0FBQ0gsTUFBTSxPQUFPLG1CQUFtQjtJQUM5QixZQUE2QixRQUFpQztRQUFqQyxhQUFRLEdBQVIsUUFBUSxDQUF5QjtJQUFHLENBQUM7SUFFbEUsNkNBQTZDO0lBQzdDLHNCQUFzQixDQUNwQixRQUFpQyxFQUNqQyxNQUE0QjtRQUU1QixJQUFJLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxNQUFNLEVBQUUsTUFBTSxFQUFFLGdCQUFnQixDQUFDLENBQUM7SUFDaEUsQ0FBQztJQUVELDhDQUE4QztJQUM5Qyx1QkFBdUIsQ0FDckIsUUFBaUMsRUFDakMsTUFBNEI7UUFFNUIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsT0FBTyxFQUFFLE1BQU0sRUFBRSxpQkFBaUIsQ0FBQyxDQUFDO0lBQ2xFLENBQUM7SUFFRCx1Q0FBdUM7SUFDdkMsa0JBQWtCLENBQ2hCLElBQXlCLEVBQ3pCLE1BQTRCO1FBRTVCLE1BQU0sVUFBVSxHQUFHLENBQUMsSUFBSSxDQUFDLEtBQUssSUFBSSxFQUFFLENBQUMsQ0FBQyxNQUFNLENBQzFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsU0FBUyxLQUFLLE9BQU8sQ0FDL0IsQ0FBQztRQUNGLElBQUksQ0FBQyxhQUFhLENBQUMsVUFBVSxFQUFFLE1BQU0sRUFBRSxTQUFTLElBQUksQ0FBQyxJQUFJLFNBQVMsQ0FBQyxDQUFDO0lBQ3RFLENBQUM7SUFFRCx3Q0FBd0M7SUFDeEMsbUJBQW1CLENBQ2pCLElBQXlCLEVBQ3pCLE1BQTRCO1FBRTVCLE1BQU0sV0FBVyxHQUFHLENBQUMsSUFBSSxDQUFDLEtBQUssSUFBSSxFQUFFLENBQUMsQ0FBQyxNQUFNLENBQzNDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsU0FBUyxLQUFLLFFBQVEsQ0FDaEMsQ0FBQztRQUNGLElBQUksQ0FBQyxhQUFhLENBQUMsV0FBVyxFQUFFLE1BQU0sRUFBRSxTQUFTLElBQUksQ0FBQyxJQUFJLFVBQVUsQ0FBQyxDQUFDO0lBQ3hFLENBQUM7SUFFRDs7T0FFRztJQUNLLGFBQWEsQ0FDbkIsS0FBd0MsRUFDeEMsTUFBNEIsRUFDNUIsT0FBZTtRQUVmLElBQUksQ0FBQyxLQUFLO1lBQUUsT0FBTztRQUNuQixLQUFLLE1BQU0sSUFBSSxJQUFJLEtBQUssRUFBRSxDQUFDO1lBQ3pCLE1BQU0sR0FBRyxHQUFHLE1BQU0sQ0FBQyxTQUFTLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQ3BFLElBQUksSUFBSSxDQUFDLFFBQVEsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDO2dCQUMxQixNQUFNLElBQUksZUFBZSxDQUN2QixvQkFBb0IsT0FBTyxVQUFVLElBQUksQ0FBQyxJQUFJLEdBQUcsQ0FDbEQsQ0FBQztZQUNKLENBQUM7WUFDRCxJQUFJLEdBQUcsRUFBRSxDQUFDO2dCQUNSLE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO2dCQUMvQyxJQUFJLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLEVBQUUsQ0FBQztvQkFDNUMsTUFBTSxJQUFJLGVBQWUsQ0FDdkIscUJBQXFCLE9BQU8sVUFBVSxJQUFJLENBQUMsSUFBSSxHQUFHLENBQ25ELENBQUM7Z0JBQ0osQ0FBQztZQUNILENBQUM7UUFDSCxDQUFDO0lBQ0gsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbW9kdWxlIGludGVncmF0aW9ucy9ncmFwaC92YWxpZGF0aW9uL0dyYXBoVmFsdWVWYWxpZGF0b3JcbiAqIEBzdW1tYXJ5IFZhbGlkYXRlcyBydW50aW1lIHZhbHVlcyBhZ2FpbnN0IGdyYXBoIHBvcnQgZGVmaW5pdGlvbnMuXG4gKiBAZGVzY3JpcHRpb24gVmFsaWRhdGVzIHdvcmtmbG93IGlucHV0cy9vdXRwdXRzIGFuZCBub2RlIGlucHV0cy9vdXRwdXRzIHVzaW5nIHRoZSBzY2hlbWEgcmVzb2x2ZXIuXG4gKi9cbmltcG9ydCB0eXBlIHtcbiAgR3JhcGhOb2RlRGVmaW5pdGlvbixcbiAgR3JhcGhQb3J0RGVmaW5pdGlvbixcbiAgR3JhcGhXb3JrZmxvd0RlZmluaXRpb24sXG59IGZyb20gXCJAZGVjYWYtdHMvdWktZGVjb3JhdG9ycy9ncmFwaFwiO1xuXG5pbXBvcnQgeyBHcmFwaElucHV0RXJyb3IgfSBmcm9tIFwiLi4vZXJyb3JzL0dyYXBoSW5wdXRFcnJvclwiO1xuaW1wb3J0IHR5cGUgeyBHcmFwaFBvcnRTY2hlbWFSZXNvbHZlciB9IGZyb20gXCIuL0dyYXBoUG9ydFNjaGVtYVJlc29sdmVyXCI7XG5pbXBvcnQgdHlwZSB7IEdyYXBoRXhlY3V0aW9uVmFsdWVzIH0gZnJvbSBcIi4uL3R5cGVzXCI7XG5cbi8qKlxuICogVmFsaWRhdGVzIHJ1bnRpbWUgdmFsdWVzIGFnYWluc3QgcG9ydCBkZWZpbml0aW9ucy5cbiAqL1xuZXhwb3J0IGNsYXNzIEdyYXBoVmFsdWVWYWxpZGF0b3Ige1xuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IHJlc29sdmVyOiBHcmFwaFBvcnRTY2hlbWFSZXNvbHZlcikge31cblxuICAvKiogVmFsaWRhdGVzIHdvcmtmbG93LWxldmVsIGlucHV0IHZhbHVlcy4gKi9cbiAgdmFsaWRhdGVXb3JrZmxvd0lucHV0cyhcbiAgICB3b3JrZmxvdzogR3JhcGhXb3JrZmxvd0RlZmluaXRpb24sXG4gICAgdmFsdWVzOiBHcmFwaEV4ZWN1dGlvblZhbHVlc1xuICApOiB2b2lkIHtcbiAgICB0aGlzLnZhbGlkYXRlUG9ydHMod29ya2Zsb3cuaW5wdXRzLCB2YWx1ZXMsIFwid29ya2Zsb3cgaW5wdXRcIik7XG4gIH1cblxuICAvKiogVmFsaWRhdGVzIHdvcmtmbG93LWxldmVsIG91dHB1dCB2YWx1ZXMuICovXG4gIHZhbGlkYXRlV29ya2Zsb3dPdXRwdXRzKFxuICAgIHdvcmtmbG93OiBHcmFwaFdvcmtmbG93RGVmaW5pdGlvbixcbiAgICB2YWx1ZXM6IEdyYXBoRXhlY3V0aW9uVmFsdWVzXG4gICk6IHZvaWQge1xuICAgIHRoaXMudmFsaWRhdGVQb3J0cyh3b3JrZmxvdy5vdXRwdXRzLCB2YWx1ZXMsIFwid29ya2Zsb3cgb3V0cHV0XCIpO1xuICB9XG5cbiAgLyoqIFZhbGlkYXRlcyBhIG5vZGUncyBpbnB1dCB2YWx1ZXMuICovXG4gIHZhbGlkYXRlTm9kZUlucHV0cyhcbiAgICBub2RlOiBHcmFwaE5vZGVEZWZpbml0aW9uLFxuICAgIHZhbHVlczogR3JhcGhFeGVjdXRpb25WYWx1ZXNcbiAgKTogdm9pZCB7XG4gICAgY29uc3QgaW5wdXRQb3J0cyA9IChub2RlLnBvcnRzID8/IFtdKS5maWx0ZXIoXG4gICAgICAocCkgPT4gcC5kaXJlY3Rpb24gPT09IFwiaW5wdXRcIlxuICAgICk7XG4gICAgdGhpcy52YWxpZGF0ZVBvcnRzKGlucHV0UG9ydHMsIHZhbHVlcywgYG5vZGUgJyR7bm9kZS5uYW1lfScgaW5wdXRgKTtcbiAgfVxuXG4gIC8qKiBWYWxpZGF0ZXMgYSBub2RlJ3Mgb3V0cHV0IHZhbHVlcy4gKi9cbiAgdmFsaWRhdGVOb2RlT3V0cHV0cyhcbiAgICBub2RlOiBHcmFwaE5vZGVEZWZpbml0aW9uLFxuICAgIHZhbHVlczogR3JhcGhFeGVjdXRpb25WYWx1ZXNcbiAgKTogdm9pZCB7XG4gICAgY29uc3Qgb3V0cHV0UG9ydHMgPSAobm9kZS5wb3J0cyA/PyBbXSkuZmlsdGVyKFxuICAgICAgKHApID0+IHAuZGlyZWN0aW9uID09PSBcIm91dHB1dFwiXG4gICAgKTtcbiAgICB0aGlzLnZhbGlkYXRlUG9ydHMob3V0cHV0UG9ydHMsIHZhbHVlcywgYG5vZGUgJyR7bm9kZS5uYW1lfScgb3V0cHV0YCk7XG4gIH1cblxuICAvKipcbiAgICogVmFsaWRhdGVzIHZhbHVlcyBhZ2FpbnN0IGEgc2V0IG9mIHBvcnQgZGVmaW5pdGlvbnMuXG4gICAqL1xuICBwcml2YXRlIHZhbGlkYXRlUG9ydHMoXG4gICAgcG9ydHM6IEdyYXBoUG9ydERlZmluaXRpb25bXSB8IHVuZGVmaW5lZCxcbiAgICB2YWx1ZXM6IEdyYXBoRXhlY3V0aW9uVmFsdWVzLFxuICAgIGNvbnRleHQ6IHN0cmluZ1xuICApOiB2b2lkIHtcbiAgICBpZiAoIXBvcnRzKSByZXR1cm47XG4gICAgZm9yIChjb25zdCBwb3J0IG9mIHBvcnRzKSB7XG4gICAgICBjb25zdCBoYXMgPSBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwodmFsdWVzLCBwb3J0Lm5hbWUpO1xuICAgICAgaWYgKHBvcnQucmVxdWlyZWQgJiYgIWhhcykge1xuICAgICAgICB0aHJvdyBuZXcgR3JhcGhJbnB1dEVycm9yKFxuICAgICAgICAgIGBNaXNzaW5nIHJlcXVpcmVkICR7Y29udGV4dH0gcG9ydCAnJHtwb3J0Lm5hbWV9J2BcbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICAgIGlmIChoYXMpIHtcbiAgICAgICAgY29uc3QgZGVzY3JpcHRvciA9IHRoaXMucmVzb2x2ZXIucmVzb2x2ZShwb3J0KTtcbiAgICAgICAgaWYgKCFkZXNjcmlwdG9yLnZhbGlkYXRlKHZhbHVlc1twb3J0Lm5hbWVdKSkge1xuICAgICAgICAgIHRocm93IG5ldyBHcmFwaElucHV0RXJyb3IoXG4gICAgICAgICAgICBgSW52YWxpZCB2YWx1ZSBmb3IgJHtjb250ZXh0fSBwb3J0ICcke3BvcnQubmFtZX0nYFxuICAgICAgICAgICk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,9 @@
1
+ /**
2
+ * @module integrations/graph/validation
3
+ * @summary Graph validation utilities.
4
+ * @description Re-exports the definition validator, port schema resolver, and value validator.
5
+ */
6
+ export * from "./GraphDefinitionValidator.js";
7
+ export * from "./GraphPortSchemaResolver.js";
8
+ export * from "./GraphValueValidator.js";
9
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvZ3JhcGgvZW5naW5lL3ZhbGlkYXRpb24vaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7R0FJRztBQUNILDhDQUEyQztBQUMzQyw2Q0FBMEM7QUFDMUMseUNBQXNDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbW9kdWxlIGludGVncmF0aW9ucy9ncmFwaC92YWxpZGF0aW9uXG4gKiBAc3VtbWFyeSBHcmFwaCB2YWxpZGF0aW9uIHV0aWxpdGllcy5cbiAqIEBkZXNjcmlwdGlvbiBSZS1leHBvcnRzIHRoZSBkZWZpbml0aW9uIHZhbGlkYXRvciwgcG9ydCBzY2hlbWEgcmVzb2x2ZXIsIGFuZCB2YWx1ZSB2YWxpZGF0b3IuXG4gKi9cbmV4cG9ydCAqIGZyb20gXCIuL0dyYXBoRGVmaW5pdGlvblZhbGlkYXRvclwiO1xuZXhwb3J0ICogZnJvbSBcIi4vR3JhcGhQb3J0U2NoZW1hUmVzb2x2ZXJcIjtcbmV4cG9ydCAqIGZyb20gXCIuL0dyYXBoVmFsdWVWYWxpZGF0b3JcIjtcbiJdfQ==
@@ -1,62 +1,12 @@
1
1
  /**
2
2
  * @module integrations/graph
3
- * @summary Decaf Graph Execution Engine.
4
- * @description Reference interpreter for Decaf graph workflows. Executes workflows declared with `@decaf-ts/ui-decorators/graph`, emits events through Decaf's Observable pipeline, supports structured loops, configurable value stores, and pinnable/cacheable nodes.
3
+ * @summary Decaf Graph Execution Engine (backend convenience export).
4
+ * @description Re-exports `./engine`, which in turn re-exports `./shared`
5
+ * (frontend-safe declarations) plus all engine modules. Backend consumers
6
+ * import from `@decaf-ts/integrations/graph` and get a single unified surface.
7
+ *
8
+ * Frontend bundles MUST import from `@decaf-ts/integrations/graph/shared`
9
+ * instead to avoid pulling in the execution engine.
5
10
  */
6
- export * from "./constants.js";
7
- export * from "./types.js";
8
- export * from "./decorators.js";
9
- export * from "./errors/GraphExecutionError.js";
10
- export * from "./errors/GraphCycleError.js";
11
- export * from "./errors/GraphInputError.js";
12
- export * from "./errors/GraphLoopLimitError.js";
13
- export * from "./errors/GraphPinningError.js";
14
- export * from "./errors/GraphPortError.js";
15
- export * from "./errors/GraphStoreError.js";
16
- export * from "./errors/GraphTopologyError.js";
17
- export * from "./events/GraphExecutionEvent.js";
18
- export * from "./events/GraphExecutionObserver.js";
19
- export * from "./events/GraphExecutionEventEmitter.js";
20
- export * from "./events/GraphExecutionEventFactory.js";
21
- export * from "./execution/GraphExecutionContext.js";
22
- export * from "./execution/GraphNodeExecutor.js";
23
- export * from "./execution/GraphExecutionFrame.js";
24
- export * from "./execution/GraphExecutionResult.js";
25
- export * from "./execution/GraphExecutionEngine.js";
26
- export * from "./execution/CodeSandboxEvaluator.js";
27
- export * from "./execution/SwitchGraphNodeExecutor.js";
28
- export * from "./registry/GraphNodeExecutorRegistry.js";
29
- export * from "./registry/GraphNodeExecutorResolver.js";
30
- export * from "./store/GraphValueKey.js";
31
- export * from "./store/GraphCachedValue.js";
32
- export * from "./store/GraphValueStoreAdapter.js";
33
- export * from "./store/InMemoryGraphValueStoreAdapter.js";
34
- export * from "./store/GraphValueStore.js";
35
- export * from "./planning/GraphExecutionPlanNode.js";
36
- export * from "./planning/GraphExecutionPlanEdge.js";
37
- export * from "./planning/GraphExecutionPlanLayer.js";
38
- export * from "./planning/GraphExecutionPlan.js";
39
- export * from "./planning/GraphRelationResolver.js";
40
- export * from "./planning/GraphExecutionPlanner.js";
41
- export * from "./planning/GraphTopology.js";
42
- // Validation (TASK-215)
43
- export * from "./validation/GraphDefinitionValidator.js";
44
- export * from "./validation/GraphPortSchemaResolver.js";
45
- export * from "./validation/GraphValueValidator.js";
46
- // Loops (TASK-216)
47
- export * from "./loops/GraphConditionEvaluator.js";
48
- export * from "./loops/ConditionExpressionEvaluator.js";
49
- export * from "./loops/GraphLoopExecutionContext.js";
50
- export * from "./loops/ForeachGraphNodeExecutor.js";
51
- export * from "./loops/WhileGraphNodeExecutor.js";
52
- export * from "./loops/UntilGraphNodeExecutor.js";
53
- // Pinning (TASK-217/218)
54
- export * from "./pinning/GraphPinningMetadata.js";
55
- export * from "./pinning/GraphPinningPolicy.js";
56
- export * from "./pinning/GraphPinningDependencyResolver.js";
57
- export * from "./pinning/GraphPinningService.js";
58
- // Snapshots (TASK-219)
59
- export * from "./snapshots/GraphExecutionSnapshotMapper.js";
60
- // Production node kind declarations (TASK-228 / §22.2)
61
- export * from "./nodes/index.js";
62
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvZ3JhcGgvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7R0FJRztBQUVILCtCQUE0QjtBQUM1QiwyQkFBd0I7QUFDeEIsZ0NBQTZCO0FBRTdCLGdEQUE2QztBQUM3Qyw0Q0FBeUM7QUFDekMsNENBQXlDO0FBQ3pDLGdEQUE2QztBQUM3Qyw4Q0FBMkM7QUFDM0MsMkNBQXdDO0FBQ3hDLDRDQUF5QztBQUN6QywrQ0FBNEM7QUFFNUMsZ0RBQTZDO0FBQzdDLG1EQUFnRDtBQUNoRCx1REFBb0Q7QUFDcEQsdURBQW9EO0FBRXBELHFEQUFrRDtBQUNsRCxpREFBOEM7QUFDOUMsbURBQWdEO0FBQ2hELG9EQUFpRDtBQUNqRCxvREFBaUQ7QUFDakQsb0RBQWlEO0FBQ2pELHVEQUFvRDtBQUVwRCx3REFBcUQ7QUFDckQsd0RBQXFEO0FBRXJELHlDQUFzQztBQUN0Qyw0Q0FBeUM7QUFDekMsa0RBQStDO0FBQy9DLDBEQUF1RDtBQUN2RCwyQ0FBd0M7QUFFeEMscURBQWtEO0FBQ2xELHFEQUFrRDtBQUNsRCxzREFBbUQ7QUFDbkQsaURBQThDO0FBQzlDLG9EQUFpRDtBQUNqRCxvREFBaUQ7QUFDakQsNENBQXlDO0FBRXpDLHdCQUF3QjtBQUN4Qix5REFBc0Q7QUFDdEQsd0RBQXFEO0FBQ3JELG9EQUFpRDtBQUVqRCxtQkFBbUI7QUFDbkIsbURBQWdEO0FBQ2hELHdEQUFxRDtBQUNyRCxxREFBa0Q7QUFDbEQsb0RBQWlEO0FBQ2pELGtEQUErQztBQUMvQyxrREFBK0M7QUFFL0MseUJBQXlCO0FBQ3pCLGtEQUErQztBQUMvQyxnREFBNkM7QUFDN0MsNERBQXlEO0FBQ3pELGlEQUE4QztBQUU5Qyx1QkFBdUI7QUFDdkIsNERBQXlEO0FBRXpELHVEQUF1RDtBQUN2RCxpQ0FBd0IiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBtb2R1bGUgaW50ZWdyYXRpb25zL2dyYXBoXG4gKiBAc3VtbWFyeSBEZWNhZiBHcmFwaCBFeGVjdXRpb24gRW5naW5lLlxuICogQGRlc2NyaXB0aW9uIFJlZmVyZW5jZSBpbnRlcnByZXRlciBmb3IgRGVjYWYgZ3JhcGggd29ya2Zsb3dzLiBFeGVjdXRlcyB3b3JrZmxvd3MgZGVjbGFyZWQgd2l0aCBgQGRlY2FmLXRzL3VpLWRlY29yYXRvcnMvZ3JhcGhgLCBlbWl0cyBldmVudHMgdGhyb3VnaCBEZWNhZidzIE9ic2VydmFibGUgcGlwZWxpbmUsIHN1cHBvcnRzIHN0cnVjdHVyZWQgbG9vcHMsIGNvbmZpZ3VyYWJsZSB2YWx1ZSBzdG9yZXMsIGFuZCBwaW5uYWJsZS9jYWNoZWFibGUgbm9kZXMuXG4gKi9cblxuZXhwb3J0ICogZnJvbSBcIi4vY29uc3RhbnRzXCI7XG5leHBvcnQgKiBmcm9tIFwiLi90eXBlc1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vZGVjb3JhdG9yc1wiO1xuXG5leHBvcnQgKiBmcm9tIFwiLi9lcnJvcnMvR3JhcGhFeGVjdXRpb25FcnJvclwiO1xuZXhwb3J0ICogZnJvbSBcIi4vZXJyb3JzL0dyYXBoQ3ljbGVFcnJvclwiO1xuZXhwb3J0ICogZnJvbSBcIi4vZXJyb3JzL0dyYXBoSW5wdXRFcnJvclwiO1xuZXhwb3J0ICogZnJvbSBcIi4vZXJyb3JzL0dyYXBoTG9vcExpbWl0RXJyb3JcIjtcbmV4cG9ydCAqIGZyb20gXCIuL2Vycm9ycy9HcmFwaFBpbm5pbmdFcnJvclwiO1xuZXhwb3J0ICogZnJvbSBcIi4vZXJyb3JzL0dyYXBoUG9ydEVycm9yXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9lcnJvcnMvR3JhcGhTdG9yZUVycm9yXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9lcnJvcnMvR3JhcGhUb3BvbG9neUVycm9yXCI7XG5cbmV4cG9ydCAqIGZyb20gXCIuL2V2ZW50cy9HcmFwaEV4ZWN1dGlvbkV2ZW50XCI7XG5leHBvcnQgKiBmcm9tIFwiLi9ldmVudHMvR3JhcGhFeGVjdXRpb25PYnNlcnZlclwiO1xuZXhwb3J0ICogZnJvbSBcIi4vZXZlbnRzL0dyYXBoRXhlY3V0aW9uRXZlbnRFbWl0dGVyXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9ldmVudHMvR3JhcGhFeGVjdXRpb25FdmVudEZhY3RvcnlcIjtcblxuZXhwb3J0ICogZnJvbSBcIi4vZXhlY3V0aW9uL0dyYXBoRXhlY3V0aW9uQ29udGV4dFwiO1xuZXhwb3J0ICogZnJvbSBcIi4vZXhlY3V0aW9uL0dyYXBoTm9kZUV4ZWN1dG9yXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9leGVjdXRpb24vR3JhcGhFeGVjdXRpb25GcmFtZVwiO1xuZXhwb3J0ICogZnJvbSBcIi4vZXhlY3V0aW9uL0dyYXBoRXhlY3V0aW9uUmVzdWx0XCI7XG5leHBvcnQgKiBmcm9tIFwiLi9leGVjdXRpb24vR3JhcGhFeGVjdXRpb25FbmdpbmVcIjtcbmV4cG9ydCAqIGZyb20gXCIuL2V4ZWN1dGlvbi9Db2RlU2FuZGJveEV2YWx1YXRvclwiO1xuZXhwb3J0ICogZnJvbSBcIi4vZXhlY3V0aW9uL1N3aXRjaEdyYXBoTm9kZUV4ZWN1dG9yXCI7XG5cbmV4cG9ydCAqIGZyb20gXCIuL3JlZ2lzdHJ5L0dyYXBoTm9kZUV4ZWN1dG9yUmVnaXN0cnlcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3JlZ2lzdHJ5L0dyYXBoTm9kZUV4ZWN1dG9yUmVzb2x2ZXJcIjtcblxuZXhwb3J0ICogZnJvbSBcIi4vc3RvcmUvR3JhcGhWYWx1ZUtleVwiO1xuZXhwb3J0ICogZnJvbSBcIi4vc3RvcmUvR3JhcGhDYWNoZWRWYWx1ZVwiO1xuZXhwb3J0ICogZnJvbSBcIi4vc3RvcmUvR3JhcGhWYWx1ZVN0b3JlQWRhcHRlclwiO1xuZXhwb3J0ICogZnJvbSBcIi4vc3RvcmUvSW5NZW1vcnlHcmFwaFZhbHVlU3RvcmVBZGFwdGVyXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9zdG9yZS9HcmFwaFZhbHVlU3RvcmVcIjtcblxuZXhwb3J0ICogZnJvbSBcIi4vcGxhbm5pbmcvR3JhcGhFeGVjdXRpb25QbGFuTm9kZVwiO1xuZXhwb3J0ICogZnJvbSBcIi4vcGxhbm5pbmcvR3JhcGhFeGVjdXRpb25QbGFuRWRnZVwiO1xuZXhwb3J0ICogZnJvbSBcIi4vcGxhbm5pbmcvR3JhcGhFeGVjdXRpb25QbGFuTGF5ZXJcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3BsYW5uaW5nL0dyYXBoRXhlY3V0aW9uUGxhblwiO1xuZXhwb3J0ICogZnJvbSBcIi4vcGxhbm5pbmcvR3JhcGhSZWxhdGlvblJlc29sdmVyXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9wbGFubmluZy9HcmFwaEV4ZWN1dGlvblBsYW5uZXJcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3BsYW5uaW5nL0dyYXBoVG9wb2xvZ3lcIjtcblxuLy8gVmFsaWRhdGlvbiAoVEFTSy0yMTUpXG5leHBvcnQgKiBmcm9tIFwiLi92YWxpZGF0aW9uL0dyYXBoRGVmaW5pdGlvblZhbGlkYXRvclwiO1xuZXhwb3J0ICogZnJvbSBcIi4vdmFsaWRhdGlvbi9HcmFwaFBvcnRTY2hlbWFSZXNvbHZlclwiO1xuZXhwb3J0ICogZnJvbSBcIi4vdmFsaWRhdGlvbi9HcmFwaFZhbHVlVmFsaWRhdG9yXCI7XG5cbi8vIExvb3BzIChUQVNLLTIxNilcbmV4cG9ydCAqIGZyb20gXCIuL2xvb3BzL0dyYXBoQ29uZGl0aW9uRXZhbHVhdG9yXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9sb29wcy9Db25kaXRpb25FeHByZXNzaW9uRXZhbHVhdG9yXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9sb29wcy9HcmFwaExvb3BFeGVjdXRpb25Db250ZXh0XCI7XG5leHBvcnQgKiBmcm9tIFwiLi9sb29wcy9Gb3JlYWNoR3JhcGhOb2RlRXhlY3V0b3JcIjtcbmV4cG9ydCAqIGZyb20gXCIuL2xvb3BzL1doaWxlR3JhcGhOb2RlRXhlY3V0b3JcIjtcbmV4cG9ydCAqIGZyb20gXCIuL2xvb3BzL1VudGlsR3JhcGhOb2RlRXhlY3V0b3JcIjtcblxuLy8gUGlubmluZyAoVEFTSy0yMTcvMjE4KVxuZXhwb3J0ICogZnJvbSBcIi4vcGlubmluZy9HcmFwaFBpbm5pbmdNZXRhZGF0YVwiO1xuZXhwb3J0ICogZnJvbSBcIi4vcGlubmluZy9HcmFwaFBpbm5pbmdQb2xpY3lcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3Bpbm5pbmcvR3JhcGhQaW5uaW5nRGVwZW5kZW5jeVJlc29sdmVyXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9waW5uaW5nL0dyYXBoUGlubmluZ1NlcnZpY2VcIjtcblxuLy8gU25hcHNob3RzIChUQVNLLTIxOSlcbmV4cG9ydCAqIGZyb20gXCIuL3NuYXBzaG90cy9HcmFwaEV4ZWN1dGlvblNuYXBzaG90TWFwcGVyXCI7XG5cbi8vIFByb2R1Y3Rpb24gbm9kZSBraW5kIGRlY2xhcmF0aW9ucyAoVEFTSy0yMjggLyDCpzIyLjIpXG5leHBvcnQgKiBmcm9tIFwiLi9ub2Rlc1wiO1xuIl19
11
+ export * from "./engine/index.js";
12
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvZ3JhcGgvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7OztHQVNHO0FBQ0gsa0NBQXlCIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbW9kdWxlIGludGVncmF0aW9ucy9ncmFwaFxuICogQHN1bW1hcnkgRGVjYWYgR3JhcGggRXhlY3V0aW9uIEVuZ2luZSAoYmFja2VuZCBjb252ZW5pZW5jZSBleHBvcnQpLlxuICogQGRlc2NyaXB0aW9uIFJlLWV4cG9ydHMgYC4vZW5naW5lYCwgd2hpY2ggaW4gdHVybiByZS1leHBvcnRzIGAuL3NoYXJlZGBcbiAqIChmcm9udGVuZC1zYWZlIGRlY2xhcmF0aW9ucykgcGx1cyBhbGwgZW5naW5lIG1vZHVsZXMuIEJhY2tlbmQgY29uc3VtZXJzXG4gKiBpbXBvcnQgZnJvbSBgQGRlY2FmLXRzL2ludGVncmF0aW9ucy9ncmFwaGAgYW5kIGdldCBhIHNpbmdsZSB1bmlmaWVkIHN1cmZhY2UuXG4gKlxuICogRnJvbnRlbmQgYnVuZGxlcyBNVVNUIGltcG9ydCBmcm9tIGBAZGVjYWYtdHMvaW50ZWdyYXRpb25zL2dyYXBoL3NoYXJlZGBcbiAqIGluc3RlYWQgdG8gYXZvaWQgcHVsbGluZyBpbiB0aGUgZXhlY3V0aW9uIGVuZ2luZS5cbiAqL1xuZXhwb3J0ICogZnJvbSBcIi4vZW5naW5lXCI7XG4iXX0=
@@ -0,0 +1,56 @@
1
+ /**
2
+ * @module integrations/graph/shared/constants
3
+ * @summary Frontend-safe graph constants and enums.
4
+ * @description Constants and enumerations that are safe to import from a
5
+ * frontend bundle (no engine runtime dependency). The execution-status and
6
+ * event-type enums live here because the frontend renders status badges and
7
+ * event timelines and must not pull in the execution engine.
8
+ */
9
+ /**
10
+ * Execution status for a workflow or individual node.
11
+ */
12
+ export var GraphExecutionStatus;
13
+ (function (GraphExecutionStatus) {
14
+ GraphExecutionStatus["PENDING"] = "pending";
15
+ GraphExecutionStatus["PLANNING"] = "planning";
16
+ GraphExecutionStatus["RUNNING"] = "running";
17
+ GraphExecutionStatus["SUCCEEDED"] = "succeeded";
18
+ GraphExecutionStatus["FAILED"] = "failed";
19
+ GraphExecutionStatus["SKIPPED"] = "skipped";
20
+ GraphExecutionStatus["CANCELLED"] = "cancelled";
21
+ GraphExecutionStatus["CACHED"] = "cached";
22
+ })(GraphExecutionStatus || (GraphExecutionStatus = {}));
23
+ /**
24
+ * Event types emitted through the graph execution observer pipeline.
25
+ */
26
+ export var GraphExecutionEventType;
27
+ (function (GraphExecutionEventType) {
28
+ GraphExecutionEventType["WORKFLOW_STARTED"] = "workflow.started";
29
+ GraphExecutionEventType["WORKFLOW_PLANNED"] = "workflow.planned";
30
+ GraphExecutionEventType["WORKFLOW_COMPLETED"] = "workflow.completed";
31
+ GraphExecutionEventType["WORKFLOW_FAILED"] = "workflow.failed";
32
+ GraphExecutionEventType["WORKFLOW_CANCELLED"] = "workflow.cancelled";
33
+ GraphExecutionEventType["NODE_QUEUED"] = "node.queued";
34
+ GraphExecutionEventType["NODE_STARTED"] = "node.started";
35
+ GraphExecutionEventType["NODE_OUTPUT"] = "node.output";
36
+ GraphExecutionEventType["NODE_COMPLETED"] = "node.completed";
37
+ GraphExecutionEventType["NODE_FAILED"] = "node.failed";
38
+ GraphExecutionEventType["NODE_SKIPPED"] = "node.skipped";
39
+ GraphExecutionEventType["NODE_CACHE_HIT"] = "node.cacheHit";
40
+ GraphExecutionEventType["NODE_PINNED"] = "node.pinned";
41
+ GraphExecutionEventType["NODE_UNPINNED"] = "node.unpinned";
42
+ GraphExecutionEventType["EDGE_VALUE_ROUTED"] = "edge.valueRouted";
43
+ GraphExecutionEventType["LOOP_STARTED"] = "loop.started";
44
+ GraphExecutionEventType["LOOP_ITERATION_STARTED"] = "loop.iteration.started";
45
+ GraphExecutionEventType["LOOP_ITERATION_COMPLETED"] = "loop.iteration.completed";
46
+ GraphExecutionEventType["LOOP_CONDITION_EVALUATED"] = "loop.condition.evaluated";
47
+ GraphExecutionEventType["LOOP_COMPLETED"] = "loop.completed";
48
+ GraphExecutionEventType["LOOP_LIMIT_REACHED"] = "loop.limitReached";
49
+ GraphExecutionEventType["VALIDATION_STARTED"] = "validation.started";
50
+ GraphExecutionEventType["VALIDATION_FAILED"] = "validation.failed";
51
+ GraphExecutionEventType["VALIDATION_COMPLETED"] = "validation.completed";
52
+ GraphExecutionEventType["STORE_READ"] = "store.read";
53
+ GraphExecutionEventType["STORE_WRITE"] = "store.write";
54
+ GraphExecutionEventType["STORE_DELETE"] = "store.delete";
55
+ })(GraphExecutionEventType || (GraphExecutionEventType = {}));
56
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RhbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2dyYXBoL3NoYXJlZC9jb25zdGFudHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7R0FPRztBQUVIOztHQUVHO0FBQ0gsTUFBTSxDQUFOLElBQVksb0JBU1g7QUFURCxXQUFZLG9CQUFvQjtJQUM5QiwyQ0FBbUIsQ0FBQTtJQUNuQiw2Q0FBcUIsQ0FBQTtJQUNyQiwyQ0FBbUIsQ0FBQTtJQUNuQiwrQ0FBdUIsQ0FBQTtJQUN2Qix5Q0FBaUIsQ0FBQTtJQUNqQiwyQ0FBbUIsQ0FBQTtJQUNuQiwrQ0FBdUIsQ0FBQTtJQUN2Qix5Q0FBaUIsQ0FBQTtBQUNuQixDQUFDLEVBVFcsb0JBQW9CLEtBQXBCLG9CQUFvQixRQVMvQjtBQUVEOztHQUVHO0FBQ0gsTUFBTSxDQUFOLElBQVksdUJBaUNYO0FBakNELFdBQVksdUJBQXVCO0lBQ2pDLGdFQUFxQyxDQUFBO0lBQ3JDLGdFQUFxQyxDQUFBO0lBQ3JDLG9FQUF5QyxDQUFBO0lBQ3pDLDhEQUFtQyxDQUFBO0lBQ25DLG9FQUF5QyxDQUFBO0lBRXpDLHNEQUEyQixDQUFBO0lBQzNCLHdEQUE2QixDQUFBO0lBQzdCLHNEQUEyQixDQUFBO0lBQzNCLDREQUFpQyxDQUFBO0lBQ2pDLHNEQUEyQixDQUFBO0lBQzNCLHdEQUE2QixDQUFBO0lBQzdCLDJEQUFnQyxDQUFBO0lBQ2hDLHNEQUEyQixDQUFBO0lBQzNCLDBEQUErQixDQUFBO0lBRS9CLGlFQUFzQyxDQUFBO0lBRXRDLHdEQUE2QixDQUFBO0lBQzdCLDRFQUFpRCxDQUFBO0lBQ2pELGdGQUFxRCxDQUFBO0lBQ3JELGdGQUFxRCxDQUFBO0lBQ3JELDREQUFpQyxDQUFBO0lBQ2pDLG1FQUF3QyxDQUFBO0lBRXhDLG9FQUF5QyxDQUFBO0lBQ3pDLGtFQUF1QyxDQUFBO0lBQ3ZDLHdFQUE2QyxDQUFBO0lBRTdDLG9EQUF5QixDQUFBO0lBQ3pCLHNEQUEyQixDQUFBO0lBQzNCLHdEQUE2QixDQUFBO0FBQy9CLENBQUMsRUFqQ1csdUJBQXVCLEtBQXZCLHVCQUF1QixRQWlDbEMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBtb2R1bGUgaW50ZWdyYXRpb25zL2dyYXBoL3NoYXJlZC9jb25zdGFudHNcbiAqIEBzdW1tYXJ5IEZyb250ZW5kLXNhZmUgZ3JhcGggY29uc3RhbnRzIGFuZCBlbnVtcy5cbiAqIEBkZXNjcmlwdGlvbiBDb25zdGFudHMgYW5kIGVudW1lcmF0aW9ucyB0aGF0IGFyZSBzYWZlIHRvIGltcG9ydCBmcm9tIGFcbiAqIGZyb250ZW5kIGJ1bmRsZSAobm8gZW5naW5lIHJ1bnRpbWUgZGVwZW5kZW5jeSkuIFRoZSBleGVjdXRpb24tc3RhdHVzIGFuZFxuICogZXZlbnQtdHlwZSBlbnVtcyBsaXZlIGhlcmUgYmVjYXVzZSB0aGUgZnJvbnRlbmQgcmVuZGVycyBzdGF0dXMgYmFkZ2VzIGFuZFxuICogZXZlbnQgdGltZWxpbmVzIGFuZCBtdXN0IG5vdCBwdWxsIGluIHRoZSBleGVjdXRpb24gZW5naW5lLlxuICovXG5cbi8qKlxuICogRXhlY3V0aW9uIHN0YXR1cyBmb3IgYSB3b3JrZmxvdyBvciBpbmRpdmlkdWFsIG5vZGUuXG4gKi9cbmV4cG9ydCBlbnVtIEdyYXBoRXhlY3V0aW9uU3RhdHVzIHtcbiAgUEVORElORyA9IFwicGVuZGluZ1wiLFxuICBQTEFOTklORyA9IFwicGxhbm5pbmdcIixcbiAgUlVOTklORyA9IFwicnVubmluZ1wiLFxuICBTVUNDRUVERUQgPSBcInN1Y2NlZWRlZFwiLFxuICBGQUlMRUQgPSBcImZhaWxlZFwiLFxuICBTS0lQUEVEID0gXCJza2lwcGVkXCIsXG4gIENBTkNFTExFRCA9IFwiY2FuY2VsbGVkXCIsXG4gIENBQ0hFRCA9IFwiY2FjaGVkXCIsXG59XG5cbi8qKlxuICogRXZlbnQgdHlwZXMgZW1pdHRlZCB0aHJvdWdoIHRoZSBncmFwaCBleGVjdXRpb24gb2JzZXJ2ZXIgcGlwZWxpbmUuXG4gKi9cbmV4cG9ydCBlbnVtIEdyYXBoRXhlY3V0aW9uRXZlbnRUeXBlIHtcbiAgV09SS0ZMT1dfU1RBUlRFRCA9IFwid29ya2Zsb3cuc3RhcnRlZFwiLFxuICBXT1JLRkxPV19QTEFOTkVEID0gXCJ3b3JrZmxvdy5wbGFubmVkXCIsXG4gIFdPUktGTE9XX0NPTVBMRVRFRCA9IFwid29ya2Zsb3cuY29tcGxldGVkXCIsXG4gIFdPUktGTE9XX0ZBSUxFRCA9IFwid29ya2Zsb3cuZmFpbGVkXCIsXG4gIFdPUktGTE9XX0NBTkNFTExFRCA9IFwid29ya2Zsb3cuY2FuY2VsbGVkXCIsXG5cbiAgTk9ERV9RVUVVRUQgPSBcIm5vZGUucXVldWVkXCIsXG4gIE5PREVfU1RBUlRFRCA9IFwibm9kZS5zdGFydGVkXCIsXG4gIE5PREVfT1VUUFVUID0gXCJub2RlLm91dHB1dFwiLFxuICBOT0RFX0NPTVBMRVRFRCA9IFwibm9kZS5jb21wbGV0ZWRcIixcbiAgTk9ERV9GQUlMRUQgPSBcIm5vZGUuZmFpbGVkXCIsXG4gIE5PREVfU0tJUFBFRCA9IFwibm9kZS5za2lwcGVkXCIsXG4gIE5PREVfQ0FDSEVfSElUID0gXCJub2RlLmNhY2hlSGl0XCIsXG4gIE5PREVfUElOTkVEID0gXCJub2RlLnBpbm5lZFwiLFxuICBOT0RFX1VOUElOTkVEID0gXCJub2RlLnVucGlubmVkXCIsXG5cbiAgRURHRV9WQUxVRV9ST1VURUQgPSBcImVkZ2UudmFsdWVSb3V0ZWRcIixcblxuICBMT09QX1NUQVJURUQgPSBcImxvb3Auc3RhcnRlZFwiLFxuICBMT09QX0lURVJBVElPTl9TVEFSVEVEID0gXCJsb29wLml0ZXJhdGlvbi5zdGFydGVkXCIsXG4gIExPT1BfSVRFUkFUSU9OX0NPTVBMRVRFRCA9IFwibG9vcC5pdGVyYXRpb24uY29tcGxldGVkXCIsXG4gIExPT1BfQ09ORElUSU9OX0VWQUxVQVRFRCA9IFwibG9vcC5jb25kaXRpb24uZXZhbHVhdGVkXCIsXG4gIExPT1BfQ09NUExFVEVEID0gXCJsb29wLmNvbXBsZXRlZFwiLFxuICBMT09QX0xJTUlUX1JFQUNIRUQgPSBcImxvb3AubGltaXRSZWFjaGVkXCIsXG5cbiAgVkFMSURBVElPTl9TVEFSVEVEID0gXCJ2YWxpZGF0aW9uLnN0YXJ0ZWRcIixcbiAgVkFMSURBVElPTl9GQUlMRUQgPSBcInZhbGlkYXRpb24uZmFpbGVkXCIsXG4gIFZBTElEQVRJT05fQ09NUExFVEVEID0gXCJ2YWxpZGF0aW9uLmNvbXBsZXRlZFwiLFxuXG4gIFNUT1JFX1JFQUQgPSBcInN0b3JlLnJlYWRcIixcbiAgU1RPUkVfV1JJVEUgPSBcInN0b3JlLndyaXRlXCIsXG4gIFNUT1JFX0RFTEVURSA9IFwic3RvcmUuZGVsZXRlXCIsXG59XG4iXX0=
@@ -0,0 +1,19 @@
1
+ /**
2
+ * @module integrations/graph/shared
3
+ * @summary Frontend-safe graph declarations.
4
+ * @description Subpath export for frontend bundles. Re-exports the node kind
5
+ * declarations, shared types, and shared constants — no engine runtime
6
+ * dependency. Also re-exports `Metadata` from `@decaf-ts/ui-decorators` so
7
+ * consumers get the `Metadata.nodes()` / `Metadata.workflows()` accessors
8
+ * (attached via the graph overrides side-effect import).
9
+ *
10
+ * Importing anything from this module triggers the `ui-decorators/graph`
11
+ * overrides side-effect, which attaches `nodes()` / `workflows()` to the
12
+ * `Metadata` class.
13
+ */
14
+ import "@decaf-ts/ui-decorators/graph";
15
+ export { Metadata } from "@decaf-ts/decoration";
16
+ export * from "./constants.js";
17
+ export * from "./types.js";
18
+ export * from "./nodes/index.js";
19
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvZ3JhcGgvc2hhcmVkL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7R0FZRztBQUNILE9BQU8sK0JBQStCLENBQUM7QUFFdkMsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ2hELCtCQUE0QjtBQUM1QiwyQkFBd0I7QUFDeEIsaUNBQXdCIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbW9kdWxlIGludGVncmF0aW9ucy9ncmFwaC9zaGFyZWRcbiAqIEBzdW1tYXJ5IEZyb250ZW5kLXNhZmUgZ3JhcGggZGVjbGFyYXRpb25zLlxuICogQGRlc2NyaXB0aW9uIFN1YnBhdGggZXhwb3J0IGZvciBmcm9udGVuZCBidW5kbGVzLiBSZS1leHBvcnRzIHRoZSBub2RlIGtpbmRcbiAqIGRlY2xhcmF0aW9ucywgc2hhcmVkIHR5cGVzLCBhbmQgc2hhcmVkIGNvbnN0YW50cyDigJQgbm8gZW5naW5lIHJ1bnRpbWVcbiAqIGRlcGVuZGVuY3kuIEFsc28gcmUtZXhwb3J0cyBgTWV0YWRhdGFgIGZyb20gYEBkZWNhZi10cy91aS1kZWNvcmF0b3JzYCBzb1xuICogY29uc3VtZXJzIGdldCB0aGUgYE1ldGFkYXRhLm5vZGVzKClgIC8gYE1ldGFkYXRhLndvcmtmbG93cygpYCBhY2Nlc3NvcnNcbiAqIChhdHRhY2hlZCB2aWEgdGhlIGdyYXBoIG92ZXJyaWRlcyBzaWRlLWVmZmVjdCBpbXBvcnQpLlxuICpcbiAqIEltcG9ydGluZyBhbnl0aGluZyBmcm9tIHRoaXMgbW9kdWxlIHRyaWdnZXJzIHRoZSBgdWktZGVjb3JhdG9ycy9ncmFwaGBcbiAqIG92ZXJyaWRlcyBzaWRlLWVmZmVjdCwgd2hpY2ggYXR0YWNoZXMgYG5vZGVzKClgIC8gYHdvcmtmbG93cygpYCB0byB0aGVcbiAqIGBNZXRhZGF0YWAgY2xhc3MuXG4gKi9cbmltcG9ydCBcIkBkZWNhZi10cy91aS1kZWNvcmF0b3JzL2dyYXBoXCI7XG5cbmV4cG9ydCB7IE1ldGFkYXRhIH0gZnJvbSBcIkBkZWNhZi10cy9kZWNvcmF0aW9uXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9jb25zdGFudHNcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3R5cGVzXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9ub2Rlc1wiO1xuIl19