hugo-book-theme/static/mermaid.min.js

1759 lines
2.9 MiB
JavaScript
Raw Normal View History

2024-02-17 17:36:33 +01:00
(function(BL,Z0){typeof exports=="object"&&typeof module<"u"?module.exports=Z0():typeof define=="function"&&define.amd?define(Z0):(BL=typeof globalThis<"u"?globalThis:BL||self,BL.mermaid=Z0())})(this,function(){var mVt,vVt;"use strict";function BL(i){for(var a=[],f=1;f<arguments.length;f++)a[f-1]=arguments[f];var g=Array.from(typeof i=="string"?[i]:i);g[g.length-1]=g[g.length-1].replace(/\r?\n([\t ]*)$/,"");var w=g.reduce(function(E,S){var _=S.match(/\n([\t ]+|(?!\s).)/g);return _?E.concat(_.map(function(M){var F,R;return(R=(F=M.match(/[\t ]/g))===null||F===void 0?void 0:F.length)!==null&&R!==void 0?R:0})):E},[]);if(w.length){var v=new RegExp(`
[ ]{`+Math.min.apply(Math,w)+"}","g");g=g.map(function(E){return E.replace(v,`
`)})}g[0]=g[0].replace(/^\r?\n/,"");var b=g[0];return a.forEach(function(E,S){var _=b.match(/(?:^|\n)( *)$/),M=_?_[1]:"",F=E;typeof E=="string"&&E.includes(`
`)&&(F=String(E).split(`
`).map(function(R,B){return B===0?R:""+M+R}).join(`
`)),b+=F+g[S+1]}),b}var Z0=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function e9(i){return i&&i.__esModule&&Object.prototype.hasOwnProperty.call(i,"default")?i.default:i}var yOt={exports:{}};(function(i,a){(function(f,g){i.exports=g()})(Z0,function(){var f=1e3,g=6e4,w=36e5,v="millisecond",b="second",E="minute",S="hour",_="day",M="week",F="month",R="quarter",B="year",z="date",Y="Invalid Date",nt=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,ot=/\[([^\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,ft={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),ordinal:function(V){var Ot=["th","st","nd","rd"],It=V%100;return"["+V+(Ot[(It-20)%10]||Ot[It]||Ot[0])+"]"}},wt=function(V,Ot,It){var jt=String(V);return!jt||jt.length>=Ot?V:""+Array(Ot+1-jt.length).join(It)+V},mt={s:wt,z:function(V){var Ot=-V.utcOffset(),It=Math.abs(Ot),jt=Math.floor(It/60),xt=It%60;return(Ot<=0?"+":"-")+wt(jt,2,"0")+":"+wt(xt,2,"0")},m:function V(Ot,It){if(Ot.date()<It.date())return-V(It,Ot);var jt=12*(It.year()-Ot.year())+(It.month()-Ot.month()),xt=Ot.clone().add(jt,F),Ft=It-xt<0,Ct=Ot.clone().add(jt+(Ft?-1:1),F);return+(-(jt+(It-xt)/(Ft?xt-Ct:Ct-xt))||0)},a:function(V){return V<0?Math.ceil(V)||0:Math.floor(V)},p:function(V){return{M:F,y:B,w:M,d:_,D:z,h:S,m:E,s:b,ms:v,Q:R}[V]||String(V||"").toLowerCase().replace(/s$/,"")},u:function(V){return V===void 0}},ct="en",rt={};rt[ct]=ft;var it=function(V){return V instanceof K},gt=function V(Ot,It,jt){var xt;if(!Ot)return ct;if(typeof Ot=="string"){var Ft=Ot.toLowerCase();rt[Ft]&&(xt=Ft),It&&(rt[Ft]=It,xt=Ft);var Ct=Ot.split("-");if(!xt&&Ct.length>1)return V(Ct[0])}else{var kt=Ot.name;rt[kt]=Ot,xt=kt}return!jt&&xt&&(ct=xt),xt||!jt&&ct},Q=function(V,Ot){if(it(V))return V.clone();var It=typeof Ot=="object"?Ot:{};return It.date=V,It.args=arguments,new K(It)},dt=mt;dt.l=gt,dt.i=it,dt.w=function(V,Ot){return Q(V,{locale:Ot.$L,utc:Ot.$u,x:Ot.$x,$offset:Ot.$offset})};var K=function(){function V(It){this.$L=gt(It.locale,null,!0),this.parse(It)}var Ot=V.prototype;return Ot.parse=function(It){this.$d=function(jt){var xt=jt.date,Ft=jt.utc;if(xt===null)return new Date(NaN);if(dt.u(xt))return new Date;if(xt instanceof Date)return new Date(xt);if(typeof xt=="string"&&!/Z$/i.test(xt)){var Ct=xt.match(nt);if(Ct){var kt=Ct[2]-1||0,Gt=(Ct[7]||"0").substring(0,3);return Ft?new Date(Date.UTC(Ct[1],kt,Ct[3]||1,Ct[4]||0,Ct[5]||0,Ct[6]||0,Gt)):new Date(Ct[1],kt,Ct[3]||1,Ct[4]||0,Ct[5]||0,Ct[6]||0,Gt)}}return new Date(xt)}(It),this.$x=It.x||{},this.init()},Ot.init=function(){var It=this.$d;this.$y=It.getFullYear(),this.$M=It.getMonth(),this.$D=It.getDate(),this.$W=It.getDay(),this.$H=It.getHours(),this.$m=It.getMinutes(),this.$s=It.getSeconds(),this.$ms=It.getMilliseconds()},Ot.$utils=function(){return dt},Ot.isValid=function(){return this.$d.toString()!==Y},Ot.isSame=function(It,jt){var xt=Q(It);return this.startOf(jt)<=xt&&xt<=this.endOf(jt)},Ot.isAfter=function(It,jt){return Q(It)<this.startOf(jt)},Ot.isBefore=function(It,jt){return this.endOf(jt)<Q(It)},Ot.$g=function(It,jt,xt){return dt.u(It)?this[jt]:this.set(xt,It)},Ot.unix=function(){return Math.floor(this.valueOf()/1e3)},Ot.valueOf=function(){return this.$d.getTime()},Ot.startOf=function(It,jt){var xt=this,Ft=!!dt.u(jt)||jt,Ct=dt.p(It),kt=function(sn,be){var Ne=dt.w(xt.$u?Date.UTC(xt.$y,be,sn):new Date(xt.$y,be,sn),xt);return Ft?Ne:Ne.endOf(_)},Gt=function(sn,be){return dt.w(xt.toDate()[sn].apply(xt.toDate("s"),(Ft?[0,0,0,0]:[23,59,59,999]).slice(be)),xt)},Fe=this.$W,Mt=this.$M,pn=this.$D,Ae="set"+(this.$u?"UTC":"");switch(Ct){case B:return Ft?kt(1,0):kt(31,11);case F:return Ft?kt(1,Mt):kt(0,Mt+1);case M:var ye=this.$locale().weekStart||0,tn=(Fe<ye?Fe+7:Fe)-ye;return kt(Ft?pn-tn:pn+(6-tn),Mt);case _:case z:return Gt(Ae+"Hours",0);case S:return Gt(Ae+"Minutes",1);case E:return Gt(Ae+"Seconds",2);c
`+Zc),Ne&&(Zc=Hv(Zc,K," "),Zc=Hv(Zc,yt," "),Zc=Hv(Zc,V," ")),wt&&Br?wt.createHTML(Zc):Zc},a.setConfig=function(Gi){Ic(Gi),_e=!0},a.clearConfig=function(){d1=null,_e=!1},a.isValidAttribute=function(Gi,cn,Nr){d1||Ic({});const Si=Zs(Gi),vc=Zs(cn);return w0(Si,vc,Nr)},a.addHook=function(Gi,cn){typeof cn=="function"&&(dt[Gi]=dt[Gi]||[],vF(dt[Gi],cn))},a.removeHook=function(Gi){if(dt[Gi])return EPt(dt[Gi])},a.removeHooks=function(Gi){dt[Gi]&&(dt[Gi]=[])},a.removeAllHooks=function(){dt={}},a}var QL=MPt();const xF=/<br\s*\/?>/gi,tMe=i=>i?NPt(i).replace(/\\n/g,"#br#").split("#br#"):[""],eMe=(()=>{let i=!1;return()=>{i||(nMe(),i=!0)}})();function nMe(){const i="data-temp-href-target";QL.addHook("beforeSanitizeAttributes",a=>{a.tagName==="A"&&a.hasAttribute("target")&&a.setAttribute(i,a.getAttribute("target")||"")}),QL.addHook("afterSanitizeAttributes",a=>{a.tagName==="A"&&a.hasAttribute(i)&&(a.setAttribute("target",a.getAttribute(i)||""),a.removeAttribute(i),a.getAttribute("target")==="_blank"&&a.setAttribute("rel","noopener"))})}const IPt=i=>(eMe(),QL.sanitize(i)),OPt=(i,a)=>{var f;if(((f=a.flowchart)==null?void 0:f.htmlLabels)!==!1){const g=a.securityLevel;g==="antiscript"||g==="strict"?i=IPt(i):g!=="loose"&&(i=NPt(i),i=i.replace(/</g,"&lt;").replace(/>/g,"&gt;"),i=i.replace(/=/g,"&equals;"),i=aMe(i))}return i},Ef=(i,a)=>i&&(a.dompurifyConfig?i=QL.sanitize(OPt(i,a),a.dompurifyConfig).toString():i=QL.sanitize(OPt(i,a),{FORBID_TAGS:["style"]}).toString(),i),rMe=(i,a)=>typeof i=="string"?Ef(i,a):i.flat().map(f=>Ef(f,a)),iMe=i=>xF.test(i),sMe=i=>i.split(xF),aMe=i=>i.replace(/#br#/g,"<br/>"),NPt=i=>i.replace(xF,"#br#"),oMe=i=>{let a="";return i&&(a=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,a=a.replaceAll(/\(/g,"\\("),a=a.replaceAll(/\)/g,"\\)")),a},j1=i=>!(i===!1||["false","null","0"].includes(String(i).trim().toLowerCase())),cMe=function(...i){const a=i.filter(f=>!isNaN(f));return Math.max(...a)},uMe=function(...i){const a=i.filter(f=>!isNaN(f));return Math.min(...a)},kF=function(i){const a=i.split(/(,)/),f=[];for(let g=0;g<a.length;g++){let w=a[g];if(w===","&&g>0&&g+1<a.length){const v=a[g-1],b=a[g+1];lMe(v,b)&&(w=v+","+b,g++,f.pop())}f.push(hMe(w))}return f.join("")},fgt=(i,a)=>Math.max(0,i.split(a).length-1),lMe=(i,a)=>{const f=fgt(i,"~"),g=fgt(a,"~");return f===1&&g===1},hMe=i=>{const a=fgt(i,"~");let f=!1;if(a<=1)return i;a%2!==0&&i.startsWith("~")&&(i=i.substring(1),f=!0);const g=[...i];let w=g.indexOf("~"),v=g.lastIndexOf("~");for(;w!==-1&&v!==-1&&w!==v;)g[w]="<",g[v]=">",w=g.indexOf("~"),v=g.lastIndexOf("~");return f&&g.unshift("~"),g.join("")},ei={getRows:tMe,sanitizeText:Ef,sanitizeTextOrArray:rMe,hasBreaks:iMe,splitBreaks:sMe,lineBreakRegex:xF,removeScript:IPt,getUrl:oMe,evaluate:j1,getMax:cMe,getMin:uMe},qW={min:{r:0,g:0,b:0,s:0,l:0,a:0},max:{r:255,g:255,b:255,h:360,s:100,l:100,a:1},clamp:{r:i=>i>=255?255:i<0?0:i,g:i=>i>=255?255:i<0?0:i,b:i=>i>=255?255:i<0?0:i,h:i=>i%360,s:i=>i>=100?100:i<0?0:i,l:i=>i>=100?100:i<0?0:i,a:i=>i>=1?1:i<0?0:i},toLinear:i=>{const a=i/255;return i>.03928?Math.pow((a+.055)/1.055,2.4):a/12.92},hue2rgb:(i,a,f)=>(f<0&&(f+=1),f>1&&(f-=1),f<1/6?i+(a-i)*6*f:f<1/2?a:f<2/3?i+(a-i)*(2/3-f)*6:i),hsl2rgb:({h:i,s:a,l:f},g)=>{if(!a)return f*2.55;i/=360,a/=100,f/=100;const w=f<.5?f*(1+a):f+a-f*a,v=2*f-w;switch(g){case"r":return qW.hue2rgb(v,w,i+1/3)*255;case"g":return qW.hue2rgb(v,w,i)*255;case"b":return qW.hue2rgb(v,w,i-1/3)*255}},rgb2hsl:({r:i,g:a,b:f},g)=>{i/=255,a/=255,f/=255;const w=Math.max(i,a,f),v=Math.min(i,a,f),b=(w+v)/2;if(g==="l")return b*100;if(w===v)return 0;const E=w-v,S=b>.5?E/(2-w-v):E/(w+v);if(g==="s")return S*100;switch(w){case i:return((a-f)/E+(a<f?6:0))*60;case a:return((f-i)/E+2)*60;case f:return((i-a)/E+4)*60;default:return-1}}},Ia={channel:qW,lang:{clamp:(i,a,f)=>a>f?Math.min(a,Math.max(f,i)):Math.min(f,Math.max(a,i)),round:i=>Math.round(i*1e10)/1e10},unit:{dec2hex:i=>{const a=Math.round(i).toString(16);return a.length>1?a:`0${a}`}}},g8={};for(let i=0;i<=255;i++)g8[i]=Ia.unit.dec2hex(i);const ig={ALL:0,RGB:1,HSL:2};class fMe{con
`);for(const[f,{detector:g}]of Object.entries(JL))if(g(i,a))return f;throw new VPt(`No diagram type detected matching given configuration for text: ${i}`)},UPt=(...i)=>{for(const{id:a,detector:f,loader:g}of i)GPt(a,f,g)},GPt=(i,a,f)=>{JL[i]?Kt.error(`Detector with key ${i} already exists`):JL[i]={detector:a,loader:f},Kt.debug(`Detector with key ${i} added${f?" with loader":""}`)},DMe=i=>JL[i].loader,ggt=(i,a,{depth:f=2,clobber:g=!1}={})=>{const w={depth:f,clobber:g};return Array.isArray(a)&&!Array.isArray(i)?(a.forEach(v=>ggt(i,v,w)),i):Array.isArray(a)&&Array.isArray(i)?(a.forEach(v=>{i.includes(v)||i.push(v)}),i):i===void 0||f<=0?i!=null&&typeof i=="object"&&typeof a=="object"?Object.assign(i,a):a:(a!==void 0&&typeof i=="object"&&typeof a=="object"&&Object.keys(a).forEach(v=>{typeof a[v]=="object"&&(i[v]===void 0||typeof i[v]=="object")?(i[v]===void 0&&(i[v]=Array.isArray(a[v])?[]:{}),i[v]=ggt(i[v],a[v],{depth:f-1,clobber:g})):(g||typeof i[v]!="object"&&typeof a[v]!="object")&&(i[v]=a[v])}),i)},Ld=ggt;var MMe=typeof global=="object"&&global&&global.Object===Object&&global;const KPt=MMe;var IMe=typeof self=="object"&&self&&self.Object===Object&&self,OMe=KPt||IMe||Function("return this")();const Uv=OMe;var NMe=Uv.Symbol;const Yw=NMe;var WPt=Object.prototype,PMe=WPt.hasOwnProperty,FMe=WPt.toString,CF=Yw?Yw.toStringTag:void 0;function BMe(i){var a=PMe.call(i,CF),f=i[CF];try{i[CF]=void 0;var g=!0}catch{}var w=FMe.call(i);return g&&(a?i[CF]=f:delete i[CF]),w}var RMe=Object.prototype,jMe=RMe.toString;function $Me(i){return jMe.call(i)}var zMe="[object Null]",qMe="[object Undefined]",YPt=Yw?Yw.toStringTag:void 0;function b9(i){return i==null?i===void 0?qMe:zMe:YPt&&YPt in Object(i)?BMe(i):$Me(i)}function T2(i){var a=typeof i;return i!=null&&(a=="object"||a=="function")}var HMe="[object AsyncFunction]",VMe="[object Function]",UMe="[object GeneratorFunction]",GMe="[object Proxy]";function ZL(i){if(!T2(i))return!1;var a=b9(i);return a==VMe||a==UMe||a==HMe||a==GMe}var KMe=Uv["__core-js_shared__"];const pgt=KMe;var XPt=function(){var i=/[^.]+$/.exec(pgt&&pgt.keys&&pgt.keys.IE_PROTO||"");return i?"Symbol(src)_1."+i:""}();function WMe(i){return!!XPt&&XPt in i}var YMe=Function.prototype,XMe=YMe.toString;function w9(i){if(i!=null){try{return XMe.call(i)}catch{}try{return i+""}catch{}}return""}var QMe=/[\\^$.*+?()[\]{}|]/g,JMe=/^\[object .+?Constructor\]$/,ZMe=Function.prototype,tIe=Object.prototype,eIe=ZMe.toString,nIe=tIe.hasOwnProperty,rIe=RegExp("^"+eIe.call(nIe).replace(QMe,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function iIe(i){if(!T2(i)||WMe(i))return!1;var a=ZL(i)?rIe:JMe;return a.test(w9(i))}function sIe(i,a){return i==null?void 0:i[a]}function m9(i,a){var f=sIe(i,a);return iIe(f)?f:void 0}var aIe=m9(Object,"create");const SF=aIe;function oIe(){this.__data__=SF?SF(null):{},this.size=0}function cIe(i){var a=this.has(i)&&delete this.__data__[i];return this.size-=a?1:0,a}var uIe="__lodash_hash_undefined__",lIe=Object.prototype,hIe=lIe.hasOwnProperty;function fIe(i){var a=this.__data__;if(SF){var f=a[i];return f===uIe?void 0:f}return hIe.call(a,i)?a[i]:void 0}var dIe=Object.prototype,gIe=dIe.hasOwnProperty;function pIe(i){var a=this.__data__;return SF?a[i]!==void 0:gIe.call(a,i)}var bIe="__lodash_hash_undefined__";function wIe(i,a){var f=this.__data__;return this.size+=this.has(i)?0:1,f[i]=SF&&a===void 0?bIe:a,this}function v9(i){var a=-1,f=i==null?0:i.length;for(this.clear();++a<f;){var g=i[a];this.set(g[0],g[1])}}v9.prototype.clear=oIe,v9.prototype.delete=cIe,v9.prototype.get=fIe,v9.prototype.has=pIe,v9.prototype.set=wIe;function mIe(){this.__data__=[],this.size=0}function tD(i,a){return i===a||i!==i&&a!==a}function JW(i,a){for(var f=i.length;f--;)if(tD(i[f][0],a))return f;return-1}var vIe=Array.prototype,yIe=vIe.splice;function xIe(i){var a=this.__data__,f=JW(a,i);if(f<0)return!1;var g=a.length-1;return f==g?a.pop():yIe.call(a,f,1),--this.size,!0}function kIe(i){var a=this.__data__,f=JW(a,i);return f<0?void 0:a[f][1]}function EIe(i){return JW(this.__data__,i)>-1}function TIe(i,a){v
`,"ig");i=i.trim().replace(f,"").replace(/'/gm,'"'),Kt.debug(`Detecting diagram directive${a!==null?" type:"+a:""} based on the text:${i}`);let g;const w=[];for(;(g=TF.exec(i))!==null;)if(g.index===TF.lastIndex&&TF.lastIndex++,g&&!a||a&&g[1]&&g[1].match(a)||a&&g[2]&&g[2].match(a)){const v=g[1]?g[1]:g[2],b=g[3]?g[3].trim():g[4]?JSON.parse(g[4].trim()):null;w.push({type:v,args:b})}return w.length===0?{type:i,args:null}:w.length===1?w[0]:w}catch(f){return Kt.error(`ERROR: ${f.message} - Unable to parse directive type: '${a}' based on the text: '${i}'`),{type:void 0,args:null}}},uNe=function(i){return i.replace(TF,"")},lNe=function(i,a){for(const[f,g]of a.entries())if(g.match(i))return f;return-1};function Xw(i,a){if(!i)return a;const f=`curve${i.charAt(0).toUpperCase()+i.slice(1)}`;return aNe[f]??a}function hNe(i,a){const f=i.trim();if(f)return a.securityLevel!=="loose"?h8(f):f}const fNe=(i,...a)=>{const f=i.split("."),g=f.length-1,w=f[g];let v=window;for(let b=0;b<g;b++)if(v=v[f[b]],!v){Kt.error(`Function name: ${i} not found in window`);return}v[w](...a)};function TFt(i,a){return!i||!a?0:Math.sqrt(Math.pow(a.x-i.x,2)+Math.pow(a.y-i.y,2))}function dNe(i){let a,f=0;i.forEach(w=>{f+=TFt(w,a),a=w});const g=f/2;return Egt(i,g)}function gNe(i){return i.length===1?i[0]:dNe(i)}const CFt=(i,a=2)=>{const f=Math.pow(10,a);return Math.round(i*f)/f},Egt=(i,a)=>{let f,g=a;for(const w of i){if(f){const v=TFt(w,f);if(v<g)g-=v;else{const b=g/v;if(b<=0)return f;if(b>=1)return{x:w.x,y:w.y};if(b>0&&b<1)return{x:CFt((1-b)*f.x+b*w.x,5),y:CFt((1-b)*f.y+b*w.y,5)}}}f=w}throw new Error("Could not find a suitable point for the given distance")},pNe=(i,a,f)=>{Kt.info(`our points ${JSON.stringify(a)}`),a[0]!==f&&(a=a.reverse());const w=Egt(a,25),v=i?10:5,b=Math.atan2(a[0].y-w.y,a[0].x-w.x),E={x:0,y:0};return E.x=Math.sin(b)*v+(a[0].x+w.x)/2,E.y=-Math.cos(b)*v+(a[0].y+w.y)/2,E};function bNe(i,a,f){const g=structuredClone(f);Kt.info("our points",g),a!=="start_left"&&a!=="start_right"&&g.reverse();const w=25+i,v=Egt(g,w),b=10+i*.5,E=Math.atan2(g[0].y-v.y,g[0].x-v.x),S={x:0,y:0};return a==="start_left"?(S.x=Math.sin(E+Math.PI)*b+(g[0].x+v.x)/2,S.y=-Math.cos(E+Math.PI)*b+(g[0].y+v.y)/2):a==="end_right"?(S.x=Math.sin(E-Math.PI)*b+(g[0].x+v.x)/2-5,S.y=-Math.cos(E-Math.PI)*b+(g[0].y+v.y)/2-5):a==="end_left"?(S.x=Math.sin(E)*b+(g[0].x+v.x)/2-5,S.y=-Math.cos(E)*b+(g[0].y+v.y)/2-5):(S.x=Math.sin(E)*b+(g[0].x+v.x)/2,S.y=-Math.cos(E)*b+(g[0].y+v.y)/2),S}function C2(i){let a="",f="";for(const g of i)g!==void 0&&(g.startsWith("color:")||g.startsWith("text-align:")?f=f+g+";":a=a+g+";");return{style:a,labelStyle:f}}let SFt=0;const _Ft=()=>(SFt++,"id-"+Math.random().toString(36).substr(2,12)+"-"+SFt);function wNe(i){let a="";const f="0123456789abcdef",g=f.length;for(let w=0;w<i;w++)a+=f.charAt(Math.floor(Math.random()*g));return a}const AFt=i=>wNe(i.length),mNe=function(){return{x:0,y:0,fill:void 0,anchor:"start",style:"#666",width:100,height:100,textMargin:0,rx:0,ry:0,valign:void 0,text:""}},vNe=function(i,a){const f=a.text.replace(ei.lineBreakRegex," "),[,g]=k9(a.fontSize),w=i.append("text");w.attr("x",a.x),w.attr("y",a.y),w.style("text-anchor",a.anchor),w.style("font-family",a.fontFamily),w.style("font-size",g),w.style("font-weight",a.fontWeight),w.attr("fill",a.fill),a.class!==void 0&&w.attr("class",a.class);const v=w.append("tspan");return v.attr("x",a.x+a.textMargin*2),v.attr("fill",a.fill),v.text(f),w},LFt=eD((i,a,f)=>{if(!i||(f=Object.assign({fontSize:12,fontWeight:400,fontFamily:"Arial",joinWith:"<br/>"},f),ei.lineBreakRegex.test(i)))return i;const g=i.split(" "),w=[];let v="";return g.forEach((b,E)=>{const S=n4(`${b} `,f),_=n4(v,f);if(S>a){const{hyphenatedStrings:R,remainingWord:B}=yNe(b,a,"-",f);w.push(v,...R),v=B}else _+S>=a?(w.push(v),v=b):v=[v,b].filter(Boolean).join(" ");E+1===g.length&&w.push(v)}),w.filter(b=>b!=="").join(f.joinWith)},(i,a,f)=>`${i}${a}${f.fontSize}${f.fontWeight}${f.fontFamily}${f.joinWith}`),yNe=eD((i,a,f="-",g)=>{g=Object.assign({fontSize:12,fontWeight:400,fontFamily:"Arial",margin:0},g);const w=[...i],v=[];let b="";return w.forEac
font-family: ${f.fontFamily};
font-size: ${f.fontSize};
fill: ${f.textColor}
2022-11-03 00:28:15 +01:00
}
2024-02-17 17:36:33 +01:00
/* Classes common for multiple diagrams */
2022-11-03 00:28:15 +01:00
2024-02-17 17:36:33 +01:00
& .error-icon {
fill: ${f.errorBkgColor};
2022-11-03 00:28:15 +01:00
}
2024-02-17 17:36:33 +01:00
& .error-text {
fill: ${f.errorTextColor};
stroke: ${f.errorTextColor};
2022-11-03 00:28:15 +01:00
}
2024-02-17 17:36:33 +01:00
& .edge-thickness-normal {
stroke-width: 2px;
2022-11-03 00:28:15 +01:00
}
2024-02-17 17:36:33 +01:00
& .edge-thickness-thick {
stroke-width: 3.5px
}
& .edge-pattern-solid {
stroke-dasharray: 0;
2022-11-03 00:28:15 +01:00
}
2024-02-17 17:36:33 +01:00
& .edge-pattern-dashed{
stroke-dasharray: 3;
}
.edge-pattern-dotted {
stroke-dasharray: 2;
2022-11-03 00:28:15 +01:00
}
2024-02-17 17:36:33 +01:00
& .marker {
fill: ${f.lineColor};
stroke: ${f.lineColor};
}
& .marker.cross {
stroke: ${f.lineColor};
}
& svg {
font-family: ${f.fontFamily};
font-size: ${f.fontSize};
}
${g}
${a}
`},fPe=(i,a)=>{a!==void 0&&(mY[i]=a)},dPe=hPe;let Ogt="",Ngt="",Pgt="";const Fgt=i=>Ef(i,o1()),ag=()=>{Ogt="",Pgt="",Ngt=""},og=i=>{Ogt=Fgt(i).replace(/^\s+/g,"")},Xg=()=>Ogt,Qg=i=>{Pgt=Fgt(i).replace(/\n\s+/g,`
`)},Jg=()=>Pgt,S2=i=>{Ngt=Fgt(i)},Zg=()=>Ngt,uBt=Object.freeze(Object.defineProperty({__proto__:null,clear:ag,getAccDescription:Jg,getAccTitle:Xg,getDiagramTitle:Zg,setAccDescription:Qg,setAccTitle:og,setDiagramTitle:S2},Symbol.toStringTag,{value:"Module"})),gPe=Kt,pPe=d0t,Re=o1,bPe=qFt,lBt=cD,wPe=i=>Ef(i,Re()),hBt=w8,mPe=()=>uBt,vY={},yY=(i,a,f)=>{var g;if(vY[i])throw new Error(`Diagram ${i} already registered.`);vY[i]=a,f&&GPt(i,f),fPe(i,a.styles),(g=a.injectUtils)==null||g.call(a,gPe,pPe,Re,wPe,hBt,mPe(),()=>{})},Bgt=i=>{if(i in vY)return vY[i];throw new vPe(i)};class vPe extends Error{constructor(a){super(`Diagram ${a} not found.`)}}const FF=i=>{var w;const{securityLevel:a}=Re();let f=Tr("body");if(a==="sandbox"){const b=((w=Tr(`#i${i}`).node())==null?void 0:w.contentDocument)??document;f=Tr(b.body)}return f.select(`#${i}`)},fBt={draw:(i,a,f)=>{Kt.debug(`rendering svg for syntax error
`);const g=FF(a);g.attr("viewBox","0 0 2412 512"),sg(g,100,512,!0);const w=g.append("g");w.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"),w.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"),w.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"),w.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"),w.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"),w.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"),w.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"),w.append("text").attr("class","error-text").attr("x",1250).attr("y",400).attr("font-size","100px").style("text-anchor","middle").text(`mermaid version ${f}`)}},yPe=fBt,xPe={db:{},renderer:fBt,parser:{parser:{yy:{}},parse:()=>{}}},dBt="flowchart-elk",kPe={id:dBt,detector:(i,a)=>{var f;return!!(/^\s*flowchart-elk/.test(i)||/^\s*flowchart|graph/.test(i)&&((f=a==null?void 0:a.flowchart)==null?void 0:f.defaultRenderer)==="elk")},loader:async()=>{const{diagram:i}=await Promise.resolve().then(()=>Ltn);return{id:dBt,diagram:i}}},gBt="timeline",EPe={id:gBt,detector:i=>/^\s*timeline/.test(i),loader:async()=>{const{diagram:i}=await Promise.resolve().then(()=>Wtn);return{id:gBt,diagram:i}}},pBt="mindmap",TPe={id:pBt,detector:i=>/^\s*mindmap/.test(i),loader:async()=>{const{diagram:i}=await Promise.resolve().then(()=>ken);return{id:pBt,diagram:i}}},bBt="sankey",CPe={id:bBt,detector:i=>/^\s*sankey-beta/.test(i),loader:async()=>{const{diagram:i}=await Promise.resolve().then(()=>Jen);return{id:bBt,diagram:i}}},wBt="block",SPe={id:wBt,detector:i=>/^\s*block-beta/.test(i),loader:async()=>{const{diagram:i}=await Promise.resolve().then(()=>mnn);return{id:wBt,diagram:i}}};let mBt=!1;const Rgt=()=>{mBt||(mBt=!0,yY("error",xPe,i=>i.toLowerCase().trim()==="error"),yY("---",{db:{clear:()=>{}},styles:{},renderer:{draw:()=>{}},parser:{parser:{yy:{}},parse:()=>{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")}},init:()=>null},i=>i.toLowerCase().trimStart().startsWith("---")),UPt(GNe,sPe,iPe,YNe,QNe,JNe,ZNe,nPe,rPe,kPe,WNe,KNe,TPe,EPe,XNe,oPe,aPe,cPe,tPe,CPe,ePe,SPe))};class vBt{constructor(a,f={}){this.text=a,this.metadata=f,this.type="graph",this.text=TNe(a),this.text+=`
`;const g=o1();try{this.type=QW(a,g)}catch(v){this.type="error",this.detectError=v}const w=Bgt(this.type);Kt.debug("Type "+this.type),this.db=w.db,this.renderer=w.renderer,this.parser=w.parser,this.parser.parser.yy=this.db,this.init=w.init,this.parse()}parse(){var f,g,w,v,b;if(this.detectError)throw this.detectError;(g=(f=this.db).clear)==null||g.call(f);const a=o1();(w=this.init)==null||w.call(this,a),this.metadata.title&&((b=(v=this.db).setDiagramTitle)==null||b.call(v,this.metadata.title)),this.parser.parse(this.text)}async render(a,f){await this.renderer.draw(this.text,a,f,this)}getParser(){return this.parser}getType(){return this.type}}const _Pe=async(i,a={})=>{const f=QW(i,o1());try{Bgt(f)}catch{const w=DMe(f);if(!w)throw new VPt(`Diagram ${f} not found.`);const{id:v,diagram:b}=await w();yY(v,b)}return new vBt(i,a)};let yBt=[];const APe=()=>{yBt.forEach(i=>{i()}),yBt=[]};var LPe=sFt(Object.keys,Object);const DPe=LPe;var MPe=Object.prototype,IPe=MPe.hasOwnProperty;function xBt(i){if(!rY(i))return DPe(i);var a=[];for(var f in Object(i))IPe.call(i,f)&&f!="constructor"&&a.push(f);return a}var OPe=m9(Uv,"DataView");const jgt=OPe;var NPe=m9(Uv,"Promise");const $gt=NPe;var PPe=m9(Uv,"Set");const lD=PPe;var FPe=m9(Uv,"WeakMap");const zgt=FPe;var kBt="[object Map]",BPe="[object Object]",EBt="[object Promise]",TBt="[object Set]",CBt="[object WeakMap]",SBt="[object DataView]",RPe=w9(jgt),jPe=w9(_F),$Pe=w9($gt),zPe=w9(lD),qPe=w9(zgt),T9=b9;(jgt&&T9(new jgt(new ArrayBuffer(1)))!=SBt||_F&&T9(new _F)!=kBt||$gt&&T9($gt.resolve())!=EBt||lD&&T9(new lD)!=TBt||zgt&&T9(new zgt)!=CBt)&&(T9=function(i){var a=b9(i),f=a==BPe?i.constructor:void 0,g=f?w9(f):"";if(g)switch(g){case RPe:return SBt;case jPe:return kBt;case $Pe:return EBt;case zPe:return TBt;case qPe:return CBt}return a});const hD=T9;var HPe="[object Map]",VPe="[object Set]",UPe=Object.prototype,GPe=UPe.hasOwnProperty;function BF(i){if(i==null)return!0;if(p8(i)&&(s1(i)||typeof i=="string"||typeof i.splice=="function"||rD(i)||sY(i)||nD(i)))return!i.length;var a=hD(i);if(a==HPe||a==VPe)return!i.size;if(rY(i))return!xBt(i).length;for(var f in i)if(GPe.call(i,f))return!1;return!0}const KPe="graphics-document document";function WPe(i,a){i.attr("role",KPe),a!==""&&i.attr("aria-roledescription",a)}function YPe(i,a,f,g){if(i.insert!==void 0){if(f){const w=`chart-desc-${g}`;i.attr("aria-describedby",w),i.insert("desc",":first-child").attr("id",w).text(f)}if(a){const w=`chart-title-${g}`;i.attr("aria-labelledby",w),i.insert("title",":first-child").attr("id",w).text(a)}}}const XPe=i=>i.replace(/^\s*%%(?!{)[^\n]+\n?/gm,"").trimStart();/*! js-yaml 4.1.0 https://github.com/nodeca/js-yaml @license MIT */function _Bt(i){return typeof i>"u"||i===null}function QPe(i){return typeof i=="object"&&i!==null}function JPe(i){return Array.isArray(i)?i:_Bt(i)?[]:[i]}function ZPe(i,a){var f,g,w,v;if(a)for(v=Object.keys(a),f=0,g=v.length;f<g;f+=1)w=v[f],i[w]=a[w];return i}function tFe(i,a){var f="",g;for(g=0;g<a;g+=1)f+=i;return f}function eFe(i){return i===0&&Number.NEGATIVE_INFINITY===1/i}var nFe=_Bt,rFe=QPe,iFe=JPe,sFe=tFe,aFe=eFe,oFe=ZPe,tp={isNothing:nFe,isObject:rFe,toArray:iFe,repeat:sFe,isNegativeZero:aFe,extend:oFe};function ABt(i,a){var f="",g=i.reason||"(unknown reason)";return i.mark?(i.mark.name&&(f+='in "'+i.mark.name+'" '),f+="("+(i.mark.line+1)+":"+(i.mark.column+1)+")",!a&&i.mark.snippet&&(f+=`
`+i.mark.snippet),g+" "+f):g}function RF(i,a){Error.call(this),this.name="YAMLException",this.reason=i,this.mark=a,this.message=ABt(this,!1),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack||""}RF.prototype=Object.create(Error.prototype),RF.prototype.constructor=RF,RF.prototype.toString=function(a){return this.name+": "+ABt(this,a)};var Ox=RF;function qgt(i,a,f,g,w){var v="",b="",E=Math.floor(w/2)-1;return g-a>E&&(v=" ... ",a=g-E+v.length),f-g>E&&(b=" ...",f=g+E-b.length),{str:v+i.slice(a,f).replace(/\t/g,"→")+b,pos:g-a+v.length}}function Hgt(i,a){return tp.repeat(" ",a-i.length)+i}function cFe(i,a){if(a=Object.create(a||null),!i.buffer)return null;a.maxLength||(a.maxLength=79),typeof a.indent!="number"&&(a.indent=1),typeof a.linesBefore!="number"&&(a.linesBefore=3),typeof a.linesAfter!="number"&&(a.linesAfter=2);for(var f=/\r?\n|\r|\0/g,g=[0],w=[],v,b=-1;v=f.exec(i.buffer);)w.push(v.index),g.push(v.index+v[0].length),i.position<=v.index&&b<0&&(b=g.length-2);b<0&&(b=g.length-1);var E="",S,_,M=Math.min(i.line+a.linesAfter,w.length).toString().length,F=a.maxLength-(a.indent+M+3);for(S=1;S<=a.linesBefore&&!(b-S<0);S++)_=qgt(i.buffer,g[b-S],w[b-S],i.position-(g[b]-g[b-S]),F),E=tp.repeat(" ",a.indent)+Hgt((i.line-S+1).toString(),M)+" | "+_.str+`
`+E;for(_=qgt(i.buffer,g[b],w[b],i.position,F),E+=tp.repeat(" ",a.indent)+Hgt((i.line+1).toString(),M)+" | "+_.str+`
`,E+=tp.repeat("-",a.indent+M+3+_.pos)+`^
`,S=1;S<=a.linesAfter&&!(b+S>=w.length);S++)_=qgt(i.buffer,g[b+S],w[b+S],i.position-(g[b]-g[b+S]),F),E+=tp.repeat(" ",a.indent)+Hgt((i.line+S+1).toString(),M)+" | "+_.str+`
`;return E.replace(/\n$/,"")}var uFe=cFe,lFe=["kind","multi","resolve","construct","instanceOf","predicate","represent","representName","defaultStyle","styleAliases"],hFe=["scalar","sequence","mapping"];function fFe(i){var a={};return i!==null&&Object.keys(i).forEach(function(f){i[f].forEach(function(g){a[String(g)]=f})}),a}function dFe(i,a){if(a=a||{},Object.keys(a).forEach(function(f){if(lFe.indexOf(f)===-1)throw new Ox('Unknown option "'+f+'" is met in definition of "'+i+'" YAML type.')}),this.options=a,this.tag=i,this.kind=a.kind||null,this.resolve=a.resolve||function(){return!0},this.construct=a.construct||function(f){return f},this.instanceOf=a.instanceOf||null,this.predicate=a.predicate||null,this.represent=a.represent||null,this.representName=a.representName||null,this.defaultStyle=a.defaultStyle||null,this.multi=a.multi||!1,this.styleAliases=fFe(a.styleAliases||null),hFe.indexOf(this.kind)===-1)throw new Ox('Unknown kind "'+this.kind+'" is specified for "'+i+'" YAML type.')}var cg=dFe;function LBt(i,a){var f=[];return i[a].forEach(function(g){var w=f.length;f.forEach(function(v,b){v.tag===g.tag&&v.kind===g.kind&&v.multi===g.multi&&(w=b)}),f[w]=g}),f}function gFe(){var i={scalar:{},sequence:{},mapping:{},fallback:{},multi:{scalar:[],sequence:[],mapping:[],fallback:[]}},a,f;function g(w){w.multi?(i.multi[w.kind].push(w),i.multi.fallback.push(w)):i[w.kind][w.tag]=i.fallback[w.tag]=w}for(a=0,f=arguments.length;a<f;a+=1)arguments[a].forEach(g);return i}function Vgt(i){return this.extend(i)}Vgt.prototype.extend=function(a){var f=[],g=[];if(a instanceof cg)g.push(a);else if(Array.isArray(a))g=g.concat(a);else if(a&&(Array.isArray(a.implicit)||Array.isArray(a.explicit)))a.implicit&&(f=f.concat(a.implicit)),a.explicit&&(g=g.concat(a.explicit));else throw new Ox("Schema.extend argument should be a Type, [ Type ], or a schema definition ({ implicit: [...], explicit: [...] })");f.forEach(function(v){if(!(v instanceof cg))throw new Ox("Specified list of YAML types (or a single Type object) contains a non-Type object.");if(v.loadKind&&v.loadKind!=="scalar")throw new Ox("There is a non-scalar type in the implicit list of a schema. Implicit resolving of such types is not supported.");if(v.multi)throw new Ox("There is a multi type in the implicit list of a schema. Multi tags can only be listed as explicit.")}),g.forEach(function(v){if(!(v instanceof cg))throw new Ox("Specified list of YAML types (or a single Type object) contains a non-Type object.")});var w=Object.create(Vgt.prototype);return w.implicit=(this.implicit||[]).concat(f),w.explicit=(this.explicit||[]).concat(g),w.compiledImplicit=LBt(w,"implicit"),w.compiledExplicit=LBt(w,"explicit"),w.compiledTypeMap=gFe(w.compiledImplicit,w.compiledExplicit),w};var pFe=Vgt,bFe=new cg("tag:yaml.org,2002:str",{kind:"scalar",construct:function(i){return i!==null?i:""}}),wFe=new cg("tag:yaml.org,2002:seq",{kind:"sequence",construct:function(i){return i!==null?i:[]}}),mFe=new cg("tag:yaml.org,2002:map",{kind:"mapping",construct:function(i){return i!==null?i:{}}}),vFe=new pFe({explicit:[bFe,wFe,mFe]});function yFe(i){if(i===null)return!0;var a=i.length;return a===1&&i==="~"||a===4&&(i==="null"||i==="Null"||i==="NULL")}function xFe(){return null}function kFe(i){return i===null}var EFe=new cg("tag:yaml.org,2002:null",{kind:"scalar",resolve:yFe,construct:xFe,predicate:kFe,represent:{canonical:function(){return"~"},lowercase:function(){return"null"},uppercase:function(){return"NULL"},camelcase:function(){return"Null"},empty:function(){return""}},defaultStyle:"lowercase"});function TFe(i){if(i===null)return!1;var a=i.length;return a===4&&(i==="true"||i==="True"||i==="TRUE")||a===5&&(i==="false"||i==="False"||i==="FALSE")}function CFe(i){return i==="true"||i==="True"||i==="TRUE"}function SFe(i){return Object.prototype.toString.call(i)==="[object Boolean]"}var _Fe=new cg("tag:yaml.org,2002:bool",{kind:"scalar",resolve:TFe,construct:CFe,predicate:SFe,represent:{lowercase:function(i){return i?"true":"false"},uppercase:function(i){return i?"TRUE":"FALSE"},camelcase:function(i){return i?"True":"F
\r`;function YFe(i){if(i===null)return!1;var a,f,g=0,w=i.length,v=Ugt;for(f=0;f<w;f++)if(a=v.indexOf(i.charAt(f)),!(a>64)){if(a<0)return!1;g+=6}return g%8===0}function XFe(i){var a,f,g=i.replace(/[\r\n=]/g,""),w=g.length,v=Ugt,b=0,E=[];for(a=0;a<w;a++)a%4===0&&a&&(E.push(b>>16&255),E.push(b>>8&255),E.push(b&255)),b=b<<6|v.indexOf(g.charAt(a));return f=w%4*6,f===0?(E.push(b>>16&255),E.push(b>>8&255),E.push(b&255)):f===18?(E.push(b>>10&255),E.push(b>>2&255)):f===12&&E.push(b>>4&255),new Uint8Array(E)}function QFe(i){var a="",f=0,g,w,v=i.length,b=Ugt;for(g=0;g<v;g++)g%3===0&&g&&(a+=b[f>>18&63],a+=b[f>>12&63],a+=b[f>>6&63],a+=b[f&63]),f=(f<<8)+i[g];return w=v%3,w===0?(a+=b[f>>18&63],a+=b[f>>12&63],a+=b[f>>6&63],a+=b[f&63]):w===2?(a+=b[f>>10&63],a+=b[f>>4&63],a+=b[f<<2&63],a+=b[64]):w===1&&(a+=b[f>>2&63],a+=b[f<<4&63],a+=b[64],a+=b[64]),a}function JFe(i){return Object.prototype.toString.call(i)==="[object Uint8Array]"}var ZFe=new cg("tag:yaml.org,2002:binary",{kind:"scalar",resolve:YFe,construct:XFe,predicate:JFe,represent:QFe}),tBe=Object.prototype.hasOwnProperty,eBe=Object.prototype.toString;function nBe(i){if(i===null)return!0;var a=[],f,g,w,v,b,E=i;for(f=0,g=E.length;f<g;f+=1){if(w=E[f],b=!1,eBe.call(w)!=="[object Object]")return!1;for(v in w)if(tBe.call(w,v))if(!b)b=!0;else return!1;if(!b)return!1;if(a.indexOf(v)===-1)a.push(v);else return!1}return!0}function rBe(i){return i!==null?i:[]}var iBe=new cg("tag:yaml.org,2002:omap",{kind:"sequence",resolve:nBe,construct:rBe}),sBe=Object.prototype.toString;function aBe(i){if(i===null)return!0;var a,f,g,w,v,b=i;for(v=new Array(b.length),a=0,f=b.length;a<f;a+=1){if(g=b[a],sBe.call(g)!=="[object Object]"||(w=Object.keys(g),w.length!==1))return!1;v[a]=[w[0],g[w[0]]]}return!0}function oBe(i){if(i===null)return[];var a,f,g,w,v,b=i;for(v=new Array(b.length),a=0,f=b.length;a<f;a+=1)g=b[a],w=Object.keys(g),v[a]=[w[0],g[w[0]]];return v}var cBe=new cg("tag:yaml.org,2002:pairs",{kind:"sequence",resolve:aBe,construct:oBe}),uBe=Object.prototype.hasOwnProperty;function lBe(i){if(i===null)return!0;var a,f=i;for(a in f)if(uBe.call(f,a)&&f[a]!==null)return!1;return!0}function hBe(i){return i!==null?i:{}}var fBe=new cg("tag:yaml.org,2002:set",{kind:"mapping",resolve:lBe,construct:hBe}),dBe=qFe.extend({implicit:[GFe,WFe],explicit:[ZFe,iBe,cBe,fBe]}),m8=Object.prototype.hasOwnProperty,xY=1,OBt=2,NBt=3,kY=4,Ggt=1,gBe=2,PBt=3,pBe=/[\x00-\x08\x0B\x0C\x0E-\x1F\x7F-\x84\x86-\x9F\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,bBe=/[\x85\u2028\u2029]/,wBe=/[,\[\]\{\}]/,FBt=/^(?:!|!!|![a-z\-]+!)$/i,BBt=/^(?:!|[^,\[\]\{\}])(?:%[0-9a-f]{2}|[0-9a-z\-#;\/\?:@&=\+\$,_\.!~\*'\(\)\[\]])*$/i;function RBt(i){return Object.prototype.toString.call(i)}function r4(i){return i===10||i===13}function C9(i){return i===9||i===32}function sb(i){return i===9||i===32||i===10||i===13}function fD(i){return i===44||i===91||i===93||i===123||i===125}function mBe(i){var a;return 48<=i&&i<=57?i-48:(a=i|32,97<=a&&a<=102?a-97+10:-1)}function vBe(i){return i===120?2:i===117?4:i===85?8:0}function yBe(i){return 48<=i&&i<=57?i-48:-1}function jBt(i){return i===48?"\0":i===97?"\x07":i===98?"\b":i===116||i===9?" ":i===110?`
`:i===118?"\v":i===102?"\f":i===114?"\r":i===101?"\x1B":i===32?" ":i===34?'"':i===47?"/":i===92?"\\":i===78?"…":i===95?" ":i===76?"\u2028":i===80?"\u2029":""}function xBe(i){return i<=65535?String.fromCharCode(i):String.fromCharCode((i-65536>>10)+55296,(i-65536&1023)+56320)}for(var $Bt=new Array(256),zBt=new Array(256),dD=0;dD<256;dD++)$Bt[dD]=jBt(dD)?1:0,zBt[dD]=jBt(dD);function kBe(i,a){this.input=i,this.filename=a.filename||null,this.schema=a.schema||dBe,this.onWarning=a.onWarning||null,this.legacy=a.legacy||!1,this.json=a.json||!1,this.listener=a.listener||null,this.implicitTypes=this.schema.compiledImplicit,this.typeMap=this.schema.compiledTypeMap,this.length=i.length,this.position=0,this.line=0,this.lineStart=0,this.lineIndent=0,this.firstTabInLine=-1,this.documents=[]}function qBt(i,a){var f={name:i.filename,buffer:i.input.slice(0,-1),position:i.position,line:i.line,column:i.position-i.lineStart};return f.snippet=uFe(f),new Ox(a,f)}function Ks(i,a){throw qBt(i,a)}function EY(i,a){i.onWarning&&i.onWarning.call(null,qBt(i,a))}var HBt={YAML:function(a,f,g){var w,v,b;a.version!==null&&Ks(a,"duplication of %YAML directive"),g.length!==1&&Ks(a,"YAML directive accepts exactly one argument"),w=/^([0-9]+)\.([0-9]+)$/.exec(g[0]),w===null&&Ks(a,"ill-formed argument of the YAML directive"),v=parseInt(w[1],10),b=parseInt(w[2],10),v!==1&&Ks(a,"unacceptable YAML version of the document"),a.version=g[0],a.checkLineBreaks=b<2,b!==1&&b!==2&&EY(a,"unsupported YAML version of the document")},TAG:function(a,f,g){var w,v;g.length!==2&&Ks(a,"TAG directive accepts exactly two arguments"),w=g[0],v=g[1],FBt.test(w)||Ks(a,"ill-formed tag handle (first argument) of the TAG directive"),m8.call(a.tagMap,w)&&Ks(a,'there is a previously declared suffix for "'+w+'" tag handle'),BBt.test(v)||Ks(a,"ill-formed tag prefix (second argument) of the TAG directive");try{v=decodeURIComponent(v)}catch{Ks(a,"tag prefix is malformed: "+v)}a.tagMap[w]=v}};function v8(i,a,f,g){var w,v,b,E;if(a<f){if(E=i.input.slice(a,f),g)for(w=0,v=E.length;w<v;w+=1)b=E.charCodeAt(w),b===9||32<=b&&b<=1114111||Ks(i,"expected valid JSON character");else pBe.test(E)&&Ks(i,"the stream contains non-printable characters");i.result+=E}}function VBt(i,a,f,g){var w,v,b,E;for(tp.isObject(f)||Ks(i,"cannot merge mappings; the provided source object is unacceptable"),w=Object.keys(f),b=0,E=w.length;b<E;b+=1)v=w[b],m8.call(a,v)||(a[v]=f[v],g[v]=!0)}function gD(i,a,f,g,w,v,b,E,S){var _,M;if(Array.isArray(w))for(w=Array.prototype.slice.call(w),_=0,M=w.length;_<M;_+=1)Array.isArray(w[_])&&Ks(i,"nested arrays are not supported inside keys"),typeof w=="object"&&RBt(w[_])==="[object Object]"&&(w[_]="[object Object]");if(typeof w=="object"&&RBt(w)==="[object Object]"&&(w="[object Object]"),w=String(w),a===null&&(a={}),g==="tag:yaml.org,2002:merge")if(Array.isArray(v))for(_=0,M=v.length;_<M;_+=1)VBt(i,a,v[_],f);else VBt(i,a,v,f);else!i.json&&!m8.call(f,w)&&m8.call(a,w)&&(i.line=b||i.line,i.lineStart=E||i.lineStart,i.position=S||i.position,Ks(i,"duplicated mapping key")),w==="__proto__"?Object.defineProperty(a,w,{configurable:!0,enumerable:!0,writable:!0,value:v}):a[w]=v,delete f[w];return a}function Kgt(i){var a;a=i.input.charCodeAt(i.position),a===10?i.position++:a===13?(i.position++,i.input.charCodeAt(i.position)===10&&i.position++):Ks(i,"a line break is expected"),i.line+=1,i.lineStart=i.position,i.firstTabInLine=-1}function c1(i,a,f){for(var g=0,w=i.input.charCodeAt(i.position);w!==0;){for(;C9(w);)w===9&&i.firstTabInLine===-1&&(i.firstTabInLine=i.position),w=i.input.charCodeAt(++i.position);if(a&&w===35)do w=i.input.charCodeAt(++i.position);while(w!==10&&w!==13&&w!==0);if(r4(w))for(Kgt(i),w=i.input.charCodeAt(i.position),g++,i.lineIndent=0;w===32;)i.lineIndent++,w=i.input.charCodeAt(++i.position);else break}return f!==-1&&g!==0&&i.lineIndent<f&&EY(i,"deficient indentation"),g}function TY(i){var a=i.position,f;return f=i.input.charCodeAt(a),!!((f===45||f===46)&&f===i.input.charCodeAt(a+1)&&f===i.input.charCodeAt(a+2)&&(a+=3,f=i.input.charCodeAt(a),f===0||sb(f)))}function Wgt(i,a){a===1?i.resul
`,a-1))}function EBe(i,a,f){var g,w,v,b,E,S,_,M,F=i.kind,R=i.result,B;if(B=i.input.charCodeAt(i.position),sb(B)||fD(B)||B===35||B===38||B===42||B===33||B===124||B===62||B===39||B===34||B===37||B===64||B===96||(B===63||B===45)&&(w=i.input.charCodeAt(i.position+1),sb(w)||f&&fD(w)))return!1;for(i.kind="scalar",i.result="",v=b=i.position,E=!1;B!==0;){if(B===58){if(w=i.input.charCodeAt(i.position+1),sb(w)||f&&fD(w))break}else if(B===35){if(g=i.input.charCodeAt(i.position-1),sb(g))break}else{if(i.position===i.lineStart&&TY(i)||f&&fD(B))break;if(r4(B))if(S=i.line,_=i.lineStart,M=i.lineIndent,c1(i,!1,-1),i.lineIndent>=a){E=!0,B=i.input.charCodeAt(i.position);continue}else{i.position=b,i.line=S,i.lineStart=_,i.lineIndent=M;break}}E&&(v8(i,v,b,!1),Wgt(i,i.line-S),v=b=i.position,E=!1),C9(B)||(b=i.position+1),B=i.input.charCodeAt(++i.position)}return v8(i,v,b,!1),i.result?!0:(i.kind=F,i.result=R,!1)}function TBe(i,a){var f,g,w;if(f=i.input.charCodeAt(i.position),f!==39)return!1;for(i.kind="scalar",i.result="",i.position++,g=w=i.position;(f=i.input.charCodeAt(i.position))!==0;)if(f===39)if(v8(i,g,i.position,!0),f=i.input.charCodeAt(++i.position),f===39)g=i.position,i.position++,w=i.position;else return!0;else r4(f)?(v8(i,g,w,!0),Wgt(i,c1(i,!1,a)),g=w=i.position):i.position===i.lineStart&&TY(i)?Ks(i,"unexpected end of the document within a single quoted scalar"):(i.position++,w=i.position);Ks(i,"unexpected end of the stream within a single quoted scalar")}function CBe(i,a){var f,g,w,v,b,E;if(E=i.input.charCodeAt(i.position),E!==34)return!1;for(i.kind="scalar",i.result="",i.position++,f=g=i.position;(E=i.input.charCodeAt(i.position))!==0;){if(E===34)return v8(i,f,i.position,!0),i.position++,!0;if(E===92){if(v8(i,f,i.position,!0),E=i.input.charCodeAt(++i.position),r4(E))c1(i,!1,a);else if(E<256&&$Bt[E])i.result+=zBt[E],i.position++;else if((b=vBe(E))>0){for(w=b,v=0;w>0;w--)E=i.input.charCodeAt(++i.position),(b=mBe(E))>=0?v=(v<<4)+b:Ks(i,"expected hexadecimal character");i.result+=xBe(v),i.position++}else Ks(i,"unknown escape sequence");f=g=i.position}else r4(E)?(v8(i,f,g,!0),Wgt(i,c1(i,!1,a)),f=g=i.position):i.position===i.lineStart&&TY(i)?Ks(i,"unexpected end of the document within a double quoted scalar"):(i.position++,g=i.position)}Ks(i,"unexpected end of the stream within a double quoted scalar")}function SBe(i,a){var f=!0,g,w,v,b=i.tag,E,S=i.anchor,_,M,F,R,B,z=Object.create(null),Y,nt,ot,ft;if(ft=i.input.charCodeAt(i.position),ft===91)M=93,B=!1,E=[];else if(ft===123)M=125,B=!0,E={};else return!1;for(i.anchor!==null&&(i.anchorMap[i.anchor]=E),ft=i.input.charCodeAt(++i.position);ft!==0;){if(c1(i,!0,a),ft=i.input.charCodeAt(i.position),ft===M)return i.position++,i.tag=b,i.anchor=S,i.kind=B?"mapping":"sequence",i.result=E,!0;f?ft===44&&Ks(i,"expected the node content, but found ','"):Ks(i,"missed comma between flow collection entries"),nt=Y=ot=null,F=R=!1,ft===63&&(_=i.input.charCodeAt(i.position+1),sb(_)&&(F=R=!0,i.position++,c1(i,!0,a))),g=i.line,w=i.lineStart,v=i.position,pD(i,a,xY,!1,!0),nt=i.tag,Y=i.result,c1(i,!0,a),ft=i.input.charCodeAt(i.position),(R||i.line===g)&&ft===58&&(F=!0,ft=i.input.charCodeAt(++i.position),c1(i,!0,a),pD(i,a,xY,!1,!0),ot=i.result),B?gD(i,E,z,nt,Y,ot,g,w,v):F?E.push(gD(i,null,z,nt,Y,ot,g,w,v)):E.push(Y),c1(i,!0,a),ft=i.input.charCodeAt(i.position),ft===44?(f=!0,ft=i.input.charCodeAt(++i.position)):f=!1}Ks(i,"unexpected end of the stream within a flow collection")}function _Be(i,a){var f,g,w=Ggt,v=!1,b=!1,E=a,S=0,_=!1,M,F;if(F=i.input.charCodeAt(i.position),F===124)g=!1;else if(F===62)g=!0;else return!1;for(i.kind="scalar",i.result="";F!==0;)if(F=i.input.charCodeAt(++i.position),F===43||F===45)Ggt===w?w=F===43?PBt:gBe:Ks(i,"repeat of a chomping mode identifier");else if((M=yBe(F))>=0)M===0?Ks(i,"bad explicit indentation width of a block scalar; it cannot be less than one"):b?Ks(i,"repeat of an indentation width identifier"):(E=a+M-1,b=!0);else break;if(C9(F)){do F=i.input.charCodeAt(++i.position);while(C9(F));if(F===35)do F=i.input.charCodeAt(++i.position);while(!r4(F)&&F!==0)}for(;F!==0;){for(Kgt(i),i.li
`,v?1+S:S):w===Ggt&&v&&(i.result+=`
`);break}for(g?C9(F)?(_=!0,i.result+=tp.repeat(`
`,v?1+S:S)):_?(_=!1,i.result+=tp.repeat(`
`,S+1)):S===0?v&&(i.result+=" "):i.result+=tp.repeat(`
`,S):i.result+=tp.repeat(`
`,v?1+S:S),v=!0,b=!0,S=0,f=i.position;!r4(F)&&F!==0;)F=i.input.charCodeAt(++i.position);v8(i,f,i.position,!1)}return!0}function UBt(i,a){var f,g=i.tag,w=i.anchor,v=[],b,E=!1,S;if(i.firstTabInLine!==-1)return!1;for(i.anchor!==null&&(i.anchorMap[i.anchor]=v),S=i.input.charCodeAt(i.position);S!==0&&(i.firstTabInLine!==-1&&(i.position=i.firstTabInLine,Ks(i,"tab characters must not be used in indentation")),!(S!==45||(b=i.input.charCodeAt(i.position+1),!sb(b))));){if(E=!0,i.position++,c1(i,!0,-1)&&i.lineIndent<=a){v.push(null),S=i.input.charCodeAt(i.position);continue}if(f=i.line,pD(i,a,NBt,!1,!0),v.push(i.result),c1(i,!0,-1),S=i.input.charCodeAt(i.position),(i.line===f||i.lineIndent>a)&&S!==0)Ks(i,"bad indentation of a sequence entry");else if(i.lineIndent<a)break}return E?(i.tag=g,i.anchor=w,i.kind="sequence",i.result=v,!0):!1}function ABe(i,a,f){var g,w,v,b,E,S,_=i.tag,M=i.anchor,F={},R=Object.create(null),B=null,z=null,Y=null,nt=!1,ot=!1,ft;if(i.firstTabInLine!==-1)return!1;for(i.anchor!==null&&(i.anchorMap[i.anchor]=F),ft=i.input.charCodeAt(i.position);ft!==0;){if(!nt&&i.firstTabInLine!==-1&&(i.position=i.firstTabInLine,Ks(i,"tab characters must not be used in indentation")),g=i.input.charCodeAt(i.position+1),v=i.line,(ft===63||ft===58)&&sb(g))ft===63?(nt&&(gD(i,F,R,B,z,null,b,E,S),B=z=Y=null),ot=!0,nt=!0,w=!0):nt?(nt=!1,w=!0):Ks(i,"incomplete explicit mapping pair; a key node is missed; or followed by a non-tabulated empty line"),i.position+=1,ft=g;else{if(b=i.line,E=i.lineStart,S=i.position,!pD(i,f,OBt,!1,!0))break;if(i.line===v){for(ft=i.input.charCodeAt(i.position);C9(ft);)ft=i.input.charCodeAt(++i.position);if(ft===58)ft=i.input.charCodeAt(++i.position),sb(ft)||Ks(i,"a whitespace character is expected after the key-value separator within a block mapping"),nt&&(gD(i,F,R,B,z,null,b,E,S),B=z=Y=null),ot=!0,nt=!1,w=!1,B=i.tag,z=i.result;else if(ot)Ks(i,"can not read an implicit mapping pair; a colon is missed");else return i.tag=_,i.anchor=M,!0}else if(ot)Ks(i,"can not read a block mapping entry; a multiline key may not be an implicit key");else return i.tag=_,i.anchor=M,!0}if((i.line===v||i.lineIndent>a)&&(nt&&(b=i.line,E=i.lineStart,S=i.position),pD(i,a,kY,!0,w)&&(nt?z=i.result:Y=i.result),nt||(gD(i,F,R,B,z,Y,b,E,S),B=z=Y=null),c1(i,!0,-1),ft=i.input.charCodeAt(i.position)),(i.line===v||i.lineIndent>a)&&ft!==0)Ks(i,"bad indentation of a mapping entry");else if(i.lineIndent<a)break}return nt&&gD(i,F,R,B,z,null,b,E,S),ot&&(i.tag=_,i.anchor=M,i.kind="mapping",i.result=F),ot}function LBe(i){var a,f=!1,g=!1,w,v,b;if(b=i.input.charCodeAt(i.position),b!==33)return!1;if(i.tag!==null&&Ks(i,"duplication of a tag property"),b=i.input.charCodeAt(++i.position),b===60?(f=!0,b=i.input.charCodeAt(++i.position)):b===33?(g=!0,w="!!",b=i.input.charCodeAt(++i.position)):w="!",a=i.position,f){do b=i.input.charCodeAt(++i.position);while(b!==0&&b!==62);i.position<i.length?(v=i.input.slice(a,i.position),b=i.input.charCodeAt(++i.position)):Ks(i,"unexpected end of the stream within a verbatim tag")}else{for(;b!==0&&!sb(b);)b===33&&(g?Ks(i,"tag suffix cannot contain exclamation marks"):(w=i.input.slice(a-1,i.position+1),FBt.test(w)||Ks(i,"named tag handle cannot contain such characters"),g=!0,a=i.position+1)),b=i.input.charCodeAt(++i.position);v=i.input.slice(a,i.position),wBe.test(v)&&Ks(i,"tag suffix cannot contain flow indicator characters")}v&&!BBt.test(v)&&Ks(i,"tag name cannot contain such characters: "+v);try{v=decodeURIComponent(v)}catch{Ks(i,"tag name is malformed: "+v)}return f?i.tag=v:m8.call(i.tagMap,w)?i.tag=i.tagMap[w]+v:w==="!"?i.tag="!"+v:w==="!!"?i.tag="tag:yaml.org,2002:"+v:Ks(i,'undeclared tag handle "'+w+'"'),!0}function DBe(i){var a,f;if(f=i.input.charCodeAt(i.position),f!==38)return!1;for(i.anchor!==null&&Ks(i,"duplication of an anchor property"),f=i.input.charCodeAt(++i.position),a=i.position;f!==0&&!sb(f)&&!fD(f);)f=i.input.charCodeAt(++i.position);return i.position===a&&Ks(i,"name of an anchor node must contain at least one character"),i.anchor=i.input.slice(a,i.position),!0}function MBe(i){var a,f,g;if(g=i.input.charCo
`),i.charCodeAt(0)===65279&&(i=i.slice(1)));var f=new kBe(i,a),g=i.indexOf("\0");for(g!==-1&&(f.position=g,Ks(f,"null byte is not allowed in input")),f.input+="\0";f.input.charCodeAt(f.position)===32;)f.lineIndent+=1,f.position+=1;for(;f.position<f.length-1;)IBe(f);return f.documents}function OBe(i,a,f){a!==null&&typeof a=="object"&&typeof f>"u"&&(f=a,a=null);var g=GBt(i,f);if(typeof a!="function")return g;for(var w=0,v=g.length;w<v;w+=1)a(g[w])}function NBe(i,a){var f=GBt(i,a);if(f.length!==0){if(f.length===1)return f[0];throw new Ox("expected a single document in the stream, but found more")}}var PBe=OBe,FBe=NBe,BBe={loadAll:PBe,load:FBe},RBe=DBt,jBe=BBe.load;function $Be(i){const a=i.match(HPt);if(!a)return{text:i,metadata:{}};let f=jBe(a[1],{schema:RBe})??{};f=typeof f=="object"&&!Array.isArray(f)?f:{};const g={};return f.displayMode&&(g.displayMode=f.displayMode.toString()),f.title&&(g.title=f.title.toString()),f.config&&(g.config=f.config),{text:i.slice(a[0].length),metadata:g}}const zBe=i=>i.replace(/\r\n?/g,`
`).replace(/<(\w+)([^>]*)>/g,(a,f,g)=>"<"+f+g.replace(/="([^"]*)"/g,"='$1'")+">"),qBe=i=>{const{text:a,metadata:f}=$Be(i),{displayMode:g,title:w,config:v={}}=f;return g&&(v.gantt||(v.gantt={}),v.gantt.displayMode=g),{title:w,config:v,text:a}},HBe=i=>{const a=uo.detectInit(i)??{},f=uo.detectDirective(i,"wrap");return Array.isArray(f)?a.wrap=f.some(({type:g})=>{}):(f==null?void 0:f.type)==="wrap"&&(a.wrap=!0),{text:uNe(i),directive:a}};function KBt(i){const a=zBe(i),f=qBe(a),g=HBe(f.text),w=MF(f.config,g.directive);return i=XPe(g.text),{code:i,title:f.title,config:w}}const VBe=5e4,UBe="graph TB;a[Maximum text size in diagram exceeded];style a fill:#faa",GBe="sandbox",KBe="loose",WBe="http://www.w3.org/2000/svg",YBe="http://www.w3.org/1999/xlink",XBe="http://www.w3.org/1999/xhtml",QBe="100%",JBe="100%",ZBe="border:0;margin:0;",tRe="margin:0",eRe="allow-top-navigation-by-user-activation allow-popups",nRe='The "iframe" tag is not supported by your browser.',rRe=["foreignobject"],iRe=["dominant-baseline"];function WBt(i){const a=KBt(i);return wY(),HNe(a.config??{}),a}async function sRe(i,a){Rgt(),i=WBt(i).code;try{await Ygt(i)}catch(f){if(a!=null&&a.suppressErrors)return!1;throw f}return!0}const YBt=(i,a,f=[])=>`
.${i} ${a} { ${f.join(" !important; ")} !important; }`,aRe=(i,a={})=>{var g;let f="";if(i.themeCSS!==void 0&&(f+=`
${i.themeCSS}`),i.fontFamily!==void 0&&(f+=`
:root { --mermaid-font-family: ${i.fontFamily}}`),i.altFontFamily!==void 0&&(f+=`
:root { --mermaid-alt-font-family: ${i.altFontFamily}}`),!BF(a)){const E=i.htmlLabels||((g=i.flowchart)==null?void 0:g.htmlLabels)?["> *","span"]:["rect","polygon","ellipse","circle","path"];for(const S in a){const _=a[S];BF(_.styles)||E.forEach(M=>{f+=YBt(_.id,M,_.styles)}),BF(_.textStyles)||(f+=YBt(_.id,"tspan",_.textStyles))}}return f},oRe=(i,a,f,g)=>{const w=aRe(i,f),v=dPe(a,w,i.themeVariables);return Igt(BNe(`${g}{${v}}`),jNe)},cRe=(i="",a,f)=>{let g=i;return!f&&!a&&(g=g.replace(/marker-end="url\([\d+./:=?A-Za-z-]*?#/g,'marker-end="url(#')),g=IF(g),g=g.replace(/<br>/g,"<br/>"),g},uRe=(i="",a)=>{var w,v;const f=(v=(w=a==null?void 0:a.viewBox)==null?void 0:w.baseVal)!=null&&v.height?a.viewBox.baseVal.height+"px":JBe,g=btoa('<body style="'+tRe+'">'+i+"</body>");return`<iframe style="width:${QBe};height:${f};${ZBe}" src="data:text/html;base64,${g}" sandbox="${eRe}">
${nRe}
</iframe>`},XBt=(i,a,f,g,w)=>{const v=i.append("div");v.attr("id",f),g&&v.attr("style",g);const b=v.append("svg").attr("id",a).attr("width","100%").attr("xmlns",WBe);return w&&b.attr("xmlns:xlink",w),b.append("g"),i};function QBt(i,a){return i.append("iframe").attr("id",a).attr("style","width: 100%; height: 100%;").attr("sandbox","")}const lRe=(i,a,f,g)=>{var w,v,b;(w=i.getElementById(a))==null||w.remove(),(v=i.getElementById(f))==null||v.remove(),(b=i.getElementById(g))==null||b.remove()},hRe=async function(i,a,f){var V,Ot,It,jt,xt,Ft;Rgt();const g=WBt(a);a=g.code;const w=o1();Kt.debug(w),a.length>((w==null?void 0:w.maxTextSize)??VBe)&&(a=UBe);const v="#"+i,b="i"+i,E="#"+b,S="d"+i,_="#"+S;let M=Tr("body");const F=w.securityLevel===GBe,R=w.securityLevel===KBe,B=w.fontFamily;if(f!==void 0){if(f&&(f.innerHTML=""),F){const Ct=QBt(Tr(f),b);M=Tr(Ct.nodes()[0].contentDocument.body),M.node().style.margin=0}else M=Tr(f);XBt(M,i,S,`font-family: ${B}`,YBe)}else{if(lRe(document,i,S,b),F){const Ct=QBt(Tr("body"),b);M=Tr(Ct.nodes()[0].contentDocument.body),M.node().style.margin=0}else M=Tr("body");XBt(M,i,S)}let z,Y;try{z=await Ygt(a,{title:g.title})}catch(Ct){z=new vBt("error"),Y=Ct}const nt=M.select(_).node(),ot=z.type,ft=nt.firstChild,wt=ft.firstChild,mt=(Ot=(V=z.renderer).getClasses)==null?void 0:Ot.call(V,a,z),ct=oRe(w,ot,mt,v),rt=document.createElement("style");rt.innerHTML=ct,ft.insertBefore(rt,wt);try{await z.renderer.draw(a,i,jFt,z)}catch(Ct){throw yPe.draw(a,i,jFt),Ct}const it=M.select(`${_} svg`),gt=(jt=(It=z.db).getAccTitle)==null?void 0:jt.call(It),Q=(Ft=(xt=z.db).getAccDescription)==null?void 0:Ft.call(xt);dRe(ot,it,gt,Q),M.select(`[id="${i}"]`).selectAll("foreignobject > *").attr("xmlns",XBe);let dt=M.select(_).node().innerHTML;if(Kt.debug("config.arrowMarkerAbsolute",w.arrowMarkerAbsolute),dt=cRe(dt,F,j1(w.arrowMarkerAbsolute)),F){const Ct=M.select(_+" svg").node();dt=uRe(dt,Ct)}else R||(dt=QL.sanitize(dt,{ADD_TAGS:rRe,ADD_ATTR:iRe}));if(APe(),Y)throw Y;const yt=Tr(F?E:_).node();return yt&&"remove"in yt&&yt.remove(),{svg:dt,bindFunctions:z.db.bindFunctions}};function fRe(i={}){var f;i!=null&&i.fontFamily&&!((f=i.themeVariables)!=null&&f.fontFamily)&&(i.themeVariables||(i.themeVariables={}),i.themeVariables.fontFamily=i.fontFamily),zNe(i),i!=null&&i.theme&&i.theme in Lx?i.themeVariables=Lx[i.theme].getThemeVariables(i.themeVariables):i&&(i.themeVariables=Lx.default.getThemeVariables(i.themeVariables));const a=typeof i=="object"?$Ne(i):zFt();d0t(a.logLevel),Rgt()}const Ygt=(i,a={})=>{const{code:f}=KBt(i);return _Pe(f,a)};function dRe(i,a,f,g){WPe(a,i),YPe(a,f,g,a.attr("id"))}const S9=Object.freeze({render:hRe,parse:sRe,getDiagramFromText:Ygt,initialize:fRe,getConfig:o1,setConfig:qFt,getSiteConfig:zFt,updateSiteConfig:qNe,reset:()=>{wY()},globalReset:()=>{wY(cD)},defaultConfig:cD});d0t(o1().logLevel),wY(o1());const gRe=async()=>{Kt.debug("Loading registered diagrams");const a=(await Promise.allSettled(Object.entries(JL).map(async([f,{detector:g,loader:w}])=>{if(w)try{Bgt(f)}catch{try{const{diagram:b,id:E}=await w();yY(E,b,g)}catch(b){throw Kt.error(`Failed to load external diagram with key ${f}. Removing from detectors.`),delete JL[f],b}}}))).filter(f=>f.status==="rejected");if(a.length>0){Kt.error(`Failed to load ${a.length} external diagrams`);for(const f of a)Kt.error(f);throw new Error(`Failed to load ${a.length} external diagrams`)}},pRe=(i,a,f)=>{Kt.warn(i),DFt(i)?(f&&f(i.str,i.hash),a.push({...i,message:i.str,error:i})):(f&&f(i),i instanceof Error&&a.push({str:i.message,message:i.message,hash:i.name,error:i}))},JBt=async function(i={querySelector:".mermaid"}){try{await bRe(i)}catch(a){if(DFt(a)&&Kt.error(a.str),_2.parseError&&_2.parseError(a),!i.suppressErrors)throw Kt.error("Use the suppressErrors option to suppress these errors"),a}},bRe=async function({postRenderCallback:i,querySelector:a,nodes:f}={querySelector:".mermaid"}){const g=S9.getConfig();Kt.debug(`${i?"":"No "}Callback function found`);let w;if(f)w=f;else if(a)w=document.querySelectorAll(a);else throw new Error("Nodes and querySelector are both undef
* Wait for document loaded before starting the execution
*/window.addEventListener("load",tRt,!1)}const vRe=function(i){_2.parseError=i},CY=[];let Xgt=!1;const eRt=async()=>{if(!Xgt){for(Xgt=!0;CY.length>0;){const i=CY.shift();if(i)try{await i()}catch(a){Kt.error("Error executing queue",a)}}Xgt=!1}},yRe=async(i,a)=>new Promise((f,g)=>{const w=()=>new Promise((v,b)=>{S9.parse(i,a).then(E=>{v(E),f(E)},E=>{var S;Kt.error("Error parsing",E),(S=_2.parseError)==null||S.call(_2,E),b(E),g(E)})});CY.push(w),eRt().catch(g)}),nRt=(i,a,f)=>new Promise((g,w)=>{const v=()=>new Promise((b,E)=>{S9.render(i,a,f).then(S=>{b(S),g(S)},S=>{var _;Kt.error("Error parsing",S),(_=_2.parseError)==null||_.call(_2,S),E(S),w(S)})});CY.push(v),eRt().catch(w)}),_2={startOnLoad:!0,mermaidAPI:S9,parse:yRe,render:nRt,init:wRe,run:JBt,registerExternalDiagrams:mRe,initialize:ZBt,parseError:void 0,contentLoaded:tRt,setParseErrorHandler:vRe,detectType:QW};var SY=function(){var i=function(br,An,Nn,Bn){for(Nn=Nn||{},Bn=br.length;Bn--;Nn[br[Bn]]=An);return Nn},a=[1,24],f=[1,25],g=[1,26],w=[1,27],v=[1,28],b=[1,63],E=[1,64],S=[1,65],_=[1,66],M=[1,67],F=[1,68],R=[1,69],B=[1,29],z=[1,30],Y=[1,31],nt=[1,32],ot=[1,33],ft=[1,34],wt=[1,35],mt=[1,36],ct=[1,37],rt=[1,38],it=[1,39],gt=[1,40],Q=[1,41],dt=[1,42],K=[1,43],yt=[1,44],V=[1,45],Ot=[1,46],It=[1,47],jt=[1,48],xt=[1,50],Ft=[1,51],Ct=[1,52],kt=[1,53],Gt=[1,54],Fe=[1,55],Mt=[1,56],pn=[1,57],Ae=[1,58],ye=[1,59],tn=[1,60],sn=[14,42],be=[14,34,36,37,38,39,40,41,42,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74],Ne=[12,14,34,36,37,38,39,40,41,42,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74],Xt=[1,82],_e=[1,83],xe=[1,84],Mn=[1,85],ce=[12,14,42],Br=[12,14,33,42],we=[12,14,33,42,76,77,79,80],Fi=[12,33],mi=[34,36,37,38,39,40,41,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74],ga={trace:function(){},yy:{},symbols_:{error:2,start:3,mermaidDoc:4,direction:5,direction_tb:6,direction_bt:7,direction_rl:8,direction_lr:9,graphConfig:10,C4_CONTEXT:11,NEWLINE:12,statements:13,EOF:14,C4_CONTAINER:15,C4_COMPONENT:16,C4_DYNAMIC:17,C4_DEPLOYMENT:18,otherStatements:19,diagramStatements:20,otherStatement:21,title:22,accDescription:23,acc_title:24,acc_title_value:25,acc_descr:26,acc_descr_value:27,acc_descr_multiline_value:28,boundaryStatement:29,boundaryStartStatement:30,boundaryStopStatement:31,boundaryStart:32,LBRACE:33,ENTERPRISE_BOUNDARY:34,attributes:35,SYSTEM_BOUNDARY:36,BOUNDARY:37,CONTAINER_BOUNDARY:38,NODE:39,NODE_L:40,NODE_R:41,RBRACE:42,diagramStatement:43,PERSON:44,PERSON_EXT:45,SYSTEM:46,SYSTEM_DB:47,SYSTEM_QUEUE:48,SYSTEM_EXT:49,SYSTEM_EXT_DB:50,SYSTEM_EXT_QUEUE:51,CONTAINER:52,CONTAINER_DB:53,CONTAINER_QUEUE:54,CONTAINER_EXT:55,CONTAINER_EXT_DB:56,CONTAINER_EXT_QUEUE:57,COMPONENT:58,COMPONENT_DB:59,COMPONENT_QUEUE:60,COMPONENT_EXT:61,COMPONENT_EXT_DB:62,COMPONENT_EXT_QUEUE:63,REL:64,BIREL:65,REL_U:66,REL_D:67,REL_L:68,REL_R:69,REL_B:70,REL_INDEX:71,UPDATE_EL_STYLE:72,UPDATE_REL_STYLE:73,UPDATE_LAYOUT_CONFIG:74,attribute:75,STR:76,STR_KEY:77,STR_VALUE:78,ATTRIBUTE:79,ATTRIBUTE_EMPTY:80,$accept:0,$end:1},terminals_:{2:"error",6:"direction_tb",7:"direction_bt",8:"direction_rl",9:"direction_lr",11:"C4_CONTEXT",12:"NEWLINE",14:"EOF",15:"C4_CONTAINER",16:"C4_COMPONENT",17:"C4_DYNAMIC",18:"C4_DEPLOYMENT",22:"title",23:"accDescription",24:"acc_title",25:"acc_title_value",26:"acc_descr",27:"acc_descr_value",28:"acc_descr_multiline_value",33:"LBRACE",34:"ENTERPRISE_BOUNDARY",36:"SYSTEM_BOUNDARY",37:"BOUNDARY",38:"CONTAINER_BOUNDARY",39:"NODE",40:"NODE_L",41:"NODE_R",42:"RBRACE",44:"PERSON",45:"PERSON_EXT",46:"SYSTEM",47:"SYSTEM_DB",48:"SYSTEM_QUEUE",49:"SYSTEM_EXT",50:"SYSTEM_EXT_DB",51:"SYSTEM_EXT_QUEUE",52:"CONTAINER",53:"CONTAINER_DB",54:"CONTAINER_QUEUE",55:"CONTAINER_EXT",56:"CONTAINER_EXT_DB",57:"CONTAINER_EXT_QUEUE",58:"COMPONENT",59:"COMPONENT_DB",60:"COMPONENT_QUEUE",61:"COMPONENT_EXT",62:"COMPONENT_EXT_DB",63:"COMPONENT_EXT_QUEUE",64:"REL",65:"BIREL",66:"REL_U",67:"REL_D",68:"REL_L",69:"REL_R",70:"REL_B",71:"REL_INDEX",72:"UPDATE_EL_STYLE",73:
`+ds.showPosition()+`
Expecting `+ya.join(", ")+", got '"+(this.terminals_[Ic]||Ic)+"'":ea="Parse error on line "+(qa+1)+": Unexpected "+(Ic==va?"end of input":"'"+(this.terminals_[Ic]||Ic)+"'"),this.parseError(ea,{text:ds.match,token:this.terminals_[Ic]||Ic,line:ds.yylineno,loc:d1,expected:ya})}if(Ea[0]instanceof Array&&Ea.length>1)throw new Error("Parse Error: multiple actions possible at state: "+wc+", token: "+Ic);switch(Ea[0]){case 1:Bn.push(Ic),pe.push(ds.yytext),Je.push(ds.yylloc),Bn.push(Ea[1]),Ic=null,xo=ds.yyleng,xn=ds.yytext,qa=ds.yylineno,d1=ds.yylloc;break;case 2:if(mc=this.productions_[Ea[1]][1],ta.$=pe[pe.length-mc],ta._$={first_line:Je[Je.length-(mc||1)].first_line,last_line:Je[Je.length-1].last_line,first_column:Je[Je.length-(mc||1)].first_column,last_column:Je[Je.length-1].last_column},I2&&(ta._$.range=[Je[Je.length-(mc||1)].range[0],Je[Je.length-1].range[1]]),gu=this.performAction.apply(ta,[xn,xo,qa,Fu.yy,Ea[1],pe,Je].concat(Ha)),typeof gu<"u")return gu;mc&&(Bn=Bn.slice(0,-1*mc*2),pe=pe.slice(0,-1*mc),Je=Je.slice(0,-1*mc)),Bn.push(this.productions_[Ea[1]][0]),pe.push(ta.$),Je.push(ta._$),ca=an[Bn[Bn.length-2]][Bn[Bn.length-1]],Bn.push(ca);break;case 3:return!0}}return!0}},Ss=function(){var br={EOF:1,parseError:function(Nn,Bn){if(this.yy.parser)this.yy.parser.parseError(Nn,Bn);else throw new Error(Nn)},setInput:function(An,Nn){return this.yy=Nn||this.yy||{},this._input=An,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var An=this._input[0];this.yytext+=An,this.yyleng++,this.offset++,this.match+=An,this.matched+=An;var Nn=An.match(/(?:\r\n?|\n).*/g);return Nn?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),An},unput:function(An){var Nn=An.length,Bn=An.split(/(?:\r\n?|\n)/g);this._input=An+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-Nn),this.offset-=Nn;var ke=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),Bn.length-1&&(this.yylineno-=Bn.length-1);var pe=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:Bn?(Bn.length===ke.length?this.yylloc.first_column:0)+ke[ke.length-Bn.length].length-Bn[0].length:this.yylloc.first_column-Nn},this.options.ranges&&(this.yylloc.range=[pe[0],pe[0]+this.yyleng-Nn]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(An){this.unput(this.match.slice(An))},pastInput:function(){var An=this.matched.substr(0,this.matched.length-this.match.length);return(An.length>20?"...":"")+An.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var An=this.match;return An.length<20&&(An+=this._input.substr(0,20-An.length)),(An.substr(0,20)+(An.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var An=this.pastInput(),Nn=new Array(An.length+1).join("-");return An+this.upcomingInput()+`
`+Nn+"^"},test_match:function(An,Nn){var Bn,ke,pe;if(this.options.backtrack_lexer&&(pe={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(pe.yylloc.range=this.yylloc.range.slice(0))),ke=An[0].match(/(?:\r\n?|\n).*/g),ke&&(this.yylineno+=ke.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:ke?ke[ke.length-1].length-ke[ke.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+An[0].length},this.yytext+=An[0],this.match+=An[0],this.matches=An,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(An[0].length),this.matched+=An[0],Bn=this.performAction.call(this,this.yy,this,Nn,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),Bn)return Bn;if(this._backtrack){for(var Je in pe)this[Je]=pe[Je];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var An,Nn,Bn,ke;this._more||(this.yytext="",this.match="");for(var pe=this._currentRules(),Je=0;Je<pe.length;Je++)if(Bn=this._input.match(this.rules[pe[Je]]),Bn&&(!Nn||Bn[0].length>Nn[0].length)){if(Nn=Bn,ke=Je,this.options.backtrack_lexer){if(An=this.test_match(Bn,pe[Je]),An!==!1)return An;if(this._backtrack){Nn=!1;continue}else return!1}else if(!this.options.flex)break}return Nn?(An=this.test_match(Nn,pe[ke]),An!==!1?An:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.
`+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var Nn=this.next();return Nn||this.lex()},begin:function(Nn){this.conditionStack.push(Nn)},popState:function(){var Nn=this.conditionStack.length-1;return Nn>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(Nn){return Nn=this.conditionStack.length-1-Math.abs(Nn||0),Nn>=0?this.conditionStack[Nn]:"INITIAL"},pushState:function(Nn){this.begin(Nn)},stateStackSize:function(){return this.conditionStack.length},options:{},performAction:function(Nn,Bn,ke,pe){switch(ke){case 0:return 6;case 1:return 7;case 2:return 8;case 3:return 9;case 4:return 22;case 5:return 23;case 6:return this.begin("acc_title"),24;case 7:return this.popState(),"acc_title_value";case 8:return this.begin("acc_descr"),26;case 9:return this.popState(),"acc_descr_value";case 10:this.begin("acc_descr_multiline");break;case 11:this.popState();break;case 12:return"acc_descr_multiline_value";case 13:break;case 14:c;break;case 15:return 12;case 16:break;case 17:return 11;case 18:return 15;case 19:return 16;case 20:return 17;case 21:return 18;case 22:return this.begin("person_ext"),45;case 23:return this.begin("person"),44;case 24:return this.begin("system_ext_queue"),51;case 25:return this.begin("system_ext_db"),50;case 26:return this.begin("system_ext"),49;case 27:return this.begin("system_queue"),48;case 28:return this.begin("system_db"),47;case 29:return this.begin("system"),46;case 30:return this.begin("boundary"),37;case 31:return this.begin("enterprise_boundary"),34;case 32:return this.begin("system_boundary"),36;case 33:return this.begin("container_ext_queue"),57;case 34:return this.begin("container_ext_db"),56;case 35:return this.begin("container_ext"),55;case 36:return this.begin("container_queue"),54;case 37:return this.begin("container_db"),53;case 38:return this.begin("container"),52;case 39:return this.begin("container_boundary"),38;case 40:return this.begin("component_ext_queue"),63;case 41:return this.begin("component_ext_db"),62;case 42:return this.begin("component_ext"),61;case 43:return this.begin("component_queue"),60;case 44:return this.begin("component_db"),59;case 45:return this.begin("component"),58;case 46:return this.begin("node"),39;case 47:return this.begin("node"),39;case 48:return this.begin("node_l"),40;case 49:return this.begin("node_r"),41;case 50:return this.begin("rel"),64;case 51:return this.begin("birel"),65;case 52:return this.begin("rel_u"),66;case 53:return this.begin("rel_u"),66;case 54:return this.begin("rel_d"),67;case 55:return this.begin("rel_d"),67;case 56:return this.begin("rel_l"),68;case 57:return this.begin("rel_l"),68;case 58:return this.begin("rel_r"),69;case 59:return this.begin("rel_r"),69;case 60:return this.begin("rel_b"),70;case 61:return this.begin("rel_index"),71;case 62:return this.begin("update_el_style"),72;case 63:return this.begin("update_rel_style"),73;case 64:return this.begin("update_layout_config"),74;case 65:return"EOF_IN_STRUCT";case 66:return this.begin("attribute"),"ATTRIBUTE_EMPTY";case 67:this.begin("attribute");break;case 68:this.popState(),this.popState();break;case 69:return 80;case 70:break;case 71:return 80;case 72:this.begin("string");break;case 73:this.popState();break;case 74:return"STR";case 75:this.begin("string_kv");break;case 76:return this.begin("string_kv_key"),"STR_KEY";case 77:this.popState(),this.begin("string_kv_value");break;case 78:return"STR_VALUE";case 79:this.popState(),this.popState();break;case 80:return"STR";case 81:return"LBRACE";case 82:return"RBRACE";case 83:return"SPACE";case 84:return"EOL";case 85:return 14}},rules:[/^(?:.*direction\s+TB[^\n]*)/,/^(?:.*direction\s+BT[^\n]*)/,/^(?:.*direction\s+RL[^\n]*)/,/^(?:.*direction\s+LR[^\n]*)/,/^(?:title\s[^#\n;]+)/,/^(?:accDescription\s[^#\n;]+)/,/^(?:accTitle\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*:\s*)/
stroke: ${i.personBorder};
fill: ${i.personBkg};
}
`,init:({c4:i,wrap:a})=>{dRt.setConf(i),Zgt.setWrap(a)}}},Symbol.toStringTag,{value:"Module"}));var ipt=function(){var i=function(Od,cs,As,to){for(As=As||{},to=Od.length;to--;As[Od[to]]=cs);return As},a=[1,4],f=[1,3],g=[1,5],w=[1,8,9,10,11,27,34,36,38,42,58,81,82,83,84,85,86,99,102,103,106,108,111,112,113,118,119,120,121],v=[2,2],b=[1,13],E=[1,14],S=[1,15],_=[1,16],M=[1,23],F=[1,25],R=[1,26],B=[1,27],z=[1,49],Y=[1,48],nt=[1,29],ot=[1,30],ft=[1,31],wt=[1,32],mt=[1,33],ct=[1,44],rt=[1,46],it=[1,42],gt=[1,47],Q=[1,43],dt=[1,50],K=[1,45],yt=[1,51],V=[1,52],Ot=[1,34],It=[1,35],jt=[1,36],xt=[1,37],Ft=[1,57],Ct=[1,8,9,10,11,27,32,34,36,38,42,58,81,82,83,84,85,86,99,102,103,106,108,111,112,113,118,119,120,121],kt=[1,61],Gt=[1,60],Fe=[1,62],Mt=[8,9,11,73,75],pn=[1,88],Ae=[1,93],ye=[1,92],tn=[1,89],sn=[1,85],be=[1,91],Ne=[1,87],Xt=[1,94],_e=[1,90],xe=[1,95],Mn=[1,86],ce=[8,9,10,11,73,75],Br=[8,9,10,11,44,73,75],we=[8,9,10,11,29,42,44,46,48,50,52,54,56,58,61,63,65,66,68,73,75,86,99,102,103,106,108,111,112,113],Fi=[8,9,11,42,58,73,75,86,99,102,103,106,108,111,112,113],mi=[42,58,86,99,102,103,106,108,111,112,113],ga=[1,121],Ss=[1,120],za=[1,128],br=[1,142],An=[1,143],Nn=[1,144],Bn=[1,145],ke=[1,130],pe=[1,132],Je=[1,136],an=[1,137],xn=[1,138],qa=[1,139],xo=[1,140],ko=[1,141],va=[1,146],Ha=[1,147],ds=[1,126],Fu=[1,127],Zs=[1,134],d1=[1,129],I2=[1,133],ll=[1,131],Ic=[8,9,10,11,27,32,34,36,38,42,58,81,82,83,84,85,86,99,102,103,106,108,111,112,113,118,119,120,121],wc=[1,149],Ea=[8,9,11],gu=[8,9,10,11,14,42,58,86,102,103,106,108,111,112,113],ta=[1,169],fo=[1,165],mc=[1,166],ca=[1,170],ya=[1,167],ea=[1,168],Zl=[75,113,116],Uc=[8,9,10,11,12,14,27,29,32,42,58,73,81,82,83,84,85,86,87,102,106,108,111,112,113],rm=[10,103],kh=[31,47,49,51,53,55,60,62,64,65,67,69,113,114,115],Md=[1,235],w0=[1,233],Id=[1,237],m0=[1,231],hg=[1,232],Gi=[1,234],cn=[1,236],Nr=[1,238],Si=[1,255],vc=[8,9,11,103],Rc=[8,9,10,11,58,81,102,103,106,107,108,109],Eh={trace:function(){},yy:{},symbols_:{error:2,start:3,graphConfig:4,document:5,line:6,statement:7,SEMI:8,NEWLINE:9,SPACE:10,EOF:11,GRAPH:12,NODIR:13,DIR:14,FirstStmtSeperator:15,ending:16,endToken:17,spaceList:18,spaceListNewline:19,verticeStatement:20,separator:21,styleStatement:22,linkStyleStatement:23,classDefStatement:24,classStatement:25,clickStatement:26,subgraph:27,textNoTags:28,SQS:29,text:30,SQE:31,end:32,direction:33,acc_title:34,acc_title_value:35,acc_descr:36,acc_descr_value:37,acc_descr_multiline_value:38,link:39,node:40,styledVertex:41,AMP:42,vertex:43,STYLE_SEPARATOR:44,idString:45,DOUBLECIRCLESTART:46,DOUBLECIRCLEEND:47,PS:48,PE:49,"(-":50,"-)":51,STADIUMSTART:52,STADIUMEND:53,SUBROUTINESTART:54,SUBROUTINEEND:55,VERTEX_WITH_PROPS_START:56,"NODE_STRING[field]":57,COLON:58,"NODE_STRING[value]":59,PIPE:60,CYLINDERSTART:61,CYLINDEREND:62,DIAMOND_START:63,DIAMOND_STOP:64,TAGEND:65,TRAPSTART:66,TRAPEND:67,INVTRAPSTART:68,INVTRAPEND:69,linkStatement:70,arrowText:71,TESTSTR:72,START_LINK:73,edgeText:74,LINK:75,edgeTextToken:76,STR:77,MD_STR:78,textToken:79,keywords:80,STYLE:81,LINKSTYLE:82,CLASSDEF:83,CLASS:84,CLICK:85,DOWN:86,UP:87,textNoTagsToken:88,stylesOpt:89,"idString[vertex]":90,"idString[class]":91,CALLBACKNAME:92,CALLBACKARGS:93,HREF:94,LINK_TARGET:95,"STR[link]":96,"STR[tooltip]":97,alphaNum:98,DEFAULT:99,numList:100,INTERPOLATE:101,NUM:102,COMMA:103,style:104,styleComponent:105,NODE_STRING:106,UNIT:107,BRKT:108,PCT:109,idStringToken:110,MINUS:111,MULT:112,UNICODE_TEXT:113,TEXT:114,TAGSTART:115,EDGE_TEXT:116,alphaNumToken:117,direction_tb:118,direction_bt:119,direction_rl:120,direction_lr:121,$accept:0,$end:1},terminals_:{2:"error",8:"SEMI",9:"NEWLINE",10:"SPACE",11:"EOF",12:"GRAPH",13:"NODIR",14:"DIR",27:"subgraph",29:"SQS",31:"SQE",32:"end",34:"acc_title",35:"acc_title_value",36:"acc_descr",37:"acc_descr_value",38:"acc_descr_multiline_value",42:"AMP",44:"STYLE_SEPARATOR",46:"DOUBLECIRCLESTART",47:"DOUBLECIRCLEEND",48:"PS",49:"PE",50:"(-",51:"-)",52:"STADIUMSTART",53:"STADIUMEND",54:"SUBROUTINESTART",55:"SUBROUTINEEND",56:"VERTEX_WITH_PROPS_START",57:"NODE_STRING[field]",58:"COLON",59:"NODE_STRING
`+th.showPosition()+`
Expecting `+b4.join(", ")+", got '"+(this.terminals_[U1]||U1)+"'":ay="Parse error on line "+(g1+1)+": Unexpected "+(U1==D8?"end of input":"'"+(this.terminals_[U1]||U1)+"'"),this.parseError(ay,{text:th.match,token:this.terminals_[U1]||U1,line:th.yylineno,loc:M8,expected:b4})}if(Pd[0]instanceof Array&&Pd.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Nd+", token: "+U1);switch(Pd[0]){case 1:to.push(U1),pu.push(th.yytext),Le.push(th.yylloc),to.push(Pd[1]),U1=null,ip=th.yyleng,$e=th.yytext,g1=th.yylineno,M8=th.yylloc;break;case 2:if(hb=this.productions_[Pd[1]][1],im.$=pu[pu.length-hb],im._$={first_line:Le[Le.length-(hb||1)].first_line,last_line:Le[Le.length-1].last_line,first_column:Le[Le.length-(hb||1)].first_column,last_column:Le[Le.length-1].last_column},N2&&(im._$.range=[Le[Le.length-(hb||1)].range[0],Le[Le.length-1].range[1]]),I8=this.performAction.apply(im,[$e,ip,g1,fg.yy,Pd[1],pu,Le].concat(g4)),typeof I8<"u")return I8;hb&&(to=to.slice(0,-1*hb*2),pu=pu.slice(0,-1*hb),Le=Le.slice(0,-1*hb)),to.push(this.productions_[Pd[1]][0]),pu.push(im.$),Le.push(im._$),Kx=iy[to[to.length-2]][to[to.length-1]],to.push(Kx);break;case 3:return!0}}return!0}},Zc=function(){var Od={EOF:1,parseError:function(As,to){if(this.yy.parser)this.yy.parser.parseError(As,to);else throw new Error(As)},setInput:function(cs,As){return this.yy=As||this.yy||{},this._input=cs,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var cs=this._input[0];this.yytext+=cs,this.yyleng++,this.offset++,this.match+=cs,this.matched+=cs;var As=cs.match(/(?:\r\n?|\n).*/g);return As?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),cs},unput:function(cs){var As=cs.length,to=cs.split(/(?:\r\n?|\n)/g);this._input=cs+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-As),this.offset-=As;var Ci=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),to.length-1&&(this.yylineno-=to.length-1);var pu=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:to?(to.length===Ci.length?this.yylloc.first_column:0)+Ci[Ci.length-to.length].length-to[0].length:this.yylloc.first_column-As},this.options.ranges&&(this.yylloc.range=[pu[0],pu[0]+this.yyleng-As]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(cs){this.unput(this.match.slice(cs))},pastInput:function(){var cs=this.matched.substr(0,this.matched.length-this.match.length);return(cs.length>20?"...":"")+cs.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var cs=this.match;return cs.length<20&&(cs+=this._input.substr(0,20-cs.length)),(cs.substr(0,20)+(cs.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var cs=this.pastInput(),As=new Array(cs.length+1).join("-");return cs+this.upcomingInput()+`
`+As+"^"},test_match:function(cs,As){var to,Ci,pu;if(this.options.backtrack_lexer&&(pu={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(pu.yylloc.range=this.yylloc.range.slice(0))),Ci=cs[0].match(/(?:\r\n?|\n).*/g),Ci&&(this.yylineno+=Ci.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:Ci?Ci[Ci.length-1].length-Ci[Ci.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+cs[0].length},this.yytext+=cs[0],this.match+=cs[0],this.matches=cs,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(cs[0].length),this.matched+=cs[0],to=this.performAction.call(this,this.yy,this,As,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),to)return to;if(this._backtrack){for(var Le in pu)this[Le]=pu[Le];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var cs,As,to,Ci;this._more||(this.yytext="",this.match="");for(var pu=this._currentRules(),Le=0;Le<pu.length;Le++)if(to=this._input.match(this.rules[pu[Le]]),to&&(!As||to[0].length>As[0].length)){if(As=to,Ci=Le,this.options.backtrack_lexer){if(cs=this.test_match(to,pu[Le]),cs!==!1)return cs;if(this._backtrack){As=!1;continue}else return!1}else if(!this.options.flex)break}return As?(cs=this.test_match(As,pu[Ci]),cs!==!1?cs:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.
`+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var As=this.next();return As||this.lex()},begin:function(As){this.conditionStack.push(As)},popState:function(){var As=this.conditionStack.length-1;return As>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(As){return As=this.conditionStack.length-1-Math.abs(As||0),As>=0?this.conditionStack[As]:"INITIAL"},pushState:function(As){this.begin(As)},stateStackSize:function(){return this.conditionStack.length},options:{},performAction:function(As,to,Ci,pu){switch(Ci){case 0:return this.begin("acc_title"),34;case 1:return this.popState(),"acc_title_value";case 2:return this.begin("acc_descr"),36;case 3:return this.popState(),"acc_descr_value";case 4:this.begin("acc_descr_multiline");break;case 5:this.popState();break;case 6:return"acc_descr_multiline_value";case 7:this.begin("callbackname");break;case 8:this.popState();break;case 9:this.popState(),this.begin("callbackargs");break;case 10:return 92;case 11:this.popState();break;case 12:return 93;case 13:return"MD_STR";case 14:this.popState();break;case 15:this.begin("md_string");break;case 16:return"STR";case 17:this.popState();break;case 18:this.pushState("string");break;case 19:return 81;case 20:return 99;case 21:return 82;case 22:return 101;case 23:return 83;case 24:return 84;case 25:return 94;case 26:this.begin("click");break;case 27:this.popState();break;case 28:return 85;case 29:return As.lex.firstGraph()&&this.begin("dir"),12;case 30:return As.lex.firstGraph()&&this.begin("dir"),12;case 31:return As.lex.firstGraph()&&this.begin("dir"),12;case 32:return 27;case 33:return 32;case 34:return 95;case 35:return 95;case 36:return 95;case 37:return 95;case 38:return this.popState(),13;case 39:return this.popState(),14;case 40:return this.popState(),14;case 41:return this.popState(),14;case 42:return this.popState(),14;case 43:return this.popState(),14;case 44:return this.popState(),14;case 45:return this.popState(),14;case 46:return this.popState(),14;case 47:return this.popState(),14;case 48:return this.popState(),14;case 49:return 118;case 50:return 119;case 51:return 120;case 52:return 121;case 53:return 102;case 54:return 108;case 55:return 44;case 56:return 58;case 57:return 42;case 58:return 8;case 59:return 103;case 60:return 112;case 61:return this.popState(),75;case 62:return this.pushState("edgeText"),73;case 63:return 116;case 64:return this.popState(),75;case 65:return this.pushState("thickEdgeText"),73;case 66:return 116;case 67:return this.popState(),75;case 68:return this.pushState("dottedEdgeText"),73;case 69:return 116;case 70:return 75;case 71:return this.popState(),51;case 72:return"TEXT";case 73:return this.pushState("ellipseText"),50;case 74:return this.popState(),53;case 75:return this.pushState("text"),52;case 76:return this.popState(),55;case 77:return this.pushState("text"),54;case 78:return 56;case 79:return this.pushState("text"),65;case 80:return this.popState(),62;case 81:return this.pushState("text"),61;case 82:return this.popState(),47;case 83:return this.pushState("text"),46;case 84:return this.popState(),67;case 85:return this.popState(),69;case 86:return 114;case 87:return this.pushState("trapText"),66;case 88:return this.pushState("trapText"),68;case 89:return 115;case 90:return 65;case 91:return 87;case 92:return"SEP";case 93:return 86;case 94:return 112;case 95:return 108;case 96:return 42;case 97:return 106;case 98:return 111;case 99:return 113;case 100:return this.popState(),60;case 101:return this.pushState("text"),60;case 102:return this.popState(),49;case 103:return this.pushState("text"),48;case 104:return this.popState(),31;case 105:return this.pushState("text"),29;case 106:return this.popState(),64;case 107:return this.pushState("text"),63;case 108:return"TEXT";case 109:return"QUOTE";case 110:return 9;case 111:return 10;case 112
Initialize mermaid with maxEdges set to a higher number to allow more edges.
You cannot set this config via configuration inside the diagram as it is a secure config.
You have to call mermaid.initialize.`)},wRt=function(i,a,f){Kt.info("addLink (abc78)",i,a,f);let g,w;for(g=0;g<i.length;g++)for(w=0;w<a.length;w++)bRt(i[g],a[w],f)},mRt=function(i,a){i.forEach(function(f){f==="default"?Qv.defaultInterpolate=a:Qv[f].interpolate=a})},vRt=function(i,a){i.forEach(function(f){if(f>=Qv.length)throw new Error(`The index ${f} for linkStyle is out of bounds. Valid indices for linkStyle are between 0 and ${Qv.length-1}. (Help: Ensure that the index is within the range of existing edges.)`);f==="default"?Qv.defaultStyle=a:(uo.isSubstringInArray("fill",a)===-1&&a.push("fill:none"),Qv[f].style=a)})},yRt=function(i,a){i.split(",").forEach(function(f){wD[f]===void 0&&(wD[f]={id:f,styles:[],textStyles:[]}),a!=null&&a.forEach(function(g){if(g.match("color")){const w=g.replace("fill","bgFill").replace("color","fill");wD[f].textStyles.push(w)}wD[f].styles.push(g)})})},xRt=function(i){Zw=i,Zw.match(/.*</)&&(Zw="RL"),Zw.match(/.*\^/)&&(Zw="BT"),Zw.match(/.*>/)&&(Zw="LR"),Zw.match(/.*v/)&&(Zw="TB"),Zw==="TD"&&(Zw="TB")},jY=function(i,a){i.split(",").forEach(function(f){let g=f;jl[g]!==void 0&&jl[g].classes.push(a),OY[g]!==void 0&&OY[g].classes.push(a)})},hje=function(i,a){i.split(",").forEach(function(f){a!==void 0&&(NY[FY==="gen-1"?zF(f):f]=RY(a))})},fje=function(i,a,f){let g=zF(i);if(Re().securityLevel!=="loose"||a===void 0)return;let w=[];if(typeof f=="string"){w=f.split(/,(?=(?:(?:[^"]*"){2})*[^"]*$)/);for(let v=0;v<w.length;v++){let b=w[v].trim();b.charAt(0)==='"'&&b.charAt(b.length-1)==='"'&&(b=b.substr(1,b.length-2)),w[v]=b}}w.length===0&&w.push(i),jl[i]!==void 0&&(jl[i].haveCallback=!0,BY.push(function(){const v=document.querySelector(`[id="${g}"]`);v!==null&&v.addEventListener("click",function(){uo.runFunc(a,...w)},!1)}))},kRt=function(i,a,f){i.split(",").forEach(function(g){jl[g]!==void 0&&(jl[g].link=uo.formatUrl(a,bD),jl[g].linkTarget=f)}),jY(i,"clickable")},ERt=function(i){if(NY.hasOwnProperty(i))return NY[i]},TRt=function(i,a,f){i.split(",").forEach(function(g){fje(g,a,f)}),jY(i,"clickable")},CRt=function(i){BY.forEach(function(a){a(i)})},SRt=function(){return Zw.trim()},_Rt=function(){return jl},ARt=function(){return Qv},LRt=function(){return wD},DRt=function(i){let a=Tr(".mermaidTooltip");(a._groups||a)[0][0]===null&&(a=Tr("body").append("div").attr("class","mermaidTooltip").style("opacity",0)),Tr(i).select("svg").selectAll("g.node").on("mouseover",function(){const w=Tr(this);if(w.attr("title")===null)return;const b=this.getBoundingClientRect();a.transition().duration(200).style("opacity",".9"),a.text(w.attr("title")).style("left",window.scrollX+b.left+(b.right-b.left)/2+"px").style("top",window.scrollY+b.bottom+"px"),a.html(a.html().replace(/&lt;br\/&gt;/g,"<br/>")),w.classed("hover",!0)}).on("mouseout",function(){a.transition().duration(500).style("opacity",0),Tr(this).classed("hover",!1)})};BY.push(DRt);const MRt=function(i="gen-1"){jl={},wD={},Qv=[],BY=[DRt],Px=[],OY={},PY=0,NY={},apt=!0,FY=i,bD=Re(),ag()},IRt=i=>{FY=i||"gen-2"},ORt=function(){return"fill:#ffa;stroke: #f66; stroke-width: 3px; stroke-dasharray: 5, 5;fill:#ffa;stroke: #666;"},NRt=function(i,a,f){let g=i.text.trim(),w=f.text;i===f&&f.text.match(/\s/)&&(g=void 0);function v(M){const F={boolean:{},number:{},string:{}},R=[];let B;return{nodeList:M.filter(function(Y){const nt=typeof Y;return Y.stmt&&Y.stmt==="dir"?(B=Y.value,!1):Y.trim()===""?!1:nt in F?F[nt].hasOwnProperty(Y)?!1:F[nt][Y]=!0:R.includes(Y)?!1:R.push(Y)}),dir:B}}let b=[];const{nodeList:E,dir:S}=v(b.concat.apply(b,a));if(b=E,FY==="gen-1")for(let M=0;M<b.length;M++)b[M]=zF(b[M]);g=g||"subGraph"+PY,w=w||"",w=RY(w),PY=PY+1;const _={id:g,nodes:b,title:w.trim(),classes:[],dir:S,labelType:f.type};return Kt.info("Adding",_.id,_.nodes,_.dir),_.nodes=HRt(_,Px).nodes,Px.push(_),OY[g]=_,g},dje=function(i){for(const[a,f]of Px.entries())if(f.id===i)return a;return-1};let qF=-1;const PRt=[],FRt=function(i,a){const f=Px[a].nodes;if(qF=qF+1,qF>2e3)return;if(PRt[qF]=a,Px[a].id===i)return{result:!0,count:0};let g=0,w=1;for(;g<f.length;){const v=dje(f[g]);if(v>=0){const b=FRt(i,v);if
`),w=0;w<g.length;w++)f.append("tspan").attr("xml:space","preserve").attr("dy","1em").attr("x","1").text(g[w]);return a4(f,a.labelStyle),f}function qVe(i){for(var a="",f=!1,g,w=0;w<i.length;++w)if(g=i[w],f){switch(g){case"n":a+=`
`;break;default:a+=g}f=!1}else g==="\\"?f=!0:a+=g;return a}function Ipt(i,a,f){var g=a.label,w=i.append("g");a.labelType==="svg"?$Ve(w,a):typeof g!="string"||a.labelType==="html"?Mpt(w,a):zVe(w,a);var v=w.node().getBBox(),b;switch(f){case"top":b=-a.height/2;break;case"bottom":b=a.height/2-v.height;break;default:b=-v.height/2}return w.attr("transform","translate("+-v.width/2+","+b+")"),w}var Opt=function(i,a){var f=a.nodes().filter(function(v){return t$t(a,v)}),g=i.selectAll("g.cluster").data(f,function(v){return v});Jv(g.exit(),a).style("opacity",0).remove();var w=g.enter().append("g").attr("class","cluster").attr("id",function(v){var b=a.node(v);return b.id}).style("opacity",0).each(function(v){var b=a.node(v),E=Tr(this);Tr(this).append("rect");var S=E.append("g").attr("class","label");Ipt(S,b,b.clusterLabelPos)});return g=g.merge(w),g=Jv(g,a).style("opacity",1),g.selectAll("rect").each(function(v){var b=a.node(v),E=Tr(this);a4(E,b.style)}),g};function HVe(i){Opt=i}let Npt=function(i,a){var f=i.selectAll("g.edgeLabel").data(a.edges(),function(w){return e$t(w)}).classed("update",!0);f.exit().remove(),f.enter().append("g").classed("edgeLabel",!0).style("opacity",0),f=i.selectAll("g.edgeLabel"),f.each(function(w){var v=Tr(this);v.select(".label").remove();var b=a.edge(w),E=Ipt(v,a.edge(w),0).classed("label",!0),S=E.node().getBBox();b.labelId&&E.attr("id",b.labelId),lo(b,"width")||(b.width=S.width),lo(b,"height")||(b.height=S.height)});var g;return f.exit?g=f.exit():g=f.selectAll(null),Jv(g,a).style("opacity",0).remove(),f};function VVe(i){Npt=i}function r$t(i,a){return i.intersect(a)}var Ppt=function(i,a,f){var g=i.selectAll("g.edgePath").data(a.edges(),function(b){return e$t(b)}).classed("update",!0),w=YVe(g,a);XVe(g,a);var v=g.merge!==void 0?g.merge(w):g;return Jv(v,a).style("opacity",1),v.each(function(b){var E=Tr(this),S=a.edge(b);S.elem=this,S.id&&E.attr("id",S.id),n$t(E,S.class,(E.classed("update")?"update ":"")+"edgePath")}),v.selectAll("path.path").each(function(b){var E=a.edge(b);E.arrowheadId=WY("arrowhead");var S=Tr(this).attr("marker-end",function(){return"url("+GVe(location.href,E.arrowheadId)+")"}).style("fill","none");Jv(S,a).attr("d",function(_){return KVe(a,_)}),a4(S,E.style)}),v.selectAll("defs *").remove(),v.selectAll("defs").each(function(b){var E=a.edge(b),S=f[E.arrowhead];S(Tr(this),E.arrowheadId,E,"arrowhead")}),v};function UVe(i){Ppt=i}function GVe(i,a){var f=i.split("#")[0];return f+"#"+a}function KVe(i,a){var f=i.edge(a),g=i.node(a.v),w=i.node(a.w),v=f.points.slice(1,f.points.length-1);return v.unshift(r$t(g,v[0])),v.push(r$t(w,v[v.length-1])),i$t(f,v)}function i$t(i,a){var f=(Ax||TAe.line)().x(function(g){return g.x}).y(function(g){return g.y});return(f.curve||f.interpolate)(i.curve),f(a)}function WVe(i){var a=i.getBBox(),f=i.ownerSVGElement.getScreenCTM().inverse().multiply(i.getScreenCTM()).translate(a.width/2,a.height/2);return{x:f.e,y:f.f}}function YVe(i,a){var f=i.enter().append("g").attr("class","edgePath").style("opacity",0);return f.append("path").attr("class","path").attr("d",function(g){var w=a.edge(g),v=a.node(g.v).elem,b=M9(w.points.length).map(function(){return WVe(v)});return i$t(w,b)}),f.append("defs"),f}function XVe(i,a){var f=i.exit();Jv(f,a).style("opacity",0).remove()}var Fpt=function(i,a,f){var g=a.nodes().filter(function(b){return!t$t(a,b)}),w=i.selectAll("g.node").data(g,function(b){return b}).classed("update",!0);w.exit().remove(),w.enter().append("g").attr("class","node").style("opacity",0),w=i.selectAll("g.node"),w.each(function(b){var E=a.node(b),S=Tr(this);n$t(S,E.class,(S.classed("update")?"update ":"")+"node"),S.select("g.label").remove();var _=S.append("g").attr("class","label"),M=Ipt(_,E),F=f[E.shape],R=KF(M.node().getBBox(),"width","height");E.elem=this,E.id&&S.attr("id",E.id),E.labelId&&_.attr("id",E.labelId),lo(E,"width")&&(R.width=E.width),lo(E,"height")&&(R.height=E.height),R.width+=E.paddingLeft+E.paddingRight,R.height+=E.paddingTop+E.paddingBottom,_.attr("transform","translate("+(E.paddingLeft-E.paddingRight)/2+","+(E.paddingTop-E.paddingBottom)/2+")");var B
`),b.style===void 0&&(M.style=M.style||"stroke: #333; stroke-width: 1.5px;fill:none"),M.labelStyle=M.labelStyle.replace("color:","fill:"))),M.id=E,M.class=S+" "+_,M.minlen=b.length||1,a.setEdge(f.db.lookUpDomId(b.start),f.db.lookUpDomId(b.end),M,g)})},wUe={setConf:bUe,addVertices:v$t,addEdges:y$t,getClasses:function(i,a){return Kt.info("Extracting classes"),a.db.getClasses()},draw:function(i,a,f,g){Kt.info("Drawing flowchart");const{securityLevel:w,flowchart:v}=Re();let b;w==="sandbox"&&(b=Tr("#i"+a));const E=Tr(w==="sandbox"?b.nodes()[0].contentDocument.body:"body"),S=w==="sandbox"?b.nodes()[0].contentDocument:document;let _=g.db.getDirection();_===void 0&&(_="TD");const M=v.nodeSpacing||50,F=v.rankSpacing||50,R=new l1({multigraph:!0,compound:!0}).setGraph({rankdir:_,nodesep:M,ranksep:F,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}});let B;const z=g.db.getSubGraphs();for(let rt=z.length-1;rt>=0;rt--)B=z[rt],g.db.addVertex(B.id,B.title,"group",void 0,B.classes);const Y=g.db.getVertices();Kt.warn("Get vertices",Y);const nt=g.db.getEdges();let ot=0;for(ot=z.length-1;ot>=0;ot--){B=z[ot],$Ot("cluster").append("text");for(let rt=0;rt<B.nodes.length;rt++)Kt.warn("Setting subgraph",B.nodes[rt],g.db.lookUpDomId(B.nodes[rt]),g.db.lookUpDomId(B.id)),R.setParent(g.db.lookUpDomId(B.nodes[rt]),g.db.lookUpDomId(B.id))}v$t(Y,R,a,E,S,g),y$t(nt,R,g);const ft=new cUe;pUe.addToRender(ft),ft.arrows().none=function(it,gt,Q,dt){const yt=it.append("marker").attr("id",gt).attr("viewBox","0 0 10 10").attr("refX",9).attr("refY",5).attr("markerUnits","strokeWidth").attr("markerWidth",8).attr("markerHeight",6).attr("orient","auto").append("path").attr("d","M 0 0 L 0 0 L 0 0 z");a4(yt,Q[dt+"Style"])},ft.arrows().normal=function(it,gt){it.append("marker").attr("id",gt).attr("viewBox","0 0 10 10").attr("refX",9).attr("refY",5).attr("markerUnits","strokeWidth").attr("markerWidth",8).attr("markerHeight",6).attr("orient","auto").append("path").attr("d","M 0 0 L 10 5 L 0 10 z").attr("class","arrowheadPath").style("stroke-width",1).style("stroke-dasharray","1,0")};const wt=E.select(`[id="${a}"]`),mt=E.select("#"+a+" g");for(ft(mt,R),mt.selectAll("g.node").attr("title",function(){return g.db.getTooltip(this.id)}),g.db.indexNodes("subGraph"+ot),ot=0;ot<z.length;ot++)if(B=z[ot],B.title!=="undefined"){const rt=S.querySelectorAll("#"+a+' [id="'+g.db.lookUpDomId(B.id)+'"] rect'),it=S.querySelectorAll("#"+a+' [id="'+g.db.lookUpDomId(B.id)+'"]'),gt=rt[0].x.baseVal.value,Q=rt[0].y.baseVal.value,dt=rt[0].width.baseVal.value,yt=Tr(it[0]).select(".label");yt.attr("transform",`translate(${gt+dt/2}, ${Q+14})`),yt.attr("id",a+"Text");for(let V=0;V<B.classes.length;V++)it[0].classList.add(B.classes[V])}if(!v.htmlLabels){const rt=S.querySelectorAll('[id="'+a+'"] .edgeLabel .label');for(const it of rt){const gt=it.getBBox(),Q=S.createElementNS("http://www.w3.org/2000/svg","rect");Q.setAttribute("rx",0),Q.setAttribute("ry",0),Q.setAttribute("width",gt.width),Q.setAttribute("height",gt.height),it.insertBefore(Q,it.firstChild)}}w8(R,wt,v.diagramPadding,v.useMaxWidth),Object.keys(Y).forEach(function(rt){const it=Y[rt];if(it.link){const gt=E.select("#"+a+' [id="'+g.db.lookUpDomId(rt)+'"]');if(gt){const Q=S.createElementNS("http://www.w3.org/2000/svg","a");Q.setAttributeNS("http://www.w3.org/2000/svg","class",it.classes.join(" ")),Q.setAttributeNS("http://www.w3.org/2000/svg","href",it.link),Q.setAttributeNS("http://www.w3.org/2000/svg","rel","noopener"),w==="sandbox"?Q.setAttributeNS("http://www.w3.org/2000/svg","target","_top"):it.linkTarget&&Q.setAttributeNS("http://www.w3.org/2000/svg","target",it.linkTarget);const dt=gt.insert(function(){return Q},":first-child"),K=gt.select(".label-container");K&&dt.append(function(){return K.node()});const yt=gt.select(".label");yt&&dt.append(function(){return yt.node()})}}})}};function jx(i){var a={options:{directed:i.isDirected(),multigraph:i.isMultigraph(),compound:i.isCompound()},nodes:mUe(i),edges:vUe(i)};return Tf(i.graph())||(a.value=fjt(i.graph())),a}function mUe(i){return u1(i.nodes(),function(a){var f=i.node(a),g
`;break}case-3:{b=`\r
`;break}case-2:{b=a?" ":" ";break}case-1:{if(!a&&w)continue;b=" ";break}default:b=String.fromCharCode(v)}w=v===-2,g.push(b)}return g.join("")}const lKe=Object.freeze(Object.defineProperty({__proto__:null,attentionMarkers:{null:[42,95]},contentInitial:{91:fGe},disable:{null:[]},document:{42:cb,43:cb,45:cb,48:cb,49:cb,50:cb,51:cb,52:cb,53:cb,54:cb,55:cb,56:cb,57:cb,62:_$t},flow:{35:mGe,42:QY,45:[R$t,QY],60:kGe,61:R$t,95:QY,96:I$t,126:I$t},flowInitial:{[-2]:Upt,[-1]:Upt,32:Upt},insideSpan:{null:[Hpt,rKe]},string:{38:D$t,92:A$t},text:{[-5]:Kpt,[-4]:Kpt,[-3]:Kpt,33:$Ge,38:D$t,42:Hpt,60:[HUe,LGe],91:qGe,92:[bGe,A$t],93:Gpt,95:Hpt,96:nGe}},Symbol.toStringTag,{value:"Module"}));function hKe(i){const f=_Ue([lKe,...(i||{}).extensions||[]]),g={defined:[],lazy:{},constructs:f,content:w(FUe),document:w(RUe),flow:w(eKe),string:w(iKe),text:w(sKe)};return g;function w(v){return b;function b(E){return oKe(g,v,E)}}}const z$t=/[\0\t\n\r]/g;function fKe(){let i=1,a="",f=!0,g;return w;function w(v,b,E){const S=[];let _,M,F,R,B;for(v=a+v.toString(b),F=0,a="",f&&(v.charCodeAt(0)===65279&&F++,f=void 0);F<v.length;){if(z$t.lastIndex=F,_=z$t.exec(v),R=_&&_.index!==void 0?_.index:v.length,B=v.charCodeAt(R),!_){a=v.slice(F);break}if(B===10&&F===R&&g)S.push(-3),g=void 0;else switch(g&&(S.push(-5),g=void 0),F<R&&(S.push(v.slice(F,R)),i+=R-F),B){case 0:{S.push(65533),i++;break}case 9:{for(M=Math.ceil(i/4)*4,S.push(-2);i++<M;)S.push(-1);break}case 10:{S.push(-4),i=1;break}default:g=!0,i=1}F=R+1}return E&&(g&&S.push(-5),a&&S.push(a),S.push(null)),S}}function dKe(i){for(;!O$t(i););return i}function q$t(i,a){const f=Number.parseInt(i,a);return f<9||f===11||f>13&&f<32||f>126&&f<160||f>55295&&f<57344||f>64975&&f<65008||(f&65535)===65535||(f&65535)===65534||f>1114111?"<22>":String.fromCharCode(f)}const gKe=/\\([!-/:-@[-`{-~])|&(#(?:\d{1,7}|x[\da-f]{1,6})|[\da-z]{1,31});/gi;function pKe(i){return i.replace(gKe,bKe)}function bKe(i,a,f){if(a)return a;if(f.charCodeAt(0)===35){const w=f.charCodeAt(1),v=w===120||w===88;return q$t(f.slice(v?2:1),v?16:10)}return Vpt(f)||i}function JY(i){return!i||typeof i!="object"?"":"position"in i||"type"in i?H$t(i.position):"start"in i||"end"in i?H$t(i):"line"in i||"column"in i?Wpt(i):""}function Wpt(i){return V$t(i&&i.line)+":"+V$t(i&&i.column)}function H$t(i){return Wpt(i&&i.start)+"-"+Wpt(i&&i.end)}function V$t(i){return i&&typeof i=="number"?i:1}const U$t={}.hasOwnProperty,G$t=function(i,a,f){return typeof a!="string"&&(f=a,a=void 0),wKe(f)(dKe(hKe(f).document().write(fKe()(i,a,!0))))};function wKe(i){const a={transforms:[],canContainEols:["emphasis","fragment","heading","paragraph","strong"],enter:{autolink:E(ga),autolinkProtocol:K,autolinkEmail:K,atxHeading:E(Br),blockQuote:E(Xt),characterEscape:K,characterReference:K,codeFenced:E(_e),codeFencedFenceInfo:S,codeFencedFenceMeta:S,codeIndented:E(_e,S),codeText:E(xe,S),codeTextData:K,data:K,codeFlowValue:K,definition:E(Mn),definitionDestinationString:S,definitionLabelString:S,definitionTitleString:S,emphasis:E(ce),hardBreakEscape:E(we),hardBreakTrailing:E(we),htmlFlow:E(Fi,S),htmlFlowData:K,htmlText:E(Fi,S),htmlTextData:K,image:E(mi),label:S,link:E(ga),listItem:E(za),listItemValue:z,listOrdered:E(Ss,B),listUnordered:E(Ss),paragraph:E(br),reference:Ae,referenceString:S,resourceDestinationString:S,resourceTitleString:S,setextHeading:E(Br),strong:E(An),thematicBreak:E(Bn)},exit:{atxHeading:M(),atxHeadingSequence:it,autolink:M(),autolinkEmail:Ne,autolinkProtocol:be,blockQuote:M(),characterEscapeValue:yt,characterReferenceMarkerHexadecimal:tn,characterReferenceMarkerNumeric:tn,characterReferenceValue:sn,codeFenced:M(ft),codeFencedFence:ot,codeFencedFenceInfo:Y,codeFencedFenceMeta:nt,codeFlowValue:yt,codeIndented:M(wt),codeText:M(xt),codeTextData:yt,data:yt,definition:M(),definitionDestinationString:rt,definitionLabelString:mt,definitionTitleString:ct,emphasis:M(),hardBreakEscape:M(Ot),hardBreakTrailing:M(Ot),htmlFlow:M(It),htmlFlowData:yt,htmlText:M(jt),htmlTextData:yt,image:M(Ct),label:Gt,labelText:kt,lineEnding:V,link:M(Ft),listItem:M(),listOrdered:M(),listUnordered:M(),paragraph:
`);return BL(a)}function yKe(i){const a=vKe(i),{children:f}=G$t(a),g=[[]];let w=0;function v(b,E="normal"){b.type==="text"?b.value.split(`
`).forEach((_,M)=>{M!==0&&(w++,g.push([])),_.split(" ").forEach(F=>{F&&g[w].push({content:F,type:E})})}):(b.type==="strong"||b.type==="emphasis")&&b.children.forEach(S=>{v(S,b.type)})}return f.forEach(b=>{b.type==="paragraph"&&b.children.forEach(E=>{v(E)})}),g}function xKe(i){const{children:a}=G$t(i);function f(g){return g.type==="text"?g.value.replace(/\n/g,"<br/>"):g.type==="strong"?`<strong>${g.children.map(f).join("")}</strong>`:g.type==="emphasis"?`<em>${g.children.map(f).join("")}</em>`:g.type==="paragraph"?`<p>${g.children.map(f).join("")}</p>`:`Unsupported markdown: ${g.type}`}return a.map(f).join("")}function kKe(i){return Intl.Segmenter?[...new Intl.Segmenter().segment(i)].map(a=>a.segment):[...i]}function EKe(i,a){const f=kKe(a.content);return Y$t(i,[],f,a.type)}function Y$t(i,a,f,g){if(f.length===0)return[{content:a.join(""),type:g},{content:"",type:g}];const[w,...v]=f,b=[...a,w];return i([{content:b.join(""),type:g}])?Y$t(i,b,v,g):(a.length===0&&w&&(a.push(w),f.shift()),[{content:a.join(""),type:g},{content:f.join(""),type:g}])}function TKe(i,a){if(i.some(({content:f})=>f.includes(`
`)))throw new Error("splitLineToFitWidth does not support newlines in the line");return Ypt(i,a)}function Ypt(i,a,f=[],g=[]){if(i.length===0)return g.length>0&&f.push(g),f.length>0?f:[];let w="";i[0].content===" "&&(w=" ",i.shift());const v=i.shift()??{content:" ",type:"normal"},b=[...g];if(w!==""&&b.push({content:w,type:"normal"}),b.push(v),a(b))return Ypt(i,a,f,b);if(g.length>0)f.push(g),i.unshift(v);else if(v.content){const[E,S]=EKe(a,v);f.push([E]),S.content&&i.unshift(S)}return Ypt(i,a,f)}function CKe(i,a){a&&i.attr("style",a)}function SKe(i,a,f,g,w=!1){const v=i.append("foreignObject"),b=v.append("xhtml:div"),E=a.label,S=a.isNode?"nodeLabel":"edgeLabel";b.html(`
<span class="${S} ${g}" `+(a.labelStyle?'style="'+a.labelStyle+'"':"")+">"+E+"</span>"),CKe(b,a.labelStyle),b.style("display","table-cell"),b.style("white-space","nowrap"),b.style("max-width",f+"px"),b.attr("xmlns","http://www.w3.org/1999/xhtml"),w&&b.attr("class","labelBkg");let _=b.node().getBoundingClientRect();return _.width===f&&(b.style("display","table"),b.style("white-space","break-spaces"),b.style("width",f+"px"),_=b.node().getBoundingClientRect()),v.style("width",_.width),v.style("height",_.height),v.node()}function Xpt(i,a,f){return i.append("tspan").attr("class","text-outer-tspan").attr("x",0).attr("y",a*f-.1+"em").attr("dy",f+"em")}function _Ke(i,a,f){const g=i.append("text"),w=Xpt(g,1,a);Qpt(w,f);const v=w.node().getComputedTextLength();return g.remove(),v}function AKe(i,a,f){var b;const g=i.append("text"),w=Xpt(g,1,a);Qpt(w,[{content:f,type:"normal"}]);const v=(b=w.node())==null?void 0:b.getBoundingClientRect();return v&&g.remove(),v}function LKe(i,a,f,g=!1){const v=a.append("g"),b=v.insert("rect").attr("class","background"),E=v.append("text").attr("y","-10.1");let S=0;for(const _ of f){const M=R=>_Ke(v,1.1,R)<=i,F=M(_)?[_]:TKe(_,M);for(const R of F){const B=Xpt(E,S,1.1);Qpt(B,R),S++}}if(g){const _=E.node().getBBox(),M=2;return b.attr("x",-M).attr("y",-M).attr("width",_.width+2*M).attr("height",_.height+2*M),v.node()}else return E.node()}function Qpt(i,a){i.text(""),a.forEach((f,g)=>{const w=i.append("tspan").attr("font-style",f.type==="emphasis"?"italic":"normal").attr("class","text-inner-tspan").attr("font-weight",f.type==="strong"?"bold":"normal");g===0?w.text(f.content):w.text(" "+f.content)})}const ZY=(i,a="",{style:f="",isTitle:g=!1,classes:w="",useHtmlLabels:v=!0,isNode:b=!0,width:E=200,addSvgBackground:S=!1}={})=>{if(Kt.info("createText",a,f,g,w,v,b,S),v){const _=xKe(a),M={isNode:b,label:IF(_).replace(/fa[blrs]?:fa-[\w-]+/g,R=>`<i class='${R.replace(":"," ")}'></i>`),labelStyle:f.replace("fill:","color:")};return SKe(i,M,E,w,S)}else{const _=yKe(a);return LKe(E,i,_,S)}},$1=async(i,a,f,g)=>{let w;const v=a.useHtmlLabels||j1(Re().flowchart.htmlLabels);f?w=f:w="node default";const b=i.insert("g").attr("class",w).attr("id",a.domId||a.id),E=b.insert("g").attr("class","label").attr("style",a.labelStyle);let S;a.labelText===void 0?S="":S=typeof a.labelText=="string"?a.labelText:a.labelText[0];const _=E.node();let M;a.labelType==="markdown"?M=ZY(E,Ef(IF(S),Re()),{useHtmlLabels:v,width:a.width||Re().flowchart.wrappingWidth,classes:"markdown-node-label"}):M=_.appendChild(ab(Ef(IF(S),Re()),a.labelStyle,!1,g));let F=M.getBBox();const R=a.padding/2;if(j1(Re().flowchart.htmlLabels)){const B=M.children[0],z=Tr(M),Y=B.getElementsByTagName("img");if(Y){const nt=S.replace(/<img[^>]*>/g,"").trim()==="";await Promise.all([...Y].map(ot=>new Promise(ft=>{function wt(){if(ot.style.display="flex",ot.style.flexDirection="column",nt){const mt=Re().fontSize?Re().fontSize:window.getComputedStyle(document.body).fontSize,ct=5,rt=parseInt(mt,10)*ct+"px";ot.style.minWidth=rt,ot.style.maxWidth=rt}else ot.style.width="100%";ft(ot)}setTimeout(()=>{ot.complete&&wt()}),ot.addEventListener("error",wt),ot.addEventListener("load",wt)})))}F=B.getBoundingClientRect(),z.attr("width",F.width),z.attr("height",F.height)}return v?E.attr("transform","translate("+-F.width/2+", "+-F.height/2+")"):E.attr("transform","translate(0, "+-F.height/2+")"),a.centerLabel&&E.attr("transform","translate("+-F.width/2+", "+-F.height/2+")"),E.insert("rect",":first-child"),{shapeSvg:b,bbox:F,halfPadding:R,label:E}},xh=(i,a)=>{const f=a.node().getBBox();i.width=f.width,i.height=f.height};function l4(i,a,f,g){return i.insert("polygon",":first-child").attr("points",g.map(function(w){return w.x+","+w.y}).join(" ")).attr("class","label-container").attr("transform","translate("+-a/2+","+f/2+")")}let ho={},ty={},X$t={};const DKe=()=>{ty={},X$t={},ho={}},tX=(i,a)=>(Kt.trace("In isDecendant",a," ",i," = ",ty[a].includes(i)),!!ty[a].includes(i)),MKe=(i,a)=>(Kt.info("Decendants of ",a," is ",ty[a]),Kt.info("Edge is ",i),i.v===a||i.w===a?!1:ty[a]?ty[a].includes(i.v)||tX(
outsidePoint: ${JSON.stringify(a)}
insidePoint : ${JSON.stringify(f)}
node : x:${i.x} y:${i.y} w:${i.width} h:${i.height}`);const g=i.x,w=i.y,v=Math.abs(g-f.x),b=i.width/2;let E=f.x<a.x?b-v:b+v;const S=i.height/2,_=Math.abs(a.y-f.y),M=Math.abs(a.x-f.x);if(Math.abs(w-a.y)*b>Math.abs(g-a.x)*S){let F=f.y<a.y?a.y-S-w:w-S-a.y;E=M*F/_;const R={x:f.x<a.x?f.x+E:f.x-M+E,y:f.y<a.y?f.y+_-F:f.y-_+F};return E===0&&(R.x=a.x,R.y=a.y),M===0&&(R.x=a.x),_===0&&(R.y=a.y),Kt.debug(`abc89 topp/bott calc, Q ${_}, q ${F}, R ${M}, r ${E}`,R),R}else{f.x<a.x?E=a.x-b-g:E=g-b-a.x;let F=_*E/M,R=f.x<a.x?f.x+M-E:f.x-M+E,B=f.y<a.y?f.y+F:f.y-F;return Kt.debug(`sides calc abc89, Q ${_}, q ${F}, R ${M}, r ${E}`,{_x:R,_y:B}),E===0&&(R=a.x,B=a.y),M===0&&(R=a.x),_===0&&(B=a.y),{x:R,y:B}}},fzt=(i,a)=>{Kt.debug("abc88 cutPathAtIntersect",i,a);let f=[],g=i[0],w=!1;return i.forEach(v=>{if(!dWe(a,v)&&!w){const b=gWe(a,g,v);let E=!1;f.forEach(S=>{E=E||S.x===b.x&&S.y===b.y}),f.some(S=>S.x===b.x&&S.y===b.y)||f.push(b),w=!0}else g=v,w||f.push(v)}),f},dzt=function(i,a,f,g,w,v,b){let E=f.points;Kt.debug("abc88 InsertEdge: edge=",f,"e=",a);let S=!1;const _=v.node(a.v);var M=v.node(a.w);M!=null&&M.intersect&&(_!=null&&_.intersect)&&(E=E.slice(1,f.points.length-1),E.unshift(_.intersect(E[0])),E.push(M.intersect(E[E.length-1]))),f.toCluster&&(Kt.debug("to cluster abc88",g[f.toCluster]),E=fzt(f.points,g[f.toCluster].node),S=!0),f.fromCluster&&(Kt.debug("from cluster abc88",g[f.fromCluster]),E=fzt(E.reverse(),g[f.fromCluster].node).reverse(),S=!0);const F=E.filter(mt=>!Number.isNaN(mt.y));let R=wF;f.curve&&(w==="graph"||w==="flowchart")&&(R=f.curve);const{x:B,y:z}=czt(f),Y=Ax().x(B).y(z).curve(R);let nt;switch(f.thickness){case"normal":nt="edge-thickness-normal";break;case"thick":nt="edge-thickness-thick";break;case"invisible":nt="edge-thickness-thick";break;default:nt=""}switch(f.pattern){case"solid":nt+=" edge-pattern-solid";break;case"dotted":nt+=" edge-pattern-dotted";break;case"dashed":nt+=" edge-pattern-dashed";break}const ot=i.append("path").attr("d",Y(F)).attr("id",f.id).attr("class"," "+nt+(f.classes?" "+f.classes:"")).attr("style",f.style);let ft="";(Re().flowchart.arrowMarkerAbsolute||Re().state.arrowMarkerAbsolute)&&(ft=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,ft=ft.replace(/\(/g,"\\("),ft=ft.replace(/\)/g,"\\)")),uzt(ot,f,ft,b,w);let wt={};return S&&(wt.updatedPath=E),wt.originalPath=f.points,wt},gzt=async(i,a,f,g,w,v)=>{Kt.info("Graph in recursive render: XXX",jx(a),w);const b=a.graph().rankdir;Kt.trace("Dir in recursive render - dir:",b);const E=i.insert("g").attr("class","root");a.nodes()?Kt.info("Recursive render XXX",a.nodes()):Kt.info("No nodes found for",a),a.edges().length>0&&Kt.trace("Recursive edges",a.edge(a.edges()[0]));const S=E.insert("g").attr("class","clusters"),_=E.insert("g").attr("class","edgePaths"),M=E.insert("g").attr("class","edgeLabels"),F=E.insert("g").attr("class","nodes");await Promise.all(a.nodes().map(async function(z){const Y=a.node(z);if(w!==void 0){const nt=JSON.parse(JSON.stringify(w.clusterData));Kt.info("Setting data for cluster XXX (",z,") ",nt,w),a.setNode(w.id,nt),a.parent(z)||(Kt.trace("Setting parent",z,w.id),a.setParent(z,w.id,nt))}if(Kt.info("(Insert) Node XXX"+z+": "+JSON.stringify(a.node(z))),Y&&Y.clusterNode){Kt.info("Cluster identified",z,Y.width,a.node(z));const nt=await gzt(F,Y.graph,f,g,a.node(z),v),ot=nt.elem;xh(Y,ot),Y.diff=nt.diff||0,Kt.info("Node bounds (abc123)",z,Y,Y.width,Y.x,Y.y),aWe(ot,Y),Kt.warn("Recursive render complete ",ot,Y)}else a.children(z).length>0?(Kt.info("Cluster - the non recursive path XXX",z,Y.id,Y,a),Kt.info(tB(Y.id,a)),ho[Y.id]={id:tB(Y.id,a),node:Y}):(Kt.info("Node - the non recursive path",z,Y.id,Y),await nX(F,a.node(z),b))})),a.edges().forEach(function(z){const Y=a.edge(z.v,z.w,z.name);Kt.info("Edge "+z.v+" -> "+z.w+": "+JSON.stringify(z)),Kt.info("Edge "+z.v+" -> "+z.w+": ",z," ",JSON.stringify(a.edge(z))),Kt.info("Fix",ho,"ids:",z.v,z.w,"Translateing: ",ho[z.v],ho[z.w]),tbt(M,Y)}),a.edges().forEach(function(z){Kt.info("Edge "+z.v+" -> "+z.w+": "+JSON.stringify(z))}),Kt.info("#########
`),E.style===void 0&&(R.style=R.style||"stroke: #333; stroke-width: 1.5px;fill:none;"),R.labelStyle=R.labelStyle.replace("color:","fill:"),R.id=_,R.classes="flowchart-link "+M+" "+F,a.setEdge(E.start,E.end,R,g)})},nbt={setConf:pWe,addVertices:bzt,addEdges:wzt,getClasses:function(i,a){return a.db.getClasses()},draw:async function(i,a,f,g){Kt.info("Drawing flowchart");let w=g.db.getDirection();w===void 0&&(w="TD");const{securityLevel:v,flowchart:b}=Re(),E=b.nodeSpacing||50,S=b.rankSpacing||50;let _;v==="sandbox"&&(_=Tr("#i"+a));const M=Tr(v==="sandbox"?_.nodes()[0].contentDocument.body:"body"),F=v==="sandbox"?_.nodes()[0].contentDocument:document,R=new l1({multigraph:!0,compound:!0}).setGraph({rankdir:w,nodesep:E,ranksep:S,marginx:0,marginy:0}).setDefaultEdgeLabel(function(){return{}});let B;const z=g.db.getSubGraphs();Kt.info("Subgraphs - ",z);for(let ct=z.length-1;ct>=0;ct--)B=z[ct],Kt.info("Subgraph - ",B),g.db.addVertex(B.id,{text:B.title,type:B.labelType},"group",void 0,B.classes,B.dir);const Y=g.db.getVertices(),nt=g.db.getEdges();Kt.info("Edges",nt);let ot=0;for(ot=z.length-1;ot>=0;ot--){B=z[ot],$Ot("cluster").append("text");for(let ct=0;ct<B.nodes.length;ct++)Kt.info("Setting up subgraphs",B.nodes[ct],B.id),R.setParent(B.nodes[ct],B.id)}bzt(Y,R,a,M,F,g),wzt(nt,R);const ft=M.select(`[id="${a}"]`),wt=M.select("#"+a+" g");if(await ebt(wt,R,["point","circle","cross"],"flowchart",a),uo.insertTitle(ft,"flowchartTitleText",b.titleTopMargin,g.db.getDiagramTitle()),w8(R,ft,b.diagramPadding,b.useMaxWidth),g.db.indexNodes("subGraph"+ot),!b.htmlLabels){const ct=F.querySelectorAll('[id="'+a+'"] .edgeLabel .label');for(const rt of ct){const it=rt.getBBox(),gt=F.createElementNS("http://www.w3.org/2000/svg","rect");gt.setAttribute("rx",0),gt.setAttribute("ry",0),gt.setAttribute("width",it.width),gt.setAttribute("height",it.height),rt.insertBefore(gt,rt.firstChild)}}Object.keys(Y).forEach(function(ct){const rt=Y[ct];if(rt.link){const it=Tr("#"+a+' [id="'+ct+'"]');if(it){const gt=F.createElementNS("http://www.w3.org/2000/svg","a");gt.setAttributeNS("http://www.w3.org/2000/svg","class",rt.classes.join(" ")),gt.setAttributeNS("http://www.w3.org/2000/svg","href",rt.link),gt.setAttributeNS("http://www.w3.org/2000/svg","rel","noopener"),v==="sandbox"?gt.setAttributeNS("http://www.w3.org/2000/svg","target","_top"):rt.linkTarget&&gt.setAttributeNS("http://www.w3.org/2000/svg","target",rt.linkTarget);const Q=it.insert(function(){return gt},":first-child"),dt=it.select(".label-container");dt&&Q.append(function(){return dt.node()});const K=it.select(".label");K&&Q.append(function(){return K.node()})}}})}},bWe=(i,a)=>{const f=jPt,g=f(i,"r"),w=f(i,"g"),v=f(i,"b");return g9(g,w,v,a)},mzt=i=>`.label {
font-family: ${i.fontFamily};
color: ${i.nodeTextColor||i.textColor};
2022-11-03 00:28:15 +01:00
}
.cluster-label text {
2024-02-17 17:36:33 +01:00
fill: ${i.titleColor};
2022-11-03 00:28:15 +01:00
}
2024-02-17 17:36:33 +01:00
.cluster-label span,p {
color: ${i.titleColor};
2022-11-03 00:28:15 +01:00
}
2024-02-17 17:36:33 +01:00
.label text,span,p {
fill: ${i.nodeTextColor||i.textColor};
color: ${i.nodeTextColor||i.textColor};
2022-11-03 00:28:15 +01:00
}
.node rect,
.node circle,
.node ellipse,
.node polygon,
.node path {
2024-02-17 17:36:33 +01:00
fill: ${i.mainBkg};
stroke: ${i.nodeBorder};
2022-11-03 00:28:15 +01:00
stroke-width: 1px;
}
2024-02-17 17:36:33 +01:00
.flowchart-label text {
text-anchor: middle;
}
// .flowchart-label .text-outer-tspan {
// text-anchor: middle;
// }
// .flowchart-label .text-inner-tspan {
// text-anchor: start;
// }
2022-11-03 00:28:15 +01:00
.node .label {
text-align: center;
}
.node.clickable {
cursor: pointer;
}
.arrowheadPath {
2024-02-17 17:36:33 +01:00
fill: ${i.arrowheadColor};
2022-11-03 00:28:15 +01:00
}
.edgePath .path {
2024-02-17 17:36:33 +01:00
stroke: ${i.lineColor};
2022-11-03 00:28:15 +01:00
stroke-width: 2.0px;
}
.flowchart-link {
2024-02-17 17:36:33 +01:00
stroke: ${i.lineColor};
2022-11-03 00:28:15 +01:00
fill: none;
}
.edgeLabel {
2024-02-17 17:36:33 +01:00
background-color: ${i.edgeLabelBackground};
2022-11-03 00:28:15 +01:00
rect {
opacity: 0.5;
2024-02-17 17:36:33 +01:00
background-color: ${i.edgeLabelBackground};
fill: ${i.edgeLabelBackground};
2022-11-03 00:28:15 +01:00
}
text-align: center;
}
2024-02-17 17:36:33 +01:00
/* For html labels only */
.labelBkg {
background-color: ${bWe(i.edgeLabelBackground,.5)};
// background-color:
}
2022-11-03 00:28:15 +01:00
.cluster rect {
2024-02-17 17:36:33 +01:00
fill: ${i.clusterBkg};
stroke: ${i.clusterBorder};
2022-11-03 00:28:15 +01:00
stroke-width: 1px;
}
.cluster text {
2024-02-17 17:36:33 +01:00
fill: ${i.titleColor};
2022-11-03 00:28:15 +01:00
}
2024-02-17 17:36:33 +01:00
.cluster span,p {
color: ${i.titleColor};
2022-11-03 00:28:15 +01:00
}
/* .cluster div {
2024-02-17 17:36:33 +01:00
color: ${i.titleColor};
2022-11-03 00:28:15 +01:00
} */
div.mermaidTooltip {
position: absolute;
text-align: center;
max-width: 200px;
padding: 2px;
2024-02-17 17:36:33 +01:00
font-family: ${i.fontFamily};
2022-11-03 00:28:15 +01:00
font-size: 12px;
2024-02-17 17:36:33 +01:00
background: ${i.tertiaryColor};
border: 1px solid ${i.border2};
2022-11-03 00:28:15 +01:00
border-radius: 2px;
pointer-events: none;
z-index: 100;
}
2024-02-17 17:36:33 +01:00
.flowchartTitleText {
text-anchor: middle;
font-size: 18px;
fill: ${i.textColor};
}
`,wWe=Object.freeze(Object.defineProperty({__proto__:null,diagram:{parser:spt,db:A9,renderer:nbt,styles:mzt,init:i=>{i.flowchart||(i.flowchart={}),i.flowchart.arrowMarkerAbsolute=i.arrowMarkerAbsolute,wUe.setConf(i.flowchart),A9.clear(),A9.setGen("gen-1")}}},Symbol.toStringTag,{value:"Module"})),mWe=Object.freeze(Object.defineProperty({__proto__:null,diagram:{parser:spt,db:A9,renderer:nbt,styles:mzt,init:i=>{i.flowchart||(i.flowchart={}),i.flowchart.arrowMarkerAbsolute=i.arrowMarkerAbsolute,bPe({flowchart:{arrowMarkerAbsolute:i.arrowMarkerAbsolute}}),nbt.setConf(i.flowchart),A9.clear(),A9.setGen("gen-2")}}},Symbol.toStringTag,{value:"Module"}));var rbt=function(){var i=function(gt,Q,dt,K){for(dt=dt||{},K=gt.length;K--;dt[gt[K]]=Q);return dt},a=[6,8,10,20,22,24,26,27,28],f=[1,10],g=[1,11],w=[1,12],v=[1,13],b=[1,14],E=[1,15],S=[1,21],_=[1,22],M=[1,23],F=[1,24],R=[1,25],B=[6,8,10,13,15,18,19,20,22,24,26,27,28,41,42,43,44,45],z=[1,34],Y=[27,28,46,47],nt=[41,42,43,44,45],ot=[17,34],ft=[1,54],wt=[1,53],mt=[17,34,36,38],ct={trace:function(){},yy:{},symbols_:{error:2,start:3,ER_DIAGRAM:4,document:5,EOF:6,line:7,SPACE:8,statement:9,NEWLINE:10,entityName:11,relSpec:12,":":13,role:14,BLOCK_START:15,attributes:16,BLOCK_STOP:17,SQS:18,SQE:19,title:20,title_value:21,acc_title:22,acc_title_value:23,acc_descr:24,acc_descr_value:25,acc_descr_multiline_value:26,ALPHANUM:27,ENTITY_NAME:28,attribute:29,attributeType:30,attributeName:31,attributeKeyTypeList:32,attributeComment:33,ATTRIBUTE_WORD:34,attributeKeyType:35,COMMA:36,ATTRIBUTE_KEY:37,COMMENT:38,cardinality:39,relType:40,ZERO_OR_ONE:41,ZERO_OR_MORE:42,ONE_OR_MORE:43,ONLY_ONE:44,MD_PARENT:45,NON_IDENTIFYING:46,IDENTIFYING:47,WORD:48,$accept:0,$end:1},terminals_:{2:"error",4:"ER_DIAGRAM",6:"EOF",8:"SPACE",10:"NEWLINE",13:":",15:"BLOCK_START",17:"BLOCK_STOP",18:"SQS",19:"SQE",20:"title",21:"title_value",22:"acc_title",23:"acc_title_value",24:"acc_descr",25:"acc_descr_value",26:"acc_descr_multiline_value",27:"ALPHANUM",28:"ENTITY_NAME",34:"ATTRIBUTE_WORD",36:"COMMA",37:"ATTRIBUTE_KEY",38:"COMMENT",41:"ZERO_OR_ONE",42:"ZERO_OR_MORE",43:"ONE_OR_MORE",44:"ONLY_ONE",45:"MD_PARENT",46:"NON_IDENTIFYING",47:"IDENTIFYING",48:"WORD"},productions_:[0,[3,3],[5,0],[5,2],[7,2],[7,1],[7,1],[7,1],[9,5],[9,4],[9,3],[9,1],[9,7],[9,6],[9,4],[9,2],[9,2],[9,2],[9,1],[11,1],[11,1],[16,1],[16,2],[29,2],[29,3],[29,3],[29,4],[30,1],[31,1],[32,1],[32,3],[35,1],[33,1],[12,3],[39,1],[39,1],[39,1],[39,1],[39,1],[40,1],[40,1],[14,1],[14,1],[14,1]],performAction:function(Q,dt,K,yt,V,Ot,It){var jt=Ot.length-1;switch(V){case 1:break;case 2:this.$=[];break;case 3:Ot[jt-1].push(Ot[jt]),this.$=Ot[jt-1];break;case 4:case 5:this.$=Ot[jt];break;case 6:case 7:this.$=[];break;case 8:yt.addEntity(Ot[jt-4]),yt.addEntity(Ot[jt-2]),yt.addRelationship(Ot[jt-4],Ot[jt],Ot[jt-2],Ot[jt-3]);break;case 9:yt.addEntity(Ot[jt-3]),yt.addAttributes(Ot[jt-3],Ot[jt-1]);break;case 10:yt.addEntity(Ot[jt-2]);break;case 11:yt.addEntity(Ot[jt]);break;case 12:yt.addEntity(Ot[jt-6],Ot[jt-4]),yt.addAttributes(Ot[jt-6],Ot[jt-1]);break;case 13:yt.addEntity(Ot[jt-5],Ot[jt-3]);break;case 14:yt.addEntity(Ot[jt-3],Ot[jt-1]);break;case 15:case 16:this.$=Ot[jt].trim(),yt.setAccTitle(this.$);break;case 17:case 18:this.$=Ot[jt].trim(),yt.setAccDescription(this.$);break;case 19:case 43:this.$=Ot[jt];break;case 20:case 41:case 42:this.$=Ot[jt].replace(/"/g,"");break;case 21:case 29:this.$=[Ot[jt]];break;case 22:Ot[jt].push(Ot[jt-1]),this.$=Ot[jt];break;case 23:this.$={attributeType:Ot[jt-1],attributeName:Ot[jt]};break;case 24:this.$={attributeType:Ot[jt-2],attributeName:Ot[jt-1],attributeKeyTypeList:Ot[jt]};break;case 25:this.$={attributeType:Ot[jt-2],attributeName:Ot[jt-1],attributeComment:Ot[jt]};break;case 26:this.$={attributeType:Ot[jt-3],attributeName:Ot[jt-2],attributeKeyTypeList:Ot[jt-1],attributeComment:Ot[jt]};break;case 27:case 28:case 31:this.$=Ot[jt];break;case 30:Ot[jt-2].push(Ot[jt]),this.$=Ot[jt-2];break;case 32:this.$=Ot[jt].replace(/"/g,"");break;case 33:this.$={cardA:Ot[jt],relType:Ot[jt-1],cardB:Ot[jt-2]};break;case 34:this.$=yt.Cardinality.ZER
`+Fe.showPosition()+`
Expecting `+Br.join(", ")+", got '"+(this.terminals_[sn]||sn)+"'":we="Parse error on line "+(xt+1)+": Unexpected "+(sn==kt?"end of input":"'"+(this.terminals_[sn]||sn)+"'"),this.parseError(we,{text:Fe.match,token:this.terminals_[sn]||sn,line:Fe.yylineno,loc:Ae,expected:Br})}if(Ne[0]instanceof Array&&Ne.length>1)throw new Error("Parse Error: multiple actions possible at state: "+be+", token: "+sn);switch(Ne[0]){case 1:K.push(sn),V.push(Fe.yytext),Ot.push(Fe.yylloc),K.push(Ne[1]),sn=null,Ft=Fe.yyleng,jt=Fe.yytext,xt=Fe.yylineno,Ae=Fe.yylloc;break;case 2:if(Mn=this.productions_[Ne[1]][1],_e.$=V[V.length-Mn],_e._$={first_line:Ot[Ot.length-(Mn||1)].first_line,last_line:Ot[Ot.length-1].last_line,first_column:Ot[Ot.length-(Mn||1)].first_column,last_column:Ot[Ot.length-1].last_column},ye&&(_e._$.range=[Ot[Ot.length-(Mn||1)].range[0],Ot[Ot.length-1].range[1]]),Xt=this.performAction.apply(_e,[jt,Ft,xt,Mt.yy,Ne[1],V,Ot].concat(Gt)),typeof Xt<"u")return Xt;Mn&&(K=K.slice(0,-1*Mn*2),V=V.slice(0,-1*Mn),Ot=Ot.slice(0,-1*Mn)),K.push(this.productions_[Ne[1]][0]),V.push(_e.$),Ot.push(_e._$),ce=It[K[K.length-2]][K[K.length-1]],K.push(ce);break;case 3:return!0}}return!0}},rt=function(){var gt={EOF:1,parseError:function(dt,K){if(this.yy.parser)this.yy.parser.parseError(dt,K);else throw new Error(dt)},setInput:function(Q,dt){return this.yy=dt||this.yy||{},this._input=Q,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var Q=this._input[0];this.yytext+=Q,this.yyleng++,this.offset++,this.match+=Q,this.matched+=Q;var dt=Q.match(/(?:\r\n?|\n).*/g);return dt?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),Q},unput:function(Q){var dt=Q.length,K=Q.split(/(?:\r\n?|\n)/g);this._input=Q+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-dt),this.offset-=dt;var yt=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),K.length-1&&(this.yylineno-=K.length-1);var V=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:K?(K.length===yt.length?this.yylloc.first_column:0)+yt[yt.length-K.length].length-K[0].length:this.yylloc.first_column-dt},this.options.ranges&&(this.yylloc.range=[V[0],V[0]+this.yyleng-dt]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(Q){this.unput(this.match.slice(Q))},pastInput:function(){var Q=this.matched.substr(0,this.matched.length-this.match.length);return(Q.length>20?"...":"")+Q.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var Q=this.match;return Q.length<20&&(Q+=this._input.substr(0,20-Q.length)),(Q.substr(0,20)+(Q.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var Q=this.pastInput(),dt=new Array(Q.length+1).join("-");return Q+this.upcomingInput()+`
`+dt+"^"},test_match:function(Q,dt){var K,yt,V;if(this.options.backtrack_lexer&&(V={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(V.yylloc.range=this.yylloc.range.slice(0))),yt=Q[0].match(/(?:\r\n?|\n).*/g),yt&&(this.yylineno+=yt.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:yt?yt[yt.length-1].length-yt[yt.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+Q[0].length},this.yytext+=Q[0],this.match+=Q[0],this.matches=Q,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(Q[0].length),this.matched+=Q[0],K=this.performAction.call(this,this.yy,this,dt,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),K)return K;if(this._backtrack){for(var Ot in V)this[Ot]=V[Ot];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var Q,dt,K,yt;this._more||(this.yytext="",this.match="");for(var V=this._currentRules(),Ot=0;Ot<V.length;Ot++)if(K=this._input.match(this.rules[V[Ot]]),K&&(!dt||K[0].length>dt[0].length)){if(dt=K,yt=Ot,this.options.backtrack_lexer){if(Q=this.test_match(K,V[Ot]),Q!==!1)return Q;if(this._backtrack){dt=!1;continue}else return!1}else if(!this.options.flex)break}return dt?(Q=this.test_match(dt,V[yt]),Q!==!1?Q:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.
`+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var dt=this.next();return dt||this.lex()},begin:function(dt){this.conditionStack.push(dt)},popState:function(){var dt=this.conditionStack.length-1;return dt>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(dt){return dt=this.conditionStack.length-1-Math.abs(dt||0),dt>=0?this.conditionStack[dt]:"INITIAL"},pushState:function(dt){this.begin(dt)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(dt,K,yt,V){switch(yt){case 0:return this.begin("acc_title"),22;case 1:return this.popState(),"acc_title_value";case 2:return this.begin("acc_descr"),24;case 3:return this.popState(),"acc_descr_value";case 4:this.begin("acc_descr_multiline");break;case 5:this.popState();break;case 6:return"acc_descr_multiline_value";case 7:return 10;case 8:break;case 9:return 8;case 10:return 28;case 11:return 48;case 12:return 4;case 13:return this.begin("block"),15;case 14:return 36;case 15:break;case 16:return 37;case 17:return 34;case 18:return 34;case 19:return 38;case 20:break;case 21:return this.popState(),17;case 22:return K.yytext[0];case 23:return 18;case 24:return 19;case 25:return 41;case 26:return 43;case 27:return 43;case 28:return 43;case 29:return 41;case 30:return 41;case 31:return 42;case 32:return 42;case 33:return 42;case 34:return 42;case 35:return 42;case 36:return 43;case 37:return 42;case 38:return 43;case 39:return 44;case 40:return 44;case 41:return 44;case 42:return 44;case 43:return 41;case 44:return 42;case 45:return 43;case 46:return 45;case 47:return 46;case 48:return 47;case 49:return 47;case 50:return 46;case 51:return 46;case 52:return 46;case 53:return 27;case 54:return K.yytext[0];case 55:return 6}},rules:[/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?:[\s]+)/i,/^(?:"[^"%\r\n\v\b\\]+")/i,/^(?:"[^"]*")/i,/^(?:erDiagram\b)/i,/^(?:\{)/i,/^(?:,)/i,/^(?:\s+)/i,/^(?:\b((?:PK)|(?:FK)|(?:UK))\b)/i,/^(?:(.*?)[~](.*?)*[~])/i,/^(?:[\*A-Za-z_][A-Za-z0-9\-_\[\]\(\)]*)/i,/^(?:"[^"]*")/i,/^(?:[\n]+)/i,/^(?:\})/i,/^(?:.)/i,/^(?:\[)/i,/^(?:\])/i,/^(?:one or zero\b)/i,/^(?:one or more\b)/i,/^(?:one or many\b)/i,/^(?:1\+)/i,/^(?:\|o\b)/i,/^(?:zero or one\b)/i,/^(?:zero or more\b)/i,/^(?:zero or many\b)/i,/^(?:0\+)/i,/^(?:\}o\b)/i,/^(?:many\(0\))/i,/^(?:many\(1\))/i,/^(?:many\b)/i,/^(?:\}\|)/i,/^(?:one\b)/i,/^(?:only one\b)/i,/^(?:1\b)/i,/^(?:\|\|)/i,/^(?:o\|)/i,/^(?:o\{)/i,/^(?:\|\{)/i,/^(?:\s*u\b)/i,/^(?:\.\.)/i,/^(?:--)/i,/^(?:to\b)/i,/^(?:optionally to\b)/i,/^(?:\.-)/i,/^(?:-\.)/i,/^(?:[A-Za-z_][A-Za-z0-9\-_]*)/i,/^(?:.)/i,/^(?:$)/i],conditions:{acc_descr_multiline:{rules:[5,6],inclusive:!1},acc_descr:{rules:[3],inclusive:!1},acc_title:{rules:[1],inclusive:!1},block:{rules:[14,15,16,17,18,19,20,21,22],inclusive:!1},INITIAL:{rules:[0,2,4,7,8,9,10,11,12,13,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55],inclusive:!0}}};return gt}();ct.lexer=rt;function it(){this.yy={}}return it.prototype=ct,ct.Parser=it,new it}();rbt.parser=rbt;const vWe=rbt;let S8={},ibt=[];const yWe={ZERO_OR_ONE:"ZERO_OR_ONE",ZERO_OR_MORE:"ZERO_OR_MORE",ONE_OR_MORE:"ONE_OR_MORE",ONLY_ONE:"ONLY_ONE",MD_PARENT:"MD_PARENT"},xWe={NON_IDENTIFYING:"NON_IDENTIFYING",IDENTIFYING:"IDENTIFYING"},vzt=function(i,a=void 0){return S8[i]===void 0?(S8[i]={attributes:[],alias:a},Kt.info("Added new entity :",i)):S8[i]&&!S8[i].alias&&a&&(S8[i].alias=a,Kt.info(`Add alias '${a}' to entity '${i}'`)),S8[i]},kWe={Cardinality:yWe,Identification:xWe,getConfig:()=>Re().er,addEntity:vzt,addAttributes:function(i,a){let f=vzt(i),g;for(g=a.length-1;g>=0;g--)f.attributes.push(a[g]),Kt.debug("Added attribute ",a[g].attributeName)},getEntities
.entityBox {
fill: ${i.mainBkg};
stroke: ${i.nodeBorder};
}
.attributeBoxOdd {
fill: ${i.attributeBackgroundColorOdd};
stroke: ${i.nodeBorder};
}
.attributeBoxEven {
fill: ${i.attributeBackgroundColorEven};
stroke: ${i.nodeBorder};
}
.relationshipLabelBox {
fill: ${i.tertiaryColor};
opacity: 0.7;
background-color: ${i.tertiaryColor};
rect {
opacity: 0.5;
}
}
.relationshipLine {
stroke: ${i.lineColor};
}
.entityTitleText {
text-anchor: middle;
font-size: 18px;
fill: ${i.textColor};
}
#MD_PARENT_START {
fill: #f5f5f5 !important;
stroke: ${i.lineColor} !important;
stroke-width: 1;
}
#MD_PARENT_END {
fill: #f5f5f5 !important;
stroke: ${i.lineColor} !important;
stroke-width: 1;
}
`}},Symbol.toStringTag,{value:"Module"}));var abt=function(){var i=function(ct,rt,it,gt){for(it=it||{},gt=ct.length;gt--;it[ct[gt]]=rt);return it},a=[1,3],f=[1,6],g=[1,4],w=[1,5],v=[2,5],b=[1,12],E=[5,7,13,19,21,23,24,26,28,31,37,40,47],S=[7,13,19,21,23,24,26,28,31,37,40],_=[7,12,13,19,21,23,24,26,28,31,37,40],M=[7,13,47],F=[1,42],R=[1,41],B=[7,13,29,32,35,38,47],z=[1,55],Y=[1,56],nt=[1,57],ot=[7,13,32,35,42,47],ft={trace:function(){},yy:{},symbols_:{error:2,start:3,eol:4,GG:5,document:6,EOF:7,":":8,DIR:9,options:10,body:11,OPT:12,NL:13,line:14,statement:15,commitStatement:16,mergeStatement:17,cherryPickStatement:18,acc_title:19,acc_title_value:20,acc_descr:21,acc_descr_value:22,acc_descr_multiline_value:23,section:24,branchStatement:25,CHECKOUT:26,ref:27,BRANCH:28,ORDER:29,NUM:30,CHERRY_PICK:31,COMMIT_ID:32,STR:33,PARENT_COMMIT:34,COMMIT_TAG:35,EMPTYSTR:36,MERGE:37,COMMIT_TYPE:38,commitType:39,COMMIT:40,commit_arg:41,COMMIT_MSG:42,NORMAL:43,REVERSE:44,HIGHLIGHT:45,ID:46,";":47,$accept:0,$end:1},terminals_:{2:"error",5:"GG",7:"EOF",8:":",9:"DIR",12:"OPT",13:"NL",19:"acc_title",20:"acc_title_value",21:"acc_descr",22:"acc_descr_value",23:"acc_descr_multiline_value",24:"section",26:"CHECKOUT",28:"BRANCH",29:"ORDER",30:"NUM",31:"CHERRY_PICK",32:"COMMIT_ID",33:"STR",34:"PARENT_COMMIT",35:"COMMIT_TAG",36:"EMPTYSTR",37:"MERGE",38:"COMMIT_TYPE",40:"COMMIT",42:"COMMIT_MSG",43:"NORMAL",44:"REVERSE",45:"HIGHLIGHT",46:"ID",47:";"},productions_:[0,[3,2],[3,3],[3,4],[3,5],[6,0],[6,2],[10,2],[10,1],[11,0],[11,2],[14,2],[14,1],[15,1],[15,1],[15,1],[15,2],[15,2],[15,1],[15,1],[15,1],[15,2],[25,2],[25,4],[18,3],[18,5],[18,5],[18,7],[18,7],[18,5],[18,5],[18,5],[18,7],[18,7],[18,7],[18,7],[17,2],[17,4],[17,4],[17,4],[17,6],[17,6],[17,6],[17,6],[17,6],[17,6],[17,8],[17,8],[17,8],[17,8],[17,8],[17,8],[16,2],[16,3],[16,3],[16,5],[16,5],[16,3],[16,5],[16,5],[16,5],[16,5],[16,7],[16,7],[16,7],[16,7],[16,7],[16,7],[16,3],[16,5],[16,5],[16,5],[16,5],[16,5],[16,5],[16,7],[16,7],[16,7],[16,7],[16,7],[16,7],[16,7],[16,7],[16,7],[16,7],[16,7],[16,7],[16,7],[16,7],[16,7],[16,7],[16,7],[16,7],[16,9],[16,9],[16,9],[16,9],[16,9],[16,9],[16,9],[16,9],[16,9],[16,9],[16,9],[16,9],[16,9],[16,9],[16,9],[16,9],[16,9],[16,9],[16,9],[16,9],[16,9],[16,9],[16,9],[16,9],[41,0],[41,1],[39,1],[39,1],[39,1],[27,1],[27,1],[4,1],[4,1],[4,1]],performAction:function(rt,it,gt,Q,dt,K,yt){var V=K.length-1;switch(dt){case 2:return K[V];case 3:return K[V-1];case 4:return Q.setDirection(K[V-3]),K[V-1];case 6:Q.setOptions(K[V-1]),this.$=K[V];break;case 7:K[V-1]+=K[V],this.$=K[V-1];break;case 9:this.$=[];break;case 10:K[V-1].push(K[V]),this.$=K[V-1];break;case 11:this.$=K[V-1];break;case 16:this.$=K[V].trim(),Q.setAccTitle(this.$);break;case 17:case 18:this.$=K[V].trim(),Q.setAccDescription(this.$);break;case 19:Q.addSection(K[V].substr(8)),this.$=K[V].substr(8);break;case 21:Q.checkout(K[V]);break;case 22:Q.branch(K[V]);break;case 23:Q.branch(K[V-2],K[V]);break;case 24:Q.cherryPick(K[V],"",void 0);break;case 25:Q.cherryPick(K[V-2],"",void 0,K[V]);break;case 26:Q.cherryPick(K[V-2],"",K[V]);break;case 27:Q.cherryPick(K[V-4],"",K[V],K[V-2]);break;case 28:Q.cherryPick(K[V-4],"",K[V-2],K[V]);break;case 29:Q.cherryPick(K[V],"",K[V-2]);break;case 30:Q.cherryPick(K[V],"","");break;case 31:Q.cherryPick(K[V-2],"","");break;case 32:Q.cherryPick(K[V-4],"","",K[V-2]);break;case 33:Q.cherryPick(K[V-4],"","",K[V]);break;case 34:Q.cherryPick(K[V-2],"",K[V-4],K[V]);break;case 35:Q.cherryPick(K[V-2],"","",K[V]);break;case 36:Q.merge(K[V],"","","");break;case 37:Q.merge(K[V-2],K[V],"","");break;case 38:Q.merge(K[V-2],"",K[V],"");break;case 39:Q.merge(K[V-2],"","",K[V]);break;case 40:Q.merge(K[V-4],K[V],"",K[V-2]);break;case 41:Q.merge(K[V-4],"",K[V],K[V-2]);break;case 42:Q.merge(K[V-4],"",K[V-2],K[V]);break;case 43:Q.merge(K[V-4],K[V-2],K[V],"");break;case 44:Q.merge(K[V-4],K[V-2],"",K[V]);break;case 45:Q.merge(K[V-4],K[V],K[V-2],"");break;case 46:Q.merge(K[V-6],K[V-4],K[V-2],K[V]);break;case 47:Q.merge(K[V-6],K[V],K[V-4],K[V-2]);break;case 48:Q.merge(K[V-6],K[V-4],K[V],K[V-2]);break;case 49:Q.mer
`+Ct.showPosition()+`
Expecting `+xe.join(", ")+", got '"+(this.terminals_[Ae]||Ae)+"'":Mn="Parse error on line "+(Ot+1)+": Unexpected "+(Ae==xt?"end of input":"'"+(this.terminals_[Ae]||Ae)+"'"),this.parseError(Mn,{text:Ct.match,token:this.terminals_[Ae]||Ae,line:Ct.yylineno,loc:Fe,expected:xe})}if(tn[0]instanceof Array&&tn.length>1)throw new Error("Parse Error: multiple actions possible at state: "+ye+", token: "+Ae);switch(tn[0]){case 1:gt.push(Ae),dt.push(Ct.yytext),K.push(Ct.yylloc),gt.push(tn[1]),Ae=null,It=Ct.yyleng,V=Ct.yytext,Ot=Ct.yylineno,Fe=Ct.yylloc;break;case 2:if(Xt=this.productions_[tn[1]][1],be.$=dt[dt.length-Xt],be._$={first_line:K[K.length-(Xt||1)].first_line,last_line:K[K.length-1].last_line,first_column:K[K.length-(Xt||1)].first_column,last_column:K[K.length-1].last_column},Mt&&(be._$.range=[K[K.length-(Xt||1)].range[0],K[K.length-1].range[1]]),sn=this.performAction.apply(be,[V,It,Ot,kt.yy,tn[1],dt,K].concat(Ft)),typeof sn<"u")return sn;Xt&&(gt=gt.slice(0,-1*Xt*2),dt=dt.slice(0,-1*Xt),K=K.slice(0,-1*Xt)),gt.push(this.productions_[tn[1]][0]),dt.push(be.$),K.push(be._$),_e=yt[gt[gt.length-2]][gt[gt.length-1]],gt.push(_e);break;case 3:return!0}}return!0}},wt=function(){var ct={EOF:1,parseError:function(it,gt){if(this.yy.parser)this.yy.parser.parseError(it,gt);else throw new Error(it)},setInput:function(rt,it){return this.yy=it||this.yy||{},this._input=rt,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var rt=this._input[0];this.yytext+=rt,this.yyleng++,this.offset++,this.match+=rt,this.matched+=rt;var it=rt.match(/(?:\r\n?|\n).*/g);return it?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),rt},unput:function(rt){var it=rt.length,gt=rt.split(/(?:\r\n?|\n)/g);this._input=rt+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-it),this.offset-=it;var Q=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),gt.length-1&&(this.yylineno-=gt.length-1);var dt=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:gt?(gt.length===Q.length?this.yylloc.first_column:0)+Q[Q.length-gt.length].length-gt[0].length:this.yylloc.first_column-it},this.options.ranges&&(this.yylloc.range=[dt[0],dt[0]+this.yyleng-it]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(rt){this.unput(this.match.slice(rt))},pastInput:function(){var rt=this.matched.substr(0,this.matched.length-this.match.length);return(rt.length>20?"...":"")+rt.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var rt=this.match;return rt.length<20&&(rt+=this._input.substr(0,20-rt.length)),(rt.substr(0,20)+(rt.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var rt=this.pastInput(),it=new Array(rt.length+1).join("-");return rt+this.upcomingInput()+`
`+it+"^"},test_match:function(rt,it){var gt,Q,dt;if(this.options.backtrack_lexer&&(dt={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(dt.yylloc.range=this.yylloc.range.slice(0))),Q=rt[0].match(/(?:\r\n?|\n).*/g),Q&&(this.yylineno+=Q.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:Q?Q[Q.length-1].length-Q[Q.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+rt[0].length},this.yytext+=rt[0],this.match+=rt[0],this.matches=rt,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(rt[0].length),this.matched+=rt[0],gt=this.performAction.call(this,this.yy,this,it,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),gt)return gt;if(this._backtrack){for(var K in dt)this[K]=dt[K];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var rt,it,gt,Q;this._more||(this.yytext="",this.match="");for(var dt=this._currentRules(),K=0;K<dt.length;K++)if(gt=this._input.match(this.rules[dt[K]]),gt&&(!it||gt[0].length>it[0].length)){if(it=gt,Q=K,this.options.backtrack_lexer){if(rt=this.test_match(gt,dt[K]),rt!==!1)return rt;if(this._backtrack){it=!1;continue}else return!1}else if(!this.options.flex)break}return it?(rt=this.test_match(it,dt[Q]),rt!==!1?rt:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.
`+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var it=this.next();return it||this.lex()},begin:function(it){this.conditionStack.push(it)},popState:function(){var it=this.conditionStack.length-1;return it>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(it){return it=this.conditionStack.length-1-Math.abs(it||0),it>=0?this.conditionStack[it]:"INITIAL"},pushState:function(it){this.begin(it)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(it,gt,Q,dt){switch(Q){case 0:return this.begin("acc_title"),19;case 1:return this.popState(),"acc_title_value";case 2:return this.begin("acc_descr"),21;case 3:return this.popState(),"acc_descr_value";case 4:this.begin("acc_descr_multiline");break;case 5:this.popState();break;case 6:return"acc_descr_multiline_value";case 7:return 13;case 8:break;case 9:break;case 10:return 5;case 11:return 40;case 12:return 32;case 13:return 38;case 14:return 42;case 15:return 43;case 16:return 44;case 17:return 45;case 18:return 35;case 19:return 28;case 20:return 29;case 21:return 37;case 22:return 31;case 23:return 34;case 24:return 26;case 25:return 9;case 26:return 9;case 27:return 8;case 28:return"CARET";case 29:this.begin("options");break;case 30:this.popState();break;case 31:return 12;case 32:return 36;case 33:this.begin("string");break;case 34:this.popState();break;case 35:return 33;case 36:return 30;case 37:return 46;case 38:return 7}},rules:[/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:(\r?\n)+)/i,/^(?:#[^\n]*)/i,/^(?:%[^\n]*)/i,/^(?:gitGraph\b)/i,/^(?:commit(?=\s|$))/i,/^(?:id:)/i,/^(?:type:)/i,/^(?:msg:)/i,/^(?:NORMAL\b)/i,/^(?:REVERSE\b)/i,/^(?:HIGHLIGHT\b)/i,/^(?:tag:)/i,/^(?:branch(?=\s|$))/i,/^(?:order:)/i,/^(?:merge(?=\s|$))/i,/^(?:cherry-pick(?=\s|$))/i,/^(?:parent:)/i,/^(?:checkout(?=\s|$))/i,/^(?:LR\b)/i,/^(?:TB\b)/i,/^(?::)/i,/^(?:\^)/i,/^(?:options\r?\n)/i,/^(?:[ \r\n\t]+end\b)/i,/^(?:[\s\S]+(?=[ \r\n\t]+end))/i,/^(?:["]["])/i,/^(?:["])/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:[0-9]+(?=\s|$))/i,/^(?:\w([-\./\w]*[-\w])?)/i,/^(?:$)/i,/^(?:\s+)/i],conditions:{acc_descr_multiline:{rules:[5,6],inclusive:!1},acc_descr:{rules:[3],inclusive:!1},acc_title:{rules:[1],inclusive:!1},options:{rules:[30,31],inclusive:!1},string:{rules:[34,35],inclusive:!1},INITIAL:{rules:[0,2,4,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,32,33,36,37,38,39],inclusive:!0}}};return ct}();ft.lexer=wt;function mt(){this.yy={}}return mt.prototype=ft,ft.Parser=mt,new mt}();abt.parser=abt;const UWe=abt;let cX=Re().gitGraph.mainBranchName,GWe=Re().gitGraph.mainBranchOrder,q1={},np=null,rB={};rB[cX]={name:cX,order:GWe};let h1={};h1[cX]=np;let Dd=cX,Ezt="LR",N9=0;function obt(){return AFt({length:7})}function KWe(i,a){const f=Object.create(null);return i.reduce((g,w)=>{const v=a(w);return f[v]||(f[v]=!0,g.push(w)),g},[])}const WWe=function(i){Ezt=i};let Tzt={};const YWe=function(i){Kt.debug("options str",i),i=i&&i.trim(),i=i||"{}";try{Tzt=JSON.parse(i)}catch(a){Kt.error("error while parsing gitGraph options",a.message)}},XWe=function(){return Tzt},QWe=function(i,a,f,g){Kt.debug("Entering commit:",i,a,f,g),a=ei.sanitizeText(a,Re()),i=ei.sanitizeText(i,Re()),g=ei.sanitizeText(g,Re());const w={id:a||N9+"-"+obt(),message:i,seq:N9++,type:f||CD.NORMAL,tag:g||"",parents:np==null?[]:[np.id],branch:Dd};np=w,q1[w.id]=w,h1[Dd]=w.id,Kt.debug("in pushCommit "+w.id)},JWe=function(i,a){if(i=ei.sanitizeText(i,Re()),h1[i]===void 0)h1[i]=np!=null?np.id:null,rB[i]={name:i,order:a?parseInt(a,10):null},Czt(i),Kt.debug("in createBranch");else{let f=new Error('Trying to create an existing branch. (Help: Either use a new name if you want create a new branch or try using "checkout '+i+'")');throw f.h
${b-rt.width/2-4/2},${gt+2}
${b-rt.width/2-4/2},${gt-2}
${z-rt.width/2-4},${gt-it-2}
${z+rt.width/2+4},${gt-it-2}
${z+rt.width/2+4},${gt+it+2}
${z-rt.width/2-4},${gt+it+2}`),mt.attr("cx",b-rt.width/2+4/2).attr("cy",gt).attr("r",1.5).attr("class","tag-hole"),f1==="TB"&&(wt.attr("class","tag-label-bkg").attr("points",`
${nt},${b+2}
${nt},${b-2}
${nt+M},${b-it-2}
${nt+M+rt.width+4},${b-it-2}
${nt+M+rt.width+4},${b+it+2}
${nt+M},${b+it+2}`).attr("transform","translate(12,12) rotate(45, "+nt+","+b+")"),mt.attr("cx",nt+4/2).attr("cy",b).attr("transform","translate(12,12) rotate(45, "+nt+","+b+")"),ct.attr("x",nt+5).attr("y",b+3).attr("transform","translate(14,14) rotate(45, "+nt+","+b+")"))}}b+=F+M,b>sB&&(sB=b)})},fYe=(i,a,f,g,w)=>{const b=(f1==="TB"?f.x<g.x:f.y<g.y)?a.branch:i.branch,E=_=>_.branch===b,S=_=>_.seq>i.seq&&_.seq<a.seq;return Object.values(w).some(_=>S(_)&&E(_))},aB=(i,a,f=0)=>{const g=i+Math.abs(i-a)/2;if(f>5)return g;if(uX.every(b=>Math.abs(b-g)>=10))return uX.push(g),g;const v=Math.abs(i-a);return aB(i,a-v/5,f+1)},dYe=(i,a,f,g)=>{const w=$x[a.id],v=$x[f.id],b=fYe(a,f,w,v,g);let E="",S="",_=0,M=0,F=Cf[f.branch].index,R;if(b){E="A 10 10, 0, 0, 0,",S="A 10 10, 0, 0, 1,",_=10,M=10;const B=w.y<v.y?aB(w.y,v.y):aB(v.y,w.y),z=w.x<v.x?aB(w.x,v.x):aB(v.x,w.x);f1==="TB"?w.x<v.x?(F=Cf[f.branch].index,R=`M ${w.x} ${w.y} L ${z-_} ${w.y} ${S} ${z} ${w.y+M} L ${z} ${v.y-_} ${E} ${z+M} ${v.y} L ${v.x} ${v.y}`):(F=Cf[a.branch].index,R=`M ${w.x} ${w.y} L ${z+_} ${w.y} ${E} ${z} ${w.y+M} L ${z} ${v.y-_} ${S} ${z-M} ${v.y} L ${v.x} ${v.y}`):w.y<v.y?(F=Cf[f.branch].index,R=`M ${w.x} ${w.y} L ${w.x} ${B-_} ${E} ${w.x+M} ${B} L ${v.x-_} ${B} ${S} ${v.x} ${B+M} L ${v.x} ${v.y}`):(F=Cf[a.branch].index,R=`M ${w.x} ${w.y} L ${w.x} ${B+_} ${S} ${w.x+M} ${B} L ${v.x-_} ${B} ${E} ${v.x} ${B-M} L ${v.x} ${v.y}`)}else f1==="TB"?(w.x<v.x&&(E="A 20 20, 0, 0, 0,",S="A 20 20, 0, 0, 1,",_=20,M=20,F=Cf[f.branch].index,R=`M ${w.x} ${w.y} L ${v.x-_} ${w.y} ${S} ${v.x} ${w.y+M} L ${v.x} ${v.y}`),w.x>v.x&&(E="A 20 20, 0, 0, 0,",S="A 20 20, 0, 0, 1,",_=20,M=20,F=Cf[a.branch].index,R=`M ${w.x} ${w.y} L ${w.x} ${v.y-_} ${S} ${w.x-M} ${v.y} L ${v.x} ${v.y}`),w.x===v.x&&(F=Cf[a.branch].index,R=`M ${w.x} ${w.y} L ${w.x+_} ${w.y} ${E} ${w.x+M} ${v.y+_} L ${v.x} ${v.y}`)):(w.y<v.y&&(E="A 20 20, 0, 0, 0,",_=20,M=20,F=Cf[f.branch].index,R=`M ${w.x} ${w.y} L ${w.x} ${v.y-_} ${E} ${w.x+M} ${v.y} L ${v.x} ${v.y}`),w.y>v.y&&(E="A 20 20, 0, 0, 0,",_=20,M=20,F=Cf[a.branch].index,R=`M ${w.x} ${w.y} L ${v.x-_} ${w.y} ${E} ${v.x} ${w.y-M} L ${v.x} ${v.y}`),w.y===v.y&&(F=Cf[a.branch].index,R=`M ${w.x} ${w.y} L ${w.x} ${v.y-_} ${E} ${w.x+M} ${v.y} L ${v.x} ${v.y}`));i.append("path").attr("d",R).attr("class","arrow arrow"+F%P9)},gYe=(i,a)=>{const f=i.append("g").attr("class","commit-arrows");Object.keys(a).forEach(g=>{const w=a[g];w.parents&&w.parents.length>0&&w.parents.forEach(v=>{dYe(f,a[v],w,a)})})},pYe=(i,a)=>{const f=Re().gitGraph,g=i.append("g");a.forEach((w,v)=>{const b=v%P9,E=Cf[w.name].pos,S=g.append("line");S.attr("x1",0),S.attr("y1",E),S.attr("x2",sB),S.attr("y2",E),S.attr("class","branch branch"+b),f1==="TB"&&(S.attr("y1",30),S.attr("x1",E),S.attr("y2",sB),S.attr("x2",E)),uX.push(E);let _=w.name;const M=Lzt(_),F=g.insert("rect"),B=g.insert("g").attr("class","branchLabel").insert("g").attr("class","label branch-label"+b);B.node().appendChild(M);let z=M.getBBox();F.attr("class","branchLabelBkg label"+b).attr("rx",4).attr("ry",4).attr("x",-z.width-4-(f.rotateCommitLabel===!0?30:0)).attr("y",-z.height/2+8).attr("width",z.width+18).attr("height",z.height+4),B.attr("transform","translate("+(-z.width-14-(f.rotateCommitLabel===!0?30:0))+", "+(E-z.height/2-1)+")"),f1==="TB"&&(F.attr("x",E-z.width/2-10).attr("y",0),B.attr("transform","translate("+(E-z.width/2-5)+", 0)")),f1!=="TB"&&F.attr("transform","translate(-19, "+(E-z.height/2)+")")})},bYe=Object.freeze(Object.defineProperty({__proto__:null,diagram:{parser:UWe,db:uYe,renderer:{draw:function(i,a,f,g){lYe();const w=Re(),v=w.gitGraph;Kt.debug("in gitgraph renderer",i+`
`,"id:",a,f),iB=g.db.getCommits();const b=g.db.getBranchesAsObjArray();f1=g.db.getDirection();const E=Tr(`[id="${a}"]`);let S=0;b.forEach((_,M)=>{const F=Lzt(_.name),R=E.append("g"),B=R.insert("g").attr("class","branchLabel"),z=B.insert("g").attr("class","label branch-label");z.node().appendChild(F);let Y=F.getBBox();Cf[_.name]={pos:S,index:M},S+=50+(v.rotateCommitLabel?40:0)+(f1==="TB"?Y.width/2:0),z.remove(),B.remove(),R.remove()}),Dzt(E,iB,!1),v.showBranches&&pYe(E,b),gYe(E,iB),Dzt(E,iB,!0),uo.insertTitle(E,"gitTitleText",v.titleTopMargin,g.db.getDiagramTitle()),hBt(void 0,E,v.diagramPadding,v.useMaxWidth??w.useMaxWidth)}},styles:i=>`
.commit-id,
.commit-msg,
.branch-label {
fill: lightgrey;
color: lightgrey;
font-family: 'trebuchet ms', verdana, arial, sans-serif;
2022-11-03 00:28:15 +01:00
font-family: var(--mermaid-font-family);
}
2024-02-17 17:36:33 +01:00
${[0,1,2,3,4,5,6,7].map(a=>`
.branch-label${a} { fill: ${i["gitBranchLabel"+a]}; }
.commit${a} { stroke: ${i["git"+a]}; fill: ${i["git"+a]}; }
.commit-highlight${a} { stroke: ${i["gitInv"+a]}; fill: ${i["gitInv"+a]}; }
.label${a} { fill: ${i["git"+a]}; }
.arrow${a} { stroke: ${i["git"+a]}; }
`).join(`
`)}
.branch {
stroke-width: 1;
stroke: ${i.lineColor};
stroke-dasharray: 2;
}
.commit-label { font-size: ${i.commitLabelFontSize}; fill: ${i.commitLabelColor};}
.commit-label-bkg { font-size: ${i.commitLabelFontSize}; fill: ${i.commitLabelBackground}; opacity: 0.5; }
.tag-label { font-size: ${i.tagLabelFontSize}; fill: ${i.tagLabelColor};}
.tag-label-bkg { fill: ${i.tagLabelBackground}; stroke: ${i.tagLabelBorder}; }
.tag-hole { fill: ${i.textColor}; }
.commit-merge {
stroke: ${i.primaryColor};
fill: ${i.primaryColor};
}
.commit-reverse {
stroke: ${i.primaryColor};
fill: ${i.primaryColor};
stroke-width: 3;
}
.commit-highlight-outer {
}
.commit-highlight-inner {
stroke: ${i.primaryColor};
fill: ${i.primaryColor};
}
.arrow { stroke-width: 8; stroke-linecap: round; fill: none}
.gitTitleText {
text-anchor: middle;
font-size: 18px;
fill: ${i.textColor};
}
`}},Symbol.toStringTag,{value:"Module"}));var cbt=function(){var i=function(K,yt,V,Ot){for(V=V||{},Ot=K.length;Ot--;V[K[Ot]]=yt);return V},a=[6,8,10,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,30,32,33,35,37],f=[1,25],g=[1,26],w=[1,27],v=[1,28],b=[1,29],E=[1,30],S=[1,31],_=[1,9],M=[1,10],F=[1,11],R=[1,12],B=[1,13],z=[1,14],Y=[1,15],nt=[1,16],ot=[1,18],ft=[1,19],wt=[1,20],mt=[1,21],ct=[1,22],rt=[1,24],it=[1,32],gt={trace:function(){},yy:{},symbols_:{error:2,start:3,gantt:4,document:5,EOF:6,line:7,SPACE:8,statement:9,NL:10,weekday:11,weekday_monday:12,weekday_tuesday:13,weekday_wednesday:14,weekday_thursday:15,weekday_friday:16,weekday_saturday:17,weekday_sunday:18,dateFormat:19,inclusiveEndDates:20,topAxis:21,axisFormat:22,tickInterval:23,excludes:24,includes:25,todayMarker:26,title:27,acc_title:28,acc_title_value:29,acc_descr:30,acc_descr_value:31,acc_descr_multiline_value:32,section:33,clickStatement:34,taskTxt:35,taskData:36,click:37,callbackname:38,callbackargs:39,href:40,clickStatementDebug:41,$accept:0,$end:1},terminals_:{2:"error",4:"gantt",6:"EOF",8:"SPACE",10:"NL",12:"weekday_monday",13:"weekday_tuesday",14:"weekday_wednesday",15:"weekday_thursday",16:"weekday_friday",17:"weekday_saturday",18:"weekday_sunday",19:"dateFormat",20:"inclusiveEndDates",21:"topAxis",22:"axisFormat",23:"tickInterval",24:"excludes",25:"includes",26:"todayMarker",27:"title",28:"acc_title",29:"acc_title_value",30:"acc_descr",31:"acc_descr_value",32:"acc_descr_multiline_value",33:"section",35:"taskTxt",36:"taskData",37:"click",38:"callbackname",39:"callbackargs",40:"href"},productions_:[0,[3,3],[5,0],[5,2],[7,2],[7,1],[7,1],[7,1],[11,1],[11,1],[11,1],[11,1],[11,1],[11,1],[11,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,2],[9,2],[9,1],[9,1],[9,1],[9,2],[34,2],[34,3],[34,3],[34,4],[34,3],[34,4],[34,2],[41,2],[41,3],[41,3],[41,4],[41,3],[41,4],[41,2]],performAction:function(yt,V,Ot,It,jt,xt,Ft){var Ct=xt.length-1;switch(jt){case 1:return xt[Ct-1];case 2:this.$=[];break;case 3:xt[Ct-1].push(xt[Ct]),this.$=xt[Ct-1];break;case 4:case 5:this.$=xt[Ct];break;case 6:case 7:this.$=[];break;case 8:It.setWeekday("monday");break;case 9:It.setWeekday("tuesday");break;case 10:It.setWeekday("wednesday");break;case 11:It.setWeekday("thursday");break;case 12:It.setWeekday("friday");break;case 13:It.setWeekday("saturday");break;case 14:It.setWeekday("sunday");break;case 15:It.setDateFormat(xt[Ct].substr(11)),this.$=xt[Ct].substr(11);break;case 16:It.enableInclusiveEndDates(),this.$=xt[Ct].substr(18);break;case 17:It.TopAxis(),this.$=xt[Ct].substr(8);break;case 18:It.setAxisFormat(xt[Ct].substr(11)),this.$=xt[Ct].substr(11);break;case 19:It.setTickInterval(xt[Ct].substr(13)),this.$=xt[Ct].substr(13);break;case 20:It.setExcludes(xt[Ct].substr(9)),this.$=xt[Ct].substr(9);break;case 21:It.setIncludes(xt[Ct].substr(9)),this.$=xt[Ct].substr(9);break;case 22:It.setTodayMarker(xt[Ct].substr(12)),this.$=xt[Ct].substr(12);break;case 24:It.setDiagramTitle(xt[Ct].substr(6)),this.$=xt[Ct].substr(6);break;case 25:this.$=xt[Ct].trim(),It.setAccTitle(this.$);break;case 26:case 27:this.$=xt[Ct].trim(),It.setAccDescription(this.$);break;case 28:It.addSection(xt[Ct].substr(8)),this.$=xt[Ct].substr(8);break;case 30:It.addTask(xt[Ct-1],xt[Ct]),this.$="task";break;case 31:this.$=xt[Ct-1],It.setClickEvent(xt[Ct-1],xt[Ct],null);break;case 32:this.$=xt[Ct-2],It.setClickEvent(xt[Ct-2],xt[Ct-1],xt[Ct]);break;case 33:this.$=xt[Ct-2],It.setClickEvent(xt[Ct-2],xt[Ct-1],null),It.setLink(xt[Ct-2],xt[Ct]);break;case 34:this.$=xt[Ct-3],It.setClickEvent(xt[Ct-3],xt[Ct-2],xt[Ct-1]),It.setLink(xt[Ct-3],xt[Ct]);break;case 35:this.$=xt[Ct-2],It.setClickEvent(xt[Ct-2],xt[Ct],null),It.setLink(xt[Ct-2],xt[Ct-1]);break;case 36:this.$=xt[Ct-3],It.setClickEvent(xt[Ct-3],xt[Ct-1],xt[Ct]),It.setLink(xt[Ct-3],xt[Ct-2]);break;case 37:this.$=xt[Ct-1],It.setLink(xt[Ct-1],xt[Ct]);break;case 38:case 44:this.$=xt[Ct-1]+" "+xt[Ct];break;case 39:case 40:case 42:this.$=xt[Ct-2]+" "+xt[Ct-1]+" "+xt[Ct];break;case 41:case 43:this.$=xt[Ct-3]+" "+xt[Ct-2]+" "+xt[Ct-1]+" "+xt[Ct];break}},tabl
`+Ae.showPosition()+`
Expecting `+mi.join(", ")+", got '"+(this.terminals_[Xt]||Xt)+"'":ga="Parse error on line "+(kt+1)+": Unexpected "+(Xt==Mt?"end of input":"'"+(this.terminals_[Xt]||Xt)+"'"),this.parseError(ga,{text:Ae.match,token:this.terminals_[Xt]||Xt,line:Ae.yylineno,loc:sn,expected:mi})}if(xe[0]instanceof Array&&xe.length>1)throw new Error("Parse Error: multiple actions possible at state: "+_e+", token: "+Xt);switch(xe[0]){case 1:Ot.push(Xt),jt.push(Ae.yytext),xt.push(Ae.yylloc),Ot.push(xe[1]),Xt=null,Gt=Ae.yyleng,Ct=Ae.yytext,kt=Ae.yylineno,sn=Ae.yylloc;break;case 2:if(we=this.productions_[xe[1]][1],ce.$=jt[jt.length-we],ce._$={first_line:xt[xt.length-(we||1)].first_line,last_line:xt[xt.length-1].last_line,first_column:xt[xt.length-(we||1)].first_column,last_column:xt[xt.length-1].last_column},be&&(ce._$.range=[xt[xt.length-(we||1)].range[0],xt[xt.length-1].range[1]]),Mn=this.performAction.apply(ce,[Ct,Gt,kt,ye.yy,xe[1],jt,xt].concat(pn)),typeof Mn<"u")return Mn;we&&(Ot=Ot.slice(0,-1*we*2),jt=jt.slice(0,-1*we),xt=xt.slice(0,-1*we)),Ot.push(this.productions_[xe[1]][0]),jt.push(ce.$),xt.push(ce._$),Fi=Ft[Ot[Ot.length-2]][Ot[Ot.length-1]],Ot.push(Fi);break;case 3:return!0}}return!0}},Q=function(){var K={EOF:1,parseError:function(V,Ot){if(this.yy.parser)this.yy.parser.parseError(V,Ot);else throw new Error(V)},setInput:function(yt,V){return this.yy=V||this.yy||{},this._input=yt,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var yt=this._input[0];this.yytext+=yt,this.yyleng++,this.offset++,this.match+=yt,this.matched+=yt;var V=yt.match(/(?:\r\n?|\n).*/g);return V?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),yt},unput:function(yt){var V=yt.length,Ot=yt.split(/(?:\r\n?|\n)/g);this._input=yt+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-V),this.offset-=V;var It=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),Ot.length-1&&(this.yylineno-=Ot.length-1);var jt=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:Ot?(Ot.length===It.length?this.yylloc.first_column:0)+It[It.length-Ot.length].length-Ot[0].length:this.yylloc.first_column-V},this.options.ranges&&(this.yylloc.range=[jt[0],jt[0]+this.yyleng-V]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(yt){this.unput(this.match.slice(yt))},pastInput:function(){var yt=this.matched.substr(0,this.matched.length-this.match.length);return(yt.length>20?"...":"")+yt.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var yt=this.match;return yt.length<20&&(yt+=this._input.substr(0,20-yt.length)),(yt.substr(0,20)+(yt.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var yt=this.pastInput(),V=new Array(yt.length+1).join("-");return yt+this.upcomingInput()+`
`+V+"^"},test_match:function(yt,V){var Ot,It,jt;if(this.options.backtrack_lexer&&(jt={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(jt.yylloc.range=this.yylloc.range.slice(0))),It=yt[0].match(/(?:\r\n?|\n).*/g),It&&(this.yylineno+=It.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:It?It[It.length-1].length-It[It.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+yt[0].length},this.yytext+=yt[0],this.match+=yt[0],this.matches=yt,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(yt[0].length),this.matched+=yt[0],Ot=this.performAction.call(this,this.yy,this,V,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),Ot)return Ot;if(this._backtrack){for(var xt in jt)this[xt]=jt[xt];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var yt,V,Ot,It;this._more||(this.yytext="",this.match="");for(var jt=this._currentRules(),xt=0;xt<jt.length;xt++)if(Ot=this._input.match(this.rules[jt[xt]]),Ot&&(!V||Ot[0].length>V[0].length)){if(V=Ot,It=xt,this.options.backtrack_lexer){if(yt=this.test_match(Ot,jt[xt]),yt!==!1)return yt;if(this._backtrack){V=!1;continue}else return!1}else if(!this.options.flex)break}return V?(yt=this.test_match(V,jt[It]),yt!==!1?yt:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.
`+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var V=this.next();return V||this.lex()},begin:function(V){this.conditionStack.push(V)},popState:function(){var V=this.conditionStack.length-1;return V>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(V){return V=this.conditionStack.length-1-Math.abs(V||0),V>=0?this.conditionStack[V]:"INITIAL"},pushState:function(V){this.begin(V)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(V,Ot,It,jt){switch(It){case 0:return this.begin("open_directive"),"open_directive";case 1:return this.begin("acc_title"),28;case 2:return this.popState(),"acc_title_value";case 3:return this.begin("acc_descr"),30;case 4:return this.popState(),"acc_descr_value";case 5:this.begin("acc_descr_multiline");break;case 6:this.popState();break;case 7:return"acc_descr_multiline_value";case 8:break;case 9:break;case 10:break;case 11:return 10;case 12:break;case 13:break;case 14:this.begin("href");break;case 15:this.popState();break;case 16:return 40;case 17:this.begin("callbackname");break;case 18:this.popState();break;case 19:this.popState(),this.begin("callbackargs");break;case 20:return 38;case 21:this.popState();break;case 22:return 39;case 23:this.begin("click");break;case 24:this.popState();break;case 25:return 37;case 26:return 4;case 27:return 19;case 28:return 20;case 29:return 21;case 30:return 22;case 31:return 23;case 32:return 25;case 33:return 24;case 34:return 26;case 35:return 12;case 36:return 13;case 37:return 14;case 38:return 15;case 39:return 16;case 40:return 17;case 41:return 18;case 42:return"date";case 43:return 27;case 44:return"accDescription";case 45:return 33;case 46:return 35;case 47:return 36;case 48:return":";case 49:return 6;case 50:return"INVALID"}},rules:[/^(?:%%\{)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:%%(?!\{)*[^\n]*)/i,/^(?:[^\}]%%*[^\n]*)/i,/^(?:%%*[^\n]*[\n]*)/i,/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?:%[^\n]*)/i,/^(?:href[\s]+["])/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:call[\s]+)/i,/^(?:\([\s]*\))/i,/^(?:\()/i,/^(?:[^(]*)/i,/^(?:\))/i,/^(?:[^)]*)/i,/^(?:click[\s]+)/i,/^(?:[\s\n])/i,/^(?:[^\s\n]*)/i,/^(?:gantt\b)/i,/^(?:dateFormat\s[^#\n;]+)/i,/^(?:inclusiveEndDates\b)/i,/^(?:topAxis\b)/i,/^(?:axisFormat\s[^#\n;]+)/i,/^(?:tickInterval\s[^#\n;]+)/i,/^(?:includes\s[^#\n;]+)/i,/^(?:excludes\s[^#\n;]+)/i,/^(?:todayMarker\s[^\n;]+)/i,/^(?:weekday\s+monday\b)/i,/^(?:weekday\s+tuesday\b)/i,/^(?:weekday\s+wednesday\b)/i,/^(?:weekday\s+thursday\b)/i,/^(?:weekday\s+friday\b)/i,/^(?:weekday\s+saturday\b)/i,/^(?:weekday\s+sunday\b)/i,/^(?:\d\d\d\d-\d\d-\d\d\b)/i,/^(?:title\s[^\n]+)/i,/^(?:accDescription\s[^#\n;]+)/i,/^(?:section\s[^\n]+)/i,/^(?:[^:\n]+)/i,/^(?::[^#\n;]+)/i,/^(?::)/i,/^(?:$)/i,/^(?:.)/i],conditions:{acc_descr_multiline:{rules:[6,7],inclusive:!1},acc_descr:{rules:[4],inclusive:!1},acc_title:{rules:[2],inclusive:!1},callbackargs:{rules:[21,22],inclusive:!1},callbackname:{rules:[18,19,20],inclusive:!1},href:{rules:[15,16],inclusive:!1},click:{rules:[24,25],inclusive:!1},INITIAL:{rules:[0,1,3,5,8,9,10,11,12,13,14,17,23,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50],inclusive:!0}}};return K}();gt.lexer=Q;function dt(){this.yy={}}return dt.prototype=gt,gt.Parser=dt,new dt}();cbt.parser=cbt;const wYe=cbt;var Mzt={exports:{}};(function(i,a){(function(f,g){i.exports=g()})(Z0,function(){var f="day";return function(g,w,v){var b=function(_){return _.add(4-_.isoWeekday(),f)},E=w.prototype;E.isoWeekYear=function(){return b(this).year()},E.isoWeek=function(_){if(!this.$utils().u(_))return this.add(7*(_-this.isoWeek()),f);var M,F,R,B,z=b(this),Y=(M=this.isoWeekYear(),F=this.$u,R=(F?v.utc:v)().year(M).startOf("year"),B=4-R.isoWe
.mermaid-main-font {
font-family: var(--mermaid-font-family, "trebuchet ms", verdana, arial, sans-serif);
}
2022-11-03 00:28:15 +01:00
.exclude-range {
2024-02-17 17:36:33 +01:00
fill: ${i.excludeBkgColor};
2022-11-03 00:28:15 +01:00
}
.section {
stroke: none;
opacity: 0.2;
}
.section0 {
2024-02-17 17:36:33 +01:00
fill: ${i.sectionBkgColor};
2022-11-03 00:28:15 +01:00
}
.section2 {
2024-02-17 17:36:33 +01:00
fill: ${i.sectionBkgColor2};
2022-11-03 00:28:15 +01:00
}
.section1,
.section3 {
2024-02-17 17:36:33 +01:00
fill: ${i.altSectionBkgColor};
2022-11-03 00:28:15 +01:00
opacity: 0.2;
}
.sectionTitle0 {
2024-02-17 17:36:33 +01:00
fill: ${i.titleColor};
2022-11-03 00:28:15 +01:00
}
.sectionTitle1 {
2024-02-17 17:36:33 +01:00
fill: ${i.titleColor};
2022-11-03 00:28:15 +01:00
}
.sectionTitle2 {
2024-02-17 17:36:33 +01:00
fill: ${i.titleColor};
2022-11-03 00:28:15 +01:00
}
.sectionTitle3 {
2024-02-17 17:36:33 +01:00
fill: ${i.titleColor};
2022-11-03 00:28:15 +01:00
}
.sectionTitle {
text-anchor: start;
2024-02-17 17:36:33 +01:00
font-family: var(--mermaid-font-family, "trebuchet ms", verdana, arial, sans-serif);
2022-11-03 00:28:15 +01:00
}
/* Grid and axis */
.grid .tick {
2024-02-17 17:36:33 +01:00
stroke: ${i.gridColor};
2022-11-03 00:28:15 +01:00
opacity: 0.8;
shape-rendering: crispEdges;
2024-02-17 17:36:33 +01:00
}
.grid .tick text {
font-family: ${i.fontFamily};
fill: ${i.textColor};
2022-11-03 00:28:15 +01:00
}
.grid path {
stroke-width: 0;
}
/* Today line */
.today {
fill: none;
2024-02-17 17:36:33 +01:00
stroke: ${i.todayLineColor};
2022-11-03 00:28:15 +01:00
stroke-width: 2px;
}
/* Task styling */
/* Default task */
.task {
stroke-width: 2;
}
.taskText {
text-anchor: middle;
2024-02-17 17:36:33 +01:00
font-family: var(--mermaid-font-family, "trebuchet ms", verdana, arial, sans-serif);
2022-11-03 00:28:15 +01:00
}
.taskTextOutsideRight {
2024-02-17 17:36:33 +01:00
fill: ${i.taskTextDarkColor};
2022-11-03 00:28:15 +01:00
text-anchor: start;
2024-02-17 17:36:33 +01:00
font-family: var(--mermaid-font-family, "trebuchet ms", verdana, arial, sans-serif);
2022-11-03 00:28:15 +01:00
}
.taskTextOutsideLeft {
2024-02-17 17:36:33 +01:00
fill: ${i.taskTextDarkColor};
2022-11-03 00:28:15 +01:00
text-anchor: end;
}
2024-02-17 17:36:33 +01:00
2022-11-03 00:28:15 +01:00
/* Special case clickable */
2024-02-17 17:36:33 +01:00
2022-11-03 00:28:15 +01:00
.task.clickable {
cursor: pointer;
}
2024-02-17 17:36:33 +01:00
2022-11-03 00:28:15 +01:00
.taskText.clickable {
cursor: pointer;
2024-02-17 17:36:33 +01:00
fill: ${i.taskTextClickableColor} !important;
2022-11-03 00:28:15 +01:00
font-weight: bold;
}
.taskTextOutsideLeft.clickable {
cursor: pointer;
2024-02-17 17:36:33 +01:00
fill: ${i.taskTextClickableColor} !important;
2022-11-03 00:28:15 +01:00
font-weight: bold;
}
.taskTextOutsideRight.clickable {
cursor: pointer;
2024-02-17 17:36:33 +01:00
fill: ${i.taskTextClickableColor} !important;
2022-11-03 00:28:15 +01:00
font-weight: bold;
}
2024-02-17 17:36:33 +01:00
2022-11-03 00:28:15 +01:00
/* Specific task settings for the sections*/
.taskText0,
.taskText1,
.taskText2,
.taskText3 {
2024-02-17 17:36:33 +01:00
fill: ${i.taskTextColor};
2022-11-03 00:28:15 +01:00
}
.task0,
.task1,
.task2,
.task3 {
2024-02-17 17:36:33 +01:00
fill: ${i.taskBkgColor};
stroke: ${i.taskBorderColor};
2022-11-03 00:28:15 +01:00
}
.taskTextOutside0,
.taskTextOutside2
{
2024-02-17 17:36:33 +01:00
fill: ${i.taskTextOutsideColor};
2022-11-03 00:28:15 +01:00
}
.taskTextOutside1,
.taskTextOutside3 {
2024-02-17 17:36:33 +01:00
fill: ${i.taskTextOutsideColor};
2022-11-03 00:28:15 +01:00
}
/* Active task */
.active0,
.active1,
.active2,
.active3 {
2024-02-17 17:36:33 +01:00
fill: ${i.activeTaskBkgColor};
stroke: ${i.activeTaskBorderColor};
2022-11-03 00:28:15 +01:00
}
.activeText0,
.activeText1,
.activeText2,
.activeText3 {
2024-02-17 17:36:33 +01:00
fill: ${i.taskTextDarkColor} !important;
2022-11-03 00:28:15 +01:00
}
/* Completed task */
.done0,
.done1,
.done2,
.done3 {
2024-02-17 17:36:33 +01:00
stroke: ${i.doneTaskBorderColor};
fill: ${i.doneTaskBkgColor};
2022-11-03 00:28:15 +01:00
stroke-width: 2;
}
.doneText0,
.doneText1,
.doneText2,
.doneText3 {
2024-02-17 17:36:33 +01:00
fill: ${i.taskTextDarkColor} !important;
2022-11-03 00:28:15 +01:00
}
/* Tasks on the critical line */
.crit0,
.crit1,
.crit2,
.crit3 {
2024-02-17 17:36:33 +01:00
stroke: ${i.critBorderColor};
fill: ${i.critBkgColor};
2022-11-03 00:28:15 +01:00
stroke-width: 2;
}
.activeCrit0,
.activeCrit1,
.activeCrit2,
.activeCrit3 {
2024-02-17 17:36:33 +01:00
stroke: ${i.critBorderColor};
fill: ${i.activeTaskBkgColor};
2022-11-03 00:28:15 +01:00
stroke-width: 2;
}
.doneCrit0,
.doneCrit1,
.doneCrit2,
.doneCrit3 {
2024-02-17 17:36:33 +01:00
stroke: ${i.critBorderColor};
fill: ${i.doneTaskBkgColor};
2022-11-03 00:28:15 +01:00
stroke-width: 2;
cursor: pointer;
shape-rendering: crispEdges;
}
.milestone {
transform: rotate(45deg) scale(0.8,0.8);
}
.milestoneText {
font-style: italic;
}
.doneCritText0,
.doneCritText1,
.doneCritText2,
.doneCritText3 {
2024-02-17 17:36:33 +01:00
fill: ${i.taskTextDarkColor} !important;
2022-11-03 00:28:15 +01:00
}
.activeCritText0,
.activeCritText1,
.activeCritText2,
.activeCritText3 {
2024-02-17 17:36:33 +01:00
fill: ${i.taskTextDarkColor} !important;
2022-11-03 00:28:15 +01:00
}
.titleText {
text-anchor: middle;
font-size: 18px;
2024-02-17 17:36:33 +01:00
fill: ${i.titleColor||i.textColor};
font-family: var(--mermaid-font-family, "trebuchet ms", verdana, arial, sans-serif);
}
`}},Symbol.toStringTag,{value:"Module"}));var xbt=function(){var i=function(v,b,E,S){for(E=E||{},S=v.length;S--;E[v[S]]=b);return E},a=[6,9,10],f={trace:function(){},yy:{},symbols_:{error:2,start:3,info:4,document:5,EOF:6,line:7,statement:8,NL:9,showInfo:10,$accept:0,$end:1},terminals_:{2:"error",4:"info",6:"EOF",9:"NL",10:"showInfo"},productions_:[0,[3,3],[5,0],[5,2],[7,1],[7,1],[8,1]],performAction:function(b,E,S,_,M,F,R){switch(F.length-1,M){case 1:return _;case 4:break;case 6:_.setInfo(!0);break}},table:[{3:1,4:[1,2]},{1:[3]},i(a,[2,2],{5:3}),{6:[1,4],7:5,8:6,9:[1,7],10:[1,8]},{1:[2,1]},i(a,[2,3]),i(a,[2,4]),i(a,[2,5]),i(a,[2,6])],defaultActions:{4:[2,1]},parseError:function(b,E){if(E.recoverable)this.trace(b);else{var S=new Error(b);throw S.hash=E,S}},parse:function(b){var E=this,S=[0],_=[],M=[null],F=[],R=this.table,B="",z=0,Y=0,nt=2,ot=1,ft=F.slice.call(arguments,1),wt=Object.create(this.lexer),mt={yy:{}};for(var ct in this.yy)Object.prototype.hasOwnProperty.call(this.yy,ct)&&(mt.yy[ct]=this.yy[ct]);wt.setInput(b,mt.yy),mt.yy.lexer=wt,mt.yy.parser=this,typeof wt.yylloc>"u"&&(wt.yylloc={});var rt=wt.yylloc;F.push(rt);var it=wt.options&&wt.options.ranges;typeof mt.yy.parseError=="function"?this.parseError=mt.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function gt(){var Ct;return Ct=_.pop()||wt.lex()||ot,typeof Ct!="number"&&(Ct instanceof Array&&(_=Ct,Ct=_.pop()),Ct=E.symbols_[Ct]||Ct),Ct}for(var Q,dt,K,yt,V={},Ot,It,jt,xt;;){if(dt=S[S.length-1],this.defaultActions[dt]?K=this.defaultActions[dt]:((Q===null||typeof Q>"u")&&(Q=gt()),K=R[dt]&&R[dt][Q]),typeof K>"u"||!K.length||!K[0]){var Ft="";xt=[];for(Ot in R[dt])this.terminals_[Ot]&&Ot>nt&&xt.push("'"+this.terminals_[Ot]+"'");wt.showPosition?Ft="Parse error on line "+(z+1)+`:
`+wt.showPosition()+`
Expecting `+xt.join(", ")+", got '"+(this.terminals_[Q]||Q)+"'":Ft="Parse error on line "+(z+1)+": Unexpected "+(Q==ot?"end of input":"'"+(this.terminals_[Q]||Q)+"'"),this.parseError(Ft,{text:wt.match,token:this.terminals_[Q]||Q,line:wt.yylineno,loc:rt,expected:xt})}if(K[0]instanceof Array&&K.length>1)throw new Error("Parse Error: multiple actions possible at state: "+dt+", token: "+Q);switch(K[0]){case 1:S.push(Q),M.push(wt.yytext),F.push(wt.yylloc),S.push(K[1]),Q=null,Y=wt.yyleng,B=wt.yytext,z=wt.yylineno,rt=wt.yylloc;break;case 2:if(It=this.productions_[K[1]][1],V.$=M[M.length-It],V._$={first_line:F[F.length-(It||1)].first_line,last_line:F[F.length-1].last_line,first_column:F[F.length-(It||1)].first_column,last_column:F[F.length-1].last_column},it&&(V._$.range=[F[F.length-(It||1)].range[0],F[F.length-1].range[1]]),yt=this.performAction.apply(V,[B,Y,z,mt.yy,K[1],M,F].concat(ft)),typeof yt<"u")return yt;It&&(S=S.slice(0,-1*It*2),M=M.slice(0,-1*It),F=F.slice(0,-1*It)),S.push(this.productions_[K[1]][0]),M.push(V.$),F.push(V._$),jt=R[S[S.length-2]][S[S.length-1]],S.push(jt);break;case 3:return!0}}return!0}},g=function(){var v={EOF:1,parseError:function(E,S){if(this.yy.parser)this.yy.parser.parseError(E,S);else throw new Error(E)},setInput:function(b,E){return this.yy=E||this.yy||{},this._input=b,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var b=this._input[0];this.yytext+=b,this.yyleng++,this.offset++,this.match+=b,this.matched+=b;var E=b.match(/(?:\r\n?|\n).*/g);return E?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),b},unput:function(b){var E=b.length,S=b.split(/(?:\r\n?|\n)/g);this._input=b+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-E),this.offset-=E;var _=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),S.length-1&&(this.yylineno-=S.length-1);var M=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:S?(S.length===_.length?this.yylloc.first_column:0)+_[_.length-S.length].length-S[0].length:this.yylloc.first_column-E},this.options.ranges&&(this.yylloc.range=[M[0],M[0]+this.yyleng-E]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(b){this.unput(this.match.slice(b))},pastInput:function(){var b=this.matched.substr(0,this.matched.length-this.match.length);return(b.length>20?"...":"")+b.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var b=this.match;return b.length<20&&(b+=this._input.substr(0,20-b.length)),(b.substr(0,20)+(b.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var b=this.pastInput(),E=new Array(b.length+1).join("-");return b+this.upcomingInput()+`
`+E+"^"},test_match:function(b,E){var S,_,M;if(this.options.backtrack_lexer&&(M={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(M.yylloc.range=this.yylloc.range.slice(0))),_=b[0].match(/(?:\r\n?|\n).*/g),_&&(this.yylineno+=_.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:_?_[_.length-1].length-_[_.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+b[0].length},this.yytext+=b[0],this.match+=b[0],this.matches=b,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(b[0].length),this.matched+=b[0],S=this.performAction.call(this,this.yy,this,E,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),S)return S;if(this._backtrack){for(var F in M)this[F]=M[F];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var b,E,S,_;this._more||(this.yytext="",this.match="");for(var M=this._currentRules(),F=0;F<M.length;F++)if(S=this._input.match(this.rules[M[F]]),S&&(!E||S[0].length>E[0].length)){if(E=S,_=F,this.options.backtrack_lexer){if(b=this.test_match(S,M[F]),b!==!1)return b;if(this._backtrack){E=!1;continue}else return!1}else if(!this.options.flex)break}return E?(b=this.test_match(E,M[_]),b!==!1?b:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.
`+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var E=this.next();return E||this.lex()},begin:function(E){this.conditionStack.push(E)},popState:function(){var E=this.conditionStack.length-1;return E>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(E){return E=this.conditionStack.length-1-Math.abs(E||0),E>=0?this.conditionStack[E]:"INITIAL"},pushState:function(E){this.begin(E)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(E,S,_,M){switch(_){case 0:return 4;case 1:return 9;case 2:return"space";case 3:return 10;case 4:return 6;case 5:return"TXT"}},rules:[/^(?:info\b)/i,/^(?:[\s\n\r]+)/i,/^(?:[\s]+)/i,/^(?:showInfo\b)/i,/^(?:$)/i,/^(?:.)/i],conditions:{INITIAL:{rules:[0,1,2,3,4,5],inclusive:!0}}};return v}();f.lexer=g;function w(){this.yy={}}return w.prototype=f,f.Parser=w,new w}();xbt.parser=xbt;const aXe=xbt,Uzt={info:!1};let kbt=Uzt.info;const oXe=Object.freeze(Object.defineProperty({__proto__:null,diagram:{parser:aXe,db:{clear:()=>{kbt=Uzt.info},setInfo:i=>{kbt=i},getInfo:()=>kbt},renderer:{draw:(i,a,f)=>{Kt.debug(`rendering info diagram
`+i);const g=FF(a);sg(g,100,400,!0),g.append("g").append("text").attr("x",100).attr("y",40).attr("class","version").attr("font-size",32).style("text-anchor","middle").text(`v${f}`)}}}},Symbol.toStringTag,{value:"Module"}));var Ebt=function(){var i=function(wt,mt,ct,rt){for(ct=ct||{},rt=wt.length;rt--;ct[wt[rt]]=mt);return ct},a=[1,3],f=[1,4],g=[1,5],w=[1,6],v=[1,10,12,14,16,18,19,20,21,22],b=[2,4],E=[1,5,10,12,14,16,18,19,20,21,22],S=[20,21,22],_=[2,7],M=[1,12],F=[1,13],R=[1,14],B=[1,15],z=[1,16],Y=[1,17],nt={trace:function(){},yy:{},symbols_:{error:2,start:3,eol:4,PIE:5,document:6,showData:7,line:8,statement:9,txt:10,value:11,title:12,title_value:13,acc_title:14,acc_title_value:15,acc_descr:16,acc_descr_value:17,acc_descr_multiline_value:18,section:19,NEWLINE:20,";":21,EOF:22,$accept:0,$end:1},terminals_:{2:"error",5:"PIE",7:"showData",10:"txt",11:"value",12:"title",13:"title_value",14:"acc_title",15:"acc_title_value",16:"acc_descr",17:"acc_descr_value",18:"acc_descr_multiline_value",19:"section",20:"NEWLINE",21:";",22:"EOF"},productions_:[0,[3,2],[3,2],[3,3],[6,0],[6,2],[8,2],[9,0],[9,2],[9,2],[9,2],[9,2],[9,1],[9,1],[4,1],[4,1],[4,1]],performAction:function(mt,ct,rt,it,gt,Q,dt){var K=Q.length-1;switch(gt){case 3:it.setShowData(!0);break;case 6:this.$=Q[K-1];break;case 8:it.addSection(Q[K-1],it.cleanupValue(Q[K]));break;case 9:this.$=Q[K].trim(),it.setDiagramTitle(this.$);break;case 10:this.$=Q[K].trim(),it.setAccTitle(this.$);break;case 11:case 12:this.$=Q[K].trim(),it.setAccDescription(this.$);break;case 13:it.addSection(Q[K].substr(8)),this.$=Q[K].substr(8);break}},table:[{3:1,4:2,5:a,20:f,21:g,22:w},{1:[3]},{3:7,4:2,5:a,20:f,21:g,22:w},i(v,b,{6:8,7:[1,9]}),i(E,[2,14]),i(E,[2,15]),i(E,[2,16]),{1:[2,1]},i(S,_,{8:10,9:11,1:[2,2],10:M,12:F,14:R,16:B,18:z,19:Y}),i(v,b,{6:18}),i(v,[2,5]),{4:19,20:f,21:g,22:w},{11:[1,20]},{13:[1,21]},{15:[1,22]},{17:[1,23]},i(S,[2,12]),i(S,[2,13]),i(S,_,{8:10,9:11,1:[2,3],10:M,12:F,14:R,16:B,18:z,19:Y}),i(v,[2,6]),i(S,[2,8]),i(S,[2,9]),i(S,[2,10]),i(S,[2,11])],defaultActions:{7:[2,1]},parseError:function(mt,ct){if(ct.recoverable)this.trace(mt);else{var rt=new Error(mt);throw rt.hash=ct,rt}},parse:function(mt){var ct=this,rt=[0],it=[],gt=[null],Q=[],dt=this.table,K="",yt=0,V=0,Ot=2,It=1,jt=Q.slice.call(arguments,1),xt=Object.create(this.lexer),Ft={yy:{}};for(var Ct in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Ct)&&(Ft.yy[Ct]=this.yy[Ct]);xt.setInput(mt,Ft.yy),Ft.yy.lexer=xt,Ft.yy.parser=this,typeof xt.yylloc>"u"&&(xt.yylloc={});var kt=xt.yylloc;Q.push(kt);var Gt=xt.options&&xt.options.ranges;typeof Ft.yy.parseError=="function"?this.parseError=Ft.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Fe(){var xe;return xe=it.pop()||xt.lex()||It,typeof xe!="number"&&(xe instanceof Array&&(it=xe,xe=it.pop()),xe=ct.symbols_[xe]||xe),xe}for(var Mt,pn,Ae,ye,tn={},sn,be,Ne,Xt;;){if(pn=rt[rt.length-1],this.defaultActions[pn]?Ae=this.defaultActions[pn]:((Mt===null||typeof Mt>"u")&&(Mt=Fe()),Ae=dt[pn]&&dt[pn][Mt]),typeof Ae>"u"||!Ae.length||!Ae[0]){var _e="";Xt=[];for(sn in dt[pn])this.terminals_[sn]&&sn>Ot&&Xt.push("'"+this.terminals_[sn]+"'");xt.showPosition?_e="Parse error on line "+(yt+1)+`:
`+xt.showPosition()+`
Expecting `+Xt.join(", ")+", got '"+(this.terminals_[Mt]||Mt)+"'":_e="Parse error on line "+(yt+1)+": Unexpected "+(Mt==It?"end of input":"'"+(this.terminals_[Mt]||Mt)+"'"),this.parseError(_e,{text:xt.match,token:this.terminals_[Mt]||Mt,line:xt.yylineno,loc:kt,expected:Xt})}if(Ae[0]instanceof Array&&Ae.length>1)throw new Error("Parse Error: multiple actions possible at state: "+pn+", token: "+Mt);switch(Ae[0]){case 1:rt.push(Mt),gt.push(xt.yytext),Q.push(xt.yylloc),rt.push(Ae[1]),Mt=null,V=xt.yyleng,K=xt.yytext,yt=xt.yylineno,kt=xt.yylloc;break;case 2:if(be=this.productions_[Ae[1]][1],tn.$=gt[gt.length-be],tn._$={first_line:Q[Q.length-(be||1)].first_line,last_line:Q[Q.length-1].last_line,first_column:Q[Q.length-(be||1)].first_column,last_column:Q[Q.length-1].last_column},Gt&&(tn._$.range=[Q[Q.length-(be||1)].range[0],Q[Q.length-1].range[1]]),ye=this.performAction.apply(tn,[K,V,yt,Ft.yy,Ae[1],gt,Q].concat(jt)),typeof ye<"u")return ye;be&&(rt=rt.slice(0,-1*be*2),gt=gt.slice(0,-1*be),Q=Q.slice(0,-1*be)),rt.push(this.productions_[Ae[1]][0]),gt.push(tn.$),Q.push(tn._$),Ne=dt[rt[rt.length-2]][rt[rt.length-1]],rt.push(Ne);break;case 3:return!0}}return!0}},ot=function(){var wt={EOF:1,parseError:function(ct,rt){if(this.yy.parser)this.yy.parser.parseError(ct,rt);else throw new Error(ct)},setInput:function(mt,ct){return this.yy=ct||this.yy||{},this._input=mt,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var mt=this._input[0];this.yytext+=mt,this.yyleng++,this.offset++,this.match+=mt,this.matched+=mt;var ct=mt.match(/(?:\r\n?|\n).*/g);return ct?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),mt},unput:function(mt){var ct=mt.length,rt=mt.split(/(?:\r\n?|\n)/g);this._input=mt+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-ct),this.offset-=ct;var it=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),rt.length-1&&(this.yylineno-=rt.length-1);var gt=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:rt?(rt.length===it.length?this.yylloc.first_column:0)+it[it.length-rt.length].length-rt[0].length:this.yylloc.first_column-ct},this.options.ranges&&(this.yylloc.range=[gt[0],gt[0]+this.yyleng-ct]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(mt){this.unput(this.match.slice(mt))},pastInput:function(){var mt=this.matched.substr(0,this.matched.length-this.match.length);return(mt.length>20?"...":"")+mt.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var mt=this.match;return mt.length<20&&(mt+=this._input.substr(0,20-mt.length)),(mt.substr(0,20)+(mt.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var mt=this.pastInput(),ct=new Array(mt.length+1).join("-");return mt+this.upcomingInput()+`
`+ct+"^"},test_match:function(mt,ct){var rt,it,gt;if(this.options.backtrack_lexer&&(gt={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(gt.yylloc.range=this.yylloc.range.slice(0))),it=mt[0].match(/(?:\r\n?|\n).*/g),it&&(this.yylineno+=it.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:it?it[it.length-1].length-it[it.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+mt[0].length},this.yytext+=mt[0],this.match+=mt[0],this.matches=mt,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(mt[0].length),this.matched+=mt[0],rt=this.performAction.call(this,this.yy,this,ct,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),rt)return rt;if(this._backtrack){for(var Q in gt)this[Q]=gt[Q];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var mt,ct,rt,it;this._more||(this.yytext="",this.match="");for(var gt=this._currentRules(),Q=0;Q<gt.length;Q++)if(rt=this._input.match(this.rules[gt[Q]]),rt&&(!ct||rt[0].length>ct[0].length)){if(ct=rt,it=Q,this.options.backtrack_lexer){if(mt=this.test_match(rt,gt[Q]),mt!==!1)return mt;if(this._backtrack){ct=!1;continue}else return!1}else if(!this.options.flex)break}return ct?(mt=this.test_match(ct,gt[it]),mt!==!1?mt:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.
`+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var ct=this.next();return ct||this.lex()},begin:function(ct){this.conditionStack.push(ct)},popState:function(){var ct=this.conditionStack.length-1;return ct>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(ct){return ct=this.conditionStack.length-1-Math.abs(ct||0),ct>=0?this.conditionStack[ct]:"INITIAL"},pushState:function(ct){this.begin(ct)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(ct,rt,it,gt){switch(it){case 0:break;case 1:break;case 2:return 20;case 3:break;case 4:break;case 5:return this.begin("title"),12;case 6:return this.popState(),"title_value";case 7:return this.begin("acc_title"),14;case 8:return this.popState(),"acc_title_value";case 9:return this.begin("acc_descr"),16;case 10:return this.popState(),"acc_descr_value";case 11:this.begin("acc_descr_multiline");break;case 12:this.popState();break;case 13:return"acc_descr_multiline_value";case 14:this.begin("string");break;case 15:this.popState();break;case 16:return"txt";case 17:return 5;case 18:return 7;case 19:return"value";case 20:return 22}},rules:[/^(?:%%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[\n\r]+)/i,/^(?:%%[^\n]*)/i,/^(?:[\s]+)/i,/^(?:title\b)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:["])/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:pie\b)/i,/^(?:showData\b)/i,/^(?::[\s]*[\d]+(?:\.[\d]+)?)/i,/^(?:$)/i],conditions:{acc_descr_multiline:{rules:[12,13],inclusive:!1},acc_descr:{rules:[10],inclusive:!1},acc_title:{rules:[8],inclusive:!1},title:{rules:[6],inclusive:!1},string:{rules:[15,16],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,7,9,11,14,17,18,19,20],inclusive:!0}}};return wt}();nt.lexer=ot;function ft(){this.yy={}}return ft.prototype=nt,nt.Parser=ft,new ft}();Ebt.parser=Ebt;const cXe=Ebt,Gzt=Bl.pie,dX={sections:{},showData:!1,config:Gzt};let gX=dX.sections,Tbt=dX.showData;const uXe=structuredClone(Gzt),lXe={getConfig:()=>structuredClone(uXe),clear:()=>{gX=structuredClone(dX.sections),Tbt=dX.showData,ag()},setDiagramTitle:S2,getDiagramTitle:Zg,setAccTitle:og,getAccTitle:Xg,setAccDescription:Qg,getAccDescription:Jg,addSection:(i,a)=>{i=Ef(i,Re()),gX[i]===void 0&&(gX[i]=a,Kt.debug(`added new section: ${i}, with value: ${a}`))},getSections:()=>gX,cleanupValue:i=>(i.substring(0,1)===":"&&(i=i.substring(1).trim()),Number(i.trim())),setShowData:i=>{Tbt=i},getShowData:()=>Tbt},hXe=i=>`
2022-11-03 00:28:15 +01:00
.pieCircle{
2024-02-17 17:36:33 +01:00
stroke: ${i.pieStrokeColor};
stroke-width : ${i.pieStrokeWidth};
opacity : ${i.pieOpacity};
}
.pieOuterCircle{
stroke: ${i.pieOuterStrokeColor};
stroke-width: ${i.pieOuterStrokeWidth};
fill: none;
2022-11-03 00:28:15 +01:00
}
.pieTitleText {
text-anchor: middle;
2024-02-17 17:36:33 +01:00
font-size: ${i.pieTitleTextSize};
fill: ${i.pieTitleTextColor};
font-family: ${i.fontFamily};
2022-11-03 00:28:15 +01:00
}
.slice {
2024-02-17 17:36:33 +01:00
font-family: ${i.fontFamily};
fill: ${i.pieSectionTextColor};
font-size:${i.pieSectionTextSize};
2022-11-03 00:28:15 +01:00
// fill: white;
}
.legend text {
2024-02-17 17:36:33 +01:00
fill: ${i.pieLegendTextColor};
font-family: ${i.fontFamily};
font-size: ${i.pieLegendTextSize};
}
`,fXe=i=>{const a=Object.entries(i).map(g=>({label:g[0],value:g[1]})).sort((g,w)=>w.value-g.value);return pDe().value(g=>g.value)(a)},dXe=Object.freeze(Object.defineProperty({__proto__:null,diagram:{parser:cXe,db:lXe,renderer:{draw:(i,a,f,g)=>{Kt.debug(`rendering pie chart
`+i);const w=g.db,v=Re(),b=MF(w.getConfig(),v.pie),E=40,S=18,_=4,M=450,F=M,R=FF(a),B=R.append("g"),z=w.getSections();B.attr("transform","translate("+F/2+","+M/2+")");const{themeVariables:Y}=v;let[nt]=k9(Y.pieOuterStrokeWidth);nt??(nt=2);const ot=b.textPosition,ft=Math.min(F,M)/2-E,wt=YL().innerRadius(0).outerRadius(ft),mt=YL().innerRadius(ft*ot).outerRadius(ft*ot);B.append("circle").attr("cx",0).attr("cy",0).attr("r",ft+nt/2).attr("class","pieOuterCircle");const ct=fXe(z),rt=[Y.pie1,Y.pie2,Y.pie3,Y.pie4,Y.pie5,Y.pie6,Y.pie7,Y.pie8,Y.pie9,Y.pie10,Y.pie11,Y.pie12],it=oF(rt);B.selectAll("mySlices").data(ct).enter().append("path").attr("d",wt).attr("fill",yt=>it(yt.data.label)).attr("class","pieCircle");let gt=0;Object.keys(z).forEach(yt=>{gt+=z[yt]}),B.selectAll("mySlices").data(ct).enter().append("text").text(yt=>(yt.data.value/gt*100).toFixed(0)+"%").attr("transform",yt=>"translate("+mt.centroid(yt)+")").style("text-anchor","middle").attr("class","slice"),B.append("text").text(w.getDiagramTitle()).attr("x",0).attr("y",-(M-50)/2).attr("class","pieTitleText");const Q=B.selectAll(".legend").data(it.domain()).enter().append("g").attr("class","legend").attr("transform",(yt,V)=>{const Ot=S+_,It=Ot*it.domain().length/2,jt=12*S,xt=V*Ot-It;return"translate("+jt+","+xt+")"});Q.append("rect").attr("width",S).attr("height",S).style("fill",it).style("stroke",it),Q.data(ct).append("text").attr("x",S+_).attr("y",S-_).text(yt=>{const{label:V,value:Ot}=yt.data;return w.getShowData()?`${V} [${Ot}]`:V});const dt=Math.max(...Q.selectAll("text").nodes().map(yt=>(yt==null?void 0:yt.getBoundingClientRect().width)??0)),K=F+E+S+_+dt;R.attr("viewBox",`0 0 ${K} ${M}`),sg(R,M,K,b.useMaxWidth)}},styles:hXe}},Symbol.toStringTag,{value:"Module"}));var Cbt=function(){var i=function(Ae,ye,tn,sn){for(tn=tn||{},sn=Ae.length;sn--;tn[Ae[sn]]=ye);return tn},a=[1,3],f=[1,4],g=[1,5],w=[1,6],v=[1,7],b=[1,5,13,15,17,19,20,25,27,28,29,30,31,32,33,34,37,38,40,41,42,43,44,45,46,47,48,49,50],E=[1,5,6,13,15,17,19,20,25,27,28,29,30,31,32,33,34,37,38,40,41,42,43,44,45,46,47,48,49,50],S=[32,33,34],_=[2,7],M=[1,13],F=[1,17],R=[1,18],B=[1,19],z=[1,20],Y=[1,21],nt=[1,22],ot=[1,23],ft=[1,24],wt=[1,25],mt=[1,26],ct=[1,27],rt=[1,30],it=[1,31],gt=[1,32],Q=[1,33],dt=[1,34],K=[1,35],yt=[1,36],V=[1,37],Ot=[1,38],It=[1,39],jt=[1,40],xt=[1,41],Ft=[1,42],Ct=[1,57],kt=[1,58],Gt=[5,22,26,32,33,34,40,41,42,43,44,45,46,47,48,49,50,51],Fe={trace:function(){},yy:{},symbols_:{error:2,start:3,eol:4,SPACE:5,QUADRANT:6,document:7,line:8,statement:9,axisDetails:10,quadrantDetails:11,points:12,title:13,title_value:14,acc_title:15,acc_title_value:16,acc_descr:17,acc_descr_value:18,acc_descr_multiline_value:19,section:20,text:21,point_start:22,point_x:23,point_y:24,"X-AXIS":25,"AXIS-TEXT-DELIMITER":26,"Y-AXIS":27,QUADRANT_1:28,QUADRANT_2:29,QUADRANT_3:30,QUADRANT_4:31,NEWLINE:32,SEMI:33,EOF:34,alphaNumToken:35,textNoTagsToken:36,STR:37,MD_STR:38,alphaNum:39,PUNCTUATION:40,AMP:41,NUM:42,ALPHA:43,COMMA:44,PLUS:45,EQUALS:46,MULT:47,DOT:48,BRKT:49,UNDERSCORE:50,MINUS:51,$accept:0,$end:1},terminals_:{2:"error",5:"SPACE",6:"QUADRANT",13:"title",14:"title_value",15:"acc_title",16:"acc_title_value",17:"acc_descr",18:"acc_descr_value",19:"acc_descr_multiline_value",20:"section",22:"point_start",23:"point_x",24:"point_y",25:"X-AXIS",26:"AXIS-TEXT-DELIMITER",27:"Y-AXIS",28:"QUADRANT_1",29:"QUADRANT_2",30:"QUADRANT_3",31:"QUADRANT_4",32:"NEWLINE",33:"SEMI",34:"EOF",37:"STR",38:"MD_STR",40:"PUNCTUATION",41:"AMP",42:"NUM",43:"ALPHA",44:"COMMA",45:"PLUS",46:"EQUALS",47:"MULT",48:"DOT",49:"BRKT",50:"UNDERSCORE",51:"MINUS"},productions_:[0,[3,2],[3,2],[3,2],[7,0],[7,2],[8,2],[9,0],[9,2],[9,1],[9,1],[9,1],[9,2],[9,2],[9,2],[9,1],[9,1],[12,4],[10,4],[10,3],[10,2],[10,4],[10,3],[10,2],[11,2],[11,2],[11,2],[11,2],[4,1],[4,1],[4,1],[21,1],[21,2],[21,1],[21,1],[39,1],[39,2],[35,1],[35,1],[35,1],[35,1],[35,1],[35,1],[35,1],[35,1],[35,1],[35,1],[35,1],[36,1],[36,1],[36,1]],performAction:function(ye,tn,sn,be,Ne,Xt,_e){var xe=Xt.length-1;switch(Ne){case 12:this.$=Xt[xe].trim(),be.setDiagramTitle(this.$);break;case 13:this.
`+mi.showPosition()+`
Expecting `+xo.join(", ")+", got '"+(this.terminals_[Nn]||Nn)+"'":ko="Parse error on line "+(Mn+1)+": Unexpected "+(Nn==we?"end of input":"'"+(this.terminals_[Nn]||Nn)+"'"),this.parseError(ko,{text:mi.match,token:this.terminals_[Nn]||Nn,line:mi.yylineno,loc:za,expected:xo})}if(ke[0]instanceof Array&&ke.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Bn+", token: "+Nn);switch(ke[0]){case 1:sn.push(Nn),Ne.push(mi.yytext),Xt.push(mi.yylloc),sn.push(ke[1]),Nn=null,ce=mi.yyleng,xe=mi.yytext,Mn=mi.yylineno,za=mi.yylloc;break;case 2:if(xn=this.productions_[ke[1]][1],Je.$=Ne[Ne.length-xn],Je._$={first_line:Xt[Xt.length-(xn||1)].first_line,last_line:Xt[Xt.length-1].last_line,first_column:Xt[Xt.length-(xn||1)].first_column,last_column:Xt[Xt.length-1].last_column},br&&(Je._$.range=[Xt[Xt.length-(xn||1)].range[0],Xt[Xt.length-1].range[1]]),pe=this.performAction.apply(Je,[xe,ce,Mn,ga.yy,ke[1],Ne,Xt].concat(Fi)),typeof pe<"u")return pe;xn&&(sn=sn.slice(0,-1*xn*2),Ne=Ne.slice(0,-1*xn),Xt=Xt.slice(0,-1*xn)),sn.push(this.productions_[ke[1]][0]),Ne.push(Je.$),Xt.push(Je._$),qa=_e[sn[sn.length-2]][sn[sn.length-1]],sn.push(qa);break;case 3:return!0}}return!0}},Mt=function(){var Ae={EOF:1,parseError:function(tn,sn){if(this.yy.parser)this.yy.parser.parseError(tn,sn);else throw new Error(tn)},setInput:function(ye,tn){return this.yy=tn||this.yy||{},this._input=ye,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var ye=this._input[0];this.yytext+=ye,this.yyleng++,this.offset++,this.match+=ye,this.matched+=ye;var tn=ye.match(/(?:\r\n?|\n).*/g);return tn?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),ye},unput:function(ye){var tn=ye.length,sn=ye.split(/(?:\r\n?|\n)/g);this._input=ye+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-tn),this.offset-=tn;var be=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),sn.length-1&&(this.yylineno-=sn.length-1);var Ne=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:sn?(sn.length===be.length?this.yylloc.first_column:0)+be[be.length-sn.length].length-sn[0].length:this.yylloc.first_column-tn},this.options.ranges&&(this.yylloc.range=[Ne[0],Ne[0]+this.yyleng-tn]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(ye){this.unput(this.match.slice(ye))},pastInput:function(){var ye=this.matched.substr(0,this.matched.length-this.match.length);return(ye.length>20?"...":"")+ye.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var ye=this.match;return ye.length<20&&(ye+=this._input.substr(0,20-ye.length)),(ye.substr(0,20)+(ye.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var ye=this.pastInput(),tn=new Array(ye.length+1).join("-");return ye+this.upcomingInput()+`
`+tn+"^"},test_match:function(ye,tn){var sn,be,Ne;if(this.options.backtrack_lexer&&(Ne={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(Ne.yylloc.range=this.yylloc.range.slice(0))),be=ye[0].match(/(?:\r\n?|\n).*/g),be&&(this.yylineno+=be.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:be?be[be.length-1].length-be[be.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+ye[0].length},this.yytext+=ye[0],this.match+=ye[0],this.matches=ye,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(ye[0].length),this.matched+=ye[0],sn=this.performAction.call(this,this.yy,this,tn,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),sn)return sn;if(this._backtrack){for(var Xt in Ne)this[Xt]=Ne[Xt];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var ye,tn,sn,be;this._more||(this.yytext="",this.match="");for(var Ne=this._currentRules(),Xt=0;Xt<Ne.length;Xt++)if(sn=this._input.match(this.rules[Ne[Xt]]),sn&&(!tn||sn[0].length>tn[0].length)){if(tn=sn,be=Xt,this.options.backtrack_lexer){if(ye=this.test_match(sn,Ne[Xt]),ye!==!1)return ye;if(this._backtrack){tn=!1;continue}else return!1}else if(!this.options.flex)break}return tn?(ye=this.test_match(tn,Ne[be]),ye!==!1?ye:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.
`+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var tn=this.next();return tn||this.lex()},begin:function(tn){this.conditionStack.push(tn)},popState:function(){var tn=this.conditionStack.length-1;return tn>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(tn){return tn=this.conditionStack.length-1-Math.abs(tn||0),tn>=0?this.conditionStack[tn]:"INITIAL"},pushState:function(tn){this.begin(tn)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(tn,sn,be,Ne){switch(be){case 0:break;case 1:break;case 2:return 32;case 3:break;case 4:return this.begin("title"),13;case 5:return this.popState(),"title_value";case 6:return this.begin("acc_title"),15;case 7:return this.popState(),"acc_title_value";case 8:return this.begin("acc_descr"),17;case 9:return this.popState(),"acc_descr_value";case 10:this.begin("acc_descr_multiline");break;case 11:this.popState();break;case 12:return"acc_descr_multiline_value";case 13:return 25;case 14:return 27;case 15:return 26;case 16:return 28;case 17:return 29;case 18:return 30;case 19:return 31;case 20:this.begin("md_string");break;case 21:return"MD_STR";case 22:this.popState();break;case 23:this.begin("string");break;case 24:this.popState();break;case 25:return"STR";case 26:return this.begin("point_start"),22;case 27:return this.begin("point_x"),23;case 28:this.popState();break;case 29:this.popState(),this.begin("point_y");break;case 30:return this.popState(),24;case 31:return 6;case 32:return 43;case 33:return"COLON";case 34:return 45;case 35:return 44;case 36:return 46;case 37:return 46;case 38:return 47;case 39:return 49;case 40:return 50;case 41:return 48;case 42:return 41;case 43:return 51;case 44:return 42;case 45:return 5;case 46:return 33;case 47:return 40;case 48:return 34}},rules:[/^(?:%%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[\n\r]+)/i,/^(?:%%[^\n]*)/i,/^(?:title\b)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?: *x-axis *)/i,/^(?: *y-axis *)/i,/^(?: *--+> *)/i,/^(?: *quadrant-1 *)/i,/^(?: *quadrant-2 *)/i,/^(?: *quadrant-3 *)/i,/^(?: *quadrant-4 *)/i,/^(?:["][`])/i,/^(?:[^`"]+)/i,/^(?:[`]["])/i,/^(?:["])/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:\s*:\s*\[\s*)/i,/^(?:(1)|(0(.\d+)?))/i,/^(?:\s*\] *)/i,/^(?:\s*,\s*)/i,/^(?:(1)|(0(.\d+)?))/i,/^(?: *quadrantChart *)/i,/^(?:[A-Za-z]+)/i,/^(?::)/i,/^(?:\+)/i,/^(?:,)/i,/^(?:=)/i,/^(?:=)/i,/^(?:\*)/i,/^(?:#)/i,/^(?:[\_])/i,/^(?:\.)/i,/^(?:&)/i,/^(?:-)/i,/^(?:[0-9]+)/i,/^(?:\s)/i,/^(?:;)/i,/^(?:[!"#$%&'*+,-.`?\\_/])/i,/^(?:$)/i],conditions:{point_y:{rules:[30],inclusive:!1},point_x:{rules:[29],inclusive:!1},point_start:{rules:[27,28],inclusive:!1},acc_descr_multiline:{rules:[11,12],inclusive:!1},acc_descr:{rules:[9],inclusive:!1},acc_title:{rules:[7],inclusive:!1},title:{rules:[5],inclusive:!1},md_string:{rules:[21,22],inclusive:!1},string:{rules:[24,25],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,6,8,10,13,14,15,16,17,18,19,20,23,26,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48],inclusive:!0}}};return Ae}();Fe.lexer=Mt;function pn(){this.yy={}}return pn.prototype=Fe,Fe.Parser=pn,new pn}();Cbt.parser=Cbt;const gXe=Cbt,rp=dgt();class pXe{constructor(){this.config=this.getDefaultConfig(),this.themeConfig=this.getDefaultThemeConfig(),this.data=this.getDefaultData()}getDefaultData(){return{titleText:"",quadrant1Text:"",quadrant2Text:"",quadrant3Text:"",quadrant4Text:"",xAxisLeftText:"",xAxisRightText:"",yAxisBottomText:"",yAxisTopText:"",points:[]}}getDefaultConfig(){var a,f,g,w,v,b,E,S,_,M,F,R,B,z,Y,nt,ot,ft;return{showXAxis:!0,showYAxis:!0,showTitle:!0,chartHeight:((a=Bl.quadrantChart)==null?void 0:a.chartWidth)||500,chartWidth:((f=Bl.quadrantChart)==null?void 0:f.chartHeight)||500,titlePadding:(
`+i);const S=E.securityLevel;let _;S==="sandbox"&&(_=Tr("#i"+a));const F=Tr(S==="sandbox"?_.nodes()[0].contentDocument.body:"body").select(`[id="${a}"]`),R=F.append("g").attr("class","main"),B=((gt=E.quadrantChart)==null?void 0:gt.chartWidth)||500,z=((Q=E.quadrantChart)==null?void 0:Q.chartHeight)||500;sg(F,z,B,((dt=E.quadrantChart)==null?void 0:dt.useMaxWidth)||!0),F.attr("viewBox","0 0 "+B+" "+z),g.db.setHeight(z),g.db.setWidth(B);const Y=g.db.getQuadrantData(),nt=R.append("g").attr("class","quadrants"),ot=R.append("g").attr("class","border"),ft=R.append("g").attr("class","data-points"),wt=R.append("g").attr("class","labels"),mt=R.append("g").attr("class","title");Y.title&&mt.append("text").attr("x",0).attr("y",0).attr("fill",Y.title.fill).attr("font-size",Y.title.fontSize).attr("dominant-baseline",w(Y.title.horizontalPos)).attr("text-anchor",v(Y.title.verticalPos)).attr("transform",b(Y.title)).text(Y.title.text),Y.borderLines&&ot.selectAll("line").data(Y.borderLines).enter().append("line").attr("x1",K=>K.x1).attr("y1",K=>K.y1).attr("x2",K=>K.x2).attr("y2",K=>K.y2).style("stroke",K=>K.strokeFill).style("stroke-width",K=>K.strokeWidth);const ct=nt.selectAll("g.quadrant").data(Y.quadrants).enter().append("g").attr("class","quadrant");ct.append("rect").attr("x",K=>K.x).attr("y",K=>K.y).attr("width",K=>K.width).attr("height",K=>K.height).attr("fill",K=>K.fill),ct.append("text").attr("x",0).attr("y",0).attr("fill",K=>K.text.fill).attr("font-size",K=>K.text.fontSize).attr("dominant-baseline",K=>w(K.text.horizontalPos)).attr("text-anchor",K=>v(K.text.verticalPos)).attr("transform",K=>b(K.text)).text(K=>K.text.text),wt.selectAll("g.label").data(Y.axisLabels).enter().append("g").attr("class","label").append("text").attr("x",0).attr("y",0).text(K=>K.text).attr("fill",K=>K.fill).attr("font-size",K=>K.fontSize).attr("dominant-baseline",K=>w(K.horizontalPos)).attr("text-anchor",K=>v(K.verticalPos)).attr("transform",K=>b(K));const it=ft.selectAll("g.data-point").data(Y.points).enter().append("g").attr("class","data-point");it.append("circle").attr("cx",K=>K.x).attr("cy",K=>K.y).attr("r",K=>K.radius).attr("fill",K=>K.fill),it.append("text").attr("x",0).attr("y",0).text(K=>K.text.text).attr("fill",K=>K.text.fill).attr("font-size",K=>K.text.fontSize).attr("dominant-baseline",K=>w(K.text.horizontalPos)).attr("text-anchor",K=>v(K.text.verticalPos)).attr("transform",K=>b(K.text))}},styles:()=>""}},Symbol.toStringTag,{value:"Module"}));var Sbt=function(){var i=function(It,jt,xt,Ft){for(xt=xt||{},Ft=It.length;Ft--;xt[It[Ft]]=jt);return xt},a=[1,10,12,14,16,18,19,21,23],f=[2,6],g=[1,3],w=[1,5],v=[1,6],b=[1,7],E=[1,5,10,12,14,16,18,19,21,23,34,35,36],S=[1,25],_=[1,26],M=[1,28],F=[1,29],R=[1,30],B=[1,31],z=[1,32],Y=[1,33],nt=[1,34],ot=[1,35],ft=[1,36],wt=[1,37],mt=[1,43],ct=[1,42],rt=[1,47],it=[1,50],gt=[1,10,12,14,16,18,19,21,23,34,35,36],Q=[1,10,12,14,16,18,19,21,23,24,26,27,28,34,35,36],dt=[1,10,12,14,16,18,19,21,23,24,26,27,28,34,35,36,41,42,43,44,45,46,47,48,49,50],K=[1,64],yt={trace:function(){},yy:{},symbols_:{error:2,start:3,eol:4,XYCHART:5,chartConfig:6,document:7,CHART_ORIENTATION:8,statement:9,title:10,text:11,X_AXIS:12,parseXAxis:13,Y_AXIS:14,parseYAxis:15,LINE:16,plotData:17,BAR:18,acc_title:19,acc_title_value:20,acc_descr:21,acc_descr_value:22,acc_descr_multiline_value:23,SQUARE_BRACES_START:24,commaSeparatedNumbers:25,SQUARE_BRACES_END:26,NUMBER_WITH_DECIMAL:27,COMMA:28,xAxisData:29,bandData:30,ARROW_DELIMITER:31,commaSeparatedTexts:32,yAxisData:33,NEWLINE:34,SEMI:35,EOF:36,alphaNum:37,STR:38,MD_STR:39,alphaNumToken:40,AMP:41,NUM:42,ALPHA:43,PLUS:44,EQUALS:45,MULT:46,DOT:47,BRKT:48,MINUS:49,UNDERSCORE:50,$accept:0,$end:1},terminals_:{2:"error",5:"XYCHART",8:"CHART_ORIENTATION",10:"title",12:"X_AXIS",14:"Y_AXIS",16:"LINE",18:"BAR",19:"acc_title",20:"acc_title_value",21:"acc_descr",22:"acc_descr_value",23:"acc_descr_multiline_value",24:"SQUARE_BRACES_START",26:"SQUARE_BRACES_END",27:"NUMBER_WITH_DECIMAL",28:"COMMA",31:"ARROW_DELIMITER",34:"NEWLINE",35:"SEMI",36:"EOF",38:"STR",39:"MD_STR",41:"AMP",42:"NUM",43:"ALPHA",44:"PLUS",45:
`+be.showPosition()+`
Expecting `+br.join(", ")+", got '"+(this.terminals_[ce]||ce)+"'":An="Parse error on line "+(pn+1)+": Unexpected "+(ce==tn?"end of input":"'"+(this.terminals_[ce]||ce)+"'"),this.parseError(An,{text:be.match,token:this.terminals_[ce]||ce,line:be.yylineno,loc:_e,expected:br})}if(we[0]instanceof Array&&we.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Br+", token: "+ce);switch(we[0]){case 1:Ft.push(ce),kt.push(be.yytext),Gt.push(be.yylloc),Ft.push(we[1]),ce=null,Ae=be.yyleng,Mt=be.yytext,pn=be.yylineno,_e=be.yylloc;break;case 2:if(Ss=this.productions_[we[1]][1],mi.$=kt[kt.length-Ss],mi._$={first_line:Gt[Gt.length-(Ss||1)].first_line,last_line:Gt[Gt.length-1].last_line,first_column:Gt[Gt.length-(Ss||1)].first_column,last_column:Gt[Gt.length-1].last_column},xe&&(mi._$.range=[Gt[Gt.length-(Ss||1)].range[0],Gt[Gt.length-1].range[1]]),Fi=this.performAction.apply(mi,[Mt,Ae,pn,Ne.yy,we[1],kt,Gt].concat(sn)),typeof Fi<"u")return Fi;Ss&&(Ft=Ft.slice(0,-1*Ss*2),kt=kt.slice(0,-1*Ss),Gt=Gt.slice(0,-1*Ss)),Ft.push(this.productions_[we[1]][0]),kt.push(mi.$),Gt.push(mi._$),za=Fe[Ft[Ft.length-2]][Ft[Ft.length-1]],Ft.push(za);break;case 3:return!0}}return!0}},V=function(){var It={EOF:1,parseError:function(xt,Ft){if(this.yy.parser)this.yy.parser.parseError(xt,Ft);else throw new Error(xt)},setInput:function(jt,xt){return this.yy=xt||this.yy||{},this._input=jt,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var jt=this._input[0];this.yytext+=jt,this.yyleng++,this.offset++,this.match+=jt,this.matched+=jt;var xt=jt.match(/(?:\r\n?|\n).*/g);return xt?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),jt},unput:function(jt){var xt=jt.length,Ft=jt.split(/(?:\r\n?|\n)/g);this._input=jt+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-xt),this.offset-=xt;var Ct=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),Ft.length-1&&(this.yylineno-=Ft.length-1);var kt=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:Ft?(Ft.length===Ct.length?this.yylloc.first_column:0)+Ct[Ct.length-Ft.length].length-Ft[0].length:this.yylloc.first_column-xt},this.options.ranges&&(this.yylloc.range=[kt[0],kt[0]+this.yyleng-xt]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(jt){this.unput(this.match.slice(jt))},pastInput:function(){var jt=this.matched.substr(0,this.matched.length-this.match.length);return(jt.length>20?"...":"")+jt.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var jt=this.match;return jt.length<20&&(jt+=this._input.substr(0,20-jt.length)),(jt.substr(0,20)+(jt.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var jt=this.pastInput(),xt=new Array(jt.length+1).join("-");return jt+this.upcomingInput()+`
`+xt+"^"},test_match:function(jt,xt){var Ft,Ct,kt;if(this.options.backtrack_lexer&&(kt={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(kt.yylloc.range=this.yylloc.range.slice(0))),Ct=jt[0].match(/(?:\r\n?|\n).*/g),Ct&&(this.yylineno+=Ct.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:Ct?Ct[Ct.length-1].length-Ct[Ct.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+jt[0].length},this.yytext+=jt[0],this.match+=jt[0],this.matches=jt,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(jt[0].length),this.matched+=jt[0],Ft=this.performAction.call(this,this.yy,this,xt,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),Ft)return Ft;if(this._backtrack){for(var Gt in kt)this[Gt]=kt[Gt];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var jt,xt,Ft,Ct;this._more||(this.yytext="",this.match="");for(var kt=this._currentRules(),Gt=0;Gt<kt.length;Gt++)if(Ft=this._input.match(this.rules[kt[Gt]]),Ft&&(!xt||Ft[0].length>xt[0].length)){if(xt=Ft,Ct=Gt,this.options.backtrack_lexer){if(jt=this.test_match(Ft,kt[Gt]),jt!==!1)return jt;if(this._backtrack){xt=!1;continue}else return!1}else if(!this.options.flex)break}return xt?(jt=this.test_match(xt,kt[Ct]),jt!==!1?jt:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.
`+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var xt=this.next();return xt||this.lex()},begin:function(xt){this.conditionStack.push(xt)},popState:function(){var xt=this.conditionStack.length-1;return xt>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(xt){return xt=this.conditionStack.length-1-Math.abs(xt||0),xt>=0?this.conditionStack[xt]:"INITIAL"},pushState:function(xt){this.begin(xt)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(xt,Ft,Ct,kt){switch(Ct){case 0:break;case 1:break;case 2:return this.popState(),34;case 3:return this.popState(),34;case 4:return 34;case 5:break;case 6:return 10;case 7:return this.pushState("acc_title"),19;case 8:return this.popState(),"acc_title_value";case 9:return this.pushState("acc_descr"),21;case 10:return this.popState(),"acc_descr_value";case 11:this.pushState("acc_descr_multiline");break;case 12:this.popState();break;case 13:return"acc_descr_multiline_value";case 14:return 5;case 15:return 8;case 16:return this.pushState("axis_data"),"X_AXIS";case 17:return this.pushState("axis_data"),"Y_AXIS";case 18:return this.pushState("axis_band_data"),24;case 19:return 31;case 20:return this.pushState("data"),16;case 21:return this.pushState("data"),18;case 22:return this.pushState("data_inner"),24;case 23:return 27;case 24:return this.popState(),26;case 25:this.popState();break;case 26:this.pushState("string");break;case 27:this.popState();break;case 28:return"STR";case 29:return 24;case 30:return 26;case 31:return 43;case 32:return"COLON";case 33:return 44;case 34:return 28;case 35:return 45;case 36:return 46;case 37:return 48;case 38:return 50;case 39:return 47;case 40:return 41;case 41:return 49;case 42:return 42;case 43:break;case 44:return 35;case 45:return 36}},rules:[/^(?:%%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:(\r?\n))/i,/^(?:(\r?\n))/i,/^(?:[\n\r]+)/i,/^(?:%%[^\n]*)/i,/^(?:title\b)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:\{)/i,/^(?:[^\}]*)/i,/^(?:xychart-beta\b)/i,/^(?:(?:vertical|horizontal))/i,/^(?:x-axis\b)/i,/^(?:y-axis\b)/i,/^(?:\[)/i,/^(?:-->)/i,/^(?:line\b)/i,/^(?:bar\b)/i,/^(?:\[)/i,/^(?:[+-]?(?:\d+(?:\.\d+)?|\.\d+))/i,/^(?:\])/i,/^(?:(?:`\) \{ this\.pushState\(md_string\); \}\n<md_string>\(\?:\(\?!`"\)\.\)\+ \{ return MD_STR; \}\n<md_string>\(\?:`))/i,/^(?:["])/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:\[)/i,/^(?:\])/i,/^(?:[A-Za-z]+)/i,/^(?::)/i,/^(?:\+)/i,/^(?:,)/i,/^(?:=)/i,/^(?:\*)/i,/^(?:#)/i,/^(?:[\_])/i,/^(?:\.)/i,/^(?:&)/i,/^(?:-)/i,/^(?:[0-9]+)/i,/^(?:\s+)/i,/^(?:;)/i,/^(?:$)/i],conditions:{data_inner:{rules:[0,1,4,5,6,7,9,11,14,15,16,17,20,21,23,24,25,26,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45],inclusive:!0},data:{rules:[0,1,3,4,5,6,7,9,11,14,15,16,17,20,21,22,25,26,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45],inclusive:!0},axis_band_data:{rules:[0,1,4,5,6,7,9,11,14,15,16,17,20,21,24,25,26,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45],inclusive:!0},axis_data:{rules:[0,1,2,4,5,6,7,9,11,14,15,16,17,18,19,20,21,23,25,26,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45],inclusive:!0},acc_descr_multiline:{rules:[12,13],inclusive:!1},acc_descr:{rules:[10],inclusive:!1},acc_title:{rules:[8],inclusive:!1},title:{rules:[],inclusive:!1},md_string:{rules:[],inclusive:!1},string:{rules:[27,28],inclusive:!1},INITIAL:{rules:[0,1,4,5,6,7,9,11,14,15,16,17,20,21,25,26,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45],inclusive:!0}}};return It}();yt.lexer=V;function Ot(){this.yy={}}return Ot.prototype=yt,yt.Parser=Ot,new Ot}();Sbt.parser=Sbt;const DXe=Sbt;function Kzt(i){return i.type==="bar"}function Wzt(i){return i.type==="band"}function lB(i){return i.type==="linear"}class Yzt{construc
`+i);const M=FF(a),F=M.append("g").attr("class","main"),R=F.append("rect").attr("width",b.width).attr("height",b.height).attr("class","background");sg(M,b.height,b.width,!0),M.attr("viewBox",`0 0 ${b.width} ${b.height}`),R.attr("fill",v.backgroundColor),w.setTmpSVGG(M.append("g").attr("class","mermaid-tmp-group"));const B=w.getDrawableElem(),z={};function Y(nt){let ot=F,ft="";for(const[wt]of nt.entries()){let mt=F;wt>0&&z[ft]&&(mt=z[ft]),ft+=nt[wt],ot=z[ft],ot||(ot=z[ft]=mt.append("g").attr("class",nt[wt]))}return ot}for(const nt of B){if(nt.data.length===0)continue;const ot=Y(nt.groupTexts);switch(nt.type){case"rect":ot.selectAll("rect").data(nt.data).enter().append("rect").attr("x",ft=>ft.x).attr("y",ft=>ft.y).attr("width",ft=>ft.width).attr("height",ft=>ft.height).attr("fill",ft=>ft.fill).attr("stroke",ft=>ft.strokeFill).attr("stroke-width",ft=>ft.strokeWidth);break;case"text":ot.selectAll("text").data(nt.data).enter().append("text").attr("x",0).attr("y",0).attr("fill",ft=>ft.fill).attr("font-size",ft=>ft.fontSize).attr("dominant-baseline",ft=>E(ft.verticalPos)).attr("text-anchor",ft=>S(ft.horizontalPos)).attr("transform",ft=>_(ft)).text(ft=>ft.text);break;case"path":ot.selectAll("path").data(nt.data).enter().append("path").attr("d",ft=>ft.path).attr("fill",ft=>ft.fill?ft.fill:"none").attr("stroke",ft=>ft.strokeFill).attr("stroke-width",ft=>ft.strokeWidth);break}}}}}},Symbol.toStringTag,{value:"Module"}));var Dbt=function(){var i=function(Ae,ye,tn,sn){for(tn=tn||{},sn=Ae.length;sn--;tn[Ae[sn]]=ye);return tn},a=[1,3],f=[1,4],g=[1,5],w=[1,6],v=[5,6,8,9,11,13,31,32,33,34,35,36,44,62,63],b=[1,18],E=[2,7],S=[1,22],_=[1,23],M=[1,24],F=[1,25],R=[1,26],B=[1,27],z=[1,20],Y=[1,28],nt=[1,29],ot=[62,63],ft=[5,8,9,11,13,31,32,33,34,35,36,44,51,53,62,63],wt=[1,47],mt=[1,48],ct=[1,49],rt=[1,50],it=[1,51],gt=[1,52],Q=[1,53],dt=[53,54],K=[1,64],yt=[1,60],V=[1,61],Ot=[1,62],It=[1,63],jt=[1,65],xt=[1,69],Ft=[1,70],Ct=[1,67],kt=[1,68],Gt=[5,8,9,11,13,31,32,33,34,35,36,44,62,63],Fe={trace:function(){},yy:{},symbols_:{error:2,start:3,directive:4,NEWLINE:5,RD:6,diagram:7,EOF:8,acc_title:9,acc_title_value:10,acc_descr:11,acc_descr_value:12,acc_descr_multiline_value:13,requirementDef:14,elementDef:15,relationshipDef:16,requirementType:17,requirementName:18,STRUCT_START:19,requirementBody:20,ID:21,COLONSEP:22,id:23,TEXT:24,text:25,RISK:26,riskLevel:27,VERIFYMTHD:28,verifyType:29,STRUCT_STOP:30,REQUIREMENT:31,FUNCTIONAL_REQUIREMENT:32,INTERFACE_REQUIREMENT:33,PERFORMANCE_REQUIREMENT:34,PHYSICAL_REQUIREMENT:35,DESIGN_CONSTRAINT:36,LOW_RISK:37,MED_RISK:38,HIGH_RISK:39,VERIFY_ANALYSIS:40,VERIFY_DEMONSTRATION:41,VERIFY_INSPECTION:42,VERIFY_TEST:43,ELEMENT:44,elementName:45,elementBody:46,TYPE:47,type:48,DOCREF:49,ref:50,END_ARROW_L:51,relationship:52,LINE:53,END_ARROW_R:54,CONTAINS:55,COPIES:56,DERIVES:57,SATISFIES:58,VERIFIES:59,REFINES:60,TRACES:61,unqString:62,qString:63,$accept:0,$end:1},terminals_:{2:"error",5:"NEWLINE",6:"RD",8:"EOF",9:"acc_title",10:"acc_title_value",11:"acc_descr",12:"acc_descr_value",13:"acc_descr_multiline_value",19:"STRUCT_START",21:"ID",22:"COLONSEP",24:"TEXT",26:"RISK",28:"VERIFYMTHD",30:"STRUCT_STOP",31:"REQUIREMENT",32:"FUNCTIONAL_REQUIREMENT",33:"INTERFACE_REQUIREMENT",34:"PERFORMANCE_REQUIREMENT",35:"PHYSICAL_REQUIREMENT",36:"DESIGN_CONSTRAINT",37:"LOW_RISK",38:"MED_RISK",39:"HIGH_RISK",40:"VERIFY_ANALYSIS",41:"VERIFY_DEMONSTRATION",42:"VERIFY_INSPECTION",43:"VERIFY_TEST",44:"ELEMENT",47:"TYPE",49:"DOCREF",51:"END_ARROW_L",53:"LINE",54:"END_ARROW_R",55:"CONTAINS",56:"COPIES",57:"DERIVES",58:"SATISFIES",59:"VERIFIES",60:"REFINES",61:"TRACES",62:"unqString",63:"qString"},productions_:[0,[3,3],[3,2],[3,4],[4,2],[4,2],[4,1],[7,0],[7,2],[7,2],[7,2],[7,2],[7,2],[14,5],[20,5],[20,5],[20,5],[20,5],[20,2],[20,1],[17,1],[17,1],[17,1],[17,1],[17,1],[17,1],[27,1],[27,1],[27,1],[29,1],[29,1],[29,1],[29,1],[15,5],[46,5],[46,5],[46,2],[46,1],[16,5],[16,5],[52,1],[52,1],[52,1],[52,1],[52,1],[52,1],[52,1],[18,1],[18,1],[23,1],[23,1],[25,1],[25,1],[45,1],[45,1],[48,1],[48,1],[50,1],[50,1]],performAction:function(ye,tn,sn,be,Ne,Xt,_
`+mi.showPosition()+`
Expecting `+xo.join(", ")+", got '"+(this.terminals_[Nn]||Nn)+"'":ko="Parse error on line "+(Mn+1)+": Unexpected "+(Nn==we?"end of input":"'"+(this.terminals_[Nn]||Nn)+"'"),this.parseError(ko,{text:mi.match,token:this.terminals_[Nn]||Nn,line:mi.yylineno,loc:za,expected:xo})}if(ke[0]instanceof Array&&ke.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Bn+", token: "+Nn);switch(ke[0]){case 1:sn.push(Nn),Ne.push(mi.yytext),Xt.push(mi.yylloc),sn.push(ke[1]),Nn=null,ce=mi.yyleng,xe=mi.yytext,Mn=mi.yylineno,za=mi.yylloc;break;case 2:if(xn=this.productions_[ke[1]][1],Je.$=Ne[Ne.length-xn],Je._$={first_line:Xt[Xt.length-(xn||1)].first_line,last_line:Xt[Xt.length-1].last_line,first_column:Xt[Xt.length-(xn||1)].first_column,last_column:Xt[Xt.length-1].last_column},br&&(Je._$.range=[Xt[Xt.length-(xn||1)].range[0],Xt[Xt.length-1].range[1]]),pe=this.performAction.apply(Je,[xe,ce,Mn,ga.yy,ke[1],Ne,Xt].concat(Fi)),typeof pe<"u")return pe;xn&&(sn=sn.slice(0,-1*xn*2),Ne=Ne.slice(0,-1*xn),Xt=Xt.slice(0,-1*xn)),sn.push(this.productions_[ke[1]][0]),Ne.push(Je.$),Xt.push(Je._$),qa=_e[sn[sn.length-2]][sn[sn.length-1]],sn.push(qa);break;case 3:return!0}}return!0}},Mt=function(){var Ae={EOF:1,parseError:function(tn,sn){if(this.yy.parser)this.yy.parser.parseError(tn,sn);else throw new Error(tn)},setInput:function(ye,tn){return this.yy=tn||this.yy||{},this._input=ye,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var ye=this._input[0];this.yytext+=ye,this.yyleng++,this.offset++,this.match+=ye,this.matched+=ye;var tn=ye.match(/(?:\r\n?|\n).*/g);return tn?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),ye},unput:function(ye){var tn=ye.length,sn=ye.split(/(?:\r\n?|\n)/g);this._input=ye+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-tn),this.offset-=tn;var be=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),sn.length-1&&(this.yylineno-=sn.length-1);var Ne=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:sn?(sn.length===be.length?this.yylloc.first_column:0)+be[be.length-sn.length].length-sn[0].length:this.yylloc.first_column-tn},this.options.ranges&&(this.yylloc.range=[Ne[0],Ne[0]+this.yyleng-tn]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(ye){this.unput(this.match.slice(ye))},pastInput:function(){var ye=this.matched.substr(0,this.matched.length-this.match.length);return(ye.length>20?"...":"")+ye.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var ye=this.match;return ye.length<20&&(ye+=this._input.substr(0,20-ye.length)),(ye.substr(0,20)+(ye.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var ye=this.pastInput(),tn=new Array(ye.length+1).join("-");return ye+this.upcomingInput()+`
`+tn+"^"},test_match:function(ye,tn){var sn,be,Ne;if(this.options.backtrack_lexer&&(Ne={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(Ne.yylloc.range=this.yylloc.range.slice(0))),be=ye[0].match(/(?:\r\n?|\n).*/g),be&&(this.yylineno+=be.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:be?be[be.length-1].length-be[be.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+ye[0].length},this.yytext+=ye[0],this.match+=ye[0],this.matches=ye,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(ye[0].length),this.matched+=ye[0],sn=this.performAction.call(this,this.yy,this,tn,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),sn)return sn;if(this._backtrack){for(var Xt in Ne)this[Xt]=Ne[Xt];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var ye,tn,sn,be;this._more||(this.yytext="",this.match="");for(var Ne=this._currentRules(),Xt=0;Xt<Ne.length;Xt++)if(sn=this._input.match(this.rules[Ne[Xt]]),sn&&(!tn||sn[0].length>tn[0].length)){if(tn=sn,be=Xt,this.options.backtrack_lexer){if(ye=this.test_match(sn,Ne[Xt]),ye!==!1)return ye;if(this._backtrack){tn=!1;continue}else return!1}else if(!this.options.flex)break}return tn?(ye=this.test_match(tn,Ne[be]),ye!==!1?ye:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.
`+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var tn=this.next();return tn||this.lex()},begin:function(tn){this.conditionStack.push(tn)},popState:function(){var tn=this.conditionStack.length-1;return tn>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(tn){return tn=this.conditionStack.length-1-Math.abs(tn||0),tn>=0?this.conditionStack[tn]:"INITIAL"},pushState:function(tn){this.begin(tn)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(tn,sn,be,Ne){switch(be){case 0:return"title";case 1:return this.begin("acc_title"),9;case 2:return this.popState(),"acc_title_value";case 3:return this.begin("acc_descr"),11;case 4:return this.popState(),"acc_descr_value";case 5:this.begin("acc_descr_multiline");break;case 6:this.popState();break;case 7:return"acc_descr_multiline_value";case 8:return 5;case 9:break;case 10:break;case 11:break;case 12:return 8;case 13:return 6;case 14:return 19;case 15:return 30;case 16:return 22;case 17:return 21;case 18:return 24;case 19:return 26;case 20:return 28;case 21:return 31;case 22:return 32;case 23:return 33;case 24:return 34;case 25:return 35;case 26:return 36;case 27:return 37;case 28:return 38;case 29:return 39;case 30:return 40;case 31:return 41;case 32:return 42;case 33:return 43;case 34:return 44;case 35:return 55;case 36:return 56;case 37:return 57;case 38:return 58;case 39:return 59;case 40:return 60;case 41:return 61;case 42:return 47;case 43:return 49;case 44:return 51;case 45:return 54;case 46:return 53;case 47:this.begin("string");break;case 48:this.popState();break;case 49:return"qString";case 50:return sn.yytext=sn.yytext.trim(),62}},rules:[/^(?:title\s[^#\n;]+)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:(\r?\n)+)/i,/^(?:\s+)/i,/^(?:#[^\n]*)/i,/^(?:%[^\n]*)/i,/^(?:$)/i,/^(?:requirementDiagram\b)/i,/^(?:\{)/i,/^(?:\})/i,/^(?::)/i,/^(?:id\b)/i,/^(?:text\b)/i,/^(?:risk\b)/i,/^(?:verifyMethod\b)/i,/^(?:requirement\b)/i,/^(?:functionalRequirement\b)/i,/^(?:interfaceRequirement\b)/i,/^(?:performanceRequirement\b)/i,/^(?:physicalRequirement\b)/i,/^(?:designConstraint\b)/i,/^(?:low\b)/i,/^(?:medium\b)/i,/^(?:high\b)/i,/^(?:analysis\b)/i,/^(?:demonstration\b)/i,/^(?:inspection\b)/i,/^(?:test\b)/i,/^(?:element\b)/i,/^(?:contains\b)/i,/^(?:copies\b)/i,/^(?:derives\b)/i,/^(?:satisfies\b)/i,/^(?:verifies\b)/i,/^(?:refines\b)/i,/^(?:traces\b)/i,/^(?:type\b)/i,/^(?:docref\b)/i,/^(?:<-)/i,/^(?:->)/i,/^(?:-)/i,/^(?:["])/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:[\w][^\r\n\{\<\>\-\=]*)/i],conditions:{acc_descr_multiline:{rules:[6,7],inclusive:!1},acc_descr:{rules:[4],inclusive:!1},acc_title:{rules:[2],inclusive:!1},unqString:{rules:[],inclusive:!1},token:{rules:[],inclusive:!1},string:{rules:[48,49],inclusive:!1},INITIAL:{rules:[0,1,3,5,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,50],inclusive:!0}}};return Ae}();Fe.lexer=Mt;function pn(){this.yy={}}return pn.prototype=Fe,Fe.Parser=pn,new pn}();Dbt.parser=Dbt;const tQe=Dbt;let Mbt=[],ub={},gB={},_8={},pB={};const eQe={RequirementType:{REQUIREMENT:"Requirement",FUNCTIONAL_REQUIREMENT:"Functional Requirement",INTERFACE_REQUIREMENT:"Interface Requirement",PERFORMANCE_REQUIREMENT:"Performance Requirement",PHYSICAL_REQUIREMENT:"Physical Requirement",DESIGN_CONSTRAINT:"Design Constraint"},RiskLevel:{LOW_RISK:"Low",MED_RISK:"Medium",HIGH_RISK:"High"},VerifyType:{VERIFY_ANALYSIS:"Analysis",VERIFY_DEMONSTRATION:"Demonstration",VERIFY_INSPECTION:"Inspection",VERIFY_TEST:"Test"},Relationships:{CONTAINS:"contains",COPIES:"copies",DERIVES:"derives",SATISFIES:"satisfies",VERIFIES:"verifies",REFINES:"refines",TRACES:"traces"},getConfig:()=>Re().req,addRequireme
2022-11-03 00:28:15 +01:00
marker {
2024-02-17 17:36:33 +01:00
fill: ${i.relationColor};
stroke: ${i.relationColor};
2022-11-03 00:28:15 +01:00
}
marker.cross {
2024-02-17 17:36:33 +01:00
stroke: ${i.lineColor};
2022-11-03 00:28:15 +01:00
}
svg {
2024-02-17 17:36:33 +01:00
font-family: ${i.fontFamily};
font-size: ${i.fontSize};
2022-11-03 00:28:15 +01:00
}
.reqBox {
2024-02-17 17:36:33 +01:00
fill: ${i.requirementBackground};
fill-opacity: 1.0;
stroke: ${i.requirementBorderColor};
stroke-width: ${i.requirementBorderSize};
2022-11-03 00:28:15 +01:00
}
.reqTitle, .reqLabel{
2024-02-17 17:36:33 +01:00
fill: ${i.requirementTextColor};
2022-11-03 00:28:15 +01:00
}
.reqLabelBox {
2024-02-17 17:36:33 +01:00
fill: ${i.relationLabelBackground};
fill-opacity: 1.0;
2022-11-03 00:28:15 +01:00
}
.req-title-line {
2024-02-17 17:36:33 +01:00
stroke: ${i.requirementBorderColor};
stroke-width: ${i.requirementBorderSize};
2022-11-03 00:28:15 +01:00
}
.relationshipLine {
2024-02-17 17:36:33 +01:00
stroke: ${i.relationColor};
2022-11-03 00:28:15 +01:00
stroke-width: 1;
}
.relationshipLabel {
2024-02-17 17:36:33 +01:00
fill: ${i.relationLabelColor};
2022-11-03 00:28:15 +01:00
}
2024-02-17 17:36:33 +01:00
`,Ibt={CONTAINS:"contains",ARROW:"arrow"},oqt={ReqMarkers:Ibt,insertLineEndings:(i,a)=>{let f=i.append("defs").append("marker").attr("id",Ibt.CONTAINS+"_line_ending").attr("refX",0).attr("refY",a.line_height/2).attr("markerWidth",a.line_height).attr("markerHeight",a.line_height).attr("orient","auto").append("g");f.append("circle").attr("cx",a.line_height/2).attr("cy",a.line_height/2).attr("r",a.line_height/2).attr("fill","none"),f.append("line").attr("x1",0).attr("x2",a.line_height).attr("y1",a.line_height/2).attr("y2",a.line_height/2).attr("stroke-width",1),f.append("line").attr("y1",0).attr("y2",a.line_height).attr("x1",a.line_height/2).attr("x2",a.line_height/2).attr("stroke-width",1),i.append("defs").append("marker").attr("id",Ibt.ARROW+"_line_ending").attr("refX",a.line_height).attr("refY",.5*a.line_height).attr("markerWidth",a.line_height).attr("markerHeight",a.line_height).attr("orient","auto").append("path").attr("d",`M0,0
L${a.line_height},${a.line_height/2}
M${a.line_height},${a.line_height/2}
L0,${a.line_height}`).attr("stroke-width",1)}};let Xh={},cqt=0;const uqt=(i,a)=>i.insert("rect","#"+a).attr("class","req reqBox").attr("x",0).attr("y",0).attr("width",Xh.rect_min_width+"px").attr("height",Xh.rect_min_height+"px"),lqt=(i,a,f)=>{let g=Xh.rect_min_width/2,w=i.append("text").attr("class","req reqLabel reqTitle").attr("id",a).attr("x",g).attr("y",Xh.rect_padding).attr("dominant-baseline","hanging"),v=0;f.forEach(_=>{v==0?w.append("tspan").attr("text-anchor","middle").attr("x",Xh.rect_min_width/2).attr("dy",0).text(_):w.append("tspan").attr("text-anchor","middle").attr("x",Xh.rect_min_width/2).attr("dy",Xh.line_height*.75).text(_),v++});let b=1.5*Xh.rect_padding,E=v*Xh.line_height*.75,S=b+E;return i.append("line").attr("class","req-title-line").attr("x1","0").attr("x2",Xh.rect_min_width).attr("y1",S).attr("y2",S),{titleNode:w,y:S}},hqt=(i,a,f,g)=>{let w=i.append("text").attr("class","req reqLabel").attr("id",a).attr("x",Xh.rect_padding).attr("y",g).attr("dominant-baseline","hanging"),v=0;const b=30;let E=[];return f.forEach(S=>{let _=S.length;for(;_>b&&v<3;){let M=S.substring(0,b);S=S.substring(b,S.length),_=S.length,E[E.length]=M,v++}if(v==3){let M=E[E.length-1];E[E.length-1]=M.substring(0,M.length-4)+"..."}else E[E.length]=S;v=0}),E.forEach(S=>{w.append("tspan").attr("x",Xh.rect_padding).attr("dy",Xh.line_height).text(S)}),w},rQe=(i,a,f,g)=>{const w=a.node().getTotalLength(),v=a.node().getPointAtLength(w*.5),b="rel"+cqt;cqt++;const S=i.append("text").attr("class","req relationshipLabel").attr("id",b).attr("x",v.x).attr("y",v.y).attr("text-anchor","middle").attr("dominant-baseline","middle").text(g).node().getBBox();i.insert("rect","#"+b).attr("class","req reqLabelBox").attr("x",v.x-S.width/2).attr("y",v.y-S.height/2).attr("width",S.width).attr("height",S.height).attr("fill","white").attr("fill-opacity","85%")},iQe=function(i,a,f,g,w){const v=f.edge(LD(a.src),LD(a.dst)),b=Ax().x(function(S){return S.x}).y(function(S){return S.y}),E=i.insert("path","#"+g).attr("class","er relationshipLine").attr("d",b(v.points)).attr("fill","none");a.type==w.db.Relationships.CONTAINS?E.attr("marker-start","url("+ei.getUrl(Xh.arrowMarkerAbsolute)+"#"+a.type+"_line_ending)"):(E.attr("stroke-dasharray","10,7"),E.attr("marker-end","url("+ei.getUrl(Xh.arrowMarkerAbsolute)+"#"+oqt.ReqMarkers.ARROW+"_line_ending)")),rQe(i,E,Xh,`<<${a.type}>>`)},sQe=(i,a,f)=>{Object.keys(i).forEach(g=>{let w=i[g];g=LD(g),Kt.info("Added new requirement: ",g);const v=f.append("g").attr("id",g),b="req-"+g,E=uqt(v,b);let S=lqt(v,g+"_title",[`<<${w.type}>>`,`${w.name}`]);hqt(v,g+"_body",[`Id: ${w.id}`,`Text: ${w.text}`,`Risk: ${w.risk}`,`Verification: ${w.verifyMethod}`],S.y);const _=E.node().getBBox();a.setNode(g,{width:_.width,height:_.height,shape:"rect",id:g})})},aQe=(i,a,f)=>{Object.keys(i).forEach(g=>{let w=i[g];const v=LD(g),b=f.append("g").attr("id",v),E="element-"+v,S=uqt(b,E);let _=lqt(b,E+"_title",["<<Element>>",`${g}`]);hqt(b,E+"_body",[`Type: ${w.type||"Not Specified"}`,`Doc Ref: ${w.docRef||"None"}`],_.y);const M=S.node().getBBox();a.setNode(v,{width:M.width,height:M.height,shape:"rect",id:v})})},oQe=(i,a)=>(i.forEach(function(f){let g=LD(f.src),w=LD(f.dst);a.setEdge(g,w,{relationship:f})}),i),cQe=function(i,a){a.nodes().forEach(function(f){f!==void 0&&a.node(f)!==void 0&&(i.select("#"+f),i.select("#"+f).attr("transform","translate("+(a.node(f).x-a.node(f).width/2)+","+(a.node(f).y-a.node(f).height/2)+" )"))})},LD=i=>i.replace(/\s/g,"").replace(/\./g,"_"),uQe=Object.freeze(Object.defineProperty({__proto__:null,diagram:{parser:tQe,db:eQe,renderer:{draw:(i,a,f,g)=>{Xh=Re().requirement;const w=Xh.securityLevel;let v;w==="sandbox"&&(v=Tr("#i"+a));const E=Tr(w==="sandbox"?v.nodes()[0].contentDocument.body:"body").select(`[id='${a}']`);oqt.insertLineEndings(E,Xh);const S=new l1({multigraph:!1,compound:!1,directed:!0}).setGraph({rankdir:Xh.layoutDirection,marginx:20,marginy:20,nodesep:100,edgesep:100,ranksep:100}).setDefaultEdgeLabel(function(){return{}});let _=g.db.getRequirements(),M=g.db.getElements(),F=g.db.getRelationships();sQe(_,S,E),a
`+br.showPosition()+`
Expecting `+ds.join(", ")+", got '"+(this.terminals_[Je]||Je)+"'":Fu="Parse error on line "+(Fi+1)+": Unexpected "+(Je==Ss?"end of input":"'"+(this.terminals_[Je]||Je)+"'"),this.parseError(Fu,{text:br.match,token:this.terminals_[Je]||Je,line:br.yylineno,loc:Bn,expected:ds})}if(xn[0]instanceof Array&&xn.length>1)throw new Error("Parse Error: multiple actions possible at state: "+an+", token: "+Je);switch(xn[0]){case 1:_e.push(Je),Mn.push(br.yytext),ce.push(br.yylloc),_e.push(xn[1]),Je=null,mi=br.yyleng,we=br.yytext,Fi=br.yylineno,Bn=br.yylloc;break;case 2:if(va=this.productions_[xn[1]][1],xo.$=Mn[Mn.length-va],xo._$={first_line:ce[ce.length-(va||1)].first_line,last_line:ce[ce.length-1].last_line,first_column:ce[ce.length-(va||1)].first_column,last_column:ce[ce.length-1].last_column},ke&&(xo._$.range=[ce[ce.length-(va||1)].range[0],ce[ce.length-1].range[1]]),qa=this.performAction.apply(xo,[we,mi,Fi,An.yy,xn[1],Mn,ce].concat(za)),typeof qa<"u")return qa;va&&(_e=_e.slice(0,-1*va*2),Mn=Mn.slice(0,-1*va),ce=ce.slice(0,-1*va)),_e.push(this.productions_[xn[1]][0]),Mn.push(xo.$),ce.push(xo._$),Ha=Br[_e[_e.length-2]][_e[_e.length-1]],_e.push(Ha);break;case 3:return!0}}return!0}},tn=function(){var be={EOF:1,parseError:function(Xt,_e){if(this.yy.parser)this.yy.parser.parseError(Xt,_e);else throw new Error(Xt)},setInput:function(Ne,Xt){return this.yy=Xt||this.yy||{},this._input=Ne,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var Ne=this._input[0];this.yytext+=Ne,this.yyleng++,this.offset++,this.match+=Ne,this.matched+=Ne;var Xt=Ne.match(/(?:\r\n?|\n).*/g);return Xt?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),Ne},unput:function(Ne){var Xt=Ne.length,_e=Ne.split(/(?:\r\n?|\n)/g);this._input=Ne+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-Xt),this.offset-=Xt;var xe=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),_e.length-1&&(this.yylineno-=_e.length-1);var Mn=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:_e?(_e.length===xe.length?this.yylloc.first_column:0)+xe[xe.length-_e.length].length-_e[0].length:this.yylloc.first_column-Xt},this.options.ranges&&(this.yylloc.range=[Mn[0],Mn[0]+this.yyleng-Xt]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(Ne){this.unput(this.match.slice(Ne))},pastInput:function(){var Ne=this.matched.substr(0,this.matched.length-this.match.length);return(Ne.length>20?"...":"")+Ne.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var Ne=this.match;return Ne.length<20&&(Ne+=this._input.substr(0,20-Ne.length)),(Ne.substr(0,20)+(Ne.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var Ne=this.pastInput(),Xt=new Array(Ne.length+1).join("-");return Ne+this.upcomingInput()+`
`+Xt+"^"},test_match:function(Ne,Xt){var _e,xe,Mn;if(this.options.backtrack_lexer&&(Mn={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(Mn.yylloc.range=this.yylloc.range.slice(0))),xe=Ne[0].match(/(?:\r\n?|\n).*/g),xe&&(this.yylineno+=xe.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:xe?xe[xe.length-1].length-xe[xe.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+Ne[0].length},this.yytext+=Ne[0],this.match+=Ne[0],this.matches=Ne,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(Ne[0].length),this.matched+=Ne[0],_e=this.performAction.call(this,this.yy,this,Xt,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),_e)return _e;if(this._backtrack){for(var ce in Mn)this[ce]=Mn[ce];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var Ne,Xt,_e,xe;this._more||(this.yytext="",this.match="");for(var Mn=this._currentRules(),ce=0;ce<Mn.length;ce++)if(_e=this._input.match(this.rules[Mn[ce]]),_e&&(!Xt||_e[0].length>Xt[0].length)){if(Xt=_e,xe=ce,this.options.backtrack_lexer){if(Ne=this.test_match(_e,Mn[ce]),Ne!==!1)return Ne;if(this._backtrack){Xt=!1;continue}else return!1}else if(!this.options.flex)break}return Xt?(Ne=this.test_match(Xt,Mn[xe]),Ne!==!1?Ne:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.
`+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var Xt=this.next();return Xt||this.lex()},begin:function(Xt){this.conditionStack.push(Xt)},popState:function(){var Xt=this.conditionStack.length-1;return Xt>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(Xt){return Xt=this.conditionStack.length-1-Math.abs(Xt||0),Xt>=0?this.conditionStack[Xt]:"INITIAL"},pushState:function(Xt){this.begin(Xt)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(Xt,_e,xe,Mn){switch(xe){case 0:return 5;case 1:break;case 2:break;case 3:break;case 4:break;case 5:break;case 6:return 19;case 7:return this.begin("LINE"),14;case 8:return this.begin("ID"),50;case 9:return this.begin("ID"),52;case 10:return 13;case 11:return this.begin("ID"),53;case 12:return _e.yytext=_e.yytext.trim(),this.begin("ALIAS"),70;case 13:return this.popState(),this.popState(),this.begin("LINE"),51;case 14:return this.popState(),this.popState(),5;case 15:return this.begin("LINE"),36;case 16:return this.begin("LINE"),37;case 17:return this.begin("LINE"),38;case 18:return this.begin("LINE"),39;case 19:return this.begin("LINE"),49;case 20:return this.begin("LINE"),41;case 21:return this.begin("LINE"),43;case 22:return this.begin("LINE"),48;case 23:return this.begin("LINE"),44;case 24:return this.begin("LINE"),47;case 25:return this.begin("LINE"),46;case 26:return this.popState(),15;case 27:return 16;case 28:return 65;case 29:return 66;case 30:return 59;case 31:return 60;case 32:return 61;case 33:return 62;case 34:return 57;case 35:return 54;case 36:return this.begin("ID"),21;case 37:return this.begin("ID"),23;case 38:return 29;case 39:return 30;case 40:return this.begin("acc_title"),31;case 41:return this.popState(),"acc_title_value";case 42:return this.begin("acc_descr"),33;case 43:return this.popState(),"acc_descr_value";case 44:this.begin("acc_descr_multiline");break;case 45:this.popState();break;case 46:return"acc_descr_multiline_value";case 47:return 6;case 48:return 18;case 49:return 20;case 50:return 64;case 51:return 5;case 52:return _e.yytext=_e.yytext.trim(),70;case 53:return 73;case 54:return 74;case 55:return 71;case 56:return 72;case 57:return 75;case 58:return 76;case 59:return 77;case 60:return 78;case 61:return 79;case 62:return 68;case 63:return 69;case 64:return 5;case 65:return"INVALID"}},rules:[/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?:((?!\n)\s)+)/i,/^(?:#[^\n]*)/i,/^(?:%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[0-9]+(?=[ \n]+))/i,/^(?:box\b)/i,/^(?:participant\b)/i,/^(?:actor\b)/i,/^(?:create\b)/i,/^(?:destroy\b)/i,/^(?:[^\->:\n,;]+?([\-]*[^\->:\n,;]+?)*?(?=((?!\n)\s)+as(?!\n)\s|[#\n;]|$))/i,/^(?:as\b)/i,/^(?:(?:))/i,/^(?:loop\b)/i,/^(?:rect\b)/i,/^(?:opt\b)/i,/^(?:alt\b)/i,/^(?:else\b)/i,/^(?:par\b)/i,/^(?:par_over\b)/i,/^(?:and\b)/i,/^(?:critical\b)/i,/^(?:option\b)/i,/^(?:break\b)/i,/^(?:(?:[:]?(?:no)?wrap)?[^#\n;]*)/i,/^(?:end\b)/i,/^(?:left of\b)/i,/^(?:right of\b)/i,/^(?:links\b)/i,/^(?:link\b)/i,/^(?:properties\b)/i,/^(?:details\b)/i,/^(?:over\b)/i,/^(?:note\b)/i,/^(?:activate\b)/i,/^(?:deactivate\b)/i,/^(?:title\s[^#\n;]+)/i,/^(?:title:\s[^#\n;]+)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:sequenceDiagram\b)/i,/^(?:autonumber\b)/i,/^(?:off\b)/i,/^(?:,)/i,/^(?:;)/i,/^(?:[^\+\->:\n,;]+((?!(-x|--x|-\)|--\)))[\-]*[^\+\->:\n,;]+)*)/i,/^(?:->>)/i,/^(?:-->>)/i,/^(?:->)/i,/^(?:-->)/i,/^(?:-[x])/i,/^(?:--[x])/i,/^(?:-[\)])/i,/^(?:--[\)])/i,/^(?::(?:(?:no)?wrap)?[^#\n;]+)/i,/^(?:\+)/i,/^(?:-)/i,/^(?:$)/i,/^(?:.)/i],conditions:{acc_descr_multiline:{rules:[45,46],inclusive:!1},acc_descr:{rules:[43],inclusive:!1},acc_title:{rules:[41],inclusive:!1},ID:{rules:[2,3,12],inclusive:!1},ALIAS:{rules:[2,3,13,14],inclusive:!1},LINE:{rules:[2
stroke: ${i.actorBorder};
fill: ${i.actorBkg};
2022-11-03 00:28:15 +01:00
}
text.actor > tspan {
2024-02-17 17:36:33 +01:00
fill: ${i.actorTextColor};
2022-11-03 00:28:15 +01:00
stroke: none;
}
.actor-line {
2024-02-17 17:36:33 +01:00
stroke: ${i.actorLineColor};
2022-11-03 00:28:15 +01:00
}
.messageLine0 {
stroke-width: 1.5;
stroke-dasharray: none;
2024-02-17 17:36:33 +01:00
stroke: ${i.signalColor};
2022-11-03 00:28:15 +01:00
}
.messageLine1 {
stroke-width: 1.5;
stroke-dasharray: 2, 2;
2024-02-17 17:36:33 +01:00
stroke: ${i.signalColor};
2022-11-03 00:28:15 +01:00
}
#arrowhead path {
2024-02-17 17:36:33 +01:00
fill: ${i.signalColor};
stroke: ${i.signalColor};
2022-11-03 00:28:15 +01:00
}
.sequenceNumber {
2024-02-17 17:36:33 +01:00
fill: ${i.sequenceNumberColor};
2022-11-03 00:28:15 +01:00
}
#sequencenumber {
2024-02-17 17:36:33 +01:00
fill: ${i.signalColor};
2022-11-03 00:28:15 +01:00
}
#crosshead path {
2024-02-17 17:36:33 +01:00
fill: ${i.signalColor};
stroke: ${i.signalColor};
2022-11-03 00:28:15 +01:00
}
.messageText {
2024-02-17 17:36:33 +01:00
fill: ${i.signalTextColor};
2022-11-03 00:28:15 +01:00
stroke: none;
}
.labelBox {
2024-02-17 17:36:33 +01:00
stroke: ${i.labelBoxBorderColor};
fill: ${i.labelBoxBkgColor};
2022-11-03 00:28:15 +01:00
}
.labelText, .labelText > tspan {
2024-02-17 17:36:33 +01:00
fill: ${i.labelTextColor};
2022-11-03 00:28:15 +01:00
stroke: none;
}
.loopText, .loopText > tspan {
2024-02-17 17:36:33 +01:00
fill: ${i.loopTextColor};
2022-11-03 00:28:15 +01:00
stroke: none;
}
.loopLine {
stroke-width: 2px;
stroke-dasharray: 2, 2;
2024-02-17 17:36:33 +01:00
stroke: ${i.labelBoxBorderColor};
fill: ${i.labelBoxBorderColor};
2022-11-03 00:28:15 +01:00
}
.note {
//stroke: #decc93;
2024-02-17 17:36:33 +01:00
stroke: ${i.noteBorderColor};
fill: ${i.noteBkgColor};
2022-11-03 00:28:15 +01:00
}
.noteText, .noteText > tspan {
2024-02-17 17:36:33 +01:00
fill: ${i.noteTextColor};
2022-11-03 00:28:15 +01:00
stroke: none;
}
.activation0 {
2024-02-17 17:36:33 +01:00
fill: ${i.activationBkgColor};
stroke: ${i.activationBorderColor};
2022-11-03 00:28:15 +01:00
}
.activation1 {
2024-02-17 17:36:33 +01:00
fill: ${i.activationBkgColor};
stroke: ${i.activationBorderColor};
2022-11-03 00:28:15 +01:00
}
.activation2 {
2024-02-17 17:36:33 +01:00
fill: ${i.activationBkgColor};
stroke: ${i.activationBorderColor};
2022-11-03 00:28:15 +01:00
}
.actorPopupMenu {
position: absolute;
}
.actorPopupMenuPanel {
position: absolute;
2024-02-17 17:36:33 +01:00
fill: ${i.actorBkg};
2022-11-03 00:28:15 +01:00
box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
filter: drop-shadow(3px 5px 2px rgb(0 0 0 / 0.4));
}
.actor-man line {
2024-02-17 17:36:33 +01:00
stroke: ${i.actorBorder};
fill: ${i.actorBkg};
2022-11-03 00:28:15 +01:00
}
.actor-man circle, line {
2024-02-17 17:36:33 +01:00
stroke: ${i.actorBorder};
fill: ${i.actorBkg};
2022-11-03 00:28:15 +01:00
stroke-width: 2px;
}
2024-02-17 17:36:33 +01:00
`,B9=18*2,vqt="actor-top",yqt="actor-bottom",Fbt=function(i,a){return LY(i,a)},FQe=function(i,a,f,g,w){if(a.links===void 0||a.links===null||Object.keys(a.links).length===0)return{height:0,width:0};const v=a.links,b=a.actorCnt,E=a.rectData;var S="none";w&&(S="block !important");const _=i.append("g");_.attr("id","actor"+b+"_popup"),_.attr("class","actorPopupMenu"),_.attr("display",S);var M="";E.class!==void 0&&(M=" "+E.class);let F=E.width>f?E.width:f;const R=_.append("rect");if(R.attr("class","actorPopupMenuPanel"+M),R.attr("x",E.x),R.attr("y",E.height),R.attr("fill",E.fill),R.attr("stroke",E.stroke),R.attr("width",F),R.attr("height",E.height),R.attr("rx",E.rx),R.attr("ry",E.ry),v!=null){var B=20;for(let nt in v){var z=_.append("a"),Y=h8(v[nt]);z.attr("xlink:href",Y),z.attr("target","_blank"),ZQe(g)(nt,z,E.x+10,E.height+B,F,20,{class:"actor"},g),B+=30}}return R.attr("height",B),{height:E.height+B,width:F}},BQe=function(i){return"var pu = document.getElementById('"+i+"'); if (pu != null) { pu.style.display = pu.style.display == 'block' ? 'none' : 'block'; }"},DD=function(i,a){let f=0,g=0;const w=a.text.split(ei.lineBreakRegex),[v,b]=k9(a.fontSize);let E=[],S=0,_=()=>a.y;if(a.valign!==void 0&&a.textMargin!==void 0&&a.textMargin>0)switch(a.valign){case"top":case"start":_=()=>Math.round(a.y+a.textMargin);break;case"middle":case"center":_=()=>Math.round(a.y+(f+g+a.textMargin)/2);break;case"bottom":case"end":_=()=>Math.round(a.y+(f+g+2*a.textMargin)-a.textMargin);break}if(a.anchor!==void 0&&a.textMargin!==void 0&&a.width!==void 0)switch(a.anchor){case"left":case"start":a.x=Math.round(a.x+a.textMargin),a.anchor="start",a.dominantBaseline="middle",a.alignmentBaseline="middle";break;case"middle":case"center":a.x=Math.round(a.x+a.width/2),a.anchor="middle",a.dominantBaseline="middle",a.alignmentBaseline="middle";break;case"right":case"end":a.x=Math.round(a.x+a.width-a.textMargin),a.anchor="end",a.dominantBaseline="middle",a.alignmentBaseline="middle";break}for(let[M,F]of w.entries()){a.textMargin!==void 0&&a.textMargin===0&&v!==void 0&&(S=M*v);const R=i.append("text");R.attr("x",a.x),R.attr("y",_()),a.anchor!==void 0&&R.attr("text-anchor",a.anchor).attr("dominant-baseline",a.dominantBaseline).attr("alignment-baseline",a.alignmentBaseline),a.fontFamily!==void 0&&R.style("font-family",a.fontFamily),b!==void 0&&R.style("font-size",b),a.fontWeight!==void 0&&R.style("font-weight",a.fontWeight),a.fill!==void 0&&R.attr("fill",a.fill),a.class!==void 0&&R.attr("class",a.class),a.dy!==void 0?R.attr("dy",a.dy):S!==0&&R.attr("dy",S);const B=F||kFt;if(a.tspan){const z=R.append("tspan");z.attr("x",a.x),a.fill!==void 0&&z.attr("fill",a.fill),z.text(B)}else R.text(B);a.valign!==void 0&&a.textMargin!==void 0&&a.textMargin>0&&(g+=(R._groups||R)[0][0].getBBox().height,f=g),E.push(R)}return E},xqt=function(i,a){function f(w,v,b,E,S){return w+","+v+" "+(w+b)+","+v+" "+(w+b)+","+(v+E-S)+" "+(w+b-S*1.2)+","+(v+E)+" "+w+","+(v+E)}const g=i.append("polygon");return g.attr("points",f(a.x,a.y,a.width,a.height,7)),g.attr("class","labelBox"),a.y=a.y+a.height/2,DD(i,a),g};let f4=-1;const kqt=(i,a,f,g)=>{i.select&&f.forEach(w=>{const v=a[w],b=i.select("#actor"+v.actorCnt);!g.mirrorActors&&v.stopy?b.attr("y2",v.stopy+v.height/2):g.mirrorActors&&b.attr("y2",v.stopy)})},RQe=function(i,a,f,g){const w=g?a.stopy:a.starty,v=a.x+a.width/2,b=w+5,E=i.append("g").lower();var S=E;g||(f4++,Object.keys(a.links||{}).length&&!f.forceMenus&&S.attr("onclick",BQe(`actor${f4}_popup`)).attr("cursor","pointer"),S.append("line").attr("id","actor"+f4).attr("x1",v).attr("y1",b).attr("x2",v).attr("y2",2e3).attr("class","actor-line").attr("class","200").attr("stroke-width","0.5px").attr("stroke","#999"),S=E.append("g"),a.actorCnt=f4,a.links!=null&&S.attr("id","root-"+f4));const _=_9();var M="actor";a.properties!=null&&a.properties.class?M=a.properties.class:_.fill="#eaeaea",g?M+=` ${yqt}`:M+=` ${vqt}`,_.x=a.x,_.y=w,_.width=a.width,_.height=a.height,_.class=M,_.rx=3,_.ry=3;const F=Fbt(S,_);if(a.rectData=_,a.properties!=null&&a.properties.icon){const B=a.properties.icon.trim();B.charAt(0)=
`+Ha.showPosition()+`
Expecting `+ca.join(", ")+", got '"+(this.terminals_[ll]||ll)+"'":ya="Parse error on line "+(xn+1)+": Unexpected "+(ll==ko?"end of input":"'"+(this.terminals_[ll]||ll)+"'"),this.parseError(ya,{text:Ha.match,token:this.terminals_[ll]||ll,line:Ha.yylineno,loc:Zs,expected:ca})}if(wc[0]instanceof Array&&wc.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Ic+", token: "+ll);switch(wc[0]){case 1:Nn.push(ll),ke.push(Ha.yytext),pe.push(Ha.yylloc),Nn.push(wc[1]),ll=null,qa=Ha.yyleng,an=Ha.yytext,xn=Ha.yylineno,Zs=Ha.yylloc;break;case 2:if(fo=this.productions_[wc[1]][1],gu.$=ke[ke.length-fo],gu._$={first_line:pe[pe.length-(fo||1)].first_line,last_line:pe[pe.length-1].last_line,first_column:pe[pe.length-(fo||1)].first_column,last_column:pe[pe.length-1].last_column},d1&&(gu._$.range=[pe[pe.length-(fo||1)].range[0],pe[pe.length-1].range[1]]),Ea=this.performAction.apply(gu,[an,qa,xn,ds.yy,wc[1],ke,pe].concat(va)),typeof Ea<"u")return Ea;fo&&(Nn=Nn.slice(0,-1*fo*2),ke=ke.slice(0,-1*fo),pe=pe.slice(0,-1*fo)),Nn.push(this.productions_[wc[1]][0]),ke.push(gu.$),pe.push(gu._$),mc=Je[Nn[Nn.length-2]][Nn[Nn.length-1]],Nn.push(mc);break;case 3:return!0}}return!0}},ga=function(){var za={EOF:1,parseError:function(An,Nn){if(this.yy.parser)this.yy.parser.parseError(An,Nn);else throw new Error(An)},setInput:function(br,An){return this.yy=An||this.yy||{},this._input=br,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var br=this._input[0];this.yytext+=br,this.yyleng++,this.offset++,this.match+=br,this.matched+=br;var An=br.match(/(?:\r\n?|\n).*/g);return An?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),br},unput:function(br){var An=br.length,Nn=br.split(/(?:\r\n?|\n)/g);this._input=br+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-An),this.offset-=An;var Bn=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),Nn.length-1&&(this.yylineno-=Nn.length-1);var ke=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:Nn?(Nn.length===Bn.length?this.yylloc.first_column:0)+Bn[Bn.length-Nn.length].length-Nn[0].length:this.yylloc.first_column-An},this.options.ranges&&(this.yylloc.range=[ke[0],ke[0]+this.yyleng-An]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(br){this.unput(this.match.slice(br))},pastInput:function(){var br=this.matched.substr(0,this.matched.length-this.match.length);return(br.length>20?"...":"")+br.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var br=this.match;return br.length<20&&(br+=this._input.substr(0,20-br.length)),(br.substr(0,20)+(br.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var br=this.pastInput(),An=new Array(br.length+1).join("-");return br+this.upcomingInput()+`
`+An+"^"},test_match:function(br,An){var Nn,Bn,ke;if(this.options.backtrack_lexer&&(ke={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(ke.yylloc.range=this.yylloc.range.slice(0))),Bn=br[0].match(/(?:\r\n?|\n).*/g),Bn&&(this.yylineno+=Bn.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:Bn?Bn[Bn.length-1].length-Bn[Bn.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+br[0].length},this.yytext+=br[0],this.match+=br[0],this.matches=br,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(br[0].length),this.matched+=br[0],Nn=this.performAction.call(this,this.yy,this,An,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),Nn)return Nn;if(this._backtrack){for(var pe in ke)this[pe]=ke[pe];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var br,An,Nn,Bn;this._more||(this.yytext="",this.match="");for(var ke=this._currentRules(),pe=0;pe<ke.length;pe++)if(Nn=this._input.match(this.rules[ke[pe]]),Nn&&(!An||Nn[0].length>An[0].length)){if(An=Nn,Bn=pe,this.options.backtrack_lexer){if(br=this.test_match(Nn,ke[pe]),br!==!1)return br;if(this._backtrack){An=!1;continue}else return!1}else if(!this.options.flex)break}return An?(br=this.test_match(An,ke[Bn]),br!==!1?br:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.
`+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var An=this.next();return An||this.lex()},begin:function(An){this.conditionStack.push(An)},popState:function(){var An=this.conditionStack.length-1;return An>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(An){return An=this.conditionStack.length-1-Math.abs(An||0),An>=0?this.conditionStack[An]:"INITIAL"},pushState:function(An){this.begin(An)},stateStackSize:function(){return this.conditionStack.length},options:{},performAction:function(An,Nn,Bn,ke){switch(Bn){case 0:return 53;case 1:return 54;case 2:return 55;case 3:return 56;case 4:break;case 5:break;case 6:return this.begin("acc_title"),31;case 7:return this.popState(),"acc_title_value";case 8:return this.begin("acc_descr"),33;case 9:return this.popState(),"acc_descr_value";case 10:this.begin("acc_descr_multiline");break;case 11:this.popState();break;case 12:return"acc_descr_multiline_value";case 13:return 8;case 14:break;case 15:return 7;case 16:return 7;case 17:return"EDGE_STATE";case 18:this.begin("callback_name");break;case 19:this.popState();break;case 20:this.popState(),this.begin("callback_args");break;case 21:return 70;case 22:this.popState();break;case 23:return 71;case 24:this.popState();break;case 25:return"STR";case 26:this.begin("string");break;case 27:return 73;case 28:return this.begin("namespace"),40;case 29:return this.popState(),8;case 30:break;case 31:return this.begin("namespace-body"),37;case 32:return this.popState(),39;case 33:return"EOF_IN_STRUCT";case 34:return 8;case 35:break;case 36:return"EDGE_STATE";case 37:return this.begin("class"),44;case 38:return this.popState(),8;case 39:break;case 40:return this.popState(),this.popState(),39;case 41:return this.begin("class-body"),37;case 42:return this.popState(),39;case 43:return"EOF_IN_STRUCT";case 44:return"EDGE_STATE";case 45:return"OPEN_IN_STRUCT";case 46:break;case 47:return"MEMBER";case 48:return 76;case 49:return 66;case 50:return 67;case 51:return 69;case 52:return 50;case 53:return 52;case 54:return 45;case 55:return 46;case 56:return 72;case 57:this.popState();break;case 58:return"GENERICTYPE";case 59:this.begin("generic");break;case 60:this.popState();break;case 61:return"BQUOTE_STR";case 62:this.begin("bqstring");break;case 63:return 68;case 64:return 68;case 65:return 68;case 66:return 68;case 67:return 60;case 68:return 60;case 69:return 62;case 70:return 62;case 71:return 61;case 72:return 59;case 73:return 63;case 74:return 64;case 75:return 65;case 76:return 21;case 77:return 42;case 78:return 95;case 79:return"DOT";case 80:return"PLUS";case 81:return 81;case 82:return 78;case 83:return 84;case 84:return 84;case 85:return 85;case 86:return"EQUALS";case 87:return"EQUALS";case 88:return 74;case 89:return 12;case 90:return 14;case 91:return"PUNCTUATION";case 92:return 80;case 93:return 97;case 94:return 83;case 95:return 83;case 96:return 9}},rules:[/^(?:.*direction\s+TB[^\n]*)/,/^(?:.*direction\s+BT[^\n]*)/,/^(?:.*direction\s+RL[^\n]*)/,/^(?:.*direction\s+LR[^\n]*)/,/^(?:%%(?!\{)*[^\n]*(\r?\n?)+)/,/^(?:%%[^\n]*(\r?\n)*)/,/^(?:accTitle\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*\{\s*)/,/^(?:[\}])/,/^(?:[^\}]*)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:classDiagram-v2\b)/,/^(?:classDiagram\b)/,/^(?:\[\*\])/,/^(?:call[\s]+)/,/^(?:\([\s]*\))/,/^(?:\()/,/^(?:[^(]*)/,/^(?:\))/,/^(?:[^)]*)/,/^(?:["])/,/^(?:[^"]*)/,/^(?:["])/,/^(?:style\b)/,/^(?:namespace\b)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:[{])/,/^(?:[}])/,/^(?:$)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:\[\*\])/,/^(?:class\b)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:[}])/,/^(?:[{])/,/^(?:[}])/,/^(?:$)/,/^(?:\[\*\])/,/^(?:[{])/,/^(?:[\n])/,/^(?:[^{}\n]*)/,/^(?:cssClass\b)/,/^(?:callback\b)/,/^(?:link\b)/,/^(?:click\b)/,/^(?:note for\b)/,/^(?:note\b)/,/^(?:<<)/,/^(?:>>)/,/^(?:href\b)/,/^(?:[~])/
fill: ${i.nodeBorder||i.classText};
stroke: none;
font-family: ${i.fontFamily};
font-size: 10px;
.title {
font-weight: bolder;
}
}
.nodeLabel, .edgeLabel {
color: ${i.classText};
}
.edgeLabel .label rect {
fill: ${i.mainBkg};
}
.label text {
fill: ${i.classText};
}
.edgeLabel .label span {
background: ${i.mainBkg};
}
.classTitle {
font-weight: bolder;
}
.node rect,
.node circle,
.node ellipse,
.node polygon,
.node path {
fill: ${i.mainBkg};
stroke: ${i.nodeBorder};
stroke-width: 1px;
}
.divider {
stroke: ${i.nodeBorder};
stroke-width: 1;
}
g.clickable {
cursor: pointer;
}
g.classGroup rect {
fill: ${i.mainBkg};
stroke: ${i.nodeBorder};
}
g.classGroup line {
stroke: ${i.nodeBorder};
stroke-width: 1;
}
.classLabel .box {
stroke: none;
stroke-width: 0;
fill: ${i.mainBkg};
opacity: 0.5;
}
.classLabel .label {
fill: ${i.nodeBorder};
font-size: 10px;
}
.relation {
stroke: ${i.lineColor};
stroke-width: 1;
fill: none;
}
.dashed-line{
stroke-dasharray: 3;
}
.dotted-line{
stroke-dasharray: 1 2;
}
#compositionStart, .composition {
fill: ${i.lineColor} !important;
stroke: ${i.lineColor} !important;
stroke-width: 1;
}
#compositionEnd, .composition {
fill: ${i.lineColor} !important;
stroke: ${i.lineColor} !important;
stroke-width: 1;
}
#dependencyStart, .dependency {
fill: ${i.lineColor} !important;
stroke: ${i.lineColor} !important;
stroke-width: 1;
}
#dependencyStart, .dependency {
fill: ${i.lineColor} !important;
stroke: ${i.lineColor} !important;
stroke-width: 1;
}
#extensionStart, .extension {
fill: transparent !important;
stroke: ${i.lineColor} !important;
stroke-width: 1;
}
#extensionEnd, .extension {
fill: transparent !important;
stroke: ${i.lineColor} !important;
stroke-width: 1;
}
#aggregationStart, .aggregation {
fill: transparent !important;
stroke: ${i.lineColor} !important;
stroke-width: 1;
}
#aggregationEnd, .aggregation {
fill: transparent !important;
stroke: ${i.lineColor} !important;
stroke-width: 1;
}
#lollipopStart, .lollipop {
fill: ${i.mainBkg} !important;
stroke: ${i.lineColor} !important;
stroke-width: 1;
}
#lollipopEnd, .lollipop {
fill: ${i.mainBkg} !important;
stroke: ${i.lineColor} !important;
stroke-width: 1;
}
.edgeTerminals {
font-size: 11px;
line-height: initial;
}
.classTitleText {
text-anchor: middle;
font-size: 18px;
fill: ${i.textColor};
}
`;let Bqt=0;const IJe=function(i,a,f,g,w){const v=function(ft){switch(ft){case w.db.relationType.AGGREGATION:return"aggregation";case w.db.relationType.EXTENSION:return"extension";case w.db.relationType.COMPOSITION:return"composition";case w.db.relationType.DEPENDENCY:return"dependency";case w.db.relationType.LOLLIPOP:return"lollipop"}};a.points=a.points.filter(ft=>!Number.isNaN(ft.y));const b=a.points,E=Ax().x(function(ft){return ft.x}).y(function(ft){return ft.y}).curve(wF),S=i.append("path").attr("d",E(b)).attr("id","edge"+Bqt).attr("class","relation");let _="";g.arrowMarkerAbsolute&&(_=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,_=_.replace(/\(/g,"\\("),_=_.replace(/\)/g,"\\)")),f.relation.lineType==1&&S.attr("class","relation dashed-line"),f.relation.lineType==10&&S.attr("class","relation dotted-line"),f.relation.type1!=="none"&&S.attr("marker-start","url("+_+"#"+v(f.relation.type1)+"Start)"),f.relation.type2!=="none"&&S.attr("marker-end","url("+_+"#"+v(f.relation.type2)+"End)");let M,F;const R=a.points.length;let B=uo.calcLabelPosition(a.points);M=B.x,F=B.y;let z,Y,nt,ot;if(R%2!==0&&R>1){let ft=uo.calcCardinalityPosition(f.relation.type1!=="none",a.points,a.points[0]),wt=uo.calcCardinalityPosition(f.relation.type2!=="none",a.points,a.points[R-1]);Kt.debug("cardinality_1_point "+JSON.stringify(ft)),Kt.debug("cardinality_2_point "+JSON.stringify(wt)),z=ft.x,Y=ft.y,nt=wt.x,ot=wt.y}if(f.title!==void 0){const ft=i.append("g").attr("class","classLabel"),wt=ft.append("text").attr("class","label").attr("x",M).attr("y",F).attr("fill","red").attr("text-anchor","middle").text(f.title);window.label=wt;const mt=wt.node().getBBox();ft.insert("rect",":first-child").attr("class","box").attr("x",mt.x-g.padding/2).attr("y",mt.y-g.padding/2).attr("width",mt.width+g.padding).attr("height",mt.height+g.padding)}Kt.info("Rendering relation "+JSON.stringify(f)),f.relationTitle1!==void 0&&f.relationTitle1!=="none"&&i.append("g").attr("class","cardinality").append("text").attr("class","type1").attr("x",z).attr("y",Y).attr("fill","black").attr("font-size","6").text(f.relationTitle1),f.relationTitle2!==void 0&&f.relationTitle2!=="none"&&i.append("g").attr("class","cardinality").append("text").attr("class","type2").attr("x",nt).attr("y",ot).attr("fill","black").attr("font-size","6").text(f.relationTitle2),Bqt++},OJe=function(i,a,f,g){Kt.debug("Rendering class ",a,f);const w=a.id,v={id:w,label:a.id,width:0,height:0},b=i.append("g").attr("id",g.db.lookUpDomId(w)).attr("class","classGroup");let E;a.link?E=b.append("svg:a").attr("xlink:href",a.link).attr("target",a.linkTarget).append("text").attr("y",f.textHeight+f.padding).attr("x",0):E=b.append("text").attr("y",f.textHeight+f.padding).attr("x",0);let S=!0;a.annotations.forEach(function(wt){const mt=E.append("tspan").text("«"+wt+"»");S||mt.attr("dy",f.textHeight),S=!1});let _=Rqt(a);const M=E.append("tspan").text(_).attr("class","title");S||M.attr("dy",f.textHeight);const F=E.node().getBBox().height;let R,B,z;if(a.members.length>0){R=b.append("line").attr("x1",0).attr("y1",f.padding+F+f.dividerMargin/2).attr("y2",f.padding+F+f.dividerMargin/2);const wt=b.append("text").attr("x",f.padding).attr("y",F+f.dividerMargin+f.textHeight).attr("fill","white").attr("class","classText");S=!0,a.members.forEach(function(mt){jqt(wt,mt,S,f),S=!1}),B=wt.node().getBBox()}if(a.methods.length>0){z=b.append("line").attr("x1",0).attr("y1",f.padding+F+f.dividerMargin+B.height).attr("y2",f.padding+F+f.dividerMargin+B.height);const wt=b.append("text").attr("x",f.padding).attr("y",F+2*f.dividerMargin+B.height+f.textHeight).attr("fill","white").attr("class","classText");S=!0,a.methods.forEach(function(mt){jqt(wt,mt,S,f),S=!1})}const Y=b.node().getBBox();var nt=" ";a.cssClasses.length>0&&(nt=nt+a.cssClasses.join(" "));const ft=b.insert("rect",":first-child").attr("x",0).attr("y",0).attr("width",Y.width+2*f.padding).attr("height",Y.height+f.padding+.5*f.dividerMargin).attr("class",nt).node().getBBox().width;return E.node().childNodes.forEach(function(wt){wt.setAttribu
`);S.forEach(function(R){Kt.debug(`Adding line: ${R}`),E.append("tspan").text(R).attr("class","title").attr("dy",f.textHeight)});const _=b.node().getBBox(),F=b.insert("rect",":first-child").attr("x",0).attr("y",0).attr("width",_.width+2*f.padding).attr("height",_.height+S.length*f.textHeight+f.padding+.5*f.dividerMargin).node().getBBox().width;return E.node().childNodes.forEach(function(R){R.setAttribute("x",(F-R.getBBox().width)/2)}),v.width=F,v.height=_.height+S.length*f.textHeight+f.padding+.5*f.dividerMargin,v},jqt=function(i,a,f,g){const{displayText:w,cssStyle:v}=a.getDisplayDetails(),b=i.append("tspan").attr("x",g.padding).text(w);v!==""&&b.attr("style",a.cssStyle),f||b.attr("dy",g.textHeight)},Vbt={getClassTitleString:Rqt,drawClass:OJe,drawEdge:IJe,drawNote:NJe};let xX={};const kX=20,vB=function(i){const a=Object.entries(xX).find(f=>f[1].label===i);if(a)return a[0]},PJe=function(i){i.append("defs").append("marker").attr("id","extensionStart").attr("class","extension").attr("refX",0).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 1,7 L18,13 V 1 Z"),i.append("defs").append("marker").attr("id","extensionEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 1,1 V 13 L18,7 Z"),i.append("defs").append("marker").attr("id","compositionStart").attr("class","extension").attr("refX",0).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"),i.append("defs").append("marker").attr("id","compositionEnd").attr("refX",19).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"),i.append("defs").append("marker").attr("id","aggregationStart").attr("class","extension").attr("refX",0).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"),i.append("defs").append("marker").attr("id","aggregationEnd").attr("refX",19).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"),i.append("defs").append("marker").attr("id","dependencyStart").attr("class","extension").attr("refX",0).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"),i.append("defs").append("marker").attr("id","dependencyEnd").attr("refX",19).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")},FJe=Object.freeze(Object.defineProperty({__proto__:null,diagram:{parser:Aqt,db:yX,renderer:{draw:function(i,a,f,g){const w=Re().class;xX={},Kt.info("Rendering diagram "+i);const v=Re().securityLevel;let b;v==="sandbox"&&(b=Tr("#i"+a));const E=Tr(v==="sandbox"?b.nodes()[0].contentDocument.body:"body"),S=E.select(`[id='${a}']`);PJe(S);const _=new l1({multigraph:!0});_.setGraph({isMultiGraph:!0}),_.setDefaultEdgeLabel(function(){return{}});const M=g.db.getClasses(),F=Object.keys(M);for(const ft of F){const wt=M[ft],mt=Vbt.drawClass(S,wt,w,g);xX[mt.id]=mt,_.setNode(mt.id,mt),Kt.info("Org height: "+mt.height)}g.db.getRelations().forEach(function(ft){Kt.info("tjoho"+vB(ft.id1)+vB(ft.id2)+JSON.stringify(ft)),_.setEdge(vB(ft.id1),vB(ft.id2),{relation:ft},ft.title||"DEFAULT")}),g.db.getNotes().forEach(function(ft){Kt.debug(`Adding note: ${JSON.stringify(ft)}`);const wt=Vbt.drawNote(S,ft,w,g);xX[wt.id]=wt,_.setNode(wt.id,wt),ft.class&&ft.class in M&&_.setEdge(ft.id,vB(ft.class),{relation:{id1:ft.id,id2:ft.class,relation:{type1:"none",type2:"none",lineType:10}}},"DEFAULT")}),kD(_),_.nodes().forEach(function(ft){ft!==void 0&&_.node(ft)!==void 0&&(Kt.debug("Node "+ft+": "+JSON.stringify(_.node(ft))),E.select("#"+(g.db.lookUpDomId(ft)||ft)).attr("transform","translate("+(_.node(ft).x-_.node(ft).width/2)+","+(_.node(ft).y-_.node(ft).height/2)+" )"))}),_.edges().forEach(funct
`),w.style===void 0&&(v.style=v.style||"stroke: #333; stroke-width: 1.5px;fill:none"),v.labelStyle=v.labelStyle.replace("color:","fill:"))),a.setEdge(w.id1,w.id2,v,g)})},$Je=function(i){Gbt={...Gbt,...i}},zJe=async function(i,a,f,g){Kt.info("Drawing class - ",a);const w=Re().flowchart??Re().class,v=Re().securityLevel;Kt.info("config:",w);const b=(w==null?void 0:w.nodeSpacing)??50,E=(w==null?void 0:w.rankSpacing)??50,S=new l1({multigraph:!0,compound:!0}).setGraph({rankdir:g.db.getDirection(),nodesep:b,ranksep:E,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}}),_=g.db.getNamespaces(),M=g.db.getClasses(),F=g.db.getRelations(),R=g.db.getNotes();Kt.info(F),BJe(_,S,a,g),$qt(M,S,a,g),jJe(F,S),RJe(R,S,F.length+1,M);let B;v==="sandbox"&&(B=Tr("#i"+a));const z=Tr(v==="sandbox"?B.nodes()[0].contentDocument.body:"body"),Y=z.select(`[id="${a}"]`),nt=z.select("#"+a+" g");if(await ebt(nt,S,["aggregation","extension","composition","dependency","lollipop"],"classDiagram",a),uo.insertTitle(Y,"classTitleText",(w==null?void 0:w.titleTopMargin)??5,g.db.getDiagramTitle()),w8(S,Y,w==null?void 0:w.diagramPadding,w==null?void 0:w.useMaxWidth),!(w!=null&&w.htmlLabels)){const ot=v==="sandbox"?B.nodes()[0].contentDocument:document,ft=ot.querySelectorAll('[id="'+a+'"] .edgeLabel .label');for(const wt of ft){const mt=wt.getBBox(),ct=ot.createElementNS("http://www.w3.org/2000/svg","rect");ct.setAttribute("rx",0),ct.setAttribute("ry",0),ct.setAttribute("width",mt.width),ct.setAttribute("height",mt.height),wt.insertBefore(ct,wt.firstChild)}}};function zqt(i){let a;switch(i){case 0:a="aggregation";break;case 1:a="extension";break;case 2:a="composition";break;case 3:a="dependency";break;case 4:a="lollipop";break;default:a="none"}return a}const qJe=Object.freeze(Object.defineProperty({__proto__:null,diagram:{parser:Aqt,db:yX,renderer:{setConf:$Je,draw:zJe},styles:Fqt,init:i=>{i.class||(i.class={}),i.class.arrowMarkerAbsolute=i.arrowMarkerAbsolute,yX.clear()}}},Symbol.toStringTag,{value:"Module"}));var Kbt=function(){var i=function(xt,Ft,Ct,kt){for(Ct=Ct||{},kt=xt.length;kt--;Ct[xt[kt]]=Ft);return Ct},a=[1,2],f=[1,3],g=[1,4],w=[2,4],v=[1,9],b=[1,11],E=[1,15],S=[1,16],_=[1,17],M=[1,18],F=[1,30],R=[1,19],B=[1,20],z=[1,21],Y=[1,22],nt=[1,23],ot=[1,25],ft=[1,26],wt=[1,27],mt=[1,28],ct=[1,29],rt=[1,32],it=[1,33],gt=[1,34],Q=[1,35],dt=[1,31],K=[1,4,5,15,16,18,20,21,23,24,25,26,27,28,32,34,36,37,41,44,45,46,47,50],yt=[1,4,5,13,14,15,16,18,20,21,23,24,25,26,27,28,32,34,36,37,41,44,45,46,47,50],V=[4,5,15,16,18,20,21,23,24,25,26,27,28,32,34,36,37,41,44,45,46,47,50],Ot={trace:function(){},yy:{},symbols_:{error:2,start:3,SPACE:4,NL:5,SD:6,document:7,line:8,statement:9,classDefStatement:10,cssClassStatement:11,idStatement:12,DESCR:13,"-->":14,HIDE_EMPTY:15,scale:16,WIDTH:17,COMPOSIT_STATE:18,STRUCT_START:19,STRUCT_STOP:20,STATE_DESCR:21,AS:22,ID:23,FORK:24,JOIN:25,CHOICE:26,CONCURRENT:27,note:28,notePosition:29,NOTE_TEXT:30,direction:31,acc_title:32,acc_title_value:33,acc_descr:34,acc_descr_value:35,acc_descr_multiline_value:36,classDef:37,CLASSDEF_ID:38,CLASSDEF_STYLEOPTS:39,DEFAULT:40,class:41,CLASSENTITY_IDS:42,STYLECLASS:43,direction_tb:44,direction_bt:45,direction_rl:46,direction_lr:47,eol:48,";":49,EDGE_STATE:50,STYLE_SEPARATOR:51,left_of:52,right_of:53,$accept:0,$end:1},terminals_:{2:"error",4:"SPACE",5:"NL",6:"SD",13:"DESCR",14:"-->",15:"HIDE_EMPTY",16:"scale",17:"WIDTH",18:"COMPOSIT_STATE",19:"STRUCT_START",20:"STRUCT_STOP",21:"STATE_DESCR",22:"AS",23:"ID",24:"FORK",25:"JOIN",26:"CHOICE",27:"CONCURRENT",28:"note",30:"NOTE_TEXT",32:"acc_title",33:"acc_title_value",34:"acc_descr",35:"acc_descr_value",36:"acc_descr_multiline_value",37:"classDef",38:"CLASSDEF_ID",39:"CLASSDEF_STYLEOPTS",40:"DEFAULT",41:"class",42:"CLASSENTITY_IDS",43:"STYLECLASS",44:"direction_tb",45:"direction_bt",46:"direction_rl",47:"direction_lr",49:";",50:"EDGE_STATE",51:"STYLE_SEPARATOR",52:"left_of",53:"right_of"},productions_:[0,[3,2],[3,2],[3,2],[7,0],[7,2],[8,2],[8,1],[8,1],[9,1],[9,1],[9,1],[9,2],[9,3],[9,4],[9,1],[9,2],[9,1],[9,4],[9,3],[9,6],[9,1],[9,1],[9,1],[9,1],[9,4]
`+Xt.showPosition()+`
Expecting `+Nn.join(", ")+", got '"+(this.terminals_[we]||we)+"'":Bn="Parse error on line "+(ye+1)+": Unexpected "+(we==be?"end of input":"'"+(this.terminals_[we]||we)+"'"),this.parseError(Bn,{text:Xt.match,token:this.terminals_[we]||we,line:Xt.yylineno,loc:Mn,expected:Nn})}if(mi[0]instanceof Array&&mi.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Fi+", token: "+we);switch(mi[0]){case 1:kt.push(we),Fe.push(Xt.yytext),Mt.push(Xt.yylloc),kt.push(mi[1]),we=null,tn=Xt.yyleng,Ae=Xt.yytext,ye=Xt.yylineno,Mn=Xt.yylloc;break;case 2:if(br=this.productions_[mi[1]][1],Ss.$=Fe[Fe.length-br],Ss._$={first_line:Mt[Mt.length-(br||1)].first_line,last_line:Mt[Mt.length-1].last_line,first_column:Mt[Mt.length-(br||1)].first_column,last_column:Mt[Mt.length-1].last_column},ce&&(Ss._$.range=[Mt[Mt.length-(br||1)].range[0],Mt[Mt.length-1].range[1]]),ga=this.performAction.apply(Ss,[Ae,tn,ye,_e.yy,mi[1],Fe,Mt].concat(Ne)),typeof ga<"u")return ga;br&&(kt=kt.slice(0,-1*br*2),Fe=Fe.slice(0,-1*br),Mt=Mt.slice(0,-1*br)),kt.push(this.productions_[mi[1]][0]),Fe.push(Ss.$),Mt.push(Ss._$),An=pn[kt[kt.length-2]][kt[kt.length-1]],kt.push(An);break;case 3:return!0}}return!0}},It=function(){var xt={EOF:1,parseError:function(Ct,kt){if(this.yy.parser)this.yy.parser.parseError(Ct,kt);else throw new Error(Ct)},setInput:function(Ft,Ct){return this.yy=Ct||this.yy||{},this._input=Ft,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var Ft=this._input[0];this.yytext+=Ft,this.yyleng++,this.offset++,this.match+=Ft,this.matched+=Ft;var Ct=Ft.match(/(?:\r\n?|\n).*/g);return Ct?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),Ft},unput:function(Ft){var Ct=Ft.length,kt=Ft.split(/(?:\r\n?|\n)/g);this._input=Ft+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-Ct),this.offset-=Ct;var Gt=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),kt.length-1&&(this.yylineno-=kt.length-1);var Fe=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:kt?(kt.length===Gt.length?this.yylloc.first_column:0)+Gt[Gt.length-kt.length].length-kt[0].length:this.yylloc.first_column-Ct},this.options.ranges&&(this.yylloc.range=[Fe[0],Fe[0]+this.yyleng-Ct]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(Ft){this.unput(this.match.slice(Ft))},pastInput:function(){var Ft=this.matched.substr(0,this.matched.length-this.match.length);return(Ft.length>20?"...":"")+Ft.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var Ft=this.match;return Ft.length<20&&(Ft+=this._input.substr(0,20-Ft.length)),(Ft.substr(0,20)+(Ft.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var Ft=this.pastInput(),Ct=new Array(Ft.length+1).join("-");return Ft+this.upcomingInput()+`
`+Ct+"^"},test_match:function(Ft,Ct){var kt,Gt,Fe;if(this.options.backtrack_lexer&&(Fe={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(Fe.yylloc.range=this.yylloc.range.slice(0))),Gt=Ft[0].match(/(?:\r\n?|\n).*/g),Gt&&(this.yylineno+=Gt.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:Gt?Gt[Gt.length-1].length-Gt[Gt.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+Ft[0].length},this.yytext+=Ft[0],this.match+=Ft[0],this.matches=Ft,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(Ft[0].length),this.matched+=Ft[0],kt=this.performAction.call(this,this.yy,this,Ct,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),kt)return kt;if(this._backtrack){for(var Mt in Fe)this[Mt]=Fe[Mt];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var Ft,Ct,kt,Gt;this._more||(this.yytext="",this.match="");for(var Fe=this._currentRules(),Mt=0;Mt<Fe.length;Mt++)if(kt=this._input.match(this.rules[Fe[Mt]]),kt&&(!Ct||kt[0].length>Ct[0].length)){if(Ct=kt,Gt=Mt,this.options.backtrack_lexer){if(Ft=this.test_match(kt,Fe[Mt]),Ft!==!1)return Ft;if(this._backtrack){Ct=!1;continue}else return!1}else if(!this.options.flex)break}return Ct?(Ft=this.test_match(Ct,Fe[Gt]),Ft!==!1?Ft:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.
`+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var Ct=this.next();return Ct||this.lex()},begin:function(Ct){this.conditionStack.push(Ct)},popState:function(){var Ct=this.conditionStack.length-1;return Ct>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(Ct){return Ct=this.conditionStack.length-1-Math.abs(Ct||0),Ct>=0?this.conditionStack[Ct]:"INITIAL"},pushState:function(Ct){this.begin(Ct)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(Ct,kt,Gt,Fe){switch(Gt){case 0:return 40;case 1:return 44;case 2:return 45;case 3:return 46;case 4:return 47;case 5:break;case 6:break;case 7:return 5;case 8:break;case 9:break;case 10:break;case 11:break;case 12:return this.pushState("SCALE"),16;case 13:return 17;case 14:this.popState();break;case 15:return this.begin("acc_title"),32;case 16:return this.popState(),"acc_title_value";case 17:return this.begin("acc_descr"),34;case 18:return this.popState(),"acc_descr_value";case 19:this.begin("acc_descr_multiline");break;case 20:this.popState();break;case 21:return"acc_descr_multiline_value";case 22:return this.pushState("CLASSDEF"),37;case 23:return this.popState(),this.pushState("CLASSDEFID"),"DEFAULT_CLASSDEF_ID";case 24:return this.popState(),this.pushState("CLASSDEFID"),38;case 25:return this.popState(),39;case 26:return this.pushState("CLASS"),41;case 27:return this.popState(),this.pushState("CLASS_STYLE"),42;case 28:return this.popState(),43;case 29:return this.pushState("SCALE"),16;case 30:return 17;case 31:this.popState();break;case 32:this.pushState("STATE");break;case 33:return this.popState(),kt.yytext=kt.yytext.slice(0,-8).trim(),24;case 34:return this.popState(),kt.yytext=kt.yytext.slice(0,-8).trim(),25;case 35:return this.popState(),kt.yytext=kt.yytext.slice(0,-10).trim(),26;case 36:return this.popState(),kt.yytext=kt.yytext.slice(0,-8).trim(),24;case 37:return this.popState(),kt.yytext=kt.yytext.slice(0,-8).trim(),25;case 38:return this.popState(),kt.yytext=kt.yytext.slice(0,-10).trim(),26;case 39:return 44;case 40:return 45;case 41:return 46;case 42:return 47;case 43:this.pushState("STATE_STRING");break;case 44:return this.pushState("STATE_ID"),"AS";case 45:return this.popState(),"ID";case 46:this.popState();break;case 47:return"STATE_DESCR";case 48:return 18;case 49:this.popState();break;case 50:return this.popState(),this.pushState("struct"),19;case 51:break;case 52:return this.popState(),20;case 53:break;case 54:return this.begin("NOTE"),28;case 55:return this.popState(),this.pushState("NOTE_ID"),52;case 56:return this.popState(),this.pushState("NOTE_ID"),53;case 57:this.popState(),this.pushState("FLOATING_NOTE");break;case 58:return this.popState(),this.pushState("FLOATING_NOTE_ID"),"AS";case 59:break;case 60:return"NOTE_TEXT";case 61:return this.popState(),"ID";case 62:return this.popState(),this.pushState("NOTE_TEXT"),23;case 63:return this.popState(),kt.yytext=kt.yytext.substr(2).trim(),30;case 64:return this.popState(),kt.yytext=kt.yytext.slice(0,-8).trim(),30;case 65:return 6;case 66:return 6;case 67:return 15;case 68:return 50;case 69:return 23;case 70:return kt.yytext=kt.yytext.trim(),13;case 71:return 14;case 72:return 27;case 73:return 51;case 74:return 5;case 75:return"INVALID"}},rules:[/^(?:default\b)/i,/^(?:.*direction\s+TB[^\n]*)/i,/^(?:.*direction\s+BT[^\n]*)/i,/^(?:.*direction\s+RL[^\n]*)/i,/^(?:.*direction\s+LR[^\n]*)/i,/^(?:%%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[\n]+)/i,/^(?:[\s]+)/i,/^(?:((?!\n)\s)+)/i,/^(?:#[^\n]*)/i,/^(?:%[^\n]*)/i,/^(?:scale\s+)/i,/^(?:\d+)/i,/^(?:\s+width\b)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:classDef\s+)/i,/^(?:DEFAULT\s+)/i,/^(?:\w+\s+)/i,/^(?:[^\n]*)/i,/^(?:class\s+)/i,/^(?:
2022-11-03 00:28:15 +01:00
defs #statediagram-barbEnd {
2024-02-17 17:36:33 +01:00
fill: ${i.transitionColor};
stroke: ${i.transitionColor};
2022-11-03 00:28:15 +01:00
}
g.stateGroup text {
2024-02-17 17:36:33 +01:00
fill: ${i.nodeBorder};
2022-11-03 00:28:15 +01:00
stroke: none;
font-size: 10px;
}
g.stateGroup text {
2024-02-17 17:36:33 +01:00
fill: ${i.textColor};
2022-11-03 00:28:15 +01:00
stroke: none;
font-size: 10px;
}
g.stateGroup .state-title {
font-weight: bolder;
2024-02-17 17:36:33 +01:00
fill: ${i.stateLabelColor};
2022-11-03 00:28:15 +01:00
}
g.stateGroup rect {
2024-02-17 17:36:33 +01:00
fill: ${i.mainBkg};
stroke: ${i.nodeBorder};
2022-11-03 00:28:15 +01:00
}
g.stateGroup line {
2024-02-17 17:36:33 +01:00
stroke: ${i.lineColor};
2022-11-03 00:28:15 +01:00
stroke-width: 1;
}
.transition {
2024-02-17 17:36:33 +01:00
stroke: ${i.transitionColor};
2022-11-03 00:28:15 +01:00
stroke-width: 1;
fill: none;
}
.stateGroup .composit {
2024-02-17 17:36:33 +01:00
fill: ${i.background};
2022-11-03 00:28:15 +01:00
border-bottom: 1px
}
.stateGroup .alt-composit {
fill: #e0e0e0;
border-bottom: 1px
}
.state-note {
2024-02-17 17:36:33 +01:00
stroke: ${i.noteBorderColor};
fill: ${i.noteBkgColor};
2022-11-03 00:28:15 +01:00
text {
2024-02-17 17:36:33 +01:00
fill: ${i.noteTextColor};
2022-11-03 00:28:15 +01:00
stroke: none;
font-size: 10px;
}
}
.stateLabel .box {
stroke: none;
stroke-width: 0;
2024-02-17 17:36:33 +01:00
fill: ${i.mainBkg};
2022-11-03 00:28:15 +01:00
opacity: 0.5;
}
.edgeLabel .label rect {
2024-02-17 17:36:33 +01:00
fill: ${i.labelBackgroundColor};
2022-11-03 00:28:15 +01:00
opacity: 0.5;
}
.edgeLabel .label text {
2024-02-17 17:36:33 +01:00
fill: ${i.transitionLabelColor||i.tertiaryTextColor};
2022-11-03 00:28:15 +01:00
}
.label div .edgeLabel {
2024-02-17 17:36:33 +01:00
color: ${i.transitionLabelColor||i.tertiaryTextColor};
2022-11-03 00:28:15 +01:00
}
.stateLabel text {
2024-02-17 17:36:33 +01:00
fill: ${i.stateLabelColor};
2022-11-03 00:28:15 +01:00
font-size: 10px;
font-weight: bold;
}
.node circle.state-start {
2024-02-17 17:36:33 +01:00
fill: ${i.specialStateColor};
stroke: ${i.specialStateColor};
2022-11-03 00:28:15 +01:00
}
.node .fork-join {
2024-02-17 17:36:33 +01:00
fill: ${i.specialStateColor};
stroke: ${i.specialStateColor};
2022-11-03 00:28:15 +01:00
}
.node circle.state-end {
2024-02-17 17:36:33 +01:00
fill: ${i.innerEndBackground};
stroke: ${i.background};
2022-11-03 00:28:15 +01:00
stroke-width: 1.5
}
.end-state-inner {
2024-02-17 17:36:33 +01:00
fill: ${i.compositeBackground||i.background};
// stroke: ${i.background};
2022-11-03 00:28:15 +01:00
stroke-width: 1.5
}
.node rect {
2024-02-17 17:36:33 +01:00
fill: ${i.stateBkg||i.mainBkg};
stroke: ${i.stateBorder||i.nodeBorder};
2022-11-03 00:28:15 +01:00
stroke-width: 1px;
}
.node polygon {
2024-02-17 17:36:33 +01:00
fill: ${i.mainBkg};
stroke: ${i.stateBorder||i.nodeBorder};;
2022-11-03 00:28:15 +01:00
stroke-width: 1px;
}
#statediagram-barbEnd {
2024-02-17 17:36:33 +01:00
fill: ${i.lineColor};
2022-11-03 00:28:15 +01:00
}
.statediagram-cluster rect {
2024-02-17 17:36:33 +01:00
fill: ${i.compositeTitleBackground};
stroke: ${i.stateBorder||i.nodeBorder};
2022-11-03 00:28:15 +01:00
stroke-width: 1px;
}
.cluster-label, .nodeLabel {
2024-02-17 17:36:33 +01:00
color: ${i.stateLabelColor};
2022-11-03 00:28:15 +01:00
}
.statediagram-cluster rect.outer {
rx: 5px;
ry: 5px;
}
.statediagram-state .divider {
2024-02-17 17:36:33 +01:00
stroke: ${i.stateBorder||i.nodeBorder};
2022-11-03 00:28:15 +01:00
}
.statediagram-state .title-state {
rx: 5px;
ry: 5px;
}
.statediagram-cluster.statediagram-cluster .inner {
2024-02-17 17:36:33 +01:00
fill: ${i.compositeBackground||i.background};
2022-11-03 00:28:15 +01:00
}
.statediagram-cluster.statediagram-cluster-alt .inner {
2024-02-17 17:36:33 +01:00
fill: ${i.altBackground?i.altBackground:"#efefef"};
2022-11-03 00:28:15 +01:00
}
.statediagram-cluster .inner {
rx:0;
ry:0;
}
.statediagram-state rect.basic {
rx: 5px;
ry: 5px;
}
.statediagram-state rect.divider {
stroke-dasharray: 10,10;
2024-02-17 17:36:33 +01:00
fill: ${i.altBackground?i.altBackground:"#efefef"};
2022-11-03 00:28:15 +01:00
}
.note-edge {
stroke-dasharray: 5;
}
.statediagram-note rect {
2024-02-17 17:36:33 +01:00
fill: ${i.noteBkgColor};
stroke: ${i.noteBorderColor};
2022-11-03 00:28:15 +01:00
stroke-width: 1px;
rx: 0;
ry: 0;
}
.statediagram-note rect {
2024-02-17 17:36:33 +01:00
fill: ${i.noteBkgColor};
stroke: ${i.noteBorderColor};
2022-11-03 00:28:15 +01:00
stroke-width: 1px;
rx: 0;
ry: 0;
}
.statediagram-note text {
2024-02-17 17:36:33 +01:00
fill: ${i.noteTextColor};
2022-11-03 00:28:15 +01:00
}
.statediagram-note .nodeLabel {
2024-02-17 17:36:33 +01:00
color: ${i.noteTextColor};
2022-11-03 00:28:15 +01:00
}
.statediagram .edgeLabel {
2024-02-17 17:36:33 +01:00
color: red; // ${i.noteTextColor};
2022-11-03 00:28:15 +01:00
}
#dependencyStart, #dependencyEnd {
2024-02-17 17:36:33 +01:00
fill: ${i.lineColor};
stroke: ${i.lineColor};
2022-11-03 00:28:15 +01:00
stroke-width: 1;
}
2024-02-17 17:36:33 +01:00
.statediagramTitleText {
text-anchor: middle;
font-size: 18px;
fill: ${i.textColor};
}
`,t2t={},fZe=(i,a)=>{t2t[i]=a},dZe=i=>t2t[i],rHt=()=>Object.keys(t2t),gZe={get:dZe,set:fZe,keys:rHt,size:()=>rHt().length},pZe=i=>i.append("circle").attr("class","start-state").attr("r",Re().state.sizeUnit).attr("cx",Re().state.padding+Re().state.sizeUnit).attr("cy",Re().state.padding+Re().state.sizeUnit),bZe=i=>i.append("line").style("stroke","grey").style("stroke-dasharray","3").attr("x1",Re().state.textHeight).attr("class","divider").attr("x2",Re().state.textHeight*2).attr("y1",0).attr("y2",0),wZe=(i,a)=>{const f=i.append("text").attr("x",2*Re().state.padding).attr("y",Re().state.textHeight+2*Re().state.padding).attr("font-size",Re().state.fontSize).attr("class","state-title").text(a.id),g=f.node().getBBox();return i.insert("rect",":first-child").attr("x",Re().state.padding).attr("y",Re().state.padding).attr("width",g.width+2*Re().state.padding).attr("height",g.height+2*Re().state.padding).attr("rx",Re().state.radius),f},mZe=(i,a)=>{const f=function(R,B,z){const Y=R.append("tspan").attr("x",2*Re().state.padding).text(B);z||Y.attr("dy",Re().state.textHeight)},w=i.append("text").attr("x",2*Re().state.padding).attr("y",Re().state.textHeight+1.3*Re().state.padding).attr("font-size",Re().state.fontSize).attr("class","state-title").text(a.descriptions[0]).node().getBBox(),v=w.height,b=i.append("text").attr("x",Re().state.padding).attr("y",v+Re().state.padding*.4+Re().state.dividerMargin+Re().state.textHeight).attr("class","state-description");let E=!0,S=!0;a.descriptions.forEach(function(R){E||(f(b,R,S),S=!1),E=!1});const _=i.append("line").attr("x1",Re().state.padding).attr("y1",Re().state.padding+v+Re().state.dividerMargin/2).attr("y2",Re().state.padding+v+Re().state.dividerMargin/2).attr("class","descr-divider"),M=b.node().getBBox(),F=Math.max(M.width,w.width);return _.attr("x2",F+3*Re().state.padding),i.insert("rect",":first-child").attr("x",Re().state.padding).attr("y",Re().state.padding).attr("width",F+2*Re().state.padding).attr("height",M.height+v+2*Re().state.padding).attr("rx",Re().state.radius),i},vZe=(i,a,f)=>{const g=Re().state.padding,w=2*Re().state.padding,v=i.node().getBBox(),b=v.width,E=v.x,S=i.append("text").attr("x",0).attr("y",Re().state.titleShift).attr("font-size",Re().state.fontSize).attr("class","state-title").text(a.id),M=S.node().getBBox().width+w;let F=Math.max(M,b);F===b&&(F=F+w);let R;const B=i.node().getBBox();a.doc,R=E-g,M>b&&(R=(b-F)/2+g),Math.abs(E-B.x)<g&&M>b&&(R=E-(M-b)/2);const z=1-Re().state.textHeight;return i.insert("rect",":first-child").attr("x",R).attr("y",z).attr("class",f?"alt-composit":"composit").attr("width",F).attr("height",B.height+Re().state.textHeight+Re().state.titleShift+1).attr("rx","0"),S.attr("x",R+g),M<=b&&S.attr("x",E+(F-w)/2-M/2+g),i.insert("rect",":first-child").attr("x",R).attr("y",Re().state.titleShift-Re().state.textHeight-Re().state.padding).attr("width",F).attr("height",Re().state.textHeight*3).attr("rx",Re().state.radius),i.insert("rect",":first-child").attr("x",R).attr("y",Re().state.titleShift-Re().state.textHeight-Re().state.padding).attr("width",F).attr("height",B.height+3+2*Re().state.textHeight).attr("rx",Re().state.radius),i},yZe=i=>(i.append("circle").attr("class","end-state-outer").attr("r",Re().state.sizeUnit+Re().state.miniPadding).attr("cx",Re().state.padding+Re().state.sizeUnit+Re().state.miniPadding).attr("cy",Re().state.padding+Re().state.sizeUnit+Re().state.miniPadding),i.append("circle").attr("class","end-state-inner").attr("r",Re().state.sizeUnit).attr("cx",Re().state.padding+Re().state.sizeUnit+2).attr("cy",Re().state.padding+Re().state.sizeUnit+2)),xZe=(i,a)=>{let f=Re().state.forkWidth,g=Re().state.forkHeight;if(a.parentId){let w=f;f=g,g=w}return i.append("rect").style("stroke","black").style("fill","black").attr("width",f).attr("height",g).attr("x",Re().state.padding).attr("y",Re().state.padding)},kZe=(i,a,f,g)=>{let w=0;const v=g.append("text");v.style("text-anchor","start"),v.attr("class","noteText");let b=i.replace(/\r\n/g,"<br/>");b=b.replace(/\n/g,"<br/>");const E=b.split(ei.lineBreakRegex);let S=1.25*Re().state.noteMargin;for(const
`+Q.showPosition()+`
Expecting `+Mt.join(", ")+", got '"+(this.terminals_[It]||It)+"'":pn="Parse error on line "+(mt+1)+": Unexpected "+(It==it?"end of input":"'"+(this.terminals_[It]||It)+"'"),this.parseError(pn,{text:Q.match,token:this.terminals_[It]||It,line:Q.yylineno,loc:yt,expected:Mt})}if(xt[0]instanceof Array&&xt.length>1)throw new Error("Parse Error: multiple actions possible at state: "+jt+", token: "+It);switch(xt[0]){case 1:z.push(It),nt.push(Q.yytext),ot.push(Q.yylloc),z.push(xt[1]),It=null,ct=Q.yyleng,wt=Q.yytext,mt=Q.yylineno,yt=Q.yylloc;break;case 2:if(Gt=this.productions_[xt[1]][1],Ct.$=nt[nt.length-Gt],Ct._$={first_line:ot[ot.length-(Gt||1)].first_line,last_line:ot[ot.length-1].last_line,first_column:ot[ot.length-(Gt||1)].first_column,last_column:ot[ot.length-1].last_column},V&&(Ct._$.range=[ot[ot.length-(Gt||1)].range[0],ot[ot.length-1].range[1]]),Ft=this.performAction.apply(Ct,[wt,ct,mt,dt.yy,xt[1],nt,ot].concat(gt)),typeof Ft<"u")return Ft;Gt&&(z=z.slice(0,-1*Gt*2),nt=nt.slice(0,-1*Gt),ot=ot.slice(0,-1*Gt)),z.push(this.productions_[xt[1]][0]),nt.push(Ct.$),ot.push(Ct._$),Fe=ft[z[z.length-2]][z[z.length-1]],z.push(Fe);break;case 3:return!0}}return!0}},_=function(){var F={EOF:1,parseError:function(B,z){if(this.yy.parser)this.yy.parser.parseError(B,z);else throw new Error(B)},setInput:function(R,B){return this.yy=B||this.yy||{},this._input=R,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var R=this._input[0];this.yytext+=R,this.yyleng++,this.offset++,this.match+=R,this.matched+=R;var B=R.match(/(?:\r\n?|\n).*/g);return B?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),R},unput:function(R){var B=R.length,z=R.split(/(?:\r\n?|\n)/g);this._input=R+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-B),this.offset-=B;var Y=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),z.length-1&&(this.yylineno-=z.length-1);var nt=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:z?(z.length===Y.length?this.yylloc.first_column:0)+Y[Y.length-z.length].length-z[0].length:this.yylloc.first_column-B},this.options.ranges&&(this.yylloc.range=[nt[0],nt[0]+this.yyleng-B]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(R){this.unput(this.match.slice(R))},pastInput:function(){var R=this.matched.substr(0,this.matched.length-this.match.length);return(R.length>20?"...":"")+R.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var R=this.match;return R.length<20&&(R+=this._input.substr(0,20-R.length)),(R.substr(0,20)+(R.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var R=this.pastInput(),B=new Array(R.length+1).join("-");return R+this.upcomingInput()+`
`+B+"^"},test_match:function(R,B){var z,Y,nt;if(this.options.backtrack_lexer&&(nt={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(nt.yylloc.range=this.yylloc.range.slice(0))),Y=R[0].match(/(?:\r\n?|\n).*/g),Y&&(this.yylineno+=Y.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:Y?Y[Y.length-1].length-Y[Y.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+R[0].length},this.yytext+=R[0],this.match+=R[0],this.matches=R,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(R[0].length),this.matched+=R[0],z=this.performAction.call(this,this.yy,this,B,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),z)return z;if(this._backtrack){for(var ot in nt)this[ot]=nt[ot];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var R,B,z,Y;this._more||(this.yytext="",this.match="");for(var nt=this._currentRules(),ot=0;ot<nt.length;ot++)if(z=this._input.match(this.rules[nt[ot]]),z&&(!B||z[0].length>B[0].length)){if(B=z,Y=ot,this.options.backtrack_lexer){if(R=this.test_match(z,nt[ot]),R!==!1)return R;if(this._backtrack){B=!1;continue}else return!1}else if(!this.options.flex)break}return B?(R=this.test_match(B,nt[Y]),R!==!1?R:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.
`+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var B=this.next();return B||this.lex()},begin:function(B){this.conditionStack.push(B)},popState:function(){var B=this.conditionStack.length-1;return B>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(B){return B=this.conditionStack.length-1-Math.abs(B||0),B>=0?this.conditionStack[B]:"INITIAL"},pushState:function(B){this.begin(B)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(B,z,Y,nt){switch(Y){case 0:break;case 1:break;case 2:return 10;case 3:break;case 4:break;case 5:return 4;case 6:return 11;case 7:return this.begin("acc_title"),12;case 8:return this.popState(),"acc_title_value";case 9:return this.begin("acc_descr"),14;case 10:return this.popState(),"acc_descr_value";case 11:this.begin("acc_descr_multiline");break;case 12:this.popState();break;case 13:return"acc_descr_multiline_value";case 14:return 17;case 15:return 18;case 16:return 19;case 17:return":";case 18:return 6;case 19:return"INVALID"}},rules:[/^(?:%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?:#[^\n]*)/i,/^(?:journey\b)/i,/^(?:title\s[^#\n;]+)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:section\s[^#:\n;]+)/i,/^(?:[^#:\n;]+)/i,/^(?::[^#\n;]+)/i,/^(?::)/i,/^(?:$)/i,/^(?:.)/i],conditions:{acc_descr_multiline:{rules:[12,13],inclusive:!1},acc_descr:{rules:[10],inclusive:!1},acc_title:{rules:[8],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,7,9,11,14,15,16,17,18,19],inclusive:!0}}};return F}();S.lexer=_;function M(){this.yy={}}return M.prototype=S,S.Parser=M,new M}();a2t.parser=a2t;const YZe=a2t;let OD="";const o2t=[],CB=[],SB=[],XZe=function(){o2t.length=0,CB.length=0,OD="",SB.length=0,ag()},QZe=function(i){OD=i,o2t.push(i)},JZe=function(){return o2t},ZZe=function(){let i=bHt();const a=100;let f=0;for(;!i&&f<a;)i=bHt(),f++;return CB.push(...SB),CB},ttn=function(){const i=[];return CB.forEach(f=>{f.people&&i.push(...f.people)}),[...new Set(i)].sort()},etn=function(i,a){const f=a.substr(1).split(":");let g=0,w=[];f.length===1?(g=Number(f[0]),w=[]):(g=Number(f[0]),w=f[1].split(","));const v=w.map(E=>E.trim()),b={section:OD,type:OD,people:v,task:i,score:g};SB.push(b)},ntn=function(i){const a={section:OD,type:OD,description:i,task:i,classes:[]};CB.push(a)},bHt=function(){const i=function(f){return SB[f].processed};let a=!0;for(const[f,g]of SB.entries())i(f),a=a&&g.processed;return a},wHt={getConfig:()=>Re().journey,clear:XZe,setDiagramTitle:S2,getDiagramTitle:Zg,setAccTitle:og,getAccTitle:Xg,setAccDescription:Qg,getAccDescription:Jg,addSection:QZe,getSections:JZe,getTasks:ZZe,addTask:etn,addTaskOrg:ntn,getActors:function(){return ttn()}},rtn=i=>`.label {
2022-11-03 00:28:15 +01:00
font-family: 'trebuchet ms', verdana, arial, sans-serif;
font-family: var(--mermaid-font-family);
2024-02-17 17:36:33 +01:00
color: ${i.textColor};
2022-11-03 00:28:15 +01:00
}
.mouth {
stroke: #666;
}
line {
2024-02-17 17:36:33 +01:00
stroke: ${i.textColor}
2022-11-03 00:28:15 +01:00
}
.legend {
2024-02-17 17:36:33 +01:00
fill: ${i.textColor};
2022-11-03 00:28:15 +01:00
}
.label text {
fill: #333;
}
.label {
2024-02-17 17:36:33 +01:00
color: ${i.textColor}
2022-11-03 00:28:15 +01:00
}
.face {
2024-02-17 17:36:33 +01:00
${i.faceColor?`fill: ${i.faceColor}`:"fill: #FFF8DC"};
2022-11-03 00:28:15 +01:00
stroke: #999;
}
.node rect,
.node circle,
.node ellipse,
.node polygon,
.node path {
2024-02-17 17:36:33 +01:00
fill: ${i.mainBkg};
stroke: ${i.nodeBorder};
2022-11-03 00:28:15 +01:00
stroke-width: 1px;
}
.node .label {
text-align: center;
}
.node.clickable {
cursor: pointer;
}
.arrowheadPath {
2024-02-17 17:36:33 +01:00
fill: ${i.arrowheadColor};
2022-11-03 00:28:15 +01:00
}
.edgePath .path {
2024-02-17 17:36:33 +01:00
stroke: ${i.lineColor};
2022-11-03 00:28:15 +01:00
stroke-width: 1.5px;
}
.flowchart-link {
2024-02-17 17:36:33 +01:00
stroke: ${i.lineColor};
2022-11-03 00:28:15 +01:00
fill: none;
}
.edgeLabel {
2024-02-17 17:36:33 +01:00
background-color: ${i.edgeLabelBackground};
2022-11-03 00:28:15 +01:00
rect {
opacity: 0.5;
}
text-align: center;
}
.cluster rect {
}
.cluster text {
2024-02-17 17:36:33 +01:00
fill: ${i.titleColor};
2022-11-03 00:28:15 +01:00
}
div.mermaidTooltip {
position: absolute;
text-align: center;
max-width: 200px;
padding: 2px;
font-family: 'trebuchet ms', verdana, arial, sans-serif;
font-family: var(--mermaid-font-family);
font-size: 12px;
2024-02-17 17:36:33 +01:00
background: ${i.tertiaryColor};
border: 1px solid ${i.border2};
2022-11-03 00:28:15 +01:00
border-radius: 2px;
pointer-events: none;
z-index: 100;
}
.task-type-0, .section-type-0 {
2024-02-17 17:36:33 +01:00
${i.fillType0?`fill: ${i.fillType0}`:""};
2022-11-03 00:28:15 +01:00
}
.task-type-1, .section-type-1 {
2024-02-17 17:36:33 +01:00
${i.fillType0?`fill: ${i.fillType1}`:""};
2022-11-03 00:28:15 +01:00
}
.task-type-2, .section-type-2 {
2024-02-17 17:36:33 +01:00
${i.fillType0?`fill: ${i.fillType2}`:""};
2022-11-03 00:28:15 +01:00
}
.task-type-3, .section-type-3 {
2024-02-17 17:36:33 +01:00
${i.fillType0?`fill: ${i.fillType3}`:""};
2022-11-03 00:28:15 +01:00
}
.task-type-4, .section-type-4 {
2024-02-17 17:36:33 +01:00
${i.fillType0?`fill: ${i.fillType4}`:""};
2022-11-03 00:28:15 +01:00
}
.task-type-5, .section-type-5 {
2024-02-17 17:36:33 +01:00
${i.fillType0?`fill: ${i.fillType5}`:""};
2022-11-03 00:28:15 +01:00
}
.task-type-6, .section-type-6 {
2024-02-17 17:36:33 +01:00
${i.fillType0?`fill: ${i.fillType6}`:""};
2022-11-03 00:28:15 +01:00
}
.task-type-7, .section-type-7 {
2024-02-17 17:36:33 +01:00
${i.fillType0?`fill: ${i.fillType7}`:""};
2022-11-03 00:28:15 +01:00
}
.actor-0 {
2024-02-17 17:36:33 +01:00
${i.actor0?`fill: ${i.actor0}`:""};
2022-11-03 00:28:15 +01:00
}
.actor-1 {
2024-02-17 17:36:33 +01:00
${i.actor1?`fill: ${i.actor1}`:""};
2022-11-03 00:28:15 +01:00
}
.actor-2 {
2024-02-17 17:36:33 +01:00
${i.actor2?`fill: ${i.actor2}`:""};
2022-11-03 00:28:15 +01:00
}
.actor-3 {
2024-02-17 17:36:33 +01:00
${i.actor3?`fill: ${i.actor3}`:""};
2022-11-03 00:28:15 +01:00
}
.actor-4 {
2024-02-17 17:36:33 +01:00
${i.actor4?`fill: ${i.actor4}`:""};
2022-11-03 00:28:15 +01:00
}
.actor-5 {
2024-02-17 17:36:33 +01:00
${i.actor5?`fill: ${i.actor5}`:""};
}
`,c2t=function(i,a){return LY(i,a)},itn=function(i,a){const g=i.append("circle").attr("cx",a.cx).attr("cy",a.cy).attr("class","face").attr("r",15).attr("stroke-width",2).attr("overflow","visible"),w=i.append("g");w.append("circle").attr("cx",a.cx-15/3).attr("cy",a.cy-15/3).attr("r",1.5).attr("stroke-width",2).attr("fill","#666").attr("stroke","#666"),w.append("circle").attr("cx",a.cx+15/3).attr("cy",a.cy-15/3).attr("r",1.5).attr("stroke-width",2).attr("fill","#666").attr("stroke","#666");function v(S){const _=YL().startAngle(Math.PI/2).endAngle(3*(Math.PI/2)).innerRadius(7.5).outerRadius(6.8181818181818175);S.append("path").attr("class","mouth").attr("d",_).attr("transform","translate("+a.cx+","+(a.cy+2)+")")}function b(S){const _=YL().startAngle(3*Math.PI/2).endAngle(5*(Math.PI/2)).innerRadius(7.5).outerRadius(6.8181818181818175);S.append("path").attr("class","mouth").attr("d",_).attr("transform","translate("+a.cx+","+(a.cy+7)+")")}function E(S){S.append("line").attr("class","mouth").attr("stroke",2).attr("x1",a.cx-5).attr("y1",a.cy+7).attr("x2",a.cx+5).attr("y2",a.cy+7).attr("class","mouth").attr("stroke-width","1px").attr("stroke","#666")}return a.score>3?v(w):a.score<3?b(w):E(w),g},mHt=function(i,a){const f=i.append("circle");return f.attr("cx",a.cx),f.attr("cy",a.cy),f.attr("class","actor-"+a.pos),f.attr("fill",a.fill),f.attr("stroke",a.stroke),f.attr("r",a.r),f.class!==void 0&&f.attr("class",f.class),a.title!==void 0&&f.append("title").text(a.title),f},vHt=function(i,a){return URe(i,a)},stn=function(i,a){function f(w,v,b,E,S){return w+","+v+" "+(w+b)+","+v+" "+(w+b)+","+(v+E-S)+" "+(w+b-S*1.2)+","+(v+E)+" "+w+","+(v+E)}const g=i.append("polygon");g.attr("points",f(a.x,a.y,50,20,7)),g.attr("class","labelBox"),a.y=a.y+a.labelMargin,a.x=a.x+.5*a.labelMargin,vHt(i,a)},atn=function(i,a,f){const g=i.append("g"),w=_9();w.x=a.x,w.y=a.y,w.fill=a.fill,w.width=f.width*a.taskCount+f.diagramMarginX*(a.taskCount-1),w.height=f.height,w.class="journey-section section-type-"+a.num,w.rx=3,w.ry=3,c2t(g,w),xHt(f)(a.text,g,w.x,w.y,w.width,w.height,{class:"journey-section section-type-"+a.num},f,a.colour)};let yHt=-1;const otn=function(i,a,f){const g=a.x+f.width/2,w=i.append("g");yHt++;const v=300+5*30;w.append("line").attr("id","task"+yHt).attr("x1",g).attr("y1",a.y).attr("x2",g).attr("y2",v).attr("class","task-line").attr("stroke-width","1px").attr("stroke-dasharray","4 2").attr("stroke","#666"),itn(w,{cx:g,cy:300+(5-a.score)*30,score:a.score});const b=_9();b.x=a.x,b.y=a.y,b.fill=a.fill,b.width=f.width,b.height=f.height,b.class="task task-type-"+a.num,b.rx=3,b.ry=3,c2t(w,b);let E=a.x+14;a.people.forEach(S=>{const _=a.actors[S].color,M={cx:E,cy:a.y,r:7,fill:_,stroke:"#000",title:S,pos:a.actors[S].position};mHt(w,M),E+=10}),xHt(f)(a.task,w,b.x,b.y,b.width,b.height,{class:"task"},f,a.colour)},ctn=function(i,a){sRt(i,a)},xHt=function(){function i(w,v,b,E,S,_,M,F){const R=v.append("text").attr("x",b+S/2).attr("y",E+_/2+5).style("font-color",F).style("text-anchor","middle").text(w);g(R,M)}function a(w,v,b,E,S,_,M,F,R){const{taskFontSize:B,taskFontFamily:z}=F,Y=w.split(/<br\s*\/?>/gi);for(let nt=0;nt<Y.length;nt++){const ot=nt*B-B*(Y.length-1)/2,ft=v.append("text").attr("x",b+S/2).attr("y",E).attr("fill",R).style("text-anchor","middle").style("font-size",B).style("font-family",z);ft.append("tspan").attr("x",b+S/2).attr("dy",ot).text(Y[nt]),ft.attr("y",E+_/2).attr("dominant-baseline","central").attr("alignment-baseline","central"),g(ft,M)}}function f(w,v,b,E,S,_,M,F){const R=v.append("switch"),z=R.append("foreignObject").attr("x",b).attr("y",E).attr("width",S).attr("height",_).attr("position","fixed").append("xhtml:div").style("display","table").style("height","100%").style("width","100%");z.append("div").attr("class","label").style("display","table-cell").style("text-align","center").style("vertical-align","middle").text(w),a(w,R,b,E,S,_,M,F),g(z,M)}function g(w,v){for(const b in v)b in v&&w.attr(b,v[b])}return function(w){return w.textPlacement==="fo"?f:w.textPlacement==="old"?i:a}}(),_B={drawRect:c2t,drawCircle:mHt,drawSection:atn,drawTex
`,Hu(Va(t,e[0])))>=0;)++e[0]}function $0n(t,e){Su(t,e==null||bz((Wn(e),e))||isNaN((Wn(e),e))?0:(Wn(e),e))}function z0n(t,e){_u(t,e==null||bz((Wn(e),e))||isNaN((Wn(e),e))?0:(Wn(e),e))}function q0n(t,e){qm(t,e==null||bz((Wn(e),e))||isNaN((Wn(e),e))?0:(Wn(e),e))}function H0n(t,e){zm(t,e==null||bz((Wn(e),e))||isNaN((Wn(e),e))?0:(Wn(e),e))}function V0n(t,e,n){return R6(new ae(n.e.a+n.f.a/2,n.e.b+n.f.b/2),t)==(Wn(e),e)}function U0n(t,e){return Lt(e,102)&&u(e,19).Bb&po?new Krt(e,t):new o7(e,t)}function G0n(t,e){return Lt(e,102)&&u(e,19).Bb&po?new Krt(e,t):new o7(e,t)}function WI(t){return t.__elementTypeCategory$==null?10:t.__elementTypeCategory$}function Nae(t,e){return e==(bit(),bit(),oye)?t.toLocaleLowerCase():t.toLowerCase()}function Pae(t){if(!t.e)throw at(new cc);return t.c=t.a=t.e,t.e=t.e.e,--t.d,t.a.f}function s4t(t){if(!t.c)throw at(new cc);return t.e=t.a=t.c,t.c=t.c.c,++t.d,t.a.f}function Fae(t){var e;for(++t.a,e=t.c.a.length;t.a<e;++t.a)if(t.c.b[t.a])return}function K0n(t){var e,n;if(t.a){n=null;do e=t.a,t.a=null,n=Gfe(e,n);while(t.a);t.a=n}}function W0n(t){var e,n;if(t.b){n=null;do e=t.b,t.b=null,n=Gfe(e,n);while(t.b);t.b=n}}function Y0n(t,e){var n;for(n=0;t.e!=t.i.gc();)vun(e,ar(t),he(n)),n!=xi&&++n}function X0n(t,e){var n;return n=Wm(t.e.c,e.e.c),n==0?Bi(t.e.d,e.e.d):n}function Q0n(t,e){var n,r;for(r=e.c,n=r+1;n<=e.f;n++)t.a[n]>t.a[r]&&(r=n);return r}function Bae(t){var e;return e=u(X(t,(oe(),vv)),313),e?e.a==t:!1}function Rae(t){var e;return e=u(X(t,(oe(),vv)),313),e?e.i==t:!1}function jae(){jae=V,e4e=$r((Ua(),lt(ut(SCt,1),te,367,0,[Wf,H0,Qc,cu,Zo])))}function $ae(){$ae=V,R4e=$r((Qy(),lt(ut(B4e,1),te,375,0,[XN,mG,vG,wG,bG])))}function zae(){zae=V,Y4e=$r((Ip(),lt(ut(LSt,1),te,348,0,[Dft,ASt,Mft,ST,CT])))}function qae(){qae=V,P6e=$r((w_(),lt(ut(MAt,1),te,323,0,[DAt,y1t,x1t,zA,qA])))}function Hae(){Hae=V,c5e=$r((Rh(),lt(ut(a_t,1),te,171,0,[rP,OA,s2,NA,S3])))}function Vae(){Vae=V,E8e=$r((zH(),lt(ut(k8e,1),te,368,0,[Q1t,W1t,J1t,Y1t,X1t])))}function Uae(){Uae=V,EEe=$r((A_(),lt(ut(kEe,1),te,373,0,[rx,Xk,aL,sL,xP])))}function Gae(){Gae=V,LEe=$r((DO(),lt(ut(BDt,1),te,324,0,[NDt,ydt,FDt,xdt,PDt])))}function Kae(){Kae=V,S7e=$r((Rs(),lt(ut(gL,1),te,88,0,[Ed,tc,Uo,kd,Gh])))}function Wae(){Wae=V,JEe=$r((D1(),lt(ut(G0,1),te,170,0,[_n,Qs,f0,Bw,Wp])))}function Yae(){Yae=V,P7e=$r((o5(),lt(ut(mL,1),te,256,0,[f2,PP,uIt,wL,lIt])))}function Xae(){Xae=V,R7e=$r((ve(),lt(ut(bo,1),qc,64,0,[bc,Hn,Jn,Er,Gn])))}function Mq(){Mq=V,P9t=new zwt("BY_SIZE",0),qht=new zwt("BY_SIZE_AND_SHAPE",1)}function Iq(){Iq=V,Zht=new Vwt("EADES",0),UU=new Vwt("FRUCHTERMAN_REINGOLD",1)}function YI(){YI=V,xG=new Wwt("READING_DIRECTION",0),DSt=new Wwt("ROTATION",1)}function YS(){YS=V,u4e=new BD,l4e=new $X,o4e=new P2,c4e=new Gc,h4e=new zX}function Qae(t){this.b=new fe,this.a=new fe,this.c=new fe,this.d=new fe,this.e=t}function Jae(t){this.g=t,this.f=new fe,this.a=b.Math.min(this.g.c.c,this.g.d.c)}function Zae(t,e,n){gz.call(this),c4t(this),this.a=t,this.c=n,this.b=e.d,this.f=e.e}function J0n(t,e,n){var r,s;for(s=new G(n);s.a<s.c.c.length;)r=et(s),Gxt(t,e,r)}function _1(t,e,n){var r;if(e==null)throw at(new E6);return r=vg(t,e),hdn(t,e,n),r}function Xst(t,e){var n;return n=u(tr(t.a,e),137),n||(n=new As,hi(t.a,e,n)),n}function En(t,e){var n;return n=(t.i==null&&Qd(t),t.i),e>=0&&e<n.length?n[e]:null}function Z0n(t,e){var n;return n=e>0?e-1:e,NWt(Crn(Eoe(Yvt(new S6,n),t.n),t.j),t.k)}function zo(t){var e,n;n=(e=new Vnt,e),Or((!t.q&&(t.q=new Jt(vf,t,11,10)),t.q),n)}function a4t(t){return(t.i&2?"interface ":t.i&1?"":"class ")+(wg(t),t.o)}function Oq(t){return $c(t,xi)>0?xi:$c(t,Ga)<0?Ga:qr(t)}function zy(t){return t<3?(oh(t,pbe),t+1):t<z_?Ys(t/.75+1):xi}function toe(t,e){return Wn(e),wyt(t),t.d.Ob()?(e.Cd(t.d.Pb()),!0):!1}function tgn(t,e){var n,r;return n=u(Gy(t.d,e),16),n?(r=e,t.e.pc(r,n)):null}function egn(t,e,n,r){var s;t.j=-1,P6t(t,g6t(t,e,n),(vo(),s=u(e,69).vk(),s.xl(r)))}function ngn(t,e){return ak(),-jc(u(X(t,(Cc(),tx)),17).a,u(X(e,tx),17).a)}function eoe(t,e){return!!ZS(t,e,qr(Ja(B0,L0(qr(Ja(e==null?0:$i(e),R0)),15))))}function rgn(){return O7(),lt(ut(GK,1),te,2
`)}return e&&(e.stack||n(t[zct]))}function $5t(t,e){switch(e){case 3:return t.f!=0;case 4:return t.g!=0;case 5:return t.i!=0;case 6:return t.j!=0}return $4t(t,e)}function nle(t){switch(t.g){case 0:return new ktt;case 1:return new bu;default:throw at(new zn(jut+(t.f!=null?t.f:""+t.g)))}}function nwn(t){switch(t.g){case 0:return new lC;case 1:return new yc;default:throw at(new zn(Clt+(t.f!=null?t.f:""+t.g)))}}function rwn(t){switch(t.g){case 1:return new btt;case 2:return new qJt;default:throw at(new zn(Clt+(t.f!=null?t.f:""+t.g)))}}function rle(t){switch(t.g){case 0:return new nwt;case 1:return new RKt;default:throw at(new zn(cU+(t.f!=null?t.f:""+t.g)))}}function Kat(){Qxt();var t,e,n;n=t_n+++Date.now(),t=Ys(b.Math.floor(n*lN))&TV,e=Ys(n-t*y8t),this.a=t^1502,this.b=e^dut}function Rh(){Rh=V,rP=new UM(r0,0),OA=new UM("FIRST",1),s2=new UM(C2e,2),NA=new UM("LAST",3),S3=new UM(S2e,4)}function pH(){pH=V,Wdt=new W$(y7t,0),mIt=new W$("GROUP_DEC",1),yIt=new W$("GROUP_MIXED",2),vIt=new W$("GROUP_INC",3)}function iwn(t,e){var n,r,s,o;e&&(s=_g(e,"x"),n=new PGt(t),QE(n.a,(Wn(s),s)),o=_g(e,"y"),r=new BGt(t),ZE(r.a,(Wn(o),o)))}function swn(t,e){var n,r,s,o;e&&(s=_g(e,"x"),n=new jGt(t),XE(n.a,(Wn(s),s)),o=_g(e,"y"),r=new $Gt(t),JE(r.a,(Wn(o),o)))}function awn(t,e){var n,r,s,o;for(s=new wu(e.gc()),r=e.Kc();r.Ob();)n=r.Pb(),o=lct(t,u(n,58)),o&&In(s.c,o);return s}function Ky(t,e,n){var r,s;for(s=t.Kc();s.Ob();)if(r=s.Pb(),$t(e)===$t(r)||e!=null&&Ti(e,r))return n&&s.Qb(),!0;return!1}function ile(t){var e,n,r;return n=t.jh(),n?(e=t.Eh(),Lt(e,167)&&(r=ile(u(e,167)),r!=null)?r+"."+n:n):null}function own(t){var e,n,r;return t.e==0?0:(e=t.d<<5,n=t.a[t.d-1],t.e<0&&(r=uce(t),r==t.d-1&&(--n,n=n|0)),e-=BO(n),e)}function cwn(t){var e,n,r;return t<PU.length?PU[t]:(n=t>>5,e=t&31,r=Vt(Fr,ii,28,n+1,15,1),r[n]=1<<e,new Y2(1,n+1,r))}function sle(t,e){var n,r;if(e){for(n=0;n<t.i;++n)if(r=u(t.g[n],378),r.mj(e))return!1;return Or(t,e)}else return!1}function z5t(t,e,n){var r,s;if(++t.j,n.dc())return!1;for(s=n.Kc();s.Ob();)r=s.Pb(),t.qj(e,t.Zi(e,r)),++e;return!0}function uwn(t,e,n,r){var s,o;if(o=n-e,o<3)for(;o<3;)t*=10,++o;else{for(s=1;o>3;)s*=10,--o;t=(t+(s>>1))/s|0}return r.i=t,!0}function ns(t,e){var n,r,s;if(n=(t.i==null&&Qd(t),t.i),r=e.Lj(),r!=-1){for(s=n.length;r<s;++r)if(n[r]==e)return r}return-1}function lwn(t){var e,n,r,s,o;for(n=u(t.g,689),r=t.i-1;r>=0;--r)for(e=n[r],s=0;s<r;++s)if(o=n[s],fge(t,e,o)){pk(t,r);break}}function q5t(t){var e,n,r,s;for(e=new cp,s=new eo(t.b.Kc());s.b.Ob();)r=u(s.b.Pb(),701),n=S4n(r),fln(e,e.a.length,n);return e.a}function H5t(t){var e;return!t.c&&(t.c=new Zl),Ds(t.d,new rm),u8n(t),e=t8n(t),ms(new ln(null,new gn(t.d,16)),new Nnt(t)),e}function hwn(t,e){e.Ug("End label post-processing",1),ms(_i(fc(new ln(null,new gn(t.b,16)),new tQ),new eQ),new nQ),e.Vg()}function V5t(t){Wat(),this.c=id(lt(ut(v_n,1),Ln,845,0,[D6e])),this.b=new _r,this.a=t,hi(this.b,YG,1),Cu(M6e,new dGt(this))}function ale(t,e,n){xoe(),OKt.call(this),this.a=G2(Sye,[ue,M8t],[603,217],0,[jU,Vht],2),this.c=new B6,this.g=t,this.f=e,this.d=n}function U5t(t,e){this.n=G2(x2,[ue,cut],[376,28],14,[e,Ys(b.Math.ceil(t/32))],2),this.o=t,this.p=e,this.j=t-1>>1,this.k=e-1>>1}function fwn(t){Tq(),u(t.of((ai(),l2)),181).Hc((Ml(),FK))&&(u(t.of(j3),181).Fc((wl(),n8)),u(t.of(l2),181).Mc(FK))}function ole(t){var e,n;e=t.d==(wk(),kT),n=qxt(t),e&&!n||!e&&n?Zt(t.a,(De(),u0),(I0(),TP)):Zt(t.a,(De(),u0),(I0(),EP))}function Wat(){Wat=V,C$(),YG=(De(),Av),M6e=id(lt(ut(Sdt,1),v7t,149,0,[aP,Yf,Y5,_v,O3,l1t,FT,BT,h1t,jA,W5,Pw,X5]))}function dwn(t,e){var n;return n=u(nc(t,gl(new Br,new ce,new An,lt(ut(Ho,1),te,108,0,[(bl(),sc)]))),15),n.Qc(Ate(n.gc()))}function cle(t,e){var n,r;if(r=new ra(t.a.ad(e,!0)),r.a.gc()<=1)throw at(new E6);return n=r.a.ec().Kc(),n.Pb(),u(n.Pb(),39)}function gwn(t,e,n){var r,s;return r=Rt(t.p[e.i.p])+Rt(t.d[e.i.p])+e.n.b+e.a.b,s=Rt(t.p[n.i.p])+Rt(t.d[n.i.p])+n.n.b+n.a.b,s-r}function G5t(t,e){var n;return t.i>0&&(e.length<t.i&&(n=XI(Wl(e).c,t.i),e=n),Xc(t.g,0,e,0,t.i)),e.length>t.i&&ls(e,t.i,null),e}function bH(t){var e;return t.Db&64?u_(t):(e=new ef(u_(t)),e.a+=" (
`;return n.substring(0,r.length)==r&&(n=n.substring(r.length)),n.split(`
`)}return[]}function lvn(t){var e;return e=(Doe(),Yve),e[t>>>28]|e[t>>24&15]<<4|e[t>>20&15]<<8|e[t>>16&15]<<12|e[t>>12&15]<<16|e[t>>8&15]<<20|e[t>>4&15]<<24|e[t&15]<<28}function Lhe(t){var e,n,r;t.b==t.c&&(r=t.a.length,n=W4t(b.Math.max(8,r))<<1,t.b!=0?(e=Ff(t.a,n),Uoe(t,e,r),t.a=e,t.b=0):wy(t.a,n),t.c=r)}function hvn(t,e){var n;return n=t.b,n.pf((ai(),Pl))?n.ag()==(ve(),Gn)?-n.Mf().a-Rt(Ht(n.of(Pl))):e+Rt(Ht(n.of(Pl))):n.ag()==(ve(),Gn)?-n.Mf().a:e}function EO(t){var e;return t.b.c.length!=0&&u(Oe(t.b,0),72).a?u(Oe(t.b,0),72).a:(e=Zit(t),e??""+(t.c?Xo(t.c.a,t,0):-1))}function BH(t){var e;return t.f.c.length!=0&&u(Oe(t.f,0),72).a?u(Oe(t.f,0),72).a:(e=Zit(t),e??""+(t.i?Xo(t.i.j,t,0):-1))}function fvn(t,e){var n,r;if(e<0||e>=t.gc())return null;for(n=e;n<t.gc();++n)if(r=u(t.Xb(n),131),n==t.gc()-1||!r.o)return new Ws(he(n),r);return null}function dvn(t,e,n){var r,s,o,h,d;for(o=t.c,d=n?e:t,r=n?t:e,s=d.p+1;s<r.p;++s)if(h=u(Oe(o.a,s),10),!(h.k==(Un(),md)||zvn(h)))return!1;return!0}function wxt(t){var e,n,r,s,o;for(o=0,s=Vs,r=0,n=new G(t.a);n.a<n.c.c.length;)e=u(et(n),172),o+=e.r+(r>0?t.c:0),s=b.Math.max(s,e.d),++r;t.e=o,t.b=s}function gvn(t){var e,n;if(!t.b)for(t.b=hq(u(t.f,123).kh().i),n=new Zn(u(t.f,123).kh());n.e!=n.i.gc();)e=u(ar(n),135),ge(t.b,new Qnt(e));return t.b}function pvn(t,e){var n,r,s;if(e.dc())return _E(),_E(),GP;for(n=new fZt(t,e.gc()),s=new Zn(t);s.e!=s.i.gc();)r=ar(s),e.Hc(r)&&Or(n,r);return n}function mxt(t,e,n,r){return e==0?r?(!t.o&&(t.o=new nl((zc(),X0),Qp,t,0)),t.o):(!t.o&&(t.o=new nl((zc(),X0),Qp,t,0)),RI(t.o)):AH(t,e,n,r)}function kot(t){var e,n;if(t.rb)for(e=0,n=t.rb.i;e<n;++e)oI(Dt(t.rb,e));if(t.vb)for(e=0,n=t.vb.i;e<n;++e)oI(Dt(t.vb,e));MS((il(),ja),t),t.Bb|=1}function Ui(t,e,n,r,s,o,h,d,m,k,T,A,P,$){return u1e(t,e,r,null,s,o,h,d,m,k,P,!0,$),D5t(t,T),Lt(t.Cb,90)&&t3(_l(u(t.Cb,90)),2),n&&L4t(t,n),M5t(t,A),t}function bvn(t){var e,n;if(t==null)return null;n=0;try{n=lh(t,Ga,xi)&js}catch(r){if(r=es(r),Lt(r,130))e=Lq(t),n=e[0];else throw at(r)}return ZI(n)}function wvn(t){var e,n;if(t==null)return null;n=0;try{n=lh(t,Ga,xi)&js}catch(r){if(r=es(r),Lt(r,130))e=Lq(t),n=e[0];else throw at(r)}return ZI(n)}function mvn(t,e){var n,r,s;return s=t.h-e.h,s<0||(n=t.l-e.l,r=t.m-e.m+(n>>22),s+=r>>22,s<0)?!1:(t.l=n&Il,t.m=r&Il,t.h=s&Fg,!0)}function Eot(t,e,n,r,s,o,h){var d,m;return!(e.Te()&&(m=t.a.Ne(n,r),m<0||!s&&m==0)||e.Ue()&&(d=t.a.Ne(n,o),d>0||!h&&d==0))}function vvn(t,e){g7();var n;if(n=t.j.g-e.j.g,n!=0)return 0;switch(t.j.g){case 2:return Hat(e,ySt)-Hat(t,ySt);case 4:return Hat(t,vSt)-Hat(e,vSt)}return 0}function yvn(t){switch(t.g){case 0:return Oft;case 1:return Nft;case 2:return Pft;case 3:return Fft;case 4:return kG;case 5:return Bft;default:return null}}function qo(t,e,n){var r,s;return r=(s=new Unt,uw(s,e),mu(s,n),Or((!t.c&&(t.c=new Jt(Ov,t,12,10)),t.c),s),s),Sp(r,0),Hy(r,1),Mp(r,!0),Dp(r,!0),r}function pk(t,e){var n,r;if(e>=t.i)throw at(new Grt(e,t.i));return++t.j,n=t.g[e],r=t.i-e-1,r>0&&Xc(t.g,e+1,t.g,e,r),ls(t.g,--t.i,null),t.Qi(e,n),t.Ni(),n}function Dhe(t,e){var n,r;return t.Db>>16==17?t.Cb.Th(t,21,mf,e):(r=yo(u(En((n=u(jn(t,16),29),n||t.ii()),t.Db>>16),19)),t.Cb.Th(t,r.n,r.f,e))}function xvn(t){var e,n,r,s;for(mn(),Ds(t.c,t.a),s=new G(t.c);s.a<s.c.c.length;)for(r=et(s),n=new G(t.b);n.a<n.c.c.length;)e=u(et(n),693),e.bf(r)}function kvn(t){var e,n,r,s;for(mn(),Ds(t.c,t.a),s=new G(t.c);s.a<s.c.c.length;)for(r=et(s),n=new G(t.b);n.a<n.c.c.length;)e=u(et(n),382),e.bf(r)}function Evn(t){var e,n,r,s,o;for(s=xi,o=null,r=new G(t.d);r.a<r.c.c.length;)n=u(et(r),218),n.d.j^n.e.j&&(e=n.e.e-n.d.e-n.a,e<s&&(s=e,o=n));return o}function vxt(){vxt=V,V3e=new un(K8t,(Pn(),!1)),z3e=new un(W8t,100),mCt=(WS(),rft),q3e=new un(Y8t,mCt),H3e=new un(X8t,n0),U3e=new un(Q8t,he(xi))}function Mhe(t,e,n){var r,s,o,h,d,m,k,T;for(k=0,s=t.a[e],o=0,h=s.length;o<h;++o)for(r=s[o],T=c_(r,n),m=T.Kc();m.Ob();)d=u(m.Pb(),12),hi(t.f,d,he(k++))}function Tvn(t,e,n){var r,s,o,h;if(n)for(s=n.a.length,r=new W2(s),h=(r.b-r.a)*r.c<0?(Tb(),y2):new _b(r);h.Ob();)o=u(h.Pb(),17),dn(t,e,mk($y(n,o.a)))}function Cvn(t,e,n){var r,s,o,h;if(n)for(s=n.a.length,r=
\r\f]+`);try{TL=lt(ut(E_n,1),Ln,2114,0,[new AM((wmt(),mH("yyyy-MM-dd'T'HH:mm:ss'.'SSSZ",hI((h$(),h$(),mA))))),new AM(mH("yyyy-MM-dd'T'HH:mm:ss'.'SSS",hI(mA))),new AM(mH("yyyy-MM-dd'T'HH:mm:ss",hI(mA))),new AM(mH("yyyy-MM-dd'T'HH:mm",hI(mA))),new AM(mH("yyyy-MM-dd",hI(mA)))])}catch(t){if(t=es(t),!Lt(t,82))throw at(t)}}function H7n(t,e){var n,r,s,o;if(s=Dl(t.d,1)!=0,r=ykt(t,e),r==0&&Ie(Me(X(e.j,(oe(),i2)))))return 0;!Ie(Me(X(e.j,(oe(),i2))))&&!Ie(Me(X(e.j,U5)))||$t(X(e.j,(De(),U0)))===$t((Wd(),Up))?e.c.mg(e.e,s):s=Ie(Me(X(e.j,i2))),qO(t,e,s,!0),Ie(Me(X(e.j,U5)))&&Zt(e.j,U5,(Pn(),!1)),Ie(Me(X(e.j,i2)))&&(Zt(e.j,i2,(Pn(),!1)),Zt(e.j,U5,!0)),n=ykt(t,e);do{if(I4t(t),n==0)return 0;s=!s,o=n,qO(t,e,s,!1),n=ykt(t,e)}while(o>n);return o}function Ige(t,e){var n,r,s,o;if(s=Dl(t.d,1)!=0,r=GH(t,e),r==0&&Ie(Me(X(e.j,(oe(),i2)))))return 0;!Ie(Me(X(e.j,(oe(),i2))))&&!Ie(Me(X(e.j,U5)))||$t(X(e.j,(De(),U0)))===$t((Wd(),Up))?e.c.mg(e.e,s):s=Ie(Me(X(e.j,i2))),qO(t,e,s,!0),Ie(Me(X(e.j,U5)))&&Zt(e.j,U5,(Pn(),!1)),Ie(Me(X(e.j,i2)))&&(Zt(e.j,i2,(Pn(),!1)),Zt(e.j,U5,!0)),n=GH(t,e);do{if(I4t(t),n==0)return 0;s=!s,o=n,qO(t,e,s,!1),n=GH(t,e)}while(o>n);return o}function zkt(t,e,n,r){var s,o,h,d,m,k,T,A,P;return m=ia(new ae(n.a,n.b),t),k=m.a*e.b-m.b*e.a,T=e.a*r.b-e.b*r.a,A=(m.a*r.b-m.b*r.a)/T,P=k/T,T==0?k==0?(s=ki(new ae(n.a,n.b),qd(new ae(r.a,r.b),.5)),o=Nb(t,s),h=Nb(ki(new ae(t.a,t.b),e),s),d=b.Math.sqrt(r.a*r.a+r.b*r.b)*.5,o<h&&o<=d?new ae(t.a,t.b):h<=d?ki(new ae(t.a,t.b),e):null):null:A>=0&&A<=1&&P>=0&&P<=1?ki(new ae(t.a,t.b),qd(new ae(e.a,e.b),A)):null}function V7n(t,e,n){var r,s,o,h,d;if(r=u(X(t,(De(),t1t)),21),n.a>e.a&&(r.Hc((fw(),cL))?t.c.a+=(n.a-e.a)/2:r.Hc(uL)&&(t.c.a+=n.a-e.a)),n.b>e.b&&(r.Hc((fw(),hL))?t.c.b+=(n.b-e.b)/2:r.Hc(lL)&&(t.c.b+=n.b-e.b)),u(X(t,(oe(),lu)),21).Hc((Co(),Uh))&&(n.a>e.a||n.b>e.b))for(d=new G(t.a);d.a<d.c.c.length;)h=u(et(d),10),h.k==(Un(),Ms)&&(s=u(X(h,Dc),64),s==(ve(),Jn)?h.n.a+=n.a-e.a:s==Er&&(h.n.b+=n.b-e.b));o=t.d,t.f.a=n.a-o.b-o.c,t.f.b=n.b-o.d-o.a}function U7n(t,e,n){var r,s,o,h,d;if(r=u(X(t,(De(),t1t)),21),n.a>e.a&&(r.Hc((fw(),cL))?t.c.a+=(n.a-e.a)/2:r.Hc(uL)&&(t.c.a+=n.a-e.a)),n.b>e.b&&(r.Hc((fw(),hL))?t.c.b+=(n.b-e.b)/2:r.Hc(lL)&&(t.c.b+=n.b-e.b)),u(X(t,(oe(),lu)),21).Hc((Co(),Uh))&&(n.a>e.a||n.b>e.b))for(h=new G(t.a);h.a<h.c.c.length;)o=u(et(h),10),o.k==(Un(),Ms)&&(s=u(X(o,Dc),64),s==(ve(),Jn)?o.n.a+=n.a-e.a:s==Er&&(o.n.b+=n.b-e.b));d=t.d,t.f.a=n.a-d.b-d.c,t.f.b=n.b-d.d-d.a}function G7n(t){var e,n,r,s,o,h,d,m,k,T,A,P;for(e=G1e(t),T=(d=new cr(e).a.vc().Kc(),new vi(d));T.a.Ob();){for(k=(s=u(T.a.Pb(),44),u(s.ld(),10)),A=0,P=0,A=k.d.d,P=k.o.b+k.d.a,t.d[k.p]=0,n=k;(o=t.a[n.p])!=k;)r=zwn(n,o),m=0,t.c==(Gd(),Gp)?m=r.d.n.b+r.d.a.b-r.c.n.b-r.c.a.b:m=r.c.n.b+r.c.a.b-r.d.n.b-r.d.a.b,h=Rt(t.d[n.p])+m,t.d[o.p]=h,A=b.Math.max(A,o.d.d-h),P=b.Math.max(P,h+o.o.b+o.d.a),n=o;n=k;do t.d[n.p]=Rt(t.d[n.p])+A,n=t.a[n.p];while(n!=k);t.b[k.p]=A+P}}function B_(t,e,n){var r,s,o,h,d,m,k,T,A,P;for(o=0,h=t.t,s=0,r=0,m=0,P=0,A=0,n&&(t.n.c.length=0,ge(t.n,new aq(t.s,t.t,t.i))),d=0,T=new G(t.b);T.a<T.c.c.length;)k=u(et(T),27),o+k.g+(d>0?t.i:0)>e&&m>0&&(o=0,h+=m+t.i,s=b.Math.max(s,P),r+=m+t.i,m=0,P=0,n&&(++A,ge(t.n,new aq(t.s,h,t.i))),d=0),P+=k.g+(d>0?t.i:0),m=b.Math.max(m,k.f),n&&dxt(u(Oe(t.n,A),209),k),o+=k.g+(d>0?t.i:0),++d;return s=b.Math.max(s,P),r+=m,n&&(t.r=s,t.d=r,wxt(t.j)),new Ah(t.s,t.t,s,r)}function bct(t){var e,n,r,s,o,h,d,m,k,T,A,P;for(t.b=!1,A=Zi,m=Vs,P=Zi,k=Vs,r=t.e.a.ec().Kc();r.Ob();)for(n=u(r.Pb(),272),s=n.a,A=b.Math.min(A,s.c),m=b.Math.max(m,s.c+s.b),P=b.Math.min(P,s.d),k=b.Math.max(k,s.d+s.a),h=new G(n.c);h.a<h.c.c.length;)o=u(et(h),407),e=o.a,e.a?(T=s.d+o.b.b,d=T+o.c,P=b.Math.min(P,T),k=b.Math.max(k,d)):(T=s.c+o.b.a,d=T+o.c,A=b.Math.min(A,T),m=b.Math.max(m,d));t.a=new ae(m-A,k-P),t.c=new ae(A+t.d.a,P+t.d.b)}function v5(t){var e,n,r,s,o,h,d,m;if(!t.a){if(t.o=null,m=new JGt(t),e=new pC,n=_L,d=n.a.zc(t,n),d==null){for(h=new Zn(Yo(t));h.e!=h.i.gc();)o=u(ar(h),29),gs(m,v5(o));n.a.Bc(t)!=null,n.a.gc()==0}for(s=(!t.s&&(t.s=new Jt(Wu,t,21,17)),new Zn(t.s));s.e!=s.i.gc();)r=u(ar(s),179),Lt(r,331)&&Or(e,u(r,35));Uy(e),t.k=new xt
\r\r `),jo(bx,ght,r),jo(JT,ght,i3(r)),r=new ih(4),vO(r,_ve),jo(bx,wA,r),jo(JT,wA,i3(r)),r=new ih(4),vO(r,_ve),jo(bx,wA,r),jo(JT,wA,i3(r)),r=new ih(4),vO(r,Ave),a3(r,u(nu(bx,wA),122)),jo(bx,dht,r),jo(JT,dht,i3(r)),r=new ih(4),vO(r,"-.0:AZ__az··ÀÖØöøıĴľŁňŊžƀǃǍǰǴǵǺȗɐʨʻˁːˑ̀͠͡ͅΆΊΌΌΎΡΣώϐϖϚϚϜϜϞϞϠϠϢϳЁЌЎяёќўҁ҃҆ҐӄӇӈӋӌӐӫӮӵӸӹԱՖՙՙաֆֹֻֽֿֿׁׂ֑֣֡ׄׄאתװײءغـْ٠٩ٰڷںھۀێېۓە۪ۭۨ۰۹ँअह़्॑॔क़ॣ९ঁঃঅঌএঐওনপরললশহ়়াৄেৈো্ৗৗড়ঢ়য়ৣৱਂਂਅਊਏਐਓਨਪਰਲਲ਼ਵਸ਼ਸਹ਼਼ਾੂੇੈੋ੍ਖ਼ੜਫ਼ਫ਼ੴઁઅઋઍઍએઑઓનપરલળવહ઼ૅેૉો્ૠૠ૯ଁଅଌଏଐଓନପରଲଳଶହ଼ୃେୈୋ୍ୖୗଡ଼ଢ଼ୟୡ୯ஂஃஅஊஎஐஒகஙசஜஜஞடணதநபமவஷஹாூெைொ்ௗௗ௧௯ఁఃఅఌఎఐఒనపళవహాౄెైొ్ౕౖౠౡಃಅಌಎಐಒನಪಳವಹಾೄೆೈೊ್ೕೖೞೞೠೡഃഅഌഎഐഒനപഹാൃെൈൊ്ൗൗൠൡ൯กฮะฺเ๎๙ກຂຄຄງຈຊຊຍຍດທນຟມຣລລວວສຫອຮະູົຽເໄໆໆ່ໍ໙༘༙༠༩༹༹༵༵༷༷༾ཇཉཀྵ྄ཱ྆ྋྐྕྗྗྙྭྱྷྐྵྐྵႠჅაჶᄀᄀᄂᄃᄅᄇᄉᄉᄋᄌᄎᄒᄼᄼᄾᄾᅀᅀᅌᅌᅎᅎᅐᅐᅔᅕᅙᅙᅡᅣᅣᅥᅥᅧᅧᅩᅩᅭᅮᅲᅳᅵᅵᆞᆞᆨᆨᆫᆫᆮᆯᆷᆸᆺᆺᆼᇂᇫᇫᇰᇰᇹᇹḀẛẠỹἀἕἘἝἠὅὈὍὐὗὙὙὛὛὝὝὟώᾀᾴᾶᾼῂῄῆῌῐΐῖΊῠῬῲῴῶῼ⃐⃜⃡⃡ΩΩↀↂ々々〡〯〱〵ぁゔ゙゚ゝゞァヺーヾㄅㄬ一龥가힣"),jo(bx,pht,r),jo(JT,pht,i3(r)),r=new ih(4),vO(r,Ave),iu(r,95,95),iu(r,58,58),jo(bx,bht,r),jo(JT,bht,i3(r))),n=u(nu(e?bx:JT,t),138),n}function ibe(t){wm(t,new dw(vwt(p$(gm(hm(dm(fm(new G1,Qn),"ELK Layered"),"Layer-based algorithm provided by the Eclipse Layout Kernel. Arranges as many edges as possible into one direction by placing nodes into subsequent layers. This implementation supports different routing styles (straight, orthogonal, splines); if orthogonal routing is selected, arbitrary port constraints are respected, thus enabling the layout of block diagrams such as actor-oriented models or circuit schematics. Furthermore, full layout of compound graphs with cross-hierarchy edges is supported when the respective option is activated on the top level."),new RJ),Qn),Hi((O7(),Zdt),lt(ut(GK,1),te,245,0,[VK,UK,HK,Jdt,qK,zK]))))),le(t,Qn,zEt,Se(u1t)),le(t,Qn,qEt,Se(dAt)),le(t,Qn,Lut,Se(aP)),le(t,Qn,HEt,Se(Yf)),le(t,Qn,Put,Se(Y5)),le(t,Qn,plt,Se(_v)),le(t,Qn,VEt,Se(O3)),le(t,Qn,UEt,Se(FT)),le(t,Qn,GEt,Se(BT)),le(t,Qn,KEt,Se(l1t)),le(t,Qn,h3,Se(Av)),le(t,Qn,WEt,Se(h1t)),le(t,Qn,YEt,Se(jA)),le(t,Qn,XEt,Se(KG)),le(t,Qn,kEt,Se(sP)),le(t,Qn,TEt,Se(W5)),le(t,Qn,EEt,Se(Pw)),le(t,Qn,CEt,Se(X5)),le(t,Qn,gN,he(0)),le(t,Qn,SEt,Se(PT)),le(t,Qn,_Et,Se(fAt)),le(t,Qn,AEt,Se(Yk)),le(t,Qn,Bg,Se(kAt)),le(t,Qn,HV,Se(pAt)),le(t,Qn,VV,Se(bAt)),le(t,Qn,tA,Se(d1t)),le(t,Qn,olt,Se(wAt)),le(t,Qn,clt,Se(mAt)),le(t,Qn,UV,Se(WG)),le(t,Qn,GV,Se(g1t)),le(t,Qn,KV,Se(yAt)),le(t,Qn,WV,Se(vAt)),le(t,Qn,ult,Se(xAt)),le(t,Qn,elt,Se(Cv)),le(t,Qn,nlt,Se(RA)),le(t,Qn,$V,Se(s1t)),le(t,Qn,zV,Se(U_t)),le(t,Qn,pN,Se(A6e)),le(t,Qn,bN,Se(L6e)),le(t,Qn,wN,Se(_6e)),le(t,Qn,mN,Se(S6e)),le(t,Qn,cv,gAt),le(t,Qn,ov,oAt),le(t,Qn,EN,q_t),le(t,Qn,QEt,0),le(t,Qn,IV,he(1)),le(t,Qn,Dk,tT),le(t,Qn,JEt,Se(Nw)),le(t,Qn,Fut,Se(bs)),le(t,Qn,ZEt,Se(NT)),le(t,Qn,TN,Se(b6e)),le(t,Qn,t7t,Se(u0)),le(t,Qn,XV,Se(A3)),le(t,Qn,W_,(Pn(),!0)),le(t,Qn,e7t,Se(L3)),le(t,Qn,n7t,Se(Mw)),le(t,Qn,_5,Se(Ow)),le(t,Qn,Mk,Se(GG)),le(t,Qn,eT,Se(c1t)),le(t,Qn,blt,z_t),le(t,Qn,nT,Se(Tv)),le(t,Qn,r7t,Se(VG)),le(t,Qn,rT,Se(M3)),le(t,Qn,i7t,Se(k6e)),le(t,Qn,s7t,Se(lAt)),le(t,Qn,a7t,uAt),le(t,Qn,o7t,Se(v6e)),le(t,Qn,c7t,Se(y6e)),le(t,Qn,u7t,Se(x6e)),le(t,Qn,l7t,Se(m6e)),le(t,Qn,uEt,Se(f1t)),le(t,Qn,kN,Se(Iw)),le(t,Qn,Gut,Se(a2)
`,g2e=`)]}"' \r
`,p2e="The given string contains parts that cannot be parsed as numbers.",yN="org.eclipse.elk.core.math",b2e={3:1,4:1,140:1,214:1,423:1},w2e={3:1,4:1,107:1,214:1,423:1},$p="org.eclipse.elk.alg.layered.graph.transform",m2e="ElkGraphImporter",v2e="ElkGraphImporter/lambda$1$Type",y2e="ElkGraphImporter/lambda$2$Type",x2e="ElkGraphImporter/lambda$4$Type",Yn="org.eclipse.elk.alg.layered.intermediate",k2e="Node margin calculation",E2e="ONE_SIDED_GREEDY_SWITCH",T2e="TWO_SIDED_GREEDY_SWITCH",jut="No implementation is available for the layout processor ",$ut="IntermediateProcessorStrategy",zut="Node '",C2e="FIRST_SEPARATE",S2e="LAST_SEPARATE",_2e="Odd port side processing",Gs="org.eclipse.elk.alg.layered.intermediate.compaction",J_="org.eclipse.elk.alg.layered.intermediate.greedyswitch",z0="org.eclipse.elk.alg.layered.p3order.counting",xN={230:1},Nk="org.eclipse.elk.alg.layered.intermediate.loops",dh="org.eclipse.elk.alg.layered.intermediate.loops.ordering",Xb="org.eclipse.elk.alg.layered.intermediate.loops.routing",tEt="org.eclipse.elk.alg.layered.intermediate.preserveorder",i0="org.eclipse.elk.alg.layered.intermediate.wrapping",Hc="org.eclipse.elk.alg.layered.options",qut="INTERACTIVE",eEt="GREEDY",A2e="DEPTH_FIRST",L2e="EDGE_LENGTH",D2e="SELF_LOOPS",M2e="firstTryWithInitialOrder",nEt="org.eclipse.elk.layered.directionCongruency",rEt="org.eclipse.elk.layered.feedbackEdges",BV="org.eclipse.elk.layered.interactiveReferencePoint",iEt="org.eclipse.elk.layered.mergeEdges",sEt="org.eclipse.elk.layered.mergeHierarchyEdges",aEt="org.eclipse.elk.layered.allowNonFlowPortsToSwitchSides",oEt="org.eclipse.elk.layered.portSortingStrategy",cEt="org.eclipse.elk.layered.thoroughness",uEt="org.eclipse.elk.layered.unnecessaryBendpoints",lEt="org.eclipse.elk.layered.generatePositionAndLayerIds",Hut="org.eclipse.elk.layered.cycleBreaking.strategy",kN="org.eclipse.elk.layered.layering.strategy",hEt="org.eclipse.elk.layered.layering.layerConstraint",fEt="org.eclipse.elk.layered.layering.layerChoiceConstraint",dEt="org.eclipse.elk.layered.layering.layerId",Vut="org.eclipse.elk.layered.layering.minWidth.upperBoundOnWidth",Uut="org.eclipse.elk.layered.layering.minWidth.upperLayerEstimationScalingFactor",Gut="org.eclipse.elk.layered.layering.nodePromotion.strategy",Kut="org.eclipse.elk.layered.layering.nodePromotion.maxIterations",Wut="org.eclipse.elk.layered.layering.coffmanGraham.layerBound",Z_="org.eclipse.elk.layered.crossingMinimization.strategy",gEt="org.eclipse.elk.layered.crossingMinimization.forceNodeModelOrder",Yut="org.eclipse.elk.layered.crossingMinimization.hierarchicalSweepiness",Xut="org.eclipse.elk.layered.crossingMinimization.semiInteractive",pEt="org.eclipse.elk.layered.crossingMinimization.inLayerPredOf",bEt="org.eclipse.elk.layered.crossingMinimization.inLayerSuccOf",wEt="org.eclipse.elk.layered.crossingMinimization.positionChoiceConstraint",mEt="org.eclipse.elk.layered.crossingMinimization.positionId",vEt="org.eclipse.elk.layered.crossingMinimization.greedySwitch.activationThreshold",Qut="org.eclipse.elk.layered.crossingMinimization.greedySwitch.type",RV="org.eclipse.elk.layered.crossingMinimization.greedySwitchHierarchical.type",A5="org.eclipse.elk.layered.nodePlacement.strategy",jV="org.eclipse.elk.layered.nodePlacement.favorStraightEdges",Jut="org.eclipse.elk.layered.nodePlacement.bk.edgeStraightening",Zut="org.eclipse.elk.layered.nodePlacement.bk.fixedAlignment",tlt="org.eclipse.elk.layered.nodePlacement.linearSegments.deflectionDampening",elt="org.eclipse.elk.layered.nodePlacement.networkSimplex.nodeFlexibility",nlt="org.eclipse.elk.layered.nodePlacement.networkSimplex.nodeFlexibility.default",yEt="org.eclipse.elk.layered.edgeRouting.selfLoopDistribution",xEt="org.eclipse.elk.layered.edgeRouting.selfLoopOrdering",$V="org.eclipse.elk.layered.edgeRouting.splines.mode",zV="org.eclipse.elk.layered.edgeRouting.splines.sloppy.layerSpacingFactor",rlt="org.eclipse.elk.layered.edgeRouting.polyline.slopedEdgeZoneWidth",kEt="org.eclipse.elk.layered.spacing.baseValue",EEt="org.eclipse.elk.layered.spacing.edgeNodeBetweenLayers",TEt="org.ecli
`,e=he(0),h=0;h<this.p;h++){for(r+=""+e.a,e=he(iZt(e.a)),s=0;s<this.o;s++)n=iat(this,s,h),$c(n,0)==0?r+="_":$c(n,1)==0?r+="X":r+="0";r+=`
`}return Lh(r,0,r.length-1)},l.o=0,l.p=0,I(AV,"TwoBitGrid",1317),D(330,1317,{330:1},U5t),l.j=0,l.k=0,I(AV,"PlanarGrid",330),D(176,330,{330:1,176:1}),l.g=0,l.i=0,I(AV,"Polyomino",176);var o_n=os(fN,Qbe);D(137,1,P8t,As),l.qf=function(e,n){return oO(this,e,n)},l.nf=function(){return $te(this)},l.of=function(e){return X(this,e)},l.pf=function(e){return qi(this,e)},I(fN,"MapPropertyHolder",137),D(1318,137,P8t,Vde),I(AV,"Polyominoes",1318);var s3e=!1,kA,eCt;D(1828,1,ir,to),l.Cd=function(e){Gge(u(e,225))},I(Lk,"DepthFirstCompaction/0methodref$compactTree$Type",1828),D(825,1,ir,t$),l.Cd=function(e){Oln(this.a,u(e,225))},I(Lk,"DepthFirstCompaction/lambda$1$Type",825),D(1829,1,ir,YZt),l.Cd=function(e){Fwn(this.a,this.b,this.c,u(e,225))},I(Lk,"DepthFirstCompaction/lambda$2$Type",1829);var EA,nCt;D(68,1,{68:1},ere),I(Lk,"Node",68),D(1214,1,{},tJt),I(Lk,"ScanlineOverlapCheck",1214),D(1215,1,{693:1},Lne),l.bf=function(e){han(this,u(e,450))},I(Lk,"ScanlineOverlapCheck/OverlapsScanlineHandler",1215),D(1216,1,Xr,Ci),l.Ne=function(e,n){return v2n(u(e,68),u(n,68))},l.Fb=function(e){return this===e},l.Oe=function(){return new Be(this)},I(Lk,"ScanlineOverlapCheck/OverlapsScanlineHandler/lambda$0$Type",1216),D(450,1,{450:1},Hwt),l.a=!1,I(Lk,"ScanlineOverlapCheck/Timestamp",450),D(1217,1,Xr,pu),l.Ne=function(e,n){return Zvn(u(e,450),u(n,450))},l.Fb=function(e){return this===e},l.Oe=function(){return new Be(this)},I(Lk,"ScanlineOverlapCheck/lambda$0$Type",1217),D(557,1,{},Le),I(Jbe,"SVGImage",557),D(334,1,{334:1},Dvt),l.Ib=function(){return"("+this.a+ao+this.b+ao+this.c+")"},I(Jbe,"UniqueTriple",334),D(205,1,mw),I(T5,"AbstractLayoutProvider",205),D(1114,205,mw,iy),l.rf=function(e,n){var r,s,o,h;switch(n.Ug(Zbe,1),this.a=Rt(Ht(ne(e,(b_(),cCt)))),ad(e,Yht)&&(o=Gr(ne(e,Yht)),r=act(e7(),o),r&&(s=u(_I(r.f),205),s.rf(e,n.eh(1)))),h=new xie(this.a),this.b=W9n(h,e),u(ne(e,(Mat(),iCt)),488).g){case 0:lxn(new $e,this.b),Mi(e,HU,X(this.b,HU));break;default:pg()}uCn(h),Mi(e,aCt,this.b),n.Vg()},l.a=0,I(t2e,"DisCoLayoutProvider",1114),D(1208,1,{},$e),l.c=!1,l.e=0,l.f=0,I(t2e,"DisCoPolyominoCompactor",1208),D(567,1,{567:1},Rte),l.b=!0,I(DV,"DCComponent",567),D(406,22,{3:1,34:1,22:1,406:1},P$),l.a=!1;var zU,HN,qU,VN,a3e=Lr(DV,"DCDirection",406,Pr,F1n,eon),o3e;D(272,137,{3:1,272:1,96:1,137:1},Wot),I(DV,"DCElement",272),D(407,1,{407:1},pxt),l.c=0,I(DV,"DCExtension",407),D(762,137,P8t,_Wt),I(DV,"DCGraph",762),D(488,22,{3:1,34:1,22:1,488:1},KJt);var Wht,rCt=Lr(Aut,F8t,488,Pr,Vln,non),c3e;D(865,1,uf,Cj),l.hf=function(e){Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,B8t),e2e),"Connected Components Compaction Strategy"),"Strategy for packing different connected components in order to save space and enhance readability of a graph."),sCt),(Fp(),ts)),rCt),en((D1(),_n))))),Qe(e,new He(Ye(We(Xe(Ve(Ke(Ue(Ge(new je,R8t),e2e),"Connected Components Layout Algorithm"),"A layout algorithm that is to be applied to each connected component before the components themselves are compacted. If unspecified, the positions of the components' nodes are not altered."),ix),Pe),en(_n)))),Qe(e,new He(Ye(We(Xe(Ve(Ke(Ue(Ge(new je,j8t),"debug"),"DCGraph"),"Access to the DCGraph is intended for the debug view,"),xd),aa),en(_n)))),Qe(e,new He(Ye(We(Xe(Ve(Ke(Ue(Ge(new je,$8t),"debug"),"List of Polyominoes"),"Access to the polyominoes is intended for the debug view,"),xd),aa),en(_n)))),Mge((new Sj,e))};var u3e,iCt,sCt,l3e,h3e;I(Aut,"DisCoMetaDataProvider",865),D(1010,1,uf,Sj),l.hf=function(e){Mge(e)};var f3e,Yht,d3e,aCt,HU,Xht,oCt,g3e,p3e,b3e,w3e,cCt;I(Aut,"DisCoOptions",1010),D(1011,1,{},g1),l.sf=function(){var e;return e=new iy,e},l.tf=function(e){},I(Aut,"DisCoOptions/DiscoFactory",1011),D(568,176,{330:1,176:1,568:1},Sde),l.a=0,l.b=0,l.c=0,l.d=0,I("org.eclipse.elk.alg.disco.structures","DCPolyomino",568);var Qht,Jht,VU;D(1286,1,Kr,ip),l.Mb=function(e){return mmt(e)},I(C5,"ElkGraphComponentsProcessor/lambda$0$Type",1286),D(1287,1,{},sy),l.Kb=function(e){return J6(),O0(u(e,74))},I(C5,"ElkGraphComponentsProcessor/lambda$1$Type",1287),D(1288,1,Kr,D8),l.Mb=function(e){return uun(u(e,74))},I(C5,"ElkGrap
start=`,tu(e,this.i),e.a+=`
end=`,tu(e,this.a),e.a+=`
nodeStartEdge=`,tu(e,this.e),e.a+=`
startEndEdge=`,tu(e,this.j),e.a+=`
originalEdge=`,tu(e,this.f),e.a+=`
startInLayerDummy=`,tu(e,this.k),e.a+=`
startInLayerEdge=`,tu(e,this.n),e.a+=`
endInLayerDummy=`,tu(e,this.b),e.a+=`
endInLayerEdge=`,tu(e,this.c),e.a},I(i0,"BreakingPointInserter/BPInfo",313),D(661,1,{661:1},wUt),l.a=!1,l.b=0,l.c=0,I(i0,"BreakingPointInserter/Cut",661),D(1545,1,zi,MJ),l.Kf=function(e,n){m6n(u(e,36),n)},I(i0,"BreakingPointProcessor",1545),D(1546,1,Kr,IJ),l.Mb=function(e){return Bae(u(e,10))},I(i0,"BreakingPointProcessor/0methodref$isEnd$Type",1546),D(1547,1,Kr,OJ),l.Mb=function(e){return Rae(u(e,10))},I(i0,"BreakingPointProcessor/1methodref$isStart$Type",1547),D(1548,1,zi,NJ),l.Kf=function(e,n){$6n(this,u(e,36),n)},I(i0,"BreakingPointRemover",1548),D(1549,1,ir,PJ),l.Cd=function(e){u(e,131).k=!0},I(i0,"BreakingPointRemover/lambda$0$Type",1549),D(811,1,{},q6t),l.b=0,l.e=0,l.f=0,l.j=0,I(i0,"GraphStats",811),D(812,1,{},bR),l.Ve=function(e,n){return b.Math.max(Rt(Ht(e)),Rt(Ht(n)))},I(i0,"GraphStats/0methodref$max$Type",812),D(813,1,{},wR),l.Ve=function(e,n){return b.Math.max(Rt(Ht(e)),Rt(Ht(n)))},I(i0,"GraphStats/2methodref$max$Type",813),D(1726,1,{},FJ),l.Ve=function(e,n){return zcn(Ht(e),Ht(n))},I(i0,"GraphStats/lambda$1$Type",1726),D(1727,1,{},cUt),l.Kb=function(e){return Hle(this.a,u(e,30))},I(i0,"GraphStats/lambda$2$Type",1727),D(1728,1,{},uUt),l.Kb=function(e){return Pde(this.a,u(e,30))},I(i0,"GraphStats/lambda$6$Type",1728),D(814,1,{},mR),l.og=function(e,n){var r;return r=u(X(e,(De(),wAt)),15),r||(mn(),mn(),co)},l.pg=function(){return!1},I(i0,"ICutIndexCalculator/ManualCutIndexCalculator",814),D(816,1,{},vR),l.og=function(e,n){var r,s,o,h,d,m,k,T,A,P,$,U,J,tt,ht,Tt,At,Bt,Wt;for(Wt=(n.n==null&&whe(n),n.n),k=(n.d==null&&whe(n),n.d),Bt=Vt(ma,No,28,Wt.length,15,1),Bt[0]=Wt[0],Tt=Wt[0],T=1;T<Wt.length;T++)Bt[T]=Bt[T-1]+Wt[T],Tt+=Wt[T];for(o=Bfe(n)-1,d=u(X(e,(De(),mAt)),17).a,s=Vs,r=new fe,$=b.Math.max(0,o-d);$<=b.Math.min(n.f-1,o+d);$++){if(tt=Tt/($+1),ht=0,A=1,h=new fe,At=Vs,P=0,m=0,J=k[0],$==0)At=Tt,m=(n.g==null&&(n.g=nce(n,new wR)),Rt(n.g));else{for(;A<n.f;)Bt[A-1]-ht>=tt&&(ge(h,he(A)),At=b.Math.max(At,Bt[A-1]-P),m+=J,ht+=Bt[A-1]-ht,P=Bt[A-1],J=k[A]),J=b.Math.max(J,k[A]),++A;m+=J}U=b.Math.min(1/At,1/n.b/m),U>s&&(s=U,r=h)}return r},l.pg=function(){return!1},I(i0,"MSDCutIndexHeuristic",816),D(1683,1,zi,BJ),l.Kf=function(e,n){A7n(u(e,36),n)},I(i0,"SingleEdgeGraphWrapper",1683),D(232,22,{3:1,34:1,22:1,232:1},oS);var j5,kT,ET,T3,SA,$5,TT=Lr(Hc,"CenterEdgeLabelPlacementStrategy",232,Pr,d0n,pon),U4e;D(431,22,{3:1,34:1,22:1,431:1},Kwt);var kSt,Aft,ESt=Lr(Hc,"ConstraintCalculationStrategy",431,Pr,Ohn,bon),G4e;D(322,22,{3:1,34:1,22:1,322:1,188:1,196:1},xrt),l.dg=function(){return y1e(this)},l.qg=function(){return y1e(this)};var QN,_A,TSt,CSt=Lr(Hc,"CrossingMinimizationStrategy",322,Pr,_fn,won),K4e;D(351,22,{3:1,34:1,22:1,351:1},krt);var SSt,Lft,yG,_St=Lr(Hc,"CuttingStrategy",351,Pr,Afn,mon),W4e;D(348,22,{3:1,34:1,22:1,348:1,188:1,196:1},VM),l.dg=function(){return lde(this)},l.qg=function(){return lde(this)};var ASt,Dft,CT,Mft,ST,LSt=Lr(Hc,"CycleBreakingStrategy",348,Pr,Mdn,von),Y4e;D(428,22,{3:1,34:1,22:1,428:1},Wwt);var xG,DSt,MSt=Lr(Hc,"DirectionCongruency",428,Pr,Ihn,yon),X4e;D(459,22,{3:1,34:1,22:1,459:1},Ert);var _T,Ift,z5,Q4e=Lr(Hc,"EdgeConstraint",459,Pr,Lfn,_on),J4e;D(283,22,{3:1,34:1,22:1,283:1},cS);var Oft,Nft,Pft,Fft,kG,Bft,ISt=Lr(Hc,"EdgeLabelSideSelection",283,Pr,l0n,Aon),Z4e;D(487,22,{3:1,34:1,22:1,487:1},Ywt);var EG,OSt,NSt=Lr(Hc,"EdgeStraighteningStrategy",487,Pr,Mhn,Lon),t5e;D(281,22,{3:1,34:1,22:1,281:1},uS);var Rft,PSt,FSt,TG,BSt,RSt,jSt=Lr(Hc,"FixedAlignment",281,Pr,h0n,Son),e5e;D(282,22,{3:1,34:1,22:1,282:1},lS);var $St,zSt,qSt,HSt,AA,VSt,USt=Lr(Hc,"GraphCompactionStrategy",282,Pr,f0n,xon),n5e;D(259,22,{3:1,34:1,22:1,259:1},ky);var AT,CG,LT,Uh,LA,SG,DT,q5,_G,DA,jft=Lr(Hc,"GraphProperties",259,Pr,Xgn,kon),r5e;D(298,22,{3:1,34:1,22:1,298:1},Trt);var JN,$ft,zft,qft=Lr(Hc,"GreedySwitchType",298,Pr,Dfn,Eon),i5e;D(311,22,{3:1,34:1,22:1,311:1},Crt);var qk,ZN,H5,s5e=Lr(Hc,"InLayerConstraint",311,Pr,Mfn,Ton),a5e;D(429,22,{3:1,34:1,22:1,429:1},Xwt);var Hft,GSt,KSt=Lr(Hc,"InteractiveReferencePoint",429,Pr,jhn,Con),o5e,WSt,Hk,vv,AG,YSt,XSt,LG,QSt,tP,DG,MA,Vk,$g,Vft,MG,Dc,JSt,i2,lu,Uft,Gft,eP,Aw,yv,Uk,ZSt,Gk,nP,C3,N1,g
`;for(n=Dr(this.a,0);n.b!=n.d.c;)e=u(Ar(n),65),o+=(e.b&&e.c?Z2(e.b)+"->"+Z2(e.c):"e_"+$i(e))+`
`;return o};var p_n=I(nA,"TGraph",121);D(643,508,{3:1,508:1,643:1,96:1,137:1}),I(nA,"TShape",643),D(39,643,{3:1,508:1,39:1,643:1,96:1,137:1},Eat),l.Ib=function(){return Z2(this)};var aK=I(nA,"TNode",39);D(236,1,F0,gg),l.Jc=function(e){Fa(this,e)},l.Kc=function(){var e;return e=Dr(this.a.d,0),new M4(e)},I(nA,"TNode/2",236),D(329,1,wa,M4),l.Nb=function(e){Na(this,e)},l.Pb=function(){return u(Ar(this.a),65).c},l.Ob=function(){return IM(this.a)},l.Qb=function(){Qst(this.a)},I(nA,"TNode/2/1",329),D(1923,1,zi,FZ),l.Kf=function(e,n){LSn(this,u(e,121),n)},I(ou,"CompactionProcessor",1923),D(1924,1,Xr,UUt),l.Ne=function(e,n){return bpn(this.a,u(e,39),u(n,39))},l.Fb=function(e){return this===e},l.Oe=function(){return new Be(this)},I(ou,"CompactionProcessor/lambda$0$Type",1924),D(1925,1,Kr,NXt),l.Mb=function(e){return khn(this.b,this.a,u(e,42))},l.a=0,l.b=0,I(ou,"CompactionProcessor/lambda$1$Type",1925),D(1934,1,Xr,i6),l.Ne=function(e,n){return dln(u(e,39),u(n,39))},l.Fb=function(e){return this===e},l.Oe=function(){return new Be(this)},I(ou,"CompactionProcessor/lambda$10$Type",1934),D(1935,1,Xr,ER),l.Ne=function(e,n){return _sn(u(e,39),u(n,39))},l.Fb=function(e){return this===e},l.Oe=function(){return new Be(this)},I(ou,"CompactionProcessor/lambda$11$Type",1935),D(1936,1,Xr,BZ),l.Ne=function(e,n){return gln(u(e,39),u(n,39))},l.Fb=function(e){return this===e},l.Oe=function(){return new Be(this)},I(ou,"CompactionProcessor/lambda$12$Type",1936),D(1926,1,Kr,GUt),l.Mb=function(e){return lsn(this.a,u(e,42))},l.a=0,I(ou,"CompactionProcessor/lambda$2$Type",1926),D(1927,1,Kr,KUt),l.Mb=function(e){return hsn(this.a,u(e,42))},l.a=0,I(ou,"CompactionProcessor/lambda$3$Type",1927),D(1928,1,Kr,XD),l.Mb=function(e){return u(e,39).c.indexOf(nU)==-1},I(ou,"CompactionProcessor/lambda$4$Type",1928),D(1929,1,{},WUt),l.Kb=function(e){return T1n(this.a,u(e,39))},l.a=0,I(ou,"CompactionProcessor/lambda$5$Type",1929),D(1930,1,{},YUt),l.Kb=function(e){return I0n(this.a,u(e,39))},l.a=0,I(ou,"CompactionProcessor/lambda$6$Type",1930),D(1931,1,Xr,XUt),l.Ne=function(e,n){return Hdn(this.a,u(e,240),u(n,240))},l.Fb=function(e){return this===e},l.Oe=function(){return new Be(this)},I(ou,"CompactionProcessor/lambda$7$Type",1931),D(1932,1,Xr,QUt),l.Ne=function(e,n){return Vdn(this.a,u(e,39),u(n,39))},l.Fb=function(e){return this===e},l.Oe=function(){return new Be(this)},I(ou,"CompactionProcessor/lambda$8$Type",1932),D(1933,1,Xr,RZ),l.Ne=function(e,n){return Asn(u(e,39),u(n,39))},l.Fb=function(e){return this===e},l.Oe=function(){return new Be(this)},I(ou,"CompactionProcessor/lambda$9$Type",1933),D(1921,1,zi,jZ),l.Kf=function(e,n){C8n(u(e,121),n)},I(ou,"DirectionProcessor",1921),D(1913,1,zi,xZt),l.Kf=function(e,n){WEn(this,u(e,121),n)},I(ou,"FanProcessor",1913),D(1937,1,zi,$Z),l.Kf=function(e,n){d8n(u(e,121),n)},I(ou,"GraphBoundsProcessor",1937),D(1938,1,{},zZ),l.Ye=function(e){return u(e,39).e.a},I(ou,"GraphBoundsProcessor/lambda$0$Type",1938),D(1939,1,{},qZ),l.Ye=function(e){return u(e,39).e.b},I(ou,"GraphBoundsProcessor/lambda$1$Type",1939),D(1940,1,{},HZ),l.Ye=function(e){return Krn(u(e,39))},I(ou,"GraphBoundsProcessor/lambda$2$Type",1940),D(1941,1,{},VZ),l.Ye=function(e){return Grn(u(e,39))},I(ou,"GraphBoundsProcessor/lambda$3$Type",1941),D(262,22,{3:1,34:1,22:1,262:1,196:1},mm),l.dg=function(){switch(this.g){case 0:return new QKt;case 1:return new xZt;case 2:return new XKt;case 3:return new SR;case 4:return new UZ;case 8:return new TR;case 5:return new jZ;case 6:return new AR;case 7:return new FZ;case 9:return new $Z;case 10:return new KZ;default:throw at(new zn(jut+(this.f!=null?this.f:""+this.g)))}};var eLt,nLt,rLt,iLt,sLt,aLt,oLt,cLt,uLt,lLt,O1t,b_n=Lr(ou,$ut,262,Pr,pce,Qon),Uke;D(1920,1,zi,TR),l.Kf=function(e,n){SCn(u(e,121),n)},I(ou,"LevelCoordinatesProcessor",1920),D(1918,1,zi,UZ),l.Kf=function(e,n){K6n(this,u(e,121),n)},l.a=0,I(ou,"LevelHeightProcessor",1918),D(1919,1,F0,CR),l.Jc=function(e){Fa(this,e)},l.Kc=function(){return mn(),yE(),mT},I(ou,"LevelHeightProcessor/1",1919),D(1914,1,zi,XKt),l.Kf=function(e,n){o8n(this,u(e,121),n)},I(ou,"LevelProcessor",1914
`),o.length!=2)throw at(new zn("Exactly two numbers are expected, "+o.length+" were found."));try{this.a=Jy(Zy(o[0])),this.b=Jy(Zy(o[1]))}catch(h){throw h=es(h),Lt(h,130)?(r=h,at(new zn(p2e+r))):at(h)}},l.Ib=function(){return"("+this.a+","+this.b+")"},l.a=0,l.b=0;var la=I(yN,"KVector",8);D(75,67,{3:1,4:1,20:1,31:1,56:1,16:1,67:1,15:1,75:1,423:1},Qu,b$,UJt),l.Pc=function(){return xbn(this)},l.cg=function(e){var n,r,s,o,h,d;s=s3(e,`,|;|\\(|\\)|\\[|\\]|\\{|\\}| | |
`),nh(this);try{for(r=0,h=0,o=0,d=0;r<s.length;)s[r]!=null&&Zy(s[r]).length>0&&(h%2==0?o=Jy(s[r]):d=Jy(s[r]),h>0&&h%2!=0&&Zr(this,new ae(o,d)),++h),++r}catch(m){throw m=es(m),Lt(m,130)?(n=m,at(new zn("The given string does not match the expected format for vectors."+n))):at(m)}},l.Ib=function(){var e,n,r;for(e=new eh("("),n=Dr(this,0);n.b!=n.d.c;)r=u(Ar(n),8),ni(e,r.a+","+r.b),n.b!=n.d.c&&(e.a+="; ");return(e.a+=")",e).a};var sMt=I(yN,"KVectorChain",75);D(255,22,{3:1,34:1,22:1,255:1},hS);var _dt,CK,SK,EP,TP,_K,aMt=Lr(Nl,"Alignment",255,Pr,m0n,Ccn),e7e;D(991,1,uf,gnt),l.hf=function(e){ege(e)};var oMt,Adt,n7e,cMt,uMt,r7e,lMt,i7e,s7e,hMt,fMt,a7e;I(Nl,"BoxLayouterOptions",991),D(992,1,{},V8),l.sf=function(){var e;return e=new jtt,e},l.tf=function(e){},I(Nl,"BoxLayouterOptions/BoxFactory",992),D(297,22,{3:1,34:1,22:1,297:1},fS);var cL,Ldt,uL,lL,hL,Ddt,Mdt=Lr(Nl,"ContentAlignment",297,Pr,v0n,Scn),o7e;D(699,1,uf,Oj),l.hf=function(e){Qe(e,new He(Ye(We(Xe(Ve(Ke(Ue(Ge(new je,bwe),""),"Layout Algorithm"),"Select a specific layout algorithm."),(Fp(),ix)),Pe),en((D1(),_n))))),Qe(e,new He(Ye(We(Xe(Ve(Ke(Ue(Ge(new je,wwe),""),"Resolved Layout Algorithm"),"Meta data associated with the selected algorithm."),xd),y_n),en(_n)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,t7t),""),"Alignment"),"Alignment of the selected node relative to other nodes; the exact meaning depends on the used algorithm."),dMt),ts),aMt),en(Qs)))),Qe(e,new He(Ye(We(Xe(Ve(Ke(Ue(Ge(new je,Dk),""),"Aspect Ratio"),"The desired aspect ratio of the drawing, that is the quotient of width by height."),Wa),zs),en(_n)))),Qe(e,new He(Ye(We(Xe(Ve(Ke(Ue(Ge(new je,dTt),""),"Bend Points"),"A fixed list of bend points for the edge. This is used by the 'Fixed Layout' algorithm to specify a pre-defined routing for an edge. The vector chain must include the source point, any bend points, and the target point, so it must have at least two points."),xd),sMt),en(f0)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,QV),""),"Content Alignment"),"Specifies how the content of a node are aligned. Each node can individually control the alignment of its contents. I.e. if a node should be aligned top left in its parent node, the parent node should specify that option."),pMt),Qk),Mdt),en(_n)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,TN),""),"Debug Mode"),"Whether additional debug information shall be generated."),(Pn(),!1)),oa),ys),en(_n)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,blt),""),N8t),"Overall direction of edges: horizontal (right / left) or vertical (down / up)."),bMt),ts),gL),en(_n)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,EN),""),"Edge Routing"),"What kind of edge routing style should be applied for the content of a parent node. Algorithms may also set this option to single edges in order to mark them as splines. The bend point list of edges with this option set to SPLINES must be interpreted as control points for a piecewise cubic spline."),vMt),ts),Udt),en(_n)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,hTt),""),"Expand Nodes"),"If active, nodes are expanded to fill the area of their parent."),!1),oa),ys),en(_n)))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,XV),""),"Hierarchy Handling"),"Determines whether separate layout runs are triggered for different compound nodes in a hierarchical graph. Setting a node's hierarchy handling to `INCLUDE_CHILDREN` will lay out that node and all of its descendants in a single layout run, until a descendant is encountered which has its hierarchy handling set to `SEPARATE_CHILDREN`. In general, `SEPARATE_CHILDREN` will ensure that a new layout run is triggered for a node with that setting. Including multiple levels of hierarchy in a single layout run may allow cross-hierarchical edges to be laid out properly. If the root node is set to `INHERIT` (or not set at all), the default behavior is `SEPARATE_CHILDREN`."),kMt),ts),cIt),Hi(_n,lt(ut(G0,1),te,170,0,[Qs]))))),Qe(e,new He(Ye(We(Xe(fn(Ve(Ke(Ue(Ge(new je,ov),""),"Padding"),"The padding to be left to a parent element's border when placing child elements. This can also serve as an output
Consider installing the package or pass your own 'workerFactory' to ELK's constructor.
... Falling back to non-web worker version.`);if(!B.workerFactory){var nt=f("./elk-worker.min.js"),ot=nt.Worker;B.workerFactory=function(ft){return new ot(ft)}}return b(this,(F.__proto__||Object.getPrototypeOf(F)).call(this,B))}return F}(S);Object.defineProperty(g.exports,"__esModule",{value:!0}),g.exports=_,_.default=_},{"./elk-api.js":1,"./elk-worker.min.js":2,"web-worker":4}],4:[function(f,g,w){g.exports=Worker},{}]},{},[3])(3)})})(THt);var ptn=THt.exports;const btn=e9(ptn),CHt=new btn;let nm={};const wtn={};let Ux={};const mtn=async function(i,a,f,g,w,v,b){const S=f.select(`[id="${a}"]`).insert("g").attr("class","nodes"),_=Object.keys(i);return await Promise.all(_.map(async function(M){const F=i[M];let R="default";F.classes.length>0&&(R=F.classes.join(" ")),R=R+" flowchart-label";const B=C2(F.styles);let z=F.text!==void 0?F.text:F.id;const Y={width:0,height:0},nt=[{id:F.id+"-west",layoutOptions:{"port.side":"WEST"}},{id:F.id+"-east",layoutOptions:{"port.side":"EAST"}},{id:F.id+"-south",layoutOptions:{"port.side":"SOUTH"}},{id:F.id+"-north",layoutOptions:{"port.side":"NORTH"}}];let ot=0,ft="",wt={};switch(F.type){case"round":ot=5,ft="rect";break;case"square":ft="rect";break;case"diamond":ft="question",wt={portConstraints:"FIXED_SIDE"};break;case"hexagon":ft="hexagon";break;case"odd":ft="rect_left_inv_arrow";break;case"lean_right":ft="lean_right";break;case"lean_left":ft="lean_left";break;case"trapezoid":ft="trapezoid";break;case"inv_trapezoid":ft="inv_trapezoid";break;case"odd_right":ft="rect_left_inv_arrow";break;case"circle":ft="circle";break;case"ellipse":ft="ellipse";break;case"stadium":ft="stadium";break;case"subroutine":ft="subroutine";break;case"cylinder":ft="cylinder";break;case"group":ft="rect";break;case"doublecircle":ft="doublecircle";break;default:ft="rect"}const mt={labelStyle:B.labelStyle,shape:ft,labelText:z,labelType:F.labelType,rx:ot,ry:ot,class:R,style:B.style,id:F.id,link:F.link,linkTarget:F.linkTarget,tooltip:w.db.getTooltip(F.id)||"",domId:w.db.lookUpDomId(F.id),haveCallback:F.haveCallback,width:F.type==="group"?500:void 0,dir:F.dir,type:F.type,props:F.props,padding:o1().flowchart.padding};let ct,rt;if(mt.type!=="group")rt=await nX(S,mt,F.dir),ct=rt.node().getBBox();else{g.createElementNS("http://www.w3.org/2000/svg","text");const{shapeSvg:gt,bbox:Q}=await $1(S,mt,void 0,!0);Y.width=Q.width,Y.wrappingWidth=o1().flowchart.wrappingWidth,Y.height=Q.height,Y.labelNode=gt.node(),mt.labelData=Y}const it={id:F.id,ports:F.type==="diamond"?nt:[],layoutOptions:wt,labelText:z,labelData:Y,domId:w.db.lookUpDomId(F.id),width:ct==null?void 0:ct.width,height:ct==null?void 0:ct.height,type:F.type,el:rt,parent:v.parentById[F.id]};Ux[mt.id]=it})),b},SHt=(i,a,f)=>{const g={TB:{in:{north:"north"},out:{south:"west",west:"east",east:"south"}},LR:{in:{west:"west"},out:{east:"south",south:"north",north:"east"}},RL:{in:{east:"east"},out:{west:"north",north:"south",south:"west"}},BT:{in:{south:"south"},out:{north:"east",east:"west",west:"north"}}};return g.TD=g.TB,g[f][a][i]},_Ht=(i,a,f)=>{if(Kt.info("getNextPort",{node:i,edgeDirection:a,graphDirection:f}),!nm[i])switch(f){case"TB":case"TD":nm[i]={inPosition:"north",outPosition:"south"};break;case"BT":nm[i]={inPosition:"south",outPosition:"north"};break;case"RL":nm[i]={inPosition:"east",outPosition:"west"};break;case"LR":nm[i]={inPosition:"west",outPosition:"east"};break}const g=a==="in"?nm[i].inPosition:nm[i].outPosition;return a==="in"?nm[i].inPosition=SHt(nm[i].inPosition,a,f):nm[i].outPosition=SHt(nm[i].outPosition,a,f),g},vtn=(i,a)=>{let f=i.start,g=i.end;const w=f,v=g,b=Ux[f],E=Ux[g];return!b||!E?{source:f,target:g}:(b.type==="diamond"&&(f=`${f}-${_Ht(f,"out",a)}`),E.type==="diamond"&&(g=`${g}-${_Ht(g,"in",a)}`),{source:f,target:g,sourceId:w,targetId:v})},ytn=function(i,a,f,g){Kt.info("abc78 edges = ",i);const w=g.insert("g").attr("class","edgeLabels");let v={},b=a.db.getDirection(),E,S;if(i.defaultStyle!==void 0){const _=C2(i.defaultStyle);E=_.style,S=_.labelStyle}return i.forEach(function(_){const M="L-"+_.start+"-"+_.end;v[M]===void 0?(v[M]=0,Kt.info("abc78 new en
`),_.style===void 0&&(z.style=z.style||"stroke: #333; stroke-width: 1.5px;fill:none;"),z.labelStyle=z.labelStyle.replace("color:","fill:"),z.id=F,z.classes="flowchart-link "+R+" "+B;const ot=tbt(w,z),{source:ft,target:wt,sourceId:mt,targetId:ct}=vtn(_,b);Kt.debug("abc78 source and target",ft,wt),f.edges.push({id:"e"+_.start+_.end,sources:[ft],targets:[wt],sourceId:mt,targetId:ct,labelEl:ot,labels:[{width:z.width,height:z.height,orgWidth:z.width,orgHeight:z.height,text:z.label,layoutOptions:{"edgeLabels.inline":"true","edgeLabels.placement":"CENTER"}}],edgeData:z})}),f},xtn=function(i,a,f,g,w){let v="";g&&(v=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,v=v.replace(/\(/g,"\\("),v=v.replace(/\)/g,"\\)")),uzt(i,a,v,w,f)},ktn=function(i,a){return Kt.info("Extracting classes"),a.db.getClasses()},Etn=function(i){const a={parentById:{},childrenById:{}},f=i.getSubGraphs();return Kt.info("Subgraphs - ",f),f.forEach(function(g){g.nodes.forEach(function(w){a.parentById[w]=g.id,a.childrenById[g.id]===void 0&&(a.childrenById[g.id]=[]),a.childrenById[g.id].push(w)})}),f.forEach(function(g){g.id,a.parentById[g.id]!==void 0&&a.parentById[g.id]}),a},Ttn=function(i,a,f){const g=gtn(i,a,f);if(g===void 0||g==="root")return{x:0,y:0};const w=Ux[g].offset;return{x:w.posX,y:w.posY}},Ctn=function(i,a,f,g,w,v){const b=Ttn(a.sourceId,a.targetId,w),E=a.sections[0].startPoint,S=a.sections[0].endPoint,M=(a.sections[0].bendPoints?a.sections[0].bendPoints:[]).map(wt=>[wt.x+b.x,wt.y+b.y]),F=[[E.x+b.x,E.y+b.y],...M,[S.x+b.x,S.y+b.y]],{x:R,y:B}=czt(a.edgeData),z=Ax().x(R).y(B).curve(Kg),Y=i.insert("path").attr("d",z(F)).attr("class","path "+f.classes).attr("fill","none"),nt=i.insert("g").attr("class","edgeLabel"),ot=Tr(nt.node().appendChild(a.labelEl)),ft=ot.node().firstChild.getBoundingClientRect();ot.attr("width",ft.width),ot.attr("height",ft.height),nt.attr("transform",`translate(${a.labels[0].x+b.x}, ${a.labels[0].y+b.y})`),xtn(Y,f,g.type,g.arrowMarkerAbsolute,v)},AHt=(i,a)=>{i.forEach(f=>{f.children||(f.children=[]);const g=a.childrenById[f.id];g&&g.forEach(w=>{f.children.push(Ux[w])}),AHt(f.children,a)})},Stn=async function(i,a,f,g){var it;g.db.clear(),Ux={},nm={},g.db.setGen("gen-2"),g.parser.parse(i);const w=Tr("body").append("div").attr("style","height:400px").attr("id","cy");let v={id:"root",layoutOptions:{"elk.hierarchyHandling":"INCLUDE_CHILDREN","org.eclipse.elk.padding":"[top=100, left=100, bottom=110, right=110]","elk.layered.spacing.edgeNodeBetweenLayers":"30","elk.direction":"DOWN"},children:[],edges:[]};switch(Kt.info("Drawing flowchart using v3 renderer",CHt),g.db.getDirection()){case"BT":v.layoutOptions["elk.direction"]="UP";break;case"TB":v.layoutOptions["elk.direction"]="DOWN";break;case"LR":v.layoutOptions["elk.direction"]="RIGHT";break;case"RL":v.layoutOptions["elk.direction"]="LEFT";break}const{securityLevel:E,flowchart:S}=o1();let _;E==="sandbox"&&(_=Tr("#i"+a));const M=Tr(E==="sandbox"?_.nodes()[0].contentDocument.body:"body"),F=E==="sandbox"?_.nodes()[0].contentDocument:document,R=M.select(`[id="${a}"]`);jpt(R,["point","circle","cross"],g.type,a);const z=g.db.getVertices();let Y;const nt=g.db.getSubGraphs();Kt.info("Subgraphs - ",nt);for(let gt=nt.length-1;gt>=0;gt--)Y=nt[gt],g.db.addVertex(Y.id,{text:Y.title,type:Y.labelType},"group",void 0,Y.classes,Y.dir);const ot=R.insert("g").attr("class","subgraphs"),ft=Etn(g.db);v=await mtn(z,a,M,F,g,ft,v);const wt=R.insert("g").attr("class","edges edgePath"),mt=g.db.getEdges();v=ytn(mt,g,v,R),Object.keys(Ux).forEach(gt=>{const Q=Ux[gt];Q.parent||v.children.push(Q),ft.childrenById[gt]!==void 0&&(Q.labels=[{text:Q.labelText,layoutOptions:{"nodeLabels.placement":"[H_CENTER, V_TOP, INSIDE]"},width:Q.labelData.width,height:Q.labelData.height}],delete Q.x,delete Q.y,delete Q.width,delete Q.height)}),AHt(v.children,ft),Kt.info("after layout",JSON.stringify(v,null,2));const rt=await CHt.layout(v);LHt(0,0,rt.children,R,ot,g,0),Kt.info("after layout",rt),(it=rt.edges)==null||it.map(gt=>{Ctn(wt,gt,gt.edgeData,g,ft,a)}),w8({},R,S.diagramPadding,
.subgraph-lvl-${f} {
fill: ${i[`surface${f}`]};
stroke: ${i[`surfacePeer${f}`]};
}
`;return a},Ltn=Object.freeze(Object.defineProperty({__proto__:null,diagram:{db:wje,renderer:_tn,parser:spt,styles:i=>`.label {
font-family: ${i.fontFamily};
color: ${i.nodeTextColor||i.textColor};
2022-11-03 00:28:15 +01:00
}
2024-02-17 17:36:33 +01:00
.cluster-label text {
fill: ${i.titleColor};
2022-11-03 00:28:15 +01:00
}
2024-02-17 17:36:33 +01:00
.cluster-label span {
color: ${i.titleColor};
2022-11-03 00:28:15 +01:00
}
2024-02-17 17:36:33 +01:00
.label text,span {
fill: ${i.nodeTextColor||i.textColor};
color: ${i.nodeTextColor||i.textColor};
}
.node rect,
.node circle,
.node ellipse,
.node polygon,
.node path {
fill: ${i.mainBkg};
stroke: ${i.nodeBorder};
stroke-width: 1px;
}
2022-11-03 00:28:15 +01:00
2024-02-17 17:36:33 +01:00
.node .label {
text-align: center;
2022-11-03 00:28:15 +01:00
}
2024-02-17 17:36:33 +01:00
.node.clickable {
cursor: pointer;
2022-11-03 00:28:15 +01:00
}
2024-02-17 17:36:33 +01:00
.arrowheadPath {
fill: ${i.arrowheadColor};
2022-11-03 00:28:15 +01:00
}
2024-02-17 17:36:33 +01:00
.edgePath .path {
stroke: ${i.lineColor};
stroke-width: 2.0px;
2022-11-03 00:28:15 +01:00
}
2024-02-17 17:36:33 +01:00
.flowchart-link {
stroke: ${i.lineColor};
fill: none;
2022-11-03 00:28:15 +01:00
}
2024-02-17 17:36:33 +01:00
.edgeLabel {
background-color: ${i.edgeLabelBackground};
rect {
opacity: 0.85;
background-color: ${i.edgeLabelBackground};
fill: ${i.edgeLabelBackground};
}
text-align: center;
2022-11-03 00:28:15 +01:00
}
2024-02-17 17:36:33 +01:00
.cluster rect {
fill: ${i.clusterBkg};
stroke: ${i.clusterBorder};
stroke-width: 1px;
2022-11-03 00:28:15 +01:00
}
2024-02-17 17:36:33 +01:00
.cluster text {
fill: ${i.titleColor};
2022-11-03 00:28:15 +01:00
}
2024-02-17 17:36:33 +01:00
.cluster span {
color: ${i.titleColor};
2022-11-03 00:28:15 +01:00
}
2024-02-17 17:36:33 +01:00
/* .cluster div {
color: ${i.titleColor};
} */
2022-11-03 00:28:15 +01:00
2024-02-17 17:36:33 +01:00
div.mermaidTooltip {
position: absolute;
text-align: center;
max-width: 200px;
padding: 2px;
font-family: ${i.fontFamily};
font-size: 12px;
background: ${i.tertiaryColor};
border: 1px solid ${i.border2};
border-radius: 2px;
pointer-events: none;
z-index: 100;
2022-11-03 00:28:15 +01:00
}
2024-02-17 17:36:33 +01:00
.flowchartTitleText {
text-anchor: middle;
font-size: 18px;
fill: ${i.textColor};
2022-11-03 00:28:15 +01:00
}
2024-02-17 17:36:33 +01:00
.subgraph {
stroke-width:2;
rx:3;
}
// .subgraph-lvl-1 {
// fill:#ccc;
// // stroke:black;
// }
2022-11-03 00:28:15 +01:00
2024-02-17 17:36:33 +01:00
.flowchart-label text {
text-anchor: middle;
2022-11-03 00:28:15 +01:00
}
2024-02-17 17:36:33 +01:00
${Atn(i)}
`}},Symbol.toStringTag,{value:"Module"}));var l2t=function(){var i=function(R,B,z,Y){for(z=z||{},Y=R.length;Y--;z[R[Y]]=B);return z},a=[6,8,10,11,12,14,16,17,20,21],f=[1,9],g=[1,10],w=[1,11],v=[1,12],b=[1,13],E=[1,16],S=[1,17],_={trace:function(){},yy:{},symbols_:{error:2,start:3,timeline:4,document:5,EOF:6,line:7,SPACE:8,statement:9,NEWLINE:10,title:11,acc_title:12,acc_title_value:13,acc_descr:14,acc_descr_value:15,acc_descr_multiline_value:16,section:17,period_statement:18,event_statement:19,period:20,event:21,$accept:0,$end:1},terminals_:{2:"error",4:"timeline",6:"EOF",8:"SPACE",10:"NEWLINE",11:"title",12:"acc_title",13:"acc_title_value",14:"acc_descr",15:"acc_descr_value",16:"acc_descr_multiline_value",17:"section",20:"period",21:"event"},productions_:[0,[3,3],[5,0],[5,2],[7,2],[7,1],[7,1],[7,1],[9,1],[9,2],[9,2],[9,1],[9,1],[9,1],[9,1],[18,1],[19,1]],performAction:function(B,z,Y,nt,ot,ft,wt){var mt=ft.length-1;switch(ot){case 1:return ft[mt-1];case 2:this.$=[];break;case 3:ft[mt-1].push(ft[mt]),this.$=ft[mt-1];break;case 4:case 5:this.$=ft[mt];break;case 6:case 7:this.$=[];break;case 8:nt.getCommonDb().setDiagramTitle(ft[mt].substr(6)),this.$=ft[mt].substr(6);break;case 9:this.$=ft[mt].trim(),nt.getCommonDb().setAccTitle(this.$);break;case 10:case 11:this.$=ft[mt].trim(),nt.getCommonDb().setAccDescription(this.$);break;case 12:nt.addSection(ft[mt].substr(8)),this.$=ft[mt].substr(8);break;case 15:nt.addTask(ft[mt],0,""),this.$=ft[mt];break;case 16:nt.addEvent(ft[mt].substr(2)),this.$=ft[mt];break}},table:[{3:1,4:[1,2]},{1:[3]},i(a,[2,2],{5:3}),{6:[1,4],7:5,8:[1,6],9:7,10:[1,8],11:f,12:g,14:w,16:v,17:b,18:14,19:15,20:E,21:S},i(a,[2,7],{1:[2,1]}),i(a,[2,3]),{9:18,11:f,12:g,14:w,16:v,17:b,18:14,19:15,20:E,21:S},i(a,[2,5]),i(a,[2,6]),i(a,[2,8]),{13:[1,19]},{15:[1,20]},i(a,[2,11]),i(a,[2,12]),i(a,[2,13]),i(a,[2,14]),i(a,[2,15]),i(a,[2,16]),i(a,[2,4]),i(a,[2,9]),i(a,[2,10])],defaultActions:{},parseError:function(B,z){if(z.recoverable)this.trace(B);else{var Y=new Error(B);throw Y.hash=z,Y}},parse:function(B){var z=this,Y=[0],nt=[],ot=[null],ft=[],wt=this.table,mt="",ct=0,rt=0,it=2,gt=1,Q=ft.slice.call(arguments,1),dt=Object.create(this.lexer),K={yy:{}};for(var yt in this.yy)Object.prototype.hasOwnProperty.call(this.yy,yt)&&(K.yy[yt]=this.yy[yt]);dt.setInput(B,K.yy),K.yy.lexer=dt,K.yy.parser=this,typeof dt.yylloc>"u"&&(dt.yylloc={});var V=dt.yylloc;ft.push(V);var Ot=dt.options&&dt.options.ranges;typeof K.yy.parseError=="function"?this.parseError=K.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function It(){var ye;return ye=nt.pop()||dt.lex()||gt,typeof ye!="number"&&(ye instanceof Array&&(nt=ye,ye=nt.pop()),ye=z.symbols_[ye]||ye),ye}for(var jt,xt,Ft,Ct,kt={},Gt,Fe,Mt,pn;;){if(xt=Y[Y.length-1],this.defaultActions[xt]?Ft=this.defaultActions[xt]:((jt===null||typeof jt>"u")&&(jt=It()),Ft=wt[xt]&&wt[xt][jt]),typeof Ft>"u"||!Ft.length||!Ft[0]){var Ae="";pn=[];for(Gt in wt[xt])this.terminals_[Gt]&&Gt>it&&pn.push("'"+this.terminals_[Gt]+"'");dt.showPosition?Ae="Parse error on line "+(ct+1)+`:
`+dt.showPosition()+`
Expecting `+pn.join(", ")+", got '"+(this.terminals_[jt]||jt)+"'":Ae="Parse error on line "+(ct+1)+": Unexpected "+(jt==gt?"end of input":"'"+(this.terminals_[jt]||jt)+"'"),this.parseError(Ae,{text:dt.match,token:this.terminals_[jt]||jt,line:dt.yylineno,loc:V,expected:pn})}if(Ft[0]instanceof Array&&Ft.length>1)throw new Error("Parse Error: multiple actions possible at state: "+xt+", token: "+jt);switch(Ft[0]){case 1:Y.push(jt),ot.push(dt.yytext),ft.push(dt.yylloc),Y.push(Ft[1]),jt=null,rt=dt.yyleng,mt=dt.yytext,ct=dt.yylineno,V=dt.yylloc;break;case 2:if(Fe=this.productions_[Ft[1]][1],kt.$=ot[ot.length-Fe],kt._$={first_line:ft[ft.length-(Fe||1)].first_line,last_line:ft[ft.length-1].last_line,first_column:ft[ft.length-(Fe||1)].first_column,last_column:ft[ft.length-1].last_column},Ot&&(kt._$.range=[ft[ft.length-(Fe||1)].range[0],ft[ft.length-1].range[1]]),Ct=this.performAction.apply(kt,[mt,rt,ct,K.yy,Ft[1],ot,ft].concat(Q)),typeof Ct<"u")return Ct;Fe&&(Y=Y.slice(0,-1*Fe*2),ot=ot.slice(0,-1*Fe),ft=ft.slice(0,-1*Fe)),Y.push(this.productions_[Ft[1]][0]),ot.push(kt.$),ft.push(kt._$),Mt=wt[Y[Y.length-2]][Y[Y.length-1]],Y.push(Mt);break;case 3:return!0}}return!0}},M=function(){var R={EOF:1,parseError:function(z,Y){if(this.yy.parser)this.yy.parser.parseError(z,Y);else throw new Error(z)},setInput:function(B,z){return this.yy=z||this.yy||{},this._input=B,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var B=this._input[0];this.yytext+=B,this.yyleng++,this.offset++,this.match+=B,this.matched+=B;var z=B.match(/(?:\r\n?|\n).*/g);return z?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),B},unput:function(B){var z=B.length,Y=B.split(/(?:\r\n?|\n)/g);this._input=B+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-z),this.offset-=z;var nt=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),Y.length-1&&(this.yylineno-=Y.length-1);var ot=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:Y?(Y.length===nt.length?this.yylloc.first_column:0)+nt[nt.length-Y.length].length-Y[0].length:this.yylloc.first_column-z},this.options.ranges&&(this.yylloc.range=[ot[0],ot[0]+this.yyleng-z]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(B){this.unput(this.match.slice(B))},pastInput:function(){var B=this.matched.substr(0,this.matched.length-this.match.length);return(B.length>20?"...":"")+B.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var B=this.match;return B.length<20&&(B+=this._input.substr(0,20-B.length)),(B.substr(0,20)+(B.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var B=this.pastInput(),z=new Array(B.length+1).join("-");return B+this.upcomingInput()+`
`+z+"^"},test_match:function(B,z){var Y,nt,ot;if(this.options.backtrack_lexer&&(ot={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(ot.yylloc.range=this.yylloc.range.slice(0))),nt=B[0].match(/(?:\r\n?|\n).*/g),nt&&(this.yylineno+=nt.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:nt?nt[nt.length-1].length-nt[nt.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+B[0].length},this.yytext+=B[0],this.match+=B[0],this.matches=B,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(B[0].length),this.matched+=B[0],Y=this.performAction.call(this,this.yy,this,z,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),Y)return Y;if(this._backtrack){for(var ft in ot)this[ft]=ot[ft];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var B,z,Y,nt;this._more||(this.yytext="",this.match="");for(var ot=this._currentRules(),ft=0;ft<ot.length;ft++)if(Y=this._input.match(this.rules[ot[ft]]),Y&&(!z||Y[0].length>z[0].length)){if(z=Y,nt=ft,this.options.backtrack_lexer){if(B=this.test_match(Y,ot[ft]),B!==!1)return B;if(this._backtrack){z=!1;continue}else return!1}else if(!this.options.flex)break}return z?(B=this.test_match(z,ot[nt]),B!==!1?B:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.
`+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var z=this.next();return z||this.lex()},begin:function(z){this.conditionStack.push(z)},popState:function(){var z=this.conditionStack.length-1;return z>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(z){return z=this.conditionStack.length-1-Math.abs(z||0),z>=0?this.conditionStack[z]:"INITIAL"},pushState:function(z){this.begin(z)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(z,Y,nt,ot){switch(nt){case 0:break;case 1:break;case 2:return 10;case 3:break;case 4:break;case 5:return 4;case 6:return 11;case 7:return this.begin("acc_title"),12;case 8:return this.popState(),"acc_title_value";case 9:return this.begin("acc_descr"),14;case 10:return this.popState(),"acc_descr_value";case 11:this.begin("acc_descr_multiline");break;case 12:this.popState();break;case 13:return"acc_descr_multiline_value";case 14:return 17;case 15:return 21;case 16:return 20;case 17:return 6;case 18:return"INVALID"}},rules:[/^(?:%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?:#[^\n]*)/i,/^(?:timeline\b)/i,/^(?:title\s[^#\n;]+)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:section\s[^#:\n;]+)/i,/^(?::\s[^#:\n;]+)/i,/^(?:[^#:\n;]+)/i,/^(?:$)/i,/^(?:.)/i],conditions:{acc_descr_multiline:{rules:[12,13],inclusive:!1},acc_descr:{rules:[10],inclusive:!1},acc_title:{rules:[8],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,7,9,11,14,15,16,17,18],inclusive:!0}}};return R}();_.lexer=M;function F(){this.yy={}}return F.prototype=_,_.Parser=F,new F}();l2t.parser=l2t;const Dtn=l2t;let ND="",DHt=0;const h2t=[],IX=[],PD=[],MHt=()=>uBt,IHt=function(){h2t.length=0,IX.length=0,ND="",PD.length=0,ag()},OHt=function(i){ND=i,h2t.push(i)},NHt=function(){return h2t},PHt=function(){let i=jHt();const a=100;let f=0;for(;!i&&f<a;)i=jHt(),f++;return IX.push(...PD),IX},FHt=function(i,a,f){const g={id:DHt++,section:ND,type:ND,task:i,score:a||0,events:f?[f]:[]};PD.push(g)},BHt=function(i){PD.find(f=>f.id===DHt-1).events.push(i)},RHt=function(i){const a={section:ND,type:ND,description:i,task:i,classes:[]};IX.push(a)},jHt=function(){const i=function(f){return PD[f].processed};let a=!0;for(const[f,g]of PD.entries())i(f),a=a&&g.processed;return a},Mtn=Object.freeze(Object.defineProperty({__proto__:null,addEvent:BHt,addSection:OHt,addTask:FHt,addTaskOrg:RHt,clear:IHt,default:{clear:IHt,getCommonDb:MHt,addSection:OHt,getSections:NHt,getTasks:PHt,addTask:FHt,addTaskOrg:RHt,addEvent:BHt},getCommonDb:MHt,getSections:NHt,getTasks:PHt},Symbol.toStringTag,{value:"Module"})),Itn=12,OX=function(i,a){const f=i.append("rect");return f.attr("x",a.x),f.attr("y",a.y),f.attr("fill",a.fill),f.attr("stroke",a.stroke),f.attr("width",a.width),f.attr("height",a.height),f.attr("rx",a.rx),f.attr("ry",a.ry),a.class!==void 0&&f.attr("class",a.class),f},Otn=function(i,a){const g=i.append("circle").attr("cx",a.cx).attr("cy",a.cy).attr("class","face").attr("r",15).attr("stroke-width",2).attr("overflow","visible"),w=i.append("g");w.append("circle").attr("cx",a.cx-15/3).attr("cy",a.cy-15/3).attr("r",1.5).attr("stroke-width",2).attr("fill","#666").attr("stroke","#666"),w.append("circle").attr("cx",a.cx+15/3).attr("cy",a.cy-15/3).attr("r",1.5).attr("stroke-width",2).attr("fill","#666").attr("stroke","#666");function v(S){const _=YL().startAngle(Math.PI/2).endAngle(3*(Math.PI/2)).innerRadius(7.5).outerRadius(6.8181818181818175);S.append("path").attr("class","mouth").attr("d",_).attr("transform","translate("+a.cx+","+(a.cy+2)+")")}function b(S){const _=YL().startAngle(3*Math.PI/2).endAngle(5*(Math.PI/2)).innerRadius(7.5).outerRadius(6.8181818181818175);S.append("path").attr("class","mouth").attr("d",_).attr("transform",
.section-${f-1} rect, .section-${f-1} path, .section-${f-1} circle, .section-${f-1} path {
fill: ${i["cScale"+f]};
}
.section-${f-1} text {
fill: ${i["cScaleLabel"+f]};
}
.node-icon-${f-1} {
font-size: 40px;
color: ${i["cScaleLabel"+f]};
}
.section-edge-${f-1}{
stroke: ${i["cScale"+f]};
}
.edge-depth-${f-1}{
stroke-width: ${g};
}
.section-${f-1} line {
stroke: ${i["cScaleInv"+f]} ;
stroke-width: 3;
}
.lineWrapper line{
stroke: ${i["cScaleLabel"+f]} ;
}
.disabled, .disabled circle, .disabled text {
fill: lightgray;
}
.disabled text {
fill: #efefef;
}
`}return a},Wtn=Object.freeze(Object.defineProperty({__proto__:null,diagram:{db:Mtn,renderer:Gtn,parser:Dtn,styles:i=>`
.edge {
2022-11-03 00:28:15 +01:00
stroke-width: 3;
}
2024-02-17 17:36:33 +01:00
${Ktn(i)}
.section-root rect, .section-root path, .section-root circle {
fill: ${i.git0};
2022-11-03 00:28:15 +01:00
}
2024-02-17 17:36:33 +01:00
.section-root text {
fill: ${i.gitBranchLabel0};
}
.icon-container {
height:100%;
display: flex;
justify-content: center;
align-items: center;
2022-11-03 00:28:15 +01:00
}
2024-02-17 17:36:33 +01:00
.edge {
fill: none;
}
.eventWrapper {
filter: brightness(120%);
}
`}},Symbol.toStringTag,{value:"Module"}));var d2t=function(){var i=function(mt,ct,rt,it){for(rt=rt||{},it=mt.length;it--;rt[mt[it]]=ct);return rt},a=[1,4],f=[1,13],g=[1,12],w=[1,15],v=[1,16],b=[1,20],E=[1,19],S=[6,7,8],_=[1,26],M=[1,24],F=[1,25],R=[6,7,11],B=[1,6,13,15,16,19,22],z=[1,33],Y=[1,34],nt=[1,6,7,11,13,15,16,19,22],ot={trace:function(){},yy:{},symbols_:{error:2,start:3,mindMap:4,spaceLines:5,SPACELINE:6,NL:7,MINDMAP:8,document:9,stop:10,EOF:11,statement:12,SPACELIST:13,node:14,ICON:15,CLASS:16,nodeWithId:17,nodeWithoutId:18,NODE_DSTART:19,NODE_DESCR:20,NODE_DEND:21,NODE_ID:22,$accept:0,$end:1},terminals_:{2:"error",6:"SPACELINE",7:"NL",8:"MINDMAP",11:"EOF",13:"SPACELIST",15:"ICON",16:"CLASS",19:"NODE_DSTART",20:"NODE_DESCR",21:"NODE_DEND",22:"NODE_ID"},productions_:[0,[3,1],[3,2],[5,1],[5,2],[5,2],[4,2],[4,3],[10,1],[10,1],[10,1],[10,2],[10,2],[9,3],[9,2],[12,2],[12,2],[12,2],[12,1],[12,1],[12,1],[12,1],[12,1],[14,1],[14,1],[18,3],[17,1],[17,4]],performAction:function(ct,rt,it,gt,Q,dt,K){var yt=dt.length-1;switch(Q){case 6:case 7:return gt;case 8:gt.getLogger().trace("Stop NL ");break;case 9:gt.getLogger().trace("Stop EOF ");break;case 11:gt.getLogger().trace("Stop NL2 ");break;case 12:gt.getLogger().trace("Stop EOF2 ");break;case 15:gt.getLogger().info("Node: ",dt[yt].id),gt.addNode(dt[yt-1].length,dt[yt].id,dt[yt].descr,dt[yt].type);break;case 16:gt.getLogger().trace("Icon: ",dt[yt]),gt.decorateNode({icon:dt[yt]});break;case 17:case 21:gt.decorateNode({class:dt[yt]});break;case 18:gt.getLogger().trace("SPACELIST");break;case 19:gt.getLogger().trace("Node: ",dt[yt].id),gt.addNode(0,dt[yt].id,dt[yt].descr,dt[yt].type);break;case 20:gt.decorateNode({icon:dt[yt]});break;case 25:gt.getLogger().trace("node found ..",dt[yt-2]),this.$={id:dt[yt-1],descr:dt[yt-1],type:gt.getType(dt[yt-2],dt[yt])};break;case 26:this.$={id:dt[yt],descr:dt[yt],type:gt.nodeType.DEFAULT};break;case 27:gt.getLogger().trace("node found ..",dt[yt-3]),this.$={id:dt[yt-3],descr:dt[yt-1],type:gt.getType(dt[yt-2],dt[yt])};break}},table:[{3:1,4:2,5:3,6:[1,5],8:a},{1:[3]},{1:[2,1]},{4:6,6:[1,7],7:[1,8],8:a},{6:f,7:[1,10],9:9,12:11,13:g,14:14,15:w,16:v,17:17,18:18,19:b,22:E},i(S,[2,3]),{1:[2,2]},i(S,[2,4]),i(S,[2,5]),{1:[2,6],6:f,12:21,13:g,14:14,15:w,16:v,17:17,18:18,19:b,22:E},{6:f,9:22,12:11,13:g,14:14,15:w,16:v,17:17,18:18,19:b,22:E},{6:_,7:M,10:23,11:F},i(R,[2,22],{17:17,18:18,14:27,15:[1,28],16:[1,29],19:b,22:E}),i(R,[2,18]),i(R,[2,19]),i(R,[2,20]),i(R,[2,21]),i(R,[2,23]),i(R,[2,24]),i(R,[2,26],{19:[1,30]}),{20:[1,31]},{6:_,7:M,10:32,11:F},{1:[2,7],6:f,12:21,13:g,14:14,15:w,16:v,17:17,18:18,19:b,22:E},i(B,[2,14],{7:z,11:Y}),i(nt,[2,8]),i(nt,[2,9]),i(nt,[2,10]),i(R,[2,15]),i(R,[2,16]),i(R,[2,17]),{20:[1,35]},{21:[1,36]},i(B,[2,13],{7:z,11:Y}),i(nt,[2,11]),i(nt,[2,12]),{21:[1,37]},i(R,[2,25]),i(R,[2,27])],defaultActions:{2:[2,1],6:[2,2]},parseError:function(ct,rt){if(rt.recoverable)this.trace(ct);else{var it=new Error(ct);throw it.hash=rt,it}},parse:function(ct){var rt=this,it=[0],gt=[],Q=[null],dt=[],K=this.table,yt="",V=0,Ot=0,It=2,jt=1,xt=dt.slice.call(arguments,1),Ft=Object.create(this.lexer),Ct={yy:{}};for(var kt in this.yy)Object.prototype.hasOwnProperty.call(this.yy,kt)&&(Ct.yy[kt]=this.yy[kt]);Ft.setInput(ct,Ct.yy),Ct.yy.lexer=Ft,Ct.yy.parser=this,typeof Ft.yylloc>"u"&&(Ft.yylloc={});var Gt=Ft.yylloc;dt.push(Gt);var Fe=Ft.options&&Ft.options.ranges;typeof Ct.yy.parseError=="function"?this.parseError=Ct.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Mt(){var Mn;return Mn=gt.pop()||Ft.lex()||jt,typeof Mn!="number"&&(Mn instanceof Array&&(gt=Mn,Mn=gt.pop()),Mn=rt.symbols_[Mn]||Mn),Mn}for(var pn,Ae,ye,tn,sn={},be,Ne,Xt,_e;;){if(Ae=it[it.length-1],this.defaultActions[Ae]?ye=this.defaultActions[Ae]:((pn===null||typeof pn>"u")&&(pn=Mt()),ye=K[Ae]&&K[Ae][pn]),typeof ye>"u"||!ye.length||!ye[0]){var xe="";_e=[];for(be in K[Ae])this.terminals_[be]&&be>It&&_e.push("'"+this.terminals_[be]+"'");Ft.showPosition?xe="Parse error on line "+(V+1)+`:
`+Ft.showPosition()+`
Expecting `+_e.join(", ")+", got '"+(this.terminals_[pn]||pn)+"'":xe="Parse error on line "+(V+1)+": Unexpected "+(pn==jt?"end of input":"'"+(this.terminals_[pn]||pn)+"'"),this.parseError(xe,{text:Ft.match,token:this.terminals_[pn]||pn,line:Ft.yylineno,loc:Gt,expected:_e})}if(ye[0]instanceof Array&&ye.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Ae+", token: "+pn);switch(ye[0]){case 1:it.push(pn),Q.push(Ft.yytext),dt.push(Ft.yylloc),it.push(ye[1]),pn=null,Ot=Ft.yyleng,yt=Ft.yytext,V=Ft.yylineno,Gt=Ft.yylloc;break;case 2:if(Ne=this.productions_[ye[1]][1],sn.$=Q[Q.length-Ne],sn._$={first_line:dt[dt.length-(Ne||1)].first_line,last_line:dt[dt.length-1].last_line,first_column:dt[dt.length-(Ne||1)].first_column,last_column:dt[dt.length-1].last_column},Fe&&(sn._$.range=[dt[dt.length-(Ne||1)].range[0],dt[dt.length-1].range[1]]),tn=this.performAction.apply(sn,[yt,Ot,V,Ct.yy,ye[1],Q,dt].concat(xt)),typeof tn<"u")return tn;Ne&&(it=it.slice(0,-1*Ne*2),Q=Q.slice(0,-1*Ne),dt=dt.slice(0,-1*Ne)),it.push(this.productions_[ye[1]][0]),Q.push(sn.$),dt.push(sn._$),Xt=K[it[it.length-2]][it[it.length-1]],it.push(Xt);break;case 3:return!0}}return!0}},ft=function(){var mt={EOF:1,parseError:function(rt,it){if(this.yy.parser)this.yy.parser.parseError(rt,it);else throw new Error(rt)},setInput:function(ct,rt){return this.yy=rt||this.yy||{},this._input=ct,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var ct=this._input[0];this.yytext+=ct,this.yyleng++,this.offset++,this.match+=ct,this.matched+=ct;var rt=ct.match(/(?:\r\n?|\n).*/g);return rt?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),ct},unput:function(ct){var rt=ct.length,it=ct.split(/(?:\r\n?|\n)/g);this._input=ct+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-rt),this.offset-=rt;var gt=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),it.length-1&&(this.yylineno-=it.length-1);var Q=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:it?(it.length===gt.length?this.yylloc.first_column:0)+gt[gt.length-it.length].length-it[0].length:this.yylloc.first_column-rt},this.options.ranges&&(this.yylloc.range=[Q[0],Q[0]+this.yyleng-rt]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(ct){this.unput(this.match.slice(ct))},pastInput:function(){var ct=this.matched.substr(0,this.matched.length-this.match.length);return(ct.length>20?"...":"")+ct.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var ct=this.match;return ct.length<20&&(ct+=this._input.substr(0,20-ct.length)),(ct.substr(0,20)+(ct.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var ct=this.pastInput(),rt=new Array(ct.length+1).join("-");return ct+this.upcomingInput()+`
`+rt+"^"},test_match:function(ct,rt){var it,gt,Q;if(this.options.backtrack_lexer&&(Q={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(Q.yylloc.range=this.yylloc.range.slice(0))),gt=ct[0].match(/(?:\r\n?|\n).*/g),gt&&(this.yylineno+=gt.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:gt?gt[gt.length-1].length-gt[gt.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+ct[0].length},this.yytext+=ct[0],this.match+=ct[0],this.matches=ct,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(ct[0].length),this.matched+=ct[0],it=this.performAction.call(this,this.yy,this,rt,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),it)return it;if(this._backtrack){for(var dt in Q)this[dt]=Q[dt];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var ct,rt,it,gt;this._more||(this.yytext="",this.match="");for(var Q=this._currentRules(),dt=0;dt<Q.length;dt++)if(it=this._input.match(this.rules[Q[dt]]),it&&(!rt||it[0].length>rt[0].length)){if(rt=it,gt=dt,this.options.backtrack_lexer){if(ct=this.test_match(it,Q[dt]),ct!==!1)return ct;if(this._backtrack){rt=!1;continue}else return!1}else if(!this.options.flex)break}return rt?(ct=this.test_match(rt,Q[gt]),ct!==!1?ct:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.
`+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var rt=this.next();return rt||this.lex()},begin:function(rt){this.conditionStack.push(rt)},popState:function(){var rt=this.conditionStack.length-1;return rt>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(rt){return rt=this.conditionStack.length-1-Math.abs(rt||0),rt>=0?this.conditionStack[rt]:"INITIAL"},pushState:function(rt){this.begin(rt)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(rt,it,gt,Q){switch(gt){case 0:return rt.getLogger().trace("Found comment",it.yytext),6;case 1:return 8;case 2:this.begin("CLASS");break;case 3:return this.popState(),16;case 4:this.popState();break;case 5:rt.getLogger().trace("Begin icon"),this.begin("ICON");break;case 6:return rt.getLogger().trace("SPACELINE"),6;case 7:return 7;case 8:return 15;case 9:rt.getLogger().trace("end icon"),this.popState();break;case 10:return rt.getLogger().trace("Exploding node"),this.begin("NODE"),19;case 11:return rt.getLogger().trace("Cloud"),this.begin("NODE"),19;case 12:return rt.getLogger().trace("Explosion Bang"),this.begin("NODE"),19;case 13:return rt.getLogger().trace("Cloud Bang"),this.begin("NODE"),19;case 14:return this.begin("NODE"),19;case 15:return this.begin("NODE"),19;case 16:return this.begin("NODE"),19;case 17:return this.begin("NODE"),19;case 18:return 13;case 19:return 22;case 20:return 11;case 21:this.begin("NSTR2");break;case 22:return"NODE_DESCR";case 23:this.popState();break;case 24:rt.getLogger().trace("Starting NSTR"),this.begin("NSTR");break;case 25:return rt.getLogger().trace("description:",it.yytext),"NODE_DESCR";case 26:this.popState();break;case 27:return this.popState(),rt.getLogger().trace("node end ))"),"NODE_DEND";case 28:return this.popState(),rt.getLogger().trace("node end )"),"NODE_DEND";case 29:return this.popState(),rt.getLogger().trace("node end ...",it.yytext),"NODE_DEND";case 30:return this.popState(),rt.getLogger().trace("node end (("),"NODE_DEND";case 31:return this.popState(),rt.getLogger().trace("node end (-"),"NODE_DEND";case 32:return this.popState(),rt.getLogger().trace("node end (-"),"NODE_DEND";case 33:return this.popState(),rt.getLogger().trace("node end (("),"NODE_DEND";case 34:return this.popState(),rt.getLogger().trace("node end (("),"NODE_DEND";case 35:return rt.getLogger().trace("Long description:",it.yytext),20;case 36:return rt.getLogger().trace("Long description:",it.yytext),20}},rules:[/^(?:\s*%%.*)/i,/^(?:mindmap\b)/i,/^(?::::)/i,/^(?:.+)/i,/^(?:\n)/i,/^(?:::icon\()/i,/^(?:[\s]+[\n])/i,/^(?:[\n]+)/i,/^(?:[^\)]+)/i,/^(?:\))/i,/^(?:-\))/i,/^(?:\(-)/i,/^(?:\)\))/i,/^(?:\))/i,/^(?:\(\()/i,/^(?:\{\{)/i,/^(?:\()/i,/^(?:\[)/i,/^(?:[\s]+)/i,/^(?:[^\(\[\n\)\{\}]+)/i,/^(?:$)/i,/^(?:["][`])/i,/^(?:[^`"]+)/i,/^(?:[`]["])/i,/^(?:["])/i,/^(?:[^"]+)/i,/^(?:["])/i,/^(?:[\)]\))/i,/^(?:[\)])/i,/^(?:[\]])/i,/^(?:\}\})/i,/^(?:\(-)/i,/^(?:-\))/i,/^(?:\(\()/i,/^(?:\()/i,/^(?:[^\)\]\(\}]+)/i,/^(?:.+(?!\(\())/i],conditions:{CLASS:{rules:[3,4],inclusive:!1},ICON:{rules:[8,9],inclusive:!1},NSTR2:{rules:[22,23],inclusive:!1},NSTR:{rules:[25,26],inclusive:!1},NODE:{rules:[21,24,27,28,29,30,31,32,33,34,35,36],inclusive:!1},INITIAL:{rules:[0,1,2,5,6,7,10,11,12,13,14,15,16,17,18,19,20],inclusive:!0}}};return mt}();ot.lexer=ft;function wt(){this.yy={}}return wt.prototype=ot,ot.Parser=wt,new wt}();d2t.parser=d2t;const Ytn=d2t;let ry=[],UHt=0,g2t={};const Xtn=()=>{ry=[],UHt=0,g2t={}},Qtn=function(i){for(let a=ry.length-1;a>=0;a--)if(ry[a].level<i)return ry[a];return null},Jtn=()=>ry.length>0?ry[0]:null,Ztn=(i,a,f,g)=>{var S,_;Kt.info("addNode",i,a,f,g);const w=Re();let v=((S=w.mindmap)==null?void 0:S.padding)??Bl.mindmap.padding;switch(g){case V1.ROUNDED_RECT:case V1.RECT:case V1.HEXAGON:v*=2}const b={id:UHt++,nodeId:Ef(a,w),level:i,descr:Ef(f,w),type
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var B=typeof window>"u"?null:window,z=B?B.navigator:null;B&&B.document;var Y=f(""),nt=f({}),ot=f(function(){}),ft=typeof HTMLElement>"u"?"undefined":f(HTMLElement),wt=function(p){return p&&p.instanceString&&ct(p.instanceString)?p.instanceString():null},mt=function(p){return p!=null&&f(p)==Y},ct=function(p){return p!=null&&f(p)===ot},rt=function(p){return!yt(p)&&(Array.isArray?Array.isArray(p):p!=null&&p instanceof Array)},it=function(p){return p!=null&&f(p)===nt&&!rt(p)&&p.constructor===Object},gt=function(p){return p!=null&&f(p)===nt},Q=function(p){return p!=null&&f(p)===f(1)&&!isNaN(p)},dt=function(p){return Q(p)&&Math.floor(p)===p},K=function(p){if(ft!=="undefined")return p!=null&&p instanceof HTMLElement},yt=function(p){return V(p)||Ot(p)},V=function(p){return wt(p)==="collection"&&p._private.single},Ot=function(p){return wt(p)==="collection"&&!p._private.single},It=function(p){return wt(p)==="core"},jt=function(p){return wt(p)==="stylesheet"},xt=function(p){return wt(p)==="event"},Ft=function(p){return p==null?!0:!!(p===""||p.match(/^\s+$/))},Ct=function(p){return typeof HTMLElement>"u"?!1:p instanceof HTMLElement},kt=function(p){return it(p)&&Q(p.x1)&&Q(p.x2)&&Q(p.y1)&&Q(p.y2)},Gt=function(p){return gt(p)&&ct(p.then)},Fe=function(){return z&&z.userAgent.match(/msie|trident|edge/i)},Mt=function(p,x){x||(x=function(){if(arguments.length===1)return arguments[0];if(arguments.length===0)return"undefined";for(var O=[],N=0;N<arguments.length;N++)O.push(arguments[N]);return O.join("$")});var C=function L(){var O=this,N=arguments,j,H=x.apply(O,N),q=L.cache;return(j=q[H])||(j=q[H]=p.apply(O,N)),j};return C.cache={},C},pn=Mt(function(y){return y.replace(/([A-Z])/g,function(p){return"-"+p.toLowerCase()})}),Ae=Mt(function(y){return y.replace(/(-\w)/g,function(p){return p[1].toUpperCase()})}),ye=Mt(function(y,p){return y+p[0].toUpperCase()+p.substring(1)},function(y,p){return y+"$"+p}),tn=function(p){return Ft(p)?p:p.charAt(0).toUpperCase()+p.substring(1)},sn="(?:[-+]?(?:(?:\\d+|\\d*\\.\\d+)(?:[Ee][+-]?\\d+)?))",be="rgb[a]?\\(("+sn+"[%]?)\\s*,\\s*("+sn+"[%]?)\\s*,\\s*("+sn+"[%]?)(?:\\s*,\\s*("+sn+"))?\\)",Ne="rgb[a]?\\((?:"+sn+"[%]?)\\s*,\\s*(?:"+sn+"[%]?)\\s*,\\s*(?:"+sn+"[%]?)(?:\\s*,\\s*(?:"+sn+"))?\\)",Xt="hsl[a]?\\(("+sn+")\\s*,\\s*("+sn+"[%])\\s*,\\s*("+sn+"[%])(?:\\s*,\\s*("+sn+"))?\\)",_e="hsl[a]?\\((?:"+sn+")\\s*,\\s*(?:"+sn+"[%])\\s*,\\s*(?:"+sn+"[%])(?:\\s*,\\s*(?:"+sn+"))?\\)",xe="\\#[0-9a-fA-F]{3}",Mn="\\#[0-9a-fA-F]{6}",ce=function(p,x){return p<x?-1:p>x?1:0},Br=function(p,x){return-1*ce(p,x)},we=Object.assign!=null?Object.assign.bind(Object):function(y){for(var p=arguments,x=1;x<p.length;x++){var C=p[x];if(C!=null)for(var L=Object.keys(C),O=0;O<L.length;O++){var N=L[O];y[N]=C[N]}}return y},Fi=function(p){if(!(!(p.length===4||p.length===7)||p[0]!=="#")){var x=p.length===4,C,L,O,N=16;return x?(C=parseInt(p[1]+p[1],N),L=parseInt(p[2]+p[2],N),O=parseInt(p[3]+p[3],N)):(C=parseInt(p[1]+p[2],N),L=parseInt(p[3]+p[4],N),O=parseInt(p[5]+p[6],N)),[C,L,O]}},mi=function(p){var x,C,L,O,N,j,H,q;function W(pt,_t,St){return St<0&&(St+=1),St>1&&(St-=1),St<1/6?pt+(_t-pt)*6*St:St<1/2?_t:St<2/3?pt+(_t-pt)*(2/3-St)*6:pt}var Z=new RegExp("^"+Xt+"$").exec(p);if(Z){if(C=parseInt(Z[1]),C<0?C=(360- -1*C%360)%360:C>360&&(C=C%360),C/=360,L=parseFloat(Z[2]),L<0||L>100||(L=L/100,O=parseFloat(Z[3]),O<0||O>100)||(O=O/100,N=Z[4],N!==void 0&&(N=parseFloat(N),N<0||N>1)))return;if(L===0)j=H=q=Math.round(O*255);else{var st=O<.5?O*(1+L):O+L-O*L,bt=2*O-st;j=Math.round(255*W(bt,st,C+1/3)),H=Math.round(255*W(bt,st,C)),q=Math.round(255*W(bt,st,C-1/3))}x=[j,H,q,N]}return x},ga=function(p){var x,C=new RegExp("^"+be+"$").exec(p);if(C){x=[];for(var L=[],O=1;O<=3;O++){var N=C[O];if(N[N.length-1]==="%"&&(L[O]=!0),N=parseFloat(N),L[O]&&(N=N/100*255),N<0||N>255)return;x.push(Math.floor(N))}var j=L[1]||L[2]||L[3],H=L[1]&&L[2]&&L[3];if(j&&!H)return;var q=C[4];if(q!==void 0){if(q=parseFloat(q),q<0||q>1)return;x.push(q)}}return x},Ss=function(p){return br[p.toLowerCase()]},za=functio
Embeddable Minimum Strictly-Compliant Promises/A+ 1.1.1 Thenable
Copyright (c) 2013-2014 Ralf S. Engelschall (http://engelschall.com)
Licensed under The MIT License (http://opensource.org/licenses/MIT)
*/var oR=0,cR=1,uR=2,am=function y(p){if(!(this instanceof y))return new y(p);this.id="Thenable/1.0.7",this.state=oR,this.fulfillValue=void 0,this.rejectReason=void 0,this.onFulfilled=[],this.onRejected=[],this.proxy={then:this.then.bind(this)},typeof p=="function"&&p.call(this,this.fulfill.bind(this),this.reject.bind(this))};am.prototype={fulfill:function(p){return lR(this,cR,"fulfillValue",p)},reject:function(p){return lR(this,uR,"rejectReason",p)},then:function(p,x){var C=this,L=new am;return C.onFulfilled.push(dR(p,L,"fulfill")),C.onRejected.push(dR(x,L,"reject")),hR(C),L.proxy}};var lR=function(p,x,C,L){return p.state===oR&&(p.state=x,p[C]=L,hR(p)),p},hR=function(p){p.state===cR?fR(p,"onFulfilled",p.fulfillValue):p.state===uR&&fR(p,"onRejected",p.rejectReason)},fR=function(p,x,C){if(p[x].length!==0){var L=p[x];p[x]=[];var O=function(){for(var j=0;j<L.length;j++)L[j](C)};typeof setImmediate=="function"?setImmediate(O):setTimeout(O,0)}},dR=function(p,x,C){return function(L){if(typeof p!="function")x[C].call(x,L);else{var O;try{O=p(L)}catch(N){x.reject(N);return}mJ(x,O)}}},mJ=function y(p,x){if(p===x||p.proxy===x){p.reject(new TypeError("cannot resolve promise with itself"));return}var C;if(f(x)==="object"&&x!==null||typeof x=="function")try{C=x.then}catch(O){p.reject(O);return}if(typeof C=="function"){var L=!1;try{C.call(x,function(O){L||(L=!0,O===x?p.reject(new TypeError("circular thenable chain")):y(p,O))},function(O){L||(L=!0,p.reject(O))})}catch(O){L||p.reject(O)}return}p.fulfill(x)};am.all=function(y){return new am(function(p,x){for(var C=new Array(y.length),L=0,O=function(H,q){C[H]=q,L++,L===y.length&&p(C)},N=0;N<y.length;N++)(function(j){var H=y[j],q=H!=null&&H.then!=null;if(q)H.then(function(Z){O(j,Z)},function(Z){x(Z)});else{var W=H;O(j,W)}})(N)})},am.resolve=function(y){return new am(function(p,x){p(y)})},am.reject=function(y){return new am(function(p,x){x(y)})};var e6=typeof Promise<"u"?Promise:am,WD=function(p,x,C){var L=It(p),O=!L,N=this._private=we({duration:1e3},x,C);if(N.target=p,N.style=N.style||N.css,N.started=!1,N.playing=!1,N.hooked=!1,N.applying=!1,N.progress=0,N.completes=[],N.frames=[],N.complete&&ct(N.complete)&&N.completes.push(N.complete),O){var j=p.position();N.startPosition=N.startPosition||{x:j.x,y:j.y},N.startStyle=N.startStyle||p.cy().style().getAnimationStartStyle(p,N.style)}if(L){var H=p.pan();N.startPan={x:H.x,y:H.y},N.startZoom=p.zoom()}this.length=1,this[0]=this},y4=WD.prototype;we(y4,{instanceString:function(){return"animation"},hook:function(){var p=this._private;if(!p.hooked){var x,C=p.target._private.animation;p.queue?x=C.queue:x=C.current,x.push(this),yt(p.target)&&p.target.cy().addToAnimationPool(p.target),p.hooked=!0}return this},play:function(){var p=this._private;return p.progress===1&&(p.progress=0),p.playing=!0,p.started=!1,p.stopped=!1,this.hook(),this},playing:function(){return this._private.playing},apply:function(){var p=this._private;return p.applying=!0,p.started=!1,p.stopped=!1,this.hook(),this},applying:function(){return this._private.applying},pause:function(){var p=this._private;return p.playing=!1,p.started=!1,this},stop:function(){var p=this._private;return p.playing=!1,p.started=!1,p.stopped=!0,this},rewind:function(){return this.progress(0)},fastforward:function(){return this.progress(1)},time:function(p){var x=this._private;return p===void 0?x.progress*x.duration:this.progress(p/x.duration)},progress:function(p){var x=this._private,C=x.playing;return p===void 0?x.progress:(C&&this.pause(),x.progress=p,x.started=!1,C&&this.play(),this)},completed:function(){return this._private.progress===1},reverse:function(){var p=this._private,x=p.playing;x&&this.pause(),p.progress=1-p.progress,p.started=!1;var C=function(q,W){var Z=p[q];Z!=null&&(p[q]=p[W],p[W]=Z)};if(C("zoom","startZoom"),C("pan","startPan"),C("position","startPosition"),p.style)for(var L=0;L<p.style.length;L++){var O=p.style[L],N=O.name,j=p.startStyle[N];p.startStyle[N]=O,p.style[L]=j}return x&&this.play(),this},promise:function(p){var x=this._private,C;switch(p){case"frame":C=x.frames;break;default:c
Event object based on jQuery events, MIT license
https://jquery.org/license/
https://tldrlegal.com/license/mit-license
https://github.com/jquery/jquery/blob/master/src/event.js
*/var K8=function(p,x){this.recycle(p,x)};function W8(){return!1}function Y8(){return!0}K8.prototype={instanceString:function(){return"event"},recycle:function(p,x){if(this.isImmediatePropagationStopped=this.isPropagationStopped=this.isDefaultPrevented=W8,p!=null&&p.preventDefault?(this.type=p.type,this.isDefaultPrevented=p.defaultPrevented?Y8:W8):p!=null&&p.type?x=p:this.type=p,x!=null&&(this.originalEvent=x.originalEvent,this.type=x.type!=null?x.type:this.type,this.cy=x.cy,this.target=x.target,this.position=x.position,this.renderedPosition=x.renderedPosition,this.namespace=x.namespace,this.layout=x.layout),this.cy!=null&&this.position!=null&&this.renderedPosition==null){var C=this.position,L=this.cy.zoom(),O=this.cy.pan();this.renderedPosition={x:C.x*L+O.x,y:C.y*L+O.y}}this.timeStamp=p&&p.timeStamp||Date.now()},preventDefault:function(){this.isDefaultPrevented=Y8;var p=this.originalEvent;p&&p.preventDefault&&p.preventDefault()},stopPropagation:function(){this.isPropagationStopped=Y8;var p=this.originalEvent;p&&p.stopPropagation&&p.stopPropagation()},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=Y8,this.stopPropagation()},isDefaultPrevented:W8,isPropagationStopped:W8,isImmediatePropagationStopped:W8};var GR=/^([^.]+)(\.(?:[^.]+))?$/,Ytt=".*",KR={qualifierCompare:function(p,x){return p===x},eventMatches:function(){return!0},addEventFields:function(){},callbackContext:function(p){return p},beforeEmit:function(){},afterEmit:function(){},bubble:function(){return!1},parent:function(){return null},context:null},WR=Object.keys(KR),Xtt={};function dC(){for(var y=arguments.length>0&&arguments[0]!==void 0?arguments[0]:Xtt,p=arguments.length>1?arguments[1]:void 0,x=0;x<WR.length;x++){var C=WR[x];this[C]=y[C]||KR[C]}this.context=p||this.context,this.listeners=[],this.emitting=0}var pb=dC.prototype,YR=function(p,x,C,L,O,N,j){ct(L)&&(O=L,L=null),j&&(N==null?N=j:N=we({},N,j));for(var H=rt(C)?C:C.split(/\s+/),q=0;q<H.length;q++){var W=H[q];if(!Ft(W)){var Z=W.match(GR);if(Z){var st=Z[1],bt=Z[2]?Z[2]:null,pt=x(p,W,st,bt,L,O,N);if(pt===!1)break}}}},XR=function(p,x){return p.addEventFields(p.context,x),new K8(x.type,x)},gC=function(p,x,C){if(xt(C)){x(p,C);return}else if(it(C)){x(p,XR(p,C));return}for(var L=rt(C)?C:C.split(/\s+/),O=0;O<L.length;O++){var N=L[O];if(!Ft(N)){var j=N.match(GR);if(j){var H=j[1],q=j[2]?j[2]:null,W=XR(p,{type:H,namespace:q,target:p.context});x(p,W)}}}};pb.on=pb.addListener=function(y,p,x,C,L){return YR(this,function(O,N,j,H,q,W,Z){ct(W)&&O.listeners.push({event:N,callback:W,type:j,namespace:H,qualifier:q,conf:Z})},y,p,x,C,L),this},pb.one=function(y,p,x,C){return this.on(y,p,x,C,{one:!0})},pb.removeListener=pb.off=function(y,p,x,C){var L=this;this.emitting!==0&&(this.listeners=zX(this.listeners));for(var O=this.listeners,N=function(q){var W=O[q];YR(L,function(Z,st,bt,pt,_t,St){if((W.type===bt||y==="*")&&(!pt&&W.namespace!==".*"||W.namespace===pt)&&(!_t||Z.qualifierCompare(W.qualifier,_t))&&(!St||W.callback===St))return O.splice(q,1),!1},y,p,x,C)},j=O.length-1;j>=0;j--)N(j);return this},pb.removeAllListeners=function(){return this.removeListener("*")},pb.emit=pb.trigger=function(y,p,x){var C=this.listeners,L=C.length;return this.emitting++,rt(p)||(p=[p]),gC(this,function(O,N){x!=null&&(C=[{event:N.event,type:N.type,namespace:N.namespace,callback:x}],L=C.length);for(var j=function(W){var Z=C[W];if(Z.type===N.type&&(!Z.namespace||Z.namespace===N.namespace||Z.namespace===Ytt)&&O.eventMatches(O.context,Z,N)){var st=[N];p!=null&&OB(st,p),O.beforeEmit(O.context,Z,N),Z.conf&&Z.conf.one&&(O.listeners=O.listeners.filter(function(_t){return _t!==Z}));var bt=O.callbackContext(O.context,Z,N),pt=Z.callback.apply(bt,st);O.afterEmit(O.context,Z,N),pt===!1&&(N.stopPropagation(),N.preventDefault())}},H=0;H<L;H++)j(H);O.bubble(O.context)&&!N.isPropagationStopped()&&O.parent(O.context).emit(N,p)},y),this.emitting--,this};var Qtt={qualifierCompare:function(p,x){return p==null||x==null?p==null&&x==null:p.sameText(x)},eventMatches:function(p,x,C){var L=x.qualifier;return L!=null?p!==C.target&&V(C.target)&&
`),Z=y.pstyle("text-max-width").pfValue,st=y.pstyle("text-overflow-wrap").value,bt=st==="anywhere",pt=[],_t=/[\s\u200b]+/,St=bt?"":" ",Et=0;Et<W.length;Et++){var Nt=W[Et],Pt=this.calculateLabelDimensions(y,Nt),qt=Pt.width;if(bt){var re=Nt.split("").join(q);Nt=re}if(qt>Z){for(var ee=Nt.split(_t),Ut="",de=0;de<ee.length;de++){var Yt=ee[de],Ee=Ut.length===0?Yt:Ut+St+Yt,Te=this.calculateLabelDimensions(y,Ee),ie=Te.width;ie<=Z?Ut+=Yt+St:(Ut&&pt.push(Ut),Ut=Yt+St)}Ut.match(/^[\s\u200b]+$/)||pt.push(Ut)}else pt.push(Nt)}N("labelWrapCachedLines",pt),L=N("labelWrapCachedText",pt.join(`
`)),N("labelWrapKey",H)}else if(j==="ellipsis"){var ze=y.pstyle("text-max-width").pfValue,me="",yn="…",nn=!1;if(this.calculateLabelDimensions(y,L).width<ze)return L;for(var qe=0;qe<L.length;qe++){var Tn=this.calculateLabelDimensions(y,me+L[qe]+yn).width;if(Tn>ze)break;me+=L[qe],qe===L.length-1&&(nn=!0)}return nn||(me+=yn),me}return L},j2.getLabelJustification=function(y){var p=y.pstyle("text-justification").strValue,x=y.pstyle("text-halign").strValue;if(p==="auto")if(y.isNode())switch(x){case"left":return"right";case"right":return"left";default:return"center"}else return"center";else return p},j2.calculateLabelDimensions=function(y,p){var x=this,C=Nd(p,y._private.labelDimsKey),L=x.labelDimCache||(x.labelDimCache=[]),O=L[C];if(O!=null)return O;var N=0,j=y.pstyle("font-style").strValue,H=y.pstyle("font-size").pfValue,q=y.pstyle("font-family").strValue,W=y.pstyle("font-weight").strValue,Z=this.labelCalcCanvas,st=this.labelCalcCanvasContext;if(!Z){Z=this.labelCalcCanvas=document.createElement("canvas"),st=this.labelCalcCanvasContext=Z.getContext("2d");var bt=Z.style;bt.position="absolute",bt.left="-9999px",bt.top="-9999px",bt.zIndex="-1",bt.visibility="hidden",bt.pointerEvents="none"}st.font="".concat(j," ").concat(W," ").concat(H,"px ").concat(q);for(var pt=0,_t=0,St=p.split(`
`),Et=0;Et<St.length;Et++){var Nt=St[Et],Pt=st.measureText(Nt),qt=Math.ceil(Pt.width),re=H;pt=Math.max(qt,pt),_t+=re}return pt+=N,_t+=N,L[C]={width:pt,height:_t}},j2.calculateLabelAngle=function(y,p){var x=y._private,C=x.rscratch,L=y.isEdge(),O=p?p+"-":"",N=y.pstyle(O+"text-rotation"),j=N.strValue;return j==="none"?0:L&&j==="autorotate"?C.labelAutoAngle:j==="autorotate"?0:N.pfValue},j2.calculateLabelAngles=function(y){var p=this,x=y.isEdge(),C=y._private,L=C.rscratch;L.labelAngle=p.calculateLabelAngle(y),x&&(L.sourceLabelAngle=p.calculateLabelAngle(y,"source"),L.targetLabelAngle=p.calculateLabelAngle(y,"target"))};var Tj={},Cj=28,Sj=!1;Tj.getNodeShape=function(y){var p=this,x=y.pstyle("shape").value;if(x==="cutrectangle"&&(y.width()<Cj||y.height()<Cj))return Sj||(Gc("The `cutrectangle` node shape can not be used at small sizes so `rectangle` is used instead"),Sj=!0),"rectangle";if(y.isParent())return x==="rectangle"||x==="roundrectangle"||x==="round-rectangle"||x==="cutrectangle"||x==="cut-rectangle"||x==="barrel"?x:"rectangle";if(x==="polygon"){var C=y.pstyle("shape-polygon-points").value;return p.nodeShapes.makePolygon(C).name}return x};var MC={};MC.registerCalculationListeners=function(){var y=this.cy,p=y.collection(),x=this,C=function(N){var j=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;if(p.merge(N),j)for(var H=0;H<N.length;H++){var q=N[H],W=q._private,Z=W.rstyle;Z.clean=!1,Z.cleanConnected=!1}};x.binder(y).on("bounds.* dirty.*",function(N){var j=N.target;C(j)}).on("style.* background.*",function(N){var j=N.target;C(j,!1)});var L=function(N){if(N){var j=x.onUpdateEleCalcsFns;p.cleanStyle();for(var H=0;H<p.length;H++){var q=p[H],W=q._private.rstyle;q.isNode()&&!W.cleanConnected&&(C(q.connectedEdges()),W.cleanConnected=!0)}if(j)for(var Z=0;Z<j.length;Z++){var st=j[Z];st(N,p)}x.recalculateRenderedStyle(p),p=y.collection()}};x.flushRenderedStyleQueue=function(){L(!0)},x.beforeRender(L,x.beforeRenderPriorities.eleCalcs)},MC.onUpdateEleCalcs=function(y){var p=this.onUpdateEleCalcsFns=this.onUpdateEleCalcsFns||[];p.push(y)},MC.recalculateRenderedStyle=function(y,p){var x=function(qt){return qt._private.rstyle.cleanConnected},C=[],L=[];if(!this.destroyed){p===void 0&&(p=!0);for(var O=0;O<y.length;O++){var N=y[O],j=N._private,H=j.rstyle;N.isEdge()&&(!x(N.source())||!x(N.target()))&&(H.clean=!1),!(p&&H.clean||N.removed())&&N.pstyle("display").value!=="none"&&(j.group==="nodes"?L.push(N):C.push(N),H.clean=!0)}for(var q=0;q<L.length;q++){var W=L[q],Z=W._private,st=Z.rstyle,bt=W.position();this.recalculateNodeLabelProjection(W),st.nodeX=bt.x,st.nodeY=bt.y,st.nodeW=W.pstyle("width").pfValue,st.nodeH=W.pstyle("height").pfValue}this.recalculateEdgeProjections(C);for(var pt=0;pt<C.length;pt++){var _t=C[pt],St=_t._private,Et=St.rstyle,Nt=St.rscratch;Et.srcX=Nt.arrowStartX,Et.srcY=Nt.arrowStartY,Et.tgtX=Nt.arrowEndX,Et.tgtY=Nt.arrowEndY,Et.midX=Nt.midX,Et.midY=Nt.midY,Et.labelAngle=Nt.labelAngle,Et.sourceLabelAngle=Nt.sourceLabelAngle,Et.targetLabelAngle=Nt.targetLabelAngle}}};var IC={};IC.updateCachedGrabbedEles=function(){var y=this.cachedZSortedEles;if(y){y.drag=[],y.nondrag=[];for(var p=[],x=0;x<y.length;x++){var C=y[x],L=C._private.rscratch;C.grabbed()&&!C.isParent()?p.push(C):L.inDragLayer?y.drag.push(C):y.nondrag.push(C)}for(var x=0;x<p.length;x++){var C=p[x];y.drag.push(C)}}},IC.invalidateCachedZSortedEles=function(){this.cachedZSortedEles=null},IC.getCachedZSortedEles=function(y){if(y||!this.cachedZSortedEles){var p=this.cy.mutableElements().toArray();p.sort(cM),p.interactive=p.filter(function(x){return x.interactive()}),this.cachedZSortedEles=p,this.updateCachedGrabbedEles()}else p=this.cachedZSortedEles;return p};var _j={};[C4,LC,Q1,eE,mM,j2,Tj,MC,IC].forEach(function(y){we(_j,y)});var Aj={};Aj.getCachedImage=function(y,p,x){var C=this,L=C.imageCache=C.imageCache||{},O=L[y];if(O)return O.image.complete||O.image.addEventListener("load",x),O.image;O=L[y]=L[y]||{};var N=O.image=new Image;N.addEventListener("load",x),N.addEventListener("error",function(){N.error=!0});var j="data:",H=y.substring(0,j.length).toLowe
a${E},${E} 1 0,1 ${g*.4},${-1*g*.1}
a${b},${b} 1 0,1 ${g*.35},${1*g*.2}
a${v},${v} 1 0,1 ${g*.15},${1*w*.35}
a${S},${S} 1 0,1 ${-1*g*.15},${1*w*.65}
a${b},${v} 1 0,1 ${-1*g*.25},${g*.15}
a${E},${E} 1 0,1 ${-1*g*.5},0
a${v},${v} 1 0,1 ${-1*g*.25},${-1*g*.15}
a${v},${v} 1 0,1 ${-1*g*.1},${-1*w*.35}
a${S},${S} 1 0,1 ${g*.1},${-1*w*.65}
H0 V0 Z`)},len=function(i,a,f){const g=f.width,w=f.height,v=.15*g;a.append("path").attr("id","node-"+f.id).attr("class","node-bkg node-"+i.type2Str(f.type)).attr("d",`M0 0 a${v},${v} 1 0,0 ${g*.25},${-1*w*.1}
a${v},${v} 1 0,0 ${g*.25},0
a${v},${v} 1 0,0 ${g*.25},0
a${v},${v} 1 0,0 ${g*.25},${1*w*.1}
a${v},${v} 1 0,0 ${g*.15},${1*w*.33}
a${v*.8},${v*.8} 1 0,0 0,${1*w*.34}
a${v},${v} 1 0,0 ${-1*g*.15},${1*w*.33}
a${v},${v} 1 0,0 ${-1*g*.25},${w*.15}
a${v},${v} 1 0,0 ${-1*g*.25},0
a${v},${v} 1 0,0 ${-1*g*.25},0
a${v},${v} 1 0,0 ${-1*g*.25},${-1*w*.15}
a${v},${v} 1 0,0 ${-1*g*.1},${-1*w*.33}
a${v*.8},${v*.8} 1 0,0 0,${-1*w*.34}
a${v},${v} 1 0,0 ${g*.1},${-1*w*.33}
H0 V0 Z`)},hen=function(i,a,f){a.append("circle").attr("id","node-"+f.id).attr("class","node-bkg node-"+i.type2Str(f.type)).attr("r",f.width/2)};function fen(i,a,f,g,w){return i.insert("polygon",":first-child").attr("points",g.map(function(v){return v.x+","+v.y}).join(" ")).attr("transform","translate("+(w.width-a)/2+", "+f+")")}const den=function(i,a,f){const g=f.height,v=g/4,b=f.width-f.padding+2*v,E=[{x:v,y:0},{x:b-v,y:0},{x:b,y:-g/2},{x:b-v,y:-g},{x:v,y:-g},{x:0,y:-g/2}];fen(a,b,g,E,f)},gen=function(i,a,f){a.append("rect").attr("id","node-"+f.id).attr("class","node-bkg node-"+i.type2Str(f.type)).attr("height",f.height).attr("rx",f.padding).attr("ry",f.padding).attr("width",f.width)},pen=function(i,a,f,g,w){const v=w.htmlLabels,b=g%(aen-1),E=a.append("g");f.section=b;let S="section-"+b;b<0&&(S+=" section-root"),E.attr("class",(f.class?f.class+" ":"")+"mindmap-node "+S);const _=E.append("g"),M=E.append("g"),F=f.descr.replace(/(<br\/*>)/g,`
`);ZY(M,F,{useHtmlLabels:v,width:f.width,classes:"mindmap-node-label"}),v||M.attr("dy","1em").attr("alignment-baseline","middle").attr("dominant-baseline","middle").attr("text-anchor","middle");const R=M.node().getBBox(),[B]=k9(w.fontSize);if(f.height=R.height+B*1.1*.5+f.padding,f.width=R.width+2*f.padding,f.icon)if(f.type===i.nodeType.CIRCLE)f.height+=50,f.width+=50,E.append("foreignObject").attr("height","50px").attr("width",f.width).attr("style","text-align: center;").append("div").attr("class","icon-container").append("i").attr("class","node-icon-"+b+" "+f.icon),M.attr("transform","translate("+f.width/2+", "+(f.height/2-1.5*f.padding)+")");else{f.width+=50;const z=f.height;f.height=Math.max(z,60);const Y=Math.abs(f.height-z);E.append("foreignObject").attr("width","60px").attr("height",f.height).attr("style","text-align: center;margin-top:"+Y/2+"px;").append("div").attr("class","icon-container").append("i").attr("class","node-icon-"+b+" "+f.icon),M.attr("transform","translate("+(25+f.width/2)+", "+(Y/2+f.padding/2)+")")}else if(v){const z=(f.width-R.width)/2,Y=(f.height-R.height)/2;M.attr("transform","translate("+z+", "+Y+")")}else{const z=f.width/2,Y=f.padding/2;M.attr("transform","translate("+z+", "+Y+")")}switch(f.type){case i.nodeType.DEFAULT:oen(i,_,f,b);break;case i.nodeType.ROUNDED_RECT:gen(i,_,f);break;case i.nodeType.RECT:cen(i,_,f);break;case i.nodeType.CIRCLE:_.attr("transform","translate("+f.width/2+", "+ +f.height/2+")"),hen(i,_,f);break;case i.nodeType.CLOUD:uen(i,_,f);break;case i.nodeType.BANG:len(i,_,f);break;case i.nodeType.HEXAGON:den(i,_,f);break}return i.setElementForId(f.id,E),f.height},ben=function(i,a){const f=i.getElementById(a.id),g=a.x||0,w=a.y||0;f.attr("transform","translate("+g+","+w+")")};KHt.use(sen);function QHt(i,a,f,g,w){pen(i,a,f,g,w),f.children&&f.children.forEach((v,b)=>{QHt(i,a,v,g<0?b:g,w)})}function wen(i,a){a.edges().map((f,g)=>{const w=f.data();if(f[0]._private.bodyBounds){const v=f[0]._private.rscratch;Kt.trace("Edge: ",g,w),i.insert("path").attr("d",`M ${v.startX},${v.startY} L ${v.midX},${v.midY} L${v.endX},${v.endY} `).attr("class","edge section-edge-"+w.section+" edge-depth-"+w.depth)}})}function JHt(i,a,f,g){a.add({group:"nodes",data:{id:i.id.toString(),labelText:i.descr,height:i.height,width:i.width,level:g,nodeId:i.id,padding:i.padding,type:i.type},position:{x:i.x,y:i.y}}),i.children&&i.children.forEach(w=>{JHt(w,a,f,g+1),a.add({group:"edges",data:{id:`${i.id}_${w.id}`,source:i.id,target:w.id,depth:g,section:w.section}})})}function men(i,a){return new Promise(f=>{const g=Tr("body").append("div").attr("id","cy").attr("style","display:none"),w=KHt({container:document.getElementById("cy"),style:[{selector:"edge",style:{"curve-style":"bezier"}}]});g.remove(),JHt(i,w,a,0),w.nodes().forEach(function(v){v.layoutDimensions=()=>{const b=v.data();return{w:b.width,h:b.height}}}),w.layout({name:"cose-bilkent",quality:"proof",styleEnabled:!1,animate:!1}).run(),w.ready(v=>{Kt.info("Ready",v),f(w)})})}function ven(i,a){a.nodes().map((f,g)=>{const w=f.data();w.x=f.position().x,w.y=f.position().y,ben(i,w);const v=i.getElementById(w.nodeId);Kt.info("Id:",g,"Position: (",f.position().x,", ",f.position().y,")",w),v.attr("transform",`translate(${f.position().x-w.width/2}, ${f.position().y-w.height/2})`),v.attr("attr",`apa-${g})`)})}const yen={draw:async(i,a,f,g)=>{var F,R;Kt.debug(`Rendering mindmap diagram
`+i);const w=g.db,v=w.getMindmap();if(!v)return;const b=Re();b.htmlLabels=!1;const E=FF(a),S=E.append("g");S.attr("class","mindmap-edges");const _=E.append("g");_.attr("class","mindmap-nodes"),QHt(w,_,v,-1,b);const M=await men(v,b);wen(S,M),ven(w,M),w8(void 0,E,((F=b.mindmap)==null?void 0:F.padding)??Bl.mindmap.padding,((R=b.mindmap)==null?void 0:R.useMaxWidth)??Bl.mindmap.useMaxWidth)}},xen=i=>{let a="";for(let f=0;f<i.THEME_COLOR_LIMIT;f++)i["lineColor"+f]=i["lineColor"+f]||i["cScaleInv"+f],p9(i["lineColor"+f])?i["lineColor"+f]=Is(i["lineColor"+f],20):i["lineColor"+f]=Js(i["lineColor"+f],20);for(let f=0;f<i.THEME_COLOR_LIMIT;f++){const g=""+(17-3*f);a+=`
.section-${f-1} rect, .section-${f-1} path, .section-${f-1} circle, .section-${f-1} polygon, .section-${f-1} path {
fill: ${i["cScale"+f]};
}
.section-${f-1} text {
fill: ${i["cScaleLabel"+f]};
}
.node-icon-${f-1} {
font-size: 40px;
color: ${i["cScaleLabel"+f]};
}
.section-edge-${f-1}{
stroke: ${i["cScale"+f]};
}
.edge-depth-${f-1}{
stroke-width: ${g};
}
.section-${f-1} line {
stroke: ${i["cScaleInv"+f]} ;
stroke-width: 3;
}
2022-11-03 00:28:15 +01:00
2024-02-17 17:36:33 +01:00
.disabled, .disabled circle, .disabled text {
fill: lightgray;
}
.disabled text {
fill: #efefef;
}
`}return a},ken=Object.freeze(Object.defineProperty({__proto__:null,diagram:{db:ten,renderer:yen,parser:Ytn,styles:i=>`
.edge {
stroke-width: 3;
2022-11-03 00:28:15 +01:00
}
2024-02-17 17:36:33 +01:00
${xen(i)}
.section-root rect, .section-root path, .section-root circle, .section-root polygon {
fill: ${i.git0};
}
.section-root text {
fill: ${i.gitBranchLabel0};
}
.icon-container {
height:100%;
display: flex;
justify-content: center;
align-items: center;
}
.edge {
fill: none;
}
.mindmap-node-label {
dy: 1em;
alignment-baseline: middle;
text-anchor: middle;
dominant-baseline: middle;
text-align: center;
}
`}},Symbol.toStringTag,{value:"Module"}));var w2t=function(){var i=function(E,S,_,M){for(_=_||{},M=E.length;M--;_[E[M]]=S);return _},a=[1,9],f=[1,10],g=[1,5,10,12],w={trace:function(){},yy:{},symbols_:{error:2,start:3,SANKEY:4,NEWLINE:5,csv:6,opt_eof:7,record:8,csv_tail:9,EOF:10,"field[source]":11,COMMA:12,"field[target]":13,"field[value]":14,field:15,escaped:16,non_escaped:17,DQUOTE:18,ESCAPED_TEXT:19,NON_ESCAPED_TEXT:20,$accept:0,$end:1},terminals_:{2:"error",4:"SANKEY",5:"NEWLINE",10:"EOF",11:"field[source]",12:"COMMA",13:"field[target]",14:"field[value]",18:"DQUOTE",19:"ESCAPED_TEXT",20:"NON_ESCAPED_TEXT"},productions_:[0,[3,4],[6,2],[9,2],[9,0],[7,1],[7,0],[8,5],[15,1],[15,1],[16,3],[17,1]],performAction:function(S,_,M,F,R,B,z){var Y=B.length-1;switch(R){case 7:const nt=F.findOrCreateNode(B[Y-4].trim().replaceAll('""','"')),ot=F.findOrCreateNode(B[Y-2].trim().replaceAll('""','"')),ft=parseFloat(B[Y].trim());F.addLink(nt,ot,ft);break;case 8:case 9:case 11:this.$=B[Y];break;case 10:this.$=B[Y-1];break}},table:[{3:1,4:[1,2]},{1:[3]},{5:[1,3]},{6:4,8:5,15:6,16:7,17:8,18:a,20:f},{1:[2,6],7:11,10:[1,12]},i(f,[2,4],{9:13,5:[1,14]}),{12:[1,15]},i(g,[2,8]),i(g,[2,9]),{19:[1,16]},i(g,[2,11]),{1:[2,1]},{1:[2,5]},i(f,[2,2]),{6:17,8:5,15:6,16:7,17:8,18:a,20:f},{15:18,16:7,17:8,18:a,20:f},{18:[1,19]},i(f,[2,3]),{12:[1,20]},i(g,[2,10]),{15:21,16:7,17:8,18:a,20:f},i([1,5,10],[2,7])],defaultActions:{11:[2,1],12:[2,5]},parseError:function(S,_){if(_.recoverable)this.trace(S);else{var M=new Error(S);throw M.hash=_,M}},parse:function(S){var _=this,M=[0],F=[],R=[null],B=[],z=this.table,Y="",nt=0,ot=0,ft=2,wt=1,mt=B.slice.call(arguments,1),ct=Object.create(this.lexer),rt={yy:{}};for(var it in this.yy)Object.prototype.hasOwnProperty.call(this.yy,it)&&(rt.yy[it]=this.yy[it]);ct.setInput(S,rt.yy),rt.yy.lexer=ct,rt.yy.parser=this,typeof ct.yylloc>"u"&&(ct.yylloc={});var gt=ct.yylloc;B.push(gt);var Q=ct.options&&ct.options.ranges;typeof rt.yy.parseError=="function"?this.parseError=rt.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function dt(){var Gt;return Gt=F.pop()||ct.lex()||wt,typeof Gt!="number"&&(Gt instanceof Array&&(F=Gt,Gt=F.pop()),Gt=_.symbols_[Gt]||Gt),Gt}for(var K,yt,V,Ot,It={},jt,xt,Ft,Ct;;){if(yt=M[M.length-1],this.defaultActions[yt]?V=this.defaultActions[yt]:((K===null||typeof K>"u")&&(K=dt()),V=z[yt]&&z[yt][K]),typeof V>"u"||!V.length||!V[0]){var kt="";Ct=[];for(jt in z[yt])this.terminals_[jt]&&jt>ft&&Ct.push("'"+this.terminals_[jt]+"'");ct.showPosition?kt="Parse error on line "+(nt+1)+`:
`+ct.showPosition()+`
Expecting `+Ct.join(", ")+", got '"+(this.terminals_[K]||K)+"'":kt="Parse error on line "+(nt+1)+": Unexpected "+(K==wt?"end of input":"'"+(this.terminals_[K]||K)+"'"),this.parseError(kt,{text:ct.match,token:this.terminals_[K]||K,line:ct.yylineno,loc:gt,expected:Ct})}if(V[0]instanceof Array&&V.length>1)throw new Error("Parse Error: multiple actions possible at state: "+yt+", token: "+K);switch(V[0]){case 1:M.push(K),R.push(ct.yytext),B.push(ct.yylloc),M.push(V[1]),K=null,ot=ct.yyleng,Y=ct.yytext,nt=ct.yylineno,gt=ct.yylloc;break;case 2:if(xt=this.productions_[V[1]][1],It.$=R[R.length-xt],It._$={first_line:B[B.length-(xt||1)].first_line,last_line:B[B.length-1].last_line,first_column:B[B.length-(xt||1)].first_column,last_column:B[B.length-1].last_column},Q&&(It._$.range=[B[B.length-(xt||1)].range[0],B[B.length-1].range[1]]),Ot=this.performAction.apply(It,[Y,ot,nt,rt.yy,V[1],R,B].concat(mt)),typeof Ot<"u")return Ot;xt&&(M=M.slice(0,-1*xt*2),R=R.slice(0,-1*xt),B=B.slice(0,-1*xt)),M.push(this.productions_[V[1]][0]),R.push(It.$),B.push(It._$),Ft=z[M[M.length-2]][M[M.length-1]],M.push(Ft);break;case 3:return!0}}return!0}},v=function(){var E={EOF:1,parseError:function(_,M){if(this.yy.parser)this.yy.parser.parseError(_,M);else throw new Error(_)},setInput:function(S,_){return this.yy=_||this.yy||{},this._input=S,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var S=this._input[0];this.yytext+=S,this.yyleng++,this.offset++,this.match+=S,this.matched+=S;var _=S.match(/(?:\r\n?|\n).*/g);return _?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),S},unput:function(S){var _=S.length,M=S.split(/(?:\r\n?|\n)/g);this._input=S+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-_),this.offset-=_;var F=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),M.length-1&&(this.yylineno-=M.length-1);var R=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:M?(M.length===F.length?this.yylloc.first_column:0)+F[F.length-M.length].length-M[0].length:this.yylloc.first_column-_},this.options.ranges&&(this.yylloc.range=[R[0],R[0]+this.yyleng-_]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(S){this.unput(this.match.slice(S))},pastInput:function(){var S=this.matched.substr(0,this.matched.length-this.match.length);return(S.length>20?"...":"")+S.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var S=this.match;return S.length<20&&(S+=this._input.substr(0,20-S.length)),(S.substr(0,20)+(S.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var S=this.pastInput(),_=new Array(S.length+1).join("-");return S+this.upcomingInput()+`
`+_+"^"},test_match:function(S,_){var M,F,R;if(this.options.backtrack_lexer&&(R={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(R.yylloc.range=this.yylloc.range.slice(0))),F=S[0].match(/(?:\r\n?|\n).*/g),F&&(this.yylineno+=F.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:F?F[F.length-1].length-F[F.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+S[0].length},this.yytext+=S[0],this.match+=S[0],this.matches=S,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(S[0].length),this.matched+=S[0],M=this.performAction.call(this,this.yy,this,_,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),M)return M;if(this._backtrack){for(var B in R)this[B]=R[B];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var S,_,M,F;this._more||(this.yytext="",this.match="");for(var R=this._currentRules(),B=0;B<R.length;B++)if(M=this._input.match(this.rules[R[B]]),M&&(!_||M[0].length>_[0].length)){if(_=M,F=B,this.options.backtrack_lexer){if(S=this.test_match(M,R[B]),S!==!1)return S;if(this._backtrack){_=!1;continue}else return!1}else if(!this.options.flex)break}return _?(S=this.test_match(_,R[F]),S!==!1?S:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.
`+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var _=this.next();return _||this.lex()},begin:function(_){this.conditionStack.push(_)},popState:function(){var _=this.conditionStack.length-1;return _>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(_){return _=this.conditionStack.length-1-Math.abs(_||0),_>=0?this.conditionStack[_]:"INITIAL"},pushState:function(_){this.begin(_)},stateStackSize:function(){return this.conditionStack.length},options:{easy_keword_rules:!0},performAction:function(_,M,F,R){switch(F){case 0:return this.pushState("csv"),4;case 1:return 10;case 2:return 5;case 3:return 12;case 4:return this.pushState("escaped_text"),18;case 5:return 20;case 6:return this.popState("escaped_text"),18;case 7:return 19}},rules:[/^(?:sankey-beta\b)/,/^(?:$)/,/^(?:((\u000D\u000A)|(\u000A)))/,/^(?:(\u002C))/,/^(?:(\u0022))/,/^(?:([\u0020-\u0021\u0023-\u002B\u002D-\u007E])*)/,/^(?:(\u0022)(?!(\u0022)))/,/^(?:(([\u0020-\u0021\u0023-\u002B\u002D-\u007E])|(\u002C)|(\u000D)|(\u000A)|(\u0022)(\u0022))*)/],conditions:{csv:{rules:[1,2,3,4,5,6,7],inclusive:!1},escaped_text:{rules:[6,7],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,7],inclusive:!0}}};return E}();w.lexer=v;function b(){this.yy={}}return b.prototype=w,w.Parser=b,new b}();w2t.parser=w2t;const NX=w2t;let PX=[],FX=[],FD={};const Een=()=>{PX=[],FX=[],FD={},ag()};class Ten{constructor(a,f,g=0){this.source=a,this.target=f,this.value=g}}const Cen=(i,a,f)=>{PX.push(new Ten(i,a,f))};class Sen{constructor(a){this.ID=a}}const _en={nodesMap:FD,getConfig:()=>Re().sankey,getNodes:()=>FX,getLinks:()=>PX,getGraph:()=>({nodes:FX.map(i=>({id:i.ID})),links:PX.map(i=>({source:i.source.ID,target:i.target.ID,value:i.value}))}),addLink:Cen,findOrCreateNode:i=>(i=ei.sanitizeText(i,Re()),FD[i]||(FD[i]=new Sen(i),FX.push(FD[i])),FD[i]),getAccTitle:Xg,setAccTitle:og,getAccDescription:Jg,setAccDescription:Qg,getDiagramTitle:Zg,setDiagramTitle:S2,clear:Een};function ZHt(i,a){let f;if(a===void 0)for(const g of i)g!=null&&(f<g||f===void 0&&g>=g)&&(f=g);else{let g=-1;for(let w of i)(w=a(w,++g,i))!=null&&(f<w||f===void 0&&w>=w)&&(f=w)}return f}function tVt(i,a){let f;if(a===void 0)for(const g of i)g!=null&&(f>g||f===void 0&&g>=g)&&(f=g);else{let g=-1;for(let w of i)(w=a(w,++g,i))!=null&&(f>w||f===void 0&&w>=w)&&(f=w)}return f}function m2t(i,a){let f=0;if(a===void 0)for(let g of i)(g=+g)&&(f+=g);else{let g=-1;for(let w of i)(w=+a(w,++g,i))&&(f+=w)}return f}function Aen(i){return i.target.depth}function Len(i){return i.depth}function Den(i,a){return a-1-i.height}function eVt(i,a){return i.sourceLinks.length?i.depth:a-1}function Men(i){return i.targetLinks.length?i.depth:i.sourceLinks.length?tVt(i.sourceLinks,Aen)-1:0}function BX(i){return function(){return i}}function nVt(i,a){return RX(i.source,a.source)||i.index-a.index}function rVt(i,a){return RX(i.target,a.target)||i.index-a.index}function RX(i,a){return i.y0-a.y0}function v2t(i){return i.value}function Ien(i){return i.index}function Oen(i){return i.nodes}function Nen(i){return i.links}function iVt(i,a){const f=i.get(a);if(!f)throw new Error("missing: "+a);return f}function sVt({nodes:i}){for(const a of i){let f=a.y0,g=f;for(const w of a.sourceLinks)w.y0=f+w.width/2,f+=w.width;for(const w of a.targetLinks)w.y1=g+w.width/2,g+=w.width}}function Pen(){let i=0,a=0,f=1,g=1,w=24,v=8,b,E=Ien,S=eVt,_,M,F=Oen,R=Nen,B=6;function z(){const It={nodes:F.apply(null,arguments),links:R.apply(null,arguments)};return Y(It),nt(It),ot(It),ft(It),ct(It),sVt(It),It}z.update=function(It){return sVt(It),It},z.nodeId=function(It){return arguments.length?(E=typeof It=="function"?It:BX(It),z):E},z.nodeAlign=function(It){return arguments.length?(S=typeof It=="function"?It:BX(It),z):S},z.nodeSort=function(It){return arguments.length?(_=It,z):_},z.nodeWidth=function(It){return arguments.length?(w=+It,z):w},z.nodePadd
${z}${Math.round(K*100)/100}${Y}`:dt;_.append("g").attr("class","node-labels").attr("font-family","sans-serif").attr("font-size",14).selectAll("text").data(ot.nodes).join("text").attr("x",dt=>dt.x0<M/2?dt.x1+6:dt.x0-6).attr("y",dt=>(dt.y1+dt.y0)/2).attr("dy",`${nt?"0":"0.35"}em`).attr("text-anchor",dt=>dt.x0<M/2?"start":"end").text(rt);const it=_.append("g").attr("class","links").attr("fill","none").attr("stroke-opacity",.5).selectAll(".link").data(ot.links).join("g").attr("class","link").style("mix-blend-mode","multiply"),gt=(v==null?void 0:v.linkColor)||"gradient";if(gt==="gradient"){const dt=it.append("linearGradient").attr("id",K=>(K.uid=uVt.next("linearGradient-")).id).attr("gradientUnits","userSpaceOnUse").attr("x1",K=>K.source.x1).attr("x2",K=>K.target.x0);dt.append("stop").attr("offset","0%").attr("stop-color",K=>ct(K.source.id)),dt.append("stop").attr("offset","100%").attr("stop-color",K=>ct(K.target.id))}let Q;switch(gt){case"gradient":Q=dt=>dt.uid;break;case"source":Q=dt=>ct(dt.source.id);break;case"target":Q=dt=>ct(dt.target.id);break;default:Q=gt}it.append("path").attr("d",Ken()).attr("stroke",Q).attr("stroke-width",dt=>Math.max(1,dt.width)),w8(void 0,_,0,R)}},Xen=i=>i.replaceAll(/^[^\S\n\r]+|[^\S\n\r]+$/g,"").replaceAll(/([\n\r])+/g,`
`).trim(),Qen=NX.parse.bind(NX);NX.parse=i=>Qen(Xen(i));const Jen=Object.freeze(Object.defineProperty({__proto__:null,diagram:{parser:NX,db:_en,renderer:Yen}},Symbol.toStringTag,{value:"Module"}));var E2t=function(){var i=function(wt,mt,ct,rt){for(ct=ct||{},rt=wt.length;rt--;ct[wt[rt]]=mt);return ct},a=[1,7],f=[1,13],g=[1,14],w=[1,15],v=[1,19],b=[1,16],E=[1,17],S=[1,18],_=[8,30],M=[8,21,28,29,30,31,32,40,44,47],F=[1,23],R=[1,24],B=[8,15,16,21,28,29,30,31,32,40,44,47],z=[8,15,16,21,27,28,29,30,31,32,40,44,47],Y=[1,49],nt={trace:function(){},yy:{},symbols_:{error:2,spaceLines:3,SPACELINE:4,NL:5,seperator:6,SPACE:7,EOF:8,start:9,BLOCK_DIAGRAM_KEY:10,document:11,stop:12,statement:13,link:14,LINK:15,START_LINK:16,LINK_LABEL:17,STR:18,nodeStatement:19,columnsStatement:20,SPACE_BLOCK:21,blockStatement:22,classDefStatement:23,cssClassStatement:24,styleStatement:25,node:26,SIZE:27,COLUMNS:28,"id-block":29,end:30,block:31,NODE_ID:32,nodeShapeNLabel:33,dirList:34,DIR:35,NODE_DSTART:36,NODE_DEND:37,BLOCK_ARROW_START:38,BLOCK_ARROW_END:39,classDef:40,CLASSDEF_ID:41,CLASSDEF_STYLEOPTS:42,DEFAULT:43,class:44,CLASSENTITY_IDS:45,STYLECLASS:46,style:47,STYLE_ENTITY_IDS:48,STYLE_DEFINITION_DATA:49,$accept:0,$end:1},terminals_:{2:"error",4:"SPACELINE",5:"NL",7:"SPACE",8:"EOF",10:"BLOCK_DIAGRAM_KEY",15:"LINK",16:"START_LINK",17:"LINK_LABEL",18:"STR",21:"SPACE_BLOCK",27:"SIZE",28:"COLUMNS",29:"id-block",30:"end",31:"block",32:"NODE_ID",35:"DIR",36:"NODE_DSTART",37:"NODE_DEND",38:"BLOCK_ARROW_START",39:"BLOCK_ARROW_END",40:"classDef",41:"CLASSDEF_ID",42:"CLASSDEF_STYLEOPTS",43:"DEFAULT",44:"class",45:"CLASSENTITY_IDS",46:"STYLECLASS",47:"style",48:"STYLE_ENTITY_IDS",49:"STYLE_DEFINITION_DATA"},productions_:[0,[3,1],[3,2],[3,2],[6,1],[6,1],[6,1],[9,3],[12,1],[12,1],[12,2],[12,2],[11,1],[11,2],[14,1],[14,4],[13,1],[13,1],[13,1],[13,1],[13,1],[13,1],[13,1],[19,3],[19,2],[19,1],[20,1],[22,4],[22,3],[26,1],[26,2],[34,1],[34,2],[33,3],[33,4],[23,3],[23,3],[24,3],[25,3]],performAction:function(mt,ct,rt,it,gt,Q,dt){var K=Q.length-1;switch(gt){case 4:it.getLogger().debug("Rule: seperator (NL) ");break;case 5:it.getLogger().debug("Rule: seperator (Space) ");break;case 6:it.getLogger().debug("Rule: seperator (EOF) ");break;case 7:it.getLogger().debug("Rule: hierarchy: ",Q[K-1]),it.setHierarchy(Q[K-1]);break;case 8:it.getLogger().debug("Stop NL ");break;case 9:it.getLogger().debug("Stop EOF ");break;case 10:it.getLogger().debug("Stop NL2 ");break;case 11:it.getLogger().debug("Stop EOF2 ");break;case 12:it.getLogger().debug("Rule: statement: ",Q[K]),typeof Q[K].length=="number"?this.$=Q[K]:this.$=[Q[K]];break;case 13:it.getLogger().debug("Rule: statement #2: ",Q[K-1]),this.$=[Q[K-1]].concat(Q[K]);break;case 14:it.getLogger().debug("Rule: link: ",Q[K],mt),this.$={edgeTypeStr:Q[K],label:""};break;case 15:it.getLogger().debug("Rule: LABEL link: ",Q[K-3],Q[K-1],Q[K]),this.$={edgeTypeStr:Q[K],label:Q[K-1]};break;case 18:const yt=parseInt(Q[K]),V=it.generateId();this.$={id:V,type:"space",label:"",width:yt,children:[]};break;case 23:it.getLogger().debug("Rule: (nodeStatement link node) ",Q[K-2],Q[K-1],Q[K]," typestr: ",Q[K-1].edgeTypeStr);const Ot=it.edgeStrToEdgeData(Q[K-1].edgeTypeStr);this.$=[{id:Q[K-2].id,label:Q[K-2].label,type:Q[K-2].type,directions:Q[K-2].directions},{id:Q[K-2].id+"-"+Q[K].id,start:Q[K-2].id,end:Q[K].id,label:Q[K-1].label,type:"edge",directions:Q[K].directions,arrowTypeEnd:Ot,arrowTypeStart:"arrow_open"},{id:Q[K].id,label:Q[K].label,type:it.typeStr2Type(Q[K].typeStr),directions:Q[K].directions}];break;case 24:it.getLogger().debug("Rule: nodeStatement (abc88 node size) ",Q[K-1],Q[K]),this.$={id:Q[K-1].id,label:Q[K-1].label,type:it.typeStr2Type(Q[K-1].typeStr),directions:Q[K-1].directions,widthInColumns:parseInt(Q[K],10)};break;case 25:it.getLogger().debug("Rule: nodeStatement (node) ",Q[K]),this.$={id:Q[K].id,label:Q[K].label,type:it.typeStr2Type(Q[K].typeStr),directions:Q[K].directions,widthInColumns:1};break;case 26:it.getLogger().debug("APA123",this?this:"na"),it.getLogger().debug("COLUMNS: ",Q[K]),this.$={type:"column-setting",columns:
`+xt.showPosition()+`
Expecting `+Xt.join(", ")+", got '"+(this.terminals_[Mt]||Mt)+"'":_e="Parse error on line "+(yt+1)+": Unexpected "+(Mt==It?"end of input":"'"+(this.terminals_[Mt]||Mt)+"'"),this.parseError(_e,{text:xt.match,token:this.terminals_[Mt]||Mt,line:xt.yylineno,loc:kt,expected:Xt})}if(Ae[0]instanceof Array&&Ae.length>1)throw new Error("Parse Error: multiple actions possible at state: "+pn+", token: "+Mt);switch(Ae[0]){case 1:rt.push(Mt),gt.push(xt.yytext),Q.push(xt.yylloc),rt.push(Ae[1]),Mt=null,V=xt.yyleng,K=xt.yytext,yt=xt.yylineno,kt=xt.yylloc;break;case 2:if(be=this.productions_[Ae[1]][1],tn.$=gt[gt.length-be],tn._$={first_line:Q[Q.length-(be||1)].first_line,last_line:Q[Q.length-1].last_line,first_column:Q[Q.length-(be||1)].first_column,last_column:Q[Q.length-1].last_column},Gt&&(tn._$.range=[Q[Q.length-(be||1)].range[0],Q[Q.length-1].range[1]]),ye=this.performAction.apply(tn,[K,V,yt,Ft.yy,Ae[1],gt,Q].concat(jt)),typeof ye<"u")return ye;be&&(rt=rt.slice(0,-1*be*2),gt=gt.slice(0,-1*be),Q=Q.slice(0,-1*be)),rt.push(this.productions_[Ae[1]][0]),gt.push(tn.$),Q.push(tn._$),Ne=dt[rt[rt.length-2]][rt[rt.length-1]],rt.push(Ne);break;case 3:return!0}}return!0}},ot=function(){var wt={EOF:1,parseError:function(ct,rt){if(this.yy.parser)this.yy.parser.parseError(ct,rt);else throw new Error(ct)},setInput:function(mt,ct){return this.yy=ct||this.yy||{},this._input=mt,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var mt=this._input[0];this.yytext+=mt,this.yyleng++,this.offset++,this.match+=mt,this.matched+=mt;var ct=mt.match(/(?:\r\n?|\n).*/g);return ct?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),mt},unput:function(mt){var ct=mt.length,rt=mt.split(/(?:\r\n?|\n)/g);this._input=mt+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-ct),this.offset-=ct;var it=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),rt.length-1&&(this.yylineno-=rt.length-1);var gt=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:rt?(rt.length===it.length?this.yylloc.first_column:0)+it[it.length-rt.length].length-rt[0].length:this.yylloc.first_column-ct},this.options.ranges&&(this.yylloc.range=[gt[0],gt[0]+this.yyleng-ct]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(mt){this.unput(this.match.slice(mt))},pastInput:function(){var mt=this.matched.substr(0,this.matched.length-this.match.length);return(mt.length>20?"...":"")+mt.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var mt=this.match;return mt.length<20&&(mt+=this._input.substr(0,20-mt.length)),(mt.substr(0,20)+(mt.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var mt=this.pastInput(),ct=new Array(mt.length+1).join("-");return mt+this.upcomingInput()+`
`+ct+"^"},test_match:function(mt,ct){var rt,it,gt;if(this.options.backtrack_lexer&&(gt={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(gt.yylloc.range=this.yylloc.range.slice(0))),it=mt[0].match(/(?:\r\n?|\n).*/g),it&&(this.yylineno+=it.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:it?it[it.length-1].length-it[it.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+mt[0].length},this.yytext+=mt[0],this.match+=mt[0],this.matches=mt,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(mt[0].length),this.matched+=mt[0],rt=this.performAction.call(this,this.yy,this,ct,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),rt)return rt;if(this._backtrack){for(var Q in gt)this[Q]=gt[Q];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var mt,ct,rt,it;this._more||(this.yytext="",this.match="");for(var gt=this._currentRules(),Q=0;Q<gt.length;Q++)if(rt=this._input.match(this.rules[gt[Q]]),rt&&(!ct||rt[0].length>ct[0].length)){if(ct=rt,it=Q,this.options.backtrack_lexer){if(mt=this.test_match(rt,gt[Q]),mt!==!1)return mt;if(this._backtrack){ct=!1;continue}else return!1}else if(!this.options.flex)break}return ct?(mt=this.test_match(ct,gt[it]),mt!==!1?mt:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.
`+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var ct=this.next();return ct||this.lex()},begin:function(ct){this.conditionStack.push(ct)},popState:function(){var ct=this.conditionStack.length-1;return ct>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(ct){return ct=this.conditionStack.length-1-Math.abs(ct||0),ct>=0?this.conditionStack[ct]:"INITIAL"},pushState:function(ct){this.begin(ct)},stateStackSize:function(){return this.conditionStack.length},options:{},performAction:function(ct,rt,it,gt){switch(it){case 0:return 10;case 1:return ct.getLogger().debug("Found space-block"),31;case 2:return ct.getLogger().debug("Found nl-block"),31;case 3:return ct.getLogger().debug("Found space-block"),29;case 4:ct.getLogger().debug(".",rt.yytext);break;case 5:ct.getLogger().debug("_",rt.yytext);break;case 6:return 5;case 7:return rt.yytext=-1,28;case 8:return rt.yytext=rt.yytext.replace(/columns\s+/,""),ct.getLogger().debug("COLUMNS (LEX)",rt.yytext),28;case 9:this.pushState("md_string");break;case 10:return"MD_STR";case 11:this.popState();break;case 12:this.pushState("string");break;case 13:ct.getLogger().debug("LEX: POPPING STR:",rt.yytext),this.popState();break;case 14:return ct.getLogger().debug("LEX: STR end:",rt.yytext),"STR";case 15:return rt.yytext=rt.yytext.replace(/space\:/,""),ct.getLogger().debug("SPACE NUM (LEX)",rt.yytext),21;case 16:return rt.yytext="1",ct.getLogger().debug("COLUMNS (LEX)",rt.yytext),21;case 17:return 43;case 18:return"LINKSTYLE";case 19:return"INTERPOLATE";case 20:return this.pushState("CLASSDEF"),40;case 21:return this.popState(),this.pushState("CLASSDEFID"),"DEFAULT_CLASSDEF_ID";case 22:return this.popState(),this.pushState("CLASSDEFID"),41;case 23:return this.popState(),42;case 24:return this.pushState("CLASS"),44;case 25:return this.popState(),this.pushState("CLASS_STYLE"),45;case 26:return this.popState(),46;case 27:return this.pushState("STYLE_STMNT"),47;case 28:return this.popState(),this.pushState("STYLE_DEFINITION"),48;case 29:return this.popState(),49;case 30:return this.pushState("acc_title"),"acc_title";case 31:return this.popState(),"acc_title_value";case 32:return this.pushState("acc_descr"),"acc_descr";case 33:return this.popState(),"acc_descr_value";case 34:this.pushState("acc_descr_multiline");break;case 35:this.popState();break;case 36:return"acc_descr_multiline_value";case 37:return 30;case 38:return this.popState(),ct.getLogger().debug("Lex: (("),"NODE_DEND";case 39:return this.popState(),ct.getLogger().debug("Lex: (("),"NODE_DEND";case 40:return this.popState(),ct.getLogger().debug("Lex: ))"),"NODE_DEND";case 41:return this.popState(),ct.getLogger().debug("Lex: (("),"NODE_DEND";case 42:return this.popState(),ct.getLogger().debug("Lex: (("),"NODE_DEND";case 43:return this.popState(),ct.getLogger().debug("Lex: (-"),"NODE_DEND";case 44:return this.popState(),ct.getLogger().debug("Lex: -)"),"NODE_DEND";case 45:return this.popState(),ct.getLogger().debug("Lex: (("),"NODE_DEND";case 46:return this.popState(),ct.getLogger().debug("Lex: ]]"),"NODE_DEND";case 47:return this.popState(),ct.getLogger().debug("Lex: ("),"NODE_DEND";case 48:return this.popState(),ct.getLogger().debug("Lex: ])"),"NODE_DEND";case 49:return this.popState(),ct.getLogger().debug("Lex: /]"),"NODE_DEND";case 50:return this.popState(),ct.getLogger().debug("Lex: /]"),"NODE_DEND";case 51:return this.popState(),ct.getLogger().debug("Lex: )]"),"NODE_DEND";case 52:return this.popState(),ct.getLogger().debug("Lex: )"),"NODE_DEND";case 53:return this.popState(),ct.getLogger().debug("Lex: ]>"),"NODE_DEND";case 54:return this.popState(),ct.getLogger().debug("Lex: ]"),"NODE_DEND";case 55:return ct.getLogger().debug("Lexa: -)"),this.pushState("NODE"),36;case 56:return ct.getLogger().debug("Lexa: (-"),this.pushState("NODE"),36;case 57:return ct.getLogger().debug("Lexa
font-family: ${i.fontFamily};
color: ${i.nodeTextColor||i.textColor};
}
.cluster-label text {
fill: ${i.titleColor};
}
.cluster-label span,p {
color: ${i.titleColor};
}
.label text,span,p {
fill: ${i.nodeTextColor||i.textColor};
color: ${i.nodeTextColor||i.textColor};
}
.node rect,
.node circle,
.node ellipse,
.node polygon,
.node path {
fill: ${i.mainBkg};
stroke: ${i.nodeBorder};
stroke-width: 1px;
}
.flowchart-label text {
text-anchor: middle;
}
// .flowchart-label .text-outer-tspan {
// text-anchor: middle;
// }
// .flowchart-label .text-inner-tspan {
// text-anchor: start;
// }
.node .label {
text-align: center;
}
.node.clickable {
cursor: pointer;
}
.arrowheadPath {
fill: ${i.arrowheadColor};
}
.edgePath .path {
stroke: ${i.lineColor};
stroke-width: 2.0px;
}
.flowchart-link {
stroke: ${i.lineColor};
fill: none;
}
.edgeLabel {
background-color: ${i.edgeLabelBackground};
rect {
opacity: 0.5;
background-color: ${i.edgeLabelBackground};
fill: ${i.edgeLabelBackground};
}
text-align: center;
}
/* For html labels only */
.labelBkg {
background-color: ${jX(i.edgeLabelBackground,.5)};
// background-color:
}
.node .cluster {
// fill: ${jX(i.mainBkg,.5)};
fill: ${jX(i.clusterBkg,.5)};
stroke: ${jX(i.clusterBorder,.2)};
box-shadow: rgba(50, 50, 93, 0.25) 0px 13px 27px -5px, rgba(0, 0, 0, 0.3) 0px 8px 16px -8px;
stroke-width: 1px;
}
.cluster text {
fill: ${i.titleColor};
}
.cluster span,p {
color: ${i.titleColor};
}
/* .cluster div {
color: ${i.titleColor};
} */
div.mermaidTooltip {
position: absolute;
text-align: center;
max-width: 200px;
padding: 2px;
font-family: ${i.fontFamily};
font-size: 12px;
background: ${i.tertiaryColor};
border: 1px solid ${i.border2};
border-radius: 2px;
pointer-events: none;
z-index: 100;
}
.flowchartTitleText {
text-anchor: middle;
font-size: 18px;
fill: ${i.textColor};
}
`;function pVt(i,a,f=!1){var R,B,z;const g=i;let w="default";(((R=g==null?void 0:g.classes)==null?void 0:R.length)||0)>0&&(w=((g==null?void 0:g.classes)||[]).join(" ")),w=w+" flowchart-label";let v=0,b="",E;switch(g.type){case"round":v=5,b="rect";break;case"composite":v=0,b="composite",E=0;break;case"square":b="rect";break;case"diamond":b="question";break;case"hexagon":b="hexagon";break;case"block_arrow":b="block_arrow";break;case"odd":b="rect_left_inv_arrow";break;case"lean_right":b="lean_right";break;case"lean_left":b="lean_left";break;case"trapezoid":b="trapezoid";break;case"inv_trapezoid":b="inv_trapezoid";break;case"rect_left_inv_arrow":b="rect_left_inv_arrow";break;case"circle":b="circle";break;case"ellipse":b="ellipse";break;case"stadium":b="stadium";break;case"subroutine":b="subroutine";break;case"cylinder":b="cylinder";break;case"group":b="rect";break;case"doublecircle":b="doublecircle";break;default:b="rect"}const S=C2((g==null?void 0:g.styles)||[]),_=g.label,M=g.size||{width:0,height:0,x:0,y:0};return{labelStyle:S.labelStyle,shape:b,labelText:_,rx:v,ry:v,class:w,style:S.style,id:g.id,directions:g.directions,width:M.width,height:M.height,x:M.x,y:M.y,positioned:f,intersect:void 0,type:g.type,padding:E??(((z=(B=o1())==null?void 0:B.block)==null?void 0:z.padding)||0)}}async function lnn(i,a,f){const g=pVt(a,f,!1);if(g.type==="group")return;const w=await nX(i,g),v=w.node().getBBox(),b=f.getBlock(g.id);b.size={width:v.width,height:v.height,x:0,y:0,node:w},f.setBlock(b),w.remove()}async function hnn(i,a,f){const g=pVt(a,f,!0);f.getBlock(g.id).type!=="space"&&(await nX(i,g),a.intersect=g==null?void 0:g.intersect,Zpt(g))}async function S2t(i,a,f,g){for(const w of a)await g(i,w,f),w.children&&await S2t(i,w.children,f,g)}async function fnn(i,a,f){await S2t(i,a,f,lnn)}async function dnn(i,a,f){await S2t(i,a,f,hnn)}async function gnn(i,a,f,g,w){const v=new l1({multigraph:!0,compound:!0});v.setGraph({rankdir:"TB",nodesep:10,ranksep:10,marginx:8,marginy:8});for(const b of f)b.size&&v.setNode(b.id,{width:b.size.width,height:b.size.height,intersect:b.intersect});for(const b of a)if(b.start&&b.end){const E=g.getBlock(b.start),S=g.getBlock(b.end);if(E!=null&&E.size&&(S!=null&&S.size)){const _=E.size,M=S.size,F=[{x:_.x,y:_.y},{x:_.x+(M.x-_.x)/2,y:_.y+(M.y-_.y)/2},{x:M.x,y:M.y}];await dzt(i,{v:b.start,w:b.end,name:b.id},{...b,arrowTypeEnd:b.arrowTypeEnd,arrowTypeStart:b.arrowTypeStart,points:F,classes:"edge-thickness-normal edge-pattern-solid flowchart-link LS-a1 LE-b1"},void 0,"block",v,w),b.label&&(await tbt(i,{...b,label:b.label,labelStyle:"stroke: #333; stroke-width: 1.5px;fill:none;",arrowTypeEnd:b.arrowTypeEnd,arrowTypeStart:b.arrowTypeStart,points:F,classes:"edge-thickness-normal edge-pattern-solid flowchart-link LS-a1 LE-b1"}),await hzt({...b,x:F[1].x,y:F[1].y},{originalPath:F}))}}}const Af=((vVt=(mVt=Re())==null?void 0:mVt.block)==null?void 0:vVt.padding)||8;function pnn(i,a){if(i===0||!Number.isInteger(i))throw new Error("Columns must be an integer !== 0.");if(a<0||!Number.isInteger(a))throw new Error("Position must be a non-negative integer."+a);if(i<0)return{px:a,py:0};if(i===1)return{px:0,py:a};const f=a%i,g=Math.floor(a/i);return{px:f,py:g}}const bnn=i=>{let a=0,f=0;for(const g of i.children){const{width:w,height:v,x:b,y:E}=g.size||{width:0,height:0,x:0,y:0};Kt.debug("getMaxChildSize abc95 child:",g.id,"width:",w,"height:",v,"x:",b,"y:",E,g.type),g.type!=="space"&&(w>a&&(a=w/(i.widthInColumns||1)),v>f&&(f=v))}return{width:a,height:f}};function _2t(i,a,f=0,g=0){var b,E,S,_,M,F,R,B,z,Y,nt;Kt.debug("setBlockSizes abc95 (start)",i.id,(b=i==null?void 0:i.size)==null?void 0:b.x,"block width =",i==null?void 0:i.size,"sieblingWidth",f),(E=i==null?void 0:i.size)!=null&&E.width||(i.size={width:f,height:g,x:0,y:0});let w=0,v=0;if(((S=i.children)==null?void 0:S.length)>0){for(const gt of i.children)_2t(gt,a);const ot=bnn(i);w=ot.width,v=ot.height,Kt.debug("setBlockSizes abc95 maxWidth of",i.id,":s children is ",w,v);for(const gt of i.children)gt.size&&(Kt.debug(`abc95 Setting size of children of ${i.id} id=${gt.id} ${w} ${v} ${