3 lines
10 KiB
JavaScript
3 lines
10 KiB
JavaScript
|
|
import{c as e}from"./chunk-4KE642ED-D2VUabb0.js";import{p as t}from"./treemap-KMMF4GRG-7ORZ52ND-DFBaIa1s.js";import{m as a,L as l,O as s,a6 as r,W as n,aJ as i,p as o,aa as c,aK as d,aL as p,aM as h,i as m,H as y,U as f,j as u,e as S,$ as g,G as x,r as b,aN as C,N as v}from"./index-BDq3hoFe.js";import{y as $}from"./chunk-T244DUNM-DsHGI3jp.js";import"./chunk-OMTJKCYW-D0VGaEv2.js";var w=class{constructor(){this.nodes=[],this.levels=new Map,this.outerNodes=[],this.classes=new Map,this.setAccTitle=y,this.getAccTitle=f,this.setDiagramTitle=u,this.getDiagramTitle=S,this.getAccDescription=g,this.setAccDescription=x}static{a(this,"TreeMapDB")}getNodes(){return this.nodes}getConfig(){let e=b,t=s();return l({...e.treemap,...t.treemap??{}})}addNode(e,t){this.nodes.push(e),this.levels.set(e,t),0===t&&(this.outerNodes.push(e),this.root??=e)}getRoot(){return{name:"",children:this.outerNodes}}addClass(e,t){let a=this.classes.get(e)??{id:e,styles:[],textStyles:[]},l=t.replace(/\\,/g,"§§§").replace(/,/g,";").replace(/§§§/g,",").split(";");l&&l.forEach(e=>{C(e)&&(a?.textStyles?a.textStyles.push(e):a.textStyles=[e]),a?.styles?a.styles.push(e):a.styles=[e]}),this.classes.set(e,a)}getClasses(){return this.classes}getStylesForClass(e){return this.classes.get(e)?.styles??[]}clear(){v(),this.nodes=[],this.levels=new Map,this.outerNodes=[],this.classes=new Map,this.root=void 0}};function L(e){if(!e.length)return[];let t=[],a=[];return e.forEach(e=>{let l={name:e.name,children:"Leaf"===e.type?void 0:[]};for(l.classSelector=e?.classSelector,e?.cssCompiledStyles&&(l.cssCompiledStyles=[e.cssCompiledStyles]),"Leaf"===e.type&&void 0!==e.value&&(l.value=e.value);a.length>0&&a[a.length-1].level>=e.level;)a.pop();if(0===a.length)t.push(l);else{let e=a[a.length-1].node;e.children?e.children.push(l):e.children=[l]}"Leaf"!==e.type&&a.push({node:l,level:e.level})}),t}a(L,"buildHierarchy");var k=a((t,l)=>{e(t,l);let s=[];for(let e of t.TreemapRows??[])"ClassDefStatement"===e.$type&&l.addClass(e.className??"",e.styleText??"");for(let e of t.TreemapRows??[]){let t=e.item;if(!t)continue;let a=e.indent?parseInt(e.indent):0,r=M(t),n=t.classSelector?l.getStylesForClass(t.classSelector):[],i=n.length>0?n.join(";"):void 0,o={level:a,name:r,type:t.$type,value:t.value,classSelector:t.classSelector,cssCompiledStyles:i};s.push(o)}let r=L(s),n=a((e,t)=>{for(let a of e)l.addNode(a,t),a.children&&a.children.length>0&&n(a.children,t+1)},"addNodesRecursively");n(r,0)},"populate"),M=a(e=>e.name?String(e.name):"","getItemName"),T={parser:{yy:void 0},parse:a(async e=>{try{let a=await t("treemap",e);o.debug("Treemap AST:",a);let l=T.parser?.yy;if(!(l instanceof w))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.");k(a,l)}catch(e){throw o.error("Error parsing treemap:",e),e}},"parse")},z=10,F=a((e,t,l,y)=>{let f=y.db,u=f.getConfig(),S=u.padding??10,g=f.getDiagramTitle(),x=f.getRoot(),{themeVariables:b}=s();if(!x)return;let C,v=g?30:0,w=r(t),L=u.nodeWidth?u.nodeWidth*z:960,k=u.nodeHeight?u.nodeHeight*z:500,M=L,T=k+v;w.attr("viewBox",`0 0 ${M} ${T}`),n(w,T,M,u.useMaxWidth);try{let e=u.valueFormat||",";if("$0,0"===e)C=a(e=>"$"+i(",")(e),"valueFormat");else if(e.startsWith("$")&&e.includes(",")){let t=/\.\d+/.exec(e),l=t?t[0]:"";C=a(e=>"$"+i(","+l)(e),"valueFormat")}else if(e.startsWith("$")){let t=e.substring(1);C=a(e=>"$"+i(t||"")(e),"valueFormat")}else C=i(e)}catch(e){o.error("Error creating format function:",e),C=i(",")}let F=c().range(["transparent",b.cScale0,b.cScale1,b.cScale2,b.cScale3,b.cScale4,b.cScale5,b.cScale6,b.cScale7,b.cScale8,b.cScale9,b.cScale10,b.cScale11]),N=c().range(["transparent",b.cScalePeer0,b.cScalePeer1,b.cScalePeer2,b.cScalePeer3,b.cScalePeer4,b.cScalePeer5,b.cScalePeer6,b.cScalePeer7,b.cScalePeer8,b.cScalePeer9,b.cScalePeer10,b.cScalePeer11]),P=c().range([b.cScaleLabel0,b.cScaleLabel1,b.cScaleLabel2,b.cScaleLabel3,b.cScaleLabel4,b.cScaleLabel5,b.cScaleLabel6,b.cScaleLabel7,b.cScaleLabel8,b.cScaleLabel9,b.cScaleLabel10,b.cScaleLabel11
|
||
|
|
//# sourceMappingURL=diagram-LL6QPXA2-CRMYRvhz.js.map
|