@reqvire-org/reqvire 1.3.2 → 1.4.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 (172) hide show
  1. package/artifacts/reqvire-darwin-arm64.tar.gz +0 -0
  2. package/artifacts/reqvire-darwin-x86_64.tar.gz +0 -0
  3. package/artifacts/reqvire-linux-x86_64.tar.gz +0 -0
  4. package/explorer-dist/assets/brand/README.md +28 -0
  5. package/explorer-dist/assets/explorer-KnowledgeGraphCanvasImpl.js +1 -0
  6. package/explorer-dist/assets/{explorer-abnfDiagram-VCTEODGH.js → explorer-abnfDiagram-WEYOIA3C.js} +1 -1
  7. package/explorer-dist/assets/explorer-actionscript-3.js +1 -1
  8. package/explorer-dist/assets/explorer-ada.js +1 -1
  9. package/explorer-dist/assets/explorer-ahk.js +1 -0
  10. package/explorer-dist/assets/explorer-ahk2.js +1 -0
  11. package/explorer-dist/assets/explorer-apex.js +1 -1
  12. package/explorer-dist/assets/explorer-architectureDiagram-ZHVYKT53.js +36 -0
  13. package/explorer-dist/assets/explorer-asciidoc.js +1 -1
  14. package/explorer-dist/assets/explorer-bat.js +1 -1
  15. package/explorer-dist/assets/explorer-beancount.js +1 -1
  16. package/explorer-dist/assets/explorer-bird2.js +1 -1
  17. package/explorer-dist/assets/explorer-blockDiagram-RJAE7QA3.js +140 -0
  18. package/explorer-dist/assets/explorer-bsl.js +1 -1
  19. package/explorer-dist/assets/explorer-c3.js +1 -1
  20. package/explorer-dist/assets/explorer-c4Diagram-XDPPPE54.js +38 -0
  21. package/explorer-dist/assets/explorer-catppuccin-frappe.js +1 -1
  22. package/explorer-dist/assets/explorer-catppuccin-latte.js +1 -1
  23. package/explorer-dist/assets/explorer-catppuccin-macchiato.js +1 -1
  24. package/explorer-dist/assets/explorer-catppuccin-mocha.js +1 -1
  25. package/explorer-dist/assets/explorer-chapel.js +1 -0
  26. package/explorer-dist/assets/{explorer-chunk-SVP7TREG.js → explorer-chunk-2E7WHVMD.js} +4 -4
  27. package/explorer-dist/assets/explorer-chunk-4EMNKR2T.js +1 -0
  28. package/explorer-dist/assets/explorer-chunk-55XCU76K.js +1 -0
  29. package/explorer-dist/assets/explorer-chunk-ZCHMQSOR.js +2 -0
  30. package/explorer-dist/assets/explorer-clarity.js +1 -1
  31. package/explorer-dist/assets/explorer-classDiagram-v2-4MYWR3UA.js +217 -0
  32. package/explorer-dist/assets/explorer-coq.js +1 -1
  33. package/explorer-dist/assets/explorer-cose-bilkent-JH36ORCC.js +1 -1
  34. package/explorer-dist/assets/explorer-cpp.js +1 -1
  35. package/explorer-dist/assets/explorer-csharp.js +1 -1
  36. package/explorer-dist/assets/explorer-css.js +1 -1
  37. package/explorer-dist/assets/explorer-cynefin-EF2NZ3EQ.js +141 -0
  38. package/explorer-dist/assets/{explorer-cynefinDiagram-5FMLGOSQ.js → explorer-cynefinDiagram-WF24UDRP.js} +2 -2
  39. package/explorer-dist/assets/explorer-cytoscape.esm.js +23 -23
  40. package/explorer-dist/assets/explorer-dagre-NK4GIZVX.js +4 -0
  41. package/explorer-dist/assets/explorer-dart.js +1 -1
  42. package/explorer-dist/assets/{explorer-diagram-VX7I27RA.js → explorer-diagram-CBK3MWTC.js} +2 -2
  43. package/explorer-dist/assets/explorer-diagram-I5XIIV2D.js +24 -0
  44. package/explorer-dist/assets/{explorer-diagram-S7CK7UJ4.js → explorer-diagram-ODIL2UCW.js} +5 -5
  45. package/explorer-dist/assets/explorer-diagram-PFBEJUXE.js +3 -0
  46. package/explorer-dist/assets/explorer-diagram-RJA3I4VV.js +41 -0
  47. package/explorer-dist/assets/explorer-diagram-TYUNFSNR.js +200 -0
  48. package/explorer-dist/assets/explorer-dotenv.js +1 -1
  49. package/explorer-dist/assets/{explorer-ebnfDiagram-PWID7BFC.js → explorer-ebnfDiagram-V4P3TTPT.js} +1 -1
  50. package/explorer-dist/assets/explorer-elk-QONTBCTQ.js +27 -0
  51. package/explorer-dist/assets/explorer-emacs-lisp.js +1 -1
  52. package/explorer-dist/assets/explorer-erDiagram-KYQIGQAA.js +99 -0
  53. package/explorer-dist/assets/explorer-flowDiagram-IUGLLWBU.js +213 -0
  54. package/explorer-dist/assets/explorer-ganttDiagram-R7GPNTJY.js +292 -0
  55. package/explorer-dist/assets/explorer-gdscript.js +1 -1
  56. package/explorer-dist/assets/{explorer-gitGraphDiagram-WWUBYQGX.js → explorer-gitGraphDiagram-PDYL7XHY.js} +5 -5
  57. package/explorer-dist/assets/explorer-gn.js +1 -1
  58. package/explorer-dist/assets/explorer-graph.js +1 -0
  59. package/explorer-dist/assets/explorer-hack.js +1 -1
  60. package/explorer-dist/assets/explorer-handlebars.js +1 -1
  61. package/explorer-dist/assets/explorer-haxe.js +1 -1
  62. package/explorer-dist/assets/explorer-hxml.js +1 -1
  63. package/explorer-dist/assets/explorer-index.js +312 -0
  64. package/explorer-dist/assets/explorer-infoDiagram-MVDRKAX5.js +2 -0
  65. package/explorer-dist/assets/{explorer-ishikawaDiagram-5VMMS53U.js → explorer-ishikawaDiagram-HPEHV2GE.js} +4 -4
  66. package/explorer-dist/assets/{explorer-journeyDiagram-3NMN7TZE.js → explorer-journeyDiagram-BOSHW7O7.js} +1 -1
  67. package/explorer-dist/assets/explorer-julia.js +1 -1
  68. package/explorer-dist/assets/explorer-just.js +1 -1
  69. package/explorer-dist/assets/explorer-kanagawa-dragon.js +1 -1
  70. package/explorer-dist/assets/explorer-kanagawa-lotus.js +1 -1
  71. package/explorer-dist/assets/explorer-kanagawa-wave.js +1 -1
  72. package/explorer-dist/assets/{explorer-kanban-definition-UXKFOSKX.js → explorer-kanban-definition-FNSA4HC5.js} +7 -7
  73. package/explorer-dist/assets/explorer-katex.js +18 -18
  74. package/explorer-dist/assets/explorer-latex.js +1 -1
  75. package/explorer-dist/assets/explorer-linear.js +1 -1
  76. package/explorer-dist/assets/explorer-llvm.js +1 -1
  77. package/explorer-dist/assets/explorer-luau.js +1 -1
  78. package/explorer-dist/assets/explorer-marko.js +1 -1
  79. package/explorer-dist/assets/explorer-mdc.js +1 -1
  80. package/explorer-dist/assets/explorer-mermaid.core.js +150 -148
  81. package/explorer-dist/assets/explorer-mermaid.js +1 -1
  82. package/explorer-dist/assets/explorer-mindmap-definition-6OY57UG3.js +98 -0
  83. package/explorer-dist/assets/explorer-mojo.js +1 -1
  84. package/explorer-dist/assets/explorer-monokai.js +1 -1
  85. package/explorer-dist/assets/explorer-moonbit.js +1 -1
  86. package/explorer-dist/assets/explorer-move.js +1 -1
  87. package/explorer-dist/assets/explorer-nextflow-groovy.js +1 -1
  88. package/explorer-dist/assets/explorer-nextflow.js +1 -1
  89. package/explorer-dist/assets/explorer-nsis.js +1 -0
  90. package/explorer-dist/assets/explorer-nushell.js +1 -1
  91. package/explorer-dist/assets/explorer-one-dark-pro.js +1 -1
  92. package/explorer-dist/assets/explorer-ontologyGraphRendererImpl.js +616 -0
  93. package/explorer-dist/assets/explorer-org.js +1 -0
  94. package/explorer-dist/assets/{explorer-pegDiagram-XKGWAZYB.js → explorer-pegDiagram-ECIUJNBX.js} +1 -1
  95. package/explorer-dist/assets/explorer-php.js +1 -1
  96. package/explorer-dist/assets/explorer-pieDiagram-GNMPY74T.js +39 -0
  97. package/explorer-dist/assets/explorer-powershell.js +1 -1
  98. package/explorer-dist/assets/explorer-prisma.js +1 -1
  99. package/explorer-dist/assets/{explorer-quadrantDiagram-AXDQQJYC.js → explorer-quadrantDiagram-D57K4MC3.js} +1 -1
  100. package/explorer-dist/assets/explorer-r.js +1 -1
  101. package/explorer-dist/assets/{explorer-railroadDiagram-O6MQD6OU.js → explorer-railroadDiagram-Y72NRBL7.js} +1 -1
  102. package/explorer-dist/assets/explorer-rbs.js +1 -0
  103. package/explorer-dist/assets/explorer-red.js +1 -1
  104. package/explorer-dist/assets/explorer-requirementDiagram-EQYSW5RA.js +84 -0
  105. package/explorer-dist/assets/explorer-rose-pine-dawn.js +1 -1
  106. package/explorer-dist/assets/explorer-rose-pine-moon.js +1 -1
  107. package/explorer-dist/assets/explorer-rose-pine.js +1 -1
  108. package/explorer-dist/assets/explorer-rst.js +1 -1
  109. package/explorer-dist/assets/explorer-ruby.js +1 -1
  110. package/explorer-dist/assets/explorer-rust.js +1 -1
  111. package/explorer-dist/assets/{explorer-sankeyDiagram-P5KCCOFB.js → explorer-sankeyDiagram-SY24JHO5.js} +4 -4
  112. package/explorer-dist/assets/explorer-scala.js +1 -1
  113. package/explorer-dist/assets/explorer-sequenceDiagram-BLEHNHQU.js +169 -0
  114. package/explorer-dist/assets/explorer-smalltalk.js +1 -1
  115. package/explorer-dist/assets/explorer-smithy.js +1 -0
  116. package/explorer-dist/assets/explorer-solarized-dark.js +1 -1
  117. package/explorer-dist/assets/explorer-solarized-light.js +1 -1
  118. package/explorer-dist/assets/explorer-solidity.js +1 -1
  119. package/explorer-dist/assets/explorer-sql.js +1 -1
  120. package/explorer-dist/assets/explorer-stateDiagram-v2-A6IESKWZ.js +291 -0
  121. package/explorer-dist/assets/explorer-surrealql.js +1 -1
  122. package/explorer-dist/assets/explorer-svelte.js +1 -1
  123. package/explorer-dist/assets/explorer-swift.js +1 -1
  124. package/explorer-dist/assets/explorer-swimlanes-B3ENRKFQ.js +1 -0
  125. package/explorer-dist/assets/explorer-swimlanesDiagram-AYQRV4AK.js +8 -0
  126. package/explorer-dist/assets/explorer-system-verilog.js +1 -1
  127. package/explorer-dist/assets/explorer-timeline-definition-JXYKGLGB.js +120 -0
  128. package/explorer-dist/assets/explorer-twig.js +1 -1
  129. package/explorer-dist/assets/explorer-typespec.js +1 -1
  130. package/explorer-dist/assets/explorer-typst.js +1 -1
  131. package/explorer-dist/assets/explorer-usecaseDiagram-WPOLBNNX.js +370 -0
  132. package/explorer-dist/assets/explorer-v.js +1 -1
  133. package/explorer-dist/assets/explorer-vb.js +1 -1
  134. package/explorer-dist/assets/explorer-vennDiagram-Q3Y3IDCW.js +34 -0
  135. package/explorer-dist/assets/explorer-verilog.js +1 -1
  136. package/explorer-dist/assets/explorer-vue.js +1 -1
  137. package/explorer-dist/assets/{explorer-wardleyDiagram-VM6X3IG4.js → explorer-wardleyDiagram-IVAIDKWA.js} +3 -3
  138. package/explorer-dist/assets/explorer-xychartDiagram-4URNHDU4.js +7 -0
  139. package/explorer-dist/assets/explorer.css +1 -1
  140. package/explorer-dist/assets/explorer.js +40 -1152
  141. package/explorer-dist/assets/fonts/.gitkeep +0 -0
  142. package/package.json +1 -1
  143. package/explorer-dist/assets/explorer-architectureDiagram-5GKGNRK7.js +0 -36
  144. package/explorer-dist/assets/explorer-blockDiagram-I7D4REHJ.js +0 -129
  145. package/explorer-dist/assets/explorer-c4Diagram-7LVT6UL2.js +0 -38
  146. package/explorer-dist/assets/explorer-chunk-F27PBJKO.js +0 -1
  147. package/explorer-dist/assets/explorer-chunk-IMKFNOWR.js +0 -231
  148. package/explorer-dist/assets/explorer-chunk-TICWLB2K.js +0 -206
  149. package/explorer-dist/assets/explorer-classDiagram-ZZMXUADV.js +0 -1
  150. package/explorer-dist/assets/explorer-classDiagram-v2-VYDZK3BY.js +0 -1
  151. package/explorer-dist/assets/explorer-cynefin-OW5HDTMX.js +0 -178
  152. package/explorer-dist/assets/explorer-dagre-GXQ25YYZ.js +0 -4
  153. package/explorer-dist/assets/explorer-diagram-UQ7AKVKN.js +0 -41
  154. package/explorer-dist/assets/explorer-diagram-VSXAHHWV.js +0 -3
  155. package/explorer-dist/assets/explorer-diagram-Z3DM3KII.js +0 -24
  156. package/explorer-dist/assets/explorer-erDiagram-RLTQ6QDP.js +0 -99
  157. package/explorer-dist/assets/explorer-flowDiagram-HODETNUW.js +0 -168
  158. package/explorer-dist/assets/explorer-ganttDiagram-EL5Y4UJY.js +0 -292
  159. package/explorer-dist/assets/explorer-infoDiagram-27XIBGKW.js +0 -2
  160. package/explorer-dist/assets/explorer-layout.js +0 -1
  161. package/explorer-dist/assets/explorer-mindmap-definition-YA3MSWOX.js +0 -96
  162. package/explorer-dist/assets/explorer-pieDiagram-E7YTZNPT.js +0 -39
  163. package/explorer-dist/assets/explorer-requirementDiagram-BXWQKSXE.js +0 -84
  164. package/explorer-dist/assets/explorer-sequenceDiagram-WJ2MYXX4.js +0 -162
  165. package/explorer-dist/assets/explorer-stateDiagram-D77RDMKH.js +0 -1
  166. package/explorer-dist/assets/explorer-stateDiagram-v2-MP3YSRHH.js +0 -1
  167. package/explorer-dist/assets/explorer-swimlanes-42K2YHIH.js +0 -1
  168. package/explorer-dist/assets/explorer-swimlanesDiagram-VR7AAH4N.js +0 -8
  169. package/explorer-dist/assets/explorer-timeline-definition-24CTP7MA.js +0 -120
  170. package/explorer-dist/assets/explorer-vennDiagram-4TSXK5OY.js +0 -34
  171. package/explorer-dist/assets/explorer-xychartDiagram-S5SC5T6Z.js +0 -7
  172. /package/explorer-dist/assets/{explorer-chunk-POPQ4Y6H.js → explorer-chunk-VQ5W62QI.js} +0 -0
@@ -0,0 +1,4 @@
1
+ import{s as pe,a as Hn,c as zn,b as Jn,f as Ce,e as T,i as Kn}from"./explorer-chunk-ZCHMQSOR.js";import{_ as x,c as Zn,l as m,b5 as Qn,b6 as er,an as nr,am as Ie,a9 as Re,a7 as rr,aj as tr,aT as ar}from"./explorer-mermaid.core.js";import{i as q,a as N,d as ke,e as K,b as Z,c as on,f as ge,g as sn,h as ir,j as dn,s as or,o as sr,k as dr,l as ve,m as ur,r as fr,U as _e,S as Me,n as be,p as we,q as H,t as un,u as fn,v as cr,w as R,x as lr,y as hr,z as pr,A as Ae,B as gr,C as cn,D as M,E as vr,F as br,H as wr,I as U,J as ln,K as hn,L as mr,M as me,N as pn,O as yr,P as gn,Q as xr,R as Er,G as P,T as l,V as Lr,W as O,X,Y as k,Z as Q}from"./explorer-graph.js";import"./explorer.js";var Or=/\s/;function Nr(e){for(var n=e.length;n--&&Or.test(e.charAt(n)););return n}var Pr=/^\s+/;function Tr(e){return e&&e.slice(0,Nr(e)+1).replace(Pr,"")}var je=NaN,Sr=/^[-+]0x[0-9a-f]+$/i,Cr=/^0b[01]+$/i,Ir=/^0o[0-7]+$/i,Rr=parseInt;function kr(e){if(typeof e=="number")return e;if(q(e))return je;if(N(e)){var n=typeof e.valueOf=="function"?e.valueOf():e;e=N(n)?n+"":n}if(typeof e!="string")return e===0?e:+e;e=Tr(e);var r=Cr.test(e);return r||Ir.test(e)?Rr(e.slice(2),r?2:8):Sr.test(e)?je:+e}var De=1/0,_r=17976931348623157e292;function V(e){if(!e)return e===0?e:0;if(e=kr(e),e===De||e===-De){var n=e<0?-1:1;return n*_r}return e===e?e:0}function Mr(e){var n=V(e),r=n%1;return n===n?r?n-r:n:0}var Be=Object.create,Ar=(function(){function e(){}return function(n){if(!N(n))return{};if(Be)return Be(n);e.prototype=n;var r=new e;return e.prototype=void 0,r}})();function jr(e,n){var r=-1,t=e.length;for(n||(n=Array(t));++r<t;)n[r]=e[r];return n}function ee(e,n,r){n=="__proto__"&&ke?ke(e,n,{configurable:!0,enumerable:!0,value:r,writable:!0}):e[n]=r}var Dr=Object.prototype,Br=Dr.hasOwnProperty;function ne(e,n,r){var t=e[n];(!(Br.call(e,n)&&K(t,r))||r===void 0&&!(n in e))&&ee(e,n,r)}function $r(e,n,r,t){var a=!r;r||(r={});for(var i=-1,o=n.length;++i<o;){var s=n[i],d=void 0;d===void 0&&(d=e[s]),a?ee(r,s,d):ne(r,s,d)}return r}function B(e,n,r){if(!N(r))return!1;var t=typeof n;return(t=="number"?Z(r)&&on(n,r.length):t=="string"&&n in r)?K(r[n],e):!1}function Fr(e){return ge(function(n,r){var t=-1,a=r.length,i=a>1?r[a-1]:void 0,o=a>2?r[2]:void 0;for(i=e.length>3&&typeof i=="function"?(a--,i):void 0,o&&B(r[0],r[1],o)&&(i=a<3?void 0:i,a=1),n=Object(n);++t<a;){var s=r[t];s&&e(n,s,t,i)}return n})}function Xr(e){var n=[];if(e!=null)for(var r in Object(e))n.push(r);return n}var Gr=Object.prototype,Yr=Gr.hasOwnProperty;function Ur(e){if(!N(e))return Xr(e);var n=sn(e),r=[];for(var t in e)t=="constructor"&&(n||!Yr.call(e,t))||r.push(t);return r}function re(e){return Z(e)?ir(e,!0):Ur(e)}function A(e){var n=e==null?0:e.length;return n?dn(e):[]}function Vr(e){return or(sr(e,void 0,A),e+"")}var vn=dr(Object.getPrototypeOf,Object),Wr="[object Object]",qr=Function.prototype,Hr=Object.prototype,bn=qr.toString,zr=Hr.hasOwnProperty,Jr=bn.call(Object);function Kr(e){if(!ve(e)||ur(e)!=Wr)return!1;var n=vn(e);if(n===null)return!0;var r=zr.call(n,"constructor")&&n.constructor;return typeof r=="function"&&r instanceof r&&bn.call(r)==Jr}var wn=typeof exports=="object"&&exports&&!exports.nodeType&&exports,$e=wn&&typeof module=="object"&&module&&!module.nodeType&&module,Zr=$e&&$e.exports===wn,Fe=Zr?fr.Buffer:void 0,Xe=Fe?Fe.allocUnsafe:void 0;function mn(e,n){if(n)return e.slice();var r=e.length,t=Xe?Xe(r):new e.constructor(r);return e.copy(t),t}var Qr=Object.prototype,et=Qr.hasOwnProperty;function nt(e){var n=e.length,r=new e.constructor(n);return n&&typeof e[0]=="string"&&et.call(e,"index")&&(r.index=e.index,r.input=e.input),r}function ye(e){var n=new e.constructor(e.byteLength);return new _e(n).set(new _e(e)),n}function rt(e,n){var r=ye(e.buffer);return new e.constructor(r,e.byteOffset,e.byteLength)}var tt=/\w*$/;function at(e){var n=new e.constructor(e.source,tt.exec(e));return n.lastIndex=e.lastIndex,n}var Ge=Me?Me.prototype:void 0,Ye=Ge?Ge.valueOf:void 0;function it(e){return Ye?Object(Ye.call(e)):{}}function yn(e,n){var r=n?ye(e.buffer):e.buffer;return new e.constructor(r,e.byteOffset,e.length)}var ot="[object Boolean]",st="[object Date]",dt="[object Map]",ut="[object Number]",ft="[object RegExp]",ct="[object Set]",lt="[object String]",ht="[object Symbol]",pt="[object ArrayBuffer]",gt="[object DataView]",vt="[object Float32Array]",bt="[object Float64Array]",wt="[object Int8Array]",mt="[object Int16Array]",yt="[object Int32Array]",xt="[object Uint8Array]",Et="[object Uint8ClampedArray]",Lt="[object Uint16Array]",Ot="[object Uint32Array]";function Nt(e,n,r){var t=e.constructor;switch(n){case pt:return ye(e);case ot:case st:return new t(+e);case gt:return rt(e);case vt:case bt:case wt:case mt:case yt:case xt:case Et:case Lt:case Ot:return yn(e,r);case dt:return new t;case ut:case lt:return new t(e);case ft:return at(e);case ct:return new t;case ht:return it(e)}}function xn(e){return typeof e.constructor=="function"&&!sn(e)?Ar(vn(e)):{}}var Pt="[object Map]";function Tt(e){return ve(e)&&be(e)==Pt}var Ue=H&&H.isMap,St=Ue?we(Ue):Tt,Ct="[object Set]";function It(e){return ve(e)&&be(e)==Ct}var Ve=H&&H.isSet,Rt=Ve?we(Ve):It,kt=1,En="[object Arguments]",_t="[object Array]",Mt="[object Boolean]",At="[object Date]",jt="[object Error]",Ln="[object Function]",Dt="[object GeneratorFunction]",Bt="[object Map]",$t="[object Number]",On="[object Object]",Ft="[object RegExp]",Xt="[object Set]",Gt="[object String]",Yt="[object Symbol]",Ut="[object WeakMap]",Vt="[object ArrayBuffer]",Wt="[object DataView]",qt="[object Float32Array]",Ht="[object Float64Array]",zt="[object Int8Array]",Jt="[object Int16Array]",Kt="[object Int32Array]",Zt="[object Uint8Array]",Qt="[object Uint8ClampedArray]",ea="[object Uint16Array]",na="[object Uint32Array]",y={};y[En]=y[_t]=y[Vt]=y[Wt]=y[Mt]=y[At]=y[qt]=y[Ht]=y[zt]=y[Jt]=y[Kt]=y[Bt]=y[$t]=y[On]=y[Ft]=y[Xt]=y[Gt]=y[Yt]=y[Zt]=y[Qt]=y[ea]=y[na]=!0;y[jt]=y[Ln]=y[Ut]=!1;function W(e,n,r,t,a,i){var o,s=n&kt;if(o!==void 0)return o;if(!N(e))return e;var d=R(e);if(d)o=nt(e);else{var u=be(e),f=u==Ln||u==Dt;if(un(e))return mn(e,s);if(u==On||u==En||f&&!a)o=f?{}:xn(e);else{if(!y[u])return a?e:{};o=Nt(e,u,s)}}i||(i=new fn);var c=i.get(e);if(c)return c;i.set(e,o),Rt(e)?e.forEach(function(p){o.add(W(p,n,r,p,e,i))}):St(e)&&e.forEach(function(p,g){o.set(g,W(p,n,r,g,e,i))});var h=lr,b=d?void 0:h(e);return cr(b||e,function(p,g){b&&(g=p,p=e[g]),ne(o,g,W(p,n,r,g,e,i))}),o}var ra=1,ta=4;function aa(e){return W(e,ra|ta)}var Nn=Object.prototype,ia=Nn.hasOwnProperty,oa=ge(function(e,n){e=Object(e);var r=-1,t=n.length,a=t>2?n[2]:void 0;for(a&&B(n[0],n[1],a)&&(t=1);++r<t;)for(var i=n[r],o=re(i),s=-1,d=o.length;++s<d;){var u=o[s],f=e[u];(f===void 0||K(f,Nn[u])&&!ia.call(e,u))&&(e[u]=i[u])}return e});function fe(e,n,r){(r!==void 0&&!K(e[n],r)||r===void 0&&!(n in e))&&ee(e,n,r)}function ce(e,n){if(!(n==="constructor"&&typeof e[n]=="function")&&n!="__proto__")return e[n]}function sa(e){return $r(e,re(e))}function da(e,n,r,t,a,i,o){var s=ce(e,r),d=ce(n,r),u=o.get(d);if(u){fe(e,r,u);return}var f=i?i(s,d,r+"",e,n,o):void 0,c=f===void 0;if(c){var h=R(d),b=!h&&un(d),p=!h&&!b&&hr(d);f=d,h||b||p?R(s)?f=s:pr(s)?f=jr(s):b?(c=!1,f=mn(d,!0)):p?(c=!1,f=yn(d,!0)):f=[]:Kr(d)||Ae(d)?(f=s,Ae(s)?f=sa(s):(!N(s)||gr(s))&&(f=xn(d))):c=!1}c&&(o.set(d,f),a(f,d,t,i,o),o.delete(d)),fe(e,r,f)}function Pn(e,n,r,t,a){e!==n&&cn(n,function(i,o){if(a||(a=new fn),N(i))da(e,n,o,r,Pn,t,a);else{var s=t?t(ce(e,o),i,o+"",e,n,a):void 0;s===void 0&&(s=i),fe(e,o,s)}},re)}function z(e){var n=e==null?0:e.length;return n?e[n-1]:void 0}function ua(e){return function(n,r,t){var a=Object(n);if(!Z(n)){var i=M(r);n=vr(n),r=function(s){return i(a[s],s,a)}}var o=e(n,r,t);return o>-1?a[i?n[o]:o]:void 0}}var fa=Math.max;function ca(e,n,r){var t=e==null?0:e.length;if(!t)return-1;var a=r==null?0:Mr(r);return a<0&&(a=fa(t+a,0)),br(e,M(n),a)}var xe=ua(ca);function Tn(e,n){var r=-1,t=Z(e)?Array(e.length):[];return wr(e,function(a,i,o){t[++r]=n(a,i,o)}),t}function E(e,n){var r=R(e)?U:Tn;return r(e,M(n))}function la(e,n){return e==null?e:cn(e,ln(n),re)}function ha(e,n){return e&&hn(e,ln(n))}function pa(e,n){return e>n}var ga=Object.prototype,va=ga.hasOwnProperty;function ba(e,n){return e!=null&&va.call(e,n)}function Sn(e,n){return e!=null&&mr(e,n,ba)}function Cn(e,n){return e<n}function te(e,n){var r={};return n=M(n),hn(e,function(t,a,i){ee(r,a,n(t,a,i))}),r}function Ee(e,n,r){for(var t=-1,a=e.length;++t<a;){var i=e[t],o=n(i);if(o!=null&&(s===void 0?o===o&&!q(o):r(o,s)))var s=o,d=i}return d}function C(e){return e&&e.length?Ee(e,me,pa):void 0}var le=Fr(function(e,n,r){Pn(e,n,r)});function $(e){return e&&e.length?Ee(e,me,Cn):void 0}function Le(e,n){return e&&e.length?Ee(e,M(n),Cn):void 0}function wa(e,n,r,t){if(!N(e))return e;n=pn(n,e);for(var a=-1,i=n.length,o=i-1,s=e;s!=null&&++a<i;){var d=yr(n[a]),u=r;if(d==="__proto__"||d==="constructor"||d==="prototype")return e;if(a!=o){var f=s[d];u=void 0,u===void 0&&(u=N(f)?f:on(n[a+1])?[]:{})}ne(s,d,u),s=s[d]}return e}function ma(e,n,r){for(var t=-1,a=n.length,i={};++t<a;){var o=n[t],s=gn(e,o);r(s,o)&&wa(i,pn(o,e),s)}return i}function ya(e,n){var r=e.length;for(e.sort(n);r--;)e[r]=e[r].value;return e}function xa(e,n){if(e!==n){var r=e!==void 0,t=e===null,a=e===e,i=q(e),o=n!==void 0,s=n===null,d=n===n,u=q(n);if(!s&&!u&&!i&&e>n||i&&o&&d&&!s&&!u||t&&o&&d||!r&&d||!a)return 1;if(!t&&!i&&!u&&e<n||u&&r&&a&&!t&&!i||s&&r&&a||!o&&a||!d)return-1}return 0}function Ea(e,n,r){for(var t=-1,a=e.criteria,i=n.criteria,o=a.length,s=r.length;++t<o;){var d=xa(a[t],i[t]);if(d){if(t>=s)return d;var u=r[t];return d*(u=="desc"?-1:1)}}return e.index-n.index}function La(e,n,r){n.length?n=U(n,function(i){return R(i)?function(o){return gn(o,i.length===1?i[0]:i)}:i}):n=[me];var t=-1;n=U(n,we(M));var a=Tn(e,function(i,o,s){var d=U(n,function(u){return u(i)});return{criteria:d,index:++t,value:i}});return ya(a,function(i,o){return Ea(i,o,r)})}function Oa(e,n){return ma(e,n,function(r,t){return xr(e,t)})}var J=Vr(function(e,n){return e==null?{}:Oa(e,n)}),Na=Math.ceil,Pa=Math.max;function Ta(e,n,r,t){for(var a=-1,i=Pa(Na((n-e)/(r||1)),0),o=Array(i);i--;)o[++a]=e,e+=r;return o}function Sa(e){return function(n,r,t){return t&&typeof t!="number"&&B(n,r,t)&&(r=t=void 0),n=V(n),r===void 0?(r=n,n=0):r=V(r),t=t===void 0?n<r?1:-1:V(t),Ta(n,r,t)}}var _=Sa(),G=ge(function(e,n){if(e==null)return[];var r=n.length;return r>1&&B(e,n[0],n[1])?n=[]:r>2&&B(n[0],n[1],n[2])&&(n=[n[0]]),La(e,dn(n),[])}),Ca=0;function Oe(e){var n=++Ca;return Er(e)+n}function Ia(e,n,r){for(var t=-1,a=e.length,i=n.length,o={};++t<a;){var s=t<i?n[t]:void 0;r(o,e[t],s)}return o}function Ra(e,n){return Ia(e||[],n||[],ne)}class ka{constructor(){var n={};n._next=n._prev=n,this._sentinel=n}dequeue(){var n=this._sentinel,r=n._prev;if(r!==n)return We(r),r}enqueue(n){var r=this._sentinel;n._prev&&n._next&&We(n),n._next=r._next,r._next._prev=n,r._next=n,n._prev=r}toString(){for(var n=[],r=this._sentinel,t=r._prev;t!==r;)n.push(JSON.stringify(t,_a)),t=t._prev;return"["+n.join(", ")+"]"}}function We(e){e._prev._next=e._next,e._next._prev=e._prev,delete e._next,delete e._prev}function _a(e,n){if(e!=="_next"&&e!=="_prev")return n}var Ma=Lr(1);function Aa(e,n){if(e.nodeCount()<=1)return[];var r=Da(e,n||Ma),t=ja(r.graph,r.buckets,r.zeroIdx);return A(E(t,function(a){return e.outEdges(a.v,a.w)}))}function ja(e,n,r){for(var t=[],a=n[n.length-1],i=n[0],o;e.nodeCount();){for(;o=i.dequeue();)ie(e,n,r,o);for(;o=a.dequeue();)ie(e,n,r,o);if(e.nodeCount()){for(var s=n.length-2;s>0;--s)if(o=n[s].dequeue(),o){t=t.concat(ie(e,n,r,o,!0));break}}}return t}function ie(e,n,r,t,a){var i=a?[]:void 0;return l(e.inEdges(t.v),function(o){var s=e.edge(o),d=e.node(o.v);a&&i.push({v:o.v,w:o.w}),d.out-=s,he(n,r,d)}),l(e.outEdges(t.v),function(o){var s=e.edge(o),d=o.w,u=e.node(d);u.in-=s,he(n,r,u)}),e.removeNode(t.v),i}function Da(e,n){var r=new P,t=0,a=0;l(e.nodes(),function(s){r.setNode(s,{v:s,in:0,out:0})}),l(e.edges(),function(s){var d=r.edge(s.v,s.w)||0,u=n(s),f=d+u;r.setEdge(s.v,s.w,f),a=Math.max(a,r.node(s.v).out+=u),t=Math.max(t,r.node(s.w).in+=u)});var i=_(a+t+3).map(function(){return new ka}),o=t+1;return l(r.nodes(),function(s){he(i,o,r.node(s))}),{graph:r,buckets:i,zeroIdx:o}}function he(e,n,r){r.out?r.in?e[r.out-r.in+n].enqueue(r):e[e.length-1].enqueue(r):e[0].enqueue(r)}function Ba(e){var n=e.graph().acyclicer==="greedy"?Aa(e,r(e)):$a(e);l(n,function(t){var a=e.edge(t);e.removeEdge(t),a.forwardName=t.name,a.reversed=!0,e.setEdge(t.w,t.v,a,Oe("rev"))});function r(t){return function(a){return t.edge(a).weight}}}function $a(e){var n=[],r={},t={};function a(i){Object.prototype.hasOwnProperty.call(t,i)||(t[i]=!0,r[i]=!0,l(e.outEdges(i),function(o){Object.prototype.hasOwnProperty.call(r,o.w)?n.push(o):a(o.w)}),delete r[i])}return l(e.nodes(),a),n}function Fa(e){l(e.edges(),function(n){var r=e.edge(n);if(r.reversed){e.removeEdge(n);var t=r.forwardName;delete r.reversed,delete r.forwardName,e.setEdge(n.w,n.v,r,t)}})}function j(e,n,r,t){var a;do a=Oe(t);while(e.hasNode(a));return r.dummy=n,e.setNode(a,r),a}function Xa(e){var n=new P().setGraph(e.graph());return l(e.nodes(),function(r){n.setNode(r,e.node(r))}),l(e.edges(),function(r){var t=n.edge(r.v,r.w)||{weight:0,minlen:1},a=e.edge(r);n.setEdge(r.v,r.w,{weight:t.weight+a.weight,minlen:Math.max(t.minlen,a.minlen)})}),n}function In(e){var n=new P({multigraph:e.isMultigraph()}).setGraph(e.graph());return l(e.nodes(),function(r){e.children(r).length||n.setNode(r,e.node(r))}),l(e.edges(),function(r){n.setEdge(r,e.edge(r))}),n}function qe(e,n){var r=e.x,t=e.y,a=n.x-r,i=n.y-t,o=e.width/2,s=e.height/2;if(!a&&!i)throw new Error("Not possible to find intersection inside of the rectangle");var d,u;return Math.abs(i)*o>Math.abs(a)*s?(i<0&&(s=-s),d=s*a/i,u=s):(a<0&&(o=-o),d=o,u=o*i/a),{x:r+d,y:t+u}}function ae(e){var n=E(_(Rn(e)+1),function(){return[]});return l(e.nodes(),function(r){var t=e.node(r),a=t.rank;O(a)||(n[a][t.order]=r)}),n}function Ga(e){var n=$(E(e.nodes(),function(r){return e.node(r).rank}));l(e.nodes(),function(r){var t=e.node(r);Sn(t,"rank")&&(t.rank-=n)})}function Ya(e){var n=$(E(e.nodes(),function(i){return e.node(i).rank})),r=[];l(e.nodes(),function(i){var o=e.node(i).rank-n;r[o]||(r[o]=[]),r[o].push(i)});var t=0,a=e.graph().nodeRankFactor;l(r,function(i,o){O(i)&&o%a!==0?--t:t&&l(i,function(s){e.node(s).rank+=t})})}function He(e,n,r,t){var a={width:0,height:0};return arguments.length>=4&&(a.rank=r,a.order=t),j(e,"border",a,n)}function Rn(e){return C(E(e.nodes(),function(n){var r=e.node(n).rank;if(!O(r))return r}))}function Ua(e,n){var r={lhs:[],rhs:[]};return l(e,function(t){n(t)?r.lhs.push(t):r.rhs.push(t)}),r}function Va(e,n){return n()}function Wa(e){function n(r){var t=e.children(r),a=e.node(r);if(t.length&&l(t,n),Object.prototype.hasOwnProperty.call(a,"minRank")){a.borderLeft=[],a.borderRight=[];for(var i=a.minRank,o=a.maxRank+1;i<o;++i)ze(e,"borderLeft","_bl",r,a,i),ze(e,"borderRight","_br",r,a,i)}}l(e.children(),n)}function ze(e,n,r,t,a,i){var o={width:0,height:0,rank:i,borderType:n},s=a[n][i-1],d=j(e,"border",o,r);a[n][i]=d,e.setParent(d,t),s&&e.setEdge(s,d,{weight:1})}function qa(e){var n=e.graph().rankdir.toLowerCase();(n==="lr"||n==="rl")&&kn(e)}function Ha(e){var n=e.graph().rankdir.toLowerCase();(n==="bt"||n==="rl")&&za(e),(n==="lr"||n==="rl")&&(Ja(e),kn(e))}function kn(e){l(e.nodes(),function(n){Je(e.node(n))}),l(e.edges(),function(n){Je(e.edge(n))})}function Je(e){var n=e.width;e.width=e.height,e.height=n}function za(e){l(e.nodes(),function(n){oe(e.node(n))}),l(e.edges(),function(n){var r=e.edge(n);l(r.points,oe),Object.prototype.hasOwnProperty.call(r,"y")&&oe(r)})}function oe(e){e.y=-e.y}function Ja(e){l(e.nodes(),function(n){se(e.node(n))}),l(e.edges(),function(n){var r=e.edge(n);l(r.points,se),Object.prototype.hasOwnProperty.call(r,"x")&&se(r)})}function se(e){var n=e.x;e.x=e.y,e.y=n}function Ka(e){e.graph().dummyChains=[],l(e.edges(),function(n){Za(e,n)})}function Za(e,n){var r=n.v,t=e.node(r).rank,a=n.w,i=e.node(a).rank,o=n.name,s=e.edge(n),d=s.labelRank;if(i!==t+1){e.removeEdge(n);var u=void 0,f,c;for(c=0,++t;t<i;++c,++t)s.points=[],u={width:0,height:0,edgeLabel:s,edgeObj:n,rank:t},f=j(e,"edge",u,"_d"),t===d&&(u.width=s.width,u.height=s.height,u.dummy="edge-label",u.labelpos=s.labelpos),e.setEdge(r,f,{weight:s.weight},o),c===0&&e.graph().dummyChains.push(f),r=f;e.setEdge(r,a,{weight:s.weight},o)}}function Qa(e){l(e.graph().dummyChains,function(n){var r=e.node(n),t=r.edgeLabel,a;for(e.setEdge(r.edgeObj,t);r.dummy;)a=e.successors(n)[0],e.removeNode(n),t.points.push({x:r.x,y:r.y}),r.dummy==="edge-label"&&(t.x=r.x,t.y=r.y,t.width=r.width,t.height=r.height),n=a,r=e.node(n)})}function Ne(e){var n={};function r(t){var a=e.node(t);if(Object.prototype.hasOwnProperty.call(n,t))return a.rank;n[t]=!0;var i=$(E(e.outEdges(t),function(o){return r(o.w)-e.edge(o).minlen}));return(i===Number.POSITIVE_INFINITY||i===void 0||i===null)&&(i=0),a.rank=i}l(e.sources(),r)}function F(e,n){return e.node(n.w).rank-e.node(n.v).rank-e.edge(n).minlen}function _n(e){var n=new P({directed:!1}),r=e.nodes()[0],t=e.nodeCount();n.setNode(r,{});for(var a,i;ei(n,e)<t;)a=ni(n,e),i=n.hasNode(a.v)?F(e,a):-F(e,a),ri(n,e,i);return n}function ei(e,n){function r(t){l(n.nodeEdges(t),function(a){var i=a.v,o=t===i?a.w:i;!e.hasNode(o)&&!F(n,a)&&(e.setNode(o,{}),e.setEdge(t,o,{}),r(o))})}return l(e.nodes(),r),e.nodeCount()}function ni(e,n){return Le(n.edges(),function(r){if(e.hasNode(r.v)!==e.hasNode(r.w))return F(n,r)})}function ri(e,n,r){l(e.nodes(),function(t){n.node(t).rank+=r})}function ti(){}ti.prototype=new Error;function Mn(e,n,r){R(n)||(n=[n]);var t=(e.isDirected()?e.successors:e.neighbors).bind(e),a=[],i={};return l(n,function(o){if(!e.hasNode(o))throw new Error("Graph does not have node: "+o);An(e,o,r==="post",i,t,a)}),a}function An(e,n,r,t,a,i){Object.prototype.hasOwnProperty.call(t,n)||(t[n]=!0,r||i.push(n),l(a(n),function(o){An(e,o,r,t,a,i)}),r&&i.push(n))}function ai(e,n){return Mn(e,n,"post")}function ii(e,n){return Mn(e,n,"pre")}I.initLowLimValues=Te;I.initCutValues=Pe;I.calcCutValue=jn;I.leaveEdge=Bn;I.enterEdge=$n;I.exchangeEdges=Fn;function I(e){e=Xa(e),Ne(e);var n=_n(e);Te(n),Pe(n,e);for(var r,t;r=Bn(n);)t=$n(n,e,r),Fn(n,e,r,t)}function Pe(e,n){var r=ai(e,e.nodes());r=r.slice(0,r.length-1),l(r,function(t){oi(e,n,t)})}function oi(e,n,r){var t=e.node(r),a=t.parent;e.edge(r,a).cutvalue=jn(e,n,r)}function jn(e,n,r){var t=e.node(r),a=t.parent,i=!0,o=n.edge(r,a),s=0;return o||(i=!1,o=n.edge(a,r)),s=o.weight,l(n.nodeEdges(r),function(d){var u=d.v===r,f=u?d.w:d.v;if(f!==a){var c=u===i,h=n.edge(d).weight;if(s+=c?h:-h,di(e,r,f)){var b=e.edge(r,f).cutvalue;s+=c?-b:b}}}),s}function Te(e,n){arguments.length<2&&(n=e.nodes()[0]),Dn(e,{},1,n)}function Dn(e,n,r,t,a){var i=r,o=e.node(t);return n[t]=!0,l(e.neighbors(t),function(s){Object.prototype.hasOwnProperty.call(n,s)||(r=Dn(e,n,r,s,t))}),o.low=i,o.lim=r++,a?o.parent=a:delete o.parent,r}function Bn(e){return xe(e.edges(),function(n){return e.edge(n).cutvalue<0})}function $n(e,n,r){var t=r.v,a=r.w;n.hasEdge(t,a)||(t=r.w,a=r.v);var i=e.node(t),o=e.node(a),s=i,d=!1;i.lim>o.lim&&(s=o,d=!0);var u=X(n.edges(),function(f){return d===Ke(e,e.node(f.v),s)&&d!==Ke(e,e.node(f.w),s)});return Le(u,function(f){return F(n,f)})}function Fn(e,n,r,t){var a=r.v,i=r.w;e.removeEdge(a,i),e.setEdge(t.v,t.w,{}),Te(e),Pe(e,n),si(e,n)}function si(e,n){var r=xe(e.nodes(),function(a){return!n.node(a).parent}),t=ii(e,r);t=t.slice(1),l(t,function(a){var i=e.node(a).parent,o=n.edge(a,i),s=!1;o||(o=n.edge(i,a),s=!0),n.node(a).rank=n.node(i).rank+(s?o.minlen:-o.minlen)})}function di(e,n,r){return e.hasEdge(n,r)}function Ke(e,n,r){return r.low<=n.lim&&n.lim<=r.lim}function ui(e){switch(e.graph().ranker){case"network-simplex":Ze(e);break;case"tight-tree":ci(e);break;case"longest-path":fi(e);break;default:Ze(e)}}var fi=Ne;function ci(e){Ne(e),_n(e)}function Ze(e){I(e)}function li(e){var n=j(e,"root",{},"_root"),r=hi(e),t=C(k(r))-1,a=2*t+1;e.graph().nestingRoot=n,l(e.edges(),function(o){e.edge(o).minlen*=a});var i=pi(e)+1;l(e.children(),function(o){Xn(e,n,a,i,t,r,o)}),e.graph().nodeRankFactor=a}function Xn(e,n,r,t,a,i,o){var s=e.children(o);if(!s.length){o!==n&&e.setEdge(n,o,{weight:0,minlen:r});return}var d=He(e,"_bt"),u=He(e,"_bb"),f=e.node(o);e.setParent(d,o),f.borderTop=d,e.setParent(u,o),f.borderBottom=u,l(s,function(c){Xn(e,n,r,t,a,i,c);var h=e.node(c),b=h.borderTop?h.borderTop:c,p=h.borderBottom?h.borderBottom:c,g=h.borderTop?t:2*t,v=b!==p?1:a-i[o]+1;e.setEdge(d,b,{weight:g,minlen:v,nestingEdge:!0}),e.setEdge(p,u,{weight:g,minlen:v,nestingEdge:!0})}),e.parent(o)||e.setEdge(n,d,{weight:0,minlen:a+i[o]})}function hi(e){var n={};function r(t,a){var i=e.children(t);i&&i.length&&l(i,function(o){r(o,a+1)}),n[t]=a}return l(e.children(),function(t){r(t,1)}),n}function pi(e){return Q(e.edges(),function(n,r){return n+e.edge(r).weight},0)}function gi(e){var n=e.graph();e.removeNode(n.nestingRoot),delete n.nestingRoot,l(e.edges(),function(r){var t=e.edge(r);t.nestingEdge&&e.removeEdge(r)})}function vi(e,n,r){var t={},a;l(r,function(i){for(var o=e.parent(i),s,d;o;){if(s=e.parent(o),s?(d=t[s],t[s]=o):(d=a,a=o),d&&d!==o){n.setEdge(d,o);return}o=s}})}function bi(e,n,r){var t=wi(e),a=new P({compound:!0}).setGraph({root:t}).setDefaultNodeLabel(function(i){return e.node(i)});return l(e.nodes(),function(i){var o=e.node(i),s=e.parent(i);(o.rank===n||o.minRank<=n&&n<=o.maxRank)&&(a.setNode(i),a.setParent(i,s||t),l(e[r](i),function(d){var u=d.v===i?d.w:d.v,f=a.edge(u,i),c=O(f)?0:f.weight;a.setEdge(u,i,{weight:e.edge(d).weight+c})}),Object.prototype.hasOwnProperty.call(o,"minRank")&&a.setNode(i,{borderLeft:o.borderLeft[n],borderRight:o.borderRight[n]}))}),a}function wi(e){for(var n;e.hasNode(n=Oe("_root")););return n}function mi(e,n){for(var r=0,t=1;t<n.length;++t)r+=yi(e,n[t-1],n[t]);return r}function yi(e,n,r){for(var t=Ra(r,E(r,function(u,f){return f})),a=A(E(n,function(u){return G(E(e.outEdges(u),function(f){return{pos:t[f.w],weight:e.edge(f).weight}}),"pos")})),i=1;i<r.length;)i<<=1;var o=2*i-1;i-=1;var s=E(new Array(o),function(){return 0}),d=0;return l(a.forEach(function(u){var f=u.pos+i;s[f]+=u.weight;for(var c=0;f>0;)f%2&&(c+=s[f+1]),f=f-1>>1,s[f]+=u.weight;d+=u.weight*c})),d}function xi(e){var n={},r=X(e.nodes(),function(s){return!e.children(s).length}),t=C(E(r,function(s){return e.node(s).rank})),a=E(_(t+1),function(){return[]});function i(s){if(!Sn(n,s)){n[s]=!0;var d=e.node(s);a[d.rank].push(s),l(e.successors(s),i)}}var o=G(r,function(s){return e.node(s).rank});return l(o,i),a}function Ei(e,n){return E(n,function(r){var t=e.inEdges(r);if(t.length){var a=Q(t,function(i,o){var s=e.edge(o),d=e.node(o.v);return{sum:i.sum+s.weight*d.order,weight:i.weight+s.weight}},{sum:0,weight:0});return{v:r,barycenter:a.sum/a.weight,weight:a.weight}}else return{v:r}})}function Li(e,n){var r={};l(e,function(a,i){var o=r[a.v]={indegree:0,in:[],out:[],vs:[a.v],i};O(a.barycenter)||(o.barycenter=a.barycenter,o.weight=a.weight)}),l(n.edges(),function(a){var i=r[a.v],o=r[a.w];!O(i)&&!O(o)&&(o.indegree++,i.out.push(r[a.w]))});var t=X(r,function(a){return!a.indegree});return Oi(t)}function Oi(e){var n=[];function r(i){return function(o){o.merged||(O(o.barycenter)||O(i.barycenter)||o.barycenter>=i.barycenter)&&Ni(i,o)}}function t(i){return function(o){o.in.push(i),--o.indegree===0&&e.push(o)}}for(;e.length;){var a=e.pop();n.push(a),l(a.in.reverse(),r(a)),l(a.out,t(a))}return E(X(n,function(i){return!i.merged}),function(i){return J(i,["vs","i","barycenter","weight"])})}function Ni(e,n){var r=0,t=0;e.weight&&(r+=e.barycenter*e.weight,t+=e.weight),n.weight&&(r+=n.barycenter*n.weight,t+=n.weight),e.vs=n.vs.concat(e.vs),e.barycenter=r/t,e.weight=t,e.i=Math.min(n.i,e.i),n.merged=!0}function Pi(e,n){var r=Ua(e,function(f){return Object.prototype.hasOwnProperty.call(f,"barycenter")}),t=r.lhs,a=G(r.rhs,function(f){return-f.i}),i=[],o=0,s=0,d=0;t.sort(Ti(!!n)),d=Qe(i,a,d),l(t,function(f){d+=f.vs.length,i.push(f.vs),o+=f.barycenter*f.weight,s+=f.weight,d=Qe(i,a,d)});var u={vs:A(i)};return s&&(u.barycenter=o/s,u.weight=s),u}function Qe(e,n,r){for(var t;n.length&&(t=z(n)).i<=r;)n.pop(),e.push(t.vs),r++;return r}function Ti(e){return function(n,r){return n.barycenter<r.barycenter?-1:n.barycenter>r.barycenter?1:e?r.i-n.i:n.i-r.i}}function Gn(e,n,r,t){var a=e.children(n),i=e.node(n),o=i?i.borderLeft:void 0,s=i?i.borderRight:void 0,d={};o&&(a=X(a,function(p){return p!==o&&p!==s}));var u=Ei(e,a);l(u,function(p){if(e.children(p.v).length){var g=Gn(e,p.v,r,t);d[p.v]=g,Object.prototype.hasOwnProperty.call(g,"barycenter")&&Ci(p,g)}});var f=Li(u,r);Si(f,d);var c=Pi(f,t);if(o&&(c.vs=A([o,c.vs,s]),e.predecessors(o).length)){var h=e.node(e.predecessors(o)[0]),b=e.node(e.predecessors(s)[0]);Object.prototype.hasOwnProperty.call(c,"barycenter")||(c.barycenter=0,c.weight=0),c.barycenter=(c.barycenter*c.weight+h.order+b.order)/(c.weight+2),c.weight+=2}return c}function Si(e,n){l(e,function(r){r.vs=A(r.vs.map(function(t){return n[t]?n[t].vs:t}))})}function Ci(e,n){O(e.barycenter)?(e.barycenter=n.barycenter,e.weight=n.weight):(e.barycenter=(e.barycenter*e.weight+n.barycenter*n.weight)/(e.weight+n.weight),e.weight+=n.weight)}function Ii(e){var n=Rn(e),r=en(e,_(1,n+1),"inEdges"),t=en(e,_(n-1,-1,-1),"outEdges"),a=xi(e);nn(e,a);for(var i=Number.POSITIVE_INFINITY,o,s=0,d=0;d<4;++s,++d){Ri(s%2?r:t,s%4>=2),a=ae(e);var u=mi(e,a);u<i&&(d=0,o=aa(a),i=u)}nn(e,o)}function en(e,n,r){return E(n,function(t){return bi(e,t,r)})}function Ri(e,n){var r=new P;l(e,function(t){var a=t.graph().root,i=Gn(t,a,r,n);l(i.vs,function(o,s){t.node(o).order=s}),vi(t,r,i.vs)})}function nn(e,n){l(n,function(r){l(r,function(t,a){e.node(t).order=a})})}function ki(e){var n=Mi(e);l(e.graph().dummyChains,function(r){for(var t=e.node(r),a=t.edgeObj,i=_i(e,n,a.v,a.w),o=i.path,s=i.lca,d=0,u=o[d],f=!0;r!==a.w;){if(t=e.node(r),f){for(;(u=o[d])!==s&&e.node(u).maxRank<t.rank;)d++;u===s&&(f=!1)}if(!f){for(;d<o.length-1&&e.node(u=o[d+1]).minRank<=t.rank;)d++;u=o[d]}e.setParent(r,u),r=e.successors(r)[0]}})}function _i(e,n,r,t){var a=[],i=[],o=Math.min(n[r].low,n[t].low),s=Math.max(n[r].lim,n[t].lim),d,u;d=r;do d=e.parent(d),a.push(d);while(d&&(n[d].low>o||s>n[d].lim));for(u=d,d=t;(d=e.parent(d))!==u;)i.push(d);return{path:a.concat(i.reverse()),lca:u}}function Mi(e){var n={},r=0;function t(a){var i=r;l(e.children(a),t),n[a]={low:i,lim:r++}}return l(e.children(),t),n}function Ai(e,n){var r={};function t(a,i){var o=0,s=0,d=a.length,u=z(i);return l(i,function(f,c){var h=Di(e,f),b=h?e.node(h).order:d;(h||f===u)&&(l(i.slice(s,c+1),function(p){l(e.predecessors(p),function(g){var v=e.node(g),w=v.order;(w<o||b<w)&&!(v.dummy&&e.node(p).dummy)&&Yn(r,g,p)})}),s=c+1,o=b)}),i}return Q(n,t),r}function ji(e,n){var r={};function t(i,o,s,d,u){var f;l(_(o,s),function(c){f=i[c],e.node(f).dummy&&l(e.predecessors(f),function(h){var b=e.node(h);b.dummy&&(b.order<d||b.order>u)&&Yn(r,h,f)})})}function a(i,o){var s=-1,d,u=0;return l(o,function(f,c){if(e.node(f).dummy==="border"){var h=e.predecessors(f);h.length&&(d=e.node(h[0]).order,t(o,u,c,s,d),u=c,s=d)}t(o,u,o.length,d,i.length)}),o}return Q(n,a),r}function Di(e,n){if(e.node(n).dummy)return xe(e.predecessors(n),function(r){return e.node(r).dummy})}function Yn(e,n,r){if(n>r){var t=n;n=r,r=t}Object.prototype.hasOwnProperty.call(e,n)||Object.defineProperty(e,n,{enumerable:!0,configurable:!0,value:{},writable:!0});var a=e[n];Object.defineProperty(a,r,{enumerable:!0,configurable:!0,value:!0,writable:!0})}function Bi(e,n,r){if(n>r){var t=n;n=r,r=t}return!!e[n]&&Object.prototype.hasOwnProperty.call(e[n],r)}function $i(e,n,r,t){var a={},i={},o={};return l(n,function(s){l(s,function(d,u){a[d]=d,i[d]=d,o[d]=u})}),l(n,function(s){var d=-1;l(s,function(u){var f=t(u);if(f.length){f=G(f,function(g){return o[g]});for(var c=(f.length-1)/2,h=Math.floor(c),b=Math.ceil(c);h<=b;++h){var p=f[h];i[u]===u&&d<o[p]&&!Bi(r,u,p)&&(i[p]=u,i[u]=a[u]=a[p],d=o[p])}}})}),{root:a,align:i}}function Fi(e,n,r,t,a){var i={},o=Xi(e,n,r,a),s=a?"borderLeft":"borderRight";function d(c,h){for(var b=o.nodes(),p=b.pop(),g={};p;)g[p]?c(p):(g[p]=!0,b.push(p),b=b.concat(h(p))),p=b.pop()}function u(c){i[c]=o.inEdges(c).reduce(function(h,b){return Math.max(h,i[b.v]+o.edge(b))},0)}function f(c){var h=o.outEdges(c).reduce(function(p,g){return Math.min(p,i[g.w]-o.edge(g))},Number.POSITIVE_INFINITY),b=e.node(c);h!==Number.POSITIVE_INFINITY&&b.borderType!==s&&(i[c]=Math.max(i[c],h))}return d(u,o.predecessors.bind(o)),d(f,o.successors.bind(o)),l(t,function(c){i[c]=i[r[c]]}),i}function Xi(e,n,r,t){var a=new P,i=e.graph(),o=Wi(i.nodesep,i.edgesep,t);return l(n,function(s){var d;l(s,function(u){var f=r[u];if(a.setNode(f),d){var c=r[d],h=a.edge(c,f);a.setEdge(c,f,Math.max(o(e,u,d),h||0))}d=u})}),a}function Gi(e,n){return Le(k(n),function(r){var t=Number.NEGATIVE_INFINITY,a=Number.POSITIVE_INFINITY;return la(r,function(i,o){var s=qi(e,o)/2;t=Math.max(i+s,t),a=Math.min(i-s,a)}),t-a})}function Yi(e,n){var r=k(n),t=$(r),a=C(r);l(["u","d"],function(i){l(["l","r"],function(o){var s=i+o,d=e[s],u;if(d!==n){var f=k(d);u=o==="l"?t-$(f):a-C(f),u&&(e[s]=te(d,function(c){return c+u}))}})})}function Ui(e,n){return te(e.ul,function(r,t){if(n)return e[n.toLowerCase()][t];var a=G(E(e,t));return(a[1]+a[2])/2})}function Vi(e){var n=ae(e),r=le(Ai(e,n),ji(e,n)),t={},a;l(["u","d"],function(o){a=o==="u"?n:k(n).reverse(),l(["l","r"],function(s){s==="r"&&(a=E(a,function(c){return k(c).reverse()}));var d=(o==="u"?e.predecessors:e.successors).bind(e),u=$i(e,a,r,d),f=Fi(e,a,u.root,u.align,s==="r");s==="r"&&(f=te(f,function(c){return-c})),t[o+s]=f})});var i=Gi(e,t);return Yi(t,i),Ui(t,e.graph().align)}function Wi(e,n,r){return function(t,a,i){var o=t.node(a),s=t.node(i),d=0,u;if(d+=o.width/2,Object.prototype.hasOwnProperty.call(o,"labelpos"))switch(o.labelpos.toLowerCase()){case"l":u=-o.width/2;break;case"r":u=o.width/2;break}if(u&&(d+=r?u:-u),u=0,d+=(o.dummy?n:e)/2,d+=(s.dummy?n:e)/2,d+=s.width/2,Object.prototype.hasOwnProperty.call(s,"labelpos"))switch(s.labelpos.toLowerCase()){case"l":u=s.width/2;break;case"r":u=-s.width/2;break}return u&&(d+=r?u:-u),u=0,d}}function qi(e,n){return e.node(n).width}function Hi(e){e=In(e),zi(e),ha(Vi(e),function(n,r){e.node(r).x=n})}function zi(e){var n=ae(e),r=e.graph().ranksep,t=0;l(n,function(a){var i=C(E(a,function(o){return e.node(o).height}));l(a,function(o){e.node(o).y=t+i/2}),t+=i+r})}function Ji(e,n){var r=Va;r("layout",()=>{var t=r(" buildLayoutGraph",()=>so(e));r(" runLayout",()=>Ki(t,r)),r(" updateInputGraph",()=>Zi(e,t))})}function Ki(e,n){n(" makeSpaceForEdgeLabels",()=>uo(e)),n(" removeSelfEdges",()=>wo(e)),n(" acyclic",()=>Ba(e)),n(" nestingGraph.run",()=>li(e)),n(" rank",()=>ui(In(e))),n(" injectEdgeLabelProxies",()=>fo(e)),n(" removeEmptyRanks",()=>Ya(e)),n(" nestingGraph.cleanup",()=>gi(e)),n(" normalizeRanks",()=>Ga(e)),n(" assignRankMinMax",()=>co(e)),n(" removeEdgeLabelProxies",()=>lo(e)),n(" normalize.run",()=>Ka(e)),n(" parentDummyChains",()=>ki(e)),n(" addBorderSegments",()=>Wa(e)),n(" order",()=>Ii(e)),n(" insertSelfEdges",()=>mo(e)),n(" adjustCoordinateSystem",()=>qa(e)),n(" position",()=>Hi(e)),n(" positionSelfEdges",()=>yo(e)),n(" removeBorderNodes",()=>bo(e)),n(" normalize.undo",()=>Qa(e)),n(" fixupEdgeLabelCoords",()=>go(e)),n(" undoCoordinateSystem",()=>Ha(e)),n(" translateGraph",()=>ho(e)),n(" assignNodeIntersects",()=>po(e)),n(" reversePoints",()=>vo(e)),n(" acyclic.undo",()=>Fa(e))}function Zi(e,n){l(e.nodes(),function(r){var t=e.node(r),a=n.node(r);t&&(t.x=a.x,t.y=a.y,n.children(r).length&&(t.width=a.width,t.height=a.height))}),l(e.edges(),function(r){var t=e.edge(r),a=n.edge(r);t.points=a.points,Object.prototype.hasOwnProperty.call(a,"x")&&(t.x=a.x,t.y=a.y)}),e.graph().width=n.graph().width,e.graph().height=n.graph().height}var Qi=["nodesep","edgesep","ranksep","marginx","marginy"],eo={ranksep:50,edgesep:20,nodesep:50,rankdir:"tb"},no=["acyclicer","ranker","rankdir","align"],ro=["width","height"],to={width:0,height:0},ao=["minlen","weight","width","height","labeloffset"],io={minlen:1,weight:1,width:0,height:0,labeloffset:10,labelpos:"r"},oo=["labelpos"];function so(e){var n=new P({multigraph:!0,compound:!0}),r=ue(e.graph());return n.setGraph(le({},eo,de(r,Qi),J(r,no))),l(e.nodes(),function(t){var a=ue(e.node(t));n.setNode(t,oa(de(a,ro),to)),n.setParent(t,e.parent(t))}),l(e.edges(),function(t){var a=ue(e.edge(t));n.setEdge(t,le({},io,de(a,ao),J(a,oo)))}),n}function uo(e){var n=e.graph();n.ranksep/=2,l(e.edges(),function(r){var t=e.edge(r);t.minlen*=2,t.labelpos.toLowerCase()!=="c"&&(n.rankdir==="TB"||n.rankdir==="BT"?t.width+=t.labeloffset:t.height+=t.labeloffset)})}function fo(e){l(e.edges(),function(n){var r=e.edge(n);if(r.width&&r.height){var t=e.node(n.v),a=e.node(n.w),i={rank:(a.rank-t.rank)/2+t.rank,e:n};j(e,"edge-proxy",i,"_ep")}})}function co(e){var n=0;l(e.nodes(),function(r){var t=e.node(r);t.borderTop&&(t.minRank=e.node(t.borderTop).rank,t.maxRank=e.node(t.borderBottom).rank,n=C(n,t.maxRank))}),e.graph().maxRank=n}function lo(e){l(e.nodes(),function(n){var r=e.node(n);r.dummy==="edge-proxy"&&(e.edge(r.e).labelRank=r.rank,e.removeNode(n))})}function ho(e){var n=Number.POSITIVE_INFINITY,r=0,t=Number.POSITIVE_INFINITY,a=0,i=e.graph(),o=i.marginx||0,s=i.marginy||0;function d(u){var f=u.x,c=u.y,h=u.width,b=u.height;n=Math.min(n,f-h/2),r=Math.max(r,f+h/2),t=Math.min(t,c-b/2),a=Math.max(a,c+b/2)}l(e.nodes(),function(u){d(e.node(u))}),l(e.edges(),function(u){var f=e.edge(u);Object.prototype.hasOwnProperty.call(f,"x")&&d(f)}),n-=o,t-=s,l(e.nodes(),function(u){var f=e.node(u);f.x-=n,f.y-=t}),l(e.edges(),function(u){var f=e.edge(u);l(f.points,function(c){c.x-=n,c.y-=t}),Object.prototype.hasOwnProperty.call(f,"x")&&(f.x-=n),Object.prototype.hasOwnProperty.call(f,"y")&&(f.y-=t)}),i.width=r-n+o,i.height=a-t+s}function po(e){l(e.edges(),function(n){var r=e.edge(n),t=e.node(n.v),a=e.node(n.w),i,o;r.points?(i=r.points[0],o=r.points[r.points.length-1]):(r.points=[],i=a,o=t),r.points.unshift(qe(t,i)),r.points.push(qe(a,o))})}function go(e){l(e.edges(),function(n){var r=e.edge(n);if(Object.prototype.hasOwnProperty.call(r,"x"))switch((r.labelpos==="l"||r.labelpos==="r")&&(r.width-=r.labeloffset),r.labelpos){case"l":r.x-=r.width/2+r.labeloffset;break;case"r":r.x+=r.width/2+r.labeloffset;break}})}function vo(e){l(e.edges(),function(n){var r=e.edge(n);r.reversed&&r.points.reverse()})}function bo(e){l(e.nodes(),function(n){if(e.children(n).length){var r=e.node(n),t=e.node(r.borderTop),a=e.node(r.borderBottom),i=e.node(z(r.borderLeft)),o=e.node(z(r.borderRight));r.width=Math.abs(o.x-i.x),r.height=Math.abs(a.y-t.y),r.x=i.x+r.width/2,r.y=t.y+r.height/2}}),l(e.nodes(),function(n){e.node(n).dummy==="border"&&e.removeNode(n)})}function wo(e){l(e.edges(),function(n){if(n.v===n.w){var r=e.node(n.v);r.selfEdges||(r.selfEdges=[]),r.selfEdges.push({e:n,label:e.edge(n)}),e.removeEdge(n)}})}function mo(e){var n=ae(e);l(n,function(r){var t=0;l(r,function(a,i){var o=e.node(a);o.order=i+t,l(o.selfEdges,function(s){j(e,"selfedge",{width:s.label.width,height:s.label.height,rank:o.rank,order:i+ ++t,e:s.e,label:s.label},"_se")}),delete o.selfEdges})})}function yo(e){l(e.nodes(),function(n){var r=e.node(n);if(r.dummy==="selfedge"){var t=e.node(r.e.v),a=t.x+t.width/2,i=t.y,o=r.x-a,s=t.height/2;e.setEdge(r.e,r.label),e.removeNode(n),r.label.points=[{x:a+2*o/3,y:i-s},{x:a+5*o/6,y:i-s},{x:a+o,y:i},{x:a+5*o/6,y:i+s},{x:a+2*o/3,y:i+s}],r.label.x=r.x,r.label.y=r.y}})}function de(e,n){return te(J(e,n),Number)}function ue(e){var n={};return l(e,function(r,t){n[t.toLowerCase()]=r}),n}var rn=x((e,n,r)=>Math.max(n,Math.min(r,e)),"clamp"),tn=x((e="TB")=>{switch(e){case"BT":return"bottom";case"LR":return"right";case"RL":return"left";case"TB":default:return"top"}},"getDefaultSelfLoopSide"),xo=x(e=>e==="flowchart"||e==="flowchart-v2"||e==="stateDiagram"||e==="er"||e==="classDiagram","shouldMergeSelfLoopSegments"),Eo=["x","y","width","height","labelBBox","intersect","calcIntersect","diff","clusterNode"],Lo=x((e,n,r,t,a)=>{const i=[],o=new Set;if(r.forEach(({start:f,end:c})=>{f!==t&&o.add(f),c!==t&&o.add(c)}),o.forEach(f=>{const c=e.node(f);typeof(c==null?void 0:c.x)=="number"&&typeof(c==null?void 0:c.y)=="number"&&i.push(c)}),i.length===0&&r.forEach(({edge:f})=>{(f.points??[]).forEach(c=>{typeof(c==null?void 0:c.x)=="number"&&typeof(c==null?void 0:c.y)=="number"&&i.push(c)})}),i.length===0)return tn(a);const s=i.reduce((f,c)=>({x:f.x+c.x/i.length,y:f.y+c.y/i.length}),{x:0,y:0}),d=s.x-n.x,u=s.y-n.y;return Math.abs(d)>Math.abs(u)?d>0?"right":"left":Math.abs(u)>0?u>0?"bottom":"top":tn(a)},"getSelfLoopSide"),Oo=x((e,n="top",r=0,t=0)=>{const a=e.x,i=e.y-r,o=e.width/2,s=e.height/2,d=Math.max(36,Math.min(100,e.width*.8)),u=rn(Math.max(t,e.width*.35),36,d),f=rn(Math.min(e.width,e.height)*.45,24,48);switch(n){case"bottom":{const c=i+s;return[{x:a-u/2,y:c},{x:a-u/2,y:c+f},{x:a+u/2,y:c+f},{x:a+u/2,y:c}]}case"right":{const c=a+o;return[{x:c,y:i-u/2},{x:c+f,y:i-u/2},{x:c+f,y:i+u/2},{x:c,y:i+u/2}]}case"left":{const c=a-o;return[{x:c,y:i-u/2},{x:c-f,y:i-u/2},{x:c-f,y:i+u/2},{x:c,y:i+u/2}]}case"top":default:{const c=i-s;return[{x:a-u/2,y:c},{x:a-u/2,y:c-f},{x:a+u/2,y:c-f},{x:a+u/2,y:c}]}}},"getSelfLoopPoints"),No=x((e,n,r="top",t=0,a={})=>{const o=e.x,s=e.y-t,d=a.width??0,u=a.height??0;switch(r){case"bottom":return{x:o,y:Math.max(...n.map(f=>f.y))+u/2+4};case"right":return{x:Math.max(...n.map(f=>f.x))+d/2+4,y:s};case"left":return{x:Math.min(...n.map(f=>f.x))-d/2-4,y:s};case"top":default:return{x:o,y:Math.min(...n.map(f=>f.y))-u/2-4}}},"getSelfLoopLabelPosition"),Un=x((e,n=0,{mergeSelfLoops:r=!0}={})=>{var o;const t=new Map,a=[],i=(o=e.graph())==null?void 0:o.rankdir;return e.edges().forEach(s=>{const d=e.edge(s);if(r&&d.selfLoop){const u=d.selfLoop.id;t.has(u)||t.set(u,[]),t.get(u).push({edge:d,start:s.v,end:s.w})}else a.push({edge:d,start:s.v,end:s.w})}),t.forEach(s=>{if(s.length!==3){s.forEach(L=>a.push(L));return}s.sort((L,S)=>L.edge.selfLoop.order-S.edge.selfLoop.order);const[d,u,f]=s,c=d.edge.originalEdge??u.edge.originalEdge??f.edge.originalEdge??u.edge,h=e.node(c.start);if(!h){s.forEach(L=>a.push(L));return}const b={width:u.edge.width,height:u.edge.height},p=Lo(e,h,s,c.start,i),g=Oo(h,p,n,b.width??0),v=No(h,g,p,n,b),w={...u.edge,...c,id:c.id,points:g,start:c.start,end:c.end,x:v.x,y:v.y,width:b.width,height:b.height,labelStyle:u.edge.labelStyle,fromCluster:d.edge.fromCluster??u.edge.fromCluster??f.edge.fromCluster,toCluster:d.edge.toCluster??u.edge.toCluster??f.edge.toCluster};delete w.selfLoop,delete w.originalEdge,a.push({edge:w,start:w.start,end:w.end})}),a},"getEdgesToRender"),Vn=x(async({element:e,graph:n,diagramType:r,id:t,parentCluster:a,siteConfig:i})=>{const o=n.graph().rankdir;m.trace("Dir in recursive render - dir:",o);const{clusters:s,edgePaths:d,edgeLabels:u,nodes:f,rootGroups:c}=Jn(e,{edgePathsClass:"edgePaths"});n.nodes()?m.info("Recursive render XXX",n.nodes()):m.info("No nodes found for",n),n.edges().length>0&&m.info("Recursive edges",n.edge(n.edges()[0]));const h=xo(r);await Promise.all(n.nodes().map(async function(g){const v=n.node(g);if(a!==void 0){const w=JSON.parse(JSON.stringify(a.clusterData));m.trace(`Setting data for parent cluster XXX
2
+ Node.id = `,g,`
3
+ data=`,w.height,`
4
+ Parent cluster`,a.height),n.setNode(a.id,w),n.parent(g)||(m.trace("Setting parent",g,a.id),n.setParent(g,a.id,w))}if(m.info("(Insert) Node XXX"+g+": "+JSON.stringify(n.node(g))),v!=null&&v.clusterNode){m.info("Cluster identified XBX",g,v.width,n.node(g));const{ranksep:w,nodesep:L}=n.graph();v.graph.setGraph({...v.graph.graph(),ranksep:w+25,nodesep:L});const S=await Io({element:f,graph:v.graph,diagramType:r,id:t,parentCluster:n.node(g),siteConfig:i}),D=S.elem;Qn(v,D),v.diff=S.diff||0,m.info("New compound node after recursive render XAX",g,"width",v.width,"height",v.height),er(D,v)}else n.children(g).length>0?(m.trace("Cluster - the non recursive path XBX",g,v.id,v,v.width,"Graph:",n),m.trace(Ce(v.id,n)),T.set(v.id,{id:Ce(v.id,n),node:v})):(m.trace("Node - the non recursive path XAX",g,f,n.node(g),o),await Kn(f,n.node(g),{config:i,dir:o}))})),await x(async()=>{const g=n.edges().map(async function(v){var L,S,D,Se;const w=n.edge(v.v,v.w,v.name);if(m.info("Edge "+v.v+" -> "+v.w+": "+JSON.stringify(v)),m.info("Edge "+v.v+" -> "+v.w+": ",v," ",JSON.stringify(n.edge(v))),m.info("Fix",T,"ids:",v.v,v.w,"Translating: ",T.get(v.v),T.get(v.w)),h&&w.selfLoop){if(w.selfLoop.order!==1)return;const Y={...w.originalEdge,...w,id:w.selfLoop.id,startLabelLeft:((L=w.originalEdge)==null?void 0:L.startLabelLeft)??w.startLabelLeft,startLabelRight:((S=w.originalEdge)==null?void 0:S.startLabelRight)??w.startLabelRight,endLabelLeft:((D=w.originalEdge)==null?void 0:D.endLabelLeft)??w.endLabelLeft,endLabelRight:((Se=w.originalEdge)==null?void 0:Se.endLabelRight)??w.endLabelRight};await Ie(u,Y),w.width=Y.width,w.height=Y.height,w.labelStyle=Y.labelStyle;return}await Ie(u,w)});await Promise.all(g)},"processEdges")();const{subGraphTitleTotalMargin:p}=nr(i);return{elem:c,graph:n,groups:{clusters:s,edgePaths:d,edgeLabels:u,nodes:f,rootGroups:c},diagramType:r,id:t,mergeSelfLoops:h,subGraphTitleTotalMargin:p}},"measureDagreGraph"),Wn=x(e=>{m.info("############################################# XXX"),m.info("### Layout ### XXX"),m.info("############################################# XXX"),Ji(e)},"runDagreGraphLayout"),Po=x((e,n,r)=>{const t=e.node(n);if(!t)return;const a={...t};return t!=null&&t.clusterNode?a.y=(t.y??0)+r:e.children(n).length>0?a.height=(t.height??0)+r:a.y=(t.y??0)+r/2,a},"normalizeDagreNode"),an=x((e,n)=>{Eo.forEach(r=>{n[r]!==void 0&&(e[r]=n[r])})},"applyDagreNodeLayout"),To=x((e,n,r,t)=>({...e,start:e.start??n,end:e.end??r,points:(e.points??[]).map(a=>({...a,y:typeof a.y=="number"?a.y+t:a.y}))}),"normalizeDagreEdge"),So=x((e,n)=>{const{graph:r,mergeSelfLoops:t,subGraphTitleTotalMargin:a=0}=n,i=new Map(e.nodes.map(s=>[s.id,s]));pe(r).forEach(s=>{const d=Po(r,s,a);if(!d)return;an(r.node(s),d);const u=i.get(s);u&&an(u,d)});const o=a/2;return e.edges=Un(r,o,{mergeSelfLoops:t}).map(({edge:s,start:d,end:u})=>To(s,d,u,o)),e},"applyDagreLayoutResult"),Co=x(async({elem:e,graph:n,groups:{clusters:r,edgePaths:t},diagramType:a,id:i,mergeSelfLoops:o,subGraphTitleTotalMargin:s})=>{let d=0;await Promise.all(pe(n).map(async function(c){var b;const h=n.node(c);if(m.info("Position XBX => "+c+": ("+h.x,","+h.y,") width: ",h.width," height: ",h.height),h!=null&&h.clusterNode)h.y+=s,m.info("A tainted cluster node XBX1",c,h.id,h.width,h.height,h.x,h.y,n.parent(c)),T.get(h.id).node=h,Re(h);else if(n.children(c).length>0){m.info("A pure cluster node XBX1",c,h.id,h.x,h.y,h.width,h.height,n.parent(c)),h.height+=s,n.node(h.parentId);const p=(h==null?void 0:h.padding)/2||0,g=((b=h==null?void 0:h.labelBBox)==null?void 0:b.height)||0,v=g-p||0;m.debug("OffsetY",v,"labelHeight",g,"halfPadding",p),await rr(r,h),T.get(h.id).node=h}else{const p=n.node(h.parentId);h.y+=s/2,m.info("A regular node XBX1 - using the padding",h.id,"parent",h.parentId,h.width,h.height,h.x,h.y,"offsetY",h.offsetY,"parent",p,p==null?void 0:p.offsetY,h),Re(h)}}));const u=s/2;return Un(n,u,{mergeSelfLoops:o}).forEach(function({edge:c,start:h,end:b}){m.info("Edge "+h+" -> "+b+": "+JSON.stringify(c),c),c.points.forEach(w=>w.y+=u);const p=n.node(h),g=n.node(b),v=tr(t,c,T,a,p,g,i);ar(c,v)}),n.nodes().forEach(function(c){const h=n.node(c);m.info(c,h.type,h.diff),h.isGroup&&(d=h.diff)}),m.warn("Returning from recursive render XAX",e,d),{elem:e,diff:d}},"paintDagreLayoutCore"),Io=x(async e=>{const n=await Vn(e);return Wn(n.graph),await Co(n)},"renderDagreSubgraph"),qn=x(e=>{var r,t,a,i,o,s;const n=new P({multigraph:!0,compound:!0}).setGraph({rankdir:e.direction,nodesep:((r=e.config)==null?void 0:r.nodeSpacing)||e.nodeSpacing||((a=(t=e.config)==null?void 0:t.flowchart)==null?void 0:a.nodeSpacing),ranksep:((i=e.config)==null?void 0:i.rankSpacing)||e.rankSpacing||((s=(o=e.config)==null?void 0:o.flowchart)==null?void 0:s.rankSpacing),marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}});return e.nodes.forEach(d=>{n.setNode(d.id,{...d}),d.parentId&&n.setParent(d.id,d.parentId)}),m.debug("Edges:",e.edges),e.edges.forEach(d=>{if(d.start===d.end){const u=d.start,f=u+"---"+u+"---1",c=u+"---"+u+"---2",h=n.node(u);n.setNode(f,{domId:f,id:f,parentId:h.parentId,labelStyle:"",label:"",padding:0,shape:"labelRect",style:"",width:10,height:10}),n.setParent(f,h.parentId),n.setNode(c,{domId:c,id:c,parentId:h.parentId,labelStyle:"",padding:0,shape:"labelRect",label:"",style:"",width:10,height:10}),n.setParent(c,h.parentId);const b=structuredClone(d),p=structuredClone(d),g=structuredClone(d),v=structuredClone(d);p.originalEdge=b,p.selfLoop={id:b.id,order:0},g.originalEdge=b,g.selfLoop={id:b.id,order:1},v.originalEdge=b,v.selfLoop={id:b.id,order:2},p.label="",p.arrowTypeEnd="none",p.endLabelLeft="",p.endLabelRight="",p.startLabelLeft="",p.id=u+"-cyclic-special-1",g.startLabelRight="",g.startLabelLeft="",g.endLabelLeft="",g.endLabelRight="",g.arrowTypeStart="none",g.arrowTypeEnd="none",g.id=u+"-cyclic-special-mid",v.label="",v.startLabelRight="",v.startLabelLeft="",v.arrowTypeStart="none",h.isGroup&&(p.fromCluster=u,v.toCluster=u),v.id=u+"-cyclic-special-2",v.arrowTypeStart="none",n.setEdge(u,f,p,u+"-cyclic-special-0"),n.setEdge(f,c,g,u+"-cyclic-special-1"),n.setEdge(c,u,v,u+"-cyclic-special-2")}else n.setEdge(d.start,d.end,{...d},d.id)}),Hn(n),{graph:n}},"prepareLayoutForDagre"),Ro=x(async(e,{element:n,preparedLayout:r})=>{const t=r??qn(e),a=Zn(),i=await Vn({element:n,graph:t.graph,diagramType:e.type,id:e.diagramId,parentCluster:void 0,siteConfig:a});return t.measuredLayout=i,i},"measureDagreLayout"),ko=x((e,n)=>{var t;const r=(t=n.preparedLayout)==null?void 0:t.measuredLayout;if(!r)throw new Error("runDagreLayoutCore requires measureDagreLayout to run first");return Wn(r.graph),So(e,r),r},"runDagreLayoutCore"),_o=x((e,{measure:n})=>pe(n.graph).map(r=>n.graph.node(r)).filter(Boolean),"getDagrePaintNodes"),Mo=x((e,n,{measure:r})=>e?r.graph.node(e):void 0,"getDagreEdgeNode"),$o=zn({prepareLayout:qn,measureLayout:Ro,runLayoutCore:ko,paintOptions:{clusterDb:T,getNodes:_o,getEdgeNode:Mo,skipNode:x((e,{measure:n})=>!n.graph.hasNode(e.id),"skipNode"),isCluster:x((e,{measure:n})=>n.graph.hasNode(e.id)&&(n.graph.children(e.id)??[]).length>0,"isCluster")}});export{So as applyDagreLayoutResult,Un as getEdgesToRender,Ro as measureDagreLayout,qn as prepareLayoutForDagre,$o as render,ko as runDagreLayoutCore};
@@ -1 +1 @@
1
- const e=Object.freeze(JSON.parse('{"displayName":"Dart","name":"dart","patterns":[{"match":"^(#!.*)$","name":"meta.preprocessor.script.dart"},{"begin":"^\\\\w*\\\\b(augment\\\\s+library|library|import\\\\s+augment|import|part\\\\s+of|part|export)\\\\b","beginCaptures":{"0":{"name":"keyword.other.import.dart"}},"end":";","endCaptures":{"0":{"name":"punctuation.terminator.dart"}},"name":"meta.declaration.dart","patterns":[{"include":"#strings"},{"include":"#comments"},{"match":"\\\\b(as|show|hide)\\\\b","name":"keyword.other.import.dart"},{"match":"\\\\b(if)\\\\b","name":"keyword.control.dart"}]},{"include":"#comments"},{"include":"#punctuation"},{"include":"#annotations"},{"include":"#keywords"},{"include":"#constants-and-special-vars"},{"include":"#class-identifier-with-optional-factory-method"},{"include":"#function-identifier"},{"include":"#operators"},{"include":"#strings"}],"repository":{"annotations":{"patterns":[{"match":"@[A-Za-z]+","name":"storage.type.annotation.dart"}]},"class-identifier":{"patterns":[{"match":"(?<!\\\\$)\\\\b(bool|num|int|double|dynamic)\\\\b(?!\\\\$)","name":"support.class.dart"},{"match":"(?<!\\\\$)\\\\bvoid\\\\b(?!\\\\$)","name":"storage.type.primitive.dart"},{"begin":"(?<![$0-9A-Z_a-z])([$_]*[A-Z][$0-9A-Z_a-z]*)\\\\b","beginCaptures":{"1":{"name":"support.class.dart"}},"end":"(?!<)","patterns":[{"include":"#type-args"}]}]},"class-identifier-with-optional-factory-method":{"patterns":[{"captures":{"1":{"name":"support.class.dart"},"2":{"name":"entity.name.function.dart"}},"match":"(?<!\\\\$)\\\\b(bool|num|int|double|dynamic)\\\\b(?!\\\\$)\\\\s*(factory\\\\b)?"},{"captures":{"1":{"name":"storage.type.primitive.dart"},"2":{"name":"entity.name.function.dart"}},"match":"(?<!\\\\$)\\\\b(void)\\\\b(?!\\\\$)\\\\s*(factory\\\\b)?"},{"begin":"(?<![$0-9A-Z_a-z])([$_]*[A-Z][$0-9A-Z_a-z]*)\\\\b\\\\s*(factory\\\\b)?","beginCaptures":{"1":{"name":"support.class.dart"},"2":{"name":"entity.name.function.dart"}},"end":"(?!<)","patterns":[{"include":"#type-args"}]}]},"comments":{"patterns":[{"captures":{"0":{"name":"punctuation.definition.comment.dart"}},"match":"/\\\\*\\\\*/","name":"comment.block.empty.dart"},{"include":"#comments-doc-oldschool"},{"include":"#comments-doc"},{"include":"#comments-inline"}]},"comments-block":{"patterns":[{"begin":"/\\\\*","end":"\\\\*/","name":"comment.block.dart","patterns":[{"include":"#comments-block"}]}]},"comments-doc":{"patterns":[{"begin":"///","end":"^(?!\\\\s*///)","name":"comment.block.documentation.dart","patterns":[{"include":"#dartdoc"}]}]},"comments-doc-oldschool":{"patterns":[{"begin":"/\\\\*\\\\*","end":"\\\\*/","name":"comment.block.documentation.dart","patterns":[{"include":"#comments-doc-oldschool"},{"include":"#comments-block"},{"include":"#dartdoc"}]}]},"comments-inline":{"patterns":[{"include":"#comments-block"},{"captures":{"1":{"name":"comment.line.double-slash.dart"}},"match":"((//).*)$"}]},"constants-and-special-vars":{"patterns":[{"match":"(?<!\\\\$)\\\\b(true|false|null)\\\\b(?!\\\\$)","name":"constant.language.dart"},{"match":"(?<!\\\\$)\\\\b(this|super|augmented)\\\\b(?!\\\\$)","name":"variable.language.dart"},{"match":"(?<!\\\\$)\\\\b((0([Xx])\\\\h[_\\\\h]*)|(([0-9][0-9_]*\\\\.?[0-9_]*)|(\\\\.[0-9][0-9_]*))(([Ee])([-+])?[0-9][0-9_]*)?)\\\\b(?!\\\\$)","name":"constant.numeric.dart"}]},"dartdoc":{"patterns":[{"captures":{"0":{"name":"variable.name.source.dart"}},"match":"(\\\\[.*?])"},{"begin":"^\\\\s*///\\\\s*(```)","end":"^(?:\\\\s*///\\\\s*(```)|(?!\\\\s*///))","patterns":[{"include":"#dartdoc-codeblock-triple"}]},{"begin":"^\\\\s*\\\\*\\\\s*(```)","end":"^(?:\\\\s*\\\\*\\\\s*(```)|(?=\\\\s*\\\\*/))","patterns":[{"include":"#dartdoc-codeblock-block"}]},{"match":"`[^\\\\n`]+`","name":"variable.other.source.dart"},{"captures":{"1":{"name":"variable.other.source.dart"}},"match":"(?:\\\\*|//)\\\\s{4,}(.*?)(?=($|\\\\*/))"}]},"dartdoc-codeblock-block":{"begin":"^\\\\s*\\\\*\\\\s*(?!(\\\\s*```|/))","contentName":"variable.other.source.dart","end":"\\\\n"},"dartdoc-codeblock-triple":{"begin":"^\\\\s*///\\\\s*(?!\\\\s*```)","contentName":"variable.other.source.dart","end":"\\\\n"},"expression":{"patterns":[{"include":"#constants-and-special-vars"},{"include":"#class-identifier-with-optional-factory-method"},{"include":"#function-identifier"},{"include":"#strings"},{"match":"[0-9A-Z_a-z]+","name":"variable.parameter.dart"},{"begin":"\\\\{","end":"}","patterns":[{"include":"#expression"}]}]},"function-identifier":{"patterns":[{"captures":{"1":{"name":"entity.name.function.dart"},"2":{"patterns":[{"include":"#type-args"}]}},"match":"([$_]*[a-z][$0-9A-Z_a-z]*)(<(?:[$0-9<>?A-Z_a-z]|,\\\\s*|\\\\s+extends\\\\s+)+>)?[!?]?\\\\("},{"match":"(?<=\\\\.)new\\\\b","name":"entity.name.function.dart"}]},"keywords":{"patterns":[{"match":"(?<!\\\\$)\\\\bas\\\\b(?!\\\\$)","name":"keyword.cast.dart"},{"match":"(?<!\\\\$)\\\\b(try|on|catch|finally|throw|rethrow)\\\\b(?!\\\\$)","name":"keyword.control.catch-exception.dart"},{"match":"(?<!\\\\$)\\\\b(break|case|continue|default|do|else|for|if|in|switch|while|when)\\\\b(?!\\\\$)","name":"keyword.control.dart"},{"match":"(?<!\\\\$)\\\\b(sync(\\\\*)?|async(\\\\*)?|await|yield(\\\\*)?)\\\\b(?!\\\\$)","name":"keyword.control.dart"},{"match":"(?<!\\\\$)\\\\bassert\\\\b(?!\\\\$)","name":"keyword.control.dart"},{"match":"(?<![$.])\\\\b(new)\\\\b(?!\\\\$)","name":"keyword.new.dart"},{"match":"(?<!\\\\$)\\\\b(return)\\\\b(?!\\\\$)","name":"keyword.control.return.dart"},{"match":"(?<!\\\\$)\\\\b(abstract|sealed|base|interface|class|enum|extends|extension\\\\s+type|extension|external|factory|implements|get(?![(<])|mixin|native|operator|set(?![(<])|typedef|with|covariant)\\\\b(?!\\\\$)","name":"keyword.declaration.dart"},{"match":"(?<!\\\\$)\\\\b(macro|augment|static|final|const|required|late)\\\\b(?!\\\\$)","name":"storage.modifier.dart"},{"match":"(?<!\\\\$)\\\\bvar\\\\b(?!\\\\$)","name":"storage.type.primitive.dart"}]},"operators":{"patterns":[{"match":"(?<!\\\\$)\\\\b(is!?)\\\\b(?!\\\\$)","name":"keyword.operator.dart"},{"match":"[:?]","name":"keyword.operator.ternary.dart"},{"match":"(<<|>>>?|[\\\\&^|~])","name":"keyword.operator.bitwise.dart"},{"match":"(([\\\\&^|]|<<|>>>?)=)","name":"keyword.operator.assignment.bitwise.dart"},{"match":"(=>)","name":"keyword.operator.closure.dart"},{"match":"(==|!=|<=?|>=?)","name":"keyword.operator.comparison.dart"},{"match":"(([-%*+/~])=)","name":"keyword.operator.assignment.arithmetic.dart"},{"match":"(=)","name":"keyword.operator.assignment.dart"},{"match":"(--|\\\\+\\\\+)","name":"keyword.operator.increment-decrement.dart"},{"match":"([-*+/]|~/|%)","name":"keyword.operator.arithmetic.dart"},{"match":"(!|&&|\\\\|\\\\|)","name":"keyword.operator.logical.dart"}]},"punctuation":{"patterns":[{"match":",","name":"punctuation.comma.dart"},{"match":";","name":"punctuation.terminator.dart"},{"match":"\\\\.","name":"punctuation.dot.dart"}]},"string-interp":{"patterns":[{"captures":{"1":{"name":"variable.parameter.dart"}},"match":"\\\\$([0-9A-Z_a-z]+)","name":"meta.embedded.expression.dart"},{"begin":"\\\\$\\\\{","end":"}","name":"meta.embedded.expression.dart","patterns":[{"include":"#expression"}]},{"match":"\\\\\\\\.","name":"constant.character.escape.dart"}]},"strings":{"patterns":[{"begin":"(?<!r)\\"\\"\\"","end":"\\"\\"\\"(?!\\")","name":"string.interpolated.triple.double.dart","patterns":[{"include":"#string-interp"}]},{"begin":"(?<!r)\'\'\'","end":"\'\'\'(?!\')","name":"string.interpolated.triple.single.dart","patterns":[{"include":"#string-interp"}]},{"begin":"r\\"\\"\\"","end":"\\"\\"\\"(?!\\")","name":"string.quoted.triple.double.dart"},{"begin":"r\'\'\'","end":"\'\'\'(?!\')","name":"string.quoted.triple.single.dart"},{"begin":"(?<!\\\\|r)\\"","end":"\\"","name":"string.interpolated.double.dart","patterns":[{"match":"\\\\n","name":"invalid.string.newline"},{"include":"#string-interp"}]},{"begin":"r\\"","end":"\\"","name":"string.quoted.double.dart","patterns":[{"match":"\\\\n","name":"invalid.string.newline"}]},{"begin":"(?<!\\\\|r)\'","end":"\'","name":"string.interpolated.single.dart","patterns":[{"match":"\\\\n","name":"invalid.string.newline"},{"include":"#string-interp"}]},{"begin":"r\'","end":"\'","name":"string.quoted.single.dart","patterns":[{"match":"\\\\n","name":"invalid.string.newline"}]}]},"type-args":{"begin":"(<)","beginCaptures":{"1":{"name":"other.source.dart"}},"end":"(>)","endCaptures":{"1":{"name":"other.source.dart"}},"patterns":[{"include":"#class-identifier"},{"match":","},{"match":"extends","name":"keyword.declaration.dart"},{"include":"#comments"}]}},"scopeName":"source.dart"}')),t=[e];export{t as default};
1
+ const e=Object.freeze(JSON.parse('{"displayName":"Dart","name":"dart","patterns":[{"match":"^(#!.*)$","name":"meta.preprocessor.script.dart"},{"begin":"^\\\\w*\\\\b(augment\\\\s+library|library|import\\\\s+augment|import|part\\\\s+of|part|export)\\\\b","beginCaptures":{"0":{"name":"keyword.other.import.dart"}},"end":";","endCaptures":{"0":{"name":"punctuation.terminator.dart"}},"name":"meta.declaration.dart","patterns":[{"include":"#strings"},{"include":"#comments"},{"match":"\\\\b(as|show|hide)\\\\b","name":"keyword.other.import.dart"},{"match":"\\\\b(if)\\\\b","name":"keyword.control.dart"}]},{"include":"#comments"},{"include":"#punctuation"},{"include":"#annotations"},{"include":"#keywords"},{"include":"#constants-and-special-vars"},{"include":"#class-identifier-with-optional-factory-method"},{"include":"#function-identifier"},{"include":"#operators"},{"include":"#strings"}],"repository":{"annotations":{"patterns":[{"match":"@[A-Za-z]+","name":"storage.type.annotation.dart"}]},"class-identifier":{"patterns":[{"match":"(?<!\\\\$)\\\\b(bool|num|int|double|dynamic)\\\\b(?!\\\\$)","name":"support.class.dart"},{"match":"(?<!\\\\$)\\\\bvoid\\\\b(?!\\\\$)","name":"storage.type.primitive.dart"},{"begin":"(?<![$0-9A-Z_a-z])([$_]*[A-Z][$0-9A-Z_a-z]*)\\\\b","beginCaptures":{"1":{"name":"support.class.dart"}},"end":"(?!<)","patterns":[{"include":"#type-args"}]}]},"class-identifier-with-optional-factory-method":{"patterns":[{"captures":{"1":{"name":"support.class.dart"},"2":{"name":"entity.name.function.dart"}},"match":"(?<!\\\\$)\\\\b(bool|num|int|double|dynamic)\\\\b(?!\\\\$)\\\\s*(factory\\\\b)?"},{"captures":{"1":{"name":"storage.type.primitive.dart"},"2":{"name":"entity.name.function.dart"}},"match":"(?<!\\\\$)\\\\b(void)\\\\b(?!\\\\$)\\\\s*(factory\\\\b)?"},{"begin":"(?<![$0-9A-Z_a-z])([$_]*[A-Z][$0-9A-Z_a-z]*)\\\\b\\\\s*(factory\\\\b)?","beginCaptures":{"1":{"name":"support.class.dart"},"2":{"name":"entity.name.function.dart"}},"end":"(?!<)","patterns":[{"include":"#type-args"}]}]},"comments":{"patterns":[{"captures":{"0":{"name":"punctuation.definition.comment.dart"}},"match":"/\\\\*\\\\*/","name":"comment.block.empty.dart"},{"include":"#comments-doc-oldschool"},{"include":"#comments-doc"},{"include":"#comments-inline"}]},"comments-block":{"patterns":[{"begin":"/\\\\*","end":"\\\\*/","name":"comment.block.dart","patterns":[{"include":"#comments-block"}]}]},"comments-doc":{"patterns":[{"begin":"///","end":"^(?!\\\\s*///)","name":"comment.block.documentation.dart","patterns":[{"include":"#dartdoc"}]}]},"comments-doc-oldschool":{"patterns":[{"begin":"/\\\\*\\\\*","end":"\\\\*/","name":"comment.block.documentation.dart","patterns":[{"include":"#comments-doc-oldschool"},{"include":"#comments-block"},{"include":"#dartdoc"}]}]},"comments-inline":{"patterns":[{"include":"#comments-block"},{"captures":{"1":{"name":"comment.line.double-slash.dart"}},"match":"((//).*)$"}]},"constants-and-special-vars":{"patterns":[{"match":"(?<!\\\\$)\\\\b(true|false|null)\\\\b(?!\\\\$)","name":"constant.language.dart"},{"match":"(?<!\\\\$)\\\\b(this|super|augmented)\\\\b(?!\\\\$)","name":"variable.language.dart"},{"match":"(?<!\\\\$)\\\\b((0([Xx])\\\\h[_\\\\h]*)|(([0-9][0-9_]*\\\\.?[0-9_]*)|(\\\\.[0-9][0-9_]*))(([Ee])([-+])?[0-9][0-9_]*)?)\\\\b(?!\\\\$)","name":"constant.numeric.dart"}]},"dartdoc":{"patterns":[{"captures":{"0":{"name":"variable.name.source.dart"}},"match":"(\\\\[.*?])"},{"begin":"^\\\\s*///\\\\s*(```)","end":"^(?:\\\\s*///\\\\s*(```)|(?!\\\\s*///))","patterns":[{"include":"#dartdoc-codeblock-triple"}]},{"begin":"^\\\\s*\\\\*\\\\s*(```)","end":"^(?:\\\\s*\\\\*\\\\s*(```)|(?=\\\\s*\\\\*/))","patterns":[{"include":"#dartdoc-codeblock-block"}]},{"match":"`[^\\\\n`]+`","name":"variable.other.source.dart"},{"captures":{"1":{"name":"variable.other.source.dart"}},"match":"(?:\\\\*|//)\\\\s{4,}(.*?)(?=($|\\\\*/))"}]},"dartdoc-codeblock-block":{"begin":"^\\\\s*\\\\*\\\\s*(?!(\\\\s*```|/))","contentName":"variable.other.source.dart","end":"$"},"dartdoc-codeblock-triple":{"begin":"^\\\\s*///\\\\s*(?!\\\\s*```)","contentName":"variable.other.source.dart","end":"$"},"expression":{"patterns":[{"include":"#constants-and-special-vars"},{"include":"#class-identifier-with-optional-factory-method"},{"include":"#function-identifier"},{"include":"#strings"},{"match":"[0-9A-Z_a-z]+","name":"variable.parameter.dart"},{"begin":"\\\\{","end":"}","patterns":[{"include":"#expression"}]}]},"function-identifier":{"patterns":[{"captures":{"1":{"name":"entity.name.function.dart"},"2":{"patterns":[{"include":"#type-args"}]}},"match":"([$_]*[a-z][$0-9A-Z_a-z]*)(<(?:[$0-9<>?A-Z_a-z]|,\\\\s*|\\\\s+extends\\\\s+)+>)?[!?]?\\\\("},{"match":"(?<=\\\\.)new\\\\b","name":"entity.name.function.dart"}]},"keywords":{"patterns":[{"match":"(?<!\\\\$)\\\\bas\\\\b(?!\\\\$)","name":"keyword.cast.dart"},{"match":"(?<!\\\\$)\\\\b(try|on|catch|finally|throw|rethrow)\\\\b(?!\\\\$)","name":"keyword.control.catch-exception.dart"},{"match":"(?<!\\\\$)\\\\b(break|case|continue|default|do|else|for|if|in|switch|while|when)\\\\b(?!\\\\$)","name":"keyword.control.dart"},{"match":"(?<!\\\\$)\\\\b(sync(\\\\*)?|async(\\\\*)?|await|yield(\\\\*)?)\\\\b(?!\\\\$)","name":"keyword.control.dart"},{"match":"(?<!\\\\$)\\\\bassert\\\\b(?!\\\\$)","name":"keyword.control.dart"},{"match":"(?<![$.])\\\\b(new)\\\\b(?!\\\\$)","name":"keyword.new.dart"},{"match":"(?<!\\\\$)\\\\b(return)\\\\b(?!\\\\$)","name":"keyword.control.return.dart"},{"match":"(?<!\\\\$)\\\\b(abstract|sealed|base|interface|class|enum|extends|extension\\\\s+type|extension|external|factory|implements|get(?![(<])|mixin|native|operator|set(?![(<])|typedef|with|covariant)\\\\b(?!\\\\$)","name":"keyword.declaration.dart"},{"match":"(?<!\\\\$)\\\\b(macro|augment|static|final|const|required|late)\\\\b(?!\\\\$)","name":"storage.modifier.dart"},{"match":"(?<!\\\\$)\\\\bvar\\\\b(?!\\\\$)","name":"storage.type.primitive.dart"}]},"operators":{"patterns":[{"match":"(?<!\\\\$)\\\\b(is!?)\\\\b(?!\\\\$)","name":"keyword.operator.dart"},{"match":"[:?]","name":"keyword.operator.ternary.dart"},{"match":"(<<|>>>?|[\\\\&^|~])","name":"keyword.operator.bitwise.dart"},{"match":"(([\\\\&^|]|<<|>>>?)=)","name":"keyword.operator.assignment.bitwise.dart"},{"match":"(=>)","name":"keyword.operator.closure.dart"},{"match":"(==|!=|<=?|>=?)","name":"keyword.operator.comparison.dart"},{"match":"(([-%*+/~])=)","name":"keyword.operator.assignment.arithmetic.dart"},{"match":"(=)","name":"keyword.operator.assignment.dart"},{"match":"(--|\\\\+\\\\+)","name":"keyword.operator.increment-decrement.dart"},{"match":"([-*+/]|~/|%)","name":"keyword.operator.arithmetic.dart"},{"match":"(!|&&|\\\\|\\\\|)","name":"keyword.operator.logical.dart"}]},"punctuation":{"patterns":[{"match":",","name":"punctuation.comma.dart"},{"match":";","name":"punctuation.terminator.dart"},{"match":"\\\\.","name":"punctuation.dot.dart"}]},"string-interp":{"patterns":[{"captures":{"1":{"name":"variable.parameter.dart"}},"match":"\\\\$([0-9A-Z_a-z]+)","name":"meta.embedded.expression.dart"},{"begin":"\\\\$\\\\{","end":"}","name":"meta.embedded.expression.dart","patterns":[{"include":"#expression"}]},{"match":"\\\\\\\\.","name":"constant.character.escape.dart"}]},"strings":{"patterns":[{"begin":"(?<!r)\\"\\"\\"","end":"\\"\\"\\"(?!\\")","name":"string.interpolated.triple.double.dart","patterns":[{"include":"#string-interp"}]},{"begin":"(?<!r)\'\'\'","end":"\'\'\'(?!\')","name":"string.interpolated.triple.single.dart","patterns":[{"include":"#string-interp"}]},{"begin":"r\\"\\"\\"","end":"\\"\\"\\"(?!\\")","name":"string.quoted.triple.double.dart"},{"begin":"r\'\'\'","end":"\'\'\'(?!\')","name":"string.quoted.triple.single.dart"},{"begin":"(?<!\\\\|r)\\"","end":"\\"","name":"string.interpolated.double.dart","patterns":[{"match":"\\\\n","name":"invalid.string.newline"},{"include":"#string-interp"}]},{"begin":"r\\"","end":"\\"","name":"string.quoted.double.dart","patterns":[{"match":"\\\\n","name":"invalid.string.newline"}]},{"begin":"(?<!\\\\|r)\'","end":"\'","name":"string.interpolated.single.dart","patterns":[{"match":"\\\\n","name":"invalid.string.newline"},{"include":"#string-interp"}]},{"begin":"r\'","end":"\'","name":"string.quoted.single.dart","patterns":[{"match":"\\\\n","name":"invalid.string.newline"}]}]},"type-args":{"begin":"(<)","beginCaptures":{"1":{"name":"other.source.dart"}},"end":"(>)","endCaptures":{"1":{"name":"other.source.dart"}},"patterns":[{"include":"#class-identifier"},{"match":","},{"match":"extends","name":"keyword.declaration.dart"},{"include":"#comments"}]}},"scopeName":"source.dart"}')),t=[e];export{t as default};
@@ -1,4 +1,4 @@
1
- import{p as fe}from"./explorer-chunk-JWPE2WC7.js";import{_ as C,G as me,z as te,B as K,F as ge,d as ye,l as ee,aQ as E,b as Se,a as xe,o as be,p as ve,g as Ce,s as we,D as Te,aR as Le,q as $e}from"./explorer-mermaid.core.js";import{s as Fe}from"./explorer-chunk-POPQ4Y6H.js";import{p as Ne}from"./explorer-cynefin-OW5HDTMX.js";import{b as ze,r as Ve,o as J,h as Me,s as Q}from"./explorer.js";import{f as O}from"./explorer-defaultLocale.js";function Ae(d){if(typeof d!="function")throw new Error;return d}function G(){return 0}function q(d){return function(){return d}}function De(d,r,i,l,o){for(var s=d.children,u,f=-1,v=s.length,n=d.value&&(o-i)/d.value;++f<v;)u=s[f],u.x0=r,u.x1=l,u.y0=i,u.y1=i+=u.value*n}var ke=(1+Math.sqrt(5))/2;function Pe(d,r,i,l,o,s){for(var u=[],f=r.children,v,n,c=0,b=0,t=f.length,x,y,S=r.value,p,g,z,$,k,B,V;c<t;){x=o-i,y=s-l;do p=f[b++].value;while(!p&&b<t);for(g=z=p,B=Math.max(y/x,x/y)/(S*d),V=p*p*B,k=Math.max(z/V,V/g);b<t;++b){if(p+=n=f[b].value,n<g&&(g=n),n>z&&(z=n),V=p*p*B,$=Math.max(z/V,V/g),$>k){p-=n;break}k=$}u.push(v={value:p,dice:x<y,children:f.slice(c,b)}),v.dice?ze(v,i,l,o,S?l+=y*p/S:s):De(v,i,l,S?i+=x*p/S:o,s),S-=p,c=b}return u}const Re=(function d(r){function i(l,o,s,u,f){Pe(r,l,o,s,u,f)}return i.ratio=function(l){return d((l=+l)>1?l:1)},i})(ke);function Ee(){var d=Re,r=!1,i=1,l=1,o=[0],s=G,u=G,f=G,v=G,n=G;function c(t){return t.x0=t.y0=0,t.x1=i,t.y1=l,t.eachBefore(b),o=[0],r&&t.eachBefore(Ve),t}function b(t){var x=o[t.depth],y=t.x0+x,S=t.y0+x,p=t.x1-x,g=t.y1-x;p<y&&(y=p=(y+p)/2),g<S&&(S=g=(S+g)/2),t.x0=y,t.y0=S,t.x1=p,t.y1=g,t.children&&(x=o[t.depth+1]=s(t)/2,y+=n(t)-x,S+=u(t)-x,p-=f(t)-x,g-=v(t)-x,p<y&&(y=p=(y+p)/2),g<S&&(S=g=(S+g)/2),d(t,y,S,p,g))}return c.round=function(t){return arguments.length?(r=!!t,c):r},c.size=function(t){return arguments.length?(i=+t[0],l=+t[1],c):[i,l]},c.tile=function(t){return arguments.length?(d=Ae(t),c):d},c.padding=function(t){return arguments.length?c.paddingInner(t).paddingOuter(t):c.paddingInner()},c.paddingInner=function(t){return arguments.length?(s=typeof t=="function"?t:q(+t),c):s},c.paddingOuter=function(t){return arguments.length?c.paddingTop(t).paddingRight(t).paddingBottom(t).paddingLeft(t):c.paddingTop()},c.paddingTop=function(t){return arguments.length?(u=typeof t=="function"?t:q(+t),c):u},c.paddingRight=function(t){return arguments.length?(f=typeof t=="function"?t:q(+t),c):f},c.paddingBottom=function(t){return arguments.length?(v=typeof t=="function"?t:q(+t),c):v},c.paddingLeft=function(t){return arguments.length?(n=typeof t=="function"?t:q(+t),c):n},c}var _,re=(_=class{constructor(){this.nodes=[],this.levels=new Map,this.outerNodes=[],this.classes=new Map,this.setAccTitle=Se,this.getAccTitle=xe,this.setDiagramTitle=be,this.getDiagramTitle=ve,this.getAccDescription=Ce,this.setAccDescription=we}getNodes(){return this.nodes}getConfig(){const r=Te,i=te();return K({...r.treemap,...i.treemap??{}})}addNode(r,i){this.nodes.push(r),this.levels.set(r,i),i===0&&(this.outerNodes.push(r),this.root??(this.root=r))}getRoot(){return{name:"",children:this.outerNodes}}addClass(r,i){const l=this.classes.get(r)??{id:r,styles:[],textStyles:[]},o=i.replace(/\\,/g,"§§§").replace(/,/g,";").replace(/§§§/g,",").split(";");o&&o.forEach(s=>{Le(s)&&(l!=null&&l.textStyles?l.textStyles.push(s):l.textStyles=[s]),l!=null&&l.styles?l.styles.push(s):l.styles=[s]}),this.classes.set(r,l)}getClasses(){return this.classes}getStylesForClass(r){var i;return((i=this.classes.get(r))==null?void 0:i.styles)??[]}clear(){$e(),this.nodes=[],this.levels=new Map,this.outerNodes=[],this.classes=new Map,this.root=void 0}},C(_,"TreeMapDB"),_);function oe(d){if(!d.length)return[];const r=[],i=[];return d.forEach(l=>{const o={name:l.name,children:l.type==="Leaf"?void 0:[]};for(o.classSelector=l==null?void 0:l.classSelector,l!=null&&l.cssCompiledStyles&&(o.cssCompiledStyles=l.cssCompiledStyles),l.type==="Leaf"&&l.value!==void 0&&(o.value=l.value);i.length>0&&i[i.length-1].level>=l.level;)i.pop();if(i.length===0)r.push(o);else{const s=i[i.length-1].node;s.children?s.children.push(o):s.children=[o]}l.type!=="Leaf"&&i.push({node:o,level:l.level})}),r}C(oe,"buildHierarchy");var We=C((d,r)=>{fe(d,r);const i=[];for(const s of d.TreemapRows??[])s.$type==="ClassDefStatement"&&r.addClass(s.className??"",s.styleText??"");for(const s of d.TreemapRows??[]){const u=s.item;if(!u)continue;const f=s.indent?parseInt(s.indent):0,v=_e(u),n=u.classSelector?r.getStylesForClass(u.classSelector):[],c=n.length>0?n:void 0,b={level:f,name:v,type:u.$type,value:u.value,classSelector:u.classSelector,cssCompiledStyles:c};i.push(b)}const l=oe(i),o=C((s,u)=>{for(const f of s)r.addNode(f,u),f.children&&f.children.length>0&&o(f.children,u+1)},"addNodesRecursively");o(l,0)},"populate"),_e=C(d=>d.name?String(d.name):"","getItemName"),ie={parser:{yy:void 0},parse:C(async d=>{var r;try{const l=await Ne("treemap",d);ee.debug("Treemap AST:",l);const o=(r=ie.parser)==null?void 0:r.yy;if(!(o instanceof re))throw new Error("parser.parser?.yy was not a TreemapDB. This is due to a bug within Mermaid, please report this issue at https://github.com/mermaid-js/mermaid/issues.");We(l,o)}catch(i){throw ee.error("Error parsing treemap:",i),i}},"parse")},Be=10,W=10,X=25,Ie=C((d,r,i,l)=>{const o=l.db,s=o.getConfig(),u=s.padding??Be,f=o.getDiagramTitle(),v=o.getRoot(),{themeVariables:n}=te();if(!v)return;const c=f?30:0,b=ge(r),t=s.nodeWidth?s.nodeWidth*W:960,x=s.nodeHeight?s.nodeHeight*W:500,y=t,S=x+c;b.attr("viewBox",`0 0 ${y} ${S}`),ye(b,S,y,s.useMaxWidth);let p;try{const e=s.valueFormat||",";if(e==="$0,0")p=C(a=>"$"+O(",")(a),"valueFormat");else if(e.startsWith("$")&&e.includes(",")){const a=/\.\d+/.exec(e),h=a?a[0]:"";p=C(w=>"$"+O(","+h)(w),"valueFormat")}else if(e.startsWith("$")){const a=e.substring(1);p=C(h=>"$"+O(a||"")(h),"valueFormat")}else p=O(e)}catch(e){ee.error("Error creating format function:",e),p=O(",")}const g=J().range(["transparent",n.cScale0,n.cScale1,n.cScale2,n.cScale3,n.cScale4,n.cScale5,n.cScale6,n.cScale7,n.cScale8,n.cScale9,n.cScale10,n.cScale11]),z=J().range(["transparent",n.cScalePeer0,n.cScalePeer1,n.cScalePeer2,n.cScalePeer3,n.cScalePeer4,n.cScalePeer5,n.cScalePeer6,n.cScalePeer7,n.cScalePeer8,n.cScalePeer9,n.cScalePeer10,n.cScalePeer11]),$=J().range([n.cScaleLabel0,n.cScaleLabel1,n.cScaleLabel2,n.cScaleLabel3,n.cScaleLabel4,n.cScaleLabel5,n.cScaleLabel6,n.cScaleLabel7,n.cScaleLabel8,n.cScaleLabel9,n.cScaleLabel10,n.cScaleLabel11]);f&&b.append("text").attr("x",y/2).attr("y",c/2).attr("class","treemapTitle").attr("text-anchor","middle").attr("dominant-baseline","middle").text(f);const k=b.append("g").attr("transform",`translate(0, ${c})`).attr("class","treemapContainer"),B=Me(v).sum(e=>e.value??0).sort((e,a)=>(a.value??0)-(e.value??0)),ae=Ee().size([t,x]).paddingTop(e=>e.children&&e.children.length>0?X+W:0).paddingInner(u).paddingLeft(e=>e.children&&e.children.length>0?W:0).paddingRight(e=>e.children&&e.children.length>0?W:0).paddingBottom(e=>e.children&&e.children.length>0?W:0).round(!0)(B),ce=ae.descendants().filter(e=>e.children&&e.children.length>0),I=k.selectAll(".treemapSection").data(ce).enter().append("g").attr("class","treemapSection").attr("transform",e=>`translate(${e.x0},${e.y0})`);I.append("rect").attr("width",e=>e.x1-e.x0).attr("height",X).attr("class","treemapSectionHeader").attr("fill","none").attr("fill-opacity",.6).attr("stroke-width",.6).attr("style",e=>e.depth===0?"display: none;":""),I.append("clipPath").attr("id",(e,a)=>`clip-section-${r}-${a}`).append("rect").attr("width",e=>Math.max(0,e.x1-e.x0-12)).attr("height",X),I.append("rect").attr("width",e=>e.x1-e.x0).attr("height",e=>e.y1-e.y0).attr("class",(e,a)=>`treemapSection section${a}`).attr("fill",e=>g(e.data.name)).attr("fill-opacity",.6).attr("stroke",e=>z(e.data.name)).attr("stroke-width",2).attr("stroke-opacity",.4).attr("style",e=>{if(e.depth===0)return"display: none;";const a=E({cssCompiledStyles:e.data.cssCompiledStyles});return a.nodeStyles+";"+a.borderStyles.join(";")}),I.append("text").attr("class","treemapSectionLabel").attr("x",6).attr("y",X/2).attr("dominant-baseline","middle").text(e=>e.depth===0?"":e.data.name).attr("font-weight","bold").attr("clip-path",(e,a)=>`url(#clip-section-${r}-${a})`).attr("style",e=>{if(e.depth===0)return"display: none;";const a="dominant-baseline: middle; font-size: 12px; fill:"+$(e.data.name)+"; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;",h=E({cssCompiledStyles:e.data.cssCompiledStyles});return a+h.labelStyles.replace("color:","fill:")}).each(function(e){if(e.depth===0)return;const a=Q(this),h=e.data.name;a.text(h);const w=e.x1-e.x0,L=6;let T;s.showValues!==!1&&e.value?T=w-10-30-10-L:T=w-L-6;const m=Math.max(15,T),M=a.node();if(M.getComputedTextLength()>m){let D=h;for(;D.length>0;){if(D=h.substring(0,D.length-1),D.length===0){a.text("..."),M.getComputedTextLength()>m&&a.text("");break}if(a.text(D+"..."),M.getComputedTextLength()<=m)break}}}),s.showValues!==!1&&I.append("text").attr("class","treemapSectionValue").attr("x",e=>e.x1-e.x0-10).attr("y",X/2).attr("text-anchor","end").attr("dominant-baseline","middle").text(e=>e.value?p(e.value):"").attr("font-style","italic").attr("style",e=>{if(e.depth===0)return"display: none;";const a="text-anchor: end; dominant-baseline: middle; font-size: 10px; fill:"+$(e.data.name)+"; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;",h=E({cssCompiledStyles:e.data.cssCompiledStyles});return a+h.labelStyles.replace("color:","fill:")});const le=ae.leaves(),F=le.length>20,de=F?16:38,Y=F?14:28,P=F?4:8,H=F?4:6,U=F?2:4,ne=F?8:10,Z=F?1:2,j=k.selectAll(".treemapLeafGroup").data(le).enter().append("g").attr("class",(e,a)=>`treemapNode treemapLeafGroup leaf${a}${e.data.classSelector?` ${e.data.classSelector}`:""}x`).attr("transform",e=>`translate(${e.x0},${e.y0})`);j.append("rect").attr("width",e=>e.x1-e.x0).attr("height",e=>e.y1-e.y0).attr("class","treemapLeaf").attr("fill",e=>e.parent?g(e.parent.data.name):g(e.data.name)).attr("style",e=>E({cssCompiledStyles:e.data.cssCompiledStyles}).nodeStyles).attr("fill-opacity",.3).attr("stroke",e=>e.parent?g(e.parent.data.name):g(e.data.name)).attr("stroke-width",3),j.append("clipPath").attr("id",(e,a)=>`clip-${r}-${a}`).append("rect").attr("width",e=>Math.max(0,e.x1-e.x0-4)).attr("height",e=>Math.max(0,e.y1-e.y0-4)),j.append("text").attr("class","treemapLabel").attr("x",e=>(e.x1-e.x0)/2).attr("y",e=>(e.y1-e.y0)/2).attr("style",e=>{const a=`text-anchor: middle; dominant-baseline: middle; font-size: ${de}px;fill:`+$(e.data.name)+";",h=E({cssCompiledStyles:e.data.cssCompiledStyles});return a+h.labelStyles.replace("color:","fill:")}).attr("clip-path",(e,a)=>`url(#clip-${r}-${a})`).text(e=>e.data.name).each(function(e){const a=Q(this),h=e.x1-e.x0,w=e.y1-e.y0,L=a.node(),T=h-2*U,R=w-2*U;if(T<ne||R<ne){a.style("display","none");return}let m=parseInt(a.style("font-size"),10);const M=.6;for(;L.getComputedTextLength()>T&&m>P;)m--,a.style("font-size",`${m}px`);let N=Math.max(H,Math.min(Y,Math.round(m*M))),A=m+Z+N;for(;A>R&&m>P&&(m--,N=Math.max(H,Math.min(Y,Math.round(m*M))),!(N<H&&m===P));)a.style("font-size",`${m}px`),A=m+Z+N;a.style("font-size",`${m}px`),F?(m<P||R<P)&&a.style("display","none"):(L.getComputedTextLength()>T||m<P||R<m)&&a.style("display","none")}),s.showValues!==!1&&j.append("text").attr("class","treemapValue").attr("x",a=>(a.x1-a.x0)/2).attr("y",function(a){return(a.y1-a.y0)/2}).attr("style",a=>{const h=`text-anchor: middle; dominant-baseline: hanging; font-size: ${Y}px;fill:`+$(a.data.name)+";",w=E({cssCompiledStyles:a.data.cssCompiledStyles});return h+w.labelStyles.replace("color:","fill:")}).attr("clip-path",(a,h)=>`url(#clip-${r}-${h})`).text(a=>a.value?p(a.value):"").each(function(a){const h=Q(this),w=this.parentNode;if(!w){h.style("display","none");return}const L=Q(w).select(".treemapLabel");if(L.empty()||L.style("display")==="none"){h.style("display","none");return}const T=parseFloat(L.style("font-size")),m=Math.max(H,Math.min(Y,Math.round(T*.6)));h.style("font-size",`${m}px`);const N=(a.y1-a.y0)/2+T/2+Z;h.attr("y",N);const A=a.x1-a.x0,se=a.y1-a.y0-4,he=A-2*U;h.node().getComputedTextLength()>he||N+m>se||m<H?h.style("display","none"):h.style("display",null)});const pe=s.diagramPadding??8;Fe(b,pe,"flowchart",(s==null?void 0:s.useMaxWidth)||!1)},"draw"),He=C(function(d,r){return r.db.getClasses()},"getClasses"),Oe={draw:Ie,getClasses:He},Ge={sectionStrokeColor:"black",sectionStrokeWidth:"1",sectionFillColor:"#efefef",leafStrokeColor:"black",leafStrokeWidth:"1",leafFillColor:"#efefef",labelFontSize:"12px",valueFontSize:"10px",titleFontSize:"14px"},qe=C(({treemap:d}={})=>{const r=me(),i=te(),l=K(r,i.themeVariables),o=K(Ge,d),s=o.titleColor??l.titleColor,u=o.labelColor??l.textColor,f=o.valueColor??l.textColor;return`
1
+ import{p as fe}from"./explorer-chunk-JWPE2WC7.js";import{_ as C,T as me,N as te,P as K,S as ge,d as ye,l as ee,a$ as R,b as Se,a as xe,t as ve,v as be,g as Ce,s as we,Q as Te,b0 as Le,B as $e}from"./explorer-mermaid.core.js";import{s as Fe}from"./explorer-chunk-VQ5W62QI.js";import{p as Ne}from"./explorer-cynefin-EF2NZ3EQ.js";import{p as ze,q as Ve,o as J,v as Me,s as Q}from"./explorer.js";import{f as O}from"./explorer-defaultLocale.js";function Ae(d){if(typeof d!="function")throw new Error;return d}function q(){return 0}function G(d){return function(){return d}}function Pe(d,r,i,l,o){for(var s=d.children,u,f=-1,b=s.length,n=d.value&&(o-i)/d.value;++f<b;)u=s[f],u.x0=r,u.x1=l,u.y0=i,u.y1=i+=u.value*n}var ke=(1+Math.sqrt(5))/2;function De(d,r,i,l,o,s){for(var u=[],f=r.children,b,n,c=0,v=0,t=f.length,x,y,S=r.value,p,g,z,$,k,B,V;c<t;){x=o-i,y=s-l;do p=f[v++].value;while(!p&&v<t);for(g=z=p,B=Math.max(y/x,x/y)/(S*d),V=p*p*B,k=Math.max(z/V,V/g);v<t;++v){if(p+=n=f[v].value,n<g&&(g=n),n>z&&(z=n),V=p*p*B,$=Math.max(z/V,V/g),$>k){p-=n;break}k=$}u.push(b={value:p,dice:x<y,children:f.slice(c,v)}),b.dice?ze(b,i,l,o,S?l+=y*p/S:s):Pe(b,i,l,S?i+=x*p/S:o,s),S-=p,c=v}return u}const Ee=(function d(r){function i(l,o,s,u,f){De(r,l,o,s,u,f)}return i.ratio=function(l){return d((l=+l)>1?l:1)},i})(ke);function Re(){var d=Ee,r=!1,i=1,l=1,o=[0],s=q,u=q,f=q,b=q,n=q;function c(t){return t.x0=t.y0=0,t.x1=i,t.y1=l,t.eachBefore(v),o=[0],r&&t.eachBefore(Ve),t}function v(t){var x=o[t.depth],y=t.x0+x,S=t.y0+x,p=t.x1-x,g=t.y1-x;p<y&&(y=p=(y+p)/2),g<S&&(S=g=(S+g)/2),t.x0=y,t.y0=S,t.x1=p,t.y1=g,t.children&&(x=o[t.depth+1]=s(t)/2,y+=n(t)-x,S+=u(t)-x,p-=f(t)-x,g-=b(t)-x,p<y&&(y=p=(y+p)/2),g<S&&(S=g=(S+g)/2),d(t,y,S,p,g))}return c.round=function(t){return arguments.length?(r=!!t,c):r},c.size=function(t){return arguments.length?(i=+t[0],l=+t[1],c):[i,l]},c.tile=function(t){return arguments.length?(d=Ae(t),c):d},c.padding=function(t){return arguments.length?c.paddingInner(t).paddingOuter(t):c.paddingInner()},c.paddingInner=function(t){return arguments.length?(s=typeof t=="function"?t:G(+t),c):s},c.paddingOuter=function(t){return arguments.length?c.paddingTop(t).paddingRight(t).paddingBottom(t).paddingLeft(t):c.paddingTop()},c.paddingTop=function(t){return arguments.length?(u=typeof t=="function"?t:G(+t),c):u},c.paddingRight=function(t){return arguments.length?(f=typeof t=="function"?t:G(+t),c):f},c.paddingBottom=function(t){return arguments.length?(b=typeof t=="function"?t:G(+t),c):b},c.paddingLeft=function(t){return arguments.length?(n=typeof t=="function"?t:G(+t),c):n},c}var _,re=(_=class{constructor(){this.nodes=[],this.levels=new Map,this.outerNodes=[],this.classes=new Map,this.setAccTitle=Se,this.getAccTitle=xe,this.setDiagramTitle=ve,this.getDiagramTitle=be,this.getAccDescription=Ce,this.setAccDescription=we}getNodes(){return this.nodes}getConfig(){const r=Te,i=te();return K({...r.treemap,...i.treemap??{}})}addNode(r,i){this.nodes.push(r),this.levels.set(r,i),i===0&&(this.outerNodes.push(r),this.root??(this.root=r))}getRoot(){return{name:"",children:this.outerNodes}}addClass(r,i){const l=this.classes.get(r)??{id:r,styles:[],textStyles:[]},o=i.replace(/\\,/g,"§§§").replace(/,/g,";").replace(/§§§/g,",").split(";");o&&o.forEach(s=>{Le(s)&&(l!=null&&l.textStyles?l.textStyles.push(s):l.textStyles=[s]),l!=null&&l.styles?l.styles.push(s):l.styles=[s]}),this.classes.set(r,l)}getClasses(){return this.classes}getStylesForClass(r){var i;return((i=this.classes.get(r))==null?void 0:i.styles)??[]}clear(){$e(),this.nodes=[],this.levels=new Map,this.outerNodes=[],this.classes=new Map,this.root=void 0}},C(_,"TreeMapDB"),_);function oe(d){if(!d.length)return[];const r=[],i=[];return d.forEach(l=>{const o={name:l.name,children:l.type==="Leaf"?void 0:[]};for(o.classSelector=l==null?void 0:l.classSelector,l!=null&&l.cssCompiledStyles&&(o.cssCompiledStyles=l.cssCompiledStyles),l.type==="Leaf"&&l.value!==void 0&&(o.value=l.value);i.length>0&&i[i.length-1].level>=l.level;)i.pop();if(i.length===0)r.push(o);else{const s=i[i.length-1].node;s.children?s.children.push(o):s.children=[o]}l.type!=="Leaf"&&i.push({node:o,level:l.level})}),r}C(oe,"buildHierarchy");var We=C((d,r)=>{fe(d,r);const i=[];for(const s of d.TreemapRows??[])s.$type==="ClassDefStatement"&&r.addClass(s.className??"",s.styleText??"");for(const s of d.TreemapRows??[]){const u=s.item;if(!u)continue;const f=s.indent?parseInt(s.indent):0,b=_e(u),n=u.classSelector?r.getStylesForClass(u.classSelector):[],c=n.length>0?n:void 0,v={level:f,name:b,type:u.$type,value:u.value,classSelector:u.classSelector,cssCompiledStyles:c};i.push(v)}const l=oe(i),o=C((s,u)=>{for(const f of s)r.addNode(f,u),f.children&&f.children.length>0&&o(f.children,u+1)},"addNodesRecursively");o(l,0)},"populate"),_e=C(d=>d.name?String(d.name):"","getItemName"),ie={parser:{yy:void 0},parse:C(async d=>{var r;try{const l=await Ne("treemap",d);ee.debug("Treemap AST:",l);const o=(r=ie.parser)==null?void 0:r.yy;if(!(o instanceof re))throw new Error("parser.parser?.yy was not a TreemapDB. This is due to a bug within Mermaid, please report this issue at https://github.com/mermaid-js/mermaid/issues.");We(l,o)}catch(i){throw ee.error("Error parsing treemap:",i),i}},"parse")},Be=10,W=10,X=25,Ie=C((d,r,i,l)=>{const o=l.db,s=o.getConfig(),u=s.padding??Be,f=o.getDiagramTitle(),b=o.getRoot(),{themeVariables:n}=te();if(!b)return;const c=f?30:0,v=ge(r),t=s.nodeWidth?s.nodeWidth*W:960,x=s.nodeHeight?s.nodeHeight*W:500,y=t,S=x+c;v.attr("viewBox",`0 0 ${y} ${S}`),ye(v,S,y,s.useMaxWidth);let p;try{const e=s.valueFormat||",";if(e==="$0,0")p=C(a=>"$"+O(",")(a),"valueFormat");else if(e.startsWith("$")&&e.includes(",")){const a=/\.\d+/.exec(e),h=a?a[0]:"";p=C(w=>"$"+O(","+h)(w),"valueFormat")}else if(e.startsWith("$")){const a=e.substring(1);p=C(h=>"$"+O(a||"")(h),"valueFormat")}else p=O(e)}catch(e){ee.error("Error creating format function:",e),p=O(",")}const g=J().range(["transparent",n.cScale0,n.cScale1,n.cScale2,n.cScale3,n.cScale4,n.cScale5,n.cScale6,n.cScale7,n.cScale8,n.cScale9,n.cScale10,n.cScale11]),z=J().range(["transparent",n.cScalePeer0,n.cScalePeer1,n.cScalePeer2,n.cScalePeer3,n.cScalePeer4,n.cScalePeer5,n.cScalePeer6,n.cScalePeer7,n.cScalePeer8,n.cScalePeer9,n.cScalePeer10,n.cScalePeer11]),$=J().range([n.cScaleLabel0,n.cScaleLabel1,n.cScaleLabel2,n.cScaleLabel3,n.cScaleLabel4,n.cScaleLabel5,n.cScaleLabel6,n.cScaleLabel7,n.cScaleLabel8,n.cScaleLabel9,n.cScaleLabel10,n.cScaleLabel11]);f&&v.append("text").attr("x",y/2).attr("y",c/2).attr("class","treemapTitle").attr("text-anchor","middle").attr("dominant-baseline","middle").text(f);const k=v.append("g").attr("transform",`translate(0, ${c})`).attr("class","treemapContainer"),B=Me(b).sum(e=>e.value??0).sort((e,a)=>(a.value??0)-(e.value??0)),ae=Re().size([t,x]).paddingTop(e=>e.children&&e.children.length>0?X+W:0).paddingInner(u).paddingLeft(e=>e.children&&e.children.length>0?W:0).paddingRight(e=>e.children&&e.children.length>0?W:0).paddingBottom(e=>e.children&&e.children.length>0?W:0).round(!0)(B),ce=ae.descendants().filter(e=>e.children&&e.children.length>0),I=k.selectAll(".treemapSection").data(ce).enter().append("g").attr("class","treemapSection").attr("transform",e=>`translate(${e.x0},${e.y0})`);I.append("rect").attr("width",e=>e.x1-e.x0).attr("height",X).attr("class","treemapSectionHeader").attr("fill","none").attr("fill-opacity",.6).attr("stroke-width",.6).attr("style",e=>e.depth===0?"display: none;":""),I.append("clipPath").attr("id",(e,a)=>`clip-section-${r}-${a}`).append("rect").attr("width",e=>Math.max(0,e.x1-e.x0-12)).attr("height",X),I.append("rect").attr("width",e=>e.x1-e.x0).attr("height",e=>e.y1-e.y0).attr("class",(e,a)=>`treemapSection section${a}`).attr("fill",e=>g(e.data.name)).attr("fill-opacity",.6).attr("stroke",e=>z(e.data.name)).attr("stroke-width",2).attr("stroke-opacity",.4).attr("style",e=>{if(e.depth===0)return"display: none;";const a=R({cssCompiledStyles:e.data.cssCompiledStyles});return a.nodeStyles+";"+a.borderStyles.join(";")}),I.append("text").attr("class","treemapSectionLabel").attr("x",6).attr("y",X/2).attr("dominant-baseline","middle").text(e=>e.depth===0?"":e.data.name).attr("font-weight","bold").attr("clip-path",(e,a)=>`url(#clip-section-${r}-${a})`).attr("style",e=>{if(e.depth===0)return"display: none;";const a="dominant-baseline: middle; font-size: 12px; fill:"+$(e.data.name)+"; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;",h=R({cssCompiledStyles:e.data.cssCompiledStyles});return a+h.labelStyles.replace("color:","fill:")}).each(function(e){if(e.depth===0)return;const a=Q(this),h=e.data.name;a.text(h);const w=e.x1-e.x0,L=6;let T;s.showValues!==!1&&e.value?T=w-10-30-10-L:T=w-L-6;const m=Math.max(15,T),M=a.node();if(M.getComputedTextLength()>m){let P=h;for(;P.length>0;){if(P=h.substring(0,P.length-1),P.length===0){a.text("..."),M.getComputedTextLength()>m&&a.text("");break}if(a.text(P+"..."),M.getComputedTextLength()<=m)break}}}),s.showValues!==!1&&I.append("text").attr("class","treemapSectionValue").attr("x",e=>e.x1-e.x0-10).attr("y",X/2).attr("text-anchor","end").attr("dominant-baseline","middle").text(e=>e.value?p(e.value):"").attr("font-style","italic").attr("style",e=>{if(e.depth===0)return"display: none;";const a="text-anchor: end; dominant-baseline: middle; font-size: 10px; fill:"+$(e.data.name)+"; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;",h=R({cssCompiledStyles:e.data.cssCompiledStyles});return a+h.labelStyles.replace("color:","fill:")});const le=ae.leaves(),F=le.length>20,de=F?16:38,Y=F?14:28,D=F?4:8,H=F?4:6,U=F?2:4,ne=F?8:10,Z=F?1:2,j=k.selectAll(".treemapLeafGroup").data(le).enter().append("g").attr("class",(e,a)=>`treemapNode treemapLeafGroup leaf${a}${e.data.classSelector?` ${e.data.classSelector}`:""}x`).attr("transform",e=>`translate(${e.x0},${e.y0})`);j.append("rect").attr("width",e=>e.x1-e.x0).attr("height",e=>e.y1-e.y0).attr("class","treemapLeaf").attr("fill",e=>e.parent?g(e.parent.data.name):g(e.data.name)).attr("style",e=>R({cssCompiledStyles:e.data.cssCompiledStyles}).nodeStyles).attr("fill-opacity",.3).attr("stroke",e=>e.parent?g(e.parent.data.name):g(e.data.name)).attr("stroke-width",3),j.append("clipPath").attr("id",(e,a)=>`clip-${r}-${a}`).append("rect").attr("width",e=>Math.max(0,e.x1-e.x0-4)).attr("height",e=>Math.max(0,e.y1-e.y0-4)),j.append("text").attr("class","treemapLabel").attr("x",e=>(e.x1-e.x0)/2).attr("y",e=>(e.y1-e.y0)/2).attr("style",e=>{const a=`text-anchor: middle; dominant-baseline: middle; font-size: ${de}px;fill:`+$(e.data.name)+";",h=R({cssCompiledStyles:e.data.cssCompiledStyles});return a+h.labelStyles.replace("color:","fill:")}).attr("clip-path",(e,a)=>`url(#clip-${r}-${a})`).text(e=>e.data.name).each(function(e){const a=Q(this),h=e.x1-e.x0,w=e.y1-e.y0,L=a.node(),T=h-2*U,E=w-2*U;if(T<ne||E<ne){a.style("display","none");return}let m=parseInt(a.style("font-size"),10);const M=.6;for(;L.getComputedTextLength()>T&&m>D;)m--,a.style("font-size",`${m}px`);let N=Math.max(H,Math.min(Y,Math.round(m*M))),A=m+Z+N;for(;A>E&&m>D&&(m--,N=Math.max(H,Math.min(Y,Math.round(m*M))),!(N<H&&m===D));)a.style("font-size",`${m}px`),A=m+Z+N;a.style("font-size",`${m}px`),F?(m<D||E<D)&&a.style("display","none"):(L.getComputedTextLength()>T||m<D||E<m)&&a.style("display","none")}),s.showValues!==!1&&j.append("text").attr("class","treemapValue").attr("x",a=>(a.x1-a.x0)/2).attr("y",function(a){return(a.y1-a.y0)/2}).attr("style",a=>{const h=`text-anchor: middle; dominant-baseline: hanging; font-size: ${Y}px;fill:`+$(a.data.name)+";",w=R({cssCompiledStyles:a.data.cssCompiledStyles});return h+w.labelStyles.replace("color:","fill:")}).attr("clip-path",(a,h)=>`url(#clip-${r}-${h})`).text(a=>a.value?p(a.value):"").each(function(a){const h=Q(this),w=this.parentNode;if(!w){h.style("display","none");return}const L=Q(w).select(".treemapLabel");if(L.empty()||L.style("display")==="none"){h.style("display","none");return}const T=parseFloat(L.style("font-size")),m=Math.max(H,Math.min(Y,Math.round(T*.6)));h.style("font-size",`${m}px`);const N=(a.y1-a.y0)/2+T/2+Z;h.attr("y",N);const A=a.x1-a.x0,se=a.y1-a.y0-4,he=A-2*U;h.node().getComputedTextLength()>he||N+m>se||m<H?h.style("display","none"):h.style("display",null)});const pe=s.diagramPadding??8;Fe(v,pe,"flowchart",(s==null?void 0:s.useMaxWidth)||!1)},"draw"),He=C(function(d,r){return r.db.getClasses()},"getClasses"),Oe={draw:Ie,getClasses:He},qe={sectionStrokeColor:"black",sectionStrokeWidth:"1",sectionFillColor:"#efefef",leafStrokeColor:"black",leafStrokeWidth:"1",leafFillColor:"#efefef",labelFontSize:"12px",valueFontSize:"10px",titleFontSize:"14px"},Ge=C(({treemap:d}={})=>{const r=me(),i=te(),l=K(r,i.themeVariables),o=K(qe,d),s=o.titleColor??l.titleColor,u=o.labelColor??l.textColor,f=o.valueColor??l.textColor;return`
2
2
  .treemapNode.section {
3
3
  stroke: ${o.sectionStrokeColor};
4
4
  stroke-width: ${o.sectionStrokeWidth};
@@ -21,4 +21,4 @@ import{p as fe}from"./explorer-chunk-JWPE2WC7.js";import{_ as C,G as me,z as te,
21
21
  fill: ${s};
22
22
  font-size: ${o.titleFontSize};
23
23
  }
24
- `},"getStyles"),Xe=qe,et={parser:ie,get db(){return new re},renderer:Oe,styles:Xe};export{et as diagram};
24
+ `},"getStyles"),Xe=Ge,et={parser:ie,get db(){return new re},renderer:Oe,styles:Xe};export{et as diagram};
@@ -0,0 +1,24 @@
1
+ import{p as P}from"./explorer-chunk-JWPE2WC7.js";import{_ as f,P as B,S as z,d as E,l as $,b as F,a as A,t as W,v as _,g as N,s as L,N as M,Q as Y,B as I}from"./explorer-mermaid.core.js";import{p as O}from"./explorer-cynefin-EF2NZ3EQ.js";import"./explorer.js";var j=Y.packet,b,C=(b=class{constructor(){this.packet=[],this.setAccTitle=F,this.getAccTitle=A,this.setDiagramTitle=W,this.getDiagramTitle=_,this.getAccDescription=N,this.setAccDescription=L}getConfig(){const t=B({...j,...M().packet});return t.showBits&&(t.paddingY+=10),t}getPacket(){return this.packet}pushWord(t){t.length>0&&this.packet.push(t)}clear(){I(),this.packet=[]}},f(b,"PacketDB"),b),G=1e4,H=f((e,t)=>{P(e,t);let s=-1,r=[],i=1;const{bitsPerRow:l}=t.getConfig();for(let{start:a,end:o,bits:d,label:g}of e.blocks){if(a!==void 0&&o!==void 0&&o<a)throw new Error(`Packet block ${a} - ${o} is invalid. End must be greater than start.`);if(a??(a=s+1),a!==s+1)throw new Error(`Packet block ${a} - ${o??a} is not contiguous. It should start from ${s+1}.`);if(d===0)throw new Error(`Packet block ${a} is invalid. Cannot have a zero bit field.`);for(o??(o=a+(d??1)-1),d??(d=o-a+1),s=o,$.debug(`Packet block ${a} - ${s} with label ${g}`);r.length<=l+1&&t.getPacket().length<G;){const[c,p]=K({start:a,end:o,bits:d,label:g},i,l);if(r.push(c),c.end+1===i*l&&(t.pushWord(r),r=[],i++),!p)break;({start:a,end:o,bits:d,label:g}=p)}}t.pushWord(r)},"populate"),K=f((e,t,s)=>{if(e.start===void 0)throw new Error("start should have been set during first phase");if(e.end===void 0)throw new Error("end should have been set during first phase");if(e.start>e.end)throw new Error(`Block start ${e.start} is greater than block end ${e.end}.`);if(e.end+1<=t*s)return[e,void 0];const r=t*s-1,i=t*s;return[{start:e.start,end:r,label:e.label,bits:r-e.start},{start:i,end:e.end,label:e.label,bits:e.end-i}]},"getNextFittingBlock"),S={parser:{yy:void 0},parse:f(async e=>{var r;const t=await O("packet",e),s=(r=S.parser)==null?void 0:r.yy;if(!(s instanceof C))throw new Error("parser.parser?.yy was not a PacketDB. This is due to a bug within Mermaid, please report this issue at https://github.com/mermaid-js/mermaid/issues.");$.debug(t),H(t,s)},"parse")},Q=f((e,t,s,r)=>{const i=r.db,l=i.getConfig(),{rowHeight:a,paddingY:o,bitWidth:d,bitsPerRow:g}=l,c=i.getPacket(),p=i.getDiagramTitle(),m=a+o,n=m*(c.length+1)-(p?0:a),h=d*g+2,k=z(t);k.attr("viewBox",`0 0 ${h} ${n}`),E(k,n,h,l.useMaxWidth);for(const[x,u]of c.entries())U(k,u,x,l);k.append("text").text(p).attr("x",h/2).attr("y",n-m/2).attr("dominant-baseline","middle").attr("text-anchor","middle").attr("class","packetTitle")},"draw"),U=f((e,t,s,{rowHeight:r,paddingX:i,paddingY:l,bitWidth:a,bitsPerRow:o,showBits:d,bitOrder:g})=>{const c=e.append("g"),p=s*(r+l)+l,m=g==="descending";for(const n of t){const h=n.end-n.start+1,k=n.start%o,u=(m?o-k-h:k)*a+1,w=h*a-i;if(c.append("rect").attr("x",u).attr("y",p).attr("width",w).attr("height",r).attr("class","packetBlock"),c.append("text").attr("x",u+w/2).attr("y",p+r/2).attr("class","packetLabel").attr("dominant-baseline","middle").attr("text-anchor","middle").text(n.label),!d)continue;const[D,T]=m?[n.end,n.start]:[n.start,n.end],v=h===1,y=p-2;c.append("text").attr("x",u+(v?w/2:0)).attr("y",y).attr("class","packetByte start").attr("dominant-baseline","auto").attr("text-anchor",v?"middle":"start").text(D),v||c.append("text").attr("x",u+w).attr("y",y).attr("class","packetByte end").attr("dominant-baseline","auto").attr("text-anchor","end").text(T)}},"drawWord"),X={draw:Q},q={byteFontSize:"10px",startByteColor:"black",endByteColor:"black",labelColor:"black",labelFontSize:"12px",titleColor:"black",titleFontSize:"14px",blockStrokeColor:"black",blockStrokeWidth:"1",blockFillColor:"#efefef"},J=f(({packet:e}={})=>{const t=B(q,e);return`
2
+ .packetByte {
3
+ font-size: ${t.byteFontSize};
4
+ }
5
+ .packetByte.start {
6
+ fill: ${t.startByteColor};
7
+ }
8
+ .packetByte.end {
9
+ fill: ${t.endByteColor};
10
+ }
11
+ .packetLabel {
12
+ fill: ${t.labelColor};
13
+ font-size: ${t.labelFontSize};
14
+ }
15
+ .packetTitle {
16
+ fill: ${t.titleColor};
17
+ font-size: ${t.titleFontSize};
18
+ }
19
+ .packetBlock {
20
+ stroke: ${t.blockStrokeColor};
21
+ stroke-width: ${t.blockStrokeWidth};
22
+ fill: ${t.blockFillColor};
23
+ }
24
+ `},"styles"),et={parser:S,get db(){return new C},renderer:X,styles:J};export{et as diagram};
@@ -1,7 +1,7 @@
1
- import{I as W}from"./explorer-chunk-2Q5K7J3B.js";import{p as X}from"./explorer-chunk-JWPE2WC7.js";import{o as O,b as G,s as Y,p as F,g as P,a as q,_ as g,B as A,l as E,F as Z,d as U,z as D,q as j,i as J,a4 as K,D as Q,a5 as ee}from"./explorer-mermaid.core.js";import{p as te}from"./explorer-cynefin-OW5HDTMX.js";import"./explorer.js";var L=/[─━│┃└┗├┣]/,_=/[└┗├┣]/,re=/[─━]/,V=/^[\s│┃]+$/,$=/^\s*(title[\t ]|accTitle[\t ]*:|accDescr[\t ]*[:{])/,k=/^\s*%%/,ne=" ";function S(r){return r.some(t=>L.test(t))}g(S,"isBoxDrawingFormat");function M(r){for(const t of r){const e=_.exec(t);if(e!=null&&e.index&&e.index>0)return e.index}return 4}g(M,"inferSegmentWidth");function R(r,t){return r.replace(/\bline\s+(\d+)\b/gi,(e,i)=>{const s=parseInt(i,10),o=t.get(s);return o?`line ${o}`:e})}g(R,"remapErrorLines");function H(r){const t=r.split(`
2
- `),e=new Map;let i=-1;for(const[d,l]of t.entries())if(l.trim()==="treeView-beta"){i=d;break}if(i===-1)return{text:r,lineMap:e};const s=[];for(let d=i+1;d<t.length;d++){const l=t[d];l.trim()===""||k.test(l)||$.test(l)||V.test(l)||s.push(l.replace(/\t/g," "))}if(!S(s))return{text:r,lineMap:e};const o=M(s),n=[];let c=0;for(let d=0;d<=i;d++)n.push(t[d]),c++,e.set(c,d+1);for(let d=i+1;d<t.length;d++){const l=t[d],u=l.trim(),a=d+1;if(u===""){n.push(l),c++,e.set(c,a);continue}if(k.test(l)){n.push(l),c++,e.set(c,a);continue}if($.test(l)){n.push(l),c++,e.set(c,a);continue}if(V.test(l))continue;const p=l.replace(/\t/g," "),h=_.exec(p);if((h==null?void 0:h.index)!==void 0){const m=h.index,w=Math.round(m/o)+1;let f=m+1;for(;f<p.length&&re.test(p[f]);)f++;for(;f<p.length&&p[f]===" ";)f++;const v=p.slice(f).trimEnd();if(!v)throw new Error(`Line ${a}: Empty node — expected a filename or directory name after the box-drawing prefix`);const b=ne.repeat(w);n.push(b+v),c++,e.set(c,a)}else{if(/^[\s─━│┃└┗├┣]+$/.test(p))continue;if(L.test(p))n.push(l),c++,e.set(c,a);else{if(/^\s+/.test(p))throw new Error(`Line ${a}: Unexpected indentation without box-drawing characters. In box-drawing format, use ├── or └── prefixes for indented nodes.`);n.push(l),c++,e.set(c,a)}}}return{text:n.join(`
3
- `),lineMap:e}}g(H,"preprocessBoxDrawing");var x=new W(()=>({cnt:1,stack:[{id:0,level:-1,name:"/",nodeType:"directory",children:[]}]})),ie=g(()=>{x.reset(),j()},"clear"),oe=g(()=>x.records.stack[0],"getRoot"),se=g(()=>x.records.cnt,"getCount"),ae=Q.treeView,ce=g(()=>A(ae,D().treeView),"getConfig"),le=g((r,t,e,i,s,o)=>{for(;r<=x.records.stack[x.records.stack.length-1].level;)x.records.stack.pop();const n={id:x.records.cnt++,level:r,name:t,nodeType:e,icon:s,cssClass:i,description:o,children:[]};x.records.stack[x.records.stack.length-1].children.push(n),x.records.stack.push(n)},"addNode"),de={clear:ie,addNode:le,getRoot:oe,getCount:se,getConfig:ce,getAccTitle:q,getAccDescription:P,getDiagramTitle:F,setAccDescription:Y,setAccTitle:G,setDiagramTitle:O},I=de,he=g(r=>{X(r,I);for(const t of r.nodes){const e=typeof t.indent=="number"?t.indent:0;let i=t.name;const s=i.endsWith("/");s&&(i=i.slice(0,-1));const o=s?"directory":"file",n=t.classAnnotation||void 0,c=t.iconAnnotation,d=c!==void 0?c||"none":void 0,l=t.descAnnotation||void 0,u=l?J(l,D()):void 0;I.addNode(e,i,o,n,d,u)}},"populate"),pe={parse:g(async r=>{const{text:t,lineMap:e}=H(r);try{const i=await te("treeView",t);E.debug(i),he(i)}catch(i){throw e.size>0&&i instanceof Error&&(i.message=R(i.message,e)),i}},"parse")},C={prefix:"mermaid-treeview",height:24,width:24,icons:{folder:{body:'<path fill="currentColor" d="M10.59 4.59A2 2 0 0 0 9.17 4H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.17z"/>'},file:{body:'<path fill="currentColor" fill-rule="evenodd" d="M6 2a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8.83a2 2 0 0 0-.59-1.42l-4.82-4.82A2 2 0 0 0 13.17 2H6Zm7.5 1.9l4.6 4.6h-3.6a1 1 0 0 1-1-1V3.9Z" clip-rule="evenodd"/>'}}};function z(r,t){var s;const e=(s=t==null?void 0:t.filenameIcons)==null?void 0:s[r];if(e)return e;const i=r.lastIndexOf(".");if(i>0){const o=r.substring(i).toLowerCase(),n=t==null?void 0:t.extensionIcons;return(n==null?void 0:n[o])??(n==null?void 0:n[o.slice(1)])}}g(z,"detectIcon");function y(r,t){return r.includes(":")?r:r in C.icons||!t?`${C.prefix}:${r}`:`${t}:${r}`}g(y,"qualifyIcon");function T(r,t){if(r.icon!=="none"){if(r.icon)return y(r.icon,t.defaultIconPack);if(t.showIcons){if(r.nodeType==="file"){const e=z(r.name,t);if(e==="none")return;if(e)return y(e,t.defaultIconPack)}return`${C.prefix}:${r.nodeType==="directory"?"folder":"file"}`}}}g(T,"getNodeIcon");ee([{name:C.prefix,icons:C}]);var B=14,ge=4,fe=16,ue=g(async(r,t)=>{const e=[],i=g(o=>{const n=T(o,t);n&&e.push({icon:n,node:o}),o.children.forEach(i)},"collect");i(r);const s=await Promise.all(e.map(async({icon:o,node:n})=>({id:n.id,svg:await K(o,{height:B,width:B})})));return new Map(s.map(({id:o,svg:n})=>[o,n]))},"resolveNodeIcons"),we=g((r,t,e,i,s,o)=>{var b;const n=i.append("g");let c="treeView-node-label";e.nodeType==="directory"&&(c+=" treeView-node-dir"),e.cssClass&&(c+=` ${e.cssClass}`);const d=B+ge,l=T(e,s),u=l!==void 0;l&&n.append("g").attr("class","treeView-node-icon").attr("transform",`translate(${r+s.paddingX}, ${t+s.paddingY})`).html(o.get(e.id)??"");const a=n.append("text").text(e.name).attr("dominant-baseline","middle").attr("class",c),{height:p,width:h}=a.node().getBBox(),m=p+s.paddingY*2,w=r+s.paddingX+(u?d:0);a.attr("x",w),a.attr("y",t+m/2);const f=w+h,v=h+s.paddingX*2+(u?d:0);return e.BBox={x:r,y:t,width:v,height:m},(b=e.cssClass)!=null&&b.split(/\s+/).includes("highlight")&&n.insert("rect",":first-child").attr("x",r).attr("y",t+1).attr("width",0).attr("height",m-2).attr("rx",3).attr("class","treeView-highlight-bg"),{node:e,nodeGroup:n,labelRightEdge:f,centerY:t+m/2}},"positionLabel"),N=g((r,t,e,i,s,o)=>r.append("line").attr("x1",t).attr("y1",e).attr("x2",i).attr("y2",s).attr("stroke-width",o).attr("class","treeView-node-line"),"positionLine"),me=g((r,t,e,i)=>{var u;let s=0,o=0;const n=[],c=g((a,p,h,m)=>{const w=m*(h.rowIndent+h.paddingX),f=we(w,s,p,a,h,i);n.push(f);const{height:v,width:b}=p.BBox;N(a,w-h.rowIndent,s+v/2,w,s+v/2,h.lineThickness),o=Math.max(o,w+b),s+=v},"drawNode"),d=g((a,p=0)=>{c(r,a,e,p),a.children.forEach(f=>{d(f,p+1)});const{x:h,y:m,height:w}=a.BBox;if(a.children.length){const{y:f,height:v}=a.children[a.children.length-1].BBox;N(r,h+e.paddingX,m+w,h+e.paddingX,f+v/2+e.lineThickness/2,e.lineThickness)}},"processNode");d(t);const l=n.filter(a=>a.node.description);if(l.length>0){const p=Math.max(...n.map(h=>h.labelRightEdge))+fe;for(const h of l){const w=h.nodeGroup.append("text").text(h.node.description).attr("dominant-baseline","middle").attr("class","treeView-node-description").attr("x",p).attr("y",h.centerY).node().getBBox();o=Math.max(o,p+w.width+e.paddingX)}}for(const a of n)if((u=a.node.cssClass)!=null&&u.split(/\s+/).includes("highlight")){const p=a.nodeGroup.select(".treeView-highlight-bg");if(!p.empty()){const h=o-a.node.BBox.x+8;p.attr("width",h),o=Math.max(o,a.node.BBox.x+h+2)}}return{totalHeight:s,totalWidth:o}},"drawTree"),ve=g(async(r,t,e,i)=>{E.debug(`Rendering treeView diagram
4
- `+r);const s=i.db,o=s.getRoot(),n=s.getConfig(),c=Z(t),d=c.append("g");d.attr("class","tree-view");const l=await ue(o,n),{totalHeight:u,totalWidth:a}=me(d,o,n,l);c.attr("viewBox",`-${n.lineThickness/2} 0 ${a} ${u}`),U(c,u,a,n.useMaxWidth)},"draw"),xe={draw:ve},be=xe,Ce={labelFontSize:"16px",labelColor:"black",lineColor:"black",iconColor:"#546e7a",descriptionColor:"#6a9955",highlightBg:"rgba(255, 193, 7, 0.15)",highlightStroke:"#ffc107"},Ie=g(({treeView:r})=>{const{labelFontSize:t,labelColor:e,lineColor:i,iconColor:s,descriptionColor:o,highlightBg:n,highlightStroke:c}=A(Ce,r);return`
1
+ import{I as X}from"./explorer-chunk-2Q5K7J3B.js";import{p as z}from"./explorer-chunk-JWPE2WC7.js";import{t as O,b as G,s as P,v as Y,g as F,a as Z,_ as g,P as A,l as E,S as j,d as q,N as L,B as U,j as Q,aa as J,Q as K,ab as ee}from"./explorer-mermaid.core.js";import{p as te}from"./explorer-cynefin-EF2NZ3EQ.js";import"./explorer.js";var D=/[─━│┃└┗├┣]/,_=/[└┗├┣]/,re=/[─━]/,T=/^[\s│┃]+$/,V=/^\s*(title[\t ]|accTitle[\t ]*:|accDescr[\t ]*[:{])/,$=/^\s*%%/,ne=" ";function S(r){return r.some(t=>D.test(t))}g(S,"isBoxDrawingFormat");function M(r){for(const t of r){const e=_.exec(t);if(e!=null&&e.index&&e.index>0)return e.index}return 4}g(M,"inferSegmentWidth");function R(r,t){return r.replace(/\bline\s+(\d+)\b/gi,(e,i)=>{const s=parseInt(i,10),o=t.get(s);return o?`line ${o}`:e})}g(R,"remapErrorLines");function H(r){const t=r.split(`
2
+ `),e=new Map;let i=-1;for(const[d,l]of t.entries())if(l.trim()==="treeView-beta"){i=d;break}if(i===-1)return{text:r,lineMap:e};const s=[];for(let d=i+1;d<t.length;d++){const l=t[d];l.trim()===""||$.test(l)||V.test(l)||T.test(l)||s.push(l.replace(/\t/g," "))}if(!S(s))return{text:r,lineMap:e};const o=M(s),n=[];let c=0;for(let d=0;d<=i;d++)n.push(t[d]),c++,e.set(c,d+1);for(let d=i+1;d<t.length;d++){const l=t[d],u=l.trim(),a=d+1;if(u===""){n.push(l),c++,e.set(c,a);continue}if($.test(l)){n.push(l),c++,e.set(c,a);continue}if(V.test(l)){n.push(l),c++,e.set(c,a);continue}if(T.test(l))continue;const p=l.replace(/\t/g," "),h=_.exec(p);if((h==null?void 0:h.index)!==void 0){const m=h.index,w=Math.round(m/o)+1;let f=m+1;for(;f<p.length&&re.test(p[f]);)f++;for(;f<p.length&&p[f]===" ";)f++;const v=p.slice(f).trimEnd();if(!v)throw new Error(`Line ${a}: Empty node — expected a filename or directory name after the box-drawing prefix`);const b=ne.repeat(w);n.push(b+v),c++,e.set(c,a)}else{if(/^[\s─━│┃└┗├┣]+$/.test(p))continue;if(D.test(p))n.push(l),c++,e.set(c,a);else{if(/^\s+/.test(p))throw new Error(`Line ${a}: Unexpected indentation without box-drawing characters. In box-drawing format, use ├── or └── prefixes for indented nodes.`);n.push(l),c++,e.set(c,a)}}}return{text:n.join(`
3
+ `),lineMap:e}}g(H,"preprocessBoxDrawing");var x=new X(()=>({cnt:1,stack:[{id:0,level:-1,name:"/",nodeType:"directory",children:[]}]})),ie=g(()=>{x.reset(),U()},"clear"),oe=g(()=>x.records.stack[0],"getRoot"),se=g(()=>x.records.cnt,"getCount"),ae=K.treeView,ce=g(()=>A(ae,L().treeView),"getConfig"),le=g((r,t,e,i,s,o)=>{for(;r<=x.records.stack[x.records.stack.length-1].level;)x.records.stack.pop();const n={id:x.records.cnt++,level:r,name:t,nodeType:e,icon:s,cssClass:i,description:o,children:[]};x.records.stack[x.records.stack.length-1].children.push(n),x.records.stack.push(n)},"addNode"),de={clear:ie,addNode:le,getRoot:oe,getCount:se,getConfig:ce,getAccTitle:Z,getAccDescription:F,getDiagramTitle:Y,setAccDescription:P,setAccTitle:G,setDiagramTitle:O},I=de,he=g(r=>{z(r,I);for(const t of r.nodes){const e=typeof t.indent=="number"?t.indent:0;let i=t.name;const s=i.endsWith("/");s&&(i=i.slice(0,-1));const o=s?"directory":"file",n=t.classAnnotation||void 0,c=t.iconAnnotation,d=c!==void 0?c||"none":void 0,l=t.descAnnotation||void 0,u=l?Q(l,L()):void 0;I.addNode(e,i,o,n,d,u)}},"populate"),pe={parse:g(async r=>{const{text:t,lineMap:e}=H(r);try{const i=await te("treeView",t);E.debug(i),he(i)}catch(i){throw e.size>0&&i instanceof Error&&(i.message=R(i.message,e)),i}},"parse")},C={prefix:"mermaid-treeview",height:24,width:24,icons:{folder:{body:'<path fill="currentColor" d="M10.59 4.59A2 2 0 0 0 9.17 4H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.17z"/>'},file:{body:'<path fill="currentColor" fill-rule="evenodd" d="M6 2a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8.83a2 2 0 0 0-.59-1.42l-4.82-4.82A2 2 0 0 0 13.17 2H6Zm7.5 1.9l4.6 4.6h-3.6a1 1 0 0 1-1-1V3.9Z" clip-rule="evenodd"/>'}}};function W(r,t){var s;const e=(s=t==null?void 0:t.filenameIcons)==null?void 0:s[r];if(e)return e;const i=r.lastIndexOf(".");if(i>0){const o=r.substring(i).toLowerCase(),n=t==null?void 0:t.extensionIcons;return(n==null?void 0:n[o])??(n==null?void 0:n[o.slice(1)])}}g(W,"detectIcon");function y(r,t){return r.includes(":")?r:r in C.icons||!t?`${C.prefix}:${r}`:`${t}:${r}`}g(y,"qualifyIcon");function N(r,t){if(r.icon!=="none"){if(r.icon)return y(r.icon,t.defaultIconPack);if(t.showIcons){if(r.nodeType==="file"){const e=W(r.name,t);if(e==="none")return;if(e)return y(e,t.defaultIconPack)}return`${C.prefix}:${r.nodeType==="directory"?"folder":"file"}`}}}g(N,"getNodeIcon");ee([{name:C.prefix,icons:C}]);var B=14,ge=4,fe=16,ue=g(async(r,t)=>{const e=[],i=g(o=>{const n=N(o,t);n&&e.push({icon:n,node:o}),o.children.forEach(i)},"collect");i(r);const s=await Promise.all(e.map(async({icon:o,node:n})=>({id:n.id,svg:await J(o,{height:B,width:B})})));return new Map(s.map(({id:o,svg:n})=>[o,n]))},"resolveNodeIcons"),we=g((r,t,e,i,s,o)=>{var b;const n=i.append("g");let c="treeView-node-label";e.nodeType==="directory"&&(c+=" treeView-node-dir"),e.cssClass&&(c+=` ${e.cssClass}`);const d=B+ge,l=N(e,s),u=l!==void 0;l&&n.append("g").attr("class","treeView-node-icon").attr("transform",`translate(${r+s.paddingX}, ${t+s.paddingY})`).html(o.get(e.id)??"");const a=n.append("text").text(e.name).attr("dominant-baseline","middle").attr("class",c),{height:p,width:h}=a.node().getBBox(),m=p+s.paddingY*2,w=r+s.paddingX+(u?d:0);a.attr("x",w),a.attr("y",t+m/2);const f=w+h,v=h+s.paddingX*2+(u?d:0);return e.BBox={x:r,y:t,width:v,height:m},(b=e.cssClass)!=null&&b.split(/\s+/).includes("highlight")&&n.insert("rect",":first-child").attr("x",r).attr("y",t+1).attr("width",0).attr("height",m-2).attr("rx",3).attr("class","treeView-highlight-bg"),{node:e,nodeGroup:n,labelRightEdge:f,centerY:t+m/2}},"positionLabel"),k=g((r,t,e,i,s,o)=>r.append("line").attr("x1",t).attr("y1",e).attr("x2",i).attr("y2",s).attr("stroke-width",o).attr("class","treeView-node-line"),"positionLine"),me=g((r,t,e,i)=>{var u;let s=0,o=0;const n=[],c=g((a,p,h,m)=>{const w=m*(h.rowIndent+h.paddingX),f=we(w,s,p,a,h,i);n.push(f);const{height:v,width:b}=p.BBox;k(a,w-h.rowIndent,s+v/2,w,s+v/2,h.lineThickness),o=Math.max(o,w+b),s+=v},"drawNode"),d=g((a,p=0)=>{c(r,a,e,p),a.children.forEach(f=>{d(f,p+1)});const{x:h,y:m,height:w}=a.BBox;if(a.children.length){const{y:f,height:v}=a.children[a.children.length-1].BBox;k(r,h+e.paddingX,m+w,h+e.paddingX,f+v/2+e.lineThickness/2,e.lineThickness)}},"processNode");d(t);const l=n.filter(a=>a.node.description);if(l.length>0){const p=Math.max(...n.map(h=>h.labelRightEdge))+fe;for(const h of l){const w=h.nodeGroup.append("text").text(h.node.description).attr("dominant-baseline","middle").attr("class","treeView-node-description").attr("x",p).attr("y",h.centerY).node().getBBox();o=Math.max(o,p+w.width+e.paddingX)}}for(const a of n)if((u=a.node.cssClass)!=null&&u.split(/\s+/).includes("highlight")){const p=a.nodeGroup.select(".treeView-highlight-bg");if(!p.empty()){const h=o-a.node.BBox.x+8;p.attr("width",h),o=Math.max(o,a.node.BBox.x+h+2)}}return{totalHeight:s,totalWidth:o}},"drawTree"),ve=g(async(r,t,e,i)=>{E.debug(`Rendering treeView diagram
4
+ `+r);const s=i.db,o=s.getRoot(),n=s.getConfig(),c=j(t),d=c.append("g");d.attr("class","tree-view");const l=await ue(o,n),{totalHeight:u,totalWidth:a}=me(d,o,n,l);c.attr("viewBox",`-${n.lineThickness/2} 0 ${a} ${u}`),q(c,u,a,n.useMaxWidth)},"draw"),xe={draw:ve},be=xe,Ce={labelFontSize:"16px",labelColor:"black",lineColor:"black",iconColor:"#546e7a",descriptionColor:"#6a9955",highlightBg:"rgba(255, 193, 7, 0.15)",highlightStroke:"#ffc107"},Ie=g(({treeView:r})=>{const{labelFontSize:t,labelColor:e,lineColor:i,iconColor:s,descriptionColor:o,highlightBg:n,highlightStroke:c}=A(Ce,r);return`
5
5
  .treeView-node-label {
6
6
  font-size: ${t};
7
7
  fill: ${e};
@@ -27,4 +27,4 @@ import{I as W}from"./explorer-chunk-2Q5K7J3B.js";import{p as X}from"./explorer-c
27
27
  stroke: ${c};
28
28
  stroke-width: 1;
29
29
  }
30
- `},"styles"),ye=Ie,Ne={db:I,renderer:be,parser:pe,styles:ye};export{Ne as diagram};
30
+ `},"styles"),ye=Ie,ke={db:I,renderer:be,parser:pe,styles:ye};export{ke as diagram};
@@ -0,0 +1,3 @@
1
+ import{p as oe}from"./explorer-chunk-JWPE2WC7.js";import{v as se,t as de,s as le,g as ce,a as me,b as ue,_ as o,l as g,c as D,O as xe,B as fe,P as ge,N as $,Q as he,j as S,w as k,ac as pe}from"./explorer-mermaid.core.js";import{p as be,i as ve}from"./explorer-cynefin-EF2NZ3EQ.js";import{s as we}from"./explorer.js";var N="position frame",T="frame positioned",B="position relation",C="relation positioned",ye=o(function(e){g.debug("options str",e)},"setOptions"),Pe=o(function(){return{}},"getOptions"),Se=o(function(){O(),fe()},"clear");function O(){y={}}o(O,"reset");var ke=he.eventmodeling,Me=o(()=>ge({...ke,...$().eventmodeling}),"getConfig"),y={};function W(){let e=Be;const{ast:n}=y,t=R();if(!n)throw new Error("No data for EventModel");return n.frames.forEach((i,a)=>{const r=X(i,n.dataEntities,t);e=w(e,{$kind:N,index:a,frame:i,textProps:r});let d;Q(i)?(g.debug("source frame",i.sourceFrames),d=n.frames.filter(l=>i.sourceFrames.some(c=>c.$refText===l.name)),d.forEach(l=>{e=w(e,{$kind:B,index:a,frame:i,sourceFrame:l})})):e=w(e,{$kind:B,index:a,frame:i})}),e={...e,sortedSwimlanesArray:A(e.swimlanes)},e}o(W,"getState");function I(e){var t;y.ast=void 0;const n=new Set;for(const i of e.frames){if(n.has(i.name)){const a=(t=i.$cstNode)==null?void 0:t.range.start.line,r=a===void 0?"":` on line ${a+1}`;throw new Error(`Duplicate event modeling frame ID "${i.name}"${r}`)}n.add(i.name)}y.ast=e}o(I,"setAst");var s={swimlaneMinHeight:70,swimlanePadding:15,swimlaneGap:10,boxPadding:10,boxOverlap:90,boxDefaultY:0,boxMinWidth:80,boxMaxWidth:450,boxMinHeight:80,boxMaxHeight:750,contentStartX:250,textMaxWidth:430,boxTextFontWeight:"bold",boxTextPadding:10,swimlaneTextFontWeight:"bold",labelUiAutomation:"UI/Automation",labelUiAutomationPrefix:"UI/A: ",labelCommandReadModel:"Command/Read Model",labelCommandReadModelPrefix:"C/RM: ",labelEvents:"Events",labelEventsPrefix:"Stream: "};function R(){return s}o(R,"getDiagramProps");var Be={boxes:[],swimlanes:{},relations:[],maxR:0,sortedSwimlanesArray:[]};function H(e){const n=e.split(".");if(n.length===2)return n[0]}o(H,"extractNamespace");function U(e){const n=e.split(".");return n.length===2?n[1]:e}o(U,"extractName");function _(e,n){if(!(!n||n.length===0))return Object.values(e).find(t=>t.namespace===n)}o(_,"findSwimlaneByNamespace");function v(e,n,t){return Math.max(n,...Object.keys(e).filter(i=>{const a=Number.parseInt(i);return a>n&&a<t}).map(i=>Number.parseInt(i)))+1}o(v,"findNextAvailableIndex");function V(e,n){const t=H(e.entityIdentifier),i=_(n,t);switch(e.modelEntityType){case"ui":case"pcr":case"processor":return i?{index:i.index,label:i.namespace||s.labelUiAutomation}:t?{index:v(n,0,100),label:s.labelUiAutomationPrefix+t}:{index:0,label:s.labelUiAutomation};case"rmo":case"readmodel":case"cmd":case"command":return i?{index:i.index,label:i.namespace||s.labelCommandReadModel}:t?{index:v(n,100,200),label:s.labelCommandReadModelPrefix+t}:{index:100,label:s.labelCommandReadModel};case"evt":case"event":default:return i?{index:i.index,label:i.namespace||s.labelEvents}:t?{index:v(n,200,300),label:s.labelEventsPrefix+t}:{index:200,label:s.labelEvents}}}o(V,"calculateSwimlaneProps");function L(e){const{themeVariables:n}=$();switch(e.modelEntityType){case"ui":return{fill:n.emUiFill??"white",stroke:n.emUiStroke??"#dbdada"};case"pcr":case"processor":return{fill:n.emProcessorFill??"#edb3f6",stroke:n.emProcessorStroke??"#b88cbf"};case"rmo":case"readmodel":return{fill:n.emReadModelFill??"#d3f1a2",stroke:n.emReadModelStroke??"#a3b732"};case"cmd":case"command":return{fill:n.emCommandFill??"#bcd6fe",stroke:n.emCommandStroke??"#679ac3"};case"evt":case"event":return{fill:n.emEventFill??"#ffb778",stroke:n.emEventStroke??"#c19a0f"};default:return{fill:"red",stroke:"black"}}}o(L,"calculateEntityVisualProps");function X(e,n,t){const i=$(),a=S(U(e.entityIdentifier)??"",i);let r;const d={fontSize:16,fontWeight:700,fontFamily:'"trebuchet ms", verdana, arial, sans-serif',joinWith:"<br/>"};let c=`<b>${k(a,t.textMaxWidth,d)}</b>`;if(e.dataInlineValue&&(r=e.dataInlineValue,r=r.substring(r.indexOf("{")+1),r=r.substring(0,r.lastIndexOf("}")-1),r=S(r,i),r=k(r,t.textMaxWidth,d),r=r.replaceAll(" ","&nbsp;")),e.dataReference){const p=n.find(P=>{var b;return P.name===((b=e.dataReference)==null?void 0:b.$refText)});p&&(r=p.dataBlockValue,r=r.substring(r.indexOf(`{
2
+ `)+2),r=r.substring(0,r.lastIndexOf("}")-1),r=S(r,i),r=k(r,t.textMaxWidth,d),r=r.replaceAll(" ","&nbsp;"),r+="<br/>")}const m=r!==void 0;m&&(c+=`<br/><br/><code style="text-align: left; display: block;max-width:${t.textMaxWidth}px">${r}</code>`);const x={fontSize:d.fontSize,fontWeight:d.fontWeight,fontFamily:d.fontFamily},u=pe(c,x),h=m?u.width/3:u.width,f={content:c,width:h,height:u.height};return g.debug(`[${e.name}] ${e.entityIdentifier} text`,f),f}o(X,"calculateTextProps");function j(e,n){const t=n,i=L(t.frame),a={width:t.textProps.width+2*s.boxTextPadding,height:t.textProps.height+2*s.boxTextPadding};return[{$kind:T,frame:t.frame,index:t.index,visual:i,dimension:a,textProps:t.textProps}]}o(j,"decidePositionFrame");function G(e,n,t){return n===void 0?s.contentStartX:n.index===e.index&&e.r?e.r+s.boxPadding:t===void 0?s.contentStartX:t.r-s.boxOverlap+s.boxPadding}o(G,"calculateX");function Y(e,n){const t=[...e.map(i=>i.r),n];return Math.max(...t)}o(Y,"calculateMaxRight");function A(e){return Object.values(e).sort((n,t)=>n.index-t.index)}o(A,"sortedSwimlanesArray");function z(e,n){const t=n,i=V(t.frame,e.swimlanes);let a;i.index in e.swimlanes?a=e.swimlanes[i.index]:a={index:i.index,label:i.label,r:0,y:i.index*s.swimlaneMinHeight+s.swimlaneGap,height:s.swimlaneMinHeight,maxHeight:s.swimlaneMinHeight};const r=e.boxes.length>0?e.boxes[e.boxes.length-1]:void 0,d=e.previousSwimlaneNumber!==void 0?e.swimlanes[e.previousSwimlaneNumber]:void 0,l={width:Math.max(s.boxMinWidth,Math.min(s.boxMaxWidth,t.dimension.width))+2*s.boxPadding,height:Math.max(s.boxMinHeight,Math.min(s.boxMaxHeight,t.dimension.height))+2*s.boxPadding},c=G(a,d,r),m=c+l.width+s.boxPadding,x=Y(Object.values(e.swimlanes),m);a.r=c+l.width,a.maxHeight=Math.max(a.maxHeight,l.height),a.height=Math.max(s.swimlaneMinHeight,a.maxHeight)+2*s.swimlanePadding;const u={x:c,y:s.swimlanePadding+a.y,r:m,dimension:l,leftSibling:!1,swimlane:a,visual:t.visual,text:t.textProps.content,frame:t.frame,index:t.index},h={...e,boxes:[...e.boxes,u],swimlanes:{...e.swimlanes,[`${a.index}`]:a},previousSwimlaneNumber:i.index,previousFrame:t.frame,maxR:x},f=A(h.swimlanes);f.length>0&&(f[0].y=0);for(let p=1;p<f.length;p++){const P=f[p],b=f[p-1];P.y=b.y+b.height+s.swimlaneGap}return h}o(z,"evolveFramePositioned");function K(e,n){return e===0&&n.sourceFrames.length===0}o(K,"isFirstFrame");function Q(e){return e.sourceFrames!==void 0&&e.sourceFrames!==null&&e.sourceFrames.length>0}o(Q,"hasSourceFrame");function F(e,n){if(n!=null)return e.find(t=>t.frame.name===n.name)}o(F,"findBoxByFrame");function q(e,n,t){if(!(t<0))for(let i=t;i>=0;i--){const a=e[i];if(a.swimlane.index!==n)return a}}o(q,"findBoxByLineIndex");function J(e,n){const t=n;if(K(t.index,t.frame))return[];const i=F(e.boxes,t.frame);if(i===void 0)throw new Error(`Target box not found for frame ${t.frame.name}`);let a;if(t.sourceFrame)a=F(e.boxes,t.sourceFrame);else{if(ve(t.frame))return[];a=q(e.boxes,i.swimlane.index,t.index-1)}return a===void 0?[]:[{$kind:C,frame:t.frame,index:t.index,sourceBox:a,targetBox:i}]}o(J,"decidePositionRelation");function Z(e,n){const t=n,i={visual:{fill:"none",stroke:"#000"},source:{x:t.sourceBox.x,y:t.sourceBox.y},target:{x:t.targetBox.x,y:t.targetBox.y},sourceBox:t.sourceBox,targetBox:t.targetBox};return{...e,relations:[...e.relations,i]}}o(Z,"evolveRelationPositioned");var Fe={[N]:j,[B]:J},Ee={[T]:z,[C]:Z};function ee(e,n){const t=Fe[n.$kind];if(t==null)return[];const i=t(e,n);return g.debug("decided events",i),i}o(ee,"decide");function te(e,n){const t=n.reduce((i,a)=>{const r=Ee[a.$kind];return r==null?i:r(i,a)},e);return g.debug("evolve events",{state:e,newState:t,events:n}),t}o(te,"evolve");function w(e,n){const t=ee(e,n);return te(e,t)}o(w,"dispatch");var E={getConfig:Me,preserveCommentsWhenParsing:!0,setOptions:ye,getOptions:Pe,clear:Se,setAccTitle:ue,getAccTitle:me,getAccDescription:ce,setAccDescription:le,setDiagramTitle:de,getDiagramTitle:se,setAst:I,getDiagramProps:R,getState:W},$e={parse:o(async e=>{const n=await be("eventmodeling",e);g.debug(n),E.setAst(n),oe(n,E)},"parse")},M=D(),Re=M==null?void 0:M.eventmodeling;function ne(e,n){return t=>{const i=t.swimlane.y+n.swimlanePadding,a=e.append("g").attr("class","em-box");a.append("rect").attr("x",t.x).attr("y",i).attr("rx","3").attr("width",t.dimension.width).attr("height",t.dimension.height).attr("stroke",t.visual.stroke).attr("fill",t.visual.fill),a.append("foreignObject").attr("x",t.x+n.boxPadding).attr("y",i+10).attr("width",t.dimension.width-2*n.boxPadding).attr("height",t.dimension.height-2*n.boxPadding).append("xhtml:div").style("display","table").style("height","100%").style("width","100%").append("span").style("display","table-cell").style("text-align","center").style("vertical-align","middle").html(t.text)}}o(ne,"renderD3Box");function ie(e,n){return e>n}o(ie,"dirUpwards");function ae(e,n,t,i){return a=>{const r=a.sourceBox.swimlane.y+n.swimlanePadding,d=a.targetBox.swimlane.y+n.swimlanePadding,l=ie(r,d),c=a.sourceBox.x+a.sourceBox.dimension.width*2/3,m=a.targetBox.x+a.targetBox.dimension.width/3;let x,u;g.debug(`rendering relation up=${l} for `,{sourceBox:a.sourceBox,targetBox:a.targetBox}),l?(x=r,u=d+a.targetBox.dimension.height):(x=r+a.sourceBox.dimension.height,u=d);const h=i.emRelationStroke??a.visual.stroke;e.append("path").attr("class","em-relation").attr("fill",a.visual.fill).attr("stroke",h).attr("stroke-width","1").attr("marker-end",`url(#${t})`).attr("d",`M${c} ${x} L${m} ${u}`)}}o(ae,"renderD3Relation");function re(e,n,t,i){return a=>{const r=e.append("g").attr("class","em-swimlane"),d=i.emSwimlaneBackgroundOdd??"rgb(250,250,250)",l=i.emSwimlaneBackgroundStroke??"rgb(240,240,240)";r.append("rect").attr("x",0).attr("y",a.y).attr("rx","3").attr("width",n+t.swimlanePadding).attr("height",a.height).attr("fill",d).attr("stroke",l),r.append("text").attr("font-weight",t.swimlaneTextFontWeight).attr("x",30).attr("y",a.y+30).text(a.label)}}o(re,"renderD3Swimlane");var Ae=o(function(e,n,t,i){if(g.debug("in eventmodeling renderer",e+`
3
+ `,"id:",n,t),!Re)throw new Error("EventModeling config not found");const a=i.db,{themeVariables:r,eventmodeling:d}=D(),l=we(`[id="${n}"]`),c=a.getDiagramProps(),m=a.getState(),x=`em-arrowhead-${n}`,u=r.emArrowhead??"#000000";m.sortedSwimlanesArray.forEach(re(l,m.maxR,c,r)),m.boxes.forEach(ne(l,c)),m.relations.forEach(ae(l,c,x,r)),l.append("defs").append("marker").attr("id",x).attr("markerWidth","10").attr("markerHeight","7").attr("refX","10").attr("refY","3.5").attr("orient","auto").append("polygon").attr("points","0 0, 10 3.5, 0 7").attr("fill",u),xe(void 0,l,(d==null?void 0:d.padding)??30,d==null?void 0:d.useMaxWidth)},"draw"),De={draw:Ae},Ne=o(e=>"","getStyles"),Te=Ne,He={parser:$e,db:E,renderer:De,styles:Te};export{He as diagram};
@@ -0,0 +1,41 @@
1
+ import{p as I}from"./explorer-chunk-JWPE2WC7.js";import{s as _,g as E,v as F,t as D,a as P,b as z,_ as c,S as G,B,P as w,N as C,Q as W,l as b,T as V,d as H}from"./explorer-mermaid.core.js";import{p as j}from"./explorer-cynefin-EF2NZ3EQ.js";import"./explorer.js";var x={showLegend:!0,ticks:5,max:null,min:0,graticule:"circle"},y=32,A={axes:[],curves:[],options:x},m=structuredClone(A),N=W.radar,U=c(()=>w({...N,...C().radar}),"getConfig"),M=c(()=>m.axes,"getAxes"),X=c(()=>m.curves,"getCurves"),K=c(()=>m.options,"getOptions"),Q=c(a=>{m.axes=a.map(t=>({name:t.name,label:t.label??t.name}))},"setAxes"),Y=c(a=>{m.curves=a.map(t=>({name:t.name,label:t.label??t.name,entries:Z(t.entries)}))},"setCurves"),Z=c(a=>{if(a[0].axis==null)return a.map(e=>e.value);const t=M();if(t.length===0)throw new Error("Axes must be populated before curves for reference entries");return t.map(e=>{const r=a.find(s=>{var n;return((n=s.axis)==null?void 0:n.$refText)===e.name});if(r===void 0)throw new Error("Missing entry for axis "+e.label);return r.value})},"computeCurveEntries"),q=c(a=>{var e,r,s,n,l;const t=a.reduce((o,i)=>(o[i.name]=i,o),{});m.options={showLegend:((e=t.showLegend)==null?void 0:e.value)??x.showLegend,ticks:((r=t.ticks)==null?void 0:r.value)??x.ticks,max:((s=t.max)==null?void 0:s.value)??x.max,min:((n=t.min)==null?void 0:n.value)??x.min,graticule:((l=t.graticule)==null?void 0:l.value)??x.graticule},m.options.ticks>y&&(b.warn(`Radar diagram ticks (${m.options.ticks}) exceeds maximum allowed (${y}). Using ${y} instead.`),m.options.ticks=y)},"setOptions"),J=c(()=>{B(),m=structuredClone(A)},"clear"),$={getAxes:M,getCurves:X,getOptions:K,setAxes:Q,setCurves:Y,setOptions:q,getConfig:U,clear:J,setAccTitle:z,getAccTitle:P,setDiagramTitle:D,getDiagramTitle:F,getAccDescription:E,setAccDescription:_},tt=c(a=>{I(a,$);const{axes:t,curves:e,options:r}=a;$.setAxes(t),$.setCurves(e),$.setOptions(r)},"populate"),et={parse:c(async a=>{const t=await j("radar",a);b.debug(t),tt(t)},"parse")},at=c((a,t,e,r)=>{const s=r.db,n=s.getAxes(),l=s.getCurves(),o=s.getOptions(),i=s.getConfig(),d=s.getDiagramTitle(),p=G(t),u=rt(p,i),g=o.max??Math.max(...l.map(f=>Math.max(...f.entries))),h=o.min,v=Math.min(i.width,i.height)/2;st(u,n,v,o.ticks,o.graticule),nt(u,n,v,i),L(u,n,l,h,g,o.graticule,i),k(u,l,o.showLegend,i),u.append("text").attr("class","radarTitle").text(d).attr("x",0).attr("y",-i.height/2-i.marginTop)},"draw"),rt=c((a,t)=>{const e=t.width+t.marginLeft+t.marginRight,r=t.height+t.marginTop+t.marginBottom,s={x:t.marginLeft+t.width/2,y:t.marginTop+t.height/2};return H(a,r,e,t.useMaxWidth??!0),a.attr("viewBox",`0 0 ${e} ${r}`).attr("overflow","visible"),a.append("g").attr("transform",`translate(${s.x}, ${s.y})`)},"drawFrame"),st=c((a,t,e,r,s)=>{if(s==="circle")for(let n=0;n<r;n++){const l=e*(n+1)/r;a.append("circle").attr("r",l).attr("class","radarGraticule")}else if(s==="polygon"){const n=t.length;for(let l=0;l<r;l++){const o=e*(l+1)/r,i=t.map((d,p)=>{const u=2*p*Math.PI/n-Math.PI/2,g=o*Math.cos(u),h=o*Math.sin(u);return`${g},${h}`}).join(" ");a.append("polygon").attr("points",i).attr("class","radarGraticule")}}},"drawGraticule"),nt=c((a,t,e,r)=>{const s=t.length;for(let n=0;n<s;n++){const l=t[n].label,o=2*n*Math.PI/s-Math.PI/2,i=Math.cos(o),d=Math.sin(o);a.append("line").attr("x1",0).attr("y1",0).attr("x2",e*r.axisScaleFactor*i).attr("y2",e*r.axisScaleFactor*d).attr("class","radarAxisLine");const p=i>.01?"start":i<-.01?"end":"middle",u=d>.01?"hanging":d<-.01?"auto":"central",g=4;a.append("text").text(l).attr("x",e*r.axisLabelFactor*i+g*i).attr("y",e*r.axisLabelFactor*d+g*d).attr("text-anchor",p).attr("dominant-baseline",u).attr("class","radarAxisLabel")}},"drawAxes");function L(a,t,e,r,s,n,l){const o=t.length,i=Math.min(l.width,l.height)/2;e.forEach((d,p)=>{if(d.entries.length!==o)return;const u=d.entries.map((g,h)=>{const v=2*Math.PI*h/o-Math.PI/2,f=T(g,r,s,i),O=f*Math.cos(v),R=f*Math.sin(v);return{x:O,y:R}});n==="circle"?a.append("path").attr("d",S(u,l.curveTension)).attr("class",`radarCurve-${p}`):n==="polygon"&&a.append("polygon").attr("points",u.map(g=>`${g.x},${g.y}`).join(" ")).attr("class",`radarCurve-${p}`)})}c(L,"drawCurves");function T(a,t,e,r){const s=Math.min(Math.max(a,t),e);return r*(s-t)/(e-t)}c(T,"relativeRadius");function S(a,t){const e=a.length;let r=`M${a[0].x},${a[0].y}`;for(let s=0;s<e;s++){const n=a[(s-1+e)%e],l=a[s],o=a[(s+1)%e],i=a[(s+2)%e],d={x:l.x+(o.x-n.x)*t,y:l.y+(o.y-n.y)*t},p={x:o.x-(i.x-l.x)*t,y:o.y-(i.y-l.y)*t};r+=` C${d.x},${d.y} ${p.x},${p.y} ${o.x},${o.y}`}return`${r} Z`}c(S,"closedRoundCurve");function k(a,t,e,r){if(!e)return;const s=(r.width/2+r.marginRight)*3/4,n=-(r.height/2+r.marginTop)*3/4,l=20;t.forEach((o,i)=>{const d=a.append("g").attr("transform",`translate(${s}, ${n+i*l})`);d.append("rect").attr("width",12).attr("height",12).attr("class",`radarLegendBox-${i}`),d.append("text").attr("x",16).attr("y",0).attr("class","radarLegendText").text(o.label)})}c(k,"drawLegend");var ot={draw:at},it=c((a,t)=>{let e="";for(let r=0;r<a.THEME_COLOR_LIMIT;r++){const s=a[`cScale${r}`];e+=`
2
+ .radarCurve-${r} {
3
+ color: ${s};
4
+ fill: ${s};
5
+ fill-opacity: ${t.curveOpacity};
6
+ stroke: ${s};
7
+ stroke-width: ${t.curveStrokeWidth};
8
+ }
9
+ .radarLegendBox-${r} {
10
+ fill: ${s};
11
+ fill-opacity: ${t.curveOpacity};
12
+ stroke: ${s};
13
+ }
14
+ `}return e},"genIndexStyles"),lt=c(a=>{const t=V(),e=C(),r=w(t,e.themeVariables),s=w(r.radar,a);return{themeVariables:r,radarOptions:s}},"buildRadarStyleOptions"),ct=c(({radar:a}={})=>{const{themeVariables:t,radarOptions:e}=lt(a);return`
15
+ .radarTitle {
16
+ font-size: ${t.fontSize};
17
+ color: ${t.titleColor};
18
+ dominant-baseline: hanging;
19
+ text-anchor: middle;
20
+ }
21
+ .radarAxisLine {
22
+ stroke: ${e.axisColor};
23
+ stroke-width: ${e.axisStrokeWidth};
24
+ }
25
+ .radarAxisLabel {
26
+ font-size: ${e.axisLabelFontSize}px;
27
+ color: ${e.axisColor};
28
+ }
29
+ .radarGraticule {
30
+ fill: ${e.graticuleColor};
31
+ fill-opacity: ${e.graticuleOpacity};
32
+ stroke: ${e.graticuleColor};
33
+ stroke-width: ${e.graticuleStrokeWidth};
34
+ }
35
+ .radarLegendText {
36
+ text-anchor: start;
37
+ font-size: ${e.legendFontSize}px;
38
+ dominant-baseline: hanging;
39
+ }
40
+ ${it(t,e)}
41
+ `},"styles"),mt={parser:et,db:$,renderer:ot,styles:ct};export{mt as diagram};