2023-01-09 05:03:48 +00:00
( function ( ln , Wr ) { typeof exports == "object" && typeof module < "u" ? module . exports = Wr ( ) : typeof define == "function" && define . amd ? define ( Wr ) : ( ln = typeof globalThis < "u" ? globalThis : ln || self , ln . mermaid = Wr ( ) ) } ) ( this , function ( ) { "use strict" ; var XY = Object . defineProperty ; var KY = ( ln , Wr , Bi ) => Wr in ln ? XY ( ln , Wr , { enumerable : ! 0 , configurable : ! 0 , writable : ! 0 , value : Bi } ) : ln [ Wr ] = Bi ; var za = ( ln , Wr , Bi ) => ( KY ( ln , typeof Wr != "symbol" ? Wr + "" : Wr , Bi ) , Bi ) ; var ln = typeof globalThis < "u" ? globalThis : typeof window < "u" ? window : typeof global < "u" ? global : typeof self < "u" ? self : { } ; function Wr ( t ) { throw new Error ( 'Could not dynamically require "' + t + '". Please configure the dynamicRequireTargets or/and ignoreDynamicRequires option of @rollup/plugin-commonjs appropriately for this require call to work.' ) } var Bi = { exports : { } } ; ( function ( t , e ) { ( function ( r , n ) { t . exports = n ( ) } ) ( ln , function ( ) { var r ; function n ( ) { return r . apply ( null , arguments ) } function i ( h ) { return h instanceof Array || Object . prototype . toString . call ( h ) === "[object Array]" } function s ( h ) { return h != null && Object . prototype . toString . call ( h ) === "[object Object]" } function a ( h , y ) { return Object . prototype . hasOwnProperty . call ( h , y ) } function o ( h ) { if ( Object . getOwnPropertyNames ) return Object . getOwnPropertyNames ( h ) . length === 0 ; for ( var y in h ) if ( a ( h , y ) ) return ; return 1 } function l ( h ) { return h === void 0 } function u ( h ) { return typeof h == "number" || Object . prototype . toString . call ( h ) === "[object Number]" } function d ( h ) { return h instanceof Date || Object . prototype . toString . call ( h ) === "[object Date]" } function f ( h , y ) { for ( var _ = [ ] , S = h . length , R = 0 ; R < S ; ++ R ) _ . push ( y ( h [ R ] , R ) ) ; return _ } function p ( h , y ) { for ( var _ in y ) a ( y , _ ) && ( h [ _ ] = y [ _ ] ) ; return a ( y , "toString" ) && ( h . toString = y . toString ) , a ( y , "valueOf" ) && ( h . valueOf = y . valueOf ) , h } function g ( h , y , _ , S ) { return xr ( h , y , _ , S , ! 0 ) . utc ( ) } function b ( h ) { return h . _pf == null && ( h . _pf = { empty : ! 1 , unusedTokens : [ ] , unusedInput : [ ] , overflow : - 2 , charsLeftOver : 0 , nullInput : ! 1 , invalidEra : null , invalidMonth : null , invalidFormat : ! 1 , userInvalidated : ! 1 , iso : ! 1 , parsedDateParts : [ ] , era : null , meridiem : null , rfc2822 : ! 1 , weekdayMismatch : ! 1 } ) , h . _pf } function k ( h ) { if ( h . _isValid == null ) { var y = b ( h ) , _ = L . call ( y . parsedDateParts , function ( S ) { return S != null } ) , _ = ! isNaN ( h . _d . getTime ( ) ) && y . overflow < 0 && ! y . empty && ! y . invalidEra && ! y . invalidMonth && ! y . invalidWeekday && ! y . weekdayMismatch && ! y . nullInput && ! y . invalidFormat && ! y . userInvalidated && ( ! y . meridiem || y . meridiem && _ ) ; if ( h . _strict && ( _ = _ && y . charsLeftOver === 0 && y . unusedTokens . length === 0 && y . bigHour === void 0 ) , Object . isFrozen != null && Object . isFrozen ( h ) ) return _ ; h . _isValid = _ } return h . _isValid } function T ( h ) { var y = g ( NaN ) ; return h != null ? p ( b ( y ) , h ) : b ( y ) . userInvalidated = ! 0 , y } var L = Array . prototype . some || function ( h ) { for ( var y = Object ( this ) , _ = y . length >>> 0 , S = 0 ; S < _ ; S ++ ) if ( S in y && h . call ( this , y [ S ] , S , y ) ) return ! 0 ; return ! 1 } , E = n . momentProperties = [ ] , I = ! 1 ; function V ( h , y ) { var _ , S , R , it = E . length ; if ( l ( y . _isAMomentObject ) || ( h . _isAMomentObject = y . _isAMomentObject ) , l ( y . _i ) || ( h . _i = y . _i ) , l ( y . _f ) || ( h . _f = y . _f ) , l ( y . _l ) || ( h . _l = y . _l ) , l ( y . _strict ) || ( h . _strict = y . _strict ) , l ( y . _tzm ) || ( h . _tzm = y . _tzm ) , l ( y . _isUTC ) || ( h . _isUTC = y . _isUTC ) , l ( y . _offset ) || ( h . _offset = y . _offset ) , l ( y . _pf ) || ( h . _pf = b ( y ) ) , l ( y . _locale ) || ( h . _locale = y . _locale ) , 0 < it ) for ( _ = 0 ; _ < it ; _ ++ ) l ( R = y [ S = E [ _ ] ] ) || ( h [ S ] = R ) ; return h } function H ( h ) { V ( this , h ) , this . _d = new Date ( h . _d != null ? h . _d . getTime ( ) : NaN ) , this . isValid ( ) || ( this . _d = new Date ( NaN ) ) , I === ! 1 && ( I = ! 0 , n . updateOffset ( this ) , I = ! 1 ) } function G ( h ) { return h instanceof H || h != null && h . _isAMomentObject != null } function Y ( h ) { n . suppressDeprecationWarnings === ! 1 && typeof console < "u" && console . warn && console . warn ( "Deprecation warning: " + h ) } function W ( h , y ) { var _ = ! 0 ; return p ( function ( ) { if ( n . deprecationHandler != null && n . deprecationHandler ( null , h ) , _ ) { for ( var S , R , it = [ ] , mt = arguments . length , Ct = 0 ; Ct < mt ; Ct ++ ) { if ( S = "" , typeof arguments [ Ct ] == "object" ) { for ( R in S += `
[ ` +Ct+"] ",arguments[0])a(arguments[0],R)&&(S+=R+": "+arguments[0][R]+", ");S=S.slice(0,-2)}else S=arguments[Ct];it.push(S)}Y(h+ `
Arguments : ` +Array.prototype.slice.call(it).join("")+ `
` +new Error().stack),_=!1}return y.apply(this,arguments)},y)}var N={};function D(h,y){n.deprecationHandler!=null&&n.deprecationHandler(h,y),N[h]||(Y(y),N[h]=!0)}function w(h){return typeof Function<"u"&&h instanceof Function||Object.prototype.toString.call(h)==="[object Function]"}function v(h,y){var _,S=p({},h);for(_ in y)a(y,_)&&(s(h[_])&&s(y[_])?(S[_]={},p(S[_],h[_]),p(S[_],y[_])):y[_]!=null?S[_]=y[_]:delete S[_]);for(_ in h)a(h,_)&&!a(y,_)&&s(h[_])&&(S[_]=p({},S[_]));return S}function M(h){h!=null&&this.set(h)}n.suppressDeprecationWarnings=!1,n.deprecationHandler=null;var m=Object.keys||function(h){var y,_=[];for(y in h)a(h,y)&&_.push(y);return _};function Q(h,y,_){var S=""+Math.abs(h);return(0<=h?_?"+":"":"-")+Math.pow(10,Math.max(0,y-S.length)).toString().substr(1)+S}var x=/( \[ [^ \[ ]* \] )|( \\ )?([Hh]mm(ss)?|Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Qo?|N{1,5}|YYYYYY|YYYYY|YYYY|YY|y{2,4}|yo?|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|kk?|mm?|ss?|S{1,9}|x|X|zz?|ZZ?|.)/g,ct=/( \[ [^ \[ ]* \] )|( \\ )?(LTS|LT|LL?L?L?|l{1,4})/g,Dt={},kt={};function j(h,y,_,S){var R=typeof S=="string"?function(){return this[S]()}:S;h&&(kt[h]=R),y&&(kt[y[0]]=function(){return Q(R.apply(this,arguments),y[1],y[2])}),_&&(kt[_]=function(){return this.localeData().ordinal(R.apply(this,arguments),h)})}function ot(h,y){return h.isValid()?(y=rt(y,h.localeData()),Dt[y]=Dt[y]||function(_){for(var S,R=_.match(x),it=0,mt=R.length;it<mt;it++)kt[R[it]]?R[it]=kt[R[it]]:R[it]=(S=R[it]).match(/ \[ [ \s \S ]/)?S.replace(/^ \[ | \] $ /g,""):S.replace(/ \\ /g,"");return function(Ct){for(var Pt="",It=0;It<mt;It++)Pt+=w(R[It])?R[It].call(Ct,_):R[It];return Pt}}(y),Dt[y](h)):h.localeData().invalidDate()}function rt(h,y){var _=5;function S(R){return y.longDateFormat(R)||R}for(ct.lastIndex=0;0<=_&&ct.test(h);)h=h.replace(ct,S),ct.lastIndex=0,--_;return h}var nt={};function ut(h,y){var _=h.toLowerCase();nt[_]=nt[_+"s"]=nt[y]=h}function _t(h){return typeof h=="string"?nt[h]||nt[h.toLowerCase()]:void 0}function K(h){var y,_,S={};for(_ in h)a(h,_)&&(y=_t(_))&&(S[y]=h[_]);return S}var Ot={};function P(h,y){Ot[h]=y}function z(h){return h%4==0&&h%100!=0||h%400==0}function X(h){return h<0?Math.ceil(h)||0:Math.floor(h)}function F(y){var y=+y,_=0;return _=y!=0&&isFinite(y)?X(y):_}function O(h,y){return function(_){return _!=null?(J(this,h,_),n.updateOffset(this,y),this):A(this,h)}}function A(h,y){return h.isValid()?h._d["get"+(h._isUTC?"UTC":"")+y]():NaN}function J(h,y,_){h.isValid()&&!isNaN(_)&&(y==="FullYear"&&z(h.year())&&h.month()===1&&h.date()===29?(_=F(_),h._d["set"+(h._isUTC?"UTC":"")+y](_,h.month(),dt(_,h.month()))):h._d["set"+(h._isUTC?"UTC":"")+y](_))}var C=/ \d /,ce=/ \d \d /,ht=/ \d {3}/,Ps=/ \d {4}/,Ji=/[+-]? \d {6}/,U=/ \d \d ?/,Yt=/ \d \d \d \d ?/,et=/ \d \d \d \d \d \d ?/,Mt=/ \d {1,3}/,ts=/ \d {1,4}/,Qi=/[+-]? \d {1,6}/,Tt=/ \d +/,gt=/[+-]? \d +/,Et=/Z|[+-] \d \d :? \d \d /gi,wt=/Z|[+-] \d \d (?::? \d \d )?/gi,pt=/[0-9]{0,256}['a-z \u 00A0- \u 05FF \u 0700- \u D7FF \u F900- \u FDCF \u FDF0- \u FF07 \u FF10- \u FFEF]{1,256}|[ \u 0600- \u 06FF \/ ]{1,256}( \s *?[ \u 0600- \u 06FF]{1,256}){1,2}/i;function st(h,y,_){jt[h]=w(y)?y:function(S,R){return S&&_?_:y}}function le(h,y){return a(jt,h)?jt[h](y._strict,y._locale):new RegExp(Xt(h.replace(" \\ ","").replace(/ \\ ( \[ )| \\ ( \] )| \[ ([^ \] \[ ]*) \] | \\ (.)/g,function(_,S,R,it,mt){return S||R||it||mt})))}function Xt(h){return h.replace(/[- \/ \\ ^ $ *+?.()|[ \] {}]/g," \\ $ &")}var jt={},Kt={};function Gt(h,y){var _,S,R=y;for(typeof h=="string"&&(h=[h]),u(y)&&(R=function(it,mt){mt[y]=F(it)}),S=h.length,_=0;_<S;_++)Kt[h[_]]=R}function Ee(h,y){Gt(h,function(_,S,R,it){R._w=R._w||{},y(_,R._w,R,it)})}var Ht,Vt=0,Ft=1,xt=2,ft=3,Lt=4,bt=5,Ut=6,at=7,ie=8;function dt(h,y){if(isNaN(h)||isNaN(y))return NaN;var _=(y%(_=12)+_)%_;return h+=(y-_)/12,_==1?z(h)?29:28:31-_%7%2}Ht=Array.prototype.indexOf||function(h){for(var y=0;y<this.length;++y)if(this[y]===h)return y;return-1},j("M",["MM",2],"Mo",function(){return this.month()+1}),j("MMM",0,0,function(h){return this.localeData().monthsShort(this,h)}),j("MMMM",0,0,function(h){return this.localeData().months(this,h)}),ut("month","M"),P("month",8),st("M",U),st("MM",U,ce),st("MMM",function(h,y){retu
In order to be iterable , non - array objects must have a [ Symbol . iterator ] ( ) method . ` )}var Yk=Object.hasOwnProperty,G2=Object.setPrototypeOf,Vk=Object.isFrozen,Uk=Object.getPrototypeOf,zk=Object.getOwnPropertyDescriptor,Lr=Object.freeze,pn=Object.seal,Wk=Object.create,q2=typeof Reflect<"u"&&Reflect,Kl=q2.apply,Zh=q2.construct;Kl||(Kl=function(e,r,n){return e.apply(r,n)}),Lr||(Lr=function(e){return e}),pn||(pn=function(e){return e}),Zh||(Zh=function(e,r){return Xl(e,fn(r))});var Hk=tn(Array.prototype.forEach),j2=tn(Array.prototype.pop),no=tn(Array.prototype.push),Zl=tn(String.prototype.toLowerCase),Qh=tn(String.prototype.toString),Gk=tn(String.prototype.match),gn=tn(String.prototype.replace),qk=tn(String.prototype.indexOf),jk=tn(String.prototype.trim),Dr=tn(RegExp.prototype.test),Jh= $ k(TypeError);function tn(t){return function(e){for(var r=arguments.length,n=new Array(r>1?r-1:0),i=1;i<r;i++)n[i-1]=arguments[i];return Kl(t,e,n)}}function $ k(t){return function(){for(var e=arguments.length,r=new Array(e),n=0;n<e;n++)r[n]=arguments[n];return Zh(t,r)}}function we(t,e,r){r=r||Zl,G2&&G2(t,null);for(var n=e.length;n--;){var i=e[n];if(typeof i=="string"){var s=r(i);s!==i&&(Vk(e)||(e[n]=s),i=s)}t[i]=!0}return t}function ds(t){var e=Wk(null),r;for(r in t)Kl(Yk,t,[r])&&(e[r]=t[r]);return e}function Ql(t,e){for(;t!==null;){var r=zk(t,e);if(r){if(r.get)return tn(r.get);if(typeof r.value=="function")return tn(r.value)}t=Uk(t)}function n(i){return console.warn("fallback value for",i),null}return n}var $ 2=Lr(["a","abbr","acronym","address","area","article","aside","audio","b","bdi","bdo","big","blink","blockquote","body","br","button","canvas","caption","center","cite","code","col","colgroup","content","data","datalist","dd","decorator","del","details","dfn","dialog","dir","div","dl","dt","element","em","fieldset","figcaption","figure","font","footer","form","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","i","img","input","ins","kbd","label","legend","li","main","map","mark","marquee","menu","menuitem","meter","nav","nobr","ol","optgroup","option","output","p","picture","pre","progress","q","rp","rt","ruby","s","samp","section","select","shadow","small","source","spacer","span","strike","strong","style","sub","summary","sup","table","tbody","td","template","textarea","tfoot","th","thead","time","tr","track","tt","u","ul","var","video","wbr"]),t1=Lr(["svg","a","altglyph","altglyphdef","altglyphitem","animatecolor","animatemotion","animatetransform","circle","clippath","defs","desc","ellipse","filter","font","g","glyph","glyphref","hkern","image","line","lineargradient","marker","mask","metadata","mpath","path","pattern","polygon","polyline","radialgradient","rect","stop","style","switch","symbol","text","textpath","title","tref","tspan","view","vkern"]),e1=Lr(["feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDistantLight","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feImage","feMerge","feMergeNode","feMorphology","feOffset","fePointLight","feSpecularLighting","feSpotLight","feTile","feTurbulence"]),Xk=Lr(["animate","color-profile","cursor","discard","fedropshadow","font-face","font-face-format","font-face-name","font-face-src","font-face-uri","foreignobject","hatch","hatchpath","mesh","meshgradient","meshpatch","meshrow","missing-glyph","script","set","solidcolor","unknown","use"]),r1=Lr(["math","menclose","merror","mfenced","mfrac","mglyph","mi","mlabeledtr","mmultiscripts","mn","mo","mover","mpadded","mphantom","mroot","mrow","ms","mspace","msqrt","mstyle","msub","msup","msubsup","mtable","mtd","mtext","mtr","munder","munderover"]),Kk=Lr(["maction","maligngroup","malignmark","mlongdiv","mscarries","mscarry","msgroup","mstack","msline","msrow","semantics","annotation","annotation-xml","mprescripts","none"]),X2=Lr(["#text"]),K2=Lr(["accept","action","align","alt","autocapitalize","autocomplete","autopictureinpicture","autoplay","background","bgcolor","border","capture","cellpadding","cellspacing","checked","cite","class","cl
` +Ne),O&&(Ne=gn(Ne,m," "),Ne=gn(Ne,Q," "),Ne=gn(Ne,x," ")),V&&Yt?V.createHTML(Ne):Ne},e.setConfig=function(zt){fe(zt),J=!0},e.clearConfig=function(){ie=null,J=!1},e.isValidAttribute=function(zt,Z,At){ie||fe({});var Nt=at(zt),pe=at(Z);return Ye(Nt,pe,At)},e.addHook=function(zt,Z){typeof Z=="function"&&(M[zt]=M[zt]||[],no(M[zt],Z))},e.removeHook=function(zt){if(M[zt])return j2(M[zt])},e.removeHooks=function(zt){M[zt]&&(M[zt]=[])},e.removeAllHooks=function(){M={}},e}var io=Q2();const l8=t=>t?ep(t).replace(/ \\ n/g,"#br#").split("#br#"):[""],J2=t=>io.sanitize(t),tp=(t,e)=>{var r;if(((r=e.flowchart)==null?void 0:r.htmlLabels)!==!1){const n=e.securityLevel;n==="antiscript"||n==="strict"?t=J2(t):n!=="loose"&&(t=ep(t),t=t.replace(/</g,"<").replace(/>/g,">"),t=t.replace(/=/g,"="),t=d8(t))}return t},yn=(t,e)=>t&&(e.dompurifyConfig?t=io.sanitize(tp(t,e),e.dompurifyConfig).toString():t=io.sanitize(tp(t,e),{FORBID_TAGS:["style"]}).toString(),t),c8=(t,e)=>typeof t=="string"?yn(t,e):t.flat().map(r=>yn(r,e)),tc=/<br \s * \/ ?>/gi,u8=t=>tc.test(t),h8=t=>t.split(tc),d8=t=>t.replace(/#br#/g,"<br/>"),ep=t=>t.replace(tc,"#br#"),f8=t=>{let e="";return t&&(e=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,e=e.replaceAll(/ \( /g," \\ ("),e=e.replaceAll(/ \) /g," \\ )")),e},pr=t=>!(t===!1||["false","null","0"].includes(String(t).trim().toLowerCase())),Oi=function(t){let e=t;return t.includes("~")?(e=e.replace(/~([^~].*)/,"< $ 1"),e=e.replace(/~([^~]*) $ /,"> $ 1"),Oi(e)):e},he={getRows:l8,sanitizeText:yn,sanitizeTextOrArray:c8,hasBreaks:u8,splitBreaks:h8,lineBreakRegex:tc,removeScript:J2,getUrl:f8,evaluate:pr},ec={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:t=>t>=255?255:t<0?0:t,g:t=>t>=255?255:t<0?0:t,b:t=>t>=255?255:t<0?0:t,h:t=>t%360,s:t=>t>=100?100:t<0?0:t,l:t=>t>=100?100:t<0?0:t,a:t=>t>=1?1:t<0?0:t},toLinear:t=>{const e=t/255;return t>.03928?Math.pow((e+.055)/1.055,2.4):e/12.92},hue2rgb:(t,e,r)=>(r<0&&(r+=1),r>1&&(r-=1),r<1/6?t+(e-t)*6*r:r<1/2?e:r<2/3?t+(e-t)*(2/3-r)*6:t),hsl2rgb:({h:t,s:e,l:r},n)=>{if(!e)return r*2.55;t/=360,e/=100,r/=100;const i=r<.5?r*(1+e):r+e-r*e,s=2*r-i;switch(n){case"r":return ec.hue2rgb(s,i,t+1/3)*255;case"g":return ec.hue2rgb(s,i,t)*255;case"b":return ec.hue2rgb(s,i,t-1/3)*255}},rgb2hsl:({r:t,g:e,b:r},n)=>{t/=255,e/=255,r/=255;const i=Math.max(t,e,r),s=Math.min(t,e,r),a=(i+s)/2;if(n==="l")return a*100;if(i===s)return 0;const o=i-s,l=a>.5?o/(2-i-s):o/(i+s);if(n==="s")return l*100;switch(i){case t:return((e-r)/o+(e<r?6:0))*60;case e:return((r-t)/o+2)*60;case r:return((t-e)/o+4)*60;default:return-1}}},xe={channel:ec,lang:{clamp:(t,e,r)=>e>r?Math.min(e,Math.max(r,t)):Math.min(r,Math.max(e,t)),round:t=>Math.round(t*1e10)/1e10},unit:{dec2hex:t=>{const e=Math.round(t).toString(16);return e.length>1?e: ` 0 $ { e } ` }}},Ri={};for(let t=0;t<=255;t++)Ri[t]=xe.unit.dec2hex(t);const wr={ALL:0,RGB:1,HSL:2};class p8{constructor(){this.type=wr.ALL}get(){return this.type}set(e){if(this.type&&this.type!==e)throw new Error("Cannot change both RGB and HSL channels at the same time");this.type=e}reset(){this.type=wr.ALL}is(e){return this.type===e}}const g8=p8;class y8{constructor(e,r){this.color=r,this.changed=!1,this.data=e,this.type=new g8}set(e,r){return this.color=r,this.changed=!1,this.data=e,this.type.type=wr.ALL,this}_ensureHSL(){const e=this.data,{h:r,s:n,l:i}=e;r===void 0&&(e.h=xe.channel.rgb2hsl(e,"h")),n===void 0&&(e.s=xe.channel.rgb2hsl(e,"s")),i===void 0&&(e.l=xe.channel.rgb2hsl(e,"l"))}_ensureRGB(){const e=this.data,{r,g:n,b:i}=e;r===void 0&&(e.r=xe.channel.hsl2rgb(e,"r")),n===void 0&&(e.g=xe.channel.hsl2rgb(e,"g")),i===void 0&&(e.b=xe.channel.hsl2rgb(e,"b"))}get r(){const e=this.data,r=e.r;return!this.type.is(wr.HSL)&&r!==void 0?r:(this._ensureHSL(),xe.channel.hsl2rgb(e,"r"))}get g(){const e=this.data,r=e.g;return!this.type.is(wr.HSL)&&r!==void 0?r:(this._ensureHSL(),xe.channel.hsl2rgb(e,"g"))}get b(){const e=this.data,r=e.b;return!this.type.is(wr.HSL)&&r!==void 0?r:(this._ensureHSL(),xe.channel.hsl2rgb(e,"b"))}get h(){const e=this.data,r=e.h;
` +t.mark.snippet),n+" "+r):n}function oo(t,e){Error.call(this),this.name="YAMLException",this.reason=t,this.mark=e,this.message=cp(this,!1),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack||""}oo.prototype=Object.create(Error.prototype),oo.prototype.constructor=oo,oo.prototype.toString=function(e){return this.name+": "+cp(this,e)};var li=oo;function i1(t,e,r,n,i){var s="",a="",o=Math.floor(i/2)-1;return n-e>o&&(s=" ... ",e=n-o+s.length),r-n>o&&(a=" ...",r=n+o-a.length),{str:s+t.slice(e,r).replace(/ \t /g," \u 2192")+a,pos:n-e+s.length}}function s1(t,e){return Nr.repeat(" ",e-t.length)+t}function U8(t,e){if(e=Object.create(e||null),!t.buffer)return null;e.maxLength||(e.maxLength=79),typeof e.indent!="number"&&(e.indent=1),typeof e.linesBefore!="number"&&(e.linesBefore=3),typeof e.linesAfter!="number"&&(e.linesAfter=2);for(var r=/ \r ? \n | \r | \0 /g,n=[0],i=[],s,a=-1;s=r.exec(t.buffer);)i.push(s.index),n.push(s.index+s[0].length),t.position<=s.index&&a<0&&(a=n.length-2);a<0&&(a=n.length-1);var o="",l,u,d=Math.min(t.line+e.linesAfter,i.length).toString().length,f=e.maxLength-(e.indent+d+3);for(l=1;l<=e.linesBefore&&!(a-l<0);l++)u=i1(t.buffer,n[a-l],i[a-l],t.position-(n[a]-n[a-l]),f),o=Nr.repeat(" ",e.indent)+s1((t.line-l+1).toString(),d)+" | "+u.str+ `
` +o;for(u=i1(t.buffer,n[a],i[a],t.position,f),o+=Nr.repeat(" ",e.indent)+s1((t.line+1).toString(),d)+" | "+u.str+ `
` ,o+=Nr.repeat("-",e.indent+d+3+u.pos)+ ` ^
` ,l=1;l<=e.linesAfter&&!(a+l>=i.length);l++)u=i1(t.buffer,n[a+l],i[a+l],t.position-(n[a]-n[a+l]),f),o+=Nr.repeat(" ",e.indent)+s1((t.line+l+1).toString(),d)+" | "+u.str+ `
` ;return o.replace(/ \n $ /,"")}var z8=U8,W8=["kind","multi","resolve","construct","instanceOf","predicate","represent","representName","defaultStyle","styleAliases"],H8=["scalar","sequence","mapping"];function G8(t){var e={};return t!==null&&Object.keys(t).forEach(function(r){t[r].forEach(function(n){e[String(n)]=r})}),e}function q8(t,e){if(e=e||{},Object.keys(e).forEach(function(r){if(W8.indexOf(r)===-1)throw new li('Unknown option "'+r+'" is met in definition of "'+t+'" YAML type.')}),this.options=e,this.tag=t,this.kind=e.kind||null,this.resolve=e.resolve||function(){return!0},this.construct=e.construct||function(r){return r},this.instanceOf=e.instanceOf||null,this.predicate=e.predicate||null,this.represent=e.represent||null,this.representName=e.representName||null,this.defaultStyle=e.defaultStyle||null,this.multi=e.multi||!1,this.styleAliases=G8(e.styleAliases||null),H8.indexOf(this.kind)===-1)throw new li('Unknown kind "'+this.kind+'" is specified for "'+t+'" YAML type.')}var Tr=q8;function up(t,e){var r=[];return t[e].forEach(function(n){var i=r.length;r.forEach(function(s,a){s.tag===n.tag&&s.kind===n.kind&&s.multi===n.multi&&(i=a)}),r[i]=n}),r}function j8(){var t={scalar:{},sequence:{},mapping:{},fallback:{},multi:{scalar:[],sequence:[],mapping:[],fallback:[]}},e,r;function n(i){i.multi?(t.multi[i.kind].push(i),t.multi.fallback.push(i)):t[i.kind][i.tag]=t.fallback[i.tag]=i}for(e=0,r=arguments.length;e<r;e+=1)arguments[e].forEach(n);return t}function a1(t){return this.extend(t)}a1.prototype.extend=function(e){var r=[],n=[];if(e instanceof Tr)n.push(e);else if(Array.isArray(e))n=n.concat(e);else if(e&&(Array.isArray(e.implicit)||Array.isArray(e.explicit)))e.implicit&&(r=r.concat(e.implicit)),e.explicit&&(n=n.concat(e.explicit));else throw new li("Schema.extend argument should be a Type, [ Type ], or a schema definition ({ implicit: [...], explicit: [...] })");r.forEach(function(s){if(!(s instanceof Tr))throw new li("Specified list of YAML types (or a single Type object) contains a non-Type object.");if(s.loadKind&&s.loadKind!=="scalar")throw new li("There is a non-scalar type in the implicit list of a schema. Implicit resolving of such types is not supported.");if(s.multi)throw new li("There is a multi type in the implicit list of a schema. Multi tags can only be listed as explicit.")}),n.forEach(function(s){if(!(s instanceof Tr))throw new li("Specified list of YAML types (or a single Type object) contains a non-Type object.")});var i=Object.create(a1.prototype);return i.implicit=(this.implicit||[]).concat(r),i.explicit=(this.explicit||[]).concat(n),i.compiledImplicit=up(i,"implicit"),i.compiledExplicit=up(i,"explicit"),i.compiledTypeMap=j8(i.compiledImplicit,i.compiledExplicit),i};var $ 8=a1,X8=new Tr("tag:yaml.org,2002:str",{kind:"scalar",construct:function(t){return t!==null?t:""}}),K8=new Tr("tag:yaml.org,2002:seq",{kind:"sequence",construct:function(t){return t!==null?t:[]}}),Z8=new Tr("tag:yaml.org,2002:map",{kind:"mapping",construct:function(t){return t!==null?t:{}}}),hp=new $ 8({explicit:[X8,K8,Z8]});function Q8(t){if(t===null)return!0;var e=t.length;return e===1&&t==="~"||e===4&&(t==="null"||t==="Null"||t==="NULL")}function J8(){return null}function tw(t){return t===null}var ew=new Tr("tag:yaml.org,2002:null",{kind:"scalar",resolve:Q8,construct:J8,predicate:tw,represent:{canonical:function(){return"~"},lowercase:function(){return"null"},uppercase:function(){return"NULL"},camelcase:function(){return"Null"},empty:function(){return""}},defaultStyle:"lowercase"});function rw(t){if(t===null)return!1;var e=t.length;return e===4&&(t==="true"||t==="True"||t==="TRUE")||e===5&&(t==="false"||t==="False"||t==="FALSE")}function nw(t){return t==="true"||t==="True"||t==="TRUE"}function iw(t){return Object.prototype.toString.call(t)==="[object Boolean]"}var sw=new Tr("tag:yaml.org,2002:bool",{kind:"scalar",resolve:rw,construct:nw,predicate:iw,represent:{lowercase:function(t){return t?"true":"false"},uppercase:function(t){return t?"TRUE":"FALSE"},camelcase:function(t){return t?"True":"False"}},defaultStyle:"lowercase"});functio
\ r ` ;function Aw(t){if(t===null)return!1;var e,r,n=0,i=t.length,s=o1;for(r=0;r<i;r++)if(e=s.indexOf(t.charAt(r)),!(e>64)){if(e<0)return!1;n+=6}return n%8===0}function Lw(t){var e,r,n=t.replace(/[ \r \n =]/g,""),i=n.length,s=o1,a=0,o=[];for(e=0;e<i;e++)e%4===0&&e&&(o.push(a>>16&255),o.push(a>>8&255),o.push(a&255)),a=a<<6|s.indexOf(n.charAt(e));return r=i%4*6,r===0?(o.push(a>>16&255),o.push(a>>8&255),o.push(a&255)):r===18?(o.push(a>>10&255),o.push(a>>2&255)):r===12&&o.push(a>>4&255),new Uint8Array(o)}function Dw(t){var e="",r=0,n,i,s=t.length,a=o1;for(n=0;n<s;n++)n%3===0&&n&&(e+=a[r>>18&63],e+=a[r>>12&63],e+=a[r>>6&63],e+=a[r&63]),r=(r<<8)+t[n];return i=s%3,i===0?(e+=a[r>>18&63],e+=a[r>>12&63],e+=a[r>>6&63],e+=a[r&63]):i===2?(e+=a[r>>10&63],e+=a[r>>4&63],e+=a[r<<2&63],e+=a[64]):i===1&&(e+=a[r>>2&63],e+=a[r<<4&63],e+=a[64],e+=a[64]),e}function Mw(t){return Object.prototype.toString.call(t)==="[object Uint8Array]"}var Nw=new Tr("tag:yaml.org,2002:binary",{kind:"scalar",resolve:Aw,construct:Lw,predicate:Mw,represent:Dw}),Bw=Object.prototype.hasOwnProperty,Iw=Object.prototype.toString;function Ow(t){if(t===null)return!0;var e=[],r,n,i,s,a,o=t;for(r=0,n=o.length;r<n;r+=1){if(i=o[r],a=!1,Iw.call(i)!=="[object Object]")return!1;for(s in i)if(Bw.call(i,s))if(!a)a=!0;else return!1;if(!a)return!1;if(e.indexOf(s)===-1)e.push(s);else return!1}return!0}function Rw(t){return t!==null?t:[]}var Fw=new Tr("tag:yaml.org,2002:omap",{kind:"sequence",resolve:Ow,construct:Rw}),Pw=Object.prototype.toString;function Yw(t){if(t===null)return!0;var e,r,n,i,s,a=t;for(s=new Array(a.length),e=0,r=a.length;e<r;e+=1){if(n=a[e],Pw.call(n)!=="[object Object]"||(i=Object.keys(n),i.length!==1))return!1;s[e]=[i[0],n[i[0]]]}return!0}function Vw(t){if(t===null)return[];var e,r,n,i,s,a=t;for(s=new Array(a.length),e=0,r=a.length;e<r;e+=1)n=a[e],i=Object.keys(n),s[e]=[i[0],n[i[0]]];return s}var Uw=new Tr("tag:yaml.org,2002:pairs",{kind:"sequence",resolve:Yw,construct:Vw}),zw=Object.prototype.hasOwnProperty;function Ww(t){if(t===null)return!0;var e,r=t;for(e in r)if(zw.call(r,e)&&r[e]!==null)return!1;return!0}function Hw(t){return t!==null?t:{}}var Gw=new Tr("tag:yaml.org,2002:set",{kind:"mapping",resolve:Ww,construct:Hw}),qw=vw.extend({implicit:[Ew,Sw],explicit:[Nw,Fw,Uw,Gw]}),Pi=Object.prototype.hasOwnProperty,cc=1,pp=2,gp=3,uc=4,l1=1,jw=2,yp=3, $ w=/[ \x 00- \x 08 \x 0B \x 0C \x 0E- \x 1F \x 7F- \x 84 \x 86- \x 9F \u FFFE \u FFFF]|[ \u D800- \u DBFF](?![ \u DC00- \u DFFF])|(?:[^ \u D800- \u DBFF]|^)[ \u DC00- \u DFFF]/,Xw=/[ \x 85 \u 2028 \u 2029]/,Kw=/[, \[ \] \{ \} ]/,mp=/^(?:!|!!|![a-z \- ]+!) $ /i,bp=/^(?:!|[^, \[ \] \{ \} ])(?:%[0-9a-f]{2}|[0-9a-z \- #; \/ \? :@&= \+ \$ ,_ \. !~ \* ' \( \) \[ \] ])* $ /i;function _p(t){return Object.prototype.toString.call(t)}function Vn(t){return t===10||t===13}function fs(t){return t===9||t===32}function Fr(t){return t===9||t===32||t===10||t===13}function ra(t){return t===44||t===91||t===93||t===123||t===125}function Zw(t){var e;return 48<=t&&t<=57?t-48:(e=t|32,97<=e&&e<=102?e-97+10:-1)}function Qw(t){return t===120?2:t===117?4:t===85?8:0}function Jw(t){return 48<=t&&t<=57?t-48:-1}function xp(t){return t===48?" \0 ":t===97?" \x 07":t===98?" \b ":t===116||t===9?" ":t===110? `
` :t===118?" \v ":t===102?" \f ":t===114?" \r ":t===101?" \x 1B":t===32?" ":t===34?'"':t===47?"/":t===92?" \\ ":t===78?" \x 85":t===95?" \x A0":t===76?" \u 2028":t===80?" \u 2029":""}function t7(t){return t<=65535?String.fromCharCode(t):String.fromCharCode((t-65536>>10)+55296,(t-65536&1023)+56320)}for(var vp=new Array(256),kp=new Array(256),na=0;na<256;na++)vp[na]=xp(na)?1:0,kp[na]=xp(na);function e7(t,e){this.input=t,this.filename=e.filename||null,this.schema=e.schema||qw,this.onWarning=e.onWarning||null,this.legacy=e.legacy||!1,this.json=e.json||!1,this.listener=e.listener||null,this.implicitTypes=this.schema.compiledImplicit,this.typeMap=this.schema.compiledTypeMap,this.length=t.length,this.position=0,this.line=0,this.lineStart=0,this.lineIndent=0,this.firstTabInLine=-1,this.documents=[]}function wp(t,e){var r={name:t.filename,buffer:t.input.slice(0,-1),position:t.position,line:t.line,column:t.position-t.lineStart};return r.snippet=z8(r),new li(e,r)}function Qt(t,e){throw wp(t,e)}function hc(t,e){t.onWarning&&t.onWarning.call(null,wp(t,e))}var Tp={YAML:function(e,r,n){var i,s,a;e.version!==null&&Qt(e,"duplication of %YAML directive"),n.length!==1&&Qt(e,"YAML directive accepts exactly one argument"),i=/^([0-9]+) \. ([0-9]+) $ /.exec(n[0]),i===null&&Qt(e,"ill-formed argument of the YAML directive"),s=parseInt(i[1],10),a=parseInt(i[2],10),s!==1&&Qt(e,"unacceptable YAML version of the document"),e.version=n[0],e.checkLineBreaks=a<2,a!==1&&a!==2&&hc(e,"unsupported YAML version of the document")},TAG:function(e,r,n){var i,s;n.length!==2&&Qt(e,"TAG directive accepts exactly two arguments"),i=n[0],s=n[1],mp.test(i)||Qt(e,"ill-formed tag handle (first argument) of the TAG directive"),Pi.call(e.tagMap,i)&&Qt(e,'there is a previously declared suffix for "'+i+'" tag handle'),bp.test(s)||Qt(e,"ill-formed tag prefix (second argument) of the TAG directive");try{s=decodeURIComponent(s)}catch{Qt(e,"tag prefix is malformed: "+s)}e.tagMap[i]=s}};function Yi(t,e,r,n){var i,s,a,o;if(e<r){if(o=t.input.slice(e,r),n)for(i=0,s=o.length;i<s;i+=1)a=o.charCodeAt(i),a===9||32<=a&&a<=1114111||Qt(t,"expected valid JSON character");else $ w.test(o)&&Qt(t,"the stream contains non-printable characters");t.result+=o}}function Ep(t,e,r,n){var i,s,a,o;for(Nr.isObject(r)||Qt(t,"cannot merge mappings; the provided source object is unacceptable"),i=Object.keys(r),a=0,o=i.length;a<o;a+=1)s=i[a],Pi.call(e,s)||(e[s]=r[s],n[s]=!0)}function ia(t,e,r,n,i,s,a,o,l){var u,d;if(Array.isArray(i))for(i=Array.prototype.slice.call(i),u=0,d=i.length;u<d;u+=1)Array.isArray(i[u])&&Qt(t,"nested arrays are not supported inside keys"),typeof i=="object"&&_p(i[u])==="[object Object]"&&(i[u]="[object Object]");if(typeof i=="object"&&_p(i)==="[object Object]"&&(i="[object Object]"),i=String(i),e===null&&(e={}),n==="tag:yaml.org,2002:merge")if(Array.isArray(s))for(u=0,d=s.length;u<d;u+=1)Ep(t,e,s[u],r);else Ep(t,e,s,r);else!t.json&&!Pi.call(r,i)&&Pi.call(e,i)&&(t.line=a||t.line,t.lineStart=o||t.lineStart,t.position=l||t.position,Qt(t,"duplicated mapping key")),i==="__proto__"?Object.defineProperty(e,i,{configurable:!0,enumerable:!0,writable:!0,value:s}):e[i]=s,delete r[i];return e}function c1(t){var e;e=t.input.charCodeAt(t.position),e===10?t.position++:e===13?(t.position++,t.input.charCodeAt(t.position)===10&&t.position++):Qt(t,"a line break is expected"),t.line+=1,t.lineStart=t.position,t.firstTabInLine=-1}function tr(t,e,r){for(var n=0,i=t.input.charCodeAt(t.position);i!==0;){for(;fs(i);)i===9&&t.firstTabInLine===-1&&(t.firstTabInLine=t.position),i=t.input.charCodeAt(++t.position);if(e&&i===35)do i=t.input.charCodeAt(++t.position);while(i!==10&&i!==13&&i!==0);if(Vn(i))for(c1(t),i=t.input.charCodeAt(t.position),n++,t.lineIndent=0;i===32;)t.lineIndent++,i=t.input.charCodeAt(++t.position);else break}return r!==-1&&n!==0&&t.lineIndent<r&&hc(t,"deficient indentation"),n}function dc(t){var e=t.position,r;return r=t.input.charCodeAt(e),!!((r===45||r===46)&&r===t.input.charCodeAt(e+1)&&r===t.input.charCodeAt(e+2)&&(e+=3,r=t.input.charCodeAt(e),r===0||Fr(r)))}function u1(t,e){e===1?t.result+=" ":e>1&&(t.resul
` ,e-1))}function r7(t,e,r){var n,i,s,a,o,l,u,d,f=t.kind,p=t.result,g;if(g=t.input.charCodeAt(t.position),Fr(g)||ra(g)||g===35||g===38||g===42||g===33||g===124||g===62||g===39||g===34||g===37||g===64||g===96||(g===63||g===45)&&(i=t.input.charCodeAt(t.position+1),Fr(i)||r&&ra(i)))return!1;for(t.kind="scalar",t.result="",s=a=t.position,o=!1;g!==0;){if(g===58){if(i=t.input.charCodeAt(t.position+1),Fr(i)||r&&ra(i))break}else if(g===35){if(n=t.input.charCodeAt(t.position-1),Fr(n))break}else{if(t.position===t.lineStart&&dc(t)||r&&ra(g))break;if(Vn(g))if(l=t.line,u=t.lineStart,d=t.lineIndent,tr(t,!1,-1),t.lineIndent>=e){o=!0,g=t.input.charCodeAt(t.position);continue}else{t.position=a,t.line=l,t.lineStart=u,t.lineIndent=d;break}}o&&(Yi(t,s,a,!1),u1(t,t.line-l),s=a=t.position,o=!1),fs(g)||(a=t.position+1),g=t.input.charCodeAt(++t.position)}return Yi(t,s,a,!1),t.result?!0:(t.kind=f,t.result=p,!1)}function n7(t,e){var r,n,i;if(r=t.input.charCodeAt(t.position),r!==39)return!1;for(t.kind="scalar",t.result="",t.position++,n=i=t.position;(r=t.input.charCodeAt(t.position))!==0;)if(r===39)if(Yi(t,n,t.position,!0),r=t.input.charCodeAt(++t.position),r===39)n=t.position,t.position++,i=t.position;else return!0;else Vn(r)?(Yi(t,n,i,!0),u1(t,tr(t,!1,e)),n=i=t.position):t.position===t.lineStart&&dc(t)?Qt(t,"unexpected end of the document within a single quoted scalar"):(t.position++,i=t.position);Qt(t,"unexpected end of the stream within a single quoted scalar")}function i7(t,e){var r,n,i,s,a,o;if(o=t.input.charCodeAt(t.position),o!==34)return!1;for(t.kind="scalar",t.result="",t.position++,r=n=t.position;(o=t.input.charCodeAt(t.position))!==0;){if(o===34)return Yi(t,r,t.position,!0),t.position++,!0;if(o===92){if(Yi(t,r,t.position,!0),o=t.input.charCodeAt(++t.position),Vn(o))tr(t,!1,e);else if(o<256&&vp[o])t.result+=kp[o],t.position++;else if((a=Qw(o))>0){for(i=a,s=0;i>0;i--)o=t.input.charCodeAt(++t.position),(a=Zw(o))>=0?s=(s<<4)+a:Qt(t,"expected hexadecimal character");t.result+=t7(s),t.position++}else Qt(t,"unknown escape sequence");r=n=t.position}else Vn(o)?(Yi(t,r,n,!0),u1(t,tr(t,!1,e)),r=n=t.position):t.position===t.lineStart&&dc(t)?Qt(t,"unexpected end of the document within a double quoted scalar"):(t.position++,n=t.position)}Qt(t,"unexpected end of the stream within a double quoted scalar")}function s7(t,e){var r=!0,n,i,s,a=t.tag,o,l=t.anchor,u,d,f,p,g,b=Object.create(null),k,T,L,E;if(E=t.input.charCodeAt(t.position),E===91)d=93,g=!1,o=[];else if(E===123)d=125,g=!0,o={};else return!1;for(t.anchor!==null&&(t.anchorMap[t.anchor]=o),E=t.input.charCodeAt(++t.position);E!==0;){if(tr(t,!0,e),E=t.input.charCodeAt(t.position),E===d)return t.position++,t.tag=a,t.anchor=l,t.kind=g?"mapping":"sequence",t.result=o,!0;r?E===44&&Qt(t,"expected the node content, but found ','"):Qt(t,"missed comma between flow collection entries"),T=k=L=null,f=p=!1,E===63&&(u=t.input.charCodeAt(t.position+1),Fr(u)&&(f=p=!0,t.position++,tr(t,!0,e))),n=t.line,i=t.lineStart,s=t.position,sa(t,e,cc,!1,!0),T=t.tag,k=t.result,tr(t,!0,e),E=t.input.charCodeAt(t.position),(p||t.line===n)&&E===58&&(f=!0,E=t.input.charCodeAt(++t.position),tr(t,!0,e),sa(t,e,cc,!1,!0),L=t.result),g?ia(t,o,b,T,k,L,n,i,s):f?o.push(ia(t,null,b,T,k,L,n,i,s)):o.push(k),tr(t,!0,e),E=t.input.charCodeAt(t.position),E===44?(r=!0,E=t.input.charCodeAt(++t.position)):r=!1}Qt(t,"unexpected end of the stream within a flow collection")}function a7(t,e){var r,n,i=l1,s=!1,a=!1,o=e,l=0,u=!1,d,f;if(f=t.input.charCodeAt(t.position),f===124)n=!1;else if(f===62)n=!0;else return!1;for(t.kind="scalar",t.result="";f!==0;)if(f=t.input.charCodeAt(++t.position),f===43||f===45)l1===i?i=f===43?yp:jw:Qt(t,"repeat of a chomping mode identifier");else if((d=Jw(f))>=0)d===0?Qt(t,"bad explicit indentation width of a block scalar; it cannot be less than one"):a?Qt(t,"repeat of an indentation width identifier"):(o=e+d-1,a=!0);else break;if(fs(f)){do f=t.input.charCodeAt(++t.position);while(fs(f));if(f===35)do f=t.input.charCodeAt(++t.position);while(!Vn(f)&&f!==0)}for(;f!==0;){for(c1(t),t.lineIndent=0,f=t.input.charCodeAt(t.position);(
` ,s?1+l:l):i===l1&&s&&(t.result+= `
` );break}for(n?fs(f)?(u=!0,t.result+=Nr.repeat( `
` ,s?1+l:l)):u?(u=!1,t.result+=Nr.repeat( `
` ,l+1)):l===0?s&&(t.result+=" "):t.result+=Nr.repeat( `
` ,l):t.result+=Nr.repeat( `
` ,s?1+l:l),s=!0,a=!0,l=0,r=t.position;!Vn(f)&&f!==0;)f=t.input.charCodeAt(++t.position);Yi(t,r,t.position,!1)}return!0}function Cp(t,e){var r,n=t.tag,i=t.anchor,s=[],a,o=!1,l;if(t.firstTabInLine!==-1)return!1;for(t.anchor!==null&&(t.anchorMap[t.anchor]=s),l=t.input.charCodeAt(t.position);l!==0&&(t.firstTabInLine!==-1&&(t.position=t.firstTabInLine,Qt(t,"tab characters must not be used in indentation")),!(l!==45||(a=t.input.charCodeAt(t.position+1),!Fr(a))));){if(o=!0,t.position++,tr(t,!0,-1)&&t.lineIndent<=e){s.push(null),l=t.input.charCodeAt(t.position);continue}if(r=t.line,sa(t,e,gp,!1,!0),s.push(t.result),tr(t,!0,-1),l=t.input.charCodeAt(t.position),(t.line===r||t.lineIndent>e)&&l!==0)Qt(t,"bad indentation of a sequence entry");else if(t.lineIndent<e)break}return o?(t.tag=n,t.anchor=i,t.kind="sequence",t.result=s,!0):!1}function o7(t,e,r){var n,i,s,a,o,l,u=t.tag,d=t.anchor,f={},p=Object.create(null),g=null,b=null,k=null,T=!1,L=!1,E;if(t.firstTabInLine!==-1)return!1;for(t.anchor!==null&&(t.anchorMap[t.anchor]=f),E=t.input.charCodeAt(t.position);E!==0;){if(!T&&t.firstTabInLine!==-1&&(t.position=t.firstTabInLine,Qt(t,"tab characters must not be used in indentation")),n=t.input.charCodeAt(t.position+1),s=t.line,(E===63||E===58)&&Fr(n))E===63?(T&&(ia(t,f,p,g,b,null,a,o,l),g=b=k=null),L=!0,T=!0,i=!0):T?(T=!1,i=!0):Qt(t,"incomplete explicit mapping pair; a key node is missed; or followed by a non-tabulated empty line"),t.position+=1,E=n;else{if(a=t.line,o=t.lineStart,l=t.position,!sa(t,r,pp,!1,!0))break;if(t.line===s){for(E=t.input.charCodeAt(t.position);fs(E);)E=t.input.charCodeAt(++t.position);if(E===58)E=t.input.charCodeAt(++t.position),Fr(E)||Qt(t,"a whitespace character is expected after the key-value separator within a block mapping"),T&&(ia(t,f,p,g,b,null,a,o,l),g=b=k=null),L=!0,T=!1,i=!1,g=t.tag,b=t.result;else if(L)Qt(t,"can not read an implicit mapping pair; a colon is missed");else return t.tag=u,t.anchor=d,!0}else if(L)Qt(t,"can not read a block mapping entry; a multiline key may not be an implicit key");else return t.tag=u,t.anchor=d,!0}if((t.line===s||t.lineIndent>e)&&(T&&(a=t.line,o=t.lineStart,l=t.position),sa(t,e,uc,!0,i)&&(T?b=t.result:k=t.result),T||(ia(t,f,p,g,b,k,a,o,l),g=b=k=null),tr(t,!0,-1),E=t.input.charCodeAt(t.position)),(t.line===s||t.lineIndent>e)&&E!==0)Qt(t,"bad indentation of a mapping entry");else if(t.lineIndent<e)break}return T&&ia(t,f,p,g,b,null,a,o,l),L&&(t.tag=u,t.anchor=d,t.kind="mapping",t.result=f),L}function l7(t){var e,r=!1,n=!1,i,s,a;if(a=t.input.charCodeAt(t.position),a!==33)return!1;if(t.tag!==null&&Qt(t,"duplication of a tag property"),a=t.input.charCodeAt(++t.position),a===60?(r=!0,a=t.input.charCodeAt(++t.position)):a===33?(n=!0,i="!!",a=t.input.charCodeAt(++t.position)):i="!",e=t.position,r){do a=t.input.charCodeAt(++t.position);while(a!==0&&a!==62);t.position<t.length?(s=t.input.slice(e,t.position),a=t.input.charCodeAt(++t.position)):Qt(t,"unexpected end of the stream within a verbatim tag")}else{for(;a!==0&&!Fr(a);)a===33&&(n?Qt(t,"tag suffix cannot contain exclamation marks"):(i=t.input.slice(e-1,t.position+1),mp.test(i)||Qt(t,"named tag handle cannot contain such characters"),n=!0,e=t.position+1)),a=t.input.charCodeAt(++t.position);s=t.input.slice(e,t.position),Kw.test(s)&&Qt(t,"tag suffix cannot contain flow indicator characters")}s&&!bp.test(s)&&Qt(t,"tag name cannot contain such characters: "+s);try{s=decodeURIComponent(s)}catch{Qt(t,"tag name is malformed: "+s)}return r?t.tag=s:Pi.call(t.tagMap,i)?t.tag=t.tagMap[i]+s:i==="!"?t.tag="!"+s:i==="!!"?t.tag="tag:yaml.org,2002:"+s:Qt(t,'undeclared tag handle "'+i+'"'),!0}function c7(t){var e,r;if(r=t.input.charCodeAt(t.position),r!==38)return!1;for(t.anchor!==null&&Qt(t,"duplication of an anchor property"),r=t.input.charCodeAt(++t.position),e=t.position;r!==0&&!Fr(r)&&!ra(r);)r=t.input.charCodeAt(++t.position);return t.position===e&&Qt(t,"name of an anchor node must contain at least one character"),t.anchor=t.input.slice(e,t.position),!0}function u7(t){var e,r,n;if(n=t.input.charCodeAt(t.position),n!==42)return!1;for(n=t.inp
` ),t.charCodeAt(0)===65279&&(t=t.slice(1)));var r=new e7(t,e),n=t.indexOf(" \0 ");for(n!==-1&&(r.position=n,Qt(r,"null byte is not allowed in input")),r.input+=" \0 ";r.input.charCodeAt(r.position)===32;)r.lineIndent+=1,r.position+=1;for(;r.position<r.length-1;)h7(r);return r.documents}function d7(t,e,r){e!==null&&typeof e=="object"&&typeof r>"u"&&(r=e,e=null);var n=Sp(t,r);if(typeof e!="function")return n;for(var i=0,s=n.length;i<s;i+=1)e(n[i])}function f7(t,e){var r=Sp(t,e);if(r.length!==0){if(r.length===1)return r[0];throw new li("expected a single document in the stream, but found more")}}var p7=d7,g7=f7,y7={loadAll:p7,load:g7},m7=hp,b7=y7.load;const Ap=/^-{3} \s *[ \n \r ](.*?)[ \n \r ]-{3} \s *[ \n \r ]+/s;function _7(t,e){var n;const r=t.match(Ap);if(r){const i=b7(r[1],{schema:m7});return i!=null&&i.title&&((n=e.setDiagramTitle)==null||n.call(e,i.title)),t.slice(r[0].length)}else return t}const x7=/%{2}{ \s *(?:( \w +) \s *:|( \w +)) \s *(?:( \w +)|((?:(?!}%{2}).| \r ? \n )*))? \s *(?:}%{2})?/gi,v7=/ \s *%%.* \n /gm,fc={},h1=function(t,e){t=t.replace(Ap,"").replace(x7,"").replace(v7, `
` );for(const[r,{detector:n}]of Object.entries(fc))if(n(t,e))return r;throw new Error( ` No diagram type detected for text : $ { t } ` )},Lp=(t,e,r)=>{if(fc[t])throw new Error( ` Detector with key $ { t } already exists ` );fc[t]={detector:e,loader:r},B.debug( ` Detector with key $ { t } added$ { r ? " with loader" : "" } ` )},k7=t=>fc[t].loader,d1=function(t,e,r){const{depth:n,clobber:i}=Object.assign({depth:2,clobber:!1},r);return Array.isArray(e)&&!Array.isArray(t)?(e.forEach(s=>d1(t,s,r)),t):Array.isArray(e)&&Array.isArray(t)?(e.forEach(s=>{t.includes(s)||t.push(s)}),t):t===void 0||n<=0?t!=null&&typeof t=="object"&&typeof e=="object"?Object.assign(t,e):e:(e!==void 0&&typeof t=="object"&&typeof e=="object"&&Object.keys(e).forEach(s=>{typeof e[s]=="object"&&(t[s]===void 0||typeof t[s]=="object")?(t[s]===void 0&&(t[s]=Array.isArray(e[s])?[]:{}),t[s]=d1(t[s],e[s],{depth:n-1,clobber:i})):(i||typeof t[s]!="object"&&typeof e[s]!="object")&&(t[s]=e[s])}),t)},gr=d1;var w7=typeof global=="object"&&global&&global.Object===Object&&global;const Dp=w7;var T7=typeof self=="object"&&self&&self.Object===Object&&self,E7=Dp||T7||Function("return this")();const mn=E7;var C7=mn.Symbol;const en=C7;var Mp=Object.prototype,S7=Mp.hasOwnProperty,A7=Mp.toString,lo=en?en.toStringTag:void 0;function L7(t){var e=S7.call(t,lo),r=t[lo];try{t[lo]=void 0;var n=!0}catch{}var i=A7.call(t);return n&&(e?t[lo]=r:delete t[lo]),i}var D7=Object.prototype,M7=D7.toString;function N7(t){return M7.call(t)}var B7="[object Null]",I7="[object Undefined]",Np=en?en.toStringTag:void 0;function ps(t){return t==null?t===void 0?I7:B7:Np&&Np in Object(t)?L7(t):N7(t)}function Gr(t){var e=typeof t;return t!=null&&(e=="object"||e=="function")}var O7="[object AsyncFunction]",R7="[object Function]",F7="[object GeneratorFunction]",P7="[object Proxy]";function aa(t){if(!Gr(t))return!1;var e=ps(t);return e==R7||e==F7||e==O7||e==P7}var Y7=mn["__core-js_shared__"];const f1=Y7;var Bp=function(){var t=/[^.]+ $ /.exec(f1&&f1.keys&&f1.keys.IE_PROTO||"");return t?"Symbol(src)_1."+t:""}();function V7(t){return!!Bp&&Bp in t}var U7=Function.prototype,z7=U7.toString;function gs(t){if(t!=null){try{return z7.call(t)}catch{}try{return t+""}catch{}}return""}var W7=/[ \\ ^ $ .*+?()[ \] {}|]/g,H7=/^ \[ object .+?Constructor \] $ /,G7=Function.prototype,q7=Object.prototype,j7=G7.toString, $ 7=q7.hasOwnProperty,X7=RegExp("^"+j7.call( $ 7).replace(W7," \\ $ &").replace(/hasOwnProperty|(function).*?(?= \\ \( )| for .+?(?= \\ \] )/g," $ 1.*?")+" $ ");function K7(t){if(!Gr(t)||V7(t))return!1;var e=aa(t)?X7:H7;return e.test(gs(t))}function Z7(t,e){return t==null?void 0:t[e]}function ys(t,e){var r=Z7(t,e);return K7(r)?r:void 0}var Q7=ys(Object,"create");const co=Q7;function J7(){this.__data__=co?co(null):{},this.size=0}function tT(t){var e=this.has(t)&&delete this.__data__[t];return this.size-=e?1:0,e}var eT="__lodash_hash_undefined__",rT=Object.prototype,nT=rT.hasOwnProperty;function iT(t){var e=this.__data__;if(co){var r=e[t];return r===eT?void 0:r}return nT.call(e,t)?e[t]:void 0}var sT=Object.prototype,aT=sT.hasOwnProperty;function oT(t){var e=this.__data__;return co?e[t]!==void 0:aT.call(e,t)}var lT="__lodash_hash_undefined__";function cT(t,e){var r=this.__data__;return this.size+=this.has(t)?0:1,r[t]=co&&e===void 0?lT:e,this}function ms(t){var e=-1,r=t==null?0:t.length;for(this.clear();++e<r;){var n=t[e];this.set(n[0],n[1])}}ms.prototype.clear=J7,ms.prototype.delete=tT,ms.prototype.get=iT,ms.prototype.has=oT,ms.prototype.set=cT;function uT(){this.__data__=[],this.size=0}function oa(t,e){return t===e||t!==t&&e!==e}function pc(t,e){for(var r=t.length;r--;)if(oa(t[r][0],e))return r;return-1}var hT=Array.prototype,dT=hT.splice;function fT(t){var e=this.__data__,r=pc(e,t);if(r<0)return!1;var n=e.length-1;return r==n?e.pop():dT.call(e,r,1),--this.size,!0}function pT(t){var e=this.__data__,r=pc(e,t);return r<0?void 0:e[r][1]}function gT(t){return pc(this.__data__,t)>-1}function yT(t,e){var r=this.__data__,n=pc(r,t);return n<0?(++this.size,r.push([t,e])):r[n][1]=e,this}function ci(t){var e=-1,r=t==null?0:t.length;for(this.clear();++e<r;){var n=t[e];this.set(n[0],n[
` ,"ig");t=t.trim().replace(r,"").replace(/'/gm,'"'),B.debug( ` Detecting diagram directive$ { e !== null ? " type:" + e : "" } based on the text : $ { t } ` );let n;const i=[];for(;(n=p1.exec(t))!==null;)if(n.index===p1.lastIndex&&p1.lastIndex++,n&&!e||e&&n[1]&&n[1].match(e)||e&&n[2]&&n[2].match(e)){const s=n[1]?n[1]:n[2],a=n[3]?n[3].trim():n[4]?JSON.parse(n[4].trim()):null;i.push({type:s,args:a})}return i.length===0&&i.push({type:t,args:null}),i.length===1?i[0]:i}catch(r){return B.error( ` ERROR : $ { r . message } - Unable to parse directive
$ { e !== null ? " type:" + e : "" } based on the text : $ { t } ` ),{type:null,args:null}}},AT=function(t,e){for(const[r,n]of e.entries())if(n.match(t))return r;return-1};function bn(t,e){if(!t)return e;const r= ` curve$ { t . charAt ( 0 ) . toUpperCase ( ) + t . slice ( 1 ) } ` ;return ET[r]||e}function LT(t,e){const r=t.trim();if(r)return e.securityLevel!=="loose"?ti(r):r}const DT=(t,...e)=>{const r=t.split("."),n=r.length-1,i=r[n];let s=window;for(let a=0;a<n;a++)if(s=s[r[a]],!s)return;s[i](...e)};function yc(t,e){return t&&e?Math.sqrt(Math.pow(e.x-t.x,2)+Math.pow(e.y-t.y,2)):0}function MT(t){let e,r=0;t.forEach(s=>{r+=yc(s,e),e=s});let n=r/2,i;return e=void 0,t.forEach(s=>{if(e&&!i){const a=yc(s,e);if(a<n)n-=a;else{const o=n/a;o<=0&&(i=e),o>=1&&(i={x:s.x,y:s.y}),o>0&&o<1&&(i={x:(1-o)*e.x+o*s.x,y:(1-o)*e.y+o*s.y})}}e=s}),i}function NT(t){return t.length===1?t[0]:MT(t)}const BT=(t,e,r)=>{let n;B.info( ` our points $ { JSON . stringify ( e ) } ` ),e[0]!==r&&(e=e.reverse());let s=25,a;n=void 0,e.forEach(d=>{if(n&&!a){const f=yc(d,n);if(f<s)s-=f;else{const p=s/f;p<=0&&(a=n),p>=1&&(a={x:d.x,y:d.y}),p>0&&p<1&&(a={x:(1-p)*n.x+p*d.x,y:(1-p)*n.y+p*d.y})}}n=d});const o=t?10:5,l=Math.atan2(e[0].y-a.y,e[0].x-a.x),u={x:0,y:0};return u.x=Math.sin(l)*o+(e[0].x+a.x)/2,u.y=-Math.cos(l)*o+(e[0].y+a.y)/2,u};function IT(t,e,r){let n=JSON.parse(JSON.stringify(r)),i;B.info("our points",n),e!=="start_left"&&e!=="start_right"&&(n=n.reverse()),n.forEach(f=>{i=f});let a=25+t,o;i=void 0,n.forEach(f=>{if(i&&!o){const p=yc(f,i);if(p<a)a-=p;else{const g=a/p;g<=0&&(o=i),g>=1&&(o={x:f.x,y:f.y}),g>0&&g<1&&(o={x:(1-g)*i.x+g*f.x,y:(1-g)*i.y+g*f.y})}}i=f});const l=10+t*.5,u=Math.atan2(n[0].y-o.y,n[0].x-o.x),d={x:0,y:0};return d.x=Math.sin(u)*l+(n[0].x+o.x)/2,d.y=-Math.cos(u)*l+(n[0].y+o.y)/2,e==="start_left"&&(d.x=Math.sin(u+Math.PI)*l+(n[0].x+o.x)/2,d.y=-Math.cos(u+Math.PI)*l+(n[0].y+o.y)/2),e==="end_right"&&(d.x=Math.sin(u-Math.PI)*l+(n[0].x+o.x)/2-5,d.y=-Math.cos(u-Math.PI)*l+(n[0].y+o.y)/2-5),e==="end_left"&&(d.x=Math.sin(u)*l+(n[0].x+o.x)/2-5,d.y=-Math.cos(u)*l+(n[0].y+o.y)/2-5),d}function Vi(t){let e="",r="";for(const n of t)n!==void 0&&(n.startsWith("color:")||n.startsWith("text-align:")?r=r+n+";":e=e+n+";");return{style:e,labelStyle:r}}let Op=0;const Rp=()=>(Op++,"id-"+Math.random().toString(36).substr(2,12)+"-"+Op);function OT(t){let e="";const r="0123456789abcdef",n=r.length;for(let i=0;i<t;i++)e+=r.charAt(Math.floor(Math.random()*n));return e}const Fp=t=>OT(t.length),RT=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}},FT=function(t,e){const r=e.text.replace(he.lineBreakRegex," "),n=t.append("text");n.attr("x",e.x),n.attr("y",e.y),n.style("text-anchor",e.anchor),n.style("font-family",e.fontFamily),n.style("font-size",e.fontSize),n.style("font-weight",e.fontWeight),n.attr("fill",e.fill),e.class!==void 0&&n.attr("class",e.class);const i=n.append("tspan");return i.attr("x",e.x+e.textMargin*2),i.attr("fill",e.fill),i.text(r),n},Pp=la((t,e,r)=>{if(!t||(r=Object.assign({fontSize:12,fontWeight:400,fontFamily:"Arial",joinWith:"<br/>"},r),he.lineBreakRegex.test(t)))return t;const n=t.split(" "),i=[];let s="";return n.forEach((a,o)=>{const l=Un( ` $ { a } ` ,r),u=Un(s,r);if(l>e){const{hyphenatedStrings:p,remainingWord:g}=PT(a,e,"-",r);i.push(s,...p),s=g}else u+l>=e?(i.push(s),s=a):s=[s,a].filter(Boolean).join(" ");o+1===n.length&&i.push(s)}),i.filter(a=>a!=="").join(r.joinWith)},(t,e,r)=> ` $ { t } $ { e } $ { r . fontSize } $ { r . fontWeight } $ { r . fontFamily } $ { r . joinWith } ` ),PT=la((t,e,r="-",n)=>{n=Object.assign({fontSize:12,fontWeight:400,fontFamily:"Arial",margin:0},n);const i=[...t],s=[];let a="";return i.forEach((o,l)=>{const u= ` $ { a } $ { o } ` ;if(Un(u,n)>=e){const f=l+1,p=i.length===f,g= ` $ { u } $ { r } ` ;s.push(p?u:g),a=""}else a=u}),{hyphenatedStrings:s,remainingWord:a}},(t,e,r="-",n)=> ` $ { t } $ { e } $ { r } $ { n . fontSize } $ { n . fontWeight } $ { n . fontFamily } ` );function g1(t,e){return e=Object.assign({fontSize:12,fontWeight:400,fontFamily:"Arial",margin:15},e),y1(t,e).height}function Un(t,e){return e=Object.assign({fontSize:12,fontWeight:400,fontFamily:"Arial"},e),y1(t,e).
2022-11-07 06:36:17 +00:00
fill : $ { t . nodeBorder } ;
fill : $ { t . classText } ;
stroke : none ;
font - family : $ { t . fontFamily } ;
font - size : 10 px ;
. title {
font - weight : bolder ;
}
}
. nodeLabel , . edgeLabel {
color : $ { t . classText } ;
}
. edgeLabel . label rect {
fill : $ { t . mainBkg } ;
}
. label text {
fill : $ { t . classText } ;
}
. edgeLabel . label span {
background : $ { t . mainBkg } ;
}
. classTitle {
font - weight : bolder ;
}
. node rect ,
. node circle ,
. node ellipse ,
. node polygon ,
. node path {
fill : $ { t . mainBkg } ;
stroke : $ { t . nodeBorder } ;
stroke - width : 1 px ;
}
. divider {
stroke : $ { t . nodeBorder } ;
stroke : 1 ;
}
g . clickable {
cursor : pointer ;
}
g . classGroup rect {
fill : $ { t . mainBkg } ;
stroke : $ { t . nodeBorder } ;
}
g . classGroup line {
stroke : $ { t . nodeBorder } ;
stroke - width : 1 ;
}
. classLabel . box {
stroke : none ;
stroke - width : 0 ;
fill : $ { t . mainBkg } ;
opacity : 0.5 ;
}
. classLabel . label {
fill : $ { t . nodeBorder } ;
font - size : 10 px ;
}
. relation {
stroke : $ { t . lineColor } ;
stroke - width : 1 ;
fill : none ;
}
. dashed - line {
stroke - dasharray : 3 ;
}
2023-01-09 05:03:48 +00:00
. dotted - line {
stroke - dasharray : 1 2 ;
}
2022-11-07 06:36:17 +00:00
# compositionStart , . composition {
fill : $ { t . lineColor } ! important ;
stroke : $ { t . lineColor } ! important ;
stroke - width : 1 ;
}
# compositionEnd , . composition {
fill : $ { t . lineColor } ! important ;
stroke : $ { t . lineColor } ! important ;
stroke - width : 1 ;
}
# dependencyStart , . dependency {
fill : $ { t . lineColor } ! important ;
stroke : $ { t . lineColor } ! important ;
stroke - width : 1 ;
}
# dependencyStart , . dependency {
fill : $ { t . lineColor } ! important ;
stroke : $ { t . lineColor } ! important ;
stroke - width : 1 ;
}
# extensionStart , . extension {
2023-01-09 05:03:48 +00:00
fill : $ { t . mainBkg } ! important ;
2022-11-07 06:36:17 +00:00
stroke : $ { t . lineColor } ! important ;
stroke - width : 1 ;
}
# extensionEnd , . extension {
2023-01-09 05:03:48 +00:00
fill : $ { t . mainBkg } ! important ;
2022-11-07 06:36:17 +00:00
stroke : $ { t . lineColor } ! important ;
stroke - width : 1 ;
}
# aggregationStart , . aggregation {
fill : $ { t . mainBkg } ! important ;
stroke : $ { t . lineColor } ! important ;
stroke - width : 1 ;
}
# aggregationEnd , . aggregation {
fill : $ { t . mainBkg } ! important ;
stroke : $ { t . lineColor } ! important ;
stroke - width : 1 ;
}
# lollipopStart , . lollipop {
fill : $ { t . mainBkg } ! important ;
stroke : $ { t . lineColor } ! important ;
stroke - width : 1 ;
}
# lollipopEnd , . lollipop {
fill : $ { t . mainBkg } ! important ;
stroke : $ { t . lineColor } ! important ;
stroke - width : 1 ;
}
. edgeTerminals {
font - size : 11 px ;
}
2023-01-09 05:03:48 +00:00
. classTitleText {
text - anchor : middle ;
font - size : 18 px ;
fill : $ { t . textColor } ;
}
` ,tg=t=> `
2022-11-07 06:36:17 +00:00
. entityBox {
fill : $ { t . mainBkg } ;
stroke : $ { t . nodeBorder } ;
}
. attributeBoxOdd {
fill : $ { t . attributeBackgroundColorOdd } ;
stroke : $ { t . nodeBorder } ;
}
. attributeBoxEven {
fill : $ { t . attributeBackgroundColorEven } ;
stroke : $ { t . nodeBorder } ;
}
. relationshipLabelBox {
fill : $ { t . tertiaryColor } ;
opacity : 0.7 ;
background - color : $ { t . tertiaryColor } ;
rect {
opacity : 0.5 ;
}
}
. relationshipLine {
stroke : $ { t . lineColor } ;
}
2023-01-09 05:03:48 +00:00
. entityTitleText {
text - anchor : middle ;
font - size : 18 px ;
fill : $ { t . textColor } ;
}
` ,eg=()=>"",Ac=t=> ` . label {
2022-11-07 06:36:17 +00:00
font - family : $ { t . fontFamily } ;
color : $ { t . nodeTextColor || t . textColor } ;
}
. cluster - label text {
fill : $ { t . titleColor } ;
}
. cluster - label span {
color : $ { t . titleColor } ;
}
. label text , span {
fill : $ { t . nodeTextColor || t . textColor } ;
color : $ { t . nodeTextColor || t . textColor } ;
}
. node rect ,
. node circle ,
. node ellipse ,
. node polygon ,
. node path {
fill : $ { t . mainBkg } ;
stroke : $ { t . nodeBorder } ;
stroke - width : 1 px ;
}
. node . label {
text - align : center ;
}
. node . clickable {
cursor : pointer ;
}
. arrowheadPath {
fill : $ { t . arrowheadColor } ;
}
. edgePath . path {
stroke : $ { t . lineColor } ;
stroke - width : 2.0 px ;
}
. flowchart - link {
stroke : $ { t . lineColor } ;
fill : none ;
}
. edgeLabel {
background - color : $ { t . edgeLabelBackground } ;
rect {
opacity : 0.5 ;
background - color : $ { t . edgeLabelBackground } ;
fill : $ { t . edgeLabelBackground } ;
}
text - align : center ;
}
. cluster rect {
fill : $ { t . clusterBkg } ;
stroke : $ { t . clusterBorder } ;
stroke - width : 1 px ;
}
. cluster text {
fill : $ { t . titleColor } ;
}
. cluster span {
color : $ { t . titleColor } ;
}
/ * . c l u s t e r d i v {
color : $ { t . titleColor } ;
} * /
div . mermaidTooltip {
position : absolute ;
text - align : center ;
max - width : 200 px ;
padding : 2 px ;
font - family : $ { t . fontFamily } ;
font - size : 12 px ;
background : $ { t . tertiaryColor } ;
border : 1 px solid $ { t . border2 } ;
border - radius : 2 px ;
pointer - events : none ;
z - index : 100 ;
}
2023-01-09 05:03:48 +00:00
. flowchartTitleText {
text - anchor : middle ;
font - size : 18 px ;
fill : $ { t . textColor } ;
}
` ,rg=t=> `
2022-11-07 06:36:17 +00:00
. mermaid - main - font {
font - family : "trebuchet ms" , verdana , arial , sans - serif ;
font - family : var ( -- mermaid - font - family ) ;
}
. exclude - range {
fill : $ { t . excludeBkgColor } ;
}
. section {
stroke : none ;
opacity : 0.2 ;
}
. section0 {
fill : $ { t . sectionBkgColor } ;
}
. section2 {
fill : $ { t . sectionBkgColor2 } ;
}
. section1 ,
. section3 {
fill : $ { t . altSectionBkgColor } ;
opacity : 0.2 ;
}
. sectionTitle0 {
fill : $ { t . titleColor } ;
}
. sectionTitle1 {
fill : $ { t . titleColor } ;
}
. sectionTitle2 {
fill : $ { t . titleColor } ;
}
. sectionTitle3 {
fill : $ { t . titleColor } ;
}
. sectionTitle {
text - anchor : start ;
// font-size: ${t.ganttFontSize};
// text-height: 14px;
font - family : 'trebuchet ms' , verdana , arial , sans - serif ;
font - family : var ( -- mermaid - font - family ) ;
}
/* Grid and axis */
. grid . tick {
stroke : $ { t . gridColor } ;
opacity : 0.8 ;
shape - rendering : crispEdges ;
text {
font - family : $ { t . fontFamily } ;
fill : $ { t . textColor } ;
}
}
. grid path {
stroke - width : 0 ;
}
/* Today line */
. today {
fill : none ;
stroke : $ { t . todayLineColor } ;
stroke - width : 2 px ;
}
/* Task styling */
/* Default task */
. task {
stroke - width : 2 ;
}
. taskText {
text - anchor : middle ;
font - family : 'trebuchet ms' , verdana , arial , sans - serif ;
font - family : var ( -- mermaid - font - family ) ;
}
// .taskText:not([font-size]) {
// font-size: ${t.ganttFontSize};
// }
. taskTextOutsideRight {
fill : $ { t . taskTextDarkColor } ;
text - anchor : start ;
// font-size: ${t.ganttFontSize};
font - family : 'trebuchet ms' , verdana , arial , sans - serif ;
font - family : var ( -- mermaid - font - family ) ;
}
. taskTextOutsideLeft {
fill : $ { t . taskTextDarkColor } ;
text - anchor : end ;
// font-size: ${t.ganttFontSize};
}
/* Special case clickable */
. task . clickable {
cursor : pointer ;
}
. taskText . clickable {
cursor : pointer ;
fill : $ { t . taskTextClickableColor } ! important ;
font - weight : bold ;
}
. taskTextOutsideLeft . clickable {
cursor : pointer ;
fill : $ { t . taskTextClickableColor } ! important ;
font - weight : bold ;
}
. taskTextOutsideRight . clickable {
cursor : pointer ;
fill : $ { t . taskTextClickableColor } ! important ;
font - weight : bold ;
}
/* Specific task settings for the sections*/
. taskText0 ,
. taskText1 ,
. taskText2 ,
. taskText3 {
fill : $ { t . taskTextColor } ;
}
. task0 ,
. task1 ,
. task2 ,
. task3 {
fill : $ { t . taskBkgColor } ;
stroke : $ { t . taskBorderColor } ;
}
. taskTextOutside0 ,
. taskTextOutside2
{
fill : $ { t . taskTextOutsideColor } ;
}
. taskTextOutside1 ,
. taskTextOutside3 {
fill : $ { t . taskTextOutsideColor } ;
}
/* Active task */
. active0 ,
. active1 ,
. active2 ,
. active3 {
fill : $ { t . activeTaskBkgColor } ;
stroke : $ { t . activeTaskBorderColor } ;
}
. activeText0 ,
. activeText1 ,
. activeText2 ,
. activeText3 {
fill : $ { t . taskTextDarkColor } ! important ;
}
/* Completed task */
. done0 ,
. done1 ,
. done2 ,
. done3 {
stroke : $ { t . doneTaskBorderColor } ;
fill : $ { t . doneTaskBkgColor } ;
stroke - width : 2 ;
}
. doneText0 ,
. doneText1 ,
. doneText2 ,
. doneText3 {
fill : $ { t . taskTextDarkColor } ! important ;
}
/* Tasks on the critical line */
. crit0 ,
. crit1 ,
. crit2 ,
. crit3 {
stroke : $ { t . critBorderColor } ;
fill : $ { t . critBkgColor } ;
stroke - width : 2 ;
}
. activeCrit0 ,
. activeCrit1 ,
. activeCrit2 ,
. activeCrit3 {
stroke : $ { t . critBorderColor } ;
fill : $ { t . activeTaskBkgColor } ;
stroke - width : 2 ;
}
. doneCrit0 ,
. doneCrit1 ,
. doneCrit2 ,
. doneCrit3 {
stroke : $ { t . critBorderColor } ;
fill : $ { t . doneTaskBkgColor } ;
stroke - width : 2 ;
cursor : pointer ;
shape - rendering : crispEdges ;
}
. milestone {
transform : rotate ( 45 deg ) scale ( 0.8 , 0.8 ) ;
}
. milestoneText {
font - style : italic ;
}
. doneCritText0 ,
. doneCritText1 ,
. doneCritText2 ,
. doneCritText3 {
fill : $ { t . taskTextDarkColor } ! important ;
}
. activeCritText0 ,
. activeCritText1 ,
. activeCritText2 ,
. activeCritText3 {
fill : $ { t . taskTextDarkColor } ! important ;
}
. titleText {
text - anchor : middle ;
font - size : 18 px ;
fill : $ { t . textColor } ;
font - family : 'trebuchet ms' , verdana , arial , sans - serif ;
font - family : var ( -- mermaid - font - family ) ;
}
2023-01-09 05:03:48 +00:00
` ,ng=()=>"",ig=t=> `
2022-11-07 06:36:17 +00:00
. pieCircle {
stroke : $ { t . pieStrokeColor } ;
stroke - width : $ { t . pieStrokeWidth } ;
opacity : $ { t . pieOpacity } ;
}
. pieTitleText {
text - anchor : middle ;
font - size : $ { t . pieTitleTextSize } ;
fill : $ { t . pieTitleTextColor } ;
font - family : $ { t . fontFamily } ;
}
. slice {
font - family : $ { t . fontFamily } ;
fill : $ { t . pieSectionTextColor } ;
font - size : $ { t . pieSectionTextSize } ;
// fill: white;
}
. legend text {
fill : $ { t . pieLegendTextColor } ;
font - family : $ { t . fontFamily } ;
font - size : $ { t . pieLegendTextSize } ;
}
2023-01-09 05:03:48 +00:00
` ,sg=t=> `
2022-11-07 06:36:17 +00:00
marker {
fill : $ { t . relationColor } ;
stroke : $ { t . relationColor } ;
}
marker . cross {
stroke : $ { t . lineColor } ;
}
svg {
font - family : $ { t . fontFamily } ;
font - size : $ { t . fontSize } ;
}
. reqBox {
fill : $ { t . requirementBackground } ;
fill - opacity : 100 % ;
stroke : $ { t . requirementBorderColor } ;
stroke - width : $ { t . requirementBorderSize } ;
}
. reqTitle , . reqLabel {
fill : $ { t . requirementTextColor } ;
}
. reqLabelBox {
fill : $ { t . relationLabelBackground } ;
fill - opacity : 100 % ;
}
. req - title - line {
stroke : $ { t . requirementBorderColor } ;
stroke - width : $ { t . requirementBorderSize } ;
}
. relationshipLine {
stroke : $ { t . relationColor } ;
stroke - width : 1 ;
}
. relationshipLabel {
fill : $ { t . relationLabelColor } ;
}
2023-01-09 05:03:48 +00:00
` ,ag=t=> ` . actor {
2022-11-07 06:36:17 +00:00
stroke : $ { t . actorBorder } ;
fill : $ { t . actorBkg } ;
}
text . actor > tspan {
fill : $ { t . actorTextColor } ;
stroke : none ;
}
. actor - line {
stroke : $ { t . actorLineColor } ;
}
. messageLine0 {
stroke - width : 1.5 ;
stroke - dasharray : none ;
stroke : $ { t . signalColor } ;
}
. messageLine1 {
stroke - width : 1.5 ;
stroke - dasharray : 2 , 2 ;
stroke : $ { t . signalColor } ;
}
# arrowhead path {
fill : $ { t . signalColor } ;
stroke : $ { t . signalColor } ;
}
. sequenceNumber {
fill : $ { t . sequenceNumberColor } ;
}
# sequencenumber {
fill : $ { t . signalColor } ;
}
# crosshead path {
fill : $ { t . signalColor } ;
stroke : $ { t . signalColor } ;
}
. messageText {
fill : $ { t . signalTextColor } ;
stroke : none ;
}
. labelBox {
stroke : $ { t . labelBoxBorderColor } ;
fill : $ { t . labelBoxBkgColor } ;
}
. labelText , . labelText > tspan {
fill : $ { t . labelTextColor } ;
stroke : none ;
}
. loopText , . loopText > tspan {
fill : $ { t . loopTextColor } ;
stroke : none ;
}
. loopLine {
stroke - width : 2 px ;
stroke - dasharray : 2 , 2 ;
stroke : $ { t . labelBoxBorderColor } ;
fill : $ { t . labelBoxBorderColor } ;
}
. note {
//stroke: #decc93;
stroke : $ { t . noteBorderColor } ;
fill : $ { t . noteBkgColor } ;
}
. noteText , . noteText > tspan {
fill : $ { t . noteTextColor } ;
stroke : none ;
}
. activation0 {
fill : $ { t . activationBkgColor } ;
stroke : $ { t . activationBorderColor } ;
}
. activation1 {
fill : $ { t . activationBkgColor } ;
stroke : $ { t . activationBorderColor } ;
}
. activation2 {
fill : $ { t . activationBkgColor } ;
stroke : $ { t . activationBorderColor } ;
}
. actorPopupMenu {
position : absolute ;
}
. actorPopupMenuPanel {
position : absolute ;
fill : $ { t . actorBkg } ;
box - shadow : 0 px 8 px 16 px 0 px rgba ( 0 , 0 , 0 , 0.2 ) ;
filter : drop - shadow ( 3 px 5 px 2 px rgb ( 0 0 0 / 0.4 ) ) ;
}
. actor - man line {
stroke : $ { t . actorBorder } ;
fill : $ { t . actorBkg } ;
}
. actor - man circle , line {
stroke : $ { t . actorBorder } ;
fill : $ { t . actorBkg } ;
stroke - width : 2 px ;
}
2023-01-09 05:03:48 +00:00
` ,Lc=t=> `
2022-11-07 06:36:17 +00:00
defs # statediagram - barbEnd {
fill : $ { t . transitionColor } ;
stroke : $ { t . transitionColor } ;
}
g . stateGroup text {
fill : $ { t . nodeBorder } ;
stroke : none ;
font - size : 10 px ;
}
g . stateGroup text {
fill : $ { t . textColor } ;
stroke : none ;
font - size : 10 px ;
}
g . stateGroup . state - title {
font - weight : bolder ;
fill : $ { t . stateLabelColor } ;
}
g . stateGroup rect {
fill : $ { t . mainBkg } ;
stroke : $ { t . nodeBorder } ;
}
g . stateGroup line {
stroke : $ { t . lineColor } ;
stroke - width : 1 ;
}
. transition {
stroke : $ { t . transitionColor } ;
stroke - width : 1 ;
fill : none ;
}
. stateGroup . composit {
fill : $ { t . background } ;
border - bottom : 1 px
}
. stateGroup . alt - composit {
fill : # e0e0e0 ;
border - bottom : 1 px
}
. state - note {
stroke : $ { t . noteBorderColor } ;
fill : $ { t . noteBkgColor } ;
text {
fill : $ { t . noteTextColor } ;
stroke : none ;
font - size : 10 px ;
}
}
. stateLabel . box {
stroke : none ;
stroke - width : 0 ;
fill : $ { t . mainBkg } ;
opacity : 0.5 ;
}
. edgeLabel . label rect {
fill : $ { t . labelBackgroundColor } ;
opacity : 0.5 ;
}
. edgeLabel . label text {
fill : $ { t . transitionLabelColor || t . tertiaryTextColor } ;
}
. label div . edgeLabel {
color : $ { t . transitionLabelColor || t . tertiaryTextColor } ;
}
. stateLabel text {
fill : $ { t . stateLabelColor } ;
font - size : 10 px ;
font - weight : bold ;
}
. node circle . state - start {
fill : $ { t . specialStateColor } ;
stroke : $ { t . specialStateColor } ;
}
. node . fork - join {
fill : $ { t . specialStateColor } ;
stroke : $ { t . specialStateColor } ;
}
. node circle . state - end {
fill : $ { t . innerEndBackground } ;
stroke : $ { t . background } ;
stroke - width : 1.5
}
. end - state - inner {
fill : $ { t . compositeBackground || t . background } ;
// stroke: ${t.background};
stroke - width : 1.5
}
. node rect {
fill : $ { t . stateBkg || t . mainBkg } ;
stroke : $ { t . stateBorder || t . nodeBorder } ;
stroke - width : 1 px ;
}
. node polygon {
fill : $ { t . mainBkg } ;
stroke : $ { t . stateBorder || t . nodeBorder } ; ;
stroke - width : 1 px ;
}
# statediagram - barbEnd {
fill : $ { t . lineColor } ;
}
. statediagram - cluster rect {
fill : $ { t . compositeTitleBackground } ;
stroke : $ { t . stateBorder || t . nodeBorder } ;
stroke - width : 1 px ;
}
. cluster - label , . nodeLabel {
color : $ { t . stateLabelColor } ;
}
. statediagram - cluster rect . outer {
rx : 5 px ;
ry : 5 px ;
}
. statediagram - state . divider {
stroke : $ { t . stateBorder || t . nodeBorder } ;
}
. statediagram - state . title - state {
rx : 5 px ;
ry : 5 px ;
}
. statediagram - cluster . statediagram - cluster . inner {
fill : $ { t . compositeBackground || t . background } ;
}
. statediagram - cluster . statediagram - cluster - alt . inner {
fill : $ { t . altBackground ? t . altBackground : "#efefef" } ;
}
. statediagram - cluster . inner {
rx : 0 ;
ry : 0 ;
}
. statediagram - state rect . basic {
rx : 5 px ;
ry : 5 px ;
}
. statediagram - state rect . divider {
stroke - dasharray : 10 , 10 ;
fill : $ { t . altBackground ? t . altBackground : "#efefef" } ;
}
. note - edge {
stroke - dasharray : 5 ;
}
. statediagram - note rect {
fill : $ { t . noteBkgColor } ;
stroke : $ { t . noteBorderColor } ;
stroke - width : 1 px ;
rx : 0 ;
ry : 0 ;
}
. statediagram - note rect {
fill : $ { t . noteBkgColor } ;
stroke : $ { t . noteBorderColor } ;
stroke - width : 1 px ;
rx : 0 ;
ry : 0 ;
}
. statediagram - note text {
fill : $ { t . noteTextColor } ;
}
. statediagram - note . nodeLabel {
color : $ { t . noteTextColor } ;
}
. statediagram . edgeLabel {
color : red ; // ${t.noteTextColor};
}
# dependencyStart , # dependencyEnd {
fill : $ { t . lineColor } ;
stroke : $ { t . lineColor } ;
stroke - width : 1 ;
}
2023-01-09 05:03:48 +00:00
. statediagramTitleText {
text - anchor : middle ;
font - size : 18 px ;
fill : $ { t . textColor } ;
}
` ,og=t=> ` . label {
2022-11-07 06:36:17 +00:00
font - family : 'trebuchet ms' , verdana , arial , sans - serif ;
font - family : var ( -- mermaid - font - family ) ;
color : $ { t . textColor } ;
}
. mouth {
stroke : # 666 ;
}
line {
stroke : $ { t . textColor }
}
. legend {
fill : $ { t . textColor } ;
}
. label text {
fill : # 333 ;
}
. label {
color : $ { t . textColor }
}
. face {
$ { t . faceColor ? ` fill: ${ t . faceColor } ` : "fill: #FFF8DC" } ;
stroke : # 999 ;
}
. node rect ,
. node circle ,
. node ellipse ,
. node polygon ,
. node path {
fill : $ { t . mainBkg } ;
stroke : $ { t . nodeBorder } ;
stroke - width : 1 px ;
}
. node . label {
text - align : center ;
}
. node . clickable {
cursor : pointer ;
}
. arrowheadPath {
fill : $ { t . arrowheadColor } ;
}
. edgePath . path {
stroke : $ { t . lineColor } ;
stroke - width : 1.5 px ;
}
. flowchart - link {
stroke : $ { t . lineColor } ;
fill : none ;
}
. edgeLabel {
background - color : $ { t . edgeLabelBackground } ;
rect {
opacity : 0.5 ;
}
text - align : center ;
}
. cluster rect {
}
. cluster text {
fill : $ { t . titleColor } ;
}
div . mermaidTooltip {
position : absolute ;
text - align : center ;
max - width : 200 px ;
padding : 2 px ;
font - family : 'trebuchet ms' , verdana , arial , sans - serif ;
font - family : var ( -- mermaid - font - family ) ;
font - size : 12 px ;
background : $ { t . tertiaryColor } ;
border : 1 px solid $ { t . border2 } ;
border - radius : 2 px ;
pointer - events : none ;
z - index : 100 ;
}
. task - type - 0 , . section - type - 0 {
$ { t . fillType0 ? ` fill: ${ t . fillType0 } ` : "" } ;
}
. task - type - 1 , . section - type - 1 {
$ { t . fillType0 ? ` fill: ${ t . fillType1 } ` : "" } ;
}
. task - type - 2 , . section - type - 2 {
$ { t . fillType0 ? ` fill: ${ t . fillType2 } ` : "" } ;
}
. task - type - 3 , . section - type - 3 {
$ { t . fillType0 ? ` fill: ${ t . fillType3 } ` : "" } ;
}
. task - type - 4 , . section - type - 4 {
$ { t . fillType0 ? ` fill: ${ t . fillType4 } ` : "" } ;
}
. task - type - 5 , . section - type - 5 {
$ { t . fillType0 ? ` fill: ${ t . fillType5 } ` : "" } ;
}
. task - type - 6 , . section - type - 6 {
$ { t . fillType0 ? ` fill: ${ t . fillType6 } ` : "" } ;
}
. task - type - 7 , . section - type - 7 {
$ { t . fillType0 ? ` fill: ${ t . fillType7 } ` : "" } ;
}
. actor - 0 {
$ { t . actor0 ? ` fill: ${ t . actor0 } ` : "" } ;
}
. actor - 1 {
$ { t . actor1 ? ` fill: ${ t . actor1 } ` : "" } ;
}
. actor - 2 {
$ { t . actor2 ? ` fill: ${ t . actor2 } ` : "" } ;
}
. actor - 3 {
$ { t . actor3 ? ` fill: ${ t . actor3 } ` : "" } ;
}
. actor - 4 {
$ { t . actor4 ? ` fill: ${ t . actor4 } ` : "" } ;
}
. actor - 5 {
$ { t . actor5 ? ` fill: ${ t . actor5 } ` : "" } ;
}
2023-01-09 05:03:48 +00:00
` ,lg=t=> ` . person {
2022-11-07 06:36:17 +00:00
stroke : $ { t . personBorder } ;
fill : $ { t . personBkg } ;
}
2023-01-09 05:03:48 +00:00
` ,Dc={flowchart:Ac,"flowchart-v2":Ac,sequence:ag,gantt:rg,classDiagram:go,"classDiagram-v2":go,class:go,stateDiagram:Lc,state:Lc,info:ng,pie:ig,er:tg,error:eg,journey:og,requirement:sg,c4:lg},cE=(t,e,r)=>{let n="";return t in Dc&&Dc[t]?n=Dc[t](r):B.warn( ` No theme found for $ { t } ` ), ` & {
2022-11-07 06:36:17 +00:00
font - family : $ { r . fontFamily } ;
font - size : $ { r . fontSize } ;
fill : $ { r . textColor }
}
/* Classes common for multiple diagrams */
2023-01-09 05:03:48 +00:00
& . error - icon {
2022-11-07 06:36:17 +00:00
fill : $ { r . errorBkgColor } ;
}
2023-01-09 05:03:48 +00:00
& . error - text {
2022-11-07 06:36:17 +00:00
fill : $ { r . errorTextColor } ;
stroke : $ { r . errorTextColor } ;
}
2023-01-09 05:03:48 +00:00
& . edge - thickness - normal {
2022-11-07 06:36:17 +00:00
stroke - width : 2 px ;
}
2023-01-09 05:03:48 +00:00
& . edge - thickness - thick {
2022-11-07 06:36:17 +00:00
stroke - width : 3.5 px
}
2023-01-09 05:03:48 +00:00
& . edge - pattern - solid {
2022-11-07 06:36:17 +00:00
stroke - dasharray : 0 ;
}
2023-01-09 05:03:48 +00:00
& . edge - pattern - dashed {
2022-11-07 06:36:17 +00:00
stroke - dasharray : 3 ;
}
. edge - pattern - dotted {
stroke - dasharray : 2 ;
}
2023-01-09 05:03:48 +00:00
& . marker {
2022-11-07 06:36:17 +00:00
fill : $ { r . lineColor } ;
stroke : $ { r . lineColor } ;
}
2023-01-09 05:03:48 +00:00
& . marker . cross {
2022-11-07 06:36:17 +00:00
stroke : $ { r . lineColor } ;
}
2023-01-09 05:03:48 +00:00
& svg {
2022-11-07 06:36:17 +00:00
font - family : $ { r . fontFamily } ;
font - size : $ { r . fontSize } ;
}
$ { n }
$ { e }
2023-01-09 05:03:48 +00:00
` },uE=(t,e)=>{Dc[t]=e},hE=cE,dE=B,fE=Qu,yo= $ ,pE=t=>yn(t,yo()),cg=Sc,Mc={},yr=(t,e,r)=>{if(Mc[t])throw new Error( ` Diagram $ { t } already registered . ` );Mc[t]=e,r&&Lp(t,r),uE(t,e.styles),e.injectUtils&&e.injectUtils(dE,fE,yo,pE,cg)},ug=t=>{if(t in Mc)return Mc[t];throw new Error( ` Diagram $ { t } not found . ` )};var C1=function(){var t=function(W,N,D,w){for(D=D||{},w=W.length;w--;D[W[w]]=N);return D},e=[1,4],r=[1,7],n=[1,5],i=[1,9],s=[1,6],a=[2,6],o=[1,16],l=[6,8,14,20,22,24,25,27,29,32,37,40,50,55],u=[8,14,20,22,24,25,27,29,32,37,40],d=[8,13,14,20,22,24,25,27,29,32,37,40],f=[1,26],p=[6,8,14,50,55],g=[8,14,55],b=[1,53],k=[1,52],T=[8,14,30,33,35,38,55],L=[1,67],E=[1,68],I=[1,69],V=[8,14,33,35,42,55],H={trace:function(){},yy:{},symbols_:{error:2,start:3,eol:4,directive:5,GG:6,document:7,EOF:8,":":9,DIR:10,options:11,body:12,OPT:13,NL:14,line:15,statement:16,commitStatement:17,mergeStatement:18,cherryPickStatement:19,acc_title:20,acc_title_value:21,acc_descr:22,acc_descr_value:23,acc_descr_multiline_value:24,section:25,branchStatement:26,CHECKOUT:27,ref:28,BRANCH:29,ORDER:30,NUM:31,CHERRY_PICK:32,COMMIT_ID:33,STR: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,openDirective:46,typeDirective:47,closeDirective:48,argDirective:49,open_directive:50,type_directive:51,arg_directive:52,close_directive:53,ID:54,";":55, $ accept:0, $ end:1},terminals_:{2:"error",6:"GG",8:"EOF",9:":",10:"DIR",13:"OPT",14:"NL",20:"acc_title",21:"acc_title_value",22:"acc_descr",23:"acc_descr_value",24:"acc_descr_multiline_value",25:"section",27:"CHECKOUT",29:"BRANCH",30:"ORDER",31:"NUM",32:"CHERRY_PICK",33:"COMMIT_ID",34:"STR",35:"COMMIT_TAG",36:"EMPTYSTR",37:"MERGE",38:"COMMIT_TYPE",40:"COMMIT",42:"COMMIT_MSG",43:"NORMAL",44:"REVERSE",45:"HIGHLIGHT",50:"open_directive",51:"type_directive",52:"arg_directive",53:"close_directive",54:"ID",55:";"},productions_:[0,[3,2],[3,2],[3,3],[3,4],[3,5],[7,0],[7,2],[11,2],[11,1],[12,0],[12,2],[15,2],[15,1],[16,1],[16,1],[16,1],[16,2],[16,2],[16,1],[16,1],[16,1],[16,2],[26,2],[26,4],[19,3],[19,5],[19,5],[19,5],[19,5],[18,2],[18,4],[18,4],[18,4],[18,6],[18,6],[18,6],[18,6],[18,6],[18,6],[18,8],[18,8],[18,8],[18,8],[18,8],[18,8],[17,2],[17,3],[17,3],[17,5],[17,5],[17,3],[17,5],[17,5],[17,5],[17,5],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,3],[17,5],[17,5],[17,5],[17,5],[17,5],[17,5],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[41,0],[41,1],[39,1],[39,1],[39,1],[5,3],[5,5],[46,1],[47,1],[49,1],[48,1],[28,1],[28,1],[4,1],[4,1],[4,1]],performAction:function(N,D,w,v,M,m,Q){var x=m.length-1;switch(M){case 3:return m[x];case 4:return m[x-1];case 5:return v.setDirection(m[x-3]),m[x-1];case 7:v.setOptions(m[x-1]),this. $ =m[x];break;case 8:m[x-1]+=m[x],this. $ =m[x-1];break;case 10:this. $ =[];break;case 11:m[x-1].push(m[x]),this. $ =m[x-1];break;case 12:this. $ =m[x-1];break;case 17:this. $ =m[x].trim(),v.setAccTitle(this. $ );break;case 18:case 19:this. $ =m[x].trim(),v.setAccDescription(this. $ );break;case 20:v.addSection(m[x].substr(8)),this. $ =m[x].substr(8);break;case 22:v.checkout(m[x]);break;case 23:v.branch(m[x]);break;case 24:v.branch(m[x-2],m[x]);break;case 25:v.cherryPick(m[x],"",void 0);break;case 26:v.cherryPick(m[x-2],"",m[x]);break;case 27:case 29:v.cherryPick(m[x-2],"","");break;case 28:v.cherryPick(m[x],"",m[x-2]);break;case 30:v.merge(m[x],"","","");break;case 31:v.merge(m[x-2],m[x],"","");break;case 32:v.merge(m[x-2],"",m[x],"");break;case 33:v.merge(m[x-2],"","",m[x]);break;case 34:v.merge(m[x-4],m[x],"",m[x-2]);break;case 35:v.merge(m[x-4],"",m[x],m[x-2]);break;case 36:v.merge(m[x-4],"",m[x-2],m[x]);break;case 37:v.merge(m[x-4],m[x-2],m[x],"");break;case 38:v.merge(m[x-4],m[x-2],"",m[x]);break;case 39:v.merge(m[x-4],m[x],m[x-2],"");break;case 40:v.merge(m[x-6],m[x-4],m[x-2],m[x]);break;case 41:v.me
` +rt.showPosition()+ `
Expecting ` +ht.join(", ")+", got '"+(this.terminals_[P]||P)+"'":U="Parse error on line "+(ct+1)+": Unexpected "+(P==j?"end of input":"'"+(this.terminals_[P]||P)+"'"),this.parseError(U,{text:rt.match,token:this.terminals_[P]||P,line:rt.yylineno,loc:_t,expected:ht})}if(X[0]instanceof Array&&X.length>1)throw new Error("Parse Error: multiple actions possible at state: "+z+", token: "+P);switch(X[0]){case 1:w.push(P),M.push(rt.yytext),m.push(rt.yylloc),w.push(X[1]),P=null,Dt=rt.yyleng,x=rt.yytext,ct=rt.yylineno,_t=rt.yylloc;break;case 2:if(J=this.productions_[X[1]][1],O. $ =M[M.length-J],O._ $ ={first_line:m[m.length-(J||1)].first_line,last_line:m[m.length-1].last_line,first_column:m[m.length-(J||1)].first_column,last_column:m[m.length-1].last_column},K&&(O._ $ .range=[m[m.length-(J||1)].range[0],m[m.length-1].range[1]]),F=this.performAction.apply(O,[x,Dt,ct,nt.yy,X[1],M,m].concat(ot)),typeof F<"u")return F;J&&(w=w.slice(0,-1*J*2),M=M.slice(0,-1*J),m=m.slice(0,-1*J)),w.push(this.productions_[X[1]][0]),M.push(O. $ ),m.push(O._ $ ),C=Q[w[w.length-2]][w[w.length-1]],w.push(C);break;case 3:return!0}}return!0}},G=function(){var W={EOF:1,parseError:function(D,w){if(this.yy.parser)this.yy.parser.parseError(D,w);else throw new Error(D)},setInput:function(N,D){return this.yy=D||this.yy||{},this._input=N,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 N=this._input[0];this.yytext+=N,this.yyleng++,this.offset++,this.match+=N,this.matched+=N;var D=N.match(/(?: \r \n ?| \n ).*/g);return D?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),N},unput:function(N){var D=N.length,w=N.split(/(?: \r \n ?| \n )/g);this._input=N+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-D),this.offset-=D;var v=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),w.length-1&&(this.yylineno-=w.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:w?(w.length===v.length?this.yylloc.first_column:0)+v[v.length-w.length].length-w[0].length:this.yylloc.first_column-D},this.options.ranges&&(this.yylloc.range=[M[0],M[0]+this.yyleng-D]),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(N){this.unput(this.match.slice(N))},pastInput:function(){var N=this.matched.substr(0,this.matched.length-this.match.length);return(N.length>20?"...":"")+N.substr(-20).replace(/ \n /g,"")},upcomingInput:function(){var N=this.match;return N.length<20&&(N+=this._input.substr(0,20-N.length)),(N.substr(0,20)+(N.length>20?"...":"")).replace(/ \n /g,"")},showPosition:function(){var N=this.pastInput(),D=new Array(N.length+1).join("-");return N+this.upcomingInput()+ `
` +D+"^"},test_match:function(N,D){var w,v,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))),v=N[0].match(/(?: \r \n ?| \n ).*/g),v&&(this.yylineno+=v.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:v?v[v.length-1].length-v[v.length-1].match(/ \r ? \n ?/)[0].length:this.yylloc.last_column+N[0].length},this.yytext+=N[0],this.match+=N[0],this.matches=N,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(N[0].length),this.matched+=N[0],w=this.performAction.call(this,this.yy,this,D,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),w)return w;if(this._backtrack){for(var m in M)this[m]=M[m];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var N,D,w,v;this._more||(this.yytext="",this.match="");for(var M=this._currentRules(),m=0;m<M.length;m++)if(w=this._input.match(this.rules[M[m]]),w&&(!D||w[0].length>D[0].length)){if(D=w,v=m,this.options.backtrack_lexer){if(N=this.test_match(w,M[m]),N!==!1)return N;if(this._backtrack){D=!1;continue}else return!1}else if(!this.options.flex)break}return D?(N=this.test_match(D,M[v]),N!==!1?N:!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 D=this.next();return D||this.lex()},begin:function(D){this.conditionStack.push(D)},popState:function(){var D=this.conditionStack.length-1;return D>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(D){return D=this.conditionStack.length-1-Math.abs(D||0),D>=0?this.conditionStack[D]:"INITIAL"},pushState:function(D){this.begin(D)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(D,w,v,M){switch(v){case 0:return this.begin("open_directive"),50;case 1:return this.begin("type_directive"),51;case 2:return this.popState(),this.begin("arg_directive"),9;case 3:return this.popState(),this.popState(),53;case 4:return 52;case 5:return this.begin("acc_title"),20;case 6:return this.popState(),"acc_title_value";case 7:return this.begin("acc_descr"),22;case 8:return this.popState(),"acc_descr_value";case 9:this.begin("acc_descr_multiline");break;case 10:this.popState();break;case 11:return"acc_descr_multiline_value";case 12:return 14;case 13:break;case 14:break;case 15:return 6;case 16:return 40;case 17:return 33;case 18:return 38;case 19:return 42;case 20:return 43;case 21:return 44;case 22:return 45;case 23:return 35;case 24:return 29;case 25:return 30;case 26:return 37;case 27:return 32;case 28:return 27;case 29:return 10;case 30:return 10;case 31:return 9;case 32:return"CARET";case 33:this.begin("options");break;case 34:this.popState();break;case 35:return 13;case 36:return 36;case 37:this.begin("string");break;case 38:this.popState();break;case 39:return 34;case 40:return 31;case 41:return 54;case 42:return 8}},rules:[/^(?:%% \{ )/i,/^(?:((?:(?! \} %%)[^:.])*))/i,/^(?::)/i,/^(?: \} %%)/i,/^(?:((?:(?! \} %%).| \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,/^(?:#[^ \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,/^(?:checkout(?= \s | $ ))/i,/^(?:LR \b )/i,/^(?:BT \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:[10,11],inclusive:!1},acc_descr:{rules:[8],inclusive:!1},acc_title:{rules:[6],inclusive:!1},close_directive:{rules:[],inclusive:!1},arg_directive:{rules:[3,4],inclusive:!1},type_directive:{rules:[2,3],inclusive:!1},open_directive:{rules:[1],inclusive:!1},options:{rules:[34,35],inclusive:!1},string:{rules:[38,39],inclusive:!1},INITIAL:{rules:[0,5,7,9,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,36,37,40,41,42,43],inclusive:!0}}};return W}();H.lexer=G;function Y(){this.yy={}}return Y.prototype=H,H.Parser=Y,new Y}();C1.parser=C1;const gE=C1,yE=t=>t.match(/^ \s *gitGraph/)!==null;let S1="",Nc="",A1="";const L1=t=>yn(t, $ ()),vn=function(){S1="",A1="",Nc=""},nn=function(t){S1=L1(t).replace(/^ \s +/g,"")},kn=function(){return S1||Nc},wn=function(t){A1=L1(t).replace(/ \n \s +/g, `
` )},Tn=function(){return A1},hi=function(t){Nc=L1(t)},di=function(){return Nc};let Bc= $ ().gitGraph.mainBranchName,mE= $ ().gitGraph.mainBranchOrder,cr={},Br=null,mo={};mo[Bc]={name:Bc,order:mE};let rr={};rr[Bc]=Br;let mr=Bc,hg="LR",xs=0;function D1(){return Fp({length:7})}const bE=function(t,e,r){ze.parseDirective(this,t,e,r)};function _E(t,e){const r=Object.create(null);return t.reduce((n,i)=>{const s=e(i);return r[s]||(r[s]=!0,n.push(i)),n},[])}const xE=function(t){hg=t};let dg={};const vE=function(t){B.debug("options str",t),t=t&&t.trim(),t=t||"{}";try{dg=JSON.parse(t)}catch(e){B.error("error while parsing gitGraph options",e.message)}},kE=function(){return dg},wE=function(t,e,r,n){B.debug("Entering commit:",t,e,r,n),e=he.sanitizeText(e, $ ()),t=he.sanitizeText(t, $ ()),n=he.sanitizeText(n, $ ());const i={id:e||xs+"-"+D1(),message:t,seq:xs++,type:r||bo.NORMAL,tag:n||"",parents:Br==null?[]:[Br.id],branch:mr};Br=i,cr[i.id]=i,rr[mr]=i.id,B.debug("in pushCommit "+i.id)},TE=function(t,e){if(t=he.sanitizeText(t, $ ()),rr[t]===void 0)rr[t]=Br!=null?Br.id:null,mo[t]={name:t,order:e?parseInt(e,10):null},fg(t),B.debug("in createBranch");else{let r=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 '+t+'")');throw r.hash={text:"branch "+t,token:"branch "+t,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:['"checkout '+t+'"']},r}},EE=function(t,e,r,n){t=he.sanitizeText(t, $ ()),e=he.sanitizeText(e, $ ());const i=cr[rr[mr]],s=cr[rr[t]];if(mr===t){let o=new Error('Incorrect usage of "merge". Cannot merge a branch to itself');throw o.hash={text:"merge "+t,token:"merge "+t,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:["branch abc"]},o}else if(i===void 0||!i){let o=new Error('Incorrect usage of "merge". Current branch ('+mr+")has no commits");throw o.hash={text:"merge "+t,token:"merge "+t,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:["commit"]},o}else if(rr[t]===void 0){let o=new Error('Incorrect usage of "merge". Branch to be merged ('+t+") does not exist");throw o.hash={text:"merge "+t,token:"merge "+t,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:["branch "+t]},o}else if(s===void 0||!s){let o=new Error('Incorrect usage of "merge". Branch to be merged ('+t+") has no commits");throw o.hash={text:"merge "+t,token:"merge "+t,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:['"commit"']},o}else if(i===s){let o=new Error('Incorrect usage of "merge". Both branches have same head');throw o.hash={text:"merge "+t,token:"merge "+t,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:["branch abc"]},o}else if(e&&cr[e]!==void 0){let o=new Error('Incorrect usage of "merge". Commit with id:'+e+" already exists, use different custom Id");throw o.hash={text:"merge "+t+e+r+n,token:"merge "+t+e+r+n,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:["merge "+t+" "+e+"_UNIQUE "+r+" "+n]},o}const a={id:e||xs+"-"+D1(),message:"merged branch "+t+" into "+mr,seq:xs++,parents:[Br==null?null:Br.id,rr[t]],branch:mr,type:bo.MERGE,customType:r,customId:!!e,tag:n||""};Br=a,cr[a.id]=a,rr[mr]=a.id,B.debug(rr),B.debug("in mergeBranch")},CE=function(t,e,r){if(B.debug("Entering cherryPick:",t,e,r),t=he.sanitizeText(t, $ ()),e=he.sanitizeText(e, $ ()),r=he.sanitizeText(r, $ ()),!t||cr[t]===void 0){let s=new Error('Incorrect usage of "cherryPick". Source commit id should exist and provided');throw s.hash={text:"cherryPick "+t+" "+e,token:"cherryPick "+t+" "+e,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:["cherry-pick abc"]},s}let n=cr[t],i=n.branch;if(n.type===bo.MERGE){let s=new Error('Incorrect usage of "cherryPick". Source commit should not be a merge commit');throw s.hash={text:"cherryPick "+t+" "+e,token:"cherryPick "+t+" "+e,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:["cherry-pick abc"]},s}if(!e||cr[e]===void 0){if(i===mr){let o=n
$ { a - E . width / 2 - 4 / 2 } , $ { V + 2 }
$ { a - E . width / 2 - 4 / 2 } , $ { V - 2 }
$ { a + 10 - E . width / 2 - 4 } , $ { V - I - 2 }
$ { a + 10 + E . width / 2 + 4 } , $ { V - I - 2 }
$ { a + 10 + E . width / 2 + 4 } , $ { V + I + 2 }
$ { a + 10 - E . width / 2 - 4 } , $ { V + I + 2 } ` ),T.attr("cx",a-E.width/2+4/2).attr("cy",V).attr("r",1.5).attr("class","tag-hole")}}a+=50,a>Rc&&(Rc=a)})},PE=(t,e,r)=>Object.keys(r).filter(s=>r[s].branch===e.branch&&r[s].seq>t.seq&&r[s].seq<e.seq).length>0,M1=(t,e,r=0)=>{const n=t+Math.abs(t-e)/2;if(r>5)return n;if(Oc.every(a=>Math.abs(a-n)>=10))return Oc.push(n),n;const s=Math.abs(t-e);return M1(t,e-s/5,r+1)},YE=(t,e,r,n)=>{const i=Ic[e.id],s=Ic[r.id],a=PE(e,r,n);let o="",l="",u=0,d=0,f=Yr[r.branch].index,p;if(a){o="A 10 10, 0, 0, 0,",l="A 10 10, 0, 0, 1,",u=10,d=10,f=Yr[r.branch].index;const g=i.y<s.y?M1(i.y,s.y):M1(s.y,i.y);i.y<s.y?p= ` M $ { i . x } $ { i . y } L $ { i . x } $ { g - u } $ { o } $ { i . x + d } $ { g } L $ { s . x - u } $ { g } $ { l } $ { s . x } $ { g + d } L $ { s . x } $ { s . y } ` :p= ` M $ { i . x } $ { i . y } L $ { i . x } $ { g + u } $ { l } $ { i . x + d } $ { g } L $ { s . x - u } $ { g } $ { o } $ { s . x } $ { g - d } L $ { s . x } $ { s . y } ` }else i.y<s.y&&(o="A 20 20, 0, 0, 0,",u=20,d=20,f=Yr[r.branch].index,p= ` M $ { i . x } $ { i . y } L $ { i . x } $ { s . y - u } $ { o } $ { i . x + d } $ { s . y } L $ { s . x } $ { s . y } ` ),i.y>s.y&&(o="A 20 20, 0, 0, 0,",u=20,d=20,f=Yr[e.branch].index,p= ` M $ { i . x } $ { i . y } L $ { s . x - u } $ { i . y } $ { o } $ { s . x } $ { i . y - d } L $ { s . x } $ { s . y } ` ),i.y===s.y&&(f=Yr[e.branch].index,p= ` M $ { i . x } $ { i . y } L $ { i . x } $ { s . y - u } $ { o } $ { i . x + d } $ { s . y } L $ { s . x } $ { s . y } ` );t.append("path").attr("d",p).attr("class","arrow arrow"+f%vs)},VE=(t,e)=>{const r=t.append("g").attr("class","commit-arrows");Object.keys(e).forEach(n=>{const i=e[n];i.parents&&i.parents.length>0&&i.parents.forEach(s=>{YE(r,e[s],i,e)})})},UE=(t,e)=>{const r=yo().gitGraph,n=t.append("g");e.forEach((i,s)=>{const a=s%vs,o=Yr[i.name].pos,l=n.append("line");l.attr("x1",0),l.attr("y1",o),l.attr("x2",Rc),l.attr("y2",o),l.attr("class","branch branch"+a),Oc.push(o);let u=i.name;const d=FE(u),f=n.insert("rect"),g=n.insert("g").attr("class","branchLabel").insert("g").attr("class","label branch-label"+a);g.node().appendChild(d);let b=d.getBBox();f.attr("class","branchLabelBkg label"+a).attr("rx",4).attr("ry",4).attr("x",-b.width-4-(r.rotateCommitLabel===!0?30:0)).attr("y",-b.height/2+8).attr("width",b.width+18).attr("height",b.height+4),g.attr("transform","translate("+(-b.width-14-(r.rotateCommitLabel===!0?30:0))+", "+(o-b.height/2-1)+")"),f.attr("transform","translate("+-19+", "+(o-b.height/2)+")")})},zE={draw:function(t,e,r,n){var u;RE();const i=yo(),s=i.gitGraph;B.debug("in gitgraph renderer",t+ `
` ,"id:",e,r),_o=n.db.getCommits();const a=n.db.getBranchesAsObjArray();let o=0;a.forEach((d,f)=>{Yr[d.name]={pos:o,index:f},o+=50+(s.rotateCommitLabel?40:0)});const l=St( ` [ id = "${e}" ] ` );mg(l,_o,!1),s.showBranches&&UE(l,a),VE(l,_o),mg(l,_o,!0),ge.insertTitle(l,"gitTitleText",s.titleTopMargin,n.db.getDiagramTitle()),cg(void 0,l,s.diagramPadding,(u=s.useMaxWidth)!=null?u:i.useMaxWidth)}},WE=t=> `
2022-11-07 06:36:17 +00:00
. commit - id ,
. commit - msg ,
. branch - label {
fill : lightgrey ;
color : lightgrey ;
font - family : 'trebuchet ms' , verdana , arial , sans - serif ;
font - family : var ( -- mermaid - font - family ) ;
}
$ { [ 0 , 1 , 2 , 3 , 4 , 5 , 6 , 7 ] . map ( e => `
. branch - label$ { e } { fill : $ { t [ "gitBranchLabel" + e ] } ; }
. commit$ { e } { stroke : $ { t [ "git" + e ] } ; fill : $ { t [ "git" + e ] } ; }
. commit - highlight$ { e } { stroke : $ { t [ "gitInv" + e ] } ; fill : $ { t [ "gitInv" + e ] } ; }
. label$ { e } { fill : $ { t [ "git" + e ] } ; }
. arrow$ { e } { stroke : $ { t [ "git" + e ] } ; }
` ).join( `
` )}
. branch {
stroke - width : 1 ;
stroke : $ { t . lineColor } ;
stroke - dasharray : 2 ;
}
. commit - label { font - size : $ { t . commitLabelFontSize } ; fill : $ { t . commitLabelColor } ; }
. commit - label - bkg { font - size : $ { t . commitLabelFontSize } ; fill : $ { t . commitLabelBackground } ; opacity : 0.5 ; }
. tag - label { font - size : $ { t . tagLabelFontSize } ; fill : $ { t . tagLabelColor } ; }
. tag - label - bkg { fill : $ { t . tagLabelBackground } ; stroke : $ { t . tagLabelBorder } ; }
. tag - hole { fill : $ { t . textColor } ; }
. commit - merge {
stroke : $ { t . primaryColor } ;
fill : $ { t . primaryColor } ;
}
. commit - reverse {
stroke : $ { t . primaryColor } ;
fill : $ { t . primaryColor } ;
stroke - width : 3 ;
}
. commit - highlight - outer {
}
. commit - highlight - inner {
stroke : $ { t . primaryColor } ;
fill : $ { t . primaryColor } ;
}
. arrow { stroke - width : 8 ; stroke - linecap : round ; fill : none }
2023-01-09 05:03:48 +00:00
. gitTitleText {
text - anchor : middle ;
font - size : 18 px ;
fill : $ { t . textColor } ;
}
2022-11-07 06:36:17 +00:00
}
2023-01-09 05:03:48 +00:00
` ;var Fc=function(){var t=function(Ft,xt,ft,Lt){for(ft=ft||{},Lt=Ft.length;Lt--;ft[Ft[Lt]]=xt);return ft},e=[1,6],r=[1,7],n=[1,8],i=[1,9],s=[1,16],a=[1,11],o=[1,12],l=[1,13],u=[1,14],d=[1,15],f=[1,27],p=[1,33],g=[1,34],b=[1,35],k=[1,36],T=[1,37],L=[1,72],E=[1,73],I=[1,74],V=[1,75],H=[1,76],G=[1,77],Y=[1,78],W=[1,38],N=[1,39],D=[1,40],w=[1,41],v=[1,42],M=[1,43],m=[1,44],Q=[1,45],x=[1,46],ct=[1,47],Dt=[1,48],kt=[1,49],j=[1,50],ot=[1,51],rt=[1,52],nt=[1,53],ut=[1,54],_t=[1,55],K=[1,56],Ot=[1,57],P=[1,59],z=[1,60],X=[1,61],F=[1,62],O=[1,63],A=[1,64],J=[1,65],C=[1,66],ht=[1,67],U=[1,68],Yt=[1,69],et=[24,52],Mt=[24,44,46,47,48,49,50,51,52,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84],Tt=[15,24,44,46,47,48,49,50,51,52,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84],gt=[1,94],Et=[1,95],wt=[1,96],pt=[1,97],st=[15,24,52],le=[7,8,9,10,18,22,25,26,27,28],Xt=[15,24,43,52],jt=[15,24,43,52,86,87,89,90],Kt=[15,43],Gt=[44,46,47,48,49,50,51,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84],Ee={trace:function(){},yy:{},symbols_:{error:2,start:3,mermaidDoc:4,direction:5,directive:6,direction_tb:7,direction_bt:8,direction_rl:9,direction_lr:10,graphConfig:11,openDirective:12,typeDirective:13,closeDirective:14,NEWLINE:15,":":16,argDirective:17,open_directive:18,type_directive:19,arg_directive:20,close_directive:21,C4_CONTEXT:22,statements:23,EOF:24,C4_CONTAINER:25,C4_COMPONENT:26,C4_DYNAMIC:27,C4_DEPLOYMENT:28,otherStatements:29,diagramStatements:30,otherStatement:31,title:32,accDescription:33,acc_title:34,acc_title_value:35,acc_descr:36,acc_descr_value:37,acc_descr_multiline_value:38,boundaryStatement:39,boundaryStartStatement:40,boundaryStopStatement:41,boundaryStart:42,LBRACE:43,ENTERPRISE_BOUNDARY:44,attributes:45,SYSTEM_BOUNDARY:46,BOUNDARY:47,CONTAINER_BOUNDARY:48,NODE:49,NODE_L:50,NODE_R:51,RBRACE:52,diagramStatement:53,PERSON:54,PERSON_EXT:55,SYSTEM:56,SYSTEM_DB:57,SYSTEM_QUEUE:58,SYSTEM_EXT:59,SYSTEM_EXT_DB:60,SYSTEM_EXT_QUEUE:61,CONTAINER:62,CONTAINER_DB:63,CONTAINER_QUEUE:64,CONTAINER_EXT:65,CONTAINER_EXT_DB:66,CONTAINER_EXT_QUEUE:67,COMPONENT:68,COMPONENT_DB:69,COMPONENT_QUEUE:70,COMPONENT_EXT:71,COMPONENT_EXT_DB:72,COMPONENT_EXT_QUEUE:73,REL:74,BIREL:75,REL_U:76,REL_D:77,REL_L:78,REL_R:79,REL_B:80,REL_INDEX:81,UPDATE_EL_STYLE:82,UPDATE_REL_STYLE:83,UPDATE_LAYOUT_CONFIG:84,attribute:85,STR:86,STR_KEY:87,STR_VALUE:88,ATTRIBUTE:89,ATTRIBUTE_EMPTY:90, $ accept:0, $ end:1},terminals_:{2:"error",7:"direction_tb",8:"direction_bt",9:"direction_rl",10:"direction_lr",15:"NEWLINE",16:":",18:"open_directive",19:"type_directive",20:"arg_directive",21:"close_directive",22:"C4_CONTEXT",24:"EOF",25:"C4_CONTAINER",26:"C4_COMPONENT",27:"C4_DYNAMIC",28:"C4_DEPLOYMENT",32:"title",33:"accDescription",34:"acc_title",35:"acc_title_value",36:"acc_descr",37:"acc_descr_value",38:"acc_descr_multiline_value",43:"LBRACE",44:"ENTERPRISE_BOUNDARY",46:"SYSTEM_BOUNDARY",47:"BOUNDARY",48:"CONTAINER_BOUNDARY",49:"NODE",50:"NODE_L",51:"NODE_R",52:"RBRACE",54:"PERSON",55:"PERSON_EXT",56:"SYSTEM",57:"SYSTEM_DB",58:"SYSTEM_QUEUE",59:"SYSTEM_EXT",60:"SYSTEM_EXT_DB",61:"SYSTEM_EXT_QUEUE",62:"CONTAINER",63:"CONTAINER_DB",64:"CONTAINER_QUEUE",65:"CONTAINER_EXT",66:"CONTAINER_EXT_DB",67:"CONTAINER_EXT_QUEUE",68:"COMPONENT",69:"COMPONENT_DB",70:"COMPONENT_QUEUE",71:"COMPONENT_EXT",72:"COMPONENT_EXT_DB",73:"COMPONENT_EXT_QUEUE",74:"REL",75:"BIREL",76:"REL_U",77:"REL_D",78:"REL_L",79:"REL_R",80:"REL_B",81:"REL_INDEX",82:"UPDATE_EL_STYLE",83:"UPDATE_REL_STYLE",84:"UPDATE_LAYOUT_CONFIG",86:"STR",87:"STR_KEY",88:"STR_VALUE",89:"ATTRIBUTE",90:"ATTRIBUTE_EMPTY"},productions_:[0,[3,1],[3,1],[3,2],[5,1],[5,1],[5,1],[5,1],[4,1],[6,4],[6,6],[12,1],[13,1],[17,1],[14,1],[11,4],[11,4],[11,4],[11,4],[11,4],[23,1],[23,1],[23,2],[29,1],[29,2],[29,3],[31,1],[31,1],[31,2],[31,2],[31,1],[39,3],[40,3],[40,3],[40,4],[42,2],[42,2],[42,2],[42,2],[42,2],[42,2],[42,2],[41,1],[30,1],[30,2],[30,3],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53
` + $ t.showPosition()+ `
Expecting ` +ar.join(", ")+", got '"+(this.terminals_[De]||De)+"'":zt="Parse error on line "+(ee+1)+": Unexpected "+(De==_e?"end of input":"'"+(this.terminals_[De]||De)+"'"),this.parseError(zt,{text: $ t.match,token:this.terminals_[De]||De,line: $ t.yylineno,loc:Jt,expected:ar})}if(Be[0]instanceof Array&&Be.length>1)throw new Error("Parse Error: multiple actions possible at state: "+ae+", token: "+De);switch(Be[0]){case 1:Lt.push(De),Ut.push( $ t.yytext),at.push( $ t.yylloc),Lt.push(Be[1]),De=null,fe= $ t.yyleng,dt= $ t.yytext,ee= $ t.yylineno,Jt= $ t.yylloc;break;case 2:if(Ie=this.productions_[Be[1]][1],Pe. $ =Ut[Ut.length-Ie],Pe._ $ ={first_line:at[at.length-(Ie||1)].first_line,last_line:at[at.length-1].last_line,first_column:at[at.length-(Ie||1)].first_column,last_column:at[at.length-1].last_column},Nn&&(Pe._ $ .range=[at[at.length-(Ie||1)].range[0],at[at.length-1].range[1]]),Re=this.performAction.apply(Pe,[dt,fe,ee,se.yy,Be[1],Ut,at].concat(ke)),typeof Re<"u")return Re;Ie&&(Lt=Lt.slice(0,-1*Ie*2),Ut=Ut.slice(0,-1*Ie),at=at.slice(0,-1*Ie)),Lt.push(this.productions_[Be[1]][0]),Ut.push(Pe. $ ),at.push(Pe._ $ ), $ e=ie[Lt[Lt.length-2]][Lt[Lt.length-1]],Lt.push( $ e);break;case 3:return!0}}return!0}},Ht=function(){var Ft={EOF:1,parseError:function(ft,Lt){if(this.yy.parser)this.yy.parser.parseError(ft,Lt);else throw new Error(ft)},setInput:function(xt,ft){return this.yy=ft||this.yy||{},this._input=xt,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 xt=this._input[0];this.yytext+=xt,this.yyleng++,this.offset++,this.match+=xt,this.matched+=xt;var ft=xt.match(/(?: \r \n ?| \n ).*/g);return ft?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),xt},unput:function(xt){var ft=xt.length,Lt=xt.split(/(?: \r \n ?| \n )/g);this._input=xt+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-ft),this.offset-=ft;var bt=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),Lt.length-1&&(this.yylineno-=Lt.length-1);var Ut=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:Lt?(Lt.length===bt.length?this.yylloc.first_column:0)+bt[bt.length-Lt.length].length-Lt[0].length:this.yylloc.first_column-ft},this.options.ranges&&(this.yylloc.range=[Ut[0],Ut[0]+this.yyleng-ft]),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(xt){this.unput(this.match.slice(xt))},pastInput:function(){var xt=this.matched.substr(0,this.matched.length-this.match.length);return(xt.length>20?"...":"")+xt.substr(-20).replace(/ \n /g,"")},upcomingInput:function(){var xt=this.match;return xt.length<20&&(xt+=this._input.substr(0,20-xt.length)),(xt.substr(0,20)+(xt.length>20?"...":"")).replace(/ \n /g,"")},showPosition:function(){var xt=this.pastInput(),ft=new Array(xt.length+1).join("-");return xt+this.upcomingInput()+ `
` +ft+"^"},test_match:function(xt,ft){var Lt,bt,Ut;if(this.options.backtrack_lexer&&(Ut={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&&(Ut.yylloc.range=this.yylloc.range.slice(0))),bt=xt[0].match(/(?: \r \n ?| \n ).*/g),bt&&(this.yylineno+=bt.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:bt?bt[bt.length-1].length-bt[bt.length-1].match(/ \r ? \n ?/)[0].length:this.yylloc.last_column+xt[0].length},this.yytext+=xt[0],this.match+=xt[0],this.matches=xt,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(xt[0].length),this.matched+=xt[0],Lt=this.performAction.call(this,this.yy,this,ft,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),Lt)return Lt;if(this._backtrack){for(var at in Ut)this[at]=Ut[at];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var xt,ft,Lt,bt;this._more||(this.yytext="",this.match="");for(var Ut=this._currentRules(),at=0;at<Ut.length;at++)if(Lt=this._input.match(this.rules[Ut[at]]),Lt&&(!ft||Lt[0].length>ft[0].length)){if(ft=Lt,bt=at,this.options.backtrack_lexer){if(xt=this.test_match(Lt,Ut[at]),xt!==!1)return xt;if(this._backtrack){ft=!1;continue}else return!1}else if(!this.options.flex)break}return ft?(xt=this.test_match(ft,Ut[bt]),xt!==!1?xt:!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 ft=this.next();return ft||this.lex()},begin:function(ft){this.conditionStack.push(ft)},popState:function(){var ft=this.conditionStack.length-1;return ft>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(ft){return ft=this.conditionStack.length-1-Math.abs(ft||0),ft>=0?this.conditionStack[ft]:"INITIAL"},pushState:function(ft){this.begin(ft)},stateStackSize:function(){return this.conditionStack.length},options:{},performAction:function(ft,Lt,bt,Ut){switch(bt){case 0:return this.begin("open_directive"),18;case 1:return 7;case 2:return 8;case 3:return 9;case 4:return 10;case 5:return this.begin("type_directive"),19;case 6:return this.popState(),this.begin("arg_directive"),16;case 7:return this.popState(),this.popState(),21;case 8:return 20;case 9:return 32;case 10:return 33;case 11:return this.begin("acc_title"),34;case 12:return this.popState(),"acc_title_value";case 13:return this.begin("acc_descr"),36;case 14:return this.popState(),"acc_descr_value";case 15:this.begin("acc_descr_multiline");break;case 16:this.popState();break;case 17:return"acc_descr_multiline_value";case 18:break;case 19:c;break;case 20:return 15;case 21:break;case 22:return 22;case 23:return 25;case 24:return 26;case 25:return 27;case 26:return 28;case 27:return this.begin("person_ext"),55;case 28:return this.begin("person"),54;case 29:return this.begin("system_ext_queue"),61;case 30:return this.begin("system_ext_db"),60;case 31:return this.begin("system_ext"),59;case 32:return this.begin("system_queue"),58;case 33:return this.begin("system_db"),57;case 34:return this.begin("system"),56;case 35:return this.begin("boundary"),47;case 36:return this.begin("enterprise_boundary"),44;case 37:return this.begin("system_boundary"),46;case 38:return this.begin("container_ext_queue"),67;case 39:return this.begin("container_ext_db"),66;case 40:return this.begin("container_ext"),65;case 41:return this.begin("container_queue"),64;case 42:return this.begin("container_db"),63;case 43:return this.begin("container"),62;case 44:return this.begin("container_boundary"),48;case 45:return this.begin("component_ext_queue"),73;case 46:return this.begin("component_ext_db"),72;case 47:return this.begin("component_ext"),71;case 48:return this.begin("component_queue"),70;case 49:return this.begin("component_db"),69;case 50:return this.begin("component"),68;case 51:return this.begin("node"),49;case 52:return this.begin("node"),49;case 53:return this.begin("node_l"),50;case 54:return this.begin("node_r"),51;case 55:return this.begin("rel"),74;case 56:return this.begin("birel"),75;case 57:return this.begin("rel_u"),76;case 58:return this.begin("rel_u"),76;case 59:return this.begin("rel_d"),77;case 60:return this.begin("rel_d"),77;case 61:return this.begin("rel_l"),78;case 62:return this.begin("rel_l"),78;case 63:return this.begin("rel_r"),79;case 64:return this.begin("rel_r"),79;case 65:return this.begin("rel_b"),80;case 66:return this.begin("rel_index"),81;case 67:return this.begin("update_el_style"),82;case 68:return this.begin("update_rel_style"),83;case 69:return this.begin("update_layout_config"),84;case 70:return"EOF_IN_STRUCT";case 71:return this.begin("attribute"),"ATTRIBUTE_EMPTY";case 72:this.begin("attribute");break;case 73:this.popState(),this.popState();break;case 74:return 90;case 75:break;case 76:return 90;case 77:this.begin("string");break;case 78:this.popState();break;case 79:return"STR";case 80:this.begin("string_kv");break;case 81:return this.begin("string_kv_key"),"STR_KEY";case 82:this.popState(),this.begin("string_kv_value");break;case 83:return"STR_VALUE";case 84:this.popState(),this.popState();break;case 85:return"STR";case 86:return"LBRACE";case 87:return"RBRACE";case 88:return"SPACE";case 89:return"EOL";case 90:return 24}},rules:[/^(?:%% \{ )/,/^(?:.
2022-11-07 06:36:17 +00:00
` +pt.showPosition()+ `
2023-01-09 05:03:48 +00:00
Expecting ` +bt.join(", ")+", got '"+(this.terminals_[Gt]||Gt)+"'":Ut="Parse error on line "+(Mt+1)+": Unexpected "+(Gt==Et?"end of input":"'"+(this.terminals_[Gt]||Gt)+"'"),this.parseError(Ut,{text:pt.match,token:this.terminals_[Gt]||Gt,line:pt.yylineno,loc:Xt,expected:bt})}if(Ht[0]instanceof Array&&Ht.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Ee+", token: "+Gt);switch(Ht[0]){case 1:J.push(Gt),ht.push(pt.yytext),U.push(pt.yylloc),J.push(Ht[1]),Gt=null,Tt=pt.yyleng,et=pt.yytext,Mt=pt.yylineno,Xt=pt.yylloc;break;case 2:if(ft=this.productions_[Ht[1]][1],Ft. $ =ht[ht.length-ft],Ft._ $ ={first_line:U[U.length-(ft||1)].first_line,last_line:U[U.length-1].last_line,first_column:U[U.length-(ft||1)].first_column,last_column:U[U.length-1].last_column},jt&&(Ft._ $ .range=[U[U.length-(ft||1)].range[0],U[U.length-1].range[1]]),Vt=this.performAction.apply(Ft,[et,Tt,Mt,st.yy,Ht[1],ht,U].concat(wt)),typeof Vt<"u")return Vt;ft&&(J=J.slice(0,-1*ft*2),ht=ht.slice(0,-1*ft),U=U.slice(0,-1*ft)),J.push(this.productions_[Ht[1]][0]),ht.push(Ft. $ ),U.push(Ft._ $ ),Lt=Yt[J[J.length-2]][J[J.length-1]],J.push(Lt);break;case 3:return!0}}return!0}},z=function(){var F={EOF:1,parseError:function(A,J){if(this.yy.parser)this.yy.parser.parseError(A,J);else throw new Error(A)},setInput:function(O,A){return this.yy=A||this.yy||{},this._input=O,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 O=this._input[0];this.yytext+=O,this.yyleng++,this.offset++,this.match+=O,this.matched+=O;var A=O.match(/(?: \r \n ?| \n ).*/g);return A?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),O},unput:function(O){var A=O.length,J=O.split(/(?: \r \n ?| \n )/g);this._input=O+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-A),this.offset-=A;var C=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),J.length-1&&(this.yylineno-=J.length-1);var ht=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:J?(J.length===C.length?this.yylloc.first_column:0)+C[C.length-J.length].length-J[0].length:this.yylloc.first_column-A},this.options.ranges&&(this.yylloc.range=[ht[0],ht[0]+this.yyleng-A]),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(O){this.unput(this.match.slice(O))},pastInput:function(){var O=this.matched.substr(0,this.matched.length-this.match.length);return(O.length>20?"...":"")+O.substr(-20).replace(/ \n /g,"")},upcomingInput:function(){var O=this.match;return O.length<20&&(O+=this._input.substr(0,20-O.length)),(O.substr(0,20)+(O.length>20?"...":"")).replace(/ \n /g,"")},showPosition:function(){var O=this.pastInput(),A=new Array(O.length+1).join("-");return O+this.upcomingInput()+ `
` +A+"^"},test_match:function(O,A){var J,C,ht;if(this.options.backtrack_lexer&&(ht={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&&(ht.yylloc.range=this.yylloc.range.slice(0))),C=O[0].match(/(?: \r \n ?| \n ).*/g),C&&(this.yylineno+=C.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:C?C[C.length-1].length-C[C.length-1].match(/ \r ? \n ?/)[0].length:this.yylloc.last_column+O[0].length},this.yytext+=O[0],this.match+=O[0],this.matches=O,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(O[0].length),this.matched+=O[0],J=this.performAction.call(this,this.yy,this,A,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),J)return J;if(this._backtrack){for(var U in ht)this[U]=ht[U];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var O,A,J,C;this._more||(this.yytext="",this.match="");for(var ht=this._currentRules(),U=0;U<ht.length;U++)if(J=this._input.match(this.rules[ht[U]]),J&&(!A||J[0].length>A[0].length)){if(A=J,C=U,this.options.backtrack_lexer){if(O=this.test_match(J,ht[U]),O!==!1)return O;if(this._backtrack){A=!1;continue}else return!1}else if(!this.options.flex)break}return A?(O=this.test_match(A,ht[C]),O!==!1?O:!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 A=this.next();return A||this.lex()},begin:function(A){this.conditionStack.push(A)},popState:function(){var A=this.conditionStack.length-1;return A>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(A){return A=this.conditionStack.length-1-Math.abs(A||0),A>=0?this.conditionStack[A]:"INITIAL"},pushState:function(A){this.begin(A)},stateStackSize:function(){return this.conditionStack.length},options:{},performAction:function(A,J,C,ht){switch(C){case 0:return this.begin("open_directive"),19;case 1:return 8;case 2:return 9;case 3:return 10;case 4:return 11;case 5:return this.begin("type_directive"),20;case 6:return this.popState(),this.begin("arg_directive"),17;case 7:return this.popState(),this.popState(),22;case 8:return 21;case 9:break;case 10:break;case 11:return this.begin("acc_title"),39;case 12:return this.popState(),"acc_title_value";case 13:return this.begin("acc_descr"),41;case 14:return this.popState(),"acc_descr_value";case 15:this.begin("acc_descr_multiline");break;case 16:this.popState();break;case 17:return"acc_descr_multiline_value";case 18:return 16;case 19:break;case 20:return 23;case 21:return 23;case 22:return this.begin("struct"),46;case 23:return"EDGE_STATE";case 24:return"EOF_IN_STRUCT";case 25:return"OPEN_IN_STRUCT";case 26:return this.popState(),48;case 27:break;case 28:return"MEMBER";case 29:return 44;case 30:return 74;case 31:return 67;case 32:return 68;case 33:return 70;case 34:return 55;case 35:return 57;case 36:return 49;case 37:return 50;case 38:this.begin("generic");break;case 39:this.popState();break;case 40:return"GENERICTYPE";case 41:this.begin("string");break;case 42:this.popState();break;case 43:return"STR";case 44:this.begin("bqstring");break;case 45:this.popState();break;case 46:return"BQUOTE_STR";case 47:this.begin("href");break;case 48:this.popState();break;case 49:return 73;case 50:this.begin("callback_name");break;case 51:this.popState();break;case 52:this.popState(),this.begin("callback_args");break;case 53:return 71;case 54:this.popState();break;case 55:return 72;case 56:return 69;case 57:return 69;case 58:return 69;case 59:return 69;case 60:return 61;case 61:return 61;case 62:return 63;case 63:return 63;case 64:return 62;case 65:return 60;case 66:return 64;case 67:return 65;case 68:return 66;case 69:return 32;case 70:return 45;case 71:return 86;case 72:return"DOT";case 73:return"PLUS";case 74:return 83;case 75:return"EQUALS";case 76:return"EQUALS";case 77:return 90;case 78:return"PUNCTUATION";case 79:return 89;case 80:return 88;case 81:return 85;case 82:return 25}},rules:[/^(?:%% \{ )/,/^(?:.*direction \s +TB[^ \n ]*)/,/^(?:.*direction \s +BT[^ \n ]*)/,/^(?:.*direction \s +RL[^ \n ]*)/,/^(?:.*direction \s +LR[^ \n ]*)/,/^(?:((?:(?! \} %%)[^:.])*))/,/^(?::)/,/^(?: \} %%)/,/^(?:((?:(?! \} %%).| \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 )/,/^(?:[{])/,/^(?: \[ \* \] )/,/^(?: $ )/,/^(?:[{])/,/^(?:[}])/,/^(?:[ \n ])/,/^(?:[^{} \n ]*)/,/^(?:class \b )/,/^(?:cssClass \b )/,/^(?:callback \b )/,/^(?:link \b )/,/^(?:click \b )/,/^(?:note for \b )/,/^(?:note \b )/,/^(?:<<)/,/^(?:>>)/,/^(?:[~])/,/^(?:[~])/,/^(?:[^~]*)/,/^(?:["])/,/^(?:["])/,/^(?:[^"]*)/,/^(?:[ ` ] ) / , /^(?:[`])/ , /^(?:[^`]+)/ , /^(?:href[\s]+["])/ , /^(?:["])/ , /^(?:[^"]*)/ , /^(?:call[\s]+)/ , /^(?:\([\s]*\))/ , /^(?:\()/ , /^(?:[^(]*)/ , /^(?:\))/ , /^(?:[^)]*)/ , /^(?:_self\b)/ , /^(?:_blank\b)/ , /^(?:_parent\b)/ , /^(?:_top\b)/ , /^(?:\s*<\|)/ , /^(?:\s*\|>)/ , /^(?:\s*>)/ , /^(?:\s*<)/ , /^(?:\s*\*)/ , /^(?:\s*o\b)/ , /^(?:\s*\(\))/ , /^(?:--)/ , /^(?:\.\.)/ , /^(?::{1}[^:\n;]+)/ , /^(?::{3})/ , /^(?:-)/ , /^(?:\.)/ , /^(?:\+)/ , /^(?:%)/ , /^(?:=)/ , /^(?:=)/ , /^(?:\w+)/ , / ^ ( ? : [ ! " # $ % & ' * + , -
` );l.forEach(function(p){B.debug( ` Adding line : $ { p } ` ),o.append("tspan").text(p).attr("class","title").attr("dy",r.textHeight)});const u=a.node().getBBox(),f=a.insert("rect",":first-child").attr("x",0).attr("y",0).attr("width",u.width+2*r.padding).attr("height",u.height+l.length*r.textHeight+r.padding+.5*r.dividerMargin).node().getBBox().width;return o.node().childNodes.forEach(function(p){p.setAttribute("x",(f-p.getBBox().width)/2)}),s.width=f,s.height=u.height+l.length*r.textHeight+r.padding+.5*r.dividerMargin,s},cu=function(t){const e=/^([#+~-])?( \w +)(~ \w +~| \[ ])? \s +( \w +) *([ $ *])? $ /,r=/^([#+|~-])?( \w +) * \( *(.*) \) *([ $ *])? *( \w *[[ \] |~]* \s * \w *~?) $ /;let n=t.match(e),i=t.match(r);return n&&!i?lB(n):i?cB(i):uB(t)},lB=function(t){let e="",r="";try{let n=t[1]?t[1].trim():"",i=t[2]?t[2].trim():"",s=t[3]?Oi(t[3].trim()):"",a=t[4]?t[4].trim():"",o=t[5]?t[5].trim():"";r=n+i+s+" "+a,e=_0(o)}catch{r=t}return{displayText:r,cssStyle:e}},cB=function(t){let e="",r="";try{let n=t[1]?t[1].trim():"",i=t[2]?t[2].trim():"",s=t[3]?Oi(t[3].trim()):"",a=t[4]?t[4].trim():"",o=t[5]?" : "+Oi(t[5]).trim():"";r=n+i+"("+s+")"+o,e=_0(a)}catch{r=t}return{displayText:r,cssStyle:e}},uB=function(t){let e="",r="",n="",i=t.indexOf("("),s=t.indexOf(")");if(i>1&&s>i&&s<=t.length){let a="",o="",l=t.substring(0,1);l.match(/ \w /)?o=t.substring(0,i).trim():(l.match(/[#+~-]/)&&(a=l),o=t.substring(1,i).trim());const u=t.substring(i+1,s);t.substring(s+1,1),r=_0(t.substring(s+1,s+2)),e=a+o+"("+Oi(u.trim())+")",s<t.length&&(n=t.substring(s+2).trim(),n!==""&&(n=" : "+Oi(n),e+=n))}else e=Oi(t);return{displayText:e,cssStyle:r}},Tm=function(t,e,r,n){let i=cu(e);const s=t.append("tspan").attr("x",n.padding).text(i.displayText);i.cssStyle!==""&&s.attr("style",i.cssStyle),r||s.attr("dy",n.textHeight)},_0=function(t){switch(t){case"*":return"font-style:italic;";case" $ ":return"text-decoration:underline;";default:return""}},x0={drawClass:aB,drawEdge:sB,drawNote:oB,parseMember:cu};let uu={};const hu=20,Fo=function(t){const e=Object.entries(uu).find(r=>r[1].label===t);if(e)return e[0]},hB=function(t){t.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"),t.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"),t.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"),t.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"),t.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"),t.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"),t.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"),t.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")},dB={draw:function(t,e,r,n){const i= $ ().class;uu={},B.info("Rendering diagram "+t);const s= $ ().securityLevel;let a;s==="sandbox"&&(a=St("#i"+e));const o=St(s==="sandbox"?a.nodes()[0].contentDocument.body:"bo
2022-11-07 06:36:17 +00:00
outsidePoint : $ { JSON . stringify ( e ) }
insidePoint : $ { JSON . stringify ( r ) }
2023-01-09 05:03:48 +00:00
node : x : $ { t . x } y : $ { t . y } w : $ { t . width } h : $ { t . height } ` );const n=t.x,i=t.y,s=Math.abs(n-r.x),a=t.width/2;let o=r.x<e.x?a-s:a+s;const l=t.height/2,u=Math.abs(e.y-r.y),d=Math.abs(e.x-r.x);if(Math.abs(i-e.y)*a>Math.abs(n-e.x)*l){let f=r.y<e.y?e.y-l-i:i-l-e.y;o=d*f/u;const p={x:r.x<e.x?r.x+o:r.x-d+o,y:r.y<e.y?r.y+u-f:r.y-u+f};return o===0&&(p.x=e.x,p.y=e.y),d===0&&(p.x=e.x),u===0&&(p.y=e.y),B.warn( ` abc89 topp / bott calc , Q $ { u } , q $ { f } , R $ { d } , r $ { o } ` ,p),p}else{r.x<e.x?o=e.x-a-n:o=n-a-e.x;let f=u*o/d,p=r.x<e.x?r.x+d-o:r.x-d+o,g=r.y<e.y?r.y+f:r.y-f;return B.warn( ` sides calc abc89 , Q $ { u } , q $ { f } , R $ { d } , r $ { o } ` ,{_x:p,_y:g}),o===0&&(p=e.x,g=e.y),d===0&&(p=e.x),u===0&&(g=e.y),{x:p,y:g}}},Fm=(t,e)=>{B.warn("abc88 cutPathAtIntersect",t,e);let r=[],n=t[0],i=!1;return t.forEach(s=>{if(B.info("abc88 checking point",s,e),!rI(e,s)&&!i){const a=nI(e,n,s);B.warn("abc88 inside",s,n,a),B.warn("abc88 intersection",a);let o=!1;r.forEach(l=>{o=o||l.x===a.x&&l.y===a.y}),r.some(l=>l.x===a.x&&l.y===a.y)?B.warn("abc88 no intersect",a,r):r.push(a),i=!0}else B.warn("abc88 outside",s,n),n=s,i||r.push(s)}),B.warn("abc88 returning points",r),r},iI=function(t,e,r,n,i,s){let a=r.points,o=!1;const l=s.node(e.v);var u=s.node(e.w);B.info("abc88 InsertEdge: ",r),u.intersect&&l.intersect&&(a=a.slice(1,r.points.length-1),a.unshift(l.intersect(a[0])),B.info("Last point",a[a.length-1],u,u.intersect(a[a.length-1])),a.push(u.intersect(a[a.length-1]))),r.toCluster&&(B.info("to cluster abc88",n[r.toCluster]),a=Fm(r.points,n[r.toCluster].node),o=!0),r.fromCluster&&(B.info("from cluster abc88",n[r.fromCluster]),a=Fm(a.reverse(),n[r.fromCluster].node).reverse(),o=!0);const d=a.filter(L=>!Number.isNaN(L.y));let f;i==="graph"||i==="flowchart"?f=r.curve||ta:f=ta;const p=Js().x(function(L){return L.x}).y(function(L){return L.y}).curve(f);let g;switch(r.thickness){case"normal":g="edge-thickness-normal";break;case"thick":g="edge-thickness-thick";break;default:g=""}switch(r.pattern){case"solid":g+=" edge-pattern-solid";break;case"dotted":g+=" edge-pattern-dotted";break;case"dashed":g+=" edge-pattern-dashed";break}const b=t.append("path").attr("d",p(d)).attr("id",r.id).attr("class"," "+g+(r.classes?" "+r.classes:"")).attr("style",r.style);let k="";switch(( $ ().flowchart.arrowMarkerAbsolute|| $ ().state.arrowMarkerAbsolute)&&(k=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,k=k.replace(/ \( /g," \\ ("),k=k.replace(/ \) /g," \\ )")),B.info("arrowTypeStart",r.arrowTypeStart),B.info("arrowTypeEnd",r.arrowTypeEnd),r.arrowTypeStart){case"arrow_cross":b.attr("marker-start","url("+k+"#"+i+"-crossStart)");break;case"arrow_point":b.attr("marker-start","url("+k+"#"+i+"-pointStart)");break;case"arrow_barb":b.attr("marker-start","url("+k+"#"+i+"-barbStart)");break;case"arrow_circle":b.attr("marker-start","url("+k+"#"+i+"-circleStart)");break;case"aggregation":b.attr("marker-start","url("+k+"#"+i+"-aggregationStart)");break;case"extension":b.attr("marker-start","url("+k+"#"+i+"-extensionStart)");break;case"composition":b.attr("marker-start","url("+k+"#"+i+"-compositionStart)");break;case"dependency":b.attr("marker-start","url("+k+"#"+i+"-dependencyStart)");break;case"lollipop":b.attr("marker-start","url("+k+"#"+i+"-lollipopStart)");break}switch(r.arrowTypeEnd){case"arrow_cross":b.attr("marker-end","url("+k+"#"+i+"-crossEnd)");break;case"arrow_point":b.attr("marker-end","url("+k+"#"+i+"-pointEnd)");break;case"arrow_barb":b.attr("marker-end","url("+k+"#"+i+"-barbEnd)");break;case"arrow_circle":b.attr("marker-end","url("+k+"#"+i+"-circleEnd)");break;case"aggregation":b.attr("marker-end","url("+k+"#"+i+"-aggregationEnd)");break;case"extension":b.attr("marker-end","url("+k+"#"+i+"-extensionEnd)");break;case"composition":b.attr("marker-end","url("+k+"#"+i+"-compositionEnd)");break;case"dependency":b.attr("marker-end","url("+k+"#"+i+"-dependencyEnd)");break;case"lollipop":b.attr("marker-end","url("+k+"#"+i+"-lollipopEnd)");break}let T={};return o&&(T.updatedPath=a),T.originalPath=r.points,T},Pm=(t,e,r,n)=>{B.info("Graph in recursive render: XXX",y
` ),i.style===void 0&&(s.style=s.style||"stroke: #333; stroke-width: 1.5px;fill:none"),s.labelStyle=s.labelStyle.replace("color:","fill:"))),e.setEdge(i.id1,i.id2,s,n)})},lI=function(t){Object.keys(t).forEach(function(r){Vm[r]=t[r]})},cI=function(t,e,r,n){B.info("Drawing class - ",e);const i= $ ().flowchart,s= $ ().securityLevel;B.info("config:",i);const a=i.nodeSpacing||50,o=i.rankSpacing||50,l=new sr({multigraph:!0,compound:!0}).setGraph({rankdir:n.db.getDirection(),nodesep:a,ranksep:o,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}}),u=n.db.getClasses(),d=n.db.getRelations(),f=n.db.getNotes();B.info(d),sI(u,l,e,n),oI(d,l),aI(f,l,d.length+1,u);let p;s==="sandbox"&&(p=St("#i"+e));const g=St(s==="sandbox"?p.nodes()[0].contentDocument.body:"body"),b=g.select( ` [ id = "${e}" ] ` ),k=g.select("#"+e+" g");if(v0(k,l,["aggregation","extension","composition","dependency","lollipop"],"classDiagram",e),ge.insertTitle(b,"classTitleText",i.titleTopMargin,n.db.getDiagramTitle()),Sc(l,b,i.diagramPadding,i.useMaxWidth),!i.htmlLabels){const T=s==="sandbox"?p.nodes()[0].contentDocument:document,L=T.querySelectorAll('[id="'+e+'"] .edgeLabel .label');for(const E of L){const I=E.getBBox(),V=T.createElementNS("http://www.w3.org/2000/svg","rect");V.setAttribute("rx",0),V.setAttribute("ry",0),V.setAttribute("width",I.width),V.setAttribute("height",I.height),E.insertBefore(V,E.firstChild)}}};function Um(t){let e;switch(t){case 0:e="aggregation";break;case 1:e="extension";break;case 2:e="composition";break;case 3:e="dependency";break;case 4:e="lollipop";break;default:e="none"}return e}const uI={setConf:lI,draw:cI};var k0=function(){var t=function(N,D,w,v){for(w=w||{},v=N.length;v--;w[N[v]]=D);return w},e=[1,2],r=[1,5],n=[6,9,11,23,25,27,29,30,31,49],i=[1,17],s=[1,18],a=[1,19],o=[1,20],l=[1,21],u=[1,22],d=[1,25],f=[1,30],p=[1,31],g=[1,32],b=[1,33],k=[6,9,11,15,20,23,25,27,29,30,31,42,43,44,45,49],T=[1,45],L=[30,31,46,47],E=[4,6,9,11,23,25,27,29,30,31,49],I=[42,43,44,45],V=[22,37],H=[1,64],G={trace:function(){},yy:{},symbols_:{error:2,start:3,ER_DIAGRAM:4,document:5,EOF:6,directive:7,line:8,SPACE:9,statement:10,NEWLINE:11,openDirective:12,typeDirective:13,closeDirective:14,":":15,argDirective:16,entityName:17,relSpec:18,role:19,BLOCK_START:20,attributes:21,BLOCK_STOP:22,title:23,title_value:24,acc_title:25,acc_title_value:26,acc_descr:27,acc_descr_value:28,acc_descr_multiline_value:29,ALPHANUM:30,ENTITY_NAME:31,attribute:32,attributeType:33,attributeName:34,attributeKeyType:35,attributeComment:36,ATTRIBUTE_WORD:37,ATTRIBUTE_KEY:38,COMMENT:39,cardinality:40,relType:41,ZERO_OR_ONE:42,ZERO_OR_MORE:43,ONE_OR_MORE:44,ONLY_ONE:45,NON_IDENTIFYING:46,IDENTIFYING:47,WORD:48,open_directive:49,type_directive:50,arg_directive:51,close_directive:52, $ accept:0, $ end:1},terminals_:{2:"error",4:"ER_DIAGRAM",6:"EOF",9:"SPACE",11:"NEWLINE",15:":",20:"BLOCK_START",22:"BLOCK_STOP",23:"title",24:"title_value",25:"acc_title",26:"acc_title_value",27:"acc_descr",28:"acc_descr_value",29:"acc_descr_multiline_value",30:"ALPHANUM",31:"ENTITY_NAME",37:"ATTRIBUTE_WORD",38:"ATTRIBUTE_KEY",39:"COMMENT",42:"ZERO_OR_ONE",43:"ZERO_OR_MORE",44:"ONE_OR_MORE",45:"ONLY_ONE",46:"NON_IDENTIFYING",47:"IDENTIFYING",48:"WORD",49:"open_directive",50:"type_directive",51:"arg_directive",52:"close_directive"},productions_:[0,[3,3],[3,2],[5,0],[5,2],[8,2],[8,1],[8,1],[8,1],[7,4],[7,6],[10,1],[10,5],[10,4],[10,3],[10,1],[10,2],[10,2],[10,2],[10,1],[17,1],[17,1],[21,1],[21,2],[32,2],[32,3],[32,3],[32,4],[33,1],[34,1],[35,1],[36,1],[18,3],[40,1],[40,1],[40,1],[40,1],[41,1],[41,1],[19,1],[19,1],[19,1],[12,1],[13,1],[16,1],[14,1]],performAction:function(D,w,v,M,m,Q,x){var ct=Q.length-1;switch(m){case 1:break;case 3:this. $ =[];break;case 4:Q[ct-1].push(Q[ct]),this. $ =Q[ct-1];break;case 5:case 6:this. $ =Q[ct];break;case 7:case 8:this. $ =[];break;case 12:M.addEntity(Q[ct-4]),M.addEntity(Q[ct-2]),M.addRelationship(Q[ct-4],Q[ct],Q[ct-2],Q[ct-3]);break;case 13:M.addEntity(Q[ct-3]),M.addAttributes(Q[ct-3],Q[ct-1]);break;case 14:M.addEntity(Q[ct-2]);break;case 15:M.addEntity(Q[ct]);break;case 16:case 17:this. $
` +nt.showPosition()+ `
Expecting ` +U.join(", ")+", got '"+(this.terminals_[z]||z)+"'":Yt="Parse error on line "+(Dt+1)+": Unexpected "+(z==ot?"end of input":"'"+(this.terminals_[z]||z)+"'"),this.parseError(Yt,{text:nt.match,token:this.terminals_[z]||z,line:nt.yylineno,loc:K,expected:U})}if(F[0]instanceof Array&&F.length>1)throw new Error("Parse Error: multiple actions possible at state: "+X+", token: "+z);switch(F[0]){case 1:v.push(z),m.push(nt.yytext),Q.push(nt.yylloc),v.push(F[1]),z=null,kt=nt.yyleng,ct=nt.yytext,Dt=nt.yylineno,K=nt.yylloc;break;case 2:if(C=this.productions_[F[1]][1],A. $ =m[m.length-C],A._ $ ={first_line:Q[Q.length-(C||1)].first_line,last_line:Q[Q.length-1].last_line,first_column:Q[Q.length-(C||1)].first_column,last_column:Q[Q.length-1].last_column},Ot&&(A._ $ .range=[Q[Q.length-(C||1)].range[0],Q[Q.length-1].range[1]]),O=this.performAction.apply(A,[ct,kt,Dt,ut.yy,F[1],m,Q].concat(rt)),typeof O<"u")return O;C&&(v=v.slice(0,-1*C*2),m=m.slice(0,-1*C),Q=Q.slice(0,-1*C)),v.push(this.productions_[F[1]][0]),m.push(A. $ ),Q.push(A._ $ ),ht=x[v[v.length-2]][v[v.length-1]],v.push(ht);break;case 3:return!0}}return!0}},Y=function(){var N={EOF:1,parseError:function(w,v){if(this.yy.parser)this.yy.parser.parseError(w,v);else throw new Error(w)},setInput:function(D,w){return this.yy=w||this.yy||{},this._input=D,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 D=this._input[0];this.yytext+=D,this.yyleng++,this.offset++,this.match+=D,this.matched+=D;var w=D.match(/(?: \r \n ?| \n ).*/g);return w?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),D},unput:function(D){var w=D.length,v=D.split(/(?: \r \n ?| \n )/g);this._input=D+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-w),this.offset-=w;var M=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),v.length-1&&(this.yylineno-=v.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:v?(v.length===M.length?this.yylloc.first_column:0)+M[M.length-v.length].length-v[0].length:this.yylloc.first_column-w},this.options.ranges&&(this.yylloc.range=[m[0],m[0]+this.yyleng-w]),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(D){this.unput(this.match.slice(D))},pastInput:function(){var D=this.matched.substr(0,this.matched.length-this.match.length);return(D.length>20?"...":"")+D.substr(-20).replace(/ \n /g,"")},upcomingInput:function(){var D=this.match;return D.length<20&&(D+=this._input.substr(0,20-D.length)),(D.substr(0,20)+(D.length>20?"...":"")).replace(/ \n /g,"")},showPosition:function(){var D=this.pastInput(),w=new Array(D.length+1).join("-");return D+this.upcomingInput()+ `
` +w+"^"},test_match:function(D,w){var v,M,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))),M=D[0].match(/(?: \r \n ?| \n ).*/g),M&&(this.yylineno+=M.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:M?M[M.length-1].length-M[M.length-1].match(/ \r ? \n ?/)[0].length:this.yylloc.last_column+D[0].length},this.yytext+=D[0],this.match+=D[0],this.matches=D,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(D[0].length),this.matched+=D[0],v=this.performAction.call(this,this.yy,this,w,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),v)return v;if(this._backtrack){for(var Q in m)this[Q]=m[Q];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var D,w,v,M;this._more||(this.yytext="",this.match="");for(var m=this._currentRules(),Q=0;Q<m.length;Q++)if(v=this._input.match(this.rules[m[Q]]),v&&(!w||v[0].length>w[0].length)){if(w=v,M=Q,this.options.backtrack_lexer){if(D=this.test_match(v,m[Q]),D!==!1)return D;if(this._backtrack){w=!1;continue}else return!1}else if(!this.options.flex)break}return w?(D=this.test_match(w,m[M]),D!==!1?D:!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 w=this.next();return w||this.lex()},begin:function(w){this.conditionStack.push(w)},popState:function(){var w=this.conditionStack.length-1;return w>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(w){return w=this.conditionStack.length-1-Math.abs(w||0),w>=0?this.conditionStack[w]:"INITIAL"},pushState:function(w){this.begin(w)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(w,v,M,m){switch(M){case 0:return this.begin("acc_title"),25;case 1:return this.popState(),"acc_title_value";case 2:return this.begin("acc_descr"),27;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 this.begin("open_directive"),49;case 8:return this.begin("type_directive"),50;case 9:return this.popState(),this.begin("arg_directive"),15;case 10:return this.popState(),this.popState(),52;case 11:return 51;case 12:break;case 13:break;case 14:return 11;case 15:break;case 16:return 9;case 17:return 31;case 18:return 48;case 19:return 4;case 20:return this.begin("block"),20;case 21:break;case 22:return 38;case 23:return 37;case 24:return 37;case 25:return 39;case 26:break;case 27:return this.popState(),22;case 28:return v.yytext[0];case 29:return 42;case 30:return 44;case 31:return 44;case 32:return 44;case 33:return 42;case 34:return 42;case 35:return 43;case 36:return 43;case 37:return 43;case 38:return 43;case 39:return 43;case 40:return 44;case 41:return 43;case 42:return 44;case 43:return 45;case 44:return 45;case 45:return 45;case 46:return 45;case 47:return 42;case 48:return 43;case 49:return 44;case 50:return 46;case 51:return 47;case 52:return 47;case 53:return 46;case 54:return 46;case 55:return 46;case 56:return 30;case 57:return v.yytext[0];case 58:return 6}},rules:[/^(?:accTitle \s *: \s *)/i,/^(?:(?! \n ||)*[^ \n ]*)/i,/^(?:accDescr \s *: \s *)/i,/^(?:(?! \n ||)*[^ \n ]*)/i,/^(?:accDescr \s * \{ \s *)/i,/^(?:[ \} ])/i,/^(?:[^ \} ]*)/i,/^(?:%% \{ )/i,/^(?:((?:(?! \} %%)[^:.])*))/i,/^(?::)/i,/^(?: \} %%)/i,/^(?:((?:(?! \} %%).| \n )*))/i,/^(?:%(?! \{ )[^ \n ]*)/i,/^(?:[^ \} ]%%[^ \n ]*)/i,/^(?:[ \n ]+)/i,/^(?: \s +)/i,/^(?:[ \s ]+)/i,/^(?:"[^"% \r \n \v \b \\ ]+")/i,/^(?:"[^"]*")/i,/^(?:erDiagram \b )/i,/^(?: \{ )/i,/^(?: \s +)/i,/^(?: \b ((?:PK)|(?:FK)) \b )/i,/^(?:(.*?)[~](.*?)*[~])/i,/^(?:[A-Za-z][A-Za-z0-9 \- _ \[ \] ]*)/i,/^(?:"[^"]*")/i,/^(?:[ \n ]+)/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,/^(?: \. \. )/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},open_directive:{rules:[8],inclusive:!1},type_directive:{rules:[9,10],inclusive:!1},arg_directive:{rules:[10,11],inclusive:!1},block:{rules:[21,22,23,24,25,26,27,28],inclusive:!1},INITIAL:{rules:[0,2,4,7,12,13,14,15,16,17,18,19,20,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,56,57,58],inclusive:!0}}};return N}();G.lexer=Y;function W(){this.yy={}}return W.prototype=G,G.Parser=W,new W}();k0.parser=k0;const hI=k0,dI=t=>t.match(/^ \s *erDiagram/)!==null;let Vo={},w0=[];const fI={ZERO_OR_ONE:"ZERO_OR_ONE",ZERO_OR_MORE:"ZERO_OR_MORE",ONE_OR_MORE:"ONE_OR_MORE",ONLY_ONE:"ONLY_ONE"},pI={NON_IDENTIFYING:"NON_IDENTIFYING",IDENTIFYING:"IDENTIFYING"},gI=function(t,e,r){ze.parseDirective(this,t,e,r)},zm=function(t){ret
` +or.showPosition()+ `
Expecting ` +Pa.join(", ")+", got '"+(this.terminals_[xr]||xr)+"'":Rs="Parse error on line "+(Sr+1)+": Unexpected "+(xr==Hu?"end of input":"'"+(this.terminals_[xr]||xr)+"'"),this.parseError(Rs,{text:or.match,token:this.terminals_[xr]||xr,line:or.yylineno,loc:Os,expected:Pa})}if(Or[0]instanceof Array&&Or.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Se+", token: "+xr);switch(Or[0]){case 1:oe.push(xr),Ve.push(or.yytext),q.push(or.yylloc),oe.push(Or[1]),xr=null,Wu=or.yyleng,tt=or.yytext,Sr=or.yylineno,Os=or.yylloc;break;case 2:if(Kr=this.productions_[Or[1]][1],Bn. $ =Ve[Ve.length-Kr],Bn._ $ ={first_line:q[q.length-(Kr||1)].first_line,last_line:q[q.length-1].last_line,first_column:q[q.length-(Kr||1)].first_column,last_column:q[q.length-1].last_column},ll&&(Bn._ $ .range=[q[q.length-(Kr||1)].range[0],q[q.length-1].range[1]]),Ai=this.performAction.apply(Bn,[tt,Wu,Sr,Zn.yy,Or[1],Ve,q].concat(Gu)),typeof Ai<"u")return Ai;Kr&&(oe=oe.slice(0,-1*Kr*2),Ve=Ve.slice(0,-1*Kr),q=q.slice(0,-1*Kr)),oe.push(this.productions_[Or[1]][0]),Ve.push(Bn. $ ),q.push(Bn._ $ ),cl=Is[oe[oe.length-2]][oe[oe.length-1]],oe.push(cl);break;case 3:return!0}}return!0}},Xi=function(){var zr={EOF:1,parseError:function(te,oe){if(this.yy.parser)this.yy.parser.parseError(te,oe);else throw new Error(te)},setInput:function(qt,te){return this.yy=te||this.yy||{},this._input=qt,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 qt=this._input[0];this.yytext+=qt,this.yyleng++,this.offset++,this.match+=qt,this.matched+=qt;var te=qt.match(/(?: \r \n ?| \n ).*/g);return te?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),qt},unput:function(qt){var te=qt.length,oe=qt.split(/(?: \r \n ?| \n )/g);this._input=qt+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-te),this.offset-=te;var Rt=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),oe.length-1&&(this.yylineno-=oe.length-1);var Ve=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:oe?(oe.length===Rt.length?this.yylloc.first_column:0)+Rt[Rt.length-oe.length].length-oe[0].length:this.yylloc.first_column-te},this.options.ranges&&(this.yylloc.range=[Ve[0],Ve[0]+this.yyleng-te]),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(qt){this.unput(this.match.slice(qt))},pastInput:function(){var qt=this.matched.substr(0,this.matched.length-this.match.length);return(qt.length>20?"...":"")+qt.substr(-20).replace(/ \n /g,"")},upcomingInput:function(){var qt=this.match;return qt.length<20&&(qt+=this._input.substr(0,20-qt.length)),(qt.substr(0,20)+(qt.length>20?"...":"")).replace(/ \n /g,"")},showPosition:function(){var qt=this.pastInput(),te=new Array(qt.length+1).join("-");return qt+this.upcomingInput()+ `
` +te+"^"},test_match:function(qt,te){var oe,Rt,Ve;if(this.options.backtrack_lexer&&(Ve={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&&(Ve.yylloc.range=this.yylloc.range.slice(0))),Rt=qt[0].match(/(?: \r \n ?| \n ).*/g),Rt&&(this.yylineno+=Rt.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:Rt?Rt[Rt.length-1].length-Rt[Rt.length-1].match(/ \r ? \n ?/)[0].length:this.yylloc.last_column+qt[0].length},this.yytext+=qt[0],this.match+=qt[0],this.matches=qt,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(qt[0].length),this.matched+=qt[0],oe=this.performAction.call(this,this.yy,this,te,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),oe)return oe;if(this._backtrack){for(var q in Ve)this[q]=Ve[q];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var qt,te,oe,Rt;this._more||(this.yytext="",this.match="");for(var Ve=this._currentRules(),q=0;q<Ve.length;q++)if(oe=this._input.match(this.rules[Ve[q]]),oe&&(!te||oe[0].length>te[0].length)){if(te=oe,Rt=q,this.options.backtrack_lexer){if(qt=this.test_match(oe,Ve[q]),qt!==!1)return qt;if(this._backtrack){te=!1;continue}else return!1}else if(!this.options.flex)break}return te?(qt=this.test_match(te,Ve[Rt]),qt!==!1?qt:!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 te=this.next();return te||this.lex()},begin:function(te){this.conditionStack.push(te)},popState:function(){var te=this.conditionStack.length-1;return te>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(te){return te=this.conditionStack.length-1-Math.abs(te||0),te>=0?this.conditionStack[te]:"INITIAL"},pushState:function(te){this.begin(te)},stateStackSize:function(){return this.conditionStack.length},options:{},performAction:function(te,oe,Rt,Ve){switch(Rt){case 0:return this.begin("open_directive"),12;case 1:return this.begin("type_directive"),13;case 2:return this.popState(),this.begin("arg_directive"),10;case 3:return this.popState(),this.popState(),15;case 4:return 14;case 5:break;case 6:break;case 7:return this.begin("acc_title"),44;case 8:return this.popState(),"acc_title_value";case 9:return this.begin("acc_descr"),46;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"STR";case 17:return 86;case 18:return 95;case 19:return 87;case 20:return 104;case 21:return 88;case 22:return 89;case 23:this.begin("href");break;case 24:this.popState();break;case 25:return 100;case 26:this.begin("callbackname");break;case 27:this.popState();break;case 28:this.popState(),this.begin("callbackargs");break;case 29:return 98;case 30:this.popState();break;case 31:return 99;case 32:this.begin("click");break;case 33:this.popState();break;case 34:return 90;case 35:return te.lex.firstGraph()&&this.begin("dir"),24;case 36:return te.lex.firstGraph()&&this.begin("dir"),24;case 37:return 38;case 38:return 42;case 39:return 101;case 40:return 101;case 41:return 101;case 42:return 101;case 43:return this.popState(),25;case 44:return this.popState(),26;case 45:return this.popState(),26;case 46:return this.popState(),26;case 47:return this.popState(),26;case 48:return this.popState(),26;case 49:return this.popState(),26;case 50:return this.popState(),26;case 51:return this.popState(),26;case 52:return this.popState(),26;case 53:return this.popState(),26;case 54:return 118;case 55:return 119;case 56:return 120;case 57:return 121;case 58:return 105;case 59:return 111;case 60:return 53;case 61:return 67;case 62:return 52;case 63:return 20;case 64:return 106;case 65:return 126;case 66:return 82;case 67:return 82;case 68:return 82;case 69:return 81;case 70:return 81;case 71:return 81;case 72:return 59;case 73:return 60;case 74:return 61;case 75:return 62;case 76:return 63;case 77:return 64;case 78:return 65;case 79:return 69;case 80:return 70;case 81:return 55;case 82:return 56;case 83:return 109;case 84:return 112;case 85:return 127;case 86:return 124;case 87:return 113;case 88:return 125;case 89:return 125;case 90:return 114;case 91:return 73;case 92:return 92;case 93:return"SEP";case 94:return 91;case 95:return 66;case 96:return 75;case 97:return 74;case 98:return 77;case 99:return 76;case 100:return 122;case 101:return 123;case 102:return 68;case 103:return 57;case 104:return 58;case 105:return 40;case 106:return 41;case 107:return 71;case 108:return 72;case 109:return 133;case 110:return 21;case 111:return 22;case 112:return 23}},rules:[/^(?:%% \{ )/,/^(?:((?:(?! \} %%)[^:.])*))/,/^(?::)/,/^(?: \} %%)/,/^(?:((?:(?! \} %%).| \n )*))/,/^(?:%%(?! \{ )[^ \n ]*)/,/^(?:[^ \} ]%%[^ \n ]*)/,/^(?:accTitle \s *: \s *)/,/^(?:(?! \n ||)*[^ \n ]*)/,/^(?:accDescr \s *: \s *)/,/^(?:(?! \n ||)*[^ \n ]*)/,/^(?:accDescr \s * \{ \s *)/,/^(?:[ \} ])/,/^(?:[^ \} ]*)/,/^(?:["])/,/^(?:["])/,/^(?:[^"]*)/,/^(?:style \b )/,/^(?:default \b )/,/^(?:linkStyle \b )/,/^(?:interpolate \b )/,/^(?:classDef \b )/,/^(?:class \b )/,/^(?:href[ \s ]+["])/,/^(?:["])/,/^(?:[^"]*)/,/^(?:call[ \s ]+)/,/^(?: \( [ \s ]* \) )/,/^(?: \( )/,/^(?:[^(]*)/,/^
` ),i=0;i<n.length;i++)r.append("tspan").attr("xml:space","preserve").attr("dy","1em").attr("x","1").text(n[i]);return qn(r,e.labelStyle),r}function bO(t){for(var e="",r=!1,n,i=0;i<t.length;++i)if(n=t[i],r){switch(n){case"n":e+= `
` ;break;default:e+=n}r=!1}else n===" \\ "?r=!0:e+=n;return e}function N0(t,e,r){var n=e.label,i=t.append("g");e.labelType==="svg"?yO(i,e):typeof n!="string"||e.labelType==="html"?M0(i,e):mO(i,e);var s=i.node().getBBox(),a;switch(r){case"top":a=-e.height/2;break;case"bottom":a=e.height/2-s.height;break;default:a=-s.height/2}return i.attr("transform","translate("+-s.width/2+","+a+")"),i}var B0=function(t,e){var r=e.nodes().filter(function(s){return t3(e,s)}),n=t.selectAll("g.cluster").data(r,function(s){return s});Dn(n.exit(),e).style("opacity",0).remove();var i=n.enter().append("g").attr("class","cluster").attr("id",function(s){var a=e.node(s);return a.id}).style("opacity",0).each(function(s){var a=e.node(s),o=St(this);St(this).append("rect");var l=o.append("g").attr("class","label");N0(l,a,a.clusterLabelPos)});return n=n.merge(i),n=Dn(n,e).style("opacity",1),n.selectAll("rect").each(function(s){var a=e.node(s),o=St(this);qn(o,a.style)}),n};function _O(t){B0=t}let I0=function(t,e){var r=t.selectAll("g.edgeLabel").data(e.edges(),function(i){return e3(i)}).classed("update",!0);r.exit().remove(),r.enter().append("g").classed("edgeLabel",!0).style("opacity",0),r=t.selectAll("g.edgeLabel"),r.each(function(i){var s=St(this);s.select(".label").remove();var a=e.edge(i),o=N0(s,e.edge(i),0).classed("label",!0),l=o.node().getBBox();a.labelId&&o.attr("id",a.labelId),me(a,"width")||(a.width=l.width),me(a,"height")||(a.height=l.height)});var n;return r.exit?n=r.exit():n=r.selectAll(null),Dn(n,e).style("opacity",0).remove(),r};function xO(t){I0=t}function n3(t,e){return t.intersect(e)}var O0=function(t,e,r){var n=t.selectAll("g.edgePath").data(e.edges(),function(a){return e3(a)}).classed("update",!0),i=EO(n,e);CO(n,e);var s=n.merge!==void 0?n.merge(i):n;return Dn(s,e).style("opacity",1),s.each(function(a){var o=St(this),l=e.edge(a);l.elem=this,l.id&&o.attr("id",l.id),r3(o,l.class,(o.classed("update")?"update ":"")+"edgePath")}),s.selectAll("path.path").each(function(a){var o=e.edge(a);o.arrowheadId=ou("arrowhead");var l=St(this).attr("marker-end",function(){return"url("+kO(location.href,o.arrowheadId)+")"}).style("fill","none");Dn(l,e).attr("d",function(u){return wO(e,u)}),qn(l,o.style)}),s.selectAll("defs *").remove(),s.selectAll("defs").each(function(a){var o=e.edge(a),l=r[o.arrowhead];l(St(this),o.arrowheadId,o,"arrowhead")}),s};function vO(t){O0=t}function kO(t,e){var r=t.split("#")[0];return r+"#"+e}function wO(t,e){var r=t.edge(e),n=t.node(e.v),i=t.node(e.w),s=r.points.slice(1,r.points.length-1);return s.unshift(n3(n,s[0])),s.push(n3(i,s[s.length-1])),i3(r,s)}function i3(t,e){var r=(Js||S6.line)().x(function(n){return n.x}).y(function(n){return n.y});return(r.curve||r.interpolate)(t.curve),r(e)}function TO(t){var e=t.getBBox(),r=t.ownerSVGElement.getScreenCTM().inverse().multiply(t.getScreenCTM()).translate(e.width/2,e.height/2);return{x:r.e,y:r.f}}function EO(t,e){var r=t.enter().append("g").attr("class","edgePath").style("opacity",0);return r.append("path").attr("class","path").attr("d",function(n){var i=e.edge(n),s=e.node(n.v).elem,a=Ss(i.points.length).map(function(){return TO(s)});return i3(i,a)}),r.append("defs"),r}function CO(t,e){var r=t.exit();Dn(r,e).style("opacity",0).remove()}var R0=function(t,e,r){var n=e.nodes().filter(function(a){return!t3(e,a)}),i=t.selectAll("g.node").data(n,function(a){return a}).classed("update",!0);i.exit().remove(),i.enter().append("g").attr("class","node").style("opacity",0),i=t.selectAll("g.node"),i.each(function(a){var o=e.node(a),l=St(this);r3(l,o.class,(l.classed("update")?"update ":"")+"node"),l.select("g.label").remove();var u=l.append("g").attr("class","label"),d=N0(u,o),f=r[o.shape],p=No(d.node().getBBox(),"width","height");o.elem=this,o.id&&l.attr("id",o.id),o.labelId&&u.attr("id",o.labelId),me(o,"width")&&(p.width=o.width),me(o,"height")&&(p.height=o.height),p.width+=o.paddingLeft+o.paddingRight,p.height+=o.paddingTop+o.paddingBottom,u.attr("transform","translate("+(o.paddingLeft-o.paddingRight)/2+","+(o.paddingTop-o.paddingBottom)/2+")");var g=St(this);g.select(".label-container").r
` ),a.style===void 0&&(d.style=d.style||"stroke: #333; stroke-width: 1.5px;fill:none"),d.labelStyle=d.labelStyle.replace("color:","fill:"))),d.id=o,d.class=l+" "+u,d.minlen=a.length||1,e.setEdge(r.db.lookUpDomId(a.start),r.db.lookUpDomId(a.end),d,n)})},jO={setConf:qO,addVertices:_3,addEdges:x3,getClasses:function(t,e){B.info("Extracting classes"),e.db.clear();try{return e.parse(t),e.db.getClasses()}catch(r){return B.error(r),{}}},draw:function(t,e,r,n){B.info("Drawing flowchart"),n.db.clear();const{securityLevel:i,flowchart:s}= $ ();let a;i==="sandbox"&&(a=St("#i"+e));const o=St(i==="sandbox"?a.nodes()[0].contentDocument.body:"body"),l=i==="sandbox"?a.nodes()[0].contentDocument:document;try{n.parser.parse(t)}catch{B.debug("Parsing failed")}let u=n.db.getDirection();u===void 0&&(u="TD");const d=s.nodeSpacing||50,f=s.rankSpacing||50,p=new sr({multigraph:!0,compound:!0}).setGraph({rankdir:u,nodesep:d,ranksep:f,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}});let g;const b=n.db.getSubGraphs();for(let G=b.length-1;G>=0;G--)g=b[G],n.db.addVertex(g.id,g.title,"group",void 0,g.classes);const k=n.db.getVertices();B.warn("Get vertices",k);const T=n.db.getEdges();let L=0;for(L=b.length-1;L>=0;L--){g=b[L],hh("cluster").append("text");for(let G=0;G<g.nodes.length;G++)B.warn("Setting subgraph",g.nodes[G],n.db.lookUpDomId(g.nodes[G]),n.db.lookUpDomId(g.id)),p.setParent(n.db.lookUpDomId(g.nodes[G]),n.db.lookUpDomId(g.id))}_3(k,p,e,o,l,n),x3(T,p,n);const E=new PO;GO.addToRender(E),E.arrows().none=function(Y,W,N,D){const v=Y.append("marker").attr("id",W).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");qn(v,N[D+"Style"])},E.arrows().normal=function(Y,W){Y.append("marker").attr("id",W).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 I=o.select( ` [ id = "${e}" ] ` ),V=o.select("#"+e+" g");for(E(V,p),V.selectAll("g.node").attr("title",function(){return n.db.getTooltip(this.id)}),n.db.indexNodes("subGraph"+L),L=0;L<b.length;L++)if(g=b[L],g.title!=="undefined"){const G=l.querySelectorAll("#"+e+' [id="'+n.db.lookUpDomId(g.id)+'"] rect'),Y=l.querySelectorAll("#"+e+' [id="'+n.db.lookUpDomId(g.id)+'"]'),W=G[0].x.baseVal.value,N=G[0].y.baseVal.value,D=G[0].width.baseVal.value,v=St(Y[0]).select(".label");v.attr("transform", ` translate ( $ { W + D / 2 } , $ { N + 14 } ) ` ),v.attr("id",e+"Text");for(let M=0;M<g.classes.length;M++)Y[0].classList.add(g.classes[M])}if(!s.htmlLabels){const G=l.querySelectorAll('[id="'+e+'"] .edgeLabel .label');for(const Y of G){const W=Y.getBBox(),N=l.createElementNS("http://www.w3.org/2000/svg","rect");N.setAttribute("rx",0),N.setAttribute("ry",0),N.setAttribute("width",W.width),N.setAttribute("height",W.height),Y.insertBefore(N,Y.firstChild)}}Sc(p,I,s.diagramPadding,s.useMaxWidth),Object.keys(k).forEach(function(G){const Y=k[G];if(Y.link){const W=o.select("#"+e+' [id="'+n.db.lookUpDomId(G)+'"]');if(W){const N=l.createElementNS("http://www.w3.org/2000/svg","a");N.setAttributeNS("http://www.w3.org/2000/svg","class",Y.classes.join(" ")),N.setAttributeNS("http://www.w3.org/2000/svg","href",Y.link),N.setAttributeNS("http://www.w3.org/2000/svg","rel","noopener"),i==="sandbox"?N.setAttributeNS("http://www.w3.org/2000/svg","target","_top"):Y.linkTarget&&N.setAttributeNS("http://www.w3.org/2000/svg","target",Y.linkTarget);const D=W.insert(function(){return N},":first-child"),w=W.select(".label-container");w&&D.append(function(){return w.node()});const v=W.select(".label");v&&D.append(function(){return v.node()})}}})}},v3={}, $ O=function(t){const e=Object.keys(t);for(const r of e)v3[r]=t[r]},k3=function(t,e,r,n,i,s){const a=n.select( ` [ id = "${r}" ] ` );Object.keys(t).forEach(function(l){const u=t[l];let d="default";u.classes.length>0&&(d=u.class
` ),o.style===void 0&&(p.style=p.style||"stroke: #333; stroke-width: 1.5px;fill:none;"),p.labelStyle=p.labelStyle.replace("color:","fill:"),p.id=u,p.classes="flowchart-link "+d+" "+f,e.setEdge(o.start,o.end,p,n)})},Y0={setConf: $ O,addVertices:k3,addEdges:w3,getClasses:function(t,e){B.info("Extracting classes"),e.db.clear();try{return e.parse(t),e.db.getClasses()}catch{return}},draw:function(t,e,r,n){B.info("Drawing flowchart"),n.db.clear(),vi.setGen("gen-2"),n.parser.parse(t);let i=n.db.getDirection();i===void 0&&(i="TD");const{securityLevel:s,flowchart:a}= $ (),o=a.nodeSpacing||50,l=a.rankSpacing||50;let u;s==="sandbox"&&(u=St("#i"+e));const d=St(s==="sandbox"?u.nodes()[0].contentDocument.body:"body"),f=s==="sandbox"?u.nodes()[0].contentDocument:document,p=new sr({multigraph:!0,compound:!0}).setGraph({rankdir:i,nodesep:o,ranksep:l,marginx:0,marginy:0}).setDefaultEdgeLabel(function(){return{}});let g;const b=n.db.getSubGraphs();B.info("Subgraphs - ",b);for(let H=b.length-1;H>=0;H--)g=b[H],B.info("Subgraph - ",g),n.db.addVertex(g.id,g.title,"group",void 0,g.classes,g.dir);const k=n.db.getVertices(),T=n.db.getEdges();B.info(T);let L=0;for(L=b.length-1;L>=0;L--){g=b[L],hh("cluster").append("text");for(let H=0;H<g.nodes.length;H++)B.info("Setting up subgraphs",g.nodes[H],g.id),p.setParent(g.nodes[H],g.id)}k3(k,p,e,d,f,n),w3(T,p);const E=d.select( ` [ id = "${e}" ] ` ),I=d.select("#"+e+" g");if(v0(I,p,["point","circle","cross"],"flowchart",e),ge.insertTitle(E,"flowchartTitleText",a.titleTopMargin,n.db.getDiagramTitle()),Sc(p,E,a.diagramPadding,a.useMaxWidth),n.db.indexNodes("subGraph"+L),!a.htmlLabels){const H=f.querySelectorAll('[id="'+e+'"] .edgeLabel .label');for(const G of H){const Y=G.getBBox(),W=f.createElementNS("http://www.w3.org/2000/svg","rect");W.setAttribute("rx",0),W.setAttribute("ry",0),W.setAttribute("width",Y.width),W.setAttribute("height",Y.height),G.insertBefore(W,G.firstChild)}}Object.keys(k).forEach(function(H){const G=k[H];if(G.link){const Y=St("#"+e+' [id="'+H+'"]');if(Y){const W=f.createElementNS("http://www.w3.org/2000/svg","a");W.setAttributeNS("http://www.w3.org/2000/svg","class",G.classes.join(" ")),W.setAttributeNS("http://www.w3.org/2000/svg","href",G.link),W.setAttributeNS("http://www.w3.org/2000/svg","rel","noopener"),s==="sandbox"?W.setAttributeNS("http://www.w3.org/2000/svg","target","_top"):G.linkTarget&&W.setAttributeNS("http://www.w3.org/2000/svg","target",G.linkTarget);const N=Y.insert(function(){return W},":first-child"),D=Y.select(".label-container");D&&N.append(function(){return D.node()});const w=Y.select(".label");w&&N.append(function(){return w.node()})}}})}};var V0=function(){var t=function(W,N,D,w){for(D=D||{},w=W.length;w--;D[W[w]]=N);return D},e=[1,3],r=[1,5],n=[7,9,11,12,13,14,15,16,17,18,19,20,21,23,25,26,28,35,40],i=[1,15],s=[1,16],a=[1,17],o=[1,18],l=[1,19],u=[1,20],d=[1,21],f=[1,22],p=[1,23],g=[1,24],b=[1,25],k=[1,26],T=[1,27],L=[1,29],E=[1,31],I=[1,34],V=[5,7,9,11,12,13,14,15,16,17,18,19,20,21,23,25,26,28,35,40],H={trace:function(){},yy:{},symbols_:{error:2,start:3,directive:4,gantt:5,document:6,EOF:7,line:8,SPACE:9,statement:10,NL:11,dateFormat:12,inclusiveEndDates:13,topAxis:14,axisFormat:15,tickInterval:16,excludes:17,includes:18,todayMarker:19,title:20,acc_title:21,acc_title_value:22,acc_descr:23,acc_descr_value:24,acc_descr_multiline_value:25,section:26,clickStatement:27,taskTxt:28,taskData:29,openDirective:30,typeDirective:31,closeDirective:32,":":33,argDirective:34,click:35,callbackname:36,callbackargs:37,href:38,clickStatementDebug:39,open_directive:40,type_directive:41,arg_directive:42,close_directive:43, $ accept:0, $ end:1},terminals_:{2:"error",5:"gantt",7:"EOF",9:"SPACE",11:"NL",12:"dateFormat",13:"inclusiveEndDates",14:"topAxis",15:"axisFormat",16:"tickInterval",17:"excludes",18:"includes",19:"todayMarker",20:"title",21:"acc_title",22:"acc_title_value",23:"acc_descr",24:"acc_descr_value",25:"acc_descr_multiline_value",26:"section",28:"taskTxt",29:"taskData",33:":",35:"click",36:"callbackname",37:"callbackargs",38:"href",40:"open_directive",41:"type_directive",42:"arg_directi
` +rt.showPosition()+ `
Expecting ` +ht.join(", ")+", got '"+(this.terminals_[P]||P)+"'":U="Parse error on line "+(ct+1)+": Unexpected "+(P==j?"end of input":"'"+(this.terminals_[P]||P)+"'"),this.parseError(U,{text:rt.match,token:this.terminals_[P]||P,line:rt.yylineno,loc:_t,expected:ht})}if(X[0]instanceof Array&&X.length>1)throw new Error("Parse Error: multiple actions possible at state: "+z+", token: "+P);switch(X[0]){case 1:w.push(P),M.push(rt.yytext),m.push(rt.yylloc),w.push(X[1]),P=null,Dt=rt.yyleng,x=rt.yytext,ct=rt.yylineno,_t=rt.yylloc;break;case 2:if(J=this.productions_[X[1]][1],O. $ =M[M.length-J],O._ $ ={first_line:m[m.length-(J||1)].first_line,last_line:m[m.length-1].last_line,first_column:m[m.length-(J||1)].first_column,last_column:m[m.length-1].last_column},K&&(O._ $ .range=[m[m.length-(J||1)].range[0],m[m.length-1].range[1]]),F=this.performAction.apply(O,[x,Dt,ct,nt.yy,X[1],M,m].concat(ot)),typeof F<"u")return F;J&&(w=w.slice(0,-1*J*2),M=M.slice(0,-1*J),m=m.slice(0,-1*J)),w.push(this.productions_[X[1]][0]),M.push(O. $ ),m.push(O._ $ ),C=Q[w[w.length-2]][w[w.length-1]],w.push(C);break;case 3:return!0}}return!0}},G=function(){var W={EOF:1,parseError:function(D,w){if(this.yy.parser)this.yy.parser.parseError(D,w);else throw new Error(D)},setInput:function(N,D){return this.yy=D||this.yy||{},this._input=N,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 N=this._input[0];this.yytext+=N,this.yyleng++,this.offset++,this.match+=N,this.matched+=N;var D=N.match(/(?: \r \n ?| \n ).*/g);return D?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),N},unput:function(N){var D=N.length,w=N.split(/(?: \r \n ?| \n )/g);this._input=N+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-D),this.offset-=D;var v=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),w.length-1&&(this.yylineno-=w.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:w?(w.length===v.length?this.yylloc.first_column:0)+v[v.length-w.length].length-w[0].length:this.yylloc.first_column-D},this.options.ranges&&(this.yylloc.range=[M[0],M[0]+this.yyleng-D]),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(N){this.unput(this.match.slice(N))},pastInput:function(){var N=this.matched.substr(0,this.matched.length-this.match.length);return(N.length>20?"...":"")+N.substr(-20).replace(/ \n /g,"")},upcomingInput:function(){var N=this.match;return N.length<20&&(N+=this._input.substr(0,20-N.length)),(N.substr(0,20)+(N.length>20?"...":"")).replace(/ \n /g,"")},showPosition:function(){var N=this.pastInput(),D=new Array(N.length+1).join("-");return N+this.upcomingInput()+ `
` +D+"^"},test_match:function(N,D){var w,v,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))),v=N[0].match(/(?: \r \n ?| \n ).*/g),v&&(this.yylineno+=v.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:v?v[v.length-1].length-v[v.length-1].match(/ \r ? \n ?/)[0].length:this.yylloc.last_column+N[0].length},this.yytext+=N[0],this.match+=N[0],this.matches=N,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(N[0].length),this.matched+=N[0],w=this.performAction.call(this,this.yy,this,D,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),w)return w;if(this._backtrack){for(var m in M)this[m]=M[m];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var N,D,w,v;this._more||(this.yytext="",this.match="");for(var M=this._currentRules(),m=0;m<M.length;m++)if(w=this._input.match(this.rules[M[m]]),w&&(!D||w[0].length>D[0].length)){if(D=w,v=m,this.options.backtrack_lexer){if(N=this.test_match(w,M[m]),N!==!1)return N;if(this._backtrack){D=!1;continue}else return!1}else if(!this.options.flex)break}return D?(N=this.test_match(D,M[v]),N!==!1?N:!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 D=this.next();return D||this.lex()},begin:function(D){this.conditionStack.push(D)},popState:function(){var D=this.conditionStack.length-1;return D>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(D){return D=this.conditionStack.length-1-Math.abs(D||0),D>=0?this.conditionStack[D]:"INITIAL"},pushState:function(D){this.begin(D)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(D,w,v,M){switch(v){case 0:return this.begin("open_directive"),40;case 1:return this.begin("type_directive"),41;case 2:return this.popState(),this.begin("arg_directive"),33;case 3:return this.popState(),this.popState(),43;case 4:return 42;case 5:return this.begin("acc_title"),21;case 6:return this.popState(),"acc_title_value";case 7:return this.begin("acc_descr"),23;case 8:return this.popState(),"acc_descr_value";case 9:this.begin("acc_descr_multiline");break;case 10:this.popState();break;case 11:return"acc_descr_multiline_value";case 12:break;case 13:break;case 14:break;case 15:return 11;case 16:break;case 17:break;case 18:break;case 19:this.begin("href");break;case 20:this.popState();break;case 21:return 38;case 22:this.begin("callbackname");break;case 23:this.popState();break;case 24:this.popState(),this.begin("callbackargs");break;case 25:return 36;case 26:this.popState();break;case 27:return 37;case 28:this.begin("click");break;case 29:this.popState();break;case 30:return 35;case 31:return 5;case 32:return 12;case 33:return 13;case 34:return 14;case 35:return 15;case 36:return 16;case 37:return 18;case 38:return 17;case 39:return 19;case 40:return"date";case 41:return 20;case 42:return"accDescription";case 43:return 26;case 44:return 28;case 45:return 29;case 46:return 33;case 47:return 7;case 48:return"INVALID"}},rules:[/^(?:%% \{ )/i,/^(?:((?:(?! \} %%)[^:.])*))/i,/^(?::)/i,/^(?: \} %%)/i,/^(?:((?:(?! \} %%).| \n )*))/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,/^(?:%[^ \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,/^(?: \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:[10,11],inclusive:!1},acc_descr:{rules:[8],inclusive:!1},acc_title:{rules:[6],inclusive:!1},close_directive:{rules:[],inclusive:!1},arg_directive:{rules:[3,4],inclusive:!1},type_directive:{rules:[2,3],inclusive:!1},open_directive:{rules:[1],inclusive:!1},callbackargs:{rules:[26,27],inclusive:!1},callbackname:{rules:[23,24,25],inclusive:!1},href:{rules:[20,21],inclusive:!1},click:{rules:[29,30],inclusive:!1},INITIAL:{rules:[0,5,7,9,12,13,14,15,16,17,18,19,22,28,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48],inclusive:!0}}};return W}();H.lexer=G;function Y(){this.yy={}}return Y.prototype=H,H.Parser=Y,new Y}();V0.parser=V0;const XO=V0,KO=t=>t.match(/^ \s *gantt/)!==null;let $ n="",U0="",z0,W0="",Ho=[],Go=[],H0={},G0=[],wu=[],Aa="";const T3=["active","done","crit","milestone"];let q0=[],qo=!1,j0=!1, $ 0=0;const ZO=function(t,e,r){ze.parseDirective(this,t,e,r)},QO=function(){G0=[],wu=[],Aa="",q0=[],Tu=0,K0=void 0,Eu=void 0,hr=[], $ n="",U0="",z0=void 0,W0="",Ho=[],Go=[
` +I.showPosition()+ `
Expecting ` +ct.join(", ")+", got '"+(this.terminals_[N]||N)+"'":Dt="Parse error on line "+(b+1)+": Unexpected "+(N==L?"end of input":"'"+(this.terminals_[N]||N)+"'"),this.parseError(Dt,{text:I.match,token:this.terminals_[N]||N,line:I.yylineno,loc:G,expected:ct})}if(w[0]instanceof Array&&w.length>1)throw new Error("Parse Error: multiple actions possible at state: "+D+", token: "+N);switch(w[0]){case 1:l.push(N),d.push(I.yytext),f.push(I.yylloc),l.push(w[1]),N=null,k=I.yyleng,g=I.yytext,b=I.yylineno,G=I.yylloc;break;case 2:if(Q=this.productions_[w[1]][1],M. $ =d[d.length-Q],M._ $ ={first_line:f[f.length-(Q||1)].first_line,last_line:f[f.length-1].last_line,first_column:f[f.length-(Q||1)].first_column,last_column:f[f.length-1].last_column},Y&&(M._ $ .range=[f[f.length-(Q||1)].range[0],f[f.length-1].range[1]]),v=this.performAction.apply(M,[g,k,b,V.yy,w[1],d,f].concat(E)),typeof v<"u")return v;Q&&(l=l.slice(0,-1*Q*2),d=d.slice(0,-1*Q),f=f.slice(0,-1*Q)),l.push(this.productions_[w[1]][0]),d.push(M. $ ),f.push(M._ $ ),x=p[l[l.length-2]][l[l.length-1]],l.push(x);break;case 3:return!0}}return!0}},n=function(){var s={EOF:1,parseError:function(o,l){if(this.yy.parser)this.yy.parser.parseError(o,l);else throw new Error(o)},setInput:function(a,o){return this.yy=o||this.yy||{},this._input=a,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 a=this._input[0];this.yytext+=a,this.yyleng++,this.offset++,this.match+=a,this.matched+=a;var o=a.match(/(?: \r \n ?| \n ).*/g);return o?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),a},unput:function(a){var o=a.length,l=a.split(/(?: \r \n ?| \n )/g);this._input=a+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-o),this.offset-=o;var u=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),l.length-1&&(this.yylineno-=l.length-1);var d=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:l?(l.length===u.length?this.yylloc.first_column:0)+u[u.length-l.length].length-l[0].length:this.yylloc.first_column-o},this.options.ranges&&(this.yylloc.range=[d[0],d[0]+this.yyleng-o]),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(a){this.unput(this.match.slice(a))},pastInput:function(){var a=this.matched.substr(0,this.matched.length-this.match.length);return(a.length>20?"...":"")+a.substr(-20).replace(/ \n /g,"")},upcomingInput:function(){var a=this.match;return a.length<20&&(a+=this._input.substr(0,20-a.length)),(a.substr(0,20)+(a.length>20?"...":"")).replace(/ \n /g,"")},showPosition:function(){var a=this.pastInput(),o=new Array(a.length+1).join("-");return a+this.upcomingInput()+ `
` +o+"^"},test_match:function(a,o){var l,u,d;if(this.options.backtrack_lexer&&(d={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&&(d.yylloc.range=this.yylloc.range.slice(0))),u=a[0].match(/(?: \r \n ?| \n ).*/g),u&&(this.yylineno+=u.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:u?u[u.length-1].length-u[u.length-1].match(/ \r ? \n ?/)[0].length:this.yylloc.last_column+a[0].length},this.yytext+=a[0],this.match+=a[0],this.matches=a,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(a[0].length),this.matched+=a[0],l=this.performAction.call(this,this.yy,this,o,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),l)return l;if(this._backtrack){for(var f in d)this[f]=d[f];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var a,o,l,u;this._more||(this.yytext="",this.match="");for(var d=this._currentRules(),f=0;f<d.length;f++)if(l=this._input.match(this.rules[d[f]]),l&&(!o||l[0].length>o[0].length)){if(o=l,u=f,this.options.backtrack_lexer){if(a=this.test_match(l,d[f]),a!==!1)return a;if(this._backtrack){o=!1;continue}else return!1}else if(!this.options.flex)break}return o?(a=this.test_match(o,d[u]),a!==!1?a:!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 o=this.next();return o||this.lex()},begin:function(o){this.conditionStack.push(o)},popState:function(){var o=this.conditionStack.length-1;return o>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(o){return o=this.conditionStack.length-1-Math.abs(o||0),o>=0?this.conditionStack[o]:"INITIAL"},pushState:function(o){this.begin(o)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(o,l,u,d){switch(u){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 s}();r.lexer=n;function i(){this.yy={}}return i.prototype=r,r.Parser=i,new i}();Q0.parser=Q0;const AR=Q0;var I3="",O3=!1;const LR={setMessage:t=>{B.debug("Setting message to: "+t),I3=t},getMessage:()=>I3,setInfo:t=>{O3=t},getInfo:()=>O3,clear:vn},DR={draw:(t,e,r)=>{try{B.debug( ` Rendering info diagram
` +t);const n= $ ().securityLevel;let i;n==="sandbox"&&(i=St("#i"+e));const a=St(n==="sandbox"?i.nodes()[0].contentDocument.body:"body").select("#"+e);a.append("g").append("text").attr("x",100).attr("y",40).attr("class","version").attr("font-size","32px").style("text-anchor","middle").text("v "+r),a.attr("height",100),a.attr("width",400)}catch(n){B.error("Error while rendering info diagram"),B.error(n.message)}}},MR=t=>t.match(/^ \s *info/)!==null;var J0=function(){var t=function(G,Y,W,N){for(W=W||{},N=G.length;N--;W[G[N]]=Y);return W},e=[1,4],r=[1,5],n=[1,6],i=[1,7],s=[1,9],a=[1,11,13,15,17,19,20,26,27,28,29],o=[2,5],l=[1,6,11,13,15,17,19,20,26,27,28,29],u=[26,27,28],d=[2,8],f=[1,18],p=[1,19],g=[1,20],b=[1,21],k=[1,22],T=[1,23],L=[1,28],E=[6,26,27,28,29],I={trace:function(){},yy:{},symbols_:{error:2,start:3,eol:4,directive:5,PIE:6,document:7,showData:8,line:9,statement: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,openDirective:21,typeDirective:22,closeDirective:23,":":24,argDirective:25,NEWLINE:26,";":27,EOF:28,open_directive:29,type_directive:30,arg_directive:31,close_directive:32, $ accept:0, $ end:1},terminals_:{2:"error",6:"PIE",8:"showData",11:"txt",12:"value",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",24:":",26:"NEWLINE",27:";",28:"EOF",29:"open_directive",30:"type_directive",31:"arg_directive",32:"close_directive"},productions_:[0,[3,2],[3,2],[3,2],[3,3],[7,0],[7,2],[9,2],[10,0],[10,2],[10,2],[10,2],[10,2],[10,1],[10,1],[10,1],[5,3],[5,5],[4,1],[4,1],[4,1],[21,1],[22,1],[25,1],[23,1]],performAction:function(Y,W,N,D,w,v,M){var m=v.length-1;switch(w){case 4:D.setShowData(!0);break;case 7:this. $ =v[m-1];break;case 9:D.addSection(v[m-1],D.cleanupValue(v[m]));break;case 10:this. $ =v[m].trim(),D.setDiagramTitle(this. $ );break;case 11:this. $ =v[m].trim(),D.setAccTitle(this. $ );break;case 12:case 13:this. $ =v[m].trim(),D.setAccDescription(this. $ );break;case 14:D.addSection(v[m].substr(8)),this. $ =v[m].substr(8);break;case 21:D.parseDirective("%%{","open_directive");break;case 22:D.parseDirective(v[m],"type_directive");break;case 23:v[m]=v[m].trim().replace(/'/g,'"'),D.parseDirective(v[m],"arg_directive");break;case 24:D.parseDirective("}%%","close_directive","pie");break}},table:[{3:1,4:2,5:3,6:e,21:8,26:r,27:n,28:i,29:s},{1:[3]},{3:10,4:2,5:3,6:e,21:8,26:r,27:n,28:i,29:s},{3:11,4:2,5:3,6:e,21:8,26:r,27:n,28:i,29:s},t(a,o,{7:12,8:[1,13]}),t(l,[2,18]),t(l,[2,19]),t(l,[2,20]),{22:14,30:[1,15]},{30:[2,21]},{1:[2,1]},{1:[2,2]},t(u,d,{21:8,9:16,10:17,5:24,1:[2,3],11:f,13:p,15:g,17:b,19:k,20:T,29:s}),t(a,o,{7:25}),{23:26,24:[1,27],32:L},t([24,32],[2,22]),t(a,[2,6]),{4:29,26:r,27:n,28:i},{12:[1,30]},{14:[1,31]},{16:[1,32]},{18:[1,33]},t(u,[2,13]),t(u,[2,14]),t(u,[2,15]),t(u,d,{21:8,9:16,10:17,5:24,1:[2,4],11:f,13:p,15:g,17:b,19:k,20:T,29:s}),t(E,[2,16]),{25:34,31:[1,35]},t(E,[2,24]),t(a,[2,7]),t(u,[2,9]),t(u,[2,10]),t(u,[2,11]),t(u,[2,12]),{23:36,32:L},{32:[2,23]},t(E,[2,17])],defaultActions:{9:[2,21],10:[2,1],11:[2,2],35:[2,23]},parseError:function(Y,W){if(W.recoverable)this.trace(Y);else{var N=new Error(Y);throw N.hash=W,N}},parse:function(Y){var W=this,N=[0],D=[],w=[null],v=[],M=this.table,m="",Q=0,x=0,ct=2,Dt=1,kt=v.slice.call(arguments,1),j=Object.create(this.lexer),ot={yy:{}};for(var rt in this.yy)Object.prototype.hasOwnProperty.call(this.yy,rt)&&(ot.yy[rt]=this.yy[rt]);j.setInput(Y,ot.yy),ot.yy.lexer=j,ot.yy.parser=this,typeof j.yylloc>"u"&&(j.yylloc={});var nt=j.yylloc;v.push(nt);var ut=j.options&&j.options.ranges;typeof ot.yy.parseError=="function"?this.parseError=ot.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function _t(){var ht;return ht=D.pop()||j.lex()||Dt,typeof ht!="number"&&(ht instanceof Array&&(D=ht,ht=D.pop()),ht=W.symbols_[ht]||ht),ht}for(var K,Ot,P,z,X={},F,O,A,J;;){if(Ot=N[N.length-1],this.defaultActions[Ot]?P=this.defaultActions[Ot]:((K===null||typeof K>"u")&&(K=_t()),P=M[Ot]&&M[Ot][K]),typeof P
` +j.showPosition()+ `
Expecting ` +J.join(", ")+", got '"+(this.terminals_[K]||K)+"'":C="Parse error on line "+(Q+1)+": Unexpected "+(K==Dt?"end of input":"'"+(this.terminals_[K]||K)+"'"),this.parseError(C,{text:j.match,token:this.terminals_[K]||K,line:j.yylineno,loc:nt,expected:J})}if(P[0]instanceof Array&&P.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Ot+", token: "+K);switch(P[0]){case 1:N.push(K),w.push(j.yytext),v.push(j.yylloc),N.push(P[1]),K=null,x=j.yyleng,m=j.yytext,Q=j.yylineno,nt=j.yylloc;break;case 2:if(O=this.productions_[P[1]][1],X. $ =w[w.length-O],X._ $ ={first_line:v[v.length-(O||1)].first_line,last_line:v[v.length-1].last_line,first_column:v[v.length-(O||1)].first_column,last_column:v[v.length-1].last_column},ut&&(X._ $ .range=[v[v.length-(O||1)].range[0],v[v.length-1].range[1]]),z=this.performAction.apply(X,[m,x,Q,ot.yy,P[1],w,v].concat(kt)),typeof z<"u")return z;O&&(N=N.slice(0,-1*O*2),w=w.slice(0,-1*O),v=v.slice(0,-1*O)),N.push(this.productions_[P[1]][0]),w.push(X. $ ),v.push(X._ $ ),A=M[N[N.length-2]][N[N.length-1]],N.push(A);break;case 3:return!0}}return!0}},V=function(){var G={EOF:1,parseError:function(W,N){if(this.yy.parser)this.yy.parser.parseError(W,N);else throw new Error(W)},setInput:function(Y,W){return this.yy=W||this.yy||{},this._input=Y,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 Y=this._input[0];this.yytext+=Y,this.yyleng++,this.offset++,this.match+=Y,this.matched+=Y;var W=Y.match(/(?: \r \n ?| \n ).*/g);return W?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),Y},unput:function(Y){var W=Y.length,N=Y.split(/(?: \r \n ?| \n )/g);this._input=Y+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-W),this.offset-=W;var D=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),N.length-1&&(this.yylineno-=N.length-1);var w=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:N?(N.length===D.length?this.yylloc.first_column:0)+D[D.length-N.length].length-N[0].length:this.yylloc.first_column-W},this.options.ranges&&(this.yylloc.range=[w[0],w[0]+this.yyleng-W]),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(Y){this.unput(this.match.slice(Y))},pastInput:function(){var Y=this.matched.substr(0,this.matched.length-this.match.length);return(Y.length>20?"...":"")+Y.substr(-20).replace(/ \n /g,"")},upcomingInput:function(){var Y=this.match;return Y.length<20&&(Y+=this._input.substr(0,20-Y.length)),(Y.substr(0,20)+(Y.length>20?"...":"")).replace(/ \n /g,"")},showPosition:function(){var Y=this.pastInput(),W=new Array(Y.length+1).join("-");return Y+this.upcomingInput()+ `
` +W+"^"},test_match:function(Y,W){var N,D,w;if(this.options.backtrack_lexer&&(w={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&&(w.yylloc.range=this.yylloc.range.slice(0))),D=Y[0].match(/(?: \r \n ?| \n ).*/g),D&&(this.yylineno+=D.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:D?D[D.length-1].length-D[D.length-1].match(/ \r ? \n ?/)[0].length:this.yylloc.last_column+Y[0].length},this.yytext+=Y[0],this.match+=Y[0],this.matches=Y,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(Y[0].length),this.matched+=Y[0],N=this.performAction.call(this,this.yy,this,W,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),N)return N;if(this._backtrack){for(var v in w)this[v]=w[v];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var Y,W,N,D;this._more||(this.yytext="",this.match="");for(var w=this._currentRules(),v=0;v<w.length;v++)if(N=this._input.match(this.rules[w[v]]),N&&(!W||N[0].length>W[0].length)){if(W=N,D=v,this.options.backtrack_lexer){if(Y=this.test_match(N,w[v]),Y!==!1)return Y;if(this._backtrack){W=!1;continue}else return!1}else if(!this.options.flex)break}return W?(Y=this.test_match(W,w[D]),Y!==!1?Y:!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 W=this.next();return W||this.lex()},begin:function(W){this.conditionStack.push(W)},popState:function(){var W=this.conditionStack.length-1;return W>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(W){return W=this.conditionStack.length-1-Math.abs(W||0),W>=0?this.conditionStack[W]:"INITIAL"},pushState:function(W){this.begin(W)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(W,N,D,w){switch(D){case 0:return this.begin("open_directive"),29;case 1:return this.begin("type_directive"),30;case 2:return this.popState(),this.begin("arg_directive"),24;case 3:return this.popState(),this.popState(),32;case 4:return 31;case 5:break;case 6:break;case 7:return 26;case 8:break;case 9:break;case 10:return this.begin("title"),13;case 11:return this.popState(),"title_value";case 12:return this.begin("acc_title"),15;case 13:return this.popState(),"acc_title_value";case 14:return this.begin("acc_descr"),17;case 15:return this.popState(),"acc_descr_value";case 16:this.begin("acc_descr_multiline");break;case 17:this.popState();break;case 18:return"acc_descr_multiline_value";case 19:this.begin("string");break;case 20:this.popState();break;case 21:return"txt";case 22:return 6;case 23:return 8;case 24:return"value";case 25:return 28}},rules:[/^(?:%% \{ )/i,/^(?:((?:(?! \} %%)[^:.])*))/i,/^(?::)/i,/^(?: \} %%)/i,/^(?:((?:(?! \} %%).| \n )*))/i,/^(?:%%(?! \{ )[^ \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:[17,18],inclusive:!1},acc_descr:{rules:[15],inclusive:!1},acc_title:{rules:[13],inclusive:!1},close_directive:{rules:[],inclusive:!1},arg_directive:{rules:[3,4],inclusive:!1},type_directive:{rules:[2,3],inclusive:!1},open_directive:{rules:[1],inclusive:!1},title:{rules:[11],inclusive:!1},string:{rules:[20,21],inclusive:!1},INITIAL:{rules:[0,5,6,7,8,9,10,12,14,16,19,22,23,24,25],inclusive:!0}}};return G}();I.lexer=V;function H(){this.yy={}}return H.prototype=I,I.Parser=H,new H}();J0.parser=J0;const NR=J0,BR=t=>t.match(/^ \s *pie/)!==null||t.match(/^ \s *bar/)!==null;let Cu={},td=!1;const IR={parseDirective:function(t,e,r){ze.parseDirective(this,t,e,r)},getConfig:()=> $ ().pie,addSection:function(t,e){t=he.sanitizeText(t, $ ()),Cu[t]===void 0&&(Cu[t]=e,B.debug("Added new section :",t))},getSections:()=>Cu,cleanupValue:function(t){return t.substring(0,1)===":"&&(t=t.substring(1).trim()),Number(t.trim())},clear:function(){Cu={},td=!1,vn()},setAccTitle:nn,getAccTitle:kn,setDiagramTitle:hi,getDiagramTitle:di,setShowData:function(t){td=t},getShowData:function(){return td},getAccDescription:Tn,setAccDescription:wn};let Ti= $ (),Ei;const jo=450,OR={draw:(t,e,r,n)=>{try{Ti= $ (),B.debug( ` Rendering info diagram
` +t);const E= $ ().securityLevel;let I;E==="sandbox"&&(I=St("#i"+e));const V=St(E==="sandbox"?I.nodes()[0].contentDocument.body:"body"),H=E==="sandbox"?I.nodes()[0].contentDocument:document;n.db.clear(),n.parser.parse(t),B.debug("Parsed info diagram");const G=H.getElementById(e);Ei=G.parentElement.offsetWidth,Ei===void 0&&(Ei=1200),Ti.useWidth!==void 0&&(Ei=Ti.useWidth),Ti.pie.useWidth!==void 0&&(Ei=Ti.pie.useWidth);const Y=V.select("#"+e);xn(Y,jo,Ei,Ti.pie.useMaxWidth),G.setAttribute("viewBox","0 0 "+Ei+" "+jo);var i=40,s=18,a=4,o=Math.min(Ei,jo)/2-i,l=Y.append("g").attr("transform","translate("+Ei/2+","+jo/2+")"),u=n.db.getSections(),d=0;Object.keys(u).forEach(function(N){d+=u[N]});const W=Ti.themeVariables;var f=[W.pie1,W.pie2,W.pie3,W.pie4,W.pie5,W.pie6,W.pie7,W.pie8,W.pie9,W.pie10,W.pie11,W.pie12],p=Jf().range(f),g=Object.entries(u).map(function(N,D){return{order:D,name:N[0],value:N[1]}}),b=Tk().value(function(N){return N.value}).sort(function(N,D){return N.order-D.order}),k=b(g),T=jh().innerRadius(0).outerRadius(o);l.selectAll("mySlices").data(k).enter().append("path").attr("d",T).attr("fill",function(N){return p(N.data.name)}).attr("class","pieCircle"),l.selectAll("mySlices").data(k).enter().append("text").text(function(N){return(N.data.value/d*100).toFixed(0)+"%"}).attr("transform",function(N){return"translate("+T.centroid(N)+")"}).style("text-anchor","middle").attr("class","slice"),l.append("text").text(n.db.getDiagramTitle()).attr("x",0).attr("y",-(jo-50)/2).attr("class","pieTitleText");var L=l.selectAll(".legend").data(p.domain()).enter().append("g").attr("class","legend").attr("transform",function(N,D){const w=s+a,v=w*p.domain().length/2,M=12*s,m=D*w-v;return"translate("+M+","+m+")"});L.append("rect").attr("width",s).attr("height",s).style("fill",p).style("stroke",p),L.data(k).append("text").attr("x",s+a).attr("y",s-a).text(function(N){return n.db.getShowData()||Ti.showData||Ti.pie.showData?N.data.name+" ["+N.data.value+"]":N.data.name})}catch(E){B.error("Error while rendering info diagram"),B.error(E)}}};var ed=function(){var t=function(Ot,P,z,X){for(z=z||{},X=Ot.length;X--;z[Ot[X]]=P);return z},e=[1,3],r=[1,5],n=[1,6],i=[1,7],s=[1,8],a=[5,6,8,14,16,18,19,40,41,42,43,44,45,53,71,72],o=[1,22],l=[2,13],u=[1,26],d=[1,27],f=[1,28],p=[1,29],g=[1,30],b=[1,31],k=[1,24],T=[1,32],L=[1,33],E=[1,36],I=[71,72],V=[5,8,14,16,18,19,40,41,42,43,44,45,53,60,62,71,72],H=[1,56],G=[1,57],Y=[1,58],W=[1,59],N=[1,60],D=[1,61],w=[1,62],v=[62,63],M=[1,74],m=[1,70],Q=[1,71],x=[1,72],ct=[1,73],Dt=[1,75],kt=[1,79],j=[1,80],ot=[1,77],rt=[1,78],nt=[5,8,14,16,18,19,40,41,42,43,44,45,53,71,72],ut={trace:function(){},yy:{},symbols_:{error:2,start:3,directive:4,NEWLINE:5,RD:6,diagram:7,EOF:8,openDirective:9,typeDirective:10,closeDirective:11,":":12,argDirective:13,acc_title:14,acc_title_value:15,acc_descr:16,acc_descr_value:17,acc_descr_multiline_value:18,open_directive:19,type_directive:20,arg_directive:21,close_directive:22,requirementDef:23,elementDef:24,relationshipDef:25,requirementType:26,requirementName:27,STRUCT_START:28,requirementBody:29,ID:30,COLONSEP:31,id:32,TEXT:33,text:34,RISK:35,riskLevel:36,VERIFYMTHD:37,verifyType:38,STRUCT_STOP:39,REQUIREMENT:40,FUNCTIONAL_REQUIREMENT:41,INTERFACE_REQUIREMENT:42,PERFORMANCE_REQUIREMENT:43,PHYSICAL_REQUIREMENT:44,DESIGN_CONSTRAINT:45,LOW_RISK:46,MED_RISK:47,HIGH_RISK:48,VERIFY_ANALYSIS:49,VERIFY_DEMONSTRATION:50,VERIFY_INSPECTION:51,VERIFY_TEST:52,ELEMENT:53,elementName:54,elementBody:55,TYPE:56,type:57,DOCREF:58,ref:59,END_ARROW_L:60,relationship:61,LINE:62,END_ARROW_R:63,CONTAINS:64,COPIES:65,DERIVES:66,SATISFIES:67,VERIFIES:68,REFINES:69,TRACES:70,unqString:71,qString:72, $ accept:0, $ end:1},terminals_:{2:"error",5:"NEWLINE",6:"RD",8:"EOF",12:":",14:"acc_title",15:"acc_title_value",16:"acc_descr",17:"acc_descr_value",18:"acc_descr_multiline_value",19:"open_directive",20:"type_directive",21:"arg_directive",22:"close_directive",28:"STRUCT_START",30:"ID",31:"COLONSEP",33:"TEXT",35:"RISK",37:"VERIFYMTHD",39:"STRUCT_STOP",40:"REQUIREMENT",41:"FUNCTIONAL_REQUIREMENT",42:"INTERFACE_REQUIREMENT",43:
` +Tt.showPosition()+ `
Expecting ` +Ft.join(", ")+", got '"+(this.terminals_[le]||le)+"'":xt="Parse error on line "+(ht+1)+": Unexpected "+(le==et?"end of input":"'"+(this.terminals_[le]||le)+"'"),this.parseError(xt,{text:Tt.match,token:this.terminals_[le]||le,line:Tt.yylineno,loc:wt,expected:Ft})}if(jt[0]instanceof Array&&jt.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Xt+", token: "+le);switch(jt[0]){case 1:X.push(le),O.push(Tt.yytext),A.push(Tt.yylloc),X.push(jt[1]),le=null,U=Tt.yyleng,C=Tt.yytext,ht=Tt.yylineno,wt=Tt.yylloc;break;case 2:if(Ht=this.productions_[jt[1]][1],Gt. $ =O[O.length-Ht],Gt._ $ ={first_line:A[A.length-(Ht||1)].first_line,last_line:A[A.length-1].last_line,first_column:A[A.length-(Ht||1)].first_column,last_column:A[A.length-1].last_column},pt&&(Gt._ $ .range=[A[A.length-(Ht||1)].range[0],A[A.length-1].range[1]]),Kt=this.performAction.apply(Gt,[C,U,ht,gt.yy,jt[1],O,A].concat(Mt)),typeof Kt<"u")return Kt;Ht&&(X=X.slice(0,-1*Ht*2),O=O.slice(0,-1*Ht),A=A.slice(0,-1*Ht)),X.push(this.productions_[jt[1]][0]),O.push(Gt. $ ),A.push(Gt._ $ ),Vt=J[X[X.length-2]][X[X.length-1]],X.push(Vt);break;case 3:return!0}}return!0}},_t=function(){var Ot={EOF:1,parseError:function(z,X){if(this.yy.parser)this.yy.parser.parseError(z,X);else throw new Error(z)},setInput:function(P,z){return this.yy=z||this.yy||{},this._input=P,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 P=this._input[0];this.yytext+=P,this.yyleng++,this.offset++,this.match+=P,this.matched+=P;var z=P.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),P},unput:function(P){var z=P.length,X=P.split(/(?: \r \n ?| \n )/g);this._input=P+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-z),this.offset-=z;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),X.length-1&&(this.yylineno-=X.length-1);var O=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:X?(X.length===F.length?this.yylloc.first_column:0)+F[F.length-X.length].length-X[0].length:this.yylloc.first_column-z},this.options.ranges&&(this.yylloc.range=[O[0],O[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(P){this.unput(this.match.slice(P))},pastInput:function(){var P=this.matched.substr(0,this.matched.length-this.match.length);return(P.length>20?"...":"")+P.substr(-20).replace(/ \n /g,"")},upcomingInput:function(){var P=this.match;return P.length<20&&(P+=this._input.substr(0,20-P.length)),(P.substr(0,20)+(P.length>20?"...":"")).replace(/ \n /g,"")},showPosition:function(){var P=this.pastInput(),z=new Array(P.length+1).join("-");return P+this.upcomingInput()+ `
` +z+"^"},test_match:function(P,z){var X,F,O;if(this.options.backtrack_lexer&&(O={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&&(O.yylloc.range=this.yylloc.range.slice(0))),F=P[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+P[0].length},this.yytext+=P[0],this.match+=P[0],this.matches=P,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(P[0].length),this.matched+=P[0],X=this.performAction.call(this,this.yy,this,z,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),X)return X;if(this._backtrack){for(var A in O)this[A]=O[A];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var P,z,X,F;this._more||(this.yytext="",this.match="");for(var O=this._currentRules(),A=0;A<O.length;A++)if(X=this._input.match(this.rules[O[A]]),X&&(!z||X[0].length>z[0].length)){if(z=X,F=A,this.options.backtrack_lexer){if(P=this.test_match(X,O[A]),P!==!1)return P;if(this._backtrack){z=!1;continue}else return!1}else if(!this.options.flex)break}return z?(P=this.test_match(z,O[F]),P!==!1?P:!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,X,F,O){switch(F){case 0:return this.begin("open_directive"),19;case 1:return this.begin("type_directive"),20;case 2:return this.popState(),this.begin("arg_directive"),12;case 3:return this.popState(),this.popState(),22;case 4:return 21;case 5:return"title";case 6:return this.begin("acc_title"),14;case 7:return this.popState(),"acc_title_value";case 8:return this.begin("acc_descr"),16;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 5;case 14:break;case 15:break;case 16:break;case 17:return 8;case 18:return 6;case 19:return 28;case 20:return 39;case 21:return 31;case 22:return 30;case 23:return 33;case 24:return 35;case 25:return 37;case 26:return 40;case 27:return 41;case 28:return 42;case 29:return 43;case 30:return 44;case 31:return 45;case 32:return 46;case 33:return 47;case 34:return 48;case 35:return 49;case 36:return 50;case 37:return 51;case 38:return 52;case 39:return 53;case 40:return 64;case 41:return 65;case 42:return 66;case 43:return 67;case 44:return 68;case 45:return 69;case 46:return 70;case 47:return 56;case 48:return 58;case 49:return 60;case 50:return 63;case 51:return 62;case 52:this.begin("string");break;case 53:this.popState();break;case 54:return"qString";case 55:return X.yytext=X.yytext.trim(),71}},rules:[/^(?:%% \{ )/i,/^(?:((?:(?! \} %%)[^:.])*))/i,/^(?::)/i,/^(?: \} %%)/i,/^(?:((?:(?! \} %%).| \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,/^(?:( \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:[11,12],inclusive:!1},acc_descr:{rules:[9],inclusive:!1},acc_title:{rules:[7],inclusive:!1},close_directive:{rules:[],inclusive:!1},arg_directive:{rules:[3,4],inclusive:!1},type_directive:{rules:[2,3],inclusive:!1},open_directive:{rules:[1],inclusive:!1},unqString:{rules:[],inclusive:!1},token:{rules:[],inclusive:!1},string:{rules:[53,54],inclusive:!1},INITIAL:{rules:[0,5,6,8,10,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,48,49,50,51,52,55],inclusive:!0}}};return Ot}();ut.lexer=_t;function K(){this.yy={}}return K.prototype=ut,ut.Parser=K,new K}();ed.parser=ed;const RR=ed,FR=t=>t.match(/^ \s *requirement(Diagram)?/)!==null;let rd=[],Ur={}, $ o={},qi={},Xo={};const PR={RequirementType:{REQUIREMENT:"Requirement",FUNCTIONAL_REQUIREMENT:"Functional Requirement",INTERFACE_REQUIREMENT:"Interface Requirem
2022-11-07 06:36:17 +00:00
L$ { e . line _height } , $ { e . line _height / 2 }
M$ { e . line _height } , $ { e . line _height / 2 }
2023-01-09 05:03:48 +00:00
L0 , $ { e . line _height } ` ).attr("stroke-width",1)}};let qe={},F3=0;const P3=(t,e)=>t.insert("rect","#"+e).attr("class","req reqBox").attr("x",0).attr("y",0).attr("width",qe.rect_min_width+"px").attr("height",qe.rect_min_height+"px"),Y3=(t,e,r)=>{let n=qe.rect_min_width/2,i=t.append("text").attr("class","req reqLabel reqTitle").attr("id",e).attr("x",n).attr("y",qe.rect_padding).attr("dominant-baseline","hanging"),s=0;r.forEach(u=>{s==0?i.append("tspan").attr("text-anchor","middle").attr("x",qe.rect_min_width/2).attr("dy",0).text(u):i.append("tspan").attr("text-anchor","middle").attr("x",qe.rect_min_width/2).attr("dy",qe.line_height*.75).text(u),s++});let a=1.5*qe.rect_padding,o=s*qe.line_height*.75,l=a+o;return t.append("line").attr("class","req-title-line").attr("x1","0").attr("x2",qe.rect_min_width).attr("y1",l).attr("y2",l),{titleNode:i,y:l}},V3=(t,e,r,n)=>{let i=t.append("text").attr("class","req reqLabel").attr("id",e).attr("x",qe.rect_padding).attr("y",n).attr("dominant-baseline","hanging"),s=0;const a=30;let o=[];return r.forEach(l=>{let u=l.length;for(;u>a&&s<3;){let d=l.substring(0,a);l=l.substring(a,l.length),u=l.length,o[o.length]=d,s++}if(s==3){let d=o[o.length-1];o[o.length-1]=d.substring(0,d.length-4)+"..."}else o[o.length]=l;s=0}),o.forEach(l=>{i.append("tspan").attr("x",qe.rect_padding).attr("dy",qe.line_height).text(l)}),i},YR=(t,e,r,n)=>{const i=e.node().getTotalLength(),s=e.node().getPointAtLength(i*.5),a="rel"+F3;F3++;const l=t.append("text").attr("class","req relationshipLabel").attr("id",a).attr("x",s.x).attr("y",s.y).attr("text-anchor","middle").attr("dominant-baseline","middle").text(n).node().getBBox();t.insert("rect","#"+a).attr("class","req reqLabelBox").attr("x",s.x-l.width/2).attr("y",s.y-l.height/2).attr("width",l.width).attr("height",l.height).attr("fill","white").attr("fill-opacity","85%")},VR=function(t,e,r,n,i){const s=r.edge(Ma(e.src),Ma(e.dst)),a=Js().x(function(l){return l.x}).y(function(l){return l.y}),o=t.insert("path","#"+n).attr("class","er relationshipLine").attr("d",a(s.points)).attr("fill","none");e.type==i.db.Relationships.CONTAINS?o.attr("marker-start","url("+he.getUrl(qe.arrowMarkerAbsolute)+"#"+e.type+"_line_ending)"):(o.attr("stroke-dasharray","10,7"),o.attr("marker-end","url("+he.getUrl(qe.arrowMarkerAbsolute)+"#"+R3.ReqMarkers.ARROW+"_line_ending)")),YR(t,o,qe, ` << $ { e . type } >> ` )},UR=(t,e,r)=>{Object.keys(t).forEach(n=>{let i=t[n];n=Ma(n),B.info("Added new requirement: ",n);const s=r.append("g").attr("id",n),a="req-"+n,o=P3(s,a);let l=Y3(s,n+"_title",[ ` << $ { i . type } >> ` , ` $ { i . name } ` ]);V3(s,n+"_body",[ ` Id : $ { i . id } ` , ` Text : $ { i . text } ` , ` Risk : $ { i . risk } ` , ` Verification : $ { i . verifyMethod } ` ],l.y);const u=o.node().getBBox();e.setNode(n,{width:u.width,height:u.height,shape:"rect",id:n})})},zR=(t,e,r)=>{Object.keys(t).forEach(n=>{let i=t[n];const s=Ma(n),a=r.append("g").attr("id",s),o="element-"+s,l=P3(a,o);let u=Y3(a,o+"_title",["<<Element>>", ` $ { n } ` ]);V3(a,o+"_body",[ ` Type : $ { i . type || "Not Specified" } ` , ` Doc Ref : $ { i . docRef || "None" } ` ],u.y);const d=l.node().getBBox();e.setNode(s,{width:d.width,height:d.height,shape:"rect",id:s})})},WR=(t,e)=>(t.forEach(function(r){let n=Ma(r.src),i=Ma(r.dst);e.setEdge(n,i,{relationship:r})}),t),HR=function(t,e){e.nodes().forEach(function(r){r!==void 0&&e.node(r)!==void 0&&(t.select("#"+r),t.select("#"+r).attr("transform","translate("+(e.node(r).x-e.node(r).width/2)+","+(e.node(r).y-e.node(r).height/2)+" )"))})},Ma=t=>t.replace(/ \s /g,"").replace(/ \. /g,"_"),GR={draw:(t,e,r,n)=>{qe= $ ().requirement,n.db.clear(),n.parser.parse(t);const i=qe.securityLevel;let s;i==="sandbox"&&(s=St("#i"+e));const o=St(i==="sandbox"?s.nodes()[0].contentDocument.body:"body").select( ` [ id = '${e}' ] ` );R3.insertLineEndings(o,qe);const l=new sr({multigraph:!1,compound:!1,directed:!0}).setGraph({rankdir:qe.layoutDirection,marginx:20,marginy:20,nodesep:100,edgesep:100,ranksep:100}).setDefaultEdgeLabel(function(){return{}});let u=n.db.getRequirements(),d=n.db.getElements(),f=n.db.getRelationships();UR(u,l,o),zR(d,l,o),WR(f,l),Ea(l),HR(o,l),f.forEach(function(T){VR(o,T,l,e,n)});const p=qe.re
` +Tt.showPosition()+ `
Expecting ` +Ft.join(", ")+", got '"+(this.terminals_[le]||le)+"'":xt="Parse error on line "+(ht+1)+": Unexpected "+(le==et?"end of input":"'"+(this.terminals_[le]||le)+"'"),this.parseError(xt,{text:Tt.match,token:this.terminals_[le]||le,line:Tt.yylineno,loc:wt,expected:Ft})}if(jt[0]instanceof Array&&jt.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Xt+", token: "+le);switch(jt[0]){case 1:X.push(le),O.push(Tt.yytext),A.push(Tt.yylloc),X.push(jt[1]),le=null,U=Tt.yyleng,C=Tt.yytext,ht=Tt.yylineno,wt=Tt.yylloc;break;case 2:if(Ht=this.productions_[jt[1]][1],Gt. $ =O[O.length-Ht],Gt._ $ ={first_line:A[A.length-(Ht||1)].first_line,last_line:A[A.length-1].last_line,first_column:A[A.length-(Ht||1)].first_column,last_column:A[A.length-1].last_column},pt&&(Gt._ $ .range=[A[A.length-(Ht||1)].range[0],A[A.length-1].range[1]]),Kt=this.performAction.apply(Gt,[C,U,ht,gt.yy,jt[1],O,A].concat(Mt)),typeof Kt<"u")return Kt;Ht&&(X=X.slice(0,-1*Ht*2),O=O.slice(0,-1*Ht),A=A.slice(0,-1*Ht)),X.push(this.productions_[jt[1]][0]),O.push(Gt. $ ),A.push(Gt._ $ ),Vt=J[X[X.length-2]][X[X.length-1]],X.push(Vt);break;case 3:return!0}}return!0}},_t=function(){var Ot={EOF:1,parseError:function(z,X){if(this.yy.parser)this.yy.parser.parseError(z,X);else throw new Error(z)},setInput:function(P,z){return this.yy=z||this.yy||{},this._input=P,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 P=this._input[0];this.yytext+=P,this.yyleng++,this.offset++,this.match+=P,this.matched+=P;var z=P.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),P},unput:function(P){var z=P.length,X=P.split(/(?: \r \n ?| \n )/g);this._input=P+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-z),this.offset-=z;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),X.length-1&&(this.yylineno-=X.length-1);var O=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:X?(X.length===F.length?this.yylloc.first_column:0)+F[F.length-X.length].length-X[0].length:this.yylloc.first_column-z},this.options.ranges&&(this.yylloc.range=[O[0],O[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(P){this.unput(this.match.slice(P))},pastInput:function(){var P=this.matched.substr(0,this.matched.length-this.match.length);return(P.length>20?"...":"")+P.substr(-20).replace(/ \n /g,"")},upcomingInput:function(){var P=this.match;return P.length<20&&(P+=this._input.substr(0,20-P.length)),(P.substr(0,20)+(P.length>20?"...":"")).replace(/ \n /g,"")},showPosition:function(){var P=this.pastInput(),z=new Array(P.length+1).join("-");return P+this.upcomingInput()+ `
` +z+"^"},test_match:function(P,z){var X,F,O;if(this.options.backtrack_lexer&&(O={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&&(O.yylloc.range=this.yylloc.range.slice(0))),F=P[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+P[0].length},this.yytext+=P[0],this.match+=P[0],this.matches=P,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(P[0].length),this.matched+=P[0],X=this.performAction.call(this,this.yy,this,z,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),X)return X;if(this._backtrack){for(var A in O)this[A]=O[A];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var P,z,X,F;this._more||(this.yytext="",this.match="");for(var O=this._currentRules(),A=0;A<O.length;A++)if(X=this._input.match(this.rules[O[A]]),X&&(!z||X[0].length>z[0].length)){if(z=X,F=A,this.options.backtrack_lexer){if(P=this.test_match(X,O[A]),P!==!1)return P;if(this._backtrack){z=!1;continue}else return!1}else if(!this.options.flex)break}return z?(P=this.test_match(z,O[F]),P!==!1?P:!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,X,F,O){switch(F){case 0:return this.begin("open_directive"),79;case 1:return this.begin("type_directive"),80;case 2:return this.popState(),this.begin("arg_directive"),14;case 3:return this.popState(),this.popState(),82;case 4:return 81;case 5:return 5;case 6:break;case 7:break;case 8:break;case 9:break;case 10:break;case 11:return 23;case 12:return this.begin("ID"),16;case 13:return this.begin("ID"),20;case 14:return X.yytext=X.yytext.trim(),this.begin("ALIAS"),69;case 15:return this.popState(),this.popState(),this.begin("LINE"),18;case 16:return this.popState(),this.popState(),5;case 17:return this.begin("LINE"),39;case 18:return this.begin("LINE"),41;case 19:return this.begin("LINE"),42;case 20:return this.begin("LINE"),43;case 21:return this.begin("LINE"),52;case 22:return this.begin("LINE"),45;case 23:return this.begin("LINE"),51;case 24:return this.begin("LINE"),47;case 25:return this.begin("LINE"),50;case 26:return this.begin("LINE"),49;case 27:return this.popState(),19;case 28:return 40;case 29:return 64;case 30:return 65;case 31:return 58;case 32:return 59;case 33:return 60;case 34:return 61;case 35:return 56;case 36:return 53;case 37:return this.begin("ID"),25;case 38:return this.begin("ID"),26;case 39:return 32;case 40:return 33;case 41:return this.begin("acc_title"),34;case 42:return this.popState(),"acc_title_value";case 43:return this.begin("acc_descr"),36;case 44:return this.popState(),"acc_descr_value";case 45:this.begin("acc_descr_multiline");break;case 46:this.popState();break;case 47:return"acc_descr_multiline_value";case 48:return 7;case 49:return 22;case 50:return 24;case 51:return 63;case 52:return 5;case 53:return X.yytext=X.yytext.trim(),69;case 54:return 72;case 55:return 73;case 56:return 70;case 57:return 71;case 58:return 74;case 59:return 75;case 60:return 76;case 61:return 77;case 62:return 78;case 63:return 67;case 64:return 68;case 65:return 5;case 66:return"INVALID"}},rules:[/^(?:%% \{ )/i,/^(?:((?:(?! \} %%)[^:.])*))/i,/^(?::)/i,/^(?: \} %%)/i,/^(?:((?:(?! \} %%).| \n )*))/i,/^(?:[ \n ]+)/i,/^(?: \s +)/i,/^(?:((?! \n ) \s )+)/i,/^(?:#[^ \n ]*)/i,/^(?:%(?! \{ )[^ \n ]*)/i,/^(?:[^ \} ]%%[^ \n ]*)/i,/^(?:[0-9]+(?=[ \n ]+))/i,/^(?:participant \b )/i,/^(?:actor \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,/^(?: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:[46,47],inclusive:!1},acc_descr:{rules:[44],inclusive:!1},acc_title:{rules:[42],
` +J.showPosition()+ `
Expecting ` +Xt.join(", ")+", got '"+(this.terminals_[Mt]||Mt)+"'":jt="Parse error on line "+(z+1)+": Unexpected "+(Mt==O?"end of input":"'"+(this.terminals_[Mt]||Mt)+"'"),this.parseError(jt,{text:J.match,token:this.terminals_[Mt]||Mt,line:J.yylineno,loc:U,expected:Xt})}if(gt[0]instanceof Array&>.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Tt+", token: "+Mt);switch(gt[0]){case 1:nt.push(Mt),_t.push(J.yytext),K.push(J.yylloc),nt.push(gt[1]),Mt=null,X=J.yyleng,P=J.yytext,z=J.yylineno,U=J.yylloc;break;case 2:if(st=this.productions_[gt[1]][1],wt. $ =_t[_t.length-st],wt._ $ ={first_line:K[K.length-(st||1)].first_line,last_line:K[K.length-1].last_line,first_column:K[K.length-(st||1)].first_column,last_column:K[K.length-1].last_column},Yt&&(wt._ $ .range=[K[K.length-(st||1)].range[0],K[K.length-1].range[1]]),Et=this.performAction.apply(wt,[P,X,z,C.yy,gt[1],_t,K].concat(A)),typeof Et<"u")return Et;st&&(nt=nt.slice(0,-1*st*2),_t=_t.slice(0,-1*st),K=K.slice(0,-1*st)),nt.push(this.productions_[gt[1]][0]),_t.push(wt. $ ),K.push(wt._ $ ),le=Ot[nt[nt.length-2]][nt[nt.length-1]],nt.push(le);break;case 3:return!0}}return!0}},Dt=function(){var j={EOF:1,parseError:function(rt,nt){if(this.yy.parser)this.yy.parser.parseError(rt,nt);else throw new Error(rt)},setInput:function(ot,rt){return this.yy=rt||this.yy||{},this._input=ot,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 ot=this._input[0];this.yytext+=ot,this.yyleng++,this.offset++,this.match+=ot,this.matched+=ot;var rt=ot.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),ot},unput:function(ot){var rt=ot.length,nt=ot.split(/(?: \r \n ?| \n )/g);this._input=ot+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-rt),this.offset-=rt;var ut=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),nt.length-1&&(this.yylineno-=nt.length-1);var _t=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:nt?(nt.length===ut.length?this.yylloc.first_column:0)+ut[ut.length-nt.length].length-nt[0].length:this.yylloc.first_column-rt},this.options.ranges&&(this.yylloc.range=[_t[0],_t[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(ot){this.unput(this.match.slice(ot))},pastInput:function(){var ot=this.matched.substr(0,this.matched.length-this.match.length);return(ot.length>20?"...":"")+ot.substr(-20).replace(/ \n /g,"")},upcomingInput:function(){var ot=this.match;return ot.length<20&&(ot+=this._input.substr(0,20-ot.length)),(ot.substr(0,20)+(ot.length>20?"...":"")).replace(/ \n /g,"")},showPosition:function(){var ot=this.pastInput(),rt=new Array(ot.length+1).join("-");return ot+this.upcomingInput()+ `
` +rt+"^"},test_match:function(ot,rt){var nt,ut,_t;if(this.options.backtrack_lexer&&(_t={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&&(_t.yylloc.range=this.yylloc.range.slice(0))),ut=ot[0].match(/(?: \r \n ?| \n ).*/g),ut&&(this.yylineno+=ut.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:ut?ut[ut.length-1].length-ut[ut.length-1].match(/ \r ? \n ?/)[0].length:this.yylloc.last_column+ot[0].length},this.yytext+=ot[0],this.match+=ot[0],this.matches=ot,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(ot[0].length),this.matched+=ot[0],nt=this.performAction.call(this,this.yy,this,rt,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),nt)return nt;if(this._backtrack){for(var K in _t)this[K]=_t[K];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var ot,rt,nt,ut;this._more||(this.yytext="",this.match="");for(var _t=this._currentRules(),K=0;K<_t.length;K++)if(nt=this._input.match(this.rules[_t[K]]),nt&&(!rt||nt[0].length>rt[0].length)){if(rt=nt,ut=K,this.options.backtrack_lexer){if(ot=this.test_match(nt,_t[K]),ot!==!1)return ot;if(this._backtrack){rt=!1;continue}else return!1}else if(!this.options.flex)break}return rt?(ot=this.test_match(rt,_t[ut]),ot!==!1?ot:!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,nt,ut,_t){switch(ut){case 0:return 41;case 1:return 50;case 2:return 51;case 3:return 52;case 4:return 53;case 5:return this.begin("open_directive"),60;case 6:return this.begin("type_directive"),61;case 7:return this.popState(),this.begin("arg_directive"),48;case 8:return this.popState(),this.popState(),63;case 9:return 62;case 10:break;case 11:break;case 12:return 5;case 13:break;case 14:break;case 15:break;case 16:break;case 17:return this.pushState("SCALE"),17;case 18:return 18;case 19:this.popState();break;case 20:return this.begin("acc_title"),33;case 21:return this.popState(),"acc_title_value";case 22:return this.begin("acc_descr"),35;case 23:return this.popState(),"acc_descr_value";case 24:this.begin("acc_descr_multiline");break;case 25:this.popState();break;case 26:return"acc_descr_multiline_value";case 27:return this.pushState("CLASSDEF"),38;case 28:return this.popState(),this.pushState("CLASSDEFID"),"DEFAULT_CLASSDEF_ID";case 29:return this.popState(),this.pushState("CLASSDEFID"),39;case 30:return this.popState(),40;case 31:return this.pushState("CLASS"),42;case 32:return this.popState(),this.pushState("CLASS_STYLE"),43;case 33:return this.popState(),44;case 34:return this.pushState("SCALE"),17;case 35:return 18;case 36:this.popState();break;case 37:this.pushState("STATE");break;case 38:return this.popState(),nt.yytext=nt.yytext.slice(0,-8).trim(),25;case 39:return this.popState(),nt.yytext=nt.yytext.slice(0,-8).trim(),26;case 40:return this.popState(),nt.yytext=nt.yytext.slice(0,-10).trim(),27;case 41:return this.popState(),nt.yytext=nt.yytext.slice(0,-8).trim(),25;case 42:return this.popState(),nt.yytext=nt.yytext.slice(0,-8).trim(),26;case 43:return this.popState(),nt.yytext=nt.yytext.slice(0,-10).trim(),27;case 44:return 50;case 45:return 51;case 46:return 52;case 47:return 53;case 48:this.begin("STATE_STRING");break;case 49:return this.popState(),this.pushState("STATE_ID"),"AS";case 50:return this.popState(),"ID";case 51:this.popState();break;case 52:return"STATE_DESCR";case 53:return 19;case 54:this.popState();break;case 55:return this.popState(),this.pushState("struct"),20;case 56:break;case 57:return this.popState(),21;case 58:break;case 59:return this.begin("NOTE"),29;case 60:return this.popState(),this.pushState("NOTE_ID"),58;case 61:return this.popState(),this.pushState("NOTE_ID"),59;case 62:this.popState(),this.pushState("FLOATING_NOTE");break;case 63:return this.popState(),this.pushState("FLOATING_NOTE_ID"),"AS";case 64:break;case 65:return"NOTE_TEXT";case 66:return this.popState(),"ID";case 67:return this.popState(),this.pushState("NOTE_TEXT"),24;case 68:return this.popState(),nt.yytext=nt.yytext.substr(2).trim(),31;case 69:return this.popState(),nt.yytext=nt.yytext.slice(0,-8).trim(),31;case 70:return 7;case 71:return 7;case 72:return 16;case 73:return 56;case 74:return 24;case 75:return nt.yytext=nt.yytext.trim(),14;case 76:return 15;case 77:return 28;case 78:return 57;case 79:return 5;case 80: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,/^(?:%% \{ )/i,/^(?:((?:(?! \} %%)[^:.])*))/i,/^(?::)/i,/^(?: \} %%)/i,/^(?:((?:(?! \} %%).| \n )*))/i,/^(?:%%(?! \{ )[^ \n ]*)/i,/^(?:[^ \} ]%%[^ \n ]*)/i,/^(?:[ \n ]+)/i,/^(?:[ \s ]+)/i,/^(?:((?! \n
` +M.showPosition()+ `
Expecting ` +Ot.join(", ")+", got '"+(this.terminals_[kt]||kt)+"'":P="Parse error on line "+(W+1)+": Unexpected "+(kt==w?"end of input":"'"+(this.terminals_[kt]||kt)+"'"),this.parseError(P,{text:M.match,token:this.terminals_[kt]||kt,line:M.yylineno,loc:x,expected:Ot})}if(ot[0]instanceof Array&&ot.length>1)throw new Error("Parse Error: multiple actions possible at state: "+j+", token: "+kt);switch(ot[0]){case 1:E.push(kt),V.push(M.yytext),H.push(M.yylloc),E.push(ot[1]),kt=null,N=M.yyleng,Y=M.yytext,W=M.yylineno,x=M.yylloc;break;case 2:if(_t=this.productions_[ot[1]][1],nt. $ =V[V.length-_t],nt._ $ ={first_line:H[H.length-(_t||1)].first_line,last_line:H[H.length-1].last_line,first_column:H[H.length-(_t||1)].first_column,last_column:H[H.length-1].last_column},ct&&(nt._ $ .range=[H[H.length-(_t||1)].range[0],H[H.length-1].range[1]]),rt=this.performAction.apply(nt,[Y,N,W,m.yy,ot[1],V,H].concat(v)),typeof rt<"u")return rt;_t&&(E=E.slice(0,-1*_t*2),V=V.slice(0,-1*_t),H=H.slice(0,-1*_t)),E.push(this.productions_[ot[1]][0]),V.push(nt. $ ),H.push(nt._ $ ),K=G[E[E.length-2]][E[E.length-1]],E.push(K);break;case 3:return!0}}return!0}},g=function(){var k={EOF:1,parseError:function(L,E){if(this.yy.parser)this.yy.parser.parseError(L,E);else throw new Error(L)},setInput:function(T,L){return this.yy=L||this.yy||{},this._input=T,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 T=this._input[0];this.yytext+=T,this.yyleng++,this.offset++,this.match+=T,this.matched+=T;var L=T.match(/(?: \r \n ?| \n ).*/g);return L?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),T},unput:function(T){var L=T.length,E=T.split(/(?: \r \n ?| \n )/g);this._input=T+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-L),this.offset-=L;var I=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 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:E?(E.length===I.length?this.yylloc.first_column:0)+I[I.length-E.length].length-E[0].length:this.yylloc.first_column-L},this.options.ranges&&(this.yylloc.range=[V[0],V[0]+this.yyleng-L]),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(T){this.unput(this.match.slice(T))},pastInput:function(){var T=this.matched.substr(0,this.matched.length-this.match.length);return(T.length>20?"...":"")+T.substr(-20).replace(/ \n /g,"")},upcomingInput:function(){var T=this.match;return T.length<20&&(T+=this._input.substr(0,20-T.length)),(T.substr(0,20)+(T.length>20?"...":"")).replace(/ \n /g,"")},showPosition:function(){var T=this.pastInput(),L=new Array(T.length+1).join("-");return T+this.upcomingInput()+ `
` +L+"^"},test_match:function(T,L){var E,I,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))),I=T[0].match(/(?: \r \n ?| \n ).*/g),I&&(this.yylineno+=I.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:I?I[I.length-1].length-I[I.length-1].match(/ \r ? \n ?/)[0].length:this.yylloc.last_column+T[0].length},this.yytext+=T[0],this.match+=T[0],this.matches=T,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(T[0].length),this.matched+=T[0],E=this.performAction.call(this,this.yy,this,L,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),E)return E;if(this._backtrack){for(var H in V)this[H]=V[H];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var T,L,E,I;this._more||(this.yytext="",this.match="");for(var V=this._currentRules(),H=0;H<V.length;H++)if(E=this._input.match(this.rules[V[H]]),E&&(!L||E[0].length>L[0].length)){if(L=E,I=H,this.options.backtrack_lexer){if(T=this.test_match(E,V[H]),T!==!1)return T;if(this._backtrack){L=!1;continue}else return!1}else if(!this.options.flex)break}return L?(T=this.test_match(L,V[I]),T!==!1?T:!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 L=this.next();return L||this.lex()},begin:function(L){this.conditionStack.push(L)},popState:function(){var L=this.conditionStack.length-1;return L>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(L){return L=this.conditionStack.length-1-Math.abs(L||0),L>=0?this.conditionStack[L]:"INITIAL"},pushState:function(L){this.begin(L)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(L,E,I,V){switch(I){case 0:return this.begin("open_directive"),26;case 1:return this.begin("type_directive"),27;case 2:return this.popState(),this.begin("arg_directive"),15;case 3:return this.popState(),this.popState(),29;case 4:return 28;case 5:break;case 6:break;case 7:return 11;case 8:break;case 9:break;case 10:return 4;case 11:return 17;case 12:return this.begin("acc_title"),18;case 13:return this.popState(),"acc_title_value";case 14:return this.begin("acc_descr"),20;case 15:return this.popState(),"acc_descr_value";case 16:this.begin("acc_descr_multiline");break;case 17:this.popState();break;case 18:return"acc_descr_multiline_value";case 19:return 23;case 20:return 24;case 21:return 25;case 22:return 15;case 23:return 6;case 24:return"INVALID"}},rules:[/^(?:%% \{ )/i,/^(?:((?:(?! \} %%)[^:.])*))/i,/^(?::)/i,/^(?: \} %%)/i,/^(?:((?:(?! \} %%).| \n )*))/i,/^(?:%(?! \{ )[^ \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:{open_directive:{rules:[1],inclusive:!1},type_directive:{rules:[2,3],inclusive:!1},arg_directive:{rules:[3,4],inclusive:!1},acc_descr_multiline:{rules:[17,18],inclusive:!1},acc_descr:{rules:[15],inclusive:!1},acc_title:{rules:[13],inclusive:!1},INITIAL:{rules:[0,5,6,7,8,9,10,11,12,14,16,19,20,21,22,23,24],inclusive:!0}}};return k}();p.lexer=g;function b(){this.yy={}}return b.prototype=p,p.Parser=b,new b}();Ed.parser=Ed;const XP=Ed,KP=t=>t.match(/^ \s *journey/)!==null;let Fa="";const Cd=[],il=[],sl=[],ZP=function(t,e,r){ze.parseDirective(this,t,e,r)},QP=function(){Cd.length=0,il.length=0,Fa="",sl.length=0,vn()},JP=function(t){Fa=t,Cd.push(t)},tY=function(){return Cd},eY=function(){let t=B4();const e=100;let r=0;for(;!t&&r<e;)t=B4(),r++;return il.push(...sl),il},rY=function(){const t=[];return il.forEach(r=>{r.people&&t.push(...r.people)}),[...new Set(t)].sort()},nY=function(t,e){const r=e.substr(1).split(":");let n=0,i=[];r.length===1?(n=Number(r[0]),i=[]):(n=Number(r[0]),i=r[1].split(","));const s=i.map(o=>o.trim()),a={section:Fa,type:Fa,people:s,task:t,score:n};sl.push(a)},iY=function(t){const e={section:Fa,type:Fa,description:t,task:t,classes:[]};il.push(e)},B4=function(){const t=function(r){return sl[r].processed};let e=!0;for(const[r,n]of sl.entries())t(r),e=e&&n.processed;return e},I4={parseDirective:ZP,getConfig:()=> $ ().journey,clear:QP,setDiagramTitle:hi,getDiagramTitle:di,setAccTitle:nn,getAccTitle:kn,setAccDescription:wn,getAccDescription:Tn,addSection:JP,getSections:tY,getTasks:eY,addTask:nY,addTaskOrg:iY,getActors:function(){return rY()}},Pu=function(t,e){const r=t.append("rect");return r.attr("x",e.x),r.attr("y",e.y),r.attr("fill",e.fill),r.attr("stroke",e.stroke),r.attr("width",e.width),r.attr("height",e.height),r.attr("rx",e.rx),r.attr("ry",e.ry),e.class!==void 0&&r.attr("class",e.class),r},sY=function(t,e){const n=t.append("circle").attr("cx",e.cx).attr("cy",e.cy).attr("class","face").attr("r",15).attr("stroke-width",2).attr("overflow","visible"),i=t.append("g");i.append("circle").attr("cx",e.cx-15/3).attr("cy",e.cy-15/3).attr("r",1.5).attr("
` );const s= $ ().securityLevel;let a;s==="sandbox"&&(a=St("#i"+e));const o=St(s==="sandbox"?a.nodes()[0].contentDocument.body:"body");an.init();const l=o.select("#"+e);al.initGraphics(l);const u=n.db.getTasks(),d=n.db.getDiagramTitle(),f=n.db.getActors();for(const L in Si)delete Si[L];let p=0;f.forEach(L=>{Si[L]={color:i.actorColours[p%i.actorColours.length],position:p},p++}),dY(l),an.insert(0,0,Ns,Object.keys(Si).length*50),pY(l,u,0);const g=an.getBounds();d&&l.append("text").text(d).attr("x",Ns).attr("font-size","4ex").attr("font-weight","bold").attr("y",25);const b=g.stopy-g.starty+2*i.diagramMarginY,k=Ns+g.stopx+2*i.diagramMarginX;xn(l,b,k,i.useMaxWidth),l.append("line").attr("x1",Ns).attr("y1",i.height*4).attr("x2",k-Ns-4).attr("y2",i.height*4).attr("stroke-width",4).attr("stroke","black").attr("marker-end","url(#arrowhead)");const T=d?70:0;l.attr("viewBox", ` $ { g . startx } - 25 $ { k } $ { b + T } ` ),l.attr("preserveAspectRatio","xMinYMin meet"),l.attr("height",b+T+25)},an={data:{startx:void 0,stopx:void 0,starty:void 0,stopy:void 0},verticalPos:0,sequenceItems:[],init:function(){this.sequenceItems=[],this.data={startx:void 0,stopx:void 0,starty:void 0,stopy:void 0},this.verticalPos=0},updateVal:function(t,e,r,n){t[e]===void 0?t[e]=r:t[e]=n(r,t[e])},updateBounds:function(t,e,r,n){const i= $ ().journey,s=this;let a=0;function o(l){return function(d){a++;const f=s.sequenceItems.length-a+1;s.updateVal(d,"starty",e-f*i.boxMargin,Math.min),s.updateVal(d,"stopy",n+f*i.boxMargin,Math.max),s.updateVal(an.data,"startx",t-f*i.boxMargin,Math.min),s.updateVal(an.data,"stopx",r+f*i.boxMargin,Math.max),l!=="activation"&&(s.updateVal(d,"startx",t-f*i.boxMargin,Math.min),s.updateVal(d,"stopx",r+f*i.boxMargin,Math.max),s.updateVal(an.data,"starty",e-f*i.boxMargin,Math.min),s.updateVal(an.data,"stopy",n+f*i.boxMargin,Math.max))}}this.sequenceItems.forEach(o())},insert:function(t,e,r,n){const i=Math.min(t,r),s=Math.max(t,r),a=Math.min(e,n),o=Math.max(e,n);this.updateVal(an.data,"startx",i,Math.min),this.updateVal(an.data,"starty",a,Math.min),this.updateVal(an.data,"stopx",s,Math.max),this.updateVal(an.data,"stopy",o,Math.max),this.updateBounds(i,a,s,o)},bumpVerticalPos:function(t){this.verticalPos=this.verticalPos+t,this.data.stopy=this.verticalPos},getVerticalPos:function(){return this.verticalPos},getBounds:function(){return this.data}},Ad=Yu.sectionFills,Y4=Yu.sectionColours,pY=function(t,e,r){const n= $ ().journey;let i="";const s=n.height*2+n.diagramMarginY,a=r+s;let o=0,l="#CCC",u="black",d=0;for(const[f,p]of e.entries()){if(i!==p.section){l=Ad[o%Ad.length],d=o%Ad.length,u=Y4[o%Y4.length];const b={x:f*n.taskMargin+f*n.width+Ns,y:50,text:p.section,fill:l,num:d,colour:u};al.drawSection(t,b,n),i=p.section,o++}const g=p.people.reduce((b,k)=>(Si[k]&&(b[k]=Si[k]),b),{});p.x=f*n.taskMargin+f*n.width+Ns,p.y=a,p.width=n.diagramMarginX,p.height=n.diagramMarginY,p.colour=u,p.fill=l,p.num=d,p.actors=g,al.drawTask(t,p,n),an.insert(p.x,p.y,p.x+p.width+n.taskMargin,300+5*30)}},V4={setConf:hY,draw:fY};let U4={};const Ld={setConf:function(t){U4={...U4,...t}},draw:(t,e,r)=>{try{B.debug( ` Renering svg for syntax error
` );const n=St("#"+e),i=n.append("g");i.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"),i.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"),i.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"),i.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"),i.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"),i.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"),i.append("text").attr("class","error-text").attr("x",1440).attr("y",250).attr("font-size","150px").style("text-anchor","middle").text("Syntax error in graph"),i.append("text").attr("class","error-text").attr("x",1250).attr("y",400).attr("font-size","100px").style("text-anchor","middle").text("mermaid version "+r),n.attr("height",100),n.attr("width",500),n.attr("viewBox","768 0 912 512")}catch(n){B.error("Error while rendering info diagram"),B.error(UT(n))}}};let z4=!1;const ol=()=>{z4||(z4=!0,yr("error",{db:{clear:()=>{}},styles:eg,renderer:Ld,parser:{parser:{yy:{}},parse:()=>{}},init:()=>{}},t=>t.toLowerCase().trim()==="error"),yr("c4",{parser:HE,db:xg,renderer:Lg,styles:lg,init:t=>{Lg.setConf(t.c4)}},GE),yr("class",{parser:Dg,db:fa,renderer:dB,styles:go,init:t=>{t.class||(t.class={}),t.class.arrowMarkerAbsolute=t.arrowMarkerAbsolute,fa.clear()}},MC),yr("classDiagram",{parser:Dg,db:fa,renderer:uI,styles:go,init:t=>{t.class||(t.class={}),t.class.arrowMarkerAbsolute=t.arrowMarkerAbsolute,fa.clear()}},NC),yr("er",{parser:hI,db:yI,renderer:DI,styles:tg},dI),yr("gantt",{parser:XO,db:Z0,renderer:SR,styles:rg},KO),yr("info",{parser:AR,db:LR,renderer:DR,styles:ng},MR),yr("pie",{parser:NR,db:IR,renderer:OR,styles:ig},BR),yr("requirement",{parser:RR,db:PR,renderer:GR,styles:sg},FR),yr("sequence",{parser:qR,db:j3,renderer:i4,styles:ag,init:t=>{if(t.sequence||(t.sequence={}),t.sequence.arrowMarkerAbsolute=t.arrowMarkerAbsolute,"sequenceDiagram"in t)throw new Error(" ` mermaid config . sequenceDiagram ` has been renamed to ` config . sequence ` . Please update your mermaid config.");j3.setWrap(t.wrap),i4.setConf(t.sequence)}},jR),yr("state",{parser:s4,db:Ci,renderer:LP,styles:Lc,init:t=>{t.state||(t.state={}),t.state.arrowMarkerAbsolute=t.arrowMarkerAbsolute,Ci.clear()}},UF),yr("stateDiagram",{parser:s4,db:Ci,renderer: $ P,styles:Lc,init:t=>{t.state||(t.state={}),t.state.arrowMarkerAbsolute=t.arrowMarkerAbsolute,Ci.clear()}},zF),yr("journey",{parser:XP,db:I4,renderer:V4,styles:og,init:t=>{V4.setConf(t.journey),I4.clear()}},KP),yr("flowchart",{parser:jm,db:vi,renderer:Y0,styles:Ac,init:t=>{t.flowchart||(t.flowchart={}),t.flowchart.arrowMarkerAbsolute=t.arrowMarkerAbsolute,jO.setConf(t.flowchart),vi.clear(),vi.setGen("gen-1")}},MI),yr("flowchart-v2",{parser:jm,db:vi,renderer:Y0,styles:Ac,init:t=>{t.flowchart||(t.flowchart={}),t.flo
` ,this.parse(this.txt,r)}parse(e,r){var n,i;if(this.detectTypeFailed)return!1;try{return e=e+ `
` ,(i=(n=this.db).clear)==null||i.call(n),this.parser.parse(e),!0}catch(s){this.handleError(s,r)}return!1}handleError(e,r){if(r===void 0)throw e;if(m1(e)){r(e.str,e.hash);return}r(e)}getParser(){return this.parser}getType(){return this.type}}const Md=(t,e)=>{const r=h1(t, $ ());try{ug(r)}catch{const i=k7(r);if(!i)throw new Error( ` Diagram $ { r } not found . ` );return i().then(({diagram:s})=>(yr(r,s,void 0),new Dd(t,e)))}return new Dd(t,e)},Nd=Dd;function gY(t,e){wa(e)||t.attr("aria-roledescription",e)}function yY(t,e,r,n){if(t.insert!==void 0)if(e||r){if(r){const i="chart-desc-"+n;t.attr("aria-describedby",i),t.insert("desc",":first-child").attr("id",i).text(r)}if(e){const i="chart-title-"+n;t.attr("aria-labelledby",i),t.insert("title",":first-child").attr("id",i).text(e)}}else return}const Bd=["graph","flowchart","flowchart-v2","stateDiagram","stateDiagram-v2"],W4="graph TB;a[Maximum text size in diagram exceeded];style a fill:#faa",H4="sandbox",G4="loose",mY="http://www.w3.org/2000/svg",q4="http://www.w3.org/1999/xlink",j4="http://www.w3.org/1999/xhtml",bY="100%",_Y="100%",xY="border:0;margin:0;",vY="margin:0",kY="allow-top-navigation-by-user-activation allow-popups",wY='The "iframe" tag is not supported by your browser.', $ 4=["foreignobject"],X4=["dominant-baseline"];function TY(t,e){return ol(),new Nd(t,e).parse(t,e)}async function EY(t,e){return ol(),(await Md(t,e)).parse(t,e)}const K4=function(t){let e=t;return e=e.replace(/style.*: \S *#.*;/g,function(r){return r.substring(0,r.length-1)}),e=e.replace(/classDef.*: \S *#.*;/g,function(r){return r.substring(0,r.length-1)}),e=e.replace(/# \w +;/g,function(r){const n=r.substring(1,r.length-1);return/^ \+ ? \d + $ /.test(n)?" \u FB02 \x B0 \x B0"+n+" \x B6 \x DF":" \u FB02 \x B0"+n+" \x B6 \x DF"}),e},Id=function(t){let e=t;return e=e.replace(/fl°°/g,"&#"),e=e.replace(/fl°/g,"&"),e=e.replace(/¶ß/g,";"),e},Z4=(t,e,r=[])=> `
. $ { t } $ { e } { $ { r . join ( " !important; " ) } ! important ; } ` ,CY=(t,e,r={})=>{var i;let n="";if(t.themeCSS!==void 0&&(n+= `
$ { t . themeCSS } ` ),t.fontFamily!==void 0&&(n+= `
: root { -- mermaid - font - family : $ { t . fontFamily } } ` ),t.altFontFamily!==void 0&&(n+= `
: root { -- mermaid - alt - font - family : $ { t . altFontFamily } } ` ),!wa(r)&&Bd.includes(e)){const l=t.htmlLabels||((i=t.flowchart)==null?void 0:i.htmlLabels)?["> *","span"]:["rect","polygon","ellipse","circle","path"];for(const u in r){const d=r[u];wa(d.styles)||l.forEach(f=>{n+=Z4(d.id,f,d.styles)}),wa(d.textStyles)||(n+=Z4(d.id,"tspan",d.textStyles))}}return n},Q4=(t,e,r,n)=>{const i=CY(t,e,r),s=hE(e,i,t.themeVariables);return T1(tE( ` $ { n } { $ { s } } ` ),rE)},J4=(t="",e,r)=>{let n=t;return!r&&!e&&(n=n.replace(/marker-end="url \( .*?#/g,'marker-end="url(#')),n=Id(n),n=n.replace(/<br>/g,"<br/>"),n},tb=(t="",e)=>{const r=e?e.viewBox.baseVal.height+"px":_Y,n=btoa('<body style="'+vY+'">'+t+"</body>");return ` < iframe style = "width:${bY};height:${r};${xY}" src = "data:text/html;base64,${n}" sandbox = "${kY}" >
$ { wY }
< /iframe>`},Vu=(t,e,r,n,i)=>{const s=t.append("div");s.attr("id",r),n&&s.attr("style",n);const a=s.append("svg").attr("id",e).attr("width","100%").attr("xmlns",mY);return i&&a.attr("xmlns:xlink",i),a.append("g"),t};function Uu(t,e){return t.append("iframe").attr("id",e).attr("style","width: 100%; height: 100%;").attr("sandbox","")}const eb=(t,e,r,n)=>{var i,s,a;(i=t.getElementById(e))==null||i.remove(),(s=t.getElementById(r))==null||s.remove(),(a=t.getElementById(n))==null||a.remove()},SY=function(t,e,r,n){var m,Q,x,ct,Dt;ol(),po();const i=ge.detectInit(e);i&&(bs(i),E1(i));const s=$();B.debug(s),e.length>((m=s==null?void 0:s.maxTextSize)!=null?m:5e4)&&(e=W4),e=e.replace(/ \ r \ n ? / g , `
` );const a="#"+t,o="i"+t,l="#"+o,u="d"+t,d="#"+u;let f=St("body");const p=s.securityLevel===H4,g=s.securityLevel===G4,b=s.fontFamily;if(n!==void 0){if(n&&(n.innerHTML=""),p){const kt=Uu(St(n),o);f=St(kt.nodes()[0].contentDocument.body),f.node().style.margin=0}else f=St(n);Vu(f,t,u, ` font - family : $ { b } ` ,q4)}else{if(eb(document,t,u,o),p){const kt=Uu(St("body"),o);f=St(kt.nodes()[0].contentDocument.body),f.node().style.margin=0}else f=St("body");Vu(f,t,u)}e=K4(e);let k,T;try{if(k=Md(e),"then"in k)throw new Error("Diagram is a promise. Use renderAsync.")}catch(kt){k=new Nd("error"),T=kt}const L=f.select(d).node(),E=k.type,I=L.firstChild,V=I.firstChild,H=Bd.includes(E)?k.renderer.getClasses(e,k):{},G=Q4(s,E,H,a),Y=document.createElement("style");Y.innerHTML=G,I.insertBefore(Y,V);try{k.renderer.draw(e,t,Ec.version,k)}catch(kt){throw Ld.draw(e,t,Ec.version),kt}const W=f.select( ` $ { d } svg ` ),N=(x=(Q=k.db).getAccTitle)==null?void 0:x.call(Q),D=(Dt=(ct=k.db).getAccDescription)==null?void 0:Dt.call(ct);rb(E,W,N,D),f.select( ` [ id = "${t}" ] ` ).selectAll("foreignobject > *").attr("xmlns",j4);let w=f.select(d).node().innerHTML;if(B.debug("config.arrowMarkerAbsolute",s.arrowMarkerAbsolute),w=J4(w,p,pr(s.arrowMarkerAbsolute)),p){const kt=f.select(d+" svg").node();w=tb(w,kt)}else g||(w=io.sanitize(w,{ADD_TAGS: $ 4,ADD_ATTR:X4}));if(r!==void 0)switch(E){case"flowchart":case"flowchart-v2":r(w,vi.bindFunctions);break;case"gantt":r(w,Z0.bindFunctions);break;case"class":case"classDiagram":r(w,fa.bindFunctions);break;default:r(w)}else B.debug("CB = undefined!"); $ 3();const M=St(p?l:d).node();if(M&&"remove"in M&&M.remove(),T)throw T;return w},AY=async function(t,e,r,n){var m,Q,x,ct,Dt;ol(),po();const i=ge.detectInit(e);i&&(bs(i),E1(i));const s= $ ();B.debug(s),e.length>((m=s==null?void 0:s.maxTextSize)!=null?m:5e4)&&(e=W4),e=e.replace(/ \r \n ?/g, `
` );const a="#"+t,o="i"+t,l="#"+o,u="d"+t,d="#"+u;let f=St("body");const p=s.securityLevel===H4,g=s.securityLevel===G4,b=s.fontFamily;if(n!==void 0){if(n&&(n.innerHTML=""),p){const kt=Uu(St(n),o);f=St(kt.nodes()[0].contentDocument.body),f.node().style.margin=0}else f=St(n);Vu(f,t,u, ` font - family : $ { b } ` ,q4)}else{if(eb(document,t,u,o),p){const kt=Uu(St("body"),o);f=St(kt.nodes()[0].contentDocument.body),f.node().style.margin=0}else f=St("body");Vu(f,t,u)}e=K4(e);let k,T;try{k=await Md(e)}catch(kt){k=new Nd("error"),T=kt}const L=f.select(d).node(),E=k.type,I=L.firstChild,V=I.firstChild,H=Bd.includes(E)?k.renderer.getClasses(e,k):{},G=Q4(s,E,H,a),Y=document.createElement("style");Y.innerHTML=G,I.insertBefore(Y,V);try{await k.renderer.draw(e,t,Ec.version,k)}catch(kt){throw Ld.draw(e,t,Ec.version),kt}const W=f.select( ` $ { d } svg ` ),N=(x=(Q=k.db).getAccTitle)==null?void 0:x.call(Q),D=(Dt=(ct=k.db).getAccDescription)==null?void 0:Dt.call(ct);rb(E,W,N,D),f.select( ` [ id = "${t}" ] ` ).selectAll("foreignobject > *").attr("xmlns",j4);let w=f.select(d).node().innerHTML;if(B.debug("config.arrowMarkerAbsolute",s.arrowMarkerAbsolute),w=J4(w,p,pr(s.arrowMarkerAbsolute)),p){const kt=f.select(d+" svg").node();w=tb(w,kt)}else g||(w=io.sanitize(w,{ADD_TAGS: $ 4,ADD_ATTR:X4}));if(r!==void 0)switch(E){case"flowchart":case"flowchart-v2":r(w,vi.bindFunctions);break;case"gantt":r(w,Z0.bindFunctions);break;case"class":case"classDiagram":r(w,fa.bindFunctions);break;default:r(w)}else B.debug("CB = undefined!"); $ 3();const M=St(p?l:d).node();if(M&&"remove"in M&&M.remove(),T)throw T;return w};let Bs={};const LY=function(t,e,r,n){try{if(e!==void 0)switch(e=e.trim(),r){case"open_directive":Bs={};break;case"type_directive":if(!Bs)throw new Error("currentDirective is undefined");Bs.type=e.toLowerCase();break;case"arg_directive":if(!Bs)throw new Error("currentDirective is undefined");Bs.args=JSON.parse(e);break;case"close_directive":DY(t,Bs,n),Bs=void 0;break}}catch(i){B.error( ` Error while rendering sequenceDiagram directive : $ { e } jison context : $ { r } ` ),B.error(i.message)}},DY=function(t,e,r){switch(B.debug( ` Directive type = $ { e . type } with args : ` ,e.args),e.type){case"init":case"initialize":{["config"].forEach(n=>{e.args[n]!==void 0&&(r==="flowchart-v2"&&(r="flowchart"),e.args[r]=e.args[n],delete e.args[n])}),B.debug("sanitize in handleDirective",e.args),bs(e.args),B.debug("sanitize in handleDirective (done)",e.args),E1(e.args);break}case"wrap":case"nowrap":t&&t.setWrap&&t.setWrap(e.type==="wrap");break;case"themeCss":B.warn("themeCss encountered");break;default:B.warn( ` Unhandled directive : source : ' % % { $ { e . type } : $ { JSON . stringify ( e . args ? e . args : { } ) } } % % ` ,e);break}};function MY(t={}){var r;(t==null?void 0:t.fontFamily)&&!((r=t.themeVariables)!=null&&r.fontFamily)&&(t.themeVariables={fontFamily:t.fontFamily}),iE(t),(t==null?void 0:t.theme)&&t.theme in oi?t.themeVariables=oi[t.theme].getThemeVariables(t.themeVariables):t&&(t.themeVariables=oi.default.getThemeVariables(t.themeVariables));const e=typeof t=="object"?nE(t): $ p();Qu(e.logLevel),ol()}function rb(t,e,r,n){gY(e,t),yY(e,r,n,e.attr("id"))}const ze=Object.freeze({render:SY,renderAsync:AY,parse:TY,parseAsync:EY,parseDirective:LY,initialize:MY,getConfig: $ ,setConfig:Xp,getSiteConfig: $ p,updateSiteConfig:sE,reset:()=>{po()},globalReset:()=>{po(ha)},defaultConfig:ha});Qu( $ ().logLevel),po( $ ());let nb=!1;const NY=async function(t,e,r){try{nb?await ab(t,e,r):sb(t,e,r)}catch(n){B.warn("Syntax Error rendering"),m1(n)&&B.warn(n.str),on.parseError&&on.parseError(n)}},ib=(t,e,r)=>{B.warn(t),m1(t)?(r&&r(t.str,t.hash),e.push({...t,message:t.str,error:t})):(r&&r(t),t instanceof Error&&e.push({str:t.message,message:t.message,hash:t.name,error:t}))},sb=function(t,e,r){const n=ze.getConfig();t&&(on.sequenceConfig=t),B.debug( ` $ { r ? "" : "No " } Callback function found ` );let i;if(e===void 0)i=document.querySelectorAll(".mermaid");else if(typeof e=="string")i=document.querySelectorAll(e);else if(e instanceof HTMLElement)i=[e];else if(e instanceof NodeList)i=e;else throw new Error("Invalid argument nodes for mermaid.init");B.debug( ` Found $ { i . length } di
2022-11-07 06:36:17 +00:00
* Wait for document loaded before starting the execution
2023-01-09 05:03:48 +00:00
* / w i n d o w . a d d E v e n t L i s t e n e r ( " l o a d " , o b , ! 1 ) } c o n s t F Y = f u n c t i o n ( t ) { o n . p a r s e E r r o r = t } , P Y = t = > z e . p a r s e ( t , o n . p a r s e E r r o r ) , z u = [ ] ; l e t O d = ! 1 ; c o n s t l b = a s y n c ( ) = > { i f ( ! O d ) { f o r ( O d = ! 0 ; z u . l e n g t h > 0 ; ) { c o n s t t = z u . s h i f t ( ) ; i f ( t ) t r y { a w a i t t ( ) } c a t c h ( e ) { B . e r r o r ( " E r r o r e x e c u t i n g q u e u e " , e ) } } O d = ! 1 } } , Y Y = t = > n e w P r o m i s e ( ( e , r ) = > { c o n s t n = ( ) = > n e w P r o m i s e ( ( i , s ) = > { z e . p a r s e A s y n c ( t , o n . p a r s e E r r o r ) . t h e n ( a = > { i ( a ) , e ( a ) } , a = > { B . e r r o r ( " E r r o r p a r s i n g " , a ) , s ( a ) , r ( a ) } ) } ) ; z u . p u s h ( n ) , l b ( ) } ) , V Y = ( t , e , r , n ) = > n e w P r o m i s e ( ( i , s ) = > { c o n s t a = ( ) = > n e w P r o m i s e ( ( o , l ) = > { z e . r e n d e r A s y n c ( t , e , r , n ) . t h e n ( u = > { o ( u ) , i ( u ) } , u = > { B . e r r o r ( " E r r o r p a r s i n g " , u ) , l ( u ) , s ( u ) } ) } ) ; z u . p u s h ( a ) , l b ( ) } ) , o n = { s t a r t O n L o a d : ! 0 , d i a g r a m s : { } , m e r m a i d A P I : z e , p a r s e : P Y , p a r s e A s y n c : Y Y , r e n d e r : z e . r e n d e r , r e n d e r A s y n c : V Y , i n i t : N Y , i n i t T h r o w s E r r o r s : s b , i n i t T h r o w s E r r o r s A s y n c : a b , r e g i s t e r E x t e r n a l D i a g r a m s : R Y , i n i t i a l i z e : O Y , p a r s e E r r o r : v o i d 0 , c o n t e n t L o a d e d : o b , s e t P a r s e E r r o r H a n d l e r : F Y } ; r e t u r n o n } ) ;
2022-11-07 06:36:17 +00:00
//# sourceMappingURL=mermaid.min.js.map