@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,11 @@
|
|
|
1
|
+
import{a as X,b as H,c as rt,d as kt}from"./chunk-RCIRWMC7.js";import{c as B}from"./chunk-TGL5CWDU.js";import{a as ut}from"./chunk-XUJKMBZ5.js";import{a as bt}from"./chunk-AUV7QZZ7.js";import{c as yt,d as gt}from"./chunk-HLP6UJDY.js";import{f as xt}from"./chunk-6AA7JQNC.js";import{p as E,t as mt}from"./chunk-EHSK6IMI.js";import{A as O,E as K,Z as $}from"./chunk-WBEUYPCI.js";import{$ as pt,I,J as et,L as nt,M as st,N as tt,R as ot,U as it,Y as ct,Z as lt,_ as dt,aa as ht,b as d,ba as ft,d as g,j as U}from"./chunk-PVPXGQIV.js";var Et=d((r,t,a,s,o,n=!1,e)=>{t.arrowTypeStart&&wt(r,"start",t.arrowTypeStart,a,s,o,n,e),t.arrowTypeEnd&&wt(r,"end",t.arrowTypeEnd,a,s,o,n,e)},"addEdgeMarkers"),Wt={arrow_cross:{type:"cross",fill:!1},arrow_point:{type:"point",fill:!0},arrow_barb:{type:"barb",fill:!0},arrow_barb_neo:{type:"barb",fill:!0},arrow_circle:{type:"circle",fill:!1},aggregation:{type:"aggregation",fill:!1},extension:{type:"extension",fill:!1},composition:{type:"composition",fill:!0},dependency:{type:"dependency",fill:!0},lollipop:{type:"lollipop",fill:!1},only_one:{type:"onlyOne",fill:!1},zero_or_one:{type:"zeroOrOne",fill:!1},one_or_more:{type:"oneOrMore",fill:!1},zero_or_more:{type:"zeroOrMore",fill:!1},requirement_arrow:{type:"requirement_arrow",fill:!1},requirement_contains:{type:"requirement_contains",fill:!1}},Xt=["cross","point","circle","lollipop","aggregation","extension","composition","dependency","barb"],wt=d((r,t,a,s,o,n,e=!1,i)=>{let c=Wt[a],l=c&&Xt.includes(c.type);if(!c){g.warn(`Unknown arrow type: ${a}`);return}let k=c.type,p=`${o}_${n}-${k}${t==="start"?"Start":"End"}${e&&l?"-margin":""}`;if(i&&i.trim()!==""){let x=i.replace(/[^\dA-Za-z]/g,"_"),f=`${p}_${x}`;if(!document.getElementById(f)){let m=document.getElementById(p);if(m){let u=m.cloneNode(!0);u.id=f,u.querySelectorAll("path, circle, line").forEach(W=>{W.setAttribute("stroke",i),c.fill&&W.setAttribute("fill",i)}),m.parentNode?.appendChild(u)}}r.attr(`marker-${t}`,`url(${s}#${f})`)}else r.attr(`marker-${t}`,`url(${s}#${p})`)},"addEdgeMarker"),Yt=d(r=>typeof r=="string"?r:$()?.flowchart?.curve,"resolveEdgeCurveType"),V=new Map,M=new Map,gr=d(()=>{V.clear(),M.clear()},"clear"),T=d(r=>r?typeof r=="string"?r:r.reduce((t,a)=>t+";"+a,""):"","getLabelStyles"),xr=d(async(r,t)=>{let a=$(),s=K(a),{labelStyles:o}=gt(t);t.labelStyle=o;let n=r.insert("g").attr("class","edgeLabel"),e=n.insert("g").attr("class","label").attr("data-id",t.id),i=t.labelType==="markdown",l=await xt(r,t.label,{style:T(t.labelStyle),useHtmlLabels:s,addSvgBackground:!0,isNode:!1,markdown:i,width:i?void 0:void 0},a);e.node().appendChild(l),g.info("abc82",t,t.labelType);let k=l.getBBox(),y=k;if(s){let p=l.children[0],x=U(l);k=p.getBoundingClientRect(),y=k,x.attr("width",k.width),x.attr("height",k.height)}else{let p=U(l).select("text").node();p&&typeof p.getBBox=="function"&&(y=p.getBBox())}e.attr("transform",X(y,s)),V.set(t.id,n),t.width=k.width,t.height=k.height;let h;if(t.startLabelLeft){let p=r.insert("g").attr("class","edgeTerminals"),x=p.insert("g").attr("class","inner"),f=await B(x,t.startLabelLeft,T(t.labelStyle)||"",!1,!1);h=f;let m=f.getBBox();if(s){let u=f.children[0],w=U(f);m=u.getBoundingClientRect(),w.attr("width",m.width),w.attr("height",m.height)}x.attr("transform",X(m,s)),M.get(t.id)||M.set(t.id,{}),M.get(t.id).startLeft=p,z(h,t.startLabelLeft)}if(t.startLabelRight){let p=r.insert("g").attr("class","edgeTerminals"),x=p.insert("g").attr("class","inner"),f=await B(x,t.startLabelRight,T(t.labelStyle)||"",!1,!1);h=f;let m=f.getBBox();if(s){let u=f.children[0],w=U(f);m=u.getBoundingClientRect(),w.attr("width",m.width),w.attr("height",m.height)}x.attr("transform",X(m,s)),M.get(t.id)||M.set(t.id,{}),M.get(t.id).startRight=p,z(h,t.startLabelRight)}if(t.endLabelLeft){let p=r.insert("g").attr("class","edgeTerminals"),x=p.insert("g").attr("class","inner"),f=await B(p,t.endLabelLeft,T(t.labelStyle)||"",!1,!1);h=f;let m=f.getBBox();if(s){let u=f.children[0],w=U(f);m=u.getBoundingClientRect(),w.attr("width",m.width),w.attr("height",m.height)}x.attr("transform",X(m,s)),M.get(t.id)||M.set(t.id,{}),M.get(t.id).endLeft=p,z(h,t.endLabelLeft)}if(t.endLabelRight){let p=r.insert("g").attr("class","edgeTerminals"),x=p.insert("g").attr("class","inner"),f=await B(p,t.endLabelRight,T(t.labelStyle)||"",!1,!1);h=f;let m=f.getBBox();if(s){let u=f.children[0],w=U(f);m=u.getBoundingClientRect(),w.attr("width",m.width),w.attr("height",m.height)}x.attr("transform",X(m,s)),M.get(t.id)||M.set(t.id,{}),M.get(t.id).endRight=p,z(h,t.endLabelRight)}return l},"insertEdgeLabel");function z(r,t){K($())&&r&&(r.style.width=t.length*9+"px",r.style.height="12px")}d(z,"setTerminalWidth");var br=d((r,t)=>{g.debug("Moving label abc88 ",r.id,r.label,V.get(r.id),t);let a=t.updatedPath?t.updatedPath:t.originalPath,s=$(),{subGraphTitleTotalMargin:o}=ut(s);if(r.label){let n=V.get(r.id),e=r.x,i=r.y;if(a){let c=E.calcLabelPosition(a);g.debug("Moving label "+r.label+" from (",e,",",i,") to (",c.x,",",c.y,") abc88"),t.updatedPath&&(e=c.x,i=c.y)}n.attr("transform",`translate(${e}, ${i+o/2})`)}if(r.startLabelLeft){let n=M.get(r.id).startLeft,e=r.x,i=r.y;if(a){let c=E.calcTerminalLabelPosition(r.arrowTypeStart?10:0,"start_left",a);e=c.x,i=c.y}n.attr("transform",`translate(${e}, ${i})`)}if(r.startLabelRight){let n=M.get(r.id).startRight,e=r.x,i=r.y;if(a){let c=E.calcTerminalLabelPosition(r.arrowTypeStart?10:0,"start_right",a);e=c.x,i=c.y}n.attr("transform",`translate(${e}, ${i})`)}if(r.endLabelLeft){let n=M.get(r.id).endLeft,e=r.x,i=r.y;if(a){let c=E.calcTerminalLabelPosition(r.arrowTypeEnd?10:0,"end_left",a);e=c.x,i=c.y}n.attr("transform",`translate(${e}, ${i})`)}if(r.endLabelRight){let n=M.get(r.id).endRight,e=r.x,i=r.y;if(a){let c=E.calcTerminalLabelPosition(r.arrowTypeEnd?10:0,"end_right",a);e=c.x,i=c.y}n.attr("transform",`translate(${e}, ${i})`)}},"positionEdgeLabel"),Ht=d((r,t)=>{let a=r.x,s=r.y,o=Math.abs(t.x-a),n=Math.abs(t.y-s),e=r.width/2,i=r.height/2;return o>=e||n>=i},"outsideNode"),Bt=d((r,t,a)=>{g.debug(`intersection calc abc89:
|
|
2
|
+
outsidePoint: ${JSON.stringify(t)}
|
|
3
|
+
insidePoint : ${JSON.stringify(a)}
|
|
4
|
+
node : x:${r.x} y:${r.y} w:${r.width} h:${r.height}`);let s=r.x,o=r.y,n=Math.abs(s-a.x),e=r.width/2,i=a.x<t.x?e-n:e+n,c=r.height/2,l=Math.abs(t.y-a.y),k=Math.abs(t.x-a.x);if(Math.abs(o-t.y)*e>Math.abs(s-t.x)*c){let y=a.y<t.y?t.y-c-o:o-c-t.y;i=k*y/l;let h={x:a.x<t.x?a.x+i:a.x-k+i,y:a.y<t.y?a.y+l-y:a.y-l+y};return i===0&&(h.x=t.x,h.y=t.y),k===0&&(h.x=t.x),l===0&&(h.y=t.y),g.debug(`abc89 top/bottom calc, Q ${l}, q ${y}, R ${k}, r ${i}`,h),h}else{a.x<t.x?i=t.x-e-s:i=s-e-t.x;let y=l*i/k,h=a.x<t.x?a.x+k-i:a.x-k+i,p=a.y<t.y?a.y+y:a.y-y;return g.debug(`sides calc abc89, Q ${l}, q ${y}, R ${k}, r ${i}`,{_x:h,_y:p}),i===0&&(h=t.x,p=t.y),k===0&&(h=t.x),l===0&&(p=t.y),{x:h,y:p}}},"intersection"),Mt=d((r,t)=>{g.warn("abc88 cutPathAtIntersect",r,t);let a=[],s=r[0],o=!1;return r.forEach(n=>{if(g.info("abc88 checking point",n,t),!Ht(t,n)&&!o){let e=Bt(t,s,n);g.debug("abc88 inside",n,s,e),g.debug("abc88 intersection",e,t);let i=!1;a.forEach(c=>{i=i||c.x===e.x&&c.y===e.y}),a.some(c=>c.x===e.x&&c.y===e.y)?g.warn("abc88 no intersect",e,a):a.push(e),o=!0}else g.warn("abc88 outside",n,s),s=n,o||a.push(n)}),g.debug("returning points",a),a},"cutPathAtIntersect");function _t(r){let t=[],a=[];for(let s=1;s<r.length-1;s++){let o=r[s-1],n=r[s],e=r[s+1];(o.x===n.x&&n.y===e.y&&Math.abs(n.x-e.x)>5&&Math.abs(n.y-o.y)>5||o.y===n.y&&n.x===e.x&&Math.abs(n.x-o.x)>5&&Math.abs(n.y-e.y)>5)&&(t.push(n),a.push(s))}return{cornerPoints:t,cornerPointPositions:a}}d(_t,"extractCornerPoints");var Lt=d(function(r,t,a){let s=t.x-r.x,o=t.y-r.y,n=Math.sqrt(s*s+o*o),e=a/n;return{x:t.x-e*s,y:t.y-e*o}},"findAdjacentPoint"),Tt=d(function(r){let{cornerPointPositions:t}=_t(r),a=[];for(let s=0;s<r.length;s++)if(t.includes(s)){let o=r[s-1],n=r[s+1],e=r[s],i=Lt(o,e,5),c=Lt(n,e,5),l=c.x-i.x,k=c.y-i.y;a.push(i);let y=Math.sqrt(2)*2,h={x:e.x,y:e.y};if(Math.abs(n.x-o.x)>10&&Math.abs(n.y-o.y)>=10){g.debug("Corner point fixing",Math.abs(n.x-o.x),Math.abs(n.y-o.y));let p=5;e.x===i.x?h={x:l<0?i.x-p+y:i.x+p-y,y:k<0?i.y-y:i.y+y}:h={x:l<0?i.x-y:i.x+y,y:k<0?i.y-p+y:i.y+p-y}}else g.debug("Corner point skipping fixing",Math.abs(n.x-o.x),Math.abs(n.y-o.y));a.push(h,c)}else a.push(r[s]);return a},"fixCorners"),zt=d((r,t,a)=>{let s=r-t-a,o=2,n=2,e=o+n,i=Math.floor(s/e),c=Array(i).fill(`${o} ${n}`).join(" ");return`0 ${t} ${c} ${a}`},"generateDashArray"),wr=d(function(r,t,a,s,o,n,e,i=!1){if(!e)throw new Error(`insertEdge: missing diagramId for edge "${t.id}" — edge IDs require a diagram prefix for uniqueness`);let{handDrawnSeed:c}=$(),l=t.points,k=!1,y=o;var h=n;let p=[];for(let _ in t.cssCompiledStyles)yt(_)||p.push(t.cssCompiledStyles[_]);g.debug("UIO intersect check",t.points,h.x,y.x),h.intersect&&y.intersect&&!i&&(l=l.slice(1,t.points.length-1),l.unshift(y.intersect(l[0])),g.debug("Last point UIO",t.start,"-->",t.end,l[l.length-1],h,h.intersect(l[l.length-1])),l.push(h.intersect(l[l.length-1])));let x=btoa(JSON.stringify(l));t.toCluster&&(g.info("to cluster abc88",a.get(t.toCluster)),l=Mt(t.points,a.get(t.toCluster).node),k=!0),t.fromCluster&&(g.debug("from cluster abc88",a.get(t.fromCluster),JSON.stringify(l,null,2)),l=Mt(l.reverse(),a.get(t.fromCluster).node).reverse(),k=!0);let f=l.filter(_=>!Number.isNaN(_.y)),m=Yt(t.curve);m!=="rounded"&&(f=Tt(f));let u=I;switch(m){case"linear":u=I;break;case"basis":u=tt;break;case"cardinal":u=ot;break;case"bumpX":u=nt;break;case"bumpY":u=st;break;case"catmullRom":u=it;break;case"monotoneX":u=ct;break;case"monotoneY":u=lt;break;case"natural":u=dt;break;case"step":u=pt;break;case"stepAfter":u=ft;break;case"stepBefore":u=ht;break;case"rounded":u=I;break;default:u=tt}let{x:w,y:W}=kt(t),j=et().x(w).y(W).curve(u),L;switch(t.thickness){case"normal":L="edge-thickness-normal";break;case"thick":L="edge-thickness-thick";break;case"invisible":L="edge-thickness-invisible";break;default:L="edge-thickness-normal"}switch(t.pattern){case"solid":L+=" edge-pattern-solid";break;case"dotted":L+=" edge-pattern-dotted";break;case"dashed":L+=" edge-pattern-dashed";break;default:L+=" edge-pattern-solid"}let b,C=m==="rounded"?vt(St(f,t),5):j(f),v=Array.isArray(t.style)?t.style:[t.style],R=v.find(_=>_?.startsWith("stroke:")),S="";t.animate&&(S="edge-animation-fast"),t.animation&&(S="edge-animation-"+t.animation);let D=!1;if(t.look==="handDrawn"){let _=bt.svg(r);Object.assign([],f);let A=_.path(C,{roughness:.3,seed:c});L+=" transition",b=U(A).select("path").attr("id",`${e}-${t.id}`).attr("class"," "+L+(t.classes?" "+t.classes:"")+(S?" "+S:"")).attr("style",v?v.reduce((Q,Z)=>Q+";"+Z,""):"");let P=b.attr("d");b.attr("d",P),r.node().appendChild(b.node())}else{let _=p.join(";"),A=v?v.reduce((N,Y)=>N+Y+";",""):"",P=(_?_+";"+A+";":A)+";"+(v?v.reduce((N,Y)=>N+";"+Y,""):"");b=r.append("path").attr("d",C).attr("id",`${e}-${t.id}`).attr("class"," "+L+(t.classes?" "+t.classes:"")+(S?" "+S:"")).attr("style",P),R=P.match(/stroke:([^;]+)/)?.[1],D=t.animate===!0||!!t.animation||_.includes("animation");let Q=b.node(),Z=typeof Q.getTotalLength=="function"?Q.getTotalLength():0,F=rt[t.arrowTypeStart]||0,G=rt[t.arrowTypeEnd]||0;if(t.look==="neo"&&!D){let Y=`stroke-dasharray: ${t.pattern==="dotted"||t.pattern==="dashed"?zt(Z,F,G):`0 ${F} ${Z-F-G} ${G}`}; stroke-dashoffset: 0;`;b.attr("style",Y+b.attr("style"))}}b.attr("data-edge",!0),b.attr("data-et","edge"),b.attr("data-id",t.id),b.attr("data-points",x),b.attr("data-look",mt(t.look)),t.showPoints&&f.forEach(_=>{r.append("circle").style("stroke","red").style("fill","red").attr("r",1).attr("cx",_.x).attr("cy",_.y)});let q="";($().flowchart.arrowMarkerAbsolute||$().state.arrowMarkerAbsolute)&&(q=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,q=q.replace(/\(/g,"\\(").replace(/\)/g,"\\)")),g.info("arrowTypeStart",t.arrowTypeStart),g.info("arrowTypeEnd",t.arrowTypeEnd);let Ot=!D&&t?.look==="neo";Et(b,t,q,e,s,Ot,R);let $t=Math.floor(l.length/2),Ut=l[$t];E.isLabelCoordinateInPath(Ut,b.attr("d"))||(k=!0);let J={};return k&&(J.updatedPath=l),J.originalPath=t.points,J},"insertEdge");function vt(r,t){if(r.length<2)return"";let a="",s=r.length,o=1e-5;for(let n=0;n<s;n++){let e=r[n],i=r[n-1],c=r[n+1];if(n===0)a+=`M${e.x},${e.y}`;else if(n===s-1)a+=`L${e.x},${e.y}`;else{let l=e.x-i.x,k=e.y-i.y,y=c.x-e.x,h=c.y-e.y,p=Math.hypot(l,k),x=Math.hypot(y,h);if(p<o||x<o){a+=`L${e.x},${e.y}`;continue}let f=l/p,m=k/p,u=y/x,w=h/x,W=f*u+m*w,j=Math.max(-1,Math.min(1,W)),L=Math.acos(j);if(L<o||Math.abs(Math.PI-L)<o){a+=`L${e.x},${e.y}`;continue}let b=Math.min(t/Math.sin(L/2),p/2,x/2),C=e.x-f*b,v=e.y-m*b,R=e.x+u*b,S=e.y+w*b;a+=`L${C},${v}`,a+=`Q${e.x},${e.y} ${R},${S}`}}return a}d(vt,"generateRoundedPath");function at(r,t){if(!r||!t)return{angle:0,deltaX:0,deltaY:0};let a=t.x-r.x,s=t.y-r.y;return{angle:Math.atan2(s,a),deltaX:a,deltaY:s}}d(at,"calculateDeltaAndAngle");function St(r,t){let a=r.map(o=>({...o}));if(r.length>=2&&H[t.arrowTypeStart]){let o=H[t.arrowTypeStart],n=r[0],e=r[1],{angle:i}=at(n,e),c=o*Math.cos(i),l=o*Math.sin(i);a[0].x=n.x+c,a[0].y=n.y+l}let s=r.length;if(s>=2&&H[t.arrowTypeEnd]){let o=H[t.arrowTypeEnd],n=r[s-1],e=r[s-2],{angle:i}=at(e,n),c=o*Math.cos(i),l=o*Math.sin(i);a[s-1].x=n.x-c,a[s-1].y=n.y-l}return a}d(St,"applyMarkerOffsetsToPoints");var Ct=d((r,t,a,s)=>{t.forEach(o=>{ir[o](r,a,s)})},"insertMarkers"),Rt=d((r,t,a)=>{g.trace("Making markers for ",a),r.append("defs").append("marker").attr("id",a+"_"+t+"-extensionStart").attr("class","marker extension "+t).attr("refX",18).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").attr("markerUnits","userSpaceOnUse").append("path").attr("d","M 1,7 L18,13 V 1 Z"),r.append("defs").append("marker").attr("id",a+"_"+t+"-extensionEnd").attr("class","marker extension "+t).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 1,1 V 13 L18,7 Z"),r.append("marker").attr("id",a+"_"+t+"-extensionStart-margin").attr("class","marker extension "+t).attr("refX",18).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").attr("markerUnits","userSpaceOnUse").attr("viewBox","0 0 20 14").append("polygon").attr("points","10,7 18,13 18,1").style("stroke-width",2).style("stroke-dasharray","0"),r.append("defs").append("marker").attr("id",a+"_"+t+"-extensionEnd-margin").attr("class","marker extension "+t).attr("refX",9).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").attr("markerUnits","userSpaceOnUse").attr("viewBox","0 0 20 14").append("polygon").attr("points","10,1 10,13 18,7").style("stroke-width",2).style("stroke-dasharray","0")},"extension"),qt=d((r,t,a)=>{r.append("defs").append("marker").attr("id",a+"_"+t+"-compositionStart").attr("class","marker composition "+t).attr("refX",18).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),r.append("defs").append("marker").attr("id",a+"_"+t+"-compositionEnd").attr("class","marker composition "+t).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),r.append("defs").append("marker").attr("id",a+"_"+t+"-compositionStart-margin").attr("class","marker composition "+t).attr("refX",15).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").attr("markerUnits","userSpaceOnUse").append("path").style("stroke-width",0).attr("viewBox","0 0 15 15").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),r.append("defs").append("marker").attr("id",a+"_"+t+"-compositionEnd-margin").attr("class","marker composition "+t).attr("refX",3.5).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").attr("markerUnits","userSpaceOnUse").append("path").style("stroke-width",0).attr("d","M 18,7 L9,13 L1,7 L9,1 Z")},"composition"),At=d((r,t,a)=>{r.append("defs").append("marker").attr("id",a+"_"+t+"-aggregationStart").attr("class","marker aggregation "+t).attr("refX",18).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),r.append("defs").append("marker").attr("id",a+"_"+t+"-aggregationEnd").attr("class","marker aggregation "+t).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),r.append("defs").append("marker").attr("id",a+"_"+t+"-aggregationStart-margin").attr("class","marker aggregation "+t).attr("refX",15).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").attr("markerUnits","userSpaceOnUse").append("path").style("stroke-width",2).attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),r.append("defs").append("marker").attr("id",a+"_"+t+"-aggregationEnd-margin").attr("class","marker aggregation "+t).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").attr("markerUnits","userSpaceOnUse").append("path").style("stroke-width",2).attr("d","M 18,7 L9,13 L1,7 L9,1 Z")},"aggregation"),Pt=d((r,t,a)=>{r.append("defs").append("marker").attr("id",a+"_"+t+"-dependencyStart").attr("class","marker dependency "+t).attr("refX",6).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 5,7 L9,13 L1,7 L9,1 Z"),r.append("defs").append("marker").attr("id",a+"_"+t+"-dependencyEnd").attr("class","marker dependency "+t).attr("refX",13).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L14,7 L9,1 Z"),r.append("defs").append("marker").attr("id",a+"_"+t+"-dependencyStart-margin").attr("class","marker dependency "+t).attr("refX",4).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").attr("markerUnits","userSpaceOnUse").append("path").style("stroke-width",0).attr("d","M 5,7 L9,13 L1,7 L9,1 Z"),r.append("defs").append("marker").attr("id",a+"_"+t+"-dependencyEnd-margin").attr("class","marker dependency "+t).attr("refX",16).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").attr("markerUnits","userSpaceOnUse").append("path").style("stroke-width",0).attr("d","M 18,7 L9,13 L14,7 L9,1 Z")},"dependency"),Qt=d((r,t,a)=>{r.append("defs").append("marker").attr("id",a+"_"+t+"-lollipopStart").attr("class","marker lollipop "+t).attr("refX",13).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("circle").attr("fill","transparent").attr("cx",7).attr("cy",7).attr("r",6),r.append("defs").append("marker").attr("id",a+"_"+t+"-lollipopEnd").attr("class","marker lollipop "+t).attr("refX",1).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("circle").attr("fill","transparent").attr("cx",7).attr("cy",7).attr("r",6),r.append("defs").append("marker").attr("id",a+"_"+t+"-lollipopStart-margin").attr("class","marker lollipop "+t).attr("refX",13).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").attr("markerUnits","userSpaceOnUse").append("circle").attr("fill","transparent").attr("cx",7).attr("cy",7).attr("r",6).attr("stroke-width",2),r.append("defs").append("marker").attr("id",a+"_"+t+"-lollipopEnd-margin").attr("class","marker lollipop "+t).attr("refX",1).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").attr("markerUnits","userSpaceOnUse").append("circle").attr("fill","transparent").attr("cx",7).attr("cy",7).attr("r",6).attr("stroke-width",2)},"lollipop"),Zt=d((r,t,a)=>{r.append("marker").attr("id",a+"_"+t+"-pointEnd").attr("class","marker "+t).attr("viewBox","0 0 10 10").attr("refX",5).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",8).attr("markerHeight",8).attr("orient","auto").append("path").attr("d","M 0 0 L 10 5 L 0 10 z").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0"),r.append("marker").attr("id",a+"_"+t+"-pointStart").attr("class","marker "+t).attr("viewBox","0 0 10 10").attr("refX",4.5).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",8).attr("markerHeight",8).attr("orient","auto").append("path").attr("d","M 0 5 L 10 10 L 10 0 z").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0"),r.append("marker").attr("id",a+"_"+t+"-pointEnd-margin").attr("class","marker "+t).attr("viewBox","0 0 11.5 14").attr("refX",11.5).attr("refY",7).attr("markerUnits","userSpaceOnUse").attr("markerWidth",10.5).attr("markerHeight",14).attr("orient","auto").append("path").attr("d","M 0 0 L 11.5 7 L 0 14 z").attr("class","arrowMarkerPath").style("stroke-width",0).style("stroke-dasharray","1,0"),r.append("marker").attr("id",a+"_"+t+"-pointStart-margin").attr("class","marker "+t).attr("viewBox","0 0 11.5 14").attr("refX",1).attr("refY",7).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11.5).attr("markerHeight",14).attr("orient","auto").append("polygon").attr("points","0,7 11.5,14 11.5,0").attr("class","arrowMarkerPath").style("stroke-width",0).style("stroke-dasharray","1,0")},"point"),Nt=d((r,t,a)=>{r.append("marker").attr("id",a+"_"+t+"-circleEnd").attr("class","marker "+t).attr("viewBox","0 0 10 10").attr("refX",11).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("circle").attr("cx","5").attr("cy","5").attr("r","5").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0"),r.append("marker").attr("id",a+"_"+t+"-circleStart").attr("class","marker "+t).attr("viewBox","0 0 10 10").attr("refX",-1).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("circle").attr("cx","5").attr("cy","5").attr("r","5").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0"),r.append("marker").attr("id",a+"_"+t+"-circleEnd-margin").attr("class","marker "+t).attr("viewBox","0 0 10 10").attr("refY",5).attr("refX",12.25).attr("markerUnits","userSpaceOnUse").attr("markerWidth",14).attr("markerHeight",14).attr("orient","auto").append("circle").attr("cx","5").attr("cy","5").attr("r","5").attr("class","arrowMarkerPath").style("stroke-width",0).style("stroke-dasharray","1,0"),r.append("marker").attr("id",a+"_"+t+"-circleStart-margin").attr("class","marker "+t).attr("viewBox","0 0 10 10").attr("refX",-2).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",14).attr("markerHeight",14).attr("orient","auto").append("circle").attr("cx","5").attr("cy","5").attr("r","5").attr("class","arrowMarkerPath").style("stroke-width",0).style("stroke-dasharray","1,0")},"circle"),It=d((r,t,a)=>{r.append("marker").attr("id",a+"_"+t+"-crossEnd").attr("class","marker cross "+t).attr("viewBox","0 0 11 11").attr("refX",12).attr("refY",5.2).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("path").attr("d","M 1,1 l 9,9 M 10,1 l -9,9").attr("class","arrowMarkerPath").style("stroke-width",2).style("stroke-dasharray","1,0"),r.append("marker").attr("id",a+"_"+t+"-crossStart").attr("class","marker cross "+t).attr("viewBox","0 0 11 11").attr("refX",-1).attr("refY",5.2).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("path").attr("d","M 1,1 l 9,9 M 10,1 l -9,9").attr("class","arrowMarkerPath").style("stroke-width",2).style("stroke-dasharray","1,0"),r.append("marker").attr("id",a+"_"+t+"-crossEnd-margin").attr("class","marker cross "+t).attr("viewBox","0 0 15 15").attr("refX",17.7).attr("refY",7.5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto").append("path").attr("d","M 1,1 L 14,14 M 1,14 L 14,1").attr("class","arrowMarkerPath").style("stroke-width",2.5),r.append("marker").attr("id",a+"_"+t+"-crossStart-margin").attr("class","marker cross "+t).attr("viewBox","0 0 15 15").attr("refX",-3.5).attr("refY",7.5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto").append("path").attr("d","M 1,1 L 14,14 M 1,14 L 14,1").attr("class","arrowMarkerPath").style("stroke-width",2.5).style("stroke-dasharray","1,0")},"cross"),Vt=d((r,t,a)=>{r.append("defs").append("marker").attr("id",a+"_"+t+"-barbEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",14).attr("markerUnits","userSpaceOnUse").attr("orient","auto").append("path").attr("d","M 19,7 L9,13 L14,7 L9,1 Z")},"barb"),jt=d((r,t,a)=>{let s=O(),{themeVariables:o}=s,{transitionColor:n}=o;r.append("defs").append("marker").attr("id",a+"_"+t+"-barbEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",14).attr("markerUnits","strokeWidth").attr("orient","auto").append("path").attr("d","M 19,7 L11,14 L13,7 L11,0 Z"),r.append("defs").append("marker").attr("id",a+"_"+t+"-barbEnd-margin").attr("refX",17).attr("refY",7).attr("markerWidth",20).attr("markerHeight",14).attr("markerUnits","userSpaceOnUse").attr("orient","auto").append("path").attr("d","M 19,7 L11,14 L13,7 L11,0 Z").attr("fill",`${n}`)},"barbNeo"),Dt=d((r,t,a)=>{r.append("defs").append("marker").attr("id",a+"_"+t+"-onlyOneStart").attr("class","marker onlyOne "+t).attr("refX",0).attr("refY",9).attr("markerWidth",18).attr("markerHeight",18).attr("orient","auto").append("path").attr("d","M9,0 L9,18 M15,0 L15,18"),r.append("defs").append("marker").attr("id",a+"_"+t+"-onlyOneEnd").attr("class","marker onlyOne "+t).attr("refX",18).attr("refY",9).attr("markerWidth",18).attr("markerHeight",18).attr("orient","auto").append("path").attr("d","M3,0 L3,18 M9,0 L9,18")},"only_one"),Jt=d((r,t,a)=>{let s=r.append("defs").append("marker").attr("id",a+"_"+t+"-zeroOrOneStart").attr("class","marker zeroOrOne "+t).attr("refX",0).attr("refY",9).attr("markerWidth",30).attr("markerHeight",18).attr("orient","auto");s.append("circle").attr("fill","white").attr("cx",21).attr("cy",9).attr("r",6),s.append("path").attr("d","M9,0 L9,18");let o=r.append("defs").append("marker").attr("id",a+"_"+t+"-zeroOrOneEnd").attr("class","marker zeroOrOne "+t).attr("refX",30).attr("refY",9).attr("markerWidth",30).attr("markerHeight",18).attr("orient","auto");o.append("circle").attr("fill","white").attr("cx",9).attr("cy",9).attr("r",6),o.append("path").attr("d","M21,0 L21,18")},"zero_or_one"),Ft=d((r,t,a)=>{r.append("defs").append("marker").attr("id",a+"_"+t+"-oneOrMoreStart").attr("class","marker oneOrMore "+t).attr("refX",18).attr("refY",18).attr("markerWidth",45).attr("markerHeight",36).attr("orient","auto").append("path").attr("d","M0,18 Q 18,0 36,18 Q 18,36 0,18 M42,9 L42,27"),r.append("defs").append("marker").attr("id",a+"_"+t+"-oneOrMoreEnd").attr("class","marker oneOrMore "+t).attr("refX",27).attr("refY",18).attr("markerWidth",45).attr("markerHeight",36).attr("orient","auto").append("path").attr("d","M3,9 L3,27 M9,18 Q27,0 45,18 Q27,36 9,18")},"one_or_more"),Gt=d((r,t,a)=>{let s=r.append("defs").append("marker").attr("id",a+"_"+t+"-zeroOrMoreStart").attr("class","marker zeroOrMore "+t).attr("refX",18).attr("refY",18).attr("markerWidth",57).attr("markerHeight",36).attr("orient","auto");s.append("circle").attr("fill","white").attr("cx",48).attr("cy",18).attr("r",6),s.append("path").attr("d","M0,18 Q18,0 36,18 Q18,36 0,18");let o=r.append("defs").append("marker").attr("id",a+"_"+t+"-zeroOrMoreEnd").attr("class","marker zeroOrMore "+t).attr("refX",39).attr("refY",18).attr("markerWidth",57).attr("markerHeight",36).attr("orient","auto");o.append("circle").attr("fill","white").attr("cx",9).attr("cy",18).attr("r",6),o.append("path").attr("d","M21,18 Q39,0 57,18 Q39,36 21,18")},"zero_or_more"),Kt=d((r,t,a)=>{let s=O(),{themeVariables:o}=s,{strokeWidth:n}=o;r.append("defs").append("marker").attr("id",a+"_"+t+"-onlyOneStart").attr("class","marker onlyOne "+t).attr("refX",0).attr("refY",9).attr("markerWidth",18).attr("markerHeight",18).attr("orient","auto").attr("markerUnits","userSpaceOnUse").append("path").attr("d","M9,0 L9,18 M15,0 L15,18").attr("stroke-width",`${n}`),r.append("defs").append("marker").attr("id",a+"_"+t+"-onlyOneEnd").attr("class","marker onlyOne "+t).attr("refX",18).attr("refY",9).attr("markerWidth",18).attr("markerHeight",18).attr("orient","auto").attr("markerUnits","userSpaceOnUse").append("path").attr("d","M3,0 L3,18 M9,0 L9,18").attr("stroke-width",`${n}`)},"only_one_neo"),tr=d((r,t,a)=>{let s=O(),{themeVariables:o}=s,{strokeWidth:n,mainBkg:e}=o,i=r.append("defs").append("marker").attr("id",a+"_"+t+"-zeroOrOneStart").attr("class","marker zeroOrOne "+t).attr("refX",0).attr("refY",9).attr("markerWidth",30).attr("markerHeight",18).attr("orient","auto").attr("markerUnits","userSpaceOnUse");i.append("circle").attr("fill",e??"white").attr("cx",21).attr("cy",9).attr("stroke-width",`${n}`).attr("r",6),i.append("path").attr("d","M9,0 L9,18").attr("stroke-width",`${n}`);let c=r.append("defs").append("marker").attr("id",a+"_"+t+"-zeroOrOneEnd").attr("class","marker zeroOrOne "+t).attr("refX",30).attr("refY",9).attr("markerWidth",30).attr("markerHeight",18).attr("markerUnits","userSpaceOnUse").attr("orient","auto");c.append("circle").attr("fill",e??"white").attr("cx",9).attr("cy",9).attr("stroke-width",`${n}`).attr("r",6),c.append("path").attr("d","M21,0 L21,18").attr("stroke-width",`${n}`)},"zero_or_one_neo"),rr=d((r,t,a)=>{let s=O(),{themeVariables:o}=s,{strokeWidth:n}=o;r.append("defs").append("marker").attr("id",a+"_"+t+"-oneOrMoreStart").attr("class","marker oneOrMore "+t).attr("refX",18).attr("refY",18).attr("markerWidth",45).attr("markerHeight",36).attr("orient","auto").attr("markerUnits","userSpaceOnUse").append("path").attr("d","M0,18 Q 18,0 36,18 Q 18,36 0,18 M42,9 L42,27").attr("stroke-width",`${n}`),r.append("defs").append("marker").attr("id",a+"_"+t+"-oneOrMoreEnd").attr("class","marker oneOrMore "+t).attr("refX",27).attr("refY",18).attr("markerWidth",45).attr("markerHeight",36).attr("markerUnits","userSpaceOnUse").attr("orient","auto").append("path").attr("d","M3,9 L3,27 M9,18 Q27,0 45,18 Q27,36 9,18").attr("stroke-width",`${n}`)},"one_or_more_neo"),ar=d((r,t,a)=>{let s=O(),{themeVariables:o}=s,{strokeWidth:n,mainBkg:e}=o,i=r.append("defs").append("marker").attr("id",a+"_"+t+"-zeroOrMoreStart").attr("class","marker zeroOrMore "+t).attr("refX",18).attr("refY",18).attr("markerWidth",57).attr("markerHeight",36).attr("markerUnits","userSpaceOnUse").attr("orient","auto");i.append("circle").attr("fill",e??"white").attr("cx",45.5).attr("cy",18).attr("r",6).attr("stroke-width",`${n}`),i.append("path").attr("d","M0,18 Q18,0 36,18 Q18,36 0,18").attr("stroke-width",`${n}`);let c=r.append("defs").append("marker").attr("id",a+"_"+t+"-zeroOrMoreEnd").attr("class","marker zeroOrMore "+t).attr("refX",39).attr("refY",18).attr("markerWidth",57).attr("markerHeight",36).attr("orient","auto").attr("markerUnits","userSpaceOnUse");c.append("circle").attr("fill",e??"white").attr("cx",11).attr("cy",18).attr("r",6).attr("stroke-width",`${n}`),c.append("path").attr("d","M21,18 Q39,0 57,18 Q39,36 21,18").attr("stroke-width",`${n}`)},"zero_or_more_neo"),er=d((r,t,a)=>{r.append("defs").append("marker").attr("id",a+"_"+t+"-requirement_arrowEnd").attr("refX",20).attr("refY",10).attr("markerWidth",20).attr("markerHeight",20).attr("orient","auto").append("path").attr("d",`M0,0
|
|
5
|
+
L20,10
|
|
6
|
+
M20,10
|
|
7
|
+
L0,20`)},"requirement_arrow"),nr=d((r,t,a)=>{let s=O(),{themeVariables:o}=s,{strokeWidth:n}=o;r.append("defs").append("marker").attr("id",a+"_"+t+"-requirement_arrowEnd").attr("refX",20).attr("refY",10).attr("markerWidth",20).attr("markerHeight",20).attr("orient","auto").attr("markerUnits","userSpaceOnUse").attr("stroke-width",`${n}`).attr("viewBox","0 0 25 20").append("path").attr("d",`M0,0
|
|
8
|
+
L20,10
|
|
9
|
+
M20,10
|
|
10
|
+
L0,20`).attr("stroke-linejoin","miter")},"requirement_arrow_neo"),sr=d((r,t,a)=>{let s=r.append("defs").append("marker").attr("id",a+"_"+t+"-requirement_containsStart").attr("refX",0).attr("refY",10).attr("markerWidth",20).attr("markerHeight",20).attr("orient","auto").append("g");s.append("circle").attr("cx",10).attr("cy",10).attr("r",9).attr("fill","none"),s.append("line").attr("x1",1).attr("x2",19).attr("y1",10).attr("y2",10),s.append("line").attr("y1",1).attr("y2",19).attr("x1",10).attr("x2",10)},"requirement_contains"),or=d((r,t,a)=>{let s=O(),{themeVariables:o}=s,{strokeWidth:n}=o,e=r.append("defs").append("marker").attr("id",a+"_"+t+"-requirement_containsStart").attr("refX",0).attr("refY",10).attr("markerWidth",20).attr("markerHeight",20).attr("orient","auto").attr("markerUnits","userSpaceOnUse").append("g");e.append("circle").attr("cx",10).attr("cy",10).attr("r",9).attr("fill","none"),e.append("line").attr("x1",1).attr("x2",19).attr("y1",10).attr("y2",10),e.append("line").attr("y1",1).attr("y2",19).attr("x1",10).attr("x2",10),e.selectAll("*").attr("stroke-width",`${n}`)},"requirement_contains_neo"),ir={extension:Rt,composition:qt,aggregation:At,dependency:Pt,lollipop:Qt,point:Zt,circle:Nt,cross:It,barb:Vt,barbNeo:jt,only_one:Dt,zero_or_one:Jt,one_or_more:Ft,zero_or_more:Gt,only_one_neo:Kt,zero_or_one_neo:tr,one_or_more_neo:rr,zero_or_more_neo:ar,requirement_arrow:er,requirement_contains:sr,requirement_arrow_neo:nr,requirement_contains_neo:or},Mr=Ct;export{gr as a,xr as b,br as c,wr as d,Mr as e};
|
|
11
|
+
//# sourceMappingURL=chunk-TVSQ2OZ6.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../../node_modules/.pnpm/mermaid@11.15.0/node_modules/mermaid/dist/chunks/mermaid.core/chunk-KSCS5N6A.mjs"],
|
|
4
|
+
"sourcesContent": ["import {\n computeLabelTransform,\n getLineFunctionsWithOffset,\n markerOffsets,\n markerOffsets2\n} from \"./chunk-BSJP7CBP.mjs\";\nimport {\n createLabel_default\n} from \"./chunk-3OPIFGDE.mjs\";\nimport {\n getSubGraphTitleMargins\n} from \"./chunk-L5ZTLDWV.mjs\";\nimport {\n isLabelStyle,\n styles2String\n} from \"./chunk-NZK2D7GU.mjs\";\nimport {\n createText\n} from \"./chunk-O5CBEL6O.mjs\";\nimport {\n handleUndefinedAttr,\n utils_default\n} from \"./chunk-5ZQYHXKU.mjs\";\nimport {\n getConfig,\n getConfig2,\n getEffectiveHtmlLabels\n} from \"./chunk-CSCIHK7Q.mjs\";\nimport {\n __name,\n log\n} from \"./chunk-AGHRB4JF.mjs\";\n\n// src/rendering-util/rendering-elements/edges.js\nimport {\n curveBasis,\n curveLinear,\n curveCardinal,\n curveBumpX,\n curveBumpY,\n curveCatmullRom,\n curveMonotoneX,\n curveMonotoneY,\n curveNatural,\n curveStep,\n curveStepAfter,\n curveStepBefore,\n line,\n select\n} from \"d3\";\nimport rough from \"roughjs\";\n\n// src/rendering-util/rendering-elements/edgeMarker.ts\nvar addEdgeMarkers = /* @__PURE__ */ __name((svgPath, edge, url, id, diagramType, useMargin = false, strokeColor) => {\n if (edge.arrowTypeStart) {\n addEdgeMarker(\n svgPath,\n \"start\",\n edge.arrowTypeStart,\n url,\n id,\n diagramType,\n useMargin,\n strokeColor\n );\n }\n if (edge.arrowTypeEnd) {\n addEdgeMarker(svgPath, \"end\", edge.arrowTypeEnd, url, id, diagramType, useMargin, strokeColor);\n }\n}, \"addEdgeMarkers\");\nvar arrowTypesMap = {\n arrow_cross: { type: \"cross\", fill: false },\n arrow_point: { type: \"point\", fill: true },\n arrow_barb: { type: \"barb\", fill: true },\n arrow_barb_neo: { type: \"barb\", fill: true },\n arrow_circle: { type: \"circle\", fill: false },\n aggregation: { type: \"aggregation\", fill: false },\n extension: { type: \"extension\", fill: false },\n composition: { type: \"composition\", fill: true },\n dependency: { type: \"dependency\", fill: true },\n lollipop: { type: \"lollipop\", fill: false },\n only_one: { type: \"onlyOne\", fill: false },\n zero_or_one: { type: \"zeroOrOne\", fill: false },\n one_or_more: { type: \"oneOrMore\", fill: false },\n zero_or_more: { type: \"zeroOrMore\", fill: false },\n requirement_arrow: { type: \"requirement_arrow\", fill: false },\n requirement_contains: { type: \"requirement_contains\", fill: false }\n};\nvar arrowTypesWithMarginSupport = [\n \"cross\",\n \"point\",\n \"circle\",\n \"lollipop\",\n \"aggregation\",\n \"extension\",\n \"composition\",\n \"dependency\",\n \"barb\"\n];\nvar addEdgeMarker = /* @__PURE__ */ __name((svgPath, position, arrowType, url, id, diagramType, useMargin = false, strokeColor) => {\n const arrowTypeInfo = arrowTypesMap[arrowType];\n const marginSupport = arrowTypeInfo && arrowTypesWithMarginSupport.includes(arrowTypeInfo.type);\n if (!arrowTypeInfo) {\n log.warn(`Unknown arrow type: ${arrowType}`);\n return;\n }\n const endMarkerType = arrowTypeInfo.type;\n const suffix = position === \"start\" ? \"Start\" : \"End\";\n const offset = useMargin && marginSupport ? \"-margin\" : \"\";\n const originalMarkerId = `${id}_${diagramType}-${endMarkerType}${suffix}${offset}`;\n if (strokeColor && strokeColor.trim() !== \"\") {\n const colorId = strokeColor.replace(/[^\\dA-Za-z]/g, \"_\");\n const coloredMarkerId = `${originalMarkerId}_${colorId}`;\n if (!document.getElementById(coloredMarkerId)) {\n const originalMarker = document.getElementById(originalMarkerId);\n if (originalMarker) {\n const coloredMarker = originalMarker.cloneNode(true);\n coloredMarker.id = coloredMarkerId;\n const paths = coloredMarker.querySelectorAll(\"path, circle, line\");\n paths.forEach((path) => {\n path.setAttribute(\"stroke\", strokeColor);\n if (arrowTypeInfo.fill) {\n path.setAttribute(\"fill\", strokeColor);\n }\n });\n originalMarker.parentNode?.appendChild(coloredMarker);\n }\n }\n svgPath.attr(`marker-${position}`, `url(${url}#${coloredMarkerId})`);\n } else {\n svgPath.attr(`marker-${position}`, `url(${url}#${originalMarkerId})`);\n }\n}, \"addEdgeMarker\");\n\n// src/rendering-util/rendering-elements/edges.js\nvar resolveEdgeCurveType = /* @__PURE__ */ __name((edgeCurve) => {\n return typeof edgeCurve === \"string\" ? edgeCurve : getConfig2()?.flowchart?.curve;\n}, \"resolveEdgeCurveType\");\nvar edgeLabels = /* @__PURE__ */ new Map();\nvar terminalLabels = /* @__PURE__ */ new Map();\nvar clear = /* @__PURE__ */ __name(() => {\n edgeLabels.clear();\n terminalLabels.clear();\n}, \"clear\");\nvar getLabelStyles = /* @__PURE__ */ __name((styleArray) => {\n if (!styleArray) {\n return \"\";\n }\n if (typeof styleArray === \"string\") {\n return styleArray;\n }\n return styleArray.reduce((acc, style) => acc + \";\" + style, \"\");\n}, \"getLabelStyles\");\nvar insertEdgeLabel = /* @__PURE__ */ __name(async (elem, edge) => {\n const config = getConfig2();\n let useHtmlLabels = getEffectiveHtmlLabels(config);\n const { labelStyles } = styles2String(edge);\n edge.labelStyle = labelStyles;\n const edgeLabel = elem.insert(\"g\").attr(\"class\", \"edgeLabel\");\n const label = edgeLabel.insert(\"g\").attr(\"class\", \"label\").attr(\"data-id\", edge.id);\n const isMarkdown = edge.labelType === \"markdown\";\n const markdownWidth = void 0;\n const labelElement = await createText(\n elem,\n edge.label,\n {\n style: getLabelStyles(edge.labelStyle),\n useHtmlLabels,\n addSvgBackground: true,\n isNode: false,\n markdown: isMarkdown,\n // Plain text edge labels should auto-wrap, markdown edge labels respect markdownAutoWrap config\n width: isMarkdown ? markdownWidth : void 0\n },\n config\n );\n label.node().appendChild(labelElement);\n log.info(\"abc82\", edge, edge.labelType);\n let bbox = labelElement.getBBox();\n let transformBbox = bbox;\n if (useHtmlLabels) {\n const div = labelElement.children[0];\n const dv = select(labelElement);\n bbox = div.getBoundingClientRect();\n transformBbox = bbox;\n dv.attr(\"width\", bbox.width);\n dv.attr(\"height\", bbox.height);\n } else {\n const textEl = select(labelElement).select(\"text\").node();\n if (textEl && typeof textEl.getBBox === \"function\") {\n transformBbox = textEl.getBBox();\n }\n }\n label.attr(\"transform\", computeLabelTransform(transformBbox, useHtmlLabels));\n edgeLabels.set(edge.id, edgeLabel);\n edge.width = bbox.width;\n edge.height = bbox.height;\n let fo;\n if (edge.startLabelLeft) {\n const startEdgeLabelLeft = elem.insert(\"g\").attr(\"class\", \"edgeTerminals\");\n const inner = startEdgeLabelLeft.insert(\"g\").attr(\"class\", \"inner\");\n const startLabelElement = await createLabel_default(\n inner,\n edge.startLabelLeft,\n getLabelStyles(edge.labelStyle) || \"\",\n false,\n false\n );\n fo = startLabelElement;\n let slBox = startLabelElement.getBBox();\n if (useHtmlLabels) {\n const div = startLabelElement.children[0];\n const dv = select(startLabelElement);\n slBox = div.getBoundingClientRect();\n dv.attr(\"width\", slBox.width);\n dv.attr(\"height\", slBox.height);\n }\n inner.attr(\"transform\", computeLabelTransform(slBox, useHtmlLabels));\n if (!terminalLabels.get(edge.id)) {\n terminalLabels.set(edge.id, {});\n }\n terminalLabels.get(edge.id).startLeft = startEdgeLabelLeft;\n setTerminalWidth(fo, edge.startLabelLeft);\n }\n if (edge.startLabelRight) {\n const startEdgeLabelRight = elem.insert(\"g\").attr(\"class\", \"edgeTerminals\");\n const inner = startEdgeLabelRight.insert(\"g\").attr(\"class\", \"inner\");\n const startLabelElement = await createLabel_default(\n inner,\n edge.startLabelRight,\n getLabelStyles(edge.labelStyle) || \"\",\n false,\n false\n );\n fo = startLabelElement;\n let slBox = startLabelElement.getBBox();\n if (useHtmlLabels) {\n const div = startLabelElement.children[0];\n const dv = select(startLabelElement);\n slBox = div.getBoundingClientRect();\n dv.attr(\"width\", slBox.width);\n dv.attr(\"height\", slBox.height);\n }\n inner.attr(\"transform\", computeLabelTransform(slBox, useHtmlLabels));\n if (!terminalLabels.get(edge.id)) {\n terminalLabels.set(edge.id, {});\n }\n terminalLabels.get(edge.id).startRight = startEdgeLabelRight;\n setTerminalWidth(fo, edge.startLabelRight);\n }\n if (edge.endLabelLeft) {\n const endEdgeLabelLeft = elem.insert(\"g\").attr(\"class\", \"edgeTerminals\");\n const inner = endEdgeLabelLeft.insert(\"g\").attr(\"class\", \"inner\");\n const endLabelElement = await createLabel_default(\n endEdgeLabelLeft,\n edge.endLabelLeft,\n getLabelStyles(edge.labelStyle) || \"\",\n false,\n false\n );\n fo = endLabelElement;\n let slBox = endLabelElement.getBBox();\n if (useHtmlLabels) {\n const div = endLabelElement.children[0];\n const dv = select(endLabelElement);\n slBox = div.getBoundingClientRect();\n dv.attr(\"width\", slBox.width);\n dv.attr(\"height\", slBox.height);\n }\n inner.attr(\"transform\", computeLabelTransform(slBox, useHtmlLabels));\n if (!terminalLabels.get(edge.id)) {\n terminalLabels.set(edge.id, {});\n }\n terminalLabels.get(edge.id).endLeft = endEdgeLabelLeft;\n setTerminalWidth(fo, edge.endLabelLeft);\n }\n if (edge.endLabelRight) {\n const endEdgeLabelRight = elem.insert(\"g\").attr(\"class\", \"edgeTerminals\");\n const inner = endEdgeLabelRight.insert(\"g\").attr(\"class\", \"inner\");\n const endLabelElement = await createLabel_default(\n endEdgeLabelRight,\n edge.endLabelRight,\n getLabelStyles(edge.labelStyle) || \"\",\n false,\n false\n );\n fo = endLabelElement;\n let slBox = endLabelElement.getBBox();\n if (useHtmlLabels) {\n const div = endLabelElement.children[0];\n const dv = select(endLabelElement);\n slBox = div.getBoundingClientRect();\n dv.attr(\"width\", slBox.width);\n dv.attr(\"height\", slBox.height);\n }\n inner.attr(\"transform\", computeLabelTransform(slBox, useHtmlLabels));\n if (!terminalLabels.get(edge.id)) {\n terminalLabels.set(edge.id, {});\n }\n terminalLabels.get(edge.id).endRight = endEdgeLabelRight;\n setTerminalWidth(fo, edge.endLabelRight);\n }\n return labelElement;\n}, \"insertEdgeLabel\");\nfunction setTerminalWidth(fo, value) {\n if (getEffectiveHtmlLabels(getConfig2()) && fo) {\n fo.style.width = value.length * 9 + \"px\";\n fo.style.height = \"12px\";\n }\n}\n__name(setTerminalWidth, \"setTerminalWidth\");\nvar positionEdgeLabel = /* @__PURE__ */ __name((edge, paths) => {\n log.debug(\"Moving label abc88 \", edge.id, edge.label, edgeLabels.get(edge.id), paths);\n let path = paths.updatedPath ? paths.updatedPath : paths.originalPath;\n const siteConfig = getConfig2();\n const { subGraphTitleTotalMargin } = getSubGraphTitleMargins(siteConfig);\n if (edge.label) {\n const el = edgeLabels.get(edge.id);\n let x = edge.x;\n let y = edge.y;\n if (path) {\n const pos = utils_default.calcLabelPosition(path);\n log.debug(\n \"Moving label \" + edge.label + \" from (\",\n x,\n \",\",\n y,\n \") to (\",\n pos.x,\n \",\",\n pos.y,\n \") abc88\"\n );\n if (paths.updatedPath) {\n x = pos.x;\n y = pos.y;\n }\n }\n el.attr(\"transform\", `translate(${x}, ${y + subGraphTitleTotalMargin / 2})`);\n }\n if (edge.startLabelLeft) {\n const el = terminalLabels.get(edge.id).startLeft;\n let x = edge.x;\n let y = edge.y;\n if (path) {\n const pos = utils_default.calcTerminalLabelPosition(edge.arrowTypeStart ? 10 : 0, \"start_left\", path);\n x = pos.x;\n y = pos.y;\n }\n el.attr(\"transform\", `translate(${x}, ${y})`);\n }\n if (edge.startLabelRight) {\n const el = terminalLabels.get(edge.id).startRight;\n let x = edge.x;\n let y = edge.y;\n if (path) {\n const pos = utils_default.calcTerminalLabelPosition(\n edge.arrowTypeStart ? 10 : 0,\n \"start_right\",\n path\n );\n x = pos.x;\n y = pos.y;\n }\n el.attr(\"transform\", `translate(${x}, ${y})`);\n }\n if (edge.endLabelLeft) {\n const el = terminalLabels.get(edge.id).endLeft;\n let x = edge.x;\n let y = edge.y;\n if (path) {\n const pos = utils_default.calcTerminalLabelPosition(edge.arrowTypeEnd ? 10 : 0, \"end_left\", path);\n x = pos.x;\n y = pos.y;\n }\n el.attr(\"transform\", `translate(${x}, ${y})`);\n }\n if (edge.endLabelRight) {\n const el = terminalLabels.get(edge.id).endRight;\n let x = edge.x;\n let y = edge.y;\n if (path) {\n const pos = utils_default.calcTerminalLabelPosition(edge.arrowTypeEnd ? 10 : 0, \"end_right\", path);\n x = pos.x;\n y = pos.y;\n }\n el.attr(\"transform\", `translate(${x}, ${y})`);\n }\n}, \"positionEdgeLabel\");\nvar outsideNode = /* @__PURE__ */ __name((node, point2) => {\n const x = node.x;\n const y = node.y;\n const dx = Math.abs(point2.x - x);\n const dy = Math.abs(point2.y - y);\n const w = node.width / 2;\n const h = node.height / 2;\n return dx >= w || dy >= h;\n}, \"outsideNode\");\nvar intersection = /* @__PURE__ */ __name((node, outsidePoint, insidePoint) => {\n log.debug(`intersection calc abc89:\n outsidePoint: ${JSON.stringify(outsidePoint)}\n insidePoint : ${JSON.stringify(insidePoint)}\n node : x:${node.x} y:${node.y} w:${node.width} h:${node.height}`);\n const x = node.x;\n const y = node.y;\n const dx = Math.abs(x - insidePoint.x);\n const w = node.width / 2;\n let r = insidePoint.x < outsidePoint.x ? w - dx : w + dx;\n const h = node.height / 2;\n const Q = Math.abs(outsidePoint.y - insidePoint.y);\n const R = Math.abs(outsidePoint.x - insidePoint.x);\n if (Math.abs(y - outsidePoint.y) * w > Math.abs(x - outsidePoint.x) * h) {\n let q = insidePoint.y < outsidePoint.y ? outsidePoint.y - h - y : y - h - outsidePoint.y;\n r = R * q / Q;\n const res = {\n x: insidePoint.x < outsidePoint.x ? insidePoint.x + r : insidePoint.x - R + r,\n y: insidePoint.y < outsidePoint.y ? insidePoint.y + Q - q : insidePoint.y - Q + q\n };\n if (r === 0) {\n res.x = outsidePoint.x;\n res.y = outsidePoint.y;\n }\n if (R === 0) {\n res.x = outsidePoint.x;\n }\n if (Q === 0) {\n res.y = outsidePoint.y;\n }\n log.debug(`abc89 top/bottom calc, Q ${Q}, q ${q}, R ${R}, r ${r}`, res);\n return res;\n } else {\n if (insidePoint.x < outsidePoint.x) {\n r = outsidePoint.x - w - x;\n } else {\n r = x - w - outsidePoint.x;\n }\n let q = Q * r / R;\n let _x = insidePoint.x < outsidePoint.x ? insidePoint.x + R - r : insidePoint.x - R + r;\n let _y = insidePoint.y < outsidePoint.y ? insidePoint.y + q : insidePoint.y - q;\n log.debug(`sides calc abc89, Q ${Q}, q ${q}, R ${R}, r ${r}`, { _x, _y });\n if (r === 0) {\n _x = outsidePoint.x;\n _y = outsidePoint.y;\n }\n if (R === 0) {\n _x = outsidePoint.x;\n }\n if (Q === 0) {\n _y = outsidePoint.y;\n }\n return { x: _x, y: _y };\n }\n}, \"intersection\");\nvar cutPathAtIntersect = /* @__PURE__ */ __name((_points, boundaryNode) => {\n log.warn(\"abc88 cutPathAtIntersect\", _points, boundaryNode);\n let points = [];\n let lastPointOutside = _points[0];\n let isInside = false;\n _points.forEach((point2) => {\n log.info(\"abc88 checking point\", point2, boundaryNode);\n if (!outsideNode(boundaryNode, point2) && !isInside) {\n const inter = intersection(boundaryNode, lastPointOutside, point2);\n log.debug(\"abc88 inside\", point2, lastPointOutside, inter);\n log.debug(\"abc88 intersection\", inter, boundaryNode);\n let pointPresent = false;\n points.forEach((p) => {\n pointPresent = pointPresent || p.x === inter.x && p.y === inter.y;\n });\n if (!points.some((e) => e.x === inter.x && e.y === inter.y)) {\n points.push(inter);\n } else {\n log.warn(\"abc88 no intersect\", inter, points);\n }\n isInside = true;\n } else {\n log.warn(\"abc88 outside\", point2, lastPointOutside);\n lastPointOutside = point2;\n if (!isInside) {\n points.push(point2);\n }\n }\n });\n log.debug(\"returning points\", points);\n return points;\n}, \"cutPathAtIntersect\");\nfunction extractCornerPoints(points) {\n const cornerPoints = [];\n const cornerPointPositions = [];\n for (let i = 1; i < points.length - 1; i++) {\n const prev = points[i - 1];\n const curr = points[i];\n const next = points[i + 1];\n if (prev.x === curr.x && curr.y === next.y && Math.abs(curr.x - next.x) > 5 && Math.abs(curr.y - prev.y) > 5) {\n cornerPoints.push(curr);\n cornerPointPositions.push(i);\n } else if (prev.y === curr.y && curr.x === next.x && Math.abs(curr.x - prev.x) > 5 && Math.abs(curr.y - next.y) > 5) {\n cornerPoints.push(curr);\n cornerPointPositions.push(i);\n }\n }\n return { cornerPoints, cornerPointPositions };\n}\n__name(extractCornerPoints, \"extractCornerPoints\");\nvar findAdjacentPoint = /* @__PURE__ */ __name(function(pointA, pointB, distance) {\n const xDiff = pointB.x - pointA.x;\n const yDiff = pointB.y - pointA.y;\n const length = Math.sqrt(xDiff * xDiff + yDiff * yDiff);\n const ratio = distance / length;\n return { x: pointB.x - ratio * xDiff, y: pointB.y - ratio * yDiff };\n}, \"findAdjacentPoint\");\nvar fixCorners = /* @__PURE__ */ __name(function(lineData) {\n const { cornerPointPositions } = extractCornerPoints(lineData);\n const newLineData = [];\n for (let i = 0; i < lineData.length; i++) {\n if (cornerPointPositions.includes(i)) {\n const prevPoint = lineData[i - 1];\n const nextPoint = lineData[i + 1];\n const cornerPoint = lineData[i];\n const newPrevPoint = findAdjacentPoint(prevPoint, cornerPoint, 5);\n const newNextPoint = findAdjacentPoint(nextPoint, cornerPoint, 5);\n const xDiff = newNextPoint.x - newPrevPoint.x;\n const yDiff = newNextPoint.y - newPrevPoint.y;\n newLineData.push(newPrevPoint);\n const a = Math.sqrt(2) * 2;\n let newCornerPoint = { x: cornerPoint.x, y: cornerPoint.y };\n if (Math.abs(nextPoint.x - prevPoint.x) > 10 && Math.abs(nextPoint.y - prevPoint.y) >= 10) {\n log.debug(\n \"Corner point fixing\",\n Math.abs(nextPoint.x - prevPoint.x),\n Math.abs(nextPoint.y - prevPoint.y)\n );\n const r = 5;\n if (cornerPoint.x === newPrevPoint.x) {\n newCornerPoint = {\n x: xDiff < 0 ? newPrevPoint.x - r + a : newPrevPoint.x + r - a,\n y: yDiff < 0 ? newPrevPoint.y - a : newPrevPoint.y + a\n };\n } else {\n newCornerPoint = {\n x: xDiff < 0 ? newPrevPoint.x - a : newPrevPoint.x + a,\n y: yDiff < 0 ? newPrevPoint.y - r + a : newPrevPoint.y + r - a\n };\n }\n } else {\n log.debug(\n \"Corner point skipping fixing\",\n Math.abs(nextPoint.x - prevPoint.x),\n Math.abs(nextPoint.y - prevPoint.y)\n );\n }\n newLineData.push(newCornerPoint, newNextPoint);\n } else {\n newLineData.push(lineData[i]);\n }\n }\n return newLineData;\n}, \"fixCorners\");\nvar generateDashArray = /* @__PURE__ */ __name((len, oValueS, oValueE) => {\n const middleLength = len - oValueS - oValueE;\n const dashLength = 2;\n const gapLength = 2;\n const dashGapPairLength = dashLength + gapLength;\n const numberOfPairs = Math.floor(middleLength / dashGapPairLength);\n const middlePattern = Array(numberOfPairs).fill(`${dashLength} ${gapLength}`).join(\" \");\n const dashArray = `0 ${oValueS} ${middlePattern} ${oValueE}`;\n return dashArray;\n}, \"generateDashArray\");\nvar insertEdge = /* @__PURE__ */ __name(function(elem, edge, clusterDb, diagramType, startNode, endNode, diagramId, skipIntersect = false) {\n if (!diagramId) {\n throw new Error(\n `insertEdge: missing diagramId for edge \"${edge.id}\" \\u2014 edge IDs require a diagram prefix for uniqueness`\n );\n }\n const { handDrawnSeed } = getConfig2();\n let points = edge.points;\n let pointsHasChanged = false;\n const tail = startNode;\n var head = endNode;\n const edgeClassStyles = [];\n for (const key in edge.cssCompiledStyles) {\n if (isLabelStyle(key)) {\n continue;\n }\n edgeClassStyles.push(edge.cssCompiledStyles[key]);\n }\n log.debug(\"UIO intersect check\", edge.points, head.x, tail.x);\n if (head.intersect && tail.intersect && !skipIntersect) {\n points = points.slice(1, edge.points.length - 1);\n points.unshift(tail.intersect(points[0]));\n log.debug(\n \"Last point UIO\",\n edge.start,\n \"-->\",\n edge.end,\n points[points.length - 1],\n head,\n head.intersect(points[points.length - 1])\n );\n points.push(head.intersect(points[points.length - 1]));\n }\n const pointsStr = btoa(JSON.stringify(points));\n if (edge.toCluster) {\n log.info(\"to cluster abc88\", clusterDb.get(edge.toCluster));\n points = cutPathAtIntersect(edge.points, clusterDb.get(edge.toCluster).node);\n pointsHasChanged = true;\n }\n if (edge.fromCluster) {\n log.debug(\n \"from cluster abc88\",\n clusterDb.get(edge.fromCluster),\n JSON.stringify(points, null, 2)\n );\n points = cutPathAtIntersect(points.reverse(), clusterDb.get(edge.fromCluster).node).reverse();\n pointsHasChanged = true;\n }\n let lineData = points.filter((p) => !Number.isNaN(p.y));\n const edgeCurveType = resolveEdgeCurveType(edge.curve);\n if (edgeCurveType !== \"rounded\") {\n lineData = fixCorners(lineData);\n }\n let curve = curveLinear;\n switch (edgeCurveType) {\n case \"linear\":\n curve = curveLinear;\n break;\n case \"basis\":\n curve = curveBasis;\n break;\n case \"cardinal\":\n curve = curveCardinal;\n break;\n case \"bumpX\":\n curve = curveBumpX;\n break;\n case \"bumpY\":\n curve = curveBumpY;\n break;\n case \"catmullRom\":\n curve = curveCatmullRom;\n break;\n case \"monotoneX\":\n curve = curveMonotoneX;\n break;\n case \"monotoneY\":\n curve = curveMonotoneY;\n break;\n case \"natural\":\n curve = curveNatural;\n break;\n case \"step\":\n curve = curveStep;\n break;\n case \"stepAfter\":\n curve = curveStepAfter;\n break;\n case \"stepBefore\":\n curve = curveStepBefore;\n break;\n case \"rounded\":\n curve = curveLinear;\n break;\n default:\n curve = curveBasis;\n }\n const { x, y } = getLineFunctionsWithOffset(edge);\n const lineFunction = line().x(x).y(y).curve(curve);\n let strokeClasses;\n switch (edge.thickness) {\n case \"normal\":\n strokeClasses = \"edge-thickness-normal\";\n break;\n case \"thick\":\n strokeClasses = \"edge-thickness-thick\";\n break;\n case \"invisible\":\n strokeClasses = \"edge-thickness-invisible\";\n break;\n default:\n strokeClasses = \"edge-thickness-normal\";\n }\n switch (edge.pattern) {\n case \"solid\":\n strokeClasses += \" edge-pattern-solid\";\n break;\n case \"dotted\":\n strokeClasses += \" edge-pattern-dotted\";\n break;\n case \"dashed\":\n strokeClasses += \" edge-pattern-dashed\";\n break;\n default:\n strokeClasses += \" edge-pattern-solid\";\n }\n let svgPath;\n let linePath = edgeCurveType === \"rounded\" ? generateRoundedPath(applyMarkerOffsetsToPoints(lineData, edge), 5) : lineFunction(lineData);\n const edgeStyles = Array.isArray(edge.style) ? edge.style : [edge.style];\n let strokeColor = edgeStyles.find((style) => style?.startsWith(\"stroke:\"));\n let animationClass = \"\";\n if (edge.animate) {\n animationClass = \"edge-animation-fast\";\n }\n if (edge.animation) {\n animationClass = \"edge-animation-\" + edge.animation;\n }\n let animatedEdge = false;\n if (edge.look === \"handDrawn\") {\n const rc = rough.svg(elem);\n Object.assign([], lineData);\n const svgPathNode = rc.path(linePath, {\n roughness: 0.3,\n seed: handDrawnSeed\n });\n strokeClasses += \" transition\";\n svgPath = select(svgPathNode).select(\"path\").attr(\"id\", `${diagramId}-${edge.id}`).attr(\n \"class\",\n \" \" + strokeClasses + (edge.classes ? \" \" + edge.classes : \"\") + (animationClass ? \" \" + animationClass : \"\")\n ).attr(\"style\", edgeStyles ? edgeStyles.reduce((acc, style) => acc + \";\" + style, \"\") : \"\");\n let d = svgPath.attr(\"d\");\n svgPath.attr(\"d\", d);\n elem.node().appendChild(svgPath.node());\n } else {\n const stylesFromClasses = edgeClassStyles.join(\";\");\n const styles = edgeStyles ? edgeStyles.reduce((acc, style) => acc + style + \";\", \"\") : \"\";\n const pathStyle = (stylesFromClasses ? stylesFromClasses + \";\" + styles + \";\" : styles) + \";\" + (edgeStyles ? edgeStyles.reduce((acc, style) => acc + \";\" + style, \"\") : \"\");\n svgPath = elem.append(\"path\").attr(\"d\", linePath).attr(\"id\", `${diagramId}-${edge.id}`).attr(\n \"class\",\n \" \" + strokeClasses + (edge.classes ? \" \" + edge.classes : \"\") + (animationClass ? \" \" + animationClass : \"\")\n ).attr(\"style\", pathStyle);\n strokeColor = pathStyle.match(/stroke:([^;]+)/)?.[1];\n animatedEdge = edge.animate === true || !!edge.animation || stylesFromClasses.includes(\"animation\");\n const pathNode = svgPath.node();\n const len = typeof pathNode.getTotalLength === \"function\" ? pathNode.getTotalLength() : 0;\n const oValueS = markerOffsets2[edge.arrowTypeStart] || 0;\n const oValueE = markerOffsets2[edge.arrowTypeEnd] || 0;\n if (edge.look === \"neo\" && !animatedEdge) {\n const dashArray = edge.pattern === \"dotted\" || edge.pattern === \"dashed\" ? generateDashArray(len, oValueS, oValueE) : `0 ${oValueS} ${len - oValueS - oValueE} ${oValueE}`;\n const mOffset = `stroke-dasharray: ${dashArray}; stroke-dashoffset: 0;`;\n svgPath.attr(\"style\", mOffset + svgPath.attr(\"style\"));\n }\n }\n svgPath.attr(\"data-edge\", true);\n svgPath.attr(\"data-et\", \"edge\");\n svgPath.attr(\"data-id\", edge.id);\n svgPath.attr(\"data-points\", pointsStr);\n svgPath.attr(\"data-look\", handleUndefinedAttr(edge.look));\n if (edge.showPoints) {\n lineData.forEach((point3) => {\n elem.append(\"circle\").style(\"stroke\", \"red\").style(\"fill\", \"red\").attr(\"r\", 1).attr(\"cx\", point3.x).attr(\"cy\", point3.y);\n });\n }\n let url = \"\";\n if (getConfig2().flowchart.arrowMarkerAbsolute || getConfig2().state.arrowMarkerAbsolute) {\n url = window.location.protocol + \"//\" + window.location.host + window.location.pathname + window.location.search;\n url = url.replace(/\\(/g, \"\\\\(\").replace(/\\)/g, \"\\\\)\");\n }\n log.info(\"arrowTypeStart\", edge.arrowTypeStart);\n log.info(\"arrowTypeEnd\", edge.arrowTypeEnd);\n const useMargin = !animatedEdge && edge?.look === \"neo\";\n addEdgeMarkers(svgPath, edge, url, diagramId, diagramType, useMargin, strokeColor);\n const midIndex = Math.floor(points.length / 2);\n const point2 = points[midIndex];\n if (!utils_default.isLabelCoordinateInPath(point2, svgPath.attr(\"d\"))) {\n pointsHasChanged = true;\n }\n let paths = {};\n if (pointsHasChanged) {\n paths.updatedPath = points;\n }\n paths.originalPath = edge.points;\n return paths;\n}, \"insertEdge\");\nfunction generateRoundedPath(points, radius) {\n if (points.length < 2) {\n return \"\";\n }\n let path = \"\";\n const size = points.length;\n const epsilon = 1e-5;\n for (let i = 0; i < size; i++) {\n const currPoint = points[i];\n const prevPoint = points[i - 1];\n const nextPoint = points[i + 1];\n if (i === 0) {\n path += `M${currPoint.x},${currPoint.y}`;\n } else if (i === size - 1) {\n path += `L${currPoint.x},${currPoint.y}`;\n } else {\n const dx1 = currPoint.x - prevPoint.x;\n const dy1 = currPoint.y - prevPoint.y;\n const dx2 = nextPoint.x - currPoint.x;\n const dy2 = nextPoint.y - currPoint.y;\n const len1 = Math.hypot(dx1, dy1);\n const len2 = Math.hypot(dx2, dy2);\n if (len1 < epsilon || len2 < epsilon) {\n path += `L${currPoint.x},${currPoint.y}`;\n continue;\n }\n const nx1 = dx1 / len1;\n const ny1 = dy1 / len1;\n const nx2 = dx2 / len2;\n const ny2 = dy2 / len2;\n const dot = nx1 * nx2 + ny1 * ny2;\n const clampedDot = Math.max(-1, Math.min(1, dot));\n const angle = Math.acos(clampedDot);\n if (angle < epsilon || Math.abs(Math.PI - angle) < epsilon) {\n path += `L${currPoint.x},${currPoint.y}`;\n continue;\n }\n const cutLen = Math.min(radius / Math.sin(angle / 2), len1 / 2, len2 / 2);\n const startX = currPoint.x - nx1 * cutLen;\n const startY = currPoint.y - ny1 * cutLen;\n const endX = currPoint.x + nx2 * cutLen;\n const endY = currPoint.y + ny2 * cutLen;\n path += `L${startX},${startY}`;\n path += `Q${currPoint.x},${currPoint.y} ${endX},${endY}`;\n }\n }\n return path;\n}\n__name(generateRoundedPath, \"generateRoundedPath\");\nfunction calculateDeltaAndAngle(point1, point2) {\n if (!point1 || !point2) {\n return { angle: 0, deltaX: 0, deltaY: 0 };\n }\n const deltaX = point2.x - point1.x;\n const deltaY = point2.y - point1.y;\n const angle = Math.atan2(deltaY, deltaX);\n return { angle, deltaX, deltaY };\n}\n__name(calculateDeltaAndAngle, \"calculateDeltaAndAngle\");\nfunction applyMarkerOffsetsToPoints(points, edge) {\n const newPoints = points.map((point2) => ({ ...point2 }));\n if (points.length >= 2 && markerOffsets[edge.arrowTypeStart]) {\n const offsetValue = markerOffsets[edge.arrowTypeStart];\n const point1 = points[0];\n const point2 = points[1];\n const { angle } = calculateDeltaAndAngle(point1, point2);\n const offsetX = offsetValue * Math.cos(angle);\n const offsetY = offsetValue * Math.sin(angle);\n newPoints[0].x = point1.x + offsetX;\n newPoints[0].y = point1.y + offsetY;\n }\n const n = points.length;\n if (n >= 2 && markerOffsets[edge.arrowTypeEnd]) {\n const offsetValue = markerOffsets[edge.arrowTypeEnd];\n const point1 = points[n - 1];\n const point2 = points[n - 2];\n const { angle } = calculateDeltaAndAngle(point2, point1);\n const offsetX = offsetValue * Math.cos(angle);\n const offsetY = offsetValue * Math.sin(angle);\n newPoints[n - 1].x = point1.x - offsetX;\n newPoints[n - 1].y = point1.y - offsetY;\n }\n return newPoints;\n}\n__name(applyMarkerOffsetsToPoints, \"applyMarkerOffsetsToPoints\");\n\n// src/rendering-util/rendering-elements/markers.js\nvar insertMarkers = /* @__PURE__ */ __name((elem, markerArray, type, id) => {\n markerArray.forEach((markerName) => {\n markers[markerName](elem, type, id);\n });\n}, \"insertMarkers\");\nvar extension = /* @__PURE__ */ __name((elem, type, id) => {\n log.trace(\"Making markers for \", id);\n elem.append(\"defs\").append(\"marker\").attr(\"id\", id + \"_\" + type + \"-extensionStart\").attr(\"class\", \"marker extension \" + type).attr(\"refX\", 18).attr(\"refY\", 7).attr(\"markerWidth\", 20).attr(\"markerHeight\", 28).attr(\"orient\", \"auto\").attr(\"markerUnits\", \"userSpaceOnUse\").append(\"path\").attr(\"d\", \"M 1,7 L18,13 V 1 Z\");\n elem.append(\"defs\").append(\"marker\").attr(\"id\", id + \"_\" + type + \"-extensionEnd\").attr(\"class\", \"marker extension \" + type).attr(\"refX\", 1).attr(\"refY\", 7).attr(\"markerWidth\", 20).attr(\"markerHeight\", 28).attr(\"orient\", \"auto\").append(\"path\").attr(\"d\", \"M 1,1 V 13 L18,7 Z\");\n elem.append(\"marker\").attr(\"id\", id + \"_\" + type + \"-extensionStart-margin\").attr(\"class\", \"marker extension \" + type).attr(\"refX\", 18).attr(\"refY\", 7).attr(\"markerWidth\", 20).attr(\"markerHeight\", 28).attr(\"orient\", \"auto\").attr(\"markerUnits\", \"userSpaceOnUse\").attr(\"viewBox\", \"0 0 20 14\").append(\"polygon\").attr(\"points\", \"10,7 18,13 18,1\").style(\"stroke-width\", 2).style(\"stroke-dasharray\", \"0\");\n elem.append(\"defs\").append(\"marker\").attr(\"id\", id + \"_\" + type + \"-extensionEnd-margin\").attr(\"class\", \"marker extension \" + type).attr(\"refX\", 9).attr(\"refY\", 7).attr(\"markerWidth\", 20).attr(\"markerHeight\", 28).attr(\"orient\", \"auto\").attr(\"markerUnits\", \"userSpaceOnUse\").attr(\"viewBox\", \"0 0 20 14\").append(\"polygon\").attr(\"points\", \"10,1 10,13 18,7\").style(\"stroke-width\", 2).style(\"stroke-dasharray\", \"0\");\n}, \"extension\");\nvar composition = /* @__PURE__ */ __name((elem, type, id) => {\n elem.append(\"defs\").append(\"marker\").attr(\"id\", id + \"_\" + type + \"-compositionStart\").attr(\"class\", \"marker composition \" + type).attr(\"refX\", 18).attr(\"refY\", 7).attr(\"markerWidth\", 190).attr(\"markerHeight\", 240).attr(\"orient\", \"auto\").append(\"path\").attr(\"d\", \"M 18,7 L9,13 L1,7 L9,1 Z\");\n elem.append(\"defs\").append(\"marker\").attr(\"id\", id + \"_\" + type + \"-compositionEnd\").attr(\"class\", \"marker composition \" + type).attr(\"refX\", 1).attr(\"refY\", 7).attr(\"markerWidth\", 20).attr(\"markerHeight\", 28).attr(\"orient\", \"auto\").append(\"path\").attr(\"d\", \"M 18,7 L9,13 L1,7 L9,1 Z\");\n elem.append(\"defs\").append(\"marker\").attr(\"id\", id + \"_\" + type + \"-compositionStart-margin\").attr(\"class\", \"marker composition \" + type).attr(\"refX\", 15).attr(\"refY\", 7).attr(\"markerWidth\", 190).attr(\"markerHeight\", 240).attr(\"orient\", \"auto\").attr(\"markerUnits\", \"userSpaceOnUse\").append(\"path\").style(\"stroke-width\", 0).attr(\"viewBox\", \"0 0 15 15\").attr(\"d\", \"M 18,7 L9,13 L1,7 L9,1 Z\");\n elem.append(\"defs\").append(\"marker\").attr(\"id\", id + \"_\" + type + \"-compositionEnd-margin\").attr(\"class\", \"marker composition \" + type).attr(\"refX\", 3.5).attr(\"refY\", 7).attr(\"markerWidth\", 20).attr(\"markerHeight\", 28).attr(\"orient\", \"auto\").attr(\"markerUnits\", \"userSpaceOnUse\").append(\"path\").style(\"stroke-width\", 0).attr(\"d\", \"M 18,7 L9,13 L1,7 L9,1 Z\");\n}, \"composition\");\nvar aggregation = /* @__PURE__ */ __name((elem, type, id) => {\n elem.append(\"defs\").append(\"marker\").attr(\"id\", id + \"_\" + type + \"-aggregationStart\").attr(\"class\", \"marker aggregation \" + type).attr(\"refX\", 18).attr(\"refY\", 7).attr(\"markerWidth\", 190).attr(\"markerHeight\", 240).attr(\"orient\", \"auto\").append(\"path\").attr(\"d\", \"M 18,7 L9,13 L1,7 L9,1 Z\");\n elem.append(\"defs\").append(\"marker\").attr(\"id\", id + \"_\" + type + \"-aggregationEnd\").attr(\"class\", \"marker aggregation \" + type).attr(\"refX\", 1).attr(\"refY\", 7).attr(\"markerWidth\", 20).attr(\"markerHeight\", 28).attr(\"orient\", \"auto\").append(\"path\").attr(\"d\", \"M 18,7 L9,13 L1,7 L9,1 Z\");\n elem.append(\"defs\").append(\"marker\").attr(\"id\", id + \"_\" + type + \"-aggregationStart-margin\").attr(\"class\", \"marker aggregation \" + type).attr(\"refX\", 15).attr(\"refY\", 7).attr(\"markerWidth\", 190).attr(\"markerHeight\", 240).attr(\"orient\", \"auto\").attr(\"markerUnits\", \"userSpaceOnUse\").append(\"path\").style(\"stroke-width\", 2).attr(\"d\", \"M 18,7 L9,13 L1,7 L9,1 Z\");\n elem.append(\"defs\").append(\"marker\").attr(\"id\", id + \"_\" + type + \"-aggregationEnd-margin\").attr(\"class\", \"marker aggregation \" + type).attr(\"refX\", 1).attr(\"refY\", 7).attr(\"markerWidth\", 20).attr(\"markerHeight\", 28).attr(\"orient\", \"auto\").attr(\"markerUnits\", \"userSpaceOnUse\").append(\"path\").style(\"stroke-width\", 2).attr(\"d\", \"M 18,7 L9,13 L1,7 L9,1 Z\");\n}, \"aggregation\");\nvar dependency = /* @__PURE__ */ __name((elem, type, id) => {\n elem.append(\"defs\").append(\"marker\").attr(\"id\", id + \"_\" + type + \"-dependencyStart\").attr(\"class\", \"marker dependency \" + type).attr(\"refX\", 6).attr(\"refY\", 7).attr(\"markerWidth\", 190).attr(\"markerHeight\", 240).attr(\"orient\", \"auto\").append(\"path\").attr(\"d\", \"M 5,7 L9,13 L1,7 L9,1 Z\");\n elem.append(\"defs\").append(\"marker\").attr(\"id\", id + \"_\" + type + \"-dependencyEnd\").attr(\"class\", \"marker dependency \" + type).attr(\"refX\", 13).attr(\"refY\", 7).attr(\"markerWidth\", 20).attr(\"markerHeight\", 28).attr(\"orient\", \"auto\").append(\"path\").attr(\"d\", \"M 18,7 L9,13 L14,7 L9,1 Z\");\n elem.append(\"defs\").append(\"marker\").attr(\"id\", id + \"_\" + type + \"-dependencyStart-margin\").attr(\"class\", \"marker dependency \" + type).attr(\"refX\", 4).attr(\"refY\", 7).attr(\"markerWidth\", 190).attr(\"markerHeight\", 240).attr(\"orient\", \"auto\").attr(\"markerUnits\", \"userSpaceOnUse\").append(\"path\").style(\"stroke-width\", 0).attr(\"d\", \"M 5,7 L9,13 L1,7 L9,1 Z\");\n elem.append(\"defs\").append(\"marker\").attr(\"id\", id + \"_\" + type + \"-dependencyEnd-margin\").attr(\"class\", \"marker dependency \" + type).attr(\"refX\", 16).attr(\"refY\", 7).attr(\"markerWidth\", 20).attr(\"markerHeight\", 28).attr(\"orient\", \"auto\").attr(\"markerUnits\", \"userSpaceOnUse\").append(\"path\").style(\"stroke-width\", 0).attr(\"d\", \"M 18,7 L9,13 L14,7 L9,1 Z\");\n}, \"dependency\");\nvar lollipop = /* @__PURE__ */ __name((elem, type, id) => {\n elem.append(\"defs\").append(\"marker\").attr(\"id\", id + \"_\" + type + \"-lollipopStart\").attr(\"class\", \"marker lollipop \" + type).attr(\"refX\", 13).attr(\"refY\", 7).attr(\"markerWidth\", 190).attr(\"markerHeight\", 240).attr(\"orient\", \"auto\").append(\"circle\").attr(\"fill\", \"transparent\").attr(\"cx\", 7).attr(\"cy\", 7).attr(\"r\", 6);\n elem.append(\"defs\").append(\"marker\").attr(\"id\", id + \"_\" + type + \"-lollipopEnd\").attr(\"class\", \"marker lollipop \" + type).attr(\"refX\", 1).attr(\"refY\", 7).attr(\"markerWidth\", 190).attr(\"markerHeight\", 240).attr(\"orient\", \"auto\").append(\"circle\").attr(\"fill\", \"transparent\").attr(\"cx\", 7).attr(\"cy\", 7).attr(\"r\", 6);\n elem.append(\"defs\").append(\"marker\").attr(\"id\", id + \"_\" + type + \"-lollipopStart-margin\").attr(\"class\", \"marker lollipop \" + type).attr(\"refX\", 13).attr(\"refY\", 7).attr(\"markerWidth\", 190).attr(\"markerHeight\", 240).attr(\"orient\", \"auto\").attr(\"markerUnits\", \"userSpaceOnUse\").append(\"circle\").attr(\"fill\", \"transparent\").attr(\"cx\", 7).attr(\"cy\", 7).attr(\"r\", 6).attr(\"stroke-width\", 2);\n elem.append(\"defs\").append(\"marker\").attr(\"id\", id + \"_\" + type + \"-lollipopEnd-margin\").attr(\"class\", \"marker lollipop \" + type).attr(\"refX\", 1).attr(\"refY\", 7).attr(\"markerWidth\", 190).attr(\"markerHeight\", 240).attr(\"orient\", \"auto\").attr(\"markerUnits\", \"userSpaceOnUse\").append(\"circle\").attr(\"fill\", \"transparent\").attr(\"cx\", 7).attr(\"cy\", 7).attr(\"r\", 6).attr(\"stroke-width\", 2);\n}, \"lollipop\");\nvar point = /* @__PURE__ */ __name((elem, type, id) => {\n elem.append(\"marker\").attr(\"id\", id + \"_\" + type + \"-pointEnd\").attr(\"class\", \"marker \" + type).attr(\"viewBox\", \"0 0 10 10\").attr(\"refX\", 5).attr(\"refY\", 5).attr(\"markerUnits\", \"userSpaceOnUse\").attr(\"markerWidth\", 8).attr(\"markerHeight\", 8).attr(\"orient\", \"auto\").append(\"path\").attr(\"d\", \"M 0 0 L 10 5 L 0 10 z\").attr(\"class\", \"arrowMarkerPath\").style(\"stroke-width\", 1).style(\"stroke-dasharray\", \"1,0\");\n elem.append(\"marker\").attr(\"id\", id + \"_\" + type + \"-pointStart\").attr(\"class\", \"marker \" + type).attr(\"viewBox\", \"0 0 10 10\").attr(\"refX\", 4.5).attr(\"refY\", 5).attr(\"markerUnits\", \"userSpaceOnUse\").attr(\"markerWidth\", 8).attr(\"markerHeight\", 8).attr(\"orient\", \"auto\").append(\"path\").attr(\"d\", \"M 0 5 L 10 10 L 10 0 z\").attr(\"class\", \"arrowMarkerPath\").style(\"stroke-width\", 1).style(\"stroke-dasharray\", \"1,0\");\n elem.append(\"marker\").attr(\"id\", id + \"_\" + type + \"-pointEnd-margin\").attr(\"class\", \"marker \" + type).attr(\"viewBox\", \"0 0 11.5 14\").attr(\"refX\", 11.5).attr(\"refY\", 7).attr(\"markerUnits\", \"userSpaceOnUse\").attr(\"markerWidth\", 10.5).attr(\"markerHeight\", 14).attr(\"orient\", \"auto\").append(\"path\").attr(\"d\", \"M 0 0 L 11.5 7 L 0 14 z\").attr(\"class\", \"arrowMarkerPath\").style(\"stroke-width\", 0).style(\"stroke-dasharray\", \"1,0\");\n elem.append(\"marker\").attr(\"id\", id + \"_\" + type + \"-pointStart-margin\").attr(\"class\", \"marker \" + type).attr(\"viewBox\", \"0 0 11.5 14\").attr(\"refX\", 1).attr(\"refY\", 7).attr(\"markerUnits\", \"userSpaceOnUse\").attr(\"markerWidth\", 11.5).attr(\"markerHeight\", 14).attr(\"orient\", \"auto\").append(\"polygon\").attr(\"points\", \"0,7 11.5,14 11.5,0\").attr(\"class\", \"arrowMarkerPath\").style(\"stroke-width\", 0).style(\"stroke-dasharray\", \"1,0\");\n}, \"point\");\nvar circle = /* @__PURE__ */ __name((elem, type, id) => {\n elem.append(\"marker\").attr(\"id\", id + \"_\" + type + \"-circleEnd\").attr(\"class\", \"marker \" + type).attr(\"viewBox\", \"0 0 10 10\").attr(\"refX\", 11).attr(\"refY\", 5).attr(\"markerUnits\", \"userSpaceOnUse\").attr(\"markerWidth\", 11).attr(\"markerHeight\", 11).attr(\"orient\", \"auto\").append(\"circle\").attr(\"cx\", \"5\").attr(\"cy\", \"5\").attr(\"r\", \"5\").attr(\"class\", \"arrowMarkerPath\").style(\"stroke-width\", 1).style(\"stroke-dasharray\", \"1,0\");\n elem.append(\"marker\").attr(\"id\", id + \"_\" + type + \"-circleStart\").attr(\"class\", \"marker \" + type).attr(\"viewBox\", \"0 0 10 10\").attr(\"refX\", -1).attr(\"refY\", 5).attr(\"markerUnits\", \"userSpaceOnUse\").attr(\"markerWidth\", 11).attr(\"markerHeight\", 11).attr(\"orient\", \"auto\").append(\"circle\").attr(\"cx\", \"5\").attr(\"cy\", \"5\").attr(\"r\", \"5\").attr(\"class\", \"arrowMarkerPath\").style(\"stroke-width\", 1).style(\"stroke-dasharray\", \"1,0\");\n elem.append(\"marker\").attr(\"id\", id + \"_\" + type + \"-circleEnd-margin\").attr(\"class\", \"marker \" + type).attr(\"viewBox\", \"0 0 10 10\").attr(\"refY\", 5).attr(\"refX\", 12.25).attr(\"markerUnits\", \"userSpaceOnUse\").attr(\"markerWidth\", 14).attr(\"markerHeight\", 14).attr(\"orient\", \"auto\").append(\"circle\").attr(\"cx\", \"5\").attr(\"cy\", \"5\").attr(\"r\", \"5\").attr(\"class\", \"arrowMarkerPath\").style(\"stroke-width\", 0).style(\"stroke-dasharray\", \"1,0\");\n elem.append(\"marker\").attr(\"id\", id + \"_\" + type + \"-circleStart-margin\").attr(\"class\", \"marker \" + type).attr(\"viewBox\", \"0 0 10 10\").attr(\"refX\", -2).attr(\"refY\", 5).attr(\"markerUnits\", \"userSpaceOnUse\").attr(\"markerWidth\", 14).attr(\"markerHeight\", 14).attr(\"orient\", \"auto\").append(\"circle\").attr(\"cx\", \"5\").attr(\"cy\", \"5\").attr(\"r\", \"5\").attr(\"class\", \"arrowMarkerPath\").style(\"stroke-width\", 0).style(\"stroke-dasharray\", \"1,0\");\n}, \"circle\");\nvar cross = /* @__PURE__ */ __name((elem, type, id) => {\n elem.append(\"marker\").attr(\"id\", id + \"_\" + type + \"-crossEnd\").attr(\"class\", \"marker cross \" + type).attr(\"viewBox\", \"0 0 11 11\").attr(\"refX\", 12).attr(\"refY\", 5.2).attr(\"markerUnits\", \"userSpaceOnUse\").attr(\"markerWidth\", 11).attr(\"markerHeight\", 11).attr(\"orient\", \"auto\").append(\"path\").attr(\"d\", \"M 1,1 l 9,9 M 10,1 l -9,9\").attr(\"class\", \"arrowMarkerPath\").style(\"stroke-width\", 2).style(\"stroke-dasharray\", \"1,0\");\n elem.append(\"marker\").attr(\"id\", id + \"_\" + type + \"-crossStart\").attr(\"class\", \"marker cross \" + type).attr(\"viewBox\", \"0 0 11 11\").attr(\"refX\", -1).attr(\"refY\", 5.2).attr(\"markerUnits\", \"userSpaceOnUse\").attr(\"markerWidth\", 11).attr(\"markerHeight\", 11).attr(\"orient\", \"auto\").append(\"path\").attr(\"d\", \"M 1,1 l 9,9 M 10,1 l -9,9\").attr(\"class\", \"arrowMarkerPath\").style(\"stroke-width\", 2).style(\"stroke-dasharray\", \"1,0\");\n elem.append(\"marker\").attr(\"id\", id + \"_\" + type + \"-crossEnd-margin\").attr(\"class\", \"marker cross \" + type).attr(\"viewBox\", \"0 0 15 15\").attr(\"refX\", 17.7).attr(\"refY\", 7.5).attr(\"markerUnits\", \"userSpaceOnUse\").attr(\"markerWidth\", 12).attr(\"markerHeight\", 12).attr(\"orient\", \"auto\").append(\"path\").attr(\"d\", \"M 1,1 L 14,14 M 1,14 L 14,1\").attr(\"class\", \"arrowMarkerPath\").style(\"stroke-width\", 2.5);\n elem.append(\"marker\").attr(\"id\", id + \"_\" + type + \"-crossStart-margin\").attr(\"class\", \"marker cross \" + type).attr(\"viewBox\", \"0 0 15 15\").attr(\"refX\", -3.5).attr(\"refY\", 7.5).attr(\"markerUnits\", \"userSpaceOnUse\").attr(\"markerWidth\", 12).attr(\"markerHeight\", 12).attr(\"orient\", \"auto\").append(\"path\").attr(\"d\", \"M 1,1 L 14,14 M 1,14 L 14,1\").attr(\"class\", \"arrowMarkerPath\").style(\"stroke-width\", 2.5).style(\"stroke-dasharray\", \"1,0\");\n}, \"cross\");\nvar barb = /* @__PURE__ */ __name((elem, type, id) => {\n elem.append(\"defs\").append(\"marker\").attr(\"id\", id + \"_\" + type + \"-barbEnd\").attr(\"refX\", 19).attr(\"refY\", 7).attr(\"markerWidth\", 20).attr(\"markerHeight\", 14).attr(\"markerUnits\", \"userSpaceOnUse\").attr(\"orient\", \"auto\").append(\"path\").attr(\"d\", \"M 19,7 L9,13 L14,7 L9,1 Z\");\n}, \"barb\");\nvar barbNeo = /* @__PURE__ */ __name((elem, type, id) => {\n const config = getConfig();\n const { themeVariables } = config;\n const { transitionColor } = themeVariables;\n elem.append(\"defs\").append(\"marker\").attr(\"id\", id + \"_\" + type + \"-barbEnd\").attr(\"refX\", 19).attr(\"refY\", 7).attr(\"markerWidth\", 20).attr(\"markerHeight\", 14).attr(\"markerUnits\", \"strokeWidth\").attr(\"orient\", \"auto\").append(\"path\").attr(\"d\", \"M 19,7 L11,14 L13,7 L11,0 Z\");\n elem.append(\"defs\").append(\"marker\").attr(\"id\", id + \"_\" + type + \"-barbEnd-margin\").attr(\"refX\", 17).attr(\"refY\", 7).attr(\"markerWidth\", 20).attr(\"markerHeight\", 14).attr(\"markerUnits\", \"userSpaceOnUse\").attr(\"orient\", \"auto\").append(\"path\").attr(\"d\", \"M 19,7 L11,14 L13,7 L11,0 Z\").attr(\"fill\", `${transitionColor}`);\n}, \"barbNeo\");\nvar only_one = /* @__PURE__ */ __name((elem, type, id) => {\n elem.append(\"defs\").append(\"marker\").attr(\"id\", id + \"_\" + type + \"-onlyOneStart\").attr(\"class\", \"marker onlyOne \" + type).attr(\"refX\", 0).attr(\"refY\", 9).attr(\"markerWidth\", 18).attr(\"markerHeight\", 18).attr(\"orient\", \"auto\").append(\"path\").attr(\"d\", \"M9,0 L9,18 M15,0 L15,18\");\n elem.append(\"defs\").append(\"marker\").attr(\"id\", id + \"_\" + type + \"-onlyOneEnd\").attr(\"class\", \"marker onlyOne \" + type).attr(\"refX\", 18).attr(\"refY\", 9).attr(\"markerWidth\", 18).attr(\"markerHeight\", 18).attr(\"orient\", \"auto\").append(\"path\").attr(\"d\", \"M3,0 L3,18 M9,0 L9,18\");\n}, \"only_one\");\nvar zero_or_one = /* @__PURE__ */ __name((elem, type, id) => {\n const startMarker = elem.append(\"defs\").append(\"marker\").attr(\"id\", id + \"_\" + type + \"-zeroOrOneStart\").attr(\"class\", \"marker zeroOrOne \" + type).attr(\"refX\", 0).attr(\"refY\", 9).attr(\"markerWidth\", 30).attr(\"markerHeight\", 18).attr(\"orient\", \"auto\");\n startMarker.append(\"circle\").attr(\"fill\", \"white\").attr(\"cx\", 21).attr(\"cy\", 9).attr(\"r\", 6);\n startMarker.append(\"path\").attr(\"d\", \"M9,0 L9,18\");\n const endMarker = elem.append(\"defs\").append(\"marker\").attr(\"id\", id + \"_\" + type + \"-zeroOrOneEnd\").attr(\"class\", \"marker zeroOrOne \" + type).attr(\"refX\", 30).attr(\"refY\", 9).attr(\"markerWidth\", 30).attr(\"markerHeight\", 18).attr(\"orient\", \"auto\");\n endMarker.append(\"circle\").attr(\"fill\", \"white\").attr(\"cx\", 9).attr(\"cy\", 9).attr(\"r\", 6);\n endMarker.append(\"path\").attr(\"d\", \"M21,0 L21,18\");\n}, \"zero_or_one\");\nvar one_or_more = /* @__PURE__ */ __name((elem, type, id) => {\n elem.append(\"defs\").append(\"marker\").attr(\"id\", id + \"_\" + type + \"-oneOrMoreStart\").attr(\"class\", \"marker oneOrMore \" + type).attr(\"refX\", 18).attr(\"refY\", 18).attr(\"markerWidth\", 45).attr(\"markerHeight\", 36).attr(\"orient\", \"auto\").append(\"path\").attr(\"d\", \"M0,18 Q 18,0 36,18 Q 18,36 0,18 M42,9 L42,27\");\n elem.append(\"defs\").append(\"marker\").attr(\"id\", id + \"_\" + type + \"-oneOrMoreEnd\").attr(\"class\", \"marker oneOrMore \" + type).attr(\"refX\", 27).attr(\"refY\", 18).attr(\"markerWidth\", 45).attr(\"markerHeight\", 36).attr(\"orient\", \"auto\").append(\"path\").attr(\"d\", \"M3,9 L3,27 M9,18 Q27,0 45,18 Q27,36 9,18\");\n}, \"one_or_more\");\nvar zero_or_more = /* @__PURE__ */ __name((elem, type, id) => {\n const startMarker = elem.append(\"defs\").append(\"marker\").attr(\"id\", id + \"_\" + type + \"-zeroOrMoreStart\").attr(\"class\", \"marker zeroOrMore \" + type).attr(\"refX\", 18).attr(\"refY\", 18).attr(\"markerWidth\", 57).attr(\"markerHeight\", 36).attr(\"orient\", \"auto\");\n startMarker.append(\"circle\").attr(\"fill\", \"white\").attr(\"cx\", 48).attr(\"cy\", 18).attr(\"r\", 6);\n startMarker.append(\"path\").attr(\"d\", \"M0,18 Q18,0 36,18 Q18,36 0,18\");\n const endMarker = elem.append(\"defs\").append(\"marker\").attr(\"id\", id + \"_\" + type + \"-zeroOrMoreEnd\").attr(\"class\", \"marker zeroOrMore \" + type).attr(\"refX\", 39).attr(\"refY\", 18).attr(\"markerWidth\", 57).attr(\"markerHeight\", 36).attr(\"orient\", \"auto\");\n endMarker.append(\"circle\").attr(\"fill\", \"white\").attr(\"cx\", 9).attr(\"cy\", 18).attr(\"r\", 6);\n endMarker.append(\"path\").attr(\"d\", \"M21,18 Q39,0 57,18 Q39,36 21,18\");\n}, \"zero_or_more\");\nvar only_one_neo = /* @__PURE__ */ __name((elem, type, id) => {\n const config = getConfig();\n const { themeVariables } = config;\n const { strokeWidth } = themeVariables;\n elem.append(\"defs\").append(\"marker\").attr(\"id\", id + \"_\" + type + \"-onlyOneStart\").attr(\"class\", \"marker onlyOne \" + type).attr(\"refX\", 0).attr(\"refY\", 9).attr(\"markerWidth\", 18).attr(\"markerHeight\", 18).attr(\"orient\", \"auto\").attr(\"markerUnits\", \"userSpaceOnUse\").append(\"path\").attr(\"d\", \"M9,0 L9,18 M15,0 L15,18\").attr(\"stroke-width\", `${strokeWidth}`);\n elem.append(\"defs\").append(\"marker\").attr(\"id\", id + \"_\" + type + \"-onlyOneEnd\").attr(\"class\", \"marker onlyOne \" + type).attr(\"refX\", 18).attr(\"refY\", 9).attr(\"markerWidth\", 18).attr(\"markerHeight\", 18).attr(\"orient\", \"auto\").attr(\"markerUnits\", \"userSpaceOnUse\").append(\"path\").attr(\"d\", \"M3,0 L3,18 M9,0 L9,18\").attr(\"stroke-width\", `${strokeWidth}`);\n}, \"only_one_neo\");\nvar zero_or_one_neo = /* @__PURE__ */ __name((elem, type, id) => {\n const config = getConfig();\n const { themeVariables } = config;\n const { strokeWidth, mainBkg } = themeVariables;\n const startMarker = elem.append(\"defs\").append(\"marker\").attr(\"id\", id + \"_\" + type + \"-zeroOrOneStart\").attr(\"class\", \"marker zeroOrOne \" + type).attr(\"refX\", 0).attr(\"refY\", 9).attr(\"markerWidth\", 30).attr(\"markerHeight\", 18).attr(\"orient\", \"auto\").attr(\"markerUnits\", \"userSpaceOnUse\");\n startMarker.append(\"circle\").attr(\"fill\", mainBkg ?? \"white\").attr(\"cx\", 21).attr(\"cy\", 9).attr(\"stroke-width\", `${strokeWidth}`).attr(\"r\", 6);\n startMarker.append(\"path\").attr(\"d\", \"M9,0 L9,18\").attr(\"stroke-width\", `${strokeWidth}`);\n const endMarker = elem.append(\"defs\").append(\"marker\").attr(\"id\", id + \"_\" + type + \"-zeroOrOneEnd\").attr(\"class\", \"marker zeroOrOne \" + type).attr(\"refX\", 30).attr(\"refY\", 9).attr(\"markerWidth\", 30).attr(\"markerHeight\", 18).attr(\"markerUnits\", \"userSpaceOnUse\").attr(\"orient\", \"auto\");\n endMarker.append(\"circle\").attr(\"fill\", mainBkg ?? \"white\").attr(\"cx\", 9).attr(\"cy\", 9).attr(\"stroke-width\", `${strokeWidth}`).attr(\"r\", 6);\n endMarker.append(\"path\").attr(\"d\", \"M21,0 L21,18\").attr(\"stroke-width\", `${strokeWidth}`);\n}, \"zero_or_one_neo\");\nvar one_or_more_neo = /* @__PURE__ */ __name((elem, type, id) => {\n const config = getConfig();\n const { themeVariables } = config;\n const { strokeWidth } = themeVariables;\n elem.append(\"defs\").append(\"marker\").attr(\"id\", id + \"_\" + type + \"-oneOrMoreStart\").attr(\"class\", \"marker oneOrMore \" + type).attr(\"refX\", 18).attr(\"refY\", 18).attr(\"markerWidth\", 45).attr(\"markerHeight\", 36).attr(\"orient\", \"auto\").attr(\"markerUnits\", \"userSpaceOnUse\").append(\"path\").attr(\"d\", \"M0,18 Q 18,0 36,18 Q 18,36 0,18 M42,9 L42,27\").attr(\"stroke-width\", `${strokeWidth}`);\n elem.append(\"defs\").append(\"marker\").attr(\"id\", id + \"_\" + type + \"-oneOrMoreEnd\").attr(\"class\", \"marker oneOrMore \" + type).attr(\"refX\", 27).attr(\"refY\", 18).attr(\"markerWidth\", 45).attr(\"markerHeight\", 36).attr(\"markerUnits\", \"userSpaceOnUse\").attr(\"orient\", \"auto\").append(\"path\").attr(\"d\", \"M3,9 L3,27 M9,18 Q27,0 45,18 Q27,36 9,18\").attr(\"stroke-width\", `${strokeWidth}`);\n}, \"one_or_more_neo\");\nvar zero_or_more_neo = /* @__PURE__ */ __name((elem, type, id) => {\n const config = getConfig();\n const { themeVariables } = config;\n const { strokeWidth, mainBkg } = themeVariables;\n const startMarker = elem.append(\"defs\").append(\"marker\").attr(\"id\", id + \"_\" + type + \"-zeroOrMoreStart\").attr(\"class\", \"marker zeroOrMore \" + type).attr(\"refX\", 18).attr(\"refY\", 18).attr(\"markerWidth\", 57).attr(\"markerHeight\", 36).attr(\"markerUnits\", \"userSpaceOnUse\").attr(\"orient\", \"auto\");\n startMarker.append(\"circle\").attr(\"fill\", mainBkg ?? \"white\").attr(\"cx\", 45.5).attr(\"cy\", 18).attr(\"r\", 6).attr(\"stroke-width\", `${strokeWidth}`);\n startMarker.append(\"path\").attr(\"d\", \"M0,18 Q18,0 36,18 Q18,36 0,18\").attr(\"stroke-width\", `${strokeWidth}`);\n const endMarker = elem.append(\"defs\").append(\"marker\").attr(\"id\", id + \"_\" + type + \"-zeroOrMoreEnd\").attr(\"class\", \"marker zeroOrMore \" + type).attr(\"refX\", 39).attr(\"refY\", 18).attr(\"markerWidth\", 57).attr(\"markerHeight\", 36).attr(\"orient\", \"auto\").attr(\"markerUnits\", \"userSpaceOnUse\");\n endMarker.append(\"circle\").attr(\"fill\", mainBkg ?? \"white\").attr(\"cx\", 11).attr(\"cy\", 18).attr(\"r\", 6).attr(\"stroke-width\", `${strokeWidth}`);\n endMarker.append(\"path\").attr(\"d\", \"M21,18 Q39,0 57,18 Q39,36 21,18\").attr(\"stroke-width\", `${strokeWidth}`);\n}, \"zero_or_more_neo\");\nvar requirement_arrow = /* @__PURE__ */ __name((elem, type, id) => {\n elem.append(\"defs\").append(\"marker\").attr(\"id\", id + \"_\" + type + \"-requirement_arrowEnd\").attr(\"refX\", 20).attr(\"refY\", 10).attr(\"markerWidth\", 20).attr(\"markerHeight\", 20).attr(\"orient\", \"auto\").append(\"path\").attr(\n \"d\",\n `M0,0\n L20,10\n M20,10\n L0,20`\n );\n}, \"requirement_arrow\");\nvar requirement_arrow_neo = /* @__PURE__ */ __name((elem, type, id) => {\n const config = getConfig();\n const { themeVariables } = config;\n const { strokeWidth } = themeVariables;\n elem.append(\"defs\").append(\"marker\").attr(\"id\", id + \"_\" + type + \"-requirement_arrowEnd\").attr(\"refX\", 20).attr(\"refY\", 10).attr(\"markerWidth\", 20).attr(\"markerHeight\", 20).attr(\"orient\", \"auto\").attr(\"markerUnits\", \"userSpaceOnUse\").attr(\"stroke-width\", `${strokeWidth}`).attr(\"viewBox\", \"0 0 25 20\").append(\"path\").attr(\n \"d\",\n `M0,0\n L20,10\n M20,10\n L0,20`\n ).attr(\"stroke-linejoin\", \"miter\");\n}, \"requirement_arrow_neo\");\nvar requirement_contains = /* @__PURE__ */ __name((elem, type, id) => {\n const containsNode = elem.append(\"defs\").append(\"marker\").attr(\"id\", id + \"_\" + type + \"-requirement_containsStart\").attr(\"refX\", 0).attr(\"refY\", 10).attr(\"markerWidth\", 20).attr(\"markerHeight\", 20).attr(\"orient\", \"auto\").append(\"g\");\n containsNode.append(\"circle\").attr(\"cx\", 10).attr(\"cy\", 10).attr(\"r\", 9).attr(\"fill\", \"none\");\n containsNode.append(\"line\").attr(\"x1\", 1).attr(\"x2\", 19).attr(\"y1\", 10).attr(\"y2\", 10);\n containsNode.append(\"line\").attr(\"y1\", 1).attr(\"y2\", 19).attr(\"x1\", 10).attr(\"x2\", 10);\n}, \"requirement_contains\");\nvar requirement_contains_neo = /* @__PURE__ */ __name((elem, type, id) => {\n const config = getConfig();\n const { themeVariables } = config;\n const { strokeWidth } = themeVariables;\n const containsNode = elem.append(\"defs\").append(\"marker\").attr(\"id\", id + \"_\" + type + \"-requirement_containsStart\").attr(\"refX\", 0).attr(\"refY\", 10).attr(\"markerWidth\", 20).attr(\"markerHeight\", 20).attr(\"orient\", \"auto\").attr(\"markerUnits\", \"userSpaceOnUse\").append(\"g\");\n containsNode.append(\"circle\").attr(\"cx\", 10).attr(\"cy\", 10).attr(\"r\", 9).attr(\"fill\", \"none\");\n containsNode.append(\"line\").attr(\"x1\", 1).attr(\"x2\", 19).attr(\"y1\", 10).attr(\"y2\", 10);\n containsNode.append(\"line\").attr(\"y1\", 1).attr(\"y2\", 19).attr(\"x1\", 10).attr(\"x2\", 10);\n containsNode.selectAll(\"*\").attr(\"stroke-width\", `${strokeWidth}`);\n}, \"requirement_contains_neo\");\nvar markers = {\n extension,\n composition,\n aggregation,\n dependency,\n lollipop,\n point,\n circle,\n cross,\n barb,\n barbNeo,\n only_one,\n zero_or_one,\n one_or_more,\n zero_or_more,\n only_one_neo,\n zero_or_one_neo,\n one_or_more_neo,\n zero_or_more_neo,\n requirement_arrow,\n requirement_contains,\n requirement_arrow_neo,\n requirement_contains_neo\n};\nvar markers_default = insertMarkers;\n\nexport {\n clear,\n insertEdgeLabel,\n positionEdgeLabel,\n insertEdge,\n markers_default\n};\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["addEdgeMarkers", "__name", "svgPath", "edge", "url", "id", "diagramType", "useMargin", "strokeColor", "addEdgeMarker", "arrowTypesMap", "arrowTypesWithMarginSupport", "position", "arrowType", "arrowTypeInfo", "marginSupport", "log", "endMarkerType", "originalMarkerId", "colorId", "coloredMarkerId", "originalMarker", "coloredMarker", "path", "resolveEdgeCurveType", "edgeCurve", "getConfig2", "edgeLabels", "terminalLabels", "clear", "getLabelStyles", "styleArray", "acc", "style", "insertEdgeLabel", "elem", "config", "useHtmlLabels", "getEffectiveHtmlLabels", "labelStyles", "styles2String", "edgeLabel", "label", "isMarkdown", "labelElement", "createText", "bbox", "transformBbox", "div", "dv", "select_default", "textEl", "computeLabelTransform", "fo", "startEdgeLabelLeft", "inner", "startLabelElement", "createLabel_default", "slBox", "setTerminalWidth", "startEdgeLabelRight", "endEdgeLabelLeft", "endLabelElement", "endEdgeLabelRight", "value", "positionEdgeLabel", "paths", "siteConfig", "subGraphTitleTotalMargin", "getSubGraphTitleMargins", "el", "x", "y", "pos", "utils_default", "outsideNode", "node", "point2", "dx", "dy", "w", "h", "intersection", "outsidePoint", "insidePoint", "r", "Q", "R", "q", "res", "_x", "_y", "cutPathAtIntersect", "_points", "boundaryNode", "points", "lastPointOutside", "isInside", "inter", "pointPresent", "p", "e", "extractCornerPoints", "cornerPoints", "cornerPointPositions", "i", "prev", "curr", "next", "findAdjacentPoint", "pointA", "pointB", "distance", "xDiff", "yDiff", "length", "ratio", "fixCorners", "lineData", "newLineData", "prevPoint", "nextPoint", "cornerPoint", "newPrevPoint", "newNextPoint", "a", "newCornerPoint", "generateDashArray", "len", "oValueS", "oValueE", "middleLength", "dashLength", "gapLength", "dashGapPairLength", "numberOfPairs", "middlePattern", "insertEdge", "clusterDb", "startNode", "endNode", "diagramId", "skipIntersect", "handDrawnSeed", "pointsHasChanged", "tail", "head", "edgeClassStyles", "key", "isLabelStyle", "pointsStr", "edgeCurveType", "curve", "linear_default", "basis_default", "cardinal_default", "bumpX", "bumpY", "catmullRom_default", "monotoneX", "monotoneY", "natural_default", "step_default", "stepAfter", "stepBefore", "getLineFunctionsWithOffset", "lineFunction", "line_default", "strokeClasses", "linePath", "generateRoundedPath", "applyMarkerOffsetsToPoints", "edgeStyles", "animationClass", "animatedEdge", "rc", "at", "svgPathNode", "d", "stylesFromClasses", "styles", "pathStyle", "pathNode", "markerOffsets2", "mOffset", "handleUndefinedAttr", "point3", "midIndex", "radius", "size", "epsilon", "currPoint", "dx1", "dy1", "dx2", "dy2", "len1", "len2", "nx1", "ny1", "nx2", "ny2", "dot", "clampedDot", "angle", "cutLen", "startX", "startY", "endX", "endY", "calculateDeltaAndAngle", "point1", "deltaX", "deltaY", "newPoints", "markerOffsets", "offsetValue", "offsetX", "offsetY", "n", "insertMarkers", "markerArray", "type", "markerName", "markers", "extension", "composition", "aggregation", "dependency", "lollipop", "point", "circle", "cross", "barb", "barbNeo", "getConfig", "themeVariables", "transitionColor", "only_one", "zero_or_one", "startMarker", "endMarker", "one_or_more", "zero_or_more", "only_one_neo", "strokeWidth", "zero_or_one_neo", "mainBkg", "one_or_more_neo", "zero_or_more_neo", "requirement_arrow", "requirement_arrow_neo", "requirement_contains", "containsNode", "requirement_contains_neo", "markers_default"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
var g=Object.create;var e=Object.defineProperty;var h=Object.getOwnPropertyDescriptor;var i=Object.getOwnPropertyNames;var j=Object.getPrototypeOf,k=Object.prototype.hasOwnProperty;var l=(b,a,c)=>a in b?e(b,a,{enumerable:!0,configurable:!0,writable:!0,value:c}):b[a]=c;var n=(b,a)=>()=>{try{return a||b((a={exports:{}}).exports,a),a.exports}catch(c){throw a=0,c}};var m=(b,a,c,f)=>{if(a&&typeof a=="object"||typeof a=="function")for(let d of i(a))!k.call(b,d)&&d!==c&&e(b,d,{get:()=>a[d],enumerable:!(f=h(a,d))||f.enumerable});return b};var o=(b,a,c)=>(c=b!=null?g(j(b)):{},m(a||!b||!b.__esModule?e(c,"default",{value:b,enumerable:!0}):c,b));var p=(b,a,c)=>l(b,typeof a!="symbol"?a+"":a,c);export{n as a,o as b,p as c};
|
|
2
|
+
//# sourceMappingURL=chunk-URGT6V7R.js.map
|