@grafloria/element 0.3.19 → 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 (638) hide show
  1. package/{src/index.ts → esm/src/index.js} +60 -569
  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/{src/lib/dashboard-kit/styles.ts → esm/src/lib/dashboard-kit/styles.js} +8 -9
  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/{src/lib/diagram-kit/styles.ts → esm/src/lib/diagram-kit/styles.js} +10 -10
  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/{src/lib/stencil-kit/styles.ts → esm/src/lib/stencil-kit/styles.js} +9 -9
  28. package/package.json +12 -3
  29. package/jest.config.ts +0 -16
  30. package/project.json +0 -44
  31. package/src/front-door-probe.spec.ts +0 -173
  32. package/src/index.js.map +0 -1
  33. package/src/lib/dashboard-kit/dashboard.js.map +0 -1
  34. package/src/lib/dashboard-kit/dashboard.spec.ts +0 -821
  35. package/src/lib/dashboard-kit/dashboard.ts +0 -906
  36. package/src/lib/dashboard-kit/grid-binder.js.map +0 -1
  37. package/src/lib/dashboard-kit/grid-binder.ts +0 -1976
  38. package/src/lib/dashboard-kit/grid-mapping.js.map +0 -1
  39. package/src/lib/dashboard-kit/grid-mapping.spec.ts +0 -308
  40. package/src/lib/dashboard-kit/grid-mapping.ts +0 -283
  41. package/src/lib/dashboard-kit/index.js.map +0 -1
  42. package/src/lib/dashboard-kit/index.ts +0 -56
  43. package/src/lib/dashboard-kit/styles.js.map +0 -1
  44. package/src/lib/dashboard-kit/widgets.js.map +0 -1
  45. package/src/lib/dashboard-kit/widgets.spec.ts +0 -239
  46. package/src/lib/dashboard-kit/widgets.ts +0 -484
  47. package/src/lib/diagram-kit/card.js.map +0 -1
  48. package/src/lib/diagram-kit/card.ts +0 -219
  49. package/src/lib/diagram-kit/diagram-kit.spec.ts +0 -465
  50. package/src/lib/diagram-kit/editing.js.map +0 -1
  51. package/src/lib/diagram-kit/editing.spec.ts +0 -172
  52. package/src/lib/diagram-kit/editing.ts +0 -493
  53. package/src/lib/diagram-kit/er.js.map +0 -1
  54. package/src/lib/diagram-kit/er.ts +0 -246
  55. package/src/lib/diagram-kit/handles.js.map +0 -1
  56. package/src/lib/diagram-kit/handles.spec.ts +0 -224
  57. package/src/lib/diagram-kit/handles.ts +0 -375
  58. package/src/lib/diagram-kit/index.js.map +0 -1
  59. package/src/lib/diagram-kit/index.ts +0 -66
  60. package/src/lib/diagram-kit/join-guidance.js.map +0 -1
  61. package/src/lib/diagram-kit/join-guidance.spec.ts +0 -241
  62. package/src/lib/diagram-kit/join-guidance.ts +0 -390
  63. package/src/lib/diagram-kit/rows.js.map +0 -1
  64. package/src/lib/diagram-kit/rows.ts +0 -174
  65. package/src/lib/diagram-kit/styles.js.map +0 -1
  66. package/src/lib/diagram-kit/uml.js.map +0 -1
  67. package/src/lib/diagram-kit/uml.ts +0 -213
  68. package/src/lib/diagram-kit/update.js.map +0 -1
  69. package/src/lib/diagram-kit/update.spec.ts +0 -208
  70. package/src/lib/diagram-kit/update.ts +0 -324
  71. package/src/lib/grafloria-flow-element.js.map +0 -1
  72. package/src/lib/grafloria-flow-element.spec.ts +0 -290
  73. package/src/lib/grafloria-flow-element.ts +0 -298
  74. package/src/lib/grafloria.js.map +0 -1
  75. package/src/lib/grafloria.ts +0 -151
  76. package/src/lib/load.js.map +0 -1
  77. package/src/lib/load.spec.ts +0 -565
  78. package/src/lib/load.ts +0 -359
  79. package/src/lib/node-type-registry.js.map +0 -1
  80. package/src/lib/node-type-registry.ts +0 -76
  81. package/src/lib/stencil-kit/builders.js.map +0 -1
  82. package/src/lib/stencil-kit/builders.ts +0 -58
  83. package/src/lib/stencil-kit/card-builders.js.map +0 -1
  84. package/src/lib/stencil-kit/card-builders.ts +0 -113
  85. package/src/lib/stencil-kit/index.js.map +0 -1
  86. package/src/lib/stencil-kit/index.ts +0 -17
  87. package/src/lib/stencil-kit/palette.js.map +0 -1
  88. package/src/lib/stencil-kit/palette.ts +0 -482
  89. package/src/lib/stencil-kit/shape-data.js.map +0 -1
  90. package/src/lib/stencil-kit/shape-data.spec.ts +0 -470
  91. package/src/lib/stencil-kit/shape-data.ts +0 -680
  92. package/src/lib/stencil-kit/styles.js.map +0 -1
  93. package/src/libs/element/src/index.js.map +0 -1
  94. package/src/libs/element/src/lib/dashboard-kit/dashboard.js.map +0 -1
  95. package/src/libs/element/src/lib/dashboard-kit/grid-binder.js.map +0 -1
  96. package/src/libs/element/src/lib/dashboard-kit/grid-mapping.js.map +0 -1
  97. package/src/libs/element/src/lib/dashboard-kit/index.js.map +0 -1
  98. package/src/libs/element/src/lib/dashboard-kit/styles.js.map +0 -1
  99. package/src/libs/element/src/lib/dashboard-kit/widgets.js.map +0 -1
  100. package/src/libs/element/src/lib/diagram-kit/card.js.map +0 -1
  101. package/src/libs/element/src/lib/diagram-kit/editing.js.map +0 -1
  102. package/src/libs/element/src/lib/diagram-kit/er.js.map +0 -1
  103. package/src/libs/element/src/lib/diagram-kit/handles.js.map +0 -1
  104. package/src/libs/element/src/lib/diagram-kit/index.js.map +0 -1
  105. package/src/libs/element/src/lib/diagram-kit/join-guidance.js.map +0 -1
  106. package/src/libs/element/src/lib/diagram-kit/rows.js.map +0 -1
  107. package/src/libs/element/src/lib/diagram-kit/styles.js.map +0 -1
  108. package/src/libs/element/src/lib/diagram-kit/uml.js.map +0 -1
  109. package/src/libs/element/src/lib/diagram-kit/update.js.map +0 -1
  110. package/src/libs/element/src/lib/grafloria-flow-element.js.map +0 -1
  111. package/src/libs/element/src/lib/grafloria.js.map +0 -1
  112. package/src/libs/element/src/lib/load.js.map +0 -1
  113. package/src/libs/element/src/lib/node-type-registry.js.map +0 -1
  114. package/src/libs/element/src/lib/stencil-kit/builders.js.map +0 -1
  115. package/src/libs/element/src/lib/stencil-kit/card-builders.js.map +0 -1
  116. package/src/libs/element/src/lib/stencil-kit/index.js.map +0 -1
  117. package/src/libs/element/src/lib/stencil-kit/palette.js.map +0 -1
  118. package/src/libs/element/src/lib/stencil-kit/shape-data.js.map +0 -1
  119. package/src/libs/element/src/lib/stencil-kit/styles.js.map +0 -1
  120. package/src/libs/engine/src/adapters/component-adapter.interface.js.map +0 -1
  121. package/src/libs/engine/src/adapters/index.js.map +0 -1
  122. package/src/libs/engine/src/clipboard/ClipboardManager.js.map +0 -1
  123. package/src/libs/engine/src/clipboard/index.js.map +0 -1
  124. package/src/libs/engine/src/collab/apply-op.js.map +0 -1
  125. package/src/libs/engine/src/collab/capture.js.map +0 -1
  126. package/src/libs/engine/src/collab/index.js.map +0 -1
  127. package/src/libs/engine/src/collab/integrity.js.map +0 -1
  128. package/src/libs/engine/src/collab/lww.js.map +0 -1
  129. package/src/libs/engine/src/collab/op-log.js.map +0 -1
  130. package/src/libs/engine/src/collab/op.js.map +0 -1
  131. package/src/libs/engine/src/collab/replica.js.map +0 -1
  132. package/src/libs/engine/src/collab/undo.js.map +0 -1
  133. package/src/libs/engine/src/commands/Command.js.map +0 -1
  134. package/src/libs/engine/src/commands/CommandManager.js.map +0 -1
  135. package/src/libs/engine/src/commands/basic/AddGroupCommand.js.map +0 -1
  136. package/src/libs/engine/src/commands/basic/AddLinkCommand.js.map +0 -1
  137. package/src/libs/engine/src/commands/basic/AddNodeCommand.js.map +0 -1
  138. package/src/libs/engine/src/commands/basic/AddToGroupCommand.js.map +0 -1
  139. package/src/libs/engine/src/commands/basic/AlignCommands.js.map +0 -1
  140. package/src/libs/engine/src/commands/basic/CollapseGroupCommand.js.map +0 -1
  141. package/src/libs/engine/src/commands/basic/CopyCommand.js.map +0 -1
  142. package/src/libs/engine/src/commands/basic/CutCommand.js.map +0 -1
  143. package/src/libs/engine/src/commands/basic/DeleteSelectionCommand.js.map +0 -1
  144. package/src/libs/engine/src/commands/basic/DuplicateCommand.js.map +0 -1
  145. package/src/libs/engine/src/commands/basic/ExpandGroupCommand.js.map +0 -1
  146. package/src/libs/engine/src/commands/basic/MoveGroupCommand.js.map +0 -1
  147. package/src/libs/engine/src/commands/basic/MoveNodeCommand.js.map +0 -1
  148. package/src/libs/engine/src/commands/basic/NodeZOrderCommands.js.map +0 -1
  149. package/src/libs/engine/src/commands/basic/PasteCommand.js.map +0 -1
  150. package/src/libs/engine/src/commands/basic/PortCommands.js.map +0 -1
  151. package/src/libs/engine/src/commands/basic/ReconnectLinkCommand.js.map +0 -1
  152. package/src/libs/engine/src/commands/basic/RemoveFromGroupCommand.js.map +0 -1
  153. package/src/libs/engine/src/commands/basic/RemoveGroupCommand.js.map +0 -1
  154. package/src/libs/engine/src/commands/basic/RemoveLinkCommand.js.map +0 -1
  155. package/src/libs/engine/src/commands/basic/RemoveNodeCommand.js.map +0 -1
  156. package/src/libs/engine/src/commands/basic/ResizeNodeCommand.js.map +0 -1
  157. package/src/libs/engine/src/commands/basic/RotateNodeCommand.js.map +0 -1
  158. package/src/libs/engine/src/commands/basic/SetFlexItemCommand.js.map +0 -1
  159. package/src/libs/engine/src/commands/basic/SetGridItemCommand.js.map +0 -1
  160. package/src/libs/engine/src/commands/basic/SetLayoutCommand.js.map +0 -1
  161. package/src/libs/engine/src/commands/basic/SetLinkDisplayLabelCommand.js.map +0 -1
  162. package/src/libs/engine/src/commands/basic/SetLinkLabelCommand.js.map +0 -1
  163. package/src/libs/engine/src/commands/basic/SetLinkLabelsCommand.js.map +0 -1
  164. package/src/libs/engine/src/commands/basic/SetLinkPathTypeCommand.js.map +0 -1
  165. package/src/libs/engine/src/commands/basic/SetLinkPointsCommand.js.map +0 -1
  166. package/src/libs/engine/src/commands/basic/SetNodeDataCommand.js.map +0 -1
  167. package/src/libs/engine/src/commands/basic/SetNodeLabelCommand.js.map +0 -1
  168. package/src/libs/engine/src/commands/basic/SetNodeShapeConfigCommand.js.map +0 -1
  169. package/src/libs/engine/src/commands/basic/SetNodeStyleCommand.js.map +0 -1
  170. package/src/libs/engine/src/commands/basic/SetParentCommand.js.map +0 -1
  171. package/src/libs/engine/src/commands/basic/SetStrokePointsCommand.js.map +0 -1
  172. package/src/libs/engine/src/commands/basic/StrokeLifecycleCommands.js.map +0 -1
  173. package/src/libs/engine/src/commands/basic/UpdateLinkStyleCommand.js.map +0 -1
  174. package/src/libs/engine/src/commands/basic/index.js.map +0 -1
  175. package/src/libs/engine/src/commands/basic/remapNodePortIds.js.map +0 -1
  176. package/src/libs/engine/src/commands/basic/resolveLinkNodeIds.js.map +0 -1
  177. package/src/libs/engine/src/commands/composite/BatchCommand.js.map +0 -1
  178. package/src/libs/engine/src/commands/composite/MacroCommand.js.map +0 -1
  179. package/src/libs/engine/src/commands/composite/index.js.map +0 -1
  180. package/src/libs/engine/src/commands/index.js.map +0 -1
  181. package/src/libs/engine/src/comments/comment-store.js.map +0 -1
  182. package/src/libs/engine/src/comments/index.js.map +0 -1
  183. package/src/libs/engine/src/comments/mentions.js.map +0 -1
  184. package/src/libs/engine/src/comments/read-state.js.map +0 -1
  185. package/src/libs/engine/src/comments/types.js.map +0 -1
  186. package/src/libs/engine/src/config/InteractionConfig.js.map +0 -1
  187. package/src/libs/engine/src/config/index.js.map +0 -1
  188. package/src/libs/engine/src/dsl/DSL.js.map +0 -1
  189. package/src/libs/engine/src/dsl/advanced/StyleParser.js.map +0 -1
  190. package/src/libs/engine/src/dsl/advanced/TemplateParser.js.map +0 -1
  191. package/src/libs/engine/src/dsl/advanced/index.js.map +0 -1
  192. package/src/libs/engine/src/dsl/detector/LayoutDetector.js.map +0 -1
  193. package/src/libs/engine/src/dsl/extended/BPMNGenerator.js.map +0 -1
  194. package/src/libs/engine/src/dsl/extended/BPMNParser.js.map +0 -1
  195. package/src/libs/engine/src/dsl/extended/ERDGenerator.js.map +0 -1
  196. package/src/libs/engine/src/dsl/extended/ERDParser.js.map +0 -1
  197. package/src/libs/engine/src/dsl/extended/ERDTransformer.js.map +0 -1
  198. package/src/libs/engine/src/dsl/extended/UMLGenerator.js.map +0 -1
  199. package/src/libs/engine/src/dsl/extended/UMLParser.js.map +0 -1
  200. package/src/libs/engine/src/dsl/extended/index.js.map +0 -1
  201. package/src/libs/engine/src/dsl/generator/DSLFormatter.js.map +0 -1
  202. package/src/libs/engine/src/dsl/generator/DSLGenerator.js.map +0 -1
  203. package/src/libs/engine/src/dsl/generator/DiagramAnalyzer.js.map +0 -1
  204. package/src/libs/engine/src/dsl/index.js.map +0 -1
  205. package/src/libs/engine/src/dsl/lexer/Lexer.js.map +0 -1
  206. package/src/libs/engine/src/dsl/mermaid/MermaidClass.js.map +0 -1
  207. package/src/libs/engine/src/dsl/mermaid/MermaidER.js.map +0 -1
  208. package/src/libs/engine/src/dsl/mermaid/MermaidState.js.map +0 -1
  209. package/src/libs/engine/src/dsl/mermaid/index.js.map +0 -1
  210. package/src/libs/engine/src/dsl/mermaid/layout.js.map +0 -1
  211. package/src/libs/engine/src/dsl/mermaid/lines.js.map +0 -1
  212. package/src/libs/engine/src/dsl/parser/Parser.js.map +0 -1
  213. package/src/libs/engine/src/dsl/sync/BidirectionalSync.js.map +0 -1
  214. package/src/libs/engine/src/dsl/sync/IntegratedSyncManager.js.map +0 -1
  215. package/src/libs/engine/src/dsl/sync/LayoutApplicator.js.map +0 -1
  216. package/src/libs/engine/src/dsl/sync/SyncStateManager.js.map +0 -1
  217. package/src/libs/engine/src/dsl/sync/index.js.map +0 -1
  218. package/src/libs/engine/src/dsl/transformer/ASTTransformer.js.map +0 -1
  219. package/src/libs/engine/src/dsl/types/ASTNode.js.map +0 -1
  220. package/src/libs/engine/src/dsl/types/Token.js.map +0 -1
  221. package/src/libs/engine/src/engine/DiagramEngine.js.map +0 -1
  222. package/src/libs/engine/src/engine/DiagramMode.js.map +0 -1
  223. package/src/libs/engine/src/engine/DiagramModeTypes.js.map +0 -1
  224. package/src/libs/engine/src/engine/ModeManager.js.map +0 -1
  225. package/src/libs/engine/src/engine/index.js.map +0 -1
  226. package/src/libs/engine/src/events/EventBus.js.map +0 -1
  227. package/src/libs/engine/src/events/index.js.map +0 -1
  228. package/src/libs/engine/src/index.js.map +0 -1
  229. package/src/libs/engine/src/interaction/GroupCollapseService.js.map +0 -1
  230. package/src/libs/engine/src/interaction/GroupMembershipService.js.map +0 -1
  231. package/src/libs/engine/src/interaction/SemanticMembershipService.js.map +0 -1
  232. package/src/libs/engine/src/interaction/SwimlaneService.js.map +0 -1
  233. package/src/libs/engine/src/interaction/index.js.map +0 -1
  234. package/src/libs/engine/src/interop/drawio/importDrawio.js.map +0 -1
  235. package/src/libs/engine/src/interop/drawio/index.js.map +0 -1
  236. package/src/libs/engine/src/interop/drawio/xml.js.map +0 -1
  237. package/src/libs/engine/src/layout/CompoundLayoutService.js.map +0 -1
  238. package/src/libs/engine/src/layout/ILayoutAlgorithm.js.map +0 -1
  239. package/src/libs/engine/src/layout/LayoutManager.js.map +0 -1
  240. package/src/libs/engine/src/layout/SmartSpacingCalculator.js.map +0 -1
  241. package/src/libs/engine/src/layout/ViewportTransform.js.map +0 -1
  242. package/src/libs/engine/src/layout/algorithms/ForceDirectedLayoutAlgorithm.js.map +0 -1
  243. package/src/libs/engine/src/layout/algorithms/GridLayoutAlgorithm.js.map +0 -1
  244. package/src/libs/engine/src/layout/algorithms/HierarchicalLayoutAlgorithm.js.map +0 -1
  245. package/src/libs/engine/src/layout/algorithms/HybridLayoutAlgorithm.js.map +0 -1
  246. package/src/libs/engine/src/layout/community-layout-adapter.js.map +0 -1
  247. package/src/libs/engine/src/layout/component-packing.js.map +0 -1
  248. package/src/libs/engine/src/layout/dagre-layout-adapter.js.map +0 -1
  249. package/src/libs/engine/src/layout/edge-bundling.interface.js.map +0 -1
  250. package/src/libs/engine/src/layout/elk-layout-adapter.js.map +0 -1
  251. package/src/libs/engine/src/layout/elk-loader.js.map +0 -1
  252. package/src/libs/engine/src/layout/force-layout-adapter.js.map +0 -1
  253. package/src/libs/engine/src/layout/grid-pack/grid-pack-engine.js.map +0 -1
  254. package/src/libs/engine/src/layout/incremental/mental-map.js.map +0 -1
  255. package/src/libs/engine/src/layout/incremental-layout.interface.js.map +0 -1
  256. package/src/libs/engine/src/layout/index.js.map +0 -1
  257. package/src/libs/engine/src/layout/layout-adapter.interface.js.map +0 -1
  258. package/src/libs/engine/src/layout/layout-auto-select.js.map +0 -1
  259. package/src/libs/engine/src/layout/layout-constraints.interface.js.map +0 -1
  260. package/src/libs/engine/src/layout/layout-graph.js.map +0 -1
  261. package/src/libs/engine/src/layout/layout-history.js.map +0 -1
  262. package/src/libs/engine/src/layout/layout-host.js.map +0 -1
  263. package/src/libs/engine/src/layout/layout-presets.js.map +0 -1
  264. package/src/libs/engine/src/layout/layout-quality-extended.js.map +0 -1
  265. package/src/libs/engine/src/layout/layout-quality-metrics.js.map +0 -1
  266. package/src/libs/engine/src/layout/layout-registry.js.map +0 -1
  267. package/src/libs/engine/src/layout/layout.service.js.map +0 -1
  268. package/src/libs/engine/src/layout/overlap-removal.js.map +0 -1
  269. package/src/libs/engine/src/layout/port-aware-layout.interface.js.map +0 -1
  270. package/src/libs/engine/src/layout/port-label-bridge.js.map +0 -1
  271. package/src/libs/engine/src/layout/portfolio-layouts.js.map +0 -1
  272. package/src/libs/engine/src/layout/rng.js.map +0 -1
  273. package/src/libs/engine/src/layout/spectral-layout-adapter.js.map +0 -1
  274. package/src/libs/engine/src/layout/steppable-layout.js.map +0 -1
  275. package/src/libs/engine/src/layout/subgraph-layout.interface.js.map +0 -1
  276. package/src/libs/engine/src/layout/sugiyama/layered-layout.js.map +0 -1
  277. package/src/libs/engine/src/layout/sugiyama/sugiyama.js.map +0 -1
  278. package/src/libs/engine/src/layout/tree-layout.js.map +0 -1
  279. package/src/libs/engine/src/layout/types.js.map +0 -1
  280. package/src/libs/engine/src/lib/performance/mobile-performance.service.js.map +0 -1
  281. package/src/libs/engine/src/models/DiagramEntity.js.map +0 -1
  282. package/src/libs/engine/src/models/DiagramModel.js.map +0 -1
  283. package/src/libs/engine/src/models/GroupModel.js.map +0 -1
  284. package/src/libs/engine/src/models/LinkModel.js.map +0 -1
  285. package/src/libs/engine/src/models/NodeModel.js.map +0 -1
  286. package/src/libs/engine/src/models/PortModel.js.map +0 -1
  287. package/src/libs/engine/src/models/StrokeModel.js.map +0 -1
  288. package/src/libs/engine/src/models/index.js.map +0 -1
  289. package/src/libs/engine/src/models/readonly-lock.js.map +0 -1
  290. package/src/libs/engine/src/performance/LRUCache.js.map +0 -1
  291. package/src/libs/engine/src/performance/PerformanceMonitor.js.map +0 -1
  292. package/src/libs/engine/src/performance/SpatialIndex.js.map +0 -1
  293. package/src/libs/engine/src/performance/index.js.map +0 -1
  294. package/src/libs/engine/src/plugins/PluginManager.js.map +0 -1
  295. package/src/libs/engine/src/plugins/index.js.map +0 -1
  296. package/src/libs/engine/src/ports/connection-rules.js.map +0 -1
  297. package/src/libs/engine/src/ports/dynamic-ports.js.map +0 -1
  298. package/src/libs/engine/src/ports/index.js.map +0 -1
  299. package/src/libs/engine/src/ports/port-groups.js.map +0 -1
  300. package/src/libs/engine/src/ports/port-type-registry.js.map +0 -1
  301. package/src/libs/engine/src/ports/port-types.js.map +0 -1
  302. package/src/libs/engine/src/rendering/HtmlTemplateRenderer.js.map +0 -1
  303. package/src/libs/engine/src/rendering/LemonadeJSRenderer.js.map +0 -1
  304. package/src/libs/engine/src/rendering/index.js.map +0 -1
  305. package/src/libs/engine/src/routing/LiveReroutingEngine.js.map +0 -1
  306. package/src/libs/engine/src/routing/ObstacleIndex.js.map +0 -1
  307. package/src/libs/engine/src/routing/ObstacleMap.js.map +0 -1
  308. package/src/libs/engine/src/routing/ObstacleMapBuilder.js.map +0 -1
  309. package/src/libs/engine/src/routing/PathSimplifier.js.map +0 -1
  310. package/src/libs/engine/src/routing/RoutingEngine.js.map +0 -1
  311. package/src/libs/engine/src/routing/algorithms/AStarRouter.js.map +0 -1
  312. package/src/libs/engine/src/routing/algorithms/DijkstraRouter.js.map +0 -1
  313. package/src/libs/engine/src/routing/algorithms/ElkRouter.js.map +0 -1
  314. package/src/libs/engine/src/routing/algorithms/ManhattanRouter.js.map +0 -1
  315. package/src/libs/engine/src/routing/algorithms/OrthogonalRouter.js.map +0 -1
  316. package/src/libs/engine/src/routing/algorithms/StraightRouter.js.map +0 -1
  317. package/src/libs/engine/src/routing/algorithms/VisibilityGraphRouter.js.map +0 -1
  318. package/src/libs/engine/src/routing/global/GlobalRouteSolver.js.map +0 -1
  319. package/src/libs/engine/src/routing/global/solver-host.js.map +0 -1
  320. package/src/libs/engine/src/routing/index.js.map +0 -1
  321. package/src/libs/engine/src/routing/types.js.map +0 -1
  322. package/src/libs/engine/src/selection/SelectionManager.js.map +0 -1
  323. package/src/libs/engine/src/selection/index.js.map +0 -1
  324. package/src/libs/engine/src/serialization/DiagramMigrations.js.map +0 -1
  325. package/src/libs/engine/src/serialization/DiagramValidator.js.map +0 -1
  326. package/src/libs/engine/src/serialization/DocumentEnvelope.js.map +0 -1
  327. package/src/libs/engine/src/serialization/Incremental.js.map +0 -1
  328. package/src/libs/engine/src/serialization/Serializer.js.map +0 -1
  329. package/src/libs/engine/src/serialization/Subgraph.js.map +0 -1
  330. package/src/libs/engine/src/serialization/TextFormat.js.map +0 -1
  331. package/src/libs/engine/src/state/ConnectionStateManager.js.map +0 -1
  332. package/src/libs/engine/src/state/DiagramStore.js.map +0 -1
  333. package/src/libs/engine/src/state/index.js.map +0 -1
  334. package/src/libs/engine/src/sync/awareness.js.map +0 -1
  335. package/src/libs/engine/src/sync/batcher.js.map +0 -1
  336. package/src/libs/engine/src/sync/causal-buffer.js.map +0 -1
  337. package/src/libs/engine/src/sync/index.js.map +0 -1
  338. package/src/libs/engine/src/sync/protocol.js.map +0 -1
  339. package/src/libs/engine/src/sync/sync-adapter.js.map +0 -1
  340. package/src/libs/engine/src/sync/transport.js.map +0 -1
  341. package/src/libs/engine/src/sync/transports/broadcast-channel.js.map +0 -1
  342. package/src/libs/engine/src/sync/transports/memory.js.map +0 -1
  343. package/src/libs/engine/src/sync/transports/unreliable.js.map +0 -1
  344. package/src/libs/engine/src/sync/transports/websocket.js.map +0 -1
  345. package/src/libs/engine/src/sync/version-vector.js.map +0 -1
  346. package/src/libs/engine/src/template-library/common-templates.js.map +0 -1
  347. package/src/libs/engine/src/template-library/data-viz-templates.js.map +0 -1
  348. package/src/libs/engine/src/template-library/erd-templates.js.map +0 -1
  349. package/src/libs/engine/src/template-library/index.js.map +0 -1
  350. package/src/libs/engine/src/template-library/integration.js.map +0 -1
  351. package/src/libs/engine/src/template-library/workflow-templates.js.map +0 -1
  352. package/src/libs/engine/src/templates/NodeFactory.js.map +0 -1
  353. package/src/libs/engine/src/templates/NodeTemplate.js.map +0 -1
  354. package/src/libs/engine/src/templates/TemplateLoader.js.map +0 -1
  355. package/src/libs/engine/src/templates/TemplateRegistry.js.map +0 -1
  356. package/src/libs/engine/src/templates/generated/bpmn/bpmn-business-rule-task.template.js.map +0 -1
  357. package/src/libs/engine/src/templates/generated/bpmn/bpmn-end-event.template.js.map +0 -1
  358. package/src/libs/engine/src/templates/generated/bpmn/bpmn-error-event.template.js.map +0 -1
  359. package/src/libs/engine/src/templates/generated/bpmn/bpmn-exclusive-gateway.template.js.map +0 -1
  360. package/src/libs/engine/src/templates/generated/bpmn/bpmn-inclusive-gateway.template.js.map +0 -1
  361. package/src/libs/engine/src/templates/generated/bpmn/bpmn-intermediate-event.template.js.map +0 -1
  362. package/src/libs/engine/src/templates/generated/bpmn/bpmn-manual-task.template.js.map +0 -1
  363. package/src/libs/engine/src/templates/generated/bpmn/bpmn-message-event.template.js.map +0 -1
  364. package/src/libs/engine/src/templates/generated/bpmn/bpmn-parallel-gateway.template.js.map +0 -1
  365. package/src/libs/engine/src/templates/generated/bpmn/bpmn-script-task.template.js.map +0 -1
  366. package/src/libs/engine/src/templates/generated/bpmn/bpmn-service-task.template.js.map +0 -1
  367. package/src/libs/engine/src/templates/generated/bpmn/bpmn-start-event.template.js.map +0 -1
  368. package/src/libs/engine/src/templates/generated/bpmn/bpmn-task.template.js.map +0 -1
  369. package/src/libs/engine/src/templates/generated/bpmn/bpmn-timer-event.template.js.map +0 -1
  370. package/src/libs/engine/src/templates/generated/bpmn/bpmn-user-task.template.js.map +0 -1
  371. package/src/libs/engine/src/templates/generated/bpmn/index.js.map +0 -1
  372. package/src/libs/engine/src/templates/generated/erd/erd-associative-entity.template.js.map +0 -1
  373. package/src/libs/engine/src/templates/generated/erd/erd-attribute.template.js.map +0 -1
  374. package/src/libs/engine/src/templates/generated/erd/erd-bridge-entity.template.js.map +0 -1
  375. package/src/libs/engine/src/templates/generated/erd/erd-composite-attribute.template.js.map +0 -1
  376. package/src/libs/engine/src/templates/generated/erd/erd-derived-attribute.template.js.map +0 -1
  377. package/src/libs/engine/src/templates/generated/erd/erd-discriminator.template.js.map +0 -1
  378. package/src/libs/engine/src/templates/generated/erd/erd-entity.template.js.map +0 -1
  379. package/src/libs/engine/src/templates/generated/erd/erd-isa.template.js.map +0 -1
  380. package/src/libs/engine/src/templates/generated/erd/erd-key-attribute.template.js.map +0 -1
  381. package/src/libs/engine/src/templates/generated/erd/erd-multivalued-attribute.template.js.map +0 -1
  382. package/src/libs/engine/src/templates/generated/erd/erd-optional-attribute.template.js.map +0 -1
  383. package/src/libs/engine/src/templates/generated/erd/erd-partial-key.template.js.map +0 -1
  384. package/src/libs/engine/src/templates/generated/erd/erd-relationship.template.js.map +0 -1
  385. package/src/libs/engine/src/templates/generated/erd/erd-subtype.template.js.map +0 -1
  386. package/src/libs/engine/src/templates/generated/erd/erd-supertype.template.js.map +0 -1
  387. package/src/libs/engine/src/templates/generated/erd/erd-table.template.js.map +0 -1
  388. package/src/libs/engine/src/templates/generated/erd/erd-view.template.js.map +0 -1
  389. package/src/libs/engine/src/templates/generated/erd/erd-weak-entity.template.js.map +0 -1
  390. package/src/libs/engine/src/templates/generated/erd/erd-weak-relationship.template.js.map +0 -1
  391. package/src/libs/engine/src/templates/generated/erd/index.js.map +0 -1
  392. package/src/libs/engine/src/templates/generated/flowchart/flowchart-connector.template.js.map +0 -1
  393. package/src/libs/engine/src/templates/generated/flowchart/flowchart-data.template.js.map +0 -1
  394. package/src/libs/engine/src/templates/generated/flowchart/flowchart-decision.template.js.map +0 -1
  395. package/src/libs/engine/src/templates/generated/flowchart/flowchart-delay.template.js.map +0 -1
  396. package/src/libs/engine/src/templates/generated/flowchart/flowchart-display.template.js.map +0 -1
  397. package/src/libs/engine/src/templates/generated/flowchart/flowchart-document.template.js.map +0 -1
  398. package/src/libs/engine/src/templates/generated/flowchart/flowchart-manual-input.template.js.map +0 -1
  399. package/src/libs/engine/src/templates/generated/flowchart/flowchart-manual-operation.template.js.map +0 -1
  400. package/src/libs/engine/src/templates/generated/flowchart/flowchart-merge.template.js.map +0 -1
  401. package/src/libs/engine/src/templates/generated/flowchart/flowchart-or.template.js.map +0 -1
  402. package/src/libs/engine/src/templates/generated/flowchart/flowchart-predefined-process.template.js.map +0 -1
  403. package/src/libs/engine/src/templates/generated/flowchart/flowchart-preparation.template.js.map +0 -1
  404. package/src/libs/engine/src/templates/generated/flowchart/flowchart-process.template.js.map +0 -1
  405. package/src/libs/engine/src/templates/generated/flowchart/flowchart-stored-data.template.js.map +0 -1
  406. package/src/libs/engine/src/templates/generated/flowchart/flowchart-summing-junction.template.js.map +0 -1
  407. package/src/libs/engine/src/templates/generated/flowchart/flowchart-terminal.template.js.map +0 -1
  408. package/src/libs/engine/src/templates/generated/flowchart/index.js.map +0 -1
  409. package/src/libs/engine/src/templates/generated/index.js.map +0 -1
  410. package/src/libs/engine/src/templates/generated/register.js.map +0 -1
  411. package/src/libs/engine/src/templates/generated/uml/index.js.map +0 -1
  412. package/src/libs/engine/src/templates/generated/uml/uml-abstract-class.template.js.map +0 -1
  413. package/src/libs/engine/src/templates/generated/uml/uml-activation.template.js.map +0 -1
  414. package/src/libs/engine/src/templates/generated/uml/uml-activity-partition.template.js.map +0 -1
  415. package/src/libs/engine/src/templates/generated/uml/uml-activity.template.js.map +0 -1
  416. package/src/libs/engine/src/templates/generated/uml/uml-actor.template.js.map +0 -1
  417. package/src/libs/engine/src/templates/generated/uml/uml-class.template.js.map +0 -1
  418. package/src/libs/engine/src/templates/generated/uml/uml-collaboration.template.js.map +0 -1
  419. package/src/libs/engine/src/templates/generated/uml/uml-component.template.js.map +0 -1
  420. package/src/libs/engine/src/templates/generated/uml/uml-datatype.template.js.map +0 -1
  421. package/src/libs/engine/src/templates/generated/uml/uml-decision.template.js.map +0 -1
  422. package/src/libs/engine/src/templates/generated/uml/uml-enum.template.js.map +0 -1
  423. package/src/libs/engine/src/templates/generated/uml/uml-final-node.template.js.map +0 -1
  424. package/src/libs/engine/src/templates/generated/uml/uml-final-state.template.js.map +0 -1
  425. package/src/libs/engine/src/templates/generated/uml/uml-fork.template.js.map +0 -1
  426. package/src/libs/engine/src/templates/generated/uml/uml-initial-node.template.js.map +0 -1
  427. package/src/libs/engine/src/templates/generated/uml/uml-initial-state.template.js.map +0 -1
  428. package/src/libs/engine/src/templates/generated/uml/uml-interface.template.js.map +0 -1
  429. package/src/libs/engine/src/templates/generated/uml/uml-join.template.js.map +0 -1
  430. package/src/libs/engine/src/templates/generated/uml/uml-lifeline.template.js.map +0 -1
  431. package/src/libs/engine/src/templates/generated/uml/uml-merge.template.js.map +0 -1
  432. package/src/libs/engine/src/templates/generated/uml/uml-node.template.js.map +0 -1
  433. package/src/libs/engine/src/templates/generated/uml/uml-note.template.js.map +0 -1
  434. package/src/libs/engine/src/templates/generated/uml/uml-object.template.js.map +0 -1
  435. package/src/libs/engine/src/templates/generated/uml/uml-package.template.js.map +0 -1
  436. package/src/libs/engine/src/templates/generated/uml/uml-part.template.js.map +0 -1
  437. package/src/libs/engine/src/templates/generated/uml/uml-port.template.js.map +0 -1
  438. package/src/libs/engine/src/templates/generated/uml/uml-primitive-type.template.js.map +0 -1
  439. package/src/libs/engine/src/templates/generated/uml/uml-signal.template.js.map +0 -1
  440. package/src/libs/engine/src/templates/generated/uml/uml-state.template.js.map +0 -1
  441. package/src/libs/engine/src/templates/generated/uml/uml-use-case.template.js.map +0 -1
  442. package/src/libs/engine/src/templates/index.js.map +0 -1
  443. package/src/libs/engine/src/templates/stencils.js.map +0 -1
  444. package/src/libs/engine/src/types/domain/bpmn.js.map +0 -1
  445. package/src/libs/engine/src/types/domain/erd.js.map +0 -1
  446. package/src/libs/engine/src/types/domain/flowchart.js.map +0 -1
  447. package/src/libs/engine/src/types/domain/index.js.map +0 -1
  448. package/src/libs/engine/src/types/domain/uml.js.map +0 -1
  449. package/src/libs/engine/src/types/event.types.js.map +0 -1
  450. package/src/libs/engine/src/types/geometry.types.js.map +0 -1
  451. package/src/libs/engine/src/types/index.js.map +0 -1
  452. package/src/libs/engine/src/types/layout.types.js.map +0 -1
  453. package/src/libs/engine/src/types/model.types.js.map +0 -1
  454. package/src/libs/engine/src/types/performance.types.js.map +0 -1
  455. package/src/libs/engine/src/types/plugin.types.js.map +0 -1
  456. package/src/libs/engine/src/utils/deep-clone.js.map +0 -1
  457. package/src/libs/engine/src/utils/geometry.js.map +0 -1
  458. package/src/libs/engine/src/utils/id.js.map +0 -1
  459. package/src/libs/engine/src/utils/index.js.map +0 -1
  460. package/src/libs/engine/src/utils/transform.js.map +0 -1
  461. package/src/libs/engine/src/validation/ConnectionGroupValidator.js.map +0 -1
  462. package/src/libs/engine/src/validation/TypeRegistry.js.map +0 -1
  463. package/src/libs/engine/src/validation/ValidationEngine.js.map +0 -1
  464. package/src/libs/engine/src/validation/index.js.map +0 -1
  465. package/src/libs/renderer/src/a11y/diagram-outline.js.map +0 -1
  466. package/src/libs/renderer/src/a11y/focus-containment.js.map +0 -1
  467. package/src/libs/renderer/src/a11y/graph-topology.js.map +0 -1
  468. package/src/libs/renderer/src/a11y/index.js.map +0 -1
  469. package/src/libs/renderer/src/a11y/live-region.js.map +0 -1
  470. package/src/libs/renderer/src/a11y/outline-view.js.map +0 -1
  471. package/src/libs/renderer/src/a11y/reduced-motion.js.map +0 -1
  472. package/src/libs/renderer/src/a11y/semantics.js.map +0 -1
  473. package/src/libs/renderer/src/canvas/canvas-context.js.map +0 -1
  474. package/src/libs/renderer/src/canvas/canvas-renderer.js.map +0 -1
  475. package/src/libs/renderer/src/canvas/dirty-region.js.map +0 -1
  476. package/src/libs/renderer/src/canvas/index.js.map +0 -1
  477. package/src/libs/renderer/src/canvas/path-geometry.js.map +0 -1
  478. package/src/libs/renderer/src/canvas/render-backend.js.map +0 -1
  479. package/src/libs/renderer/src/canvas/style-resolution.js.map +0 -1
  480. package/src/libs/renderer/src/canvas/tier-policy.js.map +0 -1
  481. package/src/libs/renderer/src/canvas/vnode-painter.js.map +0 -1
  482. package/src/libs/renderer/src/comments/comment-overlay.js.map +0 -1
  483. package/src/libs/renderer/src/comments/comment-panel.js.map +0 -1
  484. package/src/libs/renderer/src/comments/comment-pins.js.map +0 -1
  485. package/src/libs/renderer/src/comments/index.js.map +0 -1
  486. package/src/libs/renderer/src/export/assets.js.map +0 -1
  487. package/src/libs/renderer/src/export/batch.js.map +0 -1
  488. package/src/libs/renderer/src/export/bounds.js.map +0 -1
  489. package/src/libs/renderer/src/export/capture-host.js.map +0 -1
  490. package/src/libs/renderer/src/export/custom-nodes.js.map +0 -1
  491. package/src/libs/renderer/src/export/index.js.map +0 -1
  492. package/src/libs/renderer/src/export/node-raster.js.map +0 -1
  493. package/src/libs/renderer/src/export/pagination.js.map +0 -1
  494. package/src/libs/renderer/src/export/pdf/flate.js.map +0 -1
  495. package/src/libs/renderer/src/export/pdf/index.js.map +0 -1
  496. package/src/libs/renderer/src/export/pdf/pdf-export.js.map +0 -1
  497. package/src/libs/renderer/src/export/pdf/pdf-path.js.map +0 -1
  498. package/src/libs/renderer/src/export/pdf/pdf-primitives.js.map +0 -1
  499. package/src/libs/renderer/src/export/pdf/png.js.map +0 -1
  500. package/src/libs/renderer/src/export/raster.js.map +0 -1
  501. package/src/libs/renderer/src/export/round-trip.js.map +0 -1
  502. package/src/libs/renderer/src/export/scope.js.map +0 -1
  503. package/src/libs/renderer/src/export/style-flattener.js.map +0 -1
  504. package/src/libs/renderer/src/export/svg-export.js.map +0 -1
  505. package/src/libs/renderer/src/export/vnode-serializer.js.map +0 -1
  506. package/src/libs/renderer/src/ext/capabilities.js.map +0 -1
  507. package/src/libs/renderer/src/ext/capability-factory.js.map +0 -1
  508. package/src/libs/renderer/src/ext/components/attach.js.map +0 -1
  509. package/src/libs/renderer/src/ext/components/background.js.map +0 -1
  510. package/src/libs/renderer/src/ext/components/controls.js.map +0 -1
  511. package/src/libs/renderer/src/ext/components/minimap.js.map +0 -1
  512. package/src/libs/renderer/src/ext/diagram-registry.js.map +0 -1
  513. package/src/libs/renderer/src/ext/disposable.js.map +0 -1
  514. package/src/libs/renderer/src/ext/extension-host.js.map +0 -1
  515. package/src/libs/renderer/src/ext/index.js.map +0 -1
  516. package/src/libs/renderer/src/ext/link-pipeline.js.map +0 -1
  517. package/src/libs/renderer/src/ext/manifest.js.map +0 -1
  518. package/src/libs/renderer/src/ext/node-component.js.map +0 -1
  519. package/src/libs/renderer/src/ext/plugins-loader.js.map +0 -1
  520. package/src/libs/renderer/src/ext/portal.js.map +0 -1
  521. package/src/libs/renderer/src/ext/public-api.js.map +0 -1
  522. package/src/libs/renderer/src/ext/registry-scope.js.map +0 -1
  523. package/src/libs/renderer/src/ext/tools.js.map +0 -1
  524. package/src/libs/renderer/src/index.js.map +0 -1
  525. package/src/libs/renderer/src/instance/create-diagram.js.map +0 -1
  526. package/src/libs/renderer/src/instance/diagram-instance.js.map +0 -1
  527. package/src/libs/renderer/src/instance/dom-event-binder.js.map +0 -1
  528. package/src/libs/renderer/src/instance/index.js.map +0 -1
  529. package/src/libs/renderer/src/instance/layers.js.map +0 -1
  530. package/src/libs/renderer/src/instance/model-input.js.map +0 -1
  531. package/src/libs/renderer/src/instance/render-scheduler.js.map +0 -1
  532. package/src/libs/renderer/src/instance/wheel-scroll-yield.js.map +0 -1
  533. package/src/libs/renderer/src/interaction/ControlPointEditor.js.map +0 -1
  534. package/src/libs/renderer/src/interaction/WaypointEditor.js.map +0 -1
  535. package/src/libs/renderer/src/interaction/highlighters.js.map +0 -1
  536. package/src/libs/renderer/src/interaction/in-place-editor.js.map +0 -1
  537. package/src/libs/renderer/src/interaction/index.js.map +0 -1
  538. package/src/libs/renderer/src/interaction/ink-overlay.js.map +0 -1
  539. package/src/libs/renderer/src/interaction/interaction-controller.js.map +0 -1
  540. package/src/libs/renderer/src/interaction/keyboard-navigation.js.map +0 -1
  541. package/src/libs/renderer/src/interaction/selection-tools.js.map +0 -1
  542. package/src/libs/renderer/src/interaction/snapping.js.map +0 -1
  543. package/src/libs/renderer/src/interaction/touch-gestures.js.map +0 -1
  544. package/src/libs/renderer/src/interaction/whiteboard-tools.js.map +0 -1
  545. package/src/libs/renderer/src/lazy/host-culling.js.map +0 -1
  546. package/src/libs/renderer/src/lazy/index.js.map +0 -1
  547. package/src/libs/renderer/src/lazy/progressive-mounter.js.map +0 -1
  548. package/src/libs/renderer/src/lazy/types.js.map +0 -1
  549. package/src/libs/renderer/src/lazy/view-lifecycle.js.map +0 -1
  550. package/src/libs/renderer/src/perf/index.js.map +0 -1
  551. package/src/libs/renderer/src/perf/perf-hud.js.map +0 -1
  552. package/src/libs/renderer/src/perf/quality-governor.js.map +0 -1
  553. package/src/libs/renderer/src/platform/index.js.map +0 -1
  554. package/src/libs/renderer/src/platform/platform.js.map +0 -1
  555. package/src/libs/renderer/src/presence/bind-presence.js.map +0 -1
  556. package/src/libs/renderer/src/presence/index.js.map +0 -1
  557. package/src/libs/renderer/src/presence/presence-overlay.js.map +0 -1
  558. package/src/libs/renderer/src/presentation/index.js.map +0 -1
  559. package/src/libs/renderer/src/presentation/presentation.js.map +0 -1
  560. package/src/libs/renderer/src/presentation/viewport-channel.js.map +0 -1
  561. package/src/libs/renderer/src/services/animation-lifecycle.js.map +0 -1
  562. package/src/libs/renderer/src/services/animation-performance.service.js.map +0 -1
  563. package/src/libs/renderer/src/services/animation-sequencer.js.map +0 -1
  564. package/src/libs/renderer/src/services/animation.service.js.map +0 -1
  565. package/src/libs/renderer/src/services/custom-animation-registry.js.map +0 -1
  566. package/src/libs/renderer/src/ssr/index.js.map +0 -1
  567. package/src/libs/renderer/src/ssr/render-to-static.js.map +0 -1
  568. package/src/libs/renderer/src/svg/ArrowRenderer.js.map +0 -1
  569. package/src/libs/renderer/src/svg/JumpPointDetector.js.map +0 -1
  570. package/src/libs/renderer/src/svg/JumpPointRenderer.js.map +0 -1
  571. package/src/libs/renderer/src/svg/LabelRenderer.js.map +0 -1
  572. package/src/libs/renderer/src/svg/auto-size.js.map +0 -1
  573. package/src/libs/renderer/src/svg/channel-nudging.js.map +0 -1
  574. package/src/libs/renderer/src/svg/edge-optimizer.js.map +0 -1
  575. package/src/libs/renderer/src/svg/edge-templates.js.map +0 -1
  576. package/src/libs/renderer/src/svg/html-node.js.map +0 -1
  577. package/src/libs/renderer/src/svg/index.js.map +0 -1
  578. package/src/libs/renderer/src/svg/link-fanout.js.map +0 -1
  579. package/src/libs/renderer/src/svg/link-hit-test.js.map +0 -1
  580. package/src/libs/renderer/src/svg/motion-tracker.js.map +0 -1
  581. package/src/libs/renderer/src/svg/node-sizing.js.map +0 -1
  582. package/src/libs/renderer/src/svg/node-toolbar.js.map +0 -1
  583. package/src/libs/renderer/src/svg/notation-shapes.js.map +0 -1
  584. package/src/libs/renderer/src/svg/paint-servers.js.map +0 -1
  585. package/src/libs/renderer/src/svg/panel.js.map +0 -1
  586. package/src/libs/renderer/src/svg/path-outline.js.map +0 -1
  587. package/src/libs/renderer/src/svg/port-glyph.js.map +0 -1
  588. package/src/libs/renderer/src/svg/port-label.js.map +0 -1
  589. package/src/libs/renderer/src/svg/port-layout.js.map +0 -1
  590. package/src/libs/renderer/src/svg/port-positioning.js.map +0 -1
  591. package/src/libs/renderer/src/svg/port-spots.js.map +0 -1
  592. package/src/libs/renderer/src/svg/route-memo.js.map +0 -1
  593. package/src/libs/renderer/src/svg/route-solver-bridge.js.map +0 -1
  594. package/src/libs/renderer/src/svg/shape-registry.js.map +0 -1
  595. package/src/libs/renderer/src/svg/stroke-layer.js.map +0 -1
  596. package/src/libs/renderer/src/svg/svg-renderer.js.map +0 -1
  597. package/src/libs/renderer/src/svg/text-block.js.map +0 -1
  598. package/src/libs/renderer/src/themes/color-mode.js.map +0 -1
  599. package/src/libs/renderer/src/themes/contrast.js.map +0 -1
  600. package/src/libs/renderer/src/themes/default-dark-theme.js.map +0 -1
  601. package/src/libs/renderer/src/themes/default-light-theme.js.map +0 -1
  602. package/src/libs/renderer/src/themes/default-theme-set.js.map +0 -1
  603. package/src/libs/renderer/src/themes/high-contrast-theme.js.map +0 -1
  604. package/src/libs/renderer/src/themes/index.js.map +0 -1
  605. package/src/libs/renderer/src/themes/style-cascade.js.map +0 -1
  606. package/src/libs/renderer/src/themes/style-registry.js.map +0 -1
  607. package/src/libs/renderer/src/themes/theme-a11y.js.map +0 -1
  608. package/src/libs/renderer/src/themes/theme-css.js.map +0 -1
  609. package/src/libs/renderer/src/themes/theme-ref.js.map +0 -1
  610. package/src/libs/renderer/src/themes/theme-vars.js.map +0 -1
  611. package/src/libs/renderer/src/themes/token-bridge.js.map +0 -1
  612. package/src/libs/renderer/src/types/geometry.types.js.map +0 -1
  613. package/src/libs/renderer/src/types/index.js.map +0 -1
  614. package/src/libs/renderer/src/types/property-schema/conditions.js.map +0 -1
  615. package/src/libs/renderer/src/types/property-schema/editor-types.js.map +0 -1
  616. package/src/libs/renderer/src/types/property-schema/groups.js.map +0 -1
  617. package/src/libs/renderer/src/types/property-schema/index.js.map +0 -1
  618. package/src/libs/renderer/src/types/property-schema/property-definition.js.map +0 -1
  619. package/src/libs/renderer/src/types/property-schema/schema.js.map +0 -1
  620. package/src/libs/renderer/src/types/property-schema/validation.js.map +0 -1
  621. package/src/libs/renderer/src/types/renderer.interface.js.map +0 -1
  622. package/src/libs/renderer/src/types/theme.types.js.map +0 -1
  623. package/src/libs/renderer/src/types/vnode.types.js.map +0 -1
  624. package/src/libs/renderer/src/utils/animation-presets.js.map +0 -1
  625. package/src/libs/renderer/src/utils/animation-priority.js.map +0 -1
  626. package/src/libs/renderer/src/utils/animation-utils.js.map +0 -1
  627. package/src/libs/renderer/src/utils/lru-cache.js.map +0 -1
  628. package/src/libs/renderer/src/viewport/index.js.map +0 -1
  629. package/src/libs/renderer/src/viewport/viewport-controller.js.map +0 -1
  630. package/src/libs/renderer/src/vnode/container-id-generator.js.map +0 -1
  631. package/src/libs/renderer/src/vnode/foreign-object.js.map +0 -1
  632. package/src/libs/renderer/src/vnode/index.js.map +0 -1
  633. package/src/libs/renderer/src/vnode/patch.js.map +0 -1
  634. package/src/reachability.spec.ts +0 -173
  635. package/tsconfig.esm.json +0 -9
  636. package/tsconfig.json +0 -24
  637. package/tsconfig.lib.json +0 -10
  638. package/tsconfig.spec.json +0 -14
@@ -1,174 +0,0 @@
1
- /**
2
- * Row interactions — "select a column / field" on kit cards (P1 of the
3
- * ER/UML editing track).
4
- *
5
- * Kit cards are `interactive: true` (their rows are real DOM targets — the
6
- * binder's node click/drag resolution is geometric, so dragging and selecting
7
- * the TABLE keeps working; proven live before this was built). This module is
8
- * the runtime the kit's `finalize(api)` binds once per diagram:
9
- *
10
- * - click a row → it becomes THE selected row (one per diagram), painted with
11
- * `.axk-row-selected`; click again or click anywhere else → deselected;
12
- * - every row click dispatches `axk:row-click` on the container, and every
13
- * selection CHANGE dispatches `axk:row-select` — both bubbling
14
- * CustomEvents, matching the element package's "DOM events out" contract;
15
- * - the selected row survives card re-renders: the renderer keys the
16
- * foreignObject by content hash, so an html edit swaps the subtree and
17
- * drops the class — a MutationObserver re-applies it by (nodeId, rowIndex);
18
- * - selection is EPHEMERAL view state, exactly like node selection: never
19
- * serialized, never in the op log, not undoable.
20
- *
21
- * Row identity: `rowIndex` is the position among the card's rows (ER columns,
22
- * or UML members across both compartments); `name` resolves from the spec the
23
- * kit stored in node metadata (`kitEntity` / `kitClass`), falling back to the
24
- * row's text.
25
- */
26
-
27
- export interface RowRef {
28
- nodeId: string;
29
- rowIndex: number;
30
- /** Column name (ER) or member text (UML). */
31
- name?: string;
32
- kind: 'er' | 'uml';
33
- /** UML only: which compartment the member sits in. */
34
- section?: 'attributes' | 'methods';
35
- }
36
-
37
- export interface RowInteractionsHandle {
38
- getSelected(): RowRef | null;
39
- /** Programmatic selection (null clears). Fires axk:row-select like a click. */
40
- select(ref: { nodeId: string; rowIndex: number } | null): void;
41
- dispose(): void;
42
- }
43
-
44
- interface KitApi {
45
- container: HTMLElement;
46
- getModel(): {
47
- getNode(id: string): { getMetadata?(key: string): unknown } | undefined;
48
- };
49
- }
50
-
51
- const ROW_SELECTOR = '.axk-row, .axk-member';
52
- const SELECTED_CLASS = 'axk-row-selected';
53
-
54
- /** One binding per container — rebinding disposes the previous one. */
55
- const bindings = new WeakMap<HTMLElement, RowInteractionsHandle>();
56
-
57
- function rowsOfNode(container: HTMLElement, nodeId: string): HTMLElement[] {
58
- const esc = (window.CSS && CSS.escape) ? CSS.escape(nodeId) : nodeId.replace(/"/g, '\\"');
59
- const group = container.querySelector(`[data-node-id="${esc}"]`);
60
- return group ? (Array.from(group.querySelectorAll(ROW_SELECTOR)) as HTMLElement[]) : [];
61
- }
62
-
63
- function resolveRef(container: HTMLElement, api: KitApi, rowEl: HTMLElement): RowRef | null {
64
- const group = rowEl.closest('[data-node-id]');
65
- if (!group) return null;
66
- const nodeId = group.getAttribute('data-node-id')!;
67
- const rows = Array.from(group.querySelectorAll(ROW_SELECTOR)) as HTMLElement[];
68
- const rowIndex = rows.indexOf(rowEl);
69
- if (rowIndex === -1) return null;
70
- const kind: RowRef['kind'] = rowEl.classList.contains('axk-member') ? 'uml' : 'er';
71
-
72
- const node = api.getModel?.().getNode?.(nodeId);
73
- const meta = (key: string) => node?.getMetadata?.(key) as Record<string, unknown> | undefined;
74
-
75
- if (kind === 'er') {
76
- const entity = meta('kitEntity') as { columns?: Array<{ name?: string }> } | undefined;
77
- const name = entity?.columns?.[rowIndex]?.name ?? rowEl.querySelector('.axk-col')?.textContent ?? undefined;
78
- return { nodeId, rowIndex, name: name ?? undefined, kind };
79
- }
80
-
81
- const cls = meta('kitClass') as { attributes?: string[]; methods?: string[] } | undefined;
82
- const attrCount = cls?.attributes?.length ?? countFirstCompartment(rowEl);
83
- const section: RowRef['section'] = rowIndex < attrCount ? 'attributes' : 'methods';
84
- const name =
85
- (section === 'attributes' ? cls?.attributes?.[rowIndex] : cls?.methods?.[rowIndex - attrCount]) ??
86
- rowEl.textContent?.trim() ??
87
- undefined;
88
- return { nodeId, rowIndex, name, kind, section };
89
- }
90
-
91
- /** Without spec metadata, the first compartment's member count splits sections. */
92
- function countFirstCompartment(rowEl: HTMLElement): number {
93
- const card = rowEl.closest('.axk-uml');
94
- const firstComp = card?.querySelector('.axk-uml-comp');
95
- return firstComp ? firstComp.querySelectorAll('.axk-member').length : Number.MAX_SAFE_INTEGER;
96
- }
97
-
98
- export function bindRowInteractions(api: KitApi): RowInteractionsHandle {
99
- const container = api.container;
100
- bindings.get(container)?.dispose();
101
-
102
- let selected: RowRef | null = null;
103
-
104
- const paint = () => {
105
- for (const el of Array.from(container.querySelectorAll(`.${SELECTED_CLASS}`))) {
106
- el.classList.remove(SELECTED_CLASS);
107
- }
108
- if (selected) rowsOfNode(container, selected.nodeId)[selected.rowIndex]?.classList.add(SELECTED_CLASS);
109
- };
110
-
111
- const emitSelect = () => {
112
- container.dispatchEvent(new CustomEvent('axk:row-select', { bubbles: true, detail: { selected } }));
113
- };
114
-
115
- const setSelected = (next: RowRef | null) => {
116
- const same =
117
- (next === null && selected === null) ||
118
- (next !== null && selected !== null && next.nodeId === selected.nodeId && next.rowIndex === selected.rowIndex);
119
- if (same) return;
120
- selected = next;
121
- paint();
122
- emitSelect();
123
- };
124
-
125
- const onClick = (event: MouseEvent) => {
126
- const target = event.target instanceof Element ? event.target : null;
127
- const rowEl = target?.closest?.(ROW_SELECTOR) as HTMLElement | null;
128
- if (!rowEl || !container.contains(rowEl)) {
129
- setSelected(null);
130
- return;
131
- }
132
- const ref = resolveRef(container, api, rowEl);
133
- if (!ref) return;
134
- container.dispatchEvent(new CustomEvent('axk:row-click', { bubbles: true, detail: { ...ref } }));
135
- const isReclick = selected && selected.nodeId === ref.nodeId && selected.rowIndex === ref.rowIndex;
136
- setSelected(isReclick ? null : ref);
137
- };
138
-
139
- // Card re-renders replace the foreignObject subtree (content-hash keyed) and
140
- // lose the class — re-apply whenever the selected row's paint went missing.
141
- const observer = new MutationObserver(() => {
142
- if (!selected) return;
143
- const el = rowsOfNode(container, selected.nodeId)[selected.rowIndex];
144
- if (el && !el.classList.contains(SELECTED_CLASS)) paint();
145
- else if (!el) {
146
- // The row (or its node) is gone — the selection dies with it.
147
- setSelected(null);
148
- }
149
- });
150
-
151
- container.addEventListener('click', onClick);
152
- observer.observe(container, { childList: true, subtree: true });
153
-
154
- const handle: RowInteractionsHandle = {
155
- getSelected: () => (selected ? { ...selected } : null),
156
- select: (ref) => {
157
- if (ref === null) {
158
- setSelected(null);
159
- return;
160
- }
161
- const el = rowsOfNode(container, ref.nodeId)[ref.rowIndex];
162
- if (!el) return;
163
- const resolved = resolveRef(container, api, el);
164
- if (resolved) setSelected(resolved);
165
- },
166
- dispose: () => {
167
- container.removeEventListener('click', onClick);
168
- observer.disconnect();
169
- if (bindings.get(container) === handle) bindings.delete(container);
170
- },
171
- };
172
- bindings.set(container, handle);
173
- return handle;
174
- }
@@ -1 +0,0 @@
1
- {"version":3,"file":"styles.js","sourceRoot":"","sources":["styles.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;;AAgGH,wDAOC;AArGY,QAAA,oBAAoB,GAAG,8BAA8B,CAAC;AAEnE,MAAM,GAAG,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAyFX,CAAC;AAEF,0EAA0E;AAC1E,SAAgB,sBAAsB,CAAC,MAA4B,OAAO,QAAQ,KAAK,WAAW,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS;IACvH,IAAI,CAAC,GAAG;QAAE,OAAO;IACjB,IAAI,GAAG,CAAC,cAAc,CAAC,4BAAoB,CAAC;QAAE,OAAO;IACrD,MAAM,KAAK,GAAG,GAAG,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;IACzC,KAAK,CAAC,EAAE,GAAG,4BAAoB,CAAC;IAChC,KAAK,CAAC,WAAW,GAAG,GAAG,CAAC;IACxB,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;AAC9B,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"uml.js","sourceRoot":"","sources":["uml.ts"],"names":[],"mappings":"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"}
@@ -1,213 +0,0 @@
1
- /**
2
- * UML class-diagram kit — typed builders for the full relationship vocabulary.
3
- *
4
- * The packaged form of demos/diagrams/class-uml.html + uml-relationships.html:
5
- * three-compartment class cards («stereotype», name, attributes, methods) and
6
- * every standard relationship with its real notation:
7
- *
8
- * inheritance ── solid, hollow triangle at the parent
9
- * realization ┄┄ dashed, hollow triangle at the interface
10
- * association ── plain line (multiplicity chips optional)
11
- * directed-association ── open arrow at the target
12
- * aggregation ── hollow diamond at the whole (source)
13
- * composition ── FILLED diamond at the whole (source)
14
- * dependency ┄┄ dashed, open arrow («uses»)
15
- *
16
- * ```ts
17
- * const spec = umlDiagram({
18
- * classes: [{ id: 'Shape', abstract: true, attributes: ['# x: float'], methods: ['+ area(): float'] }],
19
- * relationships: [{ from: 'Circle', to: 'Shape', kind: 'inheritance' }],
20
- * });
21
- * const api = render(spec, container);
22
- * spec.finalize(api); // attaches multiplicity chips (needs the live model)
23
- * ```
24
- */
25
- import { ensureDiagramKitStyles } from './styles';
26
- import { bindRowInteractions } from './rows';
27
- import { classCardContent, classAutoHeight } from './card';
28
- import { bindCardEditing } from './editing';
29
-
30
- const DEFAULT_WIDTH = 200;
31
-
32
- export interface UmlClassSpec {
33
- id: string;
34
- /** Displayed name. Defaults to the id. */
35
- name?: string;
36
- /** Renders as «stereotype» above the name (e.g. 'interface', 'abstract', 'enum'). */
37
- stereotype?: string;
38
- /** Italicises the name (also set automatically for stereotype 'abstract'/'interface'). */
39
- abstract?: boolean;
40
- attributes?: string[];
41
- methods?: string[];
42
- position?: { x: number; y: number };
43
- width?: number;
44
- /** Fixed card height — smaller than the content makes the compartments scroll. */
45
- height?: number;
46
- }
47
-
48
- export type UmlRelationKind =
49
- | 'inheritance'
50
- | 'realization'
51
- | 'association'
52
- | 'directed-association'
53
- | 'aggregation'
54
- | 'composition'
55
- | 'dependency';
56
-
57
- export type UmlSide = 'left' | 'right' | 'top' | 'bottom';
58
-
59
- export interface UmlRelationshipSpec {
60
- from: string;
61
- to: string;
62
- /** Default 'association'. */
63
- kind?: UmlRelationKind;
64
- label?: string;
65
- /** Multiplicity / role chips at the [from, to] ends (e.g. ['0..*', '1']). */
66
- multiplicity?: [string, string];
67
- fromSide?: UmlSide;
68
- toSide?: UmlSide;
69
- id?: string;
70
- }
71
-
72
- export interface UmlDiagramOptions {
73
- classes: UmlClassSpec[];
74
- relationships?: UmlRelationshipSpec[];
75
- /**
76
- * Members are selectable by default: click one to select it (painted with
77
- * .axk-row-selected; axk:row-click / axk:row-select CustomEvents fire on the
78
- * container). Set false to opt out.
79
- */
80
- rowSelection?: boolean;
81
- /**
82
- * In-canvas editing (opt-in, default false). When true: double-click the
83
- * class name to rename it, double-click a member to rename it, an "add"
84
- * affordance per compartment and a per-member delete control — all routed
85
- * through {@link updateClass} as one undoable step.
86
- */
87
- editable?: boolean;
88
- }
89
-
90
- interface EdgeStyle {
91
- stroke: string;
92
- strokeWidth: number;
93
- strokeDasharray?: string;
94
- arrowHead: { type: string; size: number; filled: boolean };
95
- arrowTail?: { type: string; size: number; filled: boolean };
96
- }
97
-
98
- const STROKE = '#475569';
99
- const DASH = '6,4';
100
-
101
- /**
102
- * The notation table. Every kind sets arrowHead EXPLICITLY — a plain line must
103
- * carry `arrowHead: none`, or the renderer paints its default arrow (the
104
- * stray-arrowhead bug the demos hit live).
105
- */
106
- function edgeStyleFor(kind: UmlRelationKind): EdgeStyle {
107
- const none = { type: 'none', size: 0, filled: false };
108
- switch (kind) {
109
- case 'inheritance':
110
- return { stroke: STROKE, strokeWidth: 1.5, arrowHead: { type: 'generalization', size: 16, filled: false }, arrowTail: none };
111
- case 'realization':
112
- return { stroke: STROKE, strokeWidth: 1.5, strokeDasharray: DASH, arrowHead: { type: 'generalization', size: 16, filled: false }, arrowTail: none };
113
- case 'association':
114
- return { stroke: STROKE, strokeWidth: 1.5, arrowHead: none, arrowTail: none };
115
- case 'directed-association':
116
- return { stroke: STROKE, strokeWidth: 1.5, arrowHead: { type: 'open-arrow', size: 12, filled: false }, arrowTail: none };
117
- case 'aggregation':
118
- return { stroke: STROKE, strokeWidth: 1.5, arrowHead: none, arrowTail: { type: 'hollow-diamond', size: 14, filled: false } };
119
- case 'composition':
120
- return { stroke: STROKE, strokeWidth: 1.5, arrowHead: none, arrowTail: { type: 'filled-diamond', size: 14, filled: true } };
121
- case 'dependency':
122
- return { stroke: STROKE, strokeWidth: 1.5, strokeDasharray: DASH, arrowHead: { type: 'open-arrow', size: 12, filled: false }, arrowTail: none };
123
- }
124
- }
125
-
126
- /** Multiplicity chip, positioned near an edge end. */
127
- const chip = (text: string, slot: 'start' | 'end') => ({
128
- text,
129
- slot,
130
- offset: { x: 0, y: -7 },
131
- style: { fontSize: 11, fontWeight: '600', color: '#0f172a', background: '#ffffffdd', padding: 1, borderRadius: 2 },
132
- });
133
-
134
- /**
135
- * Build a render() spec for a UML class diagram. Call `spec.finalize(api)`
136
- * after render() — multiplicity chips are positioned labels, which only the
137
- * live model's `link.addLabel` can express.
138
- */
139
- export function umlDiagram(options: UmlDiagramOptions): {
140
- nodes: Array<Record<string, unknown>>;
141
- edges: Array<Record<string, unknown>>;
142
- finalize: (api: unknown) => void;
143
- } {
144
- ensureDiagramKitStyles();
145
-
146
- const editable = options.editable === true;
147
- const nodes = options.classes.map((cls, i) => {
148
- return {
149
- id: cls.id,
150
- position: cls.position ?? { x: 80 + (i % 3) * 320, y: 60 + Math.floor(i / 3) * 260 },
151
- size: { width: cls.width ?? DEFAULT_WIDTH, height: classAutoHeight(cls, editable) },
152
- // interactive: members are real DOM targets (hover, row selection, inline
153
- // editing); node drag/select stay geometric in the binder.
154
- metadata: {
155
- html: { content: classCardContent(cls, editable), interactive: true },
156
- kitClass: cls,
157
- kitEditable: editable,
158
- // Opt-out only — see the same stamp in er.ts.
159
- ...(options.rowSelection === false ? { kitRowSelection: false } : {}),
160
- },
161
- shape: { type: 'rect', fill: 'none', stroke: 'none' },
162
- style: { fill: 'transparent', stroke: 'transparent', strokeWidth: 0 },
163
- };
164
- });
165
-
166
- const rels = options.relationships ?? [];
167
- const edges = rels.map((rel, i) => ({
168
- id: rel.id ?? `uml-rel-${i + 1}`,
169
- source: rel.from,
170
- target: rel.to,
171
- label: rel.label,
172
- type: 'orthogonal',
173
- ...(rel.fromSide ? { sourceHandle: rel.fromSide } : {}),
174
- ...(rel.toSide ? { targetHandle: rel.toSide } : {}),
175
- style: edgeStyleFor(rel.kind ?? 'association'),
176
- }));
177
-
178
- // finalize is idempotent per api: render() auto-runs it, and a demo may also
179
- // call it — chips must not be added twice.
180
- const finalized = new WeakSet<object>();
181
- const finalize = (api: unknown): void => {
182
- const a0 = api as { container?: HTMLElement; getModel?: () => { getNode: (id: string) => { setBehavior?: (b: { resizable: boolean }) => void } | undefined } };
183
- // Own card ring only — suppress the node resize handles on the live model
184
- // (the render-input path does not honour a spec-level `behavior`).
185
- const m0 = a0?.getModel?.();
186
- if (m0) for (const cls of options.classes) m0.getNode?.(cls.id)?.setBehavior?.({ resizable: false });
187
- if (options.rowSelection !== false) {
188
- const a = api as { container?: HTMLElement };
189
- // bindRowInteractions disposes any prior binding for the container, so it
190
- // is safe to run twice.
191
- if (a?.container) bindRowInteractions(a as never);
192
- }
193
- if (editable && a0?.container) bindCardEditing(a0 as never);
194
- if (api && typeof api === 'object') {
195
- if (finalized.has(api)) return;
196
- finalized.add(api);
197
- }
198
- const model = (api as { getModel?: () => { getLink: (id: string) => { addLabel: (l: unknown) => void } | null } })?.getModel?.();
199
- if (!model) return;
200
- let added = false;
201
- rels.forEach((rel, i) => {
202
- if (!rel.multiplicity) return;
203
- const link = model.getLink((edges[i] as { id: string }).id);
204
- if (!link) return;
205
- link.addLabel(chip(rel.multiplicity[0], 'start'));
206
- link.addLabel(chip(rel.multiplicity[1], 'end'));
207
- added = true;
208
- });
209
- if (added) (api as { renderNow?: () => void })?.renderNow?.();
210
- };
211
-
212
- return { nodes, edges, finalize };
213
- }
@@ -1 +0,0 @@
1
- {"version":3,"file":"update.js","sourceRoot":"","sources":["update.ts"],"names":[],"mappings":"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"}
@@ -1,208 +0,0 @@
1
- /**
2
- * P3 — `updateEntity` / `updateClass` against a REAL model.
3
- *
4
- * The reconciliation only matters on live PortModels + LinkModels, so these
5
- * tests build an actual DiagramModel from an erDiagram()/umlDiagram() spec and
6
- * drive the edit through the real CommandManager — the same seam the kit uses
7
- * live. That also proves the edit is exactly ONE undo step.
8
- */
9
- import { DiagramModel, NodeModel, PortModel, LinkModel, CommandManager } from '@grafloria/engine';
10
- import { erDiagram } from './er';
11
- import { umlDiagram } from './uml';
12
- import { updateEntity, updateClass, addColumnAt, removeColumnAt, renameColumnAt } from './update';
13
- import { erRowCenterY, ER_ROW_H } from './card';
14
-
15
- interface AnySpec {
16
- nodes: Array<Record<string, unknown>>;
17
- edges: Array<Record<string, unknown>>;
18
- }
19
-
20
- /** Build a live DiagramModel + a kit `api` from a builder spec. */
21
- function mount(spec: AnySpec, editable = true) {
22
- const model = new DiagramModel();
23
- for (const n of spec.nodes as any[]) {
24
- const node = new NodeModel({ id: n.id, type: 'kit', position: n.position, size: n.size });
25
- for (const p of node.getPorts()) node.removePort(p.id); // drop auto-defaults
26
- const meta = n.metadata ?? {};
27
- node.setMetadata('html', meta.html);
28
- if (meta.kitEntity) node.setMetadata('kitEntity', meta.kitEntity);
29
- if (meta.kitClass) node.setMetadata('kitClass', meta.kitClass);
30
- node.setMetadata('kitEditable', editable);
31
- for (const p of (n.ports ?? []) as any[]) {
32
- node.addPort(new PortModel({ id: p.id, type: 'bi', side: p.side, visible: p.visible, layout: p.layout }));
33
- }
34
- model.addNode(node);
35
- }
36
- for (const e of spec.edges as any[]) {
37
- const link = new LinkModel(e.sourceHandle, e.targetHandle, 'orthogonal');
38
- (link as any).id = e.id; // stable id so we can find it back
39
- model.addLink(link);
40
- }
41
- const eventBus = { emit() {} };
42
- const cm = new CommandManager({ diagram: model, eventBus } as any, eventBus as any);
43
- const engine = { commandManager: cm, undo: () => cm.undo(), redo: () => cm.redo() };
44
- const container = document.createElement('div');
45
- const api = { container, getModel: () => model, getEngine: () => engine, renderNow: () => {} };
46
- return { model, api, cm };
47
- }
48
-
49
- const html = (node: any) => JSON.stringify(node.getMetadata('html'));
50
- const portY = (node: any, id: string) => node.getPort(id)?.layout?.args?.y as number | undefined;
51
-
52
- /** FOO has two field ports (on b and d); TARGET is the referenced PK. */
53
- function fooSpec(editable = true): AnySpec {
54
- return erDiagram({
55
- editable,
56
- entities: [
57
- { id: 'TARGET', columns: [{ name: 'pk', type: 'int', pk: true }] },
58
- {
59
- id: 'FOO',
60
- columns: [
61
- { name: 'a', type: 'int' },
62
- { name: 'b', type: 'int', fk: true },
63
- { name: 'c', type: 'int' },
64
- { name: 'd', type: 'int', fk: true },
65
- ],
66
- },
67
- ],
68
- relationships: [
69
- { from: 'FOO.b', to: 'TARGET.pk', id: 'e-b' },
70
- { from: 'FOO.d', to: 'TARGET.pk', id: 'e-d' },
71
- ],
72
- }) as AnySpec;
73
- }
74
-
75
- describe('updateEntity — add a column', () => {
76
- it('adds a row, grows the card, and shifts every port BELOW down by exactly one row', async () => {
77
- const { model, api } = mount(fooSpec());
78
- const foo = model.getNode('FOO')!;
79
- const h0 = foo.size.height;
80
- const cols = (foo.getMetadata('kitEntity') as any).columns;
81
- // b is row 1, d is row 3 before the insert.
82
- expect(portY(foo, 'FOO__b__right__0')).toBe(erRowCenterY(1));
83
- expect(portY(foo, 'FOO__d__right__0')).toBe(erRowCenterY(3));
84
-
85
- await updateEntity(api as any, 'FOO', { columns: addColumnAt(cols, { name: 'z', type: 'int' }, 0) });
86
-
87
- // html gained the row; card grew by one row height.
88
- expect(html(foo)).toContain('"z"');
89
- expect((foo.getMetadata('kitEntity') as any).columns).toHaveLength(5);
90
- expect(foo.size.height).toBe(h0 + ER_ROW_H);
91
- // MUTATION-PROOF: the ports did not stay frozen at their old rows — they
92
- // tracked their columns down by exactly ER_ROW_H.
93
- expect(portY(foo, 'FOO__b__right__0')).toBe(erRowCenterY(2));
94
- expect(portY(foo, 'FOO__d__right__0')).toBe(erRowCenterY(4));
95
- expect(portY(foo, 'FOO__b__right__0')).not.toBe(erRowCenterY(1));
96
- // Edges stayed glued (still present, same handles).
97
- expect(model.getLinks()).toHaveLength(2);
98
- expect(model.getLink('e-b')!.sourcePortId).toBe('FOO__b__right__0');
99
- });
100
- });
101
-
102
- describe('updateEntity — remove a column', () => {
103
- it('drops the removed column row, and a port BELOW it shifts up one row', async () => {
104
- const { model, api } = mount(fooSpec());
105
- const foo = model.getNode('FOO')!;
106
- const cols = (foo.getMetadata('kitEntity') as any).columns;
107
- // Remove 'a' (row 0, no port) → b:1→0, d:3→2 shift up.
108
- await updateEntity(api as any, 'FOO', { columns: removeColumnAt(cols, 0) });
109
- expect(html(foo)).not.toContain('"a"');
110
- expect(portY(foo, 'FOO__b__right__0')).toBe(erRowCenterY(0));
111
- expect(portY(foo, 'FOO__d__right__0')).toBe(erRowCenterY(2));
112
- expect(model.getLinks()).toHaveLength(2);
113
- });
114
-
115
- it("removing a PORTED column deletes its port and drops that column's edge", async () => {
116
- const { model, api } = mount(fooSpec());
117
- const foo = model.getNode('FOO')!;
118
- const cols = (foo.getMetadata('kitEntity') as any).columns;
119
- // Remove 'b' (row 1, ported) → its port + edge e-b go; d:3→2 shifts up.
120
- await updateEntity(api as any, 'FOO', { columns: removeColumnAt(cols, 1) });
121
- expect(foo.getPort('FOO__b__right__0')).toBeUndefined();
122
- expect(model.getLink('e-b')).toBeUndefined();
123
- // The OTHER port + edge survive and track.
124
- expect(foo.getPort('FOO__d__right__0')).toBeTruthy();
125
- expect(portY(foo, 'FOO__d__right__0')).toBe(erRowCenterY(2));
126
- expect(model.getLink('e-d')).toBeTruthy();
127
- });
128
- });
129
-
130
- describe('updateEntity — rename / reorder', () => {
131
- it('rename keeps the port id and the edge; the port stays on its (unchanged) row', async () => {
132
- const { model, api } = mount(fooSpec());
133
- const foo = model.getNode('FOO')!;
134
- const cols = (foo.getMetadata('kitEntity') as any).columns;
135
- await updateEntity(api as any, 'FOO', { columns: renameColumnAt(cols, 1, 'b_renamed') });
136
- expect(html(foo)).toContain('"b_renamed"');
137
- expect(foo.getPort('FOO__b__right__0')).toBeTruthy(); // stable id
138
- expect(portY(foo, 'FOO__b__right__0')).toBe(erRowCenterY(1)); // same row
139
- expect(model.getLink('e-b')!.sourcePortId).toBe('FOO__b__right__0'); // still glued
140
- });
141
-
142
- it('reorder tracks ports to their columns new rows', async () => {
143
- const { model, api } = mount(fooSpec());
144
- const foo = model.getNode('FOO')!;
145
- const cols = (foo.getMetadata('kitEntity') as any).columns as any[];
146
- // Move 'd' (idx3) to the front: [d, a, b, c] → d:0, b:2.
147
- const reordered = [cols[3], cols[0], cols[1], cols[2]];
148
- await updateEntity(api as any, 'FOO', { columns: reordered });
149
- expect(portY(foo, 'FOO__d__right__0')).toBe(erRowCenterY(0));
150
- expect(portY(foo, 'FOO__b__right__0')).toBe(erRowCenterY(2));
151
- expect(model.getLinks()).toHaveLength(2);
152
- });
153
-
154
- it('renaming the table changes only the header text', async () => {
155
- const { model, api } = mount(fooSpec());
156
- const foo = model.getNode('FOO')!;
157
- await updateEntity(api as any, 'FOO', { name: 'Widgets' });
158
- expect(html(foo)).toContain('Widgets');
159
- expect((foo.getMetadata('kitEntity') as any).name).toBe('Widgets');
160
- // columns + ports untouched.
161
- expect(portY(foo, 'FOO__b__right__0')).toBe(erRowCenterY(1));
162
- });
163
- });
164
-
165
- describe('updateEntity — one undoable step', () => {
166
- it('a whole edit is a single Ctrl+Z that restores rows, size, ports AND edges', async () => {
167
- const { model, api, cm } = mount(fooSpec());
168
- const foo = model.getNode('FOO')!;
169
- const h0 = foo.size.height;
170
-
171
- // A removal that touches html, size, one port AND one edge.
172
- const cols = (foo.getMetadata('kitEntity') as any).columns;
173
- await updateEntity(api as any, 'FOO', { columns: removeColumnAt(cols, 1) });
174
- expect(cm.getHistory()).toHaveLength(1); // ONE history entry for the whole edit
175
- expect(foo.getPort('FOO__b__right__0')).toBeUndefined();
176
- expect(model.getLink('e-b')).toBeUndefined();
177
-
178
- await cm.undo();
179
- // Everything comes back in one step.
180
- expect(foo.size.height).toBe(h0);
181
- expect(html(foo)).toContain('"b"');
182
- expect(foo.getPort('FOO__b__right__0')).toBeTruthy();
183
- expect(portY(foo, 'FOO__b__right__0')).toBe(erRowCenterY(1));
184
- expect(portY(foo, 'FOO__d__right__0')).toBe(erRowCenterY(3));
185
- expect(model.getLink('e-b')).toBeTruthy();
186
- });
187
- });
188
-
189
- describe('updateClass — UML edits (no port reconciliation)', () => {
190
- it('adds/renames members and grows the card; rename changes the name text', async () => {
191
- const spec = umlDiagram({
192
- editable: true,
193
- classes: [{ id: 'Shape', attributes: ['# x: float'], methods: ['+ area(): float'] }],
194
- relationships: [],
195
- }) as AnySpec;
196
- const { model, api } = mount(spec);
197
- const node = model.getNode('Shape')!;
198
- const h0 = node.size.height;
199
-
200
- await updateClass(api as any, 'Shape', { attributes: ['# x: float', '# y: float'] });
201
- expect(html(node)).toContain('# y: float');
202
- expect(node.size.height).toBeGreaterThan(h0);
203
-
204
- await updateClass(api as any, 'Shape', { name: 'Rectangle' });
205
- expect(html(node)).toContain('Rectangle');
206
- expect((node.getMetadata('kitClass') as any).name).toBe('Rectangle');
207
- });
208
- });