hexagon-editor 0.1.0-alpha.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (308) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +105 -0
  3. package/THIRD_PARTY_NOTICES.md +29 -0
  4. package/dist/MarkdownEditor.vue.d.ts +926 -0
  5. package/dist/MarkdownEditor.vue.d.ts.map +1 -0
  6. package/dist/MarkdownEditorLinkForm-mq-BVYM_.js +338 -0
  7. package/dist/MarkdownEditorLinkForm.css +1 -0
  8. package/dist/abnfDiagram-N423BO3Z-DCf6sPky.js +87 -0
  9. package/dist/arc-y6UeoJpJ.js +83 -0
  10. package/dist/architectureDiagram-T3A2C74G-Cc3_3-cI.js +4778 -0
  11. package/dist/base-Bnv2-Te4.js +13338 -0
  12. package/dist/base.css +1 -0
  13. package/dist/blockDiagram-VBNYF7ZC-DWVLZwXY.js +2419 -0
  14. package/dist/c4Diagram-5PPSVZJV-CaIN7qay.js +1577 -0
  15. package/dist/channel-BwXGcavV.js +5 -0
  16. package/dist/chunk-2GRJ4B5K-O75udjPr.js +68 -0
  17. package/dist/chunk-2Q5K7J3B-CySL0lOA.js +15 -0
  18. package/dist/chunk-5RXB4S5H-BKPnLCOJ.js +1408 -0
  19. package/dist/chunk-5VM5RSS4--it1VJIv.js +19 -0
  20. package/dist/chunk-6Q2QTUOP-DNiML-50.js +664 -0
  21. package/dist/chunk-GF5L2VYU-z7A-k0-V.js +1533 -0
  22. package/dist/chunk-JWPE2WC7-DAjx3Kjr.js +8 -0
  23. package/dist/chunk-KBJHAD2P-D4R1VW0r.js +19 -0
  24. package/dist/chunk-RYQCIY6F-DmJAYxq8.js +313 -0
  25. package/dist/chunk-XXDRQBXY-CK913N-t.js +8 -0
  26. package/dist/classDiagram-JCYQIIEL-Djipq_HJ.js +16 -0
  27. package/dist/classDiagram-v2-OCEON4UE-Djipq_HJ.js +16 -0
  28. package/dist/classname.d.ts +13 -0
  29. package/dist/classname.d.ts.map +1 -0
  30. package/dist/classname.js +17 -0
  31. package/dist/components/MarkdownEditorFloatingMenus.vue.d.ts +48 -0
  32. package/dist/components/MarkdownEditorFloatingMenus.vue.d.ts.map +1 -0
  33. package/dist/components/MarkdownEditorImageActions.vue.d.ts +20 -0
  34. package/dist/components/MarkdownEditorImageActions.vue.d.ts.map +1 -0
  35. package/dist/components/MarkdownEditorToolbar.vue.d.ts +62 -0
  36. package/dist/components/MarkdownEditorToolbar.vue.d.ts.map +1 -0
  37. package/dist/components/MarkdownEditorToolbarIcon.vue.d.ts +26 -0
  38. package/dist/components/MarkdownEditorToolbarIcon.vue.d.ts.map +1 -0
  39. package/dist/composables/useFloatingPanel.d.ts +13 -0
  40. package/dist/composables/useFloatingPanel.d.ts.map +1 -0
  41. package/dist/composables/useMarkdownEditorValue.d.ts +19 -0
  42. package/dist/composables/useMarkdownEditorValue.d.ts.map +1 -0
  43. package/dist/configure.d.ts +15 -0
  44. package/dist/configure.d.ts.map +1 -0
  45. package/dist/configure.js +19 -0
  46. package/dist/core/actions.d.ts +16 -0
  47. package/dist/core/actions.d.ts.map +1 -0
  48. package/dist/core/basic-editor-atomic-source.d.ts +9 -0
  49. package/dist/core/basic-editor-atomic-source.d.ts.map +1 -0
  50. package/dist/core/basic-editor-command-helpers.d.ts +11 -0
  51. package/dist/core/basic-editor-command-helpers.d.ts.map +1 -0
  52. package/dist/core/basic-editor-markdown.d.ts +7 -0
  53. package/dist/core/basic-editor-markdown.d.ts.map +1 -0
  54. package/dist/core/basic-editor-renderers.d.ts +6 -0
  55. package/dist/core/basic-editor-renderers.d.ts.map +1 -0
  56. package/dist/core/basic-editor-runtime-plugins.d.ts +7 -0
  57. package/dist/core/basic-editor-runtime-plugins.d.ts.map +1 -0
  58. package/dist/core/basic-editor-selection.d.ts +6 -0
  59. package/dist/core/basic-editor-selection.d.ts.map +1 -0
  60. package/dist/core/basic-editor-table-controls.d.ts +3 -0
  61. package/dist/core/basic-editor-table-controls.d.ts.map +1 -0
  62. package/dist/core/basic-editor-table-popover.d.ts +5 -0
  63. package/dist/core/basic-editor-table-popover.d.ts.map +1 -0
  64. package/dist/core/basic-editor-types.d.ts +96 -0
  65. package/dist/core/basic-editor-types.d.ts.map +1 -0
  66. package/dist/core/basic-editor.d.ts +14 -0
  67. package/dist/core/basic-editor.d.ts.map +1 -0
  68. package/dist/core/content-handler.d.ts +21 -0
  69. package/dist/core/content-handler.d.ts.map +1 -0
  70. package/dist/core/editor-instance.d.ts +38 -0
  71. package/dist/core/editor-instance.d.ts.map +1 -0
  72. package/dist/core/events.d.ts +22 -0
  73. package/dist/core/events.d.ts.map +1 -0
  74. package/dist/core/extension-builder.d.ts +86 -0
  75. package/dist/core/extension-builder.d.ts.map +1 -0
  76. package/dist/core/extensions-manager.d.ts +36 -0
  77. package/dist/core/extensions-manager.d.ts.map +1 -0
  78. package/dist/core/index.d.ts +30 -0
  79. package/dist/core/index.d.ts.map +1 -0
  80. package/dist/core/lists.d.ts +18 -0
  81. package/dist/core/lists.d.ts.map +1 -0
  82. package/dist/core/logger.d.ts +46 -0
  83. package/dist/core/logger.d.ts.map +1 -0
  84. package/dist/core/markdown-parser.d.ts +60 -0
  85. package/dist/core/markdown-parser.d.ts.map +1 -0
  86. package/dist/core/markdown.d.ts +23 -0
  87. package/dist/core/markdown.d.ts.map +1 -0
  88. package/dist/core/markup-editor.d.ts +22 -0
  89. package/dist/core/markup-editor.d.ts.map +1 -0
  90. package/dist/core/optional-renderers.d.ts +9 -0
  91. package/dist/core/optional-renderers.d.ts.map +1 -0
  92. package/dist/core/registries.d.ts +50 -0
  93. package/dist/core/registries.d.ts.map +1 -0
  94. package/dist/core/schema-dynamic-modifier.d.ts +13 -0
  95. package/dist/core/schema-dynamic-modifier.d.ts.map +1 -0
  96. package/dist/core/vue-renderer.d.ts +40 -0
  97. package/dist/core/vue-renderer.d.ts.map +1 -0
  98. package/dist/core.js +46 -0
  99. package/dist/cose-bilkent-JH36ORCC-CXuKFbXy.js +2608 -0
  100. package/dist/cynefin-VYW2F7L2-Bkk-F_Js.js +23766 -0
  101. package/dist/cynefinDiagram-MW4NZA55-DwOK40hm.js +299 -0
  102. package/dist/cytoscape.esm-3W4EOjxC.js +18756 -0
  103. package/dist/dagre-VZM6K2ZE-0VsGm8Ag.js +340 -0
  104. package/dist/defaultLocale-BgPVtth8.js +171 -0
  105. package/dist/diagram-7IWD3JNH-BrApu1hz.js +350 -0
  106. package/dist/diagram-B4RE2ZJO-CVXoBg2r.js +461 -0
  107. package/dist/diagram-LBJQPF4R-Dp0eSz2L.js +142 -0
  108. package/dist/diagram-Q27KOJAE-DWIltqIH.js +528 -0
  109. package/dist/diagram-UB23O5K3-B7z2Lj3K.js +219 -0
  110. package/dist/directives.d.ts +10 -0
  111. package/dist/directives.d.ts.map +1 -0
  112. package/dist/ebnfDiagram-BXEA7PRR-CYgE6z_2.js +109 -0
  113. package/dist/erDiagram-JOGREHBK-D3QWrPo-.js +910 -0
  114. package/dist/extensions/additional/folding-heading.d.ts +11 -0
  115. package/dist/extensions/additional/folding-heading.d.ts.map +1 -0
  116. package/dist/extensions/additional/math.d.ts +36 -0
  117. package/dist/extensions/additional/math.d.ts.map +1 -0
  118. package/dist/extensions/additional/mermaid.d.ts +21 -0
  119. package/dist/extensions/additional/mermaid.d.ts.map +1 -0
  120. package/dist/extensions/additional/quote-link.d.ts +19 -0
  121. package/dist/extensions/additional/quote-link.d.ts.map +1 -0
  122. package/dist/extensions/additional/yfm-html-block.d.ts +21 -0
  123. package/dist/extensions/additional/yfm-html-block.d.ts.map +1 -0
  124. package/dist/extensions/base.d.ts +9 -0
  125. package/dist/extensions/base.d.ts.map +1 -0
  126. package/dist/extensions/behavior/clicks-on-edges.d.ts +12 -0
  127. package/dist/extensions/behavior/clicks-on-edges.d.ts.map +1 -0
  128. package/dist/extensions/behavior/clipboard.d.ts +6 -0
  129. package/dist/extensions/behavior/clipboard.d.ts.map +1 -0
  130. package/dist/extensions/behavior/cursor.d.ts +29 -0
  131. package/dist/extensions/behavior/cursor.d.ts.map +1 -0
  132. package/dist/extensions/behavior/editor-mode-keymap.d.ts +8 -0
  133. package/dist/extensions/behavior/editor-mode-keymap.d.ts.map +1 -0
  134. package/dist/extensions/behavior/history.d.ts +21 -0
  135. package/dist/extensions/behavior/history.d.ts.map +1 -0
  136. package/dist/extensions/behavior/placeholder.d.ts +11 -0
  137. package/dist/extensions/behavior/placeholder.d.ts.map +1 -0
  138. package/dist/extensions/behavior/resizable.d.ts +4 -0
  139. package/dist/extensions/behavior/resizable.d.ts.map +1 -0
  140. package/dist/extensions/behavior/selection-commands.d.ts +24 -0
  141. package/dist/extensions/behavior/selection-commands.d.ts.map +1 -0
  142. package/dist/extensions/behavior/selection-context.d.ts +9 -0
  143. package/dist/extensions/behavior/selection-context.d.ts.map +1 -0
  144. package/dist/extensions/behavior/selection.d.ts +12 -0
  145. package/dist/extensions/behavior/selection.d.ts.map +1 -0
  146. package/dist/extensions/index.d.ts +34 -0
  147. package/dist/extensions/index.d.ts.map +1 -0
  148. package/dist/extensions/markdown/blockquote-specs.d.ts +15 -0
  149. package/dist/extensions/markdown/blockquote-specs.d.ts.map +1 -0
  150. package/dist/extensions/markdown/blockquote.d.ts +14 -0
  151. package/dist/extensions/markdown/blockquote.d.ts.map +1 -0
  152. package/dist/extensions/markdown/bold-specs.d.ts +12 -0
  153. package/dist/extensions/markdown/bold-specs.d.ts.map +1 -0
  154. package/dist/extensions/markdown/bold.d.ts +17 -0
  155. package/dist/extensions/markdown/bold.d.ts.map +1 -0
  156. package/dist/extensions/markdown/breaks-specs.d.ts +22 -0
  157. package/dist/extensions/markdown/breaks-specs.d.ts.map +1 -0
  158. package/dist/extensions/markdown/breaks.d.ts +11 -0
  159. package/dist/extensions/markdown/breaks.d.ts.map +1 -0
  160. package/dist/extensions/markdown/code-block-specs.d.ts +14 -0
  161. package/dist/extensions/markdown/code-block-specs.d.ts.map +1 -0
  162. package/dist/extensions/markdown/code-block.d.ts +14 -0
  163. package/dist/extensions/markdown/code-block.d.ts.map +1 -0
  164. package/dist/extensions/markdown/code-specs.d.ts +9 -0
  165. package/dist/extensions/markdown/code-specs.d.ts.map +1 -0
  166. package/dist/extensions/markdown/code.d.ts +11 -0
  167. package/dist/extensions/markdown/code.d.ts.map +1 -0
  168. package/dist/extensions/markdown/deflist-specs.d.ts +16 -0
  169. package/dist/extensions/markdown/deflist-specs.d.ts.map +1 -0
  170. package/dist/extensions/markdown/deflist.d.ts +14 -0
  171. package/dist/extensions/markdown/deflist.d.ts.map +1 -0
  172. package/dist/extensions/markdown/heading-specs.d.ts +11 -0
  173. package/dist/extensions/markdown/heading-specs.d.ts.map +1 -0
  174. package/dist/extensions/markdown/heading.d.ts +17 -0
  175. package/dist/extensions/markdown/heading.d.ts.map +1 -0
  176. package/dist/extensions/markdown/horizontal-rule-specs.d.ts +10 -0
  177. package/dist/extensions/markdown/horizontal-rule-specs.d.ts.map +1 -0
  178. package/dist/extensions/markdown/horizontal-rule.d.ts +8 -0
  179. package/dist/extensions/markdown/horizontal-rule.d.ts.map +1 -0
  180. package/dist/extensions/markdown/html.d.ts +15 -0
  181. package/dist/extensions/markdown/html.d.ts.map +1 -0
  182. package/dist/extensions/markdown/image.d.ts +39 -0
  183. package/dist/extensions/markdown/image.d.ts.map +1 -0
  184. package/dist/extensions/markdown/italic-specs.d.ts +12 -0
  185. package/dist/extensions/markdown/italic-specs.d.ts.map +1 -0
  186. package/dist/extensions/markdown/italic.d.ts +11 -0
  187. package/dist/extensions/markdown/italic.d.ts.map +1 -0
  188. package/dist/extensions/markdown/link-specs.d.ts +19 -0
  189. package/dist/extensions/markdown/link-specs.d.ts.map +1 -0
  190. package/dist/extensions/markdown/link.d.ts +21 -0
  191. package/dist/extensions/markdown/link.d.ts.map +1 -0
  192. package/dist/extensions/markdown/list-specs.d.ts +6 -0
  193. package/dist/extensions/markdown/list-specs.d.ts.map +1 -0
  194. package/dist/extensions/markdown/lists.d.ts +18 -0
  195. package/dist/extensions/markdown/lists.d.ts.map +1 -0
  196. package/dist/extensions/markdown/mark.d.ts +12 -0
  197. package/dist/extensions/markdown/mark.d.ts.map +1 -0
  198. package/dist/extensions/markdown/strike.d.ts +12 -0
  199. package/dist/extensions/markdown/strike.d.ts.map +1 -0
  200. package/dist/extensions/markdown/subscript.d.ts +12 -0
  201. package/dist/extensions/markdown/subscript.d.ts.map +1 -0
  202. package/dist/extensions/markdown/table-actions.d.ts +14 -0
  203. package/dist/extensions/markdown/table-actions.d.ts.map +1 -0
  204. package/dist/extensions/markdown/table-specs.d.ts +25 -0
  205. package/dist/extensions/markdown/table-specs.d.ts.map +1 -0
  206. package/dist/extensions/markdown/table.d.ts +6 -0
  207. package/dist/extensions/markdown/table.d.ts.map +1 -0
  208. package/dist/extensions/markdown/underline.d.ts +12 -0
  209. package/dist/extensions/markdown/underline.d.ts.map +1 -0
  210. package/dist/extensions/specs.d.ts +13 -0
  211. package/dist/extensions/specs.d.ts.map +1 -0
  212. package/dist/extensions.js +247 -0
  213. package/dist/flowDiagram-UKHOOZJN-CfjPcHNW.js +1638 -0
  214. package/dist/forms/MarkdownEditorForm.vue.d.ts +37 -0
  215. package/dist/forms/MarkdownEditorForm.vue.d.ts.map +1 -0
  216. package/dist/forms/MarkdownEditorImageForm.vue.d.ts +131 -0
  217. package/dist/forms/MarkdownEditorImageForm.vue.d.ts.map +1 -0
  218. package/dist/forms/MarkdownEditorLinkForm.vue.d.ts +119 -0
  219. package/dist/forms/MarkdownEditorLinkForm.vue.d.ts.map +1 -0
  220. package/dist/forms/MarkdownEditorTextInput.vue.d.ts +39 -0
  221. package/dist/forms/MarkdownEditorTextInput.vue.d.ts.map +1 -0
  222. package/dist/forms/index.d.ts +7 -0
  223. package/dist/forms/index.d.ts.map +1 -0
  224. package/dist/forms.js +7 -0
  225. package/dist/full-C-o2lPBX.js +16 -0
  226. package/dist/full-specs-Cl-ODShc.js +10 -0
  227. package/dist/ganttDiagram-PKOTCBZU-ECmaWI-9.js +2711 -0
  228. package/dist/gitGraphDiagram-DS77QQ5N-DgG1RGJ8.js +815 -0
  229. package/dist/graph-DAHC4kPm.js +1545 -0
  230. package/dist/heading-specs-D7Bj4aIM.js +489 -0
  231. package/dist/i18n/index.d.ts +70 -0
  232. package/dist/i18n/index.d.ts.map +1 -0
  233. package/dist/i18n.js +132 -0
  234. package/dist/index-CqpK5VVw.js +149 -0
  235. package/dist/index-uerphigI.js +82 -0
  236. package/dist/index.css +1 -0
  237. package/dist/index.d.ts +87 -0
  238. package/dist/index.d.ts.map +1 -0
  239. package/dist/index.js +1293 -0
  240. package/dist/infoDiagram-6WML65LV-B1Yl3nZV.js +24 -0
  241. package/dist/init-DjUOC4st.js +16 -0
  242. package/dist/ishikawaDiagram-WSZJBQD7-4sngaB5o.js +621 -0
  243. package/dist/journeyDiagram-NVQOT4AX-B_6AmR_j.js +834 -0
  244. package/dist/kanban-definition-27J2QSJJ-B8BO9o8J.js +724 -0
  245. package/dist/katex-ByXcxnHy.js +14436 -0
  246. package/dist/katex-DoRnZ_sp.js +11682 -0
  247. package/dist/layout-DBbo_M5I.js +1519 -0
  248. package/dist/linear-BEdRfKba.js +259 -0
  249. package/dist/map-DRdzG8Ho.js +224 -0
  250. package/dist/mermaid.core-CR0bA2Wa.js +16496 -0
  251. package/dist/mindmap-definition-FAOFIHXS-DnPz807N.js +827 -0
  252. package/dist/optional-renderers-BalvqqvY.js +11 -0
  253. package/dist/ordinal-B6-f3MAq.js +61 -0
  254. package/dist/pegDiagram-VL7TDLO6-csGWlzs8.js +95 -0
  255. package/dist/pieDiagram-7S7Q4E2Y-Bqs8j5FX.js +207 -0
  256. package/dist/presets/commonmark-specs.d.ts +9 -0
  257. package/dist/presets/commonmark-specs.d.ts.map +1 -0
  258. package/dist/presets/commonmark.d.ts +26 -0
  259. package/dist/presets/commonmark.d.ts.map +1 -0
  260. package/dist/presets/default.d.ts +6 -0
  261. package/dist/presets/default.d.ts.map +1 -0
  262. package/dist/presets/full-specs.d.ts +6 -0
  263. package/dist/presets/full-specs.d.ts.map +1 -0
  264. package/dist/presets/full.d.ts +17 -0
  265. package/dist/presets/full.d.ts.map +1 -0
  266. package/dist/presets/index.d.ts +13 -0
  267. package/dist/presets/index.d.ts.map +1 -0
  268. package/dist/presets/zero.d.ts +8 -0
  269. package/dist/presets/zero.d.ts.map +1 -0
  270. package/dist/presets.js +10 -0
  271. package/dist/public-types.d.ts +96 -0
  272. package/dist/public-types.d.ts.map +1 -0
  273. package/dist/quadrantDiagram-CIZ2JOQS-jzP4lRrY.js +1023 -0
  274. package/dist/railroadDiagram-AXF67PYL-BSCyR24u.js +77 -0
  275. package/dist/renderer/MarkdownRenderer.vue.d.ts +10 -0
  276. package/dist/renderer/MarkdownRenderer.vue.d.ts.map +1 -0
  277. package/dist/renderer/index.d.ts +3 -0
  278. package/dist/renderer/index.d.ts.map +1 -0
  279. package/dist/renderer/markdown.d.ts +2 -0
  280. package/dist/renderer/markdown.d.ts.map +1 -0
  281. package/dist/renderer/mermaid-runtime.d.ts +4 -0
  282. package/dist/renderer/mermaid-runtime.d.ts.map +1 -0
  283. package/dist/renderer.js +258 -0
  284. package/dist/requirementDiagram-LRYGKXZP-DmEkLYqX.js +882 -0
  285. package/dist/sankeyDiagram-W5VNT64P-CYvRYMTh.js +847 -0
  286. package/dist/schema-dynamic-modifier-Dhf0m6tE.js +21514 -0
  287. package/dist/schema-dynamic-modifier.css +1 -0
  288. package/dist/sequenceDiagram-SI44F4Z6-CyWbDtPA.js +2888 -0
  289. package/dist/sizeCapture-X5ZJPWSS-xKhYCY84.js +46 -0
  290. package/dist/specs.js +127 -0
  291. package/dist/stateDiagram-OKZ733FA-DP44R2Dd.js +263 -0
  292. package/dist/stateDiagram-v2-UEYNNEHI-BvlOisND.js +16 -0
  293. package/dist/swimlanes-SLNWSIFB-BKFp8twH.js +5332 -0
  294. package/dist/swimlanesDiagram-ULZ7WXOC-CTvIFuHq.js +13 -0
  295. package/dist/timeline-definition-Z64GVDOM-B4137uIl.js +1055 -0
  296. package/dist/toolbar/config.d.ts +45 -0
  297. package/dist/toolbar/config.d.ts.map +1 -0
  298. package/dist/toolbar/index.d.ts +3 -0
  299. package/dist/toolbar/index.d.ts.map +1 -0
  300. package/dist/toolbar.js +100 -0
  301. package/dist/use-markdown-editor.d.ts +14 -0
  302. package/dist/use-markdown-editor.d.ts.map +1 -0
  303. package/dist/vennDiagram-T6HMQDX7-CPs8gXjx.js +1578 -0
  304. package/dist/version.d.ts +3 -0
  305. package/dist/version.d.ts.map +1 -0
  306. package/dist/wardleyDiagram-T6FBY63Y-BYp13hbI.js +675 -0
  307. package/dist/xychartDiagram-ELKLHX3M-DTT37K2u.js +1388 -0
  308. package/package.json +110 -0
@@ -0,0 +1,1408 @@
1
+ import { g as ee } from "./chunk-XXDRQBXY-CK913N-t.js";
2
+ import { s as se } from "./chunk-KBJHAD2P-D4R1VW0r.js";
3
+ import { _ as p, l as b, c as $, v as ie, x as re, a as ae, b as ne, g as oe, s as le, n as ce, o as he, R as ue, k as j, p as de, d as kt, N as fe } from "./mermaid.core-CR0bA2Wa.js";
4
+ import { f as pe } from "./chunk-2GRJ4B5K-O75udjPr.js";
5
+ var Ct = (function() {
6
+ var t = /* @__PURE__ */ p(function(V, o, u, a) {
7
+ for (u = u || {}, a = V.length; a--; u[V[a]] = o) ;
8
+ return u;
9
+ }, "o"), e = [1, 2], s = [1, 3], n = [1, 4], r = [2, 4], c = [1, 9], d = [1, 11], S = [1, 16], f = [1, 17], T = [1, 18], E = [1, 19], m = [1, 33], L = [1, 20], D = [1, 21], h = [1, 22], I = [1, 23], w = [1, 24], C = [1, 26], F = [1, 27], A = [1, 28], P = [1, 29], N = [1, 30], z = [1, 31], rt = [1, 32], at = [1, 35], nt = [1, 36], ot = [1, 37], lt = [1, 38], K = [1, 34], y = [1, 4, 5, 16, 17, 19, 21, 22, 24, 25, 26, 27, 28, 29, 33, 35, 37, 38, 41, 45, 48, 51, 52, 53, 54, 57], ct = [1, 4, 5, 14, 15, 16, 17, 19, 21, 22, 24, 25, 26, 27, 28, 29, 33, 35, 37, 38, 39, 40, 41, 45, 48, 51, 52, 53, 54, 57], Lt = [4, 5, 16, 17, 19, 21, 22, 24, 25, 26, 27, 28, 29, 33, 35, 37, 38, 41, 45, 48, 51, 52, 53, 54, 57], gt = {
10
+ trace: /* @__PURE__ */ p(function() {
11
+ }, "trace"),
12
+ yy: {},
13
+ symbols_: { error: 2, start: 3, SPACE: 4, NL: 5, SD: 6, document: 7, line: 8, statement: 9, classDefStatement: 10, styleStatement: 11, cssClassStatement: 12, idStatement: 13, DESCR: 14, "-->": 15, HIDE_EMPTY: 16, scale: 17, WIDTH: 18, COMPOSIT_STATE: 19, STRUCT_START: 20, STRUCT_STOP: 21, STATE_DESCR: 22, AS: 23, ID: 24, FORK: 25, JOIN: 26, CHOICE: 27, CONCURRENT: 28, note: 29, notePosition: 30, NOTE_TEXT: 31, direction: 32, acc_title: 33, acc_title_value: 34, acc_descr: 35, acc_descr_value: 36, acc_descr_multiline_value: 37, CLICK: 38, STRING: 39, HREF: 40, classDef: 41, CLASSDEF_ID: 42, CLASSDEF_STYLEOPTS: 43, DEFAULT: 44, style: 45, STYLE_IDS: 46, STYLEDEF_STYLEOPTS: 47, class: 48, CLASSENTITY_IDS: 49, STYLECLASS: 50, direction_tb: 51, direction_bt: 52, direction_rl: 53, direction_lr: 54, eol: 55, ";": 56, EDGE_STATE: 57, STYLE_SEPARATOR: 58, left_of: 59, right_of: 60, $accept: 0, $end: 1 },
14
+ terminals_: { 2: "error", 4: "SPACE", 5: "NL", 6: "SD", 14: "DESCR", 15: "-->", 16: "HIDE_EMPTY", 17: "scale", 18: "WIDTH", 19: "COMPOSIT_STATE", 20: "STRUCT_START", 21: "STRUCT_STOP", 22: "STATE_DESCR", 23: "AS", 24: "ID", 25: "FORK", 26: "JOIN", 27: "CHOICE", 28: "CONCURRENT", 29: "note", 31: "NOTE_TEXT", 33: "acc_title", 34: "acc_title_value", 35: "acc_descr", 36: "acc_descr_value", 37: "acc_descr_multiline_value", 38: "CLICK", 39: "STRING", 40: "HREF", 41: "classDef", 42: "CLASSDEF_ID", 43: "CLASSDEF_STYLEOPTS", 44: "DEFAULT", 45: "style", 46: "STYLE_IDS", 47: "STYLEDEF_STYLEOPTS", 48: "class", 49: "CLASSENTITY_IDS", 50: "STYLECLASS", 51: "direction_tb", 52: "direction_bt", 53: "direction_rl", 54: "direction_lr", 56: ";", 57: "EDGE_STATE", 58: "STYLE_SEPARATOR", 59: "left_of", 60: "right_of" },
15
+ productions_: [0, [3, 2], [3, 2], [3, 2], [7, 0], [7, 2], [8, 2], [8, 1], [8, 1], [9, 1], [9, 1], [9, 1], [9, 1], [9, 2], [9, 3], [9, 4], [9, 1], [9, 2], [9, 1], [9, 4], [9, 3], [9, 6], [9, 1], [9, 1], [9, 1], [9, 1], [9, 4], [9, 4], [9, 1], [9, 2], [9, 2], [9, 1], [9, 5], [9, 5], [10, 3], [10, 3], [11, 3], [12, 3], [32, 1], [32, 1], [32, 1], [32, 1], [55, 1], [55, 1], [13, 1], [13, 1], [13, 3], [13, 3], [30, 1], [30, 1]],
16
+ performAction: /* @__PURE__ */ p(function(o, u, a, g, _, i, B) {
17
+ var l = i.length - 1;
18
+ switch (_) {
19
+ case 3:
20
+ return g.setRootDoc(i[l]), i[l];
21
+ case 4:
22
+ this.$ = [];
23
+ break;
24
+ case 5:
25
+ i[l] != "nl" && (i[l - 1].push(i[l]), this.$ = i[l - 1]);
26
+ break;
27
+ case 6:
28
+ case 7:
29
+ this.$ = i[l];
30
+ break;
31
+ case 8:
32
+ this.$ = "nl";
33
+ break;
34
+ case 12:
35
+ this.$ = i[l];
36
+ break;
37
+ case 13:
38
+ const Z = i[l - 1];
39
+ Z.description = g.trimColon(i[l]), this.$ = Z;
40
+ break;
41
+ case 14:
42
+ this.$ = { stmt: "relation", state1: i[l - 2], state2: i[l] };
43
+ break;
44
+ case 15:
45
+ const Tt = g.trimColon(i[l]);
46
+ this.$ = { stmt: "relation", state1: i[l - 3], state2: i[l - 1], description: Tt };
47
+ break;
48
+ case 19:
49
+ this.$ = { stmt: "state", id: i[l - 3], type: "default", description: "", doc: i[l - 1] };
50
+ break;
51
+ case 20:
52
+ var Y = i[l], X = i[l - 2].trim();
53
+ if (i[l].match(":")) {
54
+ var ut = i[l].split(":");
55
+ Y = ut[0], X = [X, ut[1]];
56
+ }
57
+ this.$ = { stmt: "state", id: Y, type: "default", description: X };
58
+ break;
59
+ case 21:
60
+ this.$ = { stmt: "state", id: i[l - 3], type: "default", description: i[l - 5], doc: i[l - 1] };
61
+ break;
62
+ case 22:
63
+ this.$ = { stmt: "state", id: i[l], type: "fork" };
64
+ break;
65
+ case 23:
66
+ this.$ = { stmt: "state", id: i[l], type: "join" };
67
+ break;
68
+ case 24:
69
+ this.$ = { stmt: "state", id: i[l], type: "choice" };
70
+ break;
71
+ case 25:
72
+ this.$ = { stmt: "state", id: g.getDividerId(), type: "divider" };
73
+ break;
74
+ case 26:
75
+ this.$ = { stmt: "state", id: i[l - 1].trim(), note: { position: i[l - 2].trim(), text: i[l].trim() } };
76
+ break;
77
+ case 29:
78
+ this.$ = i[l].trim(), g.setAccTitle(this.$);
79
+ break;
80
+ case 30:
81
+ case 31:
82
+ this.$ = i[l].trim(), g.setAccDescription(this.$);
83
+ break;
84
+ case 32:
85
+ this.$ = {
86
+ stmt: "click",
87
+ id: i[l - 3],
88
+ url: i[l - 2],
89
+ tooltip: i[l - 1]
90
+ };
91
+ break;
92
+ case 33:
93
+ this.$ = {
94
+ stmt: "click",
95
+ id: i[l - 3],
96
+ url: i[l - 1],
97
+ tooltip: ""
98
+ };
99
+ break;
100
+ case 34:
101
+ case 35:
102
+ this.$ = { stmt: "classDef", id: i[l - 1].trim(), classes: i[l].trim() };
103
+ break;
104
+ case 36:
105
+ this.$ = { stmt: "style", id: i[l - 1].trim(), styleClass: i[l].trim() };
106
+ break;
107
+ case 37:
108
+ this.$ = { stmt: "applyClass", id: i[l - 1].trim(), styleClass: i[l].trim() };
109
+ break;
110
+ case 38:
111
+ g.setDirection("TB"), this.$ = { stmt: "dir", value: "TB" };
112
+ break;
113
+ case 39:
114
+ g.setDirection("BT"), this.$ = { stmt: "dir", value: "BT" };
115
+ break;
116
+ case 40:
117
+ g.setDirection("RL"), this.$ = { stmt: "dir", value: "RL" };
118
+ break;
119
+ case 41:
120
+ g.setDirection("LR"), this.$ = { stmt: "dir", value: "LR" };
121
+ break;
122
+ case 44:
123
+ case 45:
124
+ this.$ = { stmt: "state", id: i[l].trim(), type: "default", description: "" };
125
+ break;
126
+ case 46:
127
+ this.$ = { stmt: "state", id: i[l - 2].trim(), classes: [i[l].trim()], type: "default", description: "" };
128
+ break;
129
+ case 47:
130
+ this.$ = { stmt: "state", id: i[l - 2].trim(), classes: [i[l].trim()], type: "default", description: "" };
131
+ break;
132
+ }
133
+ }, "anonymous"),
134
+ table: [{ 3: 1, 4: e, 5: s, 6: n }, { 1: [3] }, { 3: 5, 4: e, 5: s, 6: n }, { 3: 6, 4: e, 5: s, 6: n }, t([1, 4, 5, 16, 17, 19, 22, 24, 25, 26, 27, 28, 29, 33, 35, 37, 38, 41, 45, 48, 51, 52, 53, 54, 57], r, { 7: 7 }), { 1: [2, 1] }, { 1: [2, 2] }, { 1: [2, 3], 4: c, 5: d, 8: 8, 9: 10, 10: 12, 11: 13, 12: 14, 13: 15, 16: S, 17: f, 19: T, 22: E, 24: m, 25: L, 26: D, 27: h, 28: I, 29: w, 32: 25, 33: C, 35: F, 37: A, 38: P, 41: N, 45: z, 48: rt, 51: at, 52: nt, 53: ot, 54: lt, 57: K }, t(y, [2, 5]), { 9: 39, 10: 12, 11: 13, 12: 14, 13: 15, 16: S, 17: f, 19: T, 22: E, 24: m, 25: L, 26: D, 27: h, 28: I, 29: w, 32: 25, 33: C, 35: F, 37: A, 38: P, 41: N, 45: z, 48: rt, 51: at, 52: nt, 53: ot, 54: lt, 57: K }, t(y, [2, 7]), t(y, [2, 8]), t(y, [2, 9]), t(y, [2, 10]), t(y, [2, 11]), t(y, [2, 12], { 14: [1, 40], 15: [1, 41] }), t(y, [2, 16]), { 18: [1, 42] }, t(y, [2, 18], { 20: [1, 43] }), { 23: [1, 44] }, t(y, [2, 22]), t(y, [2, 23]), t(y, [2, 24]), t(y, [2, 25]), { 30: 45, 31: [1, 46], 59: [1, 47], 60: [1, 48] }, t(y, [2, 28]), { 34: [1, 49] }, { 36: [1, 50] }, t(y, [2, 31]), { 13: 51, 24: m, 57: K }, { 42: [1, 52], 44: [1, 53] }, { 46: [1, 54] }, { 49: [1, 55] }, t(ct, [2, 44], { 58: [1, 56] }), t(ct, [2, 45], { 58: [1, 57] }), t(y, [2, 38]), t(y, [2, 39]), t(y, [2, 40]), t(y, [2, 41]), t(y, [2, 6]), t(y, [2, 13]), { 13: 58, 24: m, 57: K }, t(y, [2, 17]), t(Lt, r, { 7: 59 }), { 24: [1, 60] }, { 24: [1, 61] }, { 23: [1, 62] }, { 24: [2, 48] }, { 24: [2, 49] }, t(y, [2, 29]), t(y, [2, 30]), { 39: [1, 63], 40: [1, 64] }, { 43: [1, 65] }, { 43: [1, 66] }, { 47: [1, 67] }, { 50: [1, 68] }, { 24: [1, 69] }, { 24: [1, 70] }, t(y, [2, 14], { 14: [1, 71] }), { 4: c, 5: d, 8: 8, 9: 10, 10: 12, 11: 13, 12: 14, 13: 15, 16: S, 17: f, 19: T, 21: [1, 72], 22: E, 24: m, 25: L, 26: D, 27: h, 28: I, 29: w, 32: 25, 33: C, 35: F, 37: A, 38: P, 41: N, 45: z, 48: rt, 51: at, 52: nt, 53: ot, 54: lt, 57: K }, t(y, [2, 20], { 20: [1, 73] }), { 31: [1, 74] }, { 24: [1, 75] }, { 39: [1, 76] }, { 39: [1, 77] }, t(y, [2, 34]), t(y, [2, 35]), t(y, [2, 36]), t(y, [2, 37]), t(ct, [2, 46]), t(ct, [2, 47]), t(y, [2, 15]), t(y, [2, 19]), t(Lt, r, { 7: 78 }), t(y, [2, 26]), t(y, [2, 27]), { 5: [1, 79] }, { 5: [1, 80] }, { 4: c, 5: d, 8: 8, 9: 10, 10: 12, 11: 13, 12: 14, 13: 15, 16: S, 17: f, 19: T, 21: [1, 81], 22: E, 24: m, 25: L, 26: D, 27: h, 28: I, 29: w, 32: 25, 33: C, 35: F, 37: A, 38: P, 41: N, 45: z, 48: rt, 51: at, 52: nt, 53: ot, 54: lt, 57: K }, t(y, [2, 32]), t(y, [2, 33]), t(y, [2, 21])],
135
+ defaultActions: { 5: [2, 1], 6: [2, 2], 47: [2, 48], 48: [2, 49] },
136
+ parseError: /* @__PURE__ */ p(function(o, u) {
137
+ if (u.recoverable)
138
+ this.trace(o);
139
+ else {
140
+ var a = new Error(o);
141
+ throw a.hash = u, a;
142
+ }
143
+ }, "parseError"),
144
+ parse: /* @__PURE__ */ p(function(o) {
145
+ var u = this, a = [0], g = [], _ = [null], i = [], B = this.table, l = "", Y = 0, X = 0, ut = 2, Z = 1, Tt = i.slice.call(arguments, 1), k = Object.create(this.lexer), U = { yy: {} };
146
+ for (var Et in this.yy)
147
+ Object.prototype.hasOwnProperty.call(this.yy, Et) && (U.yy[Et] = this.yy[Et]);
148
+ k.setInput(o, U.yy), U.yy.lexer = k, U.yy.parser = this, typeof k.yylloc > "u" && (k.yylloc = {});
149
+ var _t = k.yylloc;
150
+ i.push(_t);
151
+ var Zt = k.options && k.options.ranges;
152
+ typeof U.yy.parseError == "function" ? this.parseError = U.yy.parseError : this.parseError = Object.getPrototypeOf(this).parseError;
153
+ function te(R) {
154
+ a.length = a.length - 2 * R, _.length = _.length - R, i.length = i.length - R;
155
+ }
156
+ p(te, "popStack");
157
+ function It() {
158
+ var R;
159
+ return R = g.pop() || k.lex() || Z, typeof R != "number" && (R instanceof Array && (g = R, R = g.pop()), R = u.symbols_[R] || R), R;
160
+ }
161
+ p(It, "lex");
162
+ for (var x, W, O, mt, J = {}, dt, G, wt, ft; ; ) {
163
+ if (W = a[a.length - 1], this.defaultActions[W] ? O = this.defaultActions[W] : ((x === null || typeof x > "u") && (x = It()), O = B[W] && B[W][x]), typeof O > "u" || !O.length || !O[0]) {
164
+ var bt = "";
165
+ ft = [];
166
+ for (dt in B[W])
167
+ this.terminals_[dt] && dt > ut && ft.push("'" + this.terminals_[dt] + "'");
168
+ k.showPosition ? bt = "Parse error on line " + (Y + 1) + `:
169
+ ` + k.showPosition() + `
170
+ Expecting ` + ft.join(", ") + ", got '" + (this.terminals_[x] || x) + "'" : bt = "Parse error on line " + (Y + 1) + ": Unexpected " + (x == Z ? "end of input" : "'" + (this.terminals_[x] || x) + "'"), this.parseError(bt, {
171
+ text: k.match,
172
+ token: this.terminals_[x] || x,
173
+ line: k.yylineno,
174
+ loc: _t,
175
+ expected: ft
176
+ });
177
+ }
178
+ if (O[0] instanceof Array && O.length > 1)
179
+ throw new Error("Parse Error: multiple actions possible at state: " + W + ", token: " + x);
180
+ switch (O[0]) {
181
+ case 1:
182
+ a.push(x), _.push(k.yytext), i.push(k.yylloc), a.push(O[1]), x = null, X = k.yyleng, l = k.yytext, Y = k.yylineno, _t = k.yylloc;
183
+ break;
184
+ case 2:
185
+ if (G = this.productions_[O[1]][1], J.$ = _[_.length - G], J._$ = {
186
+ first_line: i[i.length - (G || 1)].first_line,
187
+ last_line: i[i.length - 1].last_line,
188
+ first_column: i[i.length - (G || 1)].first_column,
189
+ last_column: i[i.length - 1].last_column
190
+ }, Zt && (J._$.range = [
191
+ i[i.length - (G || 1)].range[0],
192
+ i[i.length - 1].range[1]
193
+ ]), mt = this.performAction.apply(J, [
194
+ l,
195
+ X,
196
+ Y,
197
+ U.yy,
198
+ O[1],
199
+ _,
200
+ i
201
+ ].concat(Tt)), typeof mt < "u")
202
+ return mt;
203
+ G && (a = a.slice(0, -1 * G * 2), _ = _.slice(0, -1 * G), i = i.slice(0, -1 * G)), a.push(this.productions_[O[1]][0]), _.push(J.$), i.push(J._$), wt = B[a[a.length - 2]][a[a.length - 1]], a.push(wt);
204
+ break;
205
+ case 3:
206
+ return !0;
207
+ }
208
+ }
209
+ return !0;
210
+ }, "parse")
211
+ }, Qt = /* @__PURE__ */ (function() {
212
+ var V = {
213
+ EOF: 1,
214
+ parseError: /* @__PURE__ */ p(function(u, a) {
215
+ if (this.yy.parser)
216
+ this.yy.parser.parseError(u, a);
217
+ else
218
+ throw new Error(u);
219
+ }, "parseError"),
220
+ // resets the lexer, sets new input
221
+ setInput: /* @__PURE__ */ p(function(o, u) {
222
+ return this.yy = u || this.yy || {}, this._input = o, this._more = this._backtrack = this.done = !1, this.yylineno = this.yyleng = 0, this.yytext = this.matched = this.match = "", this.conditionStack = ["INITIAL"], this.yylloc = {
223
+ first_line: 1,
224
+ first_column: 0,
225
+ last_line: 1,
226
+ last_column: 0
227
+ }, this.options.ranges && (this.yylloc.range = [0, 0]), this.offset = 0, this;
228
+ }, "setInput"),
229
+ // consumes and returns one char from the input
230
+ input: /* @__PURE__ */ p(function() {
231
+ var o = this._input[0];
232
+ this.yytext += o, this.yyleng++, this.offset++, this.match += o, this.matched += o;
233
+ var u = o.match(/(?:\r\n?|\n).*/g);
234
+ return u ? (this.yylineno++, this.yylloc.last_line++) : this.yylloc.last_column++, this.options.ranges && this.yylloc.range[1]++, this._input = this._input.slice(1), o;
235
+ }, "input"),
236
+ // unshifts one char (or a string) into the input
237
+ unput: /* @__PURE__ */ p(function(o) {
238
+ var u = o.length, a = o.split(/(?:\r\n?|\n)/g);
239
+ this._input = o + this._input, this.yytext = this.yytext.substr(0, this.yytext.length - u), this.offset -= u;
240
+ var g = this.match.split(/(?:\r\n?|\n)/g);
241
+ this.match = this.match.substr(0, this.match.length - 1), this.matched = this.matched.substr(0, this.matched.length - 1), a.length - 1 && (this.yylineno -= a.length - 1);
242
+ var _ = this.yylloc.range;
243
+ return this.yylloc = {
244
+ first_line: this.yylloc.first_line,
245
+ last_line: this.yylineno + 1,
246
+ first_column: this.yylloc.first_column,
247
+ last_column: a ? (a.length === g.length ? this.yylloc.first_column : 0) + g[g.length - a.length].length - a[0].length : this.yylloc.first_column - u
248
+ }, this.options.ranges && (this.yylloc.range = [_[0], _[0] + this.yyleng - u]), this.yyleng = this.yytext.length, this;
249
+ }, "unput"),
250
+ // When called from action, caches matched text and appends it on next action
251
+ more: /* @__PURE__ */ p(function() {
252
+ return this._more = !0, this;
253
+ }, "more"),
254
+ // When called from action, signals the lexer that this rule fails to match the input, so the next matching rule (regex) should be tested instead.
255
+ reject: /* @__PURE__ */ p(function() {
256
+ if (this.options.backtrack_lexer)
257
+ this._backtrack = !0;
258
+ else
259
+ return this.parseError("Lexical error on line " + (this.yylineno + 1) + `. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
260
+ ` + this.showPosition(), {
261
+ text: "",
262
+ token: null,
263
+ line: this.yylineno
264
+ });
265
+ return this;
266
+ }, "reject"),
267
+ // retain first n characters of the match
268
+ less: /* @__PURE__ */ p(function(o) {
269
+ this.unput(this.match.slice(o));
270
+ }, "less"),
271
+ // displays already matched input, i.e. for error messages
272
+ pastInput: /* @__PURE__ */ p(function() {
273
+ var o = this.matched.substr(0, this.matched.length - this.match.length);
274
+ return (o.length > 20 ? "..." : "") + o.substr(-20).replace(/\n/g, "");
275
+ }, "pastInput"),
276
+ // displays upcoming input, i.e. for error messages
277
+ upcomingInput: /* @__PURE__ */ p(function() {
278
+ var o = this.match;
279
+ return o.length < 20 && (o += this._input.substr(0, 20 - o.length)), (o.substr(0, 20) + (o.length > 20 ? "..." : "")).replace(/\n/g, "");
280
+ }, "upcomingInput"),
281
+ // displays the character position where the lexing error occurred, i.e. for error messages
282
+ showPosition: /* @__PURE__ */ p(function() {
283
+ var o = this.pastInput(), u = new Array(o.length + 1).join("-");
284
+ return o + this.upcomingInput() + `
285
+ ` + u + "^";
286
+ }, "showPosition"),
287
+ // test the lexed token: return FALSE when not a match, otherwise return token
288
+ test_match: /* @__PURE__ */ p(function(o, u) {
289
+ var a, g, _;
290
+ if (this.options.backtrack_lexer && (_ = {
291
+ yylineno: this.yylineno,
292
+ yylloc: {
293
+ first_line: this.yylloc.first_line,
294
+ last_line: this.last_line,
295
+ first_column: this.yylloc.first_column,
296
+ last_column: this.yylloc.last_column
297
+ },
298
+ yytext: this.yytext,
299
+ match: this.match,
300
+ matches: this.matches,
301
+ matched: this.matched,
302
+ yyleng: this.yyleng,
303
+ offset: this.offset,
304
+ _more: this._more,
305
+ _input: this._input,
306
+ yy: this.yy,
307
+ conditionStack: this.conditionStack.slice(0),
308
+ done: this.done
309
+ }, this.options.ranges && (_.yylloc.range = this.yylloc.range.slice(0))), g = o[0].match(/(?:\r\n?|\n).*/g), g && (this.yylineno += g.length), this.yylloc = {
310
+ first_line: this.yylloc.last_line,
311
+ last_line: this.yylineno + 1,
312
+ first_column: this.yylloc.last_column,
313
+ last_column: g ? g[g.length - 1].length - g[g.length - 1].match(/\r?\n?/)[0].length : this.yylloc.last_column + o[0].length
314
+ }, this.yytext += o[0], this.match += o[0], this.matches = o, this.yyleng = this.yytext.length, this.options.ranges && (this.yylloc.range = [this.offset, this.offset += this.yyleng]), this._more = !1, this._backtrack = !1, this._input = this._input.slice(o[0].length), this.matched += o[0], a = this.performAction.call(this, this.yy, this, u, this.conditionStack[this.conditionStack.length - 1]), this.done && this._input && (this.done = !1), a)
315
+ return a;
316
+ if (this._backtrack) {
317
+ for (var i in _)
318
+ this[i] = _[i];
319
+ return !1;
320
+ }
321
+ return !1;
322
+ }, "test_match"),
323
+ // return next match in input
324
+ next: /* @__PURE__ */ p(function() {
325
+ if (this.done)
326
+ return this.EOF;
327
+ this._input || (this.done = !0);
328
+ var o, u, a, g;
329
+ this._more || (this.yytext = "", this.match = "");
330
+ for (var _ = this._currentRules(), i = 0; i < _.length; i++)
331
+ if (a = this._input.match(this.rules[_[i]]), a && (!u || a[0].length > u[0].length)) {
332
+ if (u = a, g = i, this.options.backtrack_lexer) {
333
+ if (o = this.test_match(a, _[i]), o !== !1)
334
+ return o;
335
+ if (this._backtrack) {
336
+ u = !1;
337
+ continue;
338
+ } else
339
+ return !1;
340
+ } else if (!this.options.flex)
341
+ break;
342
+ }
343
+ return u ? (o = this.test_match(u, _[g]), o !== !1 ? o : !1) : this._input === "" ? this.EOF : this.parseError("Lexical error on line " + (this.yylineno + 1) + `. Unrecognized text.
344
+ ` + this.showPosition(), {
345
+ text: "",
346
+ token: null,
347
+ line: this.yylineno
348
+ });
349
+ }, "next"),
350
+ // return next match that has a token
351
+ lex: /* @__PURE__ */ p(function() {
352
+ var u = this.next();
353
+ return u || this.lex();
354
+ }, "lex"),
355
+ // activates a new lexer condition state (pushes the new lexer condition state onto the condition stack)
356
+ begin: /* @__PURE__ */ p(function(u) {
357
+ this.conditionStack.push(u);
358
+ }, "begin"),
359
+ // pop the previously active lexer condition state off the condition stack
360
+ popState: /* @__PURE__ */ p(function() {
361
+ var u = this.conditionStack.length - 1;
362
+ return u > 0 ? this.conditionStack.pop() : this.conditionStack[0];
363
+ }, "popState"),
364
+ // produce the lexer rule set which is active for the currently active lexer condition state
365
+ _currentRules: /* @__PURE__ */ p(function() {
366
+ return this.conditionStack.length && this.conditionStack[this.conditionStack.length - 1] ? this.conditions[this.conditionStack[this.conditionStack.length - 1]].rules : this.conditions.INITIAL.rules;
367
+ }, "_currentRules"),
368
+ // return the currently active lexer condition state; when an index argument is provided it produces the N-th previous condition state, if available
369
+ topState: /* @__PURE__ */ p(function(u) {
370
+ return u = this.conditionStack.length - 1 - Math.abs(u || 0), u >= 0 ? this.conditionStack[u] : "INITIAL";
371
+ }, "topState"),
372
+ // alias for begin(condition)
373
+ pushState: /* @__PURE__ */ p(function(u) {
374
+ this.begin(u);
375
+ }, "pushState"),
376
+ // return the number of states currently on the stack
377
+ stateStackSize: /* @__PURE__ */ p(function() {
378
+ return this.conditionStack.length;
379
+ }, "stateStackSize"),
380
+ options: { "case-insensitive": !0 },
381
+ performAction: /* @__PURE__ */ p(function(u, a, g, _) {
382
+ function i() {
383
+ const B = a.yytext.indexOf("%%");
384
+ if (B === 0)
385
+ return !1;
386
+ if (B > 0) {
387
+ const l = a.yytext.slice(0, B), Y = a.yytext.slice(B);
388
+ Y && u.lexer.unput(Y), a.yytext = l;
389
+ }
390
+ return !0;
391
+ }
392
+ switch (p(i, "processId"), g) {
393
+ case 0:
394
+ return 38;
395
+ case 1:
396
+ return 40;
397
+ case 2:
398
+ return 39;
399
+ case 3:
400
+ return 44;
401
+ case 4:
402
+ return 51;
403
+ case 5:
404
+ return 52;
405
+ case 6:
406
+ return 53;
407
+ case 7:
408
+ return 54;
409
+ case 8:
410
+ return 5;
411
+ case 9:
412
+ break;
413
+ case 10:
414
+ break;
415
+ case 11:
416
+ break;
417
+ case 12:
418
+ break;
419
+ case 13:
420
+ return this.pushState("SCALE"), 17;
421
+ case 14:
422
+ return 18;
423
+ case 15:
424
+ this.popState();
425
+ break;
426
+ case 16:
427
+ return this.begin("acc_title"), 33;
428
+ case 17:
429
+ return this.popState(), "acc_title_value";
430
+ case 18:
431
+ return this.begin("acc_descr"), 35;
432
+ case 19:
433
+ return this.popState(), "acc_descr_value";
434
+ case 20:
435
+ this.begin("acc_descr_multiline");
436
+ break;
437
+ case 21:
438
+ this.popState();
439
+ break;
440
+ case 22:
441
+ return "acc_descr_multiline_value";
442
+ case 23:
443
+ return this.pushState("CLASSDEF"), 41;
444
+ case 24:
445
+ return this.popState(), this.pushState("CLASSDEFID"), "DEFAULT_CLASSDEF_ID";
446
+ case 25:
447
+ return this.popState(), this.pushState("CLASSDEFID"), 42;
448
+ case 26:
449
+ return this.popState(), 43;
450
+ case 27:
451
+ return this.pushState("CLASS"), 48;
452
+ case 28:
453
+ return this.popState(), this.pushState("CLASS_STYLE"), 49;
454
+ case 29:
455
+ return this.popState(), 50;
456
+ case 30:
457
+ return this.pushState("STYLE"), 45;
458
+ case 31:
459
+ return this.popState(), this.pushState("STYLEDEF_STYLES"), 46;
460
+ case 32:
461
+ return this.popState(), 47;
462
+ case 33:
463
+ return this.pushState("SCALE"), 17;
464
+ case 34:
465
+ return 18;
466
+ case 35:
467
+ this.popState();
468
+ break;
469
+ case 36:
470
+ this.pushState("STATE");
471
+ break;
472
+ case 37:
473
+ return this.popState(), a.yytext = a.yytext.slice(0, -8).trim(), 25;
474
+ case 38:
475
+ return this.popState(), a.yytext = a.yytext.slice(0, -8).trim(), 26;
476
+ case 39:
477
+ return this.popState(), a.yytext = a.yytext.slice(0, -10).trim(), 27;
478
+ case 40:
479
+ return this.popState(), a.yytext = a.yytext.slice(0, -8).trim(), 25;
480
+ case 41:
481
+ return this.popState(), a.yytext = a.yytext.slice(0, -8).trim(), 26;
482
+ case 42:
483
+ return this.popState(), a.yytext = a.yytext.slice(0, -10).trim(), 27;
484
+ case 43:
485
+ return 51;
486
+ case 44:
487
+ return 52;
488
+ case 45:
489
+ return 53;
490
+ case 46:
491
+ return 54;
492
+ case 47:
493
+ this.pushState("STATE_STRING");
494
+ break;
495
+ case 48:
496
+ return this.pushState("STATE_ID"), "AS";
497
+ case 49:
498
+ return i() ? (this.popState(), "ID") : void 0;
499
+ case 50:
500
+ this.popState();
501
+ break;
502
+ case 51:
503
+ return "STATE_DESCR";
504
+ case 52:
505
+ throw new Error('Error: State name must be a single word. Found: "' + a.yytext.trim() + '"');
506
+ case 53:
507
+ return 19;
508
+ case 54:
509
+ this.popState();
510
+ break;
511
+ case 55:
512
+ return this.popState(), this.pushState("struct"), 20;
513
+ case 56:
514
+ return this.popState(), 21;
515
+ case 57:
516
+ break;
517
+ case 58:
518
+ return this.begin("NOTE"), 29;
519
+ case 59:
520
+ return this.popState(), this.pushState("NOTE_ID"), 59;
521
+ case 60:
522
+ return this.popState(), this.pushState("NOTE_ID"), 60;
523
+ case 61:
524
+ this.popState(), this.pushState("FLOATING_NOTE");
525
+ break;
526
+ case 62:
527
+ return this.popState(), this.pushState("FLOATING_NOTE_ID"), "AS";
528
+ case 63:
529
+ break;
530
+ case 64:
531
+ return "NOTE_TEXT";
532
+ case 65:
533
+ return i() ? (this.popState(), "ID") : void 0;
534
+ case 66:
535
+ return i() ? (this.popState(), this.pushState("NOTE_TEXT"), 24) : void 0;
536
+ case 67:
537
+ return this.popState(), a.yytext = a.yytext.substr(2).trim(), 31;
538
+ case 68:
539
+ return this.popState(), a.yytext = a.yytext.slice(0, -8).trim(), 31;
540
+ case 69:
541
+ return 6;
542
+ case 70:
543
+ return 6;
544
+ case 71:
545
+ return 16;
546
+ case 72:
547
+ return 57;
548
+ case 73:
549
+ return i() ? 24 : void 0;
550
+ case 74:
551
+ return a.yytext = a.yytext.trim(), 14;
552
+ case 75:
553
+ return 15;
554
+ case 76:
555
+ return 28;
556
+ case 77:
557
+ return 58;
558
+ case 78:
559
+ return 5;
560
+ case 79:
561
+ return "INVALID";
562
+ }
563
+ }, "anonymous"),
564
+ rules: [/^(?:click\b)/i, /^(?:href\b)/i, /^(?:"[^"]*")/i, /^(?:default\b)/i, /^(?:.*direction\s+TB[^\n]*)/i, /^(?:.*direction\s+BT[^\n]*)/i, /^(?:.*direction\s+RL[^\n]*)/i, /^(?:.*direction\s+LR[^\n]*)/i, /^(?:[\n]+)/i, /^(?:[\s]+)/i, /^(?:((?!\n)\s)+)/i, /^(?:#[^\n]*)/i, /^(?:%%(?!\{)[^\n]*)/i, /^(?:scale\s+)/i, /^(?:\d+)/i, /^(?:\s+width\b)/i, /^(?:accTitle\s*:\s*)/i, /^(?:(?!\n||)*[^\n]*)/i, /^(?:accDescr\s*:\s*)/i, /^(?:(?!\n||)*[^\n]*)/i, /^(?:accDescr\s*\{\s*)/i, /^(?:[\}])/i, /^(?:[^\}]*)/i, /^(?:classDef\s+)/i, /^(?:DEFAULT\s+)/i, /^(?:\w+\s+)/i, /^(?:[^\n]*)/i, /^(?:class\s+)/i, /^(?:(\w+)+((,\s*\w+)*))/i, /^(?:[^\n]*)/i, /^(?:style\s+)/i, /^(?:[\w,]+\s+)/i, /^(?:[^\n]*)/i, /^(?:scale\s+)/i, /^(?:\d+)/i, /^(?:\s+width\b)/i, /^(?:state\s+)/i, /^(?:.*<<fork>>)/i, /^(?:.*<<join>>)/i, /^(?:.*<<choice>>)/i, /^(?:.*\[\[fork\]\])/i, /^(?:.*\[\[join\]\])/i, /^(?:.*\[\[choice\]\])/i, /^(?:.*direction\s+TB[^\n]*)/i, /^(?:.*direction\s+BT[^\n]*)/i, /^(?:.*direction\s+RL[^\n]*)/i, /^(?:.*direction\s+LR[^\n]*)/i, /^(?:["])/i, /^(?:\s*as\s+)/i, /^(?:[^\n\{]*)/i, /^(?:["])/i, /^(?:[^"]*)/i, /^(?:\w+\s+\w+.*?\{)/i, /^(?:[^\n\s\{]+)/i, /^(?:\n)/i, /^(?:\{)/i, /^(?:\})/i, /^(?:[\n])/i, /^(?:note\s+)/i, /^(?:left of\b)/i, /^(?:right of\b)/i, /^(?:")/i, /^(?:\s*as\s*)/i, /^(?:["])/i, /^(?:[^"]*)/i, /^(?:[^\n]*)/i, /^(?:\s*[^:\n\s\-]+)/i, /^(?:\s*:[^:\n;]+)/i, /^(?:[\s\S]*?\n\s*end note\b)/i, /^(?:stateDiagram\s+)/i, /^(?:stateDiagram-v2\s+)/i, /^(?:hide empty description\b)/i, /^(?:\[\*\])/i, /^(?:[^:\n\s\-\{]+)/i, /^(?:\s*:(?:[^:\n;]|:[^:\n;])+)/i, /^(?:-->)/i, /^(?:--)/i, /^(?::::)/i, /^(?:$)/i, /^(?:.)/i],
565
+ conditions: { LINE: { rules: [10, 11, 12], inclusive: !1 }, struct: { rules: [10, 11, 12, 23, 27, 30, 36, 43, 44, 45, 46, 56, 57, 58, 72, 73, 74, 75, 76, 77], inclusive: !1 }, FLOATING_NOTE_ID: { rules: [65], inclusive: !1 }, FLOATING_NOTE: { rules: [62, 63, 64], inclusive: !1 }, NOTE_TEXT: { rules: [67, 68], inclusive: !1 }, NOTE_ID: { rules: [66], inclusive: !1 }, NOTE: { rules: [59, 60, 61], inclusive: !1 }, STYLEDEF_STYLEOPTS: { rules: [], inclusive: !1 }, STYLEDEF_STYLES: { rules: [32], inclusive: !1 }, STYLE_IDS: { rules: [], inclusive: !1 }, STYLE: { rules: [31], inclusive: !1 }, CLASS_STYLE: { rules: [29], inclusive: !1 }, CLASS: { rules: [28], inclusive: !1 }, CLASSDEFID: { rules: [26], inclusive: !1 }, CLASSDEF: { rules: [24, 25], inclusive: !1 }, acc_descr_multiline: { rules: [21, 22], inclusive: !1 }, acc_descr: { rules: [19], inclusive: !1 }, acc_title: { rules: [17], inclusive: !1 }, SCALE: { rules: [14, 15, 34, 35], inclusive: !1 }, ALIAS: { rules: [], inclusive: !1 }, STATE_ID: { rules: [49], inclusive: !1 }, STATE_STRING: { rules: [50, 51], inclusive: !1 }, FORK_STATE: { rules: [], inclusive: !1 }, STATE: { rules: [10, 11, 12, 37, 38, 39, 40, 41, 42, 47, 48, 52, 53, 54, 55], inclusive: !1 }, ID: { rules: [10, 11, 12], inclusive: !1 }, INITIAL: { rules: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 16, 18, 20, 23, 27, 30, 33, 36, 55, 58, 69, 70, 71, 72, 73, 74, 75, 77, 78, 79], inclusive: !0 } }
566
+ };
567
+ return V;
568
+ })();
569
+ gt.lexer = Qt;
570
+ function ht() {
571
+ this.yy = {};
572
+ }
573
+ return p(ht, "Parser"), ht.prototype = gt, gt.Parser = ht, new ht();
574
+ })();
575
+ Ct.parser = Ct;
576
+ var We = Ct, Se = "TB", Yt = "TB", Nt = "dir", Q = "state", q = "root", At = "relation", ye = "classDef", ge = "style", Te = "applyClass", st = "default", Gt = "divider", Vt = "fill:none", Mt = "fill: #333", Ut = "c", Wt = "markdown", jt = "normal", Dt = "rect", vt = "rectWithTitle", Ee = "stateStart", _e = "stateEnd", Rt = "divider", Ot = "roundedWithTitle", me = "note", be = "noteGroup", it = "statediagram", ke = "state", De = `${it}-${ke}`, Ht = "transition", ve = "note", Ce = "note-edge", Ae = `${Ht} ${Ce}`, xe = `${it}-${ve}`, Le = "cluster", Ie = `${it}-${Le}`, we = "cluster-alt", Ne = `${it}-${we}`, zt = "parent", Kt = "note", Re = "state", xt = "----", Oe = `${xt}${Kt}`, $t = `${xt}${zt}`, Xt = /* @__PURE__ */ p((t, e = Yt) => {
577
+ if (!t.doc)
578
+ return e;
579
+ let s = e;
580
+ for (const n of t.doc)
581
+ n.stmt === "dir" && (s = n.value);
582
+ return s;
583
+ }, "getDir"), $e = /* @__PURE__ */ p(function(t, e) {
584
+ return e.db.getClasses();
585
+ }, "getClasses"), Fe = /* @__PURE__ */ p(async function(t, e, s, n) {
586
+ b.info("REF0:"), b.info("Drawing state diagram (v2)", e);
587
+ const { securityLevel: r, state: c, layout: d } = $();
588
+ n.db.extract(n.db.getRootDocV2());
589
+ const S = n.db.getData(), f = ee(e, r);
590
+ S.type = n.type, S.layoutAlgorithm = d, S.nodeSpacing = c?.nodeSpacing || 50, S.rankSpacing = c?.rankSpacing || 50, $().look === "neo" ? S.markers = ["barbNeo"] : S.markers = ["barb"], S.diagramId = e, await ie(S, f);
591
+ const E = 8;
592
+ try {
593
+ (typeof n.db.getLinks == "function" ? n.db.getLinks() : /* @__PURE__ */ new Map()).forEach((L, D) => {
594
+ const h = typeof D == "string" ? D : typeof D?.id == "string" ? D.id : "", I = S.nodes.find((N) => N.id === h);
595
+ if (!h) {
596
+ b.warn("⚠️ Invalid or missing stateId from key:", JSON.stringify(D));
597
+ return;
598
+ }
599
+ const w = f.node()?.querySelectorAll("g.node, g.rough-node");
600
+ let C;
601
+ if (w?.forEach((N) => {
602
+ const z = N.textContent?.trim();
603
+ (N.id === I?.domId || z === h) && (C = N);
604
+ }), !C) {
605
+ b.warn("⚠️ Could not find node matching text:", h);
606
+ return;
607
+ }
608
+ const F = C.parentNode;
609
+ if (!F) {
610
+ b.warn("⚠️ Node has no parent, cannot wrap:", h);
611
+ return;
612
+ }
613
+ const A = document.createElementNS("http://www.w3.org/2000/svg", "a"), P = L.url.replace(/^"+|"+$/g, "");
614
+ if (A.setAttributeNS("http://www.w3.org/1999/xlink", "xlink:href", P), A.setAttribute("target", "_blank"), L.tooltip) {
615
+ const N = L.tooltip.replace(/^"+|"+$/g, "");
616
+ A.setAttribute("title", N), C.setAttribute("title", N);
617
+ }
618
+ F.replaceChild(A, C), A.appendChild(C), b.info("🔗 Wrapped node in <a> tag for:", h, L.url);
619
+ });
620
+ } catch (m) {
621
+ b.error("❌ Error injecting clickable links:", m);
622
+ }
623
+ re.insertTitle(
624
+ f,
625
+ "statediagramTitleText",
626
+ c?.titleTopMargin ?? 25,
627
+ n.db.getDiagramTitle()
628
+ ), se(f, E, it, c?.useMaxWidth ?? !0);
629
+ }, "draw"), je = {
630
+ getClasses: $e,
631
+ draw: Fe,
632
+ getDir: Xt
633
+ }, St = /* @__PURE__ */ new Map(), M = 0;
634
+ function yt(t = "", e = 0, s = "", n = xt) {
635
+ const r = s !== null && s.length > 0 ? `${n}${s}` : "";
636
+ return `${Re}-${t}${r}-${e}`;
637
+ }
638
+ p(yt, "stateDomId");
639
+ var Pe = /* @__PURE__ */ p((t, e, s, n, r, c, d, S) => {
640
+ b.trace("items", e), e.forEach((f) => {
641
+ switch (f.stmt) {
642
+ case Q:
643
+ et(t, f, s, n, r, c, d, S);
644
+ break;
645
+ case st:
646
+ et(t, f, s, n, r, c, d, S);
647
+ break;
648
+ case At:
649
+ {
650
+ et(
651
+ t,
652
+ f.state1,
653
+ s,
654
+ n,
655
+ r,
656
+ c,
657
+ d,
658
+ S
659
+ ), et(
660
+ t,
661
+ f.state2,
662
+ s,
663
+ n,
664
+ r,
665
+ c,
666
+ d,
667
+ S
668
+ );
669
+ const T = d === "neo", E = {
670
+ id: "edge" + M,
671
+ start: f.state1.id,
672
+ end: f.state2.id,
673
+ arrowhead: "normal",
674
+ arrowTypeEnd: T ? "arrow_barb_neo" : "arrow_barb",
675
+ style: Vt,
676
+ labelStyle: "",
677
+ label: j.sanitizeText(f.description ?? "", $()),
678
+ arrowheadStyle: Mt,
679
+ labelpos: Ut,
680
+ labelType: Wt,
681
+ thickness: jt,
682
+ classes: Ht,
683
+ look: d
684
+ };
685
+ r.push(E), M++;
686
+ }
687
+ break;
688
+ }
689
+ });
690
+ }, "setupDoc"), Ft = /* @__PURE__ */ p((t, e = Yt) => {
691
+ let s = e;
692
+ if (t.doc)
693
+ for (const n of t.doc)
694
+ n.stmt === "dir" && (s = n.value);
695
+ return s;
696
+ }, "getDir");
697
+ function tt(t, e, s) {
698
+ if (!e.id || e.id === "</join></fork>" || e.id === "</choice>")
699
+ return;
700
+ e.cssClasses && (Array.isArray(e.cssCompiledStyles) || (e.cssCompiledStyles = []), e.cssClasses.split(" ").forEach((r) => {
701
+ const c = s.get(r);
702
+ c && (e.cssCompiledStyles = [...e.cssCompiledStyles ?? [], ...c.styles]);
703
+ }));
704
+ const n = t.find((r) => r.id === e.id);
705
+ n ? Object.assign(n, e) : t.push(e);
706
+ }
707
+ p(tt, "insertOrUpdateNode");
708
+ function Jt(t) {
709
+ return t?.classes?.join(" ") ?? "";
710
+ }
711
+ p(Jt, "getClassesFromDbInfo");
712
+ function qt(t) {
713
+ return t?.styles ?? [];
714
+ }
715
+ p(qt, "getStylesFromDbInfo");
716
+ var et = /* @__PURE__ */ p((t, e, s, n, r, c, d, S) => {
717
+ const f = e.id, T = s.get(f), E = Jt(T), m = qt(T), L = $();
718
+ if (b.info("dataFetcher parsedItem", e, T, m), f !== "root") {
719
+ let D = Dt;
720
+ e.start === !0 ? D = Ee : e.start === !1 && (D = _e), e.type !== st && (D = e.type), St.get(f) || St.set(f, {
721
+ id: f,
722
+ shape: D,
723
+ description: j.sanitizeText(f, L),
724
+ cssClasses: `${E} ${De}`,
725
+ cssStyles: m
726
+ });
727
+ const h = St.get(f);
728
+ e.description && (Array.isArray(h.description) ? (h.shape = vt, h.description.push(e.description)) : h.description?.length && h.description.length > 0 ? (h.shape = vt, h.description === f ? h.description = [e.description] : h.description = [h.description, e.description]) : (h.shape = Dt, h.description = e.description), h.description = j.sanitizeTextOrArray(h.description, L)), h.description?.length === 1 && h.shape === vt && (h.type === "group" ? h.shape = Ot : h.shape = Dt), !h.type && e.doc && (b.info("Setting cluster for XCX", f, Ft(e)), h.type = "group", h.isGroup = !0, h.dir = Ft(e), h.explicitDir = e.doc.some((w) => w.stmt === "dir"), h.shape = e.type === Gt ? Rt : Ot, h.cssClasses = `${h.cssClasses} ${Ie} ${c ? Ne : ""}`);
729
+ const I = {
730
+ labelStyle: "",
731
+ shape: h.shape,
732
+ label: h.description,
733
+ cssClasses: h.cssClasses,
734
+ cssCompiledStyles: [],
735
+ cssStyles: h.cssStyles,
736
+ id: f,
737
+ dir: h.dir,
738
+ domId: yt(f, M),
739
+ type: h.type,
740
+ isGroup: h.type === "group",
741
+ padding: 8,
742
+ rx: 10,
743
+ ry: 10,
744
+ look: d,
745
+ labelType: "markdown"
746
+ };
747
+ if (I.shape === Rt && (I.label = ""), t && t.id !== "root" && (b.trace("Setting node ", f, " to be child of its parent ", t.id), I.parentId = t.id), I.centerLabel = !0, e.note) {
748
+ const w = {
749
+ labelStyle: "",
750
+ shape: me,
751
+ label: e.note.text,
752
+ labelType: "markdown",
753
+ cssClasses: xe,
754
+ // useHtmlLabels: false,
755
+ cssStyles: [],
756
+ cssCompiledStyles: [],
757
+ id: f + Oe + "-" + M,
758
+ domId: yt(f, M, Kt),
759
+ type: h.type,
760
+ isGroup: h.type === "group",
761
+ padding: L.flowchart?.padding,
762
+ look: d,
763
+ position: e.note.position
764
+ }, C = f + $t, F = {
765
+ labelStyle: "",
766
+ shape: be,
767
+ label: e.note.text,
768
+ cssClasses: h.cssClasses,
769
+ cssStyles: [],
770
+ id: f + $t,
771
+ domId: yt(f, M, zt),
772
+ type: "group",
773
+ isGroup: !0,
774
+ padding: 16,
775
+ //getConfig().flowchart.padding
776
+ look: d,
777
+ position: e.note.position
778
+ };
779
+ M++, F.id = C, w.parentId = C, tt(n, F, S), tt(n, w, S), tt(n, I, S);
780
+ let A = f, P = w.id;
781
+ e.note.position === "left of" && (A = w.id, P = f), r.push({
782
+ id: A + "-" + P,
783
+ start: A,
784
+ end: P,
785
+ arrowhead: "none",
786
+ arrowTypeEnd: "",
787
+ style: Vt,
788
+ labelStyle: "",
789
+ classes: Ae,
790
+ arrowheadStyle: Mt,
791
+ labelpos: Ut,
792
+ labelType: Wt,
793
+ thickness: jt,
794
+ look: d
795
+ });
796
+ } else
797
+ tt(n, I, S);
798
+ }
799
+ e.doc && (b.trace("Adding nodes children "), Pe(e, e.doc, s, n, r, !c, d, S));
800
+ }, "dataFetcher"), Be = /* @__PURE__ */ p(() => {
801
+ St.clear(), M = 0;
802
+ }, "reset"), v = {
803
+ START_NODE: "[*]",
804
+ START_TYPE: "start",
805
+ END_NODE: "[*]",
806
+ END_TYPE: "end",
807
+ COLOR_KEYWORD: "color",
808
+ FILL_KEYWORD: "fill",
809
+ BG_FILL: "bgFill",
810
+ STYLECLASS_SEP: ","
811
+ }, Pt = /* @__PURE__ */ p(() => /* @__PURE__ */ new Map(), "newClassesList"), Bt = /* @__PURE__ */ p(() => ({
812
+ relations: [],
813
+ states: /* @__PURE__ */ new Map(),
814
+ documents: {}
815
+ }), "newDoc"), pt = /* @__PURE__ */ p((t) => JSON.parse(JSON.stringify(t)), "clone"), H, He = (H = class {
816
+ constructor(e) {
817
+ this.version = e, this.nodes = [], this.edges = [], this.rootDoc = [], this.classes = Pt(), this.documents = { root: Bt() }, this.currentDocument = this.documents.root, this.startEndCount = 0, this.dividerCnt = 0, this.links = /* @__PURE__ */ new Map(), this.funs = [], this.getAccTitle = ae, this.setAccTitle = ne, this.getAccDescription = oe, this.setAccDescription = le, this.setDiagramTitle = ce, this.getDiagramTitle = he, this.clear(), this.setRootDoc = this.setRootDoc.bind(this), this.getDividerId = this.getDividerId.bind(this), this.setDirection = this.setDirection.bind(this), this.trimColon = this.trimColon.bind(this), this.bindFunctions = this.bindFunctions.bind(this);
818
+ }
819
+ /**
820
+ * Convert all of the statements (stmts) that were parsed into states and relationships.
821
+ * This is done because a state diagram may have nested sections,
822
+ * where each section is a 'document' and has its own set of statements.
823
+ * Ex: the section within a fork has its own statements, and incoming and outgoing statements
824
+ * refer to the fork as a whole (document).
825
+ * See the parser grammar: the definition of a document is a document then a 'line', where a line can be a statement.
826
+ * This will push the statement into the list of statements for the current document.
827
+ */
828
+ extract(e) {
829
+ this.clear(!0);
830
+ for (const r of Array.isArray(e) ? e : e.doc)
831
+ switch (r.stmt) {
832
+ case Q:
833
+ this.addState(r.id.trim(), r.type, r.doc, r.description, r.note);
834
+ break;
835
+ case At:
836
+ this.addRelation(r.state1, r.state2, r.description);
837
+ break;
838
+ case ye:
839
+ this.addStyleClass(r.id.trim(), r.classes);
840
+ break;
841
+ case ge:
842
+ this.handleStyleDef(r);
843
+ break;
844
+ case Te:
845
+ this.setCssClass(r.id.trim(), r.styleClass);
846
+ break;
847
+ case "click":
848
+ this.addLink(r.id, r.url, r.tooltip);
849
+ break;
850
+ }
851
+ const s = this.getStates(), n = $();
852
+ Be(), et(
853
+ void 0,
854
+ this.getRootDocV2(),
855
+ s,
856
+ this.nodes,
857
+ this.edges,
858
+ !0,
859
+ n.look,
860
+ this.classes
861
+ );
862
+ for (const r of this.nodes)
863
+ if (Array.isArray(r.label)) {
864
+ if (r.description = r.label.slice(1), r.isGroup && r.description.length > 0)
865
+ throw new Error(
866
+ `Group nodes can only have label. Remove the additional description for node [${r.id}]`
867
+ );
868
+ r.label = r.label[0];
869
+ }
870
+ }
871
+ handleStyleDef(e) {
872
+ const s = e.id.trim().split(","), n = e.styleClass.split(",");
873
+ for (const r of s) {
874
+ let c = this.getState(r);
875
+ if (!c) {
876
+ const d = r.trim();
877
+ this.addState(d), c = this.getState(d);
878
+ }
879
+ c && (c.styles = n.map((d) => d.replace(/;/g, "")?.trim()));
880
+ }
881
+ }
882
+ setRootDoc(e) {
883
+ b.info("Setting root doc", e), this.rootDoc = e, this.version === 1 ? this.extract(e) : this.extract(this.getRootDocV2());
884
+ }
885
+ docTranslator(e, s, n) {
886
+ if (s.stmt === At) {
887
+ this.docTranslator(e, s.state1, !0), this.docTranslator(e, s.state2, !1);
888
+ return;
889
+ }
890
+ if (s.stmt === Q && (s.id === v.START_NODE ? (s.id = e.id + (n ? "_start" : "_end"), s.start = n) : s.id = s.id.trim()), s.stmt !== q && s.stmt !== Q || !s.doc)
891
+ return;
892
+ const r = [];
893
+ let c = [];
894
+ for (const d of s.doc)
895
+ if (d.type === Gt) {
896
+ const S = pt(d);
897
+ S.doc = pt(c), r.push(S), c = [];
898
+ } else
899
+ c.push(d);
900
+ if (r.length > 0 && c.length > 0) {
901
+ const d = {
902
+ stmt: Q,
903
+ id: ue(),
904
+ type: "divider",
905
+ doc: pt(c)
906
+ };
907
+ r.push(pt(d)), s.doc = r;
908
+ }
909
+ s.doc.forEach((d) => this.docTranslator(s, d, !0));
910
+ }
911
+ getRootDocV2() {
912
+ return this.docTranslator(
913
+ { id: q, stmt: q },
914
+ { id: q, stmt: q, doc: this.rootDoc },
915
+ !0
916
+ ), { id: q, doc: this.rootDoc };
917
+ }
918
+ /**
919
+ * Function called by parser when a node definition has been found.
920
+ *
921
+ * @param descr - description for the state. Can be a string or a list or strings
922
+ * @param classes - class styles to apply to this state. Can be a string (1 style) or an array of styles. If it's just 1 class, convert it to an array of that 1 class.
923
+ * @param styles - styles to apply to this state. Can be a string (1 style) or an array of styles. If it's just 1 style, convert it to an array of that 1 style.
924
+ * @param textStyles - text styles to apply to this state. Can be a string (1 text test) or an array of text styles. If it's just 1 text style, convert it to an array of that 1 text style.
925
+ */
926
+ addState(e, s = st, n = void 0, r = void 0, c = void 0, d = void 0, S = void 0, f = void 0) {
927
+ const T = e?.trim();
928
+ if (!this.currentDocument.states.has(T))
929
+ b.info("Adding state ", T, r), this.currentDocument.states.set(T, {
930
+ stmt: Q,
931
+ id: T,
932
+ descriptions: [],
933
+ type: s,
934
+ doc: n,
935
+ note: c,
936
+ classes: [],
937
+ styles: [],
938
+ textStyles: []
939
+ });
940
+ else {
941
+ const E = this.currentDocument.states.get(T);
942
+ if (!E)
943
+ throw new Error(`State not found: ${T}`);
944
+ E.doc || (E.doc = n), E.type || (E.type = s);
945
+ }
946
+ if (r && (b.info("Setting state description", T, r), (Array.isArray(r) ? r : [r]).forEach((m) => this.addDescription(T, m.trim()))), c) {
947
+ const E = this.currentDocument.states.get(T);
948
+ if (!E)
949
+ throw new Error(`State not found: ${T}`);
950
+ E.note = c, E.note.text = j.sanitizeText(E.note.text, $());
951
+ }
952
+ d && (b.info("Setting state classes", T, d), (Array.isArray(d) ? d : [d]).forEach((m) => this.setCssClass(T, m.trim()))), S && (b.info("Setting state styles", T, S), (Array.isArray(S) ? S : [S]).forEach((m) => this.setStyle(T, m.trim()))), f && (b.info("Setting state styles", T, S), (Array.isArray(f) ? f : [f]).forEach((m) => this.setTextStyle(T, m.trim())));
953
+ }
954
+ clear(e) {
955
+ this.nodes = [], this.edges = [], this.funs = [this.setupToolTips.bind(this)], this.documents = { root: Bt() }, this.currentDocument = this.documents.root, this.startEndCount = 0, this.classes = Pt(), e || (this.links = /* @__PURE__ */ new Map(), de());
956
+ }
957
+ getState(e) {
958
+ return this.currentDocument.states.get(e);
959
+ }
960
+ getStates() {
961
+ return this.currentDocument.states;
962
+ }
963
+ logDocuments() {
964
+ b.info("Documents = ", this.documents);
965
+ }
966
+ getRelations() {
967
+ return this.currentDocument.relations;
968
+ }
969
+ /**
970
+ * Adds a clickable link to a state.
971
+ */
972
+ addLink(e, s, n) {
973
+ this.links.set(e, { url: s, tooltip: n }), b.warn("Adding link", e, s, n);
974
+ }
975
+ /**
976
+ * Get all registered links.
977
+ */
978
+ getLinks() {
979
+ return this.links;
980
+ }
981
+ /**
982
+ * If the id is a start node ( [*] ), then return a new id constructed from
983
+ * the start node name and the current start node count.
984
+ * else return the given id
985
+ */
986
+ startIdIfNeeded(e = "") {
987
+ return e === v.START_NODE ? (this.startEndCount++, `${v.START_TYPE}${this.startEndCount}`) : e;
988
+ }
989
+ /**
990
+ * If the id is a start node ( [*] ), then return the start type ('start')
991
+ * else return the given type
992
+ */
993
+ startTypeIfNeeded(e = "", s = st) {
994
+ return e === v.START_NODE ? v.START_TYPE : s;
995
+ }
996
+ /**
997
+ * If the id is an end node ( [*] ), then return a new id constructed from
998
+ * the end node name and the current start_end node count.
999
+ * else return the given id
1000
+ */
1001
+ endIdIfNeeded(e = "") {
1002
+ return e === v.END_NODE ? (this.startEndCount++, `${v.END_TYPE}${this.startEndCount}`) : e;
1003
+ }
1004
+ /**
1005
+ * If the id is an end node ( [*] ), then return the end type
1006
+ * else return the given type
1007
+ *
1008
+ */
1009
+ endTypeIfNeeded(e = "", s = st) {
1010
+ return e === v.END_NODE ? v.END_TYPE : s;
1011
+ }
1012
+ addRelationObjs(e, s, n = "") {
1013
+ const r = this.startIdIfNeeded(e.id.trim()), c = this.startTypeIfNeeded(e.id.trim(), e.type), d = this.startIdIfNeeded(s.id.trim()), S = this.startTypeIfNeeded(s.id.trim(), s.type);
1014
+ this.addState(
1015
+ r,
1016
+ c,
1017
+ e.doc,
1018
+ e.description,
1019
+ e.note,
1020
+ e.classes,
1021
+ e.styles,
1022
+ e.textStyles
1023
+ ), this.addState(
1024
+ d,
1025
+ S,
1026
+ s.doc,
1027
+ s.description,
1028
+ s.note,
1029
+ s.classes,
1030
+ s.styles,
1031
+ s.textStyles
1032
+ ), this.currentDocument.relations.push({
1033
+ id1: r,
1034
+ id2: d,
1035
+ relationTitle: j.sanitizeText(n, $())
1036
+ });
1037
+ }
1038
+ /**
1039
+ * Add a relation between two items. The items may be full objects or just the string id of a state.
1040
+ */
1041
+ addRelation(e, s, n) {
1042
+ if (typeof e == "object" && typeof s == "object")
1043
+ this.addRelationObjs(e, s, n);
1044
+ else if (typeof e == "string" && typeof s == "string") {
1045
+ const r = this.startIdIfNeeded(e.trim()), c = this.startTypeIfNeeded(e), d = this.endIdIfNeeded(s.trim()), S = this.endTypeIfNeeded(s);
1046
+ this.addState(r, c), this.addState(d, S), this.currentDocument.relations.push({
1047
+ id1: r,
1048
+ id2: d,
1049
+ relationTitle: n ? j.sanitizeText(n, $()) : void 0
1050
+ });
1051
+ }
1052
+ }
1053
+ addDescription(e, s) {
1054
+ const n = this.currentDocument.states.get(e), r = s.startsWith(":") ? s.replace(":", "").trim() : s;
1055
+ n?.descriptions?.push(j.sanitizeText(r, $()));
1056
+ }
1057
+ cleanupLabel(e) {
1058
+ return e.startsWith(":") ? e.slice(2).trim() : e.trim();
1059
+ }
1060
+ getDividerId() {
1061
+ return this.dividerCnt++, `divider-id-${this.dividerCnt}`;
1062
+ }
1063
+ /**
1064
+ * Called when the parser comes across a (style) class definition
1065
+ * @example classDef my-style fill:#f96;
1066
+ *
1067
+ * @param id - the id of this (style) class
1068
+ * @param styleAttributes - the string with 1 or more style attributes (each separated by a comma)
1069
+ */
1070
+ addStyleClass(e, s = "") {
1071
+ this.classes.has(e) || this.classes.set(e, { id: e, styles: [], textStyles: [] });
1072
+ const n = this.classes.get(e);
1073
+ s && n && s.split(v.STYLECLASS_SEP).forEach((r) => {
1074
+ const c = r.replace(/([^;]*);/, "$1").trim();
1075
+ if (RegExp(v.COLOR_KEYWORD).exec(r)) {
1076
+ const S = c.replace(v.FILL_KEYWORD, v.BG_FILL).replace(v.COLOR_KEYWORD, v.FILL_KEYWORD);
1077
+ n.textStyles.push(S);
1078
+ }
1079
+ n.styles.push(c);
1080
+ });
1081
+ }
1082
+ getClasses() {
1083
+ return this.classes;
1084
+ }
1085
+ setupToolTips(e) {
1086
+ const s = pe();
1087
+ kt(e).select("svg").selectAll("g.node, g.rough-node").on("mouseover", (c) => {
1088
+ const d = kt(c.currentTarget), S = d.attr("title");
1089
+ if (S === null)
1090
+ return;
1091
+ const f = c.currentTarget?.getBoundingClientRect();
1092
+ s.transition().duration(200).style("opacity", ".9"), s.style("left", window.scrollX + f.left + (f.right - f.left) / 2 + "px").style("top", window.scrollY + f.bottom + "px"), s.html(fe.sanitize(S)), d.classed("hover", !0);
1093
+ }).on("mouseout", (c) => {
1094
+ s.transition().duration(500).style("opacity", 0), kt(c.currentTarget).classed("hover", !1);
1095
+ });
1096
+ }
1097
+ /**
1098
+ * Add a (style) class or css class to a state with the given id.
1099
+ * If the state isn't already in the list of known states, add it.
1100
+ * Might be called by parser when a style class or CSS class should be applied to a state
1101
+ *
1102
+ * @param itemIds - The id or a list of ids of the item(s) to apply the css class to
1103
+ * @param cssClassName - CSS class name
1104
+ */
1105
+ setCssClass(e, s) {
1106
+ e.split(",").forEach((n) => {
1107
+ let r = this.getState(n);
1108
+ if (!r) {
1109
+ const c = n.trim();
1110
+ this.addState(c), r = this.getState(c);
1111
+ }
1112
+ r?.classes?.push(s);
1113
+ });
1114
+ }
1115
+ /**
1116
+ * Add a style to a state with the given id.
1117
+ * @example style stateId fill:#f9f,stroke:#333,stroke-width:4px
1118
+ * where 'style' is the keyword
1119
+ * stateId is the id of a state
1120
+ * the rest of the string is the styleText (all of the attributes to be applied to the state)
1121
+ *
1122
+ * @param itemId - The id of item to apply the style to
1123
+ * @param styleText - the text of the attributes for the style
1124
+ */
1125
+ setStyle(e, s) {
1126
+ this.getState(e)?.styles?.push(s);
1127
+ }
1128
+ /**
1129
+ * Add a text style to a state with the given id
1130
+ *
1131
+ * @param itemId - The id of item to apply the css class to
1132
+ * @param cssClassName - CSS class name
1133
+ */
1134
+ setTextStyle(e, s) {
1135
+ this.getState(e)?.textStyles?.push(s);
1136
+ }
1137
+ bindFunctions(e) {
1138
+ this.funs.forEach((s) => {
1139
+ s(e);
1140
+ });
1141
+ }
1142
+ /**
1143
+ * Finds the direction statement in the root document.
1144
+ * @returns the direction statement if present
1145
+ */
1146
+ getDirectionStatement() {
1147
+ return this.rootDoc.find((e) => e.stmt === Nt);
1148
+ }
1149
+ getDirection() {
1150
+ return this.getDirectionStatement()?.value ?? Se;
1151
+ }
1152
+ setDirection(e) {
1153
+ const s = this.getDirectionStatement();
1154
+ s ? s.value = e : this.rootDoc.unshift({ stmt: Nt, value: e });
1155
+ }
1156
+ trimColon(e) {
1157
+ return e.startsWith(":") ? e.slice(1).trim() : e.trim();
1158
+ }
1159
+ getData() {
1160
+ const e = $();
1161
+ return {
1162
+ nodes: this.nodes,
1163
+ edges: this.edges,
1164
+ other: {},
1165
+ config: e,
1166
+ direction: Xt(this.getRootDocV2())
1167
+ };
1168
+ }
1169
+ getConfig() {
1170
+ return $().state;
1171
+ }
1172
+ }, p(H, "StateDB"), H.relationType = {
1173
+ AGGREGATION: 0,
1174
+ EXTENSION: 1,
1175
+ COMPOSITION: 2,
1176
+ DEPENDENCY: 3
1177
+ }, H), Ye = /* @__PURE__ */ p((t) => `
1178
+ defs [id$="-barbEnd"] {
1179
+ fill: ${t.transitionColor};
1180
+ stroke: ${t.transitionColor};
1181
+ }
1182
+ g.stateGroup text {
1183
+ fill: ${t.nodeBorder};
1184
+ stroke: none;
1185
+ font-size: 10px;
1186
+ }
1187
+ g.stateGroup text {
1188
+ fill: ${t.textColor};
1189
+ stroke: none;
1190
+ font-size: 10px;
1191
+
1192
+ }
1193
+ g.stateGroup .state-title {
1194
+ font-weight: bolder;
1195
+ fill: ${t.stateLabelColor};
1196
+ }
1197
+
1198
+ g.stateGroup rect {
1199
+ fill: ${t.mainBkg};
1200
+ stroke: ${t.nodeBorder};
1201
+ }
1202
+
1203
+ g.stateGroup line {
1204
+ stroke: ${t.lineColor};
1205
+ stroke-width: ${t.strokeWidth || 1};
1206
+ }
1207
+
1208
+ .transition {
1209
+ stroke: ${t.transitionColor};
1210
+ stroke-width: ${t.strokeWidth || 1};
1211
+ fill: none;
1212
+ }
1213
+
1214
+ .stateGroup .composit {
1215
+ fill: ${t.background};
1216
+ border-bottom: 1px
1217
+ }
1218
+
1219
+ .stateGroup .alt-composit {
1220
+ fill: #e0e0e0;
1221
+ border-bottom: 1px
1222
+ }
1223
+
1224
+ .state-note {
1225
+ stroke: ${t.noteBorderColor};
1226
+ fill: ${t.noteBkgColor};
1227
+
1228
+ text {
1229
+ fill: ${t.noteTextColor};
1230
+ stroke: none;
1231
+ font-size: 10px;
1232
+ }
1233
+ }
1234
+
1235
+ .stateLabel .box {
1236
+ stroke: none;
1237
+ stroke-width: 0;
1238
+ fill: ${t.mainBkg};
1239
+ opacity: 0.5;
1240
+ }
1241
+
1242
+ .edgeLabel .label rect {
1243
+ fill: ${t.labelBackgroundColor};
1244
+ opacity: 0.5;
1245
+ }
1246
+ .edgeLabel {
1247
+ background-color: ${t.edgeLabelBackground};
1248
+ p {
1249
+ background-color: ${t.edgeLabelBackground};
1250
+ }
1251
+ rect {
1252
+ opacity: 0.5;
1253
+ background-color: ${t.edgeLabelBackground};
1254
+ fill: ${t.edgeLabelBackground};
1255
+ }
1256
+ text-align: center;
1257
+ }
1258
+ .edgeLabel .label text {
1259
+ fill: ${t.transitionLabelColor || t.tertiaryTextColor};
1260
+ }
1261
+ .label div .edgeLabel {
1262
+ color: ${t.transitionLabelColor || t.tertiaryTextColor};
1263
+ }
1264
+
1265
+ .stateLabel text {
1266
+ fill: ${t.stateLabelColor};
1267
+ font-size: 10px;
1268
+ font-weight: bold;
1269
+ }
1270
+
1271
+ .node circle.state-start {
1272
+ fill: ${t.specialStateColor};
1273
+ stroke: ${t.specialStateColor};
1274
+ }
1275
+
1276
+ .node .fork-join {
1277
+ fill: ${t.specialStateColor};
1278
+ stroke: ${t.specialStateColor};
1279
+ }
1280
+
1281
+ .node circle.state-end {
1282
+ fill: ${t.innerEndBackground};
1283
+ stroke: ${t.background};
1284
+ stroke-width: 1.5
1285
+ }
1286
+ .end-state-inner {
1287
+ fill: ${t.compositeBackground || t.background};
1288
+ // stroke: ${t.background};
1289
+ stroke-width: 1.5
1290
+ }
1291
+
1292
+ .node rect {
1293
+ fill: ${t.stateBkg || t.mainBkg};
1294
+ stroke: ${t.stateBorder || t.nodeBorder};
1295
+ stroke-width: ${t.strokeWidth || 1}px;
1296
+ }
1297
+ .node polygon {
1298
+ fill: ${t.mainBkg};
1299
+ stroke: ${t.stateBorder || t.nodeBorder};;
1300
+ stroke-width: ${t.strokeWidth || 1}px;
1301
+ }
1302
+ [id$="-barbEnd"] {
1303
+ fill: ${t.lineColor};
1304
+ }
1305
+
1306
+ .statediagram-cluster rect {
1307
+ fill: ${t.compositeTitleBackground};
1308
+ stroke: ${t.stateBorder || t.nodeBorder};
1309
+ stroke-width: ${t.strokeWidth || 1}px;
1310
+ }
1311
+
1312
+ .cluster-label, .nodeLabel {
1313
+ color: ${t.stateLabelColor};
1314
+ // line-height: 1;
1315
+ }
1316
+
1317
+ .statediagram-cluster rect.outer {
1318
+ rx: 5px;
1319
+ ry: 5px;
1320
+ }
1321
+ .statediagram-state .divider {
1322
+ stroke: ${t.stateBorder || t.nodeBorder};
1323
+ }
1324
+
1325
+ .statediagram-state .title-state {
1326
+ rx: 5px;
1327
+ ry: 5px;
1328
+ }
1329
+ .statediagram-cluster.statediagram-cluster .inner {
1330
+ fill: ${t.compositeBackground || t.background};
1331
+ }
1332
+ .statediagram-cluster.statediagram-cluster-alt .inner {
1333
+ fill: ${t.altBackground ? t.altBackground : "#efefef"};
1334
+ }
1335
+
1336
+ .statediagram-cluster .inner {
1337
+ rx:0;
1338
+ ry:0;
1339
+ }
1340
+
1341
+ .statediagram-state rect.basic {
1342
+ rx: 5px;
1343
+ ry: 5px;
1344
+ }
1345
+ .statediagram-state rect.divider {
1346
+ stroke-dasharray: 10,10;
1347
+ fill: ${t.altBackground ? t.altBackground : "#efefef"};
1348
+ }
1349
+
1350
+ .note-edge {
1351
+ stroke-dasharray: 5;
1352
+ }
1353
+
1354
+ .statediagram-note rect {
1355
+ fill: ${t.noteBkgColor};
1356
+ stroke: ${t.noteBorderColor};
1357
+ stroke-width: 1px;
1358
+ rx: 0;
1359
+ ry: 0;
1360
+ }
1361
+ .statediagram-note rect {
1362
+ fill: ${t.noteBkgColor};
1363
+ stroke: ${t.noteBorderColor};
1364
+ stroke-width: 1px;
1365
+ rx: 0;
1366
+ ry: 0;
1367
+ }
1368
+
1369
+ .statediagram-note text {
1370
+ fill: ${t.noteTextColor};
1371
+ }
1372
+
1373
+ .statediagram-note .nodeLabel {
1374
+ color: ${t.noteTextColor};
1375
+ }
1376
+ .statediagram .edgeLabel {
1377
+ color: red; // ${t.noteTextColor};
1378
+ }
1379
+
1380
+ [id$="-dependencyStart"], [id$="-dependencyEnd"] {
1381
+ fill: ${t.lineColor};
1382
+ stroke: ${t.lineColor};
1383
+ stroke-width: ${t.strokeWidth || 1};
1384
+ }
1385
+
1386
+ .statediagramTitleText {
1387
+ text-anchor: middle;
1388
+ font-size: 18px;
1389
+ fill: ${t.textColor};
1390
+ }
1391
+
1392
+ [data-look="neo"].statediagram-cluster rect {
1393
+ fill: ${t.mainBkg};
1394
+ stroke: ${t.useGradient ? "url(" + t.svgId + "-gradient)" : t.stateBorder || t.nodeBorder};
1395
+ stroke-width: ${t.strokeWidth ?? 1};
1396
+ }
1397
+ [data-look="neo"].statediagram-cluster rect.outer {
1398
+ rx: ${t.radius}px;
1399
+ ry: ${t.radius}px;
1400
+ filter: ${t.dropShadow ? t.dropShadow.replace("url(#drop-shadow)", `url(${t.svgId}-drop-shadow)`) : "none"}
1401
+ }
1402
+ `, "getStyles"), ze = Ye;
1403
+ export {
1404
+ He as S,
1405
+ We as a,
1406
+ je as b,
1407
+ ze as s
1408
+ };