@usepagelet/runtime 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +24 -0
- package/dist/v1/capabilities.md +59 -0
- package/dist/v1/chunks/architecture-7EHR7CIX-CDRXMAVQ.js +2 -0
- package/dist/v1/chunks/architecture-7EHR7CIX-CDRXMAVQ.js.map +7 -0
- package/dist/v1/chunks/architectureDiagram-3BPJPVTR-EYIVUOEK.js +37 -0
- package/dist/v1/chunks/architectureDiagram-3BPJPVTR-EYIVUOEK.js.map +7 -0
- package/dist/v1/chunks/blockDiagram-GPEHLZMM-P7MBAWVH.js +133 -0
- package/dist/v1/chunks/blockDiagram-GPEHLZMM-P7MBAWVH.js.map +7 -0
- package/dist/v1/chunks/c4Diagram-AAUBKEIU-2XSL5LGB.js +11 -0
- package/dist/v1/chunks/c4Diagram-AAUBKEIU-2XSL5LGB.js.map +7 -0
- package/dist/v1/chunks/chunk-2STBDRRH.js +2 -0
- package/dist/v1/chunks/chunk-2STBDRRH.js.map +7 -0
- package/dist/v1/chunks/chunk-6AA7JQNC.js +71 -0
- package/dist/v1/chunks/chunk-6AA7JQNC.js.map +7 -0
- package/dist/v1/chunks/chunk-72WSJX2P.js +2 -0
- package/dist/v1/chunks/chunk-72WSJX2P.js.map +7 -0
- package/dist/v1/chunks/chunk-AUV7QZZ7.js +2 -0
- package/dist/v1/chunks/chunk-AUV7QZZ7.js.map +7 -0
- package/dist/v1/chunks/chunk-AZFF2WJO.js +2 -0
- package/dist/v1/chunks/chunk-AZFF2WJO.js.map +7 -0
- package/dist/v1/chunks/chunk-C2IUOGBD.js +2 -0
- package/dist/v1/chunks/chunk-C2IUOGBD.js.map +7 -0
- package/dist/v1/chunks/chunk-DKQVSAO3.js +2 -0
- package/dist/v1/chunks/chunk-DKQVSAO3.js.map +7 -0
- package/dist/v1/chunks/chunk-DS52DG6H.js +2 -0
- package/dist/v1/chunks/chunk-DS52DG6H.js.map +7 -0
- package/dist/v1/chunks/chunk-DXEOG5W4.js +2 -0
- package/dist/v1/chunks/chunk-DXEOG5W4.js.map +7 -0
- package/dist/v1/chunks/chunk-EHSK6IMI.js +3 -0
- package/dist/v1/chunks/chunk-EHSK6IMI.js.map +7 -0
- package/dist/v1/chunks/chunk-FWZR474D.js +2 -0
- package/dist/v1/chunks/chunk-FWZR474D.js.map +7 -0
- package/dist/v1/chunks/chunk-FYLAOHYS.js +2 -0
- package/dist/v1/chunks/chunk-FYLAOHYS.js.map +7 -0
- package/dist/v1/chunks/chunk-G6W4FKMG.js +2 -0
- package/dist/v1/chunks/chunk-G6W4FKMG.js.map +7 -0
- package/dist/v1/chunks/chunk-HLP6UJDY.js +2 -0
- package/dist/v1/chunks/chunk-HLP6UJDY.js.map +7 -0
- package/dist/v1/chunks/chunk-IGLPGT7W.js +160 -0
- package/dist/v1/chunks/chunk-IGLPGT7W.js.map +7 -0
- package/dist/v1/chunks/chunk-IQVRW6XA.js +322 -0
- package/dist/v1/chunks/chunk-IQVRW6XA.js.map +7 -0
- package/dist/v1/chunks/chunk-IY5OUPDU.js +5 -0
- package/dist/v1/chunks/chunk-IY5OUPDU.js.map +7 -0
- package/dist/v1/chunks/chunk-JOJIMF7A.js +2 -0
- package/dist/v1/chunks/chunk-JOJIMF7A.js.map +7 -0
- package/dist/v1/chunks/chunk-NWD66TP4.js +2 -0
- package/dist/v1/chunks/chunk-NWD66TP4.js.map +7 -0
- package/dist/v1/chunks/chunk-PLQZIFSO.js +2 -0
- package/dist/v1/chunks/chunk-PLQZIFSO.js.map +7 -0
- package/dist/v1/chunks/chunk-PVPXGQIV.js +2 -0
- package/dist/v1/chunks/chunk-PVPXGQIV.js.map +7 -0
- package/dist/v1/chunks/chunk-QDJGX3SU.js +16 -0
- package/dist/v1/chunks/chunk-QDJGX3SU.js.map +7 -0
- package/dist/v1/chunks/chunk-QSGUWHXF.js +2 -0
- package/dist/v1/chunks/chunk-QSGUWHXF.js.map +7 -0
- package/dist/v1/chunks/chunk-RCIRWMC7.js +2 -0
- package/dist/v1/chunks/chunk-RCIRWMC7.js.map +7 -0
- package/dist/v1/chunks/chunk-S4ACHXBI.js +2 -0
- package/dist/v1/chunks/chunk-S4ACHXBI.js.map +7 -0
- package/dist/v1/chunks/chunk-SA4K3XYV.js +2 -0
- package/dist/v1/chunks/chunk-SA4K3XYV.js.map +7 -0
- package/dist/v1/chunks/chunk-SAENYLYK.js +232 -0
- package/dist/v1/chunks/chunk-SAENYLYK.js.map +7 -0
- package/dist/v1/chunks/chunk-SN6BTAM3.js +4 -0
- package/dist/v1/chunks/chunk-SN6BTAM3.js.map +7 -0
- package/dist/v1/chunks/chunk-SWJRRCAF.js +2 -0
- package/dist/v1/chunks/chunk-SWJRRCAF.js.map +7 -0
- package/dist/v1/chunks/chunk-TGL5CWDU.js +63 -0
- package/dist/v1/chunks/chunk-TGL5CWDU.js.map +7 -0
- package/dist/v1/chunks/chunk-TVSQ2OZ6.js +11 -0
- package/dist/v1/chunks/chunk-TVSQ2OZ6.js.map +7 -0
- package/dist/v1/chunks/chunk-URGT6V7R.js +2 -0
- package/dist/v1/chunks/chunk-URGT6V7R.js.map +7 -0
- package/dist/v1/chunks/chunk-WBEUYPCI.js +123 -0
- package/dist/v1/chunks/chunk-WBEUYPCI.js.map +7 -0
- package/dist/v1/chunks/chunk-WEZ3ELJO.js +2 -0
- package/dist/v1/chunks/chunk-WEZ3ELJO.js.map +7 -0
- package/dist/v1/chunks/chunk-WIIGSS4X.js +2 -0
- package/dist/v1/chunks/chunk-WIIGSS4X.js.map +7 -0
- package/dist/v1/chunks/chunk-XUJKMBZ5.js +2 -0
- package/dist/v1/chunks/chunk-XUJKMBZ5.js.map +7 -0
- package/dist/v1/chunks/chunk-YC75LZ32.js +33 -0
- package/dist/v1/chunks/chunk-YC75LZ32.js.map +7 -0
- package/dist/v1/chunks/chunk-YK2CHHQT.js +207 -0
- package/dist/v1/chunks/chunk-YK2CHHQT.js.map +7 -0
- package/dist/v1/chunks/chunk-YYWGGXI6.js +2 -0
- package/dist/v1/chunks/chunk-YYWGGXI6.js.map +7 -0
- package/dist/v1/chunks/chunk-ZY7EQCMR.js +4 -0
- package/dist/v1/chunks/chunk-ZY7EQCMR.js.map +7 -0
- package/dist/v1/chunks/classDiagram-4FO5ZUOK-4VU3VATX.js +2 -0
- package/dist/v1/chunks/classDiagram-4FO5ZUOK-4VU3VATX.js.map +7 -0
- package/dist/v1/chunks/classDiagram-v2-Q7XG4LA2-QIBN3KO6.js +2 -0
- package/dist/v1/chunks/classDiagram-v2-Q7XG4LA2-QIBN3KO6.js.map +7 -0
- package/dist/v1/chunks/cose-bilkent-S5V4N54A-MHLDSCZY.js +2 -0
- package/dist/v1/chunks/cose-bilkent-S5V4N54A-MHLDSCZY.js.map +7 -0
- package/dist/v1/chunks/dagre-BM42HDAG-U3ECKIMS.js +5 -0
- package/dist/v1/chunks/dagre-BM42HDAG-U3ECKIMS.js.map +7 -0
- package/dist/v1/chunks/diagram-2AECGRRQ-BNRGNWOM.js +44 -0
- package/dist/v1/chunks/diagram-2AECGRRQ-BNRGNWOM.js.map +7 -0
- package/dist/v1/chunks/diagram-5GNKFQAL-CPWZIJ4M.js +11 -0
- package/dist/v1/chunks/diagram-5GNKFQAL-CPWZIJ4M.js.map +7 -0
- package/dist/v1/chunks/diagram-KO2AKTUF-7CDCIBL3.js +4 -0
- package/dist/v1/chunks/diagram-KO2AKTUF-7CDCIBL3.js.map +7 -0
- package/dist/v1/chunks/diagram-LMA3HP47-LPHFNXWX.js +25 -0
- package/dist/v1/chunks/diagram-LMA3HP47-LPHFNXWX.js.map +7 -0
- package/dist/v1/chunks/diagram-OG6HWLK6-FWJ2MCGI.js +25 -0
- package/dist/v1/chunks/diagram-OG6HWLK6-FWJ2MCGI.js.map +7 -0
- package/dist/v1/chunks/erDiagram-TEJ5UH35-OX62GPYU.js +86 -0
- package/dist/v1/chunks/erDiagram-TEJ5UH35-OX62GPYU.js.map +7 -0
- package/dist/v1/chunks/eventmodeling-FCH6USID-NRRIBZEB.js +2 -0
- package/dist/v1/chunks/eventmodeling-FCH6USID-NRRIBZEB.js.map +7 -0
- package/dist/v1/chunks/flowDiagram-I6XJVG4X-I4ULL6MS.js +163 -0
- package/dist/v1/chunks/flowDiagram-I6XJVG4X-I4ULL6MS.js.map +7 -0
- package/dist/v1/chunks/ganttDiagram-6RSMTGT7-TIDOVKXT.js +293 -0
- package/dist/v1/chunks/ganttDiagram-6RSMTGT7-TIDOVKXT.js.map +7 -0
- package/dist/v1/chunks/gitGraph-WXDBUCRP-4LEEA2GI.js +2 -0
- package/dist/v1/chunks/gitGraph-WXDBUCRP-4LEEA2GI.js.map +7 -0
- package/dist/v1/chunks/gitGraphDiagram-PVQCEYII-BPEBW2KG.js +107 -0
- package/dist/v1/chunks/gitGraphDiagram-PVQCEYII-BPEBW2KG.js.map +7 -0
- package/dist/v1/chunks/info-J43DQDTF-EI2RS372.js +2 -0
- package/dist/v1/chunks/info-J43DQDTF-EI2RS372.js.map +7 -0
- package/dist/v1/chunks/infoDiagram-5YYISTIA-5GFVQYI7.js +3 -0
- package/dist/v1/chunks/infoDiagram-5YYISTIA-5GFVQYI7.js.map +7 -0
- package/dist/v1/chunks/ishikawaDiagram-YF4QCWOH-AZ7PAHIN.js +71 -0
- package/dist/v1/chunks/ishikawaDiagram-YF4QCWOH-AZ7PAHIN.js.map +7 -0
- package/dist/v1/chunks/journeyDiagram-JHISSGLW-B4ZN6VTS.js +140 -0
- package/dist/v1/chunks/journeyDiagram-JHISSGLW-B4ZN6VTS.js.map +7 -0
- package/dist/v1/chunks/kanban-definition-UN3LZRKU-5THRXHJP.js +90 -0
- package/dist/v1/chunks/kanban-definition-UN3LZRKU-5THRXHJP.js.map +7 -0
- package/dist/v1/chunks/katex-CLI7E3QC.js +258 -0
- package/dist/v1/chunks/katex-CLI7E3QC.js.map +7 -0
- package/dist/v1/chunks/mindmap-definition-RKZ34NQL-E57QDEMN.js +97 -0
- package/dist/v1/chunks/mindmap-definition-RKZ34NQL-E57QDEMN.js.map +7 -0
- package/dist/v1/chunks/packet-YPE3B663-PKWGZRBL.js +2 -0
- package/dist/v1/chunks/packet-YPE3B663-PKWGZRBL.js.map +7 -0
- package/dist/v1/chunks/pie-LRSECV5Y-QSTOXR4H.js +2 -0
- package/dist/v1/chunks/pie-LRSECV5Y-QSTOXR4H.js.map +7 -0
- package/dist/v1/chunks/pieDiagram-4H26LBE5-CZULUIHM.js +31 -0
- package/dist/v1/chunks/pieDiagram-4H26LBE5-CZULUIHM.js.map +7 -0
- package/dist/v1/chunks/quadrantDiagram-W4KKPZXB-WRXQ2LCP.js +8 -0
- package/dist/v1/chunks/quadrantDiagram-W4KKPZXB-WRXQ2LCP.js.map +7 -0
- package/dist/v1/chunks/radar-GUYGQ44K-UJHF7VJA.js +2 -0
- package/dist/v1/chunks/radar-GUYGQ44K-UJHF7VJA.js.map +7 -0
- package/dist/v1/chunks/requirementDiagram-4Y6WPE33-LUKBHY3G.js +85 -0
- package/dist/v1/chunks/requirementDiagram-4Y6WPE33-LUKBHY3G.js.map +7 -0
- package/dist/v1/chunks/sankeyDiagram-5OEKKPKP-IHGIKQ7Q.js +41 -0
- package/dist/v1/chunks/sankeyDiagram-5OEKKPKP-IHGIKQ7Q.js.map +7 -0
- package/dist/v1/chunks/sequenceDiagram-3UESZ5HK-AZIJM7V2.js +163 -0
- package/dist/v1/chunks/sequenceDiagram-3UESZ5HK-AZIJM7V2.js.map +7 -0
- package/dist/v1/chunks/stateDiagram-AJRCARHV-7TL53ICK.js +2 -0
- package/dist/v1/chunks/stateDiagram-AJRCARHV-7TL53ICK.js.map +7 -0
- package/dist/v1/chunks/stateDiagram-v2-BHNVJYJU-TJ245A24.js +2 -0
- package/dist/v1/chunks/stateDiagram-v2-BHNVJYJU-TJ245A24.js.map +7 -0
- package/dist/v1/chunks/timeline-definition-PNZ67QCA-C5FF5CVI.js +121 -0
- package/dist/v1/chunks/timeline-definition-PNZ67QCA-C5FF5CVI.js.map +7 -0
- package/dist/v1/chunks/treeView-BLDUP644-2MCPJRE2.js +2 -0
- package/dist/v1/chunks/treeView-BLDUP644-2MCPJRE2.js.map +7 -0
- package/dist/v1/chunks/treemap-LRROVOQU-WSVRI32O.js +2 -0
- package/dist/v1/chunks/treemap-LRROVOQU-WSVRI32O.js.map +7 -0
- package/dist/v1/chunks/vennDiagram-CIIHVFJN-NQU7FBQX.js +35 -0
- package/dist/v1/chunks/vennDiagram-CIIHVFJN-NQU7FBQX.js.map +7 -0
- package/dist/v1/chunks/wardley-L42UT6IY-GONRRIFG.js +2 -0
- package/dist/v1/chunks/wardley-L42UT6IY-GONRRIFG.js.map +7 -0
- package/dist/v1/chunks/wardleyDiagram-YWT4CUSO-KNM7EB5A.js +79 -0
- package/dist/v1/chunks/wardleyDiagram-YWT4CUSO-KNM7EB5A.js.map +7 -0
- package/dist/v1/chunks/xychartDiagram-2RQKCTM6-CMGOBHPC.js +8 -0
- package/dist/v1/chunks/xychartDiagram-2RQKCTM6-CMGOBHPC.js.map +7 -0
- package/dist/v1/modules/charts.js +4 -0
- package/dist/v1/modules/charts.js.map +7 -0
- package/dist/v1/modules/code.js +26 -0
- package/dist/v1/modules/code.js.map +7 -0
- package/dist/v1/modules/markdown.js +65 -0
- package/dist/v1/modules/markdown.js.map +7 -0
- package/dist/v1/modules/math.js +258 -0
- package/dist/v1/modules/math.js.map +7 -0
- package/dist/v1/modules/mermaid.js +9 -0
- package/dist/v1/modules/mermaid.js.map +7 -0
- package/dist/v1/modules/png.js +3 -0
- package/dist/v1/modules/png.js.map +7 -0
- package/dist/v1/pagelet.js +128 -0
- package/dist/v1/pagelet.js.map +7 -0
- package/package.json +40 -0
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import{a as Tt,b as Vt}from"./chunk-XUJKMBZ5.js";import{a as v}from"./chunk-AUV7QZZ7.js";import{a as Zt,b as Bt,d as W,e as I}from"./chunk-HLP6UJDY.js";import{d as Mt,f as nt}from"./chunk-6AA7JQNC.js";import{k as Pt,r as Dt,t as K}from"./chunk-EHSK6IMI.js";import{A as wt,E as at,G as Lt,I as Wt,J as zt,Z as U,aa as Et,u as ut}from"./chunk-WBEUYPCI.js";import{b as $,d as z,j as Z}from"./chunk-PVPXGQIV.js";var O=$(async(u,t,o)=>{let h,l=t.useHtmlLabels||ut(U()?.htmlLabels);o?h=o:h="node default";let r=u.insert("g").attr("class",h).attr("id",t.domId||t.id),p=r.insert("g").attr("class","label").attr("style",K(t.labelStyle)),i;t.label===void 0?i="":i=typeof t.label=="string"?t.label:t.label[0];let n=!!t.icon||!!t.img,e=t.labelType==="markdown",s=await nt(p,Lt(Dt(i),U()),{useHtmlLabels:l,width:t.width||U().flowchart?.wrappingWidth,classes:e?"markdown-node-label":"",style:t.labelStyle,addSvgBackground:n,markdown:e},U()),a=s.getBBox(),g=(t?.padding??0)/2;if(l){let c=s.children[0],f=Z(s);await Vt(c,i),a=c.getBoundingClientRect(),f.attr("width",a.width),f.attr("height",a.height)}return l?p.attr("transform","translate("+-a.width/2+", "+-a.height/2+")"):p.attr("transform","translate(0, "+-a.height/2+")"),t.centerLabel&&p.attr("transform","translate("+-a.width/2+", "+-a.height/2+")"),p.insert("rect",":first-child"),{shapeSvg:r,bbox:a,halfPadding:g,label:p}},"labelHelper"),Xt=$(async(u,t,o)=>{let h=o.useHtmlLabels??at(U()),l=u.insert("g").attr("class","label").attr("style",o.labelStyle||""),r=await nt(l,Lt(Dt(t),U()),{useHtmlLabels:h,width:o.width||U()?.flowchart?.wrappingWidth,style:o.labelStyle,addSvgBackground:!!o.icon||!!o.img}),p=r.getBBox(),i=o.padding/2;if(at(U())){let n=r.children[0],e=Z(r);p=n.getBoundingClientRect(),e.attr("width",p.width),e.attr("height",p.height)}return h?l.attr("transform","translate("+-p.width/2+", "+-p.height/2+")"):l.attr("transform","translate(0, "+-p.height/2+")"),o.centerLabel&&l.attr("transform","translate("+-p.width/2+", "+-p.height/2+")"),l.insert("rect",":first-child"),{shapeSvg:u,bbox:p,halfPadding:i,label:l}},"insertLabel"),T=$((u,t)=>{let o=t.node().getBBox();u.width=o.width,u.height=o.height},"updateNodeBounds"),Y=$((u,t)=>(u.look==="handDrawn"?"rough-node":"node")+" "+u.cssClasses+" "+(t||""),"getNodeClasses");function G(u){let t=u.map((o,h)=>`${h===0?"M":"L"}${o.x},${o.y}`);return t.push("Z"),t.join(" ")}$(G,"createPathFromPoints");function ft(u,t,o,h,l,r){let p=[],n=o-u,e=h-t,s=n/r,a=2*Math.PI/s,g=t+e/2;for(let c=0;c<=50;c++){let f=c/50,y=u+f*n,m=g+l*Math.sin(a*(y-u));p.push({x:y,y:m})}return p}$(ft,"generateFullSineWavePoints");function Ct(u,t,o,h,l,r){let p=[],i=l*Math.PI/180,s=(r*Math.PI/180-i)/(h-1);for(let a=0;a<h;a++){let g=i+a*s,c=u+o*Math.cos(g),f=t+o*Math.sin(g);p.push({x:-c,y:-f})}return p}$(Ct,"generateCirclePoints");function Yt(u){let t=Array.from(u.childNodes).filter(n=>n.tagName==="path"),o=document.createElementNS("http://www.w3.org/2000/svg","path"),h=t.map(n=>n.getAttribute("d")).filter(n=>n!==null).join(" ");o.setAttribute("d",h);let l=t.find(n=>n.getAttribute("fill")!=="none"),r=t.find(n=>n.getAttribute("stroke")!=="none"),p=$((n,e)=>n?.getAttribute(e)??void 0,"getAttr");if(l){let n={fill:p(l,"fill"),"fill-opacity":p(l,"fill-opacity")??"1"};Object.entries(n).forEach(([e,s])=>{s&&o.setAttribute(e,s)})}if(r){let n={stroke:p(r,"stroke"),"stroke-width":p(r,"stroke-width")??"1","stroke-opacity":p(r,"stroke-opacity")??"1"};Object.entries(n).forEach(([e,s])=>{s&&o.setAttribute(e,s)})}let i=document.createElementNS("http://www.w3.org/2000/svg","g");return i.appendChild(o),i}$(Yt,"mergePaths");var Ma=$((u,t)=>{var o=u.x,h=u.y,l=t.x-o,r=t.y-h,p=u.width/2,i=u.height/2,n,e;return Math.abs(r)*p>Math.abs(l)*i?(r<0&&(i=-i),n=r===0?0:i*l/r,e=i):(l<0&&(p=-p),n=p,e=l===0?0:p*r/l),{x:o+n,y:h+e}},"intersectRect"),$t=Ma,Na=$(async(u,t,o,h=!1,l=!1)=>{let r=t||"";typeof r=="object"&&(r=r[0]);let p=U(),i=at(p);return await nt(u,r,{style:o,isTitle:h,useHtmlLabels:i,markdown:!1,isNode:l,width:Number.POSITIVE_INFINITY},p)},"createLabel"),At=Na,yt=$((u,t,o,h,l)=>["M",u+l,t,"H",u+o-l,"A",l,l,0,0,1,u+o,t+l,"V",t+h-l,"A",l,l,0,0,1,u+o-l,t+h,"H",u+l,"A",l,l,0,0,1,u,t+h-l,"V",t+l,"A",l,l,0,0,1,u+l,t,"Z"].join(" "),"createRoundedRectPathD"),ns=$(async(u,t)=>{z.info("Creating subgraph rect for ",t.id,t);let o=U(),{themeVariables:h,handDrawnSeed:l}=o,{clusterBkg:r,clusterBorder:p}=h,{labelStyles:i,nodeStyles:n,borderStyles:e,backgroundStyles:s}=W(t),a=u.insert("g").attr("class","cluster "+t.cssClasses).attr("id",t.domId).attr("data-look",t.look),g=at(o),c=a.insert("g").attr("class","cluster-label "),f;t.labelType==="markdown"?f=await nt(c,t.label,{style:t.labelStyle,useHtmlLabels:g,isNode:!0,width:t.width}):f=await At(c,t.label,t.labelStyle||"",!1,!0);let y=f.getBBox();if(at(o)){let P=f.children[0],D=Z(f);y=P.getBoundingClientRect(),D.attr("width",y.width),D.attr("height",y.height)}let m=t.width<=y.width+t.padding?y.width+t.padding:t.width;t.width<=y.width+t.padding?t.diff=(m-t.width)/2-t.padding:t.diff=-t.padding;let d=t.height,w=t.x-m/2,x=t.y-d/2;z.trace("Data ",t,JSON.stringify(t));let S;if(t.look==="handDrawn"){let P=v.svg(a),D=I(t,{roughness:.7,fill:r,stroke:p,fillWeight:3,seed:l}),B=P.path(yt(w,x,m,d,0),D);S=a.insert(()=>(z.debug("Rough node insert CXC",B),B),":first-child"),S.select("path:nth-child(2)").attr("style",e.join(";")),S.select("path").attr("style",s.join(";").replace("fill","stroke"))}else S=a.insert("rect",":first-child"),S.attr("style",n).attr("rx",t.rx).attr("ry",t.ry).attr("x",w).attr("y",x).attr("width",m).attr("height",d);let{subGraphTitleTopMargin:b}=Tt(o);if(c.attr("transform",`translate(${t.x-y.width/2}, ${t.y-t.height/2+b})`),i){let P=c.select("span");P&&P.attr("style",i)}let k=S.node().getBBox();return t.offsetX=0,t.width=k.width,t.height=k.height,t.offsetY=y.height-t.padding/2,t.intersect=function(P){return $t(t,P)},{cluster:a,labelBBox:y}},"rect"),Ca=$((u,t)=>{let o=u.insert("g").attr("class","note-cluster").attr("id",t.domId),h=o.insert("rect",":first-child"),l=0*t.padding,r=l/2;h.attr("rx",t.rx).attr("ry",t.ry).attr("x",t.x-t.width/2-r).attr("y",t.y-t.height/2-r).attr("width",t.width+l).attr("height",t.height+l).attr("fill","none");let p=h.node().getBBox();return t.width=p.width,t.height=p.height,t.intersect=function(i){return $t(t,i)},{cluster:o,labelBBox:{width:0,height:0}}},"noteGroup"),Ra=$(async(u,t)=>{let o=U(),{themeVariables:h,handDrawnSeed:l}=o,{altBackground:r,compositeBackground:p,compositeTitleBackground:i,nodeBorder:n}=h,e=u.insert("g").attr("class",t.cssClasses).attr("id",t.domId).attr("data-id",t.id).attr("data-look",t.look),s=e.insert("g",":first-child"),a=e.insert("g").attr("class","cluster-label"),g=e.append("rect"),c=await At(a,t.label,t.labelStyle,void 0,!0),f=c.getBBox();if(at(o)){let B=c.children[0],M=Z(c);f=B.getBoundingClientRect(),M.attr("width",f.width),M.attr("height",f.height)}let y=0*t.padding,m=y/2,d=(t.width<=f.width+t.padding?f.width+t.padding:t.width)+y;t.width<=f.width+t.padding?t.diff=(d-t.width)/2-t.padding:t.diff=-t.padding;let w=t.height+y,x=t.height+y-f.height-6,S=t.x-d/2,b=t.y-w/2;t.width=d;let k=t.y-t.height/2-m+f.height+2,P;if(t.look==="handDrawn"){let B=t.cssClasses.includes("statediagram-cluster-alt"),M=v.svg(e),C=t.rx||t.ry?M.path(yt(S,b,d,w,10),{roughness:.7,fill:i,fillStyle:"solid",stroke:n,seed:l}):M.rectangle(S,b,d,w,{seed:l});P=e.insert(()=>C,":first-child");let X=M.rectangle(S,k,d,x,{fill:B?r:p,fillStyle:B?"hachure":"solid",stroke:n,seed:l});P=e.insert(()=>C,":first-child"),g=e.insert(()=>X)}else P=s.insert("rect",":first-child"),P.attr("class","outer").attr("x",S).attr("y",b).attr("width",d).attr("height",w).attr("data-look",t.look),g.attr("class","inner").attr("x",S).attr("y",k).attr("width",d).attr("height",x);a.attr("transform",`translate(${t.x-f.width/2}, ${b+1-(at(o)?0:3)})`);let D=P.node().getBBox();return t.height=D.height,t.offsetX=0,t.offsetY=f.height-t.padding/2,t.labelBBox=f,t.intersect=function(B){return $t(t,B)},{cluster:e,labelBBox:f}},"roundedWithTitle"),Aa=$(async(u,t)=>{z.info("Creating subgraph rect for ",t.id,t);let o=U(),{themeVariables:h,handDrawnSeed:l}=o,{clusterBkg:r,clusterBorder:p}=h,{labelStyles:i,nodeStyles:n,borderStyles:e,backgroundStyles:s}=W(t),a=u.insert("g").attr("class","cluster "+t.cssClasses).attr("id",t.domId).attr("data-look",t.look),g=at(o),c=a.insert("g").attr("class","cluster-label "),f=await nt(c,t.label,{style:t.labelStyle,useHtmlLabels:g,isNode:!0,width:t.width}),y=f.getBBox();if(at(o)){let P=f.children[0],D=Z(f);y=P.getBoundingClientRect(),D.attr("width",y.width),D.attr("height",y.height)}let m=t.width<=y.width+t.padding?y.width+t.padding:t.width;t.width<=y.width+t.padding?t.diff=(m-t.width)/2-t.padding:t.diff=-t.padding;let d=t.height,w=t.x-m/2,x=t.y-d/2;z.trace("Data ",t,JSON.stringify(t));let S;if(t.look==="handDrawn"){let P=v.svg(a),D=I(t,{roughness:.7,fill:r,stroke:p,fillWeight:4,seed:l}),B=P.path(yt(w,x,m,d,t.rx),D);S=a.insert(()=>(z.debug("Rough node insert CXC",B),B),":first-child"),S.select("path:nth-child(2)").attr("style",e.join(";")),S.select("path").attr("style",s.join(";").replace("fill","stroke"))}else S=a.insert("rect",":first-child"),S.attr("style",n).attr("rx",t.rx).attr("ry",t.ry).attr("x",w).attr("y",x).attr("width",m).attr("height",d);let{subGraphTitleTopMargin:b}=Tt(o);if(c.attr("transform",`translate(${t.x-y.width/2}, ${t.y-t.height/2+b})`),i){let P=c.select("span");P&&P.attr("style",i)}let k=S.node().getBBox();return t.offsetX=0,t.width=k.width,t.height=k.height,t.offsetY=y.height-t.padding/2,t.intersect=function(P){return $t(t,P)},{cluster:a,labelBBox:y}},"kanbanSection"),Ha=$((u,t)=>{let o=U(),{themeVariables:h,handDrawnSeed:l}=o,{nodeBorder:r}=h,p=u.insert("g").attr("class",t.cssClasses).attr("id",t.domId).attr("data-look",t.look),i=p.insert("g",":first-child"),n=0*t.padding,e=t.width+n;t.diff=-t.padding;let s=t.height+n,a=t.x-e/2,g=t.y-s/2;t.width=e;let c;if(t.look==="handDrawn"){let m=v.svg(p).rectangle(a,g,e,s,{fill:"lightgrey",roughness:.5,strokeLineDash:[5],stroke:r,seed:l});c=p.insert(()=>m,":first-child")}else{c=i.insert("rect",":first-child");let y="outer";t.look,y="divider",c.attr("class",y).attr("x",a).attr("y",g).attr("width",e).attr("height",s).attr("data-look",t.look)}let f=c.node().getBBox();return t.height=f.height,t.offsetX=0,t.offsetY=0,t.intersect=function(y){return $t(t,y)},{cluster:p,labelBBox:{}}},"divider"),Ia=ns,La={rect:ns,squareRect:Ia,roundedWithTitle:Ra,noteGroup:Ca,divider:Ha,kanbanSection:Aa},cs=new Map,ye=$(async(u,t)=>{let o=t.shape||"rect",h=await La[o](u,t);return cs.set(t.id,h),h},"insertCluster"),pe=$(()=>{cs=new Map},"clear");function os(u,t){return u.intersect(t)}$(os,"intersectNode");var Wa=os;function hs(u,t,o,h){var l=u.x,r=u.y,p=l-h.x,i=r-h.y,n=Math.sqrt(t*t*i*i+o*o*p*p),e=Math.abs(t*o*p/n);h.x<l&&(e=-e);var s=Math.abs(t*o*i/n);return h.y<r&&(s=-s),{x:l+e,y:r+s}}$(hs,"intersectEllipse");var gs=hs;function fs(u,t,o){return gs(u,t,t,o)}$(fs,"intersectCircle");var Ea=fs;function ys(u,t,o,h){{let l=t.y-u.y,r=u.x-t.x,p=t.x*u.y-u.x*t.y,i=l*o.x+r*o.y+p,n=l*h.x+r*h.y+p,e=1e-6;if(i!==0&&n!==0&&Ot(i,n))return;let s=h.y-o.y,a=o.x-h.x,g=h.x*o.y-o.x*h.y,c=s*u.x+a*u.y+g,f=s*t.x+a*t.y+g;if(Math.abs(c)<e&&Math.abs(f)<e&&Ot(c,f))return;let y=l*a-s*r;if(y===0)return;let m=Math.abs(y/2),d=r*g-a*p,w=d<0?(d-m)/y:(d+m)/y;d=s*p-l*g;let x=d<0?(d-m)/y:(d+m)/y;return{x:w,y:x}}}$(ys,"intersectLine");function Ot(u,t){return u*t>0}$(Ot,"sameSign");var Ta=ys;function ps(u,t,o){let h=u.x,l=u.y,r=[],p=Number.POSITIVE_INFINITY,i=Number.POSITIVE_INFINITY;typeof t.forEach=="function"?t.forEach(function(s){p=Math.min(p,s.x),i=Math.min(i,s.y)}):(p=Math.min(p,t.x),i=Math.min(i,t.y));let n=h-u.width/2-p,e=l-u.height/2-i;for(let s=0;s<t.length;s++){let a=t[s],g=t[s<t.length-1?s+1:0],c=Ta(u,o,{x:n+a.x,y:e+a.y},{x:n+g.x,y:e+g.y});c&&r.push(c)}return r.length?(r.length>1&&r.sort(function(s,a){let g=s.x-o.x,c=s.y-o.y,f=Math.sqrt(g*g+c*c),y=a.x-o.x,m=a.y-o.y,d=Math.sqrt(y*y+m*m);return f<d?-1:f===d?0:1}),r[0]):u}$(ps,"intersectPolygon");var Xa=ps,N={node:Wa,circle:Ea,ellipse:gs,polygon:Xa,rect:$t};function us(u,t){let{labelStyles:o}=W(t);t.labelStyle=o;let h=Y(t),l=h;h||(l="anchor");let r=u.insert("g").attr("class",l).attr("id",t.domId||t.id),p=1,{cssStyles:i}=t,n=v.svg(r),e=I(t,{fill:"black",stroke:"none",fillStyle:"solid"});t.look!=="handDrawn"&&(e.roughness=0);let s=n.circle(0,0,p*2,e),a=r.insert(()=>s,":first-child");return a.attr("class","anchor").attr("style",K(i)),T(t,a),t.intersect=function(g){return z.info("Circle intersect",t,p,g),N.circle(t,p,g)},r}$(us,"anchor");function jt(u,t,o,h,l,r,p){let n=(u+o)/2,e=(t+h)/2,s=Math.atan2(h-t,o-u),a=(o-u)/2,g=(h-t)/2,c=a/l,f=g/r,y=Math.sqrt(c**2+f**2);if(y>1)throw new Error("The given radii are too small to create an arc between the points.");let m=Math.sqrt(1-y**2),d=n+m*r*Math.sin(s)*(p?-1:1),w=e-m*l*Math.cos(s)*(p?-1:1),x=Math.atan2((t-w)/r,(u-d)/l),b=Math.atan2((h-w)/r,(o-d)/l)-x;p&&b<0&&(b+=2*Math.PI),!p&&b>0&&(b-=2*Math.PI);let k=[];for(let P=0;P<20;P++){let D=P/19,B=x+D*b,M=d+l*Math.cos(B),C=w+r*Math.sin(B);k.push({x:M,y:C})}return k}$(jt,"generateArcPoints");function ds(u,t,o){let[h,l]=[t,o].sort((r,p)=>p-r);return l*(1-Math.sqrt(1-(u/h/2)**2))}$(ds,"calculateArcSagitta");async function ms(u,t){let{labelStyles:o,nodeStyles:h}=W(t);t.labelStyle=o;let l=t.padding??0,r=t.look==="neo"?16:l,p=t.look==="neo"?12:l,i=$(B=>B+p,"calcTotalHeight"),n=$(B=>{let M=B/2;return[M/(2.5+B/50),M]},"calcEllipseRadius"),{shapeSvg:e,bbox:s}=await O(u,t,Y(t)),a=i(t?.height?t?.height:s.height),[g,c]=n(a),f=ds(a,g,c),m=(t?.width?t?.width:s.width)+r*2+f-f,d=a,{cssStyles:w}=t,x=[{x:m/2,y:-d/2},{x:-m/2,y:-d/2},...jt(-m/2,-d/2,-m/2,d/2,g,c,!1),{x:m/2,y:d/2},...jt(m/2,d/2,m/2,-d/2,g,c,!0)],S=v.svg(e),b=I(t,{});t.look!=="handDrawn"&&(b.roughness=0,b.fillStyle="solid");let k=G(x),P=S.path(k,b),D=e.insert(()=>P,":first-child");return D.attr("class","basic label-container outer-path"),w&&t.look!=="handDrawn"&&D.selectAll("path").attr("style",w),h&&t.look!=="handDrawn"&&D.selectAll("path").attr("style",h),D.attr("transform",`translate(${g/2}, 0)`),T(t,D),t.intersect=function(B){return N.polygon(t,x,B)},e}$(ms,"bowTieRect");function ht(u,t,o,h){return u.insert("polygon",":first-child").attr("points",h.map(function(l){return l.x+","+l.y}).join(" ")).attr("class","label-container").attr("transform","translate("+-t/2+","+o/2+")")}$(ht,"insertPolygonShape");var Rt=12;async function ws(u,t){let{labelStyles:o,nodeStyles:h}=W(t);t.labelStyle=o;let l=t.padding??0,r=t.look==="neo"?28:l,p=t.look==="neo"?24:l,{shapeSvg:i,bbox:n}=await O(u,t,Y(t)),e=(t?.width??n.width)+(t.look==="neo"?r*2:r+Rt),s=(t?.height??n.height)+(t.look==="neo"?p*2:p),a=0,g=e,c=-s,f=0,y=[{x:a+Rt,y:c},{x:g,y:c},{x:g,y:f},{x:a,y:f},{x:a,y:c+Rt},{x:a+Rt,y:c}],m,{cssStyles:d}=t;if(t.look==="handDrawn"){let w=v.svg(i),x=I(t,{}),S=G(y),b=w.path(S,x);m=i.insert(()=>b,":first-child").attr("transform",`translate(${-e/2}, ${s/2})`),d&&m.attr("style",d)}else m=ht(i,e,s,y);return h&&m.attr("style",h),T(t,m),t.intersect=function(w){return N.polygon(t,y,w)},i}$(ws,"card");function xs(u,t){let{nodeStyles:o}=W(t);t.label="";let h=u.insert("g").attr("class",Y(t)).attr("id",t.domId??t.id),{cssStyles:l}=t,r=Math.max(28,t.width??0),p=[{x:0,y:r/2},{x:r/2,y:0},{x:0,y:-r/2},{x:-r/2,y:0}],i=v.svg(h),n=I(t,{});t.look!=="handDrawn"&&(n.roughness=0,n.fillStyle="solid");let e=G(p),s=i.path(e,n),a=h.insert(()=>s,":first-child");return l&&t.look!=="handDrawn"&&a.selectAll("path").attr("style",l),o&&t.look!=="handDrawn"&&a.selectAll("path").attr("style",o),t.width=28,t.height=28,t.intersect=function(g){return N.polygon(t,p,g)},h}$(xs,"choice");async function Gt(u,t,o){let{labelStyles:h,nodeStyles:l}=W(t);t.labelStyle=h;let{shapeSvg:r,bbox:p,halfPadding:i}=await O(u,t,Y(t)),n=16,e=o?.padding??i,s=t.look==="neo"?p.width/2+n*2:p.width/2+e,a,{cssStyles:g}=t;if(t.look==="handDrawn"){let c=v.svg(r),f=I(t,{}),y=c.circle(0,0,s*2,f);a=r.insert(()=>y,":first-child"),a.attr("class","basic label-container").attr("style",K(g))}else a=r.insert("circle",":first-child").attr("class","basic label-container").attr("style",l).attr("r",s).attr("cx",0).attr("cy",0);return T(t,a),t.calcIntersect=function(c,f){let y=c.width/2;return N.circle(c,y,f)},t.intersect=function(c){return z.info("Circle intersect",t,s,c),N.circle(t,s,c)},r}$(Gt,"circle");function bs(u){let t=Math.cos(Math.PI/4),o=Math.sin(Math.PI/4),h=u*2,l={x:h/2*t,y:h/2*o},r={x:-(h/2)*t,y:h/2*o},p={x:-(h/2)*t,y:-(h/2)*o},i={x:h/2*t,y:-(h/2)*o};return`M ${r.x},${r.y} L ${i.x},${i.y}
|
|
2
|
+
M ${l.x},${l.y} L ${p.x},${p.y}`}$(bs,"createLine");function Ss(u,t){let{labelStyles:o,nodeStyles:h}=W(t);t.labelStyle=o,t.label="";let l=u.insert("g").attr("class",Y(t)).attr("id",t.domId??t.id),r=Math.max(30,t?.width??0),{cssStyles:p}=t,i=v.svg(l),n=I(t,{});t.look!=="handDrawn"&&(n.roughness=0,n.fillStyle="solid");let e=i.circle(0,0,r*2,n),s=bs(r),a=i.path(s,n),g=l.insert(()=>e,":first-child");return g.insert(()=>a),g.attr("class","outer-path"),p&&t.look!=="handDrawn"&&g.selectAll("path").attr("style",p),h&&t.look!=="handDrawn"&&g.selectAll("path").attr("style",h),T(t,g),t.intersect=function(c){return z.info("crossedCircle intersect",t,{radius:r,point:c}),N.circle(t,r,c)},l}$(Ss,"crossedCircle");function ct(u,t,o,h=100,l=0,r=180){let p=[],i=l*Math.PI/180,s=(r*Math.PI/180-i)/(h-1);for(let a=0;a<h;a++){let g=i+a*s,c=u+o*Math.cos(g),f=t+o*Math.sin(g);p.push({x:-c,y:-f})}return p}$(ct,"generateCirclePoints");async function $s(u,t){let{labelStyles:o,nodeStyles:h}=W(t);t.labelStyle=o;let{shapeSvg:l,bbox:r,label:p}=await O(u,t,Y(t)),i=t.look==="neo"?18:t.padding??0,n=t.look==="neo"?12:t.padding??0,e=r.width+i,s=r.height+n,a=Math.max(5,s*.1),{cssStyles:g}=t,c=[...ct(e/2,-s/2,a,30,-90,0),{x:-e/2-a,y:a},...ct(e/2+a*2,-a,a,20,-180,-270),...ct(e/2+a*2,a,a,20,-90,-180),{x:-e/2-a,y:-s/2},...ct(e/2,s/2,a,20,0,90)],f=[{x:e/2,y:-s/2-a},{x:-e/2,y:-s/2-a},...ct(e/2,-s/2,a,20,-90,0),{x:-e/2-a,y:-a},...ct(e/2+e*.1,-a,a,20,-180,-270),...ct(e/2+e*.1,a,a,20,-90,-180),{x:-e/2-a,y:s/2},...ct(e/2,s/2,a,20,0,90),{x:-e/2,y:s/2+a},{x:e/2,y:s/2+a}],y=v.svg(l),m=I(t,{fill:"none"});t.look!=="handDrawn"&&(m.roughness=0,m.fillStyle="solid");let w=G(c).replace("Z",""),x=y.path(w,m),S=G(f),b=y.path(S,{...m}),k=l.insert("g",":first-child");return k.insert(()=>b,":first-child").attr("stroke-opacity",0),k.insert(()=>x,":first-child"),k.attr("class","text"),g&&t.look!=="handDrawn"&&k.selectAll("path").attr("style",g),h&&t.look!=="handDrawn"&&k.selectAll("path").attr("style",h),k.attr("transform",`translate(${a}, 0)`),p.attr("transform",`translate(${-e/2+a-(r.x-(r.left??0))},${-s/2+(t.padding??0)/2-(r.y-(r.top??0))})`),T(t,k),t.intersect=function(P){return N.polygon(t,f,P)},l}$($s,"curlyBraceLeft");function ot(u,t,o,h=100,l=0,r=180){let p=[],i=l*Math.PI/180,s=(r*Math.PI/180-i)/(h-1);for(let a=0;a<h;a++){let g=i+a*s,c=u+o*Math.cos(g),f=t+o*Math.sin(g);p.push({x:c,y:f})}return p}$(ot,"generateCirclePoints");async function vs(u,t){let{labelStyles:o,nodeStyles:h}=W(t);t.labelStyle=o;let{shapeSvg:l,bbox:r,label:p}=await O(u,t,Y(t)),i=t.look==="neo"?18:t.padding??0,n=t.look==="neo"?12:t.padding??0,e=r.width+(t.look==="neo"?i*2:i),s=r.height+(t.look==="neo"?n*2:n),a=Math.max(5,s*.1),{cssStyles:g}=t,c=[...ot(e/2,-s/2,a,20,-90,0),{x:e/2+a,y:-a},...ot(e/2+a*2,-a,a,20,-180,-270),...ot(e/2+a*2,a,a,20,-90,-180),{x:e/2+a,y:s/2},...ot(e/2,s/2,a,20,0,90)],f=[{x:-e/2,y:-s/2-a},{x:e/2,y:-s/2-a},...ot(e/2,-s/2,a,20,-90,0),{x:e/2+a,y:-a},...ot(e/2+a*2,-a,a,20,-180,-270),...ot(e/2+a*2,a,a,20,-90,-180),{x:e/2+a,y:s/2},...ot(e/2,s/2,a,20,0,90),{x:e/2,y:s/2+a},{x:-e/2,y:s/2+a}],y=v.svg(l),m=I(t,{fill:"none"});t.look!=="handDrawn"&&(m.roughness=0,m.fillStyle="solid");let w=G(c).replace("Z",""),x=y.path(w,m),S=G(f),b=y.path(S,{...m}),k=l.insert("g",":first-child");return k.insert(()=>b,":first-child").attr("stroke-opacity",0),k.insert(()=>x,":first-child"),k.attr("class","text"),g&&t.look!=="handDrawn"&&k.selectAll("path").attr("style",g),h&&t.look!=="handDrawn"&&k.selectAll("path").attr("style",h),k.attr("transform",`translate(${-a}, 0)`),p.attr("transform",`translate(${-e/2+(t.padding??0)/2-(r.x-(r.left??0))},${-s/2+(t.padding??0)/2-(r.y-(r.top??0))})`),T(t,k),t.intersect=function(P){return N.polygon(t,f,P)},l}$(vs,"curlyBraceRight");function tt(u,t,o,h=100,l=0,r=180){let p=[],i=l*Math.PI/180,s=(r*Math.PI/180-i)/(h-1);for(let a=0;a<h;a++){let g=i+a*s,c=u+o*Math.cos(g),f=t+o*Math.sin(g);p.push({x:-c,y:-f})}return p}$(tt,"generateCirclePoints");async function ks(u,t){let{labelStyles:o,nodeStyles:h}=W(t);t.labelStyle=o;let{shapeSvg:l,bbox:r,label:p}=await O(u,t,Y(t)),i=t.look==="neo"?18:t.padding??0,n=t.look==="neo"?12:t.padding??0,e=r.width+(t.look==="neo"?i*2:i),s=r.height+(t.look==="neo"?n*2:n),a=Math.max(5,s*.1),{cssStyles:g}=t,c=[...tt(e/2,-s/2,a,30,-90,0),{x:-e/2-a,y:a},...tt(e/2+a*2,-a,a,20,-180,-270),...tt(e/2+a*2,a,a,20,-90,-180),{x:-e/2-a,y:-s/2},...tt(e/2,s/2,a,20,0,90)],f=[...tt(-e/2+a+a/2,-s/2,a,20,-90,-180),{x:e/2-a/2,y:a},...tt(-e/2-a/2,-a,a,20,0,90),...tt(-e/2-a/2,a,a,20,-90,0),{x:e/2-a/2,y:-a},...tt(-e/2+a+a/2,s/2,a,30,-180,-270)],y=[{x:e/2,y:-s/2-a},{x:-e/2,y:-s/2-a},...tt(e/2,-s/2,a,20,-90,0),{x:-e/2-a,y:-a},...tt(e/2+a*2,-a,a,20,-180,-270),...tt(e/2+a*2,a,a,20,-90,-180),{x:-e/2-a,y:s/2},...tt(e/2,s/2,a,20,0,90),{x:-e/2,y:s/2+a},{x:e/2-a-a/2,y:s/2+a},...tt(-e/2+a+a/2,-s/2,a,20,-90,-180),{x:e/2-a/2,y:a},...tt(-e/2-a/2,-a,a,20,0,90),...tt(-e/2-a/2,a,a,20,-90,0),{x:e/2-a/2,y:-a},...tt(-e/2+a+a/2,s/2,a,30,-180,-270)],m=v.svg(l),d=I(t,{fill:"none"});t.look!=="handDrawn"&&(d.roughness=0,d.fillStyle="solid");let x=G(c).replace("Z",""),S=m.path(x,d),k=G(f).replace("Z",""),P=m.path(k,d),D=G(y),B=m.path(D,{...d}),M=l.insert("g",":first-child");return M.insert(()=>B,":first-child").attr("stroke-opacity",0),M.insert(()=>S,":first-child"),M.insert(()=>P,":first-child"),M.attr("class","text"),g&&t.look!=="handDrawn"&&M.selectAll("path").attr("style",g),h&&t.look!=="handDrawn"&&M.selectAll("path").attr("style",h),M.attr("transform",`translate(${a-a/4}, 0)`),p.attr("transform",`translate(${-e/2+(t.padding??0)/2-(r.x-(r.left??0))},${-s/2+(t.padding??0)/2-(r.y-(r.top??0))})`),T(t,M),t.intersect=function(C){return N.polygon(t,y,C)},l}$(ks,"curlyBraces");async function Ps(u,t){let{labelStyles:o,nodeStyles:h}=W(t);t.labelStyle=o;let l=t.padding??0,r=t.look==="neo"?16:l,p=t.look==="neo"?12:l,i=20,n=5,{shapeSvg:e,bbox:s}=await O(u,t,Y(t)),a=Math.max(i,(s.width+r*2)*1.25,t?.width??0),g=Math.max(n,s.height+p*2,t?.height??0),c=g/2,{cssStyles:f}=t,y=v.svg(e),m=I(t,{});t.look!=="handDrawn"&&(m.roughness=0,m.fillStyle="solid");let d=a,w=g,x=d-c,S=w/4,b=[{x,y:0},{x:S,y:0},{x:0,y:w/2},{x:S,y:w},{x,y:w},...Ct(-x,-w/2,c,50,270,90)],k=G(b),P=y.path(k,m),D=e.insert(()=>P,":first-child");return D.attr("class","basic label-container outer-path"),f&&t.look!=="handDrawn"&&D.selectChildren("path").attr("style",f),h&&t.look!=="handDrawn"&&D.selectChildren("path").attr("style",h),D.attr("transform",`translate(${-a/2}, ${-g/2})`),T(t,D),t.intersect=function(B){return N.polygon(t,b,B)},e}$(Ps,"curvedTrapezoid");var _a=$((u,t,o,h,l,r)=>[`M${u},${t+r}`,`a${l},${r} 0,0,0 ${o},0`,`a${l},${r} 0,0,0 ${-o},0`,`l0,${h}`,`a${l},${r} 0,0,0 ${o},0`,`l0,${-h}`].join(" "),"createCylinderPathD"),Ya=$((u,t,o,h,l,r)=>[`M${u},${t+r}`,`M${u+o},${t+r}`,`a${l},${r} 0,0,0 ${-o},0`,`l0,${h}`,`a${l},${r} 0,0,0 ${o},0`,`l0,${-h}`].join(" "),"createOuterCylinderPathD"),Oa=$((u,t,o,h,l,r)=>[`M${u-o/2},${-h/2}`,`a${l},${r} 0,0,0 ${o},0`].join(" "),"createInnerCylinderPathD"),Jt=8,Qt=8;async function Ds(u,t){let{labelStyles:o,nodeStyles:h}=W(t);t.labelStyle=o;let l=t.padding??0,r=t.look==="neo"?24:l,p=t.look==="neo"?24:l;if(t.width||t.height){let m=t.width??0;t.width=(t.width??0)-p,t.width<Qt&&(t.width=Qt);let w=m/2/(2.5+m/50);t.height=(t.height??0)-r-w*3,t.height<Jt&&(t.height=Jt)}let{shapeSvg:i,bbox:n,label:e}=await O(u,t,Y(t)),s=(t.width?t.width:n.width)+p,a=s/2,g=a/(2.5+s/50),c=(t.height?t.height:n.height)+r+g,f,{cssStyles:y}=t;if(t.look==="handDrawn"){let m=v.svg(i),d=Ya(0,0,s,c,a,g),w=Oa(0,g,s,c,a,g),x=I(t,{}),S=m.path(d,x),b=m.path(w,I(t,{fill:"none"}));f=i.insert(()=>b,":first-child"),f=i.insert(()=>S,":first-child"),f.attr("class","basic label-container"),y&&f.attr("style",y)}else{let m=_a(0,0,s,c,a,g);f=i.insert("path",":first-child").attr("d",m).attr("class","basic label-container outer-path").attr("style",K(y)).attr("style",h)}return f.attr("label-offset-y",g),f.attr("transform",`translate(${-s/2}, ${-(c/2+g)})`),T(t,f),e.attr("transform",`translate(${-(n.width/2)-(n.x-(n.left??0))}, ${-(n.height/2)+(t.padding??0)/1.5-(n.y-(n.top??0))})`),t.intersect=function(m){let d=N.rect(t,m),w=d.x-(t.x??0);if(a!=0&&(Math.abs(w)<(t.width??0)/2||Math.abs(w)==(t.width??0)/2&&Math.abs(d.y-(t.y??0))>(t.height??0)/2-g)){let x=g*g*(1-w*w/(a*a));x>0&&(x=Math.sqrt(x)),x=g-x,m.y-(t.y??0)>0&&(x=-x),d.y+=x}return d},i}$(Ds,"cylinder");async function vt(u,t,o){let{labelStyles:h,nodeStyles:l}=W(t);t.labelStyle=h;let{shapeSvg:r,bbox:p}=await O(u,t,Y(t)),i=Math.max(p.width+o.labelPaddingX*2,t?.width||0),n=Math.max(p.height+o.labelPaddingY*2,t?.height||0),e=-i/2,s=-n/2,a,{rx:g,ry:c}=t,{cssStyles:f}=t;if(o?.rx&&o.ry&&(g=o.rx,c=o.ry),t.look==="handDrawn"){let y=v.svg(r),m=I(t,{}),d=g||c?y.path(yt(e,s,i,n,g||0),m):y.rectangle(e,s,i,n,m);a=r.insert(()=>d,":first-child"),a.attr("class","basic label-container").attr("style",K(f))}else a=r.insert("rect",":first-child"),a.attr("class","basic label-container").attr("style",l).attr("rx",K(g)).attr("ry",K(c)).attr("x",e).attr("y",s).attr("width",i).attr("height",n);return T(t,a),t.calcIntersect=function(y,m){return N.rect(y,m)},t.intersect=function(y){return N.rect(t,y)},r}$(vt,"drawRect");async function Bs(u,t){let{cssClasses:o,labelPaddingX:h,labelPaddingY:l,padding:r,width:p,height:i}=t,n={rx:0,ry:0,classes:o??"",labelPaddingX:h??(r??0)*2,labelPaddingY:l??r??0},e=await vt(u,t,n);if(t.look==="handDrawn"){let c=v.svg(e),f=I(t,{}),y=e.select(".basic.label-container > path:nth-child(2)"),m=y.node();if(!m)return e;let d=null;if(m instanceof SVGGraphicsElement)d=m.getBBox();else return e;return e.insert(()=>c.line(d.x,d.y,d.x+d.width,d.y,f),".basic.label-container g.label"),e.insert(()=>c.line(d.x,d.y+d.height,d.x+d.width,d.y+d.height,f),".basic.label-container g.label"),y.remove(),e}let s=e.select(".basic.label-container"),a=(Number(s.attr("width"))||p)??0,g=(Number(s.attr("height"))||i)??0;return a>0&&g>0&&s.attr("stroke-dasharray",`${a} ${g}`),e}$(Bs,"datastore");async function Ms(u,t){let{labelStyles:o,nodeStyles:h}=W(t);t.labelStyle=o;let l=t.look==="neo"?16:t.padding??0,r=t.look==="neo"?16:t.padding??0,{shapeSvg:p,bbox:i,label:n}=await O(u,t,Y(t)),e=i.width+l,s=i.height+r,a=s*.2,g=-e/2,c=-s/2-a/2,{cssStyles:f}=t,y=v.svg(p),m=I(t,{});t.look!=="handDrawn"&&(m.roughness=0,m.fillStyle="solid");let d=[{x:g,y:c+a},{x:-g,y:c+a},{x:-g,y:-c},{x:g,y:-c},{x:g,y:c},{x:-g,y:c},{x:-g,y:c+a}],w=y.polygon(d.map(S=>[S.x,S.y]),m),x=p.insert(()=>w,":first-child");return x.attr("class","basic label-container outer-path"),f&&t.look!=="handDrawn"&&x.selectAll("path").attr("style",f),h&&t.look!=="handDrawn"&&x.selectAll("path").attr("style",h),n.attr("transform",`translate(${g+(t.padding??0)/2-(i.x-(i.left??0))}, ${c+a+(t.padding??0)/2-(i.y-(i.top??0))})`),T(t,x),t.intersect=function(S){return N.rect(t,S)},p}$(Ms,"dividedRectangle");async function Ns(u,t){let{labelStyles:o,nodeStyles:h}=W(t),l=t.look==="neo"?12:5;t.labelStyle=o;let r=t.padding??0,p=t.look==="neo"?16:r,{shapeSvg:i,bbox:n}=await O(u,t,Y(t)),e=(t?.width?t?.width/2:n.width/2)+(p??0),s=e-l,a,{cssStyles:g}=t;if(t.look==="handDrawn"){let c=v.svg(i),f=I(t,{roughness:.2,strokeWidth:2.5}),y=I(t,{roughness:.2,strokeWidth:1.5}),m=c.circle(0,0,e*2,f),d=c.circle(0,0,s*2,y);a=i.insert("g",":first-child"),a.attr("class",K(t.cssClasses)).attr("style",K(g)),a.node()?.appendChild(m),a.node()?.appendChild(d)}else{a=i.insert("g",":first-child");let c=a.insert("circle",":first-child"),f=a.insert("circle");a.attr("class","basic label-container").attr("style",h),c.attr("class","outer-circle").attr("style",h).attr("r",e).attr("cx",0).attr("cy",0),f.attr("class","inner-circle").attr("style",h).attr("r",s).attr("cx",0).attr("cy",0)}return T(t,a),t.intersect=function(c){return z.info("DoubleCircle intersect",t,e,c),N.circle(t,e,c)},i}$(Ns,"doublecircle");function Cs(u,t,{config:{themeVariables:o}}){let{labelStyles:h,nodeStyles:l}=W(t);t.label="",t.labelStyle=h;let r=u.insert("g").attr("class",Y(t)).attr("id",t.domId??t.id),p=7,{cssStyles:i}=t,n=v.svg(r),{nodeBorder:e}=o,s=I(t,{fillStyle:"solid"});t.look!=="handDrawn"&&(s.roughness=0);let a=n.circle(0,0,p*2,s),g=r.insert(()=>a,":first-child");return g.selectAll("path").attr("style",`fill: ${e} !important;`),i&&i.length>0&&t.look!=="handDrawn"&&g.selectAll("path").attr("style",i),l&&t.look!=="handDrawn"&&g.selectAll("path").attr("style",l),T(t,g),t.intersect=function(c){return z.info("filledCircle intersect",t,{radius:p,point:c}),N.circle(t,p,c)},r}$(Cs,"filledCircle");var Ut=10,Kt=10;async function Rs(u,t){let{labelStyles:o,nodeStyles:h}=W(t);t.labelStyle=o;let l=t.padding??0,r=t.look==="neo"?l*2:l;(t.width||t.height)&&(t.height=t?.height??0,t.height<Ut&&(t.height=Ut),t.width=(t?.width??0)-r-r/2,t.width<Kt&&(t.width=Kt));let{shapeSvg:p,bbox:i,label:n}=await O(u,t,Y(t)),e=(t?.width?t?.width:i.width)+(r??0),s=t?.height?t?.height:e+i.height,a=s,g=[{x:0,y:-s},{x:a,y:-s},{x:a/2,y:0}],{cssStyles:c}=t,f=v.svg(p),y=I(t,{});t.look!=="handDrawn"&&(y.roughness=0,y.fillStyle="solid");let m=G(g),d=f.path(m,y),w=p.insert(()=>d,":first-child").attr("transform",`translate(${-s/2}, ${s/2})`).attr("class","outer-path");return c&&t.look!=="handDrawn"&&w.selectChildren("path").attr("style",c),h&&t.look!=="handDrawn"&&w.selectChildren("path").attr("style",h),t.width=e,t.height=s,T(t,w),n.attr("transform",`translate(${-i.width/2-(i.x-(i.left??0))}, ${-s/2+(t.padding??0)/2+(i.y-(i.top??0))})`),t.intersect=function(x){return z.info("Triangle intersect",t,g,x),N.polygon(t,g,x)},p}$(Rs,"flippedTriangle");function As(u,t,{dir:o,config:{state:h,themeVariables:l}}){let{nodeStyles:r}=W(t);t.label="";let p=u.insert("g").attr("class",Y(t)).attr("id",t.domId??t.id),{cssStyles:i}=t,n=Math.max(70,t?.width??0),e=Math.max(10,t?.height??0);o==="LR"&&(n=Math.max(10,t?.width??0),e=Math.max(70,t?.height??0));let s=-1*n/2,a=-1*e/2,g=v.svg(p),c=I(t,{stroke:l.lineColor,fill:l.lineColor});t.look!=="handDrawn"&&(c.roughness=0,c.fillStyle="solid");let f=g.rectangle(s,a,n,e,c),y=p.insert(()=>f,":first-child");i&&t.look!=="handDrawn"&&y.selectAll("path").attr("style",i),r&&t.look!=="handDrawn"&&y.selectAll("path").attr("style",r),T(t,y);let m=h?.padding??0;return t.width&&t.height&&(t.width+=m/2||0,t.height+=m/2||0),t.intersect=function(d){return N.rect(t,d)},p}$(As,"forkJoin");async function Hs(u,t){let{labelStyles:o,nodeStyles:h}=W(t);t.labelStyle=o;let l=15,r=10,p=t.look==="neo"?16:t.padding??0,i=t.look==="neo"?12:t.padding??0;(t.width||t.height)&&(t.height=(t?.height??0)-i*2,t.height<r&&(t.height=r),t.width=(t?.width??0)-p*2,t.width<l&&(t.width=l));let{shapeSvg:n,bbox:e}=await O(u,t,Y(t)),s=(t?.width?t?.width:Math.max(l,e.width))+p*2,a=(t?.height?t?.height:Math.max(r,e.height))+i*2,g=a/2,{cssStyles:c}=t,f=v.svg(n),y=I(t,{});t.look!=="handDrawn"&&(y.roughness=0,y.fillStyle="solid");let m=[{x:-s/2,y:-a/2},{x:s/2-g,y:-a/2},...Ct(-s/2+g,0,g,50,90,270),{x:s/2-g,y:a/2},{x:-s/2,y:a/2}],d=G(m),w=f.path(d,y),x=n.insert(()=>w,":first-child");return x.attr("class","basic label-container outer-path"),c&&t.look!=="handDrawn"&&x.selectChildren("path").attr("style",c),h&&t.look!=="handDrawn"&&x.selectChildren("path").attr("style",h),T(t,x),t.intersect=function(S){return z.info("Pill intersect",t,{radius:g,point:S}),N.polygon(t,m,S)},n}$(Hs,"halfRoundedRectangle");var ja=$((u,t,o,h,l)=>[`M${u+l},${t}`,`L${u+o-l},${t}`,`L${u+o},${t-h/2}`,`L${u+o-l},${t-h}`,`L${u+l},${t-h}`,`L${u},${t-h/2}`,"Z"].join(" "),"createHexagonPathD");async function Is(u,t){let{labelStyles:o,nodeStyles:h}=W(t),l=t.look==="neo"?3.5:4;t.labelStyle=o;let r=t.padding??0,p=70,i=32,n=t.look==="neo"?p:r,e=t.look==="neo"?i:r;if(t.width||t.height){let x=(t.height??0)/l;t.width=(t?.width??0)-2*x-e,t.height=(t.height??0)-n}let{shapeSvg:s,bbox:a}=await O(u,t,Y(t)),g=(t?.height?t?.height:a.height)+n,c=g/l,f=(t?.width?t?.width:a.width)+2*c+e,y=[{x:c,y:0},{x:f-c,y:0},{x:f,y:-g/2},{x:f-c,y:-g},{x:c,y:-g},{x:0,y:-g/2}],m,{cssStyles:d}=t;if(t.look==="handDrawn"){let w=v.svg(s),x=I(t,{}),S=ja(0,0,f,g,c),b=w.path(S,x);m=s.insert(()=>b,":first-child").attr("transform",`translate(${-f/2}, ${g/2})`),d&&m.attr("style",d)}else m=ht(s,f,g,y);return h&&m.attr("style",h),t.width=f,t.height=g,T(t,m),t.intersect=function(w){return N.polygon(t,y,w)},s}$(Is,"hexagon");async function Ls(u,t){let{labelStyles:o,nodeStyles:h}=W(t);t.label="",t.labelStyle=o;let{shapeSvg:l}=await O(u,t,Y(t)),r=Math.max(30,t?.width??0),p=Math.max(30,t?.height??0),{cssStyles:i}=t,n=v.svg(l),e=I(t,{});t.look!=="handDrawn"&&(e.roughness=0,e.fillStyle="solid");let s=[{x:0,y:0},{x:r,y:0},{x:0,y:p},{x:r,y:p}],a=G(s),g=n.path(a,e),c=l.insert(()=>g,":first-child");return c.attr("class","basic label-container outer-path"),i&&t.look!=="handDrawn"&&c.selectChildren("path").attr("style",i),h&&t.look!=="handDrawn"&&c.selectChildren("path").attr("style",h),c.attr("transform",`translate(${-r/2}, ${-p/2})`),T(t,c),t.intersect=function(f){return z.info("Pill intersect",t,{points:s}),N.polygon(t,s,f)},l}$(Ls,"hourglass");async function Ws(u,t,{config:{themeVariables:o,flowchart:h}}){let{labelStyles:l}=W(t);t.labelStyle=l;let r=t.assetHeight??48,p=t.assetWidth??48,i=Math.max(r,p),n=h?.wrappingWidth;t.width=Math.max(i,n??0);let{shapeSvg:e,bbox:s,label:a}=await O(u,t,"icon-shape default"),g=t.pos==="t",c=i,f=i,{nodeBorder:y}=o,{stylesMap:m}=Bt(t),d=-f/2,w=-c/2,x=t.label?8:0,S=v.svg(e),b=I(t,{stroke:"none",fill:"none"});t.look!=="handDrawn"&&(b.roughness=0,b.fillStyle="solid");let k=S.rectangle(d,w,f,c,b),P=Math.max(f,s.width),D=c+s.height+x,B=S.rectangle(-P/2,-D/2,P,D,{...b,fill:"transparent",stroke:"none"}),M=e.insert(()=>k,":first-child"),C=e.insert(()=>B);if(t.icon){let X=e.append("g");X.html(`<g>${await Mt(t.icon,{height:i,width:i,fallbackPrefix:""})}</g>`);let R=X.node().getBBox(),L=R.width,H=R.height,A=R.x,E=R.y;X.attr("transform",`translate(${-L/2-A},${g?s.height/2+x/2-H/2-E:-s.height/2-x/2-H/2-E})`),X.attr("style",`color: ${m.get("stroke")??y};`)}return a.attr("transform",`translate(${-s.width/2-(s.x-(s.left??0))},${g?-D/2:D/2-s.height})`),M.attr("transform",`translate(0,${g?s.height/2+x/2:-s.height/2-x/2})`),T(t,C),t.intersect=function(X){if(z.info("iconSquare intersect",t,X),!t.label)return N.rect(t,X);let R=t.x??0,L=t.y??0,H=t.height??0,A=[];return g?A=[{x:R-s.width/2,y:L-H/2},{x:R+s.width/2,y:L-H/2},{x:R+s.width/2,y:L-H/2+s.height+x},{x:R+f/2,y:L-H/2+s.height+x},{x:R+f/2,y:L+H/2},{x:R-f/2,y:L+H/2},{x:R-f/2,y:L-H/2+s.height+x},{x:R-s.width/2,y:L-H/2+s.height+x}]:A=[{x:R-f/2,y:L-H/2},{x:R+f/2,y:L-H/2},{x:R+f/2,y:L-H/2+c},{x:R+s.width/2,y:L-H/2+c},{x:R+s.width/2/2,y:L+H/2},{x:R-s.width/2,y:L+H/2},{x:R-s.width/2,y:L-H/2+c},{x:R-f/2,y:L-H/2+c}],N.polygon(t,A,X)},e}$(Ws,"icon");async function Es(u,t,{config:{themeVariables:o,flowchart:h}}){let{labelStyles:l}=W(t);t.labelStyle=l;let r=t.assetHeight??48,p=t.assetWidth??48,i=Math.max(r,p),n=h?.wrappingWidth;t.width=Math.max(i,n??0);let{shapeSvg:e,bbox:s,label:a}=await O(u,t,"icon-shape default"),g=20,c=t.label?8:0,f=t.pos==="t",{nodeBorder:y,mainBkg:m}=o,{stylesMap:d}=Bt(t),w=v.svg(e),x=I(t,{});t.look!=="handDrawn"&&(x.roughness=0,x.fillStyle="solid");let S=d.get("fill");x.stroke=S??m;let b=e.append("g");t.icon&&b.html(`<g>${await Mt(t.icon,{height:i,width:i,fallbackPrefix:""})}</g>`);let k=b.node().getBBox(),P=k.width,D=k.height,B=k.x,M=k.y,C=Math.max(P,D)*Math.SQRT2+g*2,X=w.circle(0,0,C,x),R=Math.max(C,s.width),L=C+s.height+c,H=w.rectangle(-R/2,-L/2,R,L,{...x,fill:"transparent",stroke:"none"}),A=e.insert(()=>X,":first-child"),E=e.insert(()=>H);return b.attr("transform",`translate(${-P/2-B},${f?s.height/2+c/2-D/2-M:-s.height/2-c/2-D/2-M})`),b.attr("style",`color: ${d.get("stroke")??y};`),a.attr("transform",`translate(${-s.width/2-(s.x-(s.left??0))},${f?-L/2:L/2-s.height})`),A.attr("transform",`translate(0,${f?s.height/2+c/2:-s.height/2-c/2})`),T(t,E),t.intersect=function(_){return z.info("iconSquare intersect",t,_),N.rect(t,_)},e}$(Es,"iconCircle");async function Ts(u,t,{config:{themeVariables:o,flowchart:h}}){let{labelStyles:l}=W(t);t.labelStyle=l;let r=t.assetHeight??48,p=t.assetWidth??48,i=Math.max(r,p),n=h?.wrappingWidth;t.width=Math.max(i,n??0);let{shapeSvg:e,bbox:s,halfPadding:a,label:g}=await O(u,t,"icon-shape default"),c=t.pos==="t",f=i+a*2,y=i+a*2,{nodeBorder:m,mainBkg:d}=o,{stylesMap:w}=Bt(t),x=-y/2,S=-f/2,b=t.label?8:0,k=v.svg(e),P=I(t,{});t.look!=="handDrawn"&&(P.roughness=0,P.fillStyle="solid");let D=w.get("fill");P.stroke=D??d;let B=k.path(yt(x,S,y,f,5),P),M=Math.max(y,s.width),C=f+s.height+b,X=k.rectangle(-M/2,-C/2,M,C,{...P,fill:"transparent",stroke:"none"}),R=e.insert(()=>B,":first-child").attr("class","icon-shape2"),L=e.insert(()=>X);if(t.icon){let H=e.append("g");H.html(`<g>${await Mt(t.icon,{height:i,width:i,fallbackPrefix:""})}</g>`);let A=H.node().getBBox(),E=A.width,_=A.height,F=A.x,q=A.y;H.attr("transform",`translate(${-E/2-F},${c?s.height/2+b/2-_/2-q:-s.height/2-b/2-_/2-q})`),H.attr("style",`color: ${w.get("stroke")??m};`)}return g.attr("transform",`translate(${-s.width/2-(s.x-(s.left??0))},${c?-C/2:C/2-s.height})`),R.attr("transform",`translate(0,${c?s.height/2+b/2:-s.height/2-b/2})`),T(t,L),t.intersect=function(H){if(z.info("iconSquare intersect",t,H),!t.label)return N.rect(t,H);let A=t.x??0,E=t.y??0,_=t.height??0,F=[];return c?F=[{x:A-s.width/2,y:E-_/2},{x:A+s.width/2,y:E-_/2},{x:A+s.width/2,y:E-_/2+s.height+b},{x:A+y/2,y:E-_/2+s.height+b},{x:A+y/2,y:E+_/2},{x:A-y/2,y:E+_/2},{x:A-y/2,y:E-_/2+s.height+b},{x:A-s.width/2,y:E-_/2+s.height+b}]:F=[{x:A-y/2,y:E-_/2},{x:A+y/2,y:E-_/2},{x:A+y/2,y:E-_/2+f},{x:A+s.width/2,y:E-_/2+f},{x:A+s.width/2/2,y:E+_/2},{x:A-s.width/2,y:E+_/2},{x:A-s.width/2,y:E-_/2+f},{x:A-y/2,y:E-_/2+f}],N.polygon(t,F,H)},e}$(Ts,"iconRounded");async function Xs(u,t,{config:{themeVariables:o,flowchart:h}}){let{labelStyles:l}=W(t);t.labelStyle=l;let r=t.assetHeight??48,p=t.assetWidth??48,i=Math.max(r,p),n=h?.wrappingWidth;t.width=Math.max(i,n??0);let{shapeSvg:e,bbox:s,halfPadding:a,label:g}=await O(u,t,"icon-shape default"),c=t.pos==="t",f=i+a*2,y=i+a*2,{nodeBorder:m,mainBkg:d}=o,{stylesMap:w}=Bt(t),x=-y/2,S=-f/2,b=t.label?8:0,k=v.svg(e),P=I(t,{});t.look!=="handDrawn"&&(P.roughness=0,P.fillStyle="solid");let D=w.get("fill");P.stroke=D??d;let B=k.path(yt(x,S,y,f,.1),P),M=Math.max(y,s.width),C=f+s.height+b,X=k.rectangle(-M/2,-C/2,M,C,{...P,fill:"transparent",stroke:"none"}),R=e.insert(()=>B,":first-child"),L=e.insert(()=>X);if(t.icon){let H=e.append("g");H.html(`<g>${await Mt(t.icon,{height:i,width:i,fallbackPrefix:""})}</g>`);let A=H.node().getBBox(),E=A.width,_=A.height,F=A.x,q=A.y;H.attr("transform",`translate(${-E/2-F},${c?s.height/2+b/2-_/2-q:-s.height/2-b/2-_/2-q})`),H.attr("style",`color: ${w.get("stroke")??m};`)}return g.attr("transform",`translate(${-s.width/2-(s.x-(s.left??0))},${c?-C/2:C/2-s.height})`),R.attr("transform",`translate(0,${c?s.height/2+b/2:-s.height/2-b/2})`),T(t,L),t.intersect=function(H){if(z.info("iconSquare intersect",t,H),!t.label)return N.rect(t,H);let A=t.x??0,E=t.y??0,_=t.height??0,F=[];return c?F=[{x:A-s.width/2,y:E-_/2},{x:A+s.width/2,y:E-_/2},{x:A+s.width/2,y:E-_/2+s.height+b},{x:A+y/2,y:E-_/2+s.height+b},{x:A+y/2,y:E+_/2},{x:A-y/2,y:E+_/2},{x:A-y/2,y:E-_/2+s.height+b},{x:A-s.width/2,y:E-_/2+s.height+b}]:F=[{x:A-y/2,y:E-_/2},{x:A+y/2,y:E-_/2},{x:A+y/2,y:E-_/2+f},{x:A+s.width/2,y:E-_/2+f},{x:A+s.width/2/2,y:E+_/2},{x:A-s.width/2,y:E+_/2},{x:A-s.width/2,y:E-_/2+f},{x:A-y/2,y:E-_/2+f}],N.polygon(t,F,H)},e}$(Xs,"iconSquare");async function _s(u,t,{config:{flowchart:o}}){let h=new Image;h.src=t?.img??"",await h.decode();let l=Number(h.naturalWidth.toString().replace("px","")),r=Number(h.naturalHeight.toString().replace("px",""));t.imageAspectRatio=l/r;let{labelStyles:p}=W(t);t.labelStyle=p;let i=o?.wrappingWidth;t.defaultWidth=o?.wrappingWidth;let n=Math.max(t.label?i??0:0,t?.assetWidth??l),e=t.constraint==="on"&&t?.assetHeight?t.assetHeight*t.imageAspectRatio:n,s=t.constraint==="on"?e/t.imageAspectRatio:t?.assetHeight??r;t.width=Math.max(e,i??0);let{shapeSvg:a,bbox:g,label:c}=await O(u,t,"image-shape default"),f=t.pos==="t",y=-e/2,m=-s/2,d=t.label?8:0,w=v.svg(a),x=I(t,{});t.look!=="handDrawn"&&(x.roughness=0,x.fillStyle="solid");let S=w.rectangle(y,m,e,s,x),b=Math.max(e,g.width),k=s+g.height+d,P=w.rectangle(-b/2,-k/2,b,k,{...x,fill:"none",stroke:"none"}),D=a.insert(()=>S,":first-child"),B=a.insert(()=>P);if(t.img){let M=a.append("image");M.attr("href",t.img),M.attr("width",e),M.attr("height",s),M.attr("preserveAspectRatio","none"),M.attr("transform",`translate(${-e/2},${f?k/2-s:-k/2})`)}return c.attr("transform",`translate(${-g.width/2-(g.x-(g.left??0))},${f?-s/2-g.height/2-d/2:s/2-g.height/2+d/2})`),D.attr("transform",`translate(0,${f?g.height/2+d/2:-g.height/2-d/2})`),T(t,B),t.intersect=function(M){if(z.info("iconSquare intersect",t,M),!t.label)return N.rect(t,M);let C=t.x??0,X=t.y??0,R=t.height??0,L=[];return f?L=[{x:C-g.width/2,y:X-R/2},{x:C+g.width/2,y:X-R/2},{x:C+g.width/2,y:X-R/2+g.height+d},{x:C+e/2,y:X-R/2+g.height+d},{x:C+e/2,y:X+R/2},{x:C-e/2,y:X+R/2},{x:C-e/2,y:X-R/2+g.height+d},{x:C-g.width/2,y:X-R/2+g.height+d}]:L=[{x:C-e/2,y:X-R/2},{x:C+e/2,y:X-R/2},{x:C+e/2,y:X-R/2+s},{x:C+g.width/2,y:X-R/2+s},{x:C+g.width/2/2,y:X+R/2},{x:C-g.width/2,y:X+R/2},{x:C-g.width/2,y:X-R/2+s},{x:C-e/2,y:X-R/2+s}],N.polygon(t,L,M)},a}$(_s,"imageSquare");async function Ys(u,t){let{labelStyles:o,nodeStyles:h}=W(t);t.labelStyle=o;let l=t.padding??0,r=l,p=t.look==="neo"?l*2:l,{shapeSvg:i,bbox:n}=await O(u,t,Y(t)),e=Math.max(n.width+(p??0)*2,t?.width??0),s=Math.max(n.height+(r??0)*2,t?.height??0),a=[{x:0,y:0},{x:e,y:0},{x:e+3*s/6,y:-s},{x:-3*s/6,y:-s}],g,{cssStyles:c}=t;if(t.look==="handDrawn"){let f=v.svg(i),y=I(t,{}),m=G(a),d=f.path(m,y);g=i.insert(()=>d,":first-child").attr("transform",`translate(${-e/2}, ${s/2})`),c&&g.attr("style",c)}else g=ht(i,e,s,a);return h&&g.attr("style",h),t.width=e,t.height=s,T(t,g),t.intersect=function(f){return N.polygon(t,a,f)},i}$(Ys,"inv_trapezoid");async function Os(u,t){let{shapeSvg:o,bbox:h,label:l}=await O(u,t,"label"),r=o.insert("rect",":first-child");return r.attr("width",.1).attr("height",.1),o.attr("class","label edgeLabel"),l.attr("transform",`translate(${-(h.width/2)-(h.x-(h.left??0))}, ${-(h.height/2)-(h.y-(h.top??0))})`),T(t,r),t.intersect=function(n){return N.rect(t,n)},o}$(Os,"labelRect");async function js(u,t){let{labelStyles:o,nodeStyles:h}=W(t);t.labelStyle=o;let l=t.padding??0,r=l,p=t.look==="neo"?l*2:l,{shapeSvg:i,bbox:n}=await O(u,t,Y(t)),e=(t?.height??n.height)+r,s=(t?.width??n.width)+p,a=[{x:0,y:0},{x:s+3*e/6,y:0},{x:s,y:-e},{x:-(3*e)/6,y:-e}],g,{cssStyles:c}=t;if(t.look==="handDrawn"){let f=v.svg(i),y=I(t,{}),m=G(a),d=f.path(m,y);g=i.insert(()=>d,":first-child").attr("transform",`translate(${-s/2}, ${e/2})`),c&&g.attr("style",c)}else g=ht(i,s,e,a);return h&&g.attr("style",h),t.width=s,t.height=e,T(t,g),t.intersect=function(f){return N.polygon(t,a,f)},i}$(js,"lean_left");async function Gs(u,t){let{labelStyles:o,nodeStyles:h}=W(t);t.labelStyle=o;let l=t.padding??0,r=l,p=t.look==="neo"?l*2:l,{shapeSvg:i,bbox:n}=await O(u,t,Y(t)),e=(t?.height??n.height)+r,s=(t?.width??n.width)+p,a=[{x:-3*e/6,y:0},{x:s,y:0},{x:s+3*e/6,y:-e},{x:0,y:-e}],g,{cssStyles:c}=t;if(t.look==="handDrawn"){let f=v.svg(i),y=I(t,{}),m=G(a),d=f.path(m,y);g=i.insert(()=>d,":first-child").attr("transform",`translate(${-s/2}, ${e/2})`),c&&g.attr("style",c)}else g=ht(i,s,e,a);return h&&g.attr("style",h),t.width=s,t.height=e,T(t,g),t.intersect=function(f){return N.polygon(t,a,f)},i}$(Gs,"lean_right");function Fs(u,t){let{labelStyles:o,nodeStyles:h}=W(t);t.label="",t.labelStyle=o;let l=u.insert("g").attr("class",Y(t)).attr("id",t.domId??t.id),{cssStyles:r}=t,p=Math.max(35,t?.width??0),i=Math.max(35,t?.height??0),n=7,e=[{x:p,y:0},{x:0,y:i+n/2},{x:p-2*n,y:i+n/2},{x:0,y:2*i},{x:p,y:i-n/2},{x:2*n,y:i-n/2}],s=v.svg(l),a=I(t,{});t.look!=="handDrawn"&&(a.roughness=0,a.fillStyle="solid");let g=G(e),c=s.path(g,a),f=l.insert(()=>c,":first-child");return f.attr("class","outer-path"),r&&t.look!=="handDrawn"&&f.selectAll("path").attr("style",r),h&&t.look!=="handDrawn"&&f.selectAll("path").attr("style",h),f.attr("transform",`translate(-${p/2},${-i})`),T(t,f),t.intersect=function(y){return z.info("lightningBolt intersect",t,y),N.polygon(t,e,y)},l}$(Fs,"lightningBolt");var Ga=$((u,t,o,h,l,r,p)=>[`M${u},${t+r}`,`a${l},${r} 0,0,0 ${o},0`,`a${l},${r} 0,0,0 ${-o},0`,`l0,${h}`,`a${l},${r} 0,0,0 ${o},0`,`l0,${-h}`,`M${u},${t+r+p}`,`a${l},${r} 0,0,0 ${o},0`].join(" "),"createCylinderPathD"),Fa=$((u,t,o,h,l,r,p)=>[`M${u},${t+r}`,`M${u+o},${t+r}`,`a${l},${r} 0,0,0 ${-o},0`,`l0,${h}`,`a${l},${r} 0,0,0 ${o},0`,`l0,${-h}`,`M${u},${t+r+p}`,`a${l},${r} 0,0,0 ${o},0`].join(" "),"createOuterCylinderPathD"),qa=$((u,t,o,h,l,r)=>[`M${u-o/2},${-h/2}`,`a${l},${r} 0,0,0 ${o},0`].join(" "),"createInnerCylinderPathD"),ts=10,ss=10;async function qs(u,t){let{labelStyles:o,nodeStyles:h}=W(t);t.labelStyle=o;let l=t.padding??0,r=t.look==="neo"?16:l,p=t.look==="neo"?24:l;if(t.width||t.height){let d=t.width??0;t.width=(t.width??0)-r,t.width<ss&&(t.width=ss);let x=d/2/(2.5+d/50);t.height=(t.height??0)-p-x*3,t.height<ts&&(t.height=ts)}let{shapeSvg:i,bbox:n,label:e}=await O(u,t,Y(t)),s=(t?.width?t?.width:n.width)+r*2,a=s/2,g=a/(2.5+s/50),c=(t?.height?t?.height:n.height)+g+p*2,f=c*.1,y,{cssStyles:m}=t;if(t.look==="handDrawn"){let d=v.svg(i),w=Fa(0,0,s,c,a,g,f),x=qa(0,g,s,c,a,g),S=I(t,{}),b=d.path(w,S),k=d.path(x,S);i.insert(()=>k,":first-child").attr("class","line"),y=i.insert(()=>b,":first-child"),y.attr("class","basic label-container"),m&&y.attr("style",m)}else{let d=Ga(0,0,s,c,a,g,f);y=i.insert("path",":first-child").attr("d",d).attr("class","basic label-container outer-path").attr("style",K(m)).attr("style",h)}return y.attr("label-offset-y",g),y.attr("transform",`translate(${-s/2}, ${-(c/2+g)})`),T(t,y),e.attr("transform",`translate(${-(n.width/2)-(n.x-(n.left??0))}, ${-(n.height/2)+g-(n.y-(n.top??0))})`),t.intersect=function(d){let w=N.rect(t,d),x=w.x-(t.x??0);if(a!=0&&(Math.abs(x)<(t.width??0)/2||Math.abs(x)==(t.width??0)/2&&Math.abs(w.y-(t.y??0))>(t.height??0)/2-g)){let S=g*g*(1-x*x/(a*a));S>0&&(S=Math.sqrt(S)),S=g-S,d.y-(t.y??0)>0&&(S=-S),w.y+=S}return w},i}$(qs,"linedCylinder");async function zs(u,t){let{labelStyles:o,nodeStyles:h}=W(t);t.labelStyle=o;let l=t.padding??0,r=t.look==="neo"?16:l,p=t.look==="neo"?12:l;if(t.width||t.height){let S=t.width;t.width=(S??0)*10/11-r*2,t.width<10&&(t.width=10),t.height=(t?.height??0)-p*2,t.height<10&&(t.height=10)}let{shapeSvg:i,bbox:n,label:e}=await O(u,t,Y(t)),s=(t?.width?t?.width:n.width)+(r??0)*2,a=(t?.height?t?.height:n.height)+(p??0)*2,g=t.look==="neo"?a/4:a/8,c=a+g,{cssStyles:f}=t,y=v.svg(i),m=I(t,{});t.look!=="handDrawn"&&(m.roughness=0,m.fillStyle="solid");let d=[{x:-s/2-s/2*.1,y:-c/2},{x:-s/2-s/2*.1,y:c/2},...ft(-s/2-s/2*.1,c/2,s/2+s/2*.1,c/2,g,.8),{x:s/2+s/2*.1,y:-c/2},{x:-s/2-s/2*.1,y:-c/2},{x:-s/2,y:-c/2},{x:-s/2,y:c/2*1.1},{x:-s/2,y:-c/2}],w=y.polygon(d.map(S=>[S.x,S.y]),m),x=i.insert(()=>w,":first-child");return x.attr("class","basic label-container outer-path"),f&&t.look!=="handDrawn"&&x.selectAll("path").attr("style",f),h&&t.look!=="handDrawn"&&x.selectAll("path").attr("style",h),x.attr("transform",`translate(0,${-g/2})`),e.attr("transform",`translate(${-s/2+(t.padding??0)+s/2*.1/2-(n.x-(n.left??0))},${-a/2+(t.padding??0)-g/2-(n.y-(n.top??0))})`),T(t,x),t.intersect=function(S){return N.polygon(t,d,S)},i}$(zs,"linedWaveEdgedRect");async function Vs(u,t){let{labelStyles:o,nodeStyles:h}=W(t);t.labelStyle=o;let l=t.padding??0,r=t.look==="neo"?16:l,p=t.look==="neo"?12:l,i=t.look==="neo"?10:5;(t.width||t.height)&&(t.width=Math.max((t?.width??0)-r*2-2*i,10),t.height=Math.max((t?.height??0)-p*2-2*i,10));let{shapeSvg:n,bbox:e,label:s}=await O(u,t,Y(t)),a=(t?.width?t?.width:e.width)+r*2+2*i,g=(t?.height?t?.height:e.height)+p*2+2*i,c=a-2*i,f=g-2*i,y=-c/2,m=-f/2,{cssStyles:d}=t,w=v.svg(n),x=I(t,{}),S=[{x:y-i,y:m+i},{x:y-i,y:m+f+i},{x:y+c-i,y:m+f+i},{x:y+c-i,y:m+f},{x:y+c,y:m+f},{x:y+c,y:m+f-i},{x:y+c+i,y:m+f-i},{x:y+c+i,y:m-i},{x:y+i,y:m-i},{x:y+i,y:m},{x:y,y:m},{x:y,y:m+i}],b=[{x:y,y:m+i},{x:y+c-i,y:m+i},{x:y+c-i,y:m+f},{x:y+c,y:m+f},{x:y+c,y:m},{x:y,y:m}];t.look!=="handDrawn"&&(x.roughness=0,x.fillStyle="solid");let k=G(S),P=w.path(k,x),D=G(b),B=w.path(D,x);t.look!=="handDrawn"&&(P=Yt(P),B=Yt(B));let M=n.insert("g",":first-child");return M.insert(()=>P),M.insert(()=>B),M.attr("class","basic label-container outer-path"),d&&t.look!=="handDrawn"&&M.selectAll("path").attr("style",d),h&&t.look!=="handDrawn"&&M.selectAll("path").attr("style",h),s.attr("transform",`translate(${-(e.width/2)-i-(e.x-(e.left??0))}, ${-(e.height/2)+i-(e.y-(e.top??0))})`),T(t,M),t.intersect=function(C){return N.polygon(t,S,C)},n}$(Vs,"multiRect");async function Zs(u,t){let{labelStyles:o,nodeStyles:h}=W(t);t.labelStyle=o;let{shapeSvg:l,bbox:r,label:p}=await O(u,t,Y(t)),i=t.padding??0,n=t.look==="neo"?16:i,e=t.look==="neo"?12:i,s=!0;(t.width||t.height)&&(s=!1,t.width=(t?.width??0)-n*2,t.height=(t?.height??0)-e*3);let a=Math.max(r.width,t?.width??0)+n*2,g=Math.max(r.height,t?.height??0)+e*3,c=t.look==="neo"?g/4:g/8,f=g+(s?c/2:-c/2),y=-a/2,m=-f/2,d=10,{cssStyles:w}=t,x=ft(y-d,m+f+d,y+a-d,m+f+d,c,.8),S=x?.[x.length-1],b=[{x:y-d,y:m+d},{x:y-d,y:m+f+d},...x,{x:y+a-d,y:S.y-d},{x:y+a,y:S.y-d},{x:y+a,y:S.y-2*d},{x:y+a+d,y:S.y-2*d},{x:y+a+d,y:m-d},{x:y+d,y:m-d},{x:y+d,y:m},{x:y,y:m},{x:y,y:m+d}],k=[{x:y,y:m+d},{x:y+a-d,y:m+d},{x:y+a-d,y:S.y-d},{x:y+a,y:S.y-d},{x:y+a,y:m},{x:y,y:m}],P=v.svg(l),D=I(t,{});t.look!=="handDrawn"&&(D.roughness=0,D.fillStyle="solid");let B=G(b),M=P.path(B,D),C=G(k),X=P.path(C,D),R=l.insert(()=>M,":first-child");return R.insert(()=>X),R.attr("class","basic label-container outer-path"),w&&t.look!=="handDrawn"&&R.selectAll("path").attr("style",w),h&&t.look!=="handDrawn"&&R.selectAll("path").attr("style",h),R.attr("transform",`translate(0,${-c/2})`),p.attr("transform",`translate(${-(r.width/2)-d-(r.x-(r.left??0))}, ${-(r.height/2)+d-c/2-(r.y-(r.top??0))})`),T(t,R),t.intersect=function(L){return N.polygon(t,b,L)},l}$(Zs,"multiWaveEdgedRectangle");async function Js(u,t,{config:{themeVariables:o}}){let{labelStyles:h,nodeStyles:l}=W(t);t.labelStyle=h,t.useHtmlLabels||at(wt())||(t.centerLabel=!0);let{shapeSvg:p,bbox:i,label:n}=await O(u,t,Y(t)),e=Math.max(i.width+(t.padding??0)*2,t?.width??0),s=Math.max(i.height+(t.padding??0)*2,t?.height??0),a=-e/2,g=-s/2,{cssStyles:c}=t,f=v.svg(p),y=I(t,{fill:o.noteBkgColor,stroke:o.noteBorderColor});t.look!=="handDrawn"&&(y.roughness=0,y.fillStyle="solid");let m=f.rectangle(a,g,e,s,y),d=p.insert(()=>m,":first-child");return d.attr("class","basic label-container outer-path"),n.attr("class","label noteLabel"),c&&t.look!=="handDrawn"&&d.selectAll("path").attr("style",c),l&&t.look!=="handDrawn"&&d.selectAll("path").attr("style",l),n.attr("transform",`translate(${-i.width/2-(i.x-(i.left??0))}, ${-(i.height/2)-(i.y-(i.top??0))})`),T(t,d),t.intersect=function(w){return N.rect(t,w)},p}$(Js,"note");var za=$((u,t,o)=>[`M${u+o/2},${t}`,`L${u+o},${t-o/2}`,`L${u+o/2},${t-o}`,`L${u},${t-o/2}`,"Z"].join(" "),"createDecisionBoxPathD");async function Qs(u,t){let{labelStyles:o,nodeStyles:h}=W(t);t.labelStyle=o;let{shapeSvg:l,bbox:r}=await O(u,t,Y(t)),p=r.width+(t.padding??0),i=r.height+(t.padding??0),n=p+i,e=.5,s=[{x:n/2,y:0},{x:n,y:-n/2},{x:n/2,y:-n},{x:0,y:-n/2}],a,{cssStyles:g}=t;if(t.look==="handDrawn"){let c=v.svg(l),f=I(t,{}),y=za(0,0,n),m=c.path(y,f);a=l.insert(()=>m,":first-child").attr("transform",`translate(${-n/2+e}, ${n/2})`),g&&a.attr("style",g)}else a=ht(l,n,n,s),a.attr("transform",`translate(${-n/2+e}, ${n/2})`);return h&&a.attr("style",h),T(t,a),t.calcIntersect=function(c,f){let y=c.width,m=[{x:y/2,y:0},{x:y,y:-y/2},{x:y/2,y:-y},{x:0,y:-y/2}],d=N.polygon(c,m,f);return{x:d.x-.5,y:d.y-.5}},t.intersect=function(c){return this.calcIntersect(t,c)},l}$(Qs,"question");async function Us(u,t){let{labelStyles:o,nodeStyles:h}=W(t);t.labelStyle=o;let l=t.padding??0,r=t.look==="neo"?21:l??0,p=t.look==="neo"?12:l??0,{shapeSvg:i,bbox:n,label:e}=await O(u,t,Y(t)),s=(t?.width??n.width)+(t.look==="neo"?r*2:r),a=(t?.height??n.height)+(t.look==="neo"?p*2:p),g=-s/2,c=-a/2,f=c/2,y=[{x:g+f,y:c},{x:g,y:0},{x:g+f,y:-c},{x:-g,y:-c},{x:-g,y:c}],{cssStyles:m}=t,d=v.svg(i),w=I(t,{});t.look!=="handDrawn"&&(w.roughness=0,w.fillStyle="solid");let x=G(y),S=d.path(x,w),b=i.insert(()=>S,":first-child");return b.attr("class","basic label-container outer-path"),m&&t.look!=="handDrawn"&&b.selectAll("path").attr("style",m),h&&t.look!=="handDrawn"&&b.selectAll("path").attr("style",h),b.attr("transform",`translate(${-f/2},0)`),e.attr("transform",`translate(${-f/2-n.width/2-(n.x-(n.left??0))}, ${-(n.height/2)-(n.y-(n.top??0))})`),T(t,b),t.intersect=function(k){return N.polygon(t,y,k)},i}$(Us,"rect_left_inv_arrow");async function Ks(u,t){let{labelStyles:o,nodeStyles:h}=W(t);t.labelStyle=o;let l;t.cssClasses?l="node "+t.cssClasses:l="node default";let r=u.insert("g").attr("class",l).attr("id",t.domId||t.id),p=r.insert("g"),i=r.insert("g").attr("class","label").attr("style",h),n=t.description,e=t.label,s=await At(i,e,t.labelStyle,!0,!0),a={width:0,height:0};if(at(U())){let D=s.children[0],B=Z(s);a=D.getBoundingClientRect(),B.attr("width",a.width),B.attr("height",a.height)}z.info("Text 2",n);let g=n||[],c=s.getBBox(),f=await At(i,Array.isArray(g)?g.join("<br/>"):g,t.labelStyle,!0,!0),y=f.children[0],m=Z(f);a=y.getBoundingClientRect(),m.attr("width",a.width),m.attr("height",a.height);let d=(t.padding||0)/2;Z(f).attr("transform","translate( "+(a.width>c.width?0:(c.width-a.width)/2)+", "+(c.height+d+5)+")"),Z(s).attr("transform","translate( "+(a.width<c.width?0:-(c.width-a.width)/2)+", 0)"),a=i.node().getBBox(),i.attr("transform","translate("+-a.width/2+", "+(-a.height/2-d+3)+")");let w=a.width+(t.padding||0),x=a.height+(t.padding||0),S=-a.width/2-d,b=-a.height/2-d,k,P;if(t.look==="handDrawn"){let D=v.svg(r),B=I(t,{}),M=D.path(yt(S,b,w,x,t.rx||0),B),C=D.line(-a.width/2-d,-a.height/2-d+c.height+d,a.width/2+d,-a.height/2-d+c.height+d,B);P=r.insert(()=>(z.debug("Rough node insert CXC",M),C),":first-child"),k=r.insert(()=>(z.debug("Rough node insert CXC",M),M),":first-child")}else k=p.insert("rect",":first-child"),P=p.insert("line"),k.attr("class","outer title-state").attr("style",h).attr("x",-a.width/2-d).attr("y",-a.height/2-d).attr("width",a.width+(t.padding||0)).attr("height",a.height+(t.padding||0)),P.attr("class","divider").attr("x1",-a.width/2-d).attr("x2",a.width/2+d).attr("y1",-a.height/2-d+c.height+d).attr("y2",-a.height/2-d+c.height+d);return T(t,k),t.intersect=function(D){return N.rect(t,D)},r}$(Ks,"rectWithTitle");async function ta(u,t,{config:{themeVariables:o}}){let h=o?.radius??5,l={rx:h,ry:h,classes:"",labelPaddingX:(t?.padding??0)*1,labelPaddingY:(t?.padding??0)*1};return vt(u,t,l)}$(ta,"roundedRect");var dt=8;async function sa(u,t){let{labelStyles:o,nodeStyles:h}=W(t);t.labelStyle=o;let l=t.look==="neo"?16:t.padding??0,r=t.look==="neo"?12:t.padding??0,{shapeSvg:p,bbox:i,label:n}=await O(u,t,Y(t)),e=(t?.width??i.width)+l*2+(t.look==="neo"?dt:dt*2),s=(t?.height??i.height)+r*2,a=e-dt,g=s,c=dt-e/2,f=-s/2,{cssStyles:y}=t,m=v.svg(p),d=I(t,{});t.look!=="handDrawn"&&(d.roughness=0,d.fillStyle="solid");let w=[{x:c,y:f},{x:c+a,y:f},{x:c+a,y:f+g},{x:c-dt,y:f+g},{x:c-dt,y:f},{x:c,y:f},{x:c,y:f+g}],x=m.polygon(w.map(b=>[b.x,b.y]),d),S=p.insert(()=>x,":first-child");return S.attr("class","basic label-container outer-path").attr("style",K(y)),h&&t.look!=="handDrawn"&&S.selectAll("path").attr("style",h),y&&t.look!=="handDrawn"&&S.selectAll("path").attr("style",h),n.attr("transform",`translate(${dt/2-i.width/2-(i.x-(i.left??0))}, ${-(i.height/2)-(i.y-(i.top??0))})`),T(t,S),t.intersect=function(b){return N.rect(t,b)},p}$(sa,"shadedProcess");async function aa(u,t){let{labelStyles:o,nodeStyles:h}=W(t);t.labelStyle=o;let l=t.padding??0,r=t.look==="neo"?16:l,p=t.look==="neo"?12:l;(t.width||t.height)&&(t.width=Math.max((t?.width??0)-r*2,10),t.height=Math.max((t?.height??0)/1.5-p*2,10));let{shapeSvg:i,bbox:n,label:e}=await O(u,t,Y(t)),s=(t?.width?t?.width:n.width)+r*2,a=((t?.height?t?.height:n.height)+p*2)*1.5,g=s,c=a/1.5,f=-g/2,y=-c/2,{cssStyles:m}=t,d=v.svg(i),w=I(t,{});t.look!=="handDrawn"&&(w.roughness=0,w.fillStyle="solid");let x=[{x:f,y},{x:f,y:y+c},{x:f+g,y:y+c},{x:f+g,y:y-c/2}],S=G(x),b=d.path(S,w),k=i.insert(()=>b,":first-child");return k.attr("class","basic label-container outer-path"),m&&t.look!=="handDrawn"&&k.selectChildren("path").attr("style",m),h&&t.look!=="handDrawn"&&k.selectChildren("path").attr("style",h),k.attr("transform",`translate(0, ${c/4})`),e.attr("transform",`translate(${-g/2+(t.padding??0)-(n.x-(n.left??0))}, ${-c/4+(t.padding??0)-(n.y-(n.top??0))})`),T(t,k),t.intersect=function(P){return N.polygon(t,x,P)},i}$(aa,"slopedRect");async function ea(u,t){let o=t.padding??0,h=t.look==="neo"?16:o*2,l=t.look==="neo"?12:o,r={rx:0,ry:0,classes:"",labelPaddingX:t.labelPaddingX??h,labelPaddingY:l};return vt(u,t,r)}$(ea,"squareRect");async function ia(u,t){let{labelStyles:o,nodeStyles:h}=W(t);t.labelStyle=o;let l=t.padding??0,r=t.look==="neo"?20:l,p=t.look==="neo"?12:l,{shapeSvg:i,bbox:n}=await O(u,t,Y(t)),e=n.height+(t.look==="neo"?p*2:p),s=n.width+e/4+(t.look==="neo"?r*2:r),a=e/2,{cssStyles:g}=t,c=v.svg(i),f=I(t,{});t.look!=="handDrawn"&&(f.roughness=0,f.fillStyle="solid");let y=[{x:-s/2+a,y:-e/2},{x:s/2-a,y:-e/2},...Ct(-s/2+a,0,a,50,90,270),{x:s/2-a,y:e/2},...Ct(s/2-a,0,a,50,270,450)],m=G(y),d=c.path(m,f),w=i.insert(()=>d,":first-child");return w.attr("class","basic label-container outer-path"),g&&t.look!=="handDrawn"&&w.selectChildren("path").attr("style",g),h&&t.look!=="handDrawn"&&w.selectChildren("path").attr("style",h),T(t,w),t.intersect=function(x){return N.polygon(t,y,x)},i}$(ia,"stadium");async function ra(u,t){let o={rx:t.look==="neo"?3:5,ry:t.look==="neo"?3:5,classes:"flowchart-node"};return vt(u,t,o)}$(ra,"state");function la(u,t,{config:{themeVariables:o}}){let{labelStyles:h,nodeStyles:l}=W(t);t.labelStyle=h;let{cssStyles:r}=t,{lineColor:p,stateBorder:i,nodeBorder:n,nodeShadow:e}=o;(t.width||t.height)&&((t.width??0)<14&&(t.width=14),(t.height??0)<14&&(t.height=14)),t.width||(t.width=14),t.height||(t.height=14);let s=u.insert("g").attr("class","node default").attr("id",t.domId??t.id),a=v.svg(s),g=I(t,{});t.look!=="handDrawn"&&(g.roughness=0,g.fillStyle="solid");let c=a.circle(0,0,t.width,{...g,stroke:p,strokeWidth:2}),f=i??n,y=(t.width??0)*5/14,m=a.circle(0,0,y,{...g,fill:f,stroke:f,strokeWidth:2,fillStyle:"solid"}),d=s.insert(()=>c,":first-child");if(d.insert(()=>m),t.look!=="handDrawn"&&d.attr("class","outer-path"),r&&d.selectAll("path").attr("style",r),l&&d.selectAll("path").attr("style",l),t.width<25&&e&&t.look!=="handDrawn"){let w=u.node()?.ownerSVGElement?.id??"",x=w?`${w}-drop-shadow-small`:"drop-shadow-small";d.attr("style",`filter:url(#${x})`)}return T(t,d),t.intersect=function(w){return N.circle(t,(t.width??0)/2,w)},s}$(la,"stateEnd");function na(u,t,{config:{themeVariables:o}}){let{lineColor:h,nodeShadow:l}=o;(t.width||t.height)&&((t.width??0)<14&&(t.width=14),(t.height??0)<14&&(t.height=14)),t.width||(t.width=14),t.height||(t.height=14);let r=u.insert("g").attr("class","node default").attr("id",t.domId||t.id),p;if(t.look==="handDrawn"){let n=v.svg(r).circle(0,0,t.width,Zt(h));p=r.insert(()=>n),p.attr("class","state-start").attr("r",(t.width??7)/2).attr("width",t.width??14).attr("height",t.height??14)}else p=r.insert("circle",":first-child"),p.attr("class","state-start").attr("r",(t.width??7)/2).attr("width",t.width??14).attr("height",t.height??14);if(t.width<25&&l&&t.look!=="handDrawn"){let i=u.node()?.ownerSVGElement?.id??"",n=i?`${i}-drop-shadow-small`:"drop-shadow-small";p.attr("style",`filter:url(#${n})`)}return T(t,p),t.intersect=function(i){return N.circle(t,(t.width??7)/2,i)},r}$(na,"stateStart");var xt=8;async function ca(u,t){let{labelStyles:o,nodeStyles:h}=W(t);t.labelStyle=o;let l=t?.padding??8,r=t.look==="neo"?28:l,p=t.look==="neo"?12:l,{shapeSvg:i,bbox:n}=await O(u,t,Y(t)),e=(t?.width??n.width)+2*xt+r,s=(t?.height??n.height)+p,a=e-2*xt,g=s,c=-e/2,f=-s/2,y=[{x:0,y:0},{x:a,y:0},{x:a,y:-g},{x:0,y:-g},{x:0,y:0},{x:-8,y:0},{x:a+8,y:0},{x:a+8,y:-g},{x:-8,y:-g},{x:-8,y:0}];if(t.look==="handDrawn"){let m=v.svg(i),d=I(t,{}),w=m.rectangle(c,f,a+16,g,d),x=m.line(c+xt,f,c+xt,f+g,d),S=m.line(c+xt+a,f,c+xt+a,f+g,d);i.insert(()=>x,":first-child"),i.insert(()=>S,":first-child");let b=i.insert(()=>w,":first-child"),{cssStyles:k}=t;b.attr("class","basic label-container").attr("style",K(k)),T(t,b)}else{let m=ht(i,a,g,y);h&&m.attr("style",h),T(t,m)}return t.intersect=function(m){return N.polygon(t,y,m)},i}$(ca,"subroutine");var _t=.2;async function oa(u,t){let{labelStyles:o,nodeStyles:h}=W(t);t.labelStyle=o;let l=t.padding??0,r=t.look==="neo"?16:l,p=t.look==="neo"?12:l;(t.width||t.height)&&(t.height=Math.max((t?.height??0)-p*2,10),t.width=Math.max((t?.width??0)-r*2-_t*(t.height+p*2),10));let{shapeSvg:i,bbox:n}=await O(u,t,Y(t)),e=(t?.height?t?.height:n.height)+p*2,s=_t*e,a=_t*e,c=(t?.width?t?.width:n.width)+r*2+s-s,f=e,y=-c/2,m=-f/2,{cssStyles:d}=t,w=v.svg(i),x=I(t,{}),S=[{x:y-s/2,y:m},{x:y+c+s/2,y:m},{x:y+c+s/2,y:m+f},{x:y-s/2,y:m+f}],b=[{x:y+c-s/2,y:m+f},{x:y+c+s/2,y:m+f},{x:y+c+s/2,y:m+f-a}];t.look!=="handDrawn"&&(x.roughness=0,x.fillStyle="solid");let k=G(S),P=w.path(k,x),D=G(b),B=w.path(D,{...x,fillStyle:"solid"}),M=i.insert(()=>B,":first-child");return M.insert(()=>P,":first-child"),M.attr("class","basic label-container outer-path"),d&&t.look!=="handDrawn"&&M.selectAll("path").attr("style",d),h&&t.look!=="handDrawn"&&M.selectAll("path").attr("style",h),T(t,M),t.intersect=function(C){return N.polygon(t,S,C)},i}$(oa,"taggedRect");async function ha(u,t){let{labelStyles:o,nodeStyles:h}=W(t);t.labelStyle=o;let{shapeSvg:l,bbox:r,label:p}=await O(u,t,Y(t)),i=Math.max(r.width+(t.padding??0)*2,t?.width??0),n=Math.max(r.height+(t.padding??0)*2,t?.height??0),e=n/8,s=.2*i,a=.2*n,g=n+e,{cssStyles:c}=t,f=v.svg(l),y=I(t,{});t.look!=="handDrawn"&&(y.roughness=0,y.fillStyle="solid");let m=[{x:-i/2-i/2*.1,y:g/2},...ft(-i/2-i/2*.1,g/2,i/2+i/2*.1,g/2,e,.8),{x:i/2+i/2*.1,y:-g/2},{x:-i/2-i/2*.1,y:-g/2}],d=-i/2+i/2*.1,w=-g/2-a*.4,x=[{x:d+i-s,y:(w+n)*1.3},{x:d+i,y:w+n-a},{x:d+i,y:(w+n)*.9},...ft(d+i,(w+n)*1.25,d+i-s,(w+n)*1.3,-n*.02,.5)],S=G(m),b=f.path(S,y),k=G(x),P=f.path(k,{...y,fillStyle:"solid"}),D=l.insert(()=>P,":first-child");return D.insert(()=>b,":first-child"),D.attr("class","basic label-container outer-path"),c&&t.look!=="handDrawn"&&D.selectAll("path").attr("style",c),h&&t.look!=="handDrawn"&&D.selectAll("path").attr("style",h),D.attr("transform",`translate(0,${-e/2})`),p.attr("transform",`translate(${-i/2+(t.padding??0)-(r.x-(r.left??0))},${-n/2+(t.padding??0)-e/2-(r.y-(r.top??0))})`),T(t,D),t.intersect=function(B){return N.polygon(t,m,B)},l}$(ha,"taggedWaveEdgedRectangle");async function ga(u,t){let{labelStyles:o,nodeStyles:h}=W(t);t.labelStyle=o;let{shapeSvg:l,bbox:r}=await O(u,t,Y(t)),p=Math.max(r.width+(t.padding??0),t?.width||0),i=Math.max(r.height+(t.padding??0),t?.height||0),n=-p/2,e=-i/2,s=l.insert("rect",":first-child");return s.attr("class","text").attr("style",h).attr("rx",0).attr("ry",0).attr("x",n).attr("y",e).attr("width",p).attr("height",i),T(t,s),t.intersect=function(a){return N.rect(t,a)},l}$(ga,"text");var Va=$((u,t,o,h,l,r)=>`M${u},${t}
|
|
3
|
+
a${l},${r} 0,0,1 0,${-h}
|
|
4
|
+
l${o},0
|
|
5
|
+
a${l},${r} 0,0,1 0,${h}
|
|
6
|
+
M${o},${-h}
|
|
7
|
+
a${l},${r} 0,0,0 0,${h}
|
|
8
|
+
l${-o},0`,"createCylinderPathD"),Za=$((u,t,o,h,l,r)=>[`M${u},${t}`,`M${u+o},${t}`,`a${l},${r} 0,0,0 0,${-h}`,`l${-o},0`,`a${l},${r} 0,0,0 0,${h}`,`l${o},0`].join(" "),"createOuterCylinderPathD"),Ja=$((u,t,o,h,l,r)=>[`M${u+o/2},${-h/2}`,`a${l},${r} 0,0,0 0,${h}`].join(" "),"createInnerCylinderPathD"),as=5,es=10;async function fa(u,t){let{labelStyles:o,nodeStyles:h}=W(t);t.labelStyle=o;let l=t.padding??0,r=t.look==="neo"?12:l/2;if(t.width||t.height){let y=t.height??0;t.height=(t.height??0)-r,t.height<as&&(t.height=as);let d=y/2/(2.5+y/50);t.width=(t.width??0)-r-d*3,t.width<es&&(t.width=es)}let{shapeSvg:p,bbox:i,label:n}=await O(u,t,Y(t)),e=(t.height?t.height:i.height)+r,s=e/2,a=s/(2.5+e/50),g=(t.width?t.width:i.width)+a+r,{cssStyles:c}=t,f;if(t.look==="handDrawn"){let y=v.svg(p),m=Za(0,0,g,e,a,s),d=Ja(0,0,g,e,a,s),w=y.path(m,I(t,{})),x=y.path(d,I(t,{fill:"none"}));f=p.insert(()=>x,":first-child"),f=p.insert(()=>w,":first-child"),f.attr("class","basic label-container"),c&&f.attr("style",c)}else{let y=Va(0,0,g,e,a,s);f=p.insert("path",":first-child").attr("d",y).attr("class","basic label-container").attr("style",K(c)).attr("style",h),f.attr("class","basic label-container outer-path"),c&&f.selectAll("path").attr("style",c),h&&f.selectAll("path").attr("style",h)}return f.attr("label-offset-x",a),f.attr("transform",`translate(${-g/2}, ${e/2} )`),n.attr("transform",`translate(${-(i.width/2)-a-(i.x-(i.left??0))}, ${-(i.height/2)-(i.y-(i.top??0))})`),T(t,f),t.intersect=function(y){let m=N.rect(t,y),d=m.y-(t.y??0);if(s!=0&&(Math.abs(d)<(t.height??0)/2||Math.abs(d)==(t.height??0)/2&&Math.abs(m.x-(t.x??0))>(t.width??0)/2-a)){let w=a*a*(1-d*d/(s*s));w!=0&&(w=Math.sqrt(Math.abs(w))),w=a-w,y.x-(t.x??0)>0&&(w=-w),m.x+=w}return m},p}$(fa,"tiltedCylinder");async function ya(u,t){let{labelStyles:o,nodeStyles:h}=W(t);t.labelStyle=o;let l=t.padding??0,r=(t.look==="neo",l),p=t.look==="neo"?l*2:l,{shapeSvg:i,bbox:n}=await O(u,t,Y(t)),e=(t?.height??n.height)+r,s=(t?.width??n.width)+p,a=[{x:-3*e/6,y:0},{x:s+3*e/6,y:0},{x:s,y:-e},{x:0,y:-e}],g,{cssStyles:c}=t;if(t.look==="handDrawn"){let f=v.svg(i),y=I(t,{}),m=G(a),d=f.path(m,y);g=i.insert(()=>d,":first-child").attr("transform",`translate(${-s/2}, ${e/2})`),c&&g.attr("style",c)}else g=ht(i,s,e,a);return h&&g.attr("style",h),t.width=s,t.height=e,T(t,g),t.intersect=function(f){return N.polygon(t,a,f)},i}$(ya,"trapezoid");async function pa(u,t){let{labelStyles:o,nodeStyles:h}=W(t);t.labelStyle=o;let l=t.padding??0,r=t.look==="neo"?16:l,p=t.look==="neo"?12:l,i=15,n=5;(t.width||t.height)&&(t.height=(t.height??0)-p*2,t.height<n&&(t.height=n),t.width=(t.width??0)-r*2,t.width<i&&(t.width=i));let{shapeSvg:e,bbox:s}=await O(u,t,Y(t)),a=(t?.width?t?.width:s.width)+r*2,g=(t?.height?t?.height:s.height)+p*2,{cssStyles:c}=t,f=v.svg(e),y=I(t,{});t.look!=="handDrawn"&&(y.roughness=0,y.fillStyle="solid");let m=[{x:-a/2*.8,y:-g/2},{x:a/2*.8,y:-g/2},{x:a/2,y:-g/2*.6},{x:a/2,y:g/2},{x:-a/2,y:g/2},{x:-a/2,y:-g/2*.6}],d=G(m),w=f.path(d,y),x=e.insert(()=>w,":first-child");return x.attr("class","basic label-container outer-path"),c&&t.look!=="handDrawn"&&x.selectChildren("path").attr("style",c),h&&t.look!=="handDrawn"&&x.selectChildren("path").attr("style",h),T(t,x),t.intersect=function(S){return N.polygon(t,m,S)},e}$(pa,"trapezoidalPentagon");var is=10,rs=10;async function ua(u,t){let{labelStyles:o,nodeStyles:h}=W(t);t.labelStyle=o;let l=t.padding??0,r=t.look==="neo"?l*2:l;(t.width||t.height)&&(t.width=((t?.width??0)-r)/2,t.width<rs&&(t.width=rs),t.height=t?.height??0,t.height<is&&(t.height=is));let{shapeSvg:p,bbox:i,label:n}=await O(u,t,Y(t)),e=ut(U().flowchart?.htmlLabels),s=(t?.width?t?.width:i.width)+r,a=t?.height?t?.height:s+i.height,g=a,c=[{x:0,y:0},{x:g,y:0},{x:g/2,y:-a}],{cssStyles:f}=t,y=v.svg(p),m=I(t,{});t.look!=="handDrawn"&&(m.roughness=0,m.fillStyle="solid");let d=G(c),w=y.path(d,m),x=p.insert(()=>w,":first-child").attr("transform",`translate(${-a/2}, ${a/2})`).attr("class","outer-path");return f&&t.look!=="handDrawn"&&x.selectChildren("path").attr("style",f),h&&t.look!=="handDrawn"&&x.selectChildren("path").attr("style",h),t.width=s,t.height=a,T(t,x),n.attr("transform",`translate(${-i.width/2-(i.x-(i.left??0))}, ${a/2-(i.height+(t.padding??0)/(e?2:1)-(i.y-(i.top??0)))})`),t.intersect=function(S){return z.info("Triangle intersect",t,c,S),N.polygon(t,c,S)},p}$(ua,"triangle");async function da(u,t){let{labelStyles:o,nodeStyles:h}=W(t);t.labelStyle=o;let l=t.padding??0,r=t.look==="neo"?16:l,p=t.look==="neo"?12:l,i=!0;(t.width||t.height)&&(i=!1,t.width=(t?.width??0)-r*2,t.width<10&&(t.width=10),t.height=(t?.height??0)-p*2,t.height<10&&(t.height=10));let{shapeSvg:n,bbox:e,label:s}=await O(u,t,Y(t)),a=(t?.width?t?.width:e.width)+(r??0)*2,g=(t?.height?t?.height:e.height)+(p??0)*2,c=t.look==="neo"?g/4:g/8,f=g+(i?c:-c),{cssStyles:y}=t,d=14-a,w=d>0?d/2:0,x=v.svg(n),S=I(t,{});t.look!=="handDrawn"&&(S.roughness=0,S.fillStyle="solid");let b=[{x:-a/2-w,y:f/2},...ft(-a/2-w,f/2,a/2+w,f/2,c,.8),{x:a/2+w,y:-f/2},{x:-a/2-w,y:-f/2}],k=G(b),P=x.path(k,S),D=n.insert(()=>P,":first-child");return D.attr("class","basic label-container outer-path"),y&&t.look!=="handDrawn"&&D.selectAll("path").attr("style",y),h&&t.look!=="handDrawn"&&D.selectAll("path").attr("style",h),D.attr("transform",`translate(0,${-c/2})`),s.attr("transform",`translate(${-a/2+(t.padding??0)-(e.x-(e.left??0))},${-g/2+(t.padding??0)-c-(e.y-(e.top??0))})`),T(t,D),t.intersect=function(B){return N.polygon(t,b,B)},n}$(da,"waveEdgedRectangle");async function ma(u,t){let{labelStyles:o,nodeStyles:h}=W(t);t.labelStyle=o;let l=t.padding??0,r=t.look==="neo"?16:l,p=t.look==="neo"?20:l;if(t.width||t.height){t.width=t?.width??0,t.width<20&&(t.width=20),t.height=t?.height??0,t.height<10&&(t.height=10);let S=Math.min(t.height*.2,t.height/4);t.height=Math.ceil(t.height-p-S*(20/9)),t.width=t.width-r*2}let{shapeSvg:i,bbox:n}=await O(u,t,Y(t)),e=(t?.width?t?.width:n.width)+r*2,s=(t?.height?t?.height:n.height)+p,a=s/8,g=s+a*2,{cssStyles:c}=t,f=v.svg(i),y=I(t,{});t.look!=="handDrawn"&&(y.roughness=0,y.fillStyle="solid");let m=[{x:-e/2,y:g/2},...ft(-e/2,g/2,e/2,g/2,a,1),{x:e/2,y:-g/2},...ft(e/2,-g/2,-e/2,-g/2,a,-1)],d=G(m),w=f.path(d,y),x=i.insert(()=>w,":first-child");return x.attr("class","basic label-container"),c&&t.look!=="handDrawn"&&x.selectAll("path").attr("style",c),h&&t.look!=="handDrawn"&&x.selectAll("path").attr("style",h),T(t,x),t.intersect=function(S){return N.polygon(t,m,S)},i}$(ma,"waveRectangle");var J=10;async function wa(u,t){let{labelStyles:o,nodeStyles:h}=W(t);t.labelStyle=o;let l=t.look==="neo"?16:t.padding??0,r=t.look==="neo"?12:t.padding??0;(t.width||t.height)&&(t.width=Math.max((t?.width??0)-l*2-J,10),t.height=Math.max((t?.height??0)-r*2-J,10));let{shapeSvg:p,bbox:i,label:n}=await O(u,t,Y(t)),e=(t?.width?t?.width:i.width)+l*2+J,s=(t?.height?t?.height:i.height)+r*2+J,a=e-J,g=s-J,c=-a/2,f=-g/2,{cssStyles:y}=t,m=v.svg(p),d=I(t,{}),w=[{x:c-J,y:f-J},{x:c-J,y:f+g},{x:c+a,y:f+g},{x:c+a,y:f-J}],x=`M${c-J},${f-J} L${c+a},${f-J} L${c+a},${f+g} L${c-J},${f+g} L${c-J},${f-J}
|
|
9
|
+
M${c-J},${f} L${c+a},${f}
|
|
10
|
+
M${c},${f-J} L${c},${f+g}`;t.look!=="handDrawn"&&(d.roughness=0,d.fillStyle="solid");let S=m.path(x,d),b=p.insert(()=>S,":first-child");return b.attr("transform",`translate(${J/2}, ${J/2})`),b.attr("class","basic label-container outer-path"),y&&t.look!=="handDrawn"&&b.selectAll("path").attr("style",y),h&&t.look!=="handDrawn"&&b.selectAll("path").attr("style",h),n.attr("transform",`translate(${-(i.width/2)+J/2-(i.x-(i.left??0))}, ${-(i.height/2)+J/2-(i.y-(i.top??0))})`),T(t,b),t.intersect=function(k){return N.polygon(t,w,k)},p}$(wa,"windowPane");var ls=new Set(["redux-color","redux-dark-color"]),Qa=new Set(["redux","redux-dark","redux-color","redux-dark-color"]);async function Ft(u,t){let o=t;o.alias&&(t.label=o.alias);let{theme:h,themeVariables:l}=wt(),{rowEven:r,rowOdd:p,nodeBorder:i,borderColorArray:n}=l;if(t.look==="handDrawn"){let{themeVariables:j}=wt(),{background:V}=j,Q={...t,id:t.id+"-background",domId:(t.domId||t.id)+"-background",look:"default",cssStyles:["stroke: none",`fill: ${V}`]};await Ft(u,Q)}let e=wt();t.useHtmlLabels=e.htmlLabels;let s=e.er?.diagramPadding??10,a=e.er?.entityPadding??6,{cssStyles:g}=t,{labelStyles:c,nodeStyles:f}=W(t);if(o.attributes.length===0&&t.label){let j={rx:0,ry:0,labelPaddingX:s,labelPaddingY:s*1.5,classes:""};Pt(t.label,e)+j.labelPaddingX*2<e.er.minEntityWidth&&(t.width=e.er.minEntityWidth);let V=await vt(u,t,j);if(h!=null&&ls.has(h)){let Q=o.colorIndex??0;V.attr("data-color-id",`color-${Q%n.length}`)}if(!ut(e.htmlLabels)){let Q=V.select("text"),st=Q.node()?.getBBox();Q.attr("transform",`translate(${-st.width/2}, 0)`)}return V}e.htmlLabels||(s*=1.25,a*=1.25);let y=Y(t);y||(y="node default");let m=u.insert("g").attr("class",y).attr("id",t.domId||t.id),d=await bt(m,t.label??"",e,0,0,["name"],c);d.height+=a;let w=0,x=[],S=[],b=0,k=0,P=0,D=0,B=!0,M=!0;for(let j of o.attributes){let V=await bt(m,j.type,e,0,w,["attribute-type"],c);b=Math.max(b,V.width+s);let Q=await bt(m,j.name,e,0,w,["attribute-name"],c);k=Math.max(k,Q.width+s);let st=await bt(m,j.keys.join(),e,0,w,["attribute-keys"],c);P=Math.max(P,st.width+s);let pt=await bt(m,j.comment,e,0,w,["attribute-comment"],c);D=Math.max(D,pt.width+s);let gt=Math.max(V.height,Q.height,st.height,pt.height)+a;S.push({yOffset:w,rowHeight:gt}),w+=gt}let C=4;P<=s&&(B=!1,P=0,C--),D<=s&&(M=!1,D=0,C--);let X=m.node().getBBox();if(d.width+s*2-(b+k+P+D)>0){let j=d.width+s*2-(b+k+P+D);b+=j/C,k+=j/C,P>0&&(P+=j/C),D>0&&(D+=j/C)}let R=b+k+P+D,L=v.svg(m),H=I(t,{});t.look!=="handDrawn"&&(H.roughness=0,H.fillStyle="solid");let A=0;S.length>0&&(A=S.reduce((j,V)=>j+(V?.rowHeight??0),0));let E=Math.max(X.width+s*2,t?.width||0,R),_=Math.max((A??0)+d.height,t?.height||0),F=-E/2,q=-_/2;if(m.selectAll("g:not(:first-child)").each((j,V,Q)=>{let st=Z(Q[V]),pt=st.attr("transform"),gt=0,qt=0;if(pt){let It=RegExp(/translate\(([^,]+),([^)]+)\)/).exec(pt);It&&(gt=parseFloat(It[1]),qt=parseFloat(It[2]),st.attr("class").includes("attribute-name")?gt+=b:st.attr("class").includes("attribute-keys")?gt+=b+k:st.attr("class").includes("attribute-comment")&&(gt+=b+k+P))}st.attr("transform",`translate(${F+s/2+gt}, ${qt+q+d.height+a/2})`)}),m.select(".name").attr("transform","translate("+-d.width/2+", "+(q+a/2)+")"),h!=null&&ls.has(h)){let j=o.colorIndex??0;m.attr("data-color-id",`color-${j%n.length}`)}let kt=L.rectangle(F,q,E,_,H),mt=m.insert(()=>kt,":first-child").attr("class","outer-path").attr("style",g.join(""));x.push(0);for(let[j,V]of S.entries()){let st=(j+1)%2===0&&V.yOffset!==0,pt=L.rectangle(F,d.height+q+V?.yOffset,E,V?.rowHeight,{...H,fill:st?r:p,stroke:i});m.insert(()=>pt,"g.label").attr("style",g.join("")).attr("class",`row-rect-${st?"even":"odd"}`)}let it=1e-4,et=St(F,d.height+q,E+F,d.height+q,it),lt=L.polygon(et.map(j=>[j.x,j.y]),H);if(m.insert(()=>lt).attr("class","divider"),et=St(b+F,d.height+q,b+F,_+q,it),lt=L.polygon(et.map(j=>[j.x,j.y]),H),m.insert(()=>lt).attr("class","divider"),B){let j=b+k+F;et=St(j,d.height+q,j,_+q,it),lt=L.polygon(et.map(V=>[V.x,V.y]),H),m.insert(()=>lt).attr("class","divider")}if(M){let j=b+k+P+F;et=St(j,d.height+q,j,_+q,it),lt=L.polygon(et.map(V=>[V.x,V.y]),H),m.insert(()=>lt).attr("class","divider")}for(let j of x){let V=d.height+q+j;et=St(F,V,E+F,V,it),lt=L.polygon(et.map(Q=>[Q.x,Q.y]),H),m.insert(()=>lt).attr("class","divider")}if(T(t,mt),f&&t.look!=="handDrawn")if(h!=null&&Qa.has(h))m.selectAll("path").attr("style",f);else{let V=f.split(";")?.filter(Q=>Q.includes("stroke"))?.map(Q=>`${Q}`).join("; ");m.selectAll("path").attr("style",V??""),m.selectAll(".row-rect-even path").attr("style",f)}return t.intersect=function(j){return N.rect(t,j)},m}$(Ft,"erBox");async function bt(u,t,o,h=0,l=0,r=[],p=""){let i=u.insert("g").attr("class",`label ${r.join(" ")}`).attr("transform",`translate(${h}, ${l})`).attr("style",p);t!==Wt(t)&&(t=Wt(t),t=t.replaceAll("<","<").replaceAll(">",">"));let n=i.node().appendChild(await nt(i,t,{width:Pt(t,o)+100,style:p,useHtmlLabels:o.htmlLabels},o));if(t.includes("<")||t.includes(">")){let s=n.children[0];for(s.textContent=s.textContent.replaceAll("<","<").replaceAll(">",">");s.childNodes[0];)s=s.childNodes[0],s.textContent=s.textContent.replaceAll("<","<").replaceAll(">",">")}let e=n.getBBox();if(ut(o.htmlLabels)){let s=n.children[0];s.style.textAlign="start";let a=Z(n);e=s.getBoundingClientRect(),a.attr("width",e.width),a.attr("height",e.height)}return e}$(bt,"addText");function St(u,t,o,h,l){return u===o?[{x:u-l/2,y:t},{x:u+l/2,y:t},{x:o+l/2,y:h},{x:o-l/2,y:h}]:[{x:u,y:t-l/2},{x:u,y:t+l/2},{x:o,y:h+l/2},{x:o,y:h-l/2}]}$(St,"lineToPolygon");async function xa(u,t,o,h,l=o.class.padding??12){let r=h?0:3,p=u.insert("g").attr("class",Y(t)).attr("id",t.domId||t.id),i=null,n=null,e=null,s=null,a=0,g=0,c=0;if(i=p.insert("g").attr("class","annotation-group text"),t.annotations.length>0){let w=t.annotations[0];await Nt(i,{text:`«${w}»`},0),a=i.node().getBBox().height}n=p.insert("g").attr("class","label-group text"),await Nt(n,t,0,["font-weight: bolder"]);let f=n.node().getBBox();g=f.height,e=p.insert("g").attr("class","members-group text");let y=0;for(let w of t.members){let x=await Nt(e,w,y,[w.parseClassifier()]);y+=x+r}c=e.node().getBBox().height,c<=0&&(c=l/2),s=p.insert("g").attr("class","methods-group text");let m=0;for(let w of t.methods){let x=await Nt(s,w,m,[w.parseClassifier()]);m+=x+r}let d=p.node().getBBox();if(i!==null){let w=i.node().getBBox();i.attr("transform",`translate(${-w.width/2})`)}return n.attr("transform",`translate(${-f.width/2}, ${a})`),d=p.node().getBBox(),e.attr("transform",`translate(0, ${a+g+l*2})`),d=p.node().getBBox(),s.attr("transform",`translate(0, ${a+g+(c?c+l*4:l*2)})`),d=p.node().getBBox(),{shapeSvg:p,bbox:d}}$(xa,"textHelper");async function Nt(u,t,o,h=[]){let l=u.insert("g").attr("class","label").attr("style",h.join("; ")),r=wt(),p="useHtmlLabels"in t?t.useHtmlLabels:ut(r.htmlLabels)??!0,i="";"text"in t?i=t.text:i=t.label,!p&&i.startsWith("\\")&&(i=i.substring(1)),zt(i)&&(p=!0);let n=await nt(l,Et(Dt(i)),{width:Pt(i,r)+50,classes:"markdown-node-label",useHtmlLabels:p},r),e,s=1;if(p){let a=n.children[0],g=Z(n);s=a.innerHTML.split("<br>").length,a.innerHTML.includes("</math>")&&(s+=a.innerHTML.split("<mrow>").length-1);let c=a.getElementsByTagName("img");if(c){let f=i.replace(/<img[^>]*>/g,"").trim()==="";await Promise.all([...c].map(y=>new Promise(m=>{function d(){if(y.style.display="flex",y.style.flexDirection="column",f){let w=r.fontSize?.toString()??window.getComputedStyle(document.body).fontSize,S=parseInt(w,10)*5+"px";y.style.minWidth=S,y.style.maxWidth=S}else y.style.width="100%";m(y)}$(d,"setupImage"),setTimeout(()=>{y.complete&&d()}),y.addEventListener("error",d),y.addEventListener("load",d)})))}e=a.getBoundingClientRect(),g.attr("width",e.width),g.attr("height",e.height)}else{h.includes("font-weight: bolder")&&Z(n).selectAll("tspan").attr("font-weight",""),s=n.children.length;let a=n.children[0];(n.textContent===""||n.textContent.includes(">"))&&(a.textContent=i[0]+i.substring(1).replaceAll(">",">").replaceAll("<","<").trim(),i[1]===" "&&(a.textContent=a.textContent[0]+" "+a.textContent.substring(1))),a.textContent==="undefined"&&(a.textContent=""),e=n.getBBox()}return l.attr("transform","translate(0,"+(-e.height/(2*s)+o)+")"),e.height}$(Nt,"addText");async function ba(u,t){let o=U(),{themeVariables:h}=o,{useGradient:l}=h,r=o.class.padding??12,p=r,i=t.useHtmlLabels??ut(o.htmlLabels)??!0,n=t;n.annotations=n.annotations??[],n.members=n.members??[],n.methods=n.methods??[];let{shapeSvg:e,bbox:s}=await xa(u,t,o,i,p),{labelStyles:a,nodeStyles:g}=W(t);t.labelStyle=a,t.cssStyles=n.styles||"";let c=n.styles?.join(";")||g||"";t.cssStyles||(t.cssStyles=c.replaceAll("!important","").split(";"));let f=n.members.length===0&&n.methods.length===0&&!o.class?.hideEmptyMembersBox,y=v.svg(e),m=I(t,{});t.look!=="handDrawn"&&(m.roughness=0,m.fillStyle="solid");let d=Math.max(t.width??0,s.width),w=Math.max(t.height??0,s.height),x=(t.height??0)>s.height;n.members.length===0&&n.methods.length===0?w+=p:n.members.length>0&&n.methods.length===0&&(w+=p*2);let S=-d/2,b=-w/2,k=f?r*2:n.members.length===0&&n.methods.length===0?-r:0;x&&(k=r*2);let P=y.rectangle(S-r,b-r-(f?r:n.members.length===0&&n.methods.length===0?-r/2:0),d+2*r,w+2*r+k,m),D=e.insert(()=>P,":first-child");D.attr("class","basic label-container outer-path");let B=D.node().getBBox(),M=e.select(".annotation-group").node().getBBox().height-(f?r/2:0)||0,C=e.select(".label-group").node().getBBox().height-(f?r/2:0)||0,X=e.select(".members-group").node().getBBox().height-(f?r/2:0)||0,R=(M+C+b+r-(b-r-(f?r:n.members.length===0&&n.methods.length===0?-r/2:0)))/2;if(e.selectAll(".text").each((L,H,A)=>{let E=Z(A[H]),_=E.attr("transform"),F=0;if(_){let it=RegExp(/translate\(([^,]+),([^)]+)\)/).exec(_);it&&(F=parseFloat(it[2]))}let q=F+b+r-(f?r:n.members.length===0&&n.methods.length===0?-r/2:0);if(E.attr("class").includes("methods-group")){let mt=Math.max(X,p/2);x?q=Math.max(R,M+C+mt+b+p*2+r)+p*2:q=M+C+mt+b+p*4+r}n.members.length===0&&n.methods.length===0&&o.class?.hideEmptyMembersBox&&(n.annotations.length>0?q=F-p:q=F),i||(q-=4);let kt=S;(E.attr("class").includes("label-group")||E.attr("class").includes("annotation-group"))&&(kt=-E.node()?.getBBox().width/2||0,e.selectAll("text").each(function(mt,it,et){window.getComputedStyle(et[it]).textAnchor==="middle"&&(kt=0)})),E.attr("transform",`translate(${kt}, ${q})`)}),n.members.length>0||n.methods.length>0||f){let L=M+C+b+r,H=y.line(B.x,L,B.x+B.width,L+.001,m);e.insert(()=>H).attr("class",`divider${t.look==="neo"&&!l?" neo-line":""}`).attr("style",c)}if(f||n.members.length>0||n.methods.length>0){let L=M+C+X+b+p*2+r,H=y.line(B.x,x?Math.max(R,L):L,B.x+B.width,(x?Math.max(R,L):L)+.001,m);e.insert(()=>H).attr("class",`divider${t.look==="neo"&&!l?" neo-line":""}`).attr("style",c)}if(n.look!=="handDrawn"&&e.selectAll("path").attr("style",c),D.select(":nth-child(2)").attr("style",c),e.selectAll(".divider").select("path").attr("style",c),t.labelStyle?e.selectAll("span").attr("style",t.labelStyle):e.selectAll("span").attr("style",c),!i){let L=RegExp(/color\s*:\s*([^;]*)/),H=L.exec(c);if(H){let A=H[0].replace("color","fill");e.selectAll("tspan").attr("style",A)}else if(a){let A=L.exec(a);if(A){let E=A[0].replace("color","fill");e.selectAll("tspan").attr("style",E)}}}return T(t,D),t.intersect=function(L){return N.rect(t,L)},e}$(ba,"classBox");async function Sa(u,t){let{labelStyles:o,nodeStyles:h}=W(t);t.labelStyle=o;let l=t,r=t,p=20,i=20,n="verifyMethod"in t,e=Y(t),{themeVariables:s}=U(),{borderColorArray:a,requirementEdgeLabelBackground:g}=s,c=u.insert("g").attr("class",e).attr("id",t.domId??t.id),f;n?f=await rt(c,`<<${l.type}>>`,0,t.labelStyle):f=await rt(c,"<<Element>>",0,t.labelStyle);let y=f,m=await rt(c,l.name,y,t.labelStyle+"; font-weight: bold;");if(y+=m+i,n){let B=await rt(c,`${l.requirementId?`ID: ${l.requirementId}`:""}`,y,t.labelStyle);y+=B;let M=await rt(c,`${l.text?`Text: ${l.text}`:""}`,y,t.labelStyle);y+=M;let C=await rt(c,`${l.risk?`Risk: ${l.risk}`:""}`,y,t.labelStyle);y+=C,await rt(c,`${l.verifyMethod?`Verification: ${l.verifyMethod}`:""}`,y,t.labelStyle)}else{let B=await rt(c,`${r.type?`Type: ${r.type}`:""}`,y,t.labelStyle);y+=B,await rt(c,`${r.docRef?`Doc Ref: ${r.docRef}`:""}`,y,t.labelStyle)}let d=(c.node()?.getBBox().width??200)+p,w=(c.node()?.getBBox().height??200)+p,x=-d/2,S=-w/2,b=v.svg(c),k=I(t,{});t.look!=="handDrawn"&&(k.roughness=0,k.fillStyle="solid");let P=b.rectangle(x,S,d,w,k),D=c.insert(()=>P,":first-child");if(D.attr("class","basic label-container outer-path").attr("style",h),a?.length){let B=t.colorIndex??0;c.attr("data-color-id",`color-${B%a.length}`)}if(c.selectAll(".label").each((B,M,C)=>{let X=Z(C[M]),R=X.attr("transform"),L=0,H=0;if(R){let F=RegExp(/translate\(([^,]+),([^)]+)\)/).exec(R);F&&(L=parseFloat(F[1]),H=parseFloat(F[2]))}let A=H-w/2,E=x+p/2;(M===0||M===1)&&(E=L),X.attr("transform",`translate(${E}, ${A+p})`)}),y>f+m+i){let B=S+f+m+i,M;if(t.look==="neo"){let R=[[x,B],[x+d,B],[x+d,B+.001],[x,B+.001]];M=b.polygon(R,k)}else M=b.line(x,B,x+d,B,k);c.insert(()=>M).attr("class","divider")}return T(t,D),t.intersect=function(B){return N.rect(t,B)},h&&t.look!=="handDrawn"&&(g||a?.length)&&c.selectAll("path").attr("style",h),c}$(Sa,"requirementBox");async function rt(u,t,o,h=""){if(t==="")return 0;let l=u.insert("g").attr("class","label").attr("style",h),r=U(),p=r.htmlLabels??!0,i=await nt(l,Et(Dt(t)),{width:Pt(t,r)+50,classes:"markdown-node-label",useHtmlLabels:p,style:h},r),n;if(p){let e=i.children[0],s=Z(i);n=e.getBoundingClientRect(),s.attr("width",n.width),s.attr("height",n.height)}else{let e=i.children[0];for(let s of e.children)h&&s.setAttribute("style",h);n=i.getBBox(),n.height+=6}return l.attr("transform",`translate(${-n.width/2},${-n.height/2+o})`),n.height}$(rt,"addText");var Ua=$(u=>{switch(u){case"Very High":return"red";case"High":return"orange";case"Medium":return null;case"Low":return"blue";case"Very Low":return"lightblue"}},"colorFromPriority");async function $a(u,t,{config:o}){let{labelStyles:h,nodeStyles:l}=W(t);t.labelStyle=h||"";let r=10,p=t.width;t.width=(t.width??200)-10;let{shapeSvg:i,bbox:n,label:e}=await O(u,t,Y(t)),s=t.padding||10,a="",g;"ticket"in t&&t.ticket&&o?.kanban?.ticketBaseUrl&&(a=o?.kanban?.ticketBaseUrl.replace("#TICKET#",t.ticket),g=i.insert("svg:a",":first-child").attr("class","kanban-ticket-link").attr("xlink:href",a).attr("target","_blank"));let c={useHtmlLabels:t.useHtmlLabels,labelStyle:t.labelStyle||"",width:t.width,img:t.img,padding:t.padding||8,centerLabel:!1},f,y;g?{label:f,bbox:y}=await Xt(g,"ticket"in t&&t.ticket||"",c):{label:f,bbox:y}=await Xt(i,"ticket"in t&&t.ticket||"",c);let{label:m,bbox:d}=await Xt(i,"assigned"in t&&t.assigned||"",c);t.width=p;let w=10,x=t?.width||0,S=Math.max(y.height,d.height)/2,b=Math.max(n.height+w*2,t?.height||0)+S,k=-x/2,P=-b/2;e.attr("transform","translate("+(s-x/2)+", "+(-S-n.height/2)+")"),f.attr("transform","translate("+(s-x/2)+", "+(-S+n.height/2)+")"),m.attr("transform","translate("+(s+x/2-d.width-2*r)+", "+(-S+n.height/2)+")");let D,{rx:B,ry:M}=t,{cssStyles:C}=t;if(t.look==="handDrawn"){let X=v.svg(i),R=I(t,{}),L=B||M?X.path(yt(k,P,x,b,B||0),R):X.rectangle(k,P,x,b,R);D=i.insert(()=>L,":first-child"),D.attr("class","basic label-container").attr("style",C||null)}else{D=i.insert("rect",":first-child"),D.attr("class","basic label-container __APA__").attr("style",l).attr("rx",B??5).attr("ry",M??5).attr("x",k).attr("y",P).attr("width",x).attr("height",b);let X="priority"in t&&t.priority;if(X){let R=i.append("line"),L=k+2,H=P+Math.floor((B??0)/2),A=P+b-Math.floor((B??0)/2);R.attr("x1",L).attr("y1",H).attr("x2",L).attr("y2",A).attr("stroke-width","4").attr("stroke",Ua(X))}}return T(t,D),t.height=b,t.intersect=function(X){return N.rect(t,X)},i}$($a,"kanbanItem");async function va(u,t){let{labelStyles:o,nodeStyles:h}=W(t);t.labelStyle=o;let{shapeSvg:l,bbox:r,halfPadding:p,label:i}=await O(u,t,Y(t)),n=r.width+10*p,e=r.height+8*p,s=.15*n,{cssStyles:a}=t,g=r.width+20,c=r.height+20,f=Math.max(n,g),y=Math.max(e,c);i.attr("transform",`translate(${-r.width/2}, ${-r.height/2})`);let m,d=`M0 0
|
|
11
|
+
a${s},${s} 1 0,0 ${f*.25},${-1*y*.1}
|
|
12
|
+
a${s},${s} 1 0,0 ${f*.25},0
|
|
13
|
+
a${s},${s} 1 0,0 ${f*.25},0
|
|
14
|
+
a${s},${s} 1 0,0 ${f*.25},${y*.1}
|
|
15
|
+
|
|
16
|
+
a${s},${s} 1 0,0 ${f*.15},${y*.33}
|
|
17
|
+
a${s*.8},${s*.8} 1 0,0 0,${y*.34}
|
|
18
|
+
a${s},${s} 1 0,0 ${-1*f*.15},${y*.33}
|
|
19
|
+
|
|
20
|
+
a${s},${s} 1 0,0 ${-1*f*.25},${y*.15}
|
|
21
|
+
a${s},${s} 1 0,0 ${-1*f*.25},0
|
|
22
|
+
a${s},${s} 1 0,0 ${-1*f*.25},0
|
|
23
|
+
a${s},${s} 1 0,0 ${-1*f*.25},${-1*y*.15}
|
|
24
|
+
|
|
25
|
+
a${s},${s} 1 0,0 ${-1*f*.1},${-1*y*.33}
|
|
26
|
+
a${s*.8},${s*.8} 1 0,0 0,${-1*y*.34}
|
|
27
|
+
a${s},${s} 1 0,0 ${f*.1},${-1*y*.33}
|
|
28
|
+
H0 V0 Z`;if(t.look==="handDrawn"){let w=v.svg(l),x=I(t,{}),S=w.path(d,x);m=l.insert(()=>S,":first-child"),m.attr("class","basic label-container").attr("style",K(a))}else m=l.insert("path",":first-child").attr("class","basic label-container").attr("style",h).attr("d",d);return m.attr("transform",`translate(${-f/2}, ${-y/2})`),T(t,m),t.calcIntersect=function(w,x){return N.rect(w,x)},t.intersect=function(w){return z.info("Bang intersect",t,w),N.rect(t,w)},l}$(va,"bang");async function ka(u,t){let{labelStyles:o,nodeStyles:h}=W(t);t.labelStyle=o;let{shapeSvg:l,bbox:r,halfPadding:p,label:i}=await O(u,t,Y(t)),n=r.width+2*p,e=r.height+2*p,s=.15*n,a=.25*n,g=.35*n,c=.2*n,{cssStyles:f}=t,y,m=`M0 0
|
|
29
|
+
a${s},${s} 0 0,1 ${n*.25},${-1*n*.1}
|
|
30
|
+
a${g},${g} 1 0,1 ${n*.4},${-1*n*.1}
|
|
31
|
+
a${a},${a} 1 0,1 ${n*.35},${n*.2}
|
|
32
|
+
|
|
33
|
+
a${s},${s} 1 0,1 ${n*.15},${e*.35}
|
|
34
|
+
a${c},${c} 1 0,1 ${-1*n*.15},${e*.65}
|
|
35
|
+
|
|
36
|
+
a${a},${s} 1 0,1 ${-1*n*.25},${n*.15}
|
|
37
|
+
a${g},${g} 1 0,1 ${-1*n*.5},0
|
|
38
|
+
a${s},${s} 1 0,1 ${-1*n*.25},${-1*n*.15}
|
|
39
|
+
|
|
40
|
+
a${s},${s} 1 0,1 ${-1*n*.1},${-1*e*.35}
|
|
41
|
+
a${c},${c} 1 0,1 ${n*.1},${-1*e*.65}
|
|
42
|
+
H0 V0 Z`;if(t.look==="handDrawn"){let d=v.svg(l),w=I(t,{}),x=d.path(m,w);y=l.insert(()=>x,":first-child"),y.attr("class","basic label-container").attr("style",K(f))}else y=l.insert("path",":first-child").attr("class","basic label-container").attr("style",h).attr("d",m);return i.attr("transform",`translate(${-r.width/2}, ${-r.height/2})`),y.attr("transform",`translate(${-n/2}, ${-e/2})`),T(t,y),t.calcIntersect=function(d,w){return N.rect(d,w)},t.intersect=function(d){return z.info("Cloud intersect",t,d),N.rect(t,d)},l}$(ka,"cloud");async function Pa(u,t){let{labelStyles:o,nodeStyles:h}=W(t);t.labelStyle=o;let{shapeSvg:l,bbox:r,halfPadding:p,label:i}=await O(u,t,Y(t)),n=r.width+8*p,e=r.height+2*p,s=5,a=t.look==="neo"?`
|
|
43
|
+
M${-n/2} ${e/2-s}
|
|
44
|
+
v${-e+2*s}
|
|
45
|
+
q0,-${s} ${s},-${s}
|
|
46
|
+
h${n-2*s}
|
|
47
|
+
q${s},0 ${s},${s}
|
|
48
|
+
v${e-s}
|
|
49
|
+
H${-n/2}
|
|
50
|
+
Z
|
|
51
|
+
`:`
|
|
52
|
+
M${-n/2} ${e/2-s}
|
|
53
|
+
v${-e+2*s}
|
|
54
|
+
q0,-${s} ${s},-${s}
|
|
55
|
+
h${n-2*s}
|
|
56
|
+
q${s},0 ${s},${s}
|
|
57
|
+
v${e-2*s}
|
|
58
|
+
q0,${s} ${-s},${s}
|
|
59
|
+
h${-(n-2*s)}
|
|
60
|
+
q${-s},0 ${-s},${-s}
|
|
61
|
+
Z
|
|
62
|
+
`;if(!t.domId)throw new Error(`defaultMindmapNode: node "${t.id}" is missing a domId — was render.ts domId prefixing skipped?`);let g=l.append("path").attr("id",t.domId).attr("class","node-bkg node-"+t.type).attr("style",h).attr("d",a);return l.append("line").attr("class","node-line-").attr("x1",-n/2).attr("y1",e/2).attr("x2",n/2).attr("y2",e/2),i.attr("transform",`translate(${-r.width/2}, ${-r.height/2})`),l.append(()=>i.node()),T(t,g),t.calcIntersect=function(c,f){return N.rect(c,f)},t.intersect=function(c){return N.rect(t,c)},l}$(Pa,"defaultMindmapNode");async function Da(u,t){let o={padding:t.padding??0};return Gt(u,t,o)}$(Da,"mindmapCircle");var Ka=[{semanticName:"Process",name:"Rectangle",shortName:"rect",description:"Standard process shape",aliases:["proc","process","rectangle"],internalAliases:["squareRect"],handler:ea},{semanticName:"Event",name:"Rounded Rectangle",shortName:"rounded",description:"Represents an event",aliases:["event"],internalAliases:["roundedRect"],handler:ta},{semanticName:"Terminal Point",name:"Stadium",shortName:"stadium",description:"Terminal point",aliases:["terminal","pill"],handler:ia},{semanticName:"Subprocess",name:"Framed Rectangle",shortName:"fr-rect",description:"Subprocess",aliases:["subprocess","subproc","framed-rectangle","subroutine"],handler:ca},{semanticName:"Database",name:"Cylinder",shortName:"cyl",description:"Database storage",aliases:["db","database","cylinder"],handler:Ds},{semanticName:"Data Store",name:"Data Store",shortName:"datastore",description:"Data flow diagram data store",aliases:["data-store"],handler:Bs},{semanticName:"Start",name:"Circle",shortName:"circle",description:"Starting point",aliases:["circ"],handler:Gt},{semanticName:"Bang",name:"Bang",shortName:"bang",description:"Bang",aliases:["bang"],handler:va},{semanticName:"Cloud",name:"Cloud",shortName:"cloud",description:"cloud",aliases:["cloud"],handler:ka},{semanticName:"Decision",name:"Diamond",shortName:"diam",description:"Decision-making step",aliases:["decision","diamond","question"],handler:Qs},{semanticName:"Prepare Conditional",name:"Hexagon",shortName:"hex",description:"Preparation or condition step",aliases:["hexagon","prepare"],handler:Is},{semanticName:"Data Input/Output",name:"Lean Right",shortName:"lean-r",description:"Represents input or output",aliases:["lean-right","in-out"],internalAliases:["lean_right"],handler:Gs},{semanticName:"Data Input/Output",name:"Lean Left",shortName:"lean-l",description:"Represents output or input",aliases:["lean-left","out-in"],internalAliases:["lean_left"],handler:js},{semanticName:"Priority Action",name:"Trapezoid Base Bottom",shortName:"trap-b",description:"Priority action",aliases:["priority","trapezoid-bottom","trapezoid"],handler:ya},{semanticName:"Manual Operation",name:"Trapezoid Base Top",shortName:"trap-t",description:"Represents a manual task",aliases:["manual","trapezoid-top","inv-trapezoid"],internalAliases:["inv_trapezoid"],handler:Ys},{semanticName:"Stop",name:"Double Circle",shortName:"dbl-circ",description:"Represents a stop point",aliases:["double-circle"],internalAliases:["doublecircle"],handler:Ns},{semanticName:"Text Block",name:"Text Block",shortName:"text",description:"Text block",handler:ga},{semanticName:"Card",name:"Notched Rectangle",shortName:"notch-rect",description:"Represents a card",aliases:["card","notched-rectangle"],handler:ws},{semanticName:"Lined/Shaded Process",name:"Lined Rectangle",shortName:"lin-rect",description:"Lined process shape",aliases:["lined-rectangle","lined-process","lin-proc","shaded-process"],handler:sa},{semanticName:"Start",name:"Small Circle",shortName:"sm-circ",description:"Small starting point",aliases:["start","small-circle"],internalAliases:["stateStart"],handler:na},{semanticName:"Stop",name:"Framed Circle",shortName:"fr-circ",description:"Stop point",aliases:["stop","framed-circle"],internalAliases:["stateEnd"],handler:la},{semanticName:"Fork/Join",name:"Filled Rectangle",shortName:"fork",description:"Fork or join in process flow",aliases:["join"],internalAliases:["forkJoin"],handler:As},{semanticName:"Collate",name:"Hourglass",shortName:"hourglass",description:"Represents a collate operation",aliases:["hourglass","collate"],handler:Ls},{semanticName:"Comment",name:"Curly Brace",shortName:"brace",description:"Adds a comment",aliases:["comment","brace-l"],handler:$s},{semanticName:"Comment Right",name:"Curly Brace",shortName:"brace-r",description:"Adds a comment",handler:vs},{semanticName:"Comment with braces on both sides",name:"Curly Braces",shortName:"braces",description:"Adds a comment",handler:ks},{semanticName:"Com Link",name:"Lightning Bolt",shortName:"bolt",description:"Communication link",aliases:["com-link","lightning-bolt"],handler:Fs},{semanticName:"Document",name:"Document",shortName:"doc",description:"Represents a document",aliases:["doc","document"],handler:da},{semanticName:"Delay",name:"Half-Rounded Rectangle",shortName:"delay",description:"Represents a delay",aliases:["half-rounded-rectangle"],handler:Hs},{semanticName:"Direct Access Storage",name:"Horizontal Cylinder",shortName:"h-cyl",description:"Direct access storage",aliases:["das","horizontal-cylinder"],handler:fa},{semanticName:"Disk Storage",name:"Lined Cylinder",shortName:"lin-cyl",description:"Disk storage",aliases:["disk","lined-cylinder"],handler:qs},{semanticName:"Display",name:"Curved Trapezoid",shortName:"curv-trap",description:"Represents a display",aliases:["curved-trapezoid","display"],handler:Ps},{semanticName:"Divided Process",name:"Divided Rectangle",shortName:"div-rect",description:"Divided process shape",aliases:["div-proc","divided-rectangle","divided-process"],handler:Ms},{semanticName:"Extract",name:"Triangle",shortName:"tri",description:"Extraction process",aliases:["extract","triangle"],handler:ua},{semanticName:"Internal Storage",name:"Window Pane",shortName:"win-pane",description:"Internal storage",aliases:["internal-storage","window-pane"],handler:wa},{semanticName:"Junction",name:"Filled Circle",shortName:"f-circ",description:"Junction point",aliases:["junction","filled-circle"],handler:Cs},{semanticName:"Loop Limit",name:"Trapezoidal Pentagon",shortName:"notch-pent",description:"Loop limit step",aliases:["loop-limit","notched-pentagon"],handler:pa},{semanticName:"Manual File",name:"Flipped Triangle",shortName:"flip-tri",description:"Manual file operation",aliases:["manual-file","flipped-triangle"],handler:Rs},{semanticName:"Manual Input",name:"Sloped Rectangle",shortName:"sl-rect",description:"Manual input step",aliases:["manual-input","sloped-rectangle"],handler:aa},{semanticName:"Multi-Document",name:"Stacked Document",shortName:"docs",description:"Multiple documents",aliases:["documents","st-doc","stacked-document"],handler:Zs},{semanticName:"Multi-Process",name:"Stacked Rectangle",shortName:"st-rect",description:"Multiple processes",aliases:["procs","processes","stacked-rectangle"],handler:Vs},{semanticName:"Stored Data",name:"Bow Tie Rectangle",shortName:"bow-rect",description:"Stored data",aliases:["stored-data","bow-tie-rectangle"],handler:ms},{semanticName:"Summary",name:"Crossed Circle",shortName:"cross-circ",description:"Summary",aliases:["summary","crossed-circle"],handler:Ss},{semanticName:"Tagged Document",name:"Tagged Document",shortName:"tag-doc",description:"Tagged document",aliases:["tag-doc","tagged-document"],handler:ha},{semanticName:"Tagged Process",name:"Tagged Rectangle",shortName:"tag-rect",description:"Tagged process",aliases:["tagged-rectangle","tag-proc","tagged-process"],handler:oa},{semanticName:"Paper Tape",name:"Flag",shortName:"flag",description:"Paper tape",aliases:["paper-tape"],handler:ma},{semanticName:"Odd",name:"Odd",shortName:"odd",description:"Odd shape",internalAliases:["rect_left_inv_arrow"],handler:Us},{semanticName:"Lined Document",name:"Lined Document",shortName:"lin-doc",description:"Lined document",aliases:["lined-document"],handler:zs}],te=$(()=>{let t=[...Object.entries({state:ra,choice:xs,note:Js,rectWithTitle:Ks,labelRect:Os,iconSquare:Xs,iconCircle:Es,icon:Ws,iconRounded:Ts,imageSquare:_s,anchor:us,kanbanItem:$a,mindmapCircle:Da,defaultMindmapNode:Pa,classBox:ba,erBox:Ft,requirementBox:Sa}),...Ka.flatMap(o=>[o.shortName,..."aliases"in o?o.aliases:[],..."internalAliases"in o?o.internalAliases:[]].map(l=>[l,o.handler]))];return Object.fromEntries(t)},"generateShapeMap"),Ba=te();function se(u){return u in Ba}$(se,"isValidShape");var Ht=new Map;async function ae(u,t,o){let h,l;t.shape==="rect"&&(t.rx&&t.ry?t.shape="roundedRect":t.shape="squareRect");let r=t.shape?Ba[t.shape]:void 0;if(!r)throw new Error(`No such shape: ${t.shape}. Please check your syntax.`);if(t.link){let p;o.config.securityLevel==="sandbox"?p="_top":t.linkTarget&&(p=t.linkTarget||"_blank"),h=u.insert("svg:a").attr("xlink:href",t.link).attr("target",p??null),l=await r(h,t,o)}else l=await r(u,t,o),h=l;return h.attr("data-look",K(t.look)),t.tooltip&&l.attr("title",t.tooltip),Ht.set(t.id,h),t.haveCallback&&h.attr("class",h.attr("class")+" clickable"),h}$(ae,"insertNode");var Pi=$((u,t)=>{Ht.set(t.id,u)},"setNodeElem"),Di=$(()=>{Ht.clear()},"clear"),Bi=$(u=>{let t=Ht.get(u.id);z.trace("Transforming node",u.diff,u,"translate("+(u.x-u.width/2-5)+", "+u.width/2+")");let o=8,h=u.diff||0;return u.clusterNode?t.attr("transform","translate("+(u.x+h-u.width/2)+", "+(u.y-u.height/2-o)+")"):t.attr("transform","translate("+u.x+", "+u.y+")"),h},"positionNode");export{O as a,T as b,At as c,ye as d,pe as e,se as f,ae as g,Pi as h,Di as i,Bi as j};
|
|
63
|
+
//# sourceMappingURL=chunk-TGL5CWDU.js.map
|