cligr 1.0.1 → 1.0.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -1,41 +1,41 @@
1
1
  #!/usr/bin/env node
2
- import Z from"fs";import En from"os";import U from"path";function Ne(e){return typeof e>"u"||e===null}function On(e){return typeof e=="object"&&e!==null}function Ln(e){return Array.isArray(e)?e:Ne(e)?[]:[e]}function Nn(e,n){var r,o,i,t;if(n)for(t=Object.keys(n),r=0,o=t.length;r<o;r+=1)i=t[r],e[i]=n[i];return e}function Rn(e,n){var r="",o;for(o=0;o<n;o+=1)r+=e;return r}function Pn(e){return e===0&&Number.NEGATIVE_INFINITY===1/e}var Mn=Ne,Dn=On,$n=Ln,jn=Rn,Yn=Pn,Gn=Nn,C={isNothing:Mn,isObject:Dn,toArray:$n,repeat:jn,isNegativeZero:Yn,extend:Gn};function Re(e,n){var r="",o=e.reason||"(unknown reason)";return e.mark?(e.mark.name&&(r+='in "'+e.mark.name+'" '),r+="("+(e.mark.line+1)+":"+(e.mark.column+1)+")",!n&&e.mark.snippet&&(r+=`
2
+ import z from"fs";import _r from"os";import q from"path";function De(e){return typeof e>"u"||e===null}function Or(e){return typeof e=="object"&&e!==null}function Lr(e){return Array.isArray(e)?e:De(e)?[]:[e]}function Nr(e,r){var n,o,i,t;if(r)for(t=Object.keys(r),n=0,o=t.length;n<o;n+=1)i=t[n],e[i]=r[i];return e}function Rr(e,r){var n="",o;for(o=0;o<r;o+=1)n+=e;return n}function Dr(e){return e===0&&Number.NEGATIVE_INFINITY===1/e}var Mr=De,Gr=Or,$r=Lr,jr=Rr,Yr=Dr,Br=Nr,A={isNothing:Mr,isObject:Gr,toArray:$r,repeat:jr,isNegativeZero:Yr,extend:Br};function Me(e,r){var n="",o=e.reason||"(unknown reason)";return e.mark?(e.mark.name&&(n+='in "'+e.mark.name+'" '),n+="("+(e.mark.line+1)+":"+(e.mark.column+1)+")",!r&&e.mark.snippet&&(n+=`
3
3
 
4
- `+e.mark.snippet),o+" "+r):o}function Y(e,n){Error.call(this),this.name="YAMLException",this.reason=e,this.mark=n,this.message=Re(this,!1),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack||""}Y.prototype=Object.create(Error.prototype);Y.prototype.constructor=Y;Y.prototype.toString=function(n){return this.name+": "+Re(this,n)};var E=Y;function ne(e,n,r,o,i){var t="",l="",u=Math.floor(i/2)-1;return o-n>u&&(t=" ... ",n=o-u+t.length),r-o>u&&(l=" ...",r=o+u-l.length),{str:t+e.slice(n,r).replace(/\t/g,"\u2192")+l,pos:o-n+t.length}}function re(e,n){return C.repeat(" ",n-e.length)+e}function Bn(e,n){if(n=Object.create(n||null),!e.buffer)return null;n.maxLength||(n.maxLength=79),typeof n.indent!="number"&&(n.indent=1),typeof n.linesBefore!="number"&&(n.linesBefore=3),typeof n.linesAfter!="number"&&(n.linesAfter=2);for(var r=/\r?\n|\r|\0/g,o=[0],i=[],t,l=-1;t=r.exec(e.buffer);)i.push(t.index),o.push(t.index+t[0].length),e.position<=t.index&&l<0&&(l=o.length-2);l<0&&(l=o.length-1);var u="",c,f,s=Math.min(e.line+n.linesAfter,i.length).toString().length,a=n.maxLength-(n.indent+s+3);for(c=1;c<=n.linesBefore&&!(l-c<0);c++)f=ne(e.buffer,o[l-c],i[l-c],e.position-(o[l]-o[l-c]),a),u=C.repeat(" ",n.indent)+re((e.line-c+1).toString(),s)+" | "+f.str+`
5
- `+u;for(f=ne(e.buffer,o[l],i[l],e.position,a),u+=C.repeat(" ",n.indent)+re((e.line+1).toString(),s)+" | "+f.str+`
6
- `,u+=C.repeat("-",n.indent+s+3+f.pos)+`^
7
- `,c=1;c<=n.linesAfter&&!(l+c>=i.length);c++)f=ne(e.buffer,o[l+c],i[l+c],e.position-(o[l]-o[l+c]),a),u+=C.repeat(" ",n.indent)+re((e.line+c+1).toString(),s)+" | "+f.str+`
8
- `;return u.replace(/\n$/,"")}var Hn=Bn,Un=["kind","multi","resolve","construct","instanceOf","predicate","represent","representName","defaultStyle","styleAliases"],Kn=["scalar","sequence","mapping"];function qn(e){var n={};return e!==null&&Object.keys(e).forEach(function(r){e[r].forEach(function(o){n[String(o)]=r})}),n}function Wn(e,n){if(n=n||{},Object.keys(n).forEach(function(r){if(Un.indexOf(r)===-1)throw new E('Unknown option "'+r+'" is met in definition of "'+e+'" YAML type.')}),this.options=n,this.tag=e,this.kind=n.kind||null,this.resolve=n.resolve||function(){return!0},this.construct=n.construct||function(r){return r},this.instanceOf=n.instanceOf||null,this.predicate=n.predicate||null,this.represent=n.represent||null,this.representName=n.representName||null,this.defaultStyle=n.defaultStyle||null,this.multi=n.multi||!1,this.styleAliases=qn(n.styleAliases||null),Kn.indexOf(this.kind)===-1)throw new E('Unknown kind "'+this.kind+'" is specified for "'+e+'" YAML type.')}var y=Wn;function ve(e,n){var r=[];return e[n].forEach(function(o){var i=r.length;r.forEach(function(t,l){t.tag===o.tag&&t.kind===o.kind&&t.multi===o.multi&&(i=l)}),r[i]=o}),r}function Qn(){var e={scalar:{},sequence:{},mapping:{},fallback:{},multi:{scalar:[],sequence:[],mapping:[],fallback:[]}},n,r;function o(i){i.multi?(e.multi[i.kind].push(i),e.multi.fallback.push(i)):e[i.kind][i.tag]=e.fallback[i.tag]=i}for(n=0,r=arguments.length;n<r;n+=1)arguments[n].forEach(o);return e}function oe(e){return this.extend(e)}oe.prototype.extend=function(n){var r=[],o=[];if(n instanceof y)o.push(n);else if(Array.isArray(n))o=o.concat(n);else if(n&&(Array.isArray(n.implicit)||Array.isArray(n.explicit)))n.implicit&&(r=r.concat(n.implicit)),n.explicit&&(o=o.concat(n.explicit));else throw new E("Schema.extend argument should be a Type, [ Type ], or a schema definition ({ implicit: [...], explicit: [...] })");r.forEach(function(t){if(!(t instanceof y))throw new E("Specified list of YAML types (or a single Type object) contains a non-Type object.");if(t.loadKind&&t.loadKind!=="scalar")throw new E("There is a non-scalar type in the implicit list of a schema. Implicit resolving of such types is not supported.");if(t.multi)throw new E("There is a multi type in the implicit list of a schema. Multi tags can only be listed as explicit.")}),o.forEach(function(t){if(!(t instanceof y))throw new E("Specified list of YAML types (or a single Type object) contains a non-Type object.")});var i=Object.create(oe.prototype);return i.implicit=(this.implicit||[]).concat(r),i.explicit=(this.explicit||[]).concat(o),i.compiledImplicit=ve(i,"implicit"),i.compiledExplicit=ve(i,"explicit"),i.compiledTypeMap=Qn(i.compiledImplicit,i.compiledExplicit),i};var Pe=oe,Me=new y("tag:yaml.org,2002:str",{kind:"scalar",construct:function(e){return e!==null?e:""}}),De=new y("tag:yaml.org,2002:seq",{kind:"sequence",construct:function(e){return e!==null?e:[]}}),$e=new y("tag:yaml.org,2002:map",{kind:"mapping",construct:function(e){return e!==null?e:{}}}),je=new Pe({explicit:[Me,De,$e]});function Vn(e){if(e===null)return!0;var n=e.length;return n===1&&e==="~"||n===4&&(e==="null"||e==="Null"||e==="NULL")}function Xn(){return null}function Zn(e){return e===null}var Ye=new y("tag:yaml.org,2002:null",{kind:"scalar",resolve:Vn,construct:Xn,predicate:Zn,represent:{canonical:function(){return"~"},lowercase:function(){return"null"},uppercase:function(){return"NULL"},camelcase:function(){return"Null"},empty:function(){return""}},defaultStyle:"lowercase"});function zn(e){if(e===null)return!1;var n=e.length;return n===4&&(e==="true"||e==="True"||e==="TRUE")||n===5&&(e==="false"||e==="False"||e==="FALSE")}function Jn(e){return e==="true"||e==="True"||e==="TRUE"}function er(e){return Object.prototype.toString.call(e)==="[object Boolean]"}var Ge=new y("tag:yaml.org,2002:bool",{kind:"scalar",resolve:zn,construct:Jn,predicate:er,represent:{lowercase:function(e){return e?"true":"false"},uppercase:function(e){return e?"TRUE":"FALSE"},camelcase:function(e){return e?"True":"False"}},defaultStyle:"lowercase"});function nr(e){return 48<=e&&e<=57||65<=e&&e<=70||97<=e&&e<=102}function rr(e){return 48<=e&&e<=55}function ir(e){return 48<=e&&e<=57}function or(e){if(e===null)return!1;var n=e.length,r=0,o=!1,i;if(!n)return!1;if(i=e[r],(i==="-"||i==="+")&&(i=e[++r]),i==="0"){if(r+1===n)return!0;if(i=e[++r],i==="b"){for(r++;r<n;r++)if(i=e[r],i!=="_"){if(i!=="0"&&i!=="1")return!1;o=!0}return o&&i!=="_"}if(i==="x"){for(r++;r<n;r++)if(i=e[r],i!=="_"){if(!nr(e.charCodeAt(r)))return!1;o=!0}return o&&i!=="_"}if(i==="o"){for(r++;r<n;r++)if(i=e[r],i!=="_"){if(!rr(e.charCodeAt(r)))return!1;o=!0}return o&&i!=="_"}}if(i==="_")return!1;for(;r<n;r++)if(i=e[r],i!=="_"){if(!ir(e.charCodeAt(r)))return!1;o=!0}return!(!o||i==="_")}function lr(e){var n=e,r=1,o;if(n.indexOf("_")!==-1&&(n=n.replace(/_/g,"")),o=n[0],(o==="-"||o==="+")&&(o==="-"&&(r=-1),n=n.slice(1),o=n[0]),n==="0")return 0;if(o==="0"){if(n[1]==="b")return r*parseInt(n.slice(2),2);if(n[1]==="x")return r*parseInt(n.slice(2),16);if(n[1]==="o")return r*parseInt(n.slice(2),8)}return r*parseInt(n,10)}function tr(e){return Object.prototype.toString.call(e)==="[object Number]"&&e%1===0&&!C.isNegativeZero(e)}var Be=new y("tag:yaml.org,2002:int",{kind:"scalar",resolve:or,construct:lr,predicate:tr,represent:{binary:function(e){return e>=0?"0b"+e.toString(2):"-0b"+e.toString(2).slice(1)},octal:function(e){return e>=0?"0o"+e.toString(8):"-0o"+e.toString(8).slice(1)},decimal:function(e){return e.toString(10)},hexadecimal:function(e){return e>=0?"0x"+e.toString(16).toUpperCase():"-0x"+e.toString(16).toUpperCase().slice(1)}},defaultStyle:"decimal",styleAliases:{binary:[2,"bin"],octal:[8,"oct"],decimal:[10,"dec"],hexadecimal:[16,"hex"]}}),ur=new RegExp("^(?:[-+]?(?:[0-9][0-9_]*)(?:\\.[0-9_]*)?(?:[eE][-+]?[0-9]+)?|\\.[0-9_]+(?:[eE][-+]?[0-9]+)?|[-+]?\\.(?:inf|Inf|INF)|\\.(?:nan|NaN|NAN))$");function cr(e){return!(e===null||!ur.test(e)||e[e.length-1]==="_")}function fr(e){var n,r;return n=e.replace(/_/g,"").toLowerCase(),r=n[0]==="-"?-1:1,"+-".indexOf(n[0])>=0&&(n=n.slice(1)),n===".inf"?r===1?Number.POSITIVE_INFINITY:Number.NEGATIVE_INFINITY:n===".nan"?NaN:r*parseFloat(n,10)}var ar=/^[-+]?[0-9]+e/;function sr(e,n){var r;if(isNaN(e))switch(n){case"lowercase":return".nan";case"uppercase":return".NAN";case"camelcase":return".NaN"}else if(Number.POSITIVE_INFINITY===e)switch(n){case"lowercase":return".inf";case"uppercase":return".INF";case"camelcase":return".Inf"}else if(Number.NEGATIVE_INFINITY===e)switch(n){case"lowercase":return"-.inf";case"uppercase":return"-.INF";case"camelcase":return"-.Inf"}else if(C.isNegativeZero(e))return"-0.0";return r=e.toString(10),ar.test(r)?r.replace("e",".e"):r}function pr(e){return Object.prototype.toString.call(e)==="[object Number]"&&(e%1!==0||C.isNegativeZero(e))}var He=new y("tag:yaml.org,2002:float",{kind:"scalar",resolve:cr,construct:fr,predicate:pr,represent:sr,defaultStyle:"lowercase"}),Ue=je.extend({implicit:[Ye,Ge,Be,He]}),Ke=Ue,qe=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9])-([0-9][0-9])$"),We=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9]?)-([0-9][0-9]?)(?:[Tt]|[ \\t]+)([0-9][0-9]?):([0-9][0-9]):([0-9][0-9])(?:\\.([0-9]*))?(?:[ \\t]*(Z|([-+])([0-9][0-9]?)(?::([0-9][0-9]))?))?$");function hr(e){return e===null?!1:qe.exec(e)!==null||We.exec(e)!==null}function dr(e){var n,r,o,i,t,l,u,c=0,f=null,s,a,h;if(n=qe.exec(e),n===null&&(n=We.exec(e)),n===null)throw new Error("Date resolve error");if(r=+n[1],o=+n[2]-1,i=+n[3],!n[4])return new Date(Date.UTC(r,o,i));if(t=+n[4],l=+n[5],u=+n[6],n[7]){for(c=n[7].slice(0,3);c.length<3;)c+="0";c=+c}return n[9]&&(s=+n[10],a=+(n[11]||0),f=(s*60+a)*6e4,n[9]==="-"&&(f=-f)),h=new Date(Date.UTC(r,o,i,t,l,u,c)),f&&h.setTime(h.getTime()-f),h}function mr(e){return e.toISOString()}var Qe=new y("tag:yaml.org,2002:timestamp",{kind:"scalar",resolve:hr,construct:dr,instanceOf:Date,represent:mr});function gr(e){return e==="<<"||e===null}var Ve=new y("tag:yaml.org,2002:merge",{kind:"scalar",resolve:gr}),fe=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=
9
- \r`;function xr(e){if(e===null)return!1;var n,r,o=0,i=e.length,t=fe;for(r=0;r<i;r++)if(n=t.indexOf(e.charAt(r)),!(n>64)){if(n<0)return!1;o+=6}return o%8===0}function vr(e){var n,r,o=e.replace(/[\r\n=]/g,""),i=o.length,t=fe,l=0,u=[];for(n=0;n<i;n++)n%4===0&&n&&(u.push(l>>16&255),u.push(l>>8&255),u.push(l&255)),l=l<<6|t.indexOf(o.charAt(n));return r=i%4*6,r===0?(u.push(l>>16&255),u.push(l>>8&255),u.push(l&255)):r===18?(u.push(l>>10&255),u.push(l>>2&255)):r===12&&u.push(l>>4&255),new Uint8Array(u)}function Ar(e){var n="",r=0,o,i,t=e.length,l=fe;for(o=0;o<t;o++)o%3===0&&o&&(n+=l[r>>18&63],n+=l[r>>12&63],n+=l[r>>6&63],n+=l[r&63]),r=(r<<8)+e[o];return i=t%3,i===0?(n+=l[r>>18&63],n+=l[r>>12&63],n+=l[r>>6&63],n+=l[r&63]):i===2?(n+=l[r>>10&63],n+=l[r>>4&63],n+=l[r<<2&63],n+=l[64]):i===1&&(n+=l[r>>2&63],n+=l[r<<4&63],n+=l[64],n+=l[64]),n}function Cr(e){return Object.prototype.toString.call(e)==="[object Uint8Array]"}var Xe=new y("tag:yaml.org,2002:binary",{kind:"scalar",resolve:xr,construct:vr,predicate:Cr,represent:Ar}),yr=Object.prototype.hasOwnProperty,wr=Object.prototype.toString;function Er(e){if(e===null)return!0;var n=[],r,o,i,t,l,u=e;for(r=0,o=u.length;r<o;r+=1){if(i=u[r],l=!1,wr.call(i)!=="[object Object]")return!1;for(t in i)if(yr.call(i,t))if(!l)l=!0;else return!1;if(!l)return!1;if(n.indexOf(t)===-1)n.push(t);else return!1}return!0}function Sr(e){return e!==null?e:[]}var Ze=new y("tag:yaml.org,2002:omap",{kind:"sequence",resolve:Er,construct:Sr}),_r=Object.prototype.toString;function br(e){if(e===null)return!0;var n,r,o,i,t,l=e;for(t=new Array(l.length),n=0,r=l.length;n<r;n+=1){if(o=l[n],_r.call(o)!=="[object Object]"||(i=Object.keys(o),i.length!==1))return!1;t[n]=[i[0],o[i[0]]]}return!0}function Tr(e){if(e===null)return[];var n,r,o,i,t,l=e;for(t=new Array(l.length),n=0,r=l.length;n<r;n+=1)o=l[n],i=Object.keys(o),t[n]=[i[0],o[i[0]]];return t}var ze=new y("tag:yaml.org,2002:pairs",{kind:"sequence",resolve:br,construct:Tr}),Ir=Object.prototype.hasOwnProperty;function Fr(e){if(e===null)return!0;var n,r=e;for(n in r)if(Ir.call(r,n)&&r[n]!==null)return!1;return!0}function kr(e){return e!==null?e:{}}var Je=new y("tag:yaml.org,2002:set",{kind:"mapping",resolve:Fr,construct:kr}),ae=Ke.extend({implicit:[Qe,Ve],explicit:[Xe,Ze,ze,Je]}),F=Object.prototype.hasOwnProperty,K=1,en=2,nn=3,q=4,ie=1,Or=2,Ae=3,Lr=/[\x00-\x08\x0B\x0C\x0E-\x1F\x7F-\x84\x86-\x9F\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,Nr=/[\x85\u2028\u2029]/,Rr=/[,\[\]\{\}]/,rn=/^(?:!|!!|![a-z\-]+!)$/i,on=/^(?:!|[^,\[\]\{\}])(?:%[0-9a-f]{2}|[0-9a-z\-#;\/\?:@&=\+\$,_\.!~\*'\(\)\[\]])*$/i;function Ce(e){return Object.prototype.toString.call(e)}function b(e){return e===10||e===13}function L(e){return e===9||e===32}function S(e){return e===9||e===32||e===10||e===13}function P(e){return e===44||e===91||e===93||e===123||e===125}function Pr(e){var n;return 48<=e&&e<=57?e-48:(n=e|32,97<=n&&n<=102?n-97+10:-1)}function Mr(e){return e===120?2:e===117?4:e===85?8:0}function Dr(e){return 48<=e&&e<=57?e-48:-1}function ye(e){return e===48?"\0":e===97?"\x07":e===98?"\b":e===116||e===9?" ":e===110?`
10
- `:e===118?"\v":e===102?"\f":e===114?"\r":e===101?"\x1B":e===32?" ":e===34?'"':e===47?"/":e===92?"\\":e===78?"\x85":e===95?"\xA0":e===76?"\u2028":e===80?"\u2029":""}function $r(e){return e<=65535?String.fromCharCode(e):String.fromCharCode((e-65536>>10)+55296,(e-65536&1023)+56320)}function ln(e,n,r){n==="__proto__"?Object.defineProperty(e,n,{configurable:!0,enumerable:!0,writable:!0,value:r}):e[n]=r}var tn=new Array(256),un=new Array(256);for(O=0;O<256;O++)tn[O]=ye(O)?1:0,un[O]=ye(O);var O;function jr(e,n){this.input=e,this.filename=n.filename||null,this.schema=n.schema||ae,this.onWarning=n.onWarning||null,this.legacy=n.legacy||!1,this.json=n.json||!1,this.listener=n.listener||null,this.implicitTypes=this.schema.compiledImplicit,this.typeMap=this.schema.compiledTypeMap,this.length=e.length,this.position=0,this.line=0,this.lineStart=0,this.lineIndent=0,this.firstTabInLine=-1,this.documents=[]}function cn(e,n){var r={name:e.filename,buffer:e.input.slice(0,-1),position:e.position,line:e.line,column:e.position-e.lineStart};return r.snippet=Hn(r),new E(n,r)}function p(e,n){throw cn(e,n)}function W(e,n){e.onWarning&&e.onWarning.call(null,cn(e,n))}var we={YAML:function(n,r,o){var i,t,l;n.version!==null&&p(n,"duplication of %YAML directive"),o.length!==1&&p(n,"YAML directive accepts exactly one argument"),i=/^([0-9]+)\.([0-9]+)$/.exec(o[0]),i===null&&p(n,"ill-formed argument of the YAML directive"),t=parseInt(i[1],10),l=parseInt(i[2],10),t!==1&&p(n,"unacceptable YAML version of the document"),n.version=o[0],n.checkLineBreaks=l<2,l!==1&&l!==2&&W(n,"unsupported YAML version of the document")},TAG:function(n,r,o){var i,t;o.length!==2&&p(n,"TAG directive accepts exactly two arguments"),i=o[0],t=o[1],rn.test(i)||p(n,"ill-formed tag handle (first argument) of the TAG directive"),F.call(n.tagMap,i)&&p(n,'there is a previously declared suffix for "'+i+'" tag handle'),on.test(t)||p(n,"ill-formed tag prefix (second argument) of the TAG directive");try{t=decodeURIComponent(t)}catch{p(n,"tag prefix is malformed: "+t)}n.tagMap[i]=t}};function I(e,n,r,o){var i,t,l,u;if(n<r){if(u=e.input.slice(n,r),o)for(i=0,t=u.length;i<t;i+=1)l=u.charCodeAt(i),l===9||32<=l&&l<=1114111||p(e,"expected valid JSON character");else Lr.test(u)&&p(e,"the stream contains non-printable characters");e.result+=u}}function Ee(e,n,r,o){var i,t,l,u;for(C.isObject(r)||p(e,"cannot merge mappings; the provided source object is unacceptable"),i=Object.keys(r),l=0,u=i.length;l<u;l+=1)t=i[l],F.call(n,t)||(ln(n,t,r[t]),o[t]=!0)}function M(e,n,r,o,i,t,l,u,c){var f,s;if(Array.isArray(i))for(i=Array.prototype.slice.call(i),f=0,s=i.length;f<s;f+=1)Array.isArray(i[f])&&p(e,"nested arrays are not supported inside keys"),typeof i=="object"&&Ce(i[f])==="[object Object]"&&(i[f]="[object Object]");if(typeof i=="object"&&Ce(i)==="[object Object]"&&(i="[object Object]"),i=String(i),n===null&&(n={}),o==="tag:yaml.org,2002:merge")if(Array.isArray(t))for(f=0,s=t.length;f<s;f+=1)Ee(e,n,t[f],r);else Ee(e,n,t,r);else!e.json&&!F.call(r,i)&&F.call(n,i)&&(e.line=l||e.line,e.lineStart=u||e.lineStart,e.position=c||e.position,p(e,"duplicated mapping key")),ln(n,i,t),delete r[i];return n}function se(e){var n;n=e.input.charCodeAt(e.position),n===10?e.position++:n===13?(e.position++,e.input.charCodeAt(e.position)===10&&e.position++):p(e,"a line break is expected"),e.line+=1,e.lineStart=e.position,e.firstTabInLine=-1}function A(e,n,r){for(var o=0,i=e.input.charCodeAt(e.position);i!==0;){for(;L(i);)i===9&&e.firstTabInLine===-1&&(e.firstTabInLine=e.position),i=e.input.charCodeAt(++e.position);if(n&&i===35)do i=e.input.charCodeAt(++e.position);while(i!==10&&i!==13&&i!==0);if(b(i))for(se(e),i=e.input.charCodeAt(e.position),o++,e.lineIndent=0;i===32;)e.lineIndent++,i=e.input.charCodeAt(++e.position);else break}return r!==-1&&o!==0&&e.lineIndent<r&&W(e,"deficient indentation"),o}function X(e){var n=e.position,r;return r=e.input.charCodeAt(n),!!((r===45||r===46)&&r===e.input.charCodeAt(n+1)&&r===e.input.charCodeAt(n+2)&&(n+=3,r=e.input.charCodeAt(n),r===0||S(r)))}function pe(e,n){n===1?e.result+=" ":n>1&&(e.result+=C.repeat(`
11
- `,n-1))}function Yr(e,n,r){var o,i,t,l,u,c,f,s,a=e.kind,h=e.result,d;if(d=e.input.charCodeAt(e.position),S(d)||P(d)||d===35||d===38||d===42||d===33||d===124||d===62||d===39||d===34||d===37||d===64||d===96||(d===63||d===45)&&(i=e.input.charCodeAt(e.position+1),S(i)||r&&P(i)))return!1;for(e.kind="scalar",e.result="",t=l=e.position,u=!1;d!==0;){if(d===58){if(i=e.input.charCodeAt(e.position+1),S(i)||r&&P(i))break}else if(d===35){if(o=e.input.charCodeAt(e.position-1),S(o))break}else{if(e.position===e.lineStart&&X(e)||r&&P(d))break;if(b(d))if(c=e.line,f=e.lineStart,s=e.lineIndent,A(e,!1,-1),e.lineIndent>=n){u=!0,d=e.input.charCodeAt(e.position);continue}else{e.position=l,e.line=c,e.lineStart=f,e.lineIndent=s;break}}u&&(I(e,t,l,!1),pe(e,e.line-c),t=l=e.position,u=!1),L(d)||(l=e.position+1),d=e.input.charCodeAt(++e.position)}return I(e,t,l,!1),e.result?!0:(e.kind=a,e.result=h,!1)}function Gr(e,n){var r,o,i;if(r=e.input.charCodeAt(e.position),r!==39)return!1;for(e.kind="scalar",e.result="",e.position++,o=i=e.position;(r=e.input.charCodeAt(e.position))!==0;)if(r===39)if(I(e,o,e.position,!0),r=e.input.charCodeAt(++e.position),r===39)o=e.position,e.position++,i=e.position;else return!0;else b(r)?(I(e,o,i,!0),pe(e,A(e,!1,n)),o=i=e.position):e.position===e.lineStart&&X(e)?p(e,"unexpected end of the document within a single quoted scalar"):(e.position++,i=e.position);p(e,"unexpected end of the stream within a single quoted scalar")}function Br(e,n){var r,o,i,t,l,u;if(u=e.input.charCodeAt(e.position),u!==34)return!1;for(e.kind="scalar",e.result="",e.position++,r=o=e.position;(u=e.input.charCodeAt(e.position))!==0;){if(u===34)return I(e,r,e.position,!0),e.position++,!0;if(u===92){if(I(e,r,e.position,!0),u=e.input.charCodeAt(++e.position),b(u))A(e,!1,n);else if(u<256&&tn[u])e.result+=un[u],e.position++;else if((l=Mr(u))>0){for(i=l,t=0;i>0;i--)u=e.input.charCodeAt(++e.position),(l=Pr(u))>=0?t=(t<<4)+l:p(e,"expected hexadecimal character");e.result+=$r(t),e.position++}else p(e,"unknown escape sequence");r=o=e.position}else b(u)?(I(e,r,o,!0),pe(e,A(e,!1,n)),r=o=e.position):e.position===e.lineStart&&X(e)?p(e,"unexpected end of the document within a double quoted scalar"):(e.position++,o=e.position)}p(e,"unexpected end of the stream within a double quoted scalar")}function Hr(e,n){var r=!0,o,i,t,l=e.tag,u,c=e.anchor,f,s,a,h,d,m=Object.create(null),x,v,_,g;if(g=e.input.charCodeAt(e.position),g===91)s=93,d=!1,u=[];else if(g===123)s=125,d=!0,u={};else return!1;for(e.anchor!==null&&(e.anchorMap[e.anchor]=u),g=e.input.charCodeAt(++e.position);g!==0;){if(A(e,!0,n),g=e.input.charCodeAt(e.position),g===s)return e.position++,e.tag=l,e.anchor=c,e.kind=d?"mapping":"sequence",e.result=u,!0;r?g===44&&p(e,"expected the node content, but found ','"):p(e,"missed comma between flow collection entries"),v=x=_=null,a=h=!1,g===63&&(f=e.input.charCodeAt(e.position+1),S(f)&&(a=h=!0,e.position++,A(e,!0,n))),o=e.line,i=e.lineStart,t=e.position,D(e,n,K,!1,!0),v=e.tag,x=e.result,A(e,!0,n),g=e.input.charCodeAt(e.position),(h||e.line===o)&&g===58&&(a=!0,g=e.input.charCodeAt(++e.position),A(e,!0,n),D(e,n,K,!1,!0),_=e.result),d?M(e,u,m,v,x,_,o,i,t):a?u.push(M(e,null,m,v,x,_,o,i,t)):u.push(x),A(e,!0,n),g=e.input.charCodeAt(e.position),g===44?(r=!0,g=e.input.charCodeAt(++e.position)):r=!1}p(e,"unexpected end of the stream within a flow collection")}function Ur(e,n){var r,o,i=ie,t=!1,l=!1,u=n,c=0,f=!1,s,a;if(a=e.input.charCodeAt(e.position),a===124)o=!1;else if(a===62)o=!0;else return!1;for(e.kind="scalar",e.result="";a!==0;)if(a=e.input.charCodeAt(++e.position),a===43||a===45)ie===i?i=a===43?Ae:Or:p(e,"repeat of a chomping mode identifier");else if((s=Dr(a))>=0)s===0?p(e,"bad explicit indentation width of a block scalar; it cannot be less than one"):l?p(e,"repeat of an indentation width identifier"):(u=n+s-1,l=!0);else break;if(L(a)){do a=e.input.charCodeAt(++e.position);while(L(a));if(a===35)do a=e.input.charCodeAt(++e.position);while(!b(a)&&a!==0)}for(;a!==0;){for(se(e),e.lineIndent=0,a=e.input.charCodeAt(e.position);(!l||e.lineIndent<u)&&a===32;)e.lineIndent++,a=e.input.charCodeAt(++e.position);if(!l&&e.lineIndent>u&&(u=e.lineIndent),b(a)){c++;continue}if(e.lineIndent<u){i===Ae?e.result+=C.repeat(`
12
- `,t?1+c:c):i===ie&&t&&(e.result+=`
13
- `);break}for(o?L(a)?(f=!0,e.result+=C.repeat(`
14
- `,t?1+c:c)):f?(f=!1,e.result+=C.repeat(`
15
- `,c+1)):c===0?t&&(e.result+=" "):e.result+=C.repeat(`
16
- `,c):e.result+=C.repeat(`
17
- `,t?1+c:c),t=!0,l=!0,c=0,r=e.position;!b(a)&&a!==0;)a=e.input.charCodeAt(++e.position);I(e,r,e.position,!1)}return!0}function Se(e,n){var r,o=e.tag,i=e.anchor,t=[],l,u=!1,c;if(e.firstTabInLine!==-1)return!1;for(e.anchor!==null&&(e.anchorMap[e.anchor]=t),c=e.input.charCodeAt(e.position);c!==0&&(e.firstTabInLine!==-1&&(e.position=e.firstTabInLine,p(e,"tab characters must not be used in indentation")),!(c!==45||(l=e.input.charCodeAt(e.position+1),!S(l))));){if(u=!0,e.position++,A(e,!0,-1)&&e.lineIndent<=n){t.push(null),c=e.input.charCodeAt(e.position);continue}if(r=e.line,D(e,n,nn,!1,!0),t.push(e.result),A(e,!0,-1),c=e.input.charCodeAt(e.position),(e.line===r||e.lineIndent>n)&&c!==0)p(e,"bad indentation of a sequence entry");else if(e.lineIndent<n)break}return u?(e.tag=o,e.anchor=i,e.kind="sequence",e.result=t,!0):!1}function Kr(e,n,r){var o,i,t,l,u,c,f=e.tag,s=e.anchor,a={},h=Object.create(null),d=null,m=null,x=null,v=!1,_=!1,g;if(e.firstTabInLine!==-1)return!1;for(e.anchor!==null&&(e.anchorMap[e.anchor]=a),g=e.input.charCodeAt(e.position);g!==0;){if(!v&&e.firstTabInLine!==-1&&(e.position=e.firstTabInLine,p(e,"tab characters must not be used in indentation")),o=e.input.charCodeAt(e.position+1),t=e.line,(g===63||g===58)&&S(o))g===63?(v&&(M(e,a,h,d,m,null,l,u,c),d=m=x=null),_=!0,v=!0,i=!0):v?(v=!1,i=!0):p(e,"incomplete explicit mapping pair; a key node is missed; or followed by a non-tabulated empty line"),e.position+=1,g=o;else{if(l=e.line,u=e.lineStart,c=e.position,!D(e,r,en,!1,!0))break;if(e.line===t){for(g=e.input.charCodeAt(e.position);L(g);)g=e.input.charCodeAt(++e.position);if(g===58)g=e.input.charCodeAt(++e.position),S(g)||p(e,"a whitespace character is expected after the key-value separator within a block mapping"),v&&(M(e,a,h,d,m,null,l,u,c),d=m=x=null),_=!0,v=!1,i=!1,d=e.tag,m=e.result;else if(_)p(e,"can not read an implicit mapping pair; a colon is missed");else return e.tag=f,e.anchor=s,!0}else if(_)p(e,"can not read a block mapping entry; a multiline key may not be an implicit key");else return e.tag=f,e.anchor=s,!0}if((e.line===t||e.lineIndent>n)&&(v&&(l=e.line,u=e.lineStart,c=e.position),D(e,n,q,!0,i)&&(v?m=e.result:x=e.result),v||(M(e,a,h,d,m,x,l,u,c),d=m=x=null),A(e,!0,-1),g=e.input.charCodeAt(e.position)),(e.line===t||e.lineIndent>n)&&g!==0)p(e,"bad indentation of a mapping entry");else if(e.lineIndent<n)break}return v&&M(e,a,h,d,m,null,l,u,c),_&&(e.tag=f,e.anchor=s,e.kind="mapping",e.result=a),_}function qr(e){var n,r=!1,o=!1,i,t,l;if(l=e.input.charCodeAt(e.position),l!==33)return!1;if(e.tag!==null&&p(e,"duplication of a tag property"),l=e.input.charCodeAt(++e.position),l===60?(r=!0,l=e.input.charCodeAt(++e.position)):l===33?(o=!0,i="!!",l=e.input.charCodeAt(++e.position)):i="!",n=e.position,r){do l=e.input.charCodeAt(++e.position);while(l!==0&&l!==62);e.position<e.length?(t=e.input.slice(n,e.position),l=e.input.charCodeAt(++e.position)):p(e,"unexpected end of the stream within a verbatim tag")}else{for(;l!==0&&!S(l);)l===33&&(o?p(e,"tag suffix cannot contain exclamation marks"):(i=e.input.slice(n-1,e.position+1),rn.test(i)||p(e,"named tag handle cannot contain such characters"),o=!0,n=e.position+1)),l=e.input.charCodeAt(++e.position);t=e.input.slice(n,e.position),Rr.test(t)&&p(e,"tag suffix cannot contain flow indicator characters")}t&&!on.test(t)&&p(e,"tag name cannot contain such characters: "+t);try{t=decodeURIComponent(t)}catch{p(e,"tag name is malformed: "+t)}return r?e.tag=t:F.call(e.tagMap,i)?e.tag=e.tagMap[i]+t:i==="!"?e.tag="!"+t:i==="!!"?e.tag="tag:yaml.org,2002:"+t:p(e,'undeclared tag handle "'+i+'"'),!0}function Wr(e){var n,r;if(r=e.input.charCodeAt(e.position),r!==38)return!1;for(e.anchor!==null&&p(e,"duplication of an anchor property"),r=e.input.charCodeAt(++e.position),n=e.position;r!==0&&!S(r)&&!P(r);)r=e.input.charCodeAt(++e.position);return e.position===n&&p(e,"name of an anchor node must contain at least one character"),e.anchor=e.input.slice(n,e.position),!0}function Qr(e){var n,r,o;if(o=e.input.charCodeAt(e.position),o!==42)return!1;for(o=e.input.charCodeAt(++e.position),n=e.position;o!==0&&!S(o)&&!P(o);)o=e.input.charCodeAt(++e.position);return e.position===n&&p(e,"name of an alias node must contain at least one character"),r=e.input.slice(n,e.position),F.call(e.anchorMap,r)||p(e,'unidentified alias "'+r+'"'),e.result=e.anchorMap[r],A(e,!0,-1),!0}function D(e,n,r,o,i){var t,l,u,c=1,f=!1,s=!1,a,h,d,m,x,v;if(e.listener!==null&&e.listener("open",e),e.tag=null,e.anchor=null,e.kind=null,e.result=null,t=l=u=q===r||nn===r,o&&A(e,!0,-1)&&(f=!0,e.lineIndent>n?c=1:e.lineIndent===n?c=0:e.lineIndent<n&&(c=-1)),c===1)for(;qr(e)||Wr(e);)A(e,!0,-1)?(f=!0,u=t,e.lineIndent>n?c=1:e.lineIndent===n?c=0:e.lineIndent<n&&(c=-1)):u=!1;if(u&&(u=f||i),(c===1||q===r)&&(K===r||en===r?x=n:x=n+1,v=e.position-e.lineStart,c===1?u&&(Se(e,v)||Kr(e,v,x))||Hr(e,x)?s=!0:(l&&Ur(e,x)||Gr(e,x)||Br(e,x)?s=!0:Qr(e)?(s=!0,(e.tag!==null||e.anchor!==null)&&p(e,"alias node should not have any properties")):Yr(e,x,K===r)&&(s=!0,e.tag===null&&(e.tag="?")),e.anchor!==null&&(e.anchorMap[e.anchor]=e.result)):c===0&&(s=u&&Se(e,v))),e.tag===null)e.anchor!==null&&(e.anchorMap[e.anchor]=e.result);else if(e.tag==="?"){for(e.result!==null&&e.kind!=="scalar"&&p(e,'unacceptable node kind for !<?> tag; it should be "scalar", not "'+e.kind+'"'),a=0,h=e.implicitTypes.length;a<h;a+=1)if(m=e.implicitTypes[a],m.resolve(e.result)){e.result=m.construct(e.result),e.tag=m.tag,e.anchor!==null&&(e.anchorMap[e.anchor]=e.result);break}}else if(e.tag!=="!"){if(F.call(e.typeMap[e.kind||"fallback"],e.tag))m=e.typeMap[e.kind||"fallback"][e.tag];else for(m=null,d=e.typeMap.multi[e.kind||"fallback"],a=0,h=d.length;a<h;a+=1)if(e.tag.slice(0,d[a].tag.length)===d[a].tag){m=d[a];break}m||p(e,"unknown tag !<"+e.tag+">"),e.result!==null&&m.kind!==e.kind&&p(e,"unacceptable node kind for !<"+e.tag+'> tag; it should be "'+m.kind+'", not "'+e.kind+'"'),m.resolve(e.result,e.tag)?(e.result=m.construct(e.result,e.tag),e.anchor!==null&&(e.anchorMap[e.anchor]=e.result)):p(e,"cannot resolve a node with !<"+e.tag+"> explicit tag")}return e.listener!==null&&e.listener("close",e),e.tag!==null||e.anchor!==null||s}function Vr(e){var n=e.position,r,o,i,t=!1,l;for(e.version=null,e.checkLineBreaks=e.legacy,e.tagMap=Object.create(null),e.anchorMap=Object.create(null);(l=e.input.charCodeAt(e.position))!==0&&(A(e,!0,-1),l=e.input.charCodeAt(e.position),!(e.lineIndent>0||l!==37));){for(t=!0,l=e.input.charCodeAt(++e.position),r=e.position;l!==0&&!S(l);)l=e.input.charCodeAt(++e.position);for(o=e.input.slice(r,e.position),i=[],o.length<1&&p(e,"directive name must not be less than one character in length");l!==0;){for(;L(l);)l=e.input.charCodeAt(++e.position);if(l===35){do l=e.input.charCodeAt(++e.position);while(l!==0&&!b(l));break}if(b(l))break;for(r=e.position;l!==0&&!S(l);)l=e.input.charCodeAt(++e.position);i.push(e.input.slice(r,e.position))}l!==0&&se(e),F.call(we,o)?we[o](e,o,i):W(e,'unknown document directive "'+o+'"')}if(A(e,!0,-1),e.lineIndent===0&&e.input.charCodeAt(e.position)===45&&e.input.charCodeAt(e.position+1)===45&&e.input.charCodeAt(e.position+2)===45?(e.position+=3,A(e,!0,-1)):t&&p(e,"directives end mark is expected"),D(e,e.lineIndent-1,q,!1,!0),A(e,!0,-1),e.checkLineBreaks&&Nr.test(e.input.slice(n,e.position))&&W(e,"non-ASCII line breaks are interpreted as content"),e.documents.push(e.result),e.position===e.lineStart&&X(e)){e.input.charCodeAt(e.position)===46&&(e.position+=3,A(e,!0,-1));return}if(e.position<e.length-1)p(e,"end of the stream or a document separator is expected");else return}function fn(e,n){e=String(e),n=n||{},e.length!==0&&(e.charCodeAt(e.length-1)!==10&&e.charCodeAt(e.length-1)!==13&&(e+=`
18
- `),e.charCodeAt(0)===65279&&(e=e.slice(1)));var r=new jr(e,n),o=e.indexOf("\0");for(o!==-1&&(r.position=o,p(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;)Vr(r);return r.documents}function Xr(e,n,r){n!==null&&typeof n=="object"&&typeof r>"u"&&(r=n,n=null);var o=fn(e,r);if(typeof n!="function")return o;for(var i=0,t=o.length;i<t;i+=1)n(o[i])}function Zr(e,n){var r=fn(e,n);if(r.length!==0){if(r.length===1)return r[0];throw new E("expected a single document in the stream, but found more")}}var zr=Xr,Jr=Zr,an={loadAll:zr,load:Jr},sn=Object.prototype.toString,pn=Object.prototype.hasOwnProperty,he=65279,ei=9,G=10,ni=13,ri=32,ii=33,oi=34,le=35,li=37,ti=38,ui=39,ci=42,hn=44,fi=45,Q=58,ai=61,si=62,pi=63,hi=64,dn=91,mn=93,di=96,gn=123,mi=124,xn=125,w={};w[0]="\\0";w[7]="\\a";w[8]="\\b";w[9]="\\t";w[10]="\\n";w[11]="\\v";w[12]="\\f";w[13]="\\r";w[27]="\\e";w[34]='\\"';w[92]="\\\\";w[133]="\\N";w[160]="\\_";w[8232]="\\L";w[8233]="\\P";var gi=["y","Y","yes","Yes","YES","on","On","ON","n","N","no","No","NO","off","Off","OFF"],xi=/^[-+]?[0-9_]+(?::[0-9_]+)+(?:\.[0-9_]*)?$/;function vi(e,n){var r,o,i,t,l,u,c;if(n===null)return{};for(r={},o=Object.keys(n),i=0,t=o.length;i<t;i+=1)l=o[i],u=String(n[l]),l.slice(0,2)==="!!"&&(l="tag:yaml.org,2002:"+l.slice(2)),c=e.compiledTypeMap.fallback[l],c&&pn.call(c.styleAliases,u)&&(u=c.styleAliases[u]),r[l]=u;return r}function Ai(e){var n,r,o;if(n=e.toString(16).toUpperCase(),e<=255)r="x",o=2;else if(e<=65535)r="u",o=4;else if(e<=4294967295)r="U",o=8;else throw new E("code point within a string may not be greater than 0xFFFFFFFF");return"\\"+r+C.repeat("0",o-n.length)+n}var Ci=1,B=2;function yi(e){this.schema=e.schema||ae,this.indent=Math.max(1,e.indent||2),this.noArrayIndent=e.noArrayIndent||!1,this.skipInvalid=e.skipInvalid||!1,this.flowLevel=C.isNothing(e.flowLevel)?-1:e.flowLevel,this.styleMap=vi(this.schema,e.styles||null),this.sortKeys=e.sortKeys||!1,this.lineWidth=e.lineWidth||80,this.noRefs=e.noRefs||!1,this.noCompatMode=e.noCompatMode||!1,this.condenseFlow=e.condenseFlow||!1,this.quotingType=e.quotingType==='"'?B:Ci,this.forceQuotes=e.forceQuotes||!1,this.replacer=typeof e.replacer=="function"?e.replacer:null,this.implicitTypes=this.schema.compiledImplicit,this.explicitTypes=this.schema.compiledExplicit,this.tag=null,this.result="",this.duplicates=[],this.usedDuplicates=null}function _e(e,n){for(var r=C.repeat(" ",n),o=0,i=-1,t="",l,u=e.length;o<u;)i=e.indexOf(`
4
+ `+e.mark.snippet),o+" "+n):o}function B(e,r){Error.call(this),this.name="YAMLException",this.reason=e,this.mark=r,this.message=Me(this,!1),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack||""}B.prototype=Object.create(Error.prototype);B.prototype.constructor=B;B.prototype.toString=function(r){return this.name+": "+Me(this,r)};var E=B;function oe(e,r,n,o,i){var t="",l="",u=Math.floor(i/2)-1;return o-r>u&&(t=" ... ",r=o-u+t.length),n-o>u&&(l=" ...",n=o+u-l.length),{str:t+e.slice(r,n).replace(/\t/g,"\u2192")+l,pos:o-r+t.length}}function le(e,r){return A.repeat(" ",r-e.length)+e}function Hr(e,r){if(r=Object.create(r||null),!e.buffer)return null;r.maxLength||(r.maxLength=79),typeof r.indent!="number"&&(r.indent=1),typeof r.linesBefore!="number"&&(r.linesBefore=3),typeof r.linesAfter!="number"&&(r.linesAfter=2);for(var n=/\r?\n|\r|\0/g,o=[0],i=[],t,l=-1;t=n.exec(e.buffer);)i.push(t.index),o.push(t.index+t[0].length),e.position<=t.index&&l<0&&(l=o.length-2);l<0&&(l=o.length-1);var u="",c,a,f=Math.min(e.line+r.linesAfter,i.length).toString().length,s=r.maxLength-(r.indent+f+3);for(c=1;c<=r.linesBefore&&!(l-c<0);c++)a=oe(e.buffer,o[l-c],i[l-c],e.position-(o[l]-o[l-c]),s),u=A.repeat(" ",r.indent)+le((e.line-c+1).toString(),f)+" | "+a.str+`
5
+ `+u;for(a=oe(e.buffer,o[l],i[l],e.position,s),u+=A.repeat(" ",r.indent)+le((e.line+1).toString(),f)+" | "+a.str+`
6
+ `,u+=A.repeat("-",r.indent+f+3+a.pos)+`^
7
+ `,c=1;c<=r.linesAfter&&!(l+c>=i.length);c++)a=oe(e.buffer,o[l+c],i[l+c],e.position-(o[l]-o[l+c]),s),u+=A.repeat(" ",r.indent)+le((e.line+c+1).toString(),f)+" | "+a.str+`
8
+ `;return u.replace(/\n$/,"")}var Ur=Hr,Kr=["kind","multi","resolve","construct","instanceOf","predicate","represent","representName","defaultStyle","styleAliases"],qr=["scalar","sequence","mapping"];function Wr(e){var r={};return e!==null&&Object.keys(e).forEach(function(n){e[n].forEach(function(o){r[String(o)]=n})}),r}function Qr(e,r){if(r=r||{},Object.keys(r).forEach(function(n){if(Kr.indexOf(n)===-1)throw new E('Unknown option "'+n+'" is met in definition of "'+e+'" YAML type.')}),this.options=r,this.tag=e,this.kind=r.kind||null,this.resolve=r.resolve||function(){return!0},this.construct=r.construct||function(n){return n},this.instanceOf=r.instanceOf||null,this.predicate=r.predicate||null,this.represent=r.represent||null,this.representName=r.representName||null,this.defaultStyle=r.defaultStyle||null,this.multi=r.multi||!1,this.styleAliases=Wr(r.styleAliases||null),qr.indexOf(this.kind)===-1)throw new E('Unknown kind "'+this.kind+'" is specified for "'+e+'" YAML type.')}var w=Qr;function we(e,r){var n=[];return e[r].forEach(function(o){var i=n.length;n.forEach(function(t,l){t.tag===o.tag&&t.kind===o.kind&&t.multi===o.multi&&(i=l)}),n[i]=o}),n}function Vr(){var e={scalar:{},sequence:{},mapping:{},fallback:{},multi:{scalar:[],sequence:[],mapping:[],fallback:[]}},r,n;function o(i){i.multi?(e.multi[i.kind].push(i),e.multi.fallback.push(i)):e[i.kind][i.tag]=e.fallback[i.tag]=i}for(r=0,n=arguments.length;r<n;r+=1)arguments[r].forEach(o);return e}function ue(e){return this.extend(e)}ue.prototype.extend=function(r){var n=[],o=[];if(r instanceof w)o.push(r);else if(Array.isArray(r))o=o.concat(r);else if(r&&(Array.isArray(r.implicit)||Array.isArray(r.explicit)))r.implicit&&(n=n.concat(r.implicit)),r.explicit&&(o=o.concat(r.explicit));else throw new E("Schema.extend argument should be a Type, [ Type ], or a schema definition ({ implicit: [...], explicit: [...] })");n.forEach(function(t){if(!(t instanceof w))throw new E("Specified list of YAML types (or a single Type object) contains a non-Type object.");if(t.loadKind&&t.loadKind!=="scalar")throw new E("There is a non-scalar type in the implicit list of a schema. Implicit resolving of such types is not supported.");if(t.multi)throw new E("There is a multi type in the implicit list of a schema. Multi tags can only be listed as explicit.")}),o.forEach(function(t){if(!(t instanceof w))throw new E("Specified list of YAML types (or a single Type object) contains a non-Type object.")});var i=Object.create(ue.prototype);return i.implicit=(this.implicit||[]).concat(n),i.explicit=(this.explicit||[]).concat(o),i.compiledImplicit=we(i,"implicit"),i.compiledExplicit=we(i,"explicit"),i.compiledTypeMap=Vr(i.compiledImplicit,i.compiledExplicit),i};var Ge=ue,$e=new w("tag:yaml.org,2002:str",{kind:"scalar",construct:function(e){return e!==null?e:""}}),je=new w("tag:yaml.org,2002:seq",{kind:"sequence",construct:function(e){return e!==null?e:[]}}),Ye=new w("tag:yaml.org,2002:map",{kind:"mapping",construct:function(e){return e!==null?e:{}}}),Be=new Ge({explicit:[$e,je,Ye]});function Xr(e){if(e===null)return!0;var r=e.length;return r===1&&e==="~"||r===4&&(e==="null"||e==="Null"||e==="NULL")}function Jr(){return null}function Zr(e){return e===null}var He=new w("tag:yaml.org,2002:null",{kind:"scalar",resolve:Xr,construct:Jr,predicate:Zr,represent:{canonical:function(){return"~"},lowercase:function(){return"null"},uppercase:function(){return"NULL"},camelcase:function(){return"Null"},empty:function(){return""}},defaultStyle:"lowercase"});function zr(e){if(e===null)return!1;var r=e.length;return r===4&&(e==="true"||e==="True"||e==="TRUE")||r===5&&(e==="false"||e==="False"||e==="FALSE")}function en(e){return e==="true"||e==="True"||e==="TRUE"}function rn(e){return Object.prototype.toString.call(e)==="[object Boolean]"}var Ue=new w("tag:yaml.org,2002:bool",{kind:"scalar",resolve:zr,construct:en,predicate:rn,represent:{lowercase:function(e){return e?"true":"false"},uppercase:function(e){return e?"TRUE":"FALSE"},camelcase:function(e){return e?"True":"False"}},defaultStyle:"lowercase"});function nn(e){return 48<=e&&e<=57||65<=e&&e<=70||97<=e&&e<=102}function on(e){return 48<=e&&e<=55}function ln(e){return 48<=e&&e<=57}function tn(e){if(e===null)return!1;var r=e.length,n=0,o=!1,i;if(!r)return!1;if(i=e[n],(i==="-"||i==="+")&&(i=e[++n]),i==="0"){if(n+1===r)return!0;if(i=e[++n],i==="b"){for(n++;n<r;n++)if(i=e[n],i!=="_"){if(i!=="0"&&i!=="1")return!1;o=!0}return o&&i!=="_"}if(i==="x"){for(n++;n<r;n++)if(i=e[n],i!=="_"){if(!nn(e.charCodeAt(n)))return!1;o=!0}return o&&i!=="_"}if(i==="o"){for(n++;n<r;n++)if(i=e[n],i!=="_"){if(!on(e.charCodeAt(n)))return!1;o=!0}return o&&i!=="_"}}if(i==="_")return!1;for(;n<r;n++)if(i=e[n],i!=="_"){if(!ln(e.charCodeAt(n)))return!1;o=!0}return!(!o||i==="_")}function un(e){var r=e,n=1,o;if(r.indexOf("_")!==-1&&(r=r.replace(/_/g,"")),o=r[0],(o==="-"||o==="+")&&(o==="-"&&(n=-1),r=r.slice(1),o=r[0]),r==="0")return 0;if(o==="0"){if(r[1]==="b")return n*parseInt(r.slice(2),2);if(r[1]==="x")return n*parseInt(r.slice(2),16);if(r[1]==="o")return n*parseInt(r.slice(2),8)}return n*parseInt(r,10)}function cn(e){return Object.prototype.toString.call(e)==="[object Number]"&&e%1===0&&!A.isNegativeZero(e)}var Ke=new w("tag:yaml.org,2002:int",{kind:"scalar",resolve:tn,construct:un,predicate:cn,represent:{binary:function(e){return e>=0?"0b"+e.toString(2):"-0b"+e.toString(2).slice(1)},octal:function(e){return e>=0?"0o"+e.toString(8):"-0o"+e.toString(8).slice(1)},decimal:function(e){return e.toString(10)},hexadecimal:function(e){return e>=0?"0x"+e.toString(16).toUpperCase():"-0x"+e.toString(16).toUpperCase().slice(1)}},defaultStyle:"decimal",styleAliases:{binary:[2,"bin"],octal:[8,"oct"],decimal:[10,"dec"],hexadecimal:[16,"hex"]}}),an=new RegExp("^(?:[-+]?(?:[0-9][0-9_]*)(?:\\.[0-9_]*)?(?:[eE][-+]?[0-9]+)?|\\.[0-9_]+(?:[eE][-+]?[0-9]+)?|[-+]?\\.(?:inf|Inf|INF)|\\.(?:nan|NaN|NAN))$");function sn(e){return!(e===null||!an.test(e)||e[e.length-1]==="_")}function fn(e){var r,n;return r=e.replace(/_/g,"").toLowerCase(),n=r[0]==="-"?-1:1,"+-".indexOf(r[0])>=0&&(r=r.slice(1)),r===".inf"?n===1?Number.POSITIVE_INFINITY:Number.NEGATIVE_INFINITY:r===".nan"?NaN:n*parseFloat(r,10)}var pn=/^[-+]?[0-9]+e/;function dn(e,r){var n;if(isNaN(e))switch(r){case"lowercase":return".nan";case"uppercase":return".NAN";case"camelcase":return".NaN"}else if(Number.POSITIVE_INFINITY===e)switch(r){case"lowercase":return".inf";case"uppercase":return".INF";case"camelcase":return".Inf"}else if(Number.NEGATIVE_INFINITY===e)switch(r){case"lowercase":return"-.inf";case"uppercase":return"-.INF";case"camelcase":return"-.Inf"}else if(A.isNegativeZero(e))return"-0.0";return n=e.toString(10),pn.test(n)?n.replace("e",".e"):n}function hn(e){return Object.prototype.toString.call(e)==="[object Number]"&&(e%1!==0||A.isNegativeZero(e))}var qe=new w("tag:yaml.org,2002:float",{kind:"scalar",resolve:sn,construct:fn,predicate:hn,represent:dn,defaultStyle:"lowercase"}),We=Be.extend({implicit:[He,Ue,Ke,qe]}),Qe=We,Ve=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9])-([0-9][0-9])$"),Xe=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9]?)-([0-9][0-9]?)(?:[Tt]|[ \\t]+)([0-9][0-9]?):([0-9][0-9]):([0-9][0-9])(?:\\.([0-9]*))?(?:[ \\t]*(Z|([-+])([0-9][0-9]?)(?::([0-9][0-9]))?))?$");function mn(e){return e===null?!1:Ve.exec(e)!==null||Xe.exec(e)!==null}function gn(e){var r,n,o,i,t,l,u,c=0,a=null,f,s,d;if(r=Ve.exec(e),r===null&&(r=Xe.exec(e)),r===null)throw new Error("Date resolve error");if(n=+r[1],o=+r[2]-1,i=+r[3],!r[4])return new Date(Date.UTC(n,o,i));if(t=+r[4],l=+r[5],u=+r[6],r[7]){for(c=r[7].slice(0,3);c.length<3;)c+="0";c=+c}return r[9]&&(f=+r[10],s=+(r[11]||0),a=(f*60+s)*6e4,r[9]==="-"&&(a=-a)),d=new Date(Date.UTC(n,o,i,t,l,u,c)),a&&d.setTime(d.getTime()-a),d}function xn(e){return e.toISOString()}var Je=new w("tag:yaml.org,2002:timestamp",{kind:"scalar",resolve:mn,construct:gn,instanceOf:Date,represent:xn});function vn(e){return e==="<<"||e===null}var Ze=new w("tag:yaml.org,2002:merge",{kind:"scalar",resolve:vn}),pe=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=
9
+ \r`;function yn(e){if(e===null)return!1;var r,n,o=0,i=e.length,t=pe;for(n=0;n<i;n++)if(r=t.indexOf(e.charAt(n)),!(r>64)){if(r<0)return!1;o+=6}return o%8===0}function An(e){var r,n,o=e.replace(/[\r\n=]/g,""),i=o.length,t=pe,l=0,u=[];for(r=0;r<i;r++)r%4===0&&r&&(u.push(l>>16&255),u.push(l>>8&255),u.push(l&255)),l=l<<6|t.indexOf(o.charAt(r));return n=i%4*6,n===0?(u.push(l>>16&255),u.push(l>>8&255),u.push(l&255)):n===18?(u.push(l>>10&255),u.push(l>>2&255)):n===12&&u.push(l>>4&255),new Uint8Array(u)}function wn(e){var r="",n=0,o,i,t=e.length,l=pe;for(o=0;o<t;o++)o%3===0&&o&&(r+=l[n>>18&63],r+=l[n>>12&63],r+=l[n>>6&63],r+=l[n&63]),n=(n<<8)+e[o];return i=t%3,i===0?(r+=l[n>>18&63],r+=l[n>>12&63],r+=l[n>>6&63],r+=l[n&63]):i===2?(r+=l[n>>10&63],r+=l[n>>4&63],r+=l[n<<2&63],r+=l[64]):i===1&&(r+=l[n>>2&63],r+=l[n<<4&63],r+=l[64],r+=l[64]),r}function Cn(e){return Object.prototype.toString.call(e)==="[object Uint8Array]"}var ze=new w("tag:yaml.org,2002:binary",{kind:"scalar",resolve:yn,construct:An,predicate:Cn,represent:wn}),En=Object.prototype.hasOwnProperty,Sn=Object.prototype.toString;function _n(e){if(e===null)return!0;var r=[],n,o,i,t,l,u=e;for(n=0,o=u.length;n<o;n+=1){if(i=u[n],l=!1,Sn.call(i)!=="[object Object]")return!1;for(t in i)if(En.call(i,t))if(!l)l=!0;else return!1;if(!l)return!1;if(r.indexOf(t)===-1)r.push(t);else return!1}return!0}function bn(e){return e!==null?e:[]}var er=new w("tag:yaml.org,2002:omap",{kind:"sequence",resolve:_n,construct:bn}),Tn=Object.prototype.toString;function In(e){if(e===null)return!0;var r,n,o,i,t,l=e;for(t=new Array(l.length),r=0,n=l.length;r<n;r+=1){if(o=l[r],Tn.call(o)!=="[object Object]"||(i=Object.keys(o),i.length!==1))return!1;t[r]=[i[0],o[i[0]]]}return!0}function Fn(e){if(e===null)return[];var r,n,o,i,t,l=e;for(t=new Array(l.length),r=0,n=l.length;r<n;r+=1)o=l[r],i=Object.keys(o),t[r]=[i[0],o[i[0]]];return t}var rr=new w("tag:yaml.org,2002:pairs",{kind:"sequence",resolve:In,construct:Fn}),kn=Object.prototype.hasOwnProperty;function Pn(e){if(e===null)return!0;var r,n=e;for(r in n)if(kn.call(n,r)&&n[r]!==null)return!1;return!0}function On(e){return e!==null?e:{}}var nr=new w("tag:yaml.org,2002:set",{kind:"mapping",resolve:Pn,construct:On}),de=Qe.extend({implicit:[Je,Ze],explicit:[ze,er,rr,nr]}),F=Object.prototype.hasOwnProperty,W=1,ir=2,or=3,Q=4,te=1,Ln=2,Ce=3,Nn=/[\x00-\x08\x0B\x0C\x0E-\x1F\x7F-\x84\x86-\x9F\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,Rn=/[\x85\u2028\u2029]/,Dn=/[,\[\]\{\}]/,lr=/^(?:!|!!|![a-z\-]+!)$/i,tr=/^(?:!|[^,\[\]\{\}])(?:%[0-9a-f]{2}|[0-9a-z\-#;\/\?:@&=\+\$,_\.!~\*'\(\)\[\]])*$/i;function Ee(e){return Object.prototype.toString.call(e)}function b(e){return e===10||e===13}function O(e){return e===9||e===32}function S(e){return e===9||e===32||e===10||e===13}function D(e){return e===44||e===91||e===93||e===123||e===125}function Mn(e){var r;return 48<=e&&e<=57?e-48:(r=e|32,97<=r&&r<=102?r-97+10:-1)}function Gn(e){return e===120?2:e===117?4:e===85?8:0}function $n(e){return 48<=e&&e<=57?e-48:-1}function Se(e){return e===48?"\0":e===97?"\x07":e===98?"\b":e===116||e===9?" ":e===110?`
10
+ `:e===118?"\v":e===102?"\f":e===114?"\r":e===101?"\x1B":e===32?" ":e===34?'"':e===47?"/":e===92?"\\":e===78?"\x85":e===95?"\xA0":e===76?"\u2028":e===80?"\u2029":""}function jn(e){return e<=65535?String.fromCharCode(e):String.fromCharCode((e-65536>>10)+55296,(e-65536&1023)+56320)}function ur(e,r,n){r==="__proto__"?Object.defineProperty(e,r,{configurable:!0,enumerable:!0,writable:!0,value:n}):e[r]=n}var cr=new Array(256),ar=new Array(256);for(P=0;P<256;P++)cr[P]=Se(P)?1:0,ar[P]=Se(P);var P;function Yn(e,r){this.input=e,this.filename=r.filename||null,this.schema=r.schema||de,this.onWarning=r.onWarning||null,this.legacy=r.legacy||!1,this.json=r.json||!1,this.listener=r.listener||null,this.implicitTypes=this.schema.compiledImplicit,this.typeMap=this.schema.compiledTypeMap,this.length=e.length,this.position=0,this.line=0,this.lineStart=0,this.lineIndent=0,this.firstTabInLine=-1,this.documents=[]}function sr(e,r){var n={name:e.filename,buffer:e.input.slice(0,-1),position:e.position,line:e.line,column:e.position-e.lineStart};return n.snippet=Ur(n),new E(r,n)}function p(e,r){throw sr(e,r)}function V(e,r){e.onWarning&&e.onWarning.call(null,sr(e,r))}var _e={YAML:function(r,n,o){var i,t,l;r.version!==null&&p(r,"duplication of %YAML directive"),o.length!==1&&p(r,"YAML directive accepts exactly one argument"),i=/^([0-9]+)\.([0-9]+)$/.exec(o[0]),i===null&&p(r,"ill-formed argument of the YAML directive"),t=parseInt(i[1],10),l=parseInt(i[2],10),t!==1&&p(r,"unacceptable YAML version of the document"),r.version=o[0],r.checkLineBreaks=l<2,l!==1&&l!==2&&V(r,"unsupported YAML version of the document")},TAG:function(r,n,o){var i,t;o.length!==2&&p(r,"TAG directive accepts exactly two arguments"),i=o[0],t=o[1],lr.test(i)||p(r,"ill-formed tag handle (first argument) of the TAG directive"),F.call(r.tagMap,i)&&p(r,'there is a previously declared suffix for "'+i+'" tag handle'),tr.test(t)||p(r,"ill-formed tag prefix (second argument) of the TAG directive");try{t=decodeURIComponent(t)}catch{p(r,"tag prefix is malformed: "+t)}r.tagMap[i]=t}};function I(e,r,n,o){var i,t,l,u;if(r<n){if(u=e.input.slice(r,n),o)for(i=0,t=u.length;i<t;i+=1)l=u.charCodeAt(i),l===9||32<=l&&l<=1114111||p(e,"expected valid JSON character");else Nn.test(u)&&p(e,"the stream contains non-printable characters");e.result+=u}}function be(e,r,n,o){var i,t,l,u;for(A.isObject(n)||p(e,"cannot merge mappings; the provided source object is unacceptable"),i=Object.keys(n),l=0,u=i.length;l<u;l+=1)t=i[l],F.call(r,t)||(ur(r,t,n[t]),o[t]=!0)}function M(e,r,n,o,i,t,l,u,c){var a,f;if(Array.isArray(i))for(i=Array.prototype.slice.call(i),a=0,f=i.length;a<f;a+=1)Array.isArray(i[a])&&p(e,"nested arrays are not supported inside keys"),typeof i=="object"&&Ee(i[a])==="[object Object]"&&(i[a]="[object Object]");if(typeof i=="object"&&Ee(i)==="[object Object]"&&(i="[object Object]"),i=String(i),r===null&&(r={}),o==="tag:yaml.org,2002:merge")if(Array.isArray(t))for(a=0,f=t.length;a<f;a+=1)be(e,r,t[a],n);else be(e,r,t,n);else!e.json&&!F.call(n,i)&&F.call(r,i)&&(e.line=l||e.line,e.lineStart=u||e.lineStart,e.position=c||e.position,p(e,"duplicated mapping key")),ur(r,i,t),delete n[i];return r}function he(e){var r;r=e.input.charCodeAt(e.position),r===10?e.position++:r===13?(e.position++,e.input.charCodeAt(e.position)===10&&e.position++):p(e,"a line break is expected"),e.line+=1,e.lineStart=e.position,e.firstTabInLine=-1}function y(e,r,n){for(var o=0,i=e.input.charCodeAt(e.position);i!==0;){for(;O(i);)i===9&&e.firstTabInLine===-1&&(e.firstTabInLine=e.position),i=e.input.charCodeAt(++e.position);if(r&&i===35)do i=e.input.charCodeAt(++e.position);while(i!==10&&i!==13&&i!==0);if(b(i))for(he(e),i=e.input.charCodeAt(e.position),o++,e.lineIndent=0;i===32;)e.lineIndent++,i=e.input.charCodeAt(++e.position);else break}return n!==-1&&o!==0&&e.lineIndent<n&&V(e,"deficient indentation"),o}function Z(e){var r=e.position,n;return n=e.input.charCodeAt(r),!!((n===45||n===46)&&n===e.input.charCodeAt(r+1)&&n===e.input.charCodeAt(r+2)&&(r+=3,n=e.input.charCodeAt(r),n===0||S(n)))}function me(e,r){r===1?e.result+=" ":r>1&&(e.result+=A.repeat(`
11
+ `,r-1))}function Bn(e,r,n){var o,i,t,l,u,c,a,f,s=e.kind,d=e.result,h;if(h=e.input.charCodeAt(e.position),S(h)||D(h)||h===35||h===38||h===42||h===33||h===124||h===62||h===39||h===34||h===37||h===64||h===96||(h===63||h===45)&&(i=e.input.charCodeAt(e.position+1),S(i)||n&&D(i)))return!1;for(e.kind="scalar",e.result="",t=l=e.position,u=!1;h!==0;){if(h===58){if(i=e.input.charCodeAt(e.position+1),S(i)||n&&D(i))break}else if(h===35){if(o=e.input.charCodeAt(e.position-1),S(o))break}else{if(e.position===e.lineStart&&Z(e)||n&&D(h))break;if(b(h))if(c=e.line,a=e.lineStart,f=e.lineIndent,y(e,!1,-1),e.lineIndent>=r){u=!0,h=e.input.charCodeAt(e.position);continue}else{e.position=l,e.line=c,e.lineStart=a,e.lineIndent=f;break}}u&&(I(e,t,l,!1),me(e,e.line-c),t=l=e.position,u=!1),O(h)||(l=e.position+1),h=e.input.charCodeAt(++e.position)}return I(e,t,l,!1),e.result?!0:(e.kind=s,e.result=d,!1)}function Hn(e,r){var n,o,i;if(n=e.input.charCodeAt(e.position),n!==39)return!1;for(e.kind="scalar",e.result="",e.position++,o=i=e.position;(n=e.input.charCodeAt(e.position))!==0;)if(n===39)if(I(e,o,e.position,!0),n=e.input.charCodeAt(++e.position),n===39)o=e.position,e.position++,i=e.position;else return!0;else b(n)?(I(e,o,i,!0),me(e,y(e,!1,r)),o=i=e.position):e.position===e.lineStart&&Z(e)?p(e,"unexpected end of the document within a single quoted scalar"):(e.position++,i=e.position);p(e,"unexpected end of the stream within a single quoted scalar")}function Un(e,r){var n,o,i,t,l,u;if(u=e.input.charCodeAt(e.position),u!==34)return!1;for(e.kind="scalar",e.result="",e.position++,n=o=e.position;(u=e.input.charCodeAt(e.position))!==0;){if(u===34)return I(e,n,e.position,!0),e.position++,!0;if(u===92){if(I(e,n,e.position,!0),u=e.input.charCodeAt(++e.position),b(u))y(e,!1,r);else if(u<256&&cr[u])e.result+=ar[u],e.position++;else if((l=Gn(u))>0){for(i=l,t=0;i>0;i--)u=e.input.charCodeAt(++e.position),(l=Mn(u))>=0?t=(t<<4)+l:p(e,"expected hexadecimal character");e.result+=jn(t),e.position++}else p(e,"unknown escape sequence");n=o=e.position}else b(u)?(I(e,n,o,!0),me(e,y(e,!1,r)),n=o=e.position):e.position===e.lineStart&&Z(e)?p(e,"unexpected end of the document within a double quoted scalar"):(e.position++,o=e.position)}p(e,"unexpected end of the stream within a double quoted scalar")}function Kn(e,r){var n=!0,o,i,t,l=e.tag,u,c=e.anchor,a,f,s,d,h,m=Object.create(null),x,v,_,g;if(g=e.input.charCodeAt(e.position),g===91)f=93,h=!1,u=[];else if(g===123)f=125,h=!0,u={};else return!1;for(e.anchor!==null&&(e.anchorMap[e.anchor]=u),g=e.input.charCodeAt(++e.position);g!==0;){if(y(e,!0,r),g=e.input.charCodeAt(e.position),g===f)return e.position++,e.tag=l,e.anchor=c,e.kind=h?"mapping":"sequence",e.result=u,!0;n?g===44&&p(e,"expected the node content, but found ','"):p(e,"missed comma between flow collection entries"),v=x=_=null,s=d=!1,g===63&&(a=e.input.charCodeAt(e.position+1),S(a)&&(s=d=!0,e.position++,y(e,!0,r))),o=e.line,i=e.lineStart,t=e.position,G(e,r,W,!1,!0),v=e.tag,x=e.result,y(e,!0,r),g=e.input.charCodeAt(e.position),(d||e.line===o)&&g===58&&(s=!0,g=e.input.charCodeAt(++e.position),y(e,!0,r),G(e,r,W,!1,!0),_=e.result),h?M(e,u,m,v,x,_,o,i,t):s?u.push(M(e,null,m,v,x,_,o,i,t)):u.push(x),y(e,!0,r),g=e.input.charCodeAt(e.position),g===44?(n=!0,g=e.input.charCodeAt(++e.position)):n=!1}p(e,"unexpected end of the stream within a flow collection")}function qn(e,r){var n,o,i=te,t=!1,l=!1,u=r,c=0,a=!1,f,s;if(s=e.input.charCodeAt(e.position),s===124)o=!1;else if(s===62)o=!0;else return!1;for(e.kind="scalar",e.result="";s!==0;)if(s=e.input.charCodeAt(++e.position),s===43||s===45)te===i?i=s===43?Ce:Ln:p(e,"repeat of a chomping mode identifier");else if((f=$n(s))>=0)f===0?p(e,"bad explicit indentation width of a block scalar; it cannot be less than one"):l?p(e,"repeat of an indentation width identifier"):(u=r+f-1,l=!0);else break;if(O(s)){do s=e.input.charCodeAt(++e.position);while(O(s));if(s===35)do s=e.input.charCodeAt(++e.position);while(!b(s)&&s!==0)}for(;s!==0;){for(he(e),e.lineIndent=0,s=e.input.charCodeAt(e.position);(!l||e.lineIndent<u)&&s===32;)e.lineIndent++,s=e.input.charCodeAt(++e.position);if(!l&&e.lineIndent>u&&(u=e.lineIndent),b(s)){c++;continue}if(e.lineIndent<u){i===Ce?e.result+=A.repeat(`
12
+ `,t?1+c:c):i===te&&t&&(e.result+=`
13
+ `);break}for(o?O(s)?(a=!0,e.result+=A.repeat(`
14
+ `,t?1+c:c)):a?(a=!1,e.result+=A.repeat(`
15
+ `,c+1)):c===0?t&&(e.result+=" "):e.result+=A.repeat(`
16
+ `,c):e.result+=A.repeat(`
17
+ `,t?1+c:c),t=!0,l=!0,c=0,n=e.position;!b(s)&&s!==0;)s=e.input.charCodeAt(++e.position);I(e,n,e.position,!1)}return!0}function Te(e,r){var n,o=e.tag,i=e.anchor,t=[],l,u=!1,c;if(e.firstTabInLine!==-1)return!1;for(e.anchor!==null&&(e.anchorMap[e.anchor]=t),c=e.input.charCodeAt(e.position);c!==0&&(e.firstTabInLine!==-1&&(e.position=e.firstTabInLine,p(e,"tab characters must not be used in indentation")),!(c!==45||(l=e.input.charCodeAt(e.position+1),!S(l))));){if(u=!0,e.position++,y(e,!0,-1)&&e.lineIndent<=r){t.push(null),c=e.input.charCodeAt(e.position);continue}if(n=e.line,G(e,r,or,!1,!0),t.push(e.result),y(e,!0,-1),c=e.input.charCodeAt(e.position),(e.line===n||e.lineIndent>r)&&c!==0)p(e,"bad indentation of a sequence entry");else if(e.lineIndent<r)break}return u?(e.tag=o,e.anchor=i,e.kind="sequence",e.result=t,!0):!1}function Wn(e,r,n){var o,i,t,l,u,c,a=e.tag,f=e.anchor,s={},d=Object.create(null),h=null,m=null,x=null,v=!1,_=!1,g;if(e.firstTabInLine!==-1)return!1;for(e.anchor!==null&&(e.anchorMap[e.anchor]=s),g=e.input.charCodeAt(e.position);g!==0;){if(!v&&e.firstTabInLine!==-1&&(e.position=e.firstTabInLine,p(e,"tab characters must not be used in indentation")),o=e.input.charCodeAt(e.position+1),t=e.line,(g===63||g===58)&&S(o))g===63?(v&&(M(e,s,d,h,m,null,l,u,c),h=m=x=null),_=!0,v=!0,i=!0):v?(v=!1,i=!0):p(e,"incomplete explicit mapping pair; a key node is missed; or followed by a non-tabulated empty line"),e.position+=1,g=o;else{if(l=e.line,u=e.lineStart,c=e.position,!G(e,n,ir,!1,!0))break;if(e.line===t){for(g=e.input.charCodeAt(e.position);O(g);)g=e.input.charCodeAt(++e.position);if(g===58)g=e.input.charCodeAt(++e.position),S(g)||p(e,"a whitespace character is expected after the key-value separator within a block mapping"),v&&(M(e,s,d,h,m,null,l,u,c),h=m=x=null),_=!0,v=!1,i=!1,h=e.tag,m=e.result;else if(_)p(e,"can not read an implicit mapping pair; a colon is missed");else return e.tag=a,e.anchor=f,!0}else if(_)p(e,"can not read a block mapping entry; a multiline key may not be an implicit key");else return e.tag=a,e.anchor=f,!0}if((e.line===t||e.lineIndent>r)&&(v&&(l=e.line,u=e.lineStart,c=e.position),G(e,r,Q,!0,i)&&(v?m=e.result:x=e.result),v||(M(e,s,d,h,m,x,l,u,c),h=m=x=null),y(e,!0,-1),g=e.input.charCodeAt(e.position)),(e.line===t||e.lineIndent>r)&&g!==0)p(e,"bad indentation of a mapping entry");else if(e.lineIndent<r)break}return v&&M(e,s,d,h,m,null,l,u,c),_&&(e.tag=a,e.anchor=f,e.kind="mapping",e.result=s),_}function Qn(e){var r,n=!1,o=!1,i,t,l;if(l=e.input.charCodeAt(e.position),l!==33)return!1;if(e.tag!==null&&p(e,"duplication of a tag property"),l=e.input.charCodeAt(++e.position),l===60?(n=!0,l=e.input.charCodeAt(++e.position)):l===33?(o=!0,i="!!",l=e.input.charCodeAt(++e.position)):i="!",r=e.position,n){do l=e.input.charCodeAt(++e.position);while(l!==0&&l!==62);e.position<e.length?(t=e.input.slice(r,e.position),l=e.input.charCodeAt(++e.position)):p(e,"unexpected end of the stream within a verbatim tag")}else{for(;l!==0&&!S(l);)l===33&&(o?p(e,"tag suffix cannot contain exclamation marks"):(i=e.input.slice(r-1,e.position+1),lr.test(i)||p(e,"named tag handle cannot contain such characters"),o=!0,r=e.position+1)),l=e.input.charCodeAt(++e.position);t=e.input.slice(r,e.position),Dn.test(t)&&p(e,"tag suffix cannot contain flow indicator characters")}t&&!tr.test(t)&&p(e,"tag name cannot contain such characters: "+t);try{t=decodeURIComponent(t)}catch{p(e,"tag name is malformed: "+t)}return n?e.tag=t:F.call(e.tagMap,i)?e.tag=e.tagMap[i]+t:i==="!"?e.tag="!"+t:i==="!!"?e.tag="tag:yaml.org,2002:"+t:p(e,'undeclared tag handle "'+i+'"'),!0}function Vn(e){var r,n;if(n=e.input.charCodeAt(e.position),n!==38)return!1;for(e.anchor!==null&&p(e,"duplication of an anchor property"),n=e.input.charCodeAt(++e.position),r=e.position;n!==0&&!S(n)&&!D(n);)n=e.input.charCodeAt(++e.position);return e.position===r&&p(e,"name of an anchor node must contain at least one character"),e.anchor=e.input.slice(r,e.position),!0}function Xn(e){var r,n,o;if(o=e.input.charCodeAt(e.position),o!==42)return!1;for(o=e.input.charCodeAt(++e.position),r=e.position;o!==0&&!S(o)&&!D(o);)o=e.input.charCodeAt(++e.position);return e.position===r&&p(e,"name of an alias node must contain at least one character"),n=e.input.slice(r,e.position),F.call(e.anchorMap,n)||p(e,'unidentified alias "'+n+'"'),e.result=e.anchorMap[n],y(e,!0,-1),!0}function G(e,r,n,o,i){var t,l,u,c=1,a=!1,f=!1,s,d,h,m,x,v;if(e.listener!==null&&e.listener("open",e),e.tag=null,e.anchor=null,e.kind=null,e.result=null,t=l=u=Q===n||or===n,o&&y(e,!0,-1)&&(a=!0,e.lineIndent>r?c=1:e.lineIndent===r?c=0:e.lineIndent<r&&(c=-1)),c===1)for(;Qn(e)||Vn(e);)y(e,!0,-1)?(a=!0,u=t,e.lineIndent>r?c=1:e.lineIndent===r?c=0:e.lineIndent<r&&(c=-1)):u=!1;if(u&&(u=a||i),(c===1||Q===n)&&(W===n||ir===n?x=r:x=r+1,v=e.position-e.lineStart,c===1?u&&(Te(e,v)||Wn(e,v,x))||Kn(e,x)?f=!0:(l&&qn(e,x)||Hn(e,x)||Un(e,x)?f=!0:Xn(e)?(f=!0,(e.tag!==null||e.anchor!==null)&&p(e,"alias node should not have any properties")):Bn(e,x,W===n)&&(f=!0,e.tag===null&&(e.tag="?")),e.anchor!==null&&(e.anchorMap[e.anchor]=e.result)):c===0&&(f=u&&Te(e,v))),e.tag===null)e.anchor!==null&&(e.anchorMap[e.anchor]=e.result);else if(e.tag==="?"){for(e.result!==null&&e.kind!=="scalar"&&p(e,'unacceptable node kind for !<?> tag; it should be "scalar", not "'+e.kind+'"'),s=0,d=e.implicitTypes.length;s<d;s+=1)if(m=e.implicitTypes[s],m.resolve(e.result)){e.result=m.construct(e.result),e.tag=m.tag,e.anchor!==null&&(e.anchorMap[e.anchor]=e.result);break}}else if(e.tag!=="!"){if(F.call(e.typeMap[e.kind||"fallback"],e.tag))m=e.typeMap[e.kind||"fallback"][e.tag];else for(m=null,h=e.typeMap.multi[e.kind||"fallback"],s=0,d=h.length;s<d;s+=1)if(e.tag.slice(0,h[s].tag.length)===h[s].tag){m=h[s];break}m||p(e,"unknown tag !<"+e.tag+">"),e.result!==null&&m.kind!==e.kind&&p(e,"unacceptable node kind for !<"+e.tag+'> tag; it should be "'+m.kind+'", not "'+e.kind+'"'),m.resolve(e.result,e.tag)?(e.result=m.construct(e.result,e.tag),e.anchor!==null&&(e.anchorMap[e.anchor]=e.result)):p(e,"cannot resolve a node with !<"+e.tag+"> explicit tag")}return e.listener!==null&&e.listener("close",e),e.tag!==null||e.anchor!==null||f}function Jn(e){var r=e.position,n,o,i,t=!1,l;for(e.version=null,e.checkLineBreaks=e.legacy,e.tagMap=Object.create(null),e.anchorMap=Object.create(null);(l=e.input.charCodeAt(e.position))!==0&&(y(e,!0,-1),l=e.input.charCodeAt(e.position),!(e.lineIndent>0||l!==37));){for(t=!0,l=e.input.charCodeAt(++e.position),n=e.position;l!==0&&!S(l);)l=e.input.charCodeAt(++e.position);for(o=e.input.slice(n,e.position),i=[],o.length<1&&p(e,"directive name must not be less than one character in length");l!==0;){for(;O(l);)l=e.input.charCodeAt(++e.position);if(l===35){do l=e.input.charCodeAt(++e.position);while(l!==0&&!b(l));break}if(b(l))break;for(n=e.position;l!==0&&!S(l);)l=e.input.charCodeAt(++e.position);i.push(e.input.slice(n,e.position))}l!==0&&he(e),F.call(_e,o)?_e[o](e,o,i):V(e,'unknown document directive "'+o+'"')}if(y(e,!0,-1),e.lineIndent===0&&e.input.charCodeAt(e.position)===45&&e.input.charCodeAt(e.position+1)===45&&e.input.charCodeAt(e.position+2)===45?(e.position+=3,y(e,!0,-1)):t&&p(e,"directives end mark is expected"),G(e,e.lineIndent-1,Q,!1,!0),y(e,!0,-1),e.checkLineBreaks&&Rn.test(e.input.slice(r,e.position))&&V(e,"non-ASCII line breaks are interpreted as content"),e.documents.push(e.result),e.position===e.lineStart&&Z(e)){e.input.charCodeAt(e.position)===46&&(e.position+=3,y(e,!0,-1));return}if(e.position<e.length-1)p(e,"end of the stream or a document separator is expected");else return}function fr(e,r){e=String(e),r=r||{},e.length!==0&&(e.charCodeAt(e.length-1)!==10&&e.charCodeAt(e.length-1)!==13&&(e+=`
18
+ `),e.charCodeAt(0)===65279&&(e=e.slice(1)));var n=new Yn(e,r),o=e.indexOf("\0");for(o!==-1&&(n.position=o,p(n,"null byte is not allowed in input")),n.input+="\0";n.input.charCodeAt(n.position)===32;)n.lineIndent+=1,n.position+=1;for(;n.position<n.length-1;)Jn(n);return n.documents}function Zn(e,r,n){r!==null&&typeof r=="object"&&typeof n>"u"&&(n=r,r=null);var o=fr(e,n);if(typeof r!="function")return o;for(var i=0,t=o.length;i<t;i+=1)r(o[i])}function zn(e,r){var n=fr(e,r);if(n.length!==0){if(n.length===1)return n[0];throw new E("expected a single document in the stream, but found more")}}var ei=Zn,ri=zn,pr={loadAll:ei,load:ri},dr=Object.prototype.toString,hr=Object.prototype.hasOwnProperty,ge=65279,ni=9,H=10,ii=13,oi=32,li=33,ti=34,ce=35,ui=37,ci=38,ai=39,si=42,mr=44,fi=45,X=58,pi=61,di=62,hi=63,mi=64,gr=91,xr=93,gi=96,vr=123,xi=124,yr=125,C={};C[0]="\\0";C[7]="\\a";C[8]="\\b";C[9]="\\t";C[10]="\\n";C[11]="\\v";C[12]="\\f";C[13]="\\r";C[27]="\\e";C[34]='\\"';C[92]="\\\\";C[133]="\\N";C[160]="\\_";C[8232]="\\L";C[8233]="\\P";var vi=["y","Y","yes","Yes","YES","on","On","ON","n","N","no","No","NO","off","Off","OFF"],yi=/^[-+]?[0-9_]+(?::[0-9_]+)+(?:\.[0-9_]*)?$/;function Ai(e,r){var n,o,i,t,l,u,c;if(r===null)return{};for(n={},o=Object.keys(r),i=0,t=o.length;i<t;i+=1)l=o[i],u=String(r[l]),l.slice(0,2)==="!!"&&(l="tag:yaml.org,2002:"+l.slice(2)),c=e.compiledTypeMap.fallback[l],c&&hr.call(c.styleAliases,u)&&(u=c.styleAliases[u]),n[l]=u;return n}function wi(e){var r,n,o;if(r=e.toString(16).toUpperCase(),e<=255)n="x",o=2;else if(e<=65535)n="u",o=4;else if(e<=4294967295)n="U",o=8;else throw new E("code point within a string may not be greater than 0xFFFFFFFF");return"\\"+n+A.repeat("0",o-r.length)+r}var Ci=1,U=2;function Ei(e){this.schema=e.schema||de,this.indent=Math.max(1,e.indent||2),this.noArrayIndent=e.noArrayIndent||!1,this.skipInvalid=e.skipInvalid||!1,this.flowLevel=A.isNothing(e.flowLevel)?-1:e.flowLevel,this.styleMap=Ai(this.schema,e.styles||null),this.sortKeys=e.sortKeys||!1,this.lineWidth=e.lineWidth||80,this.noRefs=e.noRefs||!1,this.noCompatMode=e.noCompatMode||!1,this.condenseFlow=e.condenseFlow||!1,this.quotingType=e.quotingType==='"'?U:Ci,this.forceQuotes=e.forceQuotes||!1,this.replacer=typeof e.replacer=="function"?e.replacer:null,this.implicitTypes=this.schema.compiledImplicit,this.explicitTypes=this.schema.compiledExplicit,this.tag=null,this.result="",this.duplicates=[],this.usedDuplicates=null}function Ie(e,r){for(var n=A.repeat(" ",r),o=0,i=-1,t="",l,u=e.length;o<u;)i=e.indexOf(`
19
19
  `,o),i===-1?(l=e.slice(o),o=u):(l=e.slice(o,i+1),o=i+1),l.length&&l!==`
20
- `&&(t+=r),t+=l;return t}function te(e,n){return`
21
- `+C.repeat(" ",e.indent*n)}function wi(e,n){var r,o,i;for(r=0,o=e.implicitTypes.length;r<o;r+=1)if(i=e.implicitTypes[r],i.resolve(n))return!0;return!1}function V(e){return e===ri||e===ei}function H(e){return 32<=e&&e<=126||161<=e&&e<=55295&&e!==8232&&e!==8233||57344<=e&&e<=65533&&e!==he||65536<=e&&e<=1114111}function be(e){return H(e)&&e!==he&&e!==ni&&e!==G}function Te(e,n,r){var o=be(e),i=o&&!V(e);return(r?o:o&&e!==hn&&e!==dn&&e!==mn&&e!==gn&&e!==xn)&&e!==le&&!(n===Q&&!i)||be(n)&&!V(n)&&e===le||n===Q&&i}function Ei(e){return H(e)&&e!==he&&!V(e)&&e!==fi&&e!==pi&&e!==Q&&e!==hn&&e!==dn&&e!==mn&&e!==gn&&e!==xn&&e!==le&&e!==ti&&e!==ci&&e!==ii&&e!==mi&&e!==ai&&e!==si&&e!==ui&&e!==oi&&e!==li&&e!==hi&&e!==di}function Si(e){return!V(e)&&e!==Q}function j(e,n){var r=e.charCodeAt(n),o;return r>=55296&&r<=56319&&n+1<e.length&&(o=e.charCodeAt(n+1),o>=56320&&o<=57343)?(r-55296)*1024+o-56320+65536:r}function vn(e){var n=/^\n* /;return n.test(e)}var An=1,ue=2,Cn=3,yn=4,R=5;function _i(e,n,r,o,i,t,l,u){var c,f=0,s=null,a=!1,h=!1,d=o!==-1,m=-1,x=Ei(j(e,0))&&Si(j(e,e.length-1));if(n||l)for(c=0;c<e.length;f>=65536?c+=2:c++){if(f=j(e,c),!H(f))return R;x=x&&Te(f,s,u),s=f}else{for(c=0;c<e.length;f>=65536?c+=2:c++){if(f=j(e,c),f===G)a=!0,d&&(h=h||c-m-1>o&&e[m+1]!==" ",m=c);else if(!H(f))return R;x=x&&Te(f,s,u),s=f}h=h||d&&c-m-1>o&&e[m+1]!==" "}return!a&&!h?x&&!l&&!i(e)?An:t===B?R:ue:r>9&&vn(e)?R:l?t===B?R:ue:h?yn:Cn}function bi(e,n,r,o,i){e.dump=function(){if(n.length===0)return e.quotingType===B?'""':"''";if(!e.noCompatMode&&(gi.indexOf(n)!==-1||xi.test(n)))return e.quotingType===B?'"'+n+'"':"'"+n+"'";var t=e.indent*Math.max(1,r),l=e.lineWidth===-1?-1:Math.max(Math.min(e.lineWidth,40),e.lineWidth-t),u=o||e.flowLevel>-1&&r>=e.flowLevel;function c(f){return wi(e,f)}switch(_i(n,u,e.indent,l,c,e.quotingType,e.forceQuotes&&!o,i)){case An:return n;case ue:return"'"+n.replace(/'/g,"''")+"'";case Cn:return"|"+Ie(n,e.indent)+Fe(_e(n,t));case yn:return">"+Ie(n,e.indent)+Fe(_e(Ti(n,l),t));case R:return'"'+Ii(n)+'"';default:throw new E("impossible error: invalid scalar style")}}()}function Ie(e,n){var r=vn(e)?String(n):"",o=e[e.length-1]===`
20
+ `&&(t+=n),t+=l;return t}function ae(e,r){return`
21
+ `+A.repeat(" ",e.indent*r)}function Si(e,r){var n,o,i;for(n=0,o=e.implicitTypes.length;n<o;n+=1)if(i=e.implicitTypes[n],i.resolve(r))return!0;return!1}function J(e){return e===oi||e===ni}function K(e){return 32<=e&&e<=126||161<=e&&e<=55295&&e!==8232&&e!==8233||57344<=e&&e<=65533&&e!==ge||65536<=e&&e<=1114111}function Fe(e){return K(e)&&e!==ge&&e!==ii&&e!==H}function ke(e,r,n){var o=Fe(e),i=o&&!J(e);return(n?o:o&&e!==mr&&e!==gr&&e!==xr&&e!==vr&&e!==yr)&&e!==ce&&!(r===X&&!i)||Fe(r)&&!J(r)&&e===ce||r===X&&i}function _i(e){return K(e)&&e!==ge&&!J(e)&&e!==fi&&e!==hi&&e!==X&&e!==mr&&e!==gr&&e!==xr&&e!==vr&&e!==yr&&e!==ce&&e!==ci&&e!==si&&e!==li&&e!==xi&&e!==pi&&e!==di&&e!==ai&&e!==ti&&e!==ui&&e!==mi&&e!==gi}function bi(e){return!J(e)&&e!==X}function Y(e,r){var n=e.charCodeAt(r),o;return n>=55296&&n<=56319&&r+1<e.length&&(o=e.charCodeAt(r+1),o>=56320&&o<=57343)?(n-55296)*1024+o-56320+65536:n}function Ar(e){var r=/^\n* /;return r.test(e)}var wr=1,se=2,Cr=3,Er=4,R=5;function Ti(e,r,n,o,i,t,l,u){var c,a=0,f=null,s=!1,d=!1,h=o!==-1,m=-1,x=_i(Y(e,0))&&bi(Y(e,e.length-1));if(r||l)for(c=0;c<e.length;a>=65536?c+=2:c++){if(a=Y(e,c),!K(a))return R;x=x&&ke(a,f,u),f=a}else{for(c=0;c<e.length;a>=65536?c+=2:c++){if(a=Y(e,c),a===H)s=!0,h&&(d=d||c-m-1>o&&e[m+1]!==" ",m=c);else if(!K(a))return R;x=x&&ke(a,f,u),f=a}d=d||h&&c-m-1>o&&e[m+1]!==" "}return!s&&!d?x&&!l&&!i(e)?wr:t===U?R:se:n>9&&Ar(e)?R:l?t===U?R:se:d?Er:Cr}function Ii(e,r,n,o,i){e.dump=function(){if(r.length===0)return e.quotingType===U?'""':"''";if(!e.noCompatMode&&(vi.indexOf(r)!==-1||yi.test(r)))return e.quotingType===U?'"'+r+'"':"'"+r+"'";var t=e.indent*Math.max(1,n),l=e.lineWidth===-1?-1:Math.max(Math.min(e.lineWidth,40),e.lineWidth-t),u=o||e.flowLevel>-1&&n>=e.flowLevel;function c(a){return Si(e,a)}switch(Ti(r,u,e.indent,l,c,e.quotingType,e.forceQuotes&&!o,i)){case wr:return r;case se:return"'"+r.replace(/'/g,"''")+"'";case Cr:return"|"+Pe(r,e.indent)+Oe(Ie(r,t));case Er:return">"+Pe(r,e.indent)+Oe(Ie(Fi(r,l),t));case R:return'"'+ki(r)+'"';default:throw new E("impossible error: invalid scalar style")}}()}function Pe(e,r){var n=Ar(e)?String(r):"",o=e[e.length-1]===`
22
22
  `,i=o&&(e[e.length-2]===`
23
23
  `||e===`
24
- `),t=i?"+":o?"":"-";return r+t+`
25
- `}function Fe(e){return e[e.length-1]===`
26
- `?e.slice(0,-1):e}function Ti(e,n){for(var r=/(\n+)([^\n]*)/g,o=function(){var f=e.indexOf(`
27
- `);return f=f!==-1?f:e.length,r.lastIndex=f,ke(e.slice(0,f),n)}(),i=e[0]===`
28
- `||e[0]===" ",t,l;l=r.exec(e);){var u=l[1],c=l[2];t=c[0]===" ",o+=u+(!i&&!t&&c!==""?`
29
- `:"")+ke(c,n),i=t}return o}function ke(e,n){if(e===""||e[0]===" ")return e;for(var r=/ [^ ]/g,o,i=0,t,l=0,u=0,c="";o=r.exec(e);)u=o.index,u-i>n&&(t=l>i?l:u,c+=`
24
+ `),t=i?"+":o?"":"-";return n+t+`
25
+ `}function Oe(e){return e[e.length-1]===`
26
+ `?e.slice(0,-1):e}function Fi(e,r){for(var n=/(\n+)([^\n]*)/g,o=function(){var a=e.indexOf(`
27
+ `);return a=a!==-1?a:e.length,n.lastIndex=a,Le(e.slice(0,a),r)}(),i=e[0]===`
28
+ `||e[0]===" ",t,l;l=n.exec(e);){var u=l[1],c=l[2];t=c[0]===" ",o+=u+(!i&&!t&&c!==""?`
29
+ `:"")+Le(c,r),i=t}return o}function Le(e,r){if(e===""||e[0]===" ")return e;for(var n=/ [^ ]/g,o,i=0,t,l=0,u=0,c="";o=n.exec(e);)u=o.index,u-i>r&&(t=l>i?l:u,c+=`
30
30
  `+e.slice(i,t),i=t+1),l=u;return c+=`
31
- `,e.length-i>n&&l>i?c+=e.slice(i,l)+`
32
- `+e.slice(l+1):c+=e.slice(i),c.slice(1)}function Ii(e){for(var n="",r=0,o,i=0;i<e.length;r>=65536?i+=2:i++)r=j(e,i),o=w[r],!o&&H(r)?(n+=e[i],r>=65536&&(n+=e[i+1])):n+=o||Ai(r);return n}function Fi(e,n,r){var o="",i=e.tag,t,l,u;for(t=0,l=r.length;t<l;t+=1)u=r[t],e.replacer&&(u=e.replacer.call(r,String(t),u)),(T(e,n,u,!1,!1)||typeof u>"u"&&T(e,n,null,!1,!1))&&(o!==""&&(o+=","+(e.condenseFlow?"":" ")),o+=e.dump);e.tag=i,e.dump="["+o+"]"}function Oe(e,n,r,o){var i="",t=e.tag,l,u,c;for(l=0,u=r.length;l<u;l+=1)c=r[l],e.replacer&&(c=e.replacer.call(r,String(l),c)),(T(e,n+1,c,!0,!0,!1,!0)||typeof c>"u"&&T(e,n+1,null,!0,!0,!1,!0))&&((!o||i!=="")&&(i+=te(e,n)),e.dump&&G===e.dump.charCodeAt(0)?i+="-":i+="- ",i+=e.dump);e.tag=t,e.dump=i||"[]"}function ki(e,n,r){var o="",i=e.tag,t=Object.keys(r),l,u,c,f,s;for(l=0,u=t.length;l<u;l+=1)s="",o!==""&&(s+=", "),e.condenseFlow&&(s+='"'),c=t[l],f=r[c],e.replacer&&(f=e.replacer.call(r,c,f)),T(e,n,c,!1,!1)&&(e.dump.length>1024&&(s+="? "),s+=e.dump+(e.condenseFlow?'"':"")+":"+(e.condenseFlow?"":" "),T(e,n,f,!1,!1)&&(s+=e.dump,o+=s));e.tag=i,e.dump="{"+o+"}"}function Oi(e,n,r,o){var i="",t=e.tag,l=Object.keys(r),u,c,f,s,a,h;if(e.sortKeys===!0)l.sort();else if(typeof e.sortKeys=="function")l.sort(e.sortKeys);else if(e.sortKeys)throw new E("sortKeys must be a boolean or a function");for(u=0,c=l.length;u<c;u+=1)h="",(!o||i!=="")&&(h+=te(e,n)),f=l[u],s=r[f],e.replacer&&(s=e.replacer.call(r,f,s)),T(e,n+1,f,!0,!0,!0)&&(a=e.tag!==null&&e.tag!=="?"||e.dump&&e.dump.length>1024,a&&(e.dump&&G===e.dump.charCodeAt(0)?h+="?":h+="? "),h+=e.dump,a&&(h+=te(e,n)),T(e,n+1,s,!0,a)&&(e.dump&&G===e.dump.charCodeAt(0)?h+=":":h+=": ",h+=e.dump,i+=h));e.tag=t,e.dump=i||"{}"}function Le(e,n,r){var o,i,t,l,u,c;for(i=r?e.explicitTypes:e.implicitTypes,t=0,l=i.length;t<l;t+=1)if(u=i[t],(u.instanceOf||u.predicate)&&(!u.instanceOf||typeof n=="object"&&n instanceof u.instanceOf)&&(!u.predicate||u.predicate(n))){if(r?u.multi&&u.representName?e.tag=u.representName(n):e.tag=u.tag:e.tag="?",u.represent){if(c=e.styleMap[u.tag]||u.defaultStyle,sn.call(u.represent)==="[object Function]")o=u.represent(n,c);else if(pn.call(u.represent,c))o=u.represent[c](n,c);else throw new E("!<"+u.tag+'> tag resolver accepts not "'+c+'" style');e.dump=o}return!0}return!1}function T(e,n,r,o,i,t,l){e.tag=null,e.dump=r,Le(e,r,!1)||Le(e,r,!0);var u=sn.call(e.dump),c=o,f;o&&(o=e.flowLevel<0||e.flowLevel>n);var s=u==="[object Object]"||u==="[object Array]",a,h;if(s&&(a=e.duplicates.indexOf(r),h=a!==-1),(e.tag!==null&&e.tag!=="?"||h||e.indent!==2&&n>0)&&(i=!1),h&&e.usedDuplicates[a])e.dump="*ref_"+a;else{if(s&&h&&!e.usedDuplicates[a]&&(e.usedDuplicates[a]=!0),u==="[object Object]")o&&Object.keys(e.dump).length!==0?(Oi(e,n,e.dump,i),h&&(e.dump="&ref_"+a+e.dump)):(ki(e,n,e.dump),h&&(e.dump="&ref_"+a+" "+e.dump));else if(u==="[object Array]")o&&e.dump.length!==0?(e.noArrayIndent&&!l&&n>0?Oe(e,n-1,e.dump,i):Oe(e,n,e.dump,i),h&&(e.dump="&ref_"+a+e.dump)):(Fi(e,n,e.dump),h&&(e.dump="&ref_"+a+" "+e.dump));else if(u==="[object String]")e.tag!=="?"&&bi(e,e.dump,n,t,c);else{if(u==="[object Undefined]")return!1;if(e.skipInvalid)return!1;throw new E("unacceptable kind of an object to dump "+u)}e.tag!==null&&e.tag!=="?"&&(f=encodeURI(e.tag[0]==="!"?e.tag.slice(1):e.tag).replace(/!/g,"%21"),e.tag[0]==="!"?f="!"+f:f.slice(0,18)==="tag:yaml.org,2002:"?f="!!"+f.slice(18):f="!<"+f+">",e.dump=f+" "+e.dump)}return!0}function Li(e,n){var r=[],o=[],i,t;for(ce(e,r,o),i=0,t=o.length;i<t;i+=1)n.duplicates.push(r[o[i]]);n.usedDuplicates=new Array(t)}function ce(e,n,r){var o,i,t;if(e!==null&&typeof e=="object")if(i=n.indexOf(e),i!==-1)r.indexOf(i)===-1&&r.push(i);else if(n.push(e),Array.isArray(e))for(i=0,t=e.length;i<t;i+=1)ce(e[i],n,r);else for(o=Object.keys(e),i=0,t=o.length;i<t;i+=1)ce(e[o[i]],n,r)}function Ni(e,n){n=n||{};var r=new yi(n);r.noRefs||Li(e,r);var o=e;return r.replacer&&(o=r.replacer.call({"":o},"",o)),T(r,0,o,!0,!0)?r.dump+`
33
- `:""}var Ri=Ni,Pi={dump:Ri};function de(e,n){return function(){throw new Error("Function yaml."+e+" is removed in js-yaml 4. Use yaml."+n+" instead, which is now safe by default.")}}var Mi=y,Di=Pe,$i=je,ji=Ue,Yi=Ke,Gi=ae,Bi=an.load,Hi=an.loadAll,Ui=Pi.dump,Ki=E,qi={binary:Xe,float:He,map:$e,null:Ye,pairs:ze,set:Je,timestamp:Qe,bool:Ge,int:Be,merge:Ve,omap:Ze,seq:De,str:Me},Wi=de("safeLoad","load"),Qi=de("safeLoadAll","loadAll"),Vi=de("safeDump","dump"),wn={Type:Mi,Schema:Di,FAILSAFE_SCHEMA:$i,JSON_SCHEMA:ji,CORE_SCHEMA:Yi,DEFAULT_SCHEMA:Gi,load:Bi,loadAll:Hi,dump:Ui,YAMLException:Ki,types:qi,safeLoad:Wi,safeLoadAll:Qi,safeDump:Vi};var z=".cligr.yml",N=class extends Error{constructor(n){super(n),this.name="ConfigError"}},k=class{configPath;constructor(n){if(n)this.configPath=U.resolve(n);else{let r=U.join(En.homedir(),z),o=U.resolve(z);Z.existsSync(r)?this.configPath=r:Z.existsSync(o)?this.configPath=o:this.configPath=r}}load(){if(!Z.existsSync(this.configPath))throw new N(`Config file not found. Looking for:
34
- - ${U.join(En.homedir(),z)}
35
- - ${U.resolve(z)}`);let n=Z.readFileSync(this.configPath,"utf-8"),r;try{r=wn.load(n)}catch(o){throw new N(`Invalid YAML: ${o.message}`)}return this.validate(r)}validate(n){if(!n||typeof n!="object")throw new N("Config must be an object");let r=n;if(!r.groups||typeof r.groups!="object")throw new N('Config must have a "groups" object');return r}getGroup(n){let r=this.load(),o=r.groups[n];if(!o){let l=Object.keys(r.groups).join(", ");throw new N(`Unknown group: ${n}. Available: ${l}`)}let i=null,t=null;return r.tools&&r.tools[o.tool]?(i=r.tools[o.tool].cmd,t=o.tool):(t=null,i=null),{config:o,tool:t,toolTemplate:i}}listGroups(){let n=this.load();return Object.keys(n.groups)}};var J=class{static expand(n,r,o){let i=r.split(",").map(u=>u.trim()),t=i[0]||`item-${o}`,l=n;for(let u=i.length-1;u>=0;u--){let c=`$${u+1}`;l=l.replaceAll(c,i[u])}return{name:t,args:i,fullCmd:l}}static parseItem(n,r,o,i){if(r){let t=this.expand(r,o,i),l=r.match(/\$\d+/g)||[],u=0;for(let c of l){let f=parseInt(c.substring(1),10);f>u&&(u=f)}if(u>0&&t.args.length>u){let c=t.args.slice(u);t.fullCmd=`${t.fullCmd} ${c.join(" ")}`}return t}else{let t=o.split(",").map(c=>c.trim()),l=t[0]||`item-${i}`;!o.includes(",")&&t.length===1&&(l=t[0].split(/\s+/)[0]||`item-${i}`);let u=n?`${n} ${o}`:o;return{name:l,args:t,fullCmd:u}}}};import{spawn as Xi}from"child_process";var me=class{constructor(n,r,o="running"){this.item=n;this.process=r;this.status=o}},ee=class{groups=new Map;restartTimestamps=new Map;maxRestarts=3;restartWindow=1e4;spawnGroup(n,r,o){if(this.groups.has(n))throw new Error(`Group ${n} is already running`);let i=[];for(let t of r){let l=this.spawnProcess(t,n,o);i.push(new me(t,l))}this.groups.set(n,i)}spawnProcess(n,r,o){let{cmd:i,args:t}=this.parseCommand(n.fullCmd),l=Xi(i,t,{stdio:["inherit","pipe","pipe"],shell:process.platform==="win32"});return l.stdout&&l.stdout.on("data",u=>{process.stdout.write(`[${n.name}] ${u}`)}),l.stderr&&l.stderr.on("data",u=>{process.stderr.write(`[${n.name}] ${u}`)}),l.on("exit",(u,c)=>{this.handleExit(r,n,o,u,c)}),l}parseCommand(n){let r=[],o="",i=!1,t="";for(let l=0;l<n.length;l++){let u=n[l],c=n[l+1];(u==='"'||u==="'")&&!i?(i=!0,t=u):u===t&&i?(i=!1,t=""):u===" "&&!i?o&&(r.push(o),o=""):o+=u}return o&&r.push(o),{cmd:r[0]||"",args:r.slice(1)}}handleExit(n,r,o,i,t){if(o==="unless-stopped"&&t==="SIGTERM"||o==="no")return;let l=`${n}-${r.name}`,u=Date.now(),f=(this.restartTimestamps.get(l)||[]).filter(s=>u-s<this.restartWindow);if(f.push(u),this.restartTimestamps.set(l,f),f.length>this.maxRestarts){console.error(`[${r.name}] Crash loop detected. Stopping restarts.`);return}setTimeout(()=>{console.log(`[${r.name}] Restarting... (exit code: ${i})`);let s=this.spawnProcess(r,n,o),a=this.groups.get(n);if(a){let h=a.find(d=>d.item.name===r.name);h&&(h.process=s)}},1e3)}killGroup(n){let r=this.groups.get(n);if(!r)return Promise.resolve();let o=r.map(i=>this.killProcess(i.process));return this.groups.delete(n),Promise.all(o).then(()=>{})}killProcess(n){return new Promise(r=>{n.kill("SIGTERM");let o=setTimeout(()=>{n.killed||n.kill("SIGKILL")},5e3);n.on("exit",()=>{clearTimeout(o),r()}),(n.killed||n.exitCode!==null)&&(clearTimeout(o),r())})}killAll(){let n=[];for(let r of this.groups.keys())n.push(this.killGroup(r));return Promise.all(n).then(()=>{})}getGroupStatus(n){let r=this.groups.get(n);return r?r.map(o=>o.status):[]}isGroupRunning(n){return this.groups.has(n)}getRunningGroups(){return Array.from(this.groups.keys())}};async function Sn(e){let n=new k,r=new ee;try{let{config:o,tool:i,toolTemplate:t}=n.getGroup(e),l=o.items.map((u,c)=>J.parseItem(i,t,u,c));return r.spawnGroup(e,l,o.restart),console.log(`Started group ${e} with ${l.length} process(es)`),console.log("Press Ctrl+C to stop..."),new Promise(u=>{let c=async()=>{console.log(`
36
- Shutting down...`),process.removeListener("SIGINT",c),process.removeListener("SIGTERM",c),await r.killAll(),u(0)};process.on("SIGINT",c),process.on("SIGTERM",c)})}catch(o){if(o instanceof Error&&o.name==="ConfigError")return console.error(o.message),1;throw o}}async function _n(e){let n=new k;try{let{config:r}=n.getGroup(e);console.log(`
37
- Group: ${e}`),console.log(`Tool: ${r.tool}`),console.log(`Restart: ${r.restart}`),console.log(`
38
- Items:`);for(let o of r.items)console.log(` - ${o}`);return console.log(""),0}catch(r){return console.error(r.message),1}}async function bn(e){return console.log(`Command 'down ${e}' - group will stop when cligr exits`),0}import{spawn as Zi,spawnSync as In}from"child_process";import $ from"fs";import zi from"os";import ge from"path";var Tn=".cligr.yml",Ji=`# Cligr Configuration
31
+ `,e.length-i>r&&l>i?c+=e.slice(i,l)+`
32
+ `+e.slice(l+1):c+=e.slice(i),c.slice(1)}function ki(e){for(var r="",n=0,o,i=0;i<e.length;n>=65536?i+=2:i++)n=Y(e,i),o=C[n],!o&&K(n)?(r+=e[i],n>=65536&&(r+=e[i+1])):r+=o||wi(n);return r}function Pi(e,r,n){var o="",i=e.tag,t,l,u;for(t=0,l=n.length;t<l;t+=1)u=n[t],e.replacer&&(u=e.replacer.call(n,String(t),u)),(T(e,r,u,!1,!1)||typeof u>"u"&&T(e,r,null,!1,!1))&&(o!==""&&(o+=","+(e.condenseFlow?"":" ")),o+=e.dump);e.tag=i,e.dump="["+o+"]"}function Ne(e,r,n,o){var i="",t=e.tag,l,u,c;for(l=0,u=n.length;l<u;l+=1)c=n[l],e.replacer&&(c=e.replacer.call(n,String(l),c)),(T(e,r+1,c,!0,!0,!1,!0)||typeof c>"u"&&T(e,r+1,null,!0,!0,!1,!0))&&((!o||i!=="")&&(i+=ae(e,r)),e.dump&&H===e.dump.charCodeAt(0)?i+="-":i+="- ",i+=e.dump);e.tag=t,e.dump=i||"[]"}function Oi(e,r,n){var o="",i=e.tag,t=Object.keys(n),l,u,c,a,f;for(l=0,u=t.length;l<u;l+=1)f="",o!==""&&(f+=", "),e.condenseFlow&&(f+='"'),c=t[l],a=n[c],e.replacer&&(a=e.replacer.call(n,c,a)),T(e,r,c,!1,!1)&&(e.dump.length>1024&&(f+="? "),f+=e.dump+(e.condenseFlow?'"':"")+":"+(e.condenseFlow?"":" "),T(e,r,a,!1,!1)&&(f+=e.dump,o+=f));e.tag=i,e.dump="{"+o+"}"}function Li(e,r,n,o){var i="",t=e.tag,l=Object.keys(n),u,c,a,f,s,d;if(e.sortKeys===!0)l.sort();else if(typeof e.sortKeys=="function")l.sort(e.sortKeys);else if(e.sortKeys)throw new E("sortKeys must be a boolean or a function");for(u=0,c=l.length;u<c;u+=1)d="",(!o||i!=="")&&(d+=ae(e,r)),a=l[u],f=n[a],e.replacer&&(f=e.replacer.call(n,a,f)),T(e,r+1,a,!0,!0,!0)&&(s=e.tag!==null&&e.tag!=="?"||e.dump&&e.dump.length>1024,s&&(e.dump&&H===e.dump.charCodeAt(0)?d+="?":d+="? "),d+=e.dump,s&&(d+=ae(e,r)),T(e,r+1,f,!0,s)&&(e.dump&&H===e.dump.charCodeAt(0)?d+=":":d+=": ",d+=e.dump,i+=d));e.tag=t,e.dump=i||"{}"}function Re(e,r,n){var o,i,t,l,u,c;for(i=n?e.explicitTypes:e.implicitTypes,t=0,l=i.length;t<l;t+=1)if(u=i[t],(u.instanceOf||u.predicate)&&(!u.instanceOf||typeof r=="object"&&r instanceof u.instanceOf)&&(!u.predicate||u.predicate(r))){if(n?u.multi&&u.representName?e.tag=u.representName(r):e.tag=u.tag:e.tag="?",u.represent){if(c=e.styleMap[u.tag]||u.defaultStyle,dr.call(u.represent)==="[object Function]")o=u.represent(r,c);else if(hr.call(u.represent,c))o=u.represent[c](r,c);else throw new E("!<"+u.tag+'> tag resolver accepts not "'+c+'" style');e.dump=o}return!0}return!1}function T(e,r,n,o,i,t,l){e.tag=null,e.dump=n,Re(e,n,!1)||Re(e,n,!0);var u=dr.call(e.dump),c=o,a;o&&(o=e.flowLevel<0||e.flowLevel>r);var f=u==="[object Object]"||u==="[object Array]",s,d;if(f&&(s=e.duplicates.indexOf(n),d=s!==-1),(e.tag!==null&&e.tag!=="?"||d||e.indent!==2&&r>0)&&(i=!1),d&&e.usedDuplicates[s])e.dump="*ref_"+s;else{if(f&&d&&!e.usedDuplicates[s]&&(e.usedDuplicates[s]=!0),u==="[object Object]")o&&Object.keys(e.dump).length!==0?(Li(e,r,e.dump,i),d&&(e.dump="&ref_"+s+e.dump)):(Oi(e,r,e.dump),d&&(e.dump="&ref_"+s+" "+e.dump));else if(u==="[object Array]")o&&e.dump.length!==0?(e.noArrayIndent&&!l&&r>0?Ne(e,r-1,e.dump,i):Ne(e,r,e.dump,i),d&&(e.dump="&ref_"+s+e.dump)):(Pi(e,r,e.dump),d&&(e.dump="&ref_"+s+" "+e.dump));else if(u==="[object String]")e.tag!=="?"&&Ii(e,e.dump,r,t,c);else{if(u==="[object Undefined]")return!1;if(e.skipInvalid)return!1;throw new E("unacceptable kind of an object to dump "+u)}e.tag!==null&&e.tag!=="?"&&(a=encodeURI(e.tag[0]==="!"?e.tag.slice(1):e.tag).replace(/!/g,"%21"),e.tag[0]==="!"?a="!"+a:a.slice(0,18)==="tag:yaml.org,2002:"?a="!!"+a.slice(18):a="!<"+a+">",e.dump=a+" "+e.dump)}return!0}function Ni(e,r){var n=[],o=[],i,t;for(fe(e,n,o),i=0,t=o.length;i<t;i+=1)r.duplicates.push(n[o[i]]);r.usedDuplicates=new Array(t)}function fe(e,r,n){var o,i,t;if(e!==null&&typeof e=="object")if(i=r.indexOf(e),i!==-1)n.indexOf(i)===-1&&n.push(i);else if(r.push(e),Array.isArray(e))for(i=0,t=e.length;i<t;i+=1)fe(e[i],r,n);else for(o=Object.keys(e),i=0,t=o.length;i<t;i+=1)fe(e[o[i]],r,n)}function Ri(e,r){r=r||{};var n=new Ei(r);n.noRefs||Ni(e,n);var o=e;return n.replacer&&(o=n.replacer.call({"":o},"",o)),T(n,0,o,!0,!0)?n.dump+`
33
+ `:""}var Di=Ri,Mi={dump:Di};function xe(e,r){return function(){throw new Error("Function yaml."+e+" is removed in js-yaml 4. Use yaml."+r+" instead, which is now safe by default.")}}var Gi=w,$i=Ge,ji=Be,Yi=We,Bi=Qe,Hi=de,Ui=pr.load,Ki=pr.loadAll,qi=Mi.dump,Wi=E,Qi={binary:ze,float:qe,map:Ye,null:He,pairs:rr,set:nr,timestamp:Je,bool:Ue,int:Ke,merge:Ze,omap:er,seq:je,str:$e},Vi=xe("safeLoad","load"),Xi=xe("safeLoadAll","loadAll"),Ji=xe("safeDump","dump"),Sr={Type:Gi,Schema:$i,FAILSAFE_SCHEMA:ji,JSON_SCHEMA:Yi,CORE_SCHEMA:Bi,DEFAULT_SCHEMA:Hi,load:Ui,loadAll:Ki,dump:qi,YAMLException:Wi,types:Qi,safeLoad:Vi,safeLoadAll:Xi,safeDump:Ji};var ee=".cligr.yml",L=class extends Error{constructor(r){super(r),this.name="ConfigError"}},k=class{configPath;constructor(r){if(r)this.configPath=q.resolve(r);else{let n=q.join(_r.homedir(),ee),o=q.resolve(ee);z.existsSync(n)?this.configPath=n:z.existsSync(o)?this.configPath=o:this.configPath=n}}load(){if(!z.existsSync(this.configPath))throw new L(`Config file not found. Looking for:
34
+ - ${q.join(_r.homedir(),ee)}
35
+ - ${q.resolve(ee)}`);let r=z.readFileSync(this.configPath,"utf-8"),n;try{n=Sr.load(r)}catch(o){throw new L(`Invalid YAML: ${o.message}`)}return this.validate(n)}validate(r){if(!r||typeof r!="object")throw new L("Config must be an object");let n=r;if(!n.groups||typeof n.groups!="object")throw new L('Config must have a "groups" object');return n}getGroup(r){let n=this.load(),o=n.groups[r];if(!o){let l=Object.keys(n.groups).join(", ");throw new L(`Unknown group: ${r}. Available: ${l}`)}let i=null,t=null;return n.tools&&n.tools[o.tool]?(i=n.tools[o.tool].cmd,t=o.tool):(t=null,i=null),{config:o,tool:t,toolTemplate:i}}listGroups(){let r=this.load();return Object.keys(r.groups)}};var re=class{static expand(r,n,o){let i=n.split(",").map(u=>u.trim()),t=i[0]||`item-${o}`,l=r;for(let u=i.length-1;u>=0;u--){let c=`$${u+1}`;l=l.replaceAll(c,i[u])}return{name:t,args:i,fullCmd:l}}static parseItem(r,n,o,i){if(n){let t=this.expand(n,o,i),l=n.match(/\$\d+/g)||[],u=0;for(let c of l){let a=parseInt(c.substring(1),10);a>u&&(u=a)}if(u>0&&t.args.length>u){let c=t.args.slice(u);t.fullCmd=`${t.fullCmd} ${c.join(" ")}`}return t}else{let t=o.split(",").map(c=>c.trim()),l=t[0]||`item-${i}`;!o.includes(",")&&t.length===1&&(l=t[0].split(/\s+/)[0]||`item-${i}`);let u=r?`${r} ${o}`:o;return{name:l,args:t,fullCmd:u}}}};import{spawn as zi}from"child_process";import{promises as N}from"fs";import ne from"path";import Zi from"os";var $=class{pidsDir;constructor(){this.pidsDir=ne.join(Zi.homedir(),".cligr","pids")}async ensureDir(){try{await N.mkdir(this.pidsDir,{recursive:!0})}catch(r){if(r.code!=="EEXIST")throw r}}getPidFilePath(r,n){return ne.join(this.pidsDir,`${r}_${n}.pid`)}async writePid(r){await this.ensureDir();let n=this.getPidFilePath(r.groupName,r.itemName);await N.writeFile(n,JSON.stringify(r,null,2),"utf-8")}async readPidsByGroup(r){await this.ensureDir();let n=[];try{let o=await N.readdir(this.pidsDir),i=`${r}_`;for(let t of o)if(t.startsWith(i)&&t.endsWith(".pid"))try{let l=await N.readFile(ne.join(this.pidsDir,t),"utf-8");n.push(JSON.parse(l))}catch{continue}}catch{return[]}return n}async readAllPids(){await this.ensureDir();let r=[];try{let n=await N.readdir(this.pidsDir);for(let o of n)if(o.endsWith(".pid"))try{let i=await N.readFile(ne.join(this.pidsDir,o),"utf-8");r.push(JSON.parse(i))}catch{continue}}catch{return[]}return r}async deletePid(r,n){let o=this.getPidFilePath(r,n);try{await N.unlink(o)}catch(i){if(i.code!=="ENOENT")throw i}}async deleteGroupPids(r){let n=await this.readPidsByGroup(r);for(let o of n)await this.deletePid(o.groupName,o.itemName)}isPidRunning(r){try{return process.kill(r,0),!0}catch{return!1}}isPidEntryValid(r){if(!this.isPidRunning(r.pid))return!1;let n=Date.now()-5*60*1e3;return r.startTime>n}async cleanupStalePids(){let r=await this.readAllPids(),n=[];for(let o of r)this.isPidEntryValid(o)||(n.push(o),await this.deletePid(o.groupName,o.itemName));return n}async getRunningGroups(){let r=await this.readAllPids(),n=new Set(r.map(o=>o.groupName));return Array.from(n)}};var ve=class{constructor(r,n,o="running"){this.item=r;this.process=n;this.status=o}},ie=class{groups=new Map;restartTimestamps=new Map;maxRestarts=3;restartWindow=1e4;pidStore=new $;spawnGroup(r,n,o){if(this.groups.has(r))throw new Error(`Group ${r} is already running`);let i=[];for(let t of n){let l=this.spawnProcess(t,r,o);i.push(new ve(t,l))}this.groups.set(r,i)}spawnProcess(r,n,o){let{cmd:i,args:t}=this.parseCommand(r.fullCmd),l=zi(i,t,{stdio:["inherit","pipe","pipe"],shell:!1,windowsHide:!0});if(this.pidStore.deletePid(n,r.name).catch(()=>{}),l.pid){let u={pid:l.pid,groupName:n,itemName:r.name,startTime:Date.now(),restartPolicy:o,fullCmd:r.fullCmd};this.pidStore.writePid(u).catch(c=>{console.error(`[${r.name}] Failed to write PID file:`,c)})}return l.stdout&&l.stdout.on("data",u=>{process.stdout.write(`[${r.name}] ${u}`)}),l.stderr&&l.stderr.on("data",u=>{process.stderr.write(`[${r.name}] ${u}`)}),l.on("exit",(u,c)=>{this.handleExit(n,r,o,u,c)}),l}parseCommand(r){let n=[],o="",i=!1,t="";for(let l=0;l<r.length;l++){let u=r[l],c=r[l+1];(u==='"'||u==="'")&&!i?(i=!0,t=u):u===t&&i?(i=!1,t=""):u===" "&&!i?o&&(n.push(o),o=""):o+=u}return o&&n.push(o),{cmd:n[0]||"",args:n.slice(1)}}handleExit(r,n,o,i,t){if(o==="unless-stopped"&&t==="SIGTERM"){this.pidStore.deletePid(r,n.name).catch(()=>{});return}if(o==="no"){this.pidStore.deletePid(r,n.name).catch(()=>{});return}let l=`${r}-${n.name}`,u=Date.now(),a=(this.restartTimestamps.get(l)||[]).filter(f=>u-f<this.restartWindow);if(a.push(u),this.restartTimestamps.set(l,a),a.length>this.maxRestarts){console.error(`[${n.name}] Crash loop detected. Stopping restarts.`),this.pidStore.deletePid(r,n.name).catch(()=>{});return}setTimeout(()=>{console.log(`[${n.name}] Restarting... (exit code: ${i})`);let f=this.spawnProcess(n,r,o),s=this.groups.get(r);if(s){let d=s.find(h=>h.item.name===n.name);d&&(d.process=f)}},1e3)}killGroup(r){let n=this.groups.get(r);if(!n)return Promise.resolve();let o=n.map(i=>this.killProcess(i.process));return this.groups.delete(r),Promise.all(o).then(async()=>{await this.pidStore.deleteGroupPids(r)})}killPid(r){return new Promise((n,o)=>{try{process.kill(r,"SIGTERM");let i=setTimeout(()=>{try{process.kill(r,"SIGKILL")}catch{}},5e3),t=setInterval(()=>{this.pidStore.isPidRunning(r)||(clearTimeout(i),clearInterval(t),n())},100);this.pidStore.isPidRunning(r)||(clearTimeout(i),clearInterval(t),n())}catch(i){o(i)}})}killProcess(r){return new Promise(n=>{r.kill("SIGTERM");let o=setTimeout(()=>{r.killed||r.kill("SIGKILL")},5e3);r.on("exit",()=>{clearTimeout(o),n()}),(r.killed||r.exitCode!==null)&&(clearTimeout(o),n())})}killAll(){let r=[];for(let n of this.groups.keys())r.push(this.killGroup(n));return Promise.all(r).then(()=>{})}getGroupStatus(r){let n=this.groups.get(r);return n?n.map(o=>o.status):[]}isGroupRunning(r){return this.groups.has(r)}getRunningGroups(){return Array.from(this.groups.keys())}};async function ye(e){let r=new k,n=new ie,o=new $;try{await o.cleanupStalePids();let{config:i,tool:t,toolTemplate:l}=r.getGroup(e),u=i.items.map((c,a)=>re.parseItem(t,l,c,a));return n.spawnGroup(e,u,i.restart),console.log(`Started group ${e} with ${u.length} process(es)`),console.log("Press Ctrl+C to stop..."),new Promise(c=>{let a=async()=>{console.log(`
36
+ Shutting down...`),process.removeListener("SIGINT",a),process.removeListener("SIGTERM",a),await n.killAll(),c(0)};process.on("SIGINT",a),process.on("SIGTERM",a)})}catch(i){if(i instanceof Error&&i.name==="ConfigError")return console.error(i.message),1;throw i}}async function br(e){let r=new k;try{let{config:n}=r.getGroup(e);console.log(`
37
+ Group: ${e}`),console.log(`Tool: ${n.tool}`),console.log(`Restart: ${n.restart}`),console.log(`
38
+ Items:`);for(let o of n.items)console.log(` - ${o}`);return console.log(""),0}catch(n){return console.error(n.message),1}}import{spawn as eo,spawnSync as Ir}from"child_process";import j from"fs";import ro from"os";import Ae from"path";var Tr=".cligr.yml",no=`# Cligr Configuration
39
39
 
40
40
  groups:
41
41
  web:
@@ -61,32 +61,29 @@ tools:
61
61
  # - $1 = name (first value)
62
62
  # - $2, $3... = additional arguments
63
63
  # - If no tool specified, executes directly
64
- `;function eo(){let e=process.platform;return In(e==="win32"?"where":"which",["code"],{stdio:"ignore"}).status===0?"code":process.env.EDITOR?process.env.EDITOR:e==="win32"?"notepad.exe":"vim"}function no(e,n){let r=process.platform;if(In(r==="win32"?"where":"which",[n],{stdio:"ignore"}).status!==0&&n!==process.env.EDITOR)throw new Error(`Editor '${n}' not found.
64
+ `;function io(){let e=process.platform;return Ir(e==="win32"?"where":"which",["code"],{stdio:"ignore"}).status===0?"code":process.env.EDITOR?process.env.EDITOR:e==="win32"?"notepad.exe":"vim"}function oo(e,r){let n=process.platform;if(Ir(n==="win32"?"where":"which",[r],{stdio:"ignore"}).status!==0&&r!==process.env.EDITOR)throw new Error(`Editor '${r}' not found.
65
65
  Install VS Code or set EDITOR environment variable.
66
66
 
67
67
  Example:
68
68
  export EDITOR=vim
69
- cligr config`);Zi(n,[e],{detached:!0,stdio:"ignore",shell:r==="win32"}).unref()}function ro(e){let n=ge.dirname(e);$.existsSync(n)||$.mkdirSync(n,{recursive:!0}),$.writeFileSync(e,Ji,"utf-8")}async function Fn(){try{let e=ge.join(zi.homedir(),Tn),n=ge.resolve(Tn),r;$.existsSync(e)?r=e:$.existsSync(n)?r=n:r=e,$.existsSync(r)||ro(r);let o=eo();return no(r,o),console.log(`Opening ${r} in ${o}...`),0}catch(e){return console.error(`Error: ${e.message}`),1}}async function kn(e){let n=new k;try{let r=n.listGroups();if(r.length===0)return 0;if(e){let o=n.load(),i=[];for(let f of r){let s=o.groups[f];i.push({name:f,tool:s.tool||"(none)",restart:s.restart||"(none)",itemCount:s.items.length})}let t=Math.max(5,...i.map(f=>f.name.length)),l=Math.max(4,...i.map(f=>f.tool.length)),u=Math.max(7,...i.map(f=>f.restart.length)),c="GROUP".padEnd(t)+" "+"TOOL".padEnd(l)+" "+"RESTART".padEnd(u)+" ITEMS";console.log(c);for(let f of i){let s=f.name.padEnd(t)+" "+f.tool.padEnd(l)+" "+f.restart.padEnd(u)+" "+String(f.itemCount);console.log(s)}}else for(let o of r)console.log(o);return 0}catch(r){return console.error(r.message),1}}async function io(){let e=process.argv.slice(2);if(e.length===0){xe(),process.exit(1);return}let[n,...r]=e,o,i=!1;if(n==="groups"){let l=r.findIndex(u=>u==="-v"||u==="--verbose");l!==-1&&(i=!0,r.splice(l,1))}if(o=r[0],n!=="config"&&n!=="groups"&&!o){console.error("Error: group name required"),xe(),process.exit(1);return}let t=0;switch(n){case"config":t=await Fn();break;case"up":t=await Sn(o);break;case"ls":t=await _n(o);break;case"down":t=await bn(o);break;case"groups":t=await kn(i);break;default:console.error(`Error: unknown command '${n}'`),xe(),t=1}process.exit(t)}function xe(){console.log(`
70
- Usage: cligr <command> [options] [group]
69
+ cligr config`);eo(r,[e],{detached:!0,stdio:"ignore",shell:n==="win32"}).unref()}function lo(e){let r=Ae.dirname(e);j.existsSync(r)||j.mkdirSync(r,{recursive:!0}),j.writeFileSync(e,no,"utf-8")}async function Fr(){try{let e=Ae.join(ro.homedir(),Tr),r=Ae.resolve(Tr),n;j.existsSync(e)?n=e:j.existsSync(r)?n=r:n=e,j.existsSync(n)||lo(n);let o=io();return oo(n,o),console.log(`Opening ${n} in ${o}...`),0}catch(e){return console.error(`Error: ${e.message}`),1}}async function kr(e){let r=new k;try{let n=r.listGroups();if(n.length===0)return 0;if(e){let o=r.load(),i=[];for(let a of n){let f=o.groups[a];i.push({name:a,tool:f.tool||"(none)",restart:f.restart||"(none)",itemCount:f.items.length})}let t=Math.max(5,...i.map(a=>a.name.length)),l=Math.max(4,...i.map(a=>a.tool.length)),u=Math.max(7,...i.map(a=>a.restart.length)),c="GROUP".padEnd(t)+" "+"TOOL".padEnd(l)+" "+"RESTART".padEnd(u)+" ITEMS";console.log(c);for(let a of i){let f=a.name.padEnd(t)+" "+a.tool.padEnd(l)+" "+a.restart.padEnd(u)+" "+String(a.itemCount);console.log(f)}}else for(let o of n)console.log(o);return 0}catch(n){return console.error(n.message),1}}async function to(){let e=process.argv.slice(2);if(e.length===0){Pr(),process.exit(1);return}let[r,...n]=e,o=!1;if(["config","up","ls","groups"].includes(r)){let t=r,l;if(t==="groups"){let c=n.findIndex(a=>a==="-v"||a==="--verbose");c!==-1&&(o=!0,n.splice(c,1))}if(l=n[0],t!=="config"&&t!=="groups"&&!l){console.error("Error: group name required"),Pr(),process.exit(1);return}let u=0;switch(t){case"config":u=await Fr();break;case"up":u=await ye(l);break;case"ls":u=await br(l);break;case"groups":u=await kr(o);break}process.exit(u)}else{let t=await ye(r);process.exit(t)}}function Pr(){console.log(`
70
+ Usage: cligr <group> | <command> [options]
71
71
 
72
72
  Commands:
73
73
  config Open config file in editor
74
- up <group> Start all processes in the group
75
74
  ls <group> List all items in the group
76
- down <group> Stop the group (Ctrl+C also works)
77
75
  groups [-v|--verbose] List all groups
78
76
 
79
77
  Options:
80
78
  -v, --verbose Show detailed group information
81
79
 
82
80
  Examples:
81
+ cligr test1 Start all processes in test1 group
83
82
  cligr config
84
- cligr up test1
85
83
  cligr ls test1
86
- cligr down test1
87
84
  cligr groups
88
85
  cligr groups -v
89
- `)}io().catch(e=>{console.error(e),process.exit(2)});
86
+ `)}to().catch(e=>{console.error(e),process.exit(2)});
90
87
  /*! Bundled license information:
91
88
 
92
89
  js-yaml/dist/js-yaml.mjs: