@bkm016/basalt 0.0.0-stage → 0.1.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 (252) hide show
  1. package/README.md +275 -2
  2. package/chunk-0hbjv3y6.js +11 -0
  3. package/chunk-0rya8cxe.js +3 -0
  4. package/chunk-0szjy61m.js +2 -0
  5. package/chunk-0tdv0t5q.js +3 -0
  6. package/chunk-1egbcp85.js +59 -0
  7. package/chunk-1fv27j4b.js +3 -0
  8. package/chunk-1yzt0qm0.js +2 -0
  9. package/chunk-2zqny2sy.js +2 -0
  10. package/chunk-32at88hc.js +3 -0
  11. package/chunk-356q8e0y.js +10 -0
  12. package/chunk-3jz9g8ab.js +10 -0
  13. package/chunk-3p7q2pyp.js +3 -0
  14. package/chunk-501zkf9b.js +3 -0
  15. package/chunk-58vz2qsq.js +2 -0
  16. package/chunk-5fdgy0q2.js +16 -0
  17. package/chunk-5wp4egky.js +7 -0
  18. package/chunk-665jzf2w.js +25 -0
  19. package/chunk-6gyhajhx.js +3 -0
  20. package/chunk-7yw8aa5j.js +31 -0
  21. package/chunk-8wjgbd9k.js +3 -0
  22. package/chunk-913tfr9c.js +2 -0
  23. package/chunk-97kjn55j.js +2 -0
  24. package/chunk-9y69ywyg.js +3 -0
  25. package/chunk-a6r4z44b.js +2 -0
  26. package/chunk-agntrqs9.js +2 -0
  27. package/chunk-b9bg5fhd.js +2 -0
  28. package/chunk-bj14jshr.js +3 -0
  29. package/chunk-c25s4w6a.js +5 -0
  30. package/chunk-d48bfd2e.js +3 -0
  31. package/chunk-d913kpyw.js +3 -0
  32. package/chunk-dakrpbe6.js +3 -0
  33. package/chunk-g2k3yhgh.js +12 -0
  34. package/chunk-hat3s3pr.js +3 -0
  35. package/chunk-hcn9cf6v.js +2 -0
  36. package/chunk-j2x0g1vg.js +2 -0
  37. package/chunk-k0t23cmx.js +2 -0
  38. package/chunk-k7w7ac9q.js +18 -0
  39. package/chunk-kgdrjqsy.js +3 -0
  40. package/chunk-kjr81mrd.js +9 -0
  41. package/chunk-m38ber71.js +2 -0
  42. package/chunk-n6e43rvk.js +3 -0
  43. package/chunk-qbf8x2ft.js +5 -0
  44. package/chunk-qcwnkr5y.js +2 -0
  45. package/chunk-qffb7een.js +3 -0
  46. package/chunk-qnr1f5pj.js +3 -0
  47. package/chunk-r9aatvwm.js +3 -0
  48. package/chunk-rad3dm0q.js +2 -0
  49. package/chunk-rjdhaasf.js +3 -0
  50. package/chunk-rm3kcxq9.js +20 -0
  51. package/chunk-rv06x0kn.js +7 -0
  52. package/chunk-sf13azm4.js +12 -0
  53. package/chunk-sytpmbfp.js +471 -0
  54. package/chunk-t057xfrt.js +5 -0
  55. package/chunk-tjpvayr1.js +2 -0
  56. package/chunk-tnrqkc7b.js +8 -0
  57. package/chunk-v9fea96h.js +3 -0
  58. package/chunk-ve7qx8wm.js +3 -0
  59. package/chunk-vkkj4awb.js +2 -0
  60. package/chunk-wc5j0hfw.js +39 -0
  61. package/chunk-wd9zxhza.js +2 -0
  62. package/chunk-wx7kdf0b.js +2 -0
  63. package/chunk-x9982ek7.js +25 -0
  64. package/chunk-xhk54h2q.js +7 -0
  65. package/chunk-xsbxykr4.js +2 -0
  66. package/chunk-y69ewdn2.js +3 -0
  67. package/chunk-y8ced1jm.js +5 -0
  68. package/chunk-y9xe9ct2.js +2 -0
  69. package/chunk-yb1jxgnk.js +2 -0
  70. package/chunk-zt1wvkyf.js +3 -0
  71. package/compiled.js +3773 -0
  72. package/icon-dp9pmcvp.png +0 -0
  73. package/package.json +20 -4
  74. package/ui-test-worker.js +226 -0
  75. package/web/KaTeX_AMS-Regular-n7eqehx2.woff2 +0 -0
  76. package/web/KaTeX_Caligraphic-Bold-20r3b6fv.woff2 +0 -0
  77. package/web/KaTeX_Caligraphic-Regular-kkjm8f18.woff2 +0 -0
  78. package/web/KaTeX_Fraktur-Bold-pz5vg4t0.woff2 +0 -0
  79. package/web/KaTeX_Fraktur-Regular-a1e9wkwk.woff2 +0 -0
  80. package/web/KaTeX_Main-Bold-mcp098h8.woff2 +0 -0
  81. package/web/KaTeX_Main-BoldItalic-fy74z249.woff2 +0 -0
  82. package/web/KaTeX_Main-Italic-hw2gxy7f.woff2 +0 -0
  83. package/web/KaTeX_Main-Regular-xvp1b75c.woff2 +0 -0
  84. package/web/KaTeX_Math-BoldItalic-mf5nf33d.woff2 +0 -0
  85. package/web/KaTeX_Math-Italic-ap60jrna.woff2 +0 -0
  86. package/web/KaTeX_SansSerif-Bold-we3bymb6.woff2 +0 -0
  87. package/web/KaTeX_SansSerif-Italic-ent92bjx.woff2 +0 -0
  88. package/web/KaTeX_SansSerif-Regular-0573pbz9.woff2 +0 -0
  89. package/web/KaTeX_Script-Regular-z2rtj6vq.woff2 +0 -0
  90. package/web/KaTeX_Size1-Regular-dfr3w1hv.woff2 +0 -0
  91. package/web/KaTeX_Size2-Regular-kted78zb.woff2 +0 -0
  92. package/web/KaTeX_Size3-Regular-e6k1k5jk.woff2 +0 -0
  93. package/web/KaTeX_Size4-Regular-abedc1pd.woff2 +0 -0
  94. package/web/KaTeX_Typewriter-Regular-scw9zx1z.woff2 +0 -0
  95. package/web/apple-touch-icon-7dkm33qp.png +0 -0
  96. package/web/apple-touch-icon.png +0 -0
  97. package/web/chunk-00mq7bhx.js +1 -0
  98. package/web/chunk-0atfn8jf.js +1 -0
  99. package/web/chunk-0k0hvh59.js +40 -0
  100. package/web/chunk-0mrkjnte.js +1 -0
  101. package/web/chunk-0pbjgdgp.js +2 -0
  102. package/web/chunk-0s80zw00.js +1 -0
  103. package/web/chunk-0xck277j.js +140 -0
  104. package/web/chunk-1t760bg0.js +1 -0
  105. package/web/chunk-1v3d60pp.js +217 -0
  106. package/web/chunk-1x8fn8w9.js +1 -0
  107. package/web/chunk-20q90epj.js +2 -0
  108. package/web/chunk-24mfx6w1.js +2 -0
  109. package/web/chunk-29e1trsq.js +78 -0
  110. package/web/chunk-2j4m0bh1.js +2 -0
  111. package/web/chunk-310yey4q.js +1 -0
  112. package/web/chunk-32ezm0ry.js +1136 -0
  113. package/web/chunk-3ahpr030.js +2 -0
  114. package/web/chunk-3bqh2dkw.js +7 -0
  115. package/web/chunk-3cfabjey.js +370 -0
  116. package/web/chunk-3hvgs5aw.js +1 -0
  117. package/web/chunk-3kh6zefg.js +1 -0
  118. package/web/chunk-3pf33xsm.js +98 -0
  119. package/web/chunk-3pm4645m.js +2 -0
  120. package/web/chunk-401v5ht6.js +8 -0
  121. package/web/chunk-4b5mt5pd.js +70 -0
  122. package/web/chunk-4gavbw65.js +1 -0
  123. package/web/chunk-4rm1vy7w.js +1 -0
  124. package/web/chunk-4wd9r73y.js +1 -0
  125. package/web/chunk-4y2td14d.js +24 -0
  126. package/web/chunk-54thej0t.js +2 -0
  127. package/web/chunk-55kw67nv.js +1 -0
  128. package/web/chunk-59kqahb3.js +1 -0
  129. package/web/chunk-5hex8g0y.js +24 -0
  130. package/web/chunk-5r5kv4gh.js +1 -0
  131. package/web/chunk-6atq9qtt.js +7 -0
  132. package/web/chunk-6beqrmtq.js +1 -0
  133. package/web/chunk-6m69hczt.js +2 -0
  134. package/web/chunk-6r912gfj.js +34 -0
  135. package/web/chunk-74j07k8k.js +2 -0
  136. package/web/chunk-7f0m2yrd.js +169 -0
  137. package/web/chunk-8g239029.js +1 -0
  138. package/web/chunk-942prjb6.js +332 -0
  139. package/web/chunk-95q1bwxn.js +1 -0
  140. package/web/chunk-9s7c178f.js +1 -0
  141. package/web/chunk-9v1f6yc8.js +1 -0
  142. package/web/chunk-a3xt6840.js +38 -0
  143. package/web/chunk-ad6x47yy.js +1 -0
  144. package/web/chunk-b5brnfv9.js +2 -0
  145. package/web/chunk-benmmqt2.js +1 -0
  146. package/web/chunk-bgqdcnke.js +1 -0
  147. package/web/chunk-bhe4jzha.js +1 -0
  148. package/web/chunk-bwyw10wx.js +39 -0
  149. package/web/chunk-c85wxnpw.js +292 -0
  150. package/web/chunk-canbct9d.js +55 -0
  151. package/web/chunk-cg3jterp.js +2 -0
  152. package/web/chunk-d18r4m14.js +141 -0
  153. package/web/chunk-d4d3mnak.js +84 -0
  154. package/web/chunk-dmqtdeb4.js +1 -0
  155. package/web/chunk-dy2gm1fs.js +1 -0
  156. package/web/chunk-e5rmr47n.js +2 -0
  157. package/web/chunk-ea9swkkt.js +1 -0
  158. package/web/chunk-ejd43q75.js +19 -0
  159. package/web/chunk-eqegxtdt.js +1 -0
  160. package/web/chunk-ev1g5cqw.js +2 -0
  161. package/web/chunk-ezyvv4ab.js +3 -0
  162. package/web/chunk-f91wzwtk.js +1 -0
  163. package/web/chunk-fdkp6tzq.js +36 -0
  164. package/web/chunk-g1ev11wx.js +1 -0
  165. package/web/chunk-g9qv15hq.js +41 -0
  166. package/web/chunk-ghxe4gam.js +2 -0
  167. package/web/chunk-gmfp7fg4.js +1 -0
  168. package/web/chunk-gxay64d5.js +1 -0
  169. package/web/chunk-gxn0bey7.js +142 -0
  170. package/web/chunk-haphmhz8.js +200 -0
  171. package/web/chunk-hejz98gw.js +1 -0
  172. package/web/chunk-hfaffkrh.js +1 -0
  173. package/web/chunk-hp167dbv.js +1 -0
  174. package/web/chunk-hryhthxr.js +16 -0
  175. package/web/chunk-j2vt8c8v.js +1 -0
  176. package/web/chunk-jg6nzn6q.js +1 -0
  177. package/web/chunk-jtwhjp20.js +303 -0
  178. package/web/chunk-jvhmna7z.js +89 -0
  179. package/web/chunk-ka3q31t1.js +1 -0
  180. package/web/chunk-kbtbbarw.js +2 -0
  181. package/web/chunk-ktqt87qw.js +1 -0
  182. package/web/chunk-kx2xk3bb.js +1 -0
  183. package/web/chunk-m2d1sp30.js +1 -0
  184. package/web/chunk-mdsgekpk.js +1 -0
  185. package/web/chunk-mq92vqb1.js +2 -0
  186. package/web/chunk-n1dmrz44.js +2 -0
  187. package/web/chunk-n5fn9khr.js +1 -0
  188. package/web/chunk-n90cqdvg.js +2 -0
  189. package/web/chunk-nerx2q12.js +139 -0
  190. package/web/chunk-ngpq43vn.js +1 -0
  191. package/web/chunk-nj0cv1cq.js +257 -0
  192. package/web/chunk-nzey7cpv.js +1 -0
  193. package/web/chunk-p8y0hjx9.js +2 -0
  194. package/web/chunk-pxe3vna4.js +1 -0
  195. package/web/chunk-pz934t6t.js +30 -0
  196. package/web/chunk-r1dnh0s8.js +1 -0
  197. package/web/chunk-r5eakmw6.js +1 -0
  198. package/web/chunk-rkesqprv.js +1 -0
  199. package/web/chunk-rsn8j7xv.js +120 -0
  200. package/web/chunk-rtf2zzzv.js +1 -0
  201. package/web/chunk-ry9256r7.js +1 -0
  202. package/web/chunk-rykfak98.js +2 -0
  203. package/web/chunk-rz6wwdd5.js +106 -0
  204. package/web/chunk-s8vapqgr.js +12 -0
  205. package/web/chunk-sc63gh9d.js +2 -0
  206. package/web/chunk-srrfphes.js +1 -0
  207. package/web/chunk-svdzmaxb.js +2 -0
  208. package/web/chunk-svmhj9hd.js +1 -0
  209. package/web/chunk-t6agpn2z.js +1 -0
  210. package/web/chunk-tfyxp2qs.js +89 -0
  211. package/web/chunk-ts7zrf5b.js +2 -0
  212. package/web/chunk-ttg6tbwx.js +2 -0
  213. package/web/chunk-v47rhg7b.js +1 -0
  214. package/web/chunk-v5cnt7c8.js +1 -0
  215. package/web/chunk-v6v831tc.js +214 -0
  216. package/web/chunk-vadqkz3x.js +99 -0
  217. package/web/chunk-vfqdy860.js +1 -0
  218. package/web/chunk-vfqe8298.js +1 -0
  219. package/web/chunk-vqjs551t.js +7 -0
  220. package/web/chunk-wtawdeej.css +1 -0
  221. package/web/chunk-x3zwjkwg.js +62 -0
  222. package/web/chunk-x59p8sg2.js +1 -0
  223. package/web/chunk-x9q4kh67.js +4 -0
  224. package/web/chunk-xet1jjy9.js +1 -0
  225. package/web/chunk-xzp7jf7e.js +2 -0
  226. package/web/chunk-y7z144e3.js +1 -0
  227. package/web/chunk-ydgqrfvw.js +2 -0
  228. package/web/chunk-ydtrc1ay.js +2 -0
  229. package/web/chunk-yj1a2d37.js +1 -0
  230. package/web/chunk-ykxpb3wv.js +2 -0
  231. package/web/chunk-ytpwz01r.js +291 -0
  232. package/web/chunk-z09emmrb.js +1 -0
  233. package/web/chunk-z1jtv4c0.js +2 -0
  234. package/web/chunk-zakv2xdf.js +1 -0
  235. package/web/chunk-zbj1trar.js +2 -0
  236. package/web/chunk-zk2f7x5e.js +4 -0
  237. package/web/icon-192.png +0 -0
  238. package/web/icon-512.png +0 -0
  239. package/web/icon-maskable-512.png +0 -0
  240. package/web/icon-yx2p2pye.svg +13 -0
  241. package/web/icon.svg +13 -0
  242. package/web/index.html +23 -0
  243. package/web/install.ps1 +91 -0
  244. package/web/install.sh +177 -0
  245. package/web/inter-latin-wght-normal-an0py913.woff2 +0 -0
  246. package/web/jetbrains-mono-latin-wght-normal-hj2e42wt.woff2 +0 -0
  247. package/web/manifest-txf6vfbq.webmanifest +35 -0
  248. package/web/manifest.webmanifest +35 -0
  249. package/web/source-serif-4-latin-wght-italic-ta5tqqvz.woff2 +0 -0
  250. package/web/source-serif-4-latin-wght-normal-1yyvbhsz.woff2 +0 -0
  251. package/web/sw.js +90 -0
  252. package/worker.js +2 -0
@@ -0,0 +1 @@
1
+ import{Kn}from"./chunk-54thej0t.js";export{Kn as default};
@@ -0,0 +1,140 @@
1
+ import{e,r,se,b,y,B,C,s,p,Da,Rn,sn,Na,Er,Ar,Lr,Ir,Ma,Pa,Oa,$a,Ba,Fa,za,Ua,ja,qa,Va,Ga,Wa,Ha,Ya,Za,Xa,ln,Qa,le,ae,ie,Ye,Ze,St,ht,Tt,Hn,Qt,Yn}from"./chunk-jtwhjp20.js";import{Q}from"./chunk-z1jtv4c0.js";import{je}from"./chunk-hryhthxr.js";import{Pt}from"./chunk-ydgqrfvw.js";function Te(t){return Array.isArray(t)}function Ne(t){if(Rn(t))return t;let l=sn(t);if(!Qe(t))return{};if(Te(t)){let n=Array.from(t);if(t.length>0&&typeof t[0]==="string"&&Object.hasOwn(t,"index"))n.index=t.index,n.input=t.input;return n}if(ln(t)){let n=t;return new n.constructor(n.buffer,n.byteOffset,n.length)}if(l==="[object ArrayBuffer]")return new ArrayBuffer(t.byteLength);if(l==="[object DataView]"){let n=t,{buffer:g,byteOffset:f,byteLength:i}=n,d=new ArrayBuffer(i),w=new Uint8Array(g,f,i);return new Uint8Array(d).set(w),new DataView(d)}if(l==="[object Boolean]"||l==="[object Number]"||l==="[object String]"){let g=new t.constructor(t.valueOf());if(l==="[object String]")et(g,t);else pe(g,t);return g}if(l==="[object Date]")return new Date(Number(t));if(l==="[object RegExp]"){let n=t,g=new RegExp(n.source,n.flags);return g.lastIndex=n.lastIndex,g}if(l==="[object Symbol]")return Object(Symbol.prototype.valueOf.call(t));if(l==="[object Map]"){let n=t,g=new Map;return n.forEach((f,i)=>{g.set(i,f)}),g}if(l==="[object Set]"){let n=t,g=new Set;return n.forEach((f)=>{g.add(f)}),g}if(l==="[object Arguments]"){let n=t,g={};return pe(g,n),g.length=n.length,g[Symbol.iterator]=n[Symbol.iterator],g}let u={};return tt(u,t),pe(u,t),$e(u,t),u}function Qe(t){switch(sn(t)){case Ir:case Ba:case Fa:case Ua:case Lr:case Pa:case Za:case Xa:case Wa:case Ha:case Ya:case Oa:case Ar:case za:case Na:case $a:case Er:case Ma:case ja:case qa:case Va:case Ga:return!0;default:return!1}}function pe(t,l){for(let u in l)if(Object.hasOwn(l,u))t[u]=l[u]}function $e(t,l){let u=Object.getOwnPropertySymbols(l);for(let n=0;n<u.length;n++){let g=u[n];if(Object.prototype.propertyIsEnumerable.call(l,g))t[g]=l[g]}}function et(t,l){let u=l.valueOf().length;for(let n in l)if(Object.hasOwn(l,n)&&(Number.isNaN(Number(n))||Number(n)>=u))t[n]=l[n]}function tt(t,l){let u=Object.getPrototypeOf(l);if(u!==null){if(typeof l.constructor==="function")Object.setPrototypeOf(t,u)}}var be=function(){var t=e(function(R,S,o,h){for(o=o||{},h=R.length;h--;o[R[h]]=S);return o},"o"),l=[1,15],u=[1,7],n=[1,13],g=[1,14],f=[1,19],i=[1,16],d=[1,17],w=[1,18],E=[8,30],L=[8,10,21,28,29,30,31,39,43,46],m=[1,23],_=[1,24],T=[8,10,15,16,21,28,29,30,31,39,43,46],k=[8,10,15,16,21,27,28,29,30,31,39,43,46],I=[1,49],N={trace:e(function(){},"trace"),yy:{},symbols_:{error:2,spaceLines:3,SPACELINE:4,NL:5,separator:6,SPACE:7,EOF:8,start:9,BLOCK_DIAGRAM_KEY:10,document:11,stop:12,statement:13,link:14,LINK:15,START_LINK:16,LINK_LABEL:17,STR:18,nodeStatement:19,columnsStatement:20,SPACE_BLOCK:21,blockStatement:22,classDefStatement:23,cssClassStatement:24,styleStatement:25,node:26,SIZE:27,COLUMNS:28,"id-block":29,end:30,NODE_ID:31,nodeShapeNLabel:32,dirList:33,DIR:34,NODE_DSTART:35,NODE_DEND:36,BLOCK_ARROW_START:37,BLOCK_ARROW_END:38,classDef:39,CLASSDEF_ID:40,CLASSDEF_STYLEOPTS:41,DEFAULT:42,class:43,CLASSENTITY_IDS:44,STYLECLASS:45,style:46,STYLE_ENTITY_IDS:47,STYLE_DEFINITION_DATA:48,$accept:0,$end:1},terminals_:{2:"error",4:"SPACELINE",5:"NL",7:"SPACE",8:"EOF",10:"BLOCK_DIAGRAM_KEY",15:"LINK",16:"START_LINK",17:"LINK_LABEL",18:"STR",21:"SPACE_BLOCK",27:"SIZE",28:"COLUMNS",29:"id-block",30:"end",31:"NODE_ID",34:"DIR",35:"NODE_DSTART",36:"NODE_DEND",37:"BLOCK_ARROW_START",38:"BLOCK_ARROW_END",39:"classDef",40:"CLASSDEF_ID",41:"CLASSDEF_STYLEOPTS",42:"DEFAULT",43:"class",44:"CLASSENTITY_IDS",45:"STYLECLASS",46:"style",47:"STYLE_ENTITY_IDS",48:"STYLE_DEFINITION_DATA"},productions_:[0,[3,1],[3,2],[3,2],[6,1],[6,1],[6,1],[9,3],[12,1],[12,1],[12,2],[12,2],[11,1],[11,2],[14,1],[14,4],[13,1],[13,1],[13,1],[13,1],[13,1],[13,1],[13,1],[19,3],[19,2],[19,1],[20,1],[22,4],[22,3],[26,1],[26,2],[33,1],[33,2],[32,3],[32,4],[23,3],[23,3],[24,3],[25,3]],performAction:e(function(S,o,h,x,D,a,H){var c=a.length-1;switch(D){case 4:x.getLogger().debug("Rule: separator (NL) ");break;case 5:x.getLogger().debug("Rule: separator (Space) ");break;case 6:x.getLogger().debug("Rule: separator (EOF) ");break;case 7:x.getLogger().debug("Rule: hierarchy: ",a[c-1]),x.setHierarchy(a[c-1]);break;case 8:x.getLogger().debug("Stop NL ");break;case 9:x.getLogger().debug("Stop EOF ");break;case 10:x.getLogger().debug("Stop NL2 ");break;case 11:x.getLogger().debug("Stop EOF2 ");break;case 12:x.getLogger().debug("Rule: statement: ",a[c]),typeof a[c].length==="number"?this.$=a[c]:this.$=[a[c]];break;case 13:x.getLogger().debug("Rule: statement #2: ",a[c-1]),this.$=[a[c-1]].concat(a[c]);break;case 14:x.getLogger().debug("Rule: link: ",a[c],S),this.$={edgeTypeStr:a[c],label:""};break;case 15:x.getLogger().debug("Rule: LABEL link: ",a[c-3],a[c-1],a[c]),this.$={edgeTypeStr:a[c],label:a[c-1]};break;case 18:let V=parseInt(a[c]),j=x.generateId();this.$={id:j,type:"space",label:"",width:V,children:[]};break;case 23:x.getLogger().debug("Rule: (nodeStatement link node) ",a[c-2],a[c-1],a[c]," typestr: ",a[c-1].edgeTypeStr);let G=x.edgeStrToEdgeData(a[c-1].edgeTypeStr),ne=x.edgeStrToEdgeStartData(a[c-1].edgeTypeStr),q=x.edgeStrToThickness(a[c-1].edgeTypeStr),oe=x.edgeStrToPattern(a[c-1].edgeTypeStr);this.$=[{id:a[c-2].id,label:a[c-2].label,type:a[c-2].type,directions:a[c-2].directions},{id:a[c-2].id+"-"+a[c].id,start:a[c-2].id,end:a[c].id,label:a[c-1].label,type:"edge",thickness:q,pattern:oe,directions:a[c].directions,arrowTypeEnd:G,arrowTypeStart:ne},{id:a[c].id,label:a[c].label,type:x.typeStr2Type(a[c].typeStr),directions:a[c].directions}];break;case 24:x.getLogger().debug("Rule: nodeStatement (abc88 node size) ",a[c-1],a[c]),this.$={id:a[c-1].id,label:a[c-1].label,type:x.typeStr2Type(a[c-1].typeStr),directions:a[c-1].directions,widthInColumns:parseInt(a[c],10)};break;case 25:x.getLogger().debug("Rule: nodeStatement (node) ",a[c]),this.$={id:a[c].id,label:a[c].label,type:x.typeStr2Type(a[c].typeStr),directions:a[c].directions,widthInColumns:1};break;case 26:x.getLogger().debug("APA123",this?this:"na"),x.getLogger().debug("COLUMNS: ",a[c]),this.$={type:"column-setting",columns:a[c]==="auto"?-1:parseInt(a[c])};break;case 27:x.getLogger().debug("Rule: id-block statement : ",a[c-2],a[c-1]);let O=x.generateId();this.$={...a[c-2],type:"composite",children:a[c-1]};break;case 28:x.getLogger().debug("Rule: blockStatement : ",a[c-2],a[c-1],a[c]);let K=x.generateId();this.$={id:K,type:"composite",label:"",children:a[c-1]};break;case 29:x.getLogger().debug("Rule: node (NODE_ID separator): ",a[c]),this.$={id:a[c]};break;case 30:x.getLogger().debug("Rule: node (NODE_ID nodeShapeNLabel separator): ",a[c-1],a[c]),this.$={id:a[c-1],label:a[c].label,typeStr:a[c].typeStr,directions:a[c].directions};break;case 31:x.getLogger().debug("Rule: dirList: ",a[c]),this.$=[a[c]];break;case 32:x.getLogger().debug("Rule: dirList: ",a[c-1],a[c]),this.$=[a[c-1]].concat(a[c]);break;case 33:x.getLogger().debug("Rule: nodeShapeNLabel: ",a[c-2],a[c-1],a[c]),this.$={typeStr:a[c-2]+a[c],label:a[c-1]};break;case 34:x.getLogger().debug("Rule: BLOCK_ARROW nodeShapeNLabel: ",a[c-3],a[c-2]," #3:",a[c-1],a[c]),this.$={typeStr:a[c-3]+a[c],label:a[c-2],directions:a[c-1]};break;case 35:case 36:this.$={type:"classDef",id:a[c-1].trim(),css:a[c].trim()};break;case 37:this.$={type:"applyClass",id:a[c-1].trim(),styleClass:a[c].trim()};break;case 38:this.$={type:"applyStyles",id:a[c-1].trim(),stylesStr:a[c].trim()};break}},"anonymous"),table:[{9:1,10:[1,2]},{1:[3]},{10:l,11:3,13:4,19:5,20:6,21:u,22:8,23:9,24:10,25:11,26:12,28:n,29:g,31:f,39:i,43:d,46:w},{8:[1,20]},t(E,[2,12],{13:4,19:5,20:6,22:8,23:9,24:10,25:11,26:12,11:21,10:l,21:u,28:n,29:g,31:f,39:i,43:d,46:w}),t(L,[2,16],{14:22,15:m,16:_}),t(L,[2,17]),t(L,[2,18]),t(L,[2,19]),t(L,[2,20]),t(L,[2,21]),t(L,[2,22]),t(T,[2,25],{27:[1,25]}),t(L,[2,26]),{19:26,26:12,31:f},{10:l,11:27,13:4,19:5,20:6,21:u,22:8,23:9,24:10,25:11,26:12,28:n,29:g,31:f,39:i,43:d,46:w},{40:[1,28],42:[1,29]},{44:[1,30]},{47:[1,31]},t(k,[2,29],{32:32,35:[1,33],37:[1,34]}),{1:[2,7]},t(E,[2,13]),{26:35,31:f},{31:[2,14]},{17:[1,36]},t(T,[2,24]),{10:l,11:37,13:4,14:22,15:m,16:_,19:5,20:6,21:u,22:8,23:9,24:10,25:11,26:12,28:n,29:g,31:f,39:i,43:d,46:w},{30:[1,38]},{41:[1,39]},{41:[1,40]},{45:[1,41]},{48:[1,42]},t(k,[2,30]),{18:[1,43]},{18:[1,44]},t(T,[2,23]),{18:[1,45]},{30:[1,46]},t(L,[2,28]),t(L,[2,35]),t(L,[2,36]),t(L,[2,37]),t(L,[2,38]),{36:[1,47]},{33:48,34:I},{15:[1,50]},t(L,[2,27]),t(k,[2,33]),{38:[1,51]},{33:52,34:I,38:[2,31]},{31:[2,15]},t(k,[2,34]),{38:[2,32]}],defaultActions:{20:[2,7],23:[2,14],50:[2,15],52:[2,32]},parseError:e(function(S,o){if(o.recoverable)this.trace(S);else{var h=Error(S);throw h.hash=o,h}},"parseError"),parse:e(function(S){var o=this,h=[0],x=[],D=[null],a=[],H=this.table,c="",V=0,j=0,G=0,ne=2,q=1,oe=a.slice.call(arguments,1),O=Object.create(this.lexer),K={yy:{}};for(var ce in this.yy)if(Object.prototype.hasOwnProperty.call(this.yy,ce))K.yy[ce]=this.yy[ce];if(O.setInput(S,K.yy),K.yy.lexer=O,K.yy.parser=this,typeof O.yylloc>"u")O.yylloc={};var ue=O.yylloc;a.push(ue);var qe=O.options&&O.options.ranges;if(typeof K.yy.parseError==="function")this.parseError=K.yy.parseError;else this.parseError=Object.getPrototypeOf(this).parseError;function Je(F){h.length=h.length-2*F,D.length=D.length-F,a.length=a.length-F}e(Je,"popStack");function _e(){var F=x.pop()||O.lex()||q;if(typeof F!=="number"){if(F instanceof Array)x=F,F=x.pop();F=o.symbols_[F]||F}return F}e(_e,"lex");var A,he,W,P,At,ge,U={},J,Y,De,Z;while(!0){if(W=h[h.length-1],this.defaultActions[W])P=this.defaultActions[W];else{if(A===null||typeof A>"u")A=_e();P=H[W]&&H[W][A]}if(typeof P>"u"||!P.length||!P[0]){var de="";Z=[];for(J in H[W])if(this.terminals_[J]&&J>ne)Z.push("'"+this.terminals_[J]+"'");if(O.showPosition)de="Parse error on line "+(V+1)+`:
2
+ `+O.showPosition()+`
3
+ Expecting `+Z.join(", ")+", got '"+(this.terminals_[A]||A)+"'";else de="Parse error on line "+(V+1)+": Unexpected "+(A==q?"end of input":"'"+(this.terminals_[A]||A)+"'");this.parseError(de,{text:O.match,token:this.terminals_[A]||A,line:O.yylineno,loc:ue,expected:Z})}if(P[0]instanceof Array&&P.length>1)throw Error("Parse Error: multiple actions possible at state: "+W+", token: "+A);switch(P[0]){case 1:if(h.push(A),D.push(O.yytext),a.push(O.yylloc),h.push(P[1]),A=null,!he){if(j=O.yyleng,c=O.yytext,V=O.yylineno,ue=O.yylloc,G>0)G--}else A=he,he=null;break;case 2:if(Y=this.productions_[P[1]][1],U.$=D[D.length-Y],U._$={first_line:a[a.length-(Y||1)].first_line,last_line:a[a.length-1].last_line,first_column:a[a.length-(Y||1)].first_column,last_column:a[a.length-1].last_column},qe)U._$.range=[a[a.length-(Y||1)].range[0],a[a.length-1].range[1]];if(ge=this.performAction.apply(U,[c,j,V,K.yy,P[1],D,a].concat(oe)),typeof ge<"u")return ge;if(Y)h=h.slice(0,-1*Y*2),D=D.slice(0,-1*Y),a=a.slice(0,-1*Y);h.push(this.productions_[P[1]][0]),D.push(U.$),a.push(U._$),De=H[h[h.length-2]][h[h.length-1]],h.push(De);break;case 3:return!0}}return!0},"parse")},v=function(){var R={EOF:1,parseError:e(function(o,h){if(this.yy.parser)this.yy.parser.parseError(o,h);else throw Error(o)},"parseError"),setInput:e(function(S,o){if(this.yy=o||this.yy||{},this._input=S,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges)this.yylloc.range=[0,0];return this.offset=0,this},"setInput"),input:e(function(){var S=this._input[0];this.yytext+=S,this.yyleng++,this.offset++,this.match+=S,this.matched+=S;var o=S.match(/(?:\r\n?|\n).*/g);if(o)this.yylineno++,this.yylloc.last_line++;else this.yylloc.last_column++;if(this.options.ranges)this.yylloc.range[1]++;return this._input=this._input.slice(1),S},"input"),unput:e(function(S){var o=S.length,h=S.split(/(?:\r\n?|\n)/g);this._input=S+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-o),this.offset-=o;var x=this.match.split(/(?:\r\n?|\n)/g);if(this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),h.length-1)this.yylineno-=h.length-1;var D=this.yylloc.range;if(this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:h?(h.length===x.length?this.yylloc.first_column:0)+x[x.length-h.length].length-h[0].length:this.yylloc.first_column-o},this.options.ranges)this.yylloc.range=[D[0],D[0]+this.yyleng-o];return this.yyleng=this.yytext.length,this},"unput"),more:e(function(){return this._more=!0,this},"more"),reject:e(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else 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).
4
+ `+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:e(function(S){this.unput(this.match.slice(S))},"less"),pastInput:e(function(){var S=this.matched.substr(0,this.matched.length-this.match.length);return(S.length>20?"...":"")+S.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:e(function(){var S=this.match;if(S.length<20)S+=this._input.substr(0,20-S.length);return(S.substr(0,20)+(S.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:e(function(){var S=this.pastInput(),o=Array(S.length+1).join("-");return S+this.upcomingInput()+`
5
+ `+o+"^"},"showPosition"),test_match:e(function(S,o){var h,x,D;if(this.options.backtrack_lexer){if(D={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges)D.yylloc.range=this.yylloc.range.slice(0)}if(x=S[0].match(/(?:\r\n?|\n).*/g),x)this.yylineno+=x.length;if(this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:x?x[x.length-1].length-x[x.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+S[0].length},this.yytext+=S[0],this.match+=S[0],this.matches=S,this.yyleng=this.yytext.length,this.options.ranges)this.yylloc.range=[this.offset,this.offset+=this.yyleng];if(this._more=!1,this._backtrack=!1,this._input=this._input.slice(S[0].length),this.matched+=S[0],h=this.performAction.call(this,this.yy,this,o,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input)this.done=!1;if(h)return h;else if(this._backtrack){for(var a in D)this[a]=D[a];return!1}return!1},"test_match"),next:e(function(){if(this.done)return this.EOF;if(!this._input)this.done=!0;var S,o,h,x;if(!this._more)this.yytext="",this.match="";var D=this._currentRules();for(var a=0;a<D.length;a++)if(h=this._input.match(this.rules[D[a]]),h&&(!o||h[0].length>o[0].length)){if(o=h,x=a,this.options.backtrack_lexer)if(S=this.test_match(h,D[a]),S!==!1)return S;else if(this._backtrack){o=!1;continue}else return!1;else if(!this.options.flex)break}if(o){if(S=this.test_match(o,D[x]),S!==!1)return S;return!1}if(this._input==="")return this.EOF;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.
6
+ `+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:e(function(){var o=this.next();if(o)return o;else return this.lex()},"lex"),begin:e(function(o){this.conditionStack.push(o)},"begin"),popState:e(function(){var o=this.conditionStack.length-1;if(o>0)return this.conditionStack.pop();else return this.conditionStack[0]},"popState"),_currentRules:e(function(){if(this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1])return this.conditions[this.conditionStack[this.conditionStack.length-1]].rules;else return this.conditions.INITIAL.rules},"_currentRules"),topState:e(function(o){if(o=this.conditionStack.length-1-Math.abs(o||0),o>=0)return this.conditionStack[o];else return"INITIAL"},"topState"),pushState:e(function(o){this.begin(o)},"pushState"),stateStackSize:e(function(){return this.conditionStack.length},"stateStackSize"),options:{},performAction:e(function(o,h,x,D){var a=D;switch(x){case 0:return o.getLogger().debug("Found block-beta"),10;break;case 1:return o.getLogger().debug("Found id-block"),29;break;case 2:return o.getLogger().debug("Found block"),10;break;case 3:o.getLogger().debug(".",h.yytext);break;case 4:o.getLogger().debug("_",h.yytext);break;case 5:return 5;case 6:return h.yytext=-1,28;break;case 7:return h.yytext=h.yytext.replace(/columns\s+/,""),o.getLogger().debug("COLUMNS (LEX)",h.yytext),28;break;case 8:this.pushState("md_string");break;case 9:return"MD_STR";case 10:this.popState();break;case 11:this.pushState("string");break;case 12:o.getLogger().debug("LEX: POPPING STR:",h.yytext),this.popState();break;case 13:return o.getLogger().debug("LEX: STR end:",h.yytext),"STR";break;case 14:return h.yytext=h.yytext.replace(/space\:/,""),o.getLogger().debug("SPACE NUM (LEX)",h.yytext),21;break;case 15:return h.yytext="1",o.getLogger().debug("COLUMNS (LEX)",h.yytext),21;break;case 16:return 42;case 17:return"LINKSTYLE";case 18:return"INTERPOLATE";case 19:return this.pushState("CLASSDEF"),39;break;case 20:return this.popState(),this.pushState("CLASSDEFID"),"DEFAULT_CLASSDEF_ID";break;case 21:return this.popState(),this.pushState("CLASSDEFID"),40;break;case 22:return this.popState(),41;break;case 23:return this.pushState("CLASS"),43;break;case 24:return this.popState(),this.pushState("CLASS_STYLE"),44;break;case 25:return this.popState(),45;break;case 26:return this.pushState("STYLE_STMNT"),46;break;case 27:return this.popState(),this.pushState("STYLE_DEFINITION"),47;break;case 28:return this.popState(),48;break;case 29:return this.pushState("acc_title"),"acc_title";break;case 30:return this.popState(),"acc_title_value";break;case 31:return this.pushState("acc_descr"),"acc_descr";break;case 32:return this.popState(),"acc_descr_value";break;case 33:this.pushState("acc_descr_multiline");break;case 34:this.popState();break;case 35:return"acc_descr_multiline_value";case 36:return 30;case 37:return this.popState(),o.getLogger().debug("Lex: (("),"NODE_DEND";break;case 38:return this.popState(),o.getLogger().debug("Lex: (("),"NODE_DEND";break;case 39:return this.popState(),o.getLogger().debug("Lex: ))"),"NODE_DEND";break;case 40:return this.popState(),o.getLogger().debug("Lex: (("),"NODE_DEND";break;case 41:return this.popState(),o.getLogger().debug("Lex: (("),"NODE_DEND";break;case 42:return this.popState(),o.getLogger().debug("Lex: (-"),"NODE_DEND";break;case 43:return this.popState(),o.getLogger().debug("Lex: -)"),"NODE_DEND";break;case 44:return this.popState(),o.getLogger().debug("Lex: (("),"NODE_DEND";break;case 45:return this.popState(),o.getLogger().debug("Lex: ]]"),"NODE_DEND";break;case 46:return this.popState(),o.getLogger().debug("Lex: ("),"NODE_DEND";break;case 47:return this.popState(),o.getLogger().debug("Lex: ])"),"NODE_DEND";break;case 48:return this.popState(),o.getLogger().debug("Lex: /]"),"NODE_DEND";break;case 49:return this.popState(),o.getLogger().debug("Lex: /]"),"NODE_DEND";break;case 50:return this.popState(),o.getLogger().debug("Lex: )]"),"NODE_DEND";break;case 51:return this.popState(),o.getLogger().debug("Lex: )"),"NODE_DEND";break;case 52:return this.popState(),o.getLogger().debug("Lex: ]>"),"NODE_DEND";break;case 53:return this.popState(),o.getLogger().debug("Lex: ]"),"NODE_DEND";break;case 54:return o.getLogger().debug("Lexa: -)"),this.pushState("NODE"),35;break;case 55:return o.getLogger().debug("Lexa: (-"),this.pushState("NODE"),35;break;case 56:return o.getLogger().debug("Lexa: ))"),this.pushState("NODE"),35;break;case 57:return o.getLogger().debug("Lexa: )"),this.pushState("NODE"),35;break;case 58:return o.getLogger().debug("Lex: ((("),this.pushState("NODE"),35;break;case 59:return o.getLogger().debug("Lexa: )"),this.pushState("NODE"),35;break;case 60:return o.getLogger().debug("Lexa: )"),this.pushState("NODE"),35;break;case 61:return o.getLogger().debug("Lexa: )"),this.pushState("NODE"),35;break;case 62:return o.getLogger().debug("Lexc: >"),this.pushState("NODE"),35;break;case 63:return o.getLogger().debug("Lexa: (["),this.pushState("NODE"),35;break;case 64:return o.getLogger().debug("Lexa: )"),this.pushState("NODE"),35;break;case 65:return this.pushState("NODE"),35;break;case 66:return this.pushState("NODE"),35;break;case 67:return this.pushState("NODE"),35;break;case 68:return this.pushState("NODE"),35;break;case 69:return this.pushState("NODE"),35;break;case 70:return this.pushState("NODE"),35;break;case 71:return this.pushState("NODE"),35;break;case 72:return o.getLogger().debug("Lexa: ["),this.pushState("NODE"),35;break;case 73:return this.pushState("BLOCK_ARROW"),o.getLogger().debug("LEX ARR START"),37;break;case 74:return o.getLogger().debug("Lex: NODE_ID",h.yytext),31;break;case 75:return o.getLogger().debug("Lex: EOF",h.yytext),8;break;case 76:this.pushState("md_string");break;case 77:this.pushState("md_string");break;case 78:return"NODE_DESCR";case 79:this.popState();break;case 80:o.getLogger().debug("Lex: Starting string"),this.pushState("string");break;case 81:o.getLogger().debug("LEX ARR: Starting string"),this.pushState("string");break;case 82:return o.getLogger().debug("LEX: NODE_DESCR:",h.yytext),"NODE_DESCR";break;case 83:o.getLogger().debug("LEX POPPING"),this.popState();break;case 84:o.getLogger().debug("Lex: =>BAE"),this.pushState("ARROW_DIR");break;case 85:return h.yytext=h.yytext.replace(/^,\s*/,""),o.getLogger().debug("Lex (right): dir:",h.yytext),"DIR";break;case 86:return h.yytext=h.yytext.replace(/^,\s*/,""),o.getLogger().debug("Lex (left):",h.yytext),"DIR";break;case 87:return h.yytext=h.yytext.replace(/^,\s*/,""),o.getLogger().debug("Lex (x):",h.yytext),"DIR";break;case 88:return h.yytext=h.yytext.replace(/^,\s*/,""),o.getLogger().debug("Lex (y):",h.yytext),"DIR";break;case 89:return h.yytext=h.yytext.replace(/^,\s*/,""),o.getLogger().debug("Lex (up):",h.yytext),"DIR";break;case 90:return h.yytext=h.yytext.replace(/^,\s*/,""),o.getLogger().debug("Lex (down):",h.yytext),"DIR";break;case 91:return h.yytext="]>",o.getLogger().debug("Lex (ARROW_DIR end):",h.yytext),this.popState(),this.popState(),"BLOCK_ARROW_END";break;case 92:return o.getLogger().debug("Lex: LINK","#"+h.yytext+"#"),15;break;case 93:return o.getLogger().debug("Lex: LINK",h.yytext),15;break;case 94:return o.getLogger().debug("Lex: LINK",h.yytext),15;break;case 95:return o.getLogger().debug("Lex: LINK",h.yytext),15;break;case 96:return o.getLogger().debug("Lex: START_LINK",h.yytext),this.pushState("LLABEL"),16;break;case 97:return o.getLogger().debug("Lex: START_LINK",h.yytext),this.pushState("LLABEL"),16;break;case 98:return o.getLogger().debug("Lex: START_LINK",h.yytext),this.pushState("LLABEL"),16;break;case 99:this.pushState("md_string");break;case 100:return o.getLogger().debug("Lex: Starting string"),this.pushState("string"),"LINK_LABEL";break;case 101:return this.popState(),o.getLogger().debug("Lex: LINK","#"+h.yytext+"#"),15;break;case 102:return this.popState(),o.getLogger().debug("Lex: LINK",h.yytext),15;break;case 103:return this.popState(),o.getLogger().debug("Lex: LINK",h.yytext),15;break;case 104:return o.getLogger().debug("Lex: COLON",h.yytext),h.yytext=h.yytext.slice(1),27;break}},"anonymous"),rules:[/^(?:block-beta\b)/,/^(?:block:)/,/^(?:block\b)/,/^(?:[\s]+)/,/^(?:[\n]+)/,/^(?:((\u000D\u000A)|(\u000A)))/,/^(?:columns\s+auto\b)/,/^(?:columns\s+[\d]+)/,/^(?:["][`])/,/^(?:[^`"]+)/,/^(?:[`]["])/,/^(?:["])/,/^(?:["])/,/^(?:[^"]*)/,/^(?:space[:]\d+)/,/^(?:space\b)/,/^(?:default\b)/,/^(?:linkStyle\b)/,/^(?:interpolate\b)/,/^(?:classDef\s+)/,/^(?:DEFAULT\s+)/,/^(?:\w+\s+)/,/^(?:[^\n]*)/,/^(?:class\s+)/,/^(?:(\w+)+((,\s*\w+)*))/,/^(?:[^\n]*)/,/^(?:style\s+)/,/^(?:(\w+)+((,\s*\w+)*))/,/^(?:[^\n]*)/,/^(?:accTitle\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*\{\s*)/,/^(?:[\}])/,/^(?:[^\}]*)/,/^(?:end\b\s*)/,/^(?:\(\(\()/,/^(?:\)\)\))/,/^(?:[\)]\))/,/^(?:\}\})/,/^(?:\})/,/^(?:\(-)/,/^(?:-\))/,/^(?:\(\()/,/^(?:\]\])/,/^(?:\()/,/^(?:\]\))/,/^(?:\\\])/,/^(?:\/\])/,/^(?:\)\])/,/^(?:[\)])/,/^(?:\]>)/,/^(?:[\]])/,/^(?:-\))/,/^(?:\(-)/,/^(?:\)\))/,/^(?:\))/,/^(?:\(\(\()/,/^(?:\(\()/,/^(?:\{\{)/,/^(?:\{)/,/^(?:>)/,/^(?:\(\[)/,/^(?:\()/,/^(?:\[\[)/,/^(?:\[\|)/,/^(?:\[\()/,/^(?:\)\)\))/,/^(?:\[\\)/,/^(?:\[\/)/,/^(?:\[\\)/,/^(?:\[)/,/^(?:<\[)/,/^(?:[^\(\[\n\-\)\{\}\s\<\>:=]+)/,/^(?:$)/,/^(?:["][`])/,/^(?:["][`])/,/^(?:[^`"]+)/,/^(?:[`]["])/,/^(?:["])/,/^(?:["])/,/^(?:[^"]+)/,/^(?:["])/,/^(?:\]>\s*\()/,/^(?:,?\s*right\s*)/,/^(?:,?\s*left\s*)/,/^(?:,?\s*x\s*)/,/^(?:,?\s*y\s*)/,/^(?:,?\s*up\s*)/,/^(?:,?\s*down\s*)/,/^(?:\)\s*)/,/^(?:\s*[xo<]?--+[-xo>]\s*)/,/^(?:\s*[xo<]?==+[=xo>]\s*)/,/^(?:\s*[xo<]?-?\.+-[xo>]?\s*)/,/^(?:\s*~~[\~]+\s*)/,/^(?:\s*[xo<]?--\s*)/,/^(?:\s*[xo<]?==\s*)/,/^(?:\s*[xo<]?-\.\s*)/,/^(?:["][`])/,/^(?:["])/,/^(?:\s*[xo<]?--+[-xo>]\s*)/,/^(?:\s*[xo<]?==+[=xo>]\s*)/,/^(?:\s*[xo<]?-?\.+-[xo>]?\s*)/,/^(?::\d+)/],conditions:{STYLE_DEFINITION:{rules:[28],inclusive:!1},STYLE_STMNT:{rules:[27],inclusive:!1},CLASSDEFID:{rules:[22],inclusive:!1},CLASSDEF:{rules:[20,21],inclusive:!1},CLASS_STYLE:{rules:[25],inclusive:!1},CLASS:{rules:[24],inclusive:!1},LLABEL:{rules:[99,100,101,102,103],inclusive:!1},ARROW_DIR:{rules:[85,86,87,88,89,90,91],inclusive:!1},BLOCK_ARROW:{rules:[76,81,84],inclusive:!1},NODE:{rules:[37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,77,80],inclusive:!1},md_string:{rules:[9,10,78,79],inclusive:!1},space:{rules:[],inclusive:!1},string:{rules:[12,13,82,83],inclusive:!1},acc_descr_multiline:{rules:[34,35],inclusive:!1},acc_descr:{rules:[32],inclusive:!1},acc_title:{rules:[30],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,7,8,11,14,15,16,17,18,19,23,26,29,31,33,36,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,92,93,94,95,96,97,98,104],inclusive:!0}}};return R}();N.lexer=v;function z(){this.yy={}}return e(z,"Parser"),z.prototype=N,N.Parser=z,new z}();be.parser=be;var rt=be,M=new Map,me=[],Se=new Map,Ie="color",Oe="fill",st="bgFill",ve=",",ee=new Map,Le="",it=e((t)=>y.sanitizeText(t,s()),"sanitizeText"),at=e(function(t,l=""){let u=ee.get(t);if(!u)u={id:t,styles:[],textStyles:[]},ee.set(t,u);if(l!==void 0&&l!==null)l.split(ve).forEach((n)=>{let g=n.replace(/([^;]*);/,"$1").trim();if(RegExp(Ie).exec(n)){let i=g.replace(Oe,st).replace(Ie,Oe);u.textStyles.push(i)}u.styles.push(g)})},"addStyleClass"),nt=e(function(t,l=""){let u=M.get(t);if(l!==void 0&&l!==null)u.styles=l.split(ve)},"addStyle2Node"),ot=e(function(t,l){t.split(",").forEach(function(u){let n=M.get(u);if(n===void 0){let g=u.trim();n={id:g,type:"na",children:[]},M.set(g,n)}if(!n.classes)n.classes=[];n.classes.push(l)})},"setCssClass"),Ae=0,ze=e((t,l)=>{let u=t.flat(),n=[],f=u.find((i)=>i?.type==="column-setting")?.columns??-1;for(let i of u){if(typeof f==="number"&&f>0&&i.type!=="column-setting"&&typeof i.widthInColumns==="number"&&i.widthInColumns>f)r.warn(`Block ${i.id} width ${i.widthInColumns} exceeds configured column width ${f}`);if(i.label)i.label=it(i.label);if(i.type==="classDef"){at(i.id,i.css);continue}if(i.type==="applyClass"){ot(i.id,i?.styleClass??"");continue}if(i.type==="applyStyles"){if(i?.stylesStr)nt(i.id,i?.stylesStr);continue}if(i.type==="column-setting")l.columns=i.columns??-1;else if(i.type==="edge"){let d=(Se.get(i.id)??0)+1;Se.set(i.id,d),i.id=d+"-"+i.id,me.push(i)}else{if(!i.label)if(i.type==="composite")i.label="";else i.label=i.id;let d=M.get(i.id);if(d===void 0){if(i.type==="composite")i.colorIndex=Ae++;M.set(i.id,i)}else{if(i.type!=="na")d.type=i.type;if(i.label!==i.id)d.label=i.label}if(i.children)ze(i.children,i);if(i.type==="space"){let w=i.width??1;for(let E=0;E<w;E++){let L=Ne(i);L.id=L.id+"-"+E,M.set(L.id,L),n.push(L)}}else if(d===void 0)n.push(i)}}l.children=n},"populateBlockDatabase"),ke=[],X={id:"root",type:"composite",children:[],columns:-1},lt=e(()=>{r.debug("Clear called"),C(),X={id:"root",type:"composite",children:[],columns:-1},M=new Map([["root",X]]),ke=[],ee=new Map,me=[],Se=new Map,Le="",Ae=0},"clear");function Be(t){switch(r.debug("typeStr2Type",t),t){case"[]":return"square";case"()":return r.debug("we have a round"),"round";case"(())":return"circle";case">]":return"rect_left_inv_arrow";case"{}":return"diamond";case"{{}}":return"hexagon";case"([])":return"stadium";case"[[]]":return"subroutine";case"[()]":return"cylinder";case"((()))":return"doublecircle";case"[//]":return"lean_right";case"[\\\\]":return"lean_left";case"[/\\]":return"trapezoid";case"[\\/]":return"inv_trapezoid";case"<[]>":return"block_arrow";default:return"na"}}e(Be,"typeStr2Type");function Re(t){switch(r.debug("typeStr2Type",t),t){case"==":return"thick";default:return"normal"}}e(Re,"edgeTypeStr2Type");function Pe(t){switch(t.trim().slice(-1)){case"x":return"arrow_cross";case"o":return"arrow_circle";case">":return"arrow_point";default:return""}}e(Pe,"edgeStrToEdgeData");function Fe(t){switch(t.trim().charAt(0)){case"x":return"arrow_cross";case"o":return"arrow_circle";case"<":return"arrow_point";default:return"arrow_open"}}e(Fe,"edgeStrToEdgeStartData");function Me(t){return t.includes("==")?"thick":"normal"}e(Me,"edgeStrToThickness");function Ke(t){if(t.includes(".-"))return"dotted";return"solid"}e(Ke,"edgeStrToPattern");var Ce=0,ct=e(()=>(Ce++,"id-"+Math.random().toString(36).substr(2,12)+"-"+Ce),"generateId"),ut=e((t)=>{X.children=t,ze(t,X),ke=X.children},"setHierarchy"),gt=e((t)=>{let l=M.get(t);if(!l)return-1;if(l.columns)return l.columns;if(!l.children)return-1;return l.children.length},"getColumns"),dt=e(()=>[...M.values()],"getBlocksFlat"),pt=e(()=>ke||[],"getBlocks"),ft=e(()=>me,"getEdges"),bt=e((t)=>M.get(t),"getBlock"),xt=e((t)=>{M.set(t.id,t)},"setBlock"),mt=e((t)=>{Le=t},"setDiagramId"),Lt=e(()=>Le,"getDiagramId"),kt=e(()=>r,"getLogger"),yt=e(function(){return ee},"getClasses"),wt={getConfig:e(()=>b().block,"getConfig"),typeStr2Type:Be,edgeTypeStr2Type:Re,edgeStrToEdgeData:Pe,edgeStrToEdgeStartData:Fe,edgeStrToThickness:Me,edgeStrToPattern:Ke,getLogger:kt,getBlocksFlat:dt,getBlocks:pt,getEdges:ft,setHierarchy:ut,getBlock:bt,setBlock:xt,getColumns:gt,getClasses:yt,clear:lt,generateId:ct,setDiagramId:mt,getDiagramId:Lt},Et=wt,_t=e((t)=>{let{theme:l,bkgColorArray:u,borderColorArray:n}=t;if(!ae(l,n))return"";let g=ie(t.look),f=le(u),i="";for(let d=0;d<Ye(t.THEME_COLOR_LIMIT,n);d++){let w=n[d%n.length],E=f?`fill: ${u[d%u.length]};`:"",L=`[data-look="${g}"][data-color-id="color-${d}"]`;i+=`
7
+
8
+ ${L}.node rect.composite {
9
+ stroke: ${w};
10
+ ${E}
11
+ }
12
+ `}return i},"genColor"),fe=e((t,l)=>{let u=Pt,n=u(t,"r"),g=u(t,"g"),f=u(t,"b");return se(n,g,f,l)},"fade"),Dt=e((t)=>`${_t(t)}
13
+ .label {
14
+ font-family: ${t.fontFamily};
15
+ color: ${t.nodeTextColor||t.textColor};
16
+ }
17
+ .cluster-label text {
18
+ fill: ${t.titleColor};
19
+ }
20
+ .cluster-label span {
21
+ color: ${t.titleColor};
22
+ }
23
+
24
+
25
+
26
+ .label text,span {
27
+ fill: ${t.nodeTextColor||t.textColor};
28
+ color: ${t.nodeTextColor||t.textColor};
29
+ }
30
+
31
+ .node rect,
32
+ .node circle,
33
+ .node ellipse,
34
+ .node polygon,
35
+ .node path {
36
+ fill: ${t.mainBkg};
37
+ stroke: ${t.nodeBorder};
38
+ /* From the theme, as every other diagram does. Pinned at 1px here, so block drew a
39
+ thinner border than an identical flowchart node under any theme asking for more --
40
+ the neo theme asks for 2. Nothing downstream corrected it: the neo rules set stroke
41
+ and filter, never stroke-width. */
42
+ stroke-width: ${t.strokeWidth??1}px;
43
+ }
44
+ .flowchart-label text {
45
+ text-anchor: middle;
46
+ }
47
+ // .flowchart-label .text-outer-tspan {
48
+ // text-anchor: middle;
49
+ // }
50
+ // .flowchart-label .text-inner-tspan {
51
+ // text-anchor: start;
52
+ // }
53
+
54
+ .node .label {
55
+ text-align: center;
56
+ }
57
+ .node.clickable {
58
+ cursor: pointer;
59
+ }
60
+
61
+ .arrowheadPath {
62
+ fill: ${t.arrowheadColor};
63
+ }
64
+
65
+ .edgePaths .path {
66
+ stroke: ${t.lineColor};
67
+ stroke-width: 2.0px;
68
+ }
69
+
70
+ .flowchart-link {
71
+ stroke: ${t.lineColor};
72
+ fill: none;
73
+ }
74
+
75
+ .edgeLabel {
76
+ background-color: ${t.edgeLabelBackground};
77
+ /*
78
+ * This is for backward compatibility with existing code that didn't
79
+ * add a \`<p>\` around edge labels.
80
+ *
81
+ * TODO: We should probably remove this in a future release.
82
+ */
83
+ p {
84
+ margin: 0;
85
+ padding: 0;
86
+ display: inline;
87
+ }
88
+ rect {
89
+ opacity: 0.5;
90
+ background-color: ${t.edgeLabelBackground};
91
+ fill: ${t.edgeLabelBackground};
92
+ }
93
+ text-align: center;
94
+ }
95
+
96
+ /* For html labels only */
97
+ .labelBkg {
98
+ background-color: ${t.edgeLabelBackground};
99
+ }
100
+
101
+ .node .cluster {
102
+ // fill: ${fe(t.mainBkg,0.5)};
103
+ fill: ${fe(t.clusterBkg,0.5)};
104
+ stroke: ${fe(t.clusterBorder,0.2)};
105
+ box-shadow: rgba(50, 50, 93, 0.25) 0px 13px 27px -5px, rgba(0, 0, 0, 0.3) 0px 8px 16px -8px;
106
+ stroke-width: 1px;
107
+ }
108
+
109
+ .cluster text {
110
+ fill: ${t.titleColor};
111
+ }
112
+
113
+ .cluster span {
114
+ color: ${t.titleColor};
115
+ }
116
+ /* .cluster div {
117
+ color: ${t.titleColor};
118
+ } */
119
+
120
+ div.mermaidTooltip {
121
+ position: absolute;
122
+ text-align: center;
123
+ max-width: 200px;
124
+ padding: 2px;
125
+ font-family: ${t.fontFamily};
126
+ font-size: 12px;
127
+ background: ${t.tertiaryColor};
128
+ border: 1px solid ${t.border2};
129
+ border-radius: 2px;
130
+ pointer-events: none;
131
+ z-index: 100;
132
+ }
133
+
134
+ .flowchartTitleText {
135
+ text-anchor: middle;
136
+ font-size: 18px;
137
+ fill: ${t.textColor};
138
+ }
139
+ ${je()}
140
+ `,"getStyles"),Nt=Dt;function xe(t,l){if(t===0||!Number.isInteger(t))throw Error("Columns must be an integer !== 0.");if(l<0||!Number.isInteger(l))throw Error("Position must be a non-negative integer."+l);if(t<0)return{px:l,py:0};if(t===1)return{px:0,py:l};let u=l%t,n=Math.floor(l/t);return{px:u,py:n}}e(xe,"calculateBlockPosition");var It=e((t)=>{let l=0,u=0;for(let n of t.children){let{width:g,height:f,x:i,y:d}=n.size??{width:0,height:0,x:0,y:0};if(r.debug("getMaxChildSize abc95 child:",n.id,"width:",g,"height:",f,"x:",i,"y:",d,n.type),n.type==="space")continue;let w=g/(n.widthInColumns??1);if(w>l)l=w;if(f>u)u=f}return{width:l,height:u}},"getMaxChildSize");function te(t,l,u=0,n=0,g=8){if(r.debug("setBlockSizes abc95 (start)",t.id,t?.size?.x,"block width =",t?.size,"siblingWidth",u),!t?.size?.width)t.size={width:u,height:n,x:0,y:0};let f=0,i=0;if(t.children?.length>0){for(let k of t.children)te(k,l,0,0,g);let d=It(t);f=d.width,i=d.height,r.debug("setBlockSizes abc95 maxWidth of",t.id,":s children is ",f,i);for(let k of t.children)if(k.size)r.debug(`abc95 Setting size of children of ${t.id} id=${k.id} ${f} ${i} ${JSON.stringify(k.size)}`),k.size.width=f*(k.widthInColumns??1)+g*((k.widthInColumns??1)-1),k.size.height=i,k.size.x=0,k.size.y=0,r.debug(`abc95 updating size of ${t.id} children child:${k.id} maxWidth:${f} maxHeight:${i}`);for(let k of t.children)te(k,l,f,i,g);let w=t.columns??-1,E=0;for(let k of t.children)E+=k.widthInColumns??1;let L=t.children.length;if(w>0&&w<E)L=w;let m=Math.ceil(E/L),_=L*(f+g)+g,T=m*(i+g)+g;if(_<u){r.debug(`Detected to small sibling: abc95 ${t.id} siblingWidth ${u} siblingHeight ${n} width ${_}`),_=u,T=n;let k=(u-L*g-g)/L,I=(n-m*g-g)/m;r.debug("Size indata abc88",t.id,"childWidth",k,"maxWidth",f),r.debug("Size indata abc88",t.id,"childHeight",I,"maxHeight",i),r.debug("Size indata abc88 xSize",L,"padding",g);for(let N of t.children)if(N.size)N.size.width=k,N.size.height=I,N.size.x=0,N.size.y=0}if(r.debug(`abc95 (finale calc) ${t.id} xSize ${L} ySize ${m} columns ${w}${t.children.length} width=${Math.max(_,t.size?.width||0)}`),_<(t?.size?.width||0)){_=t?.size?.width||0;let k=w>0?Math.min(t.children.length,w):t.children.length;if(k>0){let I=(_-k*g-g)/k;r.debug("abc95 (growing to fit) width",t.id,_,t.size?.width,I);for(let N of t.children)if(N.size)N.size.width=I}}t.size={width:_,height:T,x:0,y:0}}r.debug("setBlockSizes abc94 (done)",t.id,t?.size?.x,t?.size?.width,t?.size?.y,t?.size?.height)}e(te,"setBlockSizes");function ye(t,l,u=8){r.debug(`abc85 layout blocks (=>layoutBlocks) ${t.id} x: ${t?.size?.x} y: ${t?.size?.y} width: ${t?.size?.width}`);let n=t.columns??-1;if(r.debug("layoutBlocks columns abc95",t.id,"=>",n,t),t.children&&t.children.length>0){let g=t?.children[0]?.size?.width??0,f=t.children.length*g+(t.children.length-1)*u;r.debug("widthOfChildren 88",f,"posX");let i=new Map;{let m=0;for(let _ of t.children){if(!_.size)continue;let{py:T}=xe(n,m),k=i.get(T)??0;if(_.size.height>k)i.set(T,_.size.height);let I=_?.widthInColumns??1;if(n>0)I=Math.min(I,n-m%n);m+=I}}let d=new Map;{let m=0,_=[...i.keys()].sort((T,k)=>T-k);for(let T of _)d.set(T,m),m+=(i.get(T)??0)+u}let w=0;r.debug("abc91 block?.size?.x",t.id,t?.size?.x);let E=t?.size?.x?t?.size?.x+(-t?.size?.width/2||0):-u,L=0;for(let m of t.children){let _=t;if(!m.size)continue;let{width:T,height:k}=m.size,{px:I,py:N}=xe(n,w);if(N!=L)L=N,E=t?.size?.x?t?.size?.x+(-t?.size?.width/2||0):-u,r.debug("New row in layout for block",t.id," and child ",m.id,L);if(r.debug(`abc89 layout blocks (child) id: ${m.id} Pos: ${w} (px, py) ${I},${N} (${_?.size?.x},${_?.size?.y}) parent: ${_.id} width: ${T}${u}`),_.size){let z=T/2;m.size.x=E+u+z,r.debug(`abc91 layout blocks (calc) px, pyid:${m.id} startingPos=X${E} new startingPosX${m.size.x} ${z} padding=${u} width=${T} halfWidth=${z} => x:${m.size.x} y:${m.size.y} ${m.widthInColumns} (width * (child?.w || 1)) / 2 ${T*(m?.widthInColumns??1)/2}`),E=m.size.x+z;let R=d.get(N)??0,S=i.get(N)??k;m.size.y=_.size.y-_.size.height/2+R+S/2+u,r.debug(`abc88 layout blocks (calc) px, pyid:${m.id}startingPosX${E}${u}${z}=>x:${m.size.x}y:${m.size.y}${m.widthInColumns}(width * (child?.w || 1)) / 2${T*(m?.widthInColumns??1)/2}`)}if(m.children)ye(m,l,u);let v=m?.widthInColumns??1;if(n>0)v=Math.min(v,n-w%n);w+=v,r.debug("abc88 columnsPos",m,w)}}r.debug(`layout blocks (<==layoutBlocks) ${t.id} x: ${t?.size?.x} y: ${t?.size?.y} width: ${t?.size?.width}`)}e(ye,"layoutBlocks");function we(t,{minX:l,minY:u,maxX:n,maxY:g}={minX:0,minY:0,maxX:0,maxY:0}){if(t.size&&t.id!=="root"){let{x:f,y:i,width:d,height:w}=t.size;if(f-d/2<l)l=f-d/2;if(i-w/2<u)u=i-w/2;if(f+d/2>n)n=f+d/2;if(i+w/2>g)g=i+w/2}if(t.children)for(let f of t.children)({minX:l,minY:u,maxX:n,maxY:g}=we(f,{minX:l,minY:u,maxX:n,maxY:g}));return{minX:l,minY:u,maxX:n,maxY:g}}e(we,"findBounds");function We(t){let l=t.getBlock("root");if(!l)return;let u=s()?.block?.padding??8;te(l,t,0,0,u),ye(l,t,u),r.debug("getBlocks",JSON.stringify(l,null,2));let{minX:n,minY:g,maxX:f,maxY:i}=we(l),d=i-g,w=f-n;return{x:n,y:g,width:w,height:d}}e(We,"layout");function Ee(t,l,u=!1){let n=t,g="default";if((n?.classes?.length||0)>0)g=(n?.classes??[]).join(" ");g=g+" flowchart-label";let f=(n?.classes??[]).flatMap((k)=>l.getClasses().get(k)?.styles??[]),i=0,d="rect",w;switch(n.type){case"round":i=5,d="rect";break;case"composite":i=0,d="composite",w=0;break;case"square":d="rect";break;case"diamond":d="question";break;case"hexagon":d="hexagon";break;case"block_arrow":d="block_arrow";break;case"odd":d="rect_left_inv_arrow";break;case"lean_right":d="lean_right";break;case"lean_left":d="lean_left";break;case"trapezoid":d="trapezoid";break;case"inv_trapezoid":d="inv_trapezoid";break;case"rect_left_inv_arrow":d="rect_left_inv_arrow";break;case"circle":d="circle";break;case"ellipse":d="ellipse";break;case"stadium":d="stadium";break;case"subroutine":d="subroutine";break;case"cylinder":d="cylinder";break;case"group":d="rect";break;case"doublecircle":d="doublecircle";break;default:d="rect"}let E=Qa(n?.styles??[]),L=n.label,m=n.size??{width:0,height:0,x:0,y:0},_=l.getDiagramId();return{labelStyle:E.labelStyle,shape:d,label:L,labelText:L,rx:i,ry:i,class:g,cssClasses:g,cssStyles:n?.styles??[],cssCompiledStyles:f,style:E.style,id:n.id,domId:_?`${_}-${n.id}`:n.id,isGroup:!1,directions:n.directions,width:m.width||void 0,height:m.height||void 0,wrappingWidth:m.width||Number.POSITIVE_INFINITY,x:m.x,y:m.y,positioned:u,intersect:void 0,padding:w??b()?.block?.padding??0,widthInColumns:n.widthInColumns??1,colorIndex:n.colorIndex,look:b().look}}e(Ee,"getNodeFromBlock");async function Ve(t,l,u){let n=Ee(l,u,!1);if(l.type==="group")return;let g=b(),f=await St(t,n,{config:g}),i=f.node()?.getBBox()??{width:0,height:0},d=u.getBlock(n.id);d.size={width:i.width,height:i.height,x:0,y:0,node:f},u.setBlock(d),f.remove()}e(Ve,"calculateBlockSize");async function Ue(t,l,u){let n=Ee(l,u,!0);if(u.getBlock(n.id).type!=="space"){let f=b(),i=await St(t,n,{config:f});if(n.colorIndex!==void 0)Ze(i,n.colorIndex,f.theme,f.themeVariables?.borderColorArray);l.intersect=n?.intersect,ht(n)}}e(Ue,"insertBlockPositioned");async function re(t,l,u,n){for(let g of l)if(await n(t,g,u),g.children)await re(t,g.children,u,n)}e(re,"performOperations");async function He(t,l,u){await re(t,l,u,Ve)}e(He,"calculateBlockSizes");async function Xe(t,l,u){await re(t,l,u,Ue)}e(Xe,"insertBlocks");async function Ge(t,l,u,n,g){let f=new Q({multigraph:!0,compound:!0});f.setGraph({rankdir:"TB",nodesep:10,ranksep:10,marginx:8,marginy:8});for(let i of u)if(i.size)f.setNode(i.id,{width:i.size.width,height:i.size.height,intersect:i.intersect});for(let i of l)if(i.start&&i.end){let d=n.getBlock(i.start),w=n.getBlock(i.end);if(d?.size&&w?.size){let E=d.size,L=w.size,m=[{x:E.x,y:E.y},{x:E.x+(L.x-E.x)/2,y:E.y+(L.y-E.y)/2},{x:L.x,y:L.y}],_=g?`${g}-${i.id}`:i.id,T=i.thickness==="thick"?"edge-thickness-thick":"edge-thickness-normal",k=i.pattern==="dotted"?"edge-pattern-dotted":"edge-pattern-solid",I=`${T} ${k} flowchart-link LS-a1 LE-b1`;if(Qt(t,{...i,id:_,arrowTypeEnd:i.arrowTypeEnd,arrowTypeStart:i.arrowTypeStart,points:m,classes:I},{},"block",f.node(i.start),f.node(i.end),g),i.label)await Tt(t,{...i,label:i.label,labelStyle:"stroke: #333; stroke-width: 1.5px;fill:none;",arrowTypeEnd:i.arrowTypeEnd,arrowTypeStart:i.arrowTypeStart,points:m,classes:I}),Hn({...i,x:m[1].x,y:m[1].y},{originalPath:m})}}}e(Ge,"insertEdges");var Ot=e(function(t,l){return l.db.getClasses()},"getClasses"),Ct=e(async function(t,l,u,n){let{securityLevel:g,block:f}=b(),i=n.db;i.setDiagramId(l);let d;if(g==="sandbox")d=p("#i"+l);let w=g==="sandbox"?p(d.nodes()[0].contentDocument.body):p("body"),E=g==="sandbox"?w.select(`[id="${l}"]`):p(`[id="${l}"]`);Da(E,b()),Yn(E,["point","circle","cross"],n.type,l);let m=i.getBlocks(),_=i.getBlocksFlat(),T=i.getEdges(),k=E.insert("g").attr("class","block");await He(k,m,i);let I=We(i);await Xe(k,m,i),await Ge(k,T,_,i,l);let N=k.node()?.getBBox(),v=N&&Number.isFinite(N.width)&&Number.isFinite(N.height)?N:I;if(v){let z=Math.max(1,Math.round(0.125*(v.width/v.height))),R=v.height+z+10,S=v.width+10,{useMaxWidth:o}=f;B(E,R,S,!!o),r.debug("Here Bounds",I,v),E.attr("viewBox",`${v.x-5} ${v.y-5} ${v.width+10} ${v.height+10}`)}},"draw"),vt={draw:Ct,getClasses:Ot},nr={parser:rt,db:Et,renderer:vt,styles:Nt};export{nr as diagram};
@@ -0,0 +1 @@
1
+ import{e,r}from"./chunk-jtwhjp20.js";import{K,Lt,It}from"./chunk-jvhmna7z.js";import{W}from"./chunk-e5rmr47n.js";import{ir,_t}from"./chunk-gxn0bey7.js";var l=ir().RailroadAbnf.parser.LangiumParser,s=e((t)=>{let n=t.alternatives.map(p);if(n.length===1)return n[0];return{type:"choice",alternatives:n}},"transformAlternation"),p=e((t)=>{let n=t.elements.map(f);if(n.length===1)return n[0];return{type:"sequence",elements:n}},"transformConcatenation"),u=e((t)=>{if(t.includes("*")){let[a,o]=t.split("*"),i=a?parseInt(a,10):0,m=o?parseInt(o,10):1/0;return{min:i,max:m}}let n=parseInt(t,10);return{min:n,max:n}},"parseRepeat"),f=e((t)=>{let n=c(t.primary);if(!t.repeat)return n;let{min:a,max:o}=u(t.repeat);if(a===0&&o===1)return{type:"optional",element:n};return{type:"repetition",element:n,min:a,max:o}},"transformElement"),c=e((t)=>{switch(t.$type){case"AbnfStringLiteral":return{type:"terminal",value:t.value};case"AbnfNumVal":return{type:"terminal",value:t.value};case"AbnfRuleName":return{type:"nonterminal",name:t.name};case"AbnfGroup":return s(t.element);case"AbnfOptionalGroup":return{type:"optional",element:s(t.element)};default:throw Error(`Unsupported ABNF primary node: ${t.$type}`)}},"transformPrimary"),d=e((t)=>({name:t.name,definition:s(t.definition)}),"transformRule"),v=e((t)=>{if(W(t,K),t.title)K.setTitle(t.title);t.rules.map((n)=>K.addRule(d(n)))},"populateDb"),g={parse:e((t)=>{K.clear(),r.debug("[ABNF Parser] Starting Langium parse");let n=l.parse(t);if(n.lexerErrors.length>0||n.parserErrors.length>0)throw new _t(n);let a=n.value;r.debug("[ABNF Parser] Parsed rules:",a.rules.length),v(a),r.debug("[ABNF Parser] Parse complete")},"parse"),parser:{yy:K}},E={parser:g,db:K,renderer:It,styles:Lt};export{E as diagram};
@@ -0,0 +1,217 @@
1
+ import{e,r,Le,O,Xt,y,C,S,E,T,A,I,L,s,p,N,Fe,le,ae,ie,Ye,he,ge}from"./chunk-jtwhjp20.js";import{Mt}from"./chunk-ghxe4gam.js";import{je}from"./chunk-hryhthxr.js";import{fe}from"./chunk-b5brnfv9.js";import{oe}from"./chunk-kbtbbarw.js";var tt=function(){var i=e(function(W,b,k,m){for(k=k||{},m=W.length;m--;k[W[m]]=b);return k},"o"),n=[1,18],l=[1,19],u=[1,20],o=[1,41],d=[1,26],f=[1,42],h=[1,24],D=[1,25],F=[1,32],R=[1,33],J=[1,34],_=[1,45],Oe=[1,35],we=[1,36],Me=[1,37],Pe=[1,38],Ve=[1,27],Re=[1,28],Ge=[1,29],Ue=[1,30],ze=[1,31],x=[1,44],v=[1,46],w=[1,43],M=[1,47],Ke=[1,9],g=[1,8,9],be=[1,58],ke=[1,59],me=[1,60],Ce=[1,61],Ee=[1,62],We=[1,63],Qe=[1,64],G=[1,8,9,41],st=[1,77],H=[1,8,9,12,13,22,39,41,44,46,68,69,70,71,72,73,74,79,81],Te=[1,8,9,12,13,18,20,22,39,41,44,46,47,60,68,69,70,71,72,73,74,79,81,86,100,102,103],ye=[13,60,86,100,102,103],Z=[13,60,73,74,86,100,102,103],it=[13,60,68,69,70,71,72,86,100,102,103],De=[1,103],ee=[1,121],te=[1,117],se=[1,113],re=[1,119],ne=[1,114],ue=[1,115],ce=[1,116],de=[1,118],pe=[1,120],at=[22,50,60,61,82,86,87,88,89,90],rt=[1,128],Be=[12,39],Xe=[1,8,9,39,41,44,46],_e=[1,8,9,22],nt=[1,153],lt=[1,8,9,61],Y=[1,8,9,22,50,60,61,82,86,87,88,89,90],He={trace:e(function(){},"trace"),yy:{},symbols_:{error:2,start:3,mermaidDoc:4,statements:5,graphConfig:6,CLASS_DIAGRAM:7,NEWLINE:8,EOF:9,statement:10,classLabel:11,SQS:12,STR:13,SQE:14,namespaceName:15,alphaNumToken:16,classLiteralName:17,DOT:18,className:19,GENERICTYPE:20,relationStatement:21,LABEL:22,namespaceStatement:23,classStatement:24,memberStatement:25,annotationStatement:26,clickStatement:27,styleStatement:28,cssClassStatement:29,noteStatement:30,classDefStatement:31,direction:32,acc_title:33,acc_title_value:34,acc_descr:35,acc_descr_value:36,acc_descr_multiline_value:37,namespaceIdentifier:38,STRUCT_START:39,classStatements:40,STRUCT_STOP:41,NAMESPACE:42,classIdentifier:43,STYLE_SEPARATOR:44,members:45,ANNOTATION_START:46,ANNOTATION_END:47,CLASS:48,emptyBody:49,SPACE:50,MEMBER:51,SEPARATOR:52,relation:53,NOTE_FOR:54,noteText:55,NOTE:56,CLASSDEF:57,classList:58,stylesOpt:59,ALPHA:60,COMMA:61,direction_tb:62,direction_bt:63,direction_rl:64,direction_lr:65,relationType:66,lineType:67,AGGREGATION:68,EXTENSION:69,COMPOSITION:70,DEPENDENCY:71,LOLLIPOP:72,LINE:73,DOTTED_LINE:74,CALLBACK:75,LINK:76,LINK_TARGET:77,CLICK:78,CALLBACK_NAME:79,CALLBACK_ARGS:80,HREF:81,STYLE:82,CSSCLASS:83,style:84,styleComponent:85,NUM:86,COLON:87,UNIT:88,BRKT:89,PCT:90,commentToken:91,textToken:92,graphCodeTokens:93,textNoTagsToken:94,TAGSTART:95,TAGEND:96,"==":97,"--":98,DEFAULT:99,MINUS:100,keywords:101,UNICODE_TEXT:102,BQUOTE_STR:103,$accept:0,$end:1},terminals_:{2:"error",7:"CLASS_DIAGRAM",8:"NEWLINE",9:"EOF",12:"SQS",13:"STR",14:"SQE",18:"DOT",20:"GENERICTYPE",22:"LABEL",33:"acc_title",34:"acc_title_value",35:"acc_descr",36:"acc_descr_value",37:"acc_descr_multiline_value",39:"STRUCT_START",41:"STRUCT_STOP",42:"NAMESPACE",44:"STYLE_SEPARATOR",46:"ANNOTATION_START",47:"ANNOTATION_END",48:"CLASS",50:"SPACE",51:"MEMBER",52:"SEPARATOR",54:"NOTE_FOR",56:"NOTE",57:"CLASSDEF",60:"ALPHA",61:"COMMA",62:"direction_tb",63:"direction_bt",64:"direction_rl",65:"direction_lr",68:"AGGREGATION",69:"EXTENSION",70:"COMPOSITION",71:"DEPENDENCY",72:"LOLLIPOP",73:"LINE",74:"DOTTED_LINE",75:"CALLBACK",76:"LINK",77:"LINK_TARGET",78:"CLICK",79:"CALLBACK_NAME",80:"CALLBACK_ARGS",81:"HREF",82:"STYLE",83:"CSSCLASS",86:"NUM",87:"COLON",88:"UNIT",89:"BRKT",90:"PCT",93:"graphCodeTokens",95:"TAGSTART",96:"TAGEND",97:"==",98:"--",99:"DEFAULT",100:"MINUS",101:"keywords",102:"UNICODE_TEXT",103:"BQUOTE_STR"},productions_:[0,[3,1],[3,1],[4,1],[6,4],[5,1],[5,2],[5,3],[11,3],[15,1],[15,1],[15,3],[15,2],[19,1],[19,3],[19,1],[19,2],[19,2],[19,2],[10,1],[10,2],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,2],[10,2],[10,1],[23,4],[23,5],[38,2],[38,3],[40,1],[40,2],[40,3],[40,1],[40,2],[40,3],[40,1],[40,2],[40,3],[24,1],[24,3],[24,4],[24,3],[24,6],[24,4],[24,7],[24,6],[43,2],[43,3],[49,0],[49,2],[49,2],[26,4],[45,1],[45,2],[25,1],[25,2],[25,1],[25,1],[21,3],[21,4],[21,4],[21,5],[30,3],[30,2],[31,3],[58,1],[58,3],[32,1],[32,1],[32,1],[32,1],[53,3],[53,2],[53,2],[53,1],[66,1],[66,1],[66,1],[66,1],[66,1],[67,1],[67,1],[27,3],[27,4],[27,3],[27,4],[27,4],[27,5],[27,3],[27,4],[27,4],[27,5],[27,4],[27,5],[27,5],[27,6],[28,3],[29,3],[59,1],[59,3],[84,1],[84,2],[85,1],[85,1],[85,1],[85,1],[85,1],[85,1],[85,1],[85,1],[85,1],[91,1],[91,1],[92,1],[92,1],[92,1],[92,1],[92,1],[92,1],[92,1],[94,1],[94,1],[94,1],[94,1],[16,1],[16,1],[16,1],[16,1],[17,1],[55,1]],performAction:e(function(b,k,m,c,B,t,Ae){var a=t.length-1;switch(B){case 8:this.$=t[a-1];break;case 9:case 10:case 13:case 15:this.$=t[a];break;case 11:case 14:this.$=t[a-2]+"."+t[a];break;case 12:case 16:this.$=t[a-1]+t[a];break;case 17:case 18:this.$=t[a-1]+"~"+t[a]+"~";break;case 19:c.addRelation(t[a]);break;case 20:t[a-1].title=c.cleanupLabel(t[a]),c.addRelation(t[a-1]);break;case 31:this.$=t[a].trim(),c.setAccTitle(this.$);break;case 32:case 33:this.$=t[a].trim(),c.setAccDescription(this.$);break;case 34:c.addClassesToNamespace(t[a-3],t[a-1][0],t[a-1][1]),c.popNamespace();break;case 35:c.addClassesToNamespace(t[a-4],t[a-1][0],t[a-1][1]),c.popNamespace();break;case 36:this.$=c.addNamespace(t[a]);break;case 37:this.$=c.addNamespace(t[a-1],t[a]);break;case 38:this.$=[[t[a]],[]];break;case 39:this.$=[[t[a-1]],[]];break;case 40:t[a][0].unshift(t[a-2]),this.$=t[a];break;case 41:this.$=[[],[t[a]]];break;case 42:this.$=[[],[t[a-1]]];break;case 43:t[a][1].unshift(t[a-2]),this.$=t[a];break;case 44:case 45:this.$=[[],[]];break;case 46:this.$=t[a];break;case 48:c.setCssClass(t[a-2],t[a]);break;case 49:c.addMembers(t[a-3],t[a-1]);break;case 51:c.setCssClass(t[a-5],t[a-3]),c.addMembers(t[a-5],t[a-1]);break;case 52:c.addAnnotation(t[a-3],t[a-1]);break;case 53:c.addAnnotation(t[a-6],t[a-4]),c.addMembers(t[a-6],t[a-1]);break;case 54:c.addAnnotation(t[a-5],t[a-3]);break;case 55:this.$=t[a],c.addClass(t[a]);break;case 56:this.$=t[a-1],c.addClass(t[a-1]),c.setClassLabel(t[a-1],t[a]);break;case 60:c.addAnnotation(t[a],t[a-2]);break;case 61:case 74:this.$=[t[a]];break;case 62:t[a].push(t[a-1]),this.$=t[a];break;case 63:break;case 64:c.addMember(t[a-1],c.cleanupLabel(t[a]));break;case 65:break;case 66:break;case 67:this.$={id1:t[a-2],id2:t[a],relation:t[a-1],relationTitle1:"none",relationTitle2:"none"};break;case 68:this.$={id1:t[a-3],id2:t[a],relation:t[a-1],relationTitle1:t[a-2],relationTitle2:"none"};break;case 69:this.$={id1:t[a-3],id2:t[a],relation:t[a-2],relationTitle1:"none",relationTitle2:t[a-1]};break;case 70:this.$={id1:t[a-4],id2:t[a],relation:t[a-2],relationTitle1:t[a-3],relationTitle2:t[a-1]};break;case 71:this.$=c.addNote(t[a],t[a-1]);break;case 72:this.$=c.addNote(t[a]);break;case 73:this.$=t[a-2],c.defineClass(t[a-1],t[a]);break;case 75:this.$=t[a-2].concat([t[a]]);break;case 76:c.setDirection("TB");break;case 77:c.setDirection("BT");break;case 78:c.setDirection("RL");break;case 79:c.setDirection("LR");break;case 80:this.$={type1:t[a-2],type2:t[a],lineType:t[a-1]};break;case 81:this.$={type1:"none",type2:t[a],lineType:t[a-1]};break;case 82:this.$={type1:t[a-1],type2:"none",lineType:t[a]};break;case 83:this.$={type1:"none",type2:"none",lineType:t[a]};break;case 84:this.$=c.relationType.AGGREGATION;break;case 85:this.$=c.relationType.EXTENSION;break;case 86:this.$=c.relationType.COMPOSITION;break;case 87:this.$=c.relationType.DEPENDENCY;break;case 88:this.$=c.relationType.LOLLIPOP;break;case 89:this.$=c.lineType.LINE;break;case 90:this.$=c.lineType.DOTTED_LINE;break;case 91:case 97:this.$=t[a-2],c.setClickEvent(t[a-1],t[a]);break;case 92:case 98:this.$=t[a-3],c.setClickEvent(t[a-2],t[a-1]),c.setTooltip(t[a-2],t[a]);break;case 93:this.$=t[a-2],c.setLink(t[a-1],t[a]);break;case 94:this.$=t[a-3],c.setLink(t[a-2],t[a-1],t[a]);break;case 95:this.$=t[a-3],c.setLink(t[a-2],t[a-1]),c.setTooltip(t[a-2],t[a]);break;case 96:this.$=t[a-4],c.setLink(t[a-3],t[a-2],t[a]),c.setTooltip(t[a-3],t[a-1]);break;case 99:this.$=t[a-3],c.setClickEvent(t[a-2],t[a-1],t[a]);break;case 100:this.$=t[a-4],c.setClickEvent(t[a-3],t[a-2],t[a-1]),c.setTooltip(t[a-3],t[a]);break;case 101:this.$=t[a-3],c.setLink(t[a-2],t[a]);break;case 102:this.$=t[a-4],c.setLink(t[a-3],t[a-1],t[a]);break;case 103:this.$=t[a-4],c.setLink(t[a-3],t[a-1]),c.setTooltip(t[a-3],t[a]);break;case 104:this.$=t[a-5],c.setLink(t[a-4],t[a-2],t[a]),c.setTooltip(t[a-4],t[a-1]);break;case 105:this.$=t[a-2],c.setCssStyle(t[a-1],t[a]);break;case 106:c.setCssClass(t[a-1],t[a]);break;case 107:this.$=[t[a]];break;case 108:t[a-2].push(t[a]),this.$=t[a-2];break;case 110:this.$=t[a-1]+t[a];break}},"anonymous"),table:[{3:1,4:2,5:3,6:4,7:[1,6],10:5,16:39,17:40,19:21,21:7,23:8,24:9,25:10,26:11,27:12,28:13,29:14,30:15,31:16,32:17,33:n,35:l,37:u,38:22,42:o,43:23,46:d,48:f,51:h,52:D,54:F,56:R,57:J,60:_,62:Oe,63:we,64:Me,65:Pe,75:Ve,76:Re,78:Ge,82:Ue,83:ze,86:x,100:v,102:w,103:M},{1:[3]},{1:[2,1]},{1:[2,2]},{1:[2,3]},i(Ke,[2,5],{8:[1,48]}),{8:[1,49]},i(g,[2,19],{22:[1,50]}),i(g,[2,21]),i(g,[2,22]),i(g,[2,23]),i(g,[2,24]),i(g,[2,25]),i(g,[2,26]),i(g,[2,27]),i(g,[2,28]),i(g,[2,29]),i(g,[2,30]),{34:[1,51]},{36:[1,52]},i(g,[2,33]),i(g,[2,63],{53:53,66:56,67:57,13:[1,54],22:[1,55],68:be,69:ke,70:me,71:Ce,72:Ee,73:We,74:Qe}),{39:[1,65]},i(G,[2,47],{39:[1,67],44:[1,66],46:[1,68]}),i(g,[2,65]),i(g,[2,66]),{16:69,60:_,86:x,100:v,102:w},{16:39,17:40,19:70,60:_,86:x,100:v,102:w,103:M},{16:39,17:40,19:71,60:_,86:x,100:v,102:w,103:M},{16:39,17:40,19:72,60:_,86:x,100:v,102:w,103:M},{60:[1,73]},{13:[1,74]},{16:39,17:40,19:75,60:_,86:x,100:v,102:w,103:M},{13:st,55:76},{58:78,60:[1,79]},i(g,[2,76]),i(g,[2,77]),i(g,[2,78]),i(g,[2,79]),i(H,[2,13],{16:39,17:40,19:81,18:[1,80],20:[1,82],60:_,86:x,100:v,102:w,103:M}),i(H,[2,15],{20:[1,83]}),{15:84,16:85,17:86,60:_,86:x,100:v,102:w,103:M},{16:39,17:40,19:87,60:_,86:x,100:v,102:w,103:M},i(Te,[2,133]),i(Te,[2,134]),i(Te,[2,135]),i(Te,[2,136]),i([1,8,9,12,13,20,22,39,41,44,46,68,69,70,71,72,73,74,79,81],[2,137]),i(Ke,[2,6],{10:5,21:7,23:8,24:9,25:10,26:11,27:12,28:13,29:14,30:15,31:16,32:17,19:21,38:22,43:23,16:39,17:40,5:88,33:n,35:l,37:u,42:o,46:d,48:f,51:h,52:D,54:F,56:R,57:J,60:_,62:Oe,63:we,64:Me,65:Pe,75:Ve,76:Re,78:Ge,82:Ue,83:ze,86:x,100:v,102:w,103:M}),{5:89,10:5,16:39,17:40,19:21,21:7,23:8,24:9,25:10,26:11,27:12,28:13,29:14,30:15,31:16,32:17,33:n,35:l,37:u,38:22,42:o,43:23,46:d,48:f,51:h,52:D,54:F,56:R,57:J,60:_,62:Oe,63:we,64:Me,65:Pe,75:Ve,76:Re,78:Ge,82:Ue,83:ze,86:x,100:v,102:w,103:M},i(g,[2,20]),i(g,[2,31]),i(g,[2,32]),{13:[1,91],16:39,17:40,19:90,60:_,86:x,100:v,102:w,103:M},{53:92,66:56,67:57,68:be,69:ke,70:me,71:Ce,72:Ee,73:We,74:Qe},i(g,[2,64]),{67:93,73:We,74:Qe},i(ye,[2,83],{66:94,68:be,69:ke,70:me,71:Ce,72:Ee}),i(Z,[2,84]),i(Z,[2,85]),i(Z,[2,86]),i(Z,[2,87]),i(Z,[2,88]),i(it,[2,89]),i(it,[2,90]),{8:[1,96],23:99,24:97,30:98,38:22,40:95,42:o,43:23,48:f,54:F,56:R},{16:100,60:_,86:x,100:v,102:w},{41:[1,102],45:101,51:De},{16:104,60:_,86:x,100:v,102:w},{47:[1,105]},{13:[1,106]},{13:[1,107]},{79:[1,108],81:[1,109]},{22:ee,50:te,59:110,60:se,82:re,84:111,85:112,86:ne,87:ue,88:ce,89:de,90:pe},{60:[1,122]},{13:st,55:123},i(G,[2,72]),i(G,[2,138]),{22:ee,50:te,59:124,60:se,61:[1,125],82:re,84:111,85:112,86:ne,87:ue,88:ce,89:de,90:pe},i(at,[2,74]),{16:39,17:40,19:126,60:_,86:x,100:v,102:w,103:M},i(H,[2,16]),i(H,[2,17]),i(H,[2,18]),{11:127,12:rt,39:[2,36]},i(Be,[2,9],{16:85,17:86,15:130,18:[1,129],60:_,86:x,100:v,102:w,103:M}),i(Be,[2,10]),i(Xe,[2,55],{11:131,12:rt}),i(Ke,[2,7]),{9:[1,132]},i(_e,[2,67]),{16:39,17:40,19:133,60:_,86:x,100:v,102:w,103:M},{13:[1,135],16:39,17:40,19:134,60:_,86:x,100:v,102:w,103:M},i(ye,[2,82],{66:136,68:be,69:ke,70:me,71:Ce,72:Ee}),i(ye,[2,81]),{41:[1,137]},{23:99,24:97,30:98,38:22,40:138,42:o,43:23,48:f,54:F,56:R},{8:[1,139],41:[2,38]},{8:[1,140],41:[2,41]},{8:[1,141],41:[2,44]},i(G,[2,48],{39:[1,142]}),{41:[1,143]},i(G,[2,50]),{41:[2,61],45:144,51:De},{47:[1,145]},{16:39,17:40,19:146,60:_,86:x,100:v,102:w,103:M},i(g,[2,91],{13:[1,147]}),i(g,[2,93],{13:[1,149],77:[1,148]}),i(g,[2,97],{13:[1,150],80:[1,151]}),{13:[1,152]},i(g,[2,105],{61:nt}),i(lt,[2,107],{85:154,22:ee,50:te,60:se,82:re,86:ne,87:ue,88:ce,89:de,90:pe}),i(Y,[2,109]),i(Y,[2,111]),i(Y,[2,112]),i(Y,[2,113]),i(Y,[2,114]),i(Y,[2,115]),i(Y,[2,116]),i(Y,[2,117]),i(Y,[2,118]),i(Y,[2,119]),i(g,[2,106]),i(G,[2,71]),i(g,[2,73],{61:nt}),{60:[1,155]},i(H,[2,14]),{39:[2,37]},{13:[1,156]},{15:157,16:85,17:86,60:_,86:x,100:v,102:w,103:M},i(Be,[2,12]),i(Xe,[2,56]),{1:[2,4]},i(_e,[2,69]),i(_e,[2,68]),{16:39,17:40,19:158,60:_,86:x,100:v,102:w,103:M},i(ye,[2,80]),i(G,[2,34]),{41:[1,159]},{23:99,24:97,30:98,38:22,40:160,41:[2,39],42:o,43:23,48:f,54:F,56:R},{23:99,24:97,30:98,38:22,40:161,41:[2,42],42:o,43:23,48:f,54:F,56:R},{23:99,24:97,30:98,38:22,40:162,41:[2,45],42:o,43:23,48:f,54:F,56:R},{45:163,51:De},i(G,[2,49]),{41:[2,62]},i(G,[2,52],{39:[1,164]}),i(g,[2,60]),i(g,[2,92]),i(g,[2,94]),i(g,[2,95],{77:[1,165]}),i(g,[2,98]),i(g,[2,99],{13:[1,166]}),i(g,[2,101],{13:[1,168],77:[1,167]}),{22:ee,50:te,60:se,82:re,84:169,85:112,86:ne,87:ue,88:ce,89:de,90:pe},i(Y,[2,110]),i(at,[2,75]),{14:[1,170]},i(Be,[2,11]),i(_e,[2,70]),i(G,[2,35]),{41:[2,40]},{41:[2,43]},{41:[2,46]},{41:[1,171]},{41:[1,173],45:172,51:De},i(g,[2,96]),i(g,[2,100]),i(g,[2,102]),i(g,[2,103],{77:[1,174]}),i(lt,[2,108],{85:154,22:ee,50:te,60:se,82:re,86:ne,87:ue,88:ce,89:de,90:pe}),i(Xe,[2,8]),i(G,[2,51]),{41:[1,175]},i(G,[2,54]),i(g,[2,104]),i(G,[2,53])],defaultActions:{2:[2,1],3:[2,2],4:[2,3],127:[2,37],132:[2,4],144:[2,62],160:[2,40],161:[2,43],162:[2,46]},parseError:e(function(b,k){if(k.recoverable)this.trace(b);else{var m=Error(b);throw m.hash=k,m}},"parseError"),parse:e(function(b){var k=this,m=[0],c=[],B=[null],t=[],Ae=this.table,a="",Ne=0,ut=0,ot=0,kt=2,ct=1,mt=t.slice.call(arguments,1),P=Object.create(this.lexer),Q={yy:{}};for(var qe in this.yy)if(Object.prototype.hasOwnProperty.call(this.yy,qe))Q.yy[qe]=this.yy[qe];if(P.setInput(b,Q.yy),Q.yy.lexer=P,Q.yy.parser=this,typeof P.yylloc>"u")P.yylloc={};var Je=P.yylloc;t.push(Je);var gt=P.options&&P.options.ranges;if(typeof Q.yy.parseError==="function")this.parseError=Q.yy.parseError;else this.parseError=Object.getPrototypeOf(this).parseError;function Ct(z){m.length=m.length-2*z,B.length=B.length-z,t.length=t.length-z}e(Ct,"popStack");function ht(){var z=c.pop()||P.lex()||ct;if(typeof z!=="number"){if(z instanceof Array)c=z,z=c.pop();z=k.symbols_[z]||z}return z}e(ht,"lex");var V,Ze,j,U,Lt,$e,q={},xe,K,dt,ve;while(!0){if(j=m[m.length-1],this.defaultActions[j])U=this.defaultActions[j];else{if(V===null||typeof V>"u")V=ht();U=Ae[j]&&Ae[j][V]}if(typeof U>"u"||!U.length||!U[0]){var et="";ve=[];for(xe in Ae[j])if(this.terminals_[xe]&&xe>kt)ve.push("'"+this.terminals_[xe]+"'");if(P.showPosition)et="Parse error on line "+(Ne+1)+`:
2
+ `+P.showPosition()+`
3
+ Expecting `+ve.join(", ")+", got '"+(this.terminals_[V]||V)+"'";else et="Parse error on line "+(Ne+1)+": Unexpected "+(V==ct?"end of input":"'"+(this.terminals_[V]||V)+"'");this.parseError(et,{text:P.match,token:this.terminals_[V]||V,line:P.yylineno,loc:Je,expected:ve})}if(U[0]instanceof Array&&U.length>1)throw Error("Parse Error: multiple actions possible at state: "+j+", token: "+V);switch(U[0]){case 1:if(m.push(V),B.push(P.yytext),t.push(P.yylloc),m.push(U[1]),V=null,!Ze){if(ut=P.yyleng,a=P.yytext,Ne=P.yylineno,Je=P.yylloc,ot>0)ot--}else V=Ze,Ze=null;break;case 2:if(K=this.productions_[U[1]][1],q.$=B[B.length-K],q._$={first_line:t[t.length-(K||1)].first_line,last_line:t[t.length-1].last_line,first_column:t[t.length-(K||1)].first_column,last_column:t[t.length-1].last_column},gt)q._$.range=[t[t.length-(K||1)].range[0],t[t.length-1].range[1]];if($e=this.performAction.apply(q,[a,ut,Ne,Q.yy,U[1],B,t].concat(mt)),typeof $e<"u")return $e;if(K)m=m.slice(0,-1*K*2),B=B.slice(0,-1*K),t=t.slice(0,-1*K);m.push(this.productions_[U[1]][0]),B.push(q.$),t.push(q._$),dt=Ae[m[m.length-2]][m[m.length-1]],m.push(dt);break;case 3:return!0}}return!0},"parse")},ft=function(){var W={EOF:1,parseError:e(function(k,m){if(this.yy.parser)this.yy.parser.parseError(k,m);else throw Error(k)},"parseError"),setInput:e(function(b,k){if(this.yy=k||this.yy||{},this._input=b,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges)this.yylloc.range=[0,0];return this.offset=0,this},"setInput"),input:e(function(){var b=this._input[0];this.yytext+=b,this.yyleng++,this.offset++,this.match+=b,this.matched+=b;var k=b.match(/(?:\r\n?|\n).*/g);if(k)this.yylineno++,this.yylloc.last_line++;else this.yylloc.last_column++;if(this.options.ranges)this.yylloc.range[1]++;return this._input=this._input.slice(1),b},"input"),unput:e(function(b){var k=b.length,m=b.split(/(?:\r\n?|\n)/g);this._input=b+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-k),this.offset-=k;var c=this.match.split(/(?:\r\n?|\n)/g);if(this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),m.length-1)this.yylineno-=m.length-1;var B=this.yylloc.range;if(this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:m?(m.length===c.length?this.yylloc.first_column:0)+c[c.length-m.length].length-m[0].length:this.yylloc.first_column-k},this.options.ranges)this.yylloc.range=[B[0],B[0]+this.yyleng-k];return this.yyleng=this.yytext.length,this},"unput"),more:e(function(){return this._more=!0,this},"more"),reject:e(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else 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).
4
+ `+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:e(function(b){this.unput(this.match.slice(b))},"less"),pastInput:e(function(){var b=this.matched.substr(0,this.matched.length-this.match.length);return(b.length>20?"...":"")+b.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:e(function(){var b=this.match;if(b.length<20)b+=this._input.substr(0,20-b.length);return(b.substr(0,20)+(b.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:e(function(){var b=this.pastInput(),k=Array(b.length+1).join("-");return b+this.upcomingInput()+`
5
+ `+k+"^"},"showPosition"),test_match:e(function(b,k){var m,c,B;if(this.options.backtrack_lexer){if(B={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges)B.yylloc.range=this.yylloc.range.slice(0)}if(c=b[0].match(/(?:\r\n?|\n).*/g),c)this.yylineno+=c.length;if(this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:c?c[c.length-1].length-c[c.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+b[0].length},this.yytext+=b[0],this.match+=b[0],this.matches=b,this.yyleng=this.yytext.length,this.options.ranges)this.yylloc.range=[this.offset,this.offset+=this.yyleng];if(this._more=!1,this._backtrack=!1,this._input=this._input.slice(b[0].length),this.matched+=b[0],m=this.performAction.call(this,this.yy,this,k,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input)this.done=!1;if(m)return m;else if(this._backtrack){for(var t in B)this[t]=B[t];return!1}return!1},"test_match"),next:e(function(){if(this.done)return this.EOF;if(!this._input)this.done=!0;var b,k,m,c;if(!this._more)this.yytext="",this.match="";var B=this._currentRules();for(var t=0;t<B.length;t++)if(m=this._input.match(this.rules[B[t]]),m&&(!k||m[0].length>k[0].length)){if(k=m,c=t,this.options.backtrack_lexer)if(b=this.test_match(m,B[t]),b!==!1)return b;else if(this._backtrack){k=!1;continue}else return!1;else if(!this.options.flex)break}if(k){if(b=this.test_match(k,B[c]),b!==!1)return b;return!1}if(this._input==="")return this.EOF;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.
6
+ `+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:e(function(){var k=this.next();if(k)return k;else return this.lex()},"lex"),begin:e(function(k){this.conditionStack.push(k)},"begin"),popState:e(function(){var k=this.conditionStack.length-1;if(k>0)return this.conditionStack.pop();else return this.conditionStack[0]},"popState"),_currentRules:e(function(){if(this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1])return this.conditions[this.conditionStack[this.conditionStack.length-1]].rules;else return this.conditions.INITIAL.rules},"_currentRules"),topState:e(function(k){if(k=this.conditionStack.length-1-Math.abs(k||0),k>=0)return this.conditionStack[k];else return"INITIAL"},"topState"),pushState:e(function(k){this.begin(k)},"pushState"),stateStackSize:e(function(){return this.conditionStack.length},"stateStackSize"),options:{},performAction:e(function(k,m,c,B){var t=B;switch(c){case 0:return 62;case 1:return 63;case 2:return 64;case 3:return 65;case 4:break;case 5:break;case 6:return this.begin("acc_title"),33;break;case 7:return this.popState(),"acc_title_value";break;case 8:return this.begin("acc_descr"),35;break;case 9:return this.popState(),"acc_descr_value";break;case 10:this.begin("acc_descr_multiline");break;case 11:this.popState();break;case 12:return"acc_descr_multiline_value";case 13:return 8;case 14:break;case 15:return 7;case 16:return 7;case 17:return"EDGE_STATE";case 18:this.begin("callback_name");break;case 19:this.popState();break;case 20:this.popState(),this.begin("callback_args");break;case 21:return 79;case 22:this.popState();break;case 23:return 80;case 24:this.popState();break;case 25:return"STR";case 26:this.begin("string");break;case 27:return 82;case 28:return 57;case 29:return this.begin("namespace"),42;break;case 30:return this.popState(),8;break;case 31:break;case 32:return this.begin("namespace-body"),39;break;case 33:this.popState(),this.less(0);break;case 34:return this.popState(),41;break;case 35:return"EOF_IN_STRUCT";case 36:return 8;case 37:break;case 38:return"EDGE_STATE";case 39:return this.begin("class"),48;break;case 40:return this.popState(),8;break;case 41:break;case 42:return this.popState(),this.popState(),41;break;case 43:return this.begin("class-body"),39;break;case 44:return this.popState(),41;break;case 45:return"EOF_IN_STRUCT";case 46:return"EDGE_STATE";case 47:return"OPEN_IN_STRUCT";case 48:break;case 49:return"MEMBER";case 50:return 83;case 51:return 75;case 52:return 76;case 53:return 78;case 54:return 54;case 55:return 56;case 56:return 46;case 57:return 47;case 58:return 81;case 59:this.popState();break;case 60:return"GENERICTYPE";case 61:this.begin("generic");break;case 62:this.popState();break;case 63:return"BQUOTE_STR";case 64:this.begin("bqstring");break;case 65:return 77;case 66:return 77;case 67:return 77;case 68:return 77;case 69:return 69;case 70:return 69;case 71:return 71;case 72:return 71;case 73:return 70;case 74:return 68;case 75:return 72;case 76:return 73;case 77:return 74;case 78:return 22;case 79:return 44;case 80:return 100;case 81:return 18;case 82:return"PLUS";case 83:return 87;case 84:return 61;case 85:return 89;case 86:return 89;case 87:return 90;case 88:return"EQUALS";case 89:return"EQUALS";case 90:return 60;case 91:return 12;case 92:return 14;case 93:return"PUNCTUATION";case 94:return 86;case 95:return 102;case 96:return 50;case 97:return 50;case 98:return 9}},"anonymous"),rules:[/^(?:.*direction\s+TB[^\n]*)/,/^(?:.*direction\s+BT[^\n]*)/,/^(?:.*direction\s+RL[^\n]*)/,/^(?:.*direction\s+LR[^\n]*)/,/^(?:%%(?!\{)*[^\n]*(\r?\n?)+)/,/^(?:%%[^\n]*(\r?\n)*)/,/^(?:accTitle\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*\{\s*)/,/^(?:[\}])/,/^(?:[^\}]*)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:classDiagram-v2\b)/,/^(?:classDiagram\b)/,/^(?:\[\*\])/,/^(?:call[\s]+)/,/^(?:\([\s]*\))/,/^(?:\()/,/^(?:[^(]*)/,/^(?:\))/,/^(?:[^)]*)/,/^(?:["])/,/^(?:[^"]*)/,/^(?:["])/,/^(?:style\b)/,/^(?:classDef\b)/,/^(?:namespace\b)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:[{])/,/^(?:[}])/,/^(?:[}])/,/^(?:$)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:\[\*\])/,/^(?:class\b)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:[}])/,/^(?:[{])/,/^(?:[}])/,/^(?:$)/,/^(?:\[\*\])/,/^(?:[{])/,/^(?:[\n])/,/^(?:[^{}\n]*)/,/^(?:cssClass\b)/,/^(?:callback\b)/,/^(?:link\b)/,/^(?:click\b)/,/^(?:note for\b)/,/^(?:note\b)/,/^(?:<<)/,/^(?:>>)/,/^(?:href\b)/,/^(?:[~])/,/^(?:[^~]*)/,/^(?:~)/,/^(?:[`])/,/^(?:[^`]+)/,/^(?:[`])/,/^(?:_self\b)/,/^(?:_blank\b)/,/^(?:_parent\b)/,/^(?:_top\b)/,/^(?:\s*<\|)/,/^(?:\s*\|>)/,/^(?:\s*>)/,/^(?:\s*<)/,/^(?:\s*\*)/,/^(?:\s*o\b)/,/^(?:\s*\(\))/,/^(?:--)/,/^(?:\.\.)/,/^(?::{1}[^:\n;]+)/,/^(?::{3})/,/^(?:-)/,/^(?:\.)/,/^(?:\+)/,/^(?::)/,/^(?:,)/,/^(?:#)/,/^(?:#)/,/^(?:%)/,/^(?:=)/,/^(?:=)/,/^(?:\w+)/,/^(?:\[)/,/^(?:\])/,/^(?:[!"#$%&'*+,-.`?\\/])/,/^(?:[0-9]+)/,/^(?:[\u00AA\u00B5\u00BA\u00C0-\u00D6\u00D8-\u00F6]|[\u00F8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377]|[\u037A-\u037D\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5]|[\u03F7-\u0481\u048A-\u0527\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA]|[\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE]|[\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA]|[\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u08A0]|[\u08A2-\u08AC\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0977]|[\u0979-\u097F\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2]|[\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u0A05-\u0A0A]|[\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39]|[\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8]|[\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0B05-\u0B0C]|[\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C]|[\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99]|[\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0]|[\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C33\u0C35-\u0C39\u0C3D]|[\u0C58\u0C59\u0C60\u0C61\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3]|[\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10]|[\u0D12-\u0D3A\u0D3D\u0D4E\u0D60\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1]|[\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81]|[\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3]|[\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6]|[\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A]|[\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081]|[\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D]|[\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0]|[\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310]|[\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F4\u1401-\u166C]|[\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u1700-\u170C\u170E-\u1711]|[\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7]|[\u17DC\u1820-\u1877\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191C]|[\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19C1-\u19C7\u1A00-\u1A16]|[\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF]|[\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1CE9-\u1CEC]|[\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D]|[\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D]|[\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3]|[\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F]|[\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128]|[\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2183\u2184]|[\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3]|[\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6]|[\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE]|[\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005\u3006\u3031-\u3035\u303B\u303C]|[\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D]|[\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FCC]|[\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B]|[\uA640-\uA66E\uA67F-\uA697\uA6A0-\uA6E5\uA717-\uA71F\uA722-\uA788]|[\uA78B-\uA78E\uA790-\uA793\uA7A0-\uA7AA\uA7F8-\uA801\uA803-\uA805]|[\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB]|[\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uAA00-\uAA28]|[\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA80-\uAAAF\uAAB1\uAAB5]|[\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4]|[\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E]|[\uABC0-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D]|[\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36]|[\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D]|[\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC]|[\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF]|[\uFFD2-\uFFD7\uFFDA-\uFFDC])/,/^(?:\s)/,/^(?:\s)/,/^(?:$)/],conditions:{"namespace-body":{rules:[26,29,34,35,36,37,38,39,50,51,52,53,54,55,56,57,58,61,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,87,88,89,90,91,92,93,94,95,96,98],inclusive:!1},namespace:{rules:[26,29,30,31,32,33,50,51,52,53,54,55,56,57,58,61,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,87,88,89,90,91,92,93,94,95,96,98],inclusive:!1},"class-body":{rules:[26,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,61,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,87,88,89,90,91,92,93,94,95,96,98],inclusive:!1},class:{rules:[26,40,41,42,43,50,51,52,53,54,55,56,57,58,61,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,87,88,89,90,91,92,93,94,95,96,98],inclusive:!1},acc_descr_multiline:{rules:[11,12,26,50,51,52,53,54,55,56,57,58,61,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,87,88,89,90,91,92,93,94,95,96,98],inclusive:!1},acc_descr:{rules:[9,26,50,51,52,53,54,55,56,57,58,61,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,87,88,89,90,91,92,93,94,95,96,98],inclusive:!1},acc_title:{rules:[7,26,50,51,52,53,54,55,56,57,58,61,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,87,88,89,90,91,92,93,94,95,96,98],inclusive:!1},callback_args:{rules:[22,23,26,50,51,52,53,54,55,56,57,58,61,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,87,88,89,90,91,92,93,94,95,96,98],inclusive:!1},callback_name:{rules:[19,20,21,26,50,51,52,53,54,55,56,57,58,61,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,87,88,89,90,91,92,93,94,95,96,98],inclusive:!1},href:{rules:[26,50,51,52,53,54,55,56,57,58,61,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,87,88,89,90,91,92,93,94,95,96,98],inclusive:!1},struct:{rules:[26,50,51,52,53,54,55,56,57,58,61,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,87,88,89,90,91,92,93,94,95,96,98],inclusive:!1},generic:{rules:[26,50,51,52,53,54,55,56,57,58,59,60,61,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,87,88,89,90,91,92,93,94,95,96,98],inclusive:!1},bqstring:{rules:[26,50,51,52,53,54,55,56,57,58,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,87,88,89,90,91,92,93,94,95,96,98],inclusive:!1},string:{rules:[24,25,26,50,51,52,53,54,55,56,57,58,61,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,87,88,89,90,91,92,93,94,95,96,98],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,8,10,13,14,15,16,17,18,26,27,28,29,39,50,51,52,53,54,55,56,57,58,61,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98],inclusive:!0}}};return W}();He.lexer=ft;function Se(){this.yy={}}return e(Se,"Parser"),Se.prototype=He,He.Parser=Se,new Se}();tt.parser=tt;var Et=tt,pt=["#","+","~","-",""],At=class{static{e(this,"ClassMember")}constructor(i,n){this.memberType=n,this.visibility="",this.classifier="",this.text="";let l=O(i,s());this.parseMember(l)}getDisplayDetails(){let i=this.visibility+Xt(this.id);if(this.memberType==="method"){if(i+=`(${Xt(this.parameters.trim())})`,this.returnType)i+=" : "+Xt(this.returnType)}i=i.trim();let n=this.parseClassifier();return{displayText:i,cssStyle:n}}parseMember(i){let n="";if(this.memberType==="method"){let o=/([#+~-])?(.+)\((.*)\)([\s$*])?(.*)([$*])?/.exec(i);if(o){let d=o[1]?o[1].trim():"";if(pt.includes(d))this.visibility=d;if(this.id=o[2],this.parameters=o[3]?o[3].trim():"",n=o[4]?o[4].trim():"",this.returnType=o[5]?o[5].trim():"",n===""){let f=this.returnType.substring(this.returnType.length-1);if(/[$*]/.exec(f))n=f,this.returnType=this.returnType.substring(0,this.returnType.length-1)}}}else{let u=i.length,o=i.substring(0,1),d=i.substring(u-1);if(pt.includes(o))this.visibility=o;if(/[$*]/.exec(d))n=d;this.id=i.substring(this.visibility===""?0:1,n===""?u:u-1)}this.classifier=n,this.id=this.id.startsWith(" ")?" "+this.id.trim():this.id.trim();let l=`${this.visibility?"\\"+this.visibility:""}${Xt(this.id)}${this.memberType==="method"?`(${Xt(this.parameters)})${this.returnType?" : "+Xt(this.returnType):""}`:""}`;if(this.text=l.replaceAll("<","&lt;").replaceAll(">","&gt;"),this.text.startsWith("\\&lt;"))this.text=this.text.replace("\\&lt;","~")}parseClassifier(){switch(this.classifier){case"*":return"font-style:italic;";case"$":return"text-decoration:underline;";default:return""}}},Ie="classId-",bt=0,X=e((i)=>y.sanitizeText(i,s()),"sanitizeText"),Tt=class i{constructor(){this.relations=[],this.classes=new Map,this.styleClasses=new Map,this.notes=new Map,this.interfaces=[],this.namespaces=new Map,this.namespaceCounter=0,this.namespaceStack=[],this.diagramId="",this.functions=[],this.lineType={LINE:0,DOTTED_LINE:1},this.relationType={AGGREGATION:0,EXTENSION:1,COMPOSITION:2,DEPENDENCY:3,LOLLIPOP:4},this.setupToolTips=e((n)=>{let l=Mt();p(n).select("svg").selectAll("g").filter(function(){return p(this).attr("title")!==null}).on("mouseover",(d)=>{let f=p(d.currentTarget),h=f.attr("title");if(!h)return;let D=d.currentTarget.getBoundingClientRect();l.transition().duration(200).style("opacity",".9"),l.html(Le.sanitize(h)).style("left",`${window.scrollX+D.left+D.width/2}px`).style("top",`${window.scrollY+D.bottom+4}px`),f.classed("hover",!0)}).on("mouseout",(d)=>{l.transition().duration(500).style("opacity",0),p(d.currentTarget).classed("hover",!1)})},"setupToolTips"),this.direction="TB",this.setAccTitle=S,this.getAccTitle=E,this.setAccDescription=T,this.getAccDescription=A,this.setDiagramTitle=I,this.getDiagramTitle=L,this.getConfig=e(()=>s().class,"getConfig"),this.functions.push(this.setupToolTips.bind(this)),this.clear(),this.addRelation=this.addRelation.bind(this),this.addClassesToNamespace=this.addClassesToNamespace.bind(this),this.addNamespace=this.addNamespace.bind(this),this.popNamespace=this.popNamespace.bind(this),this.setCssClass=this.setCssClass.bind(this),this.addMembers=this.addMembers.bind(this),this.addClass=this.addClass.bind(this),this.setClassLabel=this.setClassLabel.bind(this),this.addAnnotation=this.addAnnotation.bind(this),this.addMember=this.addMember.bind(this),this.cleanupLabel=this.cleanupLabel.bind(this),this.addNote=this.addNote.bind(this),this.defineClass=this.defineClass.bind(this),this.setDirection=this.setDirection.bind(this),this.setLink=this.setLink.bind(this),this.bindFunctions=this.bindFunctions.bind(this),this.clear=this.clear.bind(this),this.setTooltip=this.setTooltip.bind(this),this.setClickEvent=this.setClickEvent.bind(this),this.setCssStyle=this.setCssStyle.bind(this)}static{e(this,"ClassDB")}splitClassNameAndType(n){let l=y.sanitizeText(n,s()),u="",o=l;if(l.indexOf("~")>0){let d=l.split("~");o=X(d[0]),u=X(d[1])}return{className:o,type:u}}setClassLabel(n,l){let u=y.sanitizeText(n,s());if(l)l=X(l);let{className:o}=this.splitClassNameAndType(u);this.classes.get(o).label=l,this.classes.get(o).text=`${l}${this.classes.get(o).type?`<${this.classes.get(o).type}>`:""}`}addClass(n){let l=y.sanitizeText(n,s()),{className:u,type:o}=this.splitClassNameAndType(l);if(this.classes.has(u))return;let d=y.sanitizeText(u,s());this.classes.set(d,{id:d,type:o,label:d,text:`${d}${o?`&lt;${o}&gt;`:""}`,shape:"classBox",cssClasses:"default",methods:[],members:[],annotations:[],styles:[],domId:Ie+d+"-"+bt}),bt++}addInterface(n,l){let u={id:`interface${this.interfaces.length}`,label:n,classId:l};this.interfaces.push(u)}setDiagramId(n){this.diagramId=n}lookUpDomId(n){let l=y.sanitizeText(n,s());if(this.classes.has(l)){let u=this.classes.get(l).domId;return this.diagramId?`${this.diagramId}-${u}`:u}throw Error("Class not found: "+l)}clear(){this.relations=[],this.classes=new Map,this.notes=new Map,this.interfaces=[],this.functions=[],this.functions.push(this.setupToolTips.bind(this)),this.namespaces=new Map,this.namespaceCounter=0,this.namespaceStack=[],this.diagramId="",this.direction="TB",C()}getClass(n){return this.classes.get(n)}getClasses(){return this.classes}getRelations(){return this.relations}getNote(n){let l=typeof n==="number"?`note${n}`:n;return this.notes.get(l)}getNotes(){return this.notes}addRelation(n){r.debug("Adding relation: "+JSON.stringify(n));let l=[this.relationType.LOLLIPOP,this.relationType.AGGREGATION,this.relationType.COMPOSITION,this.relationType.DEPENDENCY,this.relationType.EXTENSION];if(n.relation.type1===this.relationType.LOLLIPOP&&!l.includes(n.relation.type2))this.addClass(n.id2),this.addInterface(n.id1,n.id2),n.id1=`interface${this.interfaces.length-1}`;else if(n.relation.type2===this.relationType.LOLLIPOP&&!l.includes(n.relation.type1))this.addClass(n.id1),this.addInterface(n.id2,n.id1),n.id2=`interface${this.interfaces.length-1}`;else this.addClass(n.id1),this.addClass(n.id2);n.id1=this.splitClassNameAndType(n.id1).className,n.id2=this.splitClassNameAndType(n.id2).className,n.relationTitle1=y.sanitizeText(n.relationTitle1.trim(),s()),n.relationTitle2=y.sanitizeText(n.relationTitle2.trim(),s()),this.relations.push(n)}addAnnotation(n,l){let u=this.splitClassNameAndType(n).className;this.classes.get(u).annotations.push(l)}addMember(n,l){this.addClass(n);let u=this.splitClassNameAndType(n).className,o=this.classes.get(u);if(typeof l==="string"){let d=l.trim();if(d.startsWith("<<")&&d.endsWith(">>"))o.annotations.push(X(d.substring(2,d.length-2)));else if(d.indexOf(")")>0)o.methods.push(new At(d,"method"));else if(d)o.members.push(new At(d,"attribute"))}}addMembers(n,l){if(Array.isArray(l))l.reverse(),l.forEach((u)=>this.addMember(n,u))}addNote(n,l){let u=this.notes.size,o={id:`note${u}`,class:l,text:n,index:u};return this.notes.set(o.id,o),o.id}cleanupLabel(n){if(n.startsWith(":"))n=n.substring(1);return X(n.trim())}setCssClass(n,l){n.split(",").forEach((u)=>{let o=u;if(/\d/.exec(u[0]))o=Ie+o;o=this.splitClassNameAndType(o).className;let d=this.classes.get(o);if(d)d.cssClasses+=" "+l})}defineClass(n,l){for(let u of n){let o=this.styleClasses.get(u);if(o===void 0)o={id:u,styles:[],textStyles:[]},this.styleClasses.set(u,o);if(l)l.forEach((d)=>{if(/color/.exec(d)){let f=d.replace("fill","bgFill");o.textStyles.push(f)}o.styles.push(d)});this.classes.forEach((d)=>{if(d.cssClasses.includes(u))d.styles.push(...l.flatMap((f)=>f.split(",")))})}}setTooltip(n,l){n.split(",").forEach((u)=>{if(l!==void 0){let o=this.splitClassNameAndType(u).className,d=this.classes.get(o);if(d)d.tooltip=X(l)}})}getTooltip(n,l){if(l&&this.namespaces.has(l))return this.namespaces.get(l).classes.get(n).tooltip;return this.classes.get(n).tooltip}setLink(n,l,u){let o=s();n.split(",").forEach((d)=>{let f=d;if(/\d/.exec(d[0]))f=Ie+f;f=this.splitClassNameAndType(f).className;let h=this.classes.get(f);if(h)if(h.link=N.formatUrl(l,o),o.securityLevel==="sandbox")h.linkTarget="_top";else if(typeof u==="string")h.linkTarget=X(u);else h.linkTarget="_blank"}),this.setCssClass(n,"clickable")}setClickEvent(n,l,u){n.split(",").forEach((o)=>{this.setClickFunc(o,l,u);let d=this.splitClassNameAndType(o).className,f=this.classes.get(d);if(f)f.haveCallback=!0}),this.setCssClass(n,"clickable")}setClickFunc(n,l,u){let o=y.sanitizeText(n,s());if(s().securityLevel!=="loose")return;if(l===void 0)return;let f=this.splitClassNameAndType(o).className;if(this.classes.has(f)){let h=[];if(typeof u==="string"){h=u.split(/,(?=(?:(?:[^"]*"){2})*[^"]*$)/);for(let D=0;D<h.length;D++){let F=h[D].trim();if(F.startsWith('"')&&F.endsWith('"'))F=F.substr(1,F.length-2);h[D]=F}}if(h.length===0)h.push(f);this.functions.push(()=>{let D=this.lookUpDomId(f),F=document.querySelector(`[id="${D}"]`);if(F!==null)F.addEventListener("click",()=>{N.runFunc(l,...h)},!1)})}}bindFunctions(n){this.functions.forEach((l)=>{l(n)})}escapeHtml(n){return n.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#39;")}getDirection(){return this.direction}setDirection(n){this.direction=n}static resolveQualifiedId(n,l){let u=l.at(-1);return u?`${u}.${n}`:n}static getAncestorIds(n){let l=n.split("."),u=Array(l.length);u[0]=l[0];for(let o=1;o<l.length;o++)u[o]=`${u[o-1]}.${l[o]}`;return u}createNamespaceNode(n,l,u,o=!1){return{id:n,label:l,classes:new Map,notes:new Map,children:new Map,domId:Ie+n+"-"+this.namespaceCounter++,parent:u,explicit:o}}linkParentChild(n,l){let u=this.namespaces.get(n),o=this.namespaces.get(l);if(!u||!o)return;if(!u.children.has(l))u.children.set(l,o);o.parent??=n}addNamespace(n,l){let u=i.resolveQualifiedId(n,this.namespaceStack);if(this.namespaceStack.push(u),this.namespaces.has(u)){let f=this.namespaces.get(u);if(f.explicit=!0,l)f.label=l;return u}let o=u.split("."),d=i.getAncestorIds(u);for(let f=0;f<d.length;f++){let h=d[f],D=f>0?d[f-1]:void 0,F=f===d.length-1,R=F&&l?l:o[f];if(!this.namespaces.has(h))this.namespaces.set(h,this.createNamespaceNode(h,R,D,F));else if(F)this.namespaces.get(h).explicit=!0;if(D)this.linkParentChild(D,h)}return u}popNamespace(){this.namespaceStack.pop()}getNamespace(n){return this.namespaces.get(n)}getNamespaces(){return this.namespaces}addClassesToNamespace(n,l,u){if(!this.namespaces.has(n))return;for(let o of l){let{className:d}=this.splitClassNameAndType(o),f=this.getClass(d);f.parent=n,this.namespaces.get(n).classes.set(d,f)}for(let o of u){let d=this.getNote(o);d.parent=n,this.namespaces.get(n).notes.set(o,d)}}setCssStyle(n,l){let u=this.classes.get(n);if(!l||!u)return;for(let o of l)if(o.includes(","))u.styles.push(...o.split(","));else u.styles.push(o)}getArrowMarker(n){let l;switch(n){case 0:l="aggregation";break;case 1:l="extension";break;case 2:l="composition";break;case 3:l="dependency";break;case 4:l="lollipop";break;default:l="none"}return l}resolveExplicitAncestor(n){let l=n;while(l){let u=this.namespaces.get(l);if(!u)return;if(u.explicit)return l;l=u.parent}return}getData(){let n=[],l=[],u=s(),o=u.class?.hierarchicalNamespaces??!0;for(let h of this.namespaces.values()){if(!o&&!h.explicit)continue;let D={id:h.id,label:o?h.label:h.id,isGroup:!0,padding:u.class.padding??16,shape:"rect",cssStyles:[],look:u.look,parentId:o?h.parent:void 0};n.push(D)}let d=0;for(let h of this.classes.values()){let D=o?h.parent:this.resolveExplicitAncestor(h.parent),F={...h,type:void 0,isGroup:!1,parentId:D,look:u.look,colorIndex:d++};n.push(F)}for(let h of this.notes.values()){let D=o?h.parent:this.resolveExplicitAncestor(h.parent),F={id:h.id,label:h.text,isGroup:!1,shape:"note",padding:u.class.padding??6,cssStyles:["text-align: left","white-space: nowrap",`fill: ${u.themeVariables.noteBkgColor}`,`stroke: ${u.themeVariables.noteBorderColor}`],look:u.look,parentId:D,labelType:"markdown"};n.push(F);let R=this.classes.get(h.class)?.id;if(R){let J={id:`edgeNote${h.index}`,start:h.id,end:R,type:"normal",thickness:"normal",classes:"relation",arrowTypeStart:"none",arrowTypeEnd:"none",arrowheadStyle:"",labelStyle:[""],style:["fill: none"],pattern:"dotted",look:u.look};l.push(J)}}for(let h of this.interfaces){let D={id:h.id,label:h.label,isGroup:!1,shape:"rect",cssStyles:["opacity: 0;"],look:u.look};n.push(D)}let f=0;for(let h of this.relations){f++;let D={id:Fe(h.id1,h.id2,{prefix:"id",counter:f}),start:h.id1,end:h.id2,type:"normal",label:h.title,labelpos:"c",thickness:"normal",classes:"relation",arrowTypeStart:this.getArrowMarker(h.relation.type1),arrowTypeEnd:this.getArrowMarker(h.relation.type2),startLabelRight:h.relationTitle1==="none"?"":h.relationTitle1,endLabelLeft:h.relationTitle2==="none"?"":h.relationTitle2,arrowheadStyle:"",labelStyle:["display: inline-block"],style:h.style||"",pattern:h.relation.lineType==1?"dashed":"solid",look:u.look,labelType:"markdown"};l.push(D)}return{nodes:n,edges:l,other:{},config:u,direction:this.getDirection()}}},yt=e((i)=>{let{theme:n,bkgColorArray:l,borderColorArray:u}=i;if(!ae(n,u))return"";let o=ie(i.look),d=le(l),f="";for(let h=0;h<Ye(i.THEME_COLOR_LIMIT,u);h++){let D=u[h%u.length];f+=`
7
+
8
+ [data-look="${o}"][data-color-id="color-${h}"].node .outer-path path {
9
+ stroke: ${D};
10
+ ${d?`fill: ${l[h%l.length]};`:""}
11
+ }
12
+
13
+ [data-look="${o}"][data-color-id="color-${h}"].node .divider path {
14
+ stroke: ${D};
15
+ }
16
+ `}return f},"genColor"),Dt=e((i)=>`${yt(i)}
17
+ g.classGroup text {
18
+ fill: ${i.nodeBorder||i.classText};
19
+ stroke: none;
20
+ font-family: ${i.fontFamily};
21
+ font-size: 10px;
22
+
23
+ .title {
24
+ font-weight: bolder;
25
+ }
26
+
27
+ }
28
+
29
+ .cluster-label text {
30
+ fill: ${i.titleColor};
31
+ }
32
+ .cluster-label span {
33
+ color: ${i.titleColor};
34
+ }
35
+ .cluster-label span p {
36
+ background-color: transparent;
37
+ }
38
+
39
+ .cluster rect {
40
+ fill: ${i.clusterBkg};
41
+ stroke: ${i.clusterBorder};
42
+ stroke-width: 1px;
43
+ }
44
+
45
+ .cluster text {
46
+ fill: ${i.titleColor};
47
+ }
48
+
49
+ .cluster span {
50
+ color: ${i.titleColor};
51
+ }
52
+
53
+ .nodeLabel, .edgeLabel {
54
+ color: ${i.classText};
55
+ }
56
+
57
+ .noteLabel .nodeLabel, .noteLabel .edgeLabel {
58
+ color: ${i.noteTextColor};
59
+ }
60
+ .edgeLabel .label rect {
61
+ fill: ${i.mainBkg};
62
+ }
63
+ .label text {
64
+ fill: ${i.classText};
65
+ }
66
+
67
+ .labelBkg {
68
+ background: ${i.mainBkg};
69
+ }
70
+ .edgeLabel .label span {
71
+ background: ${i.mainBkg};
72
+ }
73
+
74
+ .classTitle {
75
+ font-weight: bolder;
76
+ }
77
+ .node rect,
78
+ .node circle,
79
+ .node ellipse,
80
+ .node polygon,
81
+ .node path {
82
+ fill: ${i.mainBkg};
83
+ stroke: ${i.nodeBorder};
84
+ stroke-width: ${i.strokeWidth};
85
+ }
86
+
87
+
88
+ .divider {
89
+ stroke: ${i.nodeBorder};
90
+ stroke-width: 1;
91
+ }
92
+
93
+ g.clickable {
94
+ cursor: pointer;
95
+ }
96
+
97
+ g.classGroup rect {
98
+ fill: ${i.mainBkg};
99
+ stroke: ${i.nodeBorder};
100
+ }
101
+
102
+ g.classGroup line {
103
+ stroke: ${i.nodeBorder};
104
+ stroke-width: 1;
105
+ }
106
+
107
+ .classLabel .box {
108
+ stroke: none;
109
+ stroke-width: 0;
110
+ fill: ${i.mainBkg};
111
+ opacity: 0.5;
112
+ }
113
+
114
+ .classLabel .label {
115
+ fill: ${i.nodeBorder};
116
+ font-size: 10px;
117
+ }
118
+
119
+ .relation {
120
+ stroke: ${i.lineColor};
121
+ stroke-width: ${i.strokeWidth};
122
+ fill: none;
123
+ }
124
+
125
+ .dashed-line{
126
+ stroke-dasharray: 3;
127
+ }
128
+
129
+ .dotted-line{
130
+ stroke-dasharray: 1 2;
131
+ }
132
+
133
+ [id$="-compositionStart"], .composition {
134
+ fill: ${i.lineColor} !important;
135
+ stroke: ${i.lineColor} !important;
136
+ stroke-width: 1;
137
+ }
138
+
139
+ [id$="-compositionEnd"], .composition {
140
+ fill: ${i.lineColor} !important;
141
+ stroke: ${i.lineColor} !important;
142
+ stroke-width: 1;
143
+ }
144
+
145
+ [id$="-dependencyStart"], .dependency {
146
+ fill: ${i.lineColor} !important;
147
+ stroke: ${i.lineColor} !important;
148
+ stroke-width: 1;
149
+ }
150
+
151
+ [id$="-dependencyEnd"], .dependency {
152
+ fill: ${i.lineColor} !important;
153
+ stroke: ${i.lineColor} !important;
154
+ stroke-width: 1;
155
+ }
156
+
157
+ [id$="-extensionStart"], .extension {
158
+ fill: transparent !important;
159
+ stroke: ${i.lineColor} !important;
160
+ stroke-width: 1;
161
+ }
162
+
163
+ [id$="-extensionEnd"], .extension {
164
+ fill: transparent !important;
165
+ stroke: ${i.lineColor} !important;
166
+ stroke-width: 1;
167
+ }
168
+
169
+ [id$="-aggregationStart"], .aggregation {
170
+ fill: transparent !important;
171
+ stroke: ${i.lineColor} !important;
172
+ stroke-width: 1;
173
+ }
174
+
175
+ [id$="-aggregationEnd"], .aggregation {
176
+ fill: transparent !important;
177
+ stroke: ${i.lineColor} !important;
178
+ stroke-width: 1;
179
+ }
180
+
181
+ [id$="-lollipopStart"], .lollipop {
182
+ fill: ${i.mainBkg} !important;
183
+ stroke: ${i.lineColor} !important;
184
+ stroke-width: 1;
185
+ }
186
+
187
+ [id$="-lollipopEnd"], .lollipop {
188
+ fill: ${i.mainBkg} !important;
189
+ stroke: ${i.lineColor} !important;
190
+ stroke-width: 1;
191
+ }
192
+
193
+ .edgeTerminals {
194
+ font-size: 11px;
195
+ line-height: initial;
196
+ }
197
+
198
+ .classTitleText {
199
+ text-anchor: middle;
200
+ font-size: 18px;
201
+ fill: ${i.textColor};
202
+ }
203
+
204
+ .edgeLabel[data-look="neo"] {
205
+ background-color: ${i.edgeLabelBackground};
206
+ p {
207
+ background-color: ${i.edgeLabelBackground};
208
+ }
209
+ rect {
210
+ opacity: 0.5;
211
+ background-color: ${i.edgeLabelBackground};
212
+ fill: ${i.edgeLabelBackground};
213
+ }
214
+ text-align: center;
215
+ }
216
+ ${je()}
217
+ `,"getStyles"),Ft=Dt,Bt=e((i,n="TB")=>{if(!i.doc)return n;let l=n;for(let u of i.doc)if(u.stmt==="dir")l=u.value;return l},"getDir"),_t=e(function(i,n){return n.db.getClasses()},"getClasses"),St=e(async function(i,n,l,u){r.info("REF0:"),r.info("Drawing class diagram (v3)",n);let{securityLevel:o,state:d,layout:f}=s();u.db.setDiagramId(n);let h=u.db.getData(),D=fe(n,o);h.type=u.type,h.layoutAlgorithm=ge(f),h.nodeSpacing=d?.nodeSpacing||50,h.rankSpacing=d?.rankSpacing||50,h.markers=["aggregation","extension","composition","dependency","lollipop"],h.diagramId=n,await he(h,D);let F=8;N.insertTitle(D,"classDiagramTitleText",d?.titleTopMargin??25,u.db.getDiagramTitle()),oe(D,F,"classDiagram",d?.useMaxWidth??!0)},"draw"),Nt={getClasses:_t,draw:St,getDir:Bt},$t={parser:Et,get db(){return new Tt},renderer:Nt,styles:Ft,init:e((i)=>{if(!i.class)i.class={};i.class.arrowMarkerAbsolute=i.arrowMarkerAbsolute},"init")};export{$t as diagram};
@@ -0,0 +1 @@
1
+ import{o,ee,i,a,v,t,n,_,Z,te,rt,vt}from"./chunk-32ezm0ry.js";import{gn}from"./chunk-svdzmaxb.js";var U=[{id:"exa",name:"Exa",description:"免密钥 · 综合搜索"},{id:"tavily",name:"Tavily",description:"免密钥 · 支持域名筛选"},{id:"parallel",name:"Parallel",description:"免密钥 · 网页搜索"},{id:"firecrawl",name:"Firecrawl",description:"免密钥 · 网页内容"},{id:"tinyfish",name:"TinyFish",description:"免密钥 · 搜索摘要"},{id:"searxng",name:"SearXNG",description:"免密钥 · 需自建服务"},{id:"brave",name:"Brave",description:"需密钥 · 独立搜索引擎"}];function R(e){return{enabled:e.search.provider!=="off",provider:e.search.provider==="off"?"auto":e.search.provider,searxngUrl:e.search.searxngUrl??"",proxy:e.proxy??"",acceptLanguage:e.acceptLanguage??""}}function A(e,d){return{search:{provider:e.enabled?e.provider:"off",searxngUrl:e.searxngUrl},keys:{...d},proxy:e.proxy,acceptLanguage:e.acceptLanguage}}function z(e,d,x){let g=R(e);if(d.enabled!==g.enabled)return!0;if(d.enabled&&d.provider!==g.provider)return!0;return d.searxngUrl!==g.searxngUrl||d.proxy!==g.proxy||d.acceptLanguage!==g.acceptLanguage||Object.keys(x).length>0}function B({notice:e}){let{cn:d}=_();if(!e)return null;let x=e.type==="success"?gn:Z;return n("div",{role:e.type==="error"?"alert":"status",className:d("flex items-start gap-2 text-xs",e.type==="success"?"text-success":"text-danger"),children:[t(x,{className:"mt-0.5 size-4 shrink-0","aria-hidden":"true"}),t("span",{className:"min-w-0 break-words",children:e.text})]})}function F(e){let{Button:d,Input:x,Switch:g,Select:W,StatusChip:p,SettingGroup:h,SettingRow:C,cn:w}=_(),f=ee(),c=e.busy!==void 0;return n("form",{className:"min-w-0 space-y-6",onSubmit:async(s)=>{s.preventDefault(),await e.onSave()},children:[n(h,{title:"联网搜索",children:[t(C,{title:"启用搜索",description:"查询会发送至所选搜索服务。",children:n("div",{className:"flex items-center gap-3",children:[t("span",{className:"text-xs text-dim",children:e.draft.enabled?"已开启":"已关闭"}),t(g,{label:"启用联网搜索",disabled:c,checked:e.draft.enabled,onCheckedChange:(s)=>e.onDraft({...e.draft,enabled:s})})]})}),n("div",{className:"space-y-4 p-4",children:[n("div",{children:[t("label",{htmlFor:`${f}-provider`,className:"mb-1.5 block text-[13px] font-medium text-dim",children:"搜索渠道"}),t(W,{id:`${f}-provider`,value:e.draft.provider,disabled:c||!e.draft.enabled,className:"min-w-0",groups:[{options:[{value:"auto",label:"自动",description:"失败时依次切换渠道"},...U.map((s)=>({value:s.id,label:s.name}))]}],onValueChange:(s)=>{let r=s==="auto"?s:U.find((k)=>k.id===s)?.id;if(r)e.onDraft({...e.draft,provider:r})}}),t("p",{className:"mt-1.5 text-xs leading-5 text-faint",children:"自动:Exa → Tavily → Parallel → Firecrawl → TinyFish"})]}),(e.draft.provider==="searxng"||e.draft.searxngUrl)&&n("div",{children:[t("label",{htmlFor:`${f}-searxng`,className:"mb-1.5 block text-[13px] font-medium text-dim",children:"自建 SearXNG 地址"}),t(x,{id:`${f}-searxng`,type:"url",maxLength:2000,disabled:c||!e.draft.enabled,value:e.draft.searxngUrl,placeholder:"https://search.example.com",onChange:(s)=>e.onDraft({...e.draft,searxngUrl:s.target.value})})]})]})]}),t(h,{title:"渠道与密钥",description:"检测使用已保存配置,按下列顺序执行。",action:n(d,{type:"button",size:"sm",variant:"ghost",disabled:c,onClick:async()=>await e.onCheck("all"),children:[t(te,{className:w("size-3.5",e.checking==="all"&&"animate-spin"),"aria-hidden":"true"}),e.checking==="all"?"正在检测…":"检测全部渠道"]}),children:U.map((s)=>{let r=s.id,k=r==="searxng"?void 0:e.saved.keys[r],N=k?.source==="environment",D=r==="searxng"?void 0:e.keys[r],K=D==="",y=e.checks[r],m=e.checking==="all"||e.checking===r,S=k?.configured?"已配置密钥":"未配置";if(r==="searxng")S=e.saved.search.searxngUrl?"已配置地址":"未配置地址";if(N)S="来自环境变量";if(K)S="待移除";if(D)S="待保存密钥";return n("div",{className:"min-w-0 p-4",children:[n("div",{className:"flex min-w-0 flex-wrap items-center justify-between gap-x-3 gap-y-2",children:[n("div",{className:"min-w-0 flex-1 basis-28",children:[t("div",{className:"text-sm font-medium text-ink",children:s.name}),t("p",{className:"mt-0.5 text-xs text-faint",children:s.description})]}),n("div",{className:"flex max-w-full flex-wrap items-center justify-end gap-2",children:[t(p,{tone:D!==void 0?"warning":"neutral",children:S}),y&&!m&&t(p,{tone:y.ok?"success":"danger",children:y.ok?`可用 ${y.elapsedMs} ms`:"不可用"}),m&&t(p,{tone:"neutral",pulse:!0,children:"检测中"}),r!=="searxng"&&!N&&n(v,{children:[t(d,{type:"button",size:"sm",variant:"ghost",disabled:c,"aria-label":`${k?.configured?"更换":"设置"} ${s.name} 密钥`,"aria-expanded":e.editingKey===r,"aria-controls":`${f}-${r}-key-editor`,onClick:()=>e.onEditKey(e.editingKey===r?void 0:r),children:k?.configured?"更换":"设置密钥"}),k?.configured&&!K&&t(d,{type:"button",size:"sm",variant:"ghost",disabled:c,"aria-label":`移除 ${s.name} 密钥`,onClick:()=>{e.onKeys({...e.keys,[r]:""}),e.onEditKey(void 0)},children:"移除"})]}),t(d,{type:"button",size:"sm",variant:"ghost",disabled:c,"aria-label":`检测 ${s.name}`,onClick:async()=>await e.onCheck(r),children:"检测"})]})]}),N&&t("p",{className:"mt-1 text-xs text-faint",children:"请在服务端环境变量中更换或移除。"}),r!=="searxng"&&e.editingKey===r&&n("div",{id:`${f}-${r}-key-editor`,className:"mt-3 space-y-2",children:[n("label",{htmlFor:`${f}-${r}-key`,className:"block text-xs font-medium text-dim",children:[s.name," API 密钥"]}),t(x,{id:`${f}-${r}-key`,type:"password",autoComplete:"new-password",maxLength:4000,disabled:c,value:e.keys[r]??"",placeholder:"输入新密钥,保存后生效",onChange:(P)=>{let b={...e.keys};if(P.target.value.trim())b[r]=P.target.value;else delete b[r];e.onKeys(b)}}),n("div",{className:"flex items-center justify-between gap-2",children:[t("p",{className:"min-w-0 text-xs text-faint",children:"密钥只写入,不回显。"}),t(d,{type:"button",size:"sm",variant:"ghost",disabled:c,onClick:()=>{let P={...e.keys};delete P[r],e.onKeys(P),e.onEditKey(void 0)},children:"取消"})]})]}),y&&!y.ok&&!m&&t("p",{role:"status",className:"mt-2 break-words text-xs leading-5 text-danger",children:y.error??(y.kind==="search"?y.meta?.failed[0]?.error:y.meta?.error)??"检测失败,请检查配置。"})]},r)})}),n(h,{title:"网络",children:[n("div",{className:"p-4",children:[t("label",{htmlFor:`${f}-proxy`,className:"mb-1.5 block text-[13px] font-medium text-dim",children:"代理 URL"}),t(x,{id:`${f}-proxy`,type:"url",maxLength:2000,disabled:c,value:e.draft.proxy,placeholder:"http://127.0.0.1:7890",onChange:(s)=>e.onDraft({...e.draft,proxy:s.target.value})}),t("p",{className:"mt-1.5 text-xs text-faint",children:"留空使用服务端环境代理。"})]}),n("div",{className:"p-4",children:[t("label",{htmlFor:`${f}-language`,className:"mb-1.5 block text-[13px] font-medium text-dim",children:"Accept-Language"}),t(x,{id:`${f}-language`,maxLength:200,disabled:c,value:e.draft.acceptLanguage,placeholder:"en-US,en;q=0.9",onChange:(s)=>e.onDraft({...e.draft,acceptLanguage:s.target.value})})]})]}),n("div",{className:"mt-4 flex flex-wrap items-center justify-between gap-3 px-0.5",children:[t("div",{className:"min-w-0 flex-1",children:t(B,{notice:e.notice})}),n("div",{className:"flex flex-wrap items-center gap-2",children:[e.dirty&&n(d,{type:"button",size:"sm",variant:"ghost",disabled:c,onClick:e.onRestore,children:[t(rt,{className:"size-3.5","aria-hidden":"true"}),"重置"]}),n(d,{type:"submit",size:"sm",variant:"primary",disabled:c||!e.dirty,children:[t(vt,{className:"size-3.5","aria-hidden":"true"}),e.busy==="save"?"保存中…":"保存"]}),e.onClose&&t(d,{type:"button",size:"sm",variant:"secondary",onClick:e.onClose,children:"关闭"})]})]})]})}function q({connection:e,onClose:d}){let{Button:x}=_(),[g,W]=a(),[p,h]=a(),[C,w]=a({}),[f,c]=a(),[s,r]=a("load"),[k,N]=a(),[D,K]=a({}),[y,m]=a(),[S,P]=a(0),b=i(void 0);o(()=>{let l=new AbortController;return b.current=l,r("load"),m(void 0),W(void 0),h(void 0),w({}),c(void 0),K({}),e.request("/api/plugins/webfetch/settings",{signal:l.signal,cache:S>0?"reload":"default"}).then((u)=>{if(l.signal.aborted)return;W(u),h(R(u))}).catch((u)=>{if(!l.signal.aborted)m({type:"error",text:u instanceof Error?u.message:"加载设置失败,请重试。"})}).finally(()=>{if(!l.signal.aborted)b.current=void 0,r(void 0)}),()=>{l.abort(),b.current?.abort(),b.current=void 0}},[e,S]);async function G(){if(b.current||!g||!p||!z(g,p,C))return;let l=new AbortController;b.current=l,r("save"),m(void 0);try{let u=await e.request("/api/plugins/webfetch/settings",{method:"PATCH",signal:l.signal,headers:{"Content-Type":"application/json"},body:JSON.stringify(A(p,C))});if(l.signal.aborted)return;W(u),h(R(u)),w({}),c(void 0),K({}),m({type:"success",text:"设置已保存。"})}catch(u){if(!l.signal.aborted)m({type:"error",text:u instanceof Error?u.message:"保存失败,请重试。"})}finally{if(!l.signal.aborted)b.current=void 0,r(void 0)}}async function I(l){if(b.current||!g)return;let u=new AbortController;b.current=u,r("test"),N(l),m(void 0);try{let L=await e.request(`/api/plugins/webfetch/test?provider=${l}`,{method:"POST",signal:u.signal});if(u.signal.aborted)return;K((j)=>{let T={...j};for(let E of L.checks)if(E.kind==="search"&&E.provider)T[E.provider]=E;return T})}catch(L){if(!u.signal.aborted)m({type:"error",text:L instanceof Error?L.message:"检测失败,请重试。"})}finally{if(!u.signal.aborted)b.current=void 0,r(void 0),N(void 0)}}if(!g||!p)return n("div",{className:"min-w-0 space-y-3",children:[s==="load"&&t("p",{role:"status",className:"text-sm text-dim",children:"正在加载设置…"}),t(B,{notice:y}),d&&t(x,{type:"button",size:"sm",variant:"secondary",onClick:d,children:"关闭"}),s!=="load"&&t(x,{type:"button",size:"sm",variant:"ghost",onClick:()=>P(S+1),children:"重新加载"})]});return t(F,{saved:g,draft:p,keys:C,editingKey:f,dirty:z(g,p,C),busy:s==="load"?void 0:s,checking:k,checks:D,notice:y,onDraft:(l)=>{h(l),m(void 0)},onKeys:(l)=>{w(l),m(void 0)},onEditKey:c,onClose:d,onSave:G,onCheck:I,onRestore:()=>{h(R(g)),w({}),c(void 0),m(void 0)}})}export{F as SettingsForm,q as default};
@@ -0,0 +1,2 @@
1
+ import{Nt}from"./chunk-ry9256r7.js";class o extends Map{constructor(e,r=l){super();if(Object.defineProperties(this,{_intern:{value:new Map},_key:{value:r}}),e!=null)for(let[t,n]of e)this.set(t,n)}get(e){return super.get(f(this,e))}has(e){return super.has(f(this,e))}set(e,r){return super.set(a(this,e),r)}delete(e){return super.delete(p(this,e))}}function f({_intern:e,_key:r},t){let n=r(t);return e.has(n)?e.get(n):t}function a({_intern:e,_key:r},t){let n=r(t);if(e.has(n))return e.get(n);return e.set(n,t),t}function p({_intern:e,_key:r},t){let n=r(t);if(e.has(n))t=e.get(t),e.delete(n);return t}function l(e){return e!==null&&typeof e==="object"?e.valueOf():e}var c=Symbol("implicit");function Xe(){var e=new o,r=[],t=[],n=c;function s(u){let i=e.get(u);if(i===void 0){if(n!==c)return n;e.set(u,i=r.push(u)-1)}return t[i%t.length]}return s.domain=function(u){if(!arguments.length)return r.slice();r=[],e=new o;for(let i of u){if(e.has(i))continue;e.set(i,r.push(i)-1)}return s},s.range=function(u){return arguments.length?(t=Array.from(u),s):t.slice()},s.unknown=function(u){return arguments.length?(n=u,s):n},s.copy=function(){return Xe(r,t).unknown(n)},Nt.apply(s,arguments),s}
2
+ export{Xe};