@mcp-com-ai/shared-utils 1.0.1-beta.260912

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.
@@ -0,0 +1,30 @@
1
+ export interface HapiGlobalConfig {
2
+ /** Default infrastructure provider for `hapi deploy`. */
3
+ infraProvider?: string;
4
+ /** Default project for open-ended commands. */
5
+ defaultProject?: string;
6
+ /** Plugin allowlist: explicit package names the CLI will load. */
7
+ plugins?: string[];
8
+ /** Plugin blocklist: package names the CLI refuses to load. */
9
+ pluginsDisabled?: string[];
10
+ /** Feature flag bag. */
11
+ flags?: Record<string, boolean>;
12
+ /** Telemetry opt-out. */
13
+ analyticsOptout?: boolean;
14
+ /** Free-form keys. Plugins can store plugin-specific keys here. */
15
+ [key: string]: unknown;
16
+ }
17
+ /**
18
+ * Load the global HAPI config. Cached after first read.
19
+ * Pass `{ force: true }` to bypass the cache (useful in tests).
20
+ */
21
+ export declare function loadGlobalConfig(opts?: {
22
+ force?: boolean;
23
+ }): Promise<HapiGlobalConfig>;
24
+ /**
25
+ * Persist the global config back to disk. Silently no-ops when the
26
+ * runtime cannot write to disk.
27
+ */
28
+ export declare function saveGlobalConfig(config: HapiGlobalConfig): Promise<void>;
29
+ export declare function readConfigFile<T = unknown>(filePath: string): Promise<T | null>;
30
+ export declare function clearConfigCache(): void;
package/dist/config.js ADDED
@@ -0,0 +1,140 @@
1
+ // @bun
2
+ var VU=Object.create;var{getPrototypeOf:RU,defineProperty:e$,getOwnPropertyNames:FU}=Object;var PU=Object.prototype.hasOwnProperty;function MU(q){return this[q]}var AU,wU,KU=(q,$,U)=>{var H=q!=null&&typeof q==="object";if(H){var X=$?AU??=new WeakMap:wU??=new WeakMap,Z=X.get(q);if(Z)return Z}U=q!=null?VU(RU(q)):{};let z=$||!q||!q.__esModule?e$(U,"default",{value:q,enumerable:!0}):U;for(let J of FU(q))if(!PU.call(z,J))e$(z,J,{get:MU.bind(q,J),enumerable:!0});if(H)X.set(q,z);return z};var L=(q,$)=>()=>($||q(($={exports:{}}).exports,$),$.exports);var l=import.meta.require;var w=L((iU)=>{var uq=Symbol.for("yaml.alias"),Q2=Symbol.for("yaml.document"),i0=Symbol.for("yaml.map"),G2=Symbol.for("yaml.pair"),vq=Symbol.for("yaml.scalar"),r0=Symbol.for("yaml.seq"),m=Symbol.for("yaml.node.type"),mU=(q)=>!!q&&typeof q==="object"&&q[m]===uq,pU=(q)=>!!q&&typeof q==="object"&&q[m]===Q2,dU=(q)=>!!q&&typeof q==="object"&&q[m]===i0,lU=(q)=>!!q&&typeof q==="object"&&q[m]===G2,T2=(q)=>!!q&&typeof q==="object"&&q[m]===vq,cU=(q)=>!!q&&typeof q==="object"&&q[m]===r0;function Y2(q){if(q&&typeof q==="object")switch(q[m]){case i0:case r0:return!0}return!1}function aU(q){if(q&&typeof q==="object")switch(q[m]){case uq:case i0:case vq:case r0:return!0}return!1}var sU=(q)=>(T2(q)||Y2(q))&&!!q.anchor;iU.ALIAS=uq;iU.DOC=Q2;iU.MAP=i0;iU.NODE_TYPE=m;iU.PAIR=G2;iU.SCALAR=vq;iU.SEQ=r0;iU.hasAnchor=sU;iU.isAlias=mU;iU.isCollection=Y2;iU.isDocument=pU;iU.isMap=dU;iU.isNode=aU;iU.isPair=lU;iU.isScalar=T2;iU.isSeq=cU});var w0=L((Y4)=>{var b=w(),C=Symbol("break visit"),W2=Symbol("skip children"),u=Symbol("remove node");function n0(q,$){let U=I2($);if(b.isDocument(q)){if(Y0(null,q.contents,U,Object.freeze([q]))===u)q.contents=null}else Y0(null,q,U,Object.freeze([]))}n0.BREAK=C;n0.SKIP=W2;n0.REMOVE=u;function Y0(q,$,U,H){let X=B2(q,$,U,H);if(b.isNode(X)||b.isPair(X))return _2(q,H,X),Y0(q,X,U,H);if(typeof X!=="symbol"){if(b.isCollection($)){H=Object.freeze(H.concat($));for(let Z=0;Z<$.items.length;++Z){let z=Y0(Z,$.items[Z],U,H);if(typeof z==="number")Z=z-1;else if(z===C)return C;else if(z===u)$.items.splice(Z,1),Z-=1}}else if(b.isPair($)){H=Object.freeze(H.concat($));let Z=Y0("key",$.key,U,H);if(Z===C)return C;else if(Z===u)$.key=null;let z=Y0("value",$.value,U,H);if(z===C)return C;else if(z===u)$.value=null}}return X}async function o0(q,$){let U=I2($);if(b.isDocument(q)){if(await W0(null,q.contents,U,Object.freeze([q]))===u)q.contents=null}else await W0(null,q,U,Object.freeze([]))}o0.BREAK=C;o0.SKIP=W2;o0.REMOVE=u;async function W0(q,$,U,H){let X=await B2(q,$,U,H);if(b.isNode(X)||b.isPair(X))return _2(q,H,X),W0(q,X,U,H);if(typeof X!=="symbol"){if(b.isCollection($)){H=Object.freeze(H.concat($));for(let Z=0;Z<$.items.length;++Z){let z=await W0(Z,$.items[Z],U,H);if(typeof z==="number")Z=z-1;else if(z===C)return C;else if(z===u)$.items.splice(Z,1),Z-=1}}else if(b.isPair($)){H=Object.freeze(H.concat($));let Z=await W0("key",$.key,U,H);if(Z===C)return C;else if(Z===u)$.key=null;let z=await W0("value",$.value,U,H);if(z===C)return C;else if(z===u)$.value=null}}return X}function I2(q){if(typeof q==="object"&&(q.Collection||q.Node||q.Value))return Object.assign({Alias:q.Node,Map:q.Node,Scalar:q.Node,Seq:q.Node},q.Value&&{Map:q.Value,Scalar:q.Value,Seq:q.Value},q.Collection&&{Map:q.Collection,Seq:q.Collection},q);return q}function B2(q,$,U,H){if(typeof U==="function")return U(q,$,H);if(b.isMap($))return U.Map?.(q,$,H);if(b.isSeq($))return U.Seq?.(q,$,H);if(b.isPair($))return U.Pair?.(q,$,H);if(b.isScalar($))return U.Scalar?.(q,$,H);if(b.isAlias($))return U.Alias?.(q,$,H);return}function _2(q,$,U){let H=$[$.length-1];if(b.isCollection(H))H.items[q]=U;else if(b.isPair(H))if(q==="key")H.key=U;else H.value=U;else if(b.isDocument(H))H.contents=U;else{let X=b.isAlias(H)?"alias":"scalar";throw Error(`Cannot replace node with ${X} parent`)}}Y4.visit=n0;Y4.visitAsync=o0});var mq=L((O4)=>{var L2=w(),B4=w0(),_4={"!":"%21",",":"%2C","[":"%5B","]":"%5D","{":"%7B","}":"%7D"},L4=(q)=>q.replace(/[!,[\]{}]/g,($)=>_4[$]);class g{constructor(q,$){this.docStart=null,this.docEnd=!1,this.yaml=Object.assign({},g.defaultYaml,q),this.tags=Object.assign({},g.defaultTags,$)}clone(){let q=new g(this.yaml,this.tags);return q.docStart=this.docStart,q}atDocument(){let q=new g(this.yaml,this.tags);switch(this.yaml.version){case"1.1":this.atNextDocument=!0;break;case"1.2":this.atNextDocument=!1,this.yaml={explicit:g.defaultYaml.explicit,version:"1.2"},this.tags=Object.assign({},g.defaultTags);break}return q}add(q,$){if(this.atNextDocument)this.yaml={explicit:g.defaultYaml.explicit,version:"1.1"},this.tags=Object.assign({},g.defaultTags),this.atNextDocument=!1;let U=q.trim().split(/[ \t]+/),H=U.shift();switch(H){case"%TAG":{if(U.length!==2){if($(0,"%TAG directive should contain exactly two parts"),U.length<2)return!1}let[X,Z]=U;return this.tags[X]=Z,!0}case"%YAML":{if(this.yaml.explicit=!0,U.length!==1)return $(0,"%YAML directive should contain exactly one part"),!1;let[X]=U;if(X==="1.1"||X==="1.2")return this.yaml.version=X,!0;else{let Z=/^\d+\.\d+$/.test(X);return $(6,`Unsupported YAML version ${X}`,Z),!1}}default:return $(0,`Unknown directive ${H}`,!0),!1}}tagName(q,$){if(q==="!")return"!";if(q[0]!=="!")return $(`Not a valid tag: ${q}`),null;if(q[1]==="<"){let Z=q.slice(2,-1);if(Z==="!"||Z==="!!")return $(`Verbatim tags aren't resolved, so ${q} is invalid.`),null;if(q[q.length-1]!==">")$("Verbatim tags must end with a >");return Z}let[,U,H]=q.match(/^(.*!)([^!]*)$/s);if(!H)$(`The ${q} tag has no suffix`);let X=this.tags[U];if(X)try{return X+decodeURIComponent(H)}catch(Z){return $(String(Z)),null}if(U==="!")return q;return $(`Could not resolve tag: ${q}`),null}tagString(q){for(let[$,U]of Object.entries(this.tags))if(q.startsWith(U))return $+L4(q.substring(U.length));return q[0]==="!"?q:`!<${q}>`}toString(q){let $=this.yaml.explicit?[`%YAML ${this.yaml.version||"1.2"}`]:[],U=Object.entries(this.tags),H;if(q&&U.length>0&&L2.isNode(q.contents)){let X={};B4.visit(q.contents,(Z,z)=>{if(L2.isNode(z)&&z.tag)X[z.tag]=!0}),H=Object.keys(X)}else H=[];for(let[X,Z]of U){if(X==="!!"&&Z==="tag:yaml.org,2002:")continue;if(!q||H.some((z)=>z.startsWith(Z)))$.push(`%TAG ${X} ${Z}`)}return $.join(`
3
+ `)}}g.defaultYaml={explicit:!1,version:"1.2"};g.defaultTags={"!!":"tag:yaml.org,2002:"};O4.Directives=g});var t0=L((P4)=>{var O2=w(),V4=w0();function R4(q){if(/[\x00-\x19\s,[\]{}]/.test(q)){let U=`Anchor must not contain whitespace or control characters: ${JSON.stringify(q)}`;throw Error(U)}return!0}function D2(q){let $=new Set;return V4.visit(q,{Value(U,H){if(H.anchor)$.add(H.anchor)}}),$}function V2(q,$){for(let U=1;;++U){let H=`${q}${U}`;if(!$.has(H))return H}}function F4(q,$){let U=[],H=new Map,X=null;return{onAnchor:(Z)=>{U.push(Z),X??(X=D2(q));let z=V2($,X);return X.add(z),z},setAnchors:()=>{for(let Z of U){let z=H.get(Z);if(typeof z==="object"&&z.anchor&&(O2.isScalar(z.node)||O2.isCollection(z.node)))z.node.anchor=z.anchor;else{let J=Error("Failed to resolve repeated object (this should not happen)");throw J.source=Z,J}}},sourceObjects:H}}P4.anchorIsValid=R4;P4.anchorNames=D2;P4.createNodeAnchors=F4;P4.findNewAnchor=V2});var pq=L((N4)=>{function K0(q,$,U,H){if(H&&typeof H==="object")if(Array.isArray(H))for(let X=0,Z=H.length;X<Z;++X){let z=H[X],J=K0(q,H,String(X),z);if(J===void 0)delete H[X];else if(J!==z)H[X]=J}else if(H instanceof Map)for(let X of Array.from(H.keys())){let Z=H.get(X),z=K0(q,H,X,Z);if(z===void 0)H.delete(X);else if(z!==Z)H.set(X,z)}else if(H instanceof Set)for(let X of Array.from(H)){let Z=K0(q,H,X,X);if(Z===void 0)H.delete(X);else if(Z!==X)H.delete(X),H.add(Z)}else for(let[X,Z]of Object.entries(H)){let z=K0(q,H,X,Z);if(z===void 0)delete H[X];else if(z!==Z)H[X]=z}return q.call($,U,H)}N4.applyReviver=K0});var c=L((b4)=>{var S4=w();function R2(q,$,U){if(Array.isArray(q))return q.map((H,X)=>R2(H,String(X),U));if(q&&typeof q.toJSON==="function"){if(!U||!S4.hasAnchor(q))return q.toJSON($,U);let H={aliasCount:0,count:1,res:void 0};U.anchors.set(q,H),U.onCreate=(Z)=>{H.res=Z,delete U.onCreate};let X=q.toJSON($,U);if(U.onCreate)U.onCreate(X);return X}if(typeof q==="bigint"&&!U?.keep)return Number(q);return q}b4.toJS=R2});var e0=L((f4)=>{var E4=pq(),F2=w(),g4=c();class P2{constructor(q){Object.defineProperty(this,F2.NODE_TYPE,{value:q})}clone(){let q=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));if(this.range)q.range=this.range.slice();return q}toJS(q,{mapAsMap:$,maxAliasCount:U,onAnchor:H,reviver:X}={}){if(!F2.isDocument(q))throw TypeError("A document argument is required");let Z={anchors:new Map,doc:q,keep:!0,mapAsMap:$===!0,mapKeyWarned:!1,maxAliasCount:typeof U==="number"?U:100},z=g4.toJS(this,"",Z);if(typeof H==="function")for(let{count:J,res:Q}of Z.anchors.values())H(Q,J);return typeof X==="function"?E4.applyReviver(X,{"":z},"",z):z}}f4.NodeBase=P2});var N0=L((v4)=>{var k4=t0(),x4=w0(),I0=w(),h4=e0(),u4=c();class M2 extends h4.NodeBase{constructor(q){super(I0.ALIAS);this.source=q,Object.defineProperty(this,"tag",{set(){throw Error("Alias nodes cannot have tags")}})}resolve(q,$){if($?.maxAliasCount===0)throw ReferenceError("Alias resolution is disabled");let U;if($?.aliasResolveCache)U=$.aliasResolveCache;else if(U=[],x4.visit(q,{Node:(X,Z)=>{if(I0.isAlias(Z)||I0.hasAnchor(Z))U.push(Z)}}),$)$.aliasResolveCache=U;let H=void 0;for(let X of U){if(X===this)break;if(X.anchor===this.source)H=X}return H}toJSON(q,$){if(!$)return{source:this.source};let{anchors:U,doc:H,maxAliasCount:X}=$,Z=this.resolve(H,$);if(!Z){let J=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw ReferenceError(J)}let z=U.get(Z);if(!z)u4.toJS(Z,null,$),z=U.get(Z);if(z?.res===void 0)throw ReferenceError("This should not happen: Alias anchor was not resolved?");if(X>=0){if(z.count+=1,z.aliasCount===0)z.aliasCount=qq(H,Z,U);if(z.count*z.aliasCount>X)throw ReferenceError("Excessive alias count indicates a resource exhaustion attack")}return z.res}toString(q,$,U){let H=`*${this.source}`;if(q){if(k4.anchorIsValid(this.source),q.options.verifyAliasOrder&&!q.anchors.has(this.source)){let X=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw Error(X)}if(q.implicitKey)return`${H} `}return H}}function qq(q,$,U){if(I0.isAlias($)){let H=$.resolve(q),X=U&&H&&U.get(H);return X?X.count*X.aliasCount:0}else if(I0.isCollection($)){let H=0;for(let X of $.items){let Z=qq(q,X,U);if(Z>H)H=Z}return H}else if(I0.isPair($)){let H=qq(q,$.key,U),X=qq(q,$.value,U);return Math.max(H,X)}return 1}v4.Alias=M2});var N=L((a4)=>{var p4=w(),d4=e0(),l4=c(),c4=(q)=>!q||typeof q!=="function"&&typeof q!=="object";class U0 extends d4.NodeBase{constructor(q){super(p4.SCALAR);this.value=q}toJSON(q,$){return $?.keep?this.value:l4.toJS(this.value,q,$)}toString(){return String(this.value)}}U0.BLOCK_FOLDED="BLOCK_FOLDED";U0.BLOCK_LITERAL="BLOCK_LITERAL";U0.PLAIN="PLAIN";U0.QUOTE_DOUBLE="QUOTE_DOUBLE";U0.QUOTE_SINGLE="QUOTE_SINGLE";a4.Scalar=U0;a4.isScalarValue=c4});var j0=L((e4)=>{var r4=N0(),H0=w(),A2=N(),n4="tag:yaml.org,2002:";function o4(q,$,U){if($){let H=U.filter((Z)=>Z.tag===$),X=H.find((Z)=>!Z.format)??H[0];if(!X)throw Error(`Tag ${$} not found`);return X}return U.find((H)=>H.identify?.(q)&&!H.format)}function t4(q,$,U){if(H0.isDocument(q))q=q.contents;if(H0.isNode(q))return q;if(H0.isPair(q)){let T=U.schema[H0.MAP].createNode?.(U.schema,null,U);return T.items.push(q),T}if(q instanceof String||q instanceof Number||q instanceof Boolean||typeof BigInt<"u"&&q instanceof BigInt)q=q.valueOf();let{aliasDuplicateObjects:H,onAnchor:X,onTagObj:Z,schema:z,sourceObjects:J}=U,Q=void 0;if(H&&q&&typeof q==="object")if(Q=J.get(q),Q)return Q.anchor??(Q.anchor=X(q)),new r4.Alias(Q.anchor);else Q={anchor:null,node:null},J.set(q,Q);if($?.startsWith("!!"))$=n4+$.slice(2);let G=o4(q,$,z.tags);if(!G){if(q&&typeof q.toJSON==="function")q=q.toJSON();if(!q||typeof q!=="object"){let T=new A2.Scalar(q);if(Q)Q.node=T;return T}G=q instanceof Map?z[H0.MAP]:(Symbol.iterator in Object(q))?z[H0.SEQ]:z[H0.MAP]}if(Z)Z(G),delete U.onTagObj;let I=G?.createNode?G.createNode(U.schema,q,U):typeof G?.nodeClass?.from==="function"?G.nodeClass.from(U.schema,q,U):new A2.Scalar(q);if($)I.tag=$;else if(!G.default)I.tag=G.tag;if(Q)Q.node=I;return I}e4.createNode=t4});var $q=L((H1)=>{var $1=j0(),v=w(),U1=e0();function dq(q,$,U){let H=U;for(let X=$.length-1;X>=0;--X){let Z=$[X];if(typeof Z==="number"&&Number.isInteger(Z)&&Z>=0){let z=[];z[Z]=H,H=z}else H=new Map([[Z,H]])}return $1.createNode(H,void 0,{aliasDuplicateObjects:!1,keepUndefined:!1,onAnchor:()=>{throw Error("This should not happen, please report a bug.")},schema:q,sourceObjects:new Map})}var w2=(q)=>q==null||typeof q==="object"&&!!q[Symbol.iterator]().next().done;class K2 extends U1.NodeBase{constructor(q,$){super(q);Object.defineProperty(this,"schema",{value:$,configurable:!0,enumerable:!1,writable:!0})}clone(q){let $=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));if(q)$.schema=q;if($.items=$.items.map((U)=>v.isNode(U)||v.isPair(U)?U.clone(q):U),this.range)$.range=this.range.slice();return $}addIn(q,$){if(w2(q))this.add($);else{let[U,...H]=q,X=this.get(U,!0);if(v.isCollection(X))X.addIn(H,$);else if(X===void 0&&this.schema)this.set(U,dq(this.schema,H,$));else throw Error(`Expected YAML collection at ${U}. Remaining path: ${H}`)}}deleteIn(q){let[$,...U]=q;if(U.length===0)return this.delete($);let H=this.get($,!0);if(v.isCollection(H))return H.deleteIn(U);else throw Error(`Expected YAML collection at ${$}. Remaining path: ${U}`)}getIn(q,$){let[U,...H]=q,X=this.get(U,!0);if(H.length===0)return!$&&v.isScalar(X)?X.value:X;else return v.isCollection(X)?X.getIn(H,$):void 0}hasAllNullValues(q){return this.items.every(($)=>{if(!v.isPair($))return!1;let U=$.value;return U==null||q&&v.isScalar(U)&&U.value==null&&!U.commentBefore&&!U.comment&&!U.tag})}hasIn(q){let[$,...U]=q;if(U.length===0)return this.has($);let H=this.get($,!0);return v.isCollection(H)?H.hasIn(U):!1}setIn(q,$){let[U,...H]=q;if(H.length===0)this.set(U,$);else{let X=this.get(U,!0);if(v.isCollection(X))X.setIn(H,$);else if(X===void 0&&this.schema)this.set(U,dq(this.schema,H,$));else throw Error(`Expected YAML collection at ${U}. Remaining path: ${H}`)}}}H1.Collection=K2;H1.collectionFromPath=dq;H1.isEmptyPath=w2});var S0=L((G1)=>{var J1=(q)=>q.replace(/^(?!$)(?: $)?/gm,"#");function lq(q,$){if(/^\n+$/.test(q))return q.substring(1);return $?q.replace(/^(?! *$)/gm,$):q}var Q1=(q,$,U)=>q.endsWith(`
4
+ `)?lq(U,$):U.includes(`
5
+ `)?`
6
+ `+lq(U,$):(q.endsWith(" ")?"":" ")+U;G1.indentComment=lq;G1.lineComment=Q1;G1.stringifyComment=J1});var j2=L((B1)=>{function I1(q,$,U="flow",{indentAtStart:H,lineWidth:X=80,minContentWidth:Z=20,onFold:z,onOverflow:J}={}){if(!X||X<0)return q;if(X<Z)Z=0;let Q=Math.max(1+Z,1+X-$.length);if(q.length<=Q)return q;let G=[],I={},T=X-$.length;if(typeof H==="number")if(H>X-Math.max(2,Z))G.push(0);else T=X-H;let Y=void 0,_=void 0,O=!1,W=-1,B=-1,V=-1;if(U==="block"){if(W=N2(q,W,$.length),W!==-1)T=W+Q}for(let F;F=q[W+=1];){if(U==="quoted"&&F==="\\"){switch(B=W,q[W+1]){case"x":W+=3;break;case"u":W+=5;break;case"U":W+=9;break;default:W+=1}V=W}if(F===`
7
+ `){if(U==="block")W=N2(q,W,$.length);T=W+$.length+Q,Y=void 0}else{if(F===" "&&_&&_!==" "&&_!==`
8
+ `&&_!=="\t"){let P=q[W+1];if(P&&P!==" "&&P!==`
9
+ `&&P!=="\t")Y=W}if(W>=T)if(Y)G.push(Y),T=Y+Q,Y=void 0;else if(U==="quoted"){while(_===" "||_==="\t")_=F,F=q[W+=1],O=!0;let P=W>V+1?W-2:B-1;if(I[P])return q;G.push(P),I[P]=!0,T=P+Q,Y=void 0}else O=!0}_=F}if(O&&J)J();if(G.length===0)return q;if(z)z();let R=q.slice(0,G[0]);for(let F=0;F<G.length;++F){let P=G[F],M=G[F+1]||q.length;if(P===0)R=`
10
+ ${$}${q.slice(0,M)}`;else{if(U==="quoted"&&I[P])R+=`${q[P]}\\`;R+=`
11
+ ${$}${q.slice(P+1,M)}`}}return R}function N2(q,$,U){let H=$,X=$+1,Z=q[X];while(Z===" "||Z==="\t")if($<X+U)Z=q[++$];else{do Z=q[++$];while(Z&&Z!==`
12
+ `);H=$,X=$+1,Z=q[X]}return H}B1.FOLD_BLOCK="block";B1.FOLD_FLOW="flow";B1.FOLD_QUOTED="quoted";B1.foldFlowLines=I1});var C0=L((P1)=>{var x=N(),a=j2(),Hq=(q,$)=>({indentAtStart:$?q.indent.length:q.indentAtStart,lineWidth:q.options.lineWidth,minContentWidth:q.options.minContentWidth}),Xq=(q)=>/^(%|---|\.\.\.)/m.test(q);function V1(q,$,U){if(!$||$<0)return!1;let H=$-U,X=q.length;if(X<=H)return!1;for(let Z=0,z=0;Z<X;++Z)if(q[Z]===`
13
+ `){if(Z-z>H)return!0;if(z=Z+1,X-z<=H)return!1}return!0}function b0(q,$){let U=JSON.stringify(q);if($.options.doubleQuotedAsJSON)return U;let{implicitKey:H}=$,X=$.options.doubleQuotedMinMultiLineLength,Z=$.indent||(Xq(q)?" ":""),z="",J=0;for(let Q=0,G=U[Q];G;G=U[++Q]){if(G===" "&&U[Q+1]==="\\"&&U[Q+2]==="n")z+=U.slice(J,Q)+"\\ ",Q+=1,J=Q,G="\\";if(G==="\\")switch(U[Q+1]){case"u":{z+=U.slice(J,Q);let I=U.substr(Q+2,4);switch(I){case"0000":z+="\\0";break;case"0007":z+="\\a";break;case"000b":z+="\\v";break;case"001b":z+="\\e";break;case"0085":z+="\\N";break;case"00a0":z+="\\_";break;case"2028":z+="\\L";break;case"2029":z+="\\P";break;default:if(I.substr(0,2)==="00")z+="\\x"+I.substr(2);else z+=U.substr(Q,6)}Q+=5,J=Q+1}break;case"n":if(H||U[Q+2]==='"'||U.length<X)Q+=1;else{z+=U.slice(J,Q)+`
14
+
15
+ `;while(U[Q+2]==="\\"&&U[Q+3]==="n"&&U[Q+4]!=='"')z+=`
16
+ `,Q+=2;if(z+=Z,U[Q+2]===" ")z+="\\";Q+=1,J=Q+1}break;default:Q+=1}}return z=J?z+U.slice(J):U,H?z:a.foldFlowLines(z,Z,a.FOLD_QUOTED,Hq($,!1))}function cq(q,$){if($.options.singleQuote===!1||$.implicitKey&&q.includes(`
17
+ `)||/[ \t]\n|\n[ \t]/.test(q))return b0(q,$);let U=$.indent||(Xq(q)?" ":""),H="'"+q.replace(/'/g,"''").replace(/\n+/g,`$&
18
+ ${U}`)+"'";return $.implicitKey?H:a.foldFlowLines(H,U,a.FOLD_FLOW,Hq($,!1))}function B0(q,$){let{singleQuote:U}=$.options,H;if(U===!1)H=b0;else{let X=q.includes('"'),Z=q.includes("'");if(X&&!Z)H=cq;else if(Z&&!X)H=b0;else H=U?cq:b0}return H(q,$)}var aq;try{aq=new RegExp(`(^|(?<!
19
+ ))
20
+ +(?!
21
+ |$)`,"g")}catch{aq=/\n+(?!\n|$)/g}function Uq({comment:q,type:$,value:U},H,X,Z){let{blockQuote:z,commentString:J,lineWidth:Q}=H.options;if(!z||/\n[\t ]+$/.test(U))return B0(U,H);let G=H.indent||(H.forceBlockIndent||Xq(U)?" ":""),I=z==="literal"?!0:z==="folded"||$===x.Scalar.BLOCK_FOLDED?!1:$===x.Scalar.BLOCK_LITERAL?!0:!V1(U,Q,G.length);if(!U)return I?`|
22
+ `:`>
23
+ `;let T,Y;for(Y=U.length;Y>0;--Y){let M=U[Y-1];if(M!==`
24
+ `&&M!=="\t"&&M!==" ")break}let _=U.substring(Y),O=_.indexOf(`
25
+ `);if(O===-1)T="-";else if(U===_||O!==_.length-1){if(T="+",Z)Z()}else T="";if(_){if(U=U.slice(0,-_.length),_[_.length-1]===`
26
+ `)_=_.slice(0,-1);_=_.replace(aq,`$&${G}`)}let W=!1,B,V=-1;for(B=0;B<U.length;++B){let M=U[B];if(M===" ")W=!0;else if(M===`
27
+ `)V=B;else break}let R=U.substring(0,V<B?V+1:B);if(R)U=U.substring(R.length),R=R.replace(/\n+/g,`$&${G}`);let P=(W?G?"2":"1":"")+T;if(q){if(P+=" "+J(q.replace(/ ?[\r\n]+/g," ")),X)X()}if(!I){let M=U.replace(/\n+/g,`
28
+ $&`).replace(/(?:^|\n)([\t ].*)(?:([\n\t ]*)\n(?![\n\t ]))?/g,"$1$2").replace(/\n+/g,`$&${G}`),A=!1,K=Hq(H,!0);if(z!=="folded"&&$!==x.Scalar.BLOCK_FOLDED)K.onOverflow=()=>{A=!0};let D=a.foldFlowLines(`${R}${M}${_}`,G,a.FOLD_BLOCK,K);if(!A)return`>${P}
29
+ ${G}${D}`}return U=U.replace(/\n+/g,`$&${G}`),`|${P}
30
+ ${G}${R}${U}${_}`}function R1(q,$,U,H){let{type:X,value:Z}=q,{actualString:z,implicitKey:J,indent:Q,indentStep:G,inFlow:I}=$;if(J&&Z.includes(`
31
+ `)||I&&/[[\]{},]/.test(Z))return B0(Z,$);if(/^[\n\t ,[\]{}#&*!|>'"%@`]|^[?-]$|^[?-][ \t]|[\n:][ \t]|[ \t]\n|[\n\t ]#|[\n\t :]$/.test(Z))return J||I||!Z.includes(`
32
+ `)?B0(Z,$):Uq(q,$,U,H);if(!J&&!I&&X!==x.Scalar.PLAIN&&Z.includes(`
33
+ `))return Uq(q,$,U,H);if(Xq(Z)){if(Q==="")return $.forceBlockIndent=!0,Uq(q,$,U,H);else if(J&&Q===G)return B0(Z,$)}let T=Z.replace(/\n+/g,`$&
34
+ ${Q}`);if(z){let Y=(W)=>W.default&&W.tag!=="tag:yaml.org,2002:str"&&W.test?.test(T),{compat:_,tags:O}=$.doc.schema;if(O.some(Y)||_?.some(Y))return B0(Z,$)}return J?T:a.foldFlowLines(T,Q,a.FOLD_FLOW,Hq($,!1))}function F1(q,$,U,H){let{implicitKey:X,inFlow:Z}=$,z=typeof q.value==="string"?q:Object.assign({},q,{value:String(q.value)}),{type:J}=q;if(J!==x.Scalar.QUOTE_DOUBLE){if(/[\x00-\x08\x0b-\x1f\x7f-\x9f\u{D800}-\u{DFFF}]/u.test(z.value))J=x.Scalar.QUOTE_DOUBLE}let Q=(I)=>{switch(I){case x.Scalar.BLOCK_FOLDED:case x.Scalar.BLOCK_LITERAL:return X||Z?B0(z.value,$):Uq(z,$,U,H);case x.Scalar.QUOTE_DOUBLE:return b0(z.value,$);case x.Scalar.QUOTE_SINGLE:return cq(z.value,$);case x.Scalar.PLAIN:return R1(z,$,U,H);default:return null}},G=Q(J);if(G===null){let{defaultKeyType:I,defaultStringType:T}=$.options,Y=X&&I||T;if(G=Q(Y),G===null)throw Error(`Unsupported default string type ${Y}`)}return G}P1.stringifyString=F1});var E0=L((C1)=>{var A1=t0(),s=w(),w1=S0(),K1=C0();function N1(q,$){let U=Object.assign({blockQuote:!0,commentString:w1.stringifyComment,defaultKeyType:null,defaultStringType:"PLAIN",directives:null,doubleQuotedAsJSON:!1,doubleQuotedMinMultiLineLength:40,falseStr:"false",flowCollectionPadding:!0,indentSeq:!0,lineWidth:80,minContentWidth:20,nullStr:"null",simpleKeys:!1,singleQuote:null,trailingComma:!1,trueStr:"true",verifyAliasOrder:!0},q.schema.toStringOptions,$),H;switch(U.collectionStyle){case"block":H=!1;break;case"flow":H=!0;break;default:H=null}return{anchors:new Set,doc:q,flowCollectionPadding:U.flowCollectionPadding?" ":"",indent:"",indentStep:typeof U.indent==="number"?" ".repeat(U.indent):" ",inFlow:H,options:U}}function j1(q,$){if($.tag){let X=q.filter((Z)=>Z.tag===$.tag);if(X.length>0)return X.find((Z)=>Z.format===$.format)??X[0]}let U=void 0,H;if(s.isScalar($)){H=$.value;let X=q.filter((Z)=>Z.identify?.(H));if(X.length>1){let Z=X.filter((z)=>z.test);if(Z.length>0)X=Z}U=X.find((Z)=>Z.format===$.format)??X.find((Z)=>!Z.format)}else H=$,U=q.find((X)=>X.nodeClass&&H instanceof X.nodeClass);if(!U){let X=H?.constructor?.name??(H===null?"null":typeof H);throw Error(`Tag not resolved for ${X} value`)}return U}function S1(q,$,{anchors:U,doc:H}){if(!H.directives)return"";let X=[],Z=(s.isScalar(q)||s.isCollection(q))&&q.anchor;if(Z&&A1.anchorIsValid(Z))U.add(Z),X.push(`&${Z}`);let z=q.tag??($.default?null:$.tag);if(z)X.push(H.directives.tagString(z));return X.join(" ")}function b1(q,$,U,H){if(s.isPair(q))return q.toString($,U,H);if(s.isAlias(q)){if($.doc.directives)return q.toString($);if($.resolvedAliases?.has(q))throw TypeError("Cannot stringify circular structure without alias nodes");else{if($.resolvedAliases)$.resolvedAliases.add(q);else $.resolvedAliases=new Set([q]);q=q.resolve($.doc)}}let X=void 0,Z=s.isNode(q)?q:$.doc.createNode(q,{onTagObj:(Q)=>X=Q});X??(X=j1($.doc.schema.tags,Z));let z=S1(Z,X,$);if(z.length>0)$.indentAtStart=($.indentAtStart??0)+z.length+1;let J=typeof X.stringify==="function"?X.stringify(Z,$,U,H):s.isScalar(Z)?K1.stringifyString(Z,$,U,H):Z.toString($,U,H);if(!z)return J;return s.isScalar(Z)||J[0]==="{"||J[0]==="["?`${z} ${J}`:`${z}
35
+ ${$.indent}${J}`}C1.createStringifyContext=N1;C1.stringify=b1});var C2=L((y1)=>{var p=w(),S2=N(),b2=E0(),g0=S0();function f1({key:q,value:$},U,H,X){let{allNullValues:Z,doc:z,indent:J,indentStep:Q,options:{commentString:G,indentSeq:I,simpleKeys:T}}=U,Y=p.isNode(q)&&q.comment||null;if(T){if(Y)throw Error("With simple keys, key nodes cannot have comments");if(p.isCollection(q)||!p.isNode(q)&&typeof q==="object")throw Error("With simple keys, collection cannot be used as a key value")}let _=!T&&(!q||Y&&$==null&&!U.inFlow||p.isCollection(q)||(p.isScalar(q)?q.type===S2.Scalar.BLOCK_FOLDED||q.type===S2.Scalar.BLOCK_LITERAL:typeof q==="object"));U=Object.assign({},U,{allNullValues:!1,implicitKey:!_&&(T||!Z),indent:J+Q});let O=!1,W=!1,B=b2.stringify(q,U,()=>O=!0,()=>W=!0);if(!_&&!U.inFlow&&B.length>1024){if(T)throw Error("With simple keys, single line scalar must not span more than 1024 characters");_=!0}if(U.inFlow){if(Z||$==null){if(O&&H)H();return B===""?"?":_?`? ${B}`:B}}else if(Z&&!T||$==null&&_){if(B=`? ${B}`,Y&&!O)B+=g0.lineComment(B,U.indent,G(Y));else if(W&&X)X();return B}if(O)Y=null;if(_){if(Y)B+=g0.lineComment(B,U.indent,G(Y));B=`? ${B}
36
+ ${J}:`}else if(B=`${B}:`,Y)B+=g0.lineComment(B,U.indent,G(Y));let V,R,F;if(p.isNode($))V=!!$.spaceBefore,R=$.commentBefore,F=$.comment;else if(V=!1,R=null,F=null,$&&typeof $==="object")$=z.createNode($);if(U.implicitKey=!1,!_&&!Y&&p.isScalar($))U.indentAtStart=B.length+1;if(W=!1,!I&&Q.length>=2&&!U.inFlow&&!_&&p.isSeq($)&&!$.flow&&!$.tag&&!$.anchor)U.indent=U.indent.substring(2);let P=!1,M=b2.stringify($,U,()=>P=!0,()=>W=!0),A=" ";if(Y||V||R){if(A=V?`
37
+ `:"",R){let K=G(R);A+=`
38
+ ${g0.indentComment(K,U.indent)}`}if(M===""&&!U.inFlow){if(A===`
39
+ `&&F)A=`
40
+
41
+ `}else A+=`
42
+ ${U.indent}`}else if(!_&&p.isCollection($)){let K=M[0],D=M.indexOf(`
43
+ `),j=D!==-1,d=U.inFlow??$.flow??$.items.length===0;if(j||!d){let G0=!1;if(j&&(K==="&"||K==="!")){let S=M.indexOf(" ");if(K==="&"&&S!==-1&&S<D&&M[S+1]==="!")S=M.indexOf(" ",S+1);if(S===-1||D<S)G0=!0}if(!G0)A=`
44
+ ${U.indent}`}}else if(M===""||M[0]===`
45
+ `)A="";if(B+=A+M,U.inFlow){if(P&&H)H()}else if(F&&!P)B+=g0.lineComment(B,U.indent,G(F));else if(W&&X)X();return B}y1.stringifyPair=f1});var sq=L((u1)=>{var E2=l("process");function x1(q,...$){if(q==="debug")console.log(...$)}function h1(q,$){if(q==="debug"||q==="warn")if(typeof E2.emitWarning==="function")E2.emitWarning($);else console.warn($)}u1.debug=x1;u1.warn=h1});var Qq=L((d1)=>{var Jq=w(),g2=N(),Zq="<<",zq={identify:(q)=>q===Zq||typeof q==="symbol"&&q.description===Zq,default:"key",tag:"tag:yaml.org,2002:merge",test:/^<<$/,resolve:()=>Object.assign(new g2.Scalar(Symbol(Zq)),{addToJSMap:f2}),stringify:()=>Zq},p1=(q,$)=>(zq.identify($)||Jq.isScalar($)&&(!$.type||$.type===g2.Scalar.PLAIN)&&zq.identify($.value))&&q?.doc.schema.tags.some((U)=>U.tag===zq.tag&&U.default);function f2(q,$,U){let H=y2(q,U);if(Jq.isSeq(H))for(let X of H.items)iq(q,$,X);else if(Array.isArray(H))for(let X of H)iq(q,$,X);else iq(q,$,H)}function iq(q,$,U){let H=y2(q,U);if(!Jq.isMap(H))throw Error("Merge sources must be maps or map aliases");let X=H.toJSON(null,q,Map);for(let[Z,z]of X)if($ instanceof Map){if(!$.has(Z))$.set(Z,z)}else if($ instanceof Set)$.add(Z);else if(!Object.prototype.hasOwnProperty.call($,Z))Object.defineProperty($,Z,{value:z,writable:!0,enumerable:!0,configurable:!0});return $}function y2(q,$){return q&&Jq.isAlias($)?$.resolve(q.doc,q):$}d1.addMergeToJSMap=f2;d1.isMergeKey=p1;d1.merge=zq});var nq=L((o1)=>{var s1=sq(),k2=Qq(),i1=E0(),x2=w(),rq=c();function r1(q,$,{key:U,value:H}){if(x2.isNode(U)&&U.addToJSMap)U.addToJSMap(q,$,H);else if(k2.isMergeKey(q,U))k2.addMergeToJSMap(q,$,H);else{let X=rq.toJS(U,"",q);if($ instanceof Map)$.set(X,rq.toJS(H,X,q));else if($ instanceof Set)$.add(X);else{let Z=n1(U,X,q),z=rq.toJS(H,Z,q);if(Z in $)Object.defineProperty($,Z,{value:z,writable:!0,enumerable:!0,configurable:!0});else $[Z]=z}}return $}function n1(q,$,U){if($===null)return"";if(typeof $!=="object")return String($);if(x2.isNode(q)&&U?.doc){let H=i1.createStringifyContext(U.doc,{});H.anchors=new Set;for(let Z of U.anchors.keys())H.anchors.add(Z.anchor);H.inFlow=!0,H.inStringifyKey=!0;let X=q.toString(H);if(!U.mapKeyWarned){let Z=JSON.stringify(X);if(Z.length>40)Z=Z.substring(0,36)+'..."';s1.warn(U.doc.options.logLevel,`Keys with collection values will be stringified due to JS Object restrictions: ${Z}. Set mapAsMap: true to use object keys.`),U.mapKeyWarned=!0}return X}return JSON.stringify($)}o1.addPairToJSMap=r1});var i=L((UH)=>{var h2=j0(),e1=C2(),qH=nq(),Gq=w();function $H(q,$,U){let H=h2.createNode(q,void 0,U),X=h2.createNode($,void 0,U);return new Tq(H,X)}class Tq{constructor(q,$=null){Object.defineProperty(this,Gq.NODE_TYPE,{value:Gq.PAIR}),this.key=q,this.value=$}clone(q){let{key:$,value:U}=this;if(Gq.isNode($))$=$.clone(q);if(Gq.isNode(U))U=U.clone(q);return new Tq($,U)}toJSON(q,$){let U=$?.mapAsMap?new Map:{};return qH.addPairToJSMap($,U,this)}toString(q,$,U){return q?.doc?e1.stringifyPair(this,q,$,U):JSON.stringify(this)}}UH.Pair=Tq;UH.createPair=$H});var oq=L((QH)=>{var X0=w(),u2=E0(),Yq=S0();function ZH(q,$,U){return($.inFlow??q.flow?JH:zH)(q,$,U)}function zH({comment:q,items:$},U,{blockItemPrefix:H,flowChars:X,itemIndent:Z,onChompKeep:z,onComment:J}){let{indent:Q,options:{commentString:G}}=U,I=Object.assign({},U,{indent:Z,type:null}),T=!1,Y=[];for(let O=0;O<$.length;++O){let W=$[O],B=null;if(X0.isNode(W)){if(!T&&W.spaceBefore)Y.push("");if(Wq(U,Y,W.commentBefore,T),W.comment)B=W.comment}else if(X0.isPair(W)){let R=X0.isNode(W.key)?W.key:null;if(R){if(!T&&R.spaceBefore)Y.push("");Wq(U,Y,R.commentBefore,T)}}T=!1;let V=u2.stringify(W,I,()=>B=null,()=>T=!0);if(B)V+=Yq.lineComment(V,Z,G(B));if(T&&B)T=!1;Y.push(H+V)}let _;if(Y.length===0)_=X.start+X.end;else{_=Y[0];for(let O=1;O<Y.length;++O){let W=Y[O];_+=W?`
46
+ ${Q}${W}`:`
47
+ `}}if(q){if(_+=`
48
+ `+Yq.indentComment(G(q),Q),J)J()}else if(T&&z)z();return _}function JH({items:q},$,{flowChars:U,itemIndent:H}){let{indent:X,indentStep:Z,flowCollectionPadding:z,options:{commentString:J}}=$;H+=Z;let Q=Object.assign({},$,{indent:H,inFlow:!0,type:null}),G=!1,I=0,T=[];for(let O=0;O<q.length;++O){let W=q[O],B=null;if(X0.isNode(W)){if(W.spaceBefore)T.push("");if(Wq($,T,W.commentBefore,!1),W.comment)B=W.comment}else if(X0.isPair(W)){let R=X0.isNode(W.key)?W.key:null;if(R){if(R.spaceBefore)T.push("");if(Wq($,T,R.commentBefore,!1),R.comment)G=!0}let F=X0.isNode(W.value)?W.value:null;if(F){if(F.comment)B=F.comment;if(F.commentBefore)G=!0}else if(W.value==null&&R?.comment)B=R.comment}if(B)G=!0;let V=u2.stringify(W,Q,()=>B=null);if(G||(G=T.length>I||V.includes(`
49
+ `)),O<q.length-1)V+=",";else if($.options.trailingComma){if($.options.lineWidth>0)G||(G=T.reduce((R,F)=>R+F.length+2,2)+(V.length+2)>$.options.lineWidth);if(G)V+=","}if(B)V+=Yq.lineComment(V,H,J(B));T.push(V),I=T.length}let{start:Y,end:_}=U;if(T.length===0)return Y+_;else{if(!G){let O=T.reduce((W,B)=>W+B.length+2,2);G=$.options.lineWidth>0&&O>$.options.lineWidth}if(G){let O=Y;for(let W of T)O+=W?`
50
+ ${Z}${X}${W}`:`
51
+ `;return`${O}
52
+ ${X}${_}`}else return`${Y}${z}${T.join(" ")}${z}${_}`}}function Wq({indent:q,options:{commentString:$}},U,H,X){if(H&&X)H=H.replace(/^\n+/,"");if(H){let Z=Yq.indentComment($(H),q);U.push(Z.trimStart())}}QH.stringifyCollection=ZH});var n=L((BH)=>{var TH=oq(),YH=nq(),WH=$q(),r=w(),Iq=i(),IH=N();function f0(q,$){let U=r.isScalar($)?$.value:$;for(let H of q)if(r.isPair(H)){if(H.key===$||H.key===U)return H;if(r.isScalar(H.key)&&H.key.value===U)return H}return}class v2 extends WH.Collection{static get tagName(){return"tag:yaml.org,2002:map"}constructor(q){super(r.MAP,q);this.items=[]}static from(q,$,U){let{keepUndefined:H,replacer:X}=U,Z=new this(q),z=(J,Q)=>{if(typeof X==="function")Q=X.call($,J,Q);else if(Array.isArray(X)&&!X.includes(J))return;if(Q!==void 0||H)Z.items.push(Iq.createPair(J,Q,U))};if($ instanceof Map)for(let[J,Q]of $)z(J,Q);else if($&&typeof $==="object")for(let J of Object.keys($))z(J,$[J]);if(typeof q.sortMapEntries==="function")Z.items.sort(q.sortMapEntries);return Z}add(q,$){let U;if(r.isPair(q))U=q;else if(!q||typeof q!=="object"||!("key"in q))U=new Iq.Pair(q,q?.value);else U=new Iq.Pair(q.key,q.value);let H=f0(this.items,U.key),X=this.schema?.sortMapEntries;if(H){if(!$)throw Error(`Key ${U.key} already set`);if(r.isScalar(H.value)&&IH.isScalarValue(U.value))H.value.value=U.value;else H.value=U.value}else if(X){let Z=this.items.findIndex((z)=>X(U,z)<0);if(Z===-1)this.items.push(U);else this.items.splice(Z,0,U)}else this.items.push(U)}delete(q){let $=f0(this.items,q);if(!$)return!1;return this.items.splice(this.items.indexOf($),1).length>0}get(q,$){let H=f0(this.items,q)?.value;return(!$&&r.isScalar(H)?H.value:H)??void 0}has(q){return!!f0(this.items,q)}set(q,$){this.add(new Iq.Pair(q,$),!0)}toJSON(q,$,U){let H=U?new U:$?.mapAsMap?new Map:{};if($?.onCreate)$.onCreate(H);for(let X of this.items)YH.addPairToJSMap($,H,X);return H}toString(q,$,U){if(!q)return JSON.stringify(this);for(let H of this.items)if(!r.isPair(H))throw Error(`Map items must all be pairs; found ${JSON.stringify(H)} instead`);if(!q.allNullValues&&this.hasAllNullValues(!1))q=Object.assign({},q,{allNullValues:!0});return TH.stringifyCollection(this,q,{blockItemPrefix:"",flowChars:{start:"{",end:"}"},itemIndent:q.indent||"",onChompKeep:U,onComment:$})}}BH.YAMLMap=v2;BH.findPair=f0});var _0=L((VH)=>{var OH=w(),m2=n(),DH={collection:"map",default:!0,nodeClass:m2.YAMLMap,tag:"tag:yaml.org,2002:map",resolve(q,$){if(!OH.isMap(q))$("Expected a mapping for this tag");return q},createNode:(q,$,U)=>m2.YAMLMap.from(q,$,U)};VH.map=DH});var o=L((KH)=>{var FH=j0(),PH=oq(),MH=$q(),_q=w(),AH=N(),wH=c();class p2 extends MH.Collection{static get tagName(){return"tag:yaml.org,2002:seq"}constructor(q){super(_q.SEQ,q);this.items=[]}add(q){this.items.push(q)}delete(q){let $=Bq(q);if(typeof $!=="number")return!1;return this.items.splice($,1).length>0}get(q,$){let U=Bq(q);if(typeof U!=="number")return;let H=this.items[U];return!$&&_q.isScalar(H)?H.value:H}has(q){let $=Bq(q);return typeof $==="number"&&$<this.items.length}set(q,$){let U=Bq(q);if(typeof U!=="number")throw Error(`Expected a valid index, not ${q}.`);let H=this.items[U];if(_q.isScalar(H)&&AH.isScalarValue($))H.value=$;else this.items[U]=$}toJSON(q,$){let U=[];if($?.onCreate)$.onCreate(U);let H=0;for(let X of this.items)U.push(wH.toJS(X,String(H++),$));return U}toString(q,$,U){if(!q)return JSON.stringify(this);return PH.stringifyCollection(this,q,{blockItemPrefix:"- ",flowChars:{start:"[",end:"]"},itemIndent:(q.indent||"")+" ",onChompKeep:U,onComment:$})}static from(q,$,U){let{replacer:H}=U,X=new this(q);if($&&Symbol.iterator in Object($)){let Z=0;for(let z of $){if(typeof H==="function"){let J=$ instanceof Set?z:String(Z++);z=H.call($,J,z)}X.items.push(FH.createNode(z,void 0,U))}}return X}}function Bq(q){let $=_q.isScalar(q)?q.value:q;if($&&typeof $==="string")$=Number($);return typeof $==="number"&&Number.isInteger($)&&$>=0?$:null}KH.YAMLSeq=p2});var L0=L((bH)=>{var jH=w(),d2=o(),SH={collection:"seq",default:!0,nodeClass:d2.YAMLSeq,tag:"tag:yaml.org,2002:seq",resolve(q,$){if(!jH.isSeq(q))$("Expected a sequence for this tag");return q},createNode:(q,$,U)=>d2.YAMLSeq.from(q,$,U)};bH.seq=SH});var y0=L((fH)=>{var EH=C0(),gH={identify:(q)=>typeof q==="string",default:!0,tag:"tag:yaml.org,2002:str",resolve:(q)=>q,stringify(q,$,U,H){return $=Object.assign({actualString:!0},$),EH.stringifyString(q,$,U,H)}};fH.string=gH});var Lq=L((kH)=>{var l2=N(),c2={identify:(q)=>q==null,createNode:()=>new l2.Scalar(null),default:!0,tag:"tag:yaml.org,2002:null",test:/^(?:~|[Nn]ull|NULL)?$/,resolve:()=>new l2.Scalar(null),stringify:({source:q},$)=>typeof q==="string"&&c2.test.test(q)?q:$.options.nullStr};kH.nullTag=c2});var tq=L((uH)=>{var hH=N(),a2={identify:(q)=>typeof q==="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:[Tt]rue|TRUE|[Ff]alse|FALSE)$/,resolve:(q)=>new hH.Scalar(q[0]==="t"||q[0]==="T"),stringify({source:q,value:$},U){if(q&&a2.test.test(q)){let H=q[0]==="t"||q[0]==="T";if($===H)return q}return $?U.options.trueStr:U.options.falseStr}};uH.boolTag=a2});var O0=L((pH)=>{function mH({format:q,minFractionDigits:$,tag:U,value:H}){if(typeof H==="bigint")return String(H);let X=typeof H==="number"?H:Number(H);if(!isFinite(X))return isNaN(X)?".nan":X<0?"-.inf":".inf";let Z=Object.is(H,-0)?"-0":JSON.stringify(H);if(!q&&$&&(!U||U==="tag:yaml.org,2002:float")&&/^-?\d/.test(Z)&&!Z.includes("e")){let z=Z.indexOf(".");if(z<0)z=Z.length,Z+=".";let J=$-(Z.length-z-1);while(J-- >0)Z+="0"}return Z}pH.stringifyNumber=mH});var q$=L((iH)=>{var lH=N(),eq=O0(),cH={identify:(q)=>typeof q==="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^(?:[-+]?\.(?:inf|Inf|INF)|\.nan|\.NaN|\.NAN)$/,resolve:(q)=>q.slice(-3).toLowerCase()==="nan"?NaN:q[0]==="-"?Number.NEGATIVE_INFINITY:Number.POSITIVE_INFINITY,stringify:eq.stringifyNumber},aH={identify:(q)=>typeof q==="number",default:!0,tag:"tag:yaml.org,2002:float",format:"EXP",test:/^[-+]?(?:\.[0-9]+|[0-9]+(?:\.[0-9]*)?)[eE][-+]?[0-9]+$/,resolve:(q)=>parseFloat(q),stringify(q){let $=Number(q.value);return isFinite($)?$.toExponential():eq.stringifyNumber(q)}},sH={identify:(q)=>typeof q==="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:\.[0-9]+|[0-9]+\.[0-9]*)$/,resolve(q){let $=new lH.Scalar(parseFloat(q)),U=q.indexOf(".");if(U!==-1&&q[q.length-1]==="0")$.minFractionDigits=q.length-U-1;return $},stringify:eq.stringifyNumber};iH.float=sH;iH.floatExp=aH;iH.floatNaN=cH});var U$=L(($X)=>{var s2=O0(),Oq=(q)=>typeof q==="bigint"||Number.isInteger(q),$$=(q,$,U,{intAsBigInt:H})=>H?BigInt(q):parseInt(q.substring($),U);function i2(q,$,U){let{value:H}=q;if(Oq(H)&&H>=0)return U+H.toString($);return s2.stringifyNumber(q)}var tH={identify:(q)=>Oq(q)&&q>=0,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^0o[0-7]+$/,resolve:(q,$,U)=>$$(q,2,8,U),stringify:(q)=>i2(q,8,"0o")},eH={identify:Oq,default:!0,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9]+$/,resolve:(q,$,U)=>$$(q,0,10,U),stringify:s2.stringifyNumber},qX={identify:(q)=>Oq(q)&&q>=0,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^0x[0-9a-fA-F]+$/,resolve:(q,$,U)=>$$(q,2,16,U),stringify:(q)=>i2(q,16,"0x")};$X.int=eH;$X.intHex=qX;$X.intOct=tH});var r2=L((YX)=>{var ZX=_0(),zX=Lq(),JX=L0(),QX=y0(),GX=tq(),H$=q$(),X$=U$(),TX=[ZX.map,JX.seq,QX.string,zX.nullTag,GX.boolTag,X$.intOct,X$.int,X$.intHex,H$.floatNaN,H$.floatExp,H$.float];YX.schema=TX});var o2=L((VX)=>{var IX=N(),BX=_0(),_X=L0();function n2(q){return typeof q==="bigint"||Number.isInteger(q)}var Dq=({value:q})=>JSON.stringify(q),LX=[{identify:(q)=>typeof q==="string",default:!0,tag:"tag:yaml.org,2002:str",resolve:(q)=>q,stringify:Dq},{identify:(q)=>q==null,createNode:()=>new IX.Scalar(null),default:!0,tag:"tag:yaml.org,2002:null",test:/^null$/,resolve:()=>null,stringify:Dq},{identify:(q)=>typeof q==="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^true$|^false$/,resolve:(q)=>q==="true",stringify:Dq},{identify:n2,default:!0,tag:"tag:yaml.org,2002:int",test:/^-?(?:0|[1-9][0-9]*)$/,resolve:(q,$,{intAsBigInt:U})=>U?BigInt(q):parseInt(q,10),stringify:({value:q})=>n2(q)?q.toString():JSON.stringify(q)},{identify:(q)=>typeof q==="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^-?(?:0|[1-9][0-9]*)(?:\.[0-9]*)?(?:[eE][-+]?[0-9]+)?$/,resolve:(q)=>parseFloat(q),stringify:Dq}],OX={default:!0,tag:"",test:/^/,resolve(q,$){return $(`Unresolved plain scalar ${JSON.stringify(q)}`),q}},DX=[BX.map,_X.seq].concat(LX,OX);VX.schema=DX});var z$=L((MX)=>{var k0=l("buffer"),Z$=N(),FX=C0(),PX={identify:(q)=>q instanceof Uint8Array,default:!1,tag:"tag:yaml.org,2002:binary",resolve(q,$){if(typeof k0.Buffer==="function")return k0.Buffer.from(q,"base64");else if(typeof atob==="function"){let U=atob(q.replace(/[\n\r]/g,"")),H=new Uint8Array(U.length);for(let X=0;X<U.length;++X)H[X]=U.charCodeAt(X);return H}else return $("This environment does not support reading binary tags; either Buffer or atob is required"),q},stringify({comment:q,type:$,value:U},H,X,Z){if(!U)return"";let z=U,J;if(typeof k0.Buffer==="function")J=z instanceof k0.Buffer?z.toString("base64"):k0.Buffer.from(z.buffer).toString("base64");else if(typeof btoa==="function"){let Q="";for(let G=0;G<z.length;++G)Q+=String.fromCharCode(z[G]);J=btoa(Q)}else throw Error("This environment does not support writing binary tags; either Buffer or btoa is required");if($??($=Z$.Scalar.BLOCK_LITERAL),$!==Z$.Scalar.QUOTE_DOUBLE){let Q=Math.max(H.options.lineWidth-H.indent.length,H.options.minContentWidth),G=Math.ceil(J.length/Q),I=Array(G);for(let T=0,Y=0;T<G;++T,Y+=Q)I[T]=J.substr(Y,Q);J=I.join($===Z$.Scalar.BLOCK_LITERAL?`
53
+ `:" ")}return FX.stringifyString({comment:q,type:$,value:J},H,X,Z)}};MX.binary=PX});var Rq=L((jX)=>{var Vq=w(),J$=i(),wX=N(),KX=o();function t2(q,$){if(Vq.isSeq(q))for(let U=0;U<q.items.length;++U){let H=q.items[U];if(Vq.isPair(H))continue;else if(Vq.isMap(H)){if(H.items.length>1)$("Each pair must have its own sequence indicator");let X=H.items[0]||new J$.Pair(new wX.Scalar(null));if(H.commentBefore)X.key.commentBefore=X.key.commentBefore?`${H.commentBefore}
54
+ ${X.key.commentBefore}`:H.commentBefore;if(H.comment){let Z=X.value??X.key;Z.comment=Z.comment?`${H.comment}
55
+ ${Z.comment}`:H.comment}H=X}q.items[U]=Vq.isPair(H)?H:new J$.Pair(H)}else $("Expected a sequence for this tag");return q}function e2(q,$,U){let{replacer:H}=U,X=new KX.YAMLSeq(q);X.tag="tag:yaml.org,2002:pairs";let Z=0;if($&&Symbol.iterator in Object($))for(let z of $){if(typeof H==="function")z=H.call($,String(Z++),z);let J,Q;if(Array.isArray(z))if(z.length===2)J=z[0],Q=z[1];else throw TypeError(`Expected [key, value] tuple: ${z}`);else if(z&&z instanceof Object){let G=Object.keys(z);if(G.length===1)J=G[0],Q=z[J];else throw TypeError(`Expected tuple with one key, not ${G.length} keys`)}else J=z;X.items.push(J$.createPair(J,Q,U))}return X}var NX={collection:"seq",default:!1,tag:"tag:yaml.org,2002:pairs",resolve:t2,createNode:e2};jX.createPairs=e2;jX.pairs=NX;jX.resolvePairs=t2});var G$=L((fX)=>{var q9=w(),Q$=c(),x0=n(),EX=o(),$9=Rq();class Z0 extends EX.YAMLSeq{constructor(){super();this.add=x0.YAMLMap.prototype.add.bind(this),this.delete=x0.YAMLMap.prototype.delete.bind(this),this.get=x0.YAMLMap.prototype.get.bind(this),this.has=x0.YAMLMap.prototype.has.bind(this),this.set=x0.YAMLMap.prototype.set.bind(this),this.tag=Z0.tag}toJSON(q,$){if(!$)return super.toJSON(q);let U=new Map;if($?.onCreate)$.onCreate(U);for(let H of this.items){let X,Z;if(q9.isPair(H))X=Q$.toJS(H.key,"",$),Z=Q$.toJS(H.value,X,$);else X=Q$.toJS(H,"",$);if(U.has(X))throw Error("Ordered maps must not include duplicate keys");U.set(X,Z)}return U}static from(q,$,U){let H=$9.createPairs(q,$,U),X=new this;return X.items=H.items,X}}Z0.tag="tag:yaml.org,2002:omap";var gX={collection:"seq",identify:(q)=>q instanceof Map,nodeClass:Z0,default:!1,tag:"tag:yaml.org,2002:omap",resolve(q,$){let U=$9.resolvePairs(q,$),H=[];for(let{key:X}of U.items)if(q9.isScalar(X))if(H.includes(X.value))$(`Ordered maps must not include duplicate keys: ${X.value}`);else H.push(X.value);return Object.assign(new Z0,U)},createNode:(q,$,U)=>Z0.from(q,$,U)};fX.YAMLOMap=Z0;fX.omap=gX});var z9=L((xX)=>{var U9=N();function H9({value:q,source:$},U){if($&&(q?X9:Z9).test.test($))return $;return q?U.options.trueStr:U.options.falseStr}var X9={identify:(q)=>q===!0,default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:Y|y|[Yy]es|YES|[Tt]rue|TRUE|[Oo]n|ON)$/,resolve:()=>new U9.Scalar(!0),stringify:H9},Z9={identify:(q)=>q===!1,default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:N|n|[Nn]o|NO|[Ff]alse|FALSE|[Oo]ff|OFF)$/,resolve:()=>new U9.Scalar(!1),stringify:H9};xX.falseTag=Z9;xX.trueTag=X9});var J9=L((lX)=>{var vX=N(),T$=O0(),mX={identify:(q)=>typeof q==="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^(?:[-+]?\.(?:inf|Inf|INF)|\.nan|\.NaN|\.NAN)$/,resolve:(q)=>q.slice(-3).toLowerCase()==="nan"?NaN:q[0]==="-"?Number.NEGATIVE_INFINITY:Number.POSITIVE_INFINITY,stringify:T$.stringifyNumber},pX={identify:(q)=>typeof q==="number",default:!0,tag:"tag:yaml.org,2002:float",format:"EXP",test:/^[-+]?(?:[0-9][0-9_]*)?(?:\.[0-9_]*)?[eE][-+]?[0-9]+$/,resolve:(q)=>parseFloat(q.replace(/_/g,"")),stringify(q){let $=Number(q.value);return isFinite($)?$.toExponential():T$.stringifyNumber(q)}},dX={identify:(q)=>typeof q==="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:[0-9][0-9_]*)?\.[0-9_]*$/,resolve(q){let $=new vX.Scalar(parseFloat(q.replace(/_/g,""))),U=q.indexOf(".");if(U!==-1){let H=q.substring(U+1).replace(/_/g,"");if(H[H.length-1]==="0")$.minFractionDigits=H.length}return $},stringify:T$.stringifyNumber};lX.float=dX;lX.floatExp=pX;lX.floatNaN=mX});var G9=L((tX)=>{var Q9=O0(),h0=(q)=>typeof q==="bigint"||Number.isInteger(q);function Fq(q,$,U,{intAsBigInt:H}){let X=q[0];if(X==="-"||X==="+")$+=1;if(q=q.substring($).replace(/_/g,""),H){switch(U){case 2:q=`0b${q}`;break;case 8:q=`0o${q}`;break;case 16:q=`0x${q}`;break}let z=BigInt(q);return X==="-"?BigInt(-1)*z:z}let Z=parseInt(q,U);return X==="-"?-1*Z:Z}function Y$(q,$,U){let{value:H}=q;if(h0(H)){let X=H.toString($);return H<0?"-"+U+X.substr(1):U+X}return Q9.stringifyNumber(q)}var iX={identify:h0,default:!0,tag:"tag:yaml.org,2002:int",format:"BIN",test:/^[-+]?0b[0-1_]+$/,resolve:(q,$,U)=>Fq(q,2,2,U),stringify:(q)=>Y$(q,2,"0b")},rX={identify:h0,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^[-+]?0[0-7_]+$/,resolve:(q,$,U)=>Fq(q,1,8,U),stringify:(q)=>Y$(q,8,"0")},nX={identify:h0,default:!0,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9][0-9_]*$/,resolve:(q,$,U)=>Fq(q,0,10,U),stringify:Q9.stringifyNumber},oX={identify:h0,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^[-+]?0x[0-9a-fA-F_]+$/,resolve:(q,$,U)=>Fq(q,2,16,U),stringify:(q)=>Y$(q,16,"0x")};tX.int=nX;tX.intBin=iX;tX.intHex=oX;tX.intOct=rX});var W$=L((XZ)=>{var Aq=w(),Pq=i(),Mq=n();class z0 extends Mq.YAMLMap{constructor(q){super(q);this.tag=z0.tag}add(q){let $;if(Aq.isPair(q))$=q;else if(q&&typeof q==="object"&&"key"in q&&"value"in q&&q.value===null)$=new Pq.Pair(q.key,null);else $=new Pq.Pair(q,null);if(!Mq.findPair(this.items,$.key))this.items.push($)}get(q,$){let U=Mq.findPair(this.items,q);return!$&&Aq.isPair(U)?Aq.isScalar(U.key)?U.key.value:U.key:U}set(q,$){if(typeof $!=="boolean")throw Error(`Expected boolean value for set(key, value) in a YAML set, not ${typeof $}`);let U=Mq.findPair(this.items,q);if(U&&!$)this.items.splice(this.items.indexOf(U),1);else if(!U&&$)this.items.push(new Pq.Pair(q))}toJSON(q,$){return super.toJSON(q,$,Set)}toString(q,$,U){if(!q)return JSON.stringify(this);if(this.hasAllNullValues(!0))return super.toString(Object.assign({},q,{allNullValues:!0}),$,U);else throw Error("Set items must all have null values")}static from(q,$,U){let{replacer:H}=U,X=new this(q);if($&&Symbol.iterator in Object($))for(let Z of $){if(typeof H==="function")Z=H.call($,Z,Z);X.items.push(Pq.createPair(Z,null,U))}return X}}z0.tag="tag:yaml.org,2002:set";var HZ={collection:"map",identify:(q)=>q instanceof Set,nodeClass:z0,default:!1,tag:"tag:yaml.org,2002:set",createNode:(q,$,U)=>z0.from(q,$,U),resolve(q,$){if(Aq.isMap(q))if(q.hasAllNullValues(!0))return Object.assign(new z0,q);else $("Set items must all have null values");else $("Expected a mapping for this tag");return q}};XZ.YAMLSet=z0;XZ.set=HZ});var B$=L((TZ)=>{var JZ=O0();function I$(q,$){let U=q[0],H=U==="-"||U==="+"?q.substring(1):q,X=(z)=>$?BigInt(z):Number(z),Z=H.replace(/_/g,"").split(":").reduce((z,J)=>z*X(60)+X(J),X(0));return U==="-"?X(-1)*Z:Z}function T9(q){let{value:$}=q,U=(z)=>z;if(typeof $==="bigint")U=(z)=>BigInt(z);else if(isNaN($)||!isFinite($))return JZ.stringifyNumber(q);let H="";if($<0)H="-",$*=U(-1);let X=U(60),Z=[$%X];if($<60)Z.unshift(0);else if($=($-Z[0])/X,Z.unshift($%X),$>=60)$=($-Z[0])/X,Z.unshift($);return H+Z.map((z)=>String(z).padStart(2,"0")).join(":").replace(/000000\d*$/,"")}var QZ={identify:(q)=>typeof q==="bigint"||Number.isInteger(q),default:!0,tag:"tag:yaml.org,2002:int",format:"TIME",test:/^[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+$/,resolve:(q,$,{intAsBigInt:U})=>I$(q,U),stringify:T9},GZ={identify:(q)=>typeof q==="number",default:!0,tag:"tag:yaml.org,2002:float",format:"TIME",test:/^[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+\.[0-9_]*$/,resolve:(q)=>I$(q,!1),stringify:T9},Y9={identify:(q)=>q instanceof Date,default:!0,tag:"tag:yaml.org,2002:timestamp",test:RegExp("^([0-9]{4})-([0-9]{1,2})-([0-9]{1,2})(?:(?:t|T|[ \\t]+)([0-9]{1,2}):([0-9]{1,2}):([0-9]{1,2}(\\.[0-9]+)?)(?:[ \\t]*(Z|[-+][012]?[0-9](?::[0-9]{2})?))?)?$"),resolve(q){let $=q.match(Y9.test);if(!$)throw Error("!!timestamp expects a date, starting with yyyy-mm-dd");let[,U,H,X,Z,z,J]=$.map(Number),Q=$[7]?Number(($[7]+"00").substr(1,3)):0,G=Date.UTC(U,H-1,X,Z||0,z||0,J||0,Q),I=$[8];if(I&&I!=="Z"){let T=I$(I,!1);if(Math.abs(T)<30)T*=60;G-=60000*T}return new Date(G)},stringify:({value:q})=>q?.toISOString().replace(/(T00:00:00)?\.000Z$/,"")??""};TZ.floatTime=GZ;TZ.intTime=QZ;TZ.timestamp=Y9});var I9=L((AZ)=>{var BZ=_0(),_Z=Lq(),LZ=L0(),OZ=y0(),DZ=z$(),W9=z9(),_$=J9(),wq=G9(),VZ=Qq(),RZ=G$(),FZ=Rq(),PZ=W$(),L$=B$(),MZ=[BZ.map,LZ.seq,OZ.string,_Z.nullTag,W9.trueTag,W9.falseTag,wq.intBin,wq.intOct,wq.int,wq.intHex,_$.floatNaN,_$.floatExp,_$.float,DZ.binary,VZ.merge,RZ.omap,FZ.pairs,PZ.set,L$.intTime,L$.floatTime,L$.timestamp];AZ.schema=MZ});var M9=L((gZ)=>{var O9=_0(),KZ=Lq(),D9=L0(),NZ=y0(),jZ=tq(),O$=q$(),D$=U$(),SZ=r2(),bZ=o2(),V9=z$(),u0=Qq(),R9=G$(),F9=Rq(),B9=I9(),P9=W$(),Kq=B$(),_9=new Map([["core",SZ.schema],["failsafe",[O9.map,D9.seq,NZ.string]],["json",bZ.schema],["yaml11",B9.schema],["yaml-1.1",B9.schema]]),L9={binary:V9.binary,bool:jZ.boolTag,float:O$.float,floatExp:O$.floatExp,floatNaN:O$.floatNaN,floatTime:Kq.floatTime,int:D$.int,intHex:D$.intHex,intOct:D$.intOct,intTime:Kq.intTime,map:O9.map,merge:u0.merge,null:KZ.nullTag,omap:R9.omap,pairs:F9.pairs,seq:D9.seq,set:P9.set,timestamp:Kq.timestamp},CZ={"tag:yaml.org,2002:binary":V9.binary,"tag:yaml.org,2002:merge":u0.merge,"tag:yaml.org,2002:omap":R9.omap,"tag:yaml.org,2002:pairs":F9.pairs,"tag:yaml.org,2002:set":P9.set,"tag:yaml.org,2002:timestamp":Kq.timestamp};function EZ(q,$,U){let H=_9.get($);if(H&&!q)return U&&!H.includes(u0.merge)?H.concat(u0.merge):H.slice();let X=H;if(!X)if(Array.isArray(q))X=[];else{let Z=Array.from(_9.keys()).filter((z)=>z!=="yaml11").map((z)=>JSON.stringify(z)).join(", ");throw Error(`Unknown schema "${$}"; use one of ${Z} or define customTags array`)}if(Array.isArray(q))for(let Z of q)X=X.concat(Z);else if(typeof q==="function")X=q(X.slice());if(U)X=X.concat(u0.merge);return X.reduce((Z,z)=>{let J=typeof z==="string"?L9[z]:z;if(!J){let Q=JSON.stringify(z),G=Object.keys(L9).map((I)=>JSON.stringify(I)).join(", ");throw Error(`Unknown custom tag ${Q}; use one of ${G}`)}if(!Z.includes(J))Z.push(J);return Z},[])}gZ.coreKnownTags=CZ;gZ.getTags=EZ});var F$=L((vZ)=>{var V$=w(),kZ=_0(),xZ=L0(),hZ=y0(),Nq=M9(),uZ=(q,$)=>q.key<$.key?-1:q.key>$.key?1:0;class R${constructor({compat:q,customTags:$,merge:U,resolveKnownTags:H,schema:X,sortMapEntries:Z,toStringDefaults:z}){this.compat=Array.isArray(q)?Nq.getTags(q,"compat"):q?Nq.getTags(null,q):null,this.name=typeof X==="string"&&X||"core",this.knownTags=H?Nq.coreKnownTags:{},this.tags=Nq.getTags($,this.name,U),this.toStringOptions=z??null,Object.defineProperty(this,V$.MAP,{value:kZ.map}),Object.defineProperty(this,V$.SCALAR,{value:hZ.string}),Object.defineProperty(this,V$.SEQ,{value:xZ.seq}),this.sortMapEntries=typeof Z==="function"?Z:Z===!0?uZ:null}clone(){let q=Object.create(R$.prototype,Object.getOwnPropertyDescriptors(this));return q.tags=this.tags.slice(),q}}vZ.Schema=R$});var A9=L((lZ)=>{var pZ=w(),P$=E0(),v0=S0();function dZ(q,$){let U=[],H=$.directives===!0;if($.directives!==!1&&q.directives){let Q=q.directives.toString(q);if(Q)U.push(Q),H=!0;else if(q.directives.docStart)H=!0}if(H)U.push("---");let X=P$.createStringifyContext(q,$),{commentString:Z}=X.options;if(q.commentBefore){if(U.length!==1)U.unshift("");let Q=Z(q.commentBefore);U.unshift(v0.indentComment(Q,""))}let z=!1,J=null;if(q.contents){if(pZ.isNode(q.contents)){if(q.contents.spaceBefore&&H)U.push("");if(q.contents.commentBefore){let I=Z(q.contents.commentBefore);U.push(v0.indentComment(I,""))}X.forceBlockIndent=!!q.comment,J=q.contents.comment}let Q=J?void 0:()=>z=!0,G=P$.stringify(q.contents,X,()=>J=null,Q);if(J)G+=v0.lineComment(G,"",Z(J));if((G[0]==="|"||G[0]===">")&&U[U.length-1]==="---")U[U.length-1]=`--- ${G}`;else U.push(G)}else U.push(P$.stringify(q.contents,X));if(q.directives?.docEnd)if(q.comment){let Q=Z(q.comment);if(Q.includes(`
56
+ `))U.push("..."),U.push(v0.indentComment(Q,""));else U.push(`... ${Q}`)}else U.push("...");else{let Q=q.comment;if(Q&&z)Q=Q.replace(/^\n+/,"");if(Q){if((!z||J)&&U[U.length-1]!=="")U.push("");U.push(v0.indentComment(Z(Q),""))}}return U.join(`
57
+ `)+`
58
+ `}lZ.stringifyDocument=dZ});var m0=L((eZ)=>{var aZ=N0(),D0=$q(),f=w(),sZ=i(),iZ=c(),rZ=F$(),nZ=A9(),M$=t0(),oZ=pq(),tZ=j0(),A$=mq();class w${constructor(q,$,U){this.commentBefore=null,this.comment=null,this.errors=[],this.warnings=[],Object.defineProperty(this,f.NODE_TYPE,{value:f.DOC});let H=null;if(typeof $==="function"||Array.isArray($))H=$;else if(U===void 0&&$)U=$,$=void 0;let X=Object.assign({intAsBigInt:!1,keepSourceTokens:!1,logLevel:"warn",prettyErrors:!0,strict:!0,stringKeys:!1,uniqueKeys:!0,version:"1.2"},U);this.options=X;let{version:Z}=X;if(U?._directives){if(this.directives=U._directives.atDocument(),this.directives.yaml.explicit)Z=this.directives.yaml.version}else this.directives=new A$.Directives({version:Z});this.setSchema(Z,U),this.contents=q===void 0?null:this.createNode(q,H,U)}clone(){let q=Object.create(w$.prototype,{[f.NODE_TYPE]:{value:f.DOC}});if(q.commentBefore=this.commentBefore,q.comment=this.comment,q.errors=this.errors.slice(),q.warnings=this.warnings.slice(),q.options=Object.assign({},this.options),this.directives)q.directives=this.directives.clone();if(q.schema=this.schema.clone(),q.contents=f.isNode(this.contents)?this.contents.clone(q.schema):this.contents,this.range)q.range=this.range.slice();return q}add(q){if(V0(this.contents))this.contents.add(q)}addIn(q,$){if(V0(this.contents))this.contents.addIn(q,$)}createAlias(q,$){if(!q.anchor){let U=M$.anchorNames(this);q.anchor=!$||U.has($)?M$.findNewAnchor($||"a",U):$}return new aZ.Alias(q.anchor)}createNode(q,$,U){let H=void 0;if(typeof $==="function")q=$.call({"":q},"",q),H=$;else if(Array.isArray($)){let W=(V)=>typeof V==="number"||V instanceof String||V instanceof Number,B=$.filter(W).map(String);if(B.length>0)$=$.concat(B);H=$}else if(U===void 0&&$)U=$,$=void 0;let{aliasDuplicateObjects:X,anchorPrefix:Z,flow:z,keepUndefined:J,onTagObj:Q,tag:G}=U??{},{onAnchor:I,setAnchors:T,sourceObjects:Y}=M$.createNodeAnchors(this,Z||"a"),_={aliasDuplicateObjects:X??!0,keepUndefined:J??!1,onAnchor:I,onTagObj:Q,replacer:H,schema:this.schema,sourceObjects:Y},O=tZ.createNode(q,G,_);if(z&&f.isCollection(O))O.flow=!0;return T(),O}createPair(q,$,U={}){let H=this.createNode(q,null,U),X=this.createNode($,null,U);return new sZ.Pair(H,X)}delete(q){return V0(this.contents)?this.contents.delete(q):!1}deleteIn(q){if(D0.isEmptyPath(q)){if(this.contents==null)return!1;return this.contents=null,!0}return V0(this.contents)?this.contents.deleteIn(q):!1}get(q,$){return f.isCollection(this.contents)?this.contents.get(q,$):void 0}getIn(q,$){if(D0.isEmptyPath(q))return!$&&f.isScalar(this.contents)?this.contents.value:this.contents;return f.isCollection(this.contents)?this.contents.getIn(q,$):void 0}has(q){return f.isCollection(this.contents)?this.contents.has(q):!1}hasIn(q){if(D0.isEmptyPath(q))return this.contents!==void 0;return f.isCollection(this.contents)?this.contents.hasIn(q):!1}set(q,$){if(this.contents==null)this.contents=D0.collectionFromPath(this.schema,[q],$);else if(V0(this.contents))this.contents.set(q,$)}setIn(q,$){if(D0.isEmptyPath(q))this.contents=$;else if(this.contents==null)this.contents=D0.collectionFromPath(this.schema,Array.from(q),$);else if(V0(this.contents))this.contents.setIn(q,$)}setSchema(q,$={}){if(typeof q==="number")q=String(q);let U;switch(q){case"1.1":if(this.directives)this.directives.yaml.version="1.1";else this.directives=new A$.Directives({version:"1.1"});U={resolveKnownTags:!1,schema:"yaml-1.1"};break;case"1.2":case"next":if(this.directives)this.directives.yaml.version=q;else this.directives=new A$.Directives({version:q});U={resolveKnownTags:!0,schema:"core"};break;case null:if(this.directives)delete this.directives;U=null;break;default:{let H=JSON.stringify(q);throw Error(`Expected '1.1', '1.2' or null as first argument, but found: ${H}`)}}if($.schema instanceof Object)this.schema=$.schema;else if(U)this.schema=new rZ.Schema(Object.assign(U,$));else throw Error("With a null YAML version, the { schema: Schema } option is required")}toJS({json:q,jsonArg:$,mapAsMap:U,maxAliasCount:H,onAnchor:X,reviver:Z}={}){let z={anchors:new Map,doc:this,keep:!q,mapAsMap:U===!0,mapKeyWarned:!1,maxAliasCount:typeof H==="number"?H:100},J=iZ.toJS(this.contents,$??"",z);if(typeof X==="function")for(let{count:Q,res:G}of z.anchors.values())X(G,Q);return typeof Z==="function"?oZ.applyReviver(Z,{"":J},"",J):J}toJSON(q,$){return this.toJS({json:!0,jsonArg:q,mapAsMap:!1,onAnchor:$})}toString(q={}){if(this.errors.length>0)throw Error("Document with errors cannot be stringified");if("indent"in q&&(!Number.isInteger(q.indent)||Number(q.indent)<=0)){let $=JSON.stringify(q.indent);throw Error(`"indent" option must be a positive integer, not ${$}`)}return nZ.stringifyDocument(this,q)}}function V0(q){if(f.isCollection(q))return!0;throw Error("Expected a YAML collection as document contents")}eZ.Document=w$});var p0=L((U5)=>{class jq extends Error{constructor(q,$,U,H){super();this.name=q,this.code=U,this.message=H,this.pos=$}}class w9 extends jq{constructor(q,$,U){super("YAMLParseError",q,$,U)}}class K9 extends jq{constructor(q,$,U){super("YAMLWarning",q,$,U)}}var $5=(q,$)=>(U)=>{if(U.pos[0]===-1)return;U.linePos=U.pos.map((J)=>$.linePos(J));let{line:H,col:X}=U.linePos[0];U.message+=` at line ${H}, column ${X}`;let Z=X-1,z=q.substring($.lineStarts[H-1],$.lineStarts[H]).replace(/[\n\r]+$/,"");if(Z>=60&&z.length>80){let J=Math.min(Z-39,z.length-79);z="\u2026"+z.substring(J),Z-=J-1}if(z.length>80)z=z.substring(0,79)+"\u2026";if(H>1&&/^ *$/.test(z.substring(0,Z))){let J=q.substring($.lineStarts[H-2],$.lineStarts[H-1]);if(J.length>80)J=J.substring(0,79)+`\u2026
59
+ `;z=J+z}if(/[^ ]/.test(z)){let J=1,Q=U.linePos[1];if(Q?.line===H&&Q.col>X)J=Math.max(1,Math.min(Q.col-X,80-Z));let G=" ".repeat(Z)+"^".repeat(J);U.message+=`:
60
+
61
+ ${z}
62
+ ${G}
63
+ `}};U5.YAMLError=jq;U5.YAMLParseError=w9;U5.YAMLWarning=K9;U5.prettifyError=$5});var d0=L((Q5)=>{function J5(q,{flow:$,indicator:U,next:H,offset:X,onError:Z,parentIndent:z,startOnNewline:J}){let Q=!1,G=J,I=J,T="",Y="",_=!1,O=!1,W=null,B=null,V=null,R=null,F=null,P=null,M=null;for(let D of q){if(O){if(D.type!=="space"&&D.type!=="newline"&&D.type!=="comma")Z(D.offset,"MISSING_CHAR","Tags and anchors must be separated from the next token by white space");O=!1}if(W){if(G&&D.type!=="comment"&&D.type!=="newline")Z(W,"TAB_AS_INDENT","Tabs are not allowed as indentation");W=null}switch(D.type){case"space":if(!$&&(U!=="doc-start"||H?.type!=="flow-collection")&&D.source.includes("\t"))W=D;I=!0;break;case"comment":{if(!I)Z(D,"MISSING_CHAR","Comments must be separated from other tokens by white space characters");let j=D.source.substring(1)||" ";if(!T)T=j;else T+=Y+j;Y="",G=!1;break}case"newline":if(G){if(T)T+=D.source;else if(!P||U!=="seq-item-ind")Q=!0}else Y+=D.source;if(G=!0,_=!0,B||V)R=D;I=!0;break;case"anchor":if(B)Z(D,"MULTIPLE_ANCHORS","A node can have at most one anchor");if(D.source.endsWith(":"))Z(D.offset+D.source.length-1,"BAD_ALIAS","Anchor ending in : is ambiguous",!0);B=D,M??(M=D.offset),G=!1,I=!1,O=!0;break;case"tag":{if(V)Z(D,"MULTIPLE_TAGS","A node can have at most one tag");V=D,M??(M=D.offset),G=!1,I=!1,O=!0;break}case U:if(B||V)Z(D,"BAD_PROP_ORDER",`Anchors and tags must be after the ${D.source} indicator`);if(P)Z(D,"UNEXPECTED_TOKEN",`Unexpected ${D.source} in ${$??"collection"}`);P=D,G=U==="seq-item-ind"||U==="explicit-key-ind",I=!1;break;case"comma":if($){if(F)Z(D,"UNEXPECTED_TOKEN",`Unexpected , in ${$}`);F=D,G=!1,I=!1;break}default:Z(D,"UNEXPECTED_TOKEN",`Unexpected ${D.type} token`),G=!1,I=!1}}let A=q[q.length-1],K=A?A.offset+A.source.length:X;if(O&&H&&H.type!=="space"&&H.type!=="newline"&&H.type!=="comma"&&(H.type!=="scalar"||H.source!==""))Z(H.offset,"MISSING_CHAR","Tags and anchors must be separated from the next token by white space");if(W&&(G&&W.indent<=z||H?.type==="block-map"||H?.type==="block-seq"))Z(W,"TAB_AS_INDENT","Tabs are not allowed as indentation");return{comma:F,found:P,spaceBefore:Q,comment:T,hasNewline:_,anchor:B,tag:V,newlineAfterProp:R,end:K,start:M??K}}Q5.resolveProps=J5});var Sq=L((T5)=>{function K$(q){if(!q)return null;switch(q.type){case"alias":case"scalar":case"double-quoted-scalar":case"single-quoted-scalar":if(q.source.includes(`
64
+ `))return!0;if(q.end){for(let $ of q.end)if($.type==="newline")return!0}return!1;case"flow-collection":for(let $ of q.items){for(let U of $.start)if(U.type==="newline")return!0;if($.sep){for(let U of $.sep)if(U.type==="newline")return!0}if(K$($.key)||K$($.value))return!0}return!1;default:return!0}}T5.containsNewline=K$});var N$=L((B5)=>{var W5=Sq();function I5(q,$,U){if($?.type==="flow-collection"){let H=$.end[0];if(H.indent===q&&(H.source==="]"||H.source==="}")&&W5.containsNewline($))U(H,"BAD_INDENT","Flow end indicator should be more indented than parent",!0)}}B5.flowIndentCheck=I5});var j$=L((O5)=>{var N9=w();function L5(q,$,U){let{uniqueKeys:H}=q.options;if(H===!1)return!1;let X=typeof H==="function"?H:(Z,z)=>Z===z||N9.isScalar(Z)&&N9.isScalar(z)&&Z.value===z.value;return $.some((Z)=>X(Z.key,U))}O5.mapIncludes=L5});var E9=L((M5)=>{var j9=i(),V5=n(),S9=d0(),R5=Sq(),b9=N$(),F5=j$(),C9="All mapping items must start at the same column";function P5({composeNode:q,composeEmptyNode:$},U,H,X,Z){let J=new(Z?.nodeClass??V5.YAMLMap)(U.schema);if(U.atRoot)U.atRoot=!1;let Q=H.offset,G=null;for(let I of H.items){let{start:T,key:Y,sep:_,value:O}=I,W=S9.resolveProps(T,{indicator:"explicit-key-ind",next:Y??_?.[0],offset:Q,onError:X,parentIndent:H.indent,startOnNewline:!0}),B=!W.found;if(B){if(Y){if(Y.type==="block-seq")X(Q,"BLOCK_AS_IMPLICIT_KEY","A block sequence may not be used as an implicit map key");else if("indent"in Y&&Y.indent!==H.indent)X(Q,"BAD_INDENT",C9)}if(!W.anchor&&!W.tag&&!_){if(G=W.end,W.comment)if(J.comment)J.comment+=`
65
+ `+W.comment;else J.comment=W.comment;continue}if(W.newlineAfterProp||R5.containsNewline(Y))X(Y??T[T.length-1],"MULTILINE_IMPLICIT_KEY","Implicit keys need to be on a single line")}else if(W.found?.indent!==H.indent)X(Q,"BAD_INDENT",C9);U.atKey=!0;let V=W.end,R=Y?q(U,Y,W,X):$(U,V,T,null,W,X);if(U.schema.compat)b9.flowIndentCheck(H.indent,Y,X);if(U.atKey=!1,F5.mapIncludes(U,J.items,R))X(V,"DUPLICATE_KEY","Map keys must be unique");let F=S9.resolveProps(_??[],{indicator:"map-value-ind",next:O,offset:R.range[2],onError:X,parentIndent:H.indent,startOnNewline:!Y||Y.type==="block-scalar"});if(Q=F.end,F.found){if(B){if(O?.type==="block-map"&&!F.hasNewline)X(Q,"BLOCK_AS_IMPLICIT_KEY","Nested mappings are not allowed in compact mappings");if(U.options.strict&&W.start<F.found.offset-1024)X(R.range,"KEY_OVER_1024_CHARS","The : indicator must be at most 1024 chars after the start of an implicit block mapping key")}let P=O?q(U,O,F,X):$(U,Q,_,null,F,X);if(U.schema.compat)b9.flowIndentCheck(H.indent,O,X);Q=P.range[2];let M=new j9.Pair(R,P);if(U.options.keepSourceTokens)M.srcToken=I;J.items.push(M)}else{if(B)X(R.range,"MISSING_CHAR","Implicit map keys need to be followed by map values");if(F.comment)if(R.comment)R.comment+=`
66
+ `+F.comment;else R.comment=F.comment;let P=new j9.Pair(R);if(U.options.keepSourceTokens)P.srcToken=I;J.items.push(P)}}if(G&&G<Q)X(G,"IMPOSSIBLE","Map comment with trailing content");return J.range=[H.offset,Q,G??Q],J}M5.resolveBlockMap=P5});var g9=L((S5)=>{var w5=o(),K5=d0(),N5=N$();function j5({composeNode:q,composeEmptyNode:$},U,H,X,Z){let J=new(Z?.nodeClass??w5.YAMLSeq)(U.schema);if(U.atRoot)U.atRoot=!1;if(U.atKey)U.atKey=!1;let Q=H.offset,G=null;for(let{start:I,value:T}of H.items){let Y=K5.resolveProps(I,{indicator:"seq-item-ind",next:T,offset:Q,onError:X,parentIndent:H.indent,startOnNewline:!0});if(!Y.found)if(Y.anchor||Y.tag||T)if(T?.type==="block-seq")X(Y.end,"BAD_INDENT","All sequence items must start at the same column");else X(Q,"MISSING_CHAR","Sequence item without - indicator");else{if(G=Y.end,Y.comment)J.comment=Y.comment;continue}let _=T?q(U,T,Y,X):$(U,Y.end,I,null,Y,X);if(U.schema.compat)N5.flowIndentCheck(H.indent,T,X);Q=_.range[2],J.items.push(_)}return J.range=[H.offset,Q,G??Q],J}S5.resolveBlockSeq=j5});var R0=L((E5)=>{function C5(q,$,U,H){let X="";if(q){let Z=!1,z="";for(let J of q){let{source:Q,type:G}=J;switch(G){case"space":Z=!0;break;case"comment":{if(U&&!Z)H(J,"MISSING_CHAR","Comments must be separated from other tokens by white space characters");let I=Q.substring(1)||" ";if(!X)X=I;else X+=z+I;z="";break}case"newline":if(X)z+=Q;Z=!0;break;default:H(J,"UNEXPECTED_TOKEN",`Unexpected ${G} at node end`)}$+=Q.length}}return{comment:X,offset:$}}E5.resolveEnd=C5});var k9=L((m5)=>{var f5=w(),y5=i(),f9=n(),k5=o(),x5=R0(),y9=d0(),h5=Sq(),u5=j$(),S$="Block collections are not allowed within flow collections",b$=(q)=>q&&(q.type==="block-map"||q.type==="block-seq");function v5({composeNode:q,composeEmptyNode:$},U,H,X,Z){let z=H.start.source==="{",J=z?"flow map":"flow sequence",G=new(Z?.nodeClass??(z?f9.YAMLMap:k5.YAMLSeq))(U.schema);G.flow=!0;let I=U.atRoot;if(I)U.atRoot=!1;if(U.atKey)U.atKey=!1;let T=H.offset+H.start.source.length;for(let B=0;B<H.items.length;++B){let V=H.items[B],{start:R,key:F,sep:P,value:M}=V,A=y9.resolveProps(R,{flow:J,indicator:"explicit-key-ind",next:F??P?.[0],offset:T,onError:X,parentIndent:H.indent,startOnNewline:!1});if(!A.found){if(!A.anchor&&!A.tag&&!P&&!M){if(B===0&&A.comma)X(A.comma,"UNEXPECTED_TOKEN",`Unexpected , in ${J}`);else if(B<H.items.length-1)X(A.start,"UNEXPECTED_TOKEN",`Unexpected empty item in ${J}`);if(A.comment)if(G.comment)G.comment+=`
67
+ `+A.comment;else G.comment=A.comment;T=A.end;continue}if(!z&&U.options.strict&&h5.containsNewline(F))X(F,"MULTILINE_IMPLICIT_KEY","Implicit keys of flow sequence pairs need to be on a single line")}if(B===0){if(A.comma)X(A.comma,"UNEXPECTED_TOKEN",`Unexpected , in ${J}`)}else{if(!A.comma)X(A.start,"MISSING_CHAR",`Missing , between ${J} items`);if(A.comment){let K="";q:for(let D of R)switch(D.type){case"comma":case"space":break;case"comment":K=D.source.substring(1);break q;default:break q}if(K){let D=G.items[G.items.length-1];if(f5.isPair(D))D=D.value??D.key;if(D.comment)D.comment+=`
68
+ `+K;else D.comment=K;A.comment=A.comment.substring(K.length+1)}}}if(!z&&!P&&!A.found){let K=M?q(U,M,A,X):$(U,A.end,P,null,A,X);if(G.items.push(K),T=K.range[2],b$(M))X(K.range,"BLOCK_IN_FLOW",S$)}else{U.atKey=!0;let K=A.end,D=F?q(U,F,A,X):$(U,K,R,null,A,X);if(b$(F))X(D.range,"BLOCK_IN_FLOW",S$);U.atKey=!1;let j=y9.resolveProps(P??[],{flow:J,indicator:"map-value-ind",next:M,offset:D.range[2],onError:X,parentIndent:H.indent,startOnNewline:!1});if(j.found){if(!z&&!A.found&&U.options.strict){if(P)for(let S of P){if(S===j.found)break;if(S.type==="newline"){X(S,"MULTILINE_IMPLICIT_KEY","Implicit keys of flow sequence pairs need to be on a single line");break}}if(A.start<j.found.offset-1024)X(j.found,"KEY_OVER_1024_CHARS","The : indicator must be at most 1024 chars after the start of an implicit flow sequence key")}}else if(M)if("source"in M&&M.source?.[0]===":")X(M,"MISSING_CHAR",`Missing space after : in ${J}`);else X(j.start,"MISSING_CHAR",`Missing , or : between ${J} items`);let d=M?q(U,M,j,X):j.found?$(U,j.end,P,null,j,X):null;if(d){if(b$(M))X(d.range,"BLOCK_IN_FLOW",S$)}else if(j.comment)if(D.comment)D.comment+=`
69
+ `+j.comment;else D.comment=j.comment;let G0=new y5.Pair(D,d);if(U.options.keepSourceTokens)G0.srcToken=V;if(z){let S=G;if(u5.mapIncludes(U,S.items,D))X(K,"DUPLICATE_KEY","Map keys must be unique");S.items.push(G0)}else{let S=new f9.YAMLMap(U.schema);S.flow=!0,S.items.push(G0);let t$=(d??D).range;S.range=[D.range[0],t$[1],t$[2]],G.items.push(S)}T=d?d.range[2]:j.end}}let Y=z?"}":"]",[_,...O]=H.end,W=T;if(_?.source===Y)W=_.offset+_.source.length;else{let B=J[0].toUpperCase()+J.substring(1),V=I?`${B} must end with a ${Y}`:`${B} in block collection must be sufficiently indented and end with a ${Y}`;if(X(T,I?"MISSING_CHAR":"BAD_INDENT",V),_&&_.source.length!==1)O.unshift(_)}if(O.length>0){let B=x5.resolveEnd(O,W,U.options.strict,X);if(B.comment)if(G.comment)G.comment+=`
70
+ `+B.comment;else G.comment=B.comment;G.range=[H.offset,W,B.offset]}else G.range=[H.offset,W,W];return G}m5.resolveFlowCollection=v5});var x9=L((o5)=>{var d5=w(),l5=N(),c5=n(),a5=o(),s5=E9(),i5=g9(),r5=k9();function C$(q,$,U,H,X,Z){let z=U.type==="block-map"?s5.resolveBlockMap(q,$,U,H,Z):U.type==="block-seq"?i5.resolveBlockSeq(q,$,U,H,Z):r5.resolveFlowCollection(q,$,U,H,Z),J=z.constructor;if(X==="!"||X===J.tagName)return z.tag=J.tagName,z;if(X)z.tag=X;return z}function n5(q,$,U,H,X){let Z=H.tag,z=!Z?null:$.directives.tagName(Z.source,(Y)=>X(Z,"TAG_RESOLVE_FAILED",Y));if(U.type==="block-seq"){let{anchor:Y,newlineAfterProp:_}=H,O=Y&&Z?Y.offset>Z.offset?Y:Z:Y??Z;if(O&&(!_||_.offset<O.offset))X(O,"MISSING_CHAR","Missing newline after block sequence props")}let J=U.type==="block-map"?"map":U.type==="block-seq"?"seq":U.start.source==="{"?"map":"seq";if(!Z||!z||z==="!"||z===c5.YAMLMap.tagName&&J==="map"||z===a5.YAMLSeq.tagName&&J==="seq")return C$(q,$,U,X,z);let Q=$.schema.tags.find((Y)=>Y.tag===z&&Y.collection===J);if(!Q){let Y=$.schema.knownTags[z];if(Y?.collection===J)$.schema.tags.push(Object.assign({},Y,{default:!1})),Q=Y;else{if(Y)X(Z,"BAD_COLLECTION_TYPE",`${Y.tag} used for ${J} collection, but expects ${Y.collection??"scalar"}`,!0);else X(Z,"TAG_RESOLVE_FAILED",`Unresolved tag: ${z}`,!0);return C$(q,$,U,X,z)}}let G=C$(q,$,U,X,z,Q),I=Q.resolve?.(G,(Y)=>X(Z,"TAG_RESOLVE_FAILED",Y),$.options)??G,T=d5.isNode(I)?I:new l5.Scalar(I);if(T.range=G.range,T.tag=z,Q?.format)T.format=Q.format;return T}o5.composeCollection=n5});var g$=L((U6)=>{var E$=N();function e5(q,$,U){let H=$.offset,X=q6($,q.options.strict,U);if(!X)return{value:"",type:null,comment:"",range:[H,H,H]};let Z=X.mode===">"?E$.Scalar.BLOCK_FOLDED:E$.Scalar.BLOCK_LITERAL,z=$.source?$6($.source):[],J=z.length;for(let W=z.length-1;W>=0;--W){let B=z[W][1];if(B===""||B==="\r")J=W;else break}if(J===0){let W=X.chomp==="+"&&z.length>0?`
71
+ `.repeat(Math.max(1,z.length-1)):"",B=H+X.length;if($.source)B+=$.source.length;return{value:W,type:Z,comment:X.comment,range:[H,B,B]}}let Q=$.indent+X.indent,G=$.offset+X.length,I=0;for(let W=0;W<J;++W){let[B,V]=z[W];if(V===""||V==="\r"){if(X.indent===0&&B.length>Q)Q=B.length}else{if(B.length<Q)U(G+B.length,"MISSING_CHAR","Block scalars with more-indented leading empty lines must use an explicit indentation indicator");if(X.indent===0)Q=B.length;if(I=W,Q===0&&!q.atRoot)U(G,"BAD_INDENT","Block scalar values in collections must be indented");break}G+=B.length+V.length+1}for(let W=z.length-1;W>=J;--W)if(z[W][0].length>Q)J=W+1;let T="",Y="",_=!1;for(let W=0;W<I;++W)T+=z[W][0].slice(Q)+`
72
+ `;for(let W=I;W<J;++W){let[B,V]=z[W];G+=B.length+V.length+1;let R=V[V.length-1]==="\r";if(R)V=V.slice(0,-1);if(V&&B.length<Q){let P=`Block scalar lines must not be less indented than their ${X.indent?"explicit indentation indicator":"first line"}`;U(G-V.length-(R?2:1),"BAD_INDENT",P),B=""}if(Z===E$.Scalar.BLOCK_LITERAL)T+=Y+B.slice(Q)+V,Y=`
73
+ `;else if(B.length>Q||V[0]==="\t"){if(Y===" ")Y=`
74
+ `;else if(!_&&Y===`
75
+ `)Y=`
76
+
77
+ `;T+=Y+B.slice(Q)+V,Y=`
78
+ `,_=!0}else if(V==="")if(Y===`
79
+ `)T+=`
80
+ `;else Y=`
81
+ `;else T+=Y+V,Y=" ",_=!1}switch(X.chomp){case"-":break;case"+":for(let W=J;W<z.length;++W)T+=`
82
+ `+z[W][0].slice(Q);if(T[T.length-1]!==`
83
+ `)T+=`
84
+ `;break;default:T+=`
85
+ `}let O=H+X.length+$.source.length;return{value:T,type:Z,comment:X.comment,range:[H,O,O]}}function q6({offset:q,props:$},U,H){if($[0].type!=="block-scalar-header")return H($[0],"IMPOSSIBLE","Block scalar header not found"),null;let{source:X}=$[0],Z=X[0],z=0,J="",Q=-1;for(let Y=1;Y<X.length;++Y){let _=X[Y];if(!J&&(_==="-"||_==="+"))J=_;else{let O=Number(_);if(!z&&O)z=O;else if(Q===-1)Q=q+Y}}if(Q!==-1)H(Q,"UNEXPECTED_TOKEN",`Block scalar header includes extra characters: ${X}`);let G=!1,I="",T=X.length;for(let Y=1;Y<$.length;++Y){let _=$[Y];switch(_.type){case"space":G=!0;case"newline":T+=_.source.length;break;case"comment":if(U&&!G)H(_,"MISSING_CHAR","Comments must be separated from other tokens by white space characters");T+=_.source.length,I=_.source.substring(1);break;case"error":H(_,"UNEXPECTED_TOKEN",_.message),T+=_.source.length;break;default:{let O=`Unexpected token in block scalar header: ${_.type}`;H(_,"UNEXPECTED_TOKEN",O);let W=_.source;if(W&&typeof W==="string")T+=W.length}}}return{mode:Z,indent:z,chomp:J,comment:I,length:T}}function $6(q){let $=q.split(/\n( *)/),U=$[0],H=U.match(/^( *)/),Z=[H?.[1]?[H[1],U.slice(H[1].length)]:["",U]];for(let z=1;z<$.length;z+=2)Z.push([$[z],$[z+1]]);return Z}U6.resolveBlockScalar=e5});var y$=L((W6)=>{var f$=N(),X6=R0();function Z6(q,$,U){let{offset:H,type:X,source:Z,end:z}=q,J,Q,G=(Y,_,O)=>U(H+Y,_,O);switch(X){case"scalar":J=f$.Scalar.PLAIN,Q=z6(Z,G);break;case"single-quoted-scalar":J=f$.Scalar.QUOTE_SINGLE,Q=J6(Z,G);break;case"double-quoted-scalar":J=f$.Scalar.QUOTE_DOUBLE,Q=Q6(Z,G);break;default:return U(q,"UNEXPECTED_TOKEN",`Expected a flow scalar value, but found: ${X}`),{value:"",type:null,comment:"",range:[H,H+Z.length,H+Z.length]}}let I=H+Z.length,T=X6.resolveEnd(z,I,$,U);return{value:Q,type:J,comment:T.comment,range:[H,I,T.offset]}}function z6(q,$){let U="";switch(q[0]){case"\t":U="a tab character";break;case",":U="flow indicator character ,";break;case"%":U="directive indicator character %";break;case"|":case">":{U=`block scalar indicator ${q[0]}`;break}case"@":case"`":{U=`reserved character ${q[0]}`;break}}if(U)$(0,"BAD_SCALAR_START",`Plain value cannot start with ${U}`);return h9(q)}function J6(q,$){if(q[q.length-1]!=="'"||q.length===1)$(q.length,"MISSING_CHAR","Missing closing 'quote");return h9(q.slice(1,-1)).replace(/''/g,"'")}function h9(q){let $,U;try{$=new RegExp(`(.*?)(?<![ ])[ ]*\r?
86
+ `,"sy"),U=new RegExp(`[ ]*(.*?)(?:(?<![ ])[ ]*)?\r?
87
+ `,"sy")}catch{$=/(.*?)[ \t]*\r?\n/sy,U=/[ \t]*(.*?)[ \t]*\r?\n/sy}let H=$.exec(q);if(!H)return q;let X=H[1],Z=" ",z=$.lastIndex;U.lastIndex=z;while(H=U.exec(q)){if(H[1]==="")if(Z===`
88
+ `)X+=Z;else Z=`
89
+ `;else X+=Z+H[1],Z=" ";z=U.lastIndex}let J=/[ \t]*(.*)/sy;return J.lastIndex=z,H=J.exec(q),X+Z+(H?.[1]??"")}function Q6(q,$){let U="";for(let H=1;H<q.length-1;++H){let X=q[H];if(X==="\r"&&q[H+1]===`
90
+ `)continue;if(X===`
91
+ `){let{fold:Z,offset:z}=G6(q,H);U+=Z,H=z}else if(X==="\\"){let Z=q[++H],z=T6[Z];if(z)U+=z;else if(Z===`
92
+ `){Z=q[H+1];while(Z===" "||Z==="\t")Z=q[++H+1]}else if(Z==="\r"&&q[H+1]===`
93
+ `){Z=q[++H+1];while(Z===" "||Z==="\t")Z=q[++H+1]}else if(Z==="x"||Z==="u"||Z==="U"){let J=Z==="x"?2:Z==="u"?4:8;U+=Y6(q,H+1,J,$),H+=J}else{let J=q.substr(H-1,2);$(H-1,"BAD_DQ_ESCAPE",`Invalid escape sequence ${J}`),U+=J}}else if(X===" "||X==="\t"){let Z=H,z=q[H+1];while(z===" "||z==="\t")z=q[++H+1];if(z!==`
94
+ `&&!(z==="\r"&&q[H+2]===`
95
+ `))U+=H>Z?q.slice(Z,H+1):X}else U+=X}if(q[q.length-1]!=='"'||q.length===1)$(q.length,"MISSING_CHAR",'Missing closing "quote');return U}function G6(q,$){let U="",H=q[$+1];while(H===" "||H==="\t"||H===`
96
+ `||H==="\r"){if(H==="\r"&&q[$+2]!==`
97
+ `)break;if(H===`
98
+ `)U+=`
99
+ `;$+=1,H=q[$+1]}if(!U)U=" ";return{fold:U,offset:$}}var T6={"0":"\x00",a:"\x07",b:"\b",e:"\x1B",f:"\f",n:`
100
+ `,r:"\r",t:"\t",v:"\v",N:"\x85",_:"\xA0",L:"\u2028",P:"\u2029"," ":" ",'"':'"',"/":"/","\\":"\\","\t":"\t"};function Y6(q,$,U,H){let X=q.substr($,U),z=X.length===U&&/^[0-9a-fA-F]+$/.test(X)?parseInt(X,16):NaN;try{return String.fromCodePoint(z)}catch{let J=q.substr($-2,U+2);return H($-2,"BAD_DQ_ESCAPE",`Invalid escape sequence ${J}`),J}}W6.resolveFlowScalar=Z6});var v9=L((V6)=>{var J0=w(),u9=N(),B6=g$(),_6=y$();function L6(q,$,U,H){let{value:X,type:Z,comment:z,range:J}=$.type==="block-scalar"?B6.resolveBlockScalar(q,$,H):_6.resolveFlowScalar($,q.options.strict,H),Q=U?q.directives.tagName(U.source,(T)=>H(U,"TAG_RESOLVE_FAILED",T)):null,G;if(q.options.stringKeys&&q.atKey)G=q.schema[J0.SCALAR];else if(Q)G=O6(q.schema,X,Q,U,H);else if($.type==="scalar")G=D6(q,X,$,H);else G=q.schema[J0.SCALAR];let I;try{let T=G.resolve(X,(Y)=>H(U??$,"TAG_RESOLVE_FAILED",Y),q.options);I=J0.isScalar(T)?T:new u9.Scalar(T)}catch(T){let Y=T instanceof Error?T.message:String(T);H(U??$,"TAG_RESOLVE_FAILED",Y),I=new u9.Scalar(X)}if(I.range=J,I.source=X,Z)I.type=Z;if(Q)I.tag=Q;if(G.format)I.format=G.format;if(z)I.comment=z;return I}function O6(q,$,U,H,X){if(U==="!")return q[J0.SCALAR];let Z=[];for(let J of q.tags)if(!J.collection&&J.tag===U)if(J.default&&J.test)Z.push(J);else return J;for(let J of Z)if(J.test?.test($))return J;let z=q.knownTags[U];if(z&&!z.collection)return q.tags.push(Object.assign({},z,{default:!1,test:void 0})),z;return X(H,"TAG_RESOLVE_FAILED",`Unresolved tag: ${U}`,U!=="tag:yaml.org,2002:str"),q[J0.SCALAR]}function D6({atKey:q,directives:$,schema:U},H,X,Z){let z=U.tags.find((J)=>(J.default===!0||q&&J.default==="key")&&J.test?.test(H))||U[J0.SCALAR];if(U.compat){let J=U.compat.find((Q)=>Q.default&&Q.test?.test(H))??U[J0.SCALAR];if(z.tag!==J.tag){let Q=$.tagString(z.tag),G=$.tagString(J.tag),I=`Value may be parsed as either ${Q} or ${G}`;Z(X,"TAG_RESOLVE_FAILED",I,!0)}}return z}V6.composeScalar=L6});var m9=L((P6)=>{function F6(q,$,U){if($){U??(U=$.length);for(let H=U-1;H>=0;--H){let X=$[H];switch(X.type){case"space":case"comment":case"newline":q-=X.source.length;continue}X=$[++H];while(X?.type==="space")q+=X.source.length,X=$[++H];break}}return q}P6.emptyScalarPosition=F6});var l9=L((C6)=>{var A6=N0(),w6=w(),K6=x9(),p9=v9(),N6=R0(),j6=m9(),S6={composeNode:d9,composeEmptyNode:k$};function d9(q,$,U,H){let X=q.atKey,{spaceBefore:Z,comment:z,anchor:J,tag:Q}=U,G,I=!0;switch($.type){case"alias":if(G=b6(q,$,H),J||Q)H($,"ALIAS_PROPS","An alias node must not specify any properties");break;case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":case"block-scalar":if(G=p9.composeScalar(q,$,Q,H),J)G.anchor=J.source.substring(1);break;case"block-map":case"block-seq":case"flow-collection":try{if(G=K6.composeCollection(S6,q,$,U,H),J)G.anchor=J.source.substring(1)}catch(T){let Y=T instanceof Error?T.message:String(T);H($,"RESOURCE_EXHAUSTION",Y)}break;default:{let T=$.type==="error"?$.message:`Unsupported token (type: ${$.type})`;H($,"UNEXPECTED_TOKEN",T),I=!1}}if(G??(G=k$(q,$.offset,void 0,null,U,H)),J&&G.anchor==="")H(J,"BAD_ALIAS","Anchor cannot be an empty string");if(X&&q.options.stringKeys&&(!w6.isScalar(G)||typeof G.value!=="string"||G.tag&&G.tag!=="tag:yaml.org,2002:str"))H(Q??$,"NON_STRING_KEY","With stringKeys, all keys must be strings");if(Z)G.spaceBefore=!0;if(z)if($.type==="scalar"&&$.source==="")G.comment=z;else G.commentBefore=z;if(q.options.keepSourceTokens&&I)G.srcToken=$;return G}function k$(q,$,U,H,{spaceBefore:X,comment:Z,anchor:z,tag:J,end:Q},G){let I={type:"scalar",offset:j6.emptyScalarPosition($,U,H),indent:-1,source:""},T=p9.composeScalar(q,I,J,G);if(z){if(T.anchor=z.source.substring(1),T.anchor==="")G(z,"BAD_ALIAS","Anchor cannot be an empty string")}if(X)T.spaceBefore=!0;if(Z)T.comment=Z,T.range[2]=Q;return T}function b6({options:q},{offset:$,source:U,end:H},X){let Z=new A6.Alias(U.substring(1));if(Z.source==="")X($,"BAD_ALIAS","Alias cannot be an empty string");if(Z.source.endsWith(":"))X($+U.length-1,"BAD_ALIAS","Alias ending in : is ambiguous",!0);let z=$+U.length,J=N6.resolveEnd(H,z,q.strict,X);if(Z.range=[$,z,J.offset],J.comment)Z.comment=J.comment;return Z}C6.composeEmptyNode=k$;C6.composeNode=d9});var a9=L((h6)=>{var f6=m0(),c9=l9(),y6=R0(),k6=d0();function x6(q,$,{offset:U,start:H,value:X,end:Z},z){let J=Object.assign({_directives:$},q),Q=new f6.Document(void 0,J),G={atKey:!1,atRoot:!0,directives:Q.directives,options:Q.options,schema:Q.schema},I=k6.resolveProps(H,{indicator:"doc-start",next:X??Z?.[0],offset:U,onError:z,parentIndent:0,startOnNewline:!0});if(I.found){if(Q.directives.docStart=!0,X&&(X.type==="block-map"||X.type==="block-seq")&&!I.hasNewline)z(I.end,"MISSING_CHAR","Block collection cannot start on same line with directives-end marker")}Q.contents=X?c9.composeNode(G,X,I,z):c9.composeEmptyNode(G,I.end,H,null,I,z);let T=Q.contents.range[2],Y=y6.resolveEnd(Z,T,!1,z);if(Y.comment)Q.comment=Y.comment;return Q.range=[U,T,Y.offset],Q}h6.composeDoc=x6});var x$=L((c6)=>{var v6=l("process"),m6=mq(),p6=m0(),l0=p0(),s9=w(),d6=a9(),l6=R0();function c0(q){if(typeof q==="number")return[q,q+1];if(Array.isArray(q))return q.length===2?q:[q[0],q[1]];let{offset:$,source:U}=q;return[$,$+(typeof U==="string"?U.length:1)]}function i9(q){let $="",U=!1,H=!1;for(let X=0;X<q.length;++X){let Z=q[X];switch(Z[0]){case"#":$+=($===""?"":H?`
101
+
102
+ `:`
103
+ `)+(Z.substring(1)||" "),U=!0,H=!1;break;case"%":if(q[X+1]?.[0]!=="#")X+=1;U=!1;break;default:if(!U)H=!0;U=!1}}return{comment:$,afterEmptyLine:H}}class r9{constructor(q={}){this.doc=null,this.atDirectives=!1,this.prelude=[],this.errors=[],this.warnings=[],this.onError=($,U,H,X)=>{let Z=c0($);if(X)this.warnings.push(new l0.YAMLWarning(Z,U,H));else this.errors.push(new l0.YAMLParseError(Z,U,H))},this.directives=new m6.Directives({version:q.version||"1.2"}),this.options=q}decorate(q,$){let{comment:U,afterEmptyLine:H}=i9(this.prelude);if(U){let X=q.contents;if($)q.comment=q.comment?`${q.comment}
104
+ ${U}`:U;else if(H||q.directives.docStart||!X)q.commentBefore=U;else if(s9.isCollection(X)&&!X.flow&&X.items.length>0){let Z=X.items[0];if(s9.isPair(Z))Z=Z.key;let z=Z.commentBefore;Z.commentBefore=z?`${U}
105
+ ${z}`:U}else{let Z=X.commentBefore;X.commentBefore=Z?`${U}
106
+ ${Z}`:U}}if($){for(let X=0;X<this.errors.length;++X)q.errors.push(this.errors[X]);for(let X=0;X<this.warnings.length;++X)q.warnings.push(this.warnings[X])}else q.errors=this.errors,q.warnings=this.warnings;this.prelude=[],this.errors=[],this.warnings=[]}streamInfo(){return{comment:i9(this.prelude).comment,directives:this.directives,errors:this.errors,warnings:this.warnings}}*compose(q,$=!1,U=-1){for(let H of q)yield*this.next(H);yield*this.end($,U)}*next(q){if(v6.env.LOG_STREAM)console.dir(q,{depth:null});switch(q.type){case"directive":this.directives.add(q.source,($,U,H)=>{let X=c0(q);X[0]+=$,this.onError(X,"BAD_DIRECTIVE",U,H)}),this.prelude.push(q.source),this.atDirectives=!0;break;case"document":{let $=d6.composeDoc(this.options,this.directives,q,this.onError);if(this.atDirectives&&!$.directives.docStart)this.onError(q,"MISSING_CHAR","Missing directives-end/doc-start indicator line");if(this.decorate($,!1),this.doc)yield this.doc;this.doc=$,this.atDirectives=!1;break}case"byte-order-mark":case"space":break;case"comment":case"newline":this.prelude.push(q.source);break;case"error":{let $=q.source?`${q.message}: ${JSON.stringify(q.source)}`:q.message,U=new l0.YAMLParseError(c0(q),"UNEXPECTED_TOKEN",$);if(this.atDirectives||!this.doc)this.errors.push(U);else this.doc.errors.push(U);break}case"doc-end":{if(!this.doc){this.errors.push(new l0.YAMLParseError(c0(q),"UNEXPECTED_TOKEN","Unexpected doc-end without preceding document"));break}this.doc.directives.docEnd=!0;let $=l6.resolveEnd(q.end,q.offset+q.source.length,this.doc.options.strict,this.onError);if(this.decorate(this.doc,!0),$.comment){let U=this.doc.comment;this.doc.comment=U?`${U}
107
+ ${$.comment}`:$.comment}this.doc.range[2]=$.offset;break}default:this.errors.push(new l0.YAMLParseError(c0(q),"UNEXPECTED_TOKEN",`Unsupported token ${q.type}`))}}*end(q=!1,$=-1){if(this.doc)this.decorate(this.doc,!0),yield this.doc,this.doc=null;else if(q){let U=Object.assign({_directives:this.directives},this.options),H=new p6.Document(void 0,U);if(this.atDirectives)this.onError($,"MISSING_CHAR","Missing directives-end indicator line");H.range=[0,$,$],this.decorate(H,!1),yield H}}}c6.Composer=r9});var t9=L((q8)=>{var s6=g$(),i6=y$(),r6=p0(),n9=C0();function n6(q,$=!0,U){if(q){let H=(X,Z,z)=>{let J=typeof X==="number"?X:Array.isArray(X)?X[0]:X.offset;if(U)U(J,Z,z);else throw new r6.YAMLParseError([J,J+1],Z,z)};switch(q.type){case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return i6.resolveFlowScalar(q,$,H);case"block-scalar":return s6.resolveBlockScalar({options:{strict:$}},q,H)}}return null}function o6(q,$){let{implicitKey:U=!1,indent:H,inFlow:X=!1,offset:Z=-1,type:z="PLAIN"}=$,J=n9.stringifyString({type:z,value:q},{implicitKey:U,indent:H>0?" ".repeat(H):"",inFlow:X,options:{blockQuote:!0,lineWidth:-1}}),Q=$.end??[{type:"newline",offset:-1,indent:H,source:`
108
+ `}];switch(J[0]){case"|":case">":{let G=J.indexOf(`
109
+ `),I=J.substring(0,G),T=J.substring(G+1)+`
110
+ `,Y=[{type:"block-scalar-header",offset:Z,indent:H,source:I}];if(!o9(Y,Q))Y.push({type:"newline",offset:-1,indent:H,source:`
111
+ `});return{type:"block-scalar",offset:Z,indent:H,props:Y,source:T}}case'"':return{type:"double-quoted-scalar",offset:Z,indent:H,source:J,end:Q};case"'":return{type:"single-quoted-scalar",offset:Z,indent:H,source:J,end:Q};default:return{type:"scalar",offset:Z,indent:H,source:J,end:Q}}}function t6(q,$,U={}){let{afterKey:H=!1,implicitKey:X=!1,inFlow:Z=!1,type:z}=U,J="indent"in q?q.indent:null;if(H&&typeof J==="number")J+=2;if(!z)switch(q.type){case"single-quoted-scalar":z="QUOTE_SINGLE";break;case"double-quoted-scalar":z="QUOTE_DOUBLE";break;case"block-scalar":{let G=q.props[0];if(G.type!=="block-scalar-header")throw Error("Invalid block scalar header");z=G.source[0]===">"?"BLOCK_FOLDED":"BLOCK_LITERAL";break}default:z="PLAIN"}let Q=n9.stringifyString({type:z,value:$},{implicitKey:X||J===null,indent:J!==null&&J>0?" ".repeat(J):"",inFlow:Z,options:{blockQuote:!0,lineWidth:-1}});switch(Q[0]){case"|":case">":e6(q,Q);break;case'"':h$(q,Q,"double-quoted-scalar");break;case"'":h$(q,Q,"single-quoted-scalar");break;default:h$(q,Q,"scalar")}}function e6(q,$){let U=$.indexOf(`
112
+ `),H=$.substring(0,U),X=$.substring(U+1)+`
113
+ `;if(q.type==="block-scalar"){let Z=q.props[0];if(Z.type!=="block-scalar-header")throw Error("Invalid block scalar header");Z.source=H,q.source=X}else{let{offset:Z}=q,z="indent"in q?q.indent:-1,J=[{type:"block-scalar-header",offset:Z,indent:z,source:H}];if(!o9(J,"end"in q?q.end:void 0))J.push({type:"newline",offset:-1,indent:z,source:`
114
+ `});for(let Q of Object.keys(q))if(Q!=="type"&&Q!=="offset")delete q[Q];Object.assign(q,{type:"block-scalar",indent:z,props:J,source:X})}}function o9(q,$){if($)for(let U of $)switch(U.type){case"space":case"comment":q.push(U);break;case"newline":return q.push(U),!0}return!1}function h$(q,$,U){switch(q.type){case"scalar":case"double-quoted-scalar":case"single-quoted-scalar":q.type=U,q.source=$;break;case"block-scalar":{let H=q.props.slice(1),X=$.length;if(q.props[0].type==="block-scalar-header")X-=q.props[0].source.length;for(let Z of H)Z.offset+=X;delete q.props,Object.assign(q,{type:U,source:$,end:H});break}case"block-map":case"block-seq":{let X={type:"newline",offset:q.offset+$.length,indent:q.indent,source:`
115
+ `};delete q.items,Object.assign(q,{type:U,source:$,end:[X]});break}default:{let H="indent"in q?q.indent:-1,X="end"in q&&Array.isArray(q.end)?q.end.filter((Z)=>Z.type==="space"||Z.type==="comment"||Z.type==="newline"):[];for(let Z of Object.keys(q))if(Z!=="type"&&Z!=="offset")delete q[Z];Object.assign(q,{type:U,indent:H,source:$,end:X})}}}q8.createScalarToken=o6;q8.resolveAsScalar=n6;q8.setScalarValue=t6});var e9=L((Z8)=>{var X8=(q)=>("type"in q)?Cq(q):bq(q);function Cq(q){switch(q.type){case"block-scalar":{let $="";for(let U of q.props)$+=Cq(U);return $+q.source}case"block-map":case"block-seq":{let $="";for(let U of q.items)$+=bq(U);return $}case"flow-collection":{let $=q.start.source;for(let U of q.items)$+=bq(U);for(let U of q.end)$+=U.source;return $}case"document":{let $=bq(q);if(q.end)for(let U of q.end)$+=U.source;return $}default:{let $=q.source;if("end"in q&&q.end)for(let U of q.end)$+=U.source;return $}}}function bq({start:q,key:$,sep:U,value:H}){let X="";for(let Z of q)X+=Z.source;if($)X+=Cq($);if(U)for(let Z of U)X+=Z.source;if(H)X+=Cq(H);return X}Z8.stringify=X8});var UU=L((Q8)=>{var u$=Symbol("break visit"),J8=Symbol("skip children"),qU=Symbol("remove item");function Q0(q,$){if("type"in q&&q.type==="document")q={start:q.start,value:q.value};$U(Object.freeze([]),q,$)}Q0.BREAK=u$;Q0.SKIP=J8;Q0.REMOVE=qU;Q0.itemAtPath=(q,$)=>{let U=q;for(let[H,X]of $){let Z=U?.[H];if(Z&&"items"in Z)U=Z.items[X];else return}return U};Q0.parentCollection=(q,$)=>{let U=Q0.itemAtPath(q,$.slice(0,-1)),H=$[$.length-1][0],X=U?.[H];if(X&&"items"in X)return X;throw Error("Parent collection not found")};function $U(q,$,U){let H=U($,q);if(typeof H==="symbol")return H;for(let X of["key","value"]){let Z=$[X];if(Z&&"items"in Z){for(let z=0;z<Z.items.length;++z){let J=$U(Object.freeze(q.concat([[X,z]])),Z.items[z],U);if(typeof J==="number")z=J-1;else if(J===u$)return u$;else if(J===qU)Z.items.splice(z,1),z-=1}if(typeof H==="function"&&X==="key")H=H($,q)}}return typeof H==="function"?H($,q):H}Q8.visit=Q0});var Eq=L((L8)=>{var v$=t9(),T8=e9(),Y8=UU(),m$="\uFEFF",p$="\x02",d$="\x18",l$="\x1F",W8=(q)=>!!q&&("items"in q),I8=(q)=>!!q&&(q.type==="scalar"||q.type==="single-quoted-scalar"||q.type==="double-quoted-scalar"||q.type==="block-scalar");function B8(q){switch(q){case m$:return"<BOM>";case p$:return"<DOC>";case d$:return"<FLOW_END>";case l$:return"<SCALAR>";default:return JSON.stringify(q)}}function _8(q){switch(q){case m$:return"byte-order-mark";case p$:return"doc-mode";case d$:return"flow-error-end";case l$:return"scalar";case"---":return"doc-start";case"...":return"doc-end";case"":case`
116
+ `:case`\r
117
+ `:return"newline";case"-":return"seq-item-ind";case"?":return"explicit-key-ind";case":":return"map-value-ind";case"{":return"flow-map-start";case"}":return"flow-map-end";case"[":return"flow-seq-start";case"]":return"flow-seq-end";case",":return"comma"}switch(q[0]){case" ":case"\t":return"space";case"#":return"comment";case"%":return"directive-line";case"*":return"alias";case"&":return"anchor";case"!":return"tag";case"'":return"single-quoted-scalar";case'"':return"double-quoted-scalar";case"|":case">":return"block-scalar-header"}return null}L8.createScalarToken=v$.createScalarToken;L8.resolveAsScalar=v$.resolveAsScalar;L8.setScalarValue=v$.setScalarValue;L8.stringify=T8.stringify;L8.visit=Y8.visit;L8.BOM=m$;L8.DOCUMENT=p$;L8.FLOW_END=d$;L8.SCALAR=l$;L8.isCollection=W8;L8.isScalar=I8;L8.prettyToken=B8;L8.tokenType=_8});var a$=L((E8)=>{var a0=Eq();function h(q){switch(q){case void 0:case" ":case`
118
+ `:case"\r":case"\t":return!0;default:return!1}}var HU=new Set("0123456789ABCDEFabcdef"),b8=new Set("0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-#;/?:@&=+$_.!~*'()"),gq=new Set(",[]{}"),C8=new Set(` ,[]{}
119
+ \r `),c$=(q)=>!q||C8.has(q);class XU{constructor(){this.atEnd=!1,this.blockScalarIndent=-1,this.blockScalarKeep=!1,this.buffer="",this.flowKey=!1,this.flowLevel=0,this.indentNext=0,this.indentValue=0,this.lineEndPos=null,this.next=null,this.pos=0}*lex(q,$=!1){if(q){if(typeof q!=="string")throw TypeError("source is not a string");this.buffer=this.buffer?this.buffer+q:q,this.lineEndPos=null}this.atEnd=!$;let U=this.next??"stream";while(U&&($||this.hasChars(1)))U=yield*this.parseNext(U)}atLineEnd(){let q=this.pos,$=this.buffer[q];while($===" "||$==="\t")$=this.buffer[++q];if(!$||$==="#"||$===`
120
+ `)return!0;if($==="\r")return this.buffer[q+1]===`
121
+ `;return!1}charAt(q){return this.buffer[this.pos+q]}continueScalar(q){let $=this.buffer[q];if(this.indentNext>0){let U=0;while($===" ")$=this.buffer[++U+q];if($==="\r"){let H=this.buffer[U+q+1];if(H===`
122
+ `||!H&&!this.atEnd)return q+U+1}return $===`
123
+ `||U>=this.indentNext||!$&&!this.atEnd?q+U:-1}if($==="-"||$==="."){let U=this.buffer.substr(q,3);if((U==="---"||U==="...")&&h(this.buffer[q+3]))return-1}return q}getLine(){let q=this.lineEndPos;if(typeof q!=="number"||q!==-1&&q<this.pos)q=this.buffer.indexOf(`
124
+ `,this.pos),this.lineEndPos=q;if(q===-1)return this.atEnd?this.buffer.substring(this.pos):null;if(this.buffer[q-1]==="\r")q-=1;return this.buffer.substring(this.pos,q)}hasChars(q){return this.pos+q<=this.buffer.length}setNext(q){return this.buffer=this.buffer.substring(this.pos),this.pos=0,this.lineEndPos=null,this.next=q,null}peek(q){return this.buffer.substr(this.pos,q)}*parseNext(q){switch(q){case"stream":return yield*this.parseStream();case"line-start":return yield*this.parseLineStart();case"block-start":return yield*this.parseBlockStart();case"doc":return yield*this.parseDocument();case"flow":return yield*this.parseFlowCollection();case"quoted-scalar":return yield*this.parseQuotedScalar();case"block-scalar":return yield*this.parseBlockScalar();case"plain-scalar":return yield*this.parsePlainScalar()}}*parseStream(){let q=this.getLine();if(q===null)return this.setNext("stream");if(q[0]===a0.BOM)yield*this.pushCount(1),q=q.substring(1);if(q[0]==="%"){let $=q.length,U=q.indexOf("#");while(U!==-1){let X=q[U-1];if(X===" "||X==="\t"){$=U-1;break}else U=q.indexOf("#",U+1)}while(!0){let X=q[$-1];if(X===" "||X==="\t")$-=1;else break}let H=(yield*this.pushCount($))+(yield*this.pushSpaces(!0));return yield*this.pushCount(q.length-H),this.pushNewline(),"stream"}if(this.atLineEnd()){let $=yield*this.pushSpaces(!0);return yield*this.pushCount(q.length-$),yield*this.pushNewline(),"stream"}return yield a0.DOCUMENT,yield*this.parseLineStart()}*parseLineStart(){let q=this.charAt(0);if(!q&&!this.atEnd)return this.setNext("line-start");if(q==="-"||q==="."){if(!this.atEnd&&!this.hasChars(4))return this.setNext("line-start");let $=this.peek(3);if(($==="---"||$==="...")&&h(this.charAt(3)))return yield*this.pushCount(3),this.indentValue=0,this.indentNext=0,$==="---"?"doc":"stream"}if(this.indentValue=yield*this.pushSpaces(!1),this.indentNext>this.indentValue&&!h(this.charAt(1)))this.indentNext=this.indentValue;return yield*this.parseBlockStart()}*parseBlockStart(){let[q,$]=this.peek(2);if(!$&&!this.atEnd)return this.setNext("block-start");if((q==="-"||q==="?"||q===":")&&h($)){let U=(yield*this.pushCount(1))+(yield*this.pushSpaces(!0));return this.indentNext=this.indentValue+1,this.indentValue+=U,"block-start"}return"doc"}*parseDocument(){yield*this.pushSpaces(!0);let q=this.getLine();if(q===null)return this.setNext("doc");let $=yield*this.pushIndicators();switch(q[$]){case"#":yield*this.pushCount(q.length-$);case void 0:return yield*this.pushNewline(),yield*this.parseLineStart();case"{":case"[":return yield*this.pushCount(1),this.flowKey=!1,this.flowLevel=1,"flow";case"}":case"]":return yield*this.pushCount(1),"doc";case"*":return yield*this.pushUntil(c$),"doc";case'"':case"'":return yield*this.parseQuotedScalar();case"|":case">":return $+=yield*this.parseBlockScalarHeader(),$+=yield*this.pushSpaces(!0),yield*this.pushCount(q.length-$),yield*this.pushNewline(),yield*this.parseBlockScalar();default:return yield*this.parsePlainScalar()}}*parseFlowCollection(){let q,$,U=-1;do{if(q=yield*this.pushNewline(),q>0)$=yield*this.pushSpaces(!1),this.indentValue=U=$;else $=0;$+=yield*this.pushSpaces(!0)}while(q+$>0);let H=this.getLine();if(H===null)return this.setNext("flow");if(U!==-1&&U<this.indentNext&&H[0]!=="#"||U===0&&(H.startsWith("---")||H.startsWith("..."))&&h(H[3])){if(!(U===this.indentNext-1&&this.flowLevel===1&&(H[0]==="]"||H[0]==="}")))return this.flowLevel=0,yield a0.FLOW_END,yield*this.parseLineStart()}let X=0;while(H[X]===",")X+=yield*this.pushCount(1),X+=yield*this.pushSpaces(!0),this.flowKey=!1;switch(X+=yield*this.pushIndicators(),H[X]){case void 0:return"flow";case"#":return yield*this.pushCount(H.length-X),"flow";case"{":case"[":return yield*this.pushCount(1),this.flowKey=!1,this.flowLevel+=1,"flow";case"}":case"]":return yield*this.pushCount(1),this.flowKey=!0,this.flowLevel-=1,this.flowLevel?"flow":"doc";case"*":return yield*this.pushUntil(c$),"flow";case'"':case"'":return this.flowKey=!0,yield*this.parseQuotedScalar();case":":{let Z=this.charAt(1);if(this.flowKey||h(Z)||Z===",")return this.flowKey=!1,yield*this.pushCount(1),yield*this.pushSpaces(!0),"flow"}default:return this.flowKey=!1,yield*this.parsePlainScalar()}}*parseQuotedScalar(){let q=this.charAt(0),$=this.buffer.indexOf(q,this.pos+1);if(q==="'")while($!==-1&&this.buffer[$+1]==="'")$=this.buffer.indexOf("'",$+2);else while($!==-1){let X=0;while(this.buffer[$-1-X]==="\\")X+=1;if(X%2===0)break;$=this.buffer.indexOf('"',$+1)}let U=this.buffer.substring(0,$),H=U.indexOf(`
125
+ `,this.pos);if(H!==-1){while(H!==-1){let X=this.continueScalar(H+1);if(X===-1)break;H=U.indexOf(`
126
+ `,X)}if(H!==-1)$=H-(U[H-1]==="\r"?2:1)}if($===-1){if(!this.atEnd)return this.setNext("quoted-scalar");$=this.buffer.length}return yield*this.pushToIndex($+1,!1),this.flowLevel?"flow":"doc"}*parseBlockScalarHeader(){this.blockScalarIndent=-1,this.blockScalarKeep=!1;let q=this.pos;while(!0){let $=this.buffer[++q];if($==="+")this.blockScalarKeep=!0;else if($>"0"&&$<="9")this.blockScalarIndent=Number($)-1;else if($!=="-")break}return yield*this.pushUntil(($)=>h($)||$==="#")}*parseBlockScalar(){let q=this.pos-1,$=0,U;q:for(let X=this.pos;U=this.buffer[X];++X)switch(U){case" ":$+=1;break;case`
127
+ `:q=X,$=0;break;case"\r":{let Z=this.buffer[X+1];if(!Z&&!this.atEnd)return this.setNext("block-scalar");if(Z===`
128
+ `)break}default:break q}if(!U&&!this.atEnd)return this.setNext("block-scalar");if($>=this.indentNext){if(this.blockScalarIndent===-1)this.indentNext=$;else this.indentNext=this.blockScalarIndent+(this.indentNext===0?1:this.indentNext);do{let X=this.continueScalar(q+1);if(X===-1)break;q=this.buffer.indexOf(`
129
+ `,X)}while(q!==-1);if(q===-1){if(!this.atEnd)return this.setNext("block-scalar");q=this.buffer.length}}let H=q+1;U=this.buffer[H];while(U===" ")U=this.buffer[++H];if(U==="\t"){while(U==="\t"||U===" "||U==="\r"||U===`
130
+ `)U=this.buffer[++H];q=H-1}else if(!this.blockScalarKeep)do{let X=q-1,Z=this.buffer[X];if(Z==="\r")Z=this.buffer[--X];let z=X;while(Z===" ")Z=this.buffer[--X];if(Z===`
131
+ `&&X>=this.pos&&X+1+$>z)q=X;else break}while(!0);return yield a0.SCALAR,yield*this.pushToIndex(q+1,!0),yield*this.parseLineStart()}*parsePlainScalar(){let q=this.flowLevel>0,$=this.pos-1,U=this.pos-1,H;while(H=this.buffer[++U])if(H===":"){let X=this.buffer[U+1];if(h(X)||q&&gq.has(X))break;$=U}else if(h(H)){let X=this.buffer[U+1];if(H==="\r")if(X===`
132
+ `)U+=1,H=`
133
+ `,X=this.buffer[U+1];else $=U;if(X==="#"||q&&gq.has(X))break;if(H===`
134
+ `){let Z=this.continueScalar(U+1);if(Z===-1)break;U=Math.max(U,Z-2)}}else{if(q&&gq.has(H))break;$=U}if(!H&&!this.atEnd)return this.setNext("plain-scalar");return yield a0.SCALAR,yield*this.pushToIndex($+1,!0),q?"flow":"doc"}*pushCount(q){if(q>0)return yield this.buffer.substr(this.pos,q),this.pos+=q,q;return 0}*pushToIndex(q,$){let U=this.buffer.slice(this.pos,q);if(U)return yield U,this.pos+=U.length,U.length;else if($)yield"";return 0}*pushIndicators(){let q=0;q:while(!0){switch(this.charAt(0)){case"!":q+=yield*this.pushTag(),q+=yield*this.pushSpaces(!0);continue q;case"&":q+=yield*this.pushUntil(c$),q+=yield*this.pushSpaces(!0);continue q;case"-":case"?":case":":{let $=this.flowLevel>0,U=this.charAt(1);if(h(U)||$&&gq.has(U)){if(!$)this.indentNext=this.indentValue+1;else if(this.flowKey)this.flowKey=!1;q+=yield*this.pushCount(1),q+=yield*this.pushSpaces(!0);continue q}}}break q}return q}*pushTag(){if(this.charAt(1)==="<"){let q=this.pos+2,$=this.buffer[q];while(!h($)&&$!==">")$=this.buffer[++q];return yield*this.pushToIndex($===">"?q+1:q,!1)}else{let q=this.pos+1,$=this.buffer[q];while($)if(b8.has($))$=this.buffer[++q];else if($==="%"&&HU.has(this.buffer[q+1])&&HU.has(this.buffer[q+2]))$=this.buffer[q+=3];else break;return yield*this.pushToIndex(q,!1)}}*pushNewline(){let q=this.buffer[this.pos];if(q===`
135
+ `)return yield*this.pushCount(1);else if(q==="\r"&&this.charAt(1)===`
136
+ `)return yield*this.pushCount(2);else return 0}*pushSpaces(q){let $=this.pos-1,U;do U=this.buffer[++$];while(U===" "||q&&U==="\t");let H=$-this.pos;if(H>0)yield this.buffer.substr(this.pos,H),this.pos=$;return H}*pushUntil(q){let $=this.pos,U=this.buffer[$];while(!q(U))U=this.buffer[++$];return yield*this.pushToIndex($,!1)}}E8.Lexer=XU});var s$=L((f8)=>{class ZU{constructor(){this.lineStarts=[],this.addNewLine=(q)=>this.lineStarts.push(q),this.linePos=(q)=>{let $=0,U=this.lineStarts.length;while($<U){let X=$+U>>1;if(this.lineStarts[X]<q)$=X+1;else U=X}if(this.lineStarts[$]===q)return{line:$+1,col:1};if($===0)return{line:0,col:q};let H=this.lineStarts[$-1];return{line:$,col:q-H+1}}}}f8.LineCounter=ZU});var i$=L((h8)=>{var k8=l("process"),zU=Eq(),x8=a$();function t(q,$){for(let U=0;U<q.length;++U)if(q[U].type===$)return!0;return!1}function JU(q){for(let $=0;$<q.length;++$)switch(q[$].type){case"space":case"comment":case"newline":break;default:return $}return-1}function GU(q){switch(q?.type){case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":case"flow-collection":return!0;default:return!1}}function fq(q){switch(q.type){case"document":return q.start;case"block-map":{let $=q.items[q.items.length-1];return $.sep??$.start}case"block-seq":return q.items[q.items.length-1].start;default:return[]}}function F0(q){if(q.length===0)return[];let $=q.length;q:while(--$>=0)switch(q[$].type){case"doc-start":case"explicit-key-ind":case"map-value-ind":case"seq-item-ind":case"newline":break q}while(q[++$]?.type==="space");return q.splice($,q.length)}function yq(q,$){if($.length<1e5)Array.prototype.push.apply(q,$);else for(let U=0;U<$.length;++U)q.push($[U])}function QU(q){if(q.start.type==="flow-seq-start"){for(let $ of q.items)if($.sep&&!$.value&&!t($.start,"explicit-key-ind")&&!t($.sep,"map-value-ind")){if($.key)$.value=$.key;if(delete $.key,GU($.value))if($.value.end)yq($.value.end,$.sep);else $.value.end=$.sep;else yq($.start,$.sep);delete $.sep}}}class TU{constructor(q){this.atNewLine=!0,this.atScalar=!1,this.indent=0,this.offset=0,this.onKeyLine=!1,this.stack=[],this.source="",this.type="",this.lexer=new x8.Lexer,this.onNewLine=q}*parse(q,$=!1){if(this.onNewLine&&this.offset===0)this.onNewLine(0);for(let U of this.lexer.lex(q,$))yield*this.next(U);if(!$)yield*this.end()}*next(q){if(this.source=q,k8.env.LOG_TOKENS)console.log("|",zU.prettyToken(q));if(this.atScalar){this.atScalar=!1,yield*this.step(),this.offset+=q.length;return}let $=zU.tokenType(q);if(!$){let U=`Not a YAML token: ${q}`;yield*this.pop({type:"error",offset:this.offset,message:U,source:q}),this.offset+=q.length}else if($==="scalar")this.atNewLine=!1,this.atScalar=!0,this.type="scalar";else{switch(this.type=$,yield*this.step(),$){case"newline":if(this.atNewLine=!0,this.indent=0,this.onNewLine)this.onNewLine(this.offset+q.length);break;case"space":if(this.atNewLine&&q[0]===" ")this.indent+=q.length;break;case"explicit-key-ind":case"map-value-ind":case"seq-item-ind":if(this.atNewLine)this.indent+=q.length;break;case"doc-mode":case"flow-error-end":return;default:this.atNewLine=!1}this.offset+=q.length}}*end(){while(this.stack.length>0)yield*this.pop()}get sourceToken(){return{type:this.type,offset:this.offset,indent:this.indent,source:this.source}}*step(){let q=this.peek(1);if(this.type==="doc-end"&&q?.type!=="doc-end"){while(this.stack.length>0)yield*this.pop();this.stack.push({type:"doc-end",offset:this.offset,source:this.source});return}if(!q)return yield*this.stream();switch(q.type){case"document":return yield*this.document(q);case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return yield*this.scalar(q);case"block-scalar":return yield*this.blockScalar(q);case"block-map":return yield*this.blockMap(q);case"block-seq":return yield*this.blockSequence(q);case"flow-collection":return yield*this.flowCollection(q);case"doc-end":return yield*this.documentEnd(q)}yield*this.pop()}peek(q){return this.stack[this.stack.length-q]}*pop(q){let $=q??this.stack.pop();if(!$)yield{type:"error",offset:this.offset,source:"",message:"Tried to pop an empty stack"};else if(this.stack.length===0)yield $;else{let U=this.peek(1);if($.type==="block-scalar")$.indent="indent"in U?U.indent:0;else if($.type==="flow-collection"&&U.type==="document")$.indent=0;if($.type==="flow-collection")QU($);switch(U.type){case"document":U.value=$;break;case"block-scalar":U.props.push($);break;case"block-map":{let H=U.items[U.items.length-1];if(H.value){U.items.push({start:[],key:$,sep:[]}),this.onKeyLine=!0;return}else if(H.sep)H.value=$;else{Object.assign(H,{key:$,sep:[]}),this.onKeyLine=!H.explicitKey;return}break}case"block-seq":{let H=U.items[U.items.length-1];if(H.value)U.items.push({start:[],value:$});else H.value=$;break}case"flow-collection":{let H=U.items[U.items.length-1];if(!H||H.value)U.items.push({start:[],key:$,sep:[]});else if(H.sep)H.value=$;else Object.assign(H,{key:$,sep:[]});return}default:yield*this.pop(),yield*this.pop($)}if((U.type==="document"||U.type==="block-map"||U.type==="block-seq")&&($.type==="block-map"||$.type==="block-seq")){let H=$.items[$.items.length-1];if(H&&!H.sep&&!H.value&&H.start.length>0&&JU(H.start)===-1&&($.indent===0||H.start.every((X)=>X.type!=="comment"||X.indent<$.indent))){if(U.type==="document")U.end=H.start;else U.items.push({start:H.start});$.items.splice(-1,1)}}}}*stream(){switch(this.type){case"directive-line":yield{type:"directive",offset:this.offset,source:this.source};return;case"byte-order-mark":case"space":case"comment":case"newline":yield this.sourceToken;return;case"doc-mode":case"doc-start":{let q={type:"document",offset:this.offset,start:[]};if(this.type==="doc-start")q.start.push(this.sourceToken);this.stack.push(q);return}}yield{type:"error",offset:this.offset,message:`Unexpected ${this.type} token in YAML stream`,source:this.source}}*document(q){if(q.value)return yield*this.lineEnd(q);switch(this.type){case"doc-start":{if(JU(q.start)!==-1)yield*this.pop(),yield*this.step();else q.start.push(this.sourceToken);return}case"anchor":case"tag":case"space":case"comment":case"newline":q.start.push(this.sourceToken);return}let $=this.startBlockValue(q);if($)this.stack.push($);else yield{type:"error",offset:this.offset,message:`Unexpected ${this.type} token in YAML document`,source:this.source}}*scalar(q){if(this.type==="map-value-ind"){let $=fq(this.peek(2)),U=F0($),H;if(q.end)H=q.end,H.push(this.sourceToken),delete q.end;else H=[this.sourceToken];let X={type:"block-map",offset:q.offset,indent:q.indent,items:[{start:U,key:q,sep:H}]};this.onKeyLine=!0,this.stack[this.stack.length-1]=X}else yield*this.lineEnd(q)}*blockScalar(q){switch(this.type){case"space":case"comment":case"newline":q.props.push(this.sourceToken);return;case"scalar":if(q.source=this.source,this.atNewLine=!0,this.indent=0,this.onNewLine){let $=this.source.indexOf(`
137
+ `)+1;while($!==0)this.onNewLine(this.offset+$),$=this.source.indexOf(`
138
+ `,$)+1}yield*this.pop();break;default:yield*this.pop(),yield*this.step()}}*blockMap(q){let $=q.items[q.items.length-1];switch(this.type){case"newline":if(this.onKeyLine=!1,$.value){let U="end"in $.value?$.value.end:void 0;if((Array.isArray(U)?U[U.length-1]:void 0)?.type==="comment")U?.push(this.sourceToken);else q.items.push({start:[this.sourceToken]})}else if($.sep)$.sep.push(this.sourceToken);else $.start.push(this.sourceToken);return;case"space":case"comment":if($.value)q.items.push({start:[this.sourceToken]});else if($.sep)$.sep.push(this.sourceToken);else{if(this.atIndentedComment($.start,q.indent)){let H=q.items[q.items.length-2]?.value?.end;if(Array.isArray(H)){yq(H,$.start),H.push(this.sourceToken),q.items.pop();return}}$.start.push(this.sourceToken)}return}if(this.indent>=q.indent){let U=!this.onKeyLine&&this.indent===q.indent,H=U&&($.sep||$.explicitKey)&&this.type!=="seq-item-ind",X=[];if(H&&$.sep&&!$.value){let Z=[];for(let z=0;z<$.sep.length;++z){let J=$.sep[z];switch(J.type){case"newline":Z.push(z);break;case"space":break;case"comment":if(J.indent>q.indent)Z.length=0;break;default:Z.length=0}}if(Z.length>=2)X=$.sep.splice(Z[1])}switch(this.type){case"anchor":case"tag":if(H||$.value)X.push(this.sourceToken),q.items.push({start:X}),this.onKeyLine=!0;else if($.sep)$.sep.push(this.sourceToken);else $.start.push(this.sourceToken);return;case"explicit-key-ind":if(!$.sep&&!$.explicitKey)$.start.push(this.sourceToken),$.explicitKey=!0;else if(H||$.value)X.push(this.sourceToken),q.items.push({start:X,explicitKey:!0});else this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:[this.sourceToken],explicitKey:!0}]});this.onKeyLine=!0;return;case"map-value-ind":if($.explicitKey)if(!$.sep)if(t($.start,"newline"))Object.assign($,{key:null,sep:[this.sourceToken]});else{let Z=F0($.start);this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:Z,key:null,sep:[this.sourceToken]}]})}else if($.value)q.items.push({start:[],key:null,sep:[this.sourceToken]});else if(t($.sep,"map-value-ind"))this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:X,key:null,sep:[this.sourceToken]}]});else if(GU($.key)&&!t($.sep,"newline")){let Z=F0($.start),z=$.key,J=$.sep;J.push(this.sourceToken),delete $.key,delete $.sep,this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:Z,key:z,sep:J}]})}else if(X.length>0)$.sep=$.sep.concat(X,this.sourceToken);else $.sep.push(this.sourceToken);else if(!$.sep)Object.assign($,{key:null,sep:[this.sourceToken]});else if($.value||H)q.items.push({start:X,key:null,sep:[this.sourceToken]});else if(t($.sep,"map-value-ind"))this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:[],key:null,sep:[this.sourceToken]}]});else $.sep.push(this.sourceToken);this.onKeyLine=!0;return;case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":{let Z=this.flowScalar(this.type);if(H||$.value)q.items.push({start:X,key:Z,sep:[]}),this.onKeyLine=!0;else if($.sep)this.stack.push(Z);else Object.assign($,{key:Z,sep:[]}),this.onKeyLine=!0;return}default:{let Z=this.startBlockValue(q);if(Z){if(Z.type==="block-seq"){if(!$.explicitKey&&$.sep&&!t($.sep,"newline")){yield*this.pop({type:"error",offset:this.offset,message:"Unexpected block-seq-ind on same line with key",source:this.source});return}}else if(U)q.items.push({start:X});this.stack.push(Z);return}}}}yield*this.pop(),yield*this.step()}*blockSequence(q){let $=q.items[q.items.length-1];switch(this.type){case"newline":if($.value){let U="end"in $.value?$.value.end:void 0;if((Array.isArray(U)?U[U.length-1]:void 0)?.type==="comment")U?.push(this.sourceToken);else q.items.push({start:[this.sourceToken]})}else $.start.push(this.sourceToken);return;case"space":case"comment":if($.value)q.items.push({start:[this.sourceToken]});else{if(this.atIndentedComment($.start,q.indent)){let H=q.items[q.items.length-2]?.value?.end;if(Array.isArray(H)){yq(H,$.start),H.push(this.sourceToken),q.items.pop();return}}$.start.push(this.sourceToken)}return;case"anchor":case"tag":if($.value||this.indent<=q.indent)break;$.start.push(this.sourceToken);return;case"seq-item-ind":if(this.indent!==q.indent)break;if($.value||t($.start,"seq-item-ind"))q.items.push({start:[this.sourceToken]});else $.start.push(this.sourceToken);return}if(this.indent>q.indent){let U=this.startBlockValue(q);if(U){this.stack.push(U);return}}yield*this.pop(),yield*this.step()}*flowCollection(q){let $=q.items[q.items.length-1];if(this.type==="flow-error-end"){let U;do yield*this.pop(),U=this.peek(1);while(U?.type==="flow-collection")}else if(q.end.length===0){switch(this.type){case"comma":case"explicit-key-ind":if(!$||$.sep)q.items.push({start:[this.sourceToken]});else $.start.push(this.sourceToken);return;case"map-value-ind":if(!$||$.value)q.items.push({start:[],key:null,sep:[this.sourceToken]});else if($.sep)$.sep.push(this.sourceToken);else Object.assign($,{key:null,sep:[this.sourceToken]});return;case"space":case"comment":case"newline":case"anchor":case"tag":if(!$||$.value)q.items.push({start:[this.sourceToken]});else if($.sep)$.sep.push(this.sourceToken);else $.start.push(this.sourceToken);return;case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":{let H=this.flowScalar(this.type);if(!$||$.value)q.items.push({start:[],key:H,sep:[]});else if($.sep)this.stack.push(H);else Object.assign($,{key:H,sep:[]});return}case"flow-map-end":case"flow-seq-end":q.end.push(this.sourceToken);return}let U=this.startBlockValue(q);if(U)this.stack.push(U);else yield*this.pop(),yield*this.step()}else{let U=this.peek(2);if(U.type==="block-map"&&(this.type==="map-value-ind"&&U.indent===q.indent||this.type==="newline"&&!U.items[U.items.length-1].sep))yield*this.pop(),yield*this.step();else if(this.type==="map-value-ind"&&U.type!=="flow-collection"){let H=fq(U),X=F0(H);QU(q);let Z=q.end.splice(1,q.end.length);Z.push(this.sourceToken);let z={type:"block-map",offset:q.offset,indent:q.indent,items:[{start:X,key:q,sep:Z}]};this.onKeyLine=!0,this.stack[this.stack.length-1]=z}else yield*this.lineEnd(q)}}flowScalar(q){if(this.onNewLine){let $=this.source.indexOf(`
139
+ `)+1;while($!==0)this.onNewLine(this.offset+$),$=this.source.indexOf(`
140
+ `,$)+1}return{type:q,offset:this.offset,indent:this.indent,source:this.source}}startBlockValue(q){switch(this.type){case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return this.flowScalar(this.type);case"block-scalar-header":return{type:"block-scalar",offset:this.offset,indent:this.indent,props:[this.sourceToken],source:""};case"flow-map-start":case"flow-seq-start":return{type:"flow-collection",offset:this.offset,indent:this.indent,start:this.sourceToken,items:[],end:[]};case"seq-item-ind":return{type:"block-seq",offset:this.offset,indent:this.indent,items:[{start:[this.sourceToken]}]};case"explicit-key-ind":{this.onKeyLine=!0;let $=fq(q),U=F0($);return U.push(this.sourceToken),{type:"block-map",offset:this.offset,indent:this.indent,items:[{start:U,explicitKey:!0}]}}case"map-value-ind":{this.onKeyLine=!0;let $=fq(q),U=F0($);return{type:"block-map",offset:this.offset,indent:this.indent,items:[{start:U,key:null,sep:[this.sourceToken]}]}}}return null}atIndentedComment(q,$){if(this.type!=="comment")return!1;if(this.indent<=$)return!1;return q.every((U)=>U.type==="newline"||U.type==="space")}*documentEnd(q){if(this.type!=="doc-mode"){if(q.end)q.end.push(this.sourceToken);else q.end=[this.sourceToken];if(this.type==="newline")yield*this.pop()}}*lineEnd(q){switch(this.type){case"comma":case"doc-start":case"doc-end":case"flow-seq-end":case"flow-map-end":case"map-value-ind":yield*this.pop(),yield*this.step();break;case"newline":this.onKeyLine=!1;case"space":case"comment":default:if(q.end)q.end.push(this.sourceToken);else q.end=[this.sourceToken];if(this.type==="newline")yield*this.pop()}}}h8.Parser=TU});var _U=L((s8)=>{var YU=x$(),v8=m0(),s0=p0(),m8=sq(),p8=w(),d8=s$(),WU=i$();function IU(q){let $=q.prettyErrors!==!1;return{lineCounter:q.lineCounter||$&&new d8.LineCounter||null,prettyErrors:$}}function l8(q,$={}){let{lineCounter:U,prettyErrors:H}=IU($),X=new WU.Parser(U?.addNewLine),Z=new YU.Composer($),z=Array.from(Z.compose(X.parse(q)));if(H&&U)for(let J of z)J.errors.forEach(s0.prettifyError(q,U)),J.warnings.forEach(s0.prettifyError(q,U));if(z.length>0)return z;return Object.assign([],{empty:!0},Z.streamInfo())}function BU(q,$={}){let{lineCounter:U,prettyErrors:H}=IU($),X=new WU.Parser(U?.addNewLine),Z=new YU.Composer($),z=null;for(let J of Z.compose(X.parse(q),!0,q.length))if(!z)z=J;else if(z.options.logLevel!=="silent"){z.errors.push(new s0.YAMLParseError(J.range.slice(0,2),"MULTIPLE_DOCS","Source contains multiple documents; please use YAML.parseAllDocuments()"));break}if(H&&U)z.errors.forEach(s0.prettifyError(q,U)),z.warnings.forEach(s0.prettifyError(q,U));return z}function c8(q,$,U){let H=void 0;if(typeof $==="function")H=$;else if(U===void 0&&$&&typeof $==="object")U=$;let X=BU(q,U);if(!X)return null;if(X.warnings.forEach((Z)=>m8.warn(X.options.logLevel,Z)),X.errors.length>0)if(X.options.logLevel!=="silent")throw X.errors[0];else X.errors=[];return X.toJS(Object.assign({reviver:H},U))}function a8(q,$,U){let H=null;if(typeof $==="function"||Array.isArray($))H=$;else if(U===void 0&&$)U=$;if(typeof U==="string")U=U.length;if(typeof U==="number"){let X=Math.round(U);U=X<1?void 0:X>8?{indent:8}:{indent:X}}if(q===void 0){let{keepUndefined:X}=U??$??{};if(!X)return}if(p8.isDocument(q)&&!H)return q.toString(U);return new v8.Document(q,H,U).toString(U)}s8.parse=c8;s8.parseAllDocuments=l8;s8.parseDocument=BU;s8.stringify=a8});var OU=L((T3)=>{var t8=x$(),e8=m0(),q3=F$(),r$=p0(),$3=N0(),e=w(),U3=i(),H3=N(),X3=n(),Z3=o(),z3=Eq(),J3=a$(),Q3=s$(),G3=i$(),kq=_U(),LU=w0();T3.Composer=t8.Composer;T3.Document=e8.Document;T3.Schema=q3.Schema;T3.YAMLError=r$.YAMLError;T3.YAMLParseError=r$.YAMLParseError;T3.YAMLWarning=r$.YAMLWarning;T3.Alias=$3.Alias;T3.isAlias=e.isAlias;T3.isCollection=e.isCollection;T3.isDocument=e.isDocument;T3.isMap=e.isMap;T3.isNode=e.isNode;T3.isPair=e.isPair;T3.isScalar=e.isScalar;T3.isSeq=e.isSeq;T3.Pair=U3.Pair;T3.Scalar=H3.Scalar;T3.YAMLMap=X3.YAMLMap;T3.YAMLSeq=Z3.YAMLSeq;T3.CST=z3;T3.Lexer=J3.Lexer;T3.LineCounter=Q3.LineCounter;T3.Parser=G3.Parser;T3.parse=kq.parse;T3.parseAllDocuments=kq.parseAllDocuments;T3.parseDocument=kq.parseDocument;T3.stringify=kq.stringify;T3.visit=LU.visit;T3.visitAsync=LU.visitAsync});var P0={},M0=xq(),y=M0.isBunRuntime,q2=M0.isCloudflareRuntime,NU=M0.isNodeRuntime,k=M0.hasFileSystemAccess,jU=M0.console,$2=P0;hq();function T0(q,$){let U=typeof process<"u"?process.env:void 0,H=U?U[q]:void 0,X=y?Bun?.env?.[q]:void 0,Z=$2[q],z=typeof Z==="string"?Z:void 0,J=q2?z??H??X:H??X??z;return J===void 0||J===""?$:J}function a3(q,$){if(typeof process<"u")process.env[q]=$;$2[q]=$}function s3(q){globalThis.__hapiRuntimeOverride="cloudflare",U2(),Object.assign(P0,q)}function i3(){delete globalThis.__hapiRuntimeOverride,U2()}async function r3(q){if(!y)throw Error(`File system access not available in this runtime: ${q}`);return await Bun.file(q).text()}async function n3(q){if(!y)throw Error(`File system access not available in this runtime: ${q}`);return await Bun.file(q).json()}async function o3(q){return y?await Bun.file(q).exists():!1}function t3(q){if(!y)throw Error(`File system access not available in this runtime: ${q}`);return Bun.file(q)}function U2(){let q=xq();X2(q),hq()}function e3(){if(k)return;if(H2()!==void 0)return;let q=xq();X2(q),hq()}function xq(){let q=H2(),$=SU(q),U=$?!1:bU(q),H=CU(q,U);return{isBunRuntime:$,isCloudflareRuntime:U,isNodeRuntime:H,hasFileSystemAccess:!U&&($||H),console:EU()}}function SU(q){if(q==="bun")return!0;if(q==="cloudflare"||q==="node")return!1;return typeof Bun<"u"}function bU(q){if(q==="cloudflare")return!0;if(q==="bun"||q==="node")return!1;let $=typeof globalThis<"u"?globalThis:void 0,U=$?.navigator?.userAgent??"",H=typeof U==="string"&&U.includes("Cloudflare-Workers"),X=typeof $?.__ENVIRONMENT__==="string"&&$.__ENVIRONMENT__.toLowerCase()==="workerd",Z=typeof $?.caches?.default<"u";return H||X||Z}function CU(q,$){if(q==="node")return!0;if(q==="bun"||q==="cloudflare")return!1;if($)return!1;let U=typeof process<"u"?process.versions?.node:void 0;return typeof U==="string"&&U.length>0}function H2(){return typeof globalThis<"u"?globalThis.__hapiRuntimeOverride:void 0}function EU(){let q=()=>{},$=typeof console<"u"?console:void 0;if(!$)return{log:q,info:q,warn:q,error:q,debug:q};let U=(X,Z)=>typeof X==="function"?X.bind($):Z,H=U($.log,q);return{log:H,info:U($.info,H),warn:U($.warn,H),error:U($.error,H),debug:U($.debug,H)}}function X2(q){y=q.isBunRuntime,q2=q.isCloudflareRuntime,NU=q.isNodeRuntime,k=q.hasFileSystemAccess,jU=q.console}function hq(){let q=gU();for(let $ of Object.keys(P0))delete P0[$];Object.assign(P0,q)}function gU(){if(y)return{...typeof Bun<"u"?Bun.env:{},...typeof process<"u"?process.env:{}};return(typeof process<"u"?process:void 0)?.env??{}}import q0 from"path";var $0=k?Z2():z2(),fU=$0.home,yU=$0.specs,A0=$0.config,kU=$0.src,xU=$0.logs,hU=$0.certs;function H7(){return{...$0}}function X7(){return k?Z2():z2()}function Z2(){let q=T0("HAPI_HOME"),$=q&&q.trim().length>0?q:uU();return J2($)}function z2(){return J2("/hapi")}function J2(q){return{home:q,specs:q0.join(q,"specs"),config:q0.join(q,"config"),src:q0.join(q,"src"),logs:q0.join(q,"logs"),certs:q0.join(q,"certs")}}function uU(){if(y){let $=globalThis.Bun?.env??{},U=$.HOME??$.USERPROFILE??process.env.HOME??process.env.USERPROFILE??".";return q0.join(U,".hapi")}let q=process.env.HOME??process.env.USERPROFILE??".";return q0.join(q,".hapi")}async function vU(q){if(!k)return;try{await(await import("fs/promises")).mkdir(q,{recursive:!0})}catch{}}async function Z7(){if(!k)return;await Promise.all([fU,yU,A0,kU,xU,hU].map(vU))}import o$ from"path";var v3=["config","hapi.config"],m3=[".json",".yaml",".yml"],DU={},E=null;async function jz(q={}){if(E&&!q.force)return E;if(!k)return E=DU.global??{},n$(E),E;let $=await d3(A0);if(!$)return E={},n$(E),E;return E=await p3($)??{},n$(E),E}async function Sz(q){if(E={...q},!k){DU.global=E;return}let $=await import("fs/promises");await $.mkdir(A0,{recursive:!0});let U=o$.join(A0,"config.json");await $.writeFile(U,JSON.stringify(q,null,2),"utf8")}async function p3(q){if(!k)return null;let $=o$.extname(q).toLowerCase();try{let U=await l3(q);if(!U)return null;if($===".json")return JSON.parse(U);if($===".yaml"||$===".yml")return(await Promise.resolve().then(() => KU(OU(),1))).parse(U);return U}catch{return null}}async function d3(q){let $=await import("fs/promises");for(let U of v3)for(let H of m3){let X=o$.join(q,`${U}${H}`);try{return await $.access(X),X}catch{}}return null}async function l3(q){if(y&&typeof globalThis.Bun<"u")try{return await globalThis.Bun.file(q).text()}catch{return null}try{return await(await import("fs/promises")).readFile(q,"utf8")}catch{return null}}function n$(q){let $=T0("HAPI_INFRA_PROVIDER");if($)q.infraProvider=$;let U=T0("HAPI_ANALYTICS_OPTOUT");if(U==="true"||U==="1")q.analyticsOptout=!0;let H=T0("HAPI_PLUGINS");if(H)q.plugins=H.split(",").map((X)=>X.trim()).filter(Boolean)}function bz(){E=null}export{Sz as saveGlobalConfig,p3 as readConfigFile,jz as loadGlobalConfig,bz as clearConfigCache};
@@ -0,0 +1,28 @@
1
+ export type ShellLikeError = Error & {
2
+ exitCode?: number | null;
3
+ stdout?: string | Uint8Array | null;
4
+ stderr?: string | Uint8Array | null;
5
+ cmd?: string | string[];
6
+ };
7
+ export declare function isDebugEnabled(): boolean;
8
+ export interface FormattedCliError {
9
+ message: string;
10
+ hints: string[];
11
+ stack?: string;
12
+ }
13
+ export declare function formatCliError(err: unknown): FormattedCliError;
14
+ export declare function printCliError(prefix: string, err: unknown, opts?: {
15
+ showStack?: boolean;
16
+ }): void;
17
+ /**
18
+ * Lightweight typed error for CLI failures. Caller chooses the exit code.
19
+ */
20
+ export declare class HapiCliError extends Error {
21
+ readonly exitCode: number;
22
+ readonly hints: string[];
23
+ constructor(message: string, opts?: {
24
+ exitCode?: number;
25
+ hints?: string[];
26
+ cause?: unknown;
27
+ });
28
+ }
package/dist/errors.js ADDED
@@ -0,0 +1,3 @@
1
+ // @bun
2
+ var N=Object.create;var{getPrototypeOf:A,defineProperty:U,getOwnPropertyNames:B}=Object;var V=Object.prototype.hasOwnProperty;function S(j){return this[j]}var y,k,v=(j,q,G)=>{var J=j!=null&&typeof j==="object";if(J){var Q=q?y??=new WeakMap:k??=new WeakMap,P=Q.get(j);if(P)return P}G=j!=null?N(A(j)):{};let X=q||!j||!j.__esModule?U(G,"default",{value:j,enumerable:!0}):G;for(let Y of B(j))if(!V.call(X,Y))U(X,Y,{get:S.bind(j,Y),enumerable:!0});if(J)Q.set(j,X);return X};var m=(j,q)=>()=>(q||j((q={exports:{}}).exports,q),q.exports);var d=import.meta.require;var _={},$=I(),Z=$.isBunRuntime,F=$.isCloudflareRuntime,E=$.isNodeRuntime,H=$.hasFileSystemAccess,w=$.console,M=_;K();function D(j,q){let G=typeof process<"u"?process.env:void 0,J=G?G[j]:void 0,Q=Z?Bun?.env?.[j]:void 0,P=M[j],X=typeof P==="string"?P:void 0,Y=F?X??J??Q:J??Q??X;return Y===void 0||Y===""?q:Y}function u(j,q){if(typeof process<"u")process.env[j]=q;M[j]=q}function l(j){globalThis.__hapiRuntimeOverride="cloudflare",O(),Object.assign(_,j)}function a(){delete globalThis.__hapiRuntimeOverride,O()}async function i(j){if(!Z)throw Error(`File system access not available in this runtime: ${j}`);return await Bun.file(j).text()}async function r(j){if(!Z)throw Error(`File system access not available in this runtime: ${j}`);return await Bun.file(j).json()}async function n(j){return Z?await Bun.file(j).exists():!1}function o(j){if(!Z)throw Error(`File system access not available in this runtime: ${j}`);return Bun.file(j)}function O(){let j=I();z(j),K()}function t(){if(H)return;if(W()!==void 0)return;let j=I();z(j),K()}function I(){let j=W(),q=f(j),G=q?!1:R(j),J=C(j,G);return{isBunRuntime:q,isCloudflareRuntime:G,isNodeRuntime:J,hasFileSystemAccess:!G&&(q||J),console:b()}}function f(j){if(j==="bun")return!0;if(j==="cloudflare"||j==="node")return!1;return typeof Bun<"u"}function R(j){if(j==="cloudflare")return!0;if(j==="bun"||j==="node")return!1;let q=typeof globalThis<"u"?globalThis:void 0,G=q?.navigator?.userAgent??"",J=typeof G==="string"&&G.includes("Cloudflare-Workers"),Q=typeof q?.__ENVIRONMENT__==="string"&&q.__ENVIRONMENT__.toLowerCase()==="workerd",P=typeof q?.caches?.default<"u";return J||Q||P}function C(j,q){if(j==="node")return!0;if(j==="bun"||j==="cloudflare")return!1;if(q)return!1;let G=typeof process<"u"?process.versions?.node:void 0;return typeof G==="string"&&G.length>0}function W(){return typeof globalThis<"u"?globalThis.__hapiRuntimeOverride:void 0}function b(){let j=()=>{},q=typeof console<"u"?console:void 0;if(!q)return{log:j,info:j,warn:j,error:j,debug:j};let G=(Q,P)=>typeof Q==="function"?Q.bind(q):P,J=G(q.log,j);return{log:J,info:G(q.info,J),warn:G(q.warn,J),error:G(q.error,J),debug:G(q.debug,J)}}function z(j){Z=j.isBunRuntime,F=j.isCloudflareRuntime,E=j.isNodeRuntime,H=j.hasFileSystemAccess,w=j.console}function K(){let j=x();for(let q of Object.keys(_))delete _[q];Object.assign(_,j)}function x(){if(Z)return{...typeof Bun<"u"?Bun.env:{},...typeof process<"u"?process.env:{}};return(typeof process<"u"?process:void 0)?.env??{}}function T(j){if(typeof j==="string")return j;if(j&&typeof j.toString==="function")return j.toString();try{return JSON.stringify(j)}catch{return String(j)}}function L(j){if(!j)return;return j.split(`
3
+ `).map((q)=>q.trim()).find(Boolean)}function h(){return D("HAPI_DEBUG")==="true"||D("NODE_ENV")==="development"||D("DEBUG")==="true"||process.argv.includes("--dev")}function g(j){let q=[],G=j.toLowerCase();if(G.includes("wrangler")&&(G.includes("not found")||G.includes("command not found")))q.push("Wrangler CLI not found. Install with: bun add -g wrangler | npm i -g wrangler"),q.push("Then run: hapi cloudflare login");if(G.includes("not authenticated")||G.includes("unauthorized"))q.push("You may need to authenticate: hapi cloudflare login");if(G.includes("bun: command not found")||G.startsWith("bun: "))q.push("Bun runtime not found. Install from https://bun.sh and ensure `bun` is in PATH");if(G.includes("eaddrinuse")||G.includes("address already in use"))q.push("Port is in use. Try a different `--port` or stop the process holding it");if(G.includes("econnrefused")||G.includes("connection refused"))q.push("Connection refused. Ensure the target server is running and reachable");if(G.includes("enotfound")||G.includes("getaddrinfo enotfound"))q.push("Host not found. Check the URL or your network connectivity");if(G.includes("yaml")&&(G.includes("parse")||G.includes("syntax")))q.push("YAML parsing failed. Check the file for syntax/indentation issues");if(G.includes("no such file or directory")||G.includes("enoent"))q.push("File not found. Verify the path or provide the correct argument");if(G.includes("permission denied")||G.includes("eacces"))q.push("Permission denied. Try a different directory or adjust permissions");return q}function c(j){let q=j,G=q?.stderr?T(q.stderr):void 0,J=q?.stdout?T(q.stdout):void 0,P=L(G)||L(J)||q?.message||"Unknown error";return{message:P.trim(),hints:g(P),stack:q&&typeof q.stack==="string"?q.stack:void 0}}function qj(j,q,G={}){let{message:J,hints:Q,stack:P}=c(q),X=G.showStack??h();console.error(`${j}${J?`: ${J}`:""}`);for(let Y of Q)console.error(`\u2022 ${Y}`);if(X&&P)console.error("Stack:"),console.error(P)}class p extends Error{exitCode;hints;constructor(j,q={}){super(j);if(this.name="HapiCliError",this.exitCode=q.exitCode??1,this.hints=q.hints??[],q.cause!==void 0)this.cause=q.cause}}export{qj as printCliError,h as isDebugEnabled,c as formatCliError,p as HapiCliError};
package/dist/home.d.ts ADDED
@@ -0,0 +1,32 @@
1
+ export interface HapiPaths {
2
+ /** Root of $HAPI_HOME */
3
+ home: string;
4
+ /** Cached API specs */
5
+ specs: string;
6
+ /** App configuration (license, preferences, plugin registry) */
7
+ config: string;
8
+ /** Generated source (controllers, etc.) */
9
+ src: string;
10
+ /** Log directory */
11
+ logs: string;
12
+ /** TLS certificates */
13
+ certs: string;
14
+ }
15
+ export declare const hapiHome: string;
16
+ export declare const hapiSpecs: string;
17
+ export declare const hapiConfig: string;
18
+ export declare const hapiSrc: string;
19
+ export declare const hapiLogs: string;
20
+ export declare const hapiCerts: string;
21
+ export declare function getHapiPaths(): HapiPaths;
22
+ /**
23
+ * Resolve HAPI paths on the fly — useful for tests that set HAPI_HOME
24
+ * after module import.
25
+ */
26
+ export declare function resolveHapiPaths(): HapiPaths;
27
+ /**
28
+ * Ensure a HAPI subdirectory exists (best-effort; silently ignores when
29
+ * the runtime has no file-system access).
30
+ */
31
+ export declare function ensureHapiDir(dir: string): Promise<void>;
32
+ export declare function ensureAllHapiDirs(): Promise<void>;
package/dist/home.js ADDED
@@ -0,0 +1,2 @@
1
+ // @bun
2
+ var B=Object.create;var{getPrototypeOf:P,defineProperty:D,getOwnPropertyNames:k}=Object;var E=Object.prototype.hasOwnProperty;function S(j){return this[j]}var f,x,i=(j,G,I)=>{var J=j!=null&&typeof j==="object";if(J){var K=G?f??=new WeakMap:x??=new WeakMap,Q=K.get(j);if(Q)return Q}I=j!=null?B(P(j)):{};let Y=G||!j||!j.__esModule?D(I,"default",{value:j,enumerable:!0}):I;for(let Z of k(j))if(!E.call(Y,Z))D(Y,Z,{get:S.bind(j,Z),enumerable:!0});if(J)K.set(j,Y);return Y};var o=(j,G)=>()=>(G||j((G={exports:{}}).exports,G),G.exports);var y=import.meta.require;var w={},L=T(),X=L.isBunRuntime,M=L.isCloudflareRuntime,C=L.isNodeRuntime,_=L.hasFileSystemAccess,R=L.console,N=w;U();function O(j,G){let I=typeof process<"u"?process.env:void 0,J=I?I[j]:void 0,K=X?Bun?.env?.[j]:void 0,Q=N[j],Y=typeof Q==="string"?Q:void 0,Z=M?Y??J??K:J??K??Y;return Z===void 0||Z===""?G:Z}function t(j,G){if(typeof process<"u")process.env[j]=G;N[j]=G}function e(j){globalThis.__hapiRuntimeOverride="cloudflare",W(),Object.assign(w,j)}function jj(){delete globalThis.__hapiRuntimeOverride,W()}async function Gj(j){if(!X)throw Error(`File system access not available in this runtime: ${j}`);return await Bun.file(j).text()}async function Ij(j){if(!X)throw Error(`File system access not available in this runtime: ${j}`);return await Bun.file(j).json()}async function Jj(j){return X?await Bun.file(j).exists():!1}function Kj(j){if(!X)throw Error(`File system access not available in this runtime: ${j}`);return Bun.file(j)}function W(){let j=T();H(j),U()}function Qj(){if(_)return;if(z()!==void 0)return;let j=T();H(j),U()}function T(){let j=z(),G=g(j),I=G?!1:b(j),J=v(j,I);return{isBunRuntime:G,isCloudflareRuntime:I,isNodeRuntime:J,hasFileSystemAccess:!I&&(G||J),console:p()}}function g(j){if(j==="bun")return!0;if(j==="cloudflare"||j==="node")return!1;return typeof Bun<"u"}function b(j){if(j==="cloudflare")return!0;if(j==="bun"||j==="node")return!1;let G=typeof globalThis<"u"?globalThis:void 0,I=G?.navigator?.userAgent??"",J=typeof I==="string"&&I.includes("Cloudflare-Workers"),K=typeof G?.__ENVIRONMENT__==="string"&&G.__ENVIRONMENT__.toLowerCase()==="workerd",Q=typeof G?.caches?.default<"u";return J||K||Q}function v(j,G){if(j==="node")return!0;if(j==="bun"||j==="cloudflare")return!1;if(G)return!1;let I=typeof process<"u"?process.versions?.node:void 0;return typeof I==="string"&&I.length>0}function z(){return typeof globalThis<"u"?globalThis.__hapiRuntimeOverride:void 0}function p(){let j=()=>{},G=typeof console<"u"?console:void 0;if(!G)return{log:j,info:j,warn:j,error:j,debug:j};let I=(K,Q)=>typeof K==="function"?K.bind(G):Q,J=I(G.log,j);return{log:J,info:I(G.info,J),warn:I(G.warn,J),error:I(G.error,J),debug:I(G.debug,J)}}function H(j){X=j.isBunRuntime,M=j.isCloudflareRuntime,C=j.isNodeRuntime,_=j.hasFileSystemAccess,R=j.console}function U(){let j=c();for(let G of Object.keys(w))delete w[G];Object.assign(w,j)}function c(){if(X)return{...typeof Bun<"u"?Bun.env:{},...typeof process<"u"?process.env:{}};return(typeof process<"u"?process:void 0)?.env??{}}import $ from"path";var q=_?F():A(),h=q.home,d=q.specs,m=q.config,l=q.src,s=q.logs,u=q.certs;function _j(){return{...q}}function $j(){return _?F():A()}function F(){let j=O("HAPI_HOME"),G=j&&j.trim().length>0?j:a();return V(G)}function A(){return V("/hapi")}function V(j){return{home:j,specs:$.join(j,"specs"),config:$.join(j,"config"),src:$.join(j,"src"),logs:$.join(j,"logs"),certs:$.join(j,"certs")}}function a(){if(X){let G=globalThis.Bun?.env??{},I=G.HOME??G.USERPROFILE??process.env.HOME??process.env.USERPROFILE??".";return $.join(I,".hapi")}let j=process.env.HOME??process.env.USERPROFILE??".";return $.join(j,".hapi")}async function r(j){if(!_)return;try{await(await import("fs/promises")).mkdir(j,{recursive:!0})}catch{}}async function qj(){if(!_)return;await Promise.all([h,d,m,l,s,u].map(r))}export{$j as resolveHapiPaths,l as hapiSrc,d as hapiSpecs,s as hapiLogs,h as hapiHome,m as hapiConfig,u as hapiCerts,_j as getHapiPaths,r as ensureHapiDir,qj as ensureAllHapiDirs};
@@ -0,0 +1,6 @@
1
+ export * from './runtime';
2
+ export * from './home';
3
+ export * from './errors';
4
+ export * from './logger';
5
+ export * from './config';
6
+ export * from './secrets';