@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,940 @@
1
+ "use strict";
2
+ // .drawio (mxGraph XML) IMPORT — import-only, bounded, honest about loss.
3
+ //
4
+ // draw.io / diagrams.net is the largest installed base of free diagramming in
5
+ // existence, and its files are the migration on-ramp: a team does not adopt a
6
+ // new engine by retyping its diagrams. This module reads both shapes of the
7
+ // format —
8
+ //
9
+ // (a) plain `<mxGraphModel>` XML (what "uncompressed" saves and most
10
+ // programmatic exporters emit), and
11
+ // (b) the `<mxfile><diagram>…</diagram></mxfile>` wrapper whose page payload
12
+ // is base64 → raw-deflate → URI-encoded XML (draw.io's DEFAULT save
13
+ // format; decoded with `DecompressionStream('deflate-raw')`, global in
14
+ // Node ≥ 18 and every modern browser)
15
+ //
16
+ // — and maps the mxGraph cell tree onto the engine's own models.
17
+ //
18
+ // THE HONESTY CONTRACT. mxGraph expresses more than this importer maps (exotic
19
+ // stencil shapes, collapsed containers, layers). Nothing unmapped is dropped in
20
+ // silence: every dropped construct appends a NAMED warning to the result, so a
21
+ // user can see exactly what their file lost — the same "never hide the loss"
22
+ // stance TextFormat.ts takes for Mermaid.
23
+ //
24
+ // COORDINATES. mxGraph child geometry is RELATIVE TO ITS PARENT cell; the
25
+ // engine's node positions are world-absolute. The importer walks each cell's
26
+ // parent chain and sums origins, so a node 20px inside a container that sits
27
+ // at (300,80) lands at (320,…) — nested containers nest the sum. Edge
28
+ // waypoints live in the EDGE's parent space and get the same conversion.
29
+ //
30
+ // MULTI-PAGE. A file with more than one `<diagram>` returns every page under
31
+ // `pages[]`, each decoded and compiled INDEPENDENTLY — one corrupt page fails
32
+ // alone with its own `error` entry instead of sinking the file. The top-level
33
+ // `diagram` stays page 1 (back-compatible), and the top-level warnings are
34
+ // page 1's plus the file-level ones.
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.stripHtmlToText = stripHtmlToText;
37
+ exports.importDrawio = importDrawio;
38
+ const tslib_1 = require("tslib");
39
+ const DiagramModel_1 = require("../../models/DiagramModel");
40
+ const NodeModel_1 = require("../../models/NodeModel");
41
+ const GroupModel_1 = require("../../models/GroupModel");
42
+ const xml_1 = require("./xml");
43
+ function parseStyle(style) {
44
+ const tokens = new Map();
45
+ let first;
46
+ let index = 0;
47
+ for (const part of style.split(';')) {
48
+ const token = part.trim();
49
+ if (!token)
50
+ continue;
51
+ const eq = token.indexOf('=');
52
+ if (eq === -1) {
53
+ if (index === 0)
54
+ first = token;
55
+ tokens.set(token, '');
56
+ }
57
+ else {
58
+ tokens.set(token.slice(0, eq), token.slice(eq + 1));
59
+ }
60
+ index++;
61
+ }
62
+ return { tokens, first };
63
+ }
64
+ /**
65
+ * mxGraph shape token → engine shape-registry name. The engine's registry
66
+ * (renderer shape-library) uses its own vocabulary — `rhombus` there is
67
+ * `diamond` here. Only tokens with a REAL counterpart are mapped; anything
68
+ * else falls back to `rect` WITH a warning naming the token, because a wrong
69
+ * silhouette that looks deliberate is worse than a rectangle that looks like
70
+ * a fallback.
71
+ */
72
+ const SHAPE_MAP = {
73
+ ellipse: 'ellipse',
74
+ rhombus: 'diamond',
75
+ triangle: 'triangle',
76
+ hexagon: 'hexagon',
77
+ cylinder: 'cylinder',
78
+ cylinder3: 'cylinder', // draw.io's current cylinder is shape=cylinder3
79
+ };
80
+ /**
81
+ * mxGraph edge-marker token → the engine's ArrowStyle vocabulary. Only tokens
82
+ * with a REAL counterpart are mapped; an unknown token keeps the engine's
83
+ * default marker WITH a warning naming it. The `Thin` variants share their
84
+ * base silhouette — the engine does not model barb thickness.
85
+ */
86
+ const ARROW_MAP = {
87
+ classic: 'arrow',
88
+ classicThin: 'arrow',
89
+ block: 'arrow',
90
+ blockThin: 'arrow',
91
+ open: 'open-arrow',
92
+ openThin: 'open-arrow',
93
+ openAsync: 'open-arrow',
94
+ oval: 'oval',
95
+ diamond: 'diamond',
96
+ diamondThin: 'diamond',
97
+ cross: 'cross',
98
+ dash: 'bar',
99
+ box: 'square',
100
+ circle: 'circle',
101
+ circlePlus: 'circle',
102
+ // ER notation — draw.io's ER endpoints map 1:1 onto the engine's ERD arrows.
103
+ ERone: 'one',
104
+ ERmandOne: 'one',
105
+ ERmany: 'crow-foot',
106
+ ERoneToMany: 'one-or-many',
107
+ ERzeroToOne: 'zero-or-one',
108
+ ERzeroToMany: 'zero-or-many',
109
+ none: 'none',
110
+ };
111
+ /** Markers that are outlines by construction — `startFill`/`endFill` cannot fill them. */
112
+ const OPEN_ARROW_TOKENS = new Set(['open', 'openThin', 'openAsync', 'cross', 'dash']);
113
+ /**
114
+ * Style keys the importer CONSUMES (mapped into the model). Everything else
115
+ * lands in one aggregated "unmapped style keys" warning — deduped, because a
116
+ * 200-cell file repeating `html=1` should say it once, not 200 times.
117
+ */
118
+ const CONSUMED_STYLE_KEYS = new Set([
119
+ 'shape',
120
+ 'rounded',
121
+ 'arcSize',
122
+ 'absoluteArcSize',
123
+ 'fillColor',
124
+ 'strokeColor',
125
+ 'strokeWidth',
126
+ 'opacity',
127
+ 'dashed',
128
+ 'fontColor',
129
+ 'fontSize',
130
+ 'edgeStyle',
131
+ 'curved',
132
+ 'startArrow',
133
+ 'endArrow',
134
+ 'startFill',
135
+ 'endFill',
136
+ 'text',
137
+ 'swimlane',
138
+ 'group',
139
+ 'edgeLabel',
140
+ 'labelPosition',
141
+ 'verticalLabelPosition',
142
+ ...Object.keys(SHAPE_MAP),
143
+ ]);
144
+ // ---------------------------------------------------------------------------
145
+ // Label text — draw.io `value` attributes are HTML fragments
146
+ // ---------------------------------------------------------------------------
147
+ /**
148
+ * `value="<b>Start</b><br>here"` must become "Start here", not carry markup
149
+ * into the label canon. Block/line-break boundaries turn into single spaces so
150
+ * words do not fuse.
151
+ *
152
+ * Entities are decoded a SECOND time here, after the tags are gone. The XML
153
+ * reader already decoded one level — but with `html=1` (draw.io's default) the
154
+ * value is an HTML FRAGMENT, so an author's literal `&` was double-encoded on
155
+ * save (`&amp;amp;`) and one decode still leaves `&amp;` in the label.
156
+ */
157
+ function stripHtmlToText(value) {
158
+ return decodeHtmlEntities(value
159
+ .replace(/<br\s*\/?>/gi, ' ')
160
+ .replace(/<\/(div|p|li|tr|h[1-6])>/gi, ' ')
161
+ .replace(/<[^>]*>/g, ''))
162
+ .replace(/\s+/g, ' ')
163
+ .trim();
164
+ }
165
+ const HTML_ENTITIES = {
166
+ amp: '&', lt: '<', gt: '>', quot: '"', apos: "'", nbsp: ' ',
167
+ };
168
+ function decodeHtmlEntities(text) {
169
+ return text.replace(/&(#x?[0-9a-fA-F]+|[a-zA-Z]+);/g, (whole, body) => {
170
+ var _a;
171
+ if (body[0] === '#') {
172
+ const code = body[1] === 'x' || body[1] === 'X'
173
+ ? parseInt(body.slice(2), 16)
174
+ : parseInt(body.slice(1), 10);
175
+ return Number.isFinite(code) ? String.fromCodePoint(code) : whole;
176
+ }
177
+ return (_a = HTML_ENTITIES[body]) !== null && _a !== void 0 ? _a : whole; // unknown names stay literal, never vanish
178
+ });
179
+ }
180
+ // ---------------------------------------------------------------------------
181
+ // The compressed <diagram> payload
182
+ // ---------------------------------------------------------------------------
183
+ /**
184
+ * base64 → raw-deflate → URI-encoded XML. This is `Graph.decompress` from
185
+ * draw.io itself, expressed with web-standard primitives only: `atob`,
186
+ * `DecompressionStream('deflate-raw')`, `TextDecoder`, `decodeURIComponent` —
187
+ * all global in Node ≥ 18 and modern browsers, so the headless engine needs
188
+ * no dependency and no DOM. Feature-detected: a runtime without
189
+ * DecompressionStream gets an error NAMING the missing API, not a crash.
190
+ */
191
+ function inflateDrawioPayload(b64) {
192
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
193
+ if (typeof DecompressionStream === 'undefined') {
194
+ throw new Error("this runtime has no DecompressionStream('deflate-raw') — compressed .drawio pages need Node >= 18 or a modern browser; export the file uncompressed (File > Properties > Compressed: off) as a workaround");
195
+ }
196
+ const bin = atob(b64.replace(/\s+/g, ''));
197
+ const bytes = new Uint8Array(bin.length);
198
+ for (let i = 0; i < bin.length; i++)
199
+ bytes[i] = bin.charCodeAt(i);
200
+ const stream = new Blob([bytes]).stream().pipeThrough(new DecompressionStream('deflate-raw'));
201
+ const inflated = yield new Response(stream).arrayBuffer();
202
+ // The inflated bytes are the ASCII of an encodeURIComponent()'d string; the
203
+ // URI-decode is what restores the actual UTF-8 characters.
204
+ return decodeURIComponent(new TextDecoder().decode(inflated));
205
+ });
206
+ }
207
+ // ---------------------------------------------------------------------------
208
+ // Public API
209
+ // ---------------------------------------------------------------------------
210
+ /**
211
+ * Import a .drawio / mxGraph XML document.
212
+ *
213
+ * Accepts plain `<mxGraphModel>` XML or a full `<mxfile>` (compressed or not).
214
+ * A multi-page file imports EVERY page: `diagram` is page 1 (back-compatible)
215
+ * and `pages[]` — present only when the file has more than one `<diagram>` —
216
+ * carries each page's own diagram, warnings, and (for a corrupt page) error.
217
+ * Never throws: unreadable input comes back as `{ error }`.
218
+ */
219
+ function importDrawio(text) {
220
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
221
+ var _a;
222
+ const unreadable = (e) => `not a readable .drawio document: ${e.message}`;
223
+ let root;
224
+ try {
225
+ root = (0, xml_1.parseXml)(text.trim());
226
+ }
227
+ catch (e) {
228
+ return { warnings: [], error: unreadable(e) };
229
+ }
230
+ // (a) A bare model — one page by construction.
231
+ if (root.tag === 'mxGraphModel') {
232
+ const warnings = [];
233
+ try {
234
+ return { diagram: buildDiagram(root, warnings), warnings };
235
+ }
236
+ catch (e) {
237
+ return { warnings, error: unreadable(e) };
238
+ }
239
+ }
240
+ if (root.tag !== 'mxfile') {
241
+ return {
242
+ warnings: [],
243
+ error: `not a readable .drawio document: root element is <${root.tag}>, expected <mxGraphModel> or <mxfile>`,
244
+ };
245
+ }
246
+ const pageEls = root.children.filter((c) => c.tag === 'diagram');
247
+ if (pageEls.length === 0) {
248
+ return { warnings: [], error: 'not a readable .drawio document: <mxfile> contains no <diagram> page' };
249
+ }
250
+ // (b) Single-page <mxfile> — the classic path, no pages[] array.
251
+ if (pageEls.length === 1) {
252
+ const warnings = [];
253
+ try {
254
+ return { diagram: buildDiagram(yield resolvePageModel(pageEls[0]), warnings), warnings };
255
+ }
256
+ catch (e) {
257
+ return { warnings, error: unreadable(e) };
258
+ }
259
+ }
260
+ // (c) MULTI-PAGE: each page decodes and compiles INDEPENDENTLY, so one
261
+ // corrupt page fails alone (its own error entry) instead of sinking the file.
262
+ const pages = [];
263
+ for (let index = 0; index < pageEls.length; index++) {
264
+ const el = pageEls[index];
265
+ const name = (_a = el.attrs['name']) !== null && _a !== void 0 ? _a : `Page ${index + 1}`;
266
+ const warnings = [];
267
+ try {
268
+ pages.push({ name, index, diagram: buildDiagram(yield resolvePageModel(el), warnings), warnings });
269
+ }
270
+ catch (e) {
271
+ pages.push({
272
+ name,
273
+ index,
274
+ warnings,
275
+ error: `page ${index + 1} ("${name}") is not readable: ${e.message}`,
276
+ });
277
+ }
278
+ }
279
+ const first = pages[0];
280
+ const warnings = [
281
+ `page 1 of ${pages.length} ("${first.name}") is the primary diagram; all ${pages.length} pages imported under pages[]`,
282
+ ...first.warnings,
283
+ // A later page's failure is file-level news, named once here too.
284
+ ...pages.slice(1).flatMap((p) => (p.error ? [p.error] : [])),
285
+ ];
286
+ return Object.assign(Object.assign(Object.assign(Object.assign({}, (first.diagram ? { diagram: first.diagram } : {})), { warnings }), (first.error ? { error: first.error } : {})), { pages });
287
+ });
288
+ }
289
+ /** Resolve one `<diagram>` element to its `<mxGraphModel>` (inflating a compressed payload). */
290
+ function resolvePageModel(page) {
291
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
292
+ // Uncompressed save: the model is a literal child element of <diagram>.
293
+ const inline = page.children.find((c) => c.tag === 'mxGraphModel');
294
+ if (inline)
295
+ return inline;
296
+ // Compressed save: the model travels as the element's TEXT payload.
297
+ if (!page.text)
298
+ throw new Error('the <diagram> page is empty');
299
+ const xml = yield inflateDrawioPayload(page.text);
300
+ const inner = (0, xml_1.parseXml)(xml.trim());
301
+ if (inner.tag !== 'mxGraphModel') {
302
+ throw new Error(`the decompressed page is <${inner.tag}>, expected <mxGraphModel>`);
303
+ }
304
+ return inner;
305
+ });
306
+ }
307
+ // ---------------------------------------------------------------------------
308
+ // Cell tree → engine models
309
+ // ---------------------------------------------------------------------------
310
+ function num(v, fallback = 0) {
311
+ const n = v === undefined ? NaN : parseFloat(v);
312
+ return Number.isFinite(n) ? n : fallback;
313
+ }
314
+ /** Read one cell element (or a UserObject/object wrapper around one) into a RawCell. */
315
+ function readCell(el) {
316
+ var _a, _b, _c, _d, _e;
317
+ let cellEl = el;
318
+ let value = (_a = el.attrs['value']) !== null && _a !== void 0 ? _a : '';
319
+ let link;
320
+ let data;
321
+ // UserObject / object wrappers: draw.io moves the label (and any custom
322
+ // attributes) OUT to the wrapper and nests the mxCell inside. Unwrap; keep
323
+ // label + link; carry the remaining attributes as data rather than losing them.
324
+ if (el.tag !== 'mxCell') {
325
+ const inner = el.children.find((c) => c.tag === 'mxCell');
326
+ if (!inner)
327
+ return undefined; // not a cell-shaped element at all
328
+ cellEl = inner;
329
+ value = (_b = el.attrs['label']) !== null && _b !== void 0 ? _b : '';
330
+ link = el.attrs['link'];
331
+ const rest = Object.entries(el.attrs).filter(([k]) => !['id', 'label', 'link'].includes(k));
332
+ if (rest.length > 0)
333
+ data = Object.fromEntries(rest);
334
+ }
335
+ const cell = {
336
+ id: (_d = (_c = el.attrs['id']) !== null && _c !== void 0 ? _c : cellEl.attrs['id']) !== null && _d !== void 0 ? _d : '',
337
+ parent: cellEl.attrs['parent'],
338
+ vertex: cellEl.attrs['vertex'] === '1',
339
+ edge: cellEl.attrs['edge'] === '1',
340
+ source: cellEl.attrs['source'],
341
+ target: cellEl.attrs['target'],
342
+ style: (_e = cellEl.attrs['style']) !== null && _e !== void 0 ? _e : '',
343
+ value: stripHtmlToText(value),
344
+ link,
345
+ data,
346
+ collapsed: cellEl.attrs['collapsed'] === '1',
347
+ };
348
+ const geo = cellEl.children.find((c) => c.tag === 'mxGeometry' && c.attrs['as'] === 'geometry');
349
+ if (geo) {
350
+ cell.geometry = {
351
+ x: num(geo.attrs['x']),
352
+ y: num(geo.attrs['y']),
353
+ width: num(geo.attrs['width']),
354
+ height: num(geo.attrs['height']),
355
+ relative: geo.attrs['relative'] === '1',
356
+ };
357
+ const points = geo.children.find((c) => c.tag === 'Array' && c.attrs['as'] === 'points');
358
+ if (points) {
359
+ cell.waypoints = points.children
360
+ .filter((c) => c.tag === 'mxPoint')
361
+ .map((p) => ({ x: num(p.attrs['x']), y: num(p.attrs['y']) }));
362
+ }
363
+ const alt = geo.children.find((c) => c.tag === 'mxRectangle' && c.attrs['as'] === 'alternateBounds');
364
+ if (alt)
365
+ cell.alternate = { width: num(alt.attrs['width']), height: num(alt.attrs['height']) };
366
+ // FLOATING ENDPOINTS: an edge drawn from/to empty canvas has no source/
367
+ // target CELL — the fixed end travels as a point in the edge's geometry.
368
+ const sp = geo.children.find((c) => c.tag === 'mxPoint' && c.attrs['as'] === 'sourcePoint');
369
+ if (sp)
370
+ cell.sourcePoint = { x: num(sp.attrs['x']), y: num(sp.attrs['y']) };
371
+ const tp = geo.children.find((c) => c.tag === 'mxPoint' && c.attrs['as'] === 'targetPoint');
372
+ if (tp)
373
+ cell.targetPoint = { x: num(tp.attrs['x']), y: num(tp.attrs['y']) };
374
+ }
375
+ return cell;
376
+ }
377
+ function buildDiagram(model, warnings) {
378
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
379
+ const rootEl = model.children.find((c) => c.tag === 'root');
380
+ if (!rootEl)
381
+ throw new Error('<mxGraphModel> has no <root>');
382
+ const cells = new Map();
383
+ for (const el of rootEl.children) {
384
+ const cell = readCell(el);
385
+ if (cell && cell.id)
386
+ cells.set(cell.id, cell);
387
+ }
388
+ // STRUCTURE. The mxGraph tree is: one root cell (no parent) → layer cells
389
+ // (parent = root) → content (parent = a layer, or a container vertex, or —
390
+ // for edge labels — an edge).
391
+ const rootId = (_a = [...cells.values()].find((c) => c.parent === undefined)) === null || _a === void 0 ? void 0 : _a.id;
392
+ const layerIds = new Set([...cells.values()].filter((c) => c.parent !== undefined && c.parent === rootId).map((c) => c.id));
393
+ const namedLayers = [...layerIds].filter((id) => !cells.get(id).vertex && !cells.get(id).edge);
394
+ if (namedLayers.length > 1) {
395
+ warnings.push(`${namedLayers.length} layers flattened onto one canvas; layers pending`);
396
+ }
397
+ // Which cells do other cells name as parent? Those vertices are CONTAINERS.
398
+ const parentRefs = new Set();
399
+ for (const c of cells.values()) {
400
+ if (c.parent && !layerIds.has(c.parent) && c.parent !== rootId)
401
+ parentRefs.add(c.parent);
402
+ }
403
+ const isStructural = (c) => c.id === rootId || layerIds.has(c.id);
404
+ const isContainer = (c) => {
405
+ if (!c.vertex || isStructural(c))
406
+ return false;
407
+ const style = parseStyle(c.style);
408
+ return style.first === 'swimlane' || style.tokens.has('group') || parentRefs.has(c.id);
409
+ };
410
+ const isEdgeLabel = (c) => {
411
+ if (!c.vertex || !c.parent)
412
+ return false;
413
+ const parent = cells.get(c.parent);
414
+ return !!(parent === null || parent === void 0 ? void 0 : parent.edge) || parseStyle(c.style).tokens.has('edgeLabel');
415
+ };
416
+ // ABSOLUTE ORIGIN of a cell's coordinate space = the summed positions of its
417
+ // ancestor CONTAINERS. Root and layers contribute nothing; a broken parent
418
+ // ref contributes nothing rather than exploding.
419
+ const originMemo = new Map();
420
+ const absoluteOrigin = (parentId, hops = 0) => {
421
+ if (!parentId || hops > cells.size)
422
+ return { x: 0, y: 0 };
423
+ const parent = cells.get(parentId);
424
+ if (!parent || isStructural(parent) || !parent.geometry)
425
+ return { x: 0, y: 0 };
426
+ const memo = originMemo.get(parentId);
427
+ if (memo)
428
+ return memo;
429
+ const above = absoluteOrigin(parent.parent, hops + 1);
430
+ const origin = { x: above.x + parent.geometry.x, y: above.y + parent.geometry.y };
431
+ originMemo.set(parentId, origin);
432
+ return origin;
433
+ };
434
+ const diagram = new DiagramModel_1.DiagramModel('drawio-import');
435
+ const unmappedStyleKeys = new Set();
436
+ const groupsById = new Map();
437
+ const nodesById = new Map();
438
+ const edgeCells = [];
439
+ const syntheticLabelNodes = [];
440
+ // -- pass 1: containers → GroupModels (parents must exist before membership) --
441
+ for (const cell of cells.values()) {
442
+ if (!isContainer(cell) || isEdgeLabel(cell))
443
+ continue;
444
+ const origin = absoluteOrigin(cell.parent);
445
+ const geo = (_b = cell.geometry) !== null && _b !== void 0 ? _b : { x: 0, y: 0, width: 200, height: 160, relative: false };
446
+ // A collapsed container's live geometry is its COLLAPSED pill;
447
+ // alternateBounds carries the expanded frame. Imported expanded.
448
+ let { width, height } = geo;
449
+ if (cell.collapsed) {
450
+ if (cell.alternate)
451
+ ({ width, height } = cell.alternate);
452
+ warnings.push(`collapsed container "${cell.id}" imported expanded; collapse state pending`);
453
+ }
454
+ const group = new GroupModel_1.GroupModel({ id: cell.id, name: cell.value || 'Group' });
455
+ diagram.addGroup(group);
456
+ group.setFrame({ x: origin.x + geo.x, y: origin.y + geo.y, width, height });
457
+ collectUnmappedStyleKeys(cell.style, unmappedStyleKeys);
458
+ groupsById.set(cell.id, group);
459
+ }
460
+ // -- pass 2: vertices → NodeModels ------------------------------------------
461
+ for (const cell of cells.values()) {
462
+ if (!cell.vertex || isStructural(cell) || groupsById.has(cell.id))
463
+ continue;
464
+ if (isEdgeLabel(cell))
465
+ continue; // consumed by its edge in pass 4
466
+ if ((_c = cell.geometry) === null || _c === void 0 ? void 0 : _c.relative) {
467
+ warnings.push(`cell "${cell.id}" has relative geometry outside an edge; imported at its parent's origin`);
468
+ }
469
+ const origin = absoluteOrigin(cell.parent);
470
+ const geo = (_d = cell.geometry) !== null && _d !== void 0 ? _d : { x: 0, y: 0, width: 0, height: 0, relative: false };
471
+ const node = new NodeModel_1.NodeModel({
472
+ id: cell.id,
473
+ type: 'default',
474
+ position: { x: origin.x + geo.x, y: origin.y + geo.y },
475
+ size: { width: geo.width || 100, height: geo.height || 50 },
476
+ });
477
+ applyVertexStyle(node, cell, warnings, unmappedStyleKeys);
478
+ if (cell.value)
479
+ node.setLabel(cell.value);
480
+ if (cell.link)
481
+ node.setMetadata('drawioLink', cell.link);
482
+ if (cell.data)
483
+ node.setMetadata('drawioData', cell.data);
484
+ diagram.addNode(node);
485
+ nodesById.set(cell.id, node);
486
+ const outside = applyOutsideLabelPlacement(node, cell, diagram);
487
+ if (outside)
488
+ syntheticLabelNodes.push({ parent: cell.parent, id: outside.id });
489
+ }
490
+ // -- pass 3: membership (groups and nodes both exist now) -------------------
491
+ for (const cell of cells.values()) {
492
+ const parentGroup = cell.parent ? groupsById.get(cell.parent) : undefined;
493
+ if (!parentGroup || cell.id === rootId)
494
+ continue;
495
+ if (groupsById.has(cell.id) || nodesById.has(cell.id)) {
496
+ parentGroup.addMember(cell.id, diagram);
497
+ }
498
+ }
499
+ // A synthesized caption follows its icon into the icon's group, so the frame
500
+ // that wraps the icon wraps its caption too.
501
+ for (const synth of syntheticLabelNodes) {
502
+ if (synth.parent)
503
+ (_e = groupsById.get(synth.parent)) === null || _e === void 0 ? void 0 : _e.addMember(synth.id, diagram);
504
+ }
505
+ // -- pass 4: edges → LinkModels ---------------------------------------------
506
+ for (const cell of cells.values()) {
507
+ if (cell.edge)
508
+ edgeCells.push(cell);
509
+ }
510
+ /** World-space center of whatever an endpoint id resolves to (node or container frame). */
511
+ const endpointCenter = (id) => {
512
+ if (!id)
513
+ return undefined;
514
+ const n = nodesById.get(id);
515
+ if (n)
516
+ return { x: n.position.x + n.size.width / 2, y: n.position.y + n.size.height / 2 };
517
+ const g = groupsById.get(id);
518
+ if (g) {
519
+ const f = g.getOuterBounds();
520
+ return { x: f.x + f.width / 2, y: f.y + f.height / 2 };
521
+ }
522
+ return undefined;
523
+ };
524
+ for (const cell of edgeCells) {
525
+ // Waypoints are authored in the EDGE's parent space — same conversion as
526
+ // vertex geometry (an edge inside a container carries container-relative
527
+ // waypoints).
528
+ const edgeOrigin = absoluteOrigin(cell.parent);
529
+ const absWaypoints = ((_f = cell.waypoints) !== null && _f !== void 0 ? _f : []).map((p) => ({
530
+ x: p.x + edgeOrigin.x,
531
+ y: p.y + edgeOrigin.y,
532
+ }));
533
+ const endpointResolvable = (id, point) => id ? nodesById.has(id) || groupsById.has(id) : !!point;
534
+ if (!endpointResolvable(cell.source, cell.sourcePoint) ||
535
+ !endpointResolvable(cell.target, cell.targetPoint)) {
536
+ warnings.push(`edge "${cell.id}" skipped: ${describeMissingEndpoint(cell, nodesById)}`);
537
+ continue;
538
+ }
539
+ // CONTAINER ENDPOINTS. draw.io lets an edge end ON a container. The
540
+ // engine's links connect node ports, and a GroupModel is a frame, not a
541
+ // node — so the importer synthesizes an INVISIBLE 1×1 anchor node pinned
542
+ // to the container frame's perimeter nearest the other endpoint (or the
543
+ // adjacent manual waypoint, which is where draw.io actually aimed the
544
+ // line). The anchor is group-owned and marked metadata.drawioContainerAnchor,
545
+ // so round-trips and tooling can tell it from authored content.
546
+ const resolveEndpoint = (side) => {
547
+ var _a, _b;
548
+ const id = side === 'source' ? cell.source : cell.target;
549
+ if (!id) {
550
+ // FLOATING ENDPOINT: no cell, just a fixed point (edge-parent space).
551
+ // An invisible 1×1 anchor node AT the point keeps the edge painting
552
+ // exactly where draw.io painted it.
553
+ const p = (side === 'source' ? cell.sourcePoint : cell.targetPoint);
554
+ const anchor = new NodeModel_1.NodeModel({
555
+ id: `drawio-anchor:${cell.id}:${side}`,
556
+ type: 'default',
557
+ position: { x: p.x + edgeOrigin.x - 0.5, y: p.y + edgeOrigin.y - 0.5 },
558
+ size: { width: 1, height: 1 },
559
+ });
560
+ anchor.setMetadata('shape', { type: 'rect', fill: 'none', stroke: 'none' });
561
+ anchor.setMetadata('drawioPointAnchor', Object.assign({}, p));
562
+ diagram.addNode(anchor);
563
+ return anchor;
564
+ }
565
+ const direct = nodesById.get(id);
566
+ if (direct)
567
+ return direct;
568
+ const group = groupsById.get(id);
569
+ const frame = group.getOuterBounds();
570
+ const toward = (_b = (_a = (side === 'source' ? absWaypoints[0] : absWaypoints[absWaypoints.length - 1])) !== null && _a !== void 0 ? _a : endpointCenter(side === 'source' ? cell.target : cell.source)) !== null && _b !== void 0 ? _b : { x: frame.x + frame.width / 2, y: frame.y - 20 };
571
+ const pin = nearestPerimeterPoint(frame, toward);
572
+ const anchor = new NodeModel_1.NodeModel({
573
+ id: `drawio-anchor:${cell.id}:${side}`,
574
+ type: 'default',
575
+ position: { x: pin.x - 0.5, y: pin.y - 0.5 },
576
+ size: { width: 1, height: 1 },
577
+ });
578
+ anchor.setMetadata('shape', { type: 'rect', fill: 'none', stroke: 'none' });
579
+ anchor.setMetadata('drawioContainerAnchor', group.id);
580
+ diagram.addNode(anchor);
581
+ group.addMember(anchor.id, diagram);
582
+ return anchor;
583
+ };
584
+ const source = resolveEndpoint('source');
585
+ const target = resolveEndpoint('target');
586
+ const style = parseStyle(cell.style);
587
+ // draw.io's axis-aligned edge family — orthogonal, elbow, segment and
588
+ // entity-relation styles all route in right angles; carry that hint over.
589
+ // Everything else routes as the engine's default smooth path. curved=1 is
590
+ // draw.io's "draw this as a curve" flag, whatever the routing style.
591
+ const edgeStyleToken = (_h = (_g = style.tokens.get('edgeStyle')) === null || _g === void 0 ? void 0 : _g.toLowerCase()) !== null && _h !== void 0 ? _h : '';
592
+ const orthogonal = /orthogonal|elbow|segment|entityrelation/.test(edgeStyleToken) &&
593
+ style.tokens.get('curved') !== '1';
594
+ const link = diagram.createSmartLink(source, target, orthogonal ? 'orthogonal' : 'smooth');
595
+ if (!link) {
596
+ warnings.push(`edge "${cell.id}" skipped: no connectable ports between "${cell.source}" and "${cell.target}"`);
597
+ continue;
598
+ }
599
+ link.setMetadata('drawioId', cell.id);
600
+ const labelCell = findEdgeLabelChild(cell.id, cells);
601
+ const labelText = cell.value || (labelCell === null || labelCell === void 0 ? void 0 : labelCell.value) || '';
602
+ if (labelText)
603
+ link.setLabel(labelText);
604
+ applyEdgeStyle(link, cell, labelCell, labelText, warnings, unmappedStyleKeys);
605
+ if (absWaypoints.length > 0) {
606
+ // MANUAL WAYPOINTS APPLY. The full polyline is the routed attach points
607
+ // with the author's waypoints between them; hasManualWaypoints makes the
608
+ // router respect it (and the layout invalidation clears it the moment a
609
+ // layout moves an endpoint — the contract that makes applying safe).
610
+ // The authored points stay under metadata.drawioWaypoints as provenance.
611
+ link.setMetadata('drawioWaypoints', cell.waypoints);
612
+ const routed = link.points;
613
+ const start = (_j = routed[0]) !== null && _j !== void 0 ? _j : endpointCenter(source.id);
614
+ const end = (_k = routed[routed.length - 1]) !== null && _k !== void 0 ? _k : endpointCenter(target.id);
615
+ link.setPoints([Object.assign({}, start), ...absWaypoints, Object.assign({}, end)]);
616
+ link.setMetadata('hasManualWaypoints', true);
617
+ }
618
+ collectUnmappedStyleKeys(cell.style, unmappedStyleKeys);
619
+ }
620
+ if (unmappedStyleKeys.size > 0) {
621
+ warnings.push(`unmapped style keys dropped: ${[...unmappedStyleKeys].sort().join(', ')}`);
622
+ }
623
+ installAnchorLifecycle(diagram);
624
+ return diagram;
625
+ }
626
+ /**
627
+ * Synthesized anchors must DIE WITH what they stand for. Without this, deleting
628
+ * the container an edge ends on left the invisible 1×1 anchor (and its edge)
629
+ * painting into the empty space where the frame used to be — an edge to
630
+ * nowhere a user cannot even select the endpoint of. Two rules, matching what
631
+ * draw.io itself does:
632
+ * - remove a LINK → its anchors go with it (they exist only to carry it);
633
+ * - remove the GROUP a container-anchor pins to → the anchor node goes, and
634
+ * removeNode cascades the edge away — in draw.io, deleting a shape deletes
635
+ * the edges connected to it, and the container IS the endpoint here.
636
+ * Listeners live on the returned model, so they follow the diagram wherever it
637
+ * is mounted. Every removal is existence-checked: the two rules trigger each
638
+ * other (group → node → link → far anchor) and must converge, not recurse.
639
+ */
640
+ function installAnchorLifecycle(diagram) {
641
+ const isAnchor = (n) => !!n && (n.getMetadata('drawioContainerAnchor') !== undefined ||
642
+ n.getMetadata('drawioPointAnchor') !== undefined);
643
+ diagram.on('link:removed', ((link) => {
644
+ for (const id of [link.sourceNodeId, link.targetNodeId]) {
645
+ if (!id)
646
+ continue;
647
+ const n = diagram.getNode(id);
648
+ if (isAnchor(n) && diagram.getLinksForNode(id).length === 0)
649
+ diagram.removeNode(id);
650
+ }
651
+ }));
652
+ diagram.on('group:removed', ((group) => {
653
+ for (const n of diagram.getNodes()) {
654
+ if (n.getMetadata('drawioContainerAnchor') === group.id)
655
+ diagram.removeNode(n.id);
656
+ }
657
+ }));
658
+ }
659
+ /** The closest point ON the PERIMETER of a rectangle to `toward` (inside or out). */
660
+ function nearestPerimeterPoint(frame, toward) {
661
+ const left = frame.x;
662
+ const right = frame.x + frame.width;
663
+ const top = frame.y;
664
+ const bottom = frame.y + frame.height;
665
+ const cx = Math.min(Math.max(toward.x, left), right);
666
+ const cy = Math.min(Math.max(toward.y, top), bottom);
667
+ if (toward.x !== cx || toward.y !== cy)
668
+ return { x: cx, y: cy }; // outside: clamp lands on the edge
669
+ // Inside: push to the nearest of the four edges.
670
+ const candidates = [
671
+ { d: cx - left, p: { x: left, y: cy } },
672
+ { d: right - cx, p: { x: right, y: cy } },
673
+ { d: cy - top, p: { x: cx, y: top } },
674
+ { d: bottom - cy, p: { x: cx, y: bottom } },
675
+ ];
676
+ candidates.sort((a, b) => a.d - b.d);
677
+ return candidates[0].p;
678
+ }
679
+ /** Human wording for WHY an edge endpoint failed to resolve. */
680
+ function describeMissingEndpoint(cell, nodes) {
681
+ const side = (name, id) => {
682
+ if (!id)
683
+ return `no ${name}`;
684
+ if (nodes.has(id))
685
+ return undefined;
686
+ return `${name} "${id}" does not exist`;
687
+ };
688
+ return [side('source', cell.source), side('target', cell.target)].filter(Boolean).join('; ');
689
+ }
690
+ /** The label a draw.io edge stores as a CHILD cell (style edgeLabel, parent = the edge). */
691
+ function findEdgeLabelChild(edgeId, cells) {
692
+ for (const c of cells.values()) {
693
+ if (c.parent === edgeId && c.vertex && c.value)
694
+ return c;
695
+ }
696
+ return undefined;
697
+ }
698
+ /**
699
+ * `startArrow`/`endArrow` token → the engine's ArrowStyle. `undefined` (token
700
+ * absent) keeps the engine default — which matches draw.io's own defaults
701
+ * (classic arrow at the target, nothing at the source). Unknown tokens keep
702
+ * the default too, WITH a warning naming them.
703
+ */
704
+ function mapArrowToken(token, fillAttr, edgeId, end, warnings) {
705
+ if (token === undefined || token === '')
706
+ return undefined;
707
+ const mapped = ARROW_MAP[token];
708
+ if (!mapped) {
709
+ warnings.push(`unknown ${end}Arrow token "${token}" on edge "${edgeId}"; engine default kept`);
710
+ return undefined;
711
+ }
712
+ const filled = mapped !== 'none' && !OPEN_ARROW_TOKENS.has(token) && fillAttr !== '0';
713
+ return { type: mapped, size: 10, filled };
714
+ }
715
+ /**
716
+ * Edge visuals: markers, stroke paints, curvature/corner hints, label style.
717
+ * Everything here PAINTS through LinkStyle — the renderer's own vocabulary —
718
+ * rather than riding as inert metadata.
719
+ */
720
+ function applyEdgeStyle(link, cell, labelCell, labelText, warnings, unmapped) {
721
+ var _a, _b;
722
+ const t = parseStyle(cell.style).tokens;
723
+ const styleBag = {};
724
+ // Markers. endArrow → arrowHead (target), startArrow → arrowTail (source) —
725
+ // draw.io edges run source → target exactly like the engine's links.
726
+ const head = mapArrowToken(t.get('endArrow'), t.get('endFill'), cell.id, 'end', warnings);
727
+ if (head)
728
+ styleBag.arrowHead = head;
729
+ const tail = mapArrowToken(t.get('startArrow'), t.get('startFill'), cell.id, 'start', warnings);
730
+ if (tail && tail.type !== 'none')
731
+ styleBag.arrowTail = tail;
732
+ // Stroke paints.
733
+ const strokeColor = t.get('strokeColor');
734
+ if (strokeColor && strokeColor.toLowerCase() !== 'none')
735
+ styleBag.stroke = strokeColor;
736
+ if (t.get('strokeWidth'))
737
+ styleBag.strokeWidth = num(t.get('strokeWidth'), 1);
738
+ if (t.get('dashed') === '1')
739
+ styleBag.strokeDasharray = '6,4';
740
+ if (t.get('opacity'))
741
+ styleBag.opacity = num(t.get('opacity'), 100) / 100;
742
+ // rounded=1 on an ORTHOGONAL edge = rounded elbows; rounded=0 explicitly
743
+ // asks for hard corners. Absent = the engine's default look. For rounded
744
+ // LINES mxGraph reads arcSize as an absolute diameter (LINE_ARCSIZE
745
+ // fallback), so radius = arcSize / 2.
746
+ if (link.pathType === 'orthogonal') {
747
+ const rounded = t.get('rounded');
748
+ if (rounded === '1') {
749
+ link.setConnector('rounded');
750
+ if (t.get('arcSize'))
751
+ styleBag.cornerRadius = num(t.get('arcSize'), 20) / 2;
752
+ }
753
+ else if (rounded === '0') {
754
+ link.setConnector('straight');
755
+ }
756
+ }
757
+ // Label style: the edge's own fontColor/fontSize, else the label CHILD
758
+ // cell's. Carried on a positioned LinkLabel because that is the label model
759
+ // that owns a style bag (the canonical metadata label is plain text).
760
+ if (labelText) {
761
+ const lt = labelCell ? parseStyle(labelCell.style).tokens : undefined;
762
+ const fontColor = (_a = t.get('fontColor')) !== null && _a !== void 0 ? _a : lt === null || lt === void 0 ? void 0 : lt.get('fontColor');
763
+ const fontSize = (_b = t.get('fontSize')) !== null && _b !== void 0 ? _b : lt === null || lt === void 0 ? void 0 : lt.get('fontSize');
764
+ if (fontColor || fontSize) {
765
+ const labelStyle = {};
766
+ if (fontColor)
767
+ labelStyle.color = fontColor;
768
+ if (fontSize)
769
+ labelStyle.fontSize = num(fontSize, 12);
770
+ link.addLabel({ text: labelText, position: 0.5, style: labelStyle });
771
+ }
772
+ }
773
+ if (Object.keys(styleBag).length > 0) {
774
+ link.style = Object.assign(Object.assign({}, link.style), styleBag);
775
+ }
776
+ }
777
+ /**
778
+ * mxGraph's rounded-rect corner radius, faithfully (mxRectangleShape.paintBackground):
779
+ * absoluteArcSize=1 → r = min(w/2, h/2, arcSize/2) (arcSize is a DIAMETER in px;
780
+ * absent, mxGraph falls back to LINE_ARCSIZE/2 = 10)
781
+ * else → r = min(w,h) · (arcSize/100) (percentage — UNCAPPED,
782
+ * exactly as mxRectangleShape.paintBackground computes it;
783
+ * SVG itself clamps rx at half the side when painting, so
784
+ * capping here would only make the MODEL diverge)
785
+ * No arcSize and no absolute flag keeps the import's classic fixed 8px, which
786
+ * reads as "rounded" at every size (draw.io's own default factor is 15%).
787
+ */
788
+ function roundedCornerRadius(t, width, height) {
789
+ const absolute = t.get('absoluteArcSize') === '1';
790
+ const arc = t.get('arcSize');
791
+ if (arc === undefined && !absolute)
792
+ return 8;
793
+ if (absolute) {
794
+ return Math.min(width / 2, height / 2, num(arc, 20) / 2);
795
+ }
796
+ return Math.min(width, height) * (num(arc, 15) / 100);
797
+ }
798
+ /**
799
+ * draw.io's `labelPosition` / `verticalLabelPosition` place the LABEL BOUNDS
800
+ * completely beside/below the vertex bounds (mxGraph semantics) — the
801
+ * icon-with-caption idiom every stencil library uses
802
+ * (`verticalLabelPosition=bottom;verticalAlign=top` on AWS, Azure, Citrix,
803
+ * network shapes). The engine's node label always paints INSIDE the
804
+ * silhouette, which turned those captions into ink ON the icon — black text
805
+ * on a black laptop stencil is invisible, and a caption on a small icon
806
+ * covers it.
807
+ *
808
+ * Two faithful mappings, no renderer changes:
809
+ * - a free-standing `text;` cell paints nothing but its label, so the offset
810
+ * moves the CELL ITSELF to where the label bounds sit;
811
+ * - a shaped vertex keeps its silhouette and hands its caption to a
812
+ * synthesized borderless text node where the label bounds sit, recorded on
813
+ * BOTH sides (`drawioOutsideLabel` on the icon, `drawioLabelFor` on the
814
+ * caption) so the pairing is data, never a mystery.
815
+ *
816
+ * Returns the synthesized caption node, if one was created.
817
+ */
818
+ function applyOutsideLabelPlacement(node, cell, diagram) {
819
+ var _a;
820
+ const t = parseStyle(cell.style).tokens;
821
+ const h = t.get('labelPosition'); // left | center | right
822
+ const v = t.get('verticalLabelPosition'); // top | middle | bottom
823
+ const horizontal = h === 'left' || h === 'right' ? h : undefined;
824
+ const vertical = v === 'top' || v === 'bottom' ? v : undefined;
825
+ if ((!horizontal && !vertical) || !cell.value)
826
+ return undefined;
827
+ const { width, height } = node.size;
828
+ if (parseStyle(cell.style).first === 'text') {
829
+ // The whole cell IS the label — move it onto the label bounds.
830
+ node.setPosition(node.position.x + (horizontal === 'right' ? width : horizontal === 'left' ? -width : 0), node.position.y + (vertical === 'bottom' ? height : vertical === 'top' ? -height : 0));
831
+ node.setMetadata('drawioOutsideLabel', `${horizontal !== null && horizontal !== void 0 ? horizontal : 'center'}/${vertical !== null && vertical !== void 0 ? vertical : 'middle'}`);
832
+ return undefined;
833
+ }
834
+ const gap = 2;
835
+ // Wide enough for a caption to read without shrink-to-fit crushing it under
836
+ // a narrow icon, and TWO text lines tall INSIDE the renderer's padded inner
837
+ // rect: 8px padding top+bottom (defaultInnerRect) + 2 × 16.8px line height
838
+ // (14px md font × 1.2) ⇒ 50. At 36 only one line fit and every two-word
839
+ // caption ellipsized ("Thin Client" → "Thin…"). The renderer wraps +
840
+ // ellipsizes inside the box.
841
+ const labelW = Math.max(width, 70);
842
+ const labelH = 50;
843
+ const cx = node.position.x + width / 2;
844
+ const cy = node.position.y + height / 2;
845
+ const label = new NodeModel_1.NodeModel({
846
+ id: `${cell.id}__label`,
847
+ type: 'default',
848
+ position: {
849
+ x: cx -
850
+ labelW / 2 +
851
+ (horizontal === 'right'
852
+ ? (width + labelW) / 2 + gap
853
+ : horizontal === 'left'
854
+ ? -((width + labelW) / 2 + gap)
855
+ : 0),
856
+ y: cy -
857
+ labelH / 2 +
858
+ (vertical === 'bottom'
859
+ ? (height + labelH) / 2 + gap
860
+ : vertical === 'top'
861
+ ? -((height + labelH) / 2 + gap)
862
+ : 0),
863
+ },
864
+ size: { width: labelW, height: labelH },
865
+ });
866
+ label.setMetadata('shape', { type: 'rect', fill: 'none', stroke: 'none' });
867
+ label.setMetadata('drawioLabelFor', cell.id);
868
+ if (t.get('fontColor'))
869
+ label.style = Object.assign(Object.assign({}, ((_a = label.style) !== null && _a !== void 0 ? _a : {})), { color: t.get('fontColor') });
870
+ label.setLabel(cell.value);
871
+ diagram.addNode(label);
872
+ node.setLabel('');
873
+ node.setMetadata('drawioOutsideLabel', `${horizontal !== null && horizontal !== void 0 ? horizontal : 'center'}/${vertical !== null && vertical !== void 0 ? vertical : 'middle'}`);
874
+ return label;
875
+ }
876
+ /** Style tokens → metadata.shape (+ typed node.style for the paints the renderer honours). */
877
+ function applyVertexStyle(node, cell, warnings, unmapped) {
878
+ var _a, _b, _c;
879
+ const style = parseStyle(cell.style);
880
+ const t = style.tokens;
881
+ // The shape slot: `shape=X` wins, else the bare leading token, else rect.
882
+ let shape = 'rect';
883
+ let cornerRadius;
884
+ const token = t.get('shape') || (style.first && !t.has('text') ? style.first : undefined);
885
+ if (token && token !== 'rect' && token !== 'rectangle') {
886
+ const mapped = SHAPE_MAP[token];
887
+ if (mapped) {
888
+ shape = mapped;
889
+ }
890
+ else {
891
+ // Inline stencil payloads (`stencil(base64…)`) can be kilobytes — name
892
+ // the loss without flooding the warning list with the whole payload.
893
+ const shown = token.length > 48 ? `${token.slice(0, 45)}…` : token;
894
+ warnings.push(`unknown shape token "${shown}" on cell "${cell.id}"; imported as rect`);
895
+ }
896
+ }
897
+ if (t.get('rounded') === '1' && shape === 'rect') {
898
+ cornerRadius = roundedCornerRadius(t, ((_a = cell.geometry) === null || _a === void 0 ? void 0 : _a.width) || 100, ((_b = cell.geometry) === null || _b === void 0 ? void 0 : _b.height) || 50);
899
+ }
900
+ const shapeMeta = { type: shape };
901
+ if (cornerRadius !== undefined)
902
+ shapeMeta['cornerRadius'] = cornerRadius;
903
+ if (t.get('fillColor'))
904
+ shapeMeta['fill'] = t.get('fillColor');
905
+ if (t.get('strokeColor'))
906
+ shapeMeta['stroke'] = t.get('strokeColor');
907
+ if (t.get('strokeWidth'))
908
+ shapeMeta['strokeWidth'] = num(t.get('strokeWidth'), 1);
909
+ // A `text` style cell is a free-standing LABEL, not a box: no fill, no border.
910
+ if (t.has('text')) {
911
+ shapeMeta['fill'] = 'none';
912
+ shapeMeta['stroke'] = 'none';
913
+ }
914
+ node.setMetadata('shape', shapeMeta);
915
+ // Paints the typed style bag expresses directly — these actually PAINT
916
+ // (style-cascade honours node.style), rather than riding as inert data.
917
+ const styleBag = {};
918
+ if (t.get('dashed') === '1')
919
+ styleBag['strokeDasharray'] = '6,4';
920
+ if (t.get('fontColor'))
921
+ styleBag['color'] = t.get('fontColor');
922
+ if (t.get('opacity'))
923
+ styleBag['opacity'] = num(t.get('opacity'), 100) / 100;
924
+ if (Object.keys(styleBag).length > 0) {
925
+ node.style = Object.assign(Object.assign({}, ((_c = node.style) !== null && _c !== void 0 ? _c : {})), styleBag);
926
+ }
927
+ collectUnmappedStyleKeys(cell.style, unmapped);
928
+ }
929
+ /** Aggregate the style keys the importer does not consume — one deduped warning per import. */
930
+ function collectUnmappedStyleKeys(styleString, into) {
931
+ const { tokens, first } = parseStyle(styleString);
932
+ for (const key of tokens.keys()) {
933
+ if (CONSUMED_STYLE_KEYS.has(key))
934
+ continue;
935
+ if (key === first)
936
+ continue; // the shape slot is handled (mapped or warned) above
937
+ into.add(key);
938
+ }
939
+ }
940
+ //# sourceMappingURL=importDrawio.js.map