import{c}from"./chunk-MGPXXO54.mjs";import{i as D,j as P,k as O,v as E,x as l}from"./chunk-7HHNZHC5.mjs";import"./chunk-LT56AXER.mjs";import"./chunk-6WMSPMWD.mjs";import{a as i,c as o}from"./chunk-RKGGAEC6.mjs";import{dedent as k}from"ts-dedent";var z=i((e,r,a)=>{o.warn(e),E(e)?(a&&a(e.str,e.hash),r.push({...e,message:e.str,error:e})):(a&&a(e),e instanceof Error&&r.push({str:e.message,message:e.message,hash:e.name,error:e}))},"handleError"),b=i(async function(e={querySelector:".mermaid"}){try{await C(e)}catch(r){if(E(r)&&o.error(r.str),f.parseError&&f.parseError(r),!e.suppressErrors)throw o.error("Use the suppressErrors option to suppress these errors"),r}},"run"),C=i(async function({postRenderCallback:e,querySelector:r,nodes:a}={querySelector:".mermaid"}){let t=c.getConfig();o.debug(`${e?"":"No "}Callback function found`);let d;if(a)d=a;else if(r)d=document.querySelectorAll(r);else throw new Error("Nodes and querySelector are both undefined");o.debug(`Found ${d.length} diagrams`),t?.startOnLoad!==void 0&&(o.debug("Start On Load: "+t?.startOnLoad),c.updateSiteConfig({startOnLoad:t?.startOnLoad}));let u=new l.initIdGenerator(t.deterministicIds,t.deterministicIDSeed),m,s=[];for(let n of Array.from(d)){o.info("Rendering diagram: "+n.id);if(n.getAttribute("data-processed"))continue;n.setAttribute("data-processed","true");let h=`mermaid-${u.next()}`;m=n.innerHTML,m=k(l.entityDecode(m)).trim().replace(/
/gi,"
");let w=l.detectInit(m);w&&o.debug("Detected early reinit: ",w);try{let{svg:g,bindFunctions:L}=await T(h,m,n);n.innerHTML=g,e&&await e(h),L&&L(n)}catch(g){z(g,s,f.parseError)}}if(s.length>0)throw s[0]},"runThrowsErrors"),x=i(function(e){c.initialize(e)},"initialize"),H=i(async function(e,r,a){o.warn("mermaid.init is deprecated. Please use run instead."),e&&x(e);let t={postRenderCallback:a,querySelector:".mermaid"};typeof r=="string"?t.querySelector=r:r&&(r instanceof HTMLElement?t.nodes=[r]:t.nodes=r),await b(t)},"init"),A=i(async(e,{lazyLoad:r=!0}={})=>{P(...e),r===!1&&await O()},"registerExternalDiagrams"),M=i(function(){if(f.startOnLoad){let{startOnLoad:e}=c.getConfig();e&&f.run().catch(r=>o.error("Mermaid failed to initialize",r))}},"contentLoaded");if(typeof document<"u"){window.addEventListener("load",M,!1),window.addEventListener("error",({message:e})=>{if(e.includes("mermaid.initialize is not a function")){let r=i(()=>console.error(`------------------------------
Breaking change in Mermaid v11
------------------------------
Use mermaid.default.initialize() instead of mermaid.initialize()
Read more: https://github.com/mermaid-js/mermaid/releases/tag/v11.0.0
`),"notify");r(),setTimeout(r,1e3)}})}var S=i(function(e){f.parseError=e},"setParseErrorHandler"),p=[],y=!1,R=i(async()=>{if(!y){for(y=!0;p.length>0;){let e=p.shift();if(e)try{await e()}catch(r){o.error("Error executing queue",r)}}y=!1}},"executeQueue"),q=i(async(e,r)=>new Promise((a,t)=>{let d=i(()=>new Promise((u,m)=>{c.parse(e,r).then(s=>{u(s),a(s)},s=>{o.error("Error parsing",s),f.parseError?.(s),m(s),t(s)})}),"performCall");p.push(d),R().catch(t)}),"parse"),T=i((e,r,a)=>new Promise((t,d)=>{let u=i(()=>new Promise((m,s)=>{c.render(e,r,a).then(n=>{m(n),t(n)},n=>{o.error("Error parsing",n),f.parseError?.(n),s(n),d(n)})}),"performCall");p.push(u),R().catch(d)}),"render"),f={startOnLoad:!0,mermaidAPI:c,parse:q,render:T,init:H,run:b,registerExternalDiagrams:A,initialize:x,parseError:void 0,contentLoaded:M,setParseErrorHandler:S,detectType:D},j=f;export{j as default};
/*! Check if previously processed */
/*!
* Wait for document loaded before starting the execution
*/