@grafloria/element 0.3.18 → 0.3.20

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 (1148) hide show
  1. package/esm/src/index.js +295 -0
  2. package/esm/src/lib/dashboard-kit/dashboard.js +590 -0
  3. package/esm/src/lib/dashboard-kit/grid-binder.js +1633 -0
  4. package/esm/src/lib/dashboard-kit/grid-mapping.js +164 -0
  5. package/esm/src/lib/dashboard-kit/index.js +8 -0
  6. package/esm/src/lib/dashboard-kit/styles.js +205 -0
  7. package/esm/src/lib/dashboard-kit/widgets.js +379 -0
  8. package/esm/src/lib/diagram-kit/card.js +199 -0
  9. package/esm/src/lib/diagram-kit/editing.js +448 -0
  10. package/esm/src/lib/diagram-kit/er.js +160 -0
  11. package/esm/src/lib/diagram-kit/handles.js +312 -0
  12. package/esm/src/lib/diagram-kit/index.js +15 -0
  13. package/esm/src/lib/diagram-kit/join-guidance.js +322 -0
  14. package/esm/src/lib/diagram-kit/rows.js +144 -0
  15. package/esm/src/lib/diagram-kit/styles.js +118 -0
  16. package/esm/src/lib/diagram-kit/uml.js +135 -0
  17. package/esm/src/lib/diagram-kit/update.js +244 -0
  18. package/esm/src/lib/grafloria-flow-element.js +266 -0
  19. package/esm/src/lib/grafloria.js +69 -0
  20. package/esm/src/lib/load.js +252 -0
  21. package/esm/src/lib/node-type-registry.js +42 -0
  22. package/esm/src/lib/stencil-kit/builders.js +18 -0
  23. package/esm/src/lib/stencil-kit/card-builders.js +105 -0
  24. package/esm/src/lib/stencil-kit/index.js +9 -0
  25. package/esm/src/lib/stencil-kit/palette.js +427 -0
  26. package/esm/src/lib/stencil-kit/shape-data.js +537 -0
  27. package/esm/src/lib/stencil-kit/styles.js +126 -0
  28. package/package.json +13 -4
  29. package/src/index.d.ts +2 -1
  30. package/src/index.js +11 -2
  31. package/src/lib/dashboard-kit/grid-binder.js +16 -15
  32. package/src/lib/dashboard-kit/styles.js +9 -3
  33. package/src/lib/diagram-kit/index.d.ts +1 -0
  34. package/src/lib/diagram-kit/index.js +11 -1
  35. package/src/lib/diagram-kit/join-guidance.d.ts +116 -0
  36. package/src/lib/diagram-kit/join-guidance.js +331 -0
  37. package/src/lib/stencil-kit/palette.js +60 -6
  38. package/src/lib/stencil-kit/shape-data.d.ts +3 -2
  39. package/src/lib/stencil-kit/shape-data.js +323 -31
  40. package/src/lib/stencil-kit/styles.js +15 -0
  41. package/src/libs/element/src/index.d.ts +92 -0
  42. package/src/libs/element/src/index.js +576 -0
  43. package/src/libs/element/src/lib/dashboard-kit/dashboard.d.ts +345 -0
  44. package/src/libs/element/src/lib/dashboard-kit/dashboard.js +594 -0
  45. package/src/libs/element/src/lib/dashboard-kit/grid-binder.d.ts +277 -0
  46. package/src/libs/element/src/lib/dashboard-kit/grid-binder.js +1636 -0
  47. package/src/libs/element/src/lib/dashboard-kit/grid-mapping.d.ts +141 -0
  48. package/src/libs/element/src/lib/dashboard-kit/grid-mapping.js +176 -0
  49. package/src/libs/element/src/lib/dashboard-kit/index.d.ts +5 -0
  50. package/src/libs/element/src/lib/dashboard-kit/index.js +33 -0
  51. package/src/libs/element/src/lib/dashboard-kit/styles.d.ts +25 -0
  52. package/src/libs/element/src/lib/dashboard-kit/styles.js +209 -0
  53. package/src/libs/element/src/lib/dashboard-kit/widgets.d.ts +112 -0
  54. package/src/libs/element/src/lib/dashboard-kit/widgets.js +389 -0
  55. package/src/libs/element/src/lib/diagram-kit/card.d.ts +75 -0
  56. package/src/libs/element/src/lib/diagram-kit/card.js +209 -0
  57. package/src/libs/element/src/lib/diagram-kit/editing.d.ts +58 -0
  58. package/src/libs/element/src/lib/diagram-kit/editing.js +453 -0
  59. package/src/libs/element/src/lib/diagram-kit/er.d.ts +73 -0
  60. package/src/libs/element/src/lib/diagram-kit/er.js +163 -0
  61. package/src/libs/element/src/lib/diagram-kit/handles.d.ts +181 -0
  62. package/src/libs/element/src/lib/diagram-kit/handles.js +325 -0
  63. package/src/libs/element/src/lib/diagram-kit/index.d.ts +10 -0
  64. package/src/libs/element/src/lib/diagram-kit/index.js +55 -0
  65. package/src/libs/element/src/lib/diagram-kit/join-guidance.d.ts +116 -0
  66. package/src/libs/element/src/lib/diagram-kit/join-guidance.js +331 -0
  67. package/src/libs/element/src/lib/diagram-kit/rows.d.ts +53 -0
  68. package/src/libs/element/src/lib/diagram-kit/rows.js +147 -0
  69. package/src/libs/element/src/lib/diagram-kit/styles.d.ts +18 -0
  70. package/src/libs/element/src/lib/diagram-kit/styles.js +122 -0
  71. package/src/libs/element/src/lib/diagram-kit/uml.d.ts +59 -0
  72. package/src/libs/element/src/lib/diagram-kit/uml.js +138 -0
  73. package/src/libs/element/src/lib/diagram-kit/update.d.ts +133 -0
  74. package/src/libs/element/src/lib/diagram-kit/update.js +251 -0
  75. package/src/libs/element/src/lib/grafloria-flow-element.d.ts +48 -0
  76. package/src/libs/element/src/lib/grafloria-flow-element.js +271 -0
  77. package/src/libs/element/src/lib/grafloria.d.ts +72 -0
  78. package/src/libs/element/src/lib/grafloria.js +74 -0
  79. package/src/libs/element/src/lib/load.d.ts +72 -0
  80. package/src/libs/element/src/lib/load.js +255 -0
  81. package/src/libs/element/src/lib/node-type-registry.d.ts +39 -0
  82. package/src/libs/element/src/lib/node-type-registry.js +50 -0
  83. package/src/libs/element/src/lib/stencil-kit/builders.d.ts +45 -0
  84. package/src/libs/element/src/lib/stencil-kit/builders.js +24 -0
  85. package/src/libs/element/src/lib/stencil-kit/card-builders.d.ts +2 -0
  86. package/src/libs/element/src/lib/stencil-kit/card-builders.js +108 -0
  87. package/src/libs/element/src/lib/stencil-kit/index.d.ts +7 -0
  88. package/src/libs/element/src/lib/stencil-kit/index.js +19 -0
  89. package/src/libs/element/src/lib/stencil-kit/palette.d.ts +93 -0
  90. package/src/libs/element/src/lib/stencil-kit/palette.js +430 -0
  91. package/src/libs/element/src/lib/stencil-kit/shape-data.d.ts +28 -0
  92. package/src/libs/element/src/lib/stencil-kit/shape-data.js +540 -0
  93. package/src/libs/element/src/lib/stencil-kit/styles.d.ts +2 -0
  94. package/src/libs/element/src/lib/stencil-kit/styles.js +129 -0
  95. package/src/libs/engine/src/adapters/component-adapter.interface.d.ts +302 -0
  96. package/src/libs/engine/src/adapters/component-adapter.interface.js +84 -0
  97. package/src/libs/engine/src/adapters/index.d.ts +7 -0
  98. package/src/libs/engine/src/adapters/index.js +11 -0
  99. package/src/libs/engine/src/clipboard/ClipboardManager.d.ts +81 -0
  100. package/src/libs/engine/src/clipboard/ClipboardManager.js +108 -0
  101. package/src/libs/engine/src/clipboard/index.d.ts +1 -0
  102. package/src/libs/engine/src/clipboard/index.js +6 -0
  103. package/src/libs/engine/src/collab/apply-op.d.ts +42 -0
  104. package/src/libs/engine/src/collab/apply-op.js +939 -0
  105. package/src/libs/engine/src/collab/capture.d.ts +147 -0
  106. package/src/libs/engine/src/collab/capture.js +510 -0
  107. package/src/libs/engine/src/collab/index.d.ts +12 -0
  108. package/src/libs/engine/src/collab/index.js +84 -0
  109. package/src/libs/engine/src/collab/integrity.d.ts +178 -0
  110. package/src/libs/engine/src/collab/integrity.js +438 -0
  111. package/src/libs/engine/src/collab/lww.d.ts +47 -0
  112. package/src/libs/engine/src/collab/lww.js +188 -0
  113. package/src/libs/engine/src/collab/op-log.d.ts +50 -0
  114. package/src/libs/engine/src/collab/op-log.js +167 -0
  115. package/src/libs/engine/src/collab/op.d.ts +120 -0
  116. package/src/libs/engine/src/collab/op.js +118 -0
  117. package/src/libs/engine/src/collab/replica.d.ts +188 -0
  118. package/src/libs/engine/src/collab/replica.js +526 -0
  119. package/src/libs/engine/src/collab/undo.d.ts +106 -0
  120. package/src/libs/engine/src/collab/undo.js +388 -0
  121. package/src/libs/engine/src/commands/Command.d.ts +66 -0
  122. package/src/libs/engine/src/commands/Command.js +64 -0
  123. package/src/libs/engine/src/commands/CommandManager.d.ts +161 -0
  124. package/src/libs/engine/src/commands/CommandManager.js +417 -0
  125. package/src/libs/engine/src/commands/basic/AddGroupCommand.d.ts +13 -0
  126. package/src/libs/engine/src/commands/basic/AddGroupCommand.js +50 -0
  127. package/src/libs/engine/src/commands/basic/AddLinkCommand.d.ts +13 -0
  128. package/src/libs/engine/src/commands/basic/AddLinkCommand.js +50 -0
  129. package/src/libs/engine/src/commands/basic/AddNodeCommand.d.ts +13 -0
  130. package/src/libs/engine/src/commands/basic/AddNodeCommand.js +65 -0
  131. package/src/libs/engine/src/commands/basic/AddToGroupCommand.d.ts +12 -0
  132. package/src/libs/engine/src/commands/basic/AddToGroupCommand.js +73 -0
  133. package/src/libs/engine/src/commands/basic/AlignCommands.d.ts +42 -0
  134. package/src/libs/engine/src/commands/basic/AlignCommands.js +138 -0
  135. package/src/libs/engine/src/commands/basic/CollapseGroupCommand.d.ts +14 -0
  136. package/src/libs/engine/src/commands/basic/CollapseGroupCommand.js +70 -0
  137. package/src/libs/engine/src/commands/basic/CopyCommand.d.ts +29 -0
  138. package/src/libs/engine/src/commands/basic/CopyCommand.js +131 -0
  139. package/src/libs/engine/src/commands/basic/CutCommand.d.ts +49 -0
  140. package/src/libs/engine/src/commands/basic/CutCommand.js +68 -0
  141. package/src/libs/engine/src/commands/basic/DeleteSelectionCommand.d.ts +58 -0
  142. package/src/libs/engine/src/commands/basic/DeleteSelectionCommand.js +309 -0
  143. package/src/libs/engine/src/commands/basic/DuplicateCommand.d.ts +31 -0
  144. package/src/libs/engine/src/commands/basic/DuplicateCommand.js +232 -0
  145. package/src/libs/engine/src/commands/basic/ExpandGroupCommand.d.ts +12 -0
  146. package/src/libs/engine/src/commands/basic/ExpandGroupCommand.js +69 -0
  147. package/src/libs/engine/src/commands/basic/MoveGroupCommand.d.ts +46 -0
  148. package/src/libs/engine/src/commands/basic/MoveGroupCommand.js +77 -0
  149. package/src/libs/engine/src/commands/basic/MoveNodeCommand.d.ts +30 -0
  150. package/src/libs/engine/src/commands/basic/MoveNodeCommand.js +87 -0
  151. package/src/libs/engine/src/commands/basic/NodeZOrderCommands.d.ts +39 -0
  152. package/src/libs/engine/src/commands/basic/NodeZOrderCommands.js +120 -0
  153. package/src/libs/engine/src/commands/basic/PasteCommand.d.ts +33 -0
  154. package/src/libs/engine/src/commands/basic/PasteCommand.js +228 -0
  155. package/src/libs/engine/src/commands/basic/PortCommands.d.ts +22 -0
  156. package/src/libs/engine/src/commands/basic/PortCommands.js +85 -0
  157. package/src/libs/engine/src/commands/basic/ReconnectLinkCommand.d.ts +15 -0
  158. package/src/libs/engine/src/commands/basic/ReconnectLinkCommand.js +59 -0
  159. package/src/libs/engine/src/commands/basic/RemoveFromGroupCommand.d.ts +12 -0
  160. package/src/libs/engine/src/commands/basic/RemoveFromGroupCommand.js +64 -0
  161. package/src/libs/engine/src/commands/basic/RemoveGroupCommand.d.ts +12 -0
  162. package/src/libs/engine/src/commands/basic/RemoveGroupCommand.js +56 -0
  163. package/src/libs/engine/src/commands/basic/RemoveLinkCommand.d.ts +12 -0
  164. package/src/libs/engine/src/commands/basic/RemoveLinkCommand.js +57 -0
  165. package/src/libs/engine/src/commands/basic/RemoveNodeCommand.d.ts +23 -0
  166. package/src/libs/engine/src/commands/basic/RemoveNodeCommand.js +108 -0
  167. package/src/libs/engine/src/commands/basic/ResizeNodeCommand.d.ts +16 -0
  168. package/src/libs/engine/src/commands/basic/ResizeNodeCommand.js +81 -0
  169. package/src/libs/engine/src/commands/basic/RotateNodeCommand.d.ts +37 -0
  170. package/src/libs/engine/src/commands/basic/RotateNodeCommand.js +88 -0
  171. package/src/libs/engine/src/commands/basic/SetFlexItemCommand.d.ts +14 -0
  172. package/src/libs/engine/src/commands/basic/SetFlexItemCommand.js +74 -0
  173. package/src/libs/engine/src/commands/basic/SetGridItemCommand.d.ts +14 -0
  174. package/src/libs/engine/src/commands/basic/SetGridItemCommand.js +74 -0
  175. package/src/libs/engine/src/commands/basic/SetLayoutCommand.d.ts +16 -0
  176. package/src/libs/engine/src/commands/basic/SetLayoutCommand.js +80 -0
  177. package/src/libs/engine/src/commands/basic/SetLinkDisplayLabelCommand.d.ts +28 -0
  178. package/src/libs/engine/src/commands/basic/SetLinkDisplayLabelCommand.js +83 -0
  179. package/src/libs/engine/src/commands/basic/SetLinkLabelCommand.d.ts +24 -0
  180. package/src/libs/engine/src/commands/basic/SetLinkLabelCommand.js +81 -0
  181. package/src/libs/engine/src/commands/basic/SetLinkLabelsCommand.d.ts +14 -0
  182. package/src/libs/engine/src/commands/basic/SetLinkLabelsCommand.js +75 -0
  183. package/src/libs/engine/src/commands/basic/SetLinkPathTypeCommand.d.ts +14 -0
  184. package/src/libs/engine/src/commands/basic/SetLinkPathTypeCommand.js +77 -0
  185. package/src/libs/engine/src/commands/basic/SetLinkPointsCommand.d.ts +32 -0
  186. package/src/libs/engine/src/commands/basic/SetLinkPointsCommand.js +87 -0
  187. package/src/libs/engine/src/commands/basic/SetNodeDataCommand.d.ts +14 -0
  188. package/src/libs/engine/src/commands/basic/SetNodeDataCommand.js +93 -0
  189. package/src/libs/engine/src/commands/basic/SetNodeLabelCommand.d.ts +26 -0
  190. package/src/libs/engine/src/commands/basic/SetNodeLabelCommand.js +81 -0
  191. package/src/libs/engine/src/commands/basic/SetNodeShapeConfigCommand.d.ts +14 -0
  192. package/src/libs/engine/src/commands/basic/SetNodeShapeConfigCommand.js +69 -0
  193. package/src/libs/engine/src/commands/basic/SetNodeStyleCommand.d.ts +15 -0
  194. package/src/libs/engine/src/commands/basic/SetNodeStyleCommand.js +88 -0
  195. package/src/libs/engine/src/commands/basic/SetParentCommand.d.ts +13 -0
  196. package/src/libs/engine/src/commands/basic/SetParentCommand.js +109 -0
  197. package/src/libs/engine/src/commands/basic/SetStrokePointsCommand.d.ts +34 -0
  198. package/src/libs/engine/src/commands/basic/SetStrokePointsCommand.js +86 -0
  199. package/src/libs/engine/src/commands/basic/StrokeLifecycleCommands.d.ts +31 -0
  200. package/src/libs/engine/src/commands/basic/StrokeLifecycleCommands.js +88 -0
  201. package/src/libs/engine/src/commands/basic/UpdateLinkStyleCommand.d.ts +15 -0
  202. package/src/libs/engine/src/commands/basic/UpdateLinkStyleCommand.js +72 -0
  203. package/src/libs/engine/src/commands/basic/index.d.ts +41 -0
  204. package/src/libs/engine/src/commands/basic/index.js +52 -0
  205. package/src/libs/engine/src/commands/basic/remapNodePortIds.d.ts +23 -0
  206. package/src/libs/engine/src/commands/basic/remapNodePortIds.js +46 -0
  207. package/src/libs/engine/src/commands/basic/resolveLinkNodeIds.d.ts +31 -0
  208. package/src/libs/engine/src/commands/basic/resolveLinkNodeIds.js +49 -0
  209. package/src/libs/engine/src/commands/composite/BatchCommand.d.ts +19 -0
  210. package/src/libs/engine/src/commands/composite/BatchCommand.js +61 -0
  211. package/src/libs/engine/src/commands/composite/MacroCommand.d.ts +35 -0
  212. package/src/libs/engine/src/commands/composite/MacroCommand.js +87 -0
  213. package/src/libs/engine/src/commands/composite/index.d.ts +2 -0
  214. package/src/libs/engine/src/commands/composite/index.js +7 -0
  215. package/src/libs/engine/src/commands/index.d.ts +4 -0
  216. package/src/libs/engine/src/commands/index.js +9 -0
  217. package/src/libs/engine/src/comments/comment-store.d.ts +238 -0
  218. package/src/libs/engine/src/comments/comment-store.js +538 -0
  219. package/src/libs/engine/src/comments/index.d.ts +4 -0
  220. package/src/libs/engine/src/comments/index.js +31 -0
  221. package/src/libs/engine/src/comments/mentions.d.ts +52 -0
  222. package/src/libs/engine/src/comments/mentions.js +94 -0
  223. package/src/libs/engine/src/comments/read-state.d.ts +37 -0
  224. package/src/libs/engine/src/comments/read-state.js +105 -0
  225. package/src/libs/engine/src/comments/types.d.ts +154 -0
  226. package/src/libs/engine/src/comments/types.js +107 -0
  227. package/src/libs/engine/src/config/InteractionConfig.d.ts +330 -0
  228. package/src/libs/engine/src/config/InteractionConfig.js +154 -0
  229. package/src/libs/engine/src/config/index.d.ts +1 -0
  230. package/src/libs/engine/src/config/index.js +6 -0
  231. package/src/libs/engine/src/dsl/DSL.d.ts +197 -0
  232. package/src/libs/engine/src/dsl/DSL.js +564 -0
  233. package/src/libs/engine/src/dsl/advanced/StyleParser.d.ts +75 -0
  234. package/src/libs/engine/src/dsl/advanced/StyleParser.js +166 -0
  235. package/src/libs/engine/src/dsl/advanced/TemplateParser.d.ts +88 -0
  236. package/src/libs/engine/src/dsl/advanced/TemplateParser.js +226 -0
  237. package/src/libs/engine/src/dsl/advanced/index.d.ts +9 -0
  238. package/src/libs/engine/src/dsl/advanced/index.js +13 -0
  239. package/src/libs/engine/src/dsl/detector/LayoutDetector.d.ts +80 -0
  240. package/src/libs/engine/src/dsl/detector/LayoutDetector.js +333 -0
  241. package/src/libs/engine/src/dsl/extended/BPMNGenerator.d.ts +38 -0
  242. package/src/libs/engine/src/dsl/extended/BPMNGenerator.js +90 -0
  243. package/src/libs/engine/src/dsl/extended/BPMNParser.d.ts +83 -0
  244. package/src/libs/engine/src/dsl/extended/BPMNParser.js +198 -0
  245. package/src/libs/engine/src/dsl/extended/ERDGenerator.d.ts +38 -0
  246. package/src/libs/engine/src/dsl/extended/ERDGenerator.js +126 -0
  247. package/src/libs/engine/src/dsl/extended/ERDParser.d.ts +81 -0
  248. package/src/libs/engine/src/dsl/extended/ERDParser.js +161 -0
  249. package/src/libs/engine/src/dsl/extended/ERDTransformer.d.ts +43 -0
  250. package/src/libs/engine/src/dsl/extended/ERDTransformer.js +105 -0
  251. package/src/libs/engine/src/dsl/extended/UMLGenerator.d.ts +42 -0
  252. package/src/libs/engine/src/dsl/extended/UMLGenerator.js +157 -0
  253. package/src/libs/engine/src/dsl/extended/UMLParser.d.ts +99 -0
  254. package/src/libs/engine/src/dsl/extended/UMLParser.js +200 -0
  255. package/src/libs/engine/src/dsl/extended/index.d.ts +13 -0
  256. package/src/libs/engine/src/dsl/extended/index.js +27 -0
  257. package/src/libs/engine/src/dsl/generator/DSLFormatter.d.ts +87 -0
  258. package/src/libs/engine/src/dsl/generator/DSLFormatter.js +261 -0
  259. package/src/libs/engine/src/dsl/generator/DSLGenerator.d.ts +96 -0
  260. package/src/libs/engine/src/dsl/generator/DSLGenerator.js +328 -0
  261. package/src/libs/engine/src/dsl/generator/DiagramAnalyzer.d.ts +111 -0
  262. package/src/libs/engine/src/dsl/generator/DiagramAnalyzer.js +361 -0
  263. package/src/libs/engine/src/dsl/index.d.ts +35 -0
  264. package/src/libs/engine/src/dsl/index.js +64 -0
  265. package/src/libs/engine/src/dsl/lexer/Lexer.d.ts +117 -0
  266. package/src/libs/engine/src/dsl/lexer/Lexer.js +521 -0
  267. package/src/libs/engine/src/dsl/mermaid/MermaidClass.d.ts +136 -0
  268. package/src/libs/engine/src/dsl/mermaid/MermaidClass.js +429 -0
  269. package/src/libs/engine/src/dsl/mermaid/MermaidER.d.ts +118 -0
  270. package/src/libs/engine/src/dsl/mermaid/MermaidER.js +338 -0
  271. package/src/libs/engine/src/dsl/mermaid/MermaidState.d.ts +89 -0
  272. package/src/libs/engine/src/dsl/mermaid/MermaidState.js +613 -0
  273. package/src/libs/engine/src/dsl/mermaid/index.d.ts +10 -0
  274. package/src/libs/engine/src/dsl/mermaid/index.js +33 -0
  275. package/src/libs/engine/src/dsl/mermaid/layout.d.ts +70 -0
  276. package/src/libs/engine/src/dsl/mermaid/layout.js +162 -0
  277. package/src/libs/engine/src/dsl/mermaid/lines.d.ts +25 -0
  278. package/src/libs/engine/src/dsl/mermaid/lines.js +74 -0
  279. package/src/libs/engine/src/dsl/parser/Parser.d.ts +131 -0
  280. package/src/libs/engine/src/dsl/parser/Parser.js +725 -0
  281. package/src/libs/engine/src/dsl/sync/BidirectionalSync.d.ts +154 -0
  282. package/src/libs/engine/src/dsl/sync/BidirectionalSync.js +389 -0
  283. package/src/libs/engine/src/dsl/sync/IntegratedSyncManager.d.ts +128 -0
  284. package/src/libs/engine/src/dsl/sync/IntegratedSyncManager.js +244 -0
  285. package/src/libs/engine/src/dsl/sync/LayoutApplicator.d.ts +140 -0
  286. package/src/libs/engine/src/dsl/sync/LayoutApplicator.js +271 -0
  287. package/src/libs/engine/src/dsl/sync/SyncStateManager.d.ts +145 -0
  288. package/src/libs/engine/src/dsl/sync/SyncStateManager.js +253 -0
  289. package/src/libs/engine/src/dsl/sync/index.d.ts +13 -0
  290. package/src/libs/engine/src/dsl/sync/index.js +21 -0
  291. package/src/libs/engine/src/dsl/transformer/ASTTransformer.d.ts +150 -0
  292. package/src/libs/engine/src/dsl/transformer/ASTTransformer.js +605 -0
  293. package/src/libs/engine/src/dsl/types/ASTNode.d.ts +159 -0
  294. package/src/libs/engine/src/dsl/types/ASTNode.js +31 -0
  295. package/src/libs/engine/src/dsl/types/Token.d.ts +79 -0
  296. package/src/libs/engine/src/dsl/types/Token.js +84 -0
  297. package/src/libs/engine/src/engine/DiagramEngine.d.ts +917 -0
  298. package/src/libs/engine/src/engine/DiagramEngine.js +2190 -0
  299. package/src/libs/engine/src/engine/DiagramMode.d.ts +51 -0
  300. package/src/libs/engine/src/engine/DiagramMode.js +53 -0
  301. package/src/libs/engine/src/engine/DiagramModeTypes.d.ts +73 -0
  302. package/src/libs/engine/src/engine/DiagramModeTypes.js +4 -0
  303. package/src/libs/engine/src/engine/ModeManager.d.ts +155 -0
  304. package/src/libs/engine/src/engine/ModeManager.js +387 -0
  305. package/src/libs/engine/src/engine/index.d.ts +2 -0
  306. package/src/libs/engine/src/engine/index.js +7 -0
  307. package/src/libs/engine/src/events/EventBus.d.ts +106 -0
  308. package/src/libs/engine/src/events/EventBus.js +226 -0
  309. package/src/libs/engine/src/events/index.d.ts +1 -0
  310. package/src/libs/engine/src/events/index.js +6 -0
  311. package/src/libs/engine/src/index.d.ts +43 -0
  312. package/src/libs/engine/src/index.js +142 -0
  313. package/src/libs/engine/src/interaction/GroupCollapseService.d.ts +53 -0
  314. package/src/libs/engine/src/interaction/GroupCollapseService.js +274 -0
  315. package/src/libs/engine/src/interaction/GroupMembershipService.d.ts +107 -0
  316. package/src/libs/engine/src/interaction/GroupMembershipService.js +245 -0
  317. package/src/libs/engine/src/interaction/SemanticMembershipService.d.ts +28 -0
  318. package/src/libs/engine/src/interaction/SemanticMembershipService.js +168 -0
  319. package/src/libs/engine/src/interaction/SwimlaneService.d.ts +62 -0
  320. package/src/libs/engine/src/interaction/SwimlaneService.js +180 -0
  321. package/src/libs/engine/src/interaction/index.d.ts +4 -0
  322. package/src/libs/engine/src/interaction/index.js +9 -0
  323. package/src/libs/engine/src/interop/drawio/importDrawio.d.ts +52 -0
  324. package/src/libs/engine/src/interop/drawio/importDrawio.js +940 -0
  325. package/src/libs/engine/src/interop/drawio/index.d.ts +1 -0
  326. package/src/libs/engine/src/interop/drawio/index.js +12 -0
  327. package/src/libs/engine/src/interop/drawio/xml.d.ts +26 -0
  328. package/src/libs/engine/src/interop/drawio/xml.js +213 -0
  329. package/src/libs/engine/src/layout/CompoundLayoutService.d.ts +121 -0
  330. package/src/libs/engine/src/layout/CompoundLayoutService.js +616 -0
  331. package/src/libs/engine/src/layout/ILayoutAlgorithm.d.ts +120 -0
  332. package/src/libs/engine/src/layout/ILayoutAlgorithm.js +88 -0
  333. package/src/libs/engine/src/layout/LayoutManager.d.ts +155 -0
  334. package/src/libs/engine/src/layout/LayoutManager.js +640 -0
  335. package/src/libs/engine/src/layout/SmartSpacingCalculator.d.ts +62 -0
  336. package/src/libs/engine/src/layout/SmartSpacingCalculator.js +134 -0
  337. package/src/libs/engine/src/layout/ViewportTransform.d.ts +55 -0
  338. package/src/libs/engine/src/layout/ViewportTransform.js +118 -0
  339. package/src/libs/engine/src/layout/algorithms/ForceDirectedLayoutAlgorithm.d.ts +34 -0
  340. package/src/libs/engine/src/layout/algorithms/ForceDirectedLayoutAlgorithm.js +317 -0
  341. package/src/libs/engine/src/layout/algorithms/GridLayoutAlgorithm.d.ts +56 -0
  342. package/src/libs/engine/src/layout/algorithms/GridLayoutAlgorithm.js +223 -0
  343. package/src/libs/engine/src/layout/algorithms/HierarchicalLayoutAlgorithm.d.ts +60 -0
  344. package/src/libs/engine/src/layout/algorithms/HierarchicalLayoutAlgorithm.js +307 -0
  345. package/src/libs/engine/src/layout/algorithms/HybridLayoutAlgorithm.d.ts +62 -0
  346. package/src/libs/engine/src/layout/algorithms/HybridLayoutAlgorithm.js +324 -0
  347. package/src/libs/engine/src/layout/community-layout-adapter.d.ts +107 -0
  348. package/src/libs/engine/src/layout/community-layout-adapter.js +486 -0
  349. package/src/libs/engine/src/layout/component-packing.d.ts +98 -0
  350. package/src/libs/engine/src/layout/component-packing.js +307 -0
  351. package/src/libs/engine/src/layout/dagre-layout-adapter.d.ts +122 -0
  352. package/src/libs/engine/src/layout/dagre-layout-adapter.js +697 -0
  353. package/src/libs/engine/src/layout/edge-bundling.interface.d.ts +159 -0
  354. package/src/libs/engine/src/layout/edge-bundling.interface.js +379 -0
  355. package/src/libs/engine/src/layout/elk-layout-adapter.d.ts +121 -0
  356. package/src/libs/engine/src/layout/elk-layout-adapter.js +586 -0
  357. package/src/libs/engine/src/layout/elk-loader.d.ts +1 -0
  358. package/src/libs/engine/src/layout/elk-loader.js +24 -0
  359. package/src/libs/engine/src/layout/force-layout-adapter.d.ts +167 -0
  360. package/src/libs/engine/src/layout/force-layout-adapter.js +790 -0
  361. package/src/libs/engine/src/layout/grid-pack/grid-pack-engine.d.ts +323 -0
  362. package/src/libs/engine/src/layout/grid-pack/grid-pack-engine.js +685 -0
  363. package/src/libs/engine/src/layout/incremental/mental-map.d.ts +98 -0
  364. package/src/libs/engine/src/layout/incremental/mental-map.js +221 -0
  365. package/src/libs/engine/src/layout/incremental-layout.interface.d.ts +145 -0
  366. package/src/libs/engine/src/layout/incremental-layout.interface.js +300 -0
  367. package/src/libs/engine/src/layout/index.d.ts +83 -0
  368. package/src/libs/engine/src/layout/index.js +116 -0
  369. package/src/libs/engine/src/layout/layout-adapter.interface.d.ts +185 -0
  370. package/src/libs/engine/src/layout/layout-adapter.interface.js +10 -0
  371. package/src/libs/engine/src/layout/layout-auto-select.d.ts +160 -0
  372. package/src/libs/engine/src/layout/layout-auto-select.js +621 -0
  373. package/src/libs/engine/src/layout/layout-constraints.interface.d.ts +117 -0
  374. package/src/libs/engine/src/layout/layout-constraints.interface.js +138 -0
  375. package/src/libs/engine/src/layout/layout-graph.d.ts +70 -0
  376. package/src/libs/engine/src/layout/layout-graph.js +119 -0
  377. package/src/libs/engine/src/layout/layout-history.d.ts +147 -0
  378. package/src/libs/engine/src/layout/layout-history.js +258 -0
  379. package/src/libs/engine/src/layout/layout-host.d.ts +172 -0
  380. package/src/libs/engine/src/layout/layout-host.js +523 -0
  381. package/src/libs/engine/src/layout/layout-presets.d.ts +91 -0
  382. package/src/libs/engine/src/layout/layout-presets.js +333 -0
  383. package/src/libs/engine/src/layout/layout-quality-extended.d.ts +66 -0
  384. package/src/libs/engine/src/layout/layout-quality-extended.js +246 -0
  385. package/src/libs/engine/src/layout/layout-quality-metrics.d.ts +127 -0
  386. package/src/libs/engine/src/layout/layout-quality-metrics.js +466 -0
  387. package/src/libs/engine/src/layout/layout-registry.d.ts +309 -0
  388. package/src/libs/engine/src/layout/layout-registry.js +414 -0
  389. package/src/libs/engine/src/layout/layout.service.d.ts +100 -0
  390. package/src/libs/engine/src/layout/layout.service.js +216 -0
  391. package/src/libs/engine/src/layout/overlap-removal.d.ts +20 -0
  392. package/src/libs/engine/src/layout/overlap-removal.js +117 -0
  393. package/src/libs/engine/src/layout/port-aware-layout.interface.d.ts +232 -0
  394. package/src/libs/engine/src/layout/port-aware-layout.interface.js +413 -0
  395. package/src/libs/engine/src/layout/port-label-bridge.d.ts +77 -0
  396. package/src/libs/engine/src/layout/port-label-bridge.js +250 -0
  397. package/src/libs/engine/src/layout/portfolio-layouts.d.ts +53 -0
  398. package/src/libs/engine/src/layout/portfolio-layouts.js +388 -0
  399. package/src/libs/engine/src/layout/rng.d.ts +34 -0
  400. package/src/libs/engine/src/layout/rng.js +71 -0
  401. package/src/libs/engine/src/layout/spectral-layout-adapter.d.ts +72 -0
  402. package/src/libs/engine/src/layout/spectral-layout-adapter.js +379 -0
  403. package/src/libs/engine/src/layout/steppable-layout.d.ts +40 -0
  404. package/src/libs/engine/src/layout/steppable-layout.js +34 -0
  405. package/src/libs/engine/src/layout/subgraph-layout.interface.d.ts +269 -0
  406. package/src/libs/engine/src/layout/subgraph-layout.interface.js +452 -0
  407. package/src/libs/engine/src/layout/sugiyama/layered-layout.d.ts +9 -0
  408. package/src/libs/engine/src/layout/sugiyama/layered-layout.js +83 -0
  409. package/src/libs/engine/src/layout/sugiyama/sugiyama.d.ts +91 -0
  410. package/src/libs/engine/src/layout/sugiyama/sugiyama.js +797 -0
  411. package/src/libs/engine/src/layout/tree-layout.d.ts +43 -0
  412. package/src/libs/engine/src/layout/tree-layout.js +426 -0
  413. package/src/libs/engine/src/layout/types.d.ts +263 -0
  414. package/src/libs/engine/src/layout/types.js +6 -0
  415. package/src/libs/engine/src/lib/performance/mobile-performance.service.d.ts +43 -0
  416. package/src/libs/engine/src/lib/performance/mobile-performance.service.js +95 -0
  417. package/src/libs/engine/src/models/DiagramEntity.d.ts +174 -0
  418. package/src/libs/engine/src/models/DiagramEntity.js +366 -0
  419. package/src/libs/engine/src/models/DiagramModel.d.ts +960 -0
  420. package/src/libs/engine/src/models/DiagramModel.js +2416 -0
  421. package/src/libs/engine/src/models/GroupModel.d.ts +573 -0
  422. package/src/libs/engine/src/models/GroupModel.js +1373 -0
  423. package/src/libs/engine/src/models/LinkModel.d.ts +395 -0
  424. package/src/libs/engine/src/models/LinkModel.js +1045 -0
  425. package/src/libs/engine/src/models/NodeModel.d.ts +666 -0
  426. package/src/libs/engine/src/models/NodeModel.js +1512 -0
  427. package/src/libs/engine/src/models/PortModel.d.ts +292 -0
  428. package/src/libs/engine/src/models/PortModel.js +637 -0
  429. package/src/libs/engine/src/models/StrokeModel.d.ts +160 -0
  430. package/src/libs/engine/src/models/StrokeModel.js +387 -0
  431. package/src/libs/engine/src/models/index.d.ts +7 -0
  432. package/src/libs/engine/src/models/index.js +12 -0
  433. package/src/libs/engine/src/models/readonly-lock.d.ts +108 -0
  434. package/src/libs/engine/src/models/readonly-lock.js +125 -0
  435. package/src/libs/engine/src/performance/LRUCache.d.ts +78 -0
  436. package/src/libs/engine/src/performance/LRUCache.js +179 -0
  437. package/src/libs/engine/src/performance/PerformanceMonitor.d.ts +47 -0
  438. package/src/libs/engine/src/performance/PerformanceMonitor.js +112 -0
  439. package/src/libs/engine/src/performance/SpatialIndex.d.ts +157 -0
  440. package/src/libs/engine/src/performance/SpatialIndex.js +306 -0
  441. package/src/libs/engine/src/performance/index.d.ts +2 -0
  442. package/src/libs/engine/src/performance/index.js +7 -0
  443. package/src/libs/engine/src/plugins/PluginManager.d.ts +95 -0
  444. package/src/libs/engine/src/plugins/PluginManager.js +388 -0
  445. package/src/libs/engine/src/plugins/index.d.ts +1 -0
  446. package/src/libs/engine/src/plugins/index.js +6 -0
  447. package/src/libs/engine/src/ports/connection-rules.d.ts +32 -0
  448. package/src/libs/engine/src/ports/connection-rules.js +131 -0
  449. package/src/libs/engine/src/ports/dynamic-ports.d.ts +27 -0
  450. package/src/libs/engine/src/ports/dynamic-ports.js +135 -0
  451. package/src/libs/engine/src/ports/index.d.ts +5 -0
  452. package/src/libs/engine/src/ports/index.js +16 -0
  453. package/src/libs/engine/src/ports/port-groups.d.ts +43 -0
  454. package/src/libs/engine/src/ports/port-groups.js +185 -0
  455. package/src/libs/engine/src/ports/port-type-registry.d.ts +34 -0
  456. package/src/libs/engine/src/ports/port-type-registry.js +87 -0
  457. package/src/libs/engine/src/ports/port-types.d.ts +266 -0
  458. package/src/libs/engine/src/ports/port-types.js +30 -0
  459. package/src/libs/engine/src/rendering/HtmlTemplateRenderer.d.ts +136 -0
  460. package/src/libs/engine/src/rendering/HtmlTemplateRenderer.js +292 -0
  461. package/src/libs/engine/src/rendering/LemonadeJSRenderer.d.ts +160 -0
  462. package/src/libs/engine/src/rendering/LemonadeJSRenderer.js +362 -0
  463. package/src/libs/engine/src/rendering/index.d.ts +2 -0
  464. package/src/libs/engine/src/rendering/index.js +7 -0
  465. package/src/libs/engine/src/routing/LiveReroutingEngine.d.ts +75 -0
  466. package/src/libs/engine/src/routing/LiveReroutingEngine.js +173 -0
  467. package/src/libs/engine/src/routing/ObstacleIndex.d.ts +42 -0
  468. package/src/libs/engine/src/routing/ObstacleIndex.js +215 -0
  469. package/src/libs/engine/src/routing/ObstacleMap.d.ts +68 -0
  470. package/src/libs/engine/src/routing/ObstacleMap.js +312 -0
  471. package/src/libs/engine/src/routing/ObstacleMapBuilder.d.ts +28 -0
  472. package/src/libs/engine/src/routing/ObstacleMapBuilder.js +76 -0
  473. package/src/libs/engine/src/routing/PathSimplifier.d.ts +119 -0
  474. package/src/libs/engine/src/routing/PathSimplifier.js +224 -0
  475. package/src/libs/engine/src/routing/RoutingEngine.d.ts +118 -0
  476. package/src/libs/engine/src/routing/RoutingEngine.js +546 -0
  477. package/src/libs/engine/src/routing/algorithms/AStarRouter.d.ts +90 -0
  478. package/src/libs/engine/src/routing/algorithms/AStarRouter.js +331 -0
  479. package/src/libs/engine/src/routing/algorithms/DijkstraRouter.d.ts +74 -0
  480. package/src/libs/engine/src/routing/algorithms/DijkstraRouter.js +297 -0
  481. package/src/libs/engine/src/routing/algorithms/ElkRouter.d.ts +34 -0
  482. package/src/libs/engine/src/routing/algorithms/ElkRouter.js +210 -0
  483. package/src/libs/engine/src/routing/algorithms/ManhattanRouter.d.ts +18 -0
  484. package/src/libs/engine/src/routing/algorithms/ManhattanRouter.js +224 -0
  485. package/src/libs/engine/src/routing/algorithms/OrthogonalRouter.d.ts +173 -0
  486. package/src/libs/engine/src/routing/algorithms/OrthogonalRouter.js +1092 -0
  487. package/src/libs/engine/src/routing/algorithms/StraightRouter.d.ts +8 -0
  488. package/src/libs/engine/src/routing/algorithms/StraightRouter.js +53 -0
  489. package/src/libs/engine/src/routing/algorithms/VisibilityGraphRouter.d.ts +59 -0
  490. package/src/libs/engine/src/routing/algorithms/VisibilityGraphRouter.js +258 -0
  491. package/src/libs/engine/src/routing/global/GlobalRouteSolver.d.ts +64 -0
  492. package/src/libs/engine/src/routing/global/GlobalRouteSolver.js +334 -0
  493. package/src/libs/engine/src/routing/global/solver-host.d.ts +65 -0
  494. package/src/libs/engine/src/routing/global/solver-host.js +87 -0
  495. package/src/libs/engine/src/routing/index.d.ts +15 -0
  496. package/src/libs/engine/src/routing/index.js +20 -0
  497. package/src/libs/engine/src/routing/types.d.ts +161 -0
  498. package/src/libs/engine/src/routing/types.js +4 -0
  499. package/src/libs/engine/src/selection/SelectionManager.d.ts +161 -0
  500. package/src/libs/engine/src/selection/SelectionManager.js +483 -0
  501. package/src/libs/engine/src/selection/index.d.ts +1 -0
  502. package/src/libs/engine/src/selection/index.js +6 -0
  503. package/src/libs/engine/src/serialization/DiagramMigrations.d.ts +41 -0
  504. package/src/libs/engine/src/serialization/DiagramMigrations.js +124 -0
  505. package/src/libs/engine/src/serialization/DiagramValidator.d.ts +20 -0
  506. package/src/libs/engine/src/serialization/DiagramValidator.js +136 -0
  507. package/src/libs/engine/src/serialization/DocumentEnvelope.d.ts +53 -0
  508. package/src/libs/engine/src/serialization/DocumentEnvelope.js +111 -0
  509. package/src/libs/engine/src/serialization/Incremental.d.ts +77 -0
  510. package/src/libs/engine/src/serialization/Incremental.js +227 -0
  511. package/src/libs/engine/src/serialization/Serializer.d.ts +29 -0
  512. package/src/libs/engine/src/serialization/Serializer.js +45 -0
  513. package/src/libs/engine/src/serialization/Subgraph.d.ts +51 -0
  514. package/src/libs/engine/src/serialization/Subgraph.js +172 -0
  515. package/src/libs/engine/src/serialization/TextFormat.d.ts +71 -0
  516. package/src/libs/engine/src/serialization/TextFormat.js +261 -0
  517. package/src/libs/engine/src/state/ConnectionStateManager.d.ts +178 -0
  518. package/src/libs/engine/src/state/ConnectionStateManager.js +319 -0
  519. package/src/libs/engine/src/state/DiagramStore.d.ts +134 -0
  520. package/src/libs/engine/src/state/DiagramStore.js +372 -0
  521. package/src/libs/engine/src/state/index.d.ts +2 -0
  522. package/src/libs/engine/src/state/index.js +7 -0
  523. package/src/libs/engine/src/sync/awareness.d.ts +91 -0
  524. package/src/libs/engine/src/sync/awareness.js +221 -0
  525. package/src/libs/engine/src/sync/batcher.d.ts +84 -0
  526. package/src/libs/engine/src/sync/batcher.js +0 -0
  527. package/src/libs/engine/src/sync/causal-buffer.d.ts +81 -0
  528. package/src/libs/engine/src/sync/causal-buffer.js +199 -0
  529. package/src/libs/engine/src/sync/index.d.ts +20 -0
  530. package/src/libs/engine/src/sync/index.js +41 -0
  531. package/src/libs/engine/src/sync/protocol.d.ts +74 -0
  532. package/src/libs/engine/src/sync/protocol.js +39 -0
  533. package/src/libs/engine/src/sync/sync-adapter.d.ts +243 -0
  534. package/src/libs/engine/src/sync/sync-adapter.js +524 -0
  535. package/src/libs/engine/src/sync/transport.d.ts +30 -0
  536. package/src/libs/engine/src/sync/transport.js +28 -0
  537. package/src/libs/engine/src/sync/transports/broadcast-channel.d.ts +39 -0
  538. package/src/libs/engine/src/sync/transports/broadcast-channel.js +117 -0
  539. package/src/libs/engine/src/sync/transports/memory.d.ts +38 -0
  540. package/src/libs/engine/src/sync/transports/memory.js +111 -0
  541. package/src/libs/engine/src/sync/transports/unreliable.d.ts +59 -0
  542. package/src/libs/engine/src/sync/transports/unreliable.js +153 -0
  543. package/src/libs/engine/src/sync/transports/websocket.d.ts +60 -0
  544. package/src/libs/engine/src/sync/transports/websocket.js +210 -0
  545. package/src/libs/engine/src/sync/version-vector.d.ts +47 -0
  546. package/src/libs/engine/src/sync/version-vector.js +218 -0
  547. package/src/libs/engine/src/template-library/common-templates.d.ts +46 -0
  548. package/src/libs/engine/src/template-library/common-templates.js +395 -0
  549. package/src/libs/engine/src/template-library/data-viz-templates.d.ts +52 -0
  550. package/src/libs/engine/src/template-library/data-viz-templates.js +471 -0
  551. package/src/libs/engine/src/template-library/erd-templates.d.ts +71 -0
  552. package/src/libs/engine/src/template-library/erd-templates.js +773 -0
  553. package/src/libs/engine/src/template-library/index.d.ts +141 -0
  554. package/src/libs/engine/src/template-library/index.js +271 -0
  555. package/src/libs/engine/src/template-library/integration.d.ts +80 -0
  556. package/src/libs/engine/src/template-library/integration.js +141 -0
  557. package/src/libs/engine/src/template-library/workflow-templates.d.ts +52 -0
  558. package/src/libs/engine/src/template-library/workflow-templates.js +438 -0
  559. package/src/libs/engine/src/templates/NodeFactory.d.ts +118 -0
  560. package/src/libs/engine/src/templates/NodeFactory.js +436 -0
  561. package/src/libs/engine/src/templates/NodeTemplate.d.ts +342 -0
  562. package/src/libs/engine/src/templates/NodeTemplate.js +13 -0
  563. package/src/libs/engine/src/templates/TemplateLoader.d.ts +46 -0
  564. package/src/libs/engine/src/templates/TemplateLoader.js +114 -0
  565. package/src/libs/engine/src/templates/TemplateRegistry.d.ts +70 -0
  566. package/src/libs/engine/src/templates/TemplateRegistry.js +128 -0
  567. package/src/libs/engine/src/templates/generated/bpmn/bpmn-business-rule-task.template.d.ts +11 -0
  568. package/src/libs/engine/src/templates/generated/bpmn/bpmn-business-rule-task.template.js +123 -0
  569. package/src/libs/engine/src/templates/generated/bpmn/bpmn-end-event.template.d.ts +11 -0
  570. package/src/libs/engine/src/templates/generated/bpmn/bpmn-end-event.template.js +123 -0
  571. package/src/libs/engine/src/templates/generated/bpmn/bpmn-error-event.template.d.ts +11 -0
  572. package/src/libs/engine/src/templates/generated/bpmn/bpmn-error-event.template.js +123 -0
  573. package/src/libs/engine/src/templates/generated/bpmn/bpmn-exclusive-gateway.template.d.ts +11 -0
  574. package/src/libs/engine/src/templates/generated/bpmn/bpmn-exclusive-gateway.template.js +124 -0
  575. package/src/libs/engine/src/templates/generated/bpmn/bpmn-inclusive-gateway.template.d.ts +11 -0
  576. package/src/libs/engine/src/templates/generated/bpmn/bpmn-inclusive-gateway.template.js +123 -0
  577. package/src/libs/engine/src/templates/generated/bpmn/bpmn-intermediate-event.template.d.ts +11 -0
  578. package/src/libs/engine/src/templates/generated/bpmn/bpmn-intermediate-event.template.js +124 -0
  579. package/src/libs/engine/src/templates/generated/bpmn/bpmn-manual-task.template.d.ts +11 -0
  580. package/src/libs/engine/src/templates/generated/bpmn/bpmn-manual-task.template.js +123 -0
  581. package/src/libs/engine/src/templates/generated/bpmn/bpmn-message-event.template.d.ts +11 -0
  582. package/src/libs/engine/src/templates/generated/bpmn/bpmn-message-event.template.js +122 -0
  583. package/src/libs/engine/src/templates/generated/bpmn/bpmn-parallel-gateway.template.d.ts +11 -0
  584. package/src/libs/engine/src/templates/generated/bpmn/bpmn-parallel-gateway.template.js +125 -0
  585. package/src/libs/engine/src/templates/generated/bpmn/bpmn-script-task.template.d.ts +11 -0
  586. package/src/libs/engine/src/templates/generated/bpmn/bpmn-script-task.template.js +123 -0
  587. package/src/libs/engine/src/templates/generated/bpmn/bpmn-service-task.template.d.ts +11 -0
  588. package/src/libs/engine/src/templates/generated/bpmn/bpmn-service-task.template.js +123 -0
  589. package/src/libs/engine/src/templates/generated/bpmn/bpmn-start-event.template.d.ts +11 -0
  590. package/src/libs/engine/src/templates/generated/bpmn/bpmn-start-event.template.js +123 -0
  591. package/src/libs/engine/src/templates/generated/bpmn/bpmn-task.template.d.ts +11 -0
  592. package/src/libs/engine/src/templates/generated/bpmn/bpmn-task.template.js +152 -0
  593. package/src/libs/engine/src/templates/generated/bpmn/bpmn-timer-event.template.d.ts +11 -0
  594. package/src/libs/engine/src/templates/generated/bpmn/bpmn-timer-event.template.js +123 -0
  595. package/src/libs/engine/src/templates/generated/bpmn/bpmn-user-task.template.d.ts +11 -0
  596. package/src/libs/engine/src/templates/generated/bpmn/bpmn-user-task.template.js +123 -0
  597. package/src/libs/engine/src/templates/generated/bpmn/index.d.ts +15 -0
  598. package/src/libs/engine/src/templates/generated/bpmn/index.js +34 -0
  599. package/src/libs/engine/src/templates/generated/erd/erd-associative-entity.template.d.ts +11 -0
  600. package/src/libs/engine/src/templates/generated/erd/erd-associative-entity.template.js +152 -0
  601. package/src/libs/engine/src/templates/generated/erd/erd-attribute.template.d.ts +11 -0
  602. package/src/libs/engine/src/templates/generated/erd/erd-attribute.template.js +122 -0
  603. package/src/libs/engine/src/templates/generated/erd/erd-bridge-entity.template.d.ts +11 -0
  604. package/src/libs/engine/src/templates/generated/erd/erd-bridge-entity.template.js +151 -0
  605. package/src/libs/engine/src/templates/generated/erd/erd-composite-attribute.template.d.ts +11 -0
  606. package/src/libs/engine/src/templates/generated/erd/erd-composite-attribute.template.js +122 -0
  607. package/src/libs/engine/src/templates/generated/erd/erd-derived-attribute.template.d.ts +11 -0
  608. package/src/libs/engine/src/templates/generated/erd/erd-derived-attribute.template.js +122 -0
  609. package/src/libs/engine/src/templates/generated/erd/erd-discriminator.template.d.ts +11 -0
  610. package/src/libs/engine/src/templates/generated/erd/erd-discriminator.template.js +123 -0
  611. package/src/libs/engine/src/templates/generated/erd/erd-entity.template.d.ts +11 -0
  612. package/src/libs/engine/src/templates/generated/erd/erd-entity.template.js +149 -0
  613. package/src/libs/engine/src/templates/generated/erd/erd-isa.template.d.ts +11 -0
  614. package/src/libs/engine/src/templates/generated/erd/erd-isa.template.js +123 -0
  615. package/src/libs/engine/src/templates/generated/erd/erd-key-attribute.template.d.ts +11 -0
  616. package/src/libs/engine/src/templates/generated/erd/erd-key-attribute.template.js +122 -0
  617. package/src/libs/engine/src/templates/generated/erd/erd-multivalued-attribute.template.d.ts +11 -0
  618. package/src/libs/engine/src/templates/generated/erd/erd-multivalued-attribute.template.js +122 -0
  619. package/src/libs/engine/src/templates/generated/erd/erd-optional-attribute.template.d.ts +11 -0
  620. package/src/libs/engine/src/templates/generated/erd/erd-optional-attribute.template.js +122 -0
  621. package/src/libs/engine/src/templates/generated/erd/erd-partial-key.template.d.ts +11 -0
  622. package/src/libs/engine/src/templates/generated/erd/erd-partial-key.template.js +123 -0
  623. package/src/libs/engine/src/templates/generated/erd/erd-relationship.template.d.ts +11 -0
  624. package/src/libs/engine/src/templates/generated/erd/erd-relationship.template.js +121 -0
  625. package/src/libs/engine/src/templates/generated/erd/erd-subtype.template.d.ts +11 -0
  626. package/src/libs/engine/src/templates/generated/erd/erd-subtype.template.js +123 -0
  627. package/src/libs/engine/src/templates/generated/erd/erd-supertype.template.d.ts +11 -0
  628. package/src/libs/engine/src/templates/generated/erd/erd-supertype.template.js +123 -0
  629. package/src/libs/engine/src/templates/generated/erd/erd-table.template.d.ts +11 -0
  630. package/src/libs/engine/src/templates/generated/erd/erd-table.template.js +123 -0
  631. package/src/libs/engine/src/templates/generated/erd/erd-view.template.d.ts +11 -0
  632. package/src/libs/engine/src/templates/generated/erd/erd-view.template.js +123 -0
  633. package/src/libs/engine/src/templates/generated/erd/erd-weak-entity.template.d.ts +11 -0
  634. package/src/libs/engine/src/templates/generated/erd/erd-weak-entity.template.js +149 -0
  635. package/src/libs/engine/src/templates/generated/erd/erd-weak-relationship.template.d.ts +11 -0
  636. package/src/libs/engine/src/templates/generated/erd/erd-weak-relationship.template.js +122 -0
  637. package/src/libs/engine/src/templates/generated/erd/index.d.ts +19 -0
  638. package/src/libs/engine/src/templates/generated/erd/index.js +42 -0
  639. package/src/libs/engine/src/templates/generated/flowchart/flowchart-connector.template.d.ts +11 -0
  640. package/src/libs/engine/src/templates/generated/flowchart/flowchart-connector.template.js +123 -0
  641. package/src/libs/engine/src/templates/generated/flowchart/flowchart-data.template.d.ts +11 -0
  642. package/src/libs/engine/src/templates/generated/flowchart/flowchart-data.template.js +123 -0
  643. package/src/libs/engine/src/templates/generated/flowchart/flowchart-decision.template.d.ts +11 -0
  644. package/src/libs/engine/src/templates/generated/flowchart/flowchart-decision.template.js +123 -0
  645. package/src/libs/engine/src/templates/generated/flowchart/flowchart-delay.template.d.ts +11 -0
  646. package/src/libs/engine/src/templates/generated/flowchart/flowchart-delay.template.js +124 -0
  647. package/src/libs/engine/src/templates/generated/flowchart/flowchart-display.template.d.ts +11 -0
  648. package/src/libs/engine/src/templates/generated/flowchart/flowchart-display.template.js +124 -0
  649. package/src/libs/engine/src/templates/generated/flowchart/flowchart-document.template.d.ts +11 -0
  650. package/src/libs/engine/src/templates/generated/flowchart/flowchart-document.template.js +123 -0
  651. package/src/libs/engine/src/templates/generated/flowchart/flowchart-manual-input.template.d.ts +11 -0
  652. package/src/libs/engine/src/templates/generated/flowchart/flowchart-manual-input.template.js +123 -0
  653. package/src/libs/engine/src/templates/generated/flowchart/flowchart-manual-operation.template.d.ts +11 -0
  654. package/src/libs/engine/src/templates/generated/flowchart/flowchart-manual-operation.template.js +122 -0
  655. package/src/libs/engine/src/templates/generated/flowchart/flowchart-merge.template.d.ts +11 -0
  656. package/src/libs/engine/src/templates/generated/flowchart/flowchart-merge.template.js +122 -0
  657. package/src/libs/engine/src/templates/generated/flowchart/flowchart-or.template.d.ts +11 -0
  658. package/src/libs/engine/src/templates/generated/flowchart/flowchart-or.template.js +123 -0
  659. package/src/libs/engine/src/templates/generated/flowchart/flowchart-predefined-process.template.d.ts +11 -0
  660. package/src/libs/engine/src/templates/generated/flowchart/flowchart-predefined-process.template.js +123 -0
  661. package/src/libs/engine/src/templates/generated/flowchart/flowchart-preparation.template.d.ts +11 -0
  662. package/src/libs/engine/src/templates/generated/flowchart/flowchart-preparation.template.js +123 -0
  663. package/src/libs/engine/src/templates/generated/flowchart/flowchart-process.template.d.ts +11 -0
  664. package/src/libs/engine/src/templates/generated/flowchart/flowchart-process.template.js +122 -0
  665. package/src/libs/engine/src/templates/generated/flowchart/flowchart-stored-data.template.d.ts +11 -0
  666. package/src/libs/engine/src/templates/generated/flowchart/flowchart-stored-data.template.js +123 -0
  667. package/src/libs/engine/src/templates/generated/flowchart/flowchart-summing-junction.template.d.ts +11 -0
  668. package/src/libs/engine/src/templates/generated/flowchart/flowchart-summing-junction.template.js +124 -0
  669. package/src/libs/engine/src/templates/generated/flowchart/flowchart-terminal.template.d.ts +11 -0
  670. package/src/libs/engine/src/templates/generated/flowchart/flowchart-terminal.template.js +124 -0
  671. package/src/libs/engine/src/templates/generated/flowchart/index.d.ts +16 -0
  672. package/src/libs/engine/src/templates/generated/flowchart/index.js +36 -0
  673. package/src/libs/engine/src/templates/generated/index.d.ts +9 -0
  674. package/src/libs/engine/src/templates/generated/index.js +13 -0
  675. package/src/libs/engine/src/templates/generated/register.d.ts +23 -0
  676. package/src/libs/engine/src/templates/generated/register.js +31 -0
  677. package/src/libs/engine/src/templates/generated/uml/index.d.ts +30 -0
  678. package/src/libs/engine/src/templates/generated/uml/index.js +64 -0
  679. package/src/libs/engine/src/templates/generated/uml/uml-abstract-class.template.d.ts +11 -0
  680. package/src/libs/engine/src/templates/generated/uml/uml-abstract-class.template.js +204 -0
  681. package/src/libs/engine/src/templates/generated/uml/uml-activation.template.d.ts +11 -0
  682. package/src/libs/engine/src/templates/generated/uml/uml-activation.template.js +124 -0
  683. package/src/libs/engine/src/templates/generated/uml/uml-activity-partition.template.d.ts +11 -0
  684. package/src/libs/engine/src/templates/generated/uml/uml-activity-partition.template.js +124 -0
  685. package/src/libs/engine/src/templates/generated/uml/uml-activity.template.d.ts +11 -0
  686. package/src/libs/engine/src/templates/generated/uml/uml-activity.template.js +123 -0
  687. package/src/libs/engine/src/templates/generated/uml/uml-actor.template.d.ts +11 -0
  688. package/src/libs/engine/src/templates/generated/uml/uml-actor.template.js +123 -0
  689. package/src/libs/engine/src/templates/generated/uml/uml-class.template.d.ts +11 -0
  690. package/src/libs/engine/src/templates/generated/uml/uml-class.template.js +204 -0
  691. package/src/libs/engine/src/templates/generated/uml/uml-collaboration.template.d.ts +11 -0
  692. package/src/libs/engine/src/templates/generated/uml/uml-collaboration.template.js +122 -0
  693. package/src/libs/engine/src/templates/generated/uml/uml-component.template.d.ts +11 -0
  694. package/src/libs/engine/src/templates/generated/uml/uml-component.template.js +122 -0
  695. package/src/libs/engine/src/templates/generated/uml/uml-datatype.template.d.ts +11 -0
  696. package/src/libs/engine/src/templates/generated/uml/uml-datatype.template.js +204 -0
  697. package/src/libs/engine/src/templates/generated/uml/uml-decision.template.d.ts +11 -0
  698. package/src/libs/engine/src/templates/generated/uml/uml-decision.template.js +124 -0
  699. package/src/libs/engine/src/templates/generated/uml/uml-enum.template.d.ts +11 -0
  700. package/src/libs/engine/src/templates/generated/uml/uml-enum.template.js +204 -0
  701. package/src/libs/engine/src/templates/generated/uml/uml-final-node.template.d.ts +11 -0
  702. package/src/libs/engine/src/templates/generated/uml/uml-final-node.template.js +124 -0
  703. package/src/libs/engine/src/templates/generated/uml/uml-final-state.template.d.ts +11 -0
  704. package/src/libs/engine/src/templates/generated/uml/uml-final-state.template.js +124 -0
  705. package/src/libs/engine/src/templates/generated/uml/uml-fork.template.d.ts +11 -0
  706. package/src/libs/engine/src/templates/generated/uml/uml-fork.template.js +125 -0
  707. package/src/libs/engine/src/templates/generated/uml/uml-initial-node.template.d.ts +11 -0
  708. package/src/libs/engine/src/templates/generated/uml/uml-initial-node.template.js +123 -0
  709. package/src/libs/engine/src/templates/generated/uml/uml-initial-state.template.d.ts +11 -0
  710. package/src/libs/engine/src/templates/generated/uml/uml-initial-state.template.js +123 -0
  711. package/src/libs/engine/src/templates/generated/uml/uml-interface.template.d.ts +11 -0
  712. package/src/libs/engine/src/templates/generated/uml/uml-interface.template.js +204 -0
  713. package/src/libs/engine/src/templates/generated/uml/uml-join.template.d.ts +11 -0
  714. package/src/libs/engine/src/templates/generated/uml/uml-join.template.js +125 -0
  715. package/src/libs/engine/src/templates/generated/uml/uml-lifeline.template.d.ts +11 -0
  716. package/src/libs/engine/src/templates/generated/uml/uml-lifeline.template.js +123 -0
  717. package/src/libs/engine/src/templates/generated/uml/uml-merge.template.d.ts +11 -0
  718. package/src/libs/engine/src/templates/generated/uml/uml-merge.template.js +122 -0
  719. package/src/libs/engine/src/templates/generated/uml/uml-node.template.d.ts +11 -0
  720. package/src/libs/engine/src/templates/generated/uml/uml-node.template.js +122 -0
  721. package/src/libs/engine/src/templates/generated/uml/uml-note.template.d.ts +11 -0
  722. package/src/libs/engine/src/templates/generated/uml/uml-note.template.js +123 -0
  723. package/src/libs/engine/src/templates/generated/uml/uml-object.template.d.ts +11 -0
  724. package/src/libs/engine/src/templates/generated/uml/uml-object.template.js +204 -0
  725. package/src/libs/engine/src/templates/generated/uml/uml-package.template.d.ts +11 -0
  726. package/src/libs/engine/src/templates/generated/uml/uml-package.template.js +123 -0
  727. package/src/libs/engine/src/templates/generated/uml/uml-part.template.d.ts +11 -0
  728. package/src/libs/engine/src/templates/generated/uml/uml-part.template.js +122 -0
  729. package/src/libs/engine/src/templates/generated/uml/uml-port.template.d.ts +11 -0
  730. package/src/libs/engine/src/templates/generated/uml/uml-port.template.js +123 -0
  731. package/src/libs/engine/src/templates/generated/uml/uml-primitive-type.template.d.ts +11 -0
  732. package/src/libs/engine/src/templates/generated/uml/uml-primitive-type.template.js +204 -0
  733. package/src/libs/engine/src/templates/generated/uml/uml-signal.template.d.ts +11 -0
  734. package/src/libs/engine/src/templates/generated/uml/uml-signal.template.js +123 -0
  735. package/src/libs/engine/src/templates/generated/uml/uml-state.template.d.ts +11 -0
  736. package/src/libs/engine/src/templates/generated/uml/uml-state.template.js +123 -0
  737. package/src/libs/engine/src/templates/generated/uml/uml-use-case.template.d.ts +11 -0
  738. package/src/libs/engine/src/templates/generated/uml/uml-use-case.template.js +122 -0
  739. package/src/libs/engine/src/templates/index.d.ts +12 -0
  740. package/src/libs/engine/src/templates/index.js +27 -0
  741. package/src/libs/engine/src/templates/stencils.d.ts +45 -0
  742. package/src/libs/engine/src/templates/stencils.js +85 -0
  743. package/src/libs/engine/src/types/domain/bpmn.d.ts +25 -0
  744. package/src/libs/engine/src/types/domain/bpmn.js +313 -0
  745. package/src/libs/engine/src/types/domain/erd.d.ts +29 -0
  746. package/src/libs/engine/src/types/domain/erd.js +394 -0
  747. package/src/libs/engine/src/types/domain/flowchart.d.ts +26 -0
  748. package/src/libs/engine/src/types/domain/flowchart.js +434 -0
  749. package/src/libs/engine/src/types/domain/index.d.ts +4 -0
  750. package/src/libs/engine/src/types/domain/index.js +9 -0
  751. package/src/libs/engine/src/types/domain/uml.d.ts +40 -0
  752. package/src/libs/engine/src/types/domain/uml.js +758 -0
  753. package/src/libs/engine/src/types/event.types.d.ts +142 -0
  754. package/src/libs/engine/src/types/event.types.js +96 -0
  755. package/src/libs/engine/src/types/geometry.types.d.ts +84 -0
  756. package/src/libs/engine/src/types/geometry.types.js +16 -0
  757. package/src/libs/engine/src/types/index.d.ts +7 -0
  758. package/src/libs/engine/src/types/index.js +14 -0
  759. package/src/libs/engine/src/types/layout.types.d.ts +148 -0
  760. package/src/libs/engine/src/types/layout.types.js +28 -0
  761. package/src/libs/engine/src/types/model.types.d.ts +378 -0
  762. package/src/libs/engine/src/types/model.types.js +4 -0
  763. package/src/libs/engine/src/types/performance.types.d.ts +109 -0
  764. package/src/libs/engine/src/types/performance.types.js +122 -0
  765. package/src/libs/engine/src/types/plugin.types.d.ts +30 -0
  766. package/src/libs/engine/src/types/plugin.types.js +4 -0
  767. package/src/libs/engine/src/utils/deep-clone.d.ts +9 -0
  768. package/src/libs/engine/src/utils/deep-clone.js +123 -0
  769. package/src/libs/engine/src/utils/geometry.d.ts +45 -0
  770. package/src/libs/engine/src/utils/geometry.js +241 -0
  771. package/src/libs/engine/src/utils/id.d.ts +22 -0
  772. package/src/libs/engine/src/utils/id.js +44 -0
  773. package/src/libs/engine/src/utils/index.d.ts +3 -0
  774. package/src/libs/engine/src/utils/index.js +8 -0
  775. package/src/libs/engine/src/utils/transform.d.ts +84 -0
  776. package/src/libs/engine/src/utils/transform.js +200 -0
  777. package/src/libs/engine/src/validation/ConnectionGroupValidator.d.ts +22 -0
  778. package/src/libs/engine/src/validation/ConnectionGroupValidator.js +56 -0
  779. package/src/libs/engine/src/validation/TypeRegistry.d.ts +179 -0
  780. package/src/libs/engine/src/validation/TypeRegistry.js +358 -0
  781. package/src/libs/engine/src/validation/ValidationEngine.d.ts +79 -0
  782. package/src/libs/engine/src/validation/ValidationEngine.js +1150 -0
  783. package/src/libs/engine/src/validation/index.d.ts +3 -0
  784. package/src/libs/engine/src/validation/index.js +8 -0
  785. package/src/libs/renderer/src/a11y/diagram-outline.d.ts +93 -0
  786. package/src/libs/renderer/src/a11y/diagram-outline.js +0 -0
  787. package/src/libs/renderer/src/a11y/focus-containment.d.ts +90 -0
  788. package/src/libs/renderer/src/a11y/focus-containment.js +173 -0
  789. package/src/libs/renderer/src/a11y/graph-topology.d.ts +70 -0
  790. package/src/libs/renderer/src/a11y/graph-topology.js +0 -0
  791. package/src/libs/renderer/src/a11y/index.d.ts +26 -0
  792. package/src/libs/renderer/src/a11y/index.js +30 -0
  793. package/src/libs/renderer/src/a11y/live-region.d.ts +83 -0
  794. package/src/libs/renderer/src/a11y/live-region.js +170 -0
  795. package/src/libs/renderer/src/a11y/outline-view.d.ts +62 -0
  796. package/src/libs/renderer/src/a11y/outline-view.js +158 -0
  797. package/src/libs/renderer/src/a11y/reduced-motion.d.ts +48 -0
  798. package/src/libs/renderer/src/a11y/reduced-motion.js +223 -0
  799. package/src/libs/renderer/src/a11y/semantics.d.ts +76 -0
  800. package/src/libs/renderer/src/a11y/semantics.js +229 -0
  801. package/src/libs/renderer/src/canvas/canvas-context.d.ts +167 -0
  802. package/src/libs/renderer/src/canvas/canvas-context.js +267 -0
  803. package/src/libs/renderer/src/canvas/canvas-renderer.d.ts +194 -0
  804. package/src/libs/renderer/src/canvas/canvas-renderer.js +600 -0
  805. package/src/libs/renderer/src/canvas/dirty-region.d.ts +56 -0
  806. package/src/libs/renderer/src/canvas/dirty-region.js +171 -0
  807. package/src/libs/renderer/src/canvas/index.d.ts +16 -0
  808. package/src/libs/renderer/src/canvas/index.js +79 -0
  809. package/src/libs/renderer/src/canvas/path-geometry.d.ts +112 -0
  810. package/src/libs/renderer/src/canvas/path-geometry.js +673 -0
  811. package/src/libs/renderer/src/canvas/render-backend.d.ts +133 -0
  812. package/src/libs/renderer/src/canvas/render-backend.js +339 -0
  813. package/src/libs/renderer/src/canvas/style-resolution.d.ts +101 -0
  814. package/src/libs/renderer/src/canvas/style-resolution.js +466 -0
  815. package/src/libs/renderer/src/canvas/tier-policy.d.ts +33 -0
  816. package/src/libs/renderer/src/canvas/tier-policy.js +89 -0
  817. package/src/libs/renderer/src/canvas/vnode-painter.d.ts +154 -0
  818. package/src/libs/renderer/src/canvas/vnode-painter.js +649 -0
  819. package/src/libs/renderer/src/comments/comment-overlay.d.ts +56 -0
  820. package/src/libs/renderer/src/comments/comment-overlay.js +127 -0
  821. package/src/libs/renderer/src/comments/comment-panel.d.ts +45 -0
  822. package/src/libs/renderer/src/comments/comment-panel.js +287 -0
  823. package/src/libs/renderer/src/comments/comment-pins.d.ts +34 -0
  824. package/src/libs/renderer/src/comments/comment-pins.js +227 -0
  825. package/src/libs/renderer/src/comments/index.d.ts +3 -0
  826. package/src/libs/renderer/src/comments/index.js +17 -0
  827. package/src/libs/renderer/src/export/assets.d.ts +96 -0
  828. package/src/libs/renderer/src/export/assets.js +350 -0
  829. package/src/libs/renderer/src/export/batch.d.ts +49 -0
  830. package/src/libs/renderer/src/export/batch.js +95 -0
  831. package/src/libs/renderer/src/export/bounds.d.ts +81 -0
  832. package/src/libs/renderer/src/export/bounds.js +367 -0
  833. package/src/libs/renderer/src/export/capture-host.d.ts +39 -0
  834. package/src/libs/renderer/src/export/capture-host.js +1259 -0
  835. package/src/libs/renderer/src/export/custom-nodes.d.ts +88 -0
  836. package/src/libs/renderer/src/export/custom-nodes.js +237 -0
  837. package/src/libs/renderer/src/export/index.d.ts +14 -0
  838. package/src/libs/renderer/src/export/index.js +30 -0
  839. package/src/libs/renderer/src/export/node-raster.d.ts +60 -0
  840. package/src/libs/renderer/src/export/node-raster.js +161 -0
  841. package/src/libs/renderer/src/export/pagination.d.ts +116 -0
  842. package/src/libs/renderer/src/export/pagination.js +245 -0
  843. package/src/libs/renderer/src/export/pdf/flate.d.ts +13 -0
  844. package/src/libs/renderer/src/export/pdf/flate.js +287 -0
  845. package/src/libs/renderer/src/export/pdf/index.d.ts +4 -0
  846. package/src/libs/renderer/src/export/pdf/index.js +15 -0
  847. package/src/libs/renderer/src/export/pdf/pdf-export.d.ts +64 -0
  848. package/src/libs/renderer/src/export/pdf/pdf-export.js +1076 -0
  849. package/src/libs/renderer/src/export/pdf/pdf-path.d.ts +17 -0
  850. package/src/libs/renderer/src/export/pdf/pdf-path.js +85 -0
  851. package/src/libs/renderer/src/export/pdf/pdf-primitives.d.ts +115 -0
  852. package/src/libs/renderer/src/export/pdf/pdf-primitives.js +338 -0
  853. package/src/libs/renderer/src/export/pdf/png.d.ts +25 -0
  854. package/src/libs/renderer/src/export/pdf/png.js +596 -0
  855. package/src/libs/renderer/src/export/raster.d.ts +42 -0
  856. package/src/libs/renderer/src/export/raster.js +126 -0
  857. package/src/libs/renderer/src/export/round-trip.d.ts +83 -0
  858. package/src/libs/renderer/src/export/round-trip.js +432 -0
  859. package/src/libs/renderer/src/export/scope.d.ts +16 -0
  860. package/src/libs/renderer/src/export/scope.js +69 -0
  861. package/src/libs/renderer/src/export/style-flattener.d.ts +23 -0
  862. package/src/libs/renderer/src/export/style-flattener.js +144 -0
  863. package/src/libs/renderer/src/export/svg-export.d.ts +123 -0
  864. package/src/libs/renderer/src/export/svg-export.js +178 -0
  865. package/src/libs/renderer/src/export/vnode-serializer.d.ts +75 -0
  866. package/src/libs/renderer/src/export/vnode-serializer.js +344 -0
  867. package/src/libs/renderer/src/ext/capabilities.d.ts +178 -0
  868. package/src/libs/renderer/src/ext/capabilities.js +22 -0
  869. package/src/libs/renderer/src/ext/capability-factory.d.ts +44 -0
  870. package/src/libs/renderer/src/ext/capability-factory.js +194 -0
  871. package/src/libs/renderer/src/ext/components/attach.d.ts +66 -0
  872. package/src/libs/renderer/src/ext/components/attach.js +112 -0
  873. package/src/libs/renderer/src/ext/components/background.d.ts +84 -0
  874. package/src/libs/renderer/src/ext/components/background.js +202 -0
  875. package/src/libs/renderer/src/ext/components/controls.d.ts +49 -0
  876. package/src/libs/renderer/src/ext/components/controls.js +144 -0
  877. package/src/libs/renderer/src/ext/components/minimap.d.ts +78 -0
  878. package/src/libs/renderer/src/ext/components/minimap.js +326 -0
  879. package/src/libs/renderer/src/ext/diagram-registry.d.ts +109 -0
  880. package/src/libs/renderer/src/ext/diagram-registry.js +303 -0
  881. package/src/libs/renderer/src/ext/disposable.d.ts +51 -0
  882. package/src/libs/renderer/src/ext/disposable.js +104 -0
  883. package/src/libs/renderer/src/ext/extension-host.d.ts +144 -0
  884. package/src/libs/renderer/src/ext/extension-host.js +272 -0
  885. package/src/libs/renderer/src/ext/index.d.ts +62 -0
  886. package/src/libs/renderer/src/ext/index.js +91 -0
  887. package/src/libs/renderer/src/ext/link-pipeline.d.ts +195 -0
  888. package/src/libs/renderer/src/ext/link-pipeline.js +431 -0
  889. package/src/libs/renderer/src/ext/manifest.d.ts +73 -0
  890. package/src/libs/renderer/src/ext/manifest.js +149 -0
  891. package/src/libs/renderer/src/ext/node-component.d.ts +114 -0
  892. package/src/libs/renderer/src/ext/node-component.js +290 -0
  893. package/src/libs/renderer/src/ext/plugins-loader.d.ts +1 -0
  894. package/src/libs/renderer/src/ext/plugins-loader.js +18 -0
  895. package/src/libs/renderer/src/ext/portal.d.ts +129 -0
  896. package/src/libs/renderer/src/ext/portal.js +267 -0
  897. package/src/libs/renderer/src/ext/public-api.d.ts +101 -0
  898. package/src/libs/renderer/src/ext/public-api.js +201 -0
  899. package/src/libs/renderer/src/ext/registry-scope.d.ts +93 -0
  900. package/src/libs/renderer/src/ext/registry-scope.js +142 -0
  901. package/src/libs/renderer/src/ext/tools.d.ts +164 -0
  902. package/src/libs/renderer/src/ext/tools.js +170 -0
  903. package/src/libs/renderer/src/index.d.ts +34 -0
  904. package/src/libs/renderer/src/index.js +108 -0
  905. package/src/libs/renderer/src/instance/create-diagram.d.ts +385 -0
  906. package/src/libs/renderer/src/instance/create-diagram.js +1150 -0
  907. package/src/libs/renderer/src/instance/diagram-instance.d.ts +48 -0
  908. package/src/libs/renderer/src/instance/diagram-instance.js +51 -0
  909. package/src/libs/renderer/src/instance/dom-event-binder.d.ts +394 -0
  910. package/src/libs/renderer/src/instance/dom-event-binder.js +2104 -0
  911. package/src/libs/renderer/src/instance/index.d.ts +5 -0
  912. package/src/libs/renderer/src/instance/index.js +13 -0
  913. package/src/libs/renderer/src/instance/layers.d.ts +31 -0
  914. package/src/libs/renderer/src/instance/layers.js +43 -0
  915. package/src/libs/renderer/src/instance/model-input.d.ts +229 -0
  916. package/src/libs/renderer/src/instance/model-input.js +325 -0
  917. package/src/libs/renderer/src/instance/render-scheduler.d.ts +79 -0
  918. package/src/libs/renderer/src/instance/render-scheduler.js +96 -0
  919. package/src/libs/renderer/src/instance/wheel-scroll-yield.d.ts +38 -0
  920. package/src/libs/renderer/src/instance/wheel-scroll-yield.js +118 -0
  921. package/src/libs/renderer/src/interaction/ControlPointEditor.d.ts +160 -0
  922. package/src/libs/renderer/src/interaction/ControlPointEditor.js +360 -0
  923. package/src/libs/renderer/src/interaction/WaypointEditor.d.ts +133 -0
  924. package/src/libs/renderer/src/interaction/WaypointEditor.js +263 -0
  925. package/src/libs/renderer/src/interaction/highlighters.d.ts +88 -0
  926. package/src/libs/renderer/src/interaction/highlighters.js +212 -0
  927. package/src/libs/renderer/src/interaction/in-place-editor.d.ts +63 -0
  928. package/src/libs/renderer/src/interaction/in-place-editor.js +141 -0
  929. package/src/libs/renderer/src/interaction/index.d.ts +11 -0
  930. package/src/libs/renderer/src/interaction/index.js +29 -0
  931. package/src/libs/renderer/src/interaction/ink-overlay.d.ts +53 -0
  932. package/src/libs/renderer/src/interaction/ink-overlay.js +154 -0
  933. package/src/libs/renderer/src/interaction/interaction-controller.d.ts +555 -0
  934. package/src/libs/renderer/src/interaction/interaction-controller.js +1733 -0
  935. package/src/libs/renderer/src/interaction/keyboard-navigation.d.ts +223 -0
  936. package/src/libs/renderer/src/interaction/keyboard-navigation.js +885 -0
  937. package/src/libs/renderer/src/interaction/selection-tools.d.ts +343 -0
  938. package/src/libs/renderer/src/interaction/selection-tools.js +918 -0
  939. package/src/libs/renderer/src/interaction/snapping.d.ts +210 -0
  940. package/src/libs/renderer/src/interaction/snapping.js +569 -0
  941. package/src/libs/renderer/src/interaction/touch-gestures.d.ts +160 -0
  942. package/src/libs/renderer/src/interaction/touch-gestures.js +549 -0
  943. package/src/libs/renderer/src/interaction/whiteboard-tools.d.ts +171 -0
  944. package/src/libs/renderer/src/interaction/whiteboard-tools.js +476 -0
  945. package/src/libs/renderer/src/lazy/host-culling.d.ts +116 -0
  946. package/src/libs/renderer/src/lazy/host-culling.js +135 -0
  947. package/src/libs/renderer/src/lazy/index.d.ts +7 -0
  948. package/src/libs/renderer/src/lazy/index.js +28 -0
  949. package/src/libs/renderer/src/lazy/progressive-mounter.d.ts +80 -0
  950. package/src/libs/renderer/src/lazy/progressive-mounter.js +264 -0
  951. package/src/libs/renderer/src/lazy/types.d.ts +43 -0
  952. package/src/libs/renderer/src/lazy/types.js +14 -0
  953. package/src/libs/renderer/src/lazy/view-lifecycle.d.ts +97 -0
  954. package/src/libs/renderer/src/lazy/view-lifecycle.js +221 -0
  955. package/src/libs/renderer/src/perf/index.d.ts +2 -0
  956. package/src/libs/renderer/src/perf/index.js +7 -0
  957. package/src/libs/renderer/src/perf/perf-hud.d.ts +46 -0
  958. package/src/libs/renderer/src/perf/perf-hud.js +105 -0
  959. package/src/libs/renderer/src/perf/quality-governor.d.ts +77 -0
  960. package/src/libs/renderer/src/perf/quality-governor.js +154 -0
  961. package/src/libs/renderer/src/platform/index.d.ts +1 -0
  962. package/src/libs/renderer/src/platform/index.js +5 -0
  963. package/src/libs/renderer/src/platform/platform.d.ts +34 -0
  964. package/src/libs/renderer/src/platform/platform.js +64 -0
  965. package/src/libs/renderer/src/presence/bind-presence.d.ts +51 -0
  966. package/src/libs/renderer/src/presence/bind-presence.js +144 -0
  967. package/src/libs/renderer/src/presence/index.d.ts +4 -0
  968. package/src/libs/renderer/src/presence/index.js +18 -0
  969. package/src/libs/renderer/src/presence/presence-overlay.d.ts +121 -0
  970. package/src/libs/renderer/src/presence/presence-overlay.js +465 -0
  971. package/src/libs/renderer/src/presentation/index.d.ts +3 -0
  972. package/src/libs/renderer/src/presentation/index.js +14 -0
  973. package/src/libs/renderer/src/presentation/presentation.d.ts +94 -0
  974. package/src/libs/renderer/src/presentation/presentation.js +158 -0
  975. package/src/libs/renderer/src/presentation/viewport-channel.d.ts +78 -0
  976. package/src/libs/renderer/src/presentation/viewport-channel.js +86 -0
  977. package/src/libs/renderer/src/services/animation-lifecycle.d.ts +153 -0
  978. package/src/libs/renderer/src/services/animation-lifecycle.js +326 -0
  979. package/src/libs/renderer/src/services/animation-performance.service.d.ts +191 -0
  980. package/src/libs/renderer/src/services/animation-performance.service.js +371 -0
  981. package/src/libs/renderer/src/services/animation-sequencer.d.ts +226 -0
  982. package/src/libs/renderer/src/services/animation-sequencer.js +379 -0
  983. package/src/libs/renderer/src/services/animation.service.d.ts +182 -0
  984. package/src/libs/renderer/src/services/animation.service.js +858 -0
  985. package/src/libs/renderer/src/services/custom-animation-registry.d.ts +182 -0
  986. package/src/libs/renderer/src/services/custom-animation-registry.js +361 -0
  987. package/src/libs/renderer/src/ssr/index.d.ts +1 -0
  988. package/src/libs/renderer/src/ssr/index.js +6 -0
  989. package/src/libs/renderer/src/ssr/render-to-static.d.ts +91 -0
  990. package/src/libs/renderer/src/ssr/render-to-static.js +81 -0
  991. package/src/libs/renderer/src/svg/ArrowRenderer.d.ts +159 -0
  992. package/src/libs/renderer/src/svg/ArrowRenderer.js +723 -0
  993. package/src/libs/renderer/src/svg/JumpPointDetector.d.ts +79 -0
  994. package/src/libs/renderer/src/svg/JumpPointDetector.js +176 -0
  995. package/src/libs/renderer/src/svg/JumpPointRenderer.d.ts +59 -0
  996. package/src/libs/renderer/src/svg/JumpPointRenderer.js +309 -0
  997. package/src/libs/renderer/src/svg/LabelRenderer.d.ts +76 -0
  998. package/src/libs/renderer/src/svg/LabelRenderer.js +273 -0
  999. package/src/libs/renderer/src/svg/auto-size.d.ts +76 -0
  1000. package/src/libs/renderer/src/svg/auto-size.js +142 -0
  1001. package/src/libs/renderer/src/svg/channel-nudging.d.ts +34 -0
  1002. package/src/libs/renderer/src/svg/channel-nudging.js +226 -0
  1003. package/src/libs/renderer/src/svg/edge-optimizer.d.ts +228 -0
  1004. package/src/libs/renderer/src/svg/edge-optimizer.js +606 -0
  1005. package/src/libs/renderer/src/svg/edge-templates.d.ts +152 -0
  1006. package/src/libs/renderer/src/svg/edge-templates.js +233 -0
  1007. package/src/libs/renderer/src/svg/html-node.d.ts +50 -0
  1008. package/src/libs/renderer/src/svg/html-node.js +214 -0
  1009. package/src/libs/renderer/src/svg/index.d.ts +25 -0
  1010. package/src/libs/renderer/src/svg/index.js +32 -0
  1011. package/src/libs/renderer/src/svg/link-fanout.d.ts +127 -0
  1012. package/src/libs/renderer/src/svg/link-fanout.js +333 -0
  1013. package/src/libs/renderer/src/svg/link-hit-test.d.ts +142 -0
  1014. package/src/libs/renderer/src/svg/link-hit-test.js +182 -0
  1015. package/src/libs/renderer/src/svg/motion-tracker.d.ts +18 -0
  1016. package/src/libs/renderer/src/svg/motion-tracker.js +71 -0
  1017. package/src/libs/renderer/src/svg/node-sizing.d.ts +51 -0
  1018. package/src/libs/renderer/src/svg/node-sizing.js +65 -0
  1019. package/src/libs/renderer/src/svg/node-toolbar.d.ts +30 -0
  1020. package/src/libs/renderer/src/svg/node-toolbar.js +45 -0
  1021. package/src/libs/renderer/src/svg/notation-shapes.d.ts +2 -0
  1022. package/src/libs/renderer/src/svg/notation-shapes.js +126 -0
  1023. package/src/libs/renderer/src/svg/paint-servers.d.ts +49 -0
  1024. package/src/libs/renderer/src/svg/paint-servers.js +225 -0
  1025. package/src/libs/renderer/src/svg/panel.d.ts +115 -0
  1026. package/src/libs/renderer/src/svg/panel.js +353 -0
  1027. package/src/libs/renderer/src/svg/path-outline.d.ts +35 -0
  1028. package/src/libs/renderer/src/svg/path-outline.js +134 -0
  1029. package/src/libs/renderer/src/svg/port-glyph.d.ts +27 -0
  1030. package/src/libs/renderer/src/svg/port-glyph.js +97 -0
  1031. package/src/libs/renderer/src/svg/port-label.d.ts +74 -0
  1032. package/src/libs/renderer/src/svg/port-label.js +201 -0
  1033. package/src/libs/renderer/src/svg/port-layout.d.ts +50 -0
  1034. package/src/libs/renderer/src/svg/port-layout.js +212 -0
  1035. package/src/libs/renderer/src/svg/port-positioning.d.ts +33 -0
  1036. package/src/libs/renderer/src/svg/port-positioning.js +101 -0
  1037. package/src/libs/renderer/src/svg/port-spots.d.ts +69 -0
  1038. package/src/libs/renderer/src/svg/port-spots.js +154 -0
  1039. package/src/libs/renderer/src/svg/route-memo.d.ts +63 -0
  1040. package/src/libs/renderer/src/svg/route-memo.js +206 -0
  1041. package/src/libs/renderer/src/svg/route-solver-bridge.d.ts +48 -0
  1042. package/src/libs/renderer/src/svg/route-solver-bridge.js +151 -0
  1043. package/src/libs/renderer/src/svg/shape-registry.d.ts +189 -0
  1044. package/src/libs/renderer/src/svg/shape-registry.js +1104 -0
  1045. package/src/libs/renderer/src/svg/stroke-layer.d.ts +36 -0
  1046. package/src/libs/renderer/src/svg/stroke-layer.js +183 -0
  1047. package/src/libs/renderer/src/svg/svg-renderer.d.ts +1737 -0
  1048. package/src/libs/renderer/src/svg/svg-renderer.js +7772 -0
  1049. package/src/libs/renderer/src/svg/text-block.d.ts +54 -0
  1050. package/src/libs/renderer/src/svg/text-block.js +171 -0
  1051. package/src/libs/renderer/src/themes/color-mode.d.ts +81 -0
  1052. package/src/libs/renderer/src/themes/color-mode.js +158 -0
  1053. package/src/libs/renderer/src/themes/contrast.d.ts +67 -0
  1054. package/src/libs/renderer/src/themes/contrast.js +215 -0
  1055. package/src/libs/renderer/src/themes/default-dark-theme.d.ts +6 -0
  1056. package/src/libs/renderer/src/themes/default-dark-theme.js +126 -0
  1057. package/src/libs/renderer/src/themes/default-light-theme.d.ts +6 -0
  1058. package/src/libs/renderer/src/themes/default-light-theme.js +168 -0
  1059. package/src/libs/renderer/src/themes/default-theme-set.d.ts +10 -0
  1060. package/src/libs/renderer/src/themes/default-theme-set.js +25 -0
  1061. package/src/libs/renderer/src/themes/high-contrast-theme.d.ts +5 -0
  1062. package/src/libs/renderer/src/themes/high-contrast-theme.js +170 -0
  1063. package/src/libs/renderer/src/themes/index.d.ts +22 -0
  1064. package/src/libs/renderer/src/themes/index.js +93 -0
  1065. package/src/libs/renderer/src/themes/style-cascade.d.ts +23 -0
  1066. package/src/libs/renderer/src/themes/style-cascade.js +194 -0
  1067. package/src/libs/renderer/src/themes/style-registry.d.ts +40 -0
  1068. package/src/libs/renderer/src/themes/style-registry.js +129 -0
  1069. package/src/libs/renderer/src/themes/theme-a11y.d.ts +65 -0
  1070. package/src/libs/renderer/src/themes/theme-a11y.js +256 -0
  1071. package/src/libs/renderer/src/themes/theme-css.d.ts +30 -0
  1072. package/src/libs/renderer/src/themes/theme-css.js +304 -0
  1073. package/src/libs/renderer/src/themes/theme-ref.d.ts +63 -0
  1074. package/src/libs/renderer/src/themes/theme-ref.js +206 -0
  1075. package/src/libs/renderer/src/themes/theme-vars.d.ts +49 -0
  1076. package/src/libs/renderer/src/themes/theme-vars.js +112 -0
  1077. package/src/libs/renderer/src/themes/token-bridge.d.ts +62 -0
  1078. package/src/libs/renderer/src/themes/token-bridge.js +354 -0
  1079. package/src/libs/renderer/src/types/geometry.types.d.ts +10 -0
  1080. package/src/libs/renderer/src/types/geometry.types.js +3 -0
  1081. package/src/libs/renderer/src/types/index.d.ts +5 -0
  1082. package/src/libs/renderer/src/types/index.js +14 -0
  1083. package/src/libs/renderer/src/types/property-schema/conditions.d.ts +96 -0
  1084. package/src/libs/renderer/src/types/property-schema/conditions.js +8 -0
  1085. package/src/libs/renderer/src/types/property-schema/editor-types.d.ts +310 -0
  1086. package/src/libs/renderer/src/types/property-schema/editor-types.js +8 -0
  1087. package/src/libs/renderer/src/types/property-schema/groups.d.ts +58 -0
  1088. package/src/libs/renderer/src/types/property-schema/groups.js +8 -0
  1089. package/src/libs/renderer/src/types/property-schema/index.d.ts +101 -0
  1090. package/src/libs/renderer/src/types/property-schema/index.js +98 -0
  1091. package/src/libs/renderer/src/types/property-schema/property-definition.d.ts +117 -0
  1092. package/src/libs/renderer/src/types/property-schema/property-definition.js +8 -0
  1093. package/src/libs/renderer/src/types/property-schema/schema.d.ts +108 -0
  1094. package/src/libs/renderer/src/types/property-schema/schema.js +8 -0
  1095. package/src/libs/renderer/src/types/property-schema/validation.d.ts +181 -0
  1096. package/src/libs/renderer/src/types/property-schema/validation.js +8 -0
  1097. package/src/libs/renderer/src/types/renderer.interface.d.ts +623 -0
  1098. package/src/libs/renderer/src/types/renderer.interface.js +3 -0
  1099. package/src/libs/renderer/src/types/theme.types.d.ts +305 -0
  1100. package/src/libs/renderer/src/types/theme.types.js +3 -0
  1101. package/src/libs/renderer/src/types/vnode.types.d.ts +139 -0
  1102. package/src/libs/renderer/src/types/vnode.types.js +3 -0
  1103. package/src/libs/renderer/src/utils/animation-presets.d.ts +310 -0
  1104. package/src/libs/renderer/src/utils/animation-presets.js +406 -0
  1105. package/src/libs/renderer/src/utils/animation-priority.d.ts +118 -0
  1106. package/src/libs/renderer/src/utils/animation-priority.js +258 -0
  1107. package/src/libs/renderer/src/utils/animation-utils.d.ts +159 -0
  1108. package/src/libs/renderer/src/utils/animation-utils.js +323 -0
  1109. package/src/libs/renderer/src/utils/lru-cache.d.ts +34 -0
  1110. package/src/libs/renderer/src/utils/lru-cache.js +72 -0
  1111. package/src/libs/renderer/src/viewport/index.d.ts +1 -0
  1112. package/src/libs/renderer/src/viewport/index.js +6 -0
  1113. package/src/libs/renderer/src/viewport/viewport-controller.d.ts +198 -0
  1114. package/src/libs/renderer/src/viewport/viewport-controller.js +315 -0
  1115. package/src/libs/renderer/src/vnode/container-id-generator.d.ts +94 -0
  1116. package/src/libs/renderer/src/vnode/container-id-generator.js +110 -0
  1117. package/src/libs/renderer/src/vnode/foreign-object.d.ts +157 -0
  1118. package/src/libs/renderer/src/vnode/foreign-object.js +167 -0
  1119. package/src/libs/renderer/src/vnode/index.d.ts +56 -0
  1120. package/src/libs/renderer/src/vnode/index.js +78 -0
  1121. package/src/libs/renderer/src/vnode/patch.d.ts +189 -0
  1122. package/src/libs/renderer/src/vnode/patch.js +564 -0
  1123. package/src/index.js.map +0 -1
  1124. package/src/lib/dashboard-kit/dashboard.js.map +0 -1
  1125. package/src/lib/dashboard-kit/grid-binder.js.map +0 -1
  1126. package/src/lib/dashboard-kit/grid-mapping.js.map +0 -1
  1127. package/src/lib/dashboard-kit/index.js.map +0 -1
  1128. package/src/lib/dashboard-kit/styles.js.map +0 -1
  1129. package/src/lib/dashboard-kit/widgets.js.map +0 -1
  1130. package/src/lib/diagram-kit/card.js.map +0 -1
  1131. package/src/lib/diagram-kit/editing.js.map +0 -1
  1132. package/src/lib/diagram-kit/er.js.map +0 -1
  1133. package/src/lib/diagram-kit/handles.js.map +0 -1
  1134. package/src/lib/diagram-kit/index.js.map +0 -1
  1135. package/src/lib/diagram-kit/rows.js.map +0 -1
  1136. package/src/lib/diagram-kit/styles.js.map +0 -1
  1137. package/src/lib/diagram-kit/uml.js.map +0 -1
  1138. package/src/lib/diagram-kit/update.js.map +0 -1
  1139. package/src/lib/grafloria-flow-element.js.map +0 -1
  1140. package/src/lib/grafloria.js.map +0 -1
  1141. package/src/lib/load.js.map +0 -1
  1142. package/src/lib/node-type-registry.js.map +0 -1
  1143. package/src/lib/stencil-kit/builders.js.map +0 -1
  1144. package/src/lib/stencil-kit/card-builders.js.map +0 -1
  1145. package/src/lib/stencil-kit/index.js.map +0 -1
  1146. package/src/lib/stencil-kit/palette.js.map +0 -1
  1147. package/src/lib/stencil-kit/shape-data.js.map +0 -1
  1148. package/src/lib/stencil-kit/styles.js.map +0 -1
@@ -0,0 +1,69 @@
1
+ "use strict";
2
+ // Export scope: WHICH parts of the diagram end up in the file.
3
+ //
4
+ // Tightening the viewBox around a selection is not enough on its own. SVG clips to
5
+ // the viewBox, so an un-selected node outside it is invisible — but its markup is
6
+ // still IN THE FILE. That is a bloated artifact and, for a "share just this bit"
7
+ // export, an information leak: the bytes carry every label of every node the user
8
+ // did not choose to share. So a selection export PRUNES the tree as well as the box.
9
+ //
10
+ // The prune keeps:
11
+ // • every container (layers, <defs>) — a kept node may reference a gradient or a
12
+ // marker that lives in <defs>, and dropping it would leave a dangling url(#…);
13
+ // • every identified diagram object (`node-<id>` / `link-<id>`) whose id is in scope,
14
+ // with its whole subtree intact (a node's label and ports are part of the node).
15
+ //
16
+ // and drops every identified object that is not in scope.
17
+ Object.defineProperty(exports, "__esModule", { value: true });
18
+ exports.selectionKeys = selectionKeys;
19
+ exports.filterTreeByIds = filterTreeByIds;
20
+ /** The VNode `key` prefixes the renderer stamps on identified diagram objects. */
21
+ const IDENTIFIED = /^(node|link)-/;
22
+ /**
23
+ * Every key shape the renderer can mint for a given diagram id.
24
+ *
25
+ * `renderNode` has a second early-return path for HTML-layer nodes that keys them
26
+ * `node-<id>-html-layer`, so an exact-match set built only from `node-<id>` would
27
+ * silently drop those from a selection export.
28
+ */
29
+ function selectionKeys(ids) {
30
+ const keys = new Set();
31
+ for (const id of ids) {
32
+ keys.add(`node-${id}`);
33
+ keys.add(`node-${id}-html-layer`);
34
+ keys.add(`link-${id}`);
35
+ }
36
+ return keys;
37
+ }
38
+ /**
39
+ * Prune a rendered tree down to the given node/link ids.
40
+ *
41
+ * Returns a new tree; the input is not mutated (the caller's tree is the live
42
+ * render, and mutating it would corrupt the next frame).
43
+ */
44
+ function filterTreeByIds(root, ids) {
45
+ const keys = selectionKeys(ids);
46
+ return prune(root, keys);
47
+ }
48
+ function prune(vnode, keys) {
49
+ var _a;
50
+ const children = (_a = vnode.children) !== null && _a !== void 0 ? _a : [];
51
+ const kept = [];
52
+ for (const child of children) {
53
+ if (!child || typeof child !== 'object')
54
+ continue;
55
+ const key = child.key;
56
+ const identified = typeof key === 'string' && IDENTIFIED.test(key);
57
+ if (identified) {
58
+ // An identified object is all-or-nothing: in scope → keep the whole subtree.
59
+ if (keys.has(key))
60
+ kept.push(child);
61
+ continue;
62
+ }
63
+ // A container: keep it and recurse. (Containers are layers and <defs>; a kept
64
+ // node may reference a def, so defs are never pruned.)
65
+ kept.push(prune(child, keys));
66
+ }
67
+ return Object.assign(Object.assign({}, vnode), { children: kept });
68
+ }
69
+ //# sourceMappingURL=scope.js.map
@@ -0,0 +1,23 @@
1
+ import type { Theme } from '../types/theme.types';
2
+ /**
3
+ * Replace every `var(--grafloria-*)` in a declaration with its literal theme value.
4
+ * Returns `undefined` when a referenced variable has no value and no fallback —
5
+ * the declaration is then DROPPED rather than emitted as an unresolvable
6
+ * reference, and the caller records a warning.
7
+ */
8
+ export declare function resolveCssVars(value: string, vars: Record<string, string>): string | undefined;
9
+ /**
10
+ * Resolves an element's class list to the concrete presentation attributes the
11
+ * renderer's stylesheet would have painted, for THIS theme.
12
+ */
13
+ export type ClassStyleResolver = (classList: string[]) => Record<string, string>;
14
+ /**
15
+ * Build the resolver for a theme. Compiles BASE_STYLE_RULES once (var refs
16
+ * resolved against the theme's variable values), then matches class lists
17
+ * against it.
18
+ *
19
+ * @param theme the theme whose `--grafloria-*` values get baked in
20
+ * @param warnings collector — a declaration whose variable cannot be resolved is
21
+ * dropped and reported here rather than silently emitting `var(--…)`.
22
+ */
23
+ export declare function createClassStyleResolver(theme: Theme, warnings?: string[]): ClassStyleResolver;
@@ -0,0 +1,144 @@
1
+ "use strict";
2
+ // Standalone-SVG style flattening: RESOLVE the CSS-variable cascade instead of
3
+ // referencing it.
4
+ //
5
+ // THE PROBLEM
6
+ // -----------
7
+ // The live renderer paints the THEME layer from a stylesheet written entirely in
8
+ // custom properties:
9
+ //
10
+ // [data-grafloria-instance] .diagram-node { fill: var(--grafloria-node-fill); … }
11
+ // [data-grafloria-instance="grafloria-3"] { --grafloria-node-fill: #ffffff; … }
12
+ //
13
+ // A node VNode in CSS mode therefore carries NO fill at all — just
14
+ // `class="diagram-node"`. That is exactly right on a live page and useless in a
15
+ // file: an SVG opened in Inkscape, embedded in an email, or handed to a
16
+ // rasterizer (resvg / librsvg / cairosvg — none of which implement CSS custom
17
+ // properties) has neither our stylesheet nor our variables. It would render with
18
+ // UA defaults: black fill, no stroke, 16px serif labels.
19
+ //
20
+ // THE DECISION — flatten, don't ship a <style> block
21
+ // --------------------------------------------------
22
+ // We resolve the cascade to CONCRETE presentation attributes and emit ZERO
23
+ // `var(--…)` and zero `<style>` rules. The alternative (inline the shared rules
24
+ // plus a materialised variable block into a `<style>` inside the SVG) is
25
+ // self-contained in the "no network fetch" sense, but it still requires the
26
+ // consumer to implement CSS selectors AND custom properties. Most non-browser
27
+ // SVG consumers implement neither. Flattening is the only form that renders
28
+ // identically everywhere, so it is what `export` produces — and the export tests
29
+ // assert the output contains no `var(--`.
30
+ //
31
+ // HOW THE CASCADE IS REPRODUCED
32
+ // -----------------------------
33
+ // This is a mini CSS engine over exactly ONE stylesheet — our own
34
+ // {@link BASE_STYLE_RULES} — whose selectors are all simple compound class
35
+ // selectors (`.diagram-node`, `.diagram-node.selected`, `.port-input.port-highlighted`).
36
+ // So the whole cascade is: match by class set, order by (specificity = number of
37
+ // classes, then source order). BASE_STYLE_RULES is authored in ascending
38
+ // precedence, so source order already encodes `selected > highlighted > hovered`
39
+ // at equal specificity — the same tie-break the browser applies.
40
+ //
41
+ // The one subtlety that MATTERS is CSS priority order:
42
+ //
43
+ // presentation attribute < author stylesheet rule < inline style
44
+ //
45
+ // A presentation attribute (`fill="#e8f5e9"`) LOSES to any author rule. So the
46
+ // flattened rule values must OVERWRITE prop-derived presentation attributes, and
47
+ // an element's inline `style` string must beat both — which it does for free,
48
+ // because it stays an inline `style` attribute in the output. Reproducing that
49
+ // order here is what keeps the exported picture identical to the live one.
50
+ Object.defineProperty(exports, "__esModule", { value: true });
51
+ exports.resolveCssVars = resolveCssVars;
52
+ exports.createClassStyleResolver = createClassStyleResolver;
53
+ const theme_css_1 = require("../themes/theme-css");
54
+ const theme_vars_1 = require("../themes/theme-vars");
55
+ /**
56
+ * CSS properties the flattener is allowed to materialise onto an element.
57
+ *
58
+ * Everything in BASE_STYLE_RULES is a paint value except `cursor`, which has no
59
+ * meaning in a static picture. Anything outside this set is dropped rather than
60
+ * emitted as a bogus attribute.
61
+ */
62
+ const PAINTABLE_PROPS = new Set([
63
+ 'fill',
64
+ 'stroke',
65
+ 'stroke-width',
66
+ 'stroke-dasharray',
67
+ 'opacity',
68
+ 'fill-opacity',
69
+ 'stroke-opacity',
70
+ 'font-family',
71
+ 'font-size',
72
+ 'font-weight',
73
+ 'color',
74
+ ]);
75
+ /** `.diagram-node.selected` → ['diagram-node', 'selected'] */
76
+ function selectorClasses(selector) {
77
+ return selector
78
+ .split('.')
79
+ .map(part => part.trim())
80
+ .filter(Boolean);
81
+ }
82
+ const VAR_REF = /var\(\s*(--[A-Za-z0-9_-]+)\s*(?:,\s*([^)]*))?\)/g;
83
+ /**
84
+ * Replace every `var(--grafloria-*)` in a declaration with its literal theme value.
85
+ * Returns `undefined` when a referenced variable has no value and no fallback —
86
+ * the declaration is then DROPPED rather than emitted as an unresolvable
87
+ * reference, and the caller records a warning.
88
+ */
89
+ function resolveCssVars(value, vars) {
90
+ let unresolved = false;
91
+ const out = value.replace(VAR_REF, (_all, name, fallback) => {
92
+ const resolved = vars[name];
93
+ if (resolved !== undefined)
94
+ return resolved;
95
+ if (fallback !== undefined && fallback.trim() !== '')
96
+ return fallback.trim();
97
+ unresolved = true;
98
+ return '';
99
+ });
100
+ return unresolved ? undefined : out.trim();
101
+ }
102
+ /**
103
+ * Build the resolver for a theme. Compiles BASE_STYLE_RULES once (var refs
104
+ * resolved against the theme's variable values), then matches class lists
105
+ * against it.
106
+ *
107
+ * @param theme the theme whose `--grafloria-*` values get baked in
108
+ * @param warnings collector — a declaration whose variable cannot be resolved is
109
+ * dropped and reported here rather than silently emitting `var(--…)`.
110
+ */
111
+ function createClassStyleResolver(theme, warnings = []) {
112
+ const vars = (0, theme_vars_1.resolveThemeVars)(theme);
113
+ const compiled = theme_css_1.BASE_STYLE_RULES.map((rule, order) => {
114
+ const decls = {};
115
+ for (const [prop, raw] of Object.entries(rule.decls)) {
116
+ if (!PAINTABLE_PROPS.has(prop))
117
+ continue; // cursor & friends: not a picture
118
+ const resolved = resolveCssVars(raw, vars);
119
+ if (resolved === undefined) {
120
+ warnings.push(`unresolved CSS variable in "${rule.selector} { ${prop}: ${raw} }" — declaration dropped`);
121
+ continue;
122
+ }
123
+ decls[prop] = resolved;
124
+ }
125
+ const classes = selectorClasses(rule.selector);
126
+ return { classes, specificity: classes.length, order, decls };
127
+ });
128
+ // Stable cascade order: lower specificity first, then source order. Applying in
129
+ // this order into a map means the LAST write wins — i.e. the browser's winner.
130
+ compiled.sort((a, b) => a.specificity - b.specificity || a.order - b.order);
131
+ return (classList) => {
132
+ if (classList.length === 0)
133
+ return {};
134
+ const have = new Set(classList);
135
+ const out = {};
136
+ for (const rule of compiled) {
137
+ if (!rule.classes.every(c => have.has(c)))
138
+ continue;
139
+ Object.assign(out, rule.decls);
140
+ }
141
+ return out;
142
+ };
143
+ }
144
+ //# sourceMappingURL=style-flattener.js.map
@@ -0,0 +1,123 @@
1
+ import type { VNode } from '../types/vnode.types';
2
+ import type { Theme } from '../types/theme.types';
3
+ import type { Rectangle } from '../types/geometry.types';
4
+ import { type ForeignObjectMode } from './vnode-serializer';
5
+ import { type CustomNodeCapture, type HtmlFallbackMode } from './custom-nodes';
6
+ import { type FontSource } from './assets';
7
+ import type { DiagramDocumentEnvelope } from '@grafloria/engine';
8
+ export declare const SVG_XMLNS = "http://www.w3.org/2000/svg";
9
+ /** The XML prolog. Required by strict XML parsers and by most SVG→PDF toolchains. */
10
+ export declare const XML_DECLARATION = "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"no\"?>";
11
+ export interface SvgExportOptions {
12
+ /**
13
+ * The theme whose values get baked into the output. MUST be the theme the tree
14
+ * was rendered with — it is the source of every `--grafloria-*` value the live
15
+ * stylesheet would have supplied. Defaults to LIGHT_THEME.
16
+ */
17
+ theme?: Theme;
18
+ /**
19
+ * Multiplies the SVG's `width`/`height` (its intrinsic size) while the
20
+ * `viewBox` stays put — so the picture is unchanged, just rendered larger. This
21
+ * is what makes a 2x PNG a 2x PNG.
22
+ */
23
+ scale?: number;
24
+ /** Painted as a full-viewBox rect behind everything. Default: transparent. */
25
+ backgroundColor?: string;
26
+ /** What to do with `<foreignObject>` subtrees. Default `'serialize'`. */
27
+ foreignObject?: ForeignObjectMode;
28
+ /** Supply the live HTML inside a foreignObject (browser-side callers). */
29
+ captureForeignObject?: (vnode: VNode) => string | undefined;
30
+ /**
31
+ * CUSTOM-NODE CONTENT — the widgets an HTML-layer node paints, which the VNode tree
32
+ * does not contain and cannot contain (the renderer emits an empty `<g>` for those
33
+ * nodes; the page paints a raw HTML host that is a SIBLING of the SVG).
34
+ *
35
+ * Plain data, captured by whoever has the DOM — `createDiagram` does it for you.
36
+ * Passing it keeps this function pure: no element ever reaches here.
37
+ * See `capture-host.ts` for the capture and `custom-nodes.ts` for the placement.
38
+ */
39
+ customNodes?: readonly CustomNodeCapture[];
40
+ /**
41
+ * What to do with a custom node that could only be captured as HTML. Default
42
+ * `'foreignObject'`. Whatever you choose, it is REPORTED in `warnings` — a widget
43
+ * that cannot make it into the file faithfully never does so quietly.
44
+ */
45
+ htmlFallback?: HtmlFallbackMode;
46
+ /**
47
+ * CSS emitted verbatim into a `<style>` inside `<defs>`. THE font seam: pass an
48
+ * `@font-face` whose `src` is a `data:` URI and the exported file carries its
49
+ * own glyphs. We do not fetch, subset or embed fonts for you — that is a
50
+ * deliberate boundary, not an oversight.
51
+ */
52
+ embedFontCss?: string;
53
+ /**
54
+ * Fonts to EMBED as base64 `@font-face` rules — the built form of the `embedFontCss` seam.
55
+ * Both are honoured; `embedFontCss` is appended after these.
56
+ */
57
+ embedFonts?: FontSource[];
58
+ /**
59
+ * Fit the viewBox to the CONTENT — the union box of everything the tree actually
60
+ * draws (labels, ports and arrowheads included), not the root's own viewBox.
61
+ *
62
+ * The root `<svg>`'s viewBox is the live VIEWPORT: it is scoped to what the user
63
+ * is looking at, and at any zoom but 1 it is not even the same rectangle. A file
64
+ * wants the diagram, so this defaults to ON. Turn it off to keep the tree's own
65
+ * viewBox verbatim (that is what a pagination tile does — it has already chosen
66
+ * its rectangle).
67
+ */
68
+ fitToContent?: boolean;
69
+ /** Margin around the fitted content box, in world units. Default 20. */
70
+ padding?: number;
71
+ /**
72
+ * Export ONLY these node/link ids. The tree is pruned to them (not merely cropped
73
+ * — an un-selected node outside the viewBox is invisible but its markup, and its
74
+ * labels, would still be in the bytes) and the box is fitted around them.
75
+ */
76
+ includeIds?: Iterable<string>;
77
+ /** Use this exact viewBox and fit nothing. Wins over `fitToContent`. */
78
+ viewBox?: Rectangle;
79
+ /**
80
+ * Cap on the output's intrinsic size, per side, in px. Default 4000. The scale is
81
+ * REDUCED to fit rather than the picture being cropped — see `clampOutputSize`.
82
+ */
83
+ maxSize?: number;
84
+ /** Floor on the output's intrinsic size, per side, in px. Default 1. */
85
+ minSize?: number;
86
+ /** Prepend the `<?xml …?>` prolog. Default false (an inline `<svg>` must not have one). */
87
+ xmlDeclaration?: boolean;
88
+ /**
89
+ * Embed this document envelope in the SVG's `<metadata>`, making the exported file
90
+ * an EDITABLE artifact: re-import it and get the diagram back, losslessly.
91
+ *
92
+ * Takes the envelope rather than building one, because an envelope carries a
93
+ * `createdAt` — and minting a timestamp in here would make the export
94
+ * non-deterministic, which is a guarantee this module does not get to break.
95
+ * `SVGRenderer.export` builds it for you (see `ExportOptions.embedModel`).
96
+ */
97
+ embedModel?: DiagramDocumentEnvelope;
98
+ }
99
+ export interface SvgExportResult {
100
+ /** The standalone SVG document. */
101
+ svg: string;
102
+ /** Intrinsic width in px (viewBox width × the CLAMPED scale). */
103
+ width: number;
104
+ /** Intrinsic height in px. */
105
+ height: number;
106
+ /** The world rectangle the document actually covers — what pagination and PDF page off. */
107
+ viewBox: ViewBox;
108
+ /** Fidelity caveats hit during this export (foreignObject, unresolved vars, size clamp, …). */
109
+ warnings: string[];
110
+ }
111
+ interface ViewBox {
112
+ x: number;
113
+ y: number;
114
+ width: number;
115
+ height: number;
116
+ }
117
+ /**
118
+ * Serialize a rendered VNode tree to a standalone SVG string.
119
+ *
120
+ * @param root the root `<svg>` VNode from `SVGRenderer.render(viewport, zoom)`
121
+ */
122
+ export declare function exportSvg(root: VNode, options?: SvgExportOptions): SvgExportResult;
123
+ export {};
@@ -0,0 +1,178 @@
1
+ "use strict";
2
+ // The standalone SVG document: a pure function from the renderer's VNode tree to
3
+ // a self-contained, styles-inlined SVG string.
4
+ //
5
+ // GUARANTEES (each one is pinned by a test in svg-export.spec.ts):
6
+ // • no `var(--…)` — the theme cascade is RESOLVED, not referenced
7
+ // • no external references — no http(s), no `<image href>`, no @import, no
8
+ // webfont URL: every `url(#…)` points inside the
9
+ // document's own `<defs>`
10
+ // • deterministic — same tree + same options ⇒ byte-identical string,
11
+ // every time, in any process
12
+ // • zero DOM — plain Node, a worker, an SSR pass; no `document`
13
+ //
14
+ // WHAT IS NOT GUARANTEED (be blunt — see README of the card):
15
+ // • FONTS are declared (`font-family: …`), not embedded. Glyphs still come from
16
+ // the machine that renders the file. Pass `embedFontCss` with a @font-face
17
+ // whose src is a data: URI to make the file truly self-contained; we do NOT
18
+ // subset or convert text to paths.
19
+ // • CSS ANIMATIONS are not exported. A static picture has no time axis, so an
20
+ // animated link exports as its base (un-dashed) stroke.
21
+ // • foreignObject content is host-mounted DOM, not VNode — see the serializer.
22
+ Object.defineProperty(exports, "__esModule", { value: true });
23
+ exports.XML_DECLARATION = exports.SVG_XMLNS = void 0;
24
+ exports.exportSvg = exportSvg;
25
+ const default_light_theme_1 = require("../themes/default-light-theme");
26
+ const style_flattener_1 = require("./style-flattener");
27
+ const vnode_serializer_1 = require("./vnode-serializer");
28
+ const bounds_1 = require("./bounds");
29
+ const scope_1 = require("./scope");
30
+ const custom_nodes_1 = require("./custom-nodes");
31
+ const round_trip_1 = require("./round-trip");
32
+ const assets_1 = require("./assets");
33
+ exports.SVG_XMLNS = 'http://www.w3.org/2000/svg';
34
+ /** The XML prolog. Required by strict XML parsers and by most SVG→PDF toolchains. */
35
+ exports.XML_DECLARATION = '<?xml version="1.0" encoding="UTF-8" standalone="no"?>';
36
+ /** Read the root `<svg>` VNode's viewBox — or synthesize one from width/height. */
37
+ function readViewBox(root) {
38
+ var _a, _b, _c, _d, _e;
39
+ const raw = (_a = root.props) === null || _a === void 0 ? void 0 : _a['viewBox'];
40
+ if (typeof raw === 'string') {
41
+ const parts = raw.trim().split(/[\s,]+/).map(Number);
42
+ if (parts.length === 4 && parts.every(n => Number.isFinite(n))) {
43
+ return { x: parts[0], y: parts[1], width: parts[2], height: parts[3] };
44
+ }
45
+ }
46
+ // The empty-diagram root carries width/height instead of a viewBox.
47
+ const width = Number((_c = (_b = root.props) === null || _b === void 0 ? void 0 : _b['width']) !== null && _c !== void 0 ? _c : 0);
48
+ const height = Number((_e = (_d = root.props) === null || _d === void 0 ? void 0 : _d['height']) !== null && _e !== void 0 ? _e : 0);
49
+ return { x: 0, y: 0, width: Number.isFinite(width) ? width : 0, height: Number.isFinite(height) ? height : 0 };
50
+ }
51
+ /**
52
+ * Serialize a rendered VNode tree to a standalone SVG string.
53
+ *
54
+ * @param root the root `<svg>` VNode from `SVGRenderer.render(viewport, zoom)`
55
+ */
56
+ function exportSvg(root, options = {}) {
57
+ var _a, _b, _c, _d, _e, _f;
58
+ const theme = (_a = options.theme) !== null && _a !== void 0 ? _a : default_light_theme_1.LIGHT_THEME;
59
+ const requestedScale = options.scale && options.scale > 0 ? options.scale : 1;
60
+ const warnings = [];
61
+ // (1) SCOPE — prune before anything else, so the box is fitted to what survives.
62
+ const tree = options.includeIds !== undefined ? (0, scope_1.filterTreeByIds)(root, options.includeIds) : root;
63
+ // Custom-node content is scoped by the SAME ids. A capture is keyed by node id, so
64
+ // `includeIds` prunes widgets exactly as it prunes nodes.
65
+ const captures = (0, custom_nodes_1.filterCaptures)((_b = options.customNodes) !== null && _b !== void 0 ? _b : [], options.includeIds);
66
+ const custom = (0, custom_nodes_1.customNodeVNodes)(captures, { htmlFallback: options.htmlFallback });
67
+ warnings.push(...custom.warnings);
68
+ // (2) THE BOX. Priority: an explicit viewBox, else the content fit (the default —
69
+ // the root's own viewBox is the live viewport, which is not what a file wants),
70
+ // else the tree's viewBox verbatim.
71
+ const viewBox = resolveViewBox(tree, options, warnings, captures);
72
+ // (3) SIZE, capped.
73
+ //
74
+ // NO CAP BY DEFAULT HERE. The cap exists to stop a canvas request the browser will
75
+ // silently refuse — and an SVG allocates no canvas. It is a VECTOR document: a
76
+ // 9000px-wide intrinsic size costs nothing and still renders sharp at any size, so
77
+ // clamping it would shrink a perfectly good file for no reason.
78
+ //
79
+ // The raster path (`SVGRenderer.export('png'|…)`) therefore passes the real cap in
80
+ // explicitly. A caller who wants an SVG capped too can pass `maxSize`.
81
+ const clamped = (0, bounds_1.clampOutputSize)(viewBox.width, viewBox.height, requestedScale, (_c = options.maxSize) !== null && _c !== void 0 ? _c : Infinity, (_d = options.minSize) !== null && _d !== void 0 ? _d : 1);
82
+ if (clamped.warning)
83
+ warnings.push(clamped.warning);
84
+ const width = clamped.width;
85
+ const height = clamped.height;
86
+ const classStyles = (0, style_flattener_1.createClassStyleResolver)(theme, warnings);
87
+ // Defs the serializer had to synthesize (blur filters). Filled during the walk,
88
+ // emitted after it — hence children are serialized BEFORE the document is composed.
89
+ const extraDefs = new Map();
90
+ const serialize = (child) => (0, vnode_serializer_1.serializeVNode)(child, {
91
+ classStyles,
92
+ foreignObject: options.foreignObject,
93
+ captureForeignObject: options.captureForeignObject,
94
+ warnings,
95
+ extraDefs,
96
+ });
97
+ // Custom nodes are serialized LAST, so they paint above the diagram — the same
98
+ // stacking the live page has, where `.grafloria-html-layer` sits on top of the SVG layer.
99
+ const children = ((_e = tree.children) !== null && _e !== void 0 ? _e : [])
100
+ .filter(child => child !== null && child !== undefined)
101
+ .map(serialize)
102
+ .join('') + custom.nodes.map(serialize).join('');
103
+ const background = options.backgroundColor !== undefined
104
+ ? `<rect x="${viewBox.x}" y="${viewBox.y}" width="${viewBox.width}" height="${viewBox.height}" ` +
105
+ `fill="${(0, vnode_serializer_1.escapeAttr)(options.backgroundColor)}"/>`
106
+ : '';
107
+ // The font seam. CDATA-wrapped so a `>` or `&` in the caller's CSS cannot
108
+ // break the document.
109
+ const embedded = ((_f = options.embedFonts) === null || _f === void 0 ? void 0 : _f.length) ? (0, assets_1.fontFaceCss)(options.embedFonts) : '';
110
+ const fontCss = [embedded, options.embedFontCss].filter(Boolean).join('\n');
111
+ const fontDefs = fontCss ? `<style type="text/css"><![CDATA[\n${fontCss}\n]]></style>` : '';
112
+ const synthesized = Array.from(extraDefs.values()).join('');
113
+ const defs = fontDefs || synthesized ? `<defs>${fontDefs}${synthesized}</defs>` : '';
114
+ const prolog = options.xmlDeclaration ? exports.XML_DECLARATION : '';
115
+ let svg = prolog +
116
+ `<svg xmlns="${exports.SVG_XMLNS}" ` +
117
+ `viewBox="${viewBox.x} ${viewBox.y} ${viewBox.width} ${viewBox.height}" ` +
118
+ `width="${width}" height="${height}" class="grafloria-diagram">` +
119
+ defs +
120
+ background +
121
+ children +
122
+ `</svg>`;
123
+ // The source model, carried inside the picture (Card 7). Injected AFTER composition
124
+ // so it cannot disturb the serializer's byte layout when it is absent.
125
+ if (options.embedModel) {
126
+ svg = (0, round_trip_1.embedModelInSvg)(svg, options.embedModel);
127
+ }
128
+ return { svg, width, height, viewBox, warnings };
129
+ }
130
+ /**
131
+ * The rectangle the file covers.
132
+ *
133
+ * DEFAULT: fit the content. The root `<svg>`'s own viewBox is the LIVE VIEWPORT —
134
+ * scoped to what the user happens to be looking at, and at any zoom ≠ 1 not even the
135
+ * same rectangle. Exporting it is how a "download PNG" button produces a picture of
136
+ * the user's scroll position instead of a picture of the diagram.
137
+ */
138
+ function resolveViewBox(tree, options, warnings, captures = []) {
139
+ var _a, _b;
140
+ if (options.viewBox)
141
+ return options.viewBox;
142
+ if (options.fitToContent !== false) {
143
+ const drawn = (0, bounds_1.vnodeBounds)(tree, {
144
+ includeIds: options.includeIds ? new Set(options.includeIds) : undefined,
145
+ });
146
+ // The custom nodes' own rects join the fit. Two reasons this is not optional:
147
+ // a lifted chart hides its geometry behind a `<g transform>` and a foreignObject's
148
+ // content is opaque, so `vnodeBounds` under-measures a board — and on an ALL-custom
149
+ // dashboard it measures nothing at all and the file comes out a 40px square.
150
+ const content = unionRects(drawn, (0, custom_nodes_1.customNodeBounds)(captures));
151
+ if (content)
152
+ return (0, bounds_1.padRect)(content, (_a = options.padding) !== null && _a !== void 0 ? _a : 20);
153
+ // Nothing is drawn. A zero-area document is rejected by rasterizers, so emit a
154
+ // small valid square instead of a degenerate one.
155
+ if (options.includeIds !== undefined) {
156
+ warnings.push('nothing to export: no element matched the requested ids');
157
+ }
158
+ const side = Math.max(1, ((_b = options.padding) !== null && _b !== void 0 ? _b : 20) * 2);
159
+ return { x: 0, y: 0, width: side, height: side };
160
+ }
161
+ return readViewBox(tree);
162
+ }
163
+ /** Union of two optional rectangles — either, both, or neither. */
164
+ function unionRects(a, b) {
165
+ if (!a)
166
+ return b;
167
+ if (!b)
168
+ return a;
169
+ const x = Math.min(a.x, b.x);
170
+ const y = Math.min(a.y, b.y);
171
+ return {
172
+ x,
173
+ y,
174
+ width: Math.max(a.x + a.width, b.x + b.width) - x,
175
+ height: Math.max(a.y + a.height, b.y + b.height) - y,
176
+ };
177
+ }
178
+ //# sourceMappingURL=svg-export.js.map
@@ -0,0 +1,75 @@
1
+ import type { VNode } from '../types/vnode.types';
2
+ import type { ClassStyleResolver } from './style-flattener';
3
+ /** What the serializer does with a `<foreignObject>` (HTML-in-SVG) subtree. */
4
+ export type ForeignObjectMode = 'serialize' | 'placeholder' | 'omit';
5
+ /**
6
+ * WHO is going to read this string — the only axis on which the two callers differ.
7
+ *
8
+ * 'file' (default) A standalone `.svg` a rasterizer / Inkscape / an email client
9
+ * will read. It has no stylesheet, so the cascade is FLATTENED
10
+ * into presentation attributes; live-pipeline attributes minted
11
+ * from process-global counters are DROPPED (they mean nothing in
12
+ * a file and would destroy determinism); CSS `filter: blur()` is
13
+ * translated into a real `<filter>` def.
14
+ *
15
+ * 'dom' An SSR snapshot the client's VNodePatcher will ADOPT. Here the
16
+ * string must describe exactly the DOM the patcher would have
17
+ * built from the same tree — otherwise hydration sees a different
18
+ * attribute set, tears the node down and rebuilds it, and the
19
+ * diagram flashes. So: `style` is kept verbatim, nothing is
20
+ * dropped, no cascade flattening, and the patcher's `data-vnode-key`
21
+ * mirror is reproduced.
22
+ *
23
+ * ONE traversal serves both. Keeping two would have meant two copies of the
24
+ * prop→attribute rules, and the moment one learned a new verbatim attribute and the
25
+ * other did not, exported files and hydrated pages would quietly disagree about what
26
+ * the diagram looks like.
27
+ */
28
+ export type SerializeFidelity = 'file' | 'dom';
29
+ export interface SerializeOptions {
30
+ /** Who reads the output. Default `'file'`. See {@link SerializeFidelity}. */
31
+ fidelity?: SerializeFidelity;
32
+ /** Stamp `xmlns` on the root element (needed for a standalone `.svg` file). */
33
+ standalone?: boolean;
34
+ /**
35
+ * Resolves an element's classes to the presentation attributes the renderer's
36
+ * stylesheet would have painted. Omit for a tree rendered in programmatic mode
37
+ * (there is no stylesheet there — every value is already on the element).
38
+ * Ignored under `fidelity: 'dom'` — the client has the real stylesheet.
39
+ */
40
+ classStyles?: ClassStyleResolver;
41
+ /** How to handle `<foreignObject>` subtrees. Default `'serialize'`. */
42
+ foreignObject?: ForeignObjectMode;
43
+ /**
44
+ * Faithful foreignObject export. The VNode tree does NOT contain the HTML a
45
+ * framework mounted into a foreignObject (the patcher treats those subtrees as
46
+ * opaque and never touches their children) — so a headless serializer CANNOT
47
+ * know what is in there. A browser-side caller that has the live DOM can hand
48
+ * the markup back through this hook (e.g. `el.outerHTML` of the mounted
49
+ * content); it is emitted verbatim inside the `<foreignObject>`.
50
+ */
51
+ captureForeignObject?: (vnode: VNode) => string | undefined;
52
+ /** Collector for fidelity caveats hit while serializing. */
53
+ warnings?: string[];
54
+ /** Collector for `<defs>` elements the serializer had to synthesize (blur filters). */
55
+ extraDefs?: Map<string, string>;
56
+ /**
57
+ * This subtree is XHTML, not SVG (i.e. it is inside a `<foreignObject>`). Set
58
+ * automatically when recursing into one — HTML has no presentation attributes,
59
+ * so there the `style` attribute is kept verbatim and no class flattening is
60
+ * attempted (the host's own CSS, which we do not own, styles that content).
61
+ */
62
+ html?: boolean;
63
+ }
64
+ /** XML-escape an attribute value. */
65
+ export declare function escapeAttr(value: string): string;
66
+ /** XML-escape text content. */
67
+ export declare function escapeText(value: string): string;
68
+ /**
69
+ * Serialize ONE VNode (and its subtree) to an XML string.
70
+ *
71
+ * Pure: same VNode in, same string out — no ambient state, no DOM, no clock, no
72
+ * randomness. Attribute order follows prop insertion order, which the renderer
73
+ * builds deterministically, so two calls on the same tree are byte-identical.
74
+ */
75
+ export declare function serializeVNode(vnode: VNode, options?: SerializeOptions): string;