mermaid
Version:
Markdown-ish syntax for generating flowcharts, mindmaps, sequence diagrams, class diagrams, gantt charts, git graphs and more.
15 lines (14 loc) • 30.9 kB
JavaScript
import{a as ir}from"./chunks/mermaid.esm.min/chunk-SQW7XO2P.mjs";import{a as rr,b as er}from"./chunks/mermaid.esm.min/chunk-GDOATIN3.mjs";import{a as ar}from"./chunks/mermaid.esm.min/chunk-JRPEA5MG.mjs";import"./chunks/mermaid.esm.min/chunk-MFYRHTYG.mjs";import"./chunks/mermaid.esm.min/chunk-I2GRRCP3.mjs";import"./chunks/mermaid.esm.min/chunk-MOTMN5Z2.mjs";import"./chunks/mermaid.esm.min/chunk-2Z4JPSLF.mjs";import"./chunks/mermaid.esm.min/chunk-JUO4FS6R.mjs";import"./chunks/mermaid.esm.min/chunk-F6PIGZHG.mjs";import"./chunks/mermaid.esm.min/chunk-7PWWD3R6.mjs";import{a as Ut}from"./chunks/mermaid.esm.min/chunk-VZ26ENTH.mjs";import{b as Nt}from"./chunks/mermaid.esm.min/chunk-BZANPUPN.mjs";import"./chunks/mermaid.esm.min/chunk-MIE3LDYP.mjs";import{b as bt,d as Kt,m as St,n as Qt,p as Zt,q as _,r as Jt,s as tr}from"./chunks/mermaid.esm.min/chunk-YF46JFGZ.mjs";import"./chunks/mermaid.esm.min/chunk-ZZ52EIBP.mjs";import{J as Bt,K as Yt,L as Q,M as G,N as Z,O as qt,P as Xt,R as Lt,S as Wt,a as kt,ea as z,fa as J,i as it,j as Pt,l as It,m as ot,n as Ot,o as nt,p as Ft,q as $t,r as zt,s as wt,t as _t,u as F,v as Vt,w as K,y as Gt,z as Ht}from"./chunks/mermaid.esm.min/chunk-VSAMGZVZ.mjs";import{b as f,c as Et,h as j}from"./chunks/mermaid.esm.min/chunk-L2B47AAZ.mjs";import{a as r}from"./chunks/mermaid.esm.min/chunk-QVIEFLGF.mjs";var ga=r(t=>/^\s*C4Context|C4Container|C4Component|C4Dynamic|C4Deployment/.test(t),"detector"),fa=r(async()=>{let{diagram:t}=await import("./chunks/mermaid.esm.min/c4Diagram-AWWLDW74.mjs");return{id:"c4",diagram:t}},"loader"),la={id:"c4",detector:ga,loader:fa},or=la;var nr="flowchart-v2",ua=r(t=>/^\s*(graph|flowchart)/.test(t),"detector"),Da=r(async()=>{let{diagram:t}=await import("./chunks/mermaid.esm.min/flowDiagram-RSBMJUOH.mjs");return{id:nr,diagram:t}},"loader"),ya={id:nr,detector:ua,loader:Da},sr=ya;var cr="agentflow",xa=r(t=>/^\s*agentflow-beta\b/.test(t),"detector"),ha=r(async()=>{let{diagram:t}=await import("./chunks/mermaid.esm.min/diagram-3YICM4JG.mjs");return{id:cr,diagram:t}},"loader"),Ea={id:cr,detector:xa,loader:ha},mr=Ea;var pr="swimlane",wa=r(t=>/^\s*swimlane-beta\b/.test(t),"detector"),La=r(async()=>{let{diagram:t}=await import("./chunks/mermaid.esm.min/swimlanesDiagram-COUI7OTL.mjs");return{id:pr,diagram:t}},"loader"),ba={id:pr,detector:wa,loader:La},dr=ba;var Sa=r(t=>/^\s*erDiagram/.test(t),"detector"),Ma=r(async()=>{let{diagram:t}=await import("./chunks/mermaid.esm.min/erDiagram-ANHJ23XI.mjs");return{id:"er",diagram:t}},"loader"),Aa={id:"er",detector:Sa,loader:Ma},gr=Aa;var fr="gitGraph",Ca=r(t=>/^\s*gitGraph/.test(t),"detector"),va=r(async()=>{let{diagram:t}=await import("./chunks/mermaid.esm.min/gitGraphDiagram-DJ35GMLX.mjs");return{id:fr,diagram:t}},"loader"),Ta={id:fr,detector:Ca,loader:va},lr=Ta;var ur="gantt",Ra=r(t=>/^\s*gantt/.test(t),"detector"),ja=r(async()=>{let{diagram:t}=await import("./chunks/mermaid.esm.min/ganttDiagram-W4DG4PQH.mjs");return{id:ur,diagram:t}},"loader"),ka={id:ur,detector:Ra,loader:ja},Dr=ka;var yr="info",Pa=r(t=>/^\s*info/.test(t),"detector"),Ia=r(async()=>{let{diagram:t}=await import("./chunks/mermaid.esm.min/infoDiagram-22C5K3UI.mjs");return{id:yr,diagram:t}},"loader"),xr={id:yr,detector:Pa,loader:Ia};var Oa=r(t=>/^\s*pie/.test(t),"detector"),Fa=r(async()=>{let{diagram:t}=await import("./chunks/mermaid.esm.min/pieDiagram-M5YMTGOP.mjs");return{id:"pie",diagram:t}},"loader"),hr={id:"pie",detector:Oa,loader:Fa};var Er="quadrantChart",$a=r(t=>/^\s*quadrantChart/.test(t),"detector"),za=r(async()=>{let{diagram:t}=await import("./chunks/mermaid.esm.min/quadrantDiagram-CWCYJXHI.mjs");return{id:Er,diagram:t}},"loader"),_a={id:Er,detector:$a,loader:za},wr=_a;var Lr="xychart",Va=r(t=>/^\s*xychart(-beta)?/.test(t),"detector"),Ga=r(async()=>{let{diagram:t}=await import("./chunks/mermaid.esm.min/xychartDiagram-XIB6GX6O.mjs");return{id:Lr,diagram:t}},"loader"),Ha={id:Lr,detector:Va,loader:Ga},br=Ha;var Sr="requirement",Na=r(t=>/^\s*requirement(Diagram)?/.test(t),"detector"),Ua=r(async()=>{let{diagram:t}=await import("./chunks/mermaid.esm.min/requirementDiagram-6PILDLID.mjs");return{id:Sr,diagram:t}},"loader"),Ba={id:Sr,detector:Na,loader:Ua},Mr=Ba;var Ar="sequence",Ya=r(t=>/^\s*sequenceDiagram/.test(t),"detector"),qa=r(async()=>{let{diagram:t}=await import("./chunks/mermaid.esm.min/sequenceDiagram-G32E472T.mjs");return{id:Ar,diagram:t}},"loader"),Xa={id:Ar,detector:Ya,loader:qa},Cr=Xa;var vr="classDiagram",Wa=r(t=>/^\s*classDiagram/.test(t),"detector"),Ka=r(async()=>{let{diagram:t}=await import("./chunks/mermaid.esm.min/classDiagram-v2-LBMDK6NY.mjs");return{id:vr,diagram:t}},"loader"),Qa={id:vr,detector:Wa,loader:Ka},Tr=Qa;var Rr="stateDiagram",Za=r(t=>/^\s*stateDiagram/.test(t),"detector"),Ja=r(async()=>{let{diagram:t}=await import("./chunks/mermaid.esm.min/stateDiagram-v2-GCHUW3IW.mjs");return{id:Rr,diagram:t}},"loader"),ti={id:Rr,detector:Za,loader:Ja},jr=ti;var kr="journey",ri=r(t=>/^\s*journey/.test(t),"detector"),ei=r(async()=>{let{diagram:t}=await import("./chunks/mermaid.esm.min/journeyDiagram-LGRYOJAO.mjs");return{id:kr,diagram:t}},"loader"),ai={id:kr,detector:ri,loader:ei},Pr=ai;var st=4,tt=75,ii=r(t=>{let e=[];for(let o of t.split(/\s+/)){let n=[...o];for(;n.length>tt;)e.push(n.slice(0,tt).join("")),n=n.slice(tt);n.length>0&&e.push(n.join(""))}let a=[],i="";for(let o of e){let n=i?`${i} ${o}`:o;[...n].length>tt?(a.push(i),i=o):i=n}if(i&&a.push(i),a.length>st){a.length=st;let o=a[st-1]??"";a[st-1]=`${[...o].slice(0,tt-3).join("")}...`}return a},"wrapErrorMessage"),oi=r((t,e,a,i)=>{f.debug(`rendering svg for syntax error
`);let o=ir(e),n=o.append("g"),c=ii(i?.db.getErrorMessage?.()??""),s=c.length>0?500+c.length*56:512;o.attr("viewBox",`0 0 2412 ${s}`),Xt(o,100,s,!0),n.append("path").attr("class","error-icon").attr("d","m411.313,123.313c6.25-6.25 6.25-16.375 0-22.625s-16.375-6.25-22.625,0l-32,32-9.375,9.375-20.688-20.688c-12.484-12.5-32.766-12.5-45.25,0l-16,16c-1.261,1.261-2.304,2.648-3.31,4.051-21.739-8.561-45.324-13.426-70.065-13.426-105.867,0-192,86.133-192,192s86.133,192 192,192 192-86.133 192-192c0-24.741-4.864-48.327-13.426-70.065 1.402-1.007 2.79-2.049 4.051-3.31l16-16c12.5-12.492 12.5-32.758 0-45.25l-20.688-20.688 9.375-9.375 32.001-31.999zm-219.313,100.687c-52.938,0-96,43.063-96,96 0,8.836-7.164,16-16,16s-16-7.164-16-16c0-70.578 57.422-128 128-128 8.836,0 16,7.164 16,16s-7.164,16-16,16z"),n.append("path").attr("class","error-icon").attr("d","m459.02,148.98c-6.25-6.25-16.375-6.25-22.625,0s-6.25,16.375 0,22.625l16,16c3.125,3.125 7.219,4.688 11.313,4.688 4.094,0 8.188-1.563 11.313-4.688 6.25-6.25 6.25-16.375 0-22.625l-16.001-16z"),n.append("path").attr("class","error-icon").attr("d","m340.395,75.605c3.125,3.125 7.219,4.688 11.313,4.688 4.094,0 8.188-1.563 11.313-4.688 6.25-6.25 6.25-16.375 0-22.625l-16-16c-6.25-6.25-16.375-6.25-22.625,0s-6.25,16.375 0,22.625l15.999,16z"),n.append("path").attr("class","error-icon").attr("d","m400,64c8.844,0 16-7.164 16-16v-32c0-8.836-7.156-16-16-16-8.844,0-16,7.164-16,16v32c0,8.836 7.156,16 16,16z"),n.append("path").attr("class","error-icon").attr("d","m496,96.586h-32c-8.844,0-16,7.164-16,16 0,8.836 7.156,16 16,16h32c8.844,0 16-7.164 16-16 0-8.836-7.156-16-16-16z"),n.append("path").attr("class","error-icon").attr("d","m436.98,75.605c3.125,3.125 7.219,4.688 11.313,4.688 4.094,0 8.188-1.563 11.313-4.688l32-32c6.25-6.25 6.25-16.375 0-22.625s-16.375-6.25-22.625,0l-32,32c-6.251,6.25-6.251,16.375-0.001,22.625z"),n.append("text").attr("class","error-text").attr("x",1440).attr("y",250).attr("font-size","150px").style("text-anchor","middle").text("Syntax error in text"),n.append("text").attr("class","error-text").attr("x",1250).attr("y",400).attr("font-size","100px").style("text-anchor","middle").text(`mermaid version ${a}`),c.forEach((m,g)=>{n.append("text").attr("class","error-text").attr("x",1440).attr("y",510+g*56).attr("font-size","42px").style("text-anchor","middle").text(m)})},"draw"),Mt={draw:oi},Ir=Mt;var At,ni={clear(){At=void 0},setErrorMessage(t){At=t},getErrorMessage(){return At}},si={db:ni,renderer:Mt,parser:{parse:r(()=>{},"parse")}},Or=si;var Fr="flowchart-elk",ci=r((t,e={})=>/^\s*flowchart-elk/.test(t)?(e.layout="elk",!0):!1,"detector"),mi=r(async()=>{let{diagram:t}=await import("./chunks/mermaid.esm.min/flowDiagram-RSBMJUOH.mjs");return{id:Fr,diagram:t}},"loader"),pi={id:Fr,detector:ci,loader:mi},$r=pi;var zr="timeline",di=r(t=>/^\s*timeline/.test(t),"detector"),gi=r(async()=>{let{diagram:t}=await import("./chunks/mermaid.esm.min/timeline-definition-N4ULQHJO.mjs");return{id:zr,diagram:t}},"loader"),fi={id:zr,detector:di,loader:gi},_r=fi;var Vr="mindmap",li=r(t=>/^\s*mindmap/.test(t),"detector"),ui=r(async()=>{let{diagram:t}=await import("./chunks/mermaid.esm.min/mindmap-definition-ZNPICTZT.mjs");return{id:Vr,diagram:t}},"loader"),Di={id:Vr,detector:li,loader:ui},Gr=Di;var Hr="kanban",yi=r(t=>/^\s*kanban/.test(t),"detector"),xi=r(async()=>{let{diagram:t}=await import("./chunks/mermaid.esm.min/kanban-definition-ACOY7ZUW.mjs");return{id:Hr,diagram:t}},"loader"),hi={id:Hr,detector:yi,loader:xi},Nr=hi;var Ur="sankey",Ei=r(t=>/^\s*sankey(-beta)?/.test(t),"detector"),wi=r(async()=>{let{diagram:t}=await import("./chunks/mermaid.esm.min/sankeyDiagram-TMUGMN6V.mjs");return{id:Ur,diagram:t}},"loader"),Li={id:Ur,detector:Ei,loader:wi},Br=Li;var Yr="packet",bi=r(t=>/^\s*packet(-beta)?/.test(t),"detector"),Si=r(async()=>{let{diagram:t}=await import("./chunks/mermaid.esm.min/diagram-PGX7FBQ5.mjs");return{id:Yr,diagram:t}},"loader"),qr={id:Yr,detector:bi,loader:Si};var Xr="radar",Mi=r(t=>/^\s*radar-beta/.test(t),"detector"),Ai=r(async()=>{let{diagram:t}=await import("./chunks/mermaid.esm.min/diagram-DBLXNEHF.mjs");return{id:Xr,diagram:t}},"loader"),Wr={id:Xr,detector:Mi,loader:Ai};var Kr="block",Ci=r(t=>/^\s*block(-beta)?/.test(t),"detector"),vi=r(async()=>{let{diagram:t}=await import("./chunks/mermaid.esm.min/blockDiagram-R6ND4MXS.mjs");return{id:Kr,diagram:t}},"loader"),Ti={id:Kr,detector:Ci,loader:vi},Qr=Ti;var Zr="treeView",Ri=r(t=>/^\s*treeView-beta/.test(t),"detector"),ji=r(async()=>{let{diagram:t}=await import("./chunks/mermaid.esm.min/diagram-KJPFP3Z3.mjs");return{id:Zr,diagram:t}},"loader"),ki={id:Zr,detector:Ri,loader:ji},Jr=ki;var te="architecture",Pi=r(t=>/^\s*architecture/.test(t),"detector"),Ii=r(async()=>{let{diagram:t}=await import("./chunks/mermaid.esm.min/architectureDiagram-X3EXDJRP.mjs");return{id:te,diagram:t}},"loader"),Oi={id:te,detector:Pi,loader:Ii},re=Oi;var ee="eventmodeling",Fi=r(t=>/^\s*eventmodeling/.test(t),"detector"),$i=r(async()=>{let{diagram:t}=await import("./chunks/mermaid.esm.min/diagram-ASHPWNXA.mjs");return{id:ee,diagram:t}},"loader"),zi={id:ee,detector:Fi,loader:$i},ae=zi;var ie="ishikawa",_i=r(t=>/^\s*ishikawa(-beta)?\b/i.test(t),"detector"),Vi=r(async()=>{let{diagram:t}=await import("./chunks/mermaid.esm.min/ishikawaDiagram-QNL6J7P5.mjs");return{id:ie,diagram:t}},"loader"),oe={id:ie,detector:_i,loader:Vi};var ne="venn",Gi=r(t=>/^\s*venn-beta/.test(t),"detector"),Hi=r(async()=>{let{diagram:t}=await import("./chunks/mermaid.esm.min/vennDiagram-R5NIOC6V.mjs");return{id:ne,diagram:t}},"loader"),Ni={id:ne,detector:Gi,loader:Hi},se=Ni;var ce="treemap",Ui=r(t=>/^\s*treemap/.test(t),"detector"),Bi=r(async()=>{let{diagram:t}=await import("./chunks/mermaid.esm.min/diagram-E7ICGXMR.mjs");return{id:ce,diagram:t}},"loader"),me={id:ce,detector:Ui,loader:Bi};var pe="usecase",Yi=r(t=>/^\s*usecase-beta(?:\s|$)/.test(t),"detector"),qi=r(async()=>{let{diagram:t}=await import("./chunks/mermaid.esm.min/usecaseDiagram-ZBOJRJYD.mjs");return{id:pe,diagram:t}},"loader"),de={id:pe,detector:Yi,loader:qi};var ge="wardley",Xi=r(t=>/^\s*wardley-beta/i.test(t),"detector"),Wi=r(async()=>{let{diagram:t}=await import("./chunks/mermaid.esm.min/wardleyDiagram-US4GZIFT.mjs");return{id:ge,diagram:t}},"loader"),Ki={id:ge,detector:Xi,loader:Wi},fe=Ki;var le="cynefin",Qi=r(t=>/^\s*cynefin-beta(?:[\s:]|$)/.test(t),"detector"),Zi=r(async()=>{let{diagram:t}=await import("./chunks/mermaid.esm.min/cynefinDiagram-N6IRVNGI.mjs");return{id:le,diagram:t}},"loader"),ue={id:le,detector:Qi,loader:Zi};var De="railroad",Ji=r(t=>/^\s*railroad-beta/i.test(t),"detector"),to=r(async()=>{let{diagram:t}=await import("./chunks/mermaid.esm.min/railroadDiagram-RC4I4D6K.mjs");return{id:De,diagram:t}},"loader"),ye={id:De,detector:Ji,loader:to};var xe="railroadEbnf",ro=r(t=>/^\s*railroad-ebnf-beta/i.test(t),"detector"),eo=r(async()=>{let{diagram:t}=await import("./chunks/mermaid.esm.min/ebnfDiagram-AAVNZOB7.mjs");return{id:xe,diagram:t}},"loader"),he={id:xe,detector:ro,loader:eo};var Ee="railroadAbnf",ao=r(t=>/^\s*railroad-abnf-beta/i.test(t),"detector"),io=r(async()=>{let{diagram:t}=await import("./chunks/mermaid.esm.min/abnfDiagram-JJF47B36.mjs");return{id:Ee,diagram:t}},"loader"),we={id:Ee,detector:ao,loader:io};var Le="railroadPeg",oo=r(t=>/^\s*railroad-peg-beta/i.test(t),"detector"),no=r(async()=>{let{diagram:t}=await import("./chunks/mermaid.esm.min/pegDiagram-R7AM3GNI.mjs");return{id:Le,diagram:t}},"loader"),be={id:Le,detector:oo,loader:no};var Se=!1,H=r(()=>{Se||(Se=!0,z("error",Or,t=>t.toLowerCase().trim()==="error"),z("---",{db:{clear:r(()=>{},"clear")},styles:{},renderer:{draw:r(()=>{},"draw")},parser:{parse:r(()=>{throw new Error("Diagrams beginning with --- are not valid. If you were trying to use a YAML front-matter, please ensure that you've correctly opened and closed the YAML front-matter with un-indented `---` blocks")},"parse")},init:r(()=>null,"init")},t=>t.toLowerCase().trimStart().startsWith("---")),Z($r,Gr,re),Z(mr,or,Nr,Tr,gr,Dr,xr,hr,Mr,Cr,dr,sr,_r,lr,jr,Pr,wr,Br,qr,br,Qr,ae,Jr,Wr,oe,me,ye,he,we,be,se,fe,ue,de))},"addDiagrams");var Me=r(async()=>{f.debug("Loading registered diagrams");let e=(await Promise.allSettled(Object.entries(Q).map(async([a,{detector:i,loader:o}])=>{if(o)try{J(a)}catch{try{let{diagram:n,id:c}=await o();z(c,n,i)}catch(n){throw f.error(`Failed to load external diagram with key ${a}. Removing from detectors.`),delete Q[a],n}}}))).filter(a=>a.status==="rejected");if(e.length>0){f.error(`Failed to load ${e.length} external diagrams`);for(let a of e)f.error(a);throw new Error(`Failed to load ${e.length} external diagrams`)}},"loadRegisteredDiagrams");var N="comm",ct="rule",mt="decl";var Ae="@media",Ce="@import";var ve="@supports";var Te="@namespace",rt="@keyframes";var pt="@layer",Re="@scope";var Ct=Math.abs,et=String.fromCharCode;function dt(t){return t.trim()}r(dt,"trim");function U(t,e,a){return t.replace(e,a)}r(U,"replace");function je(t,e,a){return t.indexOf(e,a)}r(je,"indexof");function k(t,e){return t.charCodeAt(e)|0}r(k,"charat");function P(t,e,a){return t.slice(e,a)}r(P,"substr");function L(t){return t.length}r(L,"strlen");function gt(t){return t.length}r(gt,"sizeof");function B(t,e){return e.push(t),t}r(B,"append");var ft=1,Y=1,ke=0,C=0,D=0,X="";function lt(t,e,a,i,o,n,c,s){return{value:t,root:e,parent:a,type:i,props:o,children:n,line:ft,column:Y,length:c,return:"",siblings:s}}r(lt,"node");function Pe(){return D}r(Pe,"char");function Ie(){return D=C>0?k(X,--C):0,Y--,D===10&&(Y=1,ft--),D}r(Ie,"prev");function v(){return D=C<ke?k(X,C++):0,Y++,D===10&&(Y=1,ft++),D}r(v,"next");function I(){return k(X,C)}r(I,"peek");function at(){return C}r(at,"caret");function ut(t,e){return P(X,t,e)}r(ut,"slice");function q(t){switch(t){case 0:case 9:case 10:case 13:case 32:return 5;case 33:case 43:case 44:case 47:case 62:case 64:case 126:case 59:case 123:case 125:return 4;case 58:return 3;case 34:case 39:case 40:case 91:return 2;case 41:case 93:return 1}return 0}r(q,"token");function Oe(t){return ft=Y=1,ke=L(X=t),C=0,[]}r(Oe,"alloc");function Fe(t){return X="",t}r(Fe,"dealloc");function Dt(t){return dt(ut(C-1,vt(t===91?t+2:t===40?t+1:t)))}r(Dt,"delimit");function $e(t){for(;(D=I())&&D<33;)v();return q(t)>2||q(D)>3?"":" "}r($e,"whitespace");function ze(t,e){for(;--e&&v()&&!(D<48||D>102||D>57&&D<65||D>70&&D<97););return ut(t,at()+(e<6&&I()==32&&v()==32))}r(ze,"escaping");function vt(t){for(;v();)switch(D){case t:return C;case 34:case 39:t!==34&&t!==39&&vt(D);break;case 40:t===41&&vt(t);break;case 92:v();break}return C}r(vt,"delimiter");function _e(t,e){for(;v()&&t+D!==57;)if(t+D===84&&I()===47)break;return"/*"+ut(e,C-1)+"*"+et(t===47?t:v())}r(_e,"commenter");function Ve(t){for(;!q(I());)v();return ut(t,C)}r(Ve,"identifier");function Ne(t){return Fe(yt("",null,null,null,[""],t=Oe(t),0,[0],t))}r(Ne,"compile");function yt(t,e,a,i,o,n,c,s,m){for(var g=0,u=0,l=c,d=0,E=0,b=0,w=1,h=1,S=1,y=0,M="",T=o,R=n,A=i,p=M;h;)switch(b=y,y=v()){case 40:if(b!=108&&k(p,l-1)==58){je(p+=U(Dt(y),"&","&\f"),"&\f",Ct(g?s[g-1]:0))!=-1&&(S=-1);break}case 34:case 39:case 91:p+=Dt(y);break;case 9:case 10:case 13:case 32:p+=$e(b);break;case 92:p+=ze(at()-1,7);continue;case 47:switch(I()){case 42:case 47:B(co(_e(v(),at()),e,a,m),m),(q(b||1)==5||q(I()||1)==5)&&L(p)&&P(p,-1,void 0)!==" "&&(p+=" ");break;default:p+="/"}break;case 123*w:s[g++]=L(p)*S;case 125*w:case 59:case 0:switch(y){case 0:case 125:h=0;case 59+u:S==-1&&(p=U(p,/\f/g,"")),E>0&&(L(p)-l||w===0&&b===47)&&B(E>32?He(p+";",i,a,l-1,m):He(U(p," ","")+";",i,a,l-2,m),m);break;case 59:p+=";";default:if(B(A=Ge(p,e,a,g,u,o,s,M,T=[],R=[],l,n),n),y===123)if(u===0)yt(p,e,A,A,T,n,l,s,R);else{switch(d){case 99:if(k(p,3)===110)break;case 108:if(k(p,2)===97)break;default:u=0;case 100:case 109:case 115:}u?yt(t,A,A,i&&B(Ge(t,A,A,0,0,o,s,M,o,T=[],l,R),R),o,R,l,s,i?T:R):yt(p,A,A,A,[""],R,0,s,R)}}g=u=E=0,w=S=1,M=p="",l=c;break;case 58:l=1+L(p),E=b;default:if(w<1){if(y==123)--w;else if(y==125&&w++==0&&Ie()==125)continue}switch(p+=et(y),y*w){case 38:S=u>0?1:(p+="\f",-1);break;case 44:s[g++]=(L(p)-1)*S,S=1;break;case 64:I()===45&&(p+=Dt(v())),d=I(),u=l=L(M=p+=Ve(at())),y++;break;case 45:b===45&&L(p)==2&&(w=0)}}return n}r(yt,"parse");function Ge(t,e,a,i,o,n,c,s,m,g,u,l){for(var d=o-1,E=o===0?n:[""],b=gt(E),w=0,h=0,S=0;w<i;++w)for(var y=0,M=P(t,d+1,d=Ct(h=c[w])),T=t;y<b;++y)(T=dt(h>0?E[y]+" "+M:U(M,/&\f/g,E[y])))&&(m[S++]=T);return lt(t,e,a,o===0?ct:s,m,g,u,l)}r(Ge,"ruleset");function co(t,e,a,i){return lt(t,e,a,N,et(Pe()),P(t,2,-2),0,i)}r(co,"comment");function He(t,e,a,i,o){return lt(t,e,a,mt,P(t,0,i),P(t,i+1,-1),i,o)}r(He,"declaration");function xt(t,e){for(var a="",i=0;i<t.length;i++)a+=e(t[i],i,t,e)||"";return a}r(xt,"serialize");function Ue(t,e,a,i){switch(t.type){case pt:if(t.children.length)break;case Ce:case Te:case mt:return t.return=t.return||t.value;case N:return"";case rt:return t.return=t.value+"{"+xt(t.children,i)+"}";case ct:if(!L(t.value=t.props.join(",")))return""}return L(a=xt(t.children,i))?t.return=t.value+"{"+a+"}":""}r(Ue,"stringify");function Be(t){var e=gt(t);return function(a,i,o,n){for(var c="",s=0;s<e;s++)c+=t[s](a,i,o,n)||"";return c}}r(Be,"middleware");var mo="graphics-document document";function Ye(t,e){t.attr("role",mo),e!==""&&t.attr("aria-roledescription",e)}r(Ye,"setA11yDiagramInfo");function qe(t,e,a,i){if(t.insert!==void 0){if(a){let o=`chart-desc-${i}`;t.attr("aria-describedby",o),t.insert("desc",":first-child").attr("id",o).text(a)}if(e){let o=`chart-title-${i}`;t.attr("aria-labelledby",o),t.insert("title",":first-child").attr("id",o).text(e)}}}r(qe,"addSVGa11yTitleDescription");var V=class t{constructor(e,a,i,o,n){this.type=e;this.text=a;this.db=i;this.parser=o;this.renderer=n}static{r(this,"Diagram")}static async fromText(e,a={}){let i=typeof e=="string"?{raw:e,cleaned:e}:e,o=F(),n=G(i.cleaned,o);try{J(n)}catch{let d=qt(n);if(!d)throw new Yt(`Diagram ${n} not found.`);let{id:E,diagram:b}=await d();z(E,b)}let{db:c,parser:s,renderer:m,init:g}=J(n);s.parser&&(s.parser.yy=c),c.clear?.(),g?.(o),a.title&&c.setDiagramTitle?.(a.title);let u=i.cleaned;if(c.preserveCommentsWhenParsing&&i.withComments){let d=o.maxTextSize??Pt.maxTextSize;i.withComments.length>d?f.warn(`Comment-preserving source exceeds maxTextSize (${i.withComments.length} > ${d}); parsing the comment-stripped text instead. Reported source positions will not account for comment lines.`):u=i.withComments}let l=Jt(u)+`
`;return i.frontmatterLineOffset&&c.setFrontmatterLineOffset?.(i.frontmatterLineOffset),await s.parse(l),new t(n,l,c,s,m)}async render(e,a){await this.renderer.draw(this.text,e,a,this)}getParser(){return this.parser}getType(){return this.type}};var Xe=[];var We=r(()=>{Xe.forEach(t=>{t()}),Xe=[]},"attachFunctions");var Ke=r(t=>t.replace(/^\s*%%(?!{)[^\n]+\n?/gm,"").trimStart(),"cleanupComments");function Qe(t){let e=Bt(t);if(!e)return{text:t,metadata:{}};let a=e.indent,i=a?e.body.split(`
`).map(c=>c.startsWith(a)?c.slice(a.length):c).join(`
`):e.body,o=er(i,{schema:rr})??{};o=typeof o=="object"&&!Array.isArray(o)?o:{};let n={};return o.displayMode&&(n.displayMode=o.displayMode.toString()),o.title&&(n.title=o.title.toString()),o.config&&(n.config=o.config),{text:t.slice(e.length),metadata:n}}r(Qe,"extractFrontMatter");var go=r(t=>t.replace(/\r\n?/g,`
`).replace(/<(\w+)([^>]*)>/g,(e,a,i)=>"<"+a+i.replace(/="([^"]*)"/g,"='$1'")+">"),"cleanupText"),fo=r(t=>{let{text:e,metadata:a}=Qe(t),{displayMode:i,title:o,config:n={}}=a;return i&&(n.gantt||(n.gantt={}),n.gantt.displayMode=i),{title:o,config:n,text:e}},"processFrontmatter"),lo=r(t=>{let e=_.detectInit(t)??{},a=_.detectDirective(t,"wrap");return Array.isArray(a)?e.wrap=a.some(({type:i})=>i==="wrap"):a?.type==="wrap"&&(e.wrap=!0),{text:Kt(t),directive:e}},"processDirectives");function Tt(t){let e=t,a=go(t),i=fo(a),o=lo(i.text),n=Zt(i.config,o.directive),c=o.text,s=Ke(c),m=a.length>i.text.length?(a.substring(0,a.length-i.text.length).match(/\n/g)??[]).length:0;return{code:{raw:e,cleaned:s,withComments:c,frontmatterLineOffset:m},title:i.title,config:n}}r(Tt,"preprocessDiagram");function Ze(t){let e=new TextEncoder().encode(t),a=Array.from(e,i=>String.fromCodePoint(i)).join("");return btoa(a)}r(Ze,"toBase64");var uo=5e4,Do="graph TB;a[Maximum text size in diagram exceeded];style a fill:#faa",yo="sandbox",xo="loose",ho="http://www.w3.org/2000/svg",Eo="http://www.w3.org/1999/xlink",wo="http://www.w3.org/1999/xhtml",Lo="100%",bo="100%",So="border:0;margin:0;",Mo="margin:0",Ao="allow-top-navigation-by-user-activation allow-popups",Co='The "iframe" tag is not supported by your browser.',vo=["foreignobject"],To=["dominant-baseline"];function ea(t){let e=Tt(t);K();let a;try{a=G(e.code.cleaned,F())}catch{a=void 0}return nt(a),Vt(e.config??{}),e}r(ea,"processAndSetConfigs");async function Ro(t,e){H();try{let{code:a,config:i}=ea(t);return{diagramType:(await V.fromText(a)).type,config:i}}catch(a){if(e?.suppressErrors)return!1;throw a}finally{nt(void 0)}}r(Ro,"parse");var Je=r((t,e,a=[])=>{let i=It(`{ ${a.join(" !important; ")} !important; }`);return`.${t} ${e} ${i}`},"cssImportantStyles"),jo=r((t,e=new Map)=>{let a=new CSSStyleSheet;if(t.fontFamily!==void 0&&a.insertRule(`:root { --mermaid-font-family: ${t.fontFamily}}`,a.cssRules.length),t.altFontFamily!==void 0&&a.insertRule(`:root { --mermaid-alt-font-family: ${t.altFontFamily}}`,a.cssRules.length),e instanceof Map){let s=Gt(t)?["> *","span"]:["rect","polygon","ellipse","circle","path"];e.forEach(m=>{bt(m.styles)||s.forEach(g=>{a.insertRule(Je(m.id,g,m.styles),a.cssRules.length)}),bt(m.textStyles)||a.insertRule(Je(m.id,"tspan",(m?.textStyles||[]).map(g=>g.replace("color","fill"))),a.cssRules.length)})}let i="";if(t.themeCSS!==void 0)if(typeof a.replaceSync=="function"){let o=new CSSStyleSheet;o.replaceSync(t.themeCSS),i=Lt(o)+`
`}else i+=`${t.themeCSS}
`;return i+Lt(a)},"createCssStyles"),ko=r((t,e)=>xt(Ne(`${t}{${e}}`),Be([r(function(i,o,n,c){if(i.type==="rule"&&Array.isArray(i.props)){if(i.parent&&i.parent.type===rt)return;i.props=i.props.map(s=>s===t&&Array.isArray(i.children)&&i.children.every(g=>g.type!=="decl"?!1:new Set(["font-family","font-size","fill"]).has(g.props))||(s.startsWith(`${t} `)||s.startsWith(`${t}>`))&&!s.startsWith(`${t} ||`)?s:`${t} ${s}`)}else i.type.startsWith("@")&&([...[Ae,ve,pt,Re,"@container","@starting-style"],rt].includes(i.type)||(f.warn(`Removing unsupported at-rule ${i.type} from CSS`),i.type=N))},"addNamespace"),Ue])),"compileCSS"),Po=r((t,e,a,i)=>{let o=jo(t,a),n=Wt(e,o,{...t.themeVariables,theme:t.theme,look:t.look},i);return ko(i,n)},"createUserStyles"),Io=r((t="",e,a)=>{let i=t;return!a&&!e&&(i=i.replace(/marker-end="url\([\d+./:=?A-Za-z-]*?#/g,'marker-end="url(#')),i=tr(i),i=i.replace(/<br>/g,"<br/>"),i},"cleanUpSvgCode"),Oo=r((t="",e)=>{let a=e?.viewBox?.baseVal?.height?e.viewBox.baseVal.height+"px":bo,i=Ze(`<body style="${Mo}">${t}</body>`);return`<iframe style="width:${Lo};height:${a};${So}" src="data:text/html;charset=UTF-8;base64,${i}" sandbox="${Ao}">
${Co}
</iframe>`},"putIntoIFrame"),ta=r((t,e,a,i,o)=>{let n=t.append("div");n.attr("id",a),i&&n.attr("style",i);let c=n.append("svg").attr("id",e).attr("width","100%").attr("xmlns",ho);return o&&c.attr("xmlns:xlink",o),c.append("g"),t},"appendDivSvgG");function ra(t,e){return t.append("iframe").attr("id",e).attr("style","width: 100%; height: 100%;").attr("sandbox","")}r(ra,"sandboxedIframe");var Fo=r((t,e,a,i)=>{t.getElementById(e)?.remove(),t.getElementById(a)?.remove(),t.getElementById(i)?.remove()},"removeExistingElements"),$o=r(async function(t,e,a){H();let i=ea(e),o=i.code;e=o.cleaned;let n=F();f.debug(n),e.length>(n?.maxTextSize??uo)&&(e=Do,o={raw:e,cleaned:e});let c=`#${t}`,s="i"+t,m="#"+s,g="d"+t,u="#"+g,l=r(()=>{let W=j(E?m:u).node();W&&"remove"in W&&W.remove()},"removeTempElements"),d=j(document.body),E=n.securityLevel===yo,b=n.securityLevel===xo,w=n.fontFamily;if(a!==void 0){if(a&&(a.innerHTML=""),E){let x=ra(j(a),s);d=j(x.nodes()[0].contentDocument.body),d.node().style.margin="0"}else d=j(a);ta(d,t,g,`font-family: ${w}`,Eo)}else{if(Fo(document,t,g,s),E){let x=ra(j(document.body),s);d=j(x.nodes()[0].contentDocument.body),d.node().style.margin="0"}else d=j("body");ta(d,t,g)}let h,S;try{h=await V.fromText(o,{title:i.title})}catch(x){if(n.suppressErrorRendering)throw l(),x;h=await V.fromText("error"),S=x,h.db.setErrorMessage?.(Qt(x))}let y=d.select(u).node(),M=h.type,T=y.firstChild,R=T.firstChild,A=h.renderer.getClasses?.(e,h),p=Po(n,M,A,c),jt=document.createElement("style");jt.innerHTML=p,T.insertBefore(jt,R);try{await h.renderer.draw(e,t,"12.1.0",h)}catch(x){throw n.suppressErrorRendering?l():Ir.draw(e,t,"12.1.0"),x}let ca=d.select(`${u} svg`),ma=h.db.getAccTitle?.(),pa=h.db.getAccDescription?.();Go(M,ca,ma,pa);let da=r(()=>{d.select(`[id="${t}"]`).selectAll("foreignobject > *").attr("xmlns",wo);let x=d.select(u).node().innerHTML;if(f.debug("config.arrowMarkerAbsolute",n.arrowMarkerAbsolute),x=Io(x,E,Ot(n.arrowMarkerAbsolute)),E){let W=d.select(u+" svg").node();x=Oo(x,W)}else b||(x=Ht.sanitize(x,{ADD_TAGS:vo,ADD_ATTR:To,HTML_INTEGRATION_POINTS:{foreignobject:!0}}));return We(),x},"serializeSvg")();if(S)throw S;return l(),{diagramType:M,svg:da,bindFunctions:h.db.bindFunctions}},"renderDiagram"),zo=r(async function(t,e,a){try{return await $o(t,e,a)}finally{nt(void 0)}},"render");function _o(t={}){let e=kt({},t);e?.fontFamily&&!e.themeVariables?.fontFamily&&(e.themeVariables||(e.themeVariables={}),e.themeVariables.fontFamily=e.fontFamily),$t(e);let a=ot.theme;e?.theme&&Object.hasOwn(it,e.theme)?e.themeVariables=it[e.theme].getThemeVariables(e.themeVariables):e&&(e.theme!=null&&e.theme!=="null"&&(e.theme=a),e.themeVariables=it[a].getThemeVariables(e.themeVariables));let i=typeof e=="object"?Ft(e):wt();Et(i.logLevel),H()}r(_o,"initialize");var Vo=r((t,e={})=>{let{code:a}=Tt(t);return V.fromText(a,e)},"getDiagramFromText");function Go(t,e,a,i){Ye(e,t),qe(e,a,i,e.attr("id"))}r(Go,"addA11yInfo");var $=Object.freeze({render:zo,parse:Ro,getDiagramFromText:Vo,initialize:_o,getConfig:F,setConfig:_t,getSiteConfig:wt,updateSiteConfig:zt,reset:r(()=>{K()},"reset"),globalReset:r(()=>{K(ot)},"globalReset"),defaultConfig:ot});Et(F().logLevel);K(F());var Ho=r((t,e,a)=>{f.warn(t),St(t)?(a&&a(t.str,t.hash),e.push({...t,message:t.str,error:t})):(a&&a(t),t instanceof Error&&e.push({str:t.message,message:t.message,hash:t.name,error:t}))},"handleError"),aa=r(async function(t={querySelector:".mermaid"}){try{await No(t)}catch(e){if(St(e)&&f.error(e.str),O.parseError&&O.parseError(e),!t.suppressErrors)throw f.error("Use the suppressErrors option to suppress these errors"),e}},"run"),No=r(async function({postRenderCallback:t,querySelector:e,nodes:a}={querySelector:".mermaid"}){let i=$.getConfig();f.debug(`${t?"":"No "}Callback function found`);let o;if(a)o=a;else if(e)o=document.querySelectorAll(e);else throw new Error("Nodes and querySelector are both undefined");f.debug(`Found ${o.length} diagrams`),i?.startOnLoad!==void 0&&(f.debug("Start On Load: "+i?.startOnLoad),$.updateSiteConfig({startOnLoad:i?.startOnLoad}));let n=new _.InitIDGenerator(i.deterministicIds,i.deterministicIDSeed),c,s=[];for(let m of Array.from(o)){f.info("Rendering diagram: "+m.id);if(m.getAttribute("data-processed"))continue;m.setAttribute("data-processed","true");let g=`mermaid-${n.next()}`;c=m.innerHTML,c=Ut(_.entityDecode(c)).trim().replace(/<br\s*\/?>/gi,"<br/>");let u=_.detectInit(c);u&&f.debug("Detected early reinit: ",u);try{let{svg:l,bindFunctions:d}=await sa(g,c,m);m.innerHTML=l,t&&await t(g),d&&d(m)}catch(l){Ho(l,s,O.parseError)}}if(s.length>0)throw s[0]},"runThrowsErrors"),ia=r(function(t){$.initialize(t)},"initialize"),Uo=r(async function(t,e,a){f.warn("mermaid.init is deprecated. Please use run instead."),t&&ia(t);let i={postRenderCallback:a,querySelector:".mermaid"};typeof e=="string"?i.querySelector=e:e&&(e instanceof HTMLElement?i.nodes=[e]:i.nodes=e),await aa(i)},"init"),Bo=r(async(t,{lazyLoad:e=!0}={})=>{H(),Z(...t),e===!1&&await Me()},"registerExternalDiagrams"),oa=r(function(){if(O.startOnLoad){let{startOnLoad:t}=$.getConfig();t&&O.run().catch(e=>f.error("Mermaid failed to initialize",e))}},"contentLoaded");if(typeof document<"u"){window.addEventListener("load",oa,!1)}var Yo=r(function(t){O.parseError=t},"setParseErrorHandler"),ht=[],Rt=!1,na=r(async()=>{if(!Rt){for(Rt=!0;ht.length>0;){let t=ht.shift();if(t)try{await t()}catch(e){f.error("Error executing queue",e)}}Rt=!1}},"executeQueue"),qo=r(async(t,e)=>new Promise((a,i)=>{let o=r(()=>new Promise((n,c)=>{$.parse(t,e).then(s=>{n(s),a(s)},s=>{f.error("Error parsing",s),O.parseError?.(s),c(s),i(s)})}),"performCall");ht.push(o),na().catch(i)}),"parse"),sa=r((t,e,a)=>new Promise((i,o)=>{let n=r(()=>new Promise((c,s)=>{$.render(t,e,a).then(m=>{c(m),i(m)},m=>{f.error("Error parsing",m),O.parseError?.(m),s(m),o(m)})}),"performCall");ht.push(n),na().catch(o)}),"render"),Xo=r(()=>Object.keys(Q).map(t=>({id:t})),"getRegisteredDiagramsMetadata"),O={startOnLoad:!0,mermaidAPI:$,parse:qo,render:sa,init:Uo,run:aa,registerExternalDiagrams:Bo,registerLayoutLoaders:ar,initialize:ia,parseError:void 0,contentLoaded:oa,setParseErrorHandler:Yo,detectType:G,registerIconPacks:Nt,getRegisteredDiagramsMetadata:Xo},Nm=O;export{Nm as default};
/*! Check if previously processed */
/*!
* Wait for document loaded before starting the execution
*/