import{arasN,asasv,atasf,auasb,avasE}from"./mermaid.core-Bp72wBaC.js";import{aasj,casP,kas_,fasg,d,iasl,vasp,rasD}from"./_baseUniq-Blm_akxr.js";varw=N(function(o){returnj(P(o,1,v,!0))}),F="\0",a="\0",O="";classL{constructor(e={}){this._isDirected=Object.prototype.hasOwnProperty.call(e,"directed")?e.directed:!0,this._isMultigraph=Object.prototype.hasOwnProperty.call(e,"multigraph")?e.multigraph:!1,this._isCompound=Object.prototype.hasOwnProperty.call(e,"compound")?e.compound:!1,this._label=void0,this._defaultNodeLabelFn=f(void0),this._defaultEdgeLabelFn=f(void0),this._nodes={},this._isCompound&&(this._parent={},this._children={},this._children[a]={}),this._in={},this._preds={},this._out={},this._sucs={},this._edgeObjs={},this._edgeLabels={}}isDirected(){returnthis._isDirected}isMultigraph(){returnthis._isMultigraph}isCompound(){returnthis._isCompound}setGraph(e){returnthis._label=e,this}graph(){returnthis._label}setDefaultNodeLabel(e){returnb(e)||(e=f(e)),this._defaultNodeLabelFn=e,this}nodeCount(){returnthis._nodeCount}nodes(){return_(this._nodes)}sources(){vare=this;returng(this.nodes(),function(t){returnE(e._in[t])})}sinks(){vare=this;returng(this.nodes(),function(t){returnE(e._out[t])})}setNodes(e,t){vars=arguments,i=this;returnd(e,function(r){s.length>1?i.setNode(r,t):i.setNode(r)}),this}setNode(e,t){returnObject.prototype.hasOwnProperty.call(this._nodes,e)?(arguments.length>1&&(this._nodes[e]=t),this):(this._nodes[e]=arguments.length>1?t:this._defaultNodeLabelFn(e),this._isCompound&&(this._parent[e]=a,this._children[e]={},this._children[a][e]=!0),this._in[e]={},this._preds[e]={},this._out[e]={},this._sucs[e]={},++this._nodeCount,this)}node(e){returnthis._nodes[e]}hasNode(e){returnObject.prototype.hasOwnProperty.call(this._nodes,e)}removeNode(e){if(Object.prototype.hasOwnProperty.call(this._nodes,e)){vart=s=>this.removeEdge(this._edgeObjs[s]);deletethis._nodes[e],this._isCompound&&(this._removeFromParentsChildList(e),deletethis._parent[e],d(this.children(e),s=>{this.setParent(s)}),deletethis._children[e]),d(_(this._in[e]),t),deletethis._in[e],deletethis._preds[e],d(_(this._out[e]),t),deletethis._out[e],deletethis._sucs[e],--this._nodeCount}returnthis}setParent(e,t){if(!this._isCompound)thrownewError("Cannot set parent in a non-compound graph");if(l(t))t=a;else{t+="";for(vars=t;!l(s);s=this.parent(s))if(s===e)thrownewError("Setting "+t+" as parent of "+e+" would create a cycle");this.setNode(t)}returnthis.setNode(e),this._removeFromParentsChildList(e),this._parent[e]=t,this._children[t][e]=!0,this}_removeFromParentsChildList(e){deletethis._children[this._parent[e]][e]}parent(e){if(this._isCompound){vart=this._parent[e];if(t!==a)returnt}}children(e){if(l(e)&&(e=a),this._isCompound){vart=this._children[e];if(t)return_(t)}else{if(e===a)returnthis.nodes();if(this.hasNode(e))return[]}}predecessors(e){vart=this._preds[e];if(t)return_(t)}successors(e){vart=this._sucs[e];if(t)return_(t)}neighbors(e){vart=this.predecessors(e);if(t)returnw(t,this.successors(e))}isLeaf(e){vart;returnthis.isDirected()?t=this.successors(e):t=this.neighbors(e),t.length===0}filterNodes(e){vart=newthis.constructor({directed:this._isDirected,multigraph:this._isMultigraph,compound:this._isCompound});t.setGraph(this.graph());vars=this;d(this._nodes,function(n,h){e(h)&&t.setNode(h,n)}),d(this._edgeObjs,function(n){t.hasNode(n.v)&&t.hasNode(n.w)&&t.setEdge(n,s.edge(n))});vari={};functionr(n){varh=s.parent(n);returnh===void0||t.hasNode(h)?(i[n]=h,h):hini?i[h]:r(h)}returnthis._isCompound&&d(t.nodes(),function(n){t.setParent(n,r(n))}),t}setDefaultEdgeLabel(e){returnb(e)||(e=f(e)),this._defaultEdgeLabelFn=e,this}edgeCount(){returnthis._edgeCount}edges(){returnp(this._edgeObjs)}setPath(e,t){vars=this,i=arguments;returnD(e,function(r,n){returni.length>1?s.setEdge(r,n,t):s.setEdge(r,n),n}),this}setEdge(){vare,t,s,i,r=!1,n=arguments[0];typeofn=="object"&&n!==null&&"v"inn?(e=n.v,t=n.w,s=n.name,arguments.length===2&&(i=arguments[1],r=!0)):(e=n,t=arguments[1],s=argume