callman-core 1.28.0 → 1.29.0

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 (345) hide show
  1. package/ai-packs/scenario-nodes.md +451 -0
  2. package/dist/ai/index.d.ts +2 -1
  3. package/dist/ai/index.d.ts.map +1 -1
  4. package/dist/ai/index.js +1 -0
  5. package/dist/ai/index.js.map +1 -1
  6. package/dist/ai/outputSchemas.d.ts +3 -0
  7. package/dist/ai/outputSchemas.d.ts.map +1 -1
  8. package/dist/ai/outputSchemas.js +1 -0
  9. package/dist/ai/outputSchemas.js.map +1 -1
  10. package/dist/ai/parse/diagram.d.ts.map +1 -1
  11. package/dist/ai/parse/diagram.js +6 -3
  12. package/dist/ai/parse/diagram.js.map +1 -1
  13. package/dist/ai/prompts/diagram.d.ts +7 -3
  14. package/dist/ai/prompts/diagram.d.ts.map +1 -1
  15. package/dist/ai/prompts/diagram.js +44 -5
  16. package/dist/ai/prompts/diagram.js.map +1 -1
  17. package/dist/ai/prompts/scenario.d.ts.map +1 -1
  18. package/dist/ai/prompts/scenario.js +9 -8
  19. package/dist/ai/prompts/scenario.js.map +1 -1
  20. package/dist/ai/prompts/scenarioNodeReference.d.ts +16 -0
  21. package/dist/ai/prompts/scenarioNodeReference.d.ts.map +1 -0
  22. package/dist/ai/prompts/scenarioNodeReference.js +882 -0
  23. package/dist/ai/prompts/scenarioNodeReference.js.map +1 -0
  24. package/dist/ai/types.d.ts +6 -0
  25. package/dist/ai/types.d.ts.map +1 -1
  26. package/dist/diagram/bpmn/derive.d.ts +74 -0
  27. package/dist/diagram/bpmn/derive.d.ts.map +1 -0
  28. package/dist/diagram/bpmn/derive.js +392 -0
  29. package/dist/diagram/bpmn/derive.js.map +1 -0
  30. package/dist/diagram/bpmn/index.d.ts +7 -0
  31. package/dist/diagram/bpmn/index.d.ts.map +1 -0
  32. package/dist/diagram/bpmn/index.js +12 -0
  33. package/dist/diagram/bpmn/index.js.map +1 -0
  34. package/dist/diagram/bpmn/patch.d.ts +14 -0
  35. package/dist/diagram/bpmn/patch.d.ts.map +1 -0
  36. package/dist/diagram/bpmn/patch.js +770 -0
  37. package/dist/diagram/bpmn/patch.js.map +1 -0
  38. package/dist/diagram/bpmn/place.d.ts +4 -0
  39. package/dist/diagram/bpmn/place.d.ts.map +1 -0
  40. package/dist/diagram/bpmn/place.js +65 -0
  41. package/dist/diagram/bpmn/place.js.map +1 -0
  42. package/dist/diagram/bpmn/serialize.d.ts +12 -0
  43. package/dist/diagram/bpmn/serialize.d.ts.map +1 -0
  44. package/dist/diagram/bpmn/serialize.js +292 -0
  45. package/dist/diagram/bpmn/serialize.js.map +1 -0
  46. package/dist/diagram/bpmn/types.d.ts +42 -0
  47. package/dist/diagram/bpmn/types.d.ts.map +1 -0
  48. package/dist/diagram/bpmn/types.js +84 -0
  49. package/dist/diagram/bpmn/types.js.map +1 -0
  50. package/dist/diagram/bpmn/xml.d.ts +60 -0
  51. package/dist/diagram/bpmn/xml.d.ts.map +1 -0
  52. package/dist/diagram/bpmn/xml.js +342 -0
  53. package/dist/diagram/bpmn/xml.js.map +1 -0
  54. package/dist/diagram/elkGraph.d.ts +1 -3
  55. package/dist/diagram/elkGraph.d.ts.map +1 -1
  56. package/dist/diagram/elkGraph.js +1 -0
  57. package/dist/diagram/elkGraph.js.map +1 -1
  58. package/dist/diagram/fixtures.d.ts +10 -0
  59. package/dist/diagram/fixtures.d.ts.map +1 -0
  60. package/dist/diagram/fixtures.js +113 -0
  61. package/dist/diagram/fixtures.js.map +1 -0
  62. package/dist/diagram/geometry.d.ts +27 -0
  63. package/dist/diagram/geometry.d.ts.map +1 -0
  64. package/dist/diagram/geometry.js +122 -0
  65. package/dist/diagram/geometry.js.map +1 -0
  66. package/dist/diagram/history.d.ts +36 -0
  67. package/dist/diagram/history.d.ts.map +1 -0
  68. package/dist/diagram/history.js +54 -0
  69. package/dist/diagram/history.js.map +1 -0
  70. package/dist/diagram/ids.d.ts +5 -0
  71. package/dist/diagram/ids.d.ts.map +1 -0
  72. package/dist/diagram/ids.js +52 -0
  73. package/dist/diagram/ids.js.map +1 -0
  74. package/dist/diagram/index.d.ts +14 -2
  75. package/dist/diagram/index.d.ts.map +1 -1
  76. package/dist/diagram/index.js +20 -8
  77. package/dist/diagram/index.js.map +1 -1
  78. package/dist/diagram/layout.d.ts +107 -0
  79. package/dist/diagram/layout.d.ts.map +1 -0
  80. package/dist/diagram/layout.js +356 -0
  81. package/dist/diagram/layout.js.map +1 -0
  82. package/dist/diagram/mermaid/derive.d.ts +55 -0
  83. package/dist/diagram/mermaid/derive.d.ts.map +1 -0
  84. package/dist/diagram/mermaid/derive.js +343 -0
  85. package/dist/diagram/mermaid/derive.js.map +1 -0
  86. package/dist/diagram/mermaid/index.d.ts +8 -0
  87. package/dist/diagram/mermaid/index.d.ts.map +1 -0
  88. package/dist/diagram/mermaid/index.js +24 -0
  89. package/dist/diagram/mermaid/index.js.map +1 -0
  90. package/dist/diagram/mermaid/parse.d.ts +96 -0
  91. package/dist/diagram/mermaid/parse.d.ts.map +1 -0
  92. package/dist/diagram/mermaid/parse.js +672 -0
  93. package/dist/diagram/mermaid/parse.js.map +1 -0
  94. package/dist/diagram/mermaid/patch.d.ts +16 -0
  95. package/dist/diagram/mermaid/patch.d.ts.map +1 -0
  96. package/dist/diagram/mermaid/patch.js +463 -0
  97. package/dist/diagram/mermaid/patch.js.map +1 -0
  98. package/dist/diagram/mermaid/serialize.d.ts +14 -0
  99. package/dist/diagram/mermaid/serialize.d.ts.map +1 -0
  100. package/dist/diagram/mermaid/serialize.js +125 -0
  101. package/dist/diagram/mermaid/serialize.js.map +1 -0
  102. package/dist/diagram/mermaid/shapes.d.ts +11 -0
  103. package/dist/diagram/mermaid/shapes.d.ts.map +1 -0
  104. package/dist/diagram/mermaid/shapes.js +320 -0
  105. package/dist/diagram/mermaid/shapes.js.map +1 -0
  106. package/dist/diagram/migrations.d.ts +1 -0
  107. package/dist/diagram/migrations.d.ts.map +1 -1
  108. package/dist/diagram/migrations.js +7 -2
  109. package/dist/diagram/migrations.js.map +1 -1
  110. package/dist/diagram/normalize.d.ts +9 -1
  111. package/dist/diagram/normalize.d.ts.map +1 -1
  112. package/dist/diagram/normalize.js +194 -0
  113. package/dist/diagram/normalize.js.map +1 -1
  114. package/dist/diagram/ops.d.ts +146 -0
  115. package/dist/diagram/ops.d.ts.map +1 -0
  116. package/dist/diagram/ops.js +823 -0
  117. package/dist/diagram/ops.js.map +1 -0
  118. package/dist/diagram/opsReference.d.ts +3 -0
  119. package/dist/diagram/opsReference.d.ts.map +1 -0
  120. package/dist/diagram/opsReference.js +51 -0
  121. package/dist/diagram/opsReference.js.map +1 -0
  122. package/dist/diagram/patchInput.d.ts +193 -0
  123. package/dist/diagram/patchInput.d.ts.map +1 -0
  124. package/dist/diagram/patchInput.js +621 -0
  125. package/dist/diagram/patchInput.js.map +1 -0
  126. package/dist/diagram/routing/batch.d.ts +45 -0
  127. package/dist/diagram/routing/batch.d.ts.map +1 -0
  128. package/dist/diagram/routing/batch.js +136 -0
  129. package/dist/diagram/routing/batch.js.map +1 -0
  130. package/dist/diagram/routing/curves.d.ts +7 -0
  131. package/dist/diagram/routing/curves.d.ts.map +1 -0
  132. package/dist/diagram/routing/curves.js +120 -0
  133. package/dist/diagram/routing/curves.js.map +1 -0
  134. package/dist/diagram/routing/grid.d.ts +15 -0
  135. package/dist/diagram/routing/grid.d.ts.map +1 -0
  136. package/dist/diagram/routing/grid.js +245 -0
  137. package/dist/diagram/routing/grid.js.map +1 -0
  138. package/dist/diagram/routing/index.d.ts +10 -0
  139. package/dist/diagram/routing/index.d.ts.map +1 -0
  140. package/dist/diagram/routing/index.js +10 -0
  141. package/dist/diagram/routing/index.js.map +1 -0
  142. package/dist/diagram/routing/legacy.d.ts +6 -0
  143. package/dist/diagram/routing/legacy.d.ts.map +1 -0
  144. package/dist/diagram/routing/legacy.js +27 -0
  145. package/dist/diagram/routing/legacy.js.map +1 -0
  146. package/dist/diagram/routing/nudge.d.ts +4 -0
  147. package/dist/diagram/routing/nudge.d.ts.map +1 -0
  148. package/dist/diagram/routing/nudge.js +96 -0
  149. package/dist/diagram/routing/nudge.js.map +1 -0
  150. package/dist/diagram/routing/orthogonal.d.ts +6 -0
  151. package/dist/diagram/routing/orthogonal.d.ts.map +1 -0
  152. package/dist/diagram/routing/orthogonal.js +56 -0
  153. package/dist/diagram/routing/orthogonal.js.map +1 -0
  154. package/dist/diagram/routing/path.d.ts +16 -0
  155. package/dist/diagram/routing/path.d.ts.map +1 -0
  156. package/dist/diagram/routing/path.js +128 -0
  157. package/dist/diagram/routing/path.js.map +1 -0
  158. package/dist/diagram/routing/sides.d.ts +22 -0
  159. package/dist/diagram/routing/sides.d.ts.map +1 -0
  160. package/dist/diagram/routing/sides.js +74 -0
  161. package/dist/diagram/routing/sides.js.map +1 -0
  162. package/dist/diagram/routing/types.d.ts +46 -0
  163. package/dist/diagram/routing/types.d.ts.map +1 -0
  164. package/dist/diagram/routing/types.js +11 -0
  165. package/dist/diagram/routing/types.js.map +1 -0
  166. package/dist/diagram/schema.d.ts +70 -37
  167. package/dist/diagram/schema.d.ts.map +1 -1
  168. package/dist/diagram/schema.js +62 -8
  169. package/dist/diagram/schema.js.map +1 -1
  170. package/dist/diagram/styleInput.d.ts +41 -0
  171. package/dist/diagram/styleInput.d.ts.map +1 -0
  172. package/dist/diagram/styleInput.js +105 -0
  173. package/dist/diagram/styleInput.js.map +1 -0
  174. package/dist/diagram/views.d.ts +9 -0
  175. package/dist/diagram/views.d.ts.map +1 -0
  176. package/dist/diagram/views.js +42 -0
  177. package/dist/diagram/views.js.map +1 -0
  178. package/dist/http-file/flatImport.d.ts +1 -0
  179. package/dist/http-file/flatImport.d.ts.map +1 -1
  180. package/dist/http-file/flatImport.js.map +1 -1
  181. package/dist/http-file/index.d.ts +1 -1
  182. package/dist/http-file/index.d.ts.map +1 -1
  183. package/dist/http-file/index.js +1 -1
  184. package/dist/http-file/index.js.map +1 -1
  185. package/dist/http-file/parseHttpFile.d.ts +1 -0
  186. package/dist/http-file/parseHttpFile.d.ts.map +1 -1
  187. package/dist/http-file/parseHttpFile.js +40 -8
  188. package/dist/http-file/parseHttpFile.js.map +1 -1
  189. package/dist/index.d.ts +1 -0
  190. package/dist/index.d.ts.map +1 -1
  191. package/dist/index.js +3 -0
  192. package/dist/index.js.map +1 -1
  193. package/dist/request/requestBody.d.ts +55 -0
  194. package/dist/request/requestBody.d.ts.map +1 -0
  195. package/dist/request/requestBody.js +198 -0
  196. package/dist/request/requestBody.js.map +1 -0
  197. package/dist/runner/requestRunner.d.ts.map +1 -1
  198. package/dist/runner/requestRunner.js +127 -43
  199. package/dist/runner/requestRunner.js.map +1 -1
  200. package/dist/runner/runCollection.d.ts +1 -1
  201. package/dist/runner/runCollection.d.ts.map +1 -1
  202. package/dist/runner/runCollection.js +9 -2
  203. package/dist/runner/runCollection.js.map +1 -1
  204. package/dist/scenario-runner/adapters/helpers/request-helpers.d.ts +2 -1
  205. package/dist/scenario-runner/adapters/helpers/request-helpers.d.ts.map +1 -1
  206. package/dist/scenario-runner/adapters/helpers/request-helpers.js +8 -40
  207. package/dist/scenario-runner/adapters/helpers/request-helpers.js.map +1 -1
  208. package/dist/scenario-runner/adapters/request-executor.d.ts.map +1 -1
  209. package/dist/scenario-runner/adapters/request-executor.js +2 -29
  210. package/dist/scenario-runner/adapters/request-executor.js.map +1 -1
  211. package/dist/scenario-runner/index.d.ts +1 -0
  212. package/dist/scenario-runner/index.d.ts.map +1 -1
  213. package/dist/scenario-runner/index.js +1 -0
  214. package/dist/scenario-runner/index.js.map +1 -1
  215. package/dist/scenario-runner/labels.d.ts +3 -0
  216. package/dist/scenario-runner/labels.d.ts.map +1 -0
  217. package/dist/scenario-runner/labels.js +20 -0
  218. package/dist/scenario-runner/labels.js.map +1 -0
  219. package/dist/scenario-runner/runScenario.d.ts.map +1 -1
  220. package/dist/scenario-runner/runScenario.js +4 -11
  221. package/dist/scenario-runner/runScenario.js.map +1 -1
  222. package/dist/script/legacy.d.ts.map +1 -1
  223. package/dist/script/legacy.js +24 -9
  224. package/dist/script/legacy.js.map +1 -1
  225. package/dist/types/index.d.ts +18 -1
  226. package/dist/types/index.d.ts.map +1 -1
  227. package/dist/variables/resolver.d.ts.map +1 -1
  228. package/dist/variables/resolver.js +27 -5
  229. package/dist/variables/resolver.js.map +1 -1
  230. package/dist-cjs/ai/index.js +4 -1
  231. package/dist-cjs/ai/index.js.map +1 -1
  232. package/dist-cjs/ai/outputSchemas.js +1 -0
  233. package/dist-cjs/ai/outputSchemas.js.map +1 -1
  234. package/dist-cjs/ai/parse/diagram.js +6 -3
  235. package/dist-cjs/ai/parse/diagram.js.map +1 -1
  236. package/dist-cjs/ai/prompts/diagram.js +44 -5
  237. package/dist-cjs/ai/prompts/diagram.js.map +1 -1
  238. package/dist-cjs/ai/prompts/scenario.js +9 -8
  239. package/dist-cjs/ai/prompts/scenario.js.map +1 -1
  240. package/dist-cjs/ai/prompts/scenarioNodeReference.js +886 -0
  241. package/dist-cjs/ai/prompts/scenarioNodeReference.js.map +1 -0
  242. package/dist-cjs/diagram/bpmn/derive.js +398 -0
  243. package/dist-cjs/diagram/bpmn/derive.js.map +1 -0
  244. package/dist-cjs/diagram/bpmn/index.js +31 -0
  245. package/dist-cjs/diagram/bpmn/index.js.map +1 -0
  246. package/dist-cjs/diagram/bpmn/patch.js +774 -0
  247. package/dist-cjs/diagram/bpmn/patch.js.map +1 -0
  248. package/dist-cjs/diagram/bpmn/place.js +69 -0
  249. package/dist-cjs/diagram/bpmn/place.js.map +1 -0
  250. package/dist-cjs/diagram/bpmn/serialize.js +299 -0
  251. package/dist-cjs/diagram/bpmn/serialize.js.map +1 -0
  252. package/dist-cjs/diagram/bpmn/types.js +99 -0
  253. package/dist-cjs/diagram/bpmn/types.js.map +1 -0
  254. package/dist-cjs/diagram/bpmn/xml.js +367 -0
  255. package/dist-cjs/diagram/bpmn/xml.js.map +1 -0
  256. package/dist-cjs/diagram/elkGraph.js +1 -0
  257. package/dist-cjs/diagram/elkGraph.js.map +1 -1
  258. package/dist-cjs/diagram/fixtures.js +117 -0
  259. package/dist-cjs/diagram/fixtures.js.map +1 -0
  260. package/dist-cjs/diagram/geometry.js +143 -0
  261. package/dist-cjs/diagram/geometry.js.map +1 -0
  262. package/dist-cjs/diagram/history.js +65 -0
  263. package/dist-cjs/diagram/history.js.map +1 -0
  264. package/dist-cjs/diagram/ids.js +58 -0
  265. package/dist-cjs/diagram/ids.js.map +1 -0
  266. package/dist-cjs/diagram/index.js +23 -8
  267. package/dist-cjs/diagram/index.js.map +1 -1
  268. package/dist-cjs/diagram/layout.js +364 -0
  269. package/dist-cjs/diagram/layout.js.map +1 -0
  270. package/dist-cjs/diagram/mermaid/derive.js +353 -0
  271. package/dist-cjs/diagram/mermaid/derive.js.map +1 -0
  272. package/dist-cjs/diagram/mermaid/index.js +44 -0
  273. package/dist-cjs/diagram/mermaid/index.js.map +1 -0
  274. package/dist-cjs/diagram/mermaid/parse.js +681 -0
  275. package/dist-cjs/diagram/mermaid/parse.js.map +1 -0
  276. package/dist-cjs/diagram/mermaid/patch.js +468 -0
  277. package/dist-cjs/diagram/mermaid/patch.js.map +1 -0
  278. package/dist-cjs/diagram/mermaid/serialize.js +133 -0
  279. package/dist-cjs/diagram/mermaid/serialize.js.map +1 -0
  280. package/dist-cjs/diagram/mermaid/shapes.js +327 -0
  281. package/dist-cjs/diagram/mermaid/shapes.js.map +1 -0
  282. package/dist-cjs/diagram/migrations.js +9 -3
  283. package/dist-cjs/diagram/migrations.js.map +1 -1
  284. package/dist-cjs/diagram/normalize.js +198 -1
  285. package/dist-cjs/diagram/normalize.js.map +1 -1
  286. package/dist-cjs/diagram/ops.js +829 -0
  287. package/dist-cjs/diagram/ops.js.map +1 -0
  288. package/dist-cjs/diagram/opsReference.js +55 -0
  289. package/dist-cjs/diagram/opsReference.js.map +1 -0
  290. package/dist-cjs/diagram/patchInput.js +636 -0
  291. package/dist-cjs/diagram/patchInput.js.map +1 -0
  292. package/dist-cjs/diagram/routing/batch.js +142 -0
  293. package/dist-cjs/diagram/routing/batch.js.map +1 -0
  294. package/dist-cjs/diagram/routing/curves.js +127 -0
  295. package/dist-cjs/diagram/routing/curves.js.map +1 -0
  296. package/dist-cjs/diagram/routing/grid.js +250 -0
  297. package/dist-cjs/diagram/routing/grid.js.map +1 -0
  298. package/dist-cjs/diagram/routing/index.js +29 -0
  299. package/dist-cjs/diagram/routing/index.js.map +1 -0
  300. package/dist-cjs/diagram/routing/legacy.js +32 -0
  301. package/dist-cjs/diagram/routing/legacy.js.map +1 -0
  302. package/dist-cjs/diagram/routing/nudge.js +100 -0
  303. package/dist-cjs/diagram/routing/nudge.js.map +1 -0
  304. package/dist-cjs/diagram/routing/orthogonal.js +62 -0
  305. package/dist-cjs/diagram/routing/orthogonal.js.map +1 -0
  306. package/dist-cjs/diagram/routing/path.js +137 -0
  307. package/dist-cjs/diagram/routing/path.js.map +1 -0
  308. package/dist-cjs/diagram/routing/sides.js +82 -0
  309. package/dist-cjs/diagram/routing/sides.js.map +1 -0
  310. package/dist-cjs/diagram/routing/types.js +15 -0
  311. package/dist-cjs/diagram/routing/types.js.map +1 -0
  312. package/dist-cjs/diagram/schema.js +64 -9
  313. package/dist-cjs/diagram/schema.js.map +1 -1
  314. package/dist-cjs/diagram/styleInput.js +113 -0
  315. package/dist-cjs/diagram/styleInput.js.map +1 -0
  316. package/dist-cjs/diagram/views.js +46 -0
  317. package/dist-cjs/diagram/views.js.map +1 -0
  318. package/dist-cjs/http-file/flatImport.js.map +1 -1
  319. package/dist-cjs/http-file/index.js +2 -1
  320. package/dist-cjs/http-file/index.js.map +1 -1
  321. package/dist-cjs/http-file/parseHttpFile.js +42 -9
  322. package/dist-cjs/http-file/parseHttpFile.js.map +1 -1
  323. package/dist-cjs/index.js +9 -1
  324. package/dist-cjs/index.js.map +1 -1
  325. package/dist-cjs/request/requestBody.js +206 -0
  326. package/dist-cjs/request/requestBody.js.map +1 -0
  327. package/dist-cjs/runner/requestRunner.js +127 -43
  328. package/dist-cjs/runner/requestRunner.js.map +1 -1
  329. package/dist-cjs/runner/runCollection.js +9 -2
  330. package/dist-cjs/runner/runCollection.js.map +1 -1
  331. package/dist-cjs/scenario-runner/adapters/helpers/request-helpers.js +7 -42
  332. package/dist-cjs/scenario-runner/adapters/helpers/request-helpers.js.map +1 -1
  333. package/dist-cjs/scenario-runner/adapters/request-executor.js +3 -30
  334. package/dist-cjs/scenario-runner/adapters/request-executor.js.map +1 -1
  335. package/dist-cjs/scenario-runner/index.js +4 -1
  336. package/dist-cjs/scenario-runner/index.js.map +1 -1
  337. package/dist-cjs/scenario-runner/labels.js +24 -0
  338. package/dist-cjs/scenario-runner/labels.js.map +1 -0
  339. package/dist-cjs/scenario-runner/runScenario.js +4 -11
  340. package/dist-cjs/scenario-runner/runScenario.js.map +1 -1
  341. package/dist-cjs/script/legacy.js +24 -9
  342. package/dist-cjs/script/legacy.js.map +1 -1
  343. package/dist-cjs/variables/resolver.js +27 -5
  344. package/dist-cjs/variables/resolver.js.map +1 -1
  345. package/package.json +1 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scenarioNodeReference.js","sourceRoot":"","sources":["../../../src/ai/prompts/scenarioNodeReference.ts"],"names":[],"mappings":"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"}
@@ -28,6 +28,8 @@ export interface DiagramComponentRef {
28
28
  label: string;
29
29
  category: string;
30
30
  }
31
+ export type AiDiagramEditOutput = "document" | "ops";
32
+ export type AiDiagramKind = "canvas" | "mermaid" | "bpmn";
31
33
  export interface DiagramPromptInput {
32
34
  instruction: string;
33
35
  mode: AiDiagramMode;
@@ -38,6 +40,8 @@ export interface DiagramPromptInput {
38
40
  width?: number;
39
41
  height?: number;
40
42
  };
43
+ editOutput?: AiDiagramEditOutput;
44
+ diagramKind?: AiDiagramKind;
41
45
  }
42
46
  export type ScenarioAiMode = "create" | "edit";
43
47
  export interface ScenarioAiConnectionRef {
@@ -91,6 +95,8 @@ export interface AiDiagramOutput {
91
95
  reply: string;
92
96
  /** Loose on purpose — hosts validate before applying. Null = reply only. */
93
97
  diagram: unknown;
98
+ /** Edit-as-ops answers: the raw op list (hosts lower + validate it). Null/absent otherwise. */
99
+ ops?: unknown[] | null;
94
100
  }
95
101
  export interface AiScenarioOutput {
96
102
  reply: string;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/ai/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/ai/types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,74 @@
1
+ import { type Rect } from "../geometry.js";
2
+ import type { DiagramOp } from "../ops.js";
3
+ import type { DiagramDocument, DiagramEdge, DiagramNode, Point, Size } from "../schema.js";
4
+ import { type BpmnEdgeData, type BpmnNodeData } from "./types.js";
5
+ import { type XmlDocument, type XmlElement } from "./xml.js";
6
+ export declare const BPMN_NS = "http://www.omg.org/spec/BPMN/20100524/MODEL";
7
+ export declare const BPMNDI_NS = "http://www.omg.org/spec/BPMN/20100524/DI";
8
+ export declare const DC_NS = "http://www.omg.org/spec/DD/20100524/DC";
9
+ export declare const DI_NS = "http://www.omg.org/spec/DD/20100524/DI";
10
+ export declare const BIOC_NS = "http://bpmn.io/schema/bpmn/biocolor/1.0";
11
+ export declare const BPMN_GRAMMAR_VERSION = "2.0";
12
+ export interface BpmnDiagnostic {
13
+ message: string;
14
+ severity: "error" | "warning";
15
+ elementId?: string;
16
+ }
17
+ export interface BpmnStructureNode {
18
+ id: string;
19
+ type: string;
20
+ label?: string;
21
+ parentId?: string;
22
+ position?: Point;
23
+ size?: Size;
24
+ collapsed?: boolean;
25
+ data: BpmnNodeData;
26
+ style?: DiagramNode["style"];
27
+ }
28
+ export interface BpmnStructureEdge {
29
+ id: string;
30
+ source: string;
31
+ target: string;
32
+ label?: string;
33
+ waypoints?: Point[];
34
+ data: BpmnEdgeData;
35
+ style?: DiagramEdge["style"];
36
+ }
37
+ export interface BpmnShapeInfo {
38
+ element: XmlElement;
39
+ bounds: Rect;
40
+ isExpanded?: boolean;
41
+ isHorizontal?: boolean;
42
+ }
43
+ export interface BpmnStructure {
44
+ nodes: BpmnStructureNode[];
45
+ edges: BpmnStructureEdge[];
46
+ diagnostics: BpmnDiagnostic[];
47
+ processIds: string[];
48
+ collaborationId?: string;
49
+ }
50
+ export interface ParsedBpmn {
51
+ ok: boolean;
52
+ xml: XmlDocument;
53
+ definitions: XmlElement | null;
54
+ collaboration: XmlElement | null;
55
+ processes: XmlElement[];
56
+ plane: XmlElement | null;
57
+ elements: Map<string, XmlElement>;
58
+ shapes: Map<string, BpmnShapeInfo>;
59
+ diEdges: Map<string, {
60
+ element: XmlElement;
61
+ waypoints: Point[];
62
+ }>;
63
+ structure: BpmnStructure;
64
+ }
65
+ export declare const looksLikeBpmn: (text: string) => boolean;
66
+ export declare const parseBpmn: (text: string) => ParsedBpmn;
67
+ export interface BpmnSyncResult {
68
+ ops: DiagramOp[];
69
+ addedNodeIds: string[];
70
+ removedNodeIds: string[];
71
+ unpositionedNodeIds: string[];
72
+ }
73
+ export declare const syncOpsFromBpmn: (doc: DiagramDocument, structure: BpmnStructure) => BpmnSyncResult;
74
+ //# sourceMappingURL=derive.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"derive.d.ts","sourceRoot":"","sources":["../../../src/diagram/bpmn/derive.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,392 @@
1
+ // BPMN 2.0 XML → the diagram STRUCTURE (flow nodes, sequence/message flows,
2
+ // pools, lanes, subprocesses — with their DI positions) and the ops that
3
+ // bring an existing document in line with it. The XML is the truth: what it
4
+ // does not describe as a flow node (annotations, data objects, extension
5
+ // elements) stays in the text and out of the model.
6
+ import { semanticStyle } from "../edgeSemantics.js";
7
+ import { absoluteRects } from "../geometry.js";
8
+ import { BPMN_FLOW_NODE_ELEMENTS, bpmnTypeForElement, eventDefinitionFromElement, getBpmnType, } from "./types.js";
9
+ import { attr, childElements, parseXml, textContent } from "./xml.js";
10
+ export const BPMN_NS = "http://www.omg.org/spec/BPMN/20100524/MODEL";
11
+ export const BPMNDI_NS = "http://www.omg.org/spec/BPMN/20100524/DI";
12
+ export const DC_NS = "http://www.omg.org/spec/DD/20100524/DC";
13
+ export const DI_NS = "http://www.omg.org/spec/DD/20100524/DI";
14
+ export const BIOC_NS = "http://bpmn.io/schema/bpmn/biocolor/1.0";
15
+ export const BPMN_GRAMMAR_VERSION = "2.0";
16
+ export const looksLikeBpmn = (text) => /<([A-Za-z0-9_]+:)?definitions[\s>]/.test(text);
17
+ const num = (value) => {
18
+ const parsed = Number(value);
19
+ return Number.isFinite(parsed) ? parsed : 0;
20
+ };
21
+ const rawColor = (value) => (value ? { raw: value } : undefined);
22
+ export const parseBpmn = (text) => {
23
+ const xml = parseXml(text);
24
+ const diagnostics = xml.errors.map((message) => ({ message, severity: "warning" }));
25
+ const empty = {
26
+ ok: false,
27
+ xml,
28
+ definitions: null,
29
+ collaboration: null,
30
+ processes: [],
31
+ plane: null,
32
+ elements: new Map(),
33
+ shapes: new Map(),
34
+ diEdges: new Map(),
35
+ structure: { nodes: [], edges: [], diagnostics, processIds: [] },
36
+ };
37
+ const root = xml.root;
38
+ if (!root || root.local !== "definitions") {
39
+ diagnostics.push({ message: "Not a BPMN 2.0 document: the root element must be <definitions>.", severity: "error" });
40
+ return empty;
41
+ }
42
+ const elements = new Map();
43
+ const collect = (element) => {
44
+ const id = attr(element, "id");
45
+ if (id && !elements.has(id))
46
+ elements.set(id, element);
47
+ for (const child of childElements(element))
48
+ collect(child);
49
+ };
50
+ collect(root);
51
+ // Diagram interchange: the first diagram's plane.
52
+ const diagram = childElements(root).find((child) => child.local === "BPMNDiagram") ?? null;
53
+ const plane = diagram ? (childElements(diagram).find((child) => child.local === "BPMNPlane") ?? null) : null;
54
+ const shapes = new Map();
55
+ const diEdges = new Map();
56
+ if (plane) {
57
+ for (const child of childElements(plane)) {
58
+ const ref = attr(child, "bpmnElement");
59
+ if (!ref)
60
+ continue;
61
+ if (child.local === "BPMNShape") {
62
+ const bounds = childElements(child).find((entry) => entry.local === "Bounds");
63
+ if (!bounds)
64
+ continue;
65
+ const expanded = attr(child, "isExpanded");
66
+ const horizontal = attr(child, "isHorizontal");
67
+ shapes.set(ref, {
68
+ element: child,
69
+ bounds: { x: num(attr(bounds, "x")), y: num(attr(bounds, "y")), width: num(attr(bounds, "width")), height: num(attr(bounds, "height")) },
70
+ ...(expanded !== undefined ? { isExpanded: expanded === "true" } : {}),
71
+ ...(horizontal !== undefined ? { isHorizontal: horizontal === "true" } : {}),
72
+ });
73
+ }
74
+ else if (child.local === "BPMNEdge") {
75
+ const waypoints = childElements(child)
76
+ .filter((entry) => entry.local === "waypoint")
77
+ .map((entry) => ({ x: num(attr(entry, "x")), y: num(attr(entry, "y")) }));
78
+ diEdges.set(ref, { element: child, waypoints });
79
+ }
80
+ }
81
+ }
82
+ else {
83
+ diagnostics.push({ message: "The document has no BPMNDiagram; shapes will be placed automatically.", severity: "warning" });
84
+ }
85
+ const styleFor = (id) => {
86
+ const shape = shapes.get(id)?.element ?? diEdges.get(id)?.element;
87
+ if (!shape)
88
+ return undefined;
89
+ const fill = rawColor(attr(shape, "bioc:fill") ?? attr(shape, "color:background-color"));
90
+ const stroke = rawColor(attr(shape, "bioc:stroke") ?? attr(shape, "color:border-color"));
91
+ if (!fill && !stroke)
92
+ return undefined;
93
+ return { ...(fill ? { fill } : {}), ...(stroke ? { stroke } : {}) };
94
+ };
95
+ const nodes = [];
96
+ const edges = [];
97
+ const nodeIds = new Set();
98
+ const pushNode = (node) => {
99
+ if (nodeIds.has(node.id))
100
+ return;
101
+ nodeIds.add(node.id);
102
+ const shape = shapes.get(node.id);
103
+ if (shape) {
104
+ node.position = { x: shape.bounds.x, y: shape.bounds.y };
105
+ node.size = { width: shape.bounds.width, height: shape.bounds.height };
106
+ }
107
+ const style = styleFor(node.id);
108
+ if (style)
109
+ node.style = style;
110
+ nodes.push(node);
111
+ };
112
+ // Collaboration: pools (participants) and message flows.
113
+ const collaboration = childElements(root).find((child) => child.local === "collaboration") ?? null;
114
+ const poolByProcess = new Map();
115
+ const messageFlows = [];
116
+ if (collaboration) {
117
+ for (const child of childElements(collaboration)) {
118
+ if (child.local === "participant") {
119
+ const id = attr(child, "id");
120
+ if (!id)
121
+ continue;
122
+ const processRef = attr(child, "processRef");
123
+ if (processRef)
124
+ poolByProcess.set(processRef, id);
125
+ const name = attr(child, "name");
126
+ pushNode({ id, type: "bpmn.pool", ...(name ? { label: name } : {}), data: { element: "participant", ...(processRef ? { processRef } : {}) } });
127
+ }
128
+ else if (child.local === "messageFlow") {
129
+ messageFlows.push(child);
130
+ }
131
+ }
132
+ }
133
+ // Processes: lanes, flow nodes (recursing into expanded subprocesses) and flows.
134
+ const processes = childElements(root).filter((child) => child.local === "process");
135
+ const sequenceFlows = [];
136
+ const defaultFlowIds = new Set();
137
+ for (const process of processes) {
138
+ const processId = attr(process, "id") ?? "";
139
+ const poolId = poolByProcess.get(processId);
140
+ const laneOf = new Map();
141
+ const walkLanes = (laneSet, parentId) => {
142
+ for (const lane of childElements(laneSet)) {
143
+ if (lane.local !== "lane")
144
+ continue;
145
+ const laneId = attr(lane, "id");
146
+ if (!laneId)
147
+ continue;
148
+ const name = attr(lane, "name");
149
+ pushNode({ id: laneId, type: "bpmn.lane", ...(name ? { label: name } : {}), ...(parentId ? { parentId } : {}), data: { element: "lane" } });
150
+ for (const child of childElements(lane)) {
151
+ if (child.local === "flowNodeRef")
152
+ laneOf.set(textContent(child).trim(), laneId);
153
+ else if (child.local === "childLaneSet")
154
+ walkLanes(child, laneId);
155
+ }
156
+ }
157
+ };
158
+ for (const child of childElements(process))
159
+ if (child.local === "laneSet")
160
+ walkLanes(child, poolId);
161
+ const walkFlow = (container, containerId, lanesApply) => {
162
+ for (const child of childElements(container)) {
163
+ if (child.local === "sequenceFlow") {
164
+ const id = attr(child, "id");
165
+ if (id)
166
+ sequenceFlows.push({ element: child, id });
167
+ continue;
168
+ }
169
+ if (!BPMN_FLOW_NODE_ELEMENTS.has(child.local))
170
+ continue;
171
+ const id = attr(child, "id");
172
+ if (!id)
173
+ continue;
174
+ const meta = bpmnTypeForElement(child.local);
175
+ if (!meta)
176
+ continue;
177
+ const defaultFlow = attr(child, "default");
178
+ if (defaultFlow)
179
+ defaultFlowIds.add(defaultFlow);
180
+ const data = { element: child.local };
181
+ for (const inner of childElements(child)) {
182
+ const definition = eventDefinitionFromElement(inner.local);
183
+ if (definition) {
184
+ data.eventDefinition = definition;
185
+ break;
186
+ }
187
+ }
188
+ if (child.local === "boundaryEvent") {
189
+ const attachedTo = attr(child, "attachedToRef");
190
+ if (attachedTo)
191
+ data.attachedTo = attachedTo;
192
+ if (attr(child, "cancelActivity") === "false")
193
+ data.cancelActivity = false;
194
+ }
195
+ let collapsed;
196
+ if (child.local === "subProcess") {
197
+ if (attr(child, "triggeredByEvent") === "true")
198
+ data.triggeredByEvent = true;
199
+ const expanded = shapes.get(id)?.isExpanded === true;
200
+ data.isExpanded = expanded;
201
+ collapsed = !expanded;
202
+ }
203
+ const name = attr(child, "name");
204
+ const parentId = (lanesApply ? laneOf.get(id) : undefined) ?? containerId;
205
+ pushNode({ id, type: meta.type, ...(name ? { label: name } : {}), ...(parentId ? { parentId } : {}), ...(collapsed ? { collapsed: true } : {}), data });
206
+ if (child.local === "subProcess" && !collapsed)
207
+ walkFlow(child, id, false);
208
+ }
209
+ };
210
+ walkFlow(process, poolId, true);
211
+ }
212
+ const flowEdge = (element, id, flow) => {
213
+ const source = attr(element, "sourceRef");
214
+ const target = attr(element, "targetRef");
215
+ if (!source || !target || !nodeIds.has(source) || !nodeIds.has(target)) {
216
+ diagnostics.push({ message: `Flow "${id}" connects elements the diagram does not model; it is kept in the XML only.`, severity: "warning", elementId: id });
217
+ return;
218
+ }
219
+ const name = attr(element, "name");
220
+ const condition = childElements(element).find((child) => child.local === "conditionExpression");
221
+ const data = { flow };
222
+ if (condition)
223
+ data.conditionExpression = textContent(condition).trim();
224
+ if (defaultFlowIds.has(id))
225
+ data.isDefault = true;
226
+ const waypoints = diEdges.get(id)?.waypoints;
227
+ const style = flow === "message" ? semanticStyle("async") : undefined;
228
+ const colored = styleFor(id);
229
+ edges.push({
230
+ id,
231
+ source,
232
+ target,
233
+ ...(name ? { label: name } : {}),
234
+ ...(waypoints && waypoints.length >= 2 ? { waypoints } : {}),
235
+ data,
236
+ ...(style || colored ? { style: { ...(style ?? {}), ...(colored ?? {}) } } : {}),
237
+ });
238
+ };
239
+ for (const flow of sequenceFlows)
240
+ flowEdge(flow.element, flow.id, "sequence");
241
+ for (const flow of messageFlows) {
242
+ const id = attr(flow, "id");
243
+ if (id)
244
+ flowEdge(flow, id, "message");
245
+ }
246
+ return {
247
+ ok: true,
248
+ xml,
249
+ definitions: root,
250
+ collaboration,
251
+ processes,
252
+ plane,
253
+ elements,
254
+ shapes,
255
+ diEdges,
256
+ structure: {
257
+ nodes,
258
+ edges,
259
+ diagnostics,
260
+ processIds: processes.map((process) => attr(process, "id") ?? "").filter(Boolean),
261
+ ...(collaboration && attr(collaboration, "id") ? { collaborationId: attr(collaboration, "id") } : {}),
262
+ },
263
+ };
264
+ };
265
+ const samePoint = (a, b) => a === b || (a !== undefined && b !== undefined && Math.abs(a.x - b.x) < 0.5 && Math.abs(a.y - b.y) < 0.5);
266
+ const samePoints = (a, b) => (a === undefined && b === undefined) || (a !== undefined && b !== undefined && a.length === b.length && a.every((point, index) => samePoint(point, b[index])));
267
+ const sameJson = (a, b) => JSON.stringify(a ?? null) === JSON.stringify(b ?? null);
268
+ export const syncOpsFromBpmn = (doc, structure) => {
269
+ const ops = [];
270
+ const addedNodeIds = [];
271
+ const removedNodeIds = [];
272
+ const unpositionedNodeIds = [];
273
+ const existingNodes = new Map(doc.nodes.map((node) => [node.id, node]));
274
+ const existingEdges = new Map(doc.edges.map((edge) => [edge.id, edge]));
275
+ const existingRects = absoluteRects(doc);
276
+ const wantedNodes = new Map(structure.nodes.map((node) => [node.id, node]));
277
+ const wantedEdges = new Map(structure.edges.map((edge) => [edge.id, edge]));
278
+ for (const edge of doc.edges) {
279
+ if (!wantedEdges.has(edge.id) && edge.source && edge.target && existingNodes.has(edge.source) && existingNodes.has(edge.target)) {
280
+ if (wantedNodes.has(edge.source) && wantedNodes.has(edge.target))
281
+ ops.push({ op: "removeEdge", id: edge.id });
282
+ }
283
+ }
284
+ for (const node of doc.nodes) {
285
+ if (!wantedNodes.has(node.id)) {
286
+ ops.push({ op: "removeNode", id: node.id, children: "lift" });
287
+ removedNodeIds.push(node.id);
288
+ }
289
+ }
290
+ const ordered = [];
291
+ const placed = new Set();
292
+ const place = (node, depth) => {
293
+ if (placed.has(node.id) || depth > structure.nodes.length)
294
+ return;
295
+ if (node.parentId && wantedNodes.has(node.parentId) && !placed.has(node.parentId))
296
+ place(wantedNodes.get(node.parentId), depth + 1);
297
+ placed.add(node.id);
298
+ ordered.push(node);
299
+ };
300
+ for (const node of structure.nodes)
301
+ place(node, 0);
302
+ // Absolute position of a node as it will be after this sync.
303
+ const absoluteOf = (id) => {
304
+ if (!id)
305
+ return { x: 0, y: 0 };
306
+ const wanted = wantedNodes.get(id);
307
+ if (wanted?.position)
308
+ return wanted.position;
309
+ const rect = existingRects.get(id);
310
+ return rect ? { x: rect.x, y: rect.y } : { x: 0, y: 0 };
311
+ };
312
+ for (const wanted of ordered) {
313
+ const existing = existingNodes.get(wanted.id);
314
+ const parentAbs = absoluteOf(wanted.parentId);
315
+ const relative = wanted.position ? { x: wanted.position.x - parentAbs.x, y: wanted.position.y - parentAbs.y } : undefined;
316
+ const size = wanted.size ?? getBpmnType(wanted.type)?.size ?? { width: 100, height: 80 };
317
+ if (!existing) {
318
+ const node = {
319
+ id: wanted.id,
320
+ type: wanted.type,
321
+ position: relative ?? { x: 0, y: 0 },
322
+ size,
323
+ ...(wanted.label !== undefined ? { label: wanted.label } : {}),
324
+ ...(wanted.parentId ? { parentId: wanted.parentId } : {}),
325
+ ...(wanted.collapsed ? { collapsed: true } : {}),
326
+ ...(wanted.style ? { style: wanted.style } : {}),
327
+ data: { bpmn: wanted.data },
328
+ };
329
+ ops.push({ op: "addNode", node });
330
+ addedNodeIds.push(wanted.id);
331
+ if (!relative)
332
+ unpositionedNodeIds.push(wanted.id);
333
+ continue;
334
+ }
335
+ const changes = {};
336
+ if (wanted.type !== existing.type)
337
+ changes.type = wanted.type;
338
+ if ((wanted.label ?? null) !== (existing.label ?? null))
339
+ changes.label = wanted.label ?? null;
340
+ if (Boolean(wanted.collapsed) !== Boolean(existing.collapsed))
341
+ changes.collapsed = Boolean(wanted.collapsed);
342
+ if (!sameJson(existing.data?.bpmn, wanted.data))
343
+ changes.data = { bpmn: wanted.data };
344
+ const wantedFill = wanted.style?.fill ?? null;
345
+ const wantedStroke = wanted.style?.stroke ?? null;
346
+ if (!sameJson(existing.style?.fill ?? null, wantedFill) || !sameJson(existing.style?.stroke ?? null, wantedStroke)) {
347
+ changes.style = { fill: wantedFill, stroke: wantedStroke };
348
+ }
349
+ if (Object.keys(changes).length > 0)
350
+ ops.push({ op: "updateNode", id: wanted.id, changes });
351
+ if ((wanted.parentId ?? null) !== (existing.parentId ?? null)) {
352
+ ops.push({ op: "reparent", id: wanted.id, parentId: wanted.parentId ?? null, position: relative ?? existing.position });
353
+ }
354
+ else if (relative && !samePoint(relative, existing.position)) {
355
+ ops.push({ op: "moveNodes", moves: [{ id: wanted.id, position: relative }] });
356
+ }
357
+ if (wanted.size && (Math.abs(wanted.size.width - existing.size.width) >= 0.5 || Math.abs(wanted.size.height - existing.size.height) >= 0.5)) {
358
+ ops.push({ op: "resizeNode", id: wanted.id, size: wanted.size });
359
+ }
360
+ }
361
+ for (const wanted of structure.edges) {
362
+ const existing = existingEdges.get(wanted.id);
363
+ if (!existing) {
364
+ const edge = {
365
+ id: wanted.id,
366
+ source: wanted.source,
367
+ target: wanted.target,
368
+ ...(wanted.label ? { label: wanted.label } : {}),
369
+ ...(wanted.waypoints ? { waypoints: wanted.waypoints } : {}),
370
+ ...(wanted.style ? { style: wanted.style } : {}),
371
+ data: { bpmn: wanted.data },
372
+ };
373
+ ops.push({ op: "addEdge", edge });
374
+ continue;
375
+ }
376
+ const changes = {};
377
+ if (existing.source !== wanted.source)
378
+ changes.source = wanted.source;
379
+ if (existing.target !== wanted.target)
380
+ changes.target = wanted.target;
381
+ if ((wanted.label ?? null) !== (existing.label ?? null))
382
+ changes.label = wanted.label ?? null;
383
+ if (wanted.waypoints && !samePoints(wanted.waypoints, existing.waypoints))
384
+ changes.waypoints = wanted.waypoints;
385
+ if (!sameJson(existing.data?.bpmn, wanted.data))
386
+ changes.data = { bpmn: wanted.data };
387
+ if (Object.keys(changes).length > 0)
388
+ ops.push({ op: "updateEdge", id: wanted.id, changes });
389
+ }
390
+ return { ops, addedNodeIds, removedNodeIds, unpositionedNodeIds };
391
+ };
392
+ //# sourceMappingURL=derive.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"derive.js","sourceRoot":"","sources":["../../../src/diagram/bpmn/derive.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ export * from "./types.js";
2
+ export * from "./derive.js";
3
+ export * from "./serialize.js";
4
+ export * from "./place.js";
5
+ export { patchBpmnSource } from "./patch.js";
6
+ export { parseXml as parseBpmnXml, type XmlDocument, type XmlElement } from "./xml.js";
7
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/diagram/bpmn/index.ts"],"names":[],"mappings":"AAKA,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,YAAY,CAAC;AAC3B,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAC7C,OAAO,EAAE,QAAQ,IAAI,YAAY,EAAE,KAAK,WAAW,EAAE,KAAK,UAAU,EAAE,MAAM,UAAU,CAAC"}
@@ -0,0 +1,12 @@
1
+ // BPMN 2.0 as a diagram SOURCE format: the XML is the truth of a BPMN
2
+ // diagram; the model (bpmn.* nodes, sequence/message flow edges) is derived
3
+ // from it, and every model op lands on the XML as a minimal edit. The
4
+ // desktop edits the XML with bpmn-js; the AI and MCP never see XML — they
5
+ // use the same ops as for every other diagram.
6
+ export * from "./types.js";
7
+ export * from "./derive.js";
8
+ export * from "./serialize.js";
9
+ export * from "./place.js";
10
+ export { patchBpmnSource } from "./patch.js";
11
+ export { parseXml as parseBpmnXml } from "./xml.js";
12
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/diagram/bpmn/index.ts"],"names":[],"mappings":"AAAA,sEAAsE;AACtE,4EAA4E;AAC5E,sEAAsE;AACtE,0EAA0E;AAC1E,+CAA+C;AAC/C,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,YAAY,CAAC;AAC3B,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAC7C,OAAO,EAAE,QAAQ,IAAI,YAAY,EAAqC,MAAM,UAAU,CAAC"}