jekyll-ham 1.0.4 → 1.1.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (366) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +11 -2
  3. data/_layouts/default.html +6 -0
  4. data/_layouts/page.html +1 -1
  5. data/assets/mermaid/Diagram.d.ts +33 -0
  6. data/assets/mermaid/Tableau10-31042135.js +10 -0
  7. data/assets/mermaid/Tableau10-558cc280.js +9 -0
  8. data/assets/mermaid/__mocks__/mermaidAPI.d.ts +13 -0
  9. data/assets/mermaid/accessibility.d.ts +27 -0
  10. data/assets/mermaid/accessibility.spec.d.ts +1 -0
  11. data/assets/mermaid/arc-c0f908ab.js +148 -0
  12. data/assets/mermaid/arc-d1f6357e.js +86 -0
  13. data/assets/mermaid/array-2ff2c7a6.js +6 -0
  14. data/assets/mermaid/array-b7dcf730.js +6 -0
  15. data/assets/mermaid/assignWithDepth.d.ts +30 -0
  16. data/assets/mermaid/blockDiagram-5dc23a45.js +1230 -0
  17. data/assets/mermaid/blockDiagram-9f4a6865.js +1822 -0
  18. data/assets/mermaid/blockDiagram-efe38566.js +1818 -0
  19. data/assets/mermaid/c4Diagram-1e775db3.js +1579 -0
  20. data/assets/mermaid/c4Diagram-ae766693.js +2473 -0
  21. data/assets/mermaid/c4Diagram-af207393.js +2463 -0
  22. data/assets/mermaid/channel-ebbc4130.js +5 -0
  23. data/assets/mermaid/channel-f9001828.js +8 -0
  24. data/assets/mermaid/classDiagram-72b9c71d.js +356 -0
  25. data/assets/mermaid/classDiagram-f52caa06.js +220 -0
  26. data/assets/mermaid/classDiagram-fb54d2a0.js +363 -0
  27. data/assets/mermaid/classDiagram-v2-640c694e.js +206 -0
  28. data/assets/mermaid/classDiagram-v2-a2b738ad.js +298 -0
  29. data/assets/mermaid/classDiagram-v2-fedb80f6.js +290 -0
  30. data/assets/mermaid/clone-9ea6bfeb.js +8 -0
  31. data/assets/mermaid/clone-afc2f047.js +8 -0
  32. data/assets/mermaid/config.d.ts +98 -0
  33. data/assets/mermaid/config.spec.d.ts +1 -0
  34. data/assets/mermaid/config.type.d.ts +1534 -0
  35. data/assets/mermaid/createText-03b82060.js +2966 -0
  36. data/assets/mermaid/createText-b70fe78a.js +4929 -0
  37. data/assets/mermaid/createText-ca0c5216.js +251 -0
  38. data/assets/mermaid/dagre-wrapper/blockArrowHelper.d.ts +8 -0
  39. data/assets/mermaid/dagre-wrapper/clusters.d.ts +4 -0
  40. data/assets/mermaid/dagre-wrapper/createLabel.d.ts +9 -0
  41. data/assets/mermaid/dagre-wrapper/edgeMarker.d.ts +12 -0
  42. data/assets/mermaid/dagre-wrapper/edgeMarker.spec.d.ts +1 -0
  43. data/assets/mermaid/dagre-wrapper/edges.d.ts +14 -0
  44. data/assets/mermaid/dagre-wrapper/index.d.ts +1 -0
  45. data/assets/mermaid/dagre-wrapper/intersect/index.d.ts +13 -0
  46. data/assets/mermaid/dagre-wrapper/intersect/intersect-circle.d.ts +10 -0
  47. data/assets/mermaid/dagre-wrapper/intersect/intersect-ellipse.d.ts +11 -0
  48. data/assets/mermaid/dagre-wrapper/intersect/intersect-line.d.ts +13 -0
  49. data/assets/mermaid/dagre-wrapper/intersect/intersect-node.d.ts +6 -0
  50. data/assets/mermaid/dagre-wrapper/intersect/intersect-polygon.d.ts +10 -0
  51. data/assets/mermaid/dagre-wrapper/intersect/intersect-rect.d.ts +5 -0
  52. data/assets/mermaid/dagre-wrapper/markers.d.ts +2 -0
  53. data/assets/mermaid/dagre-wrapper/mermaid-graphlib.d.ts +8 -0
  54. data/assets/mermaid/dagre-wrapper/nodes.d.ts +4 -0
  55. data/assets/mermaid/dagre-wrapper/shapes/note.d.ts +2 -0
  56. data/assets/mermaid/dagre-wrapper/shapes/util.d.ts +14 -0
  57. data/assets/mermaid/defaultConfig.d.ts +12 -0
  58. data/assets/mermaid/diagram-api/comments.d.ts +6 -0
  59. data/assets/mermaid/diagram-api/comments.spec.d.ts +1 -0
  60. data/assets/mermaid/diagram-api/detectType.d.ts +42 -0
  61. data/assets/mermaid/diagram-api/diagram-orchestration.d.ts +1 -0
  62. data/assets/mermaid/diagram-api/diagram-orchestration.spec.d.ts +1 -0
  63. data/assets/mermaid/diagram-api/diagramAPI.d.ts +31 -0
  64. data/assets/mermaid/diagram-api/diagramAPI.spec.d.ts +1 -0
  65. data/assets/mermaid/diagram-api/frontmatter.d.ts +18 -0
  66. data/assets/mermaid/diagram-api/frontmatter.spec.d.ts +1 -0
  67. data/assets/mermaid/diagram-api/loadDiagram.d.ts +1 -0
  68. data/assets/mermaid/diagram-api/regexes.d.ts +3 -0
  69. data/assets/mermaid/diagram-api/types.d.ts +84 -0
  70. data/assets/mermaid/diagram.spec.d.ts +1 -0
  71. data/assets/mermaid/diagrams/block/blockDB.d.ts +54 -0
  72. data/assets/mermaid/diagrams/block/blockDetector.d.ts +3 -0
  73. data/assets/mermaid/diagrams/block/blockDiagram.d.ts +2 -0
  74. data/assets/mermaid/diagrams/block/blockRenderer.d.ts +15 -0
  75. data/assets/mermaid/diagrams/block/blockTypes.d.ts +36 -0
  76. data/assets/mermaid/diagrams/block/blockUtils.d.ts +1 -0
  77. data/assets/mermaid/diagrams/block/layout.d.ts +13 -0
  78. data/assets/mermaid/diagrams/block/layout.spec.d.ts +1 -0
  79. data/assets/mermaid/diagrams/block/parser/block.spec.d.ts +1 -0
  80. data/assets/mermaid/diagrams/block/renderHelpers.d.ts +10 -0
  81. data/assets/mermaid/diagrams/block/styles.d.ts +18 -0
  82. data/assets/mermaid/diagrams/c4/c4Db.d.ts +127 -0
  83. data/assets/mermaid/diagrams/c4/c4Detector.d.ts +3 -0
  84. data/assets/mermaid/diagrams/c4/c4Diagram.d.ts +2 -0
  85. data/assets/mermaid/diagrams/c4/c4Renderer.d.ts +12 -0
  86. data/assets/mermaid/diagrams/c4/styles.d.ts +2 -0
  87. data/assets/mermaid/diagrams/c4/svgDraw.d.ts +36 -0
  88. data/assets/mermaid/diagrams/class/classDb.d.ts +144 -0
  89. data/assets/mermaid/diagrams/class/classDetector-V2.d.ts +3 -0
  90. data/assets/mermaid/diagrams/class/classDetector.d.ts +3 -0
  91. data/assets/mermaid/diagrams/class/classDiagram-v2.d.ts +2 -0
  92. data/assets/mermaid/diagrams/class/classDiagram.d.ts +2 -0
  93. data/assets/mermaid/diagrams/class/classDiagram.spec.d.ts +1 -0
  94. data/assets/mermaid/diagrams/class/classRenderer-v2.d.ts +57 -0
  95. data/assets/mermaid/diagrams/class/classRenderer.d.ts +5 -0
  96. data/assets/mermaid/diagrams/class/classTypes.d.ts +78 -0
  97. data/assets/mermaid/diagrams/class/classTypes.spec.d.ts +1 -0
  98. data/assets/mermaid/diagrams/class/styles.d.ts +2 -0
  99. data/assets/mermaid/diagrams/class/svgDraw.d.ts +25 -0
  100. data/assets/mermaid/diagrams/common/common.d.ts +110 -0
  101. data/assets/mermaid/diagrams/common/common.spec.d.ts +1 -0
  102. data/assets/mermaid/diagrams/common/commonDb.d.ts +7 -0
  103. data/assets/mermaid/diagrams/common/commonTypes.d.ts +51 -0
  104. data/assets/mermaid/diagrams/common/svgDrawCommon.d.ts +15 -0
  105. data/assets/mermaid/diagrams/er/erDb.d.ts +49 -0
  106. data/assets/mermaid/diagrams/er/erDetector.d.ts +3 -0
  107. data/assets/mermaid/diagrams/er/erDiagram.d.ts +34 -0
  108. data/assets/mermaid/diagrams/er/erMarkers.d.ts +24 -0
  109. data/assets/mermaid/diagrams/er/erRenderer.d.ts +19 -0
  110. data/assets/mermaid/diagrams/er/erRenderer.spec.d.ts +1 -0
  111. data/assets/mermaid/diagrams/er/styles.d.ts +2 -0
  112. data/assets/mermaid/diagrams/error/errorDiagram.d.ts +3 -0
  113. data/assets/mermaid/diagrams/error/errorRenderer.d.ts +12 -0
  114. data/assets/mermaid/diagrams/flowchart/elk/detector.d.ts +3 -0
  115. data/assets/mermaid/diagrams/flowchart/elk/detector.spec.d.ts +1 -0
  116. data/assets/mermaid/diagrams/flowchart/elk/flowRenderer-elk.d.ts +10 -0
  117. data/assets/mermaid/diagrams/flowchart/elk/flowchart-elk-definition.d.ts +10 -0
  118. data/assets/mermaid/diagrams/flowchart/elk/render-utils.d.ts +5 -0
  119. data/assets/mermaid/diagrams/flowchart/elk/render-utils.spec.d.ts +1 -0
  120. data/assets/mermaid/diagrams/flowchart/elk/styles.d.ts +19 -0
  121. data/assets/mermaid/diagrams/flowchart/flowChartShapes.d.ts +9 -0
  122. data/assets/mermaid/diagrams/flowchart/flowDb.d.ts +87 -0
  123. data/assets/mermaid/diagrams/flowchart/flowDetector-v2.d.ts +3 -0
  124. data/assets/mermaid/diagrams/flowchart/flowDetector.d.ts +3 -0
  125. data/assets/mermaid/diagrams/flowchart/flowDiagram-v2.d.ts +57 -0
  126. data/assets/mermaid/diagrams/flowchart/flowDiagram.d.ts +57 -0
  127. data/assets/mermaid/diagrams/flowchart/flowRenderer-v2.d.ts +13 -0
  128. data/assets/mermaid/diagrams/flowchart/flowRenderer.d.ts +13 -0
  129. data/assets/mermaid/diagrams/flowchart/styles.d.ts +18 -0
  130. data/assets/mermaid/diagrams/gantt/ganttDb.d.ts +106 -0
  131. data/assets/mermaid/diagrams/gantt/ganttDb.spec.d.ts +1 -0
  132. data/assets/mermaid/diagrams/gantt/ganttDetector.d.ts +3 -0
  133. data/assets/mermaid/diagrams/gantt/ganttDiagram.d.ts +2 -0
  134. data/assets/mermaid/diagrams/gantt/ganttRenderer.d.ts +7 -0
  135. data/assets/mermaid/diagrams/gantt/styles.d.ts +2 -0
  136. data/assets/mermaid/diagrams/git/gitGraphAst.d.ts +61 -0
  137. data/assets/mermaid/diagrams/git/gitGraphDetector.d.ts +3 -0
  138. data/assets/mermaid/diagrams/git/gitGraphDiagram.d.ts +2 -0
  139. data/assets/mermaid/diagrams/git/gitGraphRenderer.d.ts +5 -0
  140. data/assets/mermaid/diagrams/git/styles.d.ts +2 -0
  141. data/assets/mermaid/diagrams/info/info.spec.d.ts +1 -0
  142. data/assets/mermaid/diagrams/info/infoDb.d.ts +5 -0
  143. data/assets/mermaid/diagrams/info/infoDetector.d.ts +2 -0
  144. data/assets/mermaid/diagrams/info/infoDiagram.d.ts +2 -0
  145. data/assets/mermaid/diagrams/info/infoRenderer.d.ts +4 -0
  146. data/assets/mermaid/diagrams/info/infoTypes.d.ts +9 -0
  147. data/assets/mermaid/diagrams/mindmap/detector.d.ts +3 -0
  148. data/assets/mermaid/diagrams/mindmap/mindmap-definition.d.ts +2 -0
  149. data/assets/mermaid/diagrams/mindmap/mindmap.spec.d.ts +1 -0
  150. data/assets/mermaid/diagrams/mindmap/mindmapDb.d.ts +30 -0
  151. data/assets/mermaid/diagrams/mindmap/mindmapRenderer.d.ts +21 -0
  152. data/assets/mermaid/diagrams/mindmap/mindmapTypes.d.ts +20 -0
  153. data/assets/mermaid/diagrams/mindmap/styles.d.ts +3 -0
  154. data/assets/mermaid/diagrams/mindmap/svgDraw.d.ts +13 -0
  155. data/assets/mermaid/diagrams/pie/pie.spec.d.ts +1 -0
  156. data/assets/mermaid/diagrams/pie/pieDb.d.ts +6 -0
  157. data/assets/mermaid/diagrams/pie/pieDetector.d.ts +2 -0
  158. data/assets/mermaid/diagrams/pie/pieDiagram.d.ts +2 -0
  159. data/assets/mermaid/diagrams/pie/pieRenderer.d.ts +13 -0
  160. data/assets/mermaid/diagrams/pie/pieStyles.d.ts +3 -0
  161. data/assets/mermaid/diagrams/pie/pieTypes.d.ts +53 -0
  162. data/assets/mermaid/diagrams/quadrant-chart/parser/quadrant.jison.spec.d.ts +1 -0
  163. data/assets/mermaid/diagrams/quadrant-chart/quadrantBuilder.d.ts +118 -0
  164. data/assets/mermaid/diagrams/quadrant-chart/quadrantDb.d.ts +38 -0
  165. data/assets/mermaid/diagrams/quadrant-chart/quadrantDetector.d.ts +3 -0
  166. data/assets/mermaid/diagrams/quadrant-chart/quadrantDiagram.d.ts +2 -0
  167. data/assets/mermaid/diagrams/quadrant-chart/quadrantRenderer.d.ts +6 -0
  168. data/assets/mermaid/diagrams/requirement/requirementDb.d.ts +70 -0
  169. data/assets/mermaid/diagrams/requirement/requirementDetector.d.ts +3 -0
  170. data/assets/mermaid/diagrams/requirement/requirementDiagram.d.ts +2 -0
  171. data/assets/mermaid/diagrams/requirement/requirementMarkers.d.ts +10 -0
  172. data/assets/mermaid/diagrams/requirement/requirementRenderer.d.ts +7 -0
  173. data/assets/mermaid/diagrams/requirement/styles.d.ts +2 -0
  174. data/assets/mermaid/diagrams/sankey/parser/sankey.spec.d.ts +1 -0
  175. data/assets/mermaid/diagrams/sankey/sankeyDB.d.ts +36 -0
  176. data/assets/mermaid/diagrams/sankey/sankeyDetector.d.ts +3 -0
  177. data/assets/mermaid/diagrams/sankey/sankeyDiagram.d.ts +2 -0
  178. data/assets/mermaid/diagrams/sankey/sankeyRenderer.d.ts +14 -0
  179. data/assets/mermaid/diagrams/sankey/sankeyUtils.d.ts +1 -0
  180. data/assets/mermaid/diagrams/sequence/sequenceDb.d.ts +153 -0
  181. data/assets/mermaid/diagrams/sequence/sequenceDetector.d.ts +3 -0
  182. data/assets/mermaid/diagrams/sequence/sequenceDiagram.d.ts +2 -0
  183. data/assets/mermaid/diagrams/sequence/sequenceRenderer.d.ts +202 -0
  184. data/assets/mermaid/diagrams/sequence/styles.d.ts +2 -0
  185. data/assets/mermaid/diagrams/sequence/svgDraw.d.ts +73 -0
  186. data/assets/mermaid/diagrams/state/id-cache.d.ts +11 -0
  187. data/assets/mermaid/diagrams/state/shapes.d.ts +14 -0
  188. data/assets/mermaid/diagrams/state/stateCommon.d.ts +22 -0
  189. data/assets/mermaid/diagrams/state/stateDb.d.ts +91 -0
  190. data/assets/mermaid/diagrams/state/stateDetector-V2.d.ts +3 -0
  191. data/assets/mermaid/diagrams/state/stateDetector.d.ts +3 -0
  192. data/assets/mermaid/diagrams/state/stateDiagram-v2.d.ts +2 -0
  193. data/assets/mermaid/diagrams/state/stateDiagram.d.ts +2 -0
  194. data/assets/mermaid/diagrams/state/stateRenderer-v2.d.ts +20 -0
  195. data/assets/mermaid/diagrams/state/stateRenderer.d.ts +7 -0
  196. data/assets/mermaid/diagrams/state/styles.d.ts +2 -0
  197. data/assets/mermaid/diagrams/timeline/detector.d.ts +3 -0
  198. data/assets/mermaid/diagrams/timeline/styles.d.ts +2 -0
  199. data/assets/mermaid/diagrams/timeline/svgDraw.d.ts +46 -0
  200. data/assets/mermaid/diagrams/timeline/timeline-definition.d.ts +10 -0
  201. data/assets/mermaid/diagrams/timeline/timelineDb.d.ts +20 -0
  202. data/assets/mermaid/diagrams/timeline/timelineRenderer.d.ts +19 -0
  203. data/assets/mermaid/diagrams/user-journey/journeyDb.d.ts +30 -0
  204. data/assets/mermaid/diagrams/user-journey/journeyDetector.d.ts +3 -0
  205. data/assets/mermaid/diagrams/user-journey/journeyDiagram.d.ts +2 -0
  206. data/assets/mermaid/diagrams/user-journey/journeyRenderer.d.ts +30 -0
  207. data/assets/mermaid/diagrams/user-journey/styles.d.ts +2 -0
  208. data/assets/mermaid/diagrams/user-journey/svgDraw.d.ts +20 -0
  209. data/assets/mermaid/diagrams/xychart/chartBuilder/components/axis/bandAxis.d.ts +12 -0
  210. data/assets/mermaid/diagrams/xychart/chartBuilder/components/axis/baseAxis.d.ts +38 -0
  211. data/assets/mermaid/diagrams/xychart/chartBuilder/components/axis/index.d.ts +12 -0
  212. data/assets/mermaid/diagrams/xychart/chartBuilder/components/axis/linearAxis.d.ts +11 -0
  213. data/assets/mermaid/diagrams/xychart/chartBuilder/components/chartTitle.d.ts +16 -0
  214. data/assets/mermaid/diagrams/xychart/chartBuilder/components/plot/barPlot.d.ts +12 -0
  215. data/assets/mermaid/diagrams/xychart/chartBuilder/components/plot/index.d.ts +20 -0
  216. data/assets/mermaid/diagrams/xychart/chartBuilder/components/plot/linePlot.d.ts +11 -0
  217. data/assets/mermaid/diagrams/xychart/chartBuilder/index.d.ts +5 -0
  218. data/assets/mermaid/diagrams/xychart/chartBuilder/interfaces.d.ts +132 -0
  219. data/assets/mermaid/diagrams/xychart/chartBuilder/orchestrator.d.ts +12 -0
  220. data/assets/mermaid/diagrams/xychart/chartBuilder/textDimensionCalculator.d.ts +10 -0
  221. data/assets/mermaid/diagrams/xychart/parser/xychart.jison.spec.d.ts +1 -0
  222. data/assets/mermaid/diagrams/xychart/xychartDb.d.ts +40 -0
  223. data/assets/mermaid/diagrams/xychart/xychartDetector.d.ts +3 -0
  224. data/assets/mermaid/diagrams/xychart/xychartDiagram.d.ts +2 -0
  225. data/assets/mermaid/diagrams/xychart/xychartRenderer.d.ts +6 -0
  226. data/assets/mermaid/docs/vite.config.d.ts +2 -0
  227. data/assets/mermaid/edges-066a5561.js +1840 -0
  228. data/assets/mermaid/edges-16357fde.js +1083 -0
  229. data/assets/mermaid/edges-ce5cfb7c.js +1840 -0
  230. data/assets/mermaid/erDiagram-09d1c15f.js +1176 -0
  231. data/assets/mermaid/erDiagram-543717f2.js +1321 -0
  232. data/assets/mermaid/erDiagram-c7ff1bec.js +931 -0
  233. data/assets/mermaid/errors.d.ts +3 -0
  234. data/assets/mermaid/flowDb-9a89ea33.js +1126 -0
  235. data/assets/mermaid/flowDb-ba9bd7fa.js +1713 -0
  236. data/assets/mermaid/flowDb-c1833063.js +1714 -0
  237. data/assets/mermaid/flowDiagram-aadb13b0.js +797 -0
  238. data/assets/mermaid/flowDiagram-b222e15a.js +614 -0
  239. data/assets/mermaid/flowDiagram-b5e7ba30.js +1278 -0
  240. data/assets/mermaid/flowDiagram-v2-13329dc7.js +40 -0
  241. data/assets/mermaid/flowDiagram-v2-54711e03.js +32 -0
  242. data/assets/mermaid/flowDiagram-v2-f2119625.js +25 -0
  243. data/assets/mermaid/flowchart-elk-definition-2d49707c.js +93397 -0
  244. data/assets/mermaid/flowchart-elk-definition-ae0efee6.js +814 -0
  245. data/assets/mermaid/flowchart-elk-definition-cf813a97.js +48407 -0
  246. data/assets/mermaid/ganttDiagram-12cf43db.js +3445 -0
  247. data/assets/mermaid/ganttDiagram-3c2fde2b.js +2501 -0
  248. data/assets/mermaid/ganttDiagram-b62c793e.js +2061 -0
  249. data/assets/mermaid/gitGraphDiagram-942e62fe.js +1800 -0
  250. data/assets/mermaid/gitGraphDiagram-b9392a12.js +1790 -0
  251. data/assets/mermaid/gitGraphDiagram-c3a0619c.js +1264 -0
  252. data/assets/mermaid/graph-0ee63739.js +881 -0
  253. data/assets/mermaid/graph-fe24fab6.js +1285 -0
  254. data/assets/mermaid/index-01f381cb.js +622 -0
  255. data/assets/mermaid/index-bb6d8841.js +373 -0
  256. data/assets/mermaid/index-fc479858.js +663 -0
  257. data/assets/mermaid/infoDiagram-2f5c50c0.js +319 -0
  258. data/assets/mermaid/infoDiagram-94cd232f.js +520 -0
  259. data/assets/mermaid/infoDiagram-d0d5c9bd.js +510 -0
  260. data/assets/mermaid/init-cc95ec8e.js +16 -0
  261. data/assets/mermaid/init-f9637058.js +16 -0
  262. data/assets/mermaid/interactionDb.d.ts +2 -0
  263. data/assets/mermaid/journeyDiagram-14fe341a.js +804 -0
  264. data/assets/mermaid/journeyDiagram-6625b456.js +1191 -0
  265. data/assets/mermaid/journeyDiagram-b56e6921.js +1183 -0
  266. data/assets/mermaid/katex-d90b6d29.js +11624 -0
  267. data/assets/mermaid/katex-ffb0e8f1.js +14432 -0
  268. data/assets/mermaid/layout-163b9689.js +2314 -0
  269. data/assets/mermaid/layout-fd473db2.js +1536 -0
  270. data/assets/mermaid/line-24d93f1b.js +34 -0
  271. data/assets/mermaid/line-87f517ef.js +50 -0
  272. data/assets/mermaid/linear-0ad15847.js +595 -0
  273. data/assets/mermaid/linear-9bcf74c4.js +447 -0
  274. data/assets/mermaid/logger.d.ts +9 -0
  275. data/assets/mermaid/mermaid-6dc72991.js +6461 -0
  276. data/assets/mermaid/mermaid-9f2aa176.js +8112 -0
  277. data/assets/mermaid/mermaid-dcacb631.js +12793 -0
  278. data/assets/mermaid/mermaid.core.mjs +14 -0
  279. data/assets/mermaid/mermaid.d.ts +146 -0
  280. data/assets/mermaid/mermaid.esm.min.mjs +4 -0
  281. data/assets/mermaid/mermaid.esm.mjs +4 -0
  282. data/assets/mermaid/mermaid.js +195755 -0
  283. data/assets/mermaid/mermaid.min.js +2029 -0
  284. data/assets/mermaid/mermaid.spec.d.ts +1 -0
  285. data/assets/mermaid/mermaidAPI.d.ts +170 -0
  286. data/assets/mermaid/mermaidAPI.spec.d.ts +1 -0
  287. data/assets/mermaid/mindmap-definition-307c710a.js +1177 -0
  288. data/assets/mermaid/mindmap-definition-696ddea4.js +32342 -0
  289. data/assets/mermaid/mindmap-definition-9399c7e6.js +18760 -0
  290. data/assets/mermaid/ordinal-475e0c0c.js +82 -0
  291. data/assets/mermaid/ordinal-5695958c.js +65 -0
  292. data/assets/mermaid/path-39bad7e2.js +118 -0
  293. data/assets/mermaid/path-428ebac9.js +91 -0
  294. data/assets/mermaid/pieDiagram-828dae43.js +502 -0
  295. data/assets/mermaid/pieDiagram-bb1d19e5.js +722 -0
  296. data/assets/mermaid/pieDiagram-e854eaf0.js +772 -0
  297. data/assets/mermaid/preprocess.d.ts +10 -0
  298. data/assets/mermaid/quadrantDiagram-25a9848b.js +1199 -0
  299. data/assets/mermaid/quadrantDiagram-5fa00455.js +904 -0
  300. data/assets/mermaid/quadrantDiagram-c759a472.js +1207 -0
  301. data/assets/mermaid/rendering-util/createText.d.ts +11 -0
  302. data/assets/mermaid/rendering-util/handle-markdown-text.d.ts +6 -0
  303. data/assets/mermaid/rendering-util/handle-markdown-text.spec.d.ts +1 -0
  304. data/assets/mermaid/rendering-util/selectSvgElement.d.ts +8 -0
  305. data/assets/mermaid/rendering-util/splitText.d.ts +24 -0
  306. data/assets/mermaid/rendering-util/splitText.spec.d.ts +1 -0
  307. data/assets/mermaid/rendering-util/uid.d.ts +8 -0
  308. data/assets/mermaid/requirementDiagram-03163dc4.js +769 -0
  309. data/assets/mermaid/requirementDiagram-87253d64.js +1098 -0
  310. data/assets/mermaid/requirementDiagram-a721e157.js +1091 -0
  311. data/assets/mermaid/sankeyDiagram-33525efb.js +1198 -0
  312. data/assets/mermaid/sankeyDiagram-52ec8976.js +818 -0
  313. data/assets/mermaid/sankeyDiagram-707fac0f.js +660 -0
  314. data/assets/mermaid/sequenceDiagram-6894f283.js +3346 -0
  315. data/assets/mermaid/sequenceDiagram-9813c129.js +3336 -0
  316. data/assets/mermaid/sequenceDiagram-b517d154.js +2234 -0
  317. data/assets/mermaid/setupGraphViewbox.d.ts +3 -0
  318. data/assets/mermaid/stateDiagram-5dee940d.js +474 -0
  319. data/assets/mermaid/stateDiagram-5ec31577.js +467 -0
  320. data/assets/mermaid/stateDiagram-fca82b5b.js +275 -0
  321. data/assets/mermaid/stateDiagram-v2-1992cada.js +333 -0
  322. data/assets/mermaid/stateDiagram-v2-992e82a1.js +325 -0
  323. data/assets/mermaid/stateDiagram-v2-ed04200a.js +190 -0
  324. data/assets/mermaid/styles-0784dbeb.js +1363 -0
  325. data/assets/mermaid/styles-11e81fdd.js +1089 -0
  326. data/assets/mermaid/styles-36a1a2e8.js +1483 -0
  327. data/assets/mermaid/styles-483fbfea.js +509 -0
  328. data/assets/mermaid/styles-727cdd61.js +571 -0
  329. data/assets/mermaid/styles-b83b31c9.js +1484 -0
  330. data/assets/mermaid/styles-cacbff60.js +960 -0
  331. data/assets/mermaid/styles-e75131e4.js +433 -0
  332. data/assets/mermaid/styles-f80da881.js +1363 -0
  333. data/assets/mermaid/styles.d.ts +12 -0
  334. data/assets/mermaid/styles.spec.d.ts +1 -0
  335. data/assets/mermaid/svgDrawCommon-5e1cfd1d.js +101 -0
  336. data/assets/mermaid/svgDrawCommon-d6ab583c.js +100 -0
  337. data/assets/mermaid/svgDrawCommon-ecc5f780.js +64 -0
  338. data/assets/mermaid/tests/MockedD3.d.ts +45 -0
  339. data/assets/mermaid/tests/setup.d.ts +1 -0
  340. data/assets/mermaid/tests/util.d.ts +3 -0
  341. data/assets/mermaid/themes/erDiagram-oldHardcodedValues.d.ts +7 -0
  342. data/assets/mermaid/themes/index.d.ts +24 -0
  343. data/assets/mermaid/themes/theme-base.d.ts +189 -0
  344. data/assets/mermaid/themes/theme-dark.d.ts +177 -0
  345. data/assets/mermaid/themes/theme-default.d.ts +188 -0
  346. data/assets/mermaid/themes/theme-forest.d.ts +185 -0
  347. data/assets/mermaid/themes/theme-helpers.d.ts +1 -0
  348. data/assets/mermaid/themes/theme-neutral.d.ts +182 -0
  349. data/assets/mermaid/timeline-definition-23ce0e2e.js +1211 -0
  350. data/assets/mermaid/timeline-definition-4ee9bff4.js +795 -0
  351. data/assets/mermaid/timeline-definition-bf702344.js +1219 -0
  352. data/assets/mermaid/types.d.ts +31 -0
  353. data/assets/mermaid/utils/imperativeState.d.ts +32 -0
  354. data/assets/mermaid/utils/imperativeState.spec.d.ts +1 -0
  355. data/assets/mermaid/utils/lineWithOffset.d.ts +5 -0
  356. data/assets/mermaid/utils/sanitizeDirective.d.ts +7 -0
  357. data/assets/mermaid/utils/subGraphTitleMargins.d.ts +8 -0
  358. data/assets/mermaid/utils/subGraphTitleMargins.spec.d.ts +1 -0
  359. data/assets/mermaid/utils.d.ts +286 -0
  360. data/assets/mermaid/utils.spec.d.ts +1 -0
  361. data/assets/mermaid/xychartDiagram-de2e5521.js +1800 -0
  362. data/assets/mermaid/xychartDiagram-e5e6b652.js +1284 -0
  363. data/assets/mermaid/xychartDiagram-f11f50a6.js +1745 -0
  364. data/assets/tables.css +23 -0
  365. data/assets/toURI.js +142 -0
  366. metadata +363 -2
@@ -0,0 +1,1083 @@
1
+ import { l as g, p as H, c as b, b7 as Q, j as B, d as q, A as j, F as lt } from "./mermaid-9f2aa176.js";
2
+ import { a as st } from "./createText-03b82060.js";
3
+ import { l as ct } from "./line-24d93f1b.js";
4
+ const ht = (e, t, a, i) => {
5
+ t.forEach((l) => {
6
+ wt[l](e, a, i);
7
+ });
8
+ }, ot = (e, t, a) => {
9
+ g.trace("Making markers for ", a), e.append("defs").append("marker").attr("id", a + "_" + t + "-extensionStart").attr("class", "marker extension " + t).attr("refX", 18).attr("refY", 7).attr("markerWidth", 190).attr("markerHeight", 240).attr("orient", "auto").append("path").attr("d", "M 1,7 L18,13 V 1 Z"), e.append("defs").append("marker").attr("id", a + "_" + t + "-extensionEnd").attr("class", "marker extension " + t).attr("refX", 1).attr("refY", 7).attr("markerWidth", 20).attr("markerHeight", 28).attr("orient", "auto").append("path").attr("d", "M 1,1 V 13 L18,7 Z");
10
+ }, yt = (e, t, a) => {
11
+ e.append("defs").append("marker").attr("id", a + "_" + t + "-compositionStart").attr("class", "marker composition " + t).attr("refX", 18).attr("refY", 7).attr("markerWidth", 190).attr("markerHeight", 240).attr("orient", "auto").append("path").attr("d", "M 18,7 L9,13 L1,7 L9,1 Z"), e.append("defs").append("marker").attr("id", a + "_" + t + "-compositionEnd").attr("class", "marker composition " + t).attr("refX", 1).attr("refY", 7).attr("markerWidth", 20).attr("markerHeight", 28).attr("orient", "auto").append("path").attr("d", "M 18,7 L9,13 L1,7 L9,1 Z");
12
+ }, ft = (e, t, a) => {
13
+ e.append("defs").append("marker").attr("id", a + "_" + t + "-aggregationStart").attr("class", "marker aggregation " + t).attr("refX", 18).attr("refY", 7).attr("markerWidth", 190).attr("markerHeight", 240).attr("orient", "auto").append("path").attr("d", "M 18,7 L9,13 L1,7 L9,1 Z"), e.append("defs").append("marker").attr("id", a + "_" + t + "-aggregationEnd").attr("class", "marker aggregation " + t).attr("refX", 1).attr("refY", 7).attr("markerWidth", 20).attr("markerHeight", 28).attr("orient", "auto").append("path").attr("d", "M 18,7 L9,13 L1,7 L9,1 Z");
14
+ }, pt = (e, t, a) => {
15
+ e.append("defs").append("marker").attr("id", a + "_" + t + "-dependencyStart").attr("class", "marker dependency " + t).attr("refX", 6).attr("refY", 7).attr("markerWidth", 190).attr("markerHeight", 240).attr("orient", "auto").append("path").attr("d", "M 5,7 L9,13 L1,7 L9,1 Z"), e.append("defs").append("marker").attr("id", a + "_" + t + "-dependencyEnd").attr("class", "marker dependency " + t).attr("refX", 13).attr("refY", 7).attr("markerWidth", 20).attr("markerHeight", 28).attr("orient", "auto").append("path").attr("d", "M 18,7 L9,13 L14,7 L9,1 Z");
16
+ }, dt = (e, t, a) => {
17
+ e.append("defs").append("marker").attr("id", a + "_" + t + "-lollipopStart").attr("class", "marker lollipop " + t).attr("refX", 13).attr("refY", 7).attr("markerWidth", 190).attr("markerHeight", 240).attr("orient", "auto").append("circle").attr("stroke", "black").attr("fill", "transparent").attr("cx", 7).attr("cy", 7).attr("r", 6), e.append("defs").append("marker").attr("id", a + "_" + t + "-lollipopEnd").attr("class", "marker lollipop " + t).attr("refX", 1).attr("refY", 7).attr("markerWidth", 190).attr("markerHeight", 240).attr("orient", "auto").append("circle").attr("stroke", "black").attr("fill", "transparent").attr("cx", 7).attr("cy", 7).attr("r", 6);
18
+ }, xt = (e, t, a) => {
19
+ e.append("marker").attr("id", a + "_" + t + "-pointEnd").attr("class", "marker " + t).attr("viewBox", "0 0 10 10").attr("refX", 6).attr("refY", 5).attr("markerUnits", "userSpaceOnUse").attr("markerWidth", 12).attr("markerHeight", 12).attr("orient", "auto").append("path").attr("d", "M 0 0 L 10 5 L 0 10 z").attr("class", "arrowMarkerPath").style("stroke-width", 1).style("stroke-dasharray", "1,0"), e.append("marker").attr("id", a + "_" + t + "-pointStart").attr("class", "marker " + t).attr("viewBox", "0 0 10 10").attr("refX", 4.5).attr("refY", 5).attr("markerUnits", "userSpaceOnUse").attr("markerWidth", 12).attr("markerHeight", 12).attr("orient", "auto").append("path").attr("d", "M 0 5 L 10 10 L 10 0 z").attr("class", "arrowMarkerPath").style("stroke-width", 1).style("stroke-dasharray", "1,0");
20
+ }, gt = (e, t, a) => {
21
+ e.append("marker").attr("id", a + "_" + t + "-circleEnd").attr("class", "marker " + t).attr("viewBox", "0 0 10 10").attr("refX", 11).attr("refY", 5).attr("markerUnits", "userSpaceOnUse").attr("markerWidth", 11).attr("markerHeight", 11).attr("orient", "auto").append("circle").attr("cx", "5").attr("cy", "5").attr("r", "5").attr("class", "arrowMarkerPath").style("stroke-width", 1).style("stroke-dasharray", "1,0"), e.append("marker").attr("id", a + "_" + t + "-circleStart").attr("class", "marker " + t).attr("viewBox", "0 0 10 10").attr("refX", -1).attr("refY", 5).attr("markerUnits", "userSpaceOnUse").attr("markerWidth", 11).attr("markerHeight", 11).attr("orient", "auto").append("circle").attr("cx", "5").attr("cy", "5").attr("r", "5").attr("class", "arrowMarkerPath").style("stroke-width", 1).style("stroke-dasharray", "1,0");
22
+ }, ut = (e, t, a) => {
23
+ e.append("marker").attr("id", a + "_" + t + "-crossEnd").attr("class", "marker cross " + t).attr("viewBox", "0 0 11 11").attr("refX", 12).attr("refY", 5.2).attr("markerUnits", "userSpaceOnUse").attr("markerWidth", 11).attr("markerHeight", 11).attr("orient", "auto").append("path").attr("d", "M 1,1 l 9,9 M 10,1 l -9,9").attr("class", "arrowMarkerPath").style("stroke-width", 2).style("stroke-dasharray", "1,0"), e.append("marker").attr("id", a + "_" + t + "-crossStart").attr("class", "marker cross " + t).attr("viewBox", "0 0 11 11").attr("refX", -1).attr("refY", 5.2).attr("markerUnits", "userSpaceOnUse").attr("markerWidth", 11).attr("markerHeight", 11).attr("orient", "auto").append("path").attr("d", "M 1,1 l 9,9 M 10,1 l -9,9").attr("class", "arrowMarkerPath").style("stroke-width", 2).style("stroke-dasharray", "1,0");
24
+ }, bt = (e, t, a) => {
25
+ e.append("defs").append("marker").attr("id", a + "_" + t + "-barbEnd").attr("refX", 19).attr("refY", 7).attr("markerWidth", 20).attr("markerHeight", 14).attr("markerUnits", "strokeWidth").attr("orient", "auto").append("path").attr("d", "M 19,7 L9,13 L14,7 L9,1 Z");
26
+ }, wt = {
27
+ extension: ot,
28
+ composition: yt,
29
+ aggregation: ft,
30
+ dependency: pt,
31
+ lollipop: dt,
32
+ point: xt,
33
+ circle: gt,
34
+ cross: ut,
35
+ barb: bt
36
+ }, hr = ht;
37
+ function mt(e, t) {
38
+ t && e.attr("style", t);
39
+ }
40
+ function kt(e) {
41
+ const t = B(document.createElementNS("http://www.w3.org/2000/svg", "foreignObject")), a = t.append("xhtml:div"), i = e.label, l = e.isNode ? "nodeLabel" : "edgeLabel";
42
+ return a.html(
43
+ '<span class="' + l + '" ' + (e.labelStyle ? 'style="' + e.labelStyle + '"' : "") + ">" + i + "</span>"
44
+ ), mt(a, e.labelStyle), a.style("display", "inline-block"), a.style("white-space", "nowrap"), a.attr("xmlns", "http://www.w3.org/1999/xhtml"), t.node();
45
+ }
46
+ const vt = (e, t, a, i) => {
47
+ let l = e || "";
48
+ if (typeof l == "object" && (l = l[0]), H(b().flowchart.htmlLabels)) {
49
+ l = l.replace(/\\n|\n/g, "<br />"), g.debug("vertexText" + l);
50
+ const r = {
51
+ isNode: i,
52
+ label: Q(l).replace(
53
+ /fa[blrs]?:fa-[\w-]+/g,
54
+ // cspell: disable-line
55
+ (n) => `<i class='${n.replace(":", " ")}'></i>`
56
+ ),
57
+ labelStyle: t.replace("fill:", "color:")
58
+ };
59
+ return kt(r);
60
+ } else {
61
+ const r = document.createElementNS("http://www.w3.org/2000/svg", "text");
62
+ r.setAttribute("style", t.replace("color:", "fill:"));
63
+ let s = [];
64
+ typeof l == "string" ? s = l.split(/\\n|\n|<br\s*\/?>/gi) : Array.isArray(l) ? s = l : s = [];
65
+ for (const n of s) {
66
+ const c = document.createElementNS("http://www.w3.org/2000/svg", "tspan");
67
+ c.setAttributeNS("http://www.w3.org/XML/1998/namespace", "xml:space", "preserve"), c.setAttribute("dy", "1em"), c.setAttribute("x", "0"), a ? c.setAttribute("class", "title-row") : c.setAttribute("class", "row"), c.textContent = n.trim(), r.appendChild(c);
68
+ }
69
+ return r;
70
+ }
71
+ }, R = vt, M = async (e, t, a, i) => {
72
+ let l;
73
+ const r = t.useHtmlLabels || H(b().flowchart.htmlLabels);
74
+ a ? l = a : l = "node default";
75
+ const s = e.insert("g").attr("class", l).attr("id", t.domId || t.id), n = s.insert("g").attr("class", "label").attr("style", t.labelStyle);
76
+ let c;
77
+ t.labelText === void 0 ? c = "" : c = typeof t.labelText == "string" ? t.labelText : t.labelText[0];
78
+ const o = n.node();
79
+ let h;
80
+ t.labelType === "markdown" ? h = st(n, q(Q(c), b()), {
81
+ useHtmlLabels: r,
82
+ width: t.width || b().flowchart.wrappingWidth,
83
+ classes: "markdown-node-label"
84
+ }) : h = o.appendChild(
85
+ R(
86
+ q(Q(c), b()),
87
+ t.labelStyle,
88
+ !1,
89
+ i
90
+ )
91
+ );
92
+ let y = h.getBBox();
93
+ const p = t.padding / 2;
94
+ if (H(b().flowchart.htmlLabels)) {
95
+ const f = h.children[0], x = B(h), k = f.getElementsByTagName("img");
96
+ if (k) {
97
+ const d = c.replace(/<img[^>]*>/g, "").trim() === "";
98
+ await Promise.all(
99
+ [...k].map(
100
+ (u) => new Promise((S) => {
101
+ function E() {
102
+ if (u.style.display = "flex", u.style.flexDirection = "column", d) {
103
+ const C = b().fontSize ? b().fontSize : window.getComputedStyle(document.body).fontSize, W = 5, A = parseInt(C, 10) * W + "px";
104
+ u.style.minWidth = A, u.style.maxWidth = A;
105
+ } else
106
+ u.style.width = "100%";
107
+ S(u);
108
+ }
109
+ setTimeout(() => {
110
+ u.complete && E();
111
+ }), u.addEventListener("error", E), u.addEventListener("load", E);
112
+ })
113
+ )
114
+ );
115
+ }
116
+ y = f.getBoundingClientRect(), x.attr("width", y.width), x.attr("height", y.height);
117
+ }
118
+ return r ? n.attr("transform", "translate(" + -y.width / 2 + ", " + -y.height / 2 + ")") : n.attr("transform", "translate(0, " + -y.height / 2 + ")"), t.centerLabel && n.attr("transform", "translate(" + -y.width / 2 + ", " + -y.height / 2 + ")"), n.insert("rect", ":first-child"), { shapeSvg: s, bbox: y, halfPadding: p, label: n };
119
+ }, m = (e, t) => {
120
+ const a = t.node().getBBox();
121
+ e.width = a.width, e.height = a.height;
122
+ };
123
+ function I(e, t, a, i) {
124
+ return e.insert("polygon", ":first-child").attr(
125
+ "points",
126
+ i.map(function(l) {
127
+ return l.x + "," + l.y;
128
+ }).join(" ")
129
+ ).attr("class", "label-container").attr("transform", "translate(" + -t / 2 + "," + a / 2 + ")");
130
+ }
131
+ function Lt(e, t) {
132
+ return e.intersect(t);
133
+ }
134
+ function it(e, t, a, i) {
135
+ var l = e.x, r = e.y, s = l - i.x, n = r - i.y, c = Math.sqrt(t * t * n * n + a * a * s * s), o = Math.abs(t * a * s / c);
136
+ i.x < l && (o = -o);
137
+ var h = Math.abs(t * a * n / c);
138
+ return i.y < r && (h = -h), { x: l + o, y: r + h };
139
+ }
140
+ function St(e, t, a) {
141
+ return it(e, t, t, a);
142
+ }
143
+ function Mt(e, t, a, i) {
144
+ var l, r, s, n, c, o, h, y, p, f, x, k, d, u, S;
145
+ if (l = t.y - e.y, s = e.x - t.x, c = t.x * e.y - e.x * t.y, p = l * a.x + s * a.y + c, f = l * i.x + s * i.y + c, !(p !== 0 && f !== 0 && J(p, f)) && (r = i.y - a.y, n = a.x - i.x, o = i.x * a.y - a.x * i.y, h = r * e.x + n * e.y + o, y = r * t.x + n * t.y + o, !(h !== 0 && y !== 0 && J(h, y)) && (x = l * n - r * s, x !== 0)))
146
+ return k = Math.abs(x / 2), d = s * o - n * c, u = d < 0 ? (d - k) / x : (d + k) / x, d = r * c - l * o, S = d < 0 ? (d - k) / x : (d + k) / x, { x: u, y: S };
147
+ }
148
+ function J(e, t) {
149
+ return e * t > 0;
150
+ }
151
+ function Tt(e, t, a) {
152
+ var i = e.x, l = e.y, r = [], s = Number.POSITIVE_INFINITY, n = Number.POSITIVE_INFINITY;
153
+ typeof t.forEach == "function" ? t.forEach(function(x) {
154
+ s = Math.min(s, x.x), n = Math.min(n, x.y);
155
+ }) : (s = Math.min(s, t.x), n = Math.min(n, t.y));
156
+ for (var c = i - e.width / 2 - s, o = l - e.height / 2 - n, h = 0; h < t.length; h++) {
157
+ var y = t[h], p = t[h < t.length - 1 ? h + 1 : 0], f = Mt(
158
+ e,
159
+ a,
160
+ { x: c + y.x, y: o + y.y },
161
+ { x: c + p.x, y: o + p.y }
162
+ );
163
+ f && r.push(f);
164
+ }
165
+ return r.length ? (r.length > 1 && r.sort(function(x, k) {
166
+ var d = x.x - a.x, u = x.y - a.y, S = Math.sqrt(d * d + u * u), E = k.x - a.x, C = k.y - a.y, W = Math.sqrt(E * E + C * C);
167
+ return S < W ? -1 : S === W ? 0 : 1;
168
+ }), r[0]) : e;
169
+ }
170
+ const Et = (e, t) => {
171
+ var a = e.x, i = e.y, l = t.x - a, r = t.y - i, s = e.width / 2, n = e.height / 2, c, o;
172
+ return Math.abs(r) * s > Math.abs(l) * n ? (r < 0 && (n = -n), c = r === 0 ? 0 : n * l / r, o = n) : (l < 0 && (s = -s), c = s, o = l === 0 ? 0 : s * r / l), { x: a + c, y: i + o };
173
+ }, Bt = Et, w = {
174
+ node: Lt,
175
+ circle: St,
176
+ ellipse: it,
177
+ polygon: Tt,
178
+ rect: Bt
179
+ }, Ct = async (e, t) => {
180
+ t.useHtmlLabels || b().flowchart.htmlLabels || (t.centerLabel = !0);
181
+ const { shapeSvg: i, bbox: l, halfPadding: r } = await M(
182
+ e,
183
+ t,
184
+ "node " + t.classes,
185
+ !0
186
+ );
187
+ g.info("Classes = ", t.classes);
188
+ const s = i.insert("rect", ":first-child");
189
+ return s.attr("rx", t.rx).attr("ry", t.ry).attr("x", -l.width / 2 - r).attr("y", -l.height / 2 - r).attr("width", l.width + t.padding).attr("height", l.height + t.padding), m(t, s), t.intersect = function(n) {
190
+ return w.rect(t, n);
191
+ }, i;
192
+ }, $t = Ct, _t = (e) => {
193
+ const t = /* @__PURE__ */ new Set();
194
+ for (const a of e)
195
+ switch (a) {
196
+ case "x":
197
+ t.add("right"), t.add("left");
198
+ break;
199
+ case "y":
200
+ t.add("up"), t.add("down");
201
+ break;
202
+ default:
203
+ t.add(a);
204
+ break;
205
+ }
206
+ return t;
207
+ }, Rt = (e, t, a) => {
208
+ const i = _t(e), l = 2, r = t.height + 2 * a.padding, s = r / l, n = t.width + 2 * s + a.padding, c = a.padding / 2;
209
+ return i.has("right") && i.has("left") && i.has("up") && i.has("down") ? [
210
+ // Bottom
211
+ { x: 0, y: 0 },
212
+ { x: s, y: 0 },
213
+ { x: n / 2, y: 2 * c },
214
+ { x: n - s, y: 0 },
215
+ { x: n, y: 0 },
216
+ // Right
217
+ { x: n, y: -r / 3 },
218
+ { x: n + 2 * c, y: -r / 2 },
219
+ { x: n, y: -2 * r / 3 },
220
+ { x: n, y: -r },
221
+ // Top
222
+ { x: n - s, y: -r },
223
+ { x: n / 2, y: -r - 2 * c },
224
+ { x: s, y: -r },
225
+ // Left
226
+ { x: 0, y: -r },
227
+ { x: 0, y: -2 * r / 3 },
228
+ { x: -2 * c, y: -r / 2 },
229
+ { x: 0, y: -r / 3 }
230
+ ] : i.has("right") && i.has("left") && i.has("up") ? [
231
+ { x: s, y: 0 },
232
+ { x: n - s, y: 0 },
233
+ { x: n, y: -r / 2 },
234
+ { x: n - s, y: -r },
235
+ { x: s, y: -r },
236
+ { x: 0, y: -r / 2 }
237
+ ] : i.has("right") && i.has("left") && i.has("down") ? [
238
+ { x: 0, y: 0 },
239
+ { x: s, y: -r },
240
+ { x: n - s, y: -r },
241
+ { x: n, y: 0 }
242
+ ] : i.has("right") && i.has("up") && i.has("down") ? [
243
+ { x: 0, y: 0 },
244
+ { x: n, y: -s },
245
+ { x: n, y: -r + s },
246
+ { x: 0, y: -r }
247
+ ] : i.has("left") && i.has("up") && i.has("down") ? [
248
+ { x: n, y: 0 },
249
+ { x: 0, y: -s },
250
+ { x: 0, y: -r + s },
251
+ { x: n, y: -r }
252
+ ] : i.has("right") && i.has("left") ? [
253
+ { x: s, y: 0 },
254
+ { x: s, y: -c },
255
+ { x: n - s, y: -c },
256
+ { x: n - s, y: 0 },
257
+ { x: n, y: -r / 2 },
258
+ { x: n - s, y: -r },
259
+ { x: n - s, y: -r + c },
260
+ { x: s, y: -r + c },
261
+ { x: s, y: -r },
262
+ { x: 0, y: -r / 2 }
263
+ ] : i.has("up") && i.has("down") ? [
264
+ // Bottom center
265
+ { x: n / 2, y: 0 },
266
+ // Left pont of bottom arrow
267
+ { x: 0, y: -c },
268
+ { x: s, y: -c },
269
+ // Left top over vertical section
270
+ { x: s, y: -r + c },
271
+ { x: 0, y: -r + c },
272
+ // Top of arrow
273
+ { x: n / 2, y: -r },
274
+ { x: n, y: -r + c },
275
+ // Top of right vertical bar
276
+ { x: n - s, y: -r + c },
277
+ { x: n - s, y: -c },
278
+ { x: n, y: -c }
279
+ ] : i.has("right") && i.has("up") ? [
280
+ { x: 0, y: 0 },
281
+ { x: n, y: -s },
282
+ { x: 0, y: -r }
283
+ ] : i.has("right") && i.has("down") ? [
284
+ { x: 0, y: 0 },
285
+ { x: n, y: 0 },
286
+ { x: 0, y: -r }
287
+ ] : i.has("left") && i.has("up") ? [
288
+ { x: n, y: 0 },
289
+ { x: 0, y: -s },
290
+ { x: n, y: -r }
291
+ ] : i.has("left") && i.has("down") ? [
292
+ { x: n, y: 0 },
293
+ { x: 0, y: 0 },
294
+ { x: n, y: -r }
295
+ ] : i.has("right") ? [
296
+ { x: s, y: -c },
297
+ { x: s, y: -c },
298
+ { x: n - s, y: -c },
299
+ { x: n - s, y: 0 },
300
+ { x: n, y: -r / 2 },
301
+ { x: n - s, y: -r },
302
+ { x: n - s, y: -r + c },
303
+ // top left corner of arrow
304
+ { x: s, y: -r + c },
305
+ { x: s, y: -r + c }
306
+ ] : i.has("left") ? [
307
+ { x: s, y: 0 },
308
+ { x: s, y: -c },
309
+ // Two points, the right corners
310
+ { x: n - s, y: -c },
311
+ { x: n - s, y: -r + c },
312
+ { x: s, y: -r + c },
313
+ { x: s, y: -r },
314
+ { x: 0, y: -r / 2 }
315
+ ] : i.has("up") ? [
316
+ // Bottom center
317
+ { x: s, y: -c },
318
+ // Left top over vertical section
319
+ { x: s, y: -r + c },
320
+ { x: 0, y: -r + c },
321
+ // Top of arrow
322
+ { x: n / 2, y: -r },
323
+ { x: n, y: -r + c },
324
+ // Top of right vertical bar
325
+ { x: n - s, y: -r + c },
326
+ { x: n - s, y: -c }
327
+ ] : i.has("down") ? [
328
+ // Bottom center
329
+ { x: n / 2, y: 0 },
330
+ // Left pont of bottom arrow
331
+ { x: 0, y: -c },
332
+ { x: s, y: -c },
333
+ // Left top over vertical section
334
+ { x: s, y: -r + c },
335
+ { x: n - s, y: -r + c },
336
+ { x: n - s, y: -c },
337
+ { x: n, y: -c }
338
+ ] : [{ x: 0, y: 0 }];
339
+ }, K = (e) => e ? " " + e : "", _ = (e, t) => `${t || "node default"}${K(e.classes)} ${K(
340
+ e.class
341
+ )}`, P = async (e, t) => {
342
+ const { shapeSvg: a, bbox: i } = await M(
343
+ e,
344
+ t,
345
+ _(t, void 0),
346
+ !0
347
+ ), l = i.width + t.padding, r = i.height + t.padding, s = l + r, n = [
348
+ { x: s / 2, y: 0 },
349
+ { x: s, y: -s / 2 },
350
+ { x: s / 2, y: -s },
351
+ { x: 0, y: -s / 2 }
352
+ ];
353
+ g.info("Question main (Circle)");
354
+ const c = I(a, s, s, n);
355
+ return c.attr("style", t.style), m(t, c), t.intersect = function(o) {
356
+ return g.warn("Intersect called"), w.polygon(t, n, o);
357
+ }, a;
358
+ }, Ht = (e, t) => {
359
+ const a = e.insert("g").attr("class", "node default").attr("id", t.domId || t.id), i = 28, l = [
360
+ { x: 0, y: i / 2 },
361
+ { x: i / 2, y: 0 },
362
+ { x: 0, y: -i / 2 },
363
+ { x: -i / 2, y: 0 }
364
+ ];
365
+ return a.insert("polygon", ":first-child").attr(
366
+ "points",
367
+ l.map(function(s) {
368
+ return s.x + "," + s.y;
369
+ }).join(" ")
370
+ ).attr("class", "state-start").attr("r", 7).attr("width", 28).attr("height", 28), t.width = 28, t.height = 28, t.intersect = function(s) {
371
+ return w.circle(t, 14, s);
372
+ }, a;
373
+ }, It = async (e, t) => {
374
+ const { shapeSvg: a, bbox: i } = await M(
375
+ e,
376
+ t,
377
+ _(t, void 0),
378
+ !0
379
+ ), l = 4, r = i.height + t.padding, s = r / l, n = i.width + 2 * s + t.padding, c = [
380
+ { x: s, y: 0 },
381
+ { x: n - s, y: 0 },
382
+ { x: n, y: -r / 2 },
383
+ { x: n - s, y: -r },
384
+ { x: s, y: -r },
385
+ { x: 0, y: -r / 2 }
386
+ ], o = I(a, n, r, c);
387
+ return o.attr("style", t.style), m(t, o), t.intersect = function(h) {
388
+ return w.polygon(t, c, h);
389
+ }, a;
390
+ }, Nt = async (e, t) => {
391
+ const { shapeSvg: a, bbox: i } = await M(e, t, void 0, !0), l = 2, r = i.height + 2 * t.padding, s = r / l, n = i.width + 2 * s + t.padding, c = Rt(t.directions, i, t), o = I(a, n, r, c);
392
+ return o.attr("style", t.style), m(t, o), t.intersect = function(h) {
393
+ return w.polygon(t, c, h);
394
+ }, a;
395
+ }, Ot = async (e, t) => {
396
+ const { shapeSvg: a, bbox: i } = await M(
397
+ e,
398
+ t,
399
+ _(t, void 0),
400
+ !0
401
+ ), l = i.width + t.padding, r = i.height + t.padding, s = [
402
+ { x: -r / 2, y: 0 },
403
+ { x: l, y: 0 },
404
+ { x: l, y: -r },
405
+ { x: -r / 2, y: -r },
406
+ { x: 0, y: -r / 2 }
407
+ ];
408
+ return I(a, l, r, s).attr("style", t.style), t.width = l + r, t.height = r, t.intersect = function(c) {
409
+ return w.polygon(t, s, c);
410
+ }, a;
411
+ }, Wt = async (e, t) => {
412
+ const { shapeSvg: a, bbox: i } = await M(e, t, _(t), !0), l = i.width + t.padding, r = i.height + t.padding, s = [
413
+ { x: -2 * r / 6, y: 0 },
414
+ { x: l - r / 6, y: 0 },
415
+ { x: l + 2 * r / 6, y: -r },
416
+ { x: r / 6, y: -r }
417
+ ], n = I(a, l, r, s);
418
+ return n.attr("style", t.style), m(t, n), t.intersect = function(c) {
419
+ return w.polygon(t, s, c);
420
+ }, a;
421
+ }, Xt = async (e, t) => {
422
+ const { shapeSvg: a, bbox: i } = await M(
423
+ e,
424
+ t,
425
+ _(t, void 0),
426
+ !0
427
+ ), l = i.width + t.padding, r = i.height + t.padding, s = [
428
+ { x: 2 * r / 6, y: 0 },
429
+ { x: l + r / 6, y: 0 },
430
+ { x: l - 2 * r / 6, y: -r },
431
+ { x: -r / 6, y: -r }
432
+ ], n = I(a, l, r, s);
433
+ return n.attr("style", t.style), m(t, n), t.intersect = function(c) {
434
+ return w.polygon(t, s, c);
435
+ }, a;
436
+ }, Yt = async (e, t) => {
437
+ const { shapeSvg: a, bbox: i } = await M(
438
+ e,
439
+ t,
440
+ _(t, void 0),
441
+ !0
442
+ ), l = i.width + t.padding, r = i.height + t.padding, s = [
443
+ { x: -2 * r / 6, y: 0 },
444
+ { x: l + 2 * r / 6, y: 0 },
445
+ { x: l - r / 6, y: -r },
446
+ { x: r / 6, y: -r }
447
+ ], n = I(a, l, r, s);
448
+ return n.attr("style", t.style), m(t, n), t.intersect = function(c) {
449
+ return w.polygon(t, s, c);
450
+ }, a;
451
+ }, At = async (e, t) => {
452
+ const { shapeSvg: a, bbox: i } = await M(
453
+ e,
454
+ t,
455
+ _(t, void 0),
456
+ !0
457
+ ), l = i.width + t.padding, r = i.height + t.padding, s = [
458
+ { x: r / 6, y: 0 },
459
+ { x: l - r / 6, y: 0 },
460
+ { x: l + 2 * r / 6, y: -r },
461
+ { x: -2 * r / 6, y: -r }
462
+ ], n = I(a, l, r, s);
463
+ return n.attr("style", t.style), m(t, n), t.intersect = function(c) {
464
+ return w.polygon(t, s, c);
465
+ }, a;
466
+ }, Dt = async (e, t) => {
467
+ const { shapeSvg: a, bbox: i } = await M(
468
+ e,
469
+ t,
470
+ _(t, void 0),
471
+ !0
472
+ ), l = i.width + t.padding, r = i.height + t.padding, s = [
473
+ { x: 0, y: 0 },
474
+ { x: l + r / 2, y: 0 },
475
+ { x: l, y: -r / 2 },
476
+ { x: l + r / 2, y: -r },
477
+ { x: 0, y: -r }
478
+ ], n = I(a, l, r, s);
479
+ return n.attr("style", t.style), m(t, n), t.intersect = function(c) {
480
+ return w.polygon(t, s, c);
481
+ }, a;
482
+ }, jt = async (e, t) => {
483
+ const { shapeSvg: a, bbox: i } = await M(
484
+ e,
485
+ t,
486
+ _(t, void 0),
487
+ !0
488
+ ), l = i.width + t.padding, r = l / 2, s = r / (2.5 + l / 50), n = i.height + s + t.padding, c = "M 0," + s + " a " + r + "," + s + " 0,0,0 " + l + " 0 a " + r + "," + s + " 0,0,0 " + -l + " 0 l 0," + n + " a " + r + "," + s + " 0,0,0 " + l + " 0 l 0," + -n, o = a.attr("label-offset-y", s).insert("path", ":first-child").attr("style", t.style).attr("d", c).attr("transform", "translate(" + -l / 2 + "," + -(n / 2 + s) + ")");
489
+ return m(t, o), t.intersect = function(h) {
490
+ const y = w.rect(t, h), p = y.x - t.x;
491
+ if (r != 0 && (Math.abs(p) < t.width / 2 || Math.abs(p) == t.width / 2 && Math.abs(y.y - t.y) > t.height / 2 - s)) {
492
+ let f = s * s * (1 - p * p / (r * r));
493
+ f != 0 && (f = Math.sqrt(f)), f = s - f, h.y - t.y > 0 && (f = -f), y.y += f;
494
+ }
495
+ return y;
496
+ }, a;
497
+ }, Ut = async (e, t) => {
498
+ const { shapeSvg: a, bbox: i, halfPadding: l } = await M(
499
+ e,
500
+ t,
501
+ "node " + t.classes + " " + t.class,
502
+ !0
503
+ ), r = a.insert("rect", ":first-child"), s = t.positioned ? t.width : i.width + t.padding, n = t.positioned ? t.height : i.height + t.padding, c = t.positioned ? -s / 2 : -i.width / 2 - l, o = t.positioned ? -n / 2 : -i.height / 2 - l;
504
+ if (r.attr("class", "basic label-container").attr("style", t.style).attr("rx", t.rx).attr("ry", t.ry).attr("x", c).attr("y", o).attr("width", s).attr("height", n), t.props) {
505
+ const h = new Set(Object.keys(t.props));
506
+ t.props.borders && (V(r, t.props.borders, s, n), h.delete("borders")), h.forEach((y) => {
507
+ g.warn(`Unknown node property ${y}`);
508
+ });
509
+ }
510
+ return m(t, r), t.intersect = function(h) {
511
+ return w.rect(t, h);
512
+ }, a;
513
+ }, zt = async (e, t) => {
514
+ const { shapeSvg: a, bbox: i, halfPadding: l } = await M(
515
+ e,
516
+ t,
517
+ "node " + t.classes,
518
+ !0
519
+ ), r = a.insert("rect", ":first-child"), s = t.positioned ? t.width : i.width + t.padding, n = t.positioned ? t.height : i.height + t.padding, c = t.positioned ? -s / 2 : -i.width / 2 - l, o = t.positioned ? -n / 2 : -i.height / 2 - l;
520
+ if (r.attr("class", "basic cluster composite label-container").attr("style", t.style).attr("rx", t.rx).attr("ry", t.ry).attr("x", c).attr("y", o).attr("width", s).attr("height", n), t.props) {
521
+ const h = new Set(Object.keys(t.props));
522
+ t.props.borders && (V(r, t.props.borders, s, n), h.delete("borders")), h.forEach((y) => {
523
+ g.warn(`Unknown node property ${y}`);
524
+ });
525
+ }
526
+ return m(t, r), t.intersect = function(h) {
527
+ return w.rect(t, h);
528
+ }, a;
529
+ }, Zt = async (e, t) => {
530
+ const { shapeSvg: a } = await M(e, t, "label", !0);
531
+ g.trace("Classes = ", t.class);
532
+ const i = a.insert("rect", ":first-child"), l = 0, r = 0;
533
+ if (i.attr("width", l).attr("height", r), a.attr("class", "label edgeLabel"), t.props) {
534
+ const s = new Set(Object.keys(t.props));
535
+ t.props.borders && (V(i, t.props.borders, l, r), s.delete("borders")), s.forEach((n) => {
536
+ g.warn(`Unknown node property ${n}`);
537
+ });
538
+ }
539
+ return m(t, i), t.intersect = function(s) {
540
+ return w.rect(t, s);
541
+ }, a;
542
+ };
543
+ function V(e, t, a, i) {
544
+ const l = [], r = (n) => {
545
+ l.push(n, 0);
546
+ }, s = (n) => {
547
+ l.push(0, n);
548
+ };
549
+ t.includes("t") ? (g.debug("add top border"), r(a)) : s(a), t.includes("r") ? (g.debug("add right border"), r(i)) : s(i), t.includes("b") ? (g.debug("add bottom border"), r(a)) : s(a), t.includes("l") ? (g.debug("add left border"), r(i)) : s(i), e.attr("stroke-dasharray", l.join(" "));
550
+ }
551
+ const Gt = (e, t) => {
552
+ let a;
553
+ t.classes ? a = "node " + t.classes : a = "node default";
554
+ const i = e.insert("g").attr("class", a).attr("id", t.domId || t.id), l = i.insert("rect", ":first-child"), r = i.insert("line"), s = i.insert("g").attr("class", "label"), n = t.labelText.flat ? t.labelText.flat() : t.labelText;
555
+ let c = "";
556
+ typeof n == "object" ? c = n[0] : c = n, g.info("Label text abc79", c, n, typeof n == "object");
557
+ const o = s.node().appendChild(R(c, t.labelStyle, !0, !0));
558
+ let h = { width: 0, height: 0 };
559
+ if (H(b().flowchart.htmlLabels)) {
560
+ const k = o.children[0], d = B(o);
561
+ h = k.getBoundingClientRect(), d.attr("width", h.width), d.attr("height", h.height);
562
+ }
563
+ g.info("Text 2", n);
564
+ const y = n.slice(1, n.length);
565
+ let p = o.getBBox();
566
+ const f = s.node().appendChild(
567
+ R(y.join ? y.join("<br/>") : y, t.labelStyle, !0, !0)
568
+ );
569
+ if (H(b().flowchart.htmlLabels)) {
570
+ const k = f.children[0], d = B(f);
571
+ h = k.getBoundingClientRect(), d.attr("width", h.width), d.attr("height", h.height);
572
+ }
573
+ const x = t.padding / 2;
574
+ return B(f).attr(
575
+ "transform",
576
+ "translate( " + // (titleBox.width - bbox.width) / 2 +
577
+ (h.width > p.width ? 0 : (p.width - h.width) / 2) + ", " + (p.height + x + 5) + ")"
578
+ ), B(o).attr(
579
+ "transform",
580
+ "translate( " + // (titleBox.width - bbox.width) / 2 +
581
+ (h.width < p.width ? 0 : -(p.width - h.width) / 2) + ", 0)"
582
+ ), h = s.node().getBBox(), s.attr(
583
+ "transform",
584
+ "translate(" + -h.width / 2 + ", " + (-h.height / 2 - x + 3) + ")"
585
+ ), l.attr("class", "outer title-state").attr("x", -h.width / 2 - x).attr("y", -h.height / 2 - x).attr("width", h.width + t.padding).attr("height", h.height + t.padding), r.attr("class", "divider").attr("x1", -h.width / 2 - x).attr("x2", h.width / 2 + x).attr("y1", -h.height / 2 - x + p.height + x).attr("y2", -h.height / 2 - x + p.height + x), m(t, l), t.intersect = function(k) {
586
+ return w.rect(t, k);
587
+ }, i;
588
+ }, Ft = async (e, t) => {
589
+ const { shapeSvg: a, bbox: i } = await M(
590
+ e,
591
+ t,
592
+ _(t, void 0),
593
+ !0
594
+ ), l = i.height + t.padding, r = i.width + l / 4 + t.padding, s = a.insert("rect", ":first-child").attr("style", t.style).attr("rx", l / 2).attr("ry", l / 2).attr("x", -r / 2).attr("y", -l / 2).attr("width", r).attr("height", l);
595
+ return m(t, s), t.intersect = function(n) {
596
+ return w.rect(t, n);
597
+ }, a;
598
+ }, Qt = async (e, t) => {
599
+ const { shapeSvg: a, bbox: i, halfPadding: l } = await M(
600
+ e,
601
+ t,
602
+ _(t, void 0),
603
+ !0
604
+ ), r = a.insert("circle", ":first-child");
605
+ return r.attr("style", t.style).attr("rx", t.rx).attr("ry", t.ry).attr("r", i.width / 2 + l).attr("width", i.width + t.padding).attr("height", i.height + t.padding), g.info("Circle main"), m(t, r), t.intersect = function(s) {
606
+ return g.info("Circle intersect", t, i.width / 2 + l, s), w.circle(t, i.width / 2 + l, s);
607
+ }, a;
608
+ }, Vt = async (e, t) => {
609
+ const { shapeSvg: a, bbox: i, halfPadding: l } = await M(
610
+ e,
611
+ t,
612
+ _(t, void 0),
613
+ !0
614
+ ), r = 5, s = a.insert("g", ":first-child"), n = s.insert("circle"), c = s.insert("circle");
615
+ return s.attr("class", t.class), n.attr("style", t.style).attr("rx", t.rx).attr("ry", t.ry).attr("r", i.width / 2 + l + r).attr("width", i.width + t.padding + r * 2).attr("height", i.height + t.padding + r * 2), c.attr("style", t.style).attr("rx", t.rx).attr("ry", t.ry).attr("r", i.width / 2 + l).attr("width", i.width + t.padding).attr("height", i.height + t.padding), g.info("DoubleCircle main"), m(t, n), t.intersect = function(o) {
616
+ return g.info("DoubleCircle intersect", t, i.width / 2 + l + r, o), w.circle(t, i.width / 2 + l + r, o);
617
+ }, a;
618
+ }, qt = async (e, t) => {
619
+ const { shapeSvg: a, bbox: i } = await M(
620
+ e,
621
+ t,
622
+ _(t, void 0),
623
+ !0
624
+ ), l = i.width + t.padding, r = i.height + t.padding, s = [
625
+ { x: 0, y: 0 },
626
+ { x: l, y: 0 },
627
+ { x: l, y: -r },
628
+ { x: 0, y: -r },
629
+ { x: 0, y: 0 },
630
+ { x: -8, y: 0 },
631
+ { x: l + 8, y: 0 },
632
+ { x: l + 8, y: -r },
633
+ { x: -8, y: -r },
634
+ { x: -8, y: 0 }
635
+ ], n = I(a, l, r, s);
636
+ return n.attr("style", t.style), m(t, n), t.intersect = function(c) {
637
+ return w.polygon(t, s, c);
638
+ }, a;
639
+ }, Jt = (e, t) => {
640
+ const a = e.insert("g").attr("class", "node default").attr("id", t.domId || t.id), i = a.insert("circle", ":first-child");
641
+ return i.attr("class", "state-start").attr("r", 7).attr("width", 14).attr("height", 14), m(t, i), t.intersect = function(l) {
642
+ return w.circle(t, 7, l);
643
+ }, a;
644
+ }, tt = (e, t, a) => {
645
+ const i = e.insert("g").attr("class", "node default").attr("id", t.domId || t.id);
646
+ let l = 70, r = 10;
647
+ a === "LR" && (l = 10, r = 70);
648
+ const s = i.append("rect").attr("x", -1 * l / 2).attr("y", -1 * r / 2).attr("width", l).attr("height", r).attr("class", "fork-join");
649
+ return m(t, s), t.height = t.height + t.padding / 2, t.width = t.width + t.padding / 2, t.intersect = function(n) {
650
+ return w.rect(t, n);
651
+ }, i;
652
+ }, Kt = (e, t) => {
653
+ const a = e.insert("g").attr("class", "node default").attr("id", t.domId || t.id), i = a.insert("circle", ":first-child"), l = a.insert("circle", ":first-child");
654
+ return l.attr("class", "state-start").attr("r", 7).attr("width", 14).attr("height", 14), i.attr("class", "state-end").attr("r", 5).attr("width", 10).attr("height", 10), m(t, l), t.intersect = function(r) {
655
+ return w.circle(t, 7, r);
656
+ }, a;
657
+ }, Pt = (e, t) => {
658
+ const a = t.padding / 2, i = 4, l = 8;
659
+ let r;
660
+ t.classes ? r = "node " + t.classes : r = "node default";
661
+ const s = e.insert("g").attr("class", r).attr("id", t.domId || t.id), n = s.insert("rect", ":first-child"), c = s.insert("line"), o = s.insert("line");
662
+ let h = 0, y = i;
663
+ const p = s.insert("g").attr("class", "label");
664
+ let f = 0;
665
+ const x = t.classData.annotations && t.classData.annotations[0], k = t.classData.annotations[0] ? "«" + t.classData.annotations[0] + "»" : "", d = p.node().appendChild(R(k, t.labelStyle, !0, !0));
666
+ let u = d.getBBox();
667
+ if (H(b().flowchart.htmlLabels)) {
668
+ const v = d.children[0], L = B(d);
669
+ u = v.getBoundingClientRect(), L.attr("width", u.width), L.attr("height", u.height);
670
+ }
671
+ t.classData.annotations[0] && (y += u.height + i, h += u.width);
672
+ let S = t.classData.label;
673
+ t.classData.type !== void 0 && t.classData.type !== "" && (b().flowchart.htmlLabels ? S += "&lt;" + t.classData.type + "&gt;" : S += "<" + t.classData.type + ">");
674
+ const E = p.node().appendChild(R(S, t.labelStyle, !0, !0));
675
+ B(E).attr("class", "classTitle");
676
+ let C = E.getBBox();
677
+ if (H(b().flowchart.htmlLabels)) {
678
+ const v = E.children[0], L = B(E);
679
+ C = v.getBoundingClientRect(), L.attr("width", C.width), L.attr("height", C.height);
680
+ }
681
+ y += C.height + i, C.width > h && (h = C.width);
682
+ const W = [];
683
+ t.classData.members.forEach((v) => {
684
+ const L = v.getDisplayDetails();
685
+ let X = L.displayText;
686
+ b().flowchart.htmlLabels && (X = X.replace(/</g, "&lt;").replace(/>/g, "&gt;"));
687
+ const N = p.node().appendChild(
688
+ R(
689
+ X,
690
+ L.cssStyle ? L.cssStyle : t.labelStyle,
691
+ !0,
692
+ !0
693
+ )
694
+ );
695
+ let $ = N.getBBox();
696
+ if (H(b().flowchart.htmlLabels)) {
697
+ const F = N.children[0], D = B(N);
698
+ $ = F.getBoundingClientRect(), D.attr("width", $.width), D.attr("height", $.height);
699
+ }
700
+ $.width > h && (h = $.width), y += $.height + i, W.push(N);
701
+ }), y += l;
702
+ const A = [];
703
+ if (t.classData.methods.forEach((v) => {
704
+ const L = v.getDisplayDetails();
705
+ let X = L.displayText;
706
+ b().flowchart.htmlLabels && (X = X.replace(/</g, "&lt;").replace(/>/g, "&gt;"));
707
+ const N = p.node().appendChild(
708
+ R(
709
+ X,
710
+ L.cssStyle ? L.cssStyle : t.labelStyle,
711
+ !0,
712
+ !0
713
+ )
714
+ );
715
+ let $ = N.getBBox();
716
+ if (H(b().flowchart.htmlLabels)) {
717
+ const F = N.children[0], D = B(N);
718
+ $ = F.getBoundingClientRect(), D.attr("width", $.width), D.attr("height", $.height);
719
+ }
720
+ $.width > h && (h = $.width), y += $.height + i, A.push(N);
721
+ }), y += l, x) {
722
+ let v = (h - u.width) / 2;
723
+ B(d).attr(
724
+ "transform",
725
+ "translate( " + (-1 * h / 2 + v) + ", " + -1 * y / 2 + ")"
726
+ ), f = u.height + i;
727
+ }
728
+ let nt = (h - C.width) / 2;
729
+ return B(E).attr(
730
+ "transform",
731
+ "translate( " + (-1 * h / 2 + nt) + ", " + (-1 * y / 2 + f) + ")"
732
+ ), f += C.height + i, c.attr("class", "divider").attr("x1", -h / 2 - a).attr("x2", h / 2 + a).attr("y1", -y / 2 - a + l + f).attr("y2", -y / 2 - a + l + f), f += l, W.forEach((v) => {
733
+ B(v).attr(
734
+ "transform",
735
+ "translate( " + -h / 2 + ", " + (-1 * y / 2 + f + l / 2) + ")"
736
+ );
737
+ const L = v == null ? void 0 : v.getBBox();
738
+ f += ((L == null ? void 0 : L.height) ?? 0) + i;
739
+ }), f += l, o.attr("class", "divider").attr("x1", -h / 2 - a).attr("x2", h / 2 + a).attr("y1", -y / 2 - a + l + f).attr("y2", -y / 2 - a + l + f), f += l, A.forEach((v) => {
740
+ B(v).attr(
741
+ "transform",
742
+ "translate( " + -h / 2 + ", " + (-1 * y / 2 + f) + ")"
743
+ );
744
+ const L = v == null ? void 0 : v.getBBox();
745
+ f += ((L == null ? void 0 : L.height) ?? 0) + i;
746
+ }), n.attr("style", t.style).attr("class", "outer title-state").attr("x", -h / 2 - a).attr("y", -(y / 2) - a).attr("width", h + t.padding).attr("height", y + t.padding), m(t, n), t.intersect = function(v) {
747
+ return w.rect(t, v);
748
+ }, s;
749
+ }, rt = {
750
+ rhombus: P,
751
+ composite: zt,
752
+ question: P,
753
+ rect: Ut,
754
+ labelRect: Zt,
755
+ rectWithTitle: Gt,
756
+ choice: Ht,
757
+ circle: Qt,
758
+ doublecircle: Vt,
759
+ stadium: Ft,
760
+ hexagon: It,
761
+ block_arrow: Nt,
762
+ rect_left_inv_arrow: Ot,
763
+ lean_right: Wt,
764
+ lean_left: Xt,
765
+ trapezoid: Yt,
766
+ inv_trapezoid: At,
767
+ rect_right_inv_arrow: Dt,
768
+ cylinder: jt,
769
+ start: Jt,
770
+ end: Kt,
771
+ note: $t,
772
+ subroutine: qt,
773
+ fork: tt,
774
+ join: tt,
775
+ class_box: Pt
776
+ };
777
+ let Y = {};
778
+ const or = async (e, t, a) => {
779
+ let i, l;
780
+ if (t.link) {
781
+ let r;
782
+ b().securityLevel === "sandbox" ? r = "_top" : t.linkTarget && (r = t.linkTarget || "_blank"), i = e.insert("svg:a").attr("xlink:href", t.link).attr("target", r), l = await rt[t.shape](i, t, a);
783
+ } else
784
+ l = await rt[t.shape](e, t, a), i = l;
785
+ return t.tooltip && l.attr("title", t.tooltip), t.class && l.attr("class", "node default " + t.class), i.attr("data-node", "true"), i.attr("data-id", t.id), Y[t.id] = i, t.haveCallback && Y[t.id].attr("class", Y[t.id].attr("class") + " clickable"), i;
786
+ }, yr = (e, t) => {
787
+ Y[t.id] = e;
788
+ }, fr = () => {
789
+ Y = {};
790
+ }, pr = (e) => {
791
+ const t = Y[e.id];
792
+ g.trace(
793
+ "Transforming node",
794
+ e.diff,
795
+ e,
796
+ "translate(" + (e.x - e.width / 2 - 5) + ", " + e.width / 2 + ")"
797
+ );
798
+ const a = 8, i = e.diff || 0;
799
+ return e.clusterNode ? t.attr(
800
+ "transform",
801
+ "translate(" + (e.x + i - e.width / 2) + ", " + (e.y - e.height / 2 - a) + ")"
802
+ ) : t.attr("transform", "translate(" + e.x + ", " + e.y + ")"), i;
803
+ }, tr = ({
804
+ flowchart: e
805
+ }) => {
806
+ var l, r;
807
+ const t = ((l = e == null ? void 0 : e.subGraphTitleMargin) == null ? void 0 : l.top) ?? 0, a = ((r = e == null ? void 0 : e.subGraphTitleMargin) == null ? void 0 : r.bottom) ?? 0, i = t + a;
808
+ return {
809
+ subGraphTitleTopMargin: t,
810
+ subGraphTitleBottomMargin: a,
811
+ subGraphTitleTotalMargin: i
812
+ };
813
+ }, O = {
814
+ aggregation: 18,
815
+ extension: 18,
816
+ composition: 18,
817
+ dependency: 6,
818
+ lollipop: 13.5,
819
+ arrow_point: 5.3
820
+ };
821
+ function U(e, t) {
822
+ if (e === void 0 || t === void 0)
823
+ return { angle: 0, deltaX: 0, deltaY: 0 };
824
+ e = Z(e), t = Z(t);
825
+ const [a, i] = [e.x, e.y], [l, r] = [t.x, t.y], s = l - a, n = r - i;
826
+ return { angle: Math.atan(n / s), deltaX: s, deltaY: n };
827
+ }
828
+ const Z = (e) => Array.isArray(e) ? { x: e[0], y: e[1] } : e, rr = (e) => ({
829
+ x: function(t, a, i) {
830
+ let l = 0;
831
+ if (a === 0 && Object.hasOwn(O, e.arrowTypeStart)) {
832
+ const { angle: r, deltaX: s } = U(i[0], i[1]);
833
+ l = O[e.arrowTypeStart] * Math.cos(r) * (s >= 0 ? 1 : -1);
834
+ } else if (a === i.length - 1 && Object.hasOwn(O, e.arrowTypeEnd)) {
835
+ const { angle: r, deltaX: s } = U(
836
+ i[i.length - 1],
837
+ i[i.length - 2]
838
+ );
839
+ l = O[e.arrowTypeEnd] * Math.cos(r) * (s >= 0 ? 1 : -1);
840
+ }
841
+ return Z(t).x + l;
842
+ },
843
+ y: function(t, a, i) {
844
+ let l = 0;
845
+ if (a === 0 && Object.hasOwn(O, e.arrowTypeStart)) {
846
+ const { angle: r, deltaY: s } = U(i[0], i[1]);
847
+ l = O[e.arrowTypeStart] * Math.abs(Math.sin(r)) * (s >= 0 ? 1 : -1);
848
+ } else if (a === i.length - 1 && Object.hasOwn(O, e.arrowTypeEnd)) {
849
+ const { angle: r, deltaY: s } = U(
850
+ i[i.length - 1],
851
+ i[i.length - 2]
852
+ );
853
+ l = O[e.arrowTypeEnd] * Math.abs(Math.sin(r)) * (s >= 0 ? 1 : -1);
854
+ }
855
+ return Z(t).y + l;
856
+ }
857
+ }), ar = (e, t, a, i, l) => {
858
+ t.arrowTypeStart && at(e, "start", t.arrowTypeStart, a, i, l), t.arrowTypeEnd && at(e, "end", t.arrowTypeEnd, a, i, l);
859
+ }, er = {
860
+ arrow_cross: "cross",
861
+ arrow_point: "point",
862
+ arrow_barb: "barb",
863
+ arrow_circle: "circle",
864
+ aggregation: "aggregation",
865
+ extension: "extension",
866
+ composition: "composition",
867
+ dependency: "dependency",
868
+ lollipop: "lollipop"
869
+ }, at = (e, t, a, i, l, r) => {
870
+ const s = er[a];
871
+ if (!s) {
872
+ g.warn(`Unknown arrow type: ${a}`);
873
+ return;
874
+ }
875
+ const n = t === "start" ? "Start" : "End";
876
+ e.attr(`marker-${t}`, `url(${i}#${l}_${r}-${s}${n})`);
877
+ };
878
+ let G = {}, T = {};
879
+ const dr = () => {
880
+ G = {}, T = {};
881
+ }, xr = (e, t) => {
882
+ const a = H(b().flowchart.htmlLabels), i = t.labelType === "markdown" ? st(e, t.label, {
883
+ style: t.labelStyle,
884
+ useHtmlLabels: a,
885
+ addSvgBackground: !0
886
+ }) : R(t.label, t.labelStyle), l = e.insert("g").attr("class", "edgeLabel"), r = l.insert("g").attr("class", "label");
887
+ r.node().appendChild(i);
888
+ let s = i.getBBox();
889
+ if (a) {
890
+ const c = i.children[0], o = B(i);
891
+ s = c.getBoundingClientRect(), o.attr("width", s.width), o.attr("height", s.height);
892
+ }
893
+ r.attr("transform", "translate(" + -s.width / 2 + ", " + -s.height / 2 + ")"), G[t.id] = l, t.width = s.width, t.height = s.height;
894
+ let n;
895
+ if (t.startLabelLeft) {
896
+ const c = R(t.startLabelLeft, t.labelStyle), o = e.insert("g").attr("class", "edgeTerminals"), h = o.insert("g").attr("class", "inner");
897
+ n = h.node().appendChild(c);
898
+ const y = c.getBBox();
899
+ h.attr("transform", "translate(" + -y.width / 2 + ", " + -y.height / 2 + ")"), T[t.id] || (T[t.id] = {}), T[t.id].startLeft = o, z(n, t.startLabelLeft);
900
+ }
901
+ if (t.startLabelRight) {
902
+ const c = R(t.startLabelRight, t.labelStyle), o = e.insert("g").attr("class", "edgeTerminals"), h = o.insert("g").attr("class", "inner");
903
+ n = o.node().appendChild(c), h.node().appendChild(c);
904
+ const y = c.getBBox();
905
+ h.attr("transform", "translate(" + -y.width / 2 + ", " + -y.height / 2 + ")"), T[t.id] || (T[t.id] = {}), T[t.id].startRight = o, z(n, t.startLabelRight);
906
+ }
907
+ if (t.endLabelLeft) {
908
+ const c = R(t.endLabelLeft, t.labelStyle), o = e.insert("g").attr("class", "edgeTerminals"), h = o.insert("g").attr("class", "inner");
909
+ n = h.node().appendChild(c);
910
+ const y = c.getBBox();
911
+ h.attr("transform", "translate(" + -y.width / 2 + ", " + -y.height / 2 + ")"), o.node().appendChild(c), T[t.id] || (T[t.id] = {}), T[t.id].endLeft = o, z(n, t.endLabelLeft);
912
+ }
913
+ if (t.endLabelRight) {
914
+ const c = R(t.endLabelRight, t.labelStyle), o = e.insert("g").attr("class", "edgeTerminals"), h = o.insert("g").attr("class", "inner");
915
+ n = h.node().appendChild(c);
916
+ const y = c.getBBox();
917
+ h.attr("transform", "translate(" + -y.width / 2 + ", " + -y.height / 2 + ")"), o.node().appendChild(c), T[t.id] || (T[t.id] = {}), T[t.id].endRight = o, z(n, t.endLabelRight);
918
+ }
919
+ return i;
920
+ };
921
+ function z(e, t) {
922
+ b().flowchart.htmlLabels && e && (e.style.width = t.length * 9 + "px", e.style.height = "12px");
923
+ }
924
+ const gr = (e, t) => {
925
+ g.debug("Moving label abc88 ", e.id, e.label, G[e.id], t);
926
+ let a = t.updatedPath ? t.updatedPath : t.originalPath;
927
+ const i = b(), { subGraphTitleTotalMargin: l } = tr(i);
928
+ if (e.label) {
929
+ const r = G[e.id];
930
+ let s = e.x, n = e.y;
931
+ if (a) {
932
+ const c = j.calcLabelPosition(a);
933
+ g.debug(
934
+ "Moving label " + e.label + " from (",
935
+ s,
936
+ ",",
937
+ n,
938
+ ") to (",
939
+ c.x,
940
+ ",",
941
+ c.y,
942
+ ") abc88"
943
+ ), t.updatedPath && (s = c.x, n = c.y);
944
+ }
945
+ r.attr("transform", `translate(${s}, ${n + l / 2})`);
946
+ }
947
+ if (e.startLabelLeft) {
948
+ const r = T[e.id].startLeft;
949
+ let s = e.x, n = e.y;
950
+ if (a) {
951
+ const c = j.calcTerminalLabelPosition(e.arrowTypeStart ? 10 : 0, "start_left", a);
952
+ s = c.x, n = c.y;
953
+ }
954
+ r.attr("transform", `translate(${s}, ${n})`);
955
+ }
956
+ if (e.startLabelRight) {
957
+ const r = T[e.id].startRight;
958
+ let s = e.x, n = e.y;
959
+ if (a) {
960
+ const c = j.calcTerminalLabelPosition(
961
+ e.arrowTypeStart ? 10 : 0,
962
+ "start_right",
963
+ a
964
+ );
965
+ s = c.x, n = c.y;
966
+ }
967
+ r.attr("transform", `translate(${s}, ${n})`);
968
+ }
969
+ if (e.endLabelLeft) {
970
+ const r = T[e.id].endLeft;
971
+ let s = e.x, n = e.y;
972
+ if (a) {
973
+ const c = j.calcTerminalLabelPosition(e.arrowTypeEnd ? 10 : 0, "end_left", a);
974
+ s = c.x, n = c.y;
975
+ }
976
+ r.attr("transform", `translate(${s}, ${n})`);
977
+ }
978
+ if (e.endLabelRight) {
979
+ const r = T[e.id].endRight;
980
+ let s = e.x, n = e.y;
981
+ if (a) {
982
+ const c = j.calcTerminalLabelPosition(e.arrowTypeEnd ? 10 : 0, "end_right", a);
983
+ s = c.x, n = c.y;
984
+ }
985
+ r.attr("transform", `translate(${s}, ${n})`);
986
+ }
987
+ }, sr = (e, t) => {
988
+ const a = e.x, i = e.y, l = Math.abs(t.x - a), r = Math.abs(t.y - i), s = e.width / 2, n = e.height / 2;
989
+ return l >= s || r >= n;
990
+ }, ir = (e, t, a) => {
991
+ g.debug(`intersection calc abc89:
992
+ outsidePoint: ${JSON.stringify(t)}
993
+ insidePoint : ${JSON.stringify(a)}
994
+ node : x:${e.x} y:${e.y} w:${e.width} h:${e.height}`);
995
+ const i = e.x, l = e.y, r = Math.abs(i - a.x), s = e.width / 2;
996
+ let n = a.x < t.x ? s - r : s + r;
997
+ const c = e.height / 2, o = Math.abs(t.y - a.y), h = Math.abs(t.x - a.x);
998
+ if (Math.abs(l - t.y) * s > Math.abs(i - t.x) * c) {
999
+ let y = a.y < t.y ? t.y - c - l : l - c - t.y;
1000
+ n = h * y / o;
1001
+ const p = {
1002
+ x: a.x < t.x ? a.x + n : a.x - h + n,
1003
+ y: a.y < t.y ? a.y + o - y : a.y - o + y
1004
+ };
1005
+ return n === 0 && (p.x = t.x, p.y = t.y), h === 0 && (p.x = t.x), o === 0 && (p.y = t.y), g.debug(`abc89 topp/bott calc, Q ${o}, q ${y}, R ${h}, r ${n}`, p), p;
1006
+ } else {
1007
+ a.x < t.x ? n = t.x - s - i : n = i - s - t.x;
1008
+ let y = o * n / h, p = a.x < t.x ? a.x + h - n : a.x - h + n, f = a.y < t.y ? a.y + y : a.y - y;
1009
+ return g.debug(`sides calc abc89, Q ${o}, q ${y}, R ${h}, r ${n}`, { _x: p, _y: f }), n === 0 && (p = t.x, f = t.y), h === 0 && (p = t.x), o === 0 && (f = t.y), { x: p, y: f };
1010
+ }
1011
+ }, et = (e, t) => {
1012
+ g.debug("abc88 cutPathAtIntersect", e, t);
1013
+ let a = [], i = e[0], l = !1;
1014
+ return e.forEach((r) => {
1015
+ if (!sr(t, r) && !l) {
1016
+ const s = ir(t, i, r);
1017
+ let n = !1;
1018
+ a.forEach((c) => {
1019
+ n = n || c.x === s.x && c.y === s.y;
1020
+ }), a.some((c) => c.x === s.x && c.y === s.y) || a.push(s), l = !0;
1021
+ } else
1022
+ i = r, l || a.push(r);
1023
+ }), a;
1024
+ }, ur = function(e, t, a, i, l, r, s) {
1025
+ let n = a.points;
1026
+ g.debug("abc88 InsertEdge: edge=", a, "e=", t);
1027
+ let c = !1;
1028
+ const o = r.node(t.v);
1029
+ var h = r.node(t.w);
1030
+ h != null && h.intersect && (o != null && o.intersect) && (n = n.slice(1, a.points.length - 1), n.unshift(o.intersect(n[0])), n.push(h.intersect(n[n.length - 1]))), a.toCluster && (g.debug("to cluster abc88", i[a.toCluster]), n = et(a.points, i[a.toCluster].node), c = !0), a.fromCluster && (g.debug("from cluster abc88", i[a.fromCluster]), n = et(n.reverse(), i[a.fromCluster].node).reverse(), c = !0);
1031
+ const y = n.filter((C) => !Number.isNaN(C.y));
1032
+ let p = lt;
1033
+ a.curve && (l === "graph" || l === "flowchart") && (p = a.curve);
1034
+ const { x: f, y: x } = rr(a), k = ct().x(f).y(x).curve(p);
1035
+ let d;
1036
+ switch (a.thickness) {
1037
+ case "normal":
1038
+ d = "edge-thickness-normal";
1039
+ break;
1040
+ case "thick":
1041
+ d = "edge-thickness-thick";
1042
+ break;
1043
+ case "invisible":
1044
+ d = "edge-thickness-thick";
1045
+ break;
1046
+ default:
1047
+ d = "";
1048
+ }
1049
+ switch (a.pattern) {
1050
+ case "solid":
1051
+ d += " edge-pattern-solid";
1052
+ break;
1053
+ case "dotted":
1054
+ d += " edge-pattern-dotted";
1055
+ break;
1056
+ case "dashed":
1057
+ d += " edge-pattern-dashed";
1058
+ break;
1059
+ }
1060
+ const u = e.append("path").attr("d", k(y)).attr("id", a.id).attr("class", " " + d + (a.classes ? " " + a.classes : "")).attr("style", a.style);
1061
+ let S = "";
1062
+ (b().flowchart.arrowMarkerAbsolute || b().state.arrowMarkerAbsolute) && (S = window.location.protocol + "//" + window.location.host + window.location.pathname + window.location.search, S = S.replace(/\(/g, "\\("), S = S.replace(/\)/g, "\\)")), ar(u, a, S, s, l);
1063
+ let E = {};
1064
+ return c && (E.updatedPath = n), E.originalPath = a.points, E;
1065
+ };
1066
+ export {
1067
+ hr as a,
1068
+ fr as b,
1069
+ R as c,
1070
+ dr as d,
1071
+ or as e,
1072
+ xr as f,
1073
+ tr as g,
1074
+ ur as h,
1075
+ Bt as i,
1076
+ gr as j,
1077
+ rr as k,
1078
+ M as l,
1079
+ ar as m,
1080
+ pr as p,
1081
+ yr as s,
1082
+ m as u
1083
+ };