faf-cli 6.8.0 → 6.10.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +27 -3
- package/dist/cli.js +264 -235
- package/dist/cli.js.map +17 -12
- package/dist/commands/bench.d.ts +104 -0
- package/dist/core/interview.d.ts +72 -0
- package/dist/core/slots.d.ts +4 -3
- package/dist/detect/turbo-cat-knowledge.d.ts +104 -0
- package/dist/detect/turbo-cat.d.ts +38 -0
- package/dist/index.d.ts +6 -0
- package/dist/index.js +140 -140
- package/dist/index.js.map +9 -5
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -1,151 +1,151 @@
|
|
|
1
|
-
import{createRequire as
|
|
2
|
-
`)}}E.defaultYaml={explicit:!1,version:"1.2"};E.defaultTags={"!!":"tag:yaml.org,2002:"};
|
|
3
|
-
`)?
|
|
1
|
+
import{createRequire as a4}from"node:module";var p4=Object.defineProperty;var O=($,Z)=>()=>(Z||$((Z={exports:{}}).exports,Z),Z.exports);var d4=($)=>$;function l4($,Z){this[$]=d4.bind(null,Z)}var c4=($,Z)=>{for(var U in Z)p4($,U,{get:Z[U],enumerable:!0,configurable:!0,set:l4.bind(Z,U)})};var T0=a4(import.meta.url);var K=O((W8)=>{var o$=Symbol.for("yaml.alias"),W9=Symbol.for("yaml.document"),$$=Symbol.for("yaml.map"),D9=Symbol.for("yaml.pair"),t$=Symbol.for("yaml.scalar"),Z$=Symbol.for("yaml.seq"),v=Symbol.for("yaml.node.type"),J8=($)=>!!$&&typeof $==="object"&&$[v]===o$,H8=($)=>!!$&&typeof $==="object"&&$[v]===W9,Q8=($)=>!!$&&typeof $==="object"&&$[v]===$$,G8=($)=>!!$&&typeof $==="object"&&$[v]===D9,I9=($)=>!!$&&typeof $==="object"&&$[v]===t$,Y8=($)=>!!$&&typeof $==="object"&&$[v]===Z$;function O9($){if($&&typeof $==="object")switch($[v]){case $$:case Z$:return!0}return!1}function B8($){if($&&typeof $==="object")switch($[v]){case o$:case $$:case t$:case Z$:return!0}return!1}var V8=($)=>(I9($)||O9($))&&!!$.anchor;W8.ALIAS=o$;W8.DOC=W9;W8.MAP=$$;W8.NODE_TYPE=v;W8.PAIR=D9;W8.SCALAR=t$;W8.SEQ=Z$;W8.hasAnchor=V8;W8.isAlias=J8;W8.isCollection=O9;W8.isDocument=H8;W8.isMap=Q8;W8.isNode=B8;W8.isPair=G8;W8.isScalar=I9;W8.isSeq=Y8});var K0=O((j8)=>{var j=K(),S=Symbol("break visit"),P9=Symbol("skip children"),h=Symbol("remove node");function U$($,Z){let U=R9(Z);if(j.isDocument($)){if(Q0(null,$.contents,U,Object.freeze([$]))===h)$.contents=null}else Q0(null,$,U,Object.freeze([]))}U$.BREAK=S;U$.SKIP=P9;U$.REMOVE=h;function Q0($,Z,U,q){let X=_9($,Z,U,q);if(j.isNode(X)||j.isPair(X))return L9($,q,X),Q0($,X,U,q);if(typeof X!=="symbol"){if(j.isCollection(Z)){q=Object.freeze(q.concat(Z));for(let z=0;z<Z.items.length;++z){let J=Q0(z,Z.items[z],U,q);if(typeof J==="number")z=J-1;else if(J===S)return S;else if(J===h)Z.items.splice(z,1),z-=1}}else if(j.isPair(Z)){q=Object.freeze(q.concat(Z));let z=Q0("key",Z.key,U,q);if(z===S)return S;else if(z===h)Z.key=null;let J=Q0("value",Z.value,U,q);if(J===S)return S;else if(J===h)Z.value=null}}return X}async function q$($,Z){let U=R9(Z);if(j.isDocument($)){if(await G0(null,$.contents,U,Object.freeze([$]))===h)$.contents=null}else await G0(null,$,U,Object.freeze([]))}q$.BREAK=S;q$.SKIP=P9;q$.REMOVE=h;async function G0($,Z,U,q){let X=await _9($,Z,U,q);if(j.isNode(X)||j.isPair(X))return L9($,q,X),G0($,X,U,q);if(typeof X!=="symbol"){if(j.isCollection(Z)){q=Object.freeze(q.concat(Z));for(let z=0;z<Z.items.length;++z){let J=await G0(z,Z.items[z],U,q);if(typeof J==="number")z=J-1;else if(J===S)return S;else if(J===h)Z.items.splice(z,1),z-=1}}else if(j.isPair(Z)){q=Object.freeze(q.concat(Z));let z=await G0("key",Z.key,U,q);if(z===S)return S;else if(z===h)Z.key=null;let J=await G0("value",Z.value,U,q);if(J===S)return S;else if(J===h)Z.value=null}}return X}function R9($){if(typeof $==="object"&&($.Collection||$.Node||$.Value))return Object.assign({Alias:$.Node,Map:$.Node,Scalar:$.Node,Seq:$.Node},$.Value&&{Map:$.Value,Scalar:$.Value,Seq:$.Value},$.Collection&&{Map:$.Collection,Seq:$.Collection},$);return $}function _9($,Z,U,q){if(typeof U==="function")return U($,Z,q);if(j.isMap(Z))return U.Map?.($,Z,q);if(j.isSeq(Z))return U.Seq?.($,Z,q);if(j.isPair(Z))return U.Pair?.($,Z,q);if(j.isScalar(Z))return U.Scalar?.($,Z,q);if(j.isAlias(Z))return U.Alias?.($,Z,q);return}function L9($,Z,U){let q=Z[Z.length-1];if(j.isCollection(q))q.items[$]=U;else if(j.isPair(q))if($==="key")q.key=U;else q.value=U;else if(j.isDocument(q))q.contents=U;else{let X=j.isAlias(q)?"alias":"scalar";throw Error(`Cannot replace node with ${X} parent`)}}j8.visit=U$;j8.visitAsync=q$});var e$=O((x8)=>{var T9=K(),g8=K0(),f8={"!":"%21",",":"%2C","[":"%5B","]":"%5D","{":"%7B","}":"%7D"},y8=($)=>$.replace(/[!,[\]{}]/g,(Z)=>f8[Z]);class E{constructor($,Z){this.docStart=null,this.docEnd=!1,this.yaml=Object.assign({},E.defaultYaml,$),this.tags=Object.assign({},E.defaultTags,Z)}clone(){let $=new E(this.yaml,this.tags);return $.docStart=this.docStart,$}atDocument(){let $=new E(this.yaml,this.tags);switch(this.yaml.version){case"1.1":this.atNextDocument=!0;break;case"1.2":this.atNextDocument=!1,this.yaml={explicit:E.defaultYaml.explicit,version:"1.2"},this.tags=Object.assign({},E.defaultTags);break}return $}add($,Z){if(this.atNextDocument)this.yaml={explicit:E.defaultYaml.explicit,version:"1.1"},this.tags=Object.assign({},E.defaultTags),this.atNextDocument=!1;let U=$.trim().split(/[ \t]+/),q=U.shift();switch(q){case"%TAG":{if(U.length!==2){if(Z(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 Z(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 Z(6,`Unsupported YAML version ${X}`,z),!1}}default:return Z(0,`Unknown directive ${q}`,!0),!1}}tagName($,Z){if($==="!")return"!";if($[0]!=="!")return Z(`Not a valid tag: ${$}`),null;if($[1]==="<"){let z=$.slice(2,-1);if(z==="!"||z==="!!")return Z(`Verbatim tags aren't resolved, so ${$} is invalid.`),null;if($[$.length-1]!==">")Z("Verbatim tags must end with a >");return z}let[,U,q]=$.match(/^(.*!)([^!]*)$/s);if(!q)Z(`The ${$} tag has no suffix`);let X=this.tags[U];if(X)try{return X+decodeURIComponent(q)}catch(z){return Z(String(z)),null}if(U==="!")return $;return Z(`Could not resolve tag: ${$}`),null}tagString($){for(let[Z,U]of Object.entries(this.tags))if($.startsWith(U))return Z+y8($.substring(U.length));return $[0]==="!"?$:`!<${$}>`}toString($){let Z=this.yaml.explicit?[`%YAML ${this.yaml.version||"1.2"}`]:[],U=Object.entries(this.tags),q;if($&&U.length>0&&T9.isNode($.contents)){let X={};g8.visit($.contents,(z,J)=>{if(T9.isNode(J)&&J.tag)X[J.tag]=!0}),q=Object.keys(X)}else q=[];for(let[X,z]of U){if(X==="!!"&&z==="tag:yaml.org,2002:")continue;if(!$||q.some((J)=>J.startsWith(z)))Z.push(`%TAG ${X} ${z}`)}return Z.join(`
|
|
2
|
+
`)}}E.defaultYaml={explicit:!1,version:"1.2"};E.defaultTags={"!!":"tag:yaml.org,2002:"};x8.Directives=E});var X$=O((m8)=>{var F9=K(),k8=K0();function u8($){if(/[\x00-\x19\s,[\]{}]/.test($)){let U=`Anchor must not contain whitespace or control characters: ${JSON.stringify($)}`;throw Error(U)}return!0}function M9($){let Z=new Set;return k8.visit($,{Value(U,q){if(q.anchor)Z.add(q.anchor)}}),Z}function A9($,Z){for(let U=1;;++U){let q=`${$}${U}`;if(!Z.has(q))return q}}function v8($,Z){let U=[],q=new Map,X=null;return{onAnchor:(z)=>{U.push(z),X??(X=M9($));let J=A9(Z,X);return X.add(J),J},setAnchors:()=>{for(let z of U){let J=q.get(z);if(typeof J==="object"&&J.anchor&&(F9.isScalar(J.node)||F9.isCollection(J.node)))J.node.anchor=J.anchor;else{let H=Error("Failed to resolve repeated object (this should not happen)");throw H.source=z,H}}},sourceObjects:q}}m8.anchorIsValid=u8;m8.anchorNames=M9;m8.createNodeAnchors=v8;m8.findNewAnchor=A9});var $2=O((a8)=>{function w0($,Z,U,q){if(q&&typeof q==="object")if(Array.isArray(q))for(let X=0,z=q.length;X<z;++X){let J=q[X],H=w0($,q,String(X),J);if(H===void 0)delete q[X];else if(H!==J)q[X]=H}else if(q instanceof Map)for(let X of Array.from(q.keys())){let z=q.get(X),J=w0($,q,X,z);if(J===void 0)q.delete(X);else if(J!==z)q.set(X,J)}else if(q instanceof Set)for(let X of Array.from(q)){let z=w0($,q,X,X);if(z===void 0)q.delete(X);else if(z!==X)q.delete(X),q.add(z)}else for(let[X,z]of Object.entries(q)){let J=w0($,q,X,z);if(J===void 0)delete q[X];else if(J!==z)q[X]=J}return $.call(Z,U,q)}a8.applyReviver=w0});var l=O((r8)=>{var s8=K();function K9($,Z,U){if(Array.isArray($))return $.map((q,X)=>K9(q,String(X),U));if($&&typeof $.toJSON==="function"){if(!U||!s8.hasAnchor($))return $.toJSON(Z,U);let q={aliasCount:0,count:1,res:void 0};U.anchors.set($,q),U.onCreate=(z)=>{q.res=z,delete U.onCreate};let X=$.toJSON(Z,U);if(U.onCreate)U.onCreate(X);return X}if(typeof $==="bigint"&&!U?.keep)return Number($);return $}r8.toJS=K9});var z$=O((e8)=>{var o8=$2(),w9=K(),t8=l();class N9{constructor($){Object.defineProperty(this,w9.NODE_TYPE,{value:$})}clone(){let $=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));if(this.range)$.range=this.range.slice();return $}toJS($,{mapAsMap:Z,maxAliasCount:U,onAnchor:q,reviver:X}={}){if(!w9.isDocument($))throw TypeError("A document argument is required");let z={anchors:new Map,doc:$,keep:!0,mapAsMap:Z===!0,mapKeyWarned:!1,maxAliasCount:typeof U==="number"?U:100},J=t8.toJS(this,"",z);if(typeof q==="function")for(let{count:H,res:Q}of z.anchors.values())q(Q,H);return typeof X==="function"?o8.applyReviver(X,{"":J},"",J):J}}e8.NodeBase=N9});var N0=O((z6)=>{var Z6=X$(),U6=K0(),Y0=K(),q6=z$(),X6=l();class b9 extends q6.NodeBase{constructor($){super(Y0.ALIAS);this.source=$,Object.defineProperty(this,"tag",{set(){throw Error("Alias nodes cannot have tags")}})}resolve($,Z){let U;if(Z?.aliasResolveCache)U=Z.aliasResolveCache;else if(U=[],U6.visit($,{Node:(X,z)=>{if(Y0.isAlias(z)||Y0.hasAnchor(z))U.push(z)}}),Z)Z.aliasResolveCache=U;let q=void 0;for(let X of U){if(X===this)break;if(X.anchor===this.source)q=X}return q}toJSON($,Z){if(!Z)return{source:this.source};let{anchors:U,doc:q,maxAliasCount:X}=Z,z=this.resolve(q,Z);if(!z){let H=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw ReferenceError(H)}let J=U.get(z);if(!J)X6.toJS(z,null,Z),J=U.get(z);if(J?.res===void 0)throw ReferenceError("This should not happen: Alias anchor was not resolved?");if(X>=0){if(J.count+=1,J.aliasCount===0)J.aliasCount=J$(q,z,U);if(J.count*J.aliasCount>X)throw ReferenceError("Excessive alias count indicates a resource exhaustion attack")}return J.res}toString($,Z,U){let q=`*${this.source}`;if($){if(Z6.anchorIsValid(this.source),$.options.verifyAliasOrder&&!$.anchors.has(this.source)){let X=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw Error(X)}if($.implicitKey)return`${q} `}return q}}function J$($,Z,U){if(Y0.isAlias(Z)){let q=Z.resolve($),X=U&&q&&U.get(q);return X?X.count*X.aliasCount:0}else if(Y0.isCollection(Z)){let q=0;for(let X of Z.items){let z=J$($,X,U);if(z>q)q=z}return q}else if(Y0.isPair(Z)){let q=J$($,Z.key,U),X=J$($,Z.value,U);return Math.max(q,X)}return 1}z6.Alias=b9});var N=O((B6)=>{var H6=K(),Q6=z$(),G6=l(),Y6=($)=>!$||typeof $!=="function"&&typeof $!=="object";class e extends Q6.NodeBase{constructor($){super(H6.SCALAR);this.value=$}toJSON($,Z){return Z?.keep?this.value:G6.toJS(this.value,$,Z)}toString(){return String(this.value)}}e.BLOCK_FOLDED="BLOCK_FOLDED";e.BLOCK_LITERAL="BLOCK_LITERAL";e.PLAIN="PLAIN";e.QUOTE_DOUBLE="QUOTE_DOUBLE";e.QUOTE_SINGLE="QUOTE_SINGLE";B6.Scalar=e;B6.isScalarValue=Y6});var b0=O((R6)=>{var D6=N0(),$0=K(),C9=N(),I6="tag:yaml.org,2002:";function O6($,Z,U){if(Z){let q=U.filter((z)=>z.tag===Z),X=q.find((z)=>!z.format)??q[0];if(!X)throw Error(`Tag ${Z} not found`);return X}return U.find((q)=>q.identify?.($)&&!q.format)}function P6($,Z,U){if($0.isDocument($))$=$.contents;if($0.isNode($))return $;if($0.isPair($)){let Y=U.schema[$0.MAP].createNode?.(U.schema,null,U);return Y.items.push($),Y}if($ instanceof String||$ instanceof Number||$ instanceof Boolean||typeof BigInt<"u"&&$ instanceof BigInt)$=$.valueOf();let{aliasDuplicateObjects:q,onAnchor:X,onTagObj:z,schema:J,sourceObjects:H}=U,Q=void 0;if(q&&$&&typeof $==="object")if(Q=H.get($),Q)return Q.anchor??(Q.anchor=X($)),new D6.Alias(Q.anchor);else Q={anchor:null,node:null},H.set($,Q);if(Z?.startsWith("!!"))Z=I6+Z.slice(2);let G=O6($,Z,J.tags);if(!G){if($&&typeof $.toJSON==="function")$=$.toJSON();if(!$||typeof $!=="object"){let Y=new C9.Scalar($);if(Q)Q.node=Y;return Y}G=$ instanceof Map?J[$0.MAP]:(Symbol.iterator in Object($))?J[$0.SEQ]:J[$0.MAP]}if(z)z(G),delete U.onTagObj;let W=G?.createNode?G.createNode(U.schema,$,U):typeof G?.nodeClass?.from==="function"?G.nodeClass.from(U.schema,$,U):new C9.Scalar($);if(Z)W.tag=Z;else if(!G.default)W.tag=G.tag;if(Q)Q.node=W;return W}R6.createNode=P6});var H$=O((F6)=>{var L6=b0(),k=K(),T6=z$();function Z2($,Z,U){let q=U;for(let X=Z.length-1;X>=0;--X){let z=Z[X];if(typeof z==="number"&&Number.isInteger(z)&&z>=0){let J=[];J[z]=q,q=J}else q=new Map([[z,q]])}return L6.createNode(q,void 0,{aliasDuplicateObjects:!1,keepUndefined:!1,onAnchor:()=>{throw Error("This should not happen, please report a bug.")},schema:$,sourceObjects:new Map})}var j9=($)=>$==null||typeof $==="object"&&!!$[Symbol.iterator]().next().done;class S9 extends T6.NodeBase{constructor($,Z){super($);Object.defineProperty(this,"schema",{value:Z,configurable:!0,enumerable:!1,writable:!0})}clone($){let Z=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));if($)Z.schema=$;if(Z.items=Z.items.map((U)=>k.isNode(U)||k.isPair(U)?U.clone($):U),this.range)Z.range=this.range.slice();return Z}addIn($,Z){if(j9($))this.add(Z);else{let[U,...q]=$,X=this.get(U,!0);if(k.isCollection(X))X.addIn(q,Z);else if(X===void 0&&this.schema)this.set(U,Z2(this.schema,q,Z));else throw Error(`Expected YAML collection at ${U}. Remaining path: ${q}`)}}deleteIn($){let[Z,...U]=$;if(U.length===0)return this.delete(Z);let q=this.get(Z,!0);if(k.isCollection(q))return q.deleteIn(U);else throw Error(`Expected YAML collection at ${Z}. Remaining path: ${U}`)}getIn($,Z){let[U,...q]=$,X=this.get(U,!0);if(q.length===0)return!Z&&k.isScalar(X)?X.value:X;else return k.isCollection(X)?X.getIn(q,Z):void 0}hasAllNullValues($){return this.items.every((Z)=>{if(!k.isPair(Z))return!1;let U=Z.value;return U==null||$&&k.isScalar(U)&&U.value==null&&!U.commentBefore&&!U.comment&&!U.tag})}hasIn($){let[Z,...U]=$;if(U.length===0)return this.has(Z);let q=this.get(Z,!0);return k.isCollection(q)?q.hasIn(U):!1}setIn($,Z){let[U,...q]=$;if(q.length===0)this.set(U,Z);else{let X=this.get(U,!0);if(k.isCollection(X))X.setIn(q,Z);else if(X===void 0&&this.schema)this.set(U,Z2(this.schema,q,Z));else throw Error(`Expected YAML collection at ${U}. Remaining path: ${q}`)}}}F6.Collection=S9;F6.collectionFromPath=Z2;F6.isEmptyPath=j9});var C0=O((b6)=>{var w6=($)=>$.replace(/^(?!$)(?: $)?/gm,"#");function U2($,Z){if(/^\n+$/.test($))return $.substring(1);return Z?$.replace(/^(?! *$)/gm,Z):$}var N6=($,Z,U)=>$.endsWith(`
|
|
3
|
+
`)?U2(U,Z):U.includes(`
|
|
4
4
|
`)?`
|
|
5
|
-
`+
|
|
6
|
-
`){if(U==="block")V=
|
|
7
|
-
`&&
|
|
8
|
-
`&&F!=="\t")
|
|
9
|
-
${
|
|
10
|
-
${
|
|
11
|
-
`);Z
|
|
12
|
-
`){if(z-
|
|
5
|
+
`+U2(U,Z):($.endsWith(" ")?"":" ")+U;b6.indentComment=U2;b6.lineComment=N6;b6.stringifyComment=w6});var g9=O((g6)=>{function E6($,Z,U="flow",{indentAtStart:q,lineWidth:X=80,minContentWidth:z=20,onFold:J,onOverflow:H}={}){if(!X||X<0)return $;if(X<z)z=0;let Q=Math.max(1+z,1+X-Z.length);if($.length<=Q)return $;let G=[],W={},Y=X-Z.length;if(typeof q==="number")if(q>X-Math.max(2,z))G.push(0);else Y=X-q;let B=void 0,I=void 0,P=!1,V=-1,D=-1,_=-1;if(U==="block"){if(V=E9($,V,Z.length),V!==-1)Y=V+Q}for(let T;T=$[V+=1];){if(U==="quoted"&&T==="\\"){switch(D=V,$[V+1]){case"x":V+=3;break;case"u":V+=5;break;case"U":V+=9;break;default:V+=1}_=V}if(T===`
|
|
6
|
+
`){if(U==="block")V=E9($,V,Z.length);Y=V+Z.length+Q,B=void 0}else{if(T===" "&&I&&I!==" "&&I!==`
|
|
7
|
+
`&&I!=="\t"){let F=$[V+1];if(F&&F!==" "&&F!==`
|
|
8
|
+
`&&F!=="\t")B=V}if(V>=Y)if(B)G.push(B),Y=B+Q,B=void 0;else if(U==="quoted"){while(I===" "||I==="\t")I=T,T=$[V+=1],P=!0;let F=V>_+1?V-2:D-1;if(W[F])return $;G.push(F),W[F]=!0,Y=F+Q,B=void 0}else P=!0}I=T}if(P&&H)H();if(G.length===0)return $;if(J)J();let L=$.slice(0,G[0]);for(let T=0;T<G.length;++T){let F=G[T],M=G[T+1]||$.length;if(F===0)L=`
|
|
9
|
+
${Z}${$.slice(0,M)}`;else{if(U==="quoted"&&W[F])L+=`${$[F]}\\`;L+=`
|
|
10
|
+
${Z}${$.slice(F+1,M)}`}}return L}function E9($,Z,U){let q=Z,X=Z+1,z=$[X];while(z===" "||z==="\t")if(Z<X+U)z=$[++Z];else{do z=$[++Z];while(z&&z!==`
|
|
11
|
+
`);q=Z,X=Z+1,z=$[X]}return q}g6.FOLD_BLOCK="block";g6.FOLD_FLOW="flow";g6.FOLD_QUOTED="quoted";g6.foldFlowLines=E6});var S0=O((m6)=>{var y=N(),c=g9(),G$=($,Z)=>({indentAtStart:Z?$.indent.length:$.indentAtStart,lineWidth:$.options.lineWidth,minContentWidth:$.options.minContentWidth}),Y$=($)=>/^(%|---|\.\.\.)/m.test($);function k6($,Z,U){if(!Z||Z<0)return!1;let q=Z-U,X=$.length;if(X<=q)return!1;for(let z=0,J=0;z<X;++z)if($[z]===`
|
|
12
|
+
`){if(z-J>q)return!0;if(J=z+1,X-J<=q)return!1}return!0}function j0($,Z){let U=JSON.stringify($);if(Z.options.doubleQuotedAsJSON)return U;let{implicitKey:q}=Z,X=Z.options.doubleQuotedMinMultiLineLength,z=Z.indent||(Y$($)?" ":""),J="",H=0;for(let Q=0,G=U[Q];G;G=U[++Q]){if(G===" "&&U[Q+1]==="\\"&&U[Q+2]==="n")J+=U.slice(H,Q)+"\\ ",Q+=1,H=Q,G="\\";if(G==="\\")switch(U[Q+1]){case"u":{J+=U.slice(H,Q);let W=U.substr(Q+2,4);switch(W){case"0000":J+="\\0";break;case"0007":J+="\\a";break;case"000b":J+="\\v";break;case"001b":J+="\\e";break;case"0085":J+="\\N";break;case"00a0":J+="\\_";break;case"2028":J+="\\L";break;case"2029":J+="\\P";break;default:if(W.substr(0,2)==="00")J+="\\x"+W.substr(2);else J+=U.substr(Q,6)}Q+=5,H=Q+1}break;case"n":if(q||U[Q+2]==='"'||U.length<X)Q+=1;else{J+=U.slice(H,Q)+`
|
|
13
13
|
|
|
14
|
-
`;while(U[
|
|
15
|
-
`,
|
|
16
|
-
`)||/[ \t]\n|\n[ \t]/.test(
|
|
17
|
-
${U}`)+"'";return
|
|
14
|
+
`;while(U[Q+2]==="\\"&&U[Q+3]==="n"&&U[Q+4]!=='"')J+=`
|
|
15
|
+
`,Q+=2;if(J+=z,U[Q+2]===" ")J+="\\";Q+=1,H=Q+1}break;default:Q+=1}}return J=H?J+U.slice(H):U,q?J:c.foldFlowLines(J,z,c.FOLD_QUOTED,G$(Z,!1))}function q2($,Z){if(Z.options.singleQuote===!1||Z.implicitKey&&$.includes(`
|
|
16
|
+
`)||/[ \t]\n|\n[ \t]/.test($))return j0($,Z);let U=Z.indent||(Y$($)?" ":""),q="'"+$.replace(/'/g,"''").replace(/\n+/g,`$&
|
|
17
|
+
${U}`)+"'";return Z.implicitKey?q:c.foldFlowLines(q,U,c.FOLD_FLOW,G$(Z,!1))}function B0($,Z){let{singleQuote:U}=Z.options,q;if(U===!1)q=j0;else{let X=$.includes('"'),z=$.includes("'");if(X&&!z)q=q2;else if(z&&!X)q=j0;else q=U?q2:j0}return q($,Z)}var X2;try{X2=new RegExp(`(^|(?<!
|
|
18
18
|
))
|
|
19
19
|
+(?!
|
|
20
|
-
|$)`,"g")}catch{
|
|
20
|
+
|$)`,"g")}catch{X2=/\n+(?!\n|$)/g}function Q$({comment:$,type:Z,value:U},q,X,z){let{blockQuote:J,commentString:H,lineWidth:Q}=q.options;if(!J||/\n[\t ]+$/.test(U))return B0(U,q);let G=q.indent||(q.forceBlockIndent||Y$(U)?" ":""),W=J==="literal"?!0:J==="folded"||Z===y.Scalar.BLOCK_FOLDED?!1:Z===y.Scalar.BLOCK_LITERAL?!0:!k6(U,Q,G.length);if(!U)return W?`|
|
|
21
21
|
`:`>
|
|
22
|
-
`;let B
|
|
23
|
-
`&&
|
|
24
|
-
`);if(
|
|
25
|
-
`)
|
|
26
|
-
`)
|
|
27
|
-
$&`).replace(/(?:^|\n)([\t ].*)(?:([\n\t ]*)\n(?![\n\t ]))?/g,"$1$2").replace(/\n+/g,`$&${
|
|
28
|
-
${
|
|
29
|
-
${
|
|
30
|
-
`)||W&&/[[\]{},]/.test(z))return B0(z
|
|
31
|
-
`)?B0(z
|
|
32
|
-
`))return
|
|
33
|
-
${
|
|
34
|
-
${
|
|
35
|
-
${
|
|
36
|
-
`:"",
|
|
37
|
-
${
|
|
38
|
-
`&&
|
|
22
|
+
`;let Y,B;for(B=U.length;B>0;--B){let M=U[B-1];if(M!==`
|
|
23
|
+
`&&M!=="\t"&&M!==" ")break}let I=U.substring(B),P=I.indexOf(`
|
|
24
|
+
`);if(P===-1)Y="-";else if(U===I||P!==I.length-1){if(Y="+",z)z()}else Y="";if(I){if(U=U.slice(0,-I.length),I[I.length-1]===`
|
|
25
|
+
`)I=I.slice(0,-1);I=I.replace(X2,`$&${G}`)}let V=!1,D,_=-1;for(D=0;D<U.length;++D){let M=U[D];if(M===" ")V=!0;else if(M===`
|
|
26
|
+
`)_=D;else break}let L=U.substring(0,_<D?_+1:D);if(L)U=U.substring(L.length),L=L.replace(/\n+/g,`$&${G}`);let F=(V?G?"2":"1":"")+Y;if($){if(F+=" "+H($.replace(/ ?[\r\n]+/g," ")),X)X()}if(!W){let M=U.replace(/\n+/g,`
|
|
27
|
+
$&`).replace(/(?:^|\n)([\t ].*)(?:([\n\t ]*)\n(?![\n\t ]))?/g,"$1$2").replace(/\n+/g,`$&${G}`),A=!1,w=G$(q,!0);if(J!=="folded"&&Z!==y.Scalar.BLOCK_FOLDED)w.onOverflow=()=>{A=!0};let R=c.foldFlowLines(`${L}${M}${I}`,G,c.FOLD_BLOCK,w);if(!A)return`>${F}
|
|
28
|
+
${G}${R}`}return U=U.replace(/\n+/g,`$&${G}`),`|${F}
|
|
29
|
+
${G}${L}${U}${I}`}function u6($,Z,U,q){let{type:X,value:z}=$,{actualString:J,implicitKey:H,indent:Q,indentStep:G,inFlow:W}=Z;if(H&&z.includes(`
|
|
30
|
+
`)||W&&/[[\]{},]/.test(z))return B0(z,Z);if(/^[\n\t ,[\]{}#&*!|>'"%@`]|^[?-]$|^[?-][ \t]|[\n:][ \t]|[ \t]\n|[\n\t ]#|[\n\t :]$/.test(z))return H||W||!z.includes(`
|
|
31
|
+
`)?B0(z,Z):Q$($,Z,U,q);if(!H&&!W&&X!==y.Scalar.PLAIN&&z.includes(`
|
|
32
|
+
`))return Q$($,Z,U,q);if(Y$(z)){if(Q==="")return Z.forceBlockIndent=!0,Q$($,Z,U,q);else if(H&&Q===G)return B0(z,Z)}let Y=z.replace(/\n+/g,`$&
|
|
33
|
+
${Q}`);if(J){let B=(V)=>V.default&&V.tag!=="tag:yaml.org,2002:str"&&V.test?.test(Y),{compat:I,tags:P}=Z.doc.schema;if(P.some(B)||I?.some(B))return B0(z,Z)}return H?Y:c.foldFlowLines(Y,Q,c.FOLD_FLOW,G$(Z,!1))}function v6($,Z,U,q){let{implicitKey:X,inFlow:z}=Z,J=typeof $.value==="string"?$:Object.assign({},$,{value:String($.value)}),{type:H}=$;if(H!==y.Scalar.QUOTE_DOUBLE){if(/[\x00-\x08\x0b-\x1f\x7f-\x9f\u{D800}-\u{DFFF}]/u.test(J.value))H=y.Scalar.QUOTE_DOUBLE}let Q=(W)=>{switch(W){case y.Scalar.BLOCK_FOLDED:case y.Scalar.BLOCK_LITERAL:return X||z?B0(J.value,Z):Q$(J,Z,U,q);case y.Scalar.QUOTE_DOUBLE:return j0(J.value,Z);case y.Scalar.QUOTE_SINGLE:return q2(J.value,Z);case y.Scalar.PLAIN:return u6(J,Z,U,q);default:return null}},G=Q(H);if(G===null){let{defaultKeyType:W,defaultStringType:Y}=Z.options,B=X&&W||Y;if(G=Q(B),G===null)throw Error(`Unsupported default string type ${B}`)}return G}m6.stringifyString=v6});var E0=O((n6)=>{var d6=X$(),a=K(),l6=C0(),c6=S0();function a6($,Z){let U=Object.assign({blockQuote:!0,commentString:l6.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,trueStr:"true",verifyAliasOrder:!0},$.schema.toStringOptions,Z),q;switch(U.collectionStyle){case"block":q=!1;break;case"flow":q=!0;break;default:q=null}return{anchors:new Set,doc:$,flowCollectionPadding:U.flowCollectionPadding?" ":"",indent:"",indentStep:typeof U.indent==="number"?" ".repeat(U.indent):" ",inFlow:q,options:U}}function i6($,Z){if(Z.tag){let X=$.filter((z)=>z.tag===Z.tag);if(X.length>0)return X.find((z)=>z.format===Z.format)??X[0]}let U=void 0,q;if(a.isScalar(Z)){q=Z.value;let X=$.filter((z)=>z.identify?.(q));if(X.length>1){let z=X.filter((J)=>J.test);if(z.length>0)X=z}U=X.find((z)=>z.format===Z.format)??X.find((z)=>!z.format)}else q=Z,U=$.find((X)=>X.nodeClass&&q instanceof X.nodeClass);if(!U){let X=q?.constructor?.name??(q===null?"null":typeof q);throw Error(`Tag not resolved for ${X} value`)}return U}function s6($,Z,{anchors:U,doc:q}){if(!q.directives)return"";let X=[],z=(a.isScalar($)||a.isCollection($))&&$.anchor;if(z&&d6.anchorIsValid(z))U.add(z),X.push(`&${z}`);let J=$.tag??(Z.default?null:Z.tag);if(J)X.push(q.directives.tagString(J));return X.join(" ")}function r6($,Z,U,q){if(a.isPair($))return $.toString(Z,U,q);if(a.isAlias($)){if(Z.doc.directives)return $.toString(Z);if(Z.resolvedAliases?.has($))throw TypeError("Cannot stringify circular structure without alias nodes");else{if(Z.resolvedAliases)Z.resolvedAliases.add($);else Z.resolvedAliases=new Set([$]);$=$.resolve(Z.doc)}}let X=void 0,z=a.isNode($)?$:Z.doc.createNode($,{onTagObj:(Q)=>X=Q});X??(X=i6(Z.doc.schema.tags,z));let J=s6(z,X,Z);if(J.length>0)Z.indentAtStart=(Z.indentAtStart??0)+J.length+1;let H=typeof X.stringify==="function"?X.stringify(z,Z,U,q):a.isScalar(z)?c6.stringifyString(z,Z,U,q):z.toString(Z,U,q);if(!J)return H;return a.isScalar(z)||H[0]==="{"||H[0]==="["?`${J} ${H}`:`${J}
|
|
34
|
+
${Z.indent}${H}`}n6.createStringifyContext=a6;n6.stringify=r6});var x9=O(($U)=>{var m=K(),f9=N(),y9=E0(),g0=C0();function e6({key:$,value:Z},U,q,X){let{allNullValues:z,doc:J,indent:H,indentStep:Q,options:{commentString:G,indentSeq:W,simpleKeys:Y}}=U,B=m.isNode($)&&$.comment||null;if(Y){if(B)throw Error("With simple keys, key nodes cannot have comments");if(m.isCollection($)||!m.isNode($)&&typeof $==="object")throw Error("With simple keys, collection cannot be used as a key value")}let I=!Y&&(!$||B&&Z==null&&!U.inFlow||m.isCollection($)||(m.isScalar($)?$.type===f9.Scalar.BLOCK_FOLDED||$.type===f9.Scalar.BLOCK_LITERAL:typeof $==="object"));U=Object.assign({},U,{allNullValues:!1,implicitKey:!I&&(Y||!z),indent:H+Q});let P=!1,V=!1,D=y9.stringify($,U,()=>P=!0,()=>V=!0);if(!I&&!U.inFlow&&D.length>1024){if(Y)throw Error("With simple keys, single line scalar must not span more than 1024 characters");I=!0}if(U.inFlow){if(z||Z==null){if(P&&q)q();return D===""?"?":I?`? ${D}`:D}}else if(z&&!Y||Z==null&&I){if(D=`? ${D}`,B&&!P)D+=g0.lineComment(D,U.indent,G(B));else if(V&&X)X();return D}if(P)B=null;if(I){if(B)D+=g0.lineComment(D,U.indent,G(B));D=`? ${D}
|
|
35
|
+
${H}:`}else if(D=`${D}:`,B)D+=g0.lineComment(D,U.indent,G(B));let _,L,T;if(m.isNode(Z))_=!!Z.spaceBefore,L=Z.commentBefore,T=Z.comment;else if(_=!1,L=null,T=null,Z&&typeof Z==="object")Z=J.createNode(Z);if(U.implicitKey=!1,!I&&!B&&m.isScalar(Z))U.indentAtStart=D.length+1;if(V=!1,!W&&Q.length>=2&&!U.inFlow&&!I&&m.isSeq(Z)&&!Z.flow&&!Z.tag&&!Z.anchor)U.indent=U.indent.substring(2);let F=!1,M=y9.stringify(Z,U,()=>F=!0,()=>V=!0),A=" ";if(B||_||L){if(A=_?`
|
|
36
|
+
`:"",L){let w=G(L);A+=`
|
|
37
|
+
${g0.indentComment(w,U.indent)}`}if(M===""&&!U.inFlow){if(A===`
|
|
38
|
+
`&&T)A=`
|
|
39
39
|
|
|
40
|
-
`}else
|
|
41
|
-
${U.indent}`}else if(!
|
|
42
|
-
`),b=
|
|
43
|
-
${U.indent}`}}else if(
|
|
44
|
-
`)
|
|
45
|
-
${
|
|
46
|
-
`}}if(
|
|
47
|
-
`+
|
|
48
|
-
`)))
|
|
49
|
-
${z}${
|
|
50
|
-
`;return`${
|
|
51
|
-
${
|
|
52
|
-
`:" ")}return
|
|
53
|
-
${
|
|
54
|
-
${z.comment}`:Z.comment}Z=H}q.items[U]=Dq.isPair(Z)?Z:new Y$.Pair(Z)}else $("Expected a sequence for this tag");return q}function iU(q,$,U){let{replacer:Z}=U,H=new w8.YAMLSeq(q);H.tag="tag:yaml.org,2002:pairs";let z=0;if($&&Symbol.iterator in Object($))for(let X of $){if(typeof Z==="function")X=Z.call($,String(z++),X);let G,J;if(Array.isArray(X))if(X.length===2)G=X[0],J=X[1];else throw TypeError(`Expected [key, value] tuple: ${X}`);else if(X&&X instanceof Object){let Q=Object.keys(X);if(Q.length===1)G=Q[0],J=X[G];else throw TypeError(`Expected tuple with one key, not ${Q.length} keys`)}else G=X;H.items.push(Y$.createPair(G,J,U))}return H}var K8={collection:"seq",default:!1,tag:"tag:yaml.org,2002:pairs",resolve:sU,createNode:iU};N8.createPairs=iU;N8.pairs=K8;N8.resolvePairs=sU});var W$=T((g8)=>{var rU=w(),V$=d(),x0=i(),C8=r(),nU=Iq();class U0 extends C8.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=U0.tag}toJSON(q,$){if(!$)return super.toJSON(q);let U=new Map;if($?.onCreate)$.onCreate(U);for(let Z of this.items){let H,z;if(rU.isPair(Z))H=V$.toJS(Z.key,"",$),z=V$.toJS(Z.value,H,$);else H=V$.toJS(Z,"",$);if(U.has(H))throw Error("Ordered maps must not include duplicate keys");U.set(H,z)}return U}static from(q,$,U){let Z=nU.createPairs(q,$,U),H=new this;return H.items=Z.items,H}}U0.tag="tag:yaml.org,2002:omap";var E8={collection:"seq",identify:(q)=>q instanceof Map,nodeClass:U0,default:!1,tag:"tag:yaml.org,2002:omap",resolve(q,$){let U=nU.resolvePairs(q,$),Z=[];for(let{key:H}of U.items)if(rU.isScalar(H))if(Z.includes(H.value))$(`Ordered maps must not include duplicate keys: ${H.value}`);else Z.push(H.value);return Object.assign(new U0,U)},createNode:(q,$,U)=>U0.from(q,$,U)};g8.YAMLOMap=U0;g8.omap=E8});var $2=T((x8)=>{var oU=N();function tU({value:q,source:$},U){if($&&(q?eU:q2).test.test($))return $;return q?U.options.trueStr:U.options.falseStr}var eU={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 oU.Scalar(!0),stringify:tU},q2={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 oU.Scalar(!1),stringify:tU};x8.falseTag=q2;x8.trueTag=eU});var U2=T((d8)=>{var k8=N(),O$=W0(),v8={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:O$.stringifyNumber},m8={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():O$.stringifyNumber(q)}},p8={identify:(q)=>typeof q==="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:[0-9][0-9_]*)?\.[0-9_]*$/,resolve(q){let $=new k8.Scalar(parseFloat(q.replace(/_/g,""))),U=q.indexOf(".");if(U!==-1){let Z=q.substring(U+1).replace(/_/g,"");if(Z[Z.length-1]==="0")$.minFractionDigits=Z.length}return $},stringify:O$.stringifyNumber};d8.float=p8;d8.floatExp=m8;d8.floatNaN=v8});var H2=T((o8)=>{var Z2=W0(),h0=(q)=>typeof q==="bigint"||Number.isInteger(q);function Rq(q,$,U,{intAsBigInt:Z}){let H=q[0];if(H==="-"||H==="+")$+=1;if(q=q.substring($).replace(/_/g,""),Z){switch(U){case 2:q=`0b${q}`;break;case 8:q=`0o${q}`;break;case 16:q=`0x${q}`;break}let X=BigInt(q);return H==="-"?BigInt(-1)*X:X}let z=parseInt(q,U);return H==="-"?-1*z:z}function L$(q,$,U){let{value:Z}=q;if(h0(Z)){let H=Z.toString($);return Z<0?"-"+U+H.substr(1):U+H}return Z2.stringifyNumber(q)}var s8={identify:h0,default:!0,tag:"tag:yaml.org,2002:int",format:"BIN",test:/^[-+]?0b[0-1_]+$/,resolve:(q,$,U)=>Rq(q,2,2,U),stringify:(q)=>L$(q,2,"0b")},i8={identify:h0,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^[-+]?0[0-7_]+$/,resolve:(q,$,U)=>Rq(q,1,8,U),stringify:(q)=>L$(q,8,"0")},r8={identify:h0,default:!0,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9][0-9_]*$/,resolve:(q,$,U)=>Rq(q,0,10,U),stringify:Z2.stringifyNumber},n8={identify:h0,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^[-+]?0x[0-9a-fA-F_]+$/,resolve:(q,$,U)=>Rq(q,2,16,U),stringify:(q)=>L$(q,16,"0x")};o8.int=r8;o8.intBin=s8;o8.intHex=n8;o8.intOct=i8});var T$=T((Z3)=>{var Aq=w(),Pq=a(),Fq=i();class Z0 extends Fq.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(!Fq.findPair(this.items,$.key))this.items.push($)}get(q,$){let U=Fq.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=Fq.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:Z}=U,H=new this(q);if($&&Symbol.iterator in Object($))for(let z of $){if(typeof Z==="function")z=Z.call($,z,z);H.items.push(Pq.createPair(z,null,U))}return H}}Z0.tag="tag:yaml.org,2002:set";var U3={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}};Z3.YAMLSet=Z0;Z3.set=U3});var D$=T((Q3)=>{var X3=W0();function _$(q,$){let U=q[0],Z=U==="-"||U==="+"?q.substring(1):q,H=(X)=>$?BigInt(X):Number(X),z=Z.replace(/_/g,"").split(":").reduce((X,G)=>X*H(60)+H(G),H(0));return U==="-"?H(-1)*z:z}function z2(q){let{value:$}=q,U=(X)=>X;if(typeof $==="bigint")U=(X)=>BigInt(X);else if(isNaN($)||!isFinite($))return X3.stringifyNumber(q);let Z="";if($<0)Z="-",$*=U(-1);let H=U(60),z=[$%H];if($<60)z.unshift(0);else if($=($-z[0])/H,z.unshift($%H),$>=60)$=($-z[0])/H,z.unshift($);return Z+z.map((X)=>String(X).padStart(2,"0")).join(":").replace(/000000\d*$/,"")}var G3={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})=>_$(q,U),stringify:z2},J3={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)=>_$(q,!1),stringify:z2},X2={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(X2.test);if(!$)throw Error("!!timestamp expects a date, starting with yyyy-mm-dd");let[,U,Z,H,z,X,G]=$.map(Number),J=$[7]?Number(($[7]+"00").substr(1,3)):0,Q=Date.UTC(U,Z-1,H,z||0,X||0,G||0,J),W=$[8];if(W&&W!=="Z"){let B=_$(W,!1);if(Math.abs(B)<30)B*=60;Q-=60000*B}return new Date(Q)},stringify:({value:q})=>q?.toISOString().replace(/(T00:00:00)?\.000Z$/,"")??""};Q3.floatTime=J3;Q3.intTime=G3;Q3.timestamp=X2});var J2=T((A3)=>{var W3=Y0(),O3=Lq(),L3=V0(),T3=f0(),_3=B$(),G2=$2(),I$=U2(),Mq=H2(),D3=Gq(),I3=W$(),R3=Iq(),P3=T$(),R$=D$(),F3=[W3.map,L3.seq,T3.string,O3.nullTag,G2.trueTag,G2.falseTag,Mq.intBin,Mq.intOct,Mq.int,Mq.intHex,I$.floatNaN,I$.floatExp,I$.float,_3.binary,D3.merge,I3.omap,R3.pairs,P3.set,R$.intTime,R$.floatTime,R$.timestamp];A3.schema=F3});var D2=T((E3)=>{var V2=Y0(),w3=Lq(),W2=V0(),K3=f0(),N3=U$(),P$=H$(),F$=X$(),b3=lU(),S3=aU(),O2=B$(),u0=Gq(),L2=W$(),T2=Iq(),Q2=J2(),_2=T$(),wq=D$(),B2=new Map([["core",b3.schema],["failsafe",[V2.map,W2.seq,K3.string]],["json",S3.schema],["yaml11",Q2.schema],["yaml-1.1",Q2.schema]]),Y2={binary:O2.binary,bool:N3.boolTag,float:P$.float,floatExp:P$.floatExp,floatNaN:P$.floatNaN,floatTime:wq.floatTime,int:F$.int,intHex:F$.intHex,intOct:F$.intOct,intTime:wq.intTime,map:V2.map,merge:u0.merge,null:w3.nullTag,omap:L2.omap,pairs:T2.pairs,seq:W2.seq,set:_2.set,timestamp:wq.timestamp},j3={"tag:yaml.org,2002:binary":O2.binary,"tag:yaml.org,2002:merge":u0.merge,"tag:yaml.org,2002:omap":L2.omap,"tag:yaml.org,2002:pairs":T2.pairs,"tag:yaml.org,2002:set":_2.set,"tag:yaml.org,2002:timestamp":wq.timestamp};function C3(q,$,U){let Z=B2.get($);if(Z&&!q)return U&&!Z.includes(u0.merge)?Z.concat(u0.merge):Z.slice();let H=Z;if(!H)if(Array.isArray(q))H=[];else{let z=Array.from(B2.keys()).filter((X)=>X!=="yaml11").map((X)=>JSON.stringify(X)).join(", ");throw Error(`Unknown schema "${$}"; use one of ${z} or define customTags array`)}if(Array.isArray(q))for(let z of q)H=H.concat(z);else if(typeof q==="function")H=q(H.slice());if(U)H=H.concat(u0.merge);return H.reduce((z,X)=>{let G=typeof X==="string"?Y2[X]:X;if(!G){let J=JSON.stringify(X),Q=Object.keys(Y2).map((W)=>JSON.stringify(W)).join(", ");throw Error(`Unknown custom tag ${J}; use one of ${Q}`)}if(!z.includes(G))z.push(G);return z},[])}E3.coreKnownTags=j3;E3.getTags=C3});var w$=T((k3)=>{var A$=w(),y3=Y0(),x3=V0(),h3=f0(),Kq=D2(),u3=(q,$)=>q.key<$.key?-1:q.key>$.key?1:0;class M${constructor({compat:q,customTags:$,merge:U,resolveKnownTags:Z,schema:H,sortMapEntries:z,toStringDefaults:X}){this.compat=Array.isArray(q)?Kq.getTags(q,"compat"):q?Kq.getTags(null,q):null,this.name=typeof H==="string"&&H||"core",this.knownTags=Z?Kq.coreKnownTags:{},this.tags=Kq.getTags($,this.name,U),this.toStringOptions=X??null,Object.defineProperty(this,A$.MAP,{value:y3.map}),Object.defineProperty(this,A$.SCALAR,{value:h3.string}),Object.defineProperty(this,A$.SEQ,{value:x3.seq}),this.sortMapEntries=typeof z==="function"?z:z===!0?u3:null}clone(){let q=Object.create(M$.prototype,Object.getOwnPropertyDescriptors(this));return q.tags=this.tags.slice(),q}}k3.Schema=M$});var I2=T((d3)=>{var m3=w(),K$=j0(),k0=N0();function p3(q,$){let U=[],Z=$.directives===!0;if($.directives!==!1&&q.directives){let J=q.directives.toString(q);if(J)U.push(J),Z=!0;else if(q.directives.docStart)Z=!0}if(Z)U.push("---");let H=K$.createStringifyContext(q,$),{commentString:z}=H.options;if(q.commentBefore){if(U.length!==1)U.unshift("");let J=z(q.commentBefore);U.unshift(k0.indentComment(J,""))}let X=!1,G=null;if(q.contents){if(m3.isNode(q.contents)){if(q.contents.spaceBefore&&Z)U.push("");if(q.contents.commentBefore){let W=z(q.contents.commentBefore);U.push(k0.indentComment(W,""))}H.forceBlockIndent=!!q.comment,G=q.contents.comment}let J=G?void 0:()=>X=!0,Q=K$.stringify(q.contents,H,()=>G=null,J);if(G)Q+=k0.lineComment(Q,"",z(G));if((Q[0]==="|"||Q[0]===">")&&U[U.length-1]==="---")U[U.length-1]=`--- ${Q}`;else U.push(Q)}else U.push(K$.stringify(q.contents,H));if(q.directives?.docEnd)if(q.comment){let J=z(q.comment);if(J.includes(`
|
|
55
|
-
`))U.push("..."),U.push(
|
|
40
|
+
`}else A+=`
|
|
41
|
+
${U.indent}`}else if(!I&&m.isCollection(Z)){let w=M[0],R=M.indexOf(`
|
|
42
|
+
`),b=R!==-1,p=U.inFlow??Z.flow??Z.items.length===0;if(b||!p){let J0=!1;if(b&&(w==="&"||w==="!")){let C=M.indexOf(" ");if(w==="&"&&C!==-1&&C<R&&M[C+1]==="!")C=M.indexOf(" ",C+1);if(C===-1||R<C)J0=!0}if(!J0)A=`
|
|
43
|
+
${U.indent}`}}else if(M===""||M[0]===`
|
|
44
|
+
`)A="";if(D+=A+M,U.inFlow){if(F&&q)q()}else if(T&&!F)D+=g0.lineComment(D,U.indent,G(T));else if(V&&X)X();return D}$U.stringifyPair=e6});var z2=O((XU)=>{var h9=T0("process");function UU($,...Z){if($==="debug")console.log(...Z)}function qU($,Z){if($==="debug"||$==="warn")if(typeof h9.emitWarning==="function")h9.emitWarning(Z);else console.warn(Z)}XU.debug=UU;XU.warn=qU});var W$=O((QU)=>{var f0=K(),k9=N(),B$="<<",V$={identify:($)=>$===B$||typeof $==="symbol"&&$.description===B$,default:"key",tag:"tag:yaml.org,2002:merge",test:/^<<$/,resolve:()=>Object.assign(new k9.Scalar(Symbol(B$)),{addToJSMap:u9}),stringify:()=>B$},HU=($,Z)=>(V$.identify(Z)||f0.isScalar(Z)&&(!Z.type||Z.type===k9.Scalar.PLAIN)&&V$.identify(Z.value))&&$?.doc.schema.tags.some((U)=>U.tag===V$.tag&&U.default);function u9($,Z,U){if(U=$&&f0.isAlias(U)?U.resolve($.doc):U,f0.isSeq(U))for(let q of U.items)J2($,Z,q);else if(Array.isArray(U))for(let q of U)J2($,Z,q);else J2($,Z,U)}function J2($,Z,U){let q=$&&f0.isAlias(U)?U.resolve($.doc):U;if(!f0.isMap(q))throw Error("Merge sources must be maps or map aliases");let X=q.toJSON(null,$,Map);for(let[z,J]of X)if(Z instanceof Map){if(!Z.has(z))Z.set(z,J)}else if(Z instanceof Set)Z.add(z);else if(!Object.prototype.hasOwnProperty.call(Z,z))Object.defineProperty(Z,z,{value:J,writable:!0,enumerable:!0,configurable:!0});return Z}QU.addMergeToJSMap=u9;QU.isMergeKey=HU;QU.merge=V$});var Q2=O((OU)=>{var VU=z2(),v9=W$(),WU=E0(),m9=K(),H2=l();function DU($,Z,{key:U,value:q}){if(m9.isNode(U)&&U.addToJSMap)U.addToJSMap($,Z,q);else if(v9.isMergeKey($,U))v9.addMergeToJSMap($,Z,q);else{let X=H2.toJS(U,"",$);if(Z instanceof Map)Z.set(X,H2.toJS(q,X,$));else if(Z instanceof Set)Z.add(X);else{let z=IU(U,X,$),J=H2.toJS(q,z,$);if(z in Z)Object.defineProperty(Z,z,{value:J,writable:!0,enumerable:!0,configurable:!0});else Z[z]=J}}return Z}function IU($,Z,U){if(Z===null)return"";if(typeof Z!=="object")return String(Z);if(m9.isNode($)&&U?.doc){let q=WU.createStringifyContext(U.doc,{});q.anchors=new Set;for(let z of U.anchors.keys())q.anchors.add(z.anchor);q.inFlow=!0,q.inStringifyKey=!0;let X=$.toString(q);if(!U.mapKeyWarned){let z=JSON.stringify(X);if(z.length>40)z=z.substring(0,36)+'..."';VU.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(Z)}OU.addPairToJSMap=DU});var i=O((TU)=>{var p9=b0(),RU=x9(),_U=Q2(),D$=K();function LU($,Z,U){let q=p9.createNode($,void 0,U),X=p9.createNode(Z,void 0,U);return new I$(q,X)}class I${constructor($,Z=null){Object.defineProperty(this,D$.NODE_TYPE,{value:D$.PAIR}),this.key=$,this.value=Z}clone($){let{key:Z,value:U}=this;if(D$.isNode(Z))Z=Z.clone($);if(D$.isNode(U))U=U.clone($);return new I$(Z,U)}toJSON($,Z){let U=Z?.mapAsMap?new Map:{};return _U.addPairToJSMap(Z,U,this)}toString($,Z,U){return $?.doc?RU.stringifyPair(this,$,Z,U):JSON.stringify(this)}}TU.Pair=I$;TU.createPair=LU});var G2=O((NU)=>{var Z0=K(),d9=E0(),O$=C0();function AU($,Z,U){return(Z.inFlow??$.flow?wU:KU)($,Z,U)}function KU({comment:$,items:Z},U,{blockItemPrefix:q,flowChars:X,itemIndent:z,onChompKeep:J,onComment:H}){let{indent:Q,options:{commentString:G}}=U,W=Object.assign({},U,{indent:z,type:null}),Y=!1,B=[];for(let P=0;P<Z.length;++P){let V=Z[P],D=null;if(Z0.isNode(V)){if(!Y&&V.spaceBefore)B.push("");if(P$(U,B,V.commentBefore,Y),V.comment)D=V.comment}else if(Z0.isPair(V)){let L=Z0.isNode(V.key)?V.key:null;if(L){if(!Y&&L.spaceBefore)B.push("");P$(U,B,L.commentBefore,Y)}}Y=!1;let _=d9.stringify(V,W,()=>D=null,()=>Y=!0);if(D)_+=O$.lineComment(_,z,G(D));if(Y&&D)Y=!1;B.push(q+_)}let I;if(B.length===0)I=X.start+X.end;else{I=B[0];for(let P=1;P<B.length;++P){let V=B[P];I+=V?`
|
|
45
|
+
${Q}${V}`:`
|
|
46
|
+
`}}if($){if(I+=`
|
|
47
|
+
`+O$.indentComment(G($),Q),H)H()}else if(Y&&J)J();return I}function wU({items:$},Z,{flowChars:U,itemIndent:q}){let{indent:X,indentStep:z,flowCollectionPadding:J,options:{commentString:H}}=Z;q+=z;let Q=Object.assign({},Z,{indent:q,inFlow:!0,type:null}),G=!1,W=0,Y=[];for(let P=0;P<$.length;++P){let V=$[P],D=null;if(Z0.isNode(V)){if(V.spaceBefore)Y.push("");if(P$(Z,Y,V.commentBefore,!1),V.comment)D=V.comment}else if(Z0.isPair(V)){let L=Z0.isNode(V.key)?V.key:null;if(L){if(L.spaceBefore)Y.push("");if(P$(Z,Y,L.commentBefore,!1),L.comment)G=!0}let T=Z0.isNode(V.value)?V.value:null;if(T){if(T.comment)D=T.comment;if(T.commentBefore)G=!0}else if(V.value==null&&L?.comment)D=L.comment}if(D)G=!0;let _=d9.stringify(V,Q,()=>D=null);if(P<$.length-1)_+=",";if(D)_+=O$.lineComment(_,q,H(D));if(!G&&(Y.length>W||_.includes(`
|
|
48
|
+
`)))G=!0;Y.push(_),W=Y.length}let{start:B,end:I}=U;if(Y.length===0)return B+I;else{if(!G){let P=Y.reduce((V,D)=>V+D.length+2,2);G=Z.options.lineWidth>0&&P>Z.options.lineWidth}if(G){let P=B;for(let V of Y)P+=V?`
|
|
49
|
+
${z}${X}${V}`:`
|
|
50
|
+
`;return`${P}
|
|
51
|
+
${X}${I}`}else return`${B}${J}${Y.join(" ")}${J}${I}`}}function P$({indent:$,options:{commentString:Z}},U,q,X){if(q&&X)q=q.replace(/^\n+/,"");if(q){let z=O$.indentComment(Z(q),$);U.push(z.trimStart())}}NU.stringifyCollection=AU});var r=O((gU)=>{var CU=G2(),jU=Q2(),SU=H$(),s=K(),R$=i(),EU=N();function y0($,Z){let U=s.isScalar(Z)?Z.value:Z;for(let q of $)if(s.isPair(q)){if(q.key===Z||q.key===U)return q;if(s.isScalar(q.key)&&q.key.value===U)return q}return}class l9 extends SU.Collection{static get tagName(){return"tag:yaml.org,2002:map"}constructor($){super(s.MAP,$);this.items=[]}static from($,Z,U){let{keepUndefined:q,replacer:X}=U,z=new this($),J=(H,Q)=>{if(typeof X==="function")Q=X.call(Z,H,Q);else if(Array.isArray(X)&&!X.includes(H))return;if(Q!==void 0||q)z.items.push(R$.createPair(H,Q,U))};if(Z instanceof Map)for(let[H,Q]of Z)J(H,Q);else if(Z&&typeof Z==="object")for(let H of Object.keys(Z))J(H,Z[H]);if(typeof $.sortMapEntries==="function")z.items.sort($.sortMapEntries);return z}add($,Z){let U;if(s.isPair($))U=$;else if(!$||typeof $!=="object"||!("key"in $))U=new R$.Pair($,$?.value);else U=new R$.Pair($.key,$.value);let q=y0(this.items,U.key),X=this.schema?.sortMapEntries;if(q){if(!Z)throw Error(`Key ${U.key} already set`);if(s.isScalar(q.value)&&EU.isScalarValue(U.value))q.value.value=U.value;else q.value=U.value}else if(X){let z=this.items.findIndex((J)=>X(U,J)<0);if(z===-1)this.items.push(U);else this.items.splice(z,0,U)}else this.items.push(U)}delete($){let Z=y0(this.items,$);if(!Z)return!1;return this.items.splice(this.items.indexOf(Z),1).length>0}get($,Z){let q=y0(this.items,$)?.value;return(!Z&&s.isScalar(q)?q.value:q)??void 0}has($){return!!y0(this.items,$)}set($,Z){this.add(new R$.Pair($,Z),!0)}toJSON($,Z,U){let q=U?new U:Z?.mapAsMap?new Map:{};if(Z?.onCreate)Z.onCreate(q);for(let X of this.items)jU.addPairToJSMap(Z,q,X);return q}toString($,Z,U){if(!$)return JSON.stringify(this);for(let q of this.items)if(!s.isPair(q))throw Error(`Map items must all be pairs; found ${JSON.stringify(q)} instead`);if(!$.allNullValues&&this.hasAllNullValues(!1))$=Object.assign({},$,{allNullValues:!0});return CU.stringifyCollection(this,$,{blockItemPrefix:"",flowChars:{start:"{",end:"}"},itemIndent:$.indent||"",onChompKeep:U,onComment:Z})}}gU.YAMLMap=l9;gU.findPair=y0});var V0=O((kU)=>{var xU=K(),c9=r(),hU={collection:"map",default:!0,nodeClass:c9.YAMLMap,tag:"tag:yaml.org,2002:map",resolve($,Z){if(!xU.isMap($))Z("Expected a mapping for this tag");return $},createNode:($,Z,U)=>c9.YAMLMap.from($,Z,U)};kU.map=hU});var n=O((cU)=>{var vU=b0(),mU=G2(),pU=H$(),L$=K(),dU=N(),lU=l();class a9 extends pU.Collection{static get tagName(){return"tag:yaml.org,2002:seq"}constructor($){super(L$.SEQ,$);this.items=[]}add($){this.items.push($)}delete($){let Z=_$($);if(typeof Z!=="number")return!1;return this.items.splice(Z,1).length>0}get($,Z){let U=_$($);if(typeof U!=="number")return;let q=this.items[U];return!Z&&L$.isScalar(q)?q.value:q}has($){let Z=_$($);return typeof Z==="number"&&Z<this.items.length}set($,Z){let U=_$($);if(typeof U!=="number")throw Error(`Expected a valid index, not ${$}.`);let q=this.items[U];if(L$.isScalar(q)&&dU.isScalarValue(Z))q.value=Z;else this.items[U]=Z}toJSON($,Z){let U=[];if(Z?.onCreate)Z.onCreate(U);let q=0;for(let X of this.items)U.push(lU.toJS(X,String(q++),Z));return U}toString($,Z,U){if(!$)return JSON.stringify(this);return mU.stringifyCollection(this,$,{blockItemPrefix:"- ",flowChars:{start:"[",end:"]"},itemIndent:($.indent||"")+" ",onChompKeep:U,onComment:Z})}static from($,Z,U){let{replacer:q}=U,X=new this($);if(Z&&Symbol.iterator in Object(Z)){let z=0;for(let J of Z){if(typeof q==="function"){let H=Z instanceof Set?J:String(z++);J=q.call(Z,H,J)}X.items.push(vU.createNode(J,void 0,U))}}return X}}function _$($){let Z=L$.isScalar($)?$.value:$;if(Z&&typeof Z==="string")Z=Number(Z);return typeof Z==="number"&&Number.isInteger(Z)&&Z>=0?Z:null}cU.YAMLSeq=a9});var W0=O((rU)=>{var iU=K(),i9=n(),sU={collection:"seq",default:!0,nodeClass:i9.YAMLSeq,tag:"tag:yaml.org,2002:seq",resolve($,Z){if(!iU.isSeq($))Z("Expected a sequence for this tag");return $},createNode:($,Z,U)=>i9.YAMLSeq.from($,Z,U)};rU.seq=sU});var x0=O((eU)=>{var oU=S0(),tU={identify:($)=>typeof $==="string",default:!0,tag:"tag:yaml.org,2002:str",resolve:($)=>$,stringify($,Z,U,q){return Z=Object.assign({actualString:!0},Z),oU.stringifyString($,Z,U,q)}};eU.string=tU});var T$=O((Z3)=>{var s9=N(),r9={identify:($)=>$==null,createNode:()=>new s9.Scalar(null),default:!0,tag:"tag:yaml.org,2002:null",test:/^(?:~|[Nn]ull|NULL)?$/,resolve:()=>new s9.Scalar(null),stringify:({source:$},Z)=>typeof $==="string"&&r9.test.test($)?$:Z.options.nullStr};Z3.nullTag=r9});var Y2=O((X3)=>{var q3=N(),n9={identify:($)=>typeof $==="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:[Tt]rue|TRUE|[Ff]alse|FALSE)$/,resolve:($)=>new q3.Scalar($[0]==="t"||$[0]==="T"),stringify({source:$,value:Z},U){if($&&n9.test.test($)){let q=$[0]==="t"||$[0]==="T";if(Z===q)return $}return Z?U.options.trueStr:U.options.falseStr}};X3.boolTag=n9});var D0=O((H3)=>{function J3({format:$,minFractionDigits:Z,tag:U,value:q}){if(typeof q==="bigint")return String(q);let X=typeof q==="number"?q:Number(q);if(!isFinite(X))return isNaN(X)?".nan":X<0?"-.inf":".inf";let z=Object.is(q,-0)?"-0":JSON.stringify(q);if(!$&&Z&&(!U||U==="tag:yaml.org,2002:float")&&/^\d/.test(z)){let J=z.indexOf(".");if(J<0)J=z.length,z+=".";let H=Z-(z.length-J-1);while(H-- >0)z+="0"}return z}H3.stringifyNumber=J3});var V2=O((W3)=>{var G3=N(),B2=D0(),Y3={identify:($)=>typeof $==="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^(?:[-+]?\.(?:inf|Inf|INF)|\.nan|\.NaN|\.NAN)$/,resolve:($)=>$.slice(-3).toLowerCase()==="nan"?NaN:$[0]==="-"?Number.NEGATIVE_INFINITY:Number.POSITIVE_INFINITY,stringify:B2.stringifyNumber},B3={identify:($)=>typeof $==="number",default:!0,tag:"tag:yaml.org,2002:float",format:"EXP",test:/^[-+]?(?:\.[0-9]+|[0-9]+(?:\.[0-9]*)?)[eE][-+]?[0-9]+$/,resolve:($)=>parseFloat($),stringify($){let Z=Number($.value);return isFinite(Z)?Z.toExponential():B2.stringifyNumber($)}},V3={identify:($)=>typeof $==="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:\.[0-9]+|[0-9]+\.[0-9]*)$/,resolve($){let Z=new G3.Scalar(parseFloat($)),U=$.indexOf(".");if(U!==-1&&$[$.length-1]==="0")Z.minFractionDigits=$.length-U-1;return Z},stringify:B2.stringifyNumber};W3.float=V3;W3.floatExp=B3;W3.floatNaN=Y3});var D2=O((L3)=>{var o9=D0(),F$=($)=>typeof $==="bigint"||Number.isInteger($),W2=($,Z,U,{intAsBigInt:q})=>q?BigInt($):parseInt($.substring(Z),U);function t9($,Z,U){let{value:q}=$;if(F$(q)&&q>=0)return U+q.toString(Z);return o9.stringifyNumber($)}var P3={identify:($)=>F$($)&&$>=0,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^0o[0-7]+$/,resolve:($,Z,U)=>W2($,2,8,U),stringify:($)=>t9($,8,"0o")},R3={identify:F$,default:!0,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9]+$/,resolve:($,Z,U)=>W2($,0,10,U),stringify:o9.stringifyNumber},_3={identify:($)=>F$($)&&$>=0,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^0x[0-9a-fA-F]+$/,resolve:($,Z,U)=>W2($,2,16,U),stringify:($)=>t9($,16,"0x")};L3.int=R3;L3.intHex=_3;L3.intOct=P3});var e9=O((j3)=>{var A3=V0(),K3=T$(),w3=W0(),N3=x0(),b3=Y2(),I2=V2(),O2=D2(),C3=[A3.map,w3.seq,N3.string,K3.nullTag,b3.boolTag,O2.intOct,O2.int,O2.intHex,I2.floatNaN,I2.floatExp,I2.float];j3.schema=C3});var ZZ=O((k3)=>{var E3=N(),g3=V0(),f3=W0();function $Z($){return typeof $==="bigint"||Number.isInteger($)}var M$=({value:$})=>JSON.stringify($),y3=[{identify:($)=>typeof $==="string",default:!0,tag:"tag:yaml.org,2002:str",resolve:($)=>$,stringify:M$},{identify:($)=>$==null,createNode:()=>new E3.Scalar(null),default:!0,tag:"tag:yaml.org,2002:null",test:/^null$/,resolve:()=>null,stringify:M$},{identify:($)=>typeof $==="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^true$|^false$/,resolve:($)=>$==="true",stringify:M$},{identify:$Z,default:!0,tag:"tag:yaml.org,2002:int",test:/^-?(?:0|[1-9][0-9]*)$/,resolve:($,Z,{intAsBigInt:U})=>U?BigInt($):parseInt($,10),stringify:({value:$})=>$Z($)?$.toString():JSON.stringify($)},{identify:($)=>typeof $==="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^-?(?:0|[1-9][0-9]*)(?:\.[0-9]*)?(?:[eE][-+]?[0-9]+)?$/,resolve:($)=>parseFloat($),stringify:M$}],x3={default:!0,tag:"",test:/^/,resolve($,Z){return Z(`Unresolved plain scalar ${JSON.stringify($)}`),$}},h3=[g3.map,f3.seq].concat(y3,x3);k3.schema=h3});var R2=O((p3)=>{var h0=T0("buffer"),P2=N(),v3=S0(),m3={identify:($)=>$ instanceof Uint8Array,default:!1,tag:"tag:yaml.org,2002:binary",resolve($,Z){if(typeof h0.Buffer==="function")return h0.Buffer.from($,"base64");else if(typeof atob==="function"){let U=atob($.replace(/[\n\r]/g,"")),q=new Uint8Array(U.length);for(let X=0;X<U.length;++X)q[X]=U.charCodeAt(X);return q}else return Z("This environment does not support reading binary tags; either Buffer or atob is required"),$},stringify({comment:$,type:Z,value:U},q,X,z){if(!U)return"";let J=U,H;if(typeof h0.Buffer==="function")H=J instanceof h0.Buffer?J.toString("base64"):h0.Buffer.from(J.buffer).toString("base64");else if(typeof btoa==="function"){let Q="";for(let G=0;G<J.length;++G)Q+=String.fromCharCode(J[G]);H=btoa(Q)}else throw Error("This environment does not support writing binary tags; either Buffer or btoa is required");if(Z??(Z=P2.Scalar.BLOCK_LITERAL),Z!==P2.Scalar.QUOTE_DOUBLE){let Q=Math.max(q.options.lineWidth-q.indent.length,q.options.minContentWidth),G=Math.ceil(H.length/Q),W=Array(G);for(let Y=0,B=0;Y<G;++Y,B+=Q)W[Y]=H.substr(B,Q);H=W.join(Z===P2.Scalar.BLOCK_LITERAL?`
|
|
52
|
+
`:" ")}return v3.stringifyString({comment:$,type:Z,value:H},q,X,z)}};p3.binary=m3});var K$=O((i3)=>{var A$=K(),_2=i(),l3=N(),c3=n();function UZ($,Z){if(A$.isSeq($))for(let U=0;U<$.items.length;++U){let q=$.items[U];if(A$.isPair(q))continue;else if(A$.isMap(q)){if(q.items.length>1)Z("Each pair must have its own sequence indicator");let X=q.items[0]||new _2.Pair(new l3.Scalar(null));if(q.commentBefore)X.key.commentBefore=X.key.commentBefore?`${q.commentBefore}
|
|
53
|
+
${X.key.commentBefore}`:q.commentBefore;if(q.comment){let z=X.value??X.key;z.comment=z.comment?`${q.comment}
|
|
54
|
+
${z.comment}`:q.comment}q=X}$.items[U]=A$.isPair(q)?q:new _2.Pair(q)}else Z("Expected a sequence for this tag");return $}function qZ($,Z,U){let{replacer:q}=U,X=new c3.YAMLSeq($);X.tag="tag:yaml.org,2002:pairs";let z=0;if(Z&&Symbol.iterator in Object(Z))for(let J of Z){if(typeof q==="function")J=q.call(Z,String(z++),J);let H,Q;if(Array.isArray(J))if(J.length===2)H=J[0],Q=J[1];else throw TypeError(`Expected [key, value] tuple: ${J}`);else if(J&&J instanceof Object){let G=Object.keys(J);if(G.length===1)H=G[0],Q=J[H];else throw TypeError(`Expected tuple with one key, not ${G.length} keys`)}else H=J;X.items.push(_2.createPair(H,Q,U))}return X}var a3={collection:"seq",default:!1,tag:"tag:yaml.org,2002:pairs",resolve:UZ,createNode:qZ};i3.createPairs=qZ;i3.pairs=a3;i3.resolvePairs=UZ});var T2=O((e3)=>{var XZ=K(),L2=l(),k0=r(),o3=n(),zZ=K$();class U0 extends o3.YAMLSeq{constructor(){super();this.add=k0.YAMLMap.prototype.add.bind(this),this.delete=k0.YAMLMap.prototype.delete.bind(this),this.get=k0.YAMLMap.prototype.get.bind(this),this.has=k0.YAMLMap.prototype.has.bind(this),this.set=k0.YAMLMap.prototype.set.bind(this),this.tag=U0.tag}toJSON($,Z){if(!Z)return super.toJSON($);let U=new Map;if(Z?.onCreate)Z.onCreate(U);for(let q of this.items){let X,z;if(XZ.isPair(q))X=L2.toJS(q.key,"",Z),z=L2.toJS(q.value,X,Z);else X=L2.toJS(q,"",Z);if(U.has(X))throw Error("Ordered maps must not include duplicate keys");U.set(X,z)}return U}static from($,Z,U){let q=zZ.createPairs($,Z,U),X=new this;return X.items=q.items,X}}U0.tag="tag:yaml.org,2002:omap";var t3={collection:"seq",identify:($)=>$ instanceof Map,nodeClass:U0,default:!1,tag:"tag:yaml.org,2002:omap",resolve($,Z){let U=zZ.resolvePairs($,Z),q=[];for(let{key:X}of U.items)if(XZ.isScalar(X))if(q.includes(X.value))Z(`Ordered maps must not include duplicate keys: ${X.value}`);else q.push(X.value);return Object.assign(new U0,U)},createNode:($,Z,U)=>U0.from($,Z,U)};e3.YAMLOMap=U0;e3.omap=t3});var YZ=O((U5)=>{var JZ=N();function HZ({value:$,source:Z},U){if(Z&&($?QZ:GZ).test.test(Z))return Z;return $?U.options.trueStr:U.options.falseStr}var QZ={identify:($)=>$===!0,default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:Y|y|[Yy]es|YES|[Tt]rue|TRUE|[Oo]n|ON)$/,resolve:()=>new JZ.Scalar(!0),stringify:HZ},GZ={identify:($)=>$===!1,default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:N|n|[Nn]o|NO|[Ff]alse|FALSE|[Oo]ff|OFF)$/,resolve:()=>new JZ.Scalar(!1),stringify:HZ};U5.falseTag=GZ;U5.trueTag=QZ});var BZ=O((G5)=>{var z5=N(),F2=D0(),J5={identify:($)=>typeof $==="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^(?:[-+]?\.(?:inf|Inf|INF)|\.nan|\.NaN|\.NAN)$/,resolve:($)=>$.slice(-3).toLowerCase()==="nan"?NaN:$[0]==="-"?Number.NEGATIVE_INFINITY:Number.POSITIVE_INFINITY,stringify:F2.stringifyNumber},H5={identify:($)=>typeof $==="number",default:!0,tag:"tag:yaml.org,2002:float",format:"EXP",test:/^[-+]?(?:[0-9][0-9_]*)?(?:\.[0-9_]*)?[eE][-+]?[0-9]+$/,resolve:($)=>parseFloat($.replace(/_/g,"")),stringify($){let Z=Number($.value);return isFinite(Z)?Z.toExponential():F2.stringifyNumber($)}},Q5={identify:($)=>typeof $==="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:[0-9][0-9_]*)?\.[0-9_]*$/,resolve($){let Z=new z5.Scalar(parseFloat($.replace(/_/g,""))),U=$.indexOf(".");if(U!==-1){let q=$.substring(U+1).replace(/_/g,"");if(q[q.length-1]==="0")Z.minFractionDigits=q.length}return Z},stringify:F2.stringifyNumber};G5.float=Q5;G5.floatExp=H5;G5.floatNaN=J5});var WZ=O((P5)=>{var VZ=D0(),u0=($)=>typeof $==="bigint"||Number.isInteger($);function w$($,Z,U,{intAsBigInt:q}){let X=$[0];if(X==="-"||X==="+")Z+=1;if($=$.substring(Z).replace(/_/g,""),q){switch(U){case 2:$=`0b${$}`;break;case 8:$=`0o${$}`;break;case 16:$=`0x${$}`;break}let J=BigInt($);return X==="-"?BigInt(-1)*J:J}let z=parseInt($,U);return X==="-"?-1*z:z}function M2($,Z,U){let{value:q}=$;if(u0(q)){let X=q.toString(Z);return q<0?"-"+U+X.substr(1):U+X}return VZ.stringifyNumber($)}var W5={identify:u0,default:!0,tag:"tag:yaml.org,2002:int",format:"BIN",test:/^[-+]?0b[0-1_]+$/,resolve:($,Z,U)=>w$($,2,2,U),stringify:($)=>M2($,2,"0b")},D5={identify:u0,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^[-+]?0[0-7_]+$/,resolve:($,Z,U)=>w$($,1,8,U),stringify:($)=>M2($,8,"0")},I5={identify:u0,default:!0,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9][0-9_]*$/,resolve:($,Z,U)=>w$($,0,10,U),stringify:VZ.stringifyNumber},O5={identify:u0,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^[-+]?0x[0-9a-fA-F_]+$/,resolve:($,Z,U)=>w$($,2,16,U),stringify:($)=>M2($,16,"0x")};P5.int=I5;P5.intBin=W5;P5.intHex=O5;P5.intOct=D5});var A2=O((M5)=>{var C$=K(),N$=i(),b$=r();class q0 extends b$.YAMLMap{constructor($){super($);this.tag=q0.tag}add($){let Z;if(C$.isPair($))Z=$;else if($&&typeof $==="object"&&"key"in $&&"value"in $&&$.value===null)Z=new N$.Pair($.key,null);else Z=new N$.Pair($,null);if(!b$.findPair(this.items,Z.key))this.items.push(Z)}get($,Z){let U=b$.findPair(this.items,$);return!Z&&C$.isPair(U)?C$.isScalar(U.key)?U.key.value:U.key:U}set($,Z){if(typeof Z!=="boolean")throw Error(`Expected boolean value for set(key, value) in a YAML set, not ${typeof Z}`);let U=b$.findPair(this.items,$);if(U&&!Z)this.items.splice(this.items.indexOf(U),1);else if(!U&&Z)this.items.push(new N$.Pair($))}toJSON($,Z){return super.toJSON($,Z,Set)}toString($,Z,U){if(!$)return JSON.stringify(this);if(this.hasAllNullValues(!0))return super.toString(Object.assign({},$,{allNullValues:!0}),Z,U);else throw Error("Set items must all have null values")}static from($,Z,U){let{replacer:q}=U,X=new this($);if(Z&&Symbol.iterator in Object(Z))for(let z of Z){if(typeof q==="function")z=q.call(Z,z,z);X.items.push(N$.createPair(z,null,U))}return X}}q0.tag="tag:yaml.org,2002:set";var F5={collection:"map",identify:($)=>$ instanceof Set,nodeClass:q0,default:!1,tag:"tag:yaml.org,2002:set",createNode:($,Z,U)=>q0.from($,Z,U),resolve($,Z){if(C$.isMap($))if($.hasAllNullValues(!0))return Object.assign(new q0,$);else Z("Set items must all have null values");else Z("Expected a mapping for this tag");return $}};M5.YAMLSet=q0;M5.set=F5});var w2=O((C5)=>{var w5=D0();function K2($,Z){let U=$[0],q=U==="-"||U==="+"?$.substring(1):$,X=(J)=>Z?BigInt(J):Number(J),z=q.replace(/_/g,"").split(":").reduce((J,H)=>J*X(60)+X(H),X(0));return U==="-"?X(-1)*z:z}function DZ($){let{value:Z}=$,U=(J)=>J;if(typeof Z==="bigint")U=(J)=>BigInt(J);else if(isNaN(Z)||!isFinite(Z))return w5.stringifyNumber($);let q="";if(Z<0)q="-",Z*=U(-1);let X=U(60),z=[Z%X];if(Z<60)z.unshift(0);else if(Z=(Z-z[0])/X,z.unshift(Z%X),Z>=60)Z=(Z-z[0])/X,z.unshift(Z);return q+z.map((J)=>String(J).padStart(2,"0")).join(":").replace(/000000\d*$/,"")}var N5={identify:($)=>typeof $==="bigint"||Number.isInteger($),default:!0,tag:"tag:yaml.org,2002:int",format:"TIME",test:/^[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+$/,resolve:($,Z,{intAsBigInt:U})=>K2($,U),stringify:DZ},b5={identify:($)=>typeof $==="number",default:!0,tag:"tag:yaml.org,2002:float",format:"TIME",test:/^[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+\.[0-9_]*$/,resolve:($)=>K2($,!1),stringify:DZ},IZ={identify:($)=>$ 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($){let Z=$.match(IZ.test);if(!Z)throw Error("!!timestamp expects a date, starting with yyyy-mm-dd");let[,U,q,X,z,J,H]=Z.map(Number),Q=Z[7]?Number((Z[7]+"00").substr(1,3)):0,G=Date.UTC(U,q-1,X,z||0,J||0,H||0,Q),W=Z[8];if(W&&W!=="Z"){let Y=K2(W,!1);if(Math.abs(Y)<30)Y*=60;G-=60000*Y}return new Date(G)},stringify:({value:$})=>$?.toISOString().replace(/(T00:00:00)?\.000Z$/,"")??""};C5.floatTime=b5;C5.intTime=N5;C5.timestamp=IZ});var PZ=O((d5)=>{var g5=V0(),f5=T$(),y5=W0(),x5=x0(),h5=R2(),OZ=YZ(),N2=BZ(),j$=WZ(),k5=W$(),u5=T2(),v5=K$(),m5=A2(),b2=w2(),p5=[g5.map,y5.seq,x5.string,f5.nullTag,OZ.trueTag,OZ.falseTag,j$.intBin,j$.intOct,j$.int,j$.intHex,N2.floatNaN,N2.floatExp,N2.float,h5.binary,k5.merge,u5.omap,v5.pairs,m5.set,b2.intTime,b2.floatTime,b2.timestamp];d5.schema=p5});var NZ=O((t5)=>{var TZ=V0(),c5=T$(),FZ=W0(),a5=x0(),i5=Y2(),C2=V2(),j2=D2(),s5=e9(),r5=ZZ(),MZ=R2(),v0=W$(),AZ=T2(),KZ=K$(),RZ=PZ(),wZ=A2(),S$=w2(),_Z=new Map([["core",s5.schema],["failsafe",[TZ.map,FZ.seq,a5.string]],["json",r5.schema],["yaml11",RZ.schema],["yaml-1.1",RZ.schema]]),LZ={binary:MZ.binary,bool:i5.boolTag,float:C2.float,floatExp:C2.floatExp,floatNaN:C2.floatNaN,floatTime:S$.floatTime,int:j2.int,intHex:j2.intHex,intOct:j2.intOct,intTime:S$.intTime,map:TZ.map,merge:v0.merge,null:c5.nullTag,omap:AZ.omap,pairs:KZ.pairs,seq:FZ.seq,set:wZ.set,timestamp:S$.timestamp},n5={"tag:yaml.org,2002:binary":MZ.binary,"tag:yaml.org,2002:merge":v0.merge,"tag:yaml.org,2002:omap":AZ.omap,"tag:yaml.org,2002:pairs":KZ.pairs,"tag:yaml.org,2002:set":wZ.set,"tag:yaml.org,2002:timestamp":S$.timestamp};function o5($,Z,U){let q=_Z.get(Z);if(q&&!$)return U&&!q.includes(v0.merge)?q.concat(v0.merge):q.slice();let X=q;if(!X)if(Array.isArray($))X=[];else{let z=Array.from(_Z.keys()).filter((J)=>J!=="yaml11").map((J)=>JSON.stringify(J)).join(", ");throw Error(`Unknown schema "${Z}"; use one of ${z} or define customTags array`)}if(Array.isArray($))for(let z of $)X=X.concat(z);else if(typeof $==="function")X=$(X.slice());if(U)X=X.concat(v0.merge);return X.reduce((z,J)=>{let H=typeof J==="string"?LZ[J]:J;if(!H){let Q=JSON.stringify(J),G=Object.keys(LZ).map((W)=>JSON.stringify(W)).join(", ");throw Error(`Unknown custom tag ${Q}; use one of ${G}`)}if(!z.includes(H))z.push(H);return z},[])}t5.coreKnownTags=n5;t5.getTags=o5});var g2=O((z1)=>{var S2=K(),Z1=V0(),U1=W0(),q1=x0(),E$=NZ(),X1=($,Z)=>$.key<Z.key?-1:$.key>Z.key?1:0;class E2{constructor({compat:$,customTags:Z,merge:U,resolveKnownTags:q,schema:X,sortMapEntries:z,toStringDefaults:J}){this.compat=Array.isArray($)?E$.getTags($,"compat"):$?E$.getTags(null,$):null,this.name=typeof X==="string"&&X||"core",this.knownTags=q?E$.coreKnownTags:{},this.tags=E$.getTags(Z,this.name,U),this.toStringOptions=J??null,Object.defineProperty(this,S2.MAP,{value:Z1.map}),Object.defineProperty(this,S2.SCALAR,{value:q1.string}),Object.defineProperty(this,S2.SEQ,{value:U1.seq}),this.sortMapEntries=typeof z==="function"?z:z===!0?X1:null}clone(){let $=Object.create(E2.prototype,Object.getOwnPropertyDescriptors(this));return $.tags=this.tags.slice(),$}}z1.Schema=E2});var bZ=O((G1)=>{var H1=K(),f2=E0(),m0=C0();function Q1($,Z){let U=[],q=Z.directives===!0;if(Z.directives!==!1&&$.directives){let Q=$.directives.toString($);if(Q)U.push(Q),q=!0;else if($.directives.docStart)q=!0}if(q)U.push("---");let X=f2.createStringifyContext($,Z),{commentString:z}=X.options;if($.commentBefore){if(U.length!==1)U.unshift("");let Q=z($.commentBefore);U.unshift(m0.indentComment(Q,""))}let J=!1,H=null;if($.contents){if(H1.isNode($.contents)){if($.contents.spaceBefore&&q)U.push("");if($.contents.commentBefore){let W=z($.contents.commentBefore);U.push(m0.indentComment(W,""))}X.forceBlockIndent=!!$.comment,H=$.contents.comment}let Q=H?void 0:()=>J=!0,G=f2.stringify($.contents,X,()=>H=null,Q);if(H)G+=m0.lineComment(G,"",z(H));if((G[0]==="|"||G[0]===">")&&U[U.length-1]==="---")U[U.length-1]=`--- ${G}`;else U.push(G)}else U.push(f2.stringify($.contents,X));if($.directives?.docEnd)if($.comment){let Q=z($.comment);if(Q.includes(`
|
|
55
|
+
`))U.push("..."),U.push(m0.indentComment(Q,""));else U.push(`... ${Q}`)}else U.push("...");else{let Q=$.comment;if(Q&&J)Q=Q.replace(/^\n+/,"");if(Q){if((!J||H)&&U[U.length-1]!=="")U.push("");U.push(m0.indentComment(z(Q),""))}}return U.join(`
|
|
56
56
|
`)+`
|
|
57
|
-
`}
|
|
58
|
-
`;
|
|
57
|
+
`}G1.stringifyDocument=Q1});var p0=O((R1)=>{var B1=N0(),I0=H$(),g=K(),V1=i(),W1=l(),D1=g2(),I1=bZ(),y2=X$(),O1=$2(),P1=b0(),x2=e$();class h2{constructor($,Z,U){this.commentBefore=null,this.comment=null,this.errors=[],this.warnings=[],Object.defineProperty(this,g.NODE_TYPE,{value:g.DOC});let q=null;if(typeof Z==="function"||Array.isArray(Z))q=Z;else if(U===void 0&&Z)U=Z,Z=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 x2.Directives({version:z});this.setSchema(z,U),this.contents=$===void 0?null:this.createNode($,q,U)}clone(){let $=Object.create(h2.prototype,{[g.NODE_TYPE]:{value:g.DOC}});if($.commentBefore=this.commentBefore,$.comment=this.comment,$.errors=this.errors.slice(),$.warnings=this.warnings.slice(),$.options=Object.assign({},this.options),this.directives)$.directives=this.directives.clone();if($.schema=this.schema.clone(),$.contents=g.isNode(this.contents)?this.contents.clone($.schema):this.contents,this.range)$.range=this.range.slice();return $}add($){if(O0(this.contents))this.contents.add($)}addIn($,Z){if(O0(this.contents))this.contents.addIn($,Z)}createAlias($,Z){if(!$.anchor){let U=y2.anchorNames(this);$.anchor=!Z||U.has(Z)?y2.findNewAnchor(Z||"a",U):Z}return new B1.Alias($.anchor)}createNode($,Z,U){let q=void 0;if(typeof Z==="function")$=Z.call({"":$},"",$),q=Z;else if(Array.isArray(Z)){let V=(_)=>typeof _==="number"||_ instanceof String||_ instanceof Number,D=Z.filter(V).map(String);if(D.length>0)Z=Z.concat(D);q=Z}else if(U===void 0&&Z)U=Z,Z=void 0;let{aliasDuplicateObjects:X,anchorPrefix:z,flow:J,keepUndefined:H,onTagObj:Q,tag:G}=U??{},{onAnchor:W,setAnchors:Y,sourceObjects:B}=y2.createNodeAnchors(this,z||"a"),I={aliasDuplicateObjects:X??!0,keepUndefined:H??!1,onAnchor:W,onTagObj:Q,replacer:q,schema:this.schema,sourceObjects:B},P=P1.createNode($,G,I);if(J&&g.isCollection(P))P.flow=!0;return Y(),P}createPair($,Z,U={}){let q=this.createNode($,null,U),X=this.createNode(Z,null,U);return new V1.Pair(q,X)}delete($){return O0(this.contents)?this.contents.delete($):!1}deleteIn($){if(I0.isEmptyPath($)){if(this.contents==null)return!1;return this.contents=null,!0}return O0(this.contents)?this.contents.deleteIn($):!1}get($,Z){return g.isCollection(this.contents)?this.contents.get($,Z):void 0}getIn($,Z){if(I0.isEmptyPath($))return!Z&&g.isScalar(this.contents)?this.contents.value:this.contents;return g.isCollection(this.contents)?this.contents.getIn($,Z):void 0}has($){return g.isCollection(this.contents)?this.contents.has($):!1}hasIn($){if(I0.isEmptyPath($))return this.contents!==void 0;return g.isCollection(this.contents)?this.contents.hasIn($):!1}set($,Z){if(this.contents==null)this.contents=I0.collectionFromPath(this.schema,[$],Z);else if(O0(this.contents))this.contents.set($,Z)}setIn($,Z){if(I0.isEmptyPath($))this.contents=Z;else if(this.contents==null)this.contents=I0.collectionFromPath(this.schema,Array.from($),Z);else if(O0(this.contents))this.contents.setIn($,Z)}setSchema($,Z={}){if(typeof $==="number")$=String($);let U;switch($){case"1.1":if(this.directives)this.directives.yaml.version="1.1";else this.directives=new x2.Directives({version:"1.1"});U={resolveKnownTags:!1,schema:"yaml-1.1"};break;case"1.2":case"next":if(this.directives)this.directives.yaml.version=$;else this.directives=new x2.Directives({version:$});U={resolveKnownTags:!0,schema:"core"};break;case null:if(this.directives)delete this.directives;U=null;break;default:{let q=JSON.stringify($);throw Error(`Expected '1.1', '1.2' or null as first argument, but found: ${q}`)}}if(Z.schema instanceof Object)this.schema=Z.schema;else if(U)this.schema=new D1.Schema(Object.assign(U,Z));else throw Error("With a null YAML version, the { schema: Schema } option is required")}toJS({json:$,jsonArg:Z,mapAsMap:U,maxAliasCount:q,onAnchor:X,reviver:z}={}){let J={anchors:new Map,doc:this,keep:!$,mapAsMap:U===!0,mapKeyWarned:!1,maxAliasCount:typeof q==="number"?q:100},H=W1.toJS(this.contents,Z??"",J);if(typeof X==="function")for(let{count:Q,res:G}of J.anchors.values())X(G,Q);return typeof z==="function"?O1.applyReviver(z,{"":H},"",H):H}toJSON($,Z){return this.toJS({json:!0,jsonArg:$,mapAsMap:!1,onAnchor:Z})}toString($={}){if(this.errors.length>0)throw Error("Document with errors cannot be stringified");if("indent"in $&&(!Number.isInteger($.indent)||Number($.indent)<=0)){let Z=JSON.stringify($.indent);throw Error(`"indent" option must be a positive integer, not ${Z}`)}return I1.stringifyDocument(this,$)}}function O0($){if(g.isCollection($))return!0;throw Error("Expected a YAML collection as document contents")}R1.Document=h2});var d0=O((T1)=>{class g$ extends Error{constructor($,Z,U,q){super();this.name=$,this.code=U,this.message=q,this.pos=Z}}class CZ extends g${constructor($,Z,U){super("YAMLParseError",$,Z,U)}}class jZ extends g${constructor($,Z,U){super("YAMLWarning",$,Z,U)}}var L1=($,Z)=>(U)=>{if(U.pos[0]===-1)return;U.linePos=U.pos.map((H)=>Z.linePos(H));let{line:q,col:X}=U.linePos[0];U.message+=` at line ${q}, column ${X}`;let z=X-1,J=$.substring(Z.lineStarts[q-1],Z.lineStarts[q]).replace(/[\n\r]+$/,"");if(z>=60&&J.length>80){let H=Math.min(z-39,J.length-79);J="…"+J.substring(H),z-=H-1}if(J.length>80)J=J.substring(0,79)+"…";if(q>1&&/^ *$/.test(J.substring(0,z))){let H=$.substring(Z.lineStarts[q-2],Z.lineStarts[q-1]);if(H.length>80)H=H.substring(0,79)+`…
|
|
58
|
+
`;J=H+J}if(/[^ ]/.test(J)){let H=1,Q=U.linePos[1];if(Q?.line===q&&Q.col>X)H=Math.max(1,Math.min(Q.col-X,80-z));let G=" ".repeat(z)+"^".repeat(H);U.message+=`:
|
|
59
59
|
|
|
60
|
-
${
|
|
61
|
-
${
|
|
62
|
-
`}}
|
|
63
|
-
`))return!0;if(
|
|
64
|
-
`+V.comment;else
|
|
65
|
-
`+
|
|
66
|
-
`+
|
|
67
|
-
`+
|
|
68
|
-
`+b.comment;else
|
|
69
|
-
`+
|
|
70
|
-
`.repeat(Math.max(1,
|
|
71
|
-
`;for(let V=W;V<
|
|
72
|
-
`;else if(
|
|
73
|
-
`;else if(!
|
|
74
|
-
`)
|
|
60
|
+
${J}
|
|
61
|
+
${G}
|
|
62
|
+
`}};T1.YAMLError=g$;T1.YAMLParseError=CZ;T1.YAMLWarning=jZ;T1.prettifyError=L1});var l0=O((N1)=>{function w1($,{flow:Z,indicator:U,next:q,offset:X,onError:z,parentIndent:J,startOnNewline:H}){let Q=!1,G=H,W=H,Y="",B="",I=!1,P=!1,V=null,D=null,_=null,L=null,T=null,F=null,M=null;for(let R of $){if(P){if(R.type!=="space"&&R.type!=="newline"&&R.type!=="comma")z(R.offset,"MISSING_CHAR","Tags and anchors must be separated from the next token by white space");P=!1}if(V){if(G&&R.type!=="comment"&&R.type!=="newline")z(V,"TAB_AS_INDENT","Tabs are not allowed as indentation");V=null}switch(R.type){case"space":if(!Z&&(U!=="doc-start"||q?.type!=="flow-collection")&&R.source.includes("\t"))V=R;W=!0;break;case"comment":{if(!W)z(R,"MISSING_CHAR","Comments must be separated from other tokens by white space characters");let b=R.source.substring(1)||" ";if(!Y)Y=b;else Y+=B+b;B="",G=!1;break}case"newline":if(G){if(Y)Y+=R.source;else if(!F||U!=="seq-item-ind")Q=!0}else B+=R.source;if(G=!0,I=!0,D||_)L=R;W=!0;break;case"anchor":if(D)z(R,"MULTIPLE_ANCHORS","A node can have at most one anchor");if(R.source.endsWith(":"))z(R.offset+R.source.length-1,"BAD_ALIAS","Anchor ending in : is ambiguous",!0);D=R,M??(M=R.offset),G=!1,W=!1,P=!0;break;case"tag":{if(_)z(R,"MULTIPLE_TAGS","A node can have at most one tag");_=R,M??(M=R.offset),G=!1,W=!1,P=!0;break}case U:if(D||_)z(R,"BAD_PROP_ORDER",`Anchors and tags must be after the ${R.source} indicator`);if(F)z(R,"UNEXPECTED_TOKEN",`Unexpected ${R.source} in ${Z??"collection"}`);F=R,G=U==="seq-item-ind"||U==="explicit-key-ind",W=!1;break;case"comma":if(Z){if(T)z(R,"UNEXPECTED_TOKEN",`Unexpected , in ${Z}`);T=R,G=!1,W=!1;break}default:z(R,"UNEXPECTED_TOKEN",`Unexpected ${R.type} token`),G=!1,W=!1}}let A=$[$.length-1],w=A?A.offset+A.source.length:X;if(P&&q&&q.type!=="space"&&q.type!=="newline"&&q.type!=="comma"&&(q.type!=="scalar"||q.source!==""))z(q.offset,"MISSING_CHAR","Tags and anchors must be separated from the next token by white space");if(V&&(G&&V.indent<=J||q?.type==="block-map"||q?.type==="block-seq"))z(V,"TAB_AS_INDENT","Tabs are not allowed as indentation");return{comma:T,found:F,spaceBefore:Q,comment:Y,hasNewline:I,anchor:D,tag:_,newlineAfterProp:L,end:w,start:M??w}}N1.resolveProps=w1});var f$=O((C1)=>{function k2($){if(!$)return null;switch($.type){case"alias":case"scalar":case"double-quoted-scalar":case"single-quoted-scalar":if($.source.includes(`
|
|
63
|
+
`))return!0;if($.end){for(let Z of $.end)if(Z.type==="newline")return!0}return!1;case"flow-collection":for(let Z of $.items){for(let U of Z.start)if(U.type==="newline")return!0;if(Z.sep){for(let U of Z.sep)if(U.type==="newline")return!0}if(k2(Z.key)||k2(Z.value))return!0}return!1;default:return!0}}C1.containsNewline=k2});var u2=O((g1)=>{var S1=f$();function E1($,Z,U){if(Z?.type==="flow-collection"){let q=Z.end[0];if(q.indent===$&&(q.source==="]"||q.source==="}")&&S1.containsNewline(Z))U(q,"BAD_INDENT","Flow end indicator should be more indented than parent",!0)}}g1.flowIndentCheck=E1});var v2=O((x1)=>{var SZ=K();function y1($,Z,U){let{uniqueKeys:q}=$.options;if(q===!1)return!1;let X=typeof q==="function"?q:(z,J)=>z===J||SZ.isScalar(z)&&SZ.isScalar(J)&&z.value===J.value;return Z.some((z)=>X(z.key,U))}x1.mapIncludes=y1});var xZ=O((p1)=>{var EZ=i(),k1=r(),gZ=l0(),u1=f$(),fZ=u2(),v1=v2(),yZ="All mapping items must start at the same column";function m1({composeNode:$,composeEmptyNode:Z},U,q,X,z){let H=new(z?.nodeClass??k1.YAMLMap)(U.schema);if(U.atRoot)U.atRoot=!1;let Q=q.offset,G=null;for(let W of q.items){let{start:Y,key:B,sep:I,value:P}=W,V=gZ.resolveProps(Y,{indicator:"explicit-key-ind",next:B??I?.[0],offset:Q,onError:X,parentIndent:q.indent,startOnNewline:!0}),D=!V.found;if(D){if(B){if(B.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 B&&B.indent!==q.indent)X(Q,"BAD_INDENT",yZ)}if(!V.anchor&&!V.tag&&!I){if(G=V.end,V.comment)if(H.comment)H.comment+=`
|
|
64
|
+
`+V.comment;else H.comment=V.comment;continue}if(V.newlineAfterProp||u1.containsNewline(B))X(B??Y[Y.length-1],"MULTILINE_IMPLICIT_KEY","Implicit keys need to be on a single line")}else if(V.found?.indent!==q.indent)X(Q,"BAD_INDENT",yZ);U.atKey=!0;let _=V.end,L=B?$(U,B,V,X):Z(U,_,Y,null,V,X);if(U.schema.compat)fZ.flowIndentCheck(q.indent,B,X);if(U.atKey=!1,v1.mapIncludes(U,H.items,L))X(_,"DUPLICATE_KEY","Map keys must be unique");let T=gZ.resolveProps(I??[],{indicator:"map-value-ind",next:P,offset:L.range[2],onError:X,parentIndent:q.indent,startOnNewline:!B||B.type==="block-scalar"});if(Q=T.end,T.found){if(D){if(P?.type==="block-map"&&!T.hasNewline)X(Q,"BLOCK_AS_IMPLICIT_KEY","Nested mappings are not allowed in compact mappings");if(U.options.strict&&V.start<T.found.offset-1024)X(L.range,"KEY_OVER_1024_CHARS","The : indicator must be at most 1024 chars after the start of an implicit block mapping key")}let F=P?$(U,P,T,X):Z(U,Q,I,null,T,X);if(U.schema.compat)fZ.flowIndentCheck(q.indent,P,X);Q=F.range[2];let M=new EZ.Pair(L,F);if(U.options.keepSourceTokens)M.srcToken=W;H.items.push(M)}else{if(D)X(L.range,"MISSING_CHAR","Implicit map keys need to be followed by map values");if(T.comment)if(L.comment)L.comment+=`
|
|
65
|
+
`+T.comment;else L.comment=T.comment;let F=new EZ.Pair(L);if(U.options.keepSourceTokens)F.srcToken=W;H.items.push(F)}}if(G&&G<Q)X(G,"IMPOSSIBLE","Map comment with trailing content");return H.range=[q.offset,Q,G??Q],H}p1.resolveBlockMap=m1});var hZ=O((s1)=>{var l1=n(),c1=l0(),a1=u2();function i1({composeNode:$,composeEmptyNode:Z},U,q,X,z){let H=new(z?.nodeClass??l1.YAMLSeq)(U.schema);if(U.atRoot)U.atRoot=!1;if(U.atKey)U.atKey=!1;let Q=q.offset,G=null;for(let{start:W,value:Y}of q.items){let B=c1.resolveProps(W,{indicator:"seq-item-ind",next:Y,offset:Q,onError:X,parentIndent:q.indent,startOnNewline:!0});if(!B.found)if(B.anchor||B.tag||Y)if(Y?.type==="block-seq")X(B.end,"BAD_INDENT","All sequence items must start at the same column");else X(Q,"MISSING_CHAR","Sequence item without - indicator");else{if(G=B.end,B.comment)H.comment=B.comment;continue}let I=Y?$(U,Y,B,X):Z(U,B.end,W,null,B,X);if(U.schema.compat)a1.flowIndentCheck(q.indent,Y,X);Q=I.range[2],H.items.push(I)}return H.range=[q.offset,Q,G??Q],H}s1.resolveBlockSeq=i1});var P0=O((o1)=>{function n1($,Z,U,q){let X="";if($){let z=!1,J="";for(let H of $){let{source:Q,type:G}=H;switch(G){case"space":z=!0;break;case"comment":{if(U&&!z)q(H,"MISSING_CHAR","Comments must be separated from other tokens by white space characters");let W=Q.substring(1)||" ";if(!X)X=W;else X+=J+W;J="";break}case"newline":if(X)J+=Q;z=!0;break;default:q(H,"UNEXPECTED_TOKEN",`Unexpected ${G} at node end`)}Z+=Q.length}}return{comment:X,offset:Z}}o1.resolveEnd=n1});var vZ=O((J7)=>{var e1=K(),$7=i(),kZ=r(),Z7=n(),U7=P0(),uZ=l0(),q7=f$(),X7=v2(),m2="Block collections are not allowed within flow collections",p2=($)=>$&&($.type==="block-map"||$.type==="block-seq");function z7({composeNode:$,composeEmptyNode:Z},U,q,X,z){let J=q.start.source==="{",H=J?"flow map":"flow sequence",G=new(z?.nodeClass??(J?kZ.YAMLMap:Z7.YAMLSeq))(U.schema);G.flow=!0;let W=U.atRoot;if(W)U.atRoot=!1;if(U.atKey)U.atKey=!1;let Y=q.offset+q.start.source.length;for(let D=0;D<q.items.length;++D){let _=q.items[D],{start:L,key:T,sep:F,value:M}=_,A=uZ.resolveProps(L,{flow:H,indicator:"explicit-key-ind",next:T??F?.[0],offset:Y,onError:X,parentIndent:q.indent,startOnNewline:!1});if(!A.found){if(!A.anchor&&!A.tag&&!F&&!M){if(D===0&&A.comma)X(A.comma,"UNEXPECTED_TOKEN",`Unexpected , in ${H}`);else if(D<q.items.length-1)X(A.start,"UNEXPECTED_TOKEN",`Unexpected empty item in ${H}`);if(A.comment)if(G.comment)G.comment+=`
|
|
66
|
+
`+A.comment;else G.comment=A.comment;Y=A.end;continue}if(!J&&U.options.strict&&q7.containsNewline(T))X(T,"MULTILINE_IMPLICIT_KEY","Implicit keys of flow sequence pairs need to be on a single line")}if(D===0){if(A.comma)X(A.comma,"UNEXPECTED_TOKEN",`Unexpected , in ${H}`)}else{if(!A.comma)X(A.start,"MISSING_CHAR",`Missing , between ${H} items`);if(A.comment){let w="";$:for(let R of L)switch(R.type){case"comma":case"space":break;case"comment":w=R.source.substring(1);break $;default:break $}if(w){let R=G.items[G.items.length-1];if(e1.isPair(R))R=R.value??R.key;if(R.comment)R.comment+=`
|
|
67
|
+
`+w;else R.comment=w;A.comment=A.comment.substring(w.length+1)}}}if(!J&&!F&&!A.found){let w=M?$(U,M,A,X):Z(U,A.end,F,null,A,X);if(G.items.push(w),Y=w.range[2],p2(M))X(w.range,"BLOCK_IN_FLOW",m2)}else{U.atKey=!0;let w=A.end,R=T?$(U,T,A,X):Z(U,w,L,null,A,X);if(p2(T))X(R.range,"BLOCK_IN_FLOW",m2);U.atKey=!1;let b=uZ.resolveProps(F??[],{flow:H,indicator:"map-value-ind",next:M,offset:R.range[2],onError:X,parentIndent:q.indent,startOnNewline:!1});if(b.found){if(!J&&!A.found&&U.options.strict){if(F)for(let C of F){if(C===b.found)break;if(C.type==="newline"){X(C,"MULTILINE_IMPLICIT_KEY","Implicit keys of flow sequence pairs need to be on a single line");break}}if(A.start<b.found.offset-1024)X(b.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 ${H}`);else X(b.start,"MISSING_CHAR",`Missing , or : between ${H} items`);let p=M?$(U,M,b,X):b.found?Z(U,b.end,F,null,b,X):null;if(p){if(p2(M))X(p.range,"BLOCK_IN_FLOW",m2)}else if(b.comment)if(R.comment)R.comment+=`
|
|
68
|
+
`+b.comment;else R.comment=b.comment;let J0=new $7.Pair(R,p);if(U.options.keepSourceTokens)J0.srcToken=_;if(J){let C=G;if(X7.mapIncludes(U,C.items,R))X(w,"DUPLICATE_KEY","Map keys must be unique");C.items.push(J0)}else{let C=new kZ.YAMLMap(U.schema);C.flow=!0,C.items.push(J0);let Y9=(p??R).range;C.range=[R.range[0],Y9[1],Y9[2]],G.items.push(C)}Y=p?p.range[2]:b.end}}let B=J?"}":"]",[I,...P]=q.end,V=Y;if(I?.source===B)V=I.offset+I.source.length;else{let D=H[0].toUpperCase()+H.substring(1),_=W?`${D} must end with a ${B}`:`${D} in block collection must be sufficiently indented and end with a ${B}`;if(X(Y,W?"MISSING_CHAR":"BAD_INDENT",_),I&&I.source.length!==1)P.unshift(I)}if(P.length>0){let D=U7.resolveEnd(P,V,U.options.strict,X);if(D.comment)if(G.comment)G.comment+=`
|
|
69
|
+
`+D.comment;else G.comment=D.comment;G.range=[q.offset,V,D.offset]}else G.range=[q.offset,V,V];return G}J7.resolveFlowCollection=z7});var mZ=O((O7)=>{var Q7=K(),G7=N(),Y7=r(),B7=n(),V7=xZ(),W7=hZ(),D7=vZ();function d2($,Z,U,q,X,z){let J=U.type==="block-map"?V7.resolveBlockMap($,Z,U,q,z):U.type==="block-seq"?W7.resolveBlockSeq($,Z,U,q,z):D7.resolveFlowCollection($,Z,U,q,z),H=J.constructor;if(X==="!"||X===H.tagName)return J.tag=H.tagName,J;if(X)J.tag=X;return J}function I7($,Z,U,q,X){let z=q.tag,J=!z?null:Z.directives.tagName(z.source,(B)=>X(z,"TAG_RESOLVE_FAILED",B));if(U.type==="block-seq"){let{anchor:B,newlineAfterProp:I}=q,P=B&&z?B.offset>z.offset?B:z:B??z;if(P&&(!I||I.offset<P.offset))X(P,"MISSING_CHAR","Missing newline after block sequence props")}let H=U.type==="block-map"?"map":U.type==="block-seq"?"seq":U.start.source==="{"?"map":"seq";if(!z||!J||J==="!"||J===Y7.YAMLMap.tagName&&H==="map"||J===B7.YAMLSeq.tagName&&H==="seq")return d2($,Z,U,X,J);let Q=Z.schema.tags.find((B)=>B.tag===J&&B.collection===H);if(!Q){let B=Z.schema.knownTags[J];if(B?.collection===H)Z.schema.tags.push(Object.assign({},B,{default:!1})),Q=B;else{if(B)X(z,"BAD_COLLECTION_TYPE",`${B.tag} used for ${H} collection, but expects ${B.collection??"scalar"}`,!0);else X(z,"TAG_RESOLVE_FAILED",`Unresolved tag: ${J}`,!0);return d2($,Z,U,X,J)}}let G=d2($,Z,U,X,J,Q),W=Q.resolve?.(G,(B)=>X(z,"TAG_RESOLVE_FAILED",B),Z.options)??G,Y=Q7.isNode(W)?W:new G7.Scalar(W);if(Y.range=G.range,Y.tag=J,Q?.format)Y.format=Q.format;return Y}O7.composeCollection=I7});var c2=O((T7)=>{var l2=N();function R7($,Z,U){let q=Z.offset,X=_7(Z,$.options.strict,U);if(!X)return{value:"",type:null,comment:"",range:[q,q,q]};let z=X.mode===">"?l2.Scalar.BLOCK_FOLDED:l2.Scalar.BLOCK_LITERAL,J=Z.source?L7(Z.source):[],H=J.length;for(let V=J.length-1;V>=0;--V){let D=J[V][1];if(D===""||D==="\r")H=V;else break}if(H===0){let V=X.chomp==="+"&&J.length>0?`
|
|
70
|
+
`.repeat(Math.max(1,J.length-1)):"",D=q+X.length;if(Z.source)D+=Z.source.length;return{value:V,type:z,comment:X.comment,range:[q,D,D]}}let Q=Z.indent+X.indent,G=Z.offset+X.length,W=0;for(let V=0;V<H;++V){let[D,_]=J[V];if(_===""||_==="\r"){if(X.indent===0&&D.length>Q)Q=D.length}else{if(D.length<Q)U(G+D.length,"MISSING_CHAR","Block scalars with more-indented leading empty lines must use an explicit indentation indicator");if(X.indent===0)Q=D.length;if(W=V,Q===0&&!$.atRoot)U(G,"BAD_INDENT","Block scalar values in collections must be indented");break}G+=D.length+_.length+1}for(let V=J.length-1;V>=H;--V)if(J[V][0].length>Q)H=V+1;let Y="",B="",I=!1;for(let V=0;V<W;++V)Y+=J[V][0].slice(Q)+`
|
|
71
|
+
`;for(let V=W;V<H;++V){let[D,_]=J[V];G+=D.length+_.length+1;let L=_[_.length-1]==="\r";if(L)_=_.slice(0,-1);if(_&&D.length<Q){let F=`Block scalar lines must not be less indented than their ${X.indent?"explicit indentation indicator":"first line"}`;U(G-_.length-(L?2:1),"BAD_INDENT",F),D=""}if(z===l2.Scalar.BLOCK_LITERAL)Y+=B+D.slice(Q)+_,B=`
|
|
72
|
+
`;else if(D.length>Q||_[0]==="\t"){if(B===" ")B=`
|
|
73
|
+
`;else if(!I&&B===`
|
|
74
|
+
`)B=`
|
|
75
75
|
|
|
76
|
-
`;B
|
|
77
|
-
`,
|
|
78
|
-
`)
|
|
79
|
-
`;else
|
|
80
|
-
`;else B
|
|
81
|
-
`+
|
|
82
|
-
`)
|
|
83
|
-
`;break;default:
|
|
84
|
-
`}let
|
|
76
|
+
`;Y+=B+D.slice(Q)+_,B=`
|
|
77
|
+
`,I=!0}else if(_==="")if(B===`
|
|
78
|
+
`)Y+=`
|
|
79
|
+
`;else B=`
|
|
80
|
+
`;else Y+=B+_,B=" ",I=!1}switch(X.chomp){case"-":break;case"+":for(let V=H;V<J.length;++V)Y+=`
|
|
81
|
+
`+J[V][0].slice(Q);if(Y[Y.length-1]!==`
|
|
82
|
+
`)Y+=`
|
|
83
|
+
`;break;default:Y+=`
|
|
84
|
+
`}let P=q+X.length+Z.source.length;return{value:Y,type:z,comment:X.comment,range:[q,P,P]}}function _7({offset:$,props:Z},U,q){if(Z[0].type!=="block-scalar-header")return q(Z[0],"IMPOSSIBLE","Block scalar header not found"),null;let{source:X}=Z[0],z=X[0],J=0,H="",Q=-1;for(let B=1;B<X.length;++B){let I=X[B];if(!H&&(I==="-"||I==="+"))H=I;else{let P=Number(I);if(!J&&P)J=P;else if(Q===-1)Q=$+B}}if(Q!==-1)q(Q,"UNEXPECTED_TOKEN",`Block scalar header includes extra characters: ${X}`);let G=!1,W="",Y=X.length;for(let B=1;B<Z.length;++B){let I=Z[B];switch(I.type){case"space":G=!0;case"newline":Y+=I.source.length;break;case"comment":if(U&&!G)q(I,"MISSING_CHAR","Comments must be separated from other tokens by white space characters");Y+=I.source.length,W=I.source.substring(1);break;case"error":q(I,"UNEXPECTED_TOKEN",I.message),Y+=I.source.length;break;default:{let P=`Unexpected token in block scalar header: ${I.type}`;q(I,"UNEXPECTED_TOKEN",P);let V=I.source;if(V&&typeof V==="string")Y+=V.length}}}return{mode:z,indent:J,chomp:H,comment:W,length:Y}}function L7($){let Z=$.split(/\n( *)/),U=Z[0],q=U.match(/^( *)/),z=[q?.[1]?[q[1],U.slice(q[1].length)]:["",U]];for(let J=1;J<Z.length;J+=2)z.push([Z[J],Z[J+1]]);return z}T7.resolveBlockScalar=R7});var i2=O((S7)=>{var a2=N(),M7=P0();function A7($,Z,U){let{offset:q,type:X,source:z,end:J}=$,H,Q,G=(B,I,P)=>U(q+B,I,P);switch(X){case"scalar":H=a2.Scalar.PLAIN,Q=K7(z,G);break;case"single-quoted-scalar":H=a2.Scalar.QUOTE_SINGLE,Q=w7(z,G);break;case"double-quoted-scalar":H=a2.Scalar.QUOTE_DOUBLE,Q=N7(z,G);break;default:return U($,"UNEXPECTED_TOKEN",`Expected a flow scalar value, but found: ${X}`),{value:"",type:null,comment:"",range:[q,q+z.length,q+z.length]}}let W=q+z.length,Y=M7.resolveEnd(J,W,Z,U);return{value:Q,type:H,comment:Y.comment,range:[q,W,Y.offset]}}function K7($,Z){let U="";switch($[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 ${$[0]}`;break}case"@":case"`":{U=`reserved character ${$[0]}`;break}}if(U)Z(0,"BAD_SCALAR_START",`Plain value cannot start with ${U}`);return pZ($)}function w7($,Z){if($[$.length-1]!=="'"||$.length===1)Z($.length,"MISSING_CHAR","Missing closing 'quote");return pZ($.slice(1,-1)).replace(/''/g,"'")}function pZ($){let Z,U;try{Z=new RegExp(`(.*?)(?<![ ])[ ]*\r?
|
|
85
85
|
`,"sy"),U=new RegExp(`[ ]*(.*?)(?:(?<![ ])[ ]*)?\r?
|
|
86
|
-
`,"sy")}catch{
|
|
87
|
-
`)
|
|
88
|
-
`;else
|
|
89
|
-
`)continue;if(
|
|
90
|
-
`){let{fold:z,offset:
|
|
91
|
-
`){z
|
|
92
|
-
`){z
|
|
93
|
-
`&&!(
|
|
94
|
-
`))U+=
|
|
95
|
-
`||
|
|
96
|
-
`)break;if(
|
|
86
|
+
`,"sy")}catch{Z=/(.*?)[ \t]*\r?\n/sy,U=/[ \t]*(.*?)[ \t]*\r?\n/sy}let q=Z.exec($);if(!q)return $;let X=q[1],z=" ",J=Z.lastIndex;U.lastIndex=J;while(q=U.exec($)){if(q[1]==="")if(z===`
|
|
87
|
+
`)X+=z;else z=`
|
|
88
|
+
`;else X+=z+q[1],z=" ";J=U.lastIndex}let H=/[ \t]*(.*)/sy;return H.lastIndex=J,q=H.exec($),X+z+(q?.[1]??"")}function N7($,Z){let U="";for(let q=1;q<$.length-1;++q){let X=$[q];if(X==="\r"&&$[q+1]===`
|
|
89
|
+
`)continue;if(X===`
|
|
90
|
+
`){let{fold:z,offset:J}=b7($,q);U+=z,q=J}else if(X==="\\"){let z=$[++q],J=C7[z];if(J)U+=J;else if(z===`
|
|
91
|
+
`){z=$[q+1];while(z===" "||z==="\t")z=$[++q+1]}else if(z==="\r"&&$[q+1]===`
|
|
92
|
+
`){z=$[++q+1];while(z===" "||z==="\t")z=$[++q+1]}else if(z==="x"||z==="u"||z==="U"){let H={x:2,u:4,U:8}[z];U+=j7($,q+1,H,Z),q+=H}else{let H=$.substr(q-1,2);Z(q-1,"BAD_DQ_ESCAPE",`Invalid escape sequence ${H}`),U+=H}}else if(X===" "||X==="\t"){let z=q,J=$[q+1];while(J===" "||J==="\t")J=$[++q+1];if(J!==`
|
|
93
|
+
`&&!(J==="\r"&&$[q+2]===`
|
|
94
|
+
`))U+=q>z?$.slice(z,q+1):X}else U+=X}if($[$.length-1]!=='"'||$.length===1)Z($.length,"MISSING_CHAR",'Missing closing "quote');return U}function b7($,Z){let U="",q=$[Z+1];while(q===" "||q==="\t"||q===`
|
|
95
|
+
`||q==="\r"){if(q==="\r"&&$[Z+2]!==`
|
|
96
|
+
`)break;if(q===`
|
|
97
97
|
`)U+=`
|
|
98
|
-
|
|
99
|
-
`,r:"\r",t:"\t",v:"\v",N:"
",_:" ",L:"\u2028",P:"\u2029"," ":" ",'"':'"',"/":"/","\\":"\\","\t":"\t"};function
|
|
98
|
+
`;Z+=1,q=$[Z+1]}if(!U)U=" ";return{fold:U,offset:Z}}var C7={"0":"\x00",a:"\x07",b:"\b",e:"\x1B",f:"\f",n:`
|
|
99
|
+
`,r:"\r",t:"\t",v:"\v",N:"
",_:" ",L:"\u2028",P:"\u2029"," ":" ",'"':'"',"/":"/","\\":"\\","\t":"\t"};function j7($,Z,U,q){let X=$.substr(Z,U),J=X.length===U&&/^[0-9a-fA-F]+$/.test(X)?parseInt(X,16):NaN;if(isNaN(J)){let H=$.substr(Z-2,U+2);return q(Z-2,"BAD_DQ_ESCAPE",`Invalid escape sequence ${H}`),H}return String.fromCodePoint(J)}S7.resolveFlowScalar=A7});var lZ=O((k7)=>{var X0=K(),dZ=N(),g7=c2(),f7=i2();function y7($,Z,U,q){let{value:X,type:z,comment:J,range:H}=Z.type==="block-scalar"?g7.resolveBlockScalar($,Z,q):f7.resolveFlowScalar(Z,$.options.strict,q),Q=U?$.directives.tagName(U.source,(Y)=>q(U,"TAG_RESOLVE_FAILED",Y)):null,G;if($.options.stringKeys&&$.atKey)G=$.schema[X0.SCALAR];else if(Q)G=x7($.schema,X,Q,U,q);else if(Z.type==="scalar")G=h7($,X,Z,q);else G=$.schema[X0.SCALAR];let W;try{let Y=G.resolve(X,(B)=>q(U??Z,"TAG_RESOLVE_FAILED",B),$.options);W=X0.isScalar(Y)?Y:new dZ.Scalar(Y)}catch(Y){let B=Y instanceof Error?Y.message:String(Y);q(U??Z,"TAG_RESOLVE_FAILED",B),W=new dZ.Scalar(X)}if(W.range=H,W.source=X,z)W.type=z;if(Q)W.tag=Q;if(G.format)W.format=G.format;if(J)W.comment=J;return W}function x7($,Z,U,q,X){if(U==="!")return $[X0.SCALAR];let z=[];for(let H of $.tags)if(!H.collection&&H.tag===U)if(H.default&&H.test)z.push(H);else return H;for(let H of z)if(H.test?.test(Z))return H;let J=$.knownTags[U];if(J&&!J.collection)return $.tags.push(Object.assign({},J,{default:!1,test:void 0})),J;return X(q,"TAG_RESOLVE_FAILED",`Unresolved tag: ${U}`,U!=="tag:yaml.org,2002:str"),$[X0.SCALAR]}function h7({atKey:$,directives:Z,schema:U},q,X,z){let J=U.tags.find((H)=>(H.default===!0||$&&H.default==="key")&&H.test?.test(q))||U[X0.SCALAR];if(U.compat){let H=U.compat.find((Q)=>Q.default&&Q.test?.test(q))??U[X0.SCALAR];if(J.tag!==H.tag){let Q=Z.tagString(J.tag),G=Z.tagString(H.tag),W=`Value may be parsed as either ${Q} or ${G}`;z(X,"TAG_RESOLVE_FAILED",W,!0)}}return J}k7.composeScalar=y7});var cZ=O((m7)=>{function v7($,Z,U){if(Z){U??(U=Z.length);for(let q=U-1;q>=0;--q){let X=Z[q];switch(X.type){case"space":case"comment":case"newline":$-=X.source.length;continue}X=Z[++q];while(X?.type==="space")$+=X.source.length,X=Z[++q];break}}return $}m7.emptyScalarPosition=v7});var sZ=O((n7)=>{var d7=N0(),l7=K(),c7=mZ(),aZ=lZ(),a7=P0(),i7=cZ(),s7={composeNode:iZ,composeEmptyNode:s2};function iZ($,Z,U,q){let X=$.atKey,{spaceBefore:z,comment:J,anchor:H,tag:Q}=U,G,W=!0;switch(Z.type){case"alias":if(G=r7($,Z,q),H||Q)q(Z,"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=aZ.composeScalar($,Z,Q,q),H)G.anchor=H.source.substring(1);break;case"block-map":case"block-seq":case"flow-collection":if(G=c7.composeCollection(s7,$,Z,U,q),H)G.anchor=H.source.substring(1);break;default:{let Y=Z.type==="error"?Z.message:`Unsupported token (type: ${Z.type})`;q(Z,"UNEXPECTED_TOKEN",Y),G=s2($,Z.offset,void 0,null,U,q),W=!1}}if(H&&G.anchor==="")q(H,"BAD_ALIAS","Anchor cannot be an empty string");if(X&&$.options.stringKeys&&(!l7.isScalar(G)||typeof G.value!=="string"||G.tag&&G.tag!=="tag:yaml.org,2002:str"))q(Q??Z,"NON_STRING_KEY","With stringKeys, all keys must be strings");if(z)G.spaceBefore=!0;if(J)if(Z.type==="scalar"&&Z.source==="")G.comment=J;else G.commentBefore=J;if($.options.keepSourceTokens&&W)G.srcToken=Z;return G}function s2($,Z,U,q,{spaceBefore:X,comment:z,anchor:J,tag:H,end:Q},G){let W={type:"scalar",offset:i7.emptyScalarPosition(Z,U,q),indent:-1,source:""},Y=aZ.composeScalar($,W,H,G);if(J){if(Y.anchor=J.source.substring(1),Y.anchor==="")G(J,"BAD_ALIAS","Anchor cannot be an empty string")}if(X)Y.spaceBefore=!0;if(z)Y.comment=z,Y.range[2]=Q;return Y}function r7({options:$},{offset:Z,source:U,end:q},X){let z=new d7.Alias(U.substring(1));if(z.source==="")X(Z,"BAD_ALIAS","Alias cannot be an empty string");if(z.source.endsWith(":"))X(Z+U.length-1,"BAD_ALIAS","Alias ending in : is ambiguous",!0);let J=Z+U.length,H=a7.resolveEnd(q,J,$.strict,X);if(z.range=[Z,J,H.offset],H.comment)z.comment=H.comment;return z}n7.composeEmptyNode=s2;n7.composeNode=iZ});var nZ=O((qq)=>{var e7=p0(),rZ=sZ(),$q=P0(),Zq=l0();function Uq($,Z,{offset:U,start:q,value:X,end:z},J){let H=Object.assign({_directives:Z},$),Q=new e7.Document(void 0,H),G={atKey:!1,atRoot:!0,directives:Q.directives,options:Q.options,schema:Q.schema},W=Zq.resolveProps(q,{indicator:"doc-start",next:X??z?.[0],offset:U,onError:J,parentIndent:0,startOnNewline:!0});if(W.found){if(Q.directives.docStart=!0,X&&(X.type==="block-map"||X.type==="block-seq")&&!W.hasNewline)J(W.end,"MISSING_CHAR","Block collection cannot start on same line with directives-end marker")}Q.contents=X?rZ.composeNode(G,X,W,J):rZ.composeEmptyNode(G,W.end,q,null,W,J);let Y=Q.contents.range[2],B=$q.resolveEnd(z,Y,!1,J);if(B.comment)Q.comment=B.comment;return Q.range=[U,Y,B.offset],Q}qq.composeDoc=Uq});var r2=O((Yq)=>{var zq=T0("process"),Jq=e$(),Hq=p0(),c0=d0(),oZ=K(),Qq=nZ(),Gq=P0();function a0($){if(typeof $==="number")return[$,$+1];if(Array.isArray($))return $.length===2?$:[$[0],$[1]];let{offset:Z,source:U}=$;return[Z,Z+(typeof U==="string"?U.length:1)]}function tZ($){let Z="",U=!1,q=!1;for(let X=0;X<$.length;++X){let z=$[X];switch(z[0]){case"#":Z+=(Z===""?"":q?`
|
|
100
100
|
|
|
101
101
|
`:`
|
|
102
|
-
`)+(z.substring(1)||" "),U=!0,
|
|
103
|
-
${U}`:U;else if(
|
|
104
|
-
${
|
|
105
|
-
${z}`:U}}if(
|
|
106
|
-
${
|
|
107
|
-
`}];switch(
|
|
108
|
-
`),W=
|
|
109
|
-
`,
|
|
110
|
-
`});return{type:"block-scalar",offset:z,indent:
|
|
111
|
-
`),Z
|
|
112
|
-
`;if(
|
|
113
|
-
`});for(let
|
|
114
|
-
`};delete
|
|
102
|
+
`)+(z.substring(1)||" "),U=!0,q=!1;break;case"%":if($[X+1]?.[0]!=="#")X+=1;U=!1;break;default:if(!U)q=!0;U=!1}}return{comment:Z,afterEmptyLine:q}}class eZ{constructor($={}){this.doc=null,this.atDirectives=!1,this.prelude=[],this.errors=[],this.warnings=[],this.onError=(Z,U,q,X)=>{let z=a0(Z);if(X)this.warnings.push(new c0.YAMLWarning(z,U,q));else this.errors.push(new c0.YAMLParseError(z,U,q))},this.directives=new Jq.Directives({version:$.version||"1.2"}),this.options=$}decorate($,Z){let{comment:U,afterEmptyLine:q}=tZ(this.prelude);if(U){let X=$.contents;if(Z)$.comment=$.comment?`${$.comment}
|
|
103
|
+
${U}`:U;else if(q||$.directives.docStart||!X)$.commentBefore=U;else if(oZ.isCollection(X)&&!X.flow&&X.items.length>0){let z=X.items[0];if(oZ.isPair(z))z=z.key;let J=z.commentBefore;z.commentBefore=J?`${U}
|
|
104
|
+
${J}`:U}else{let z=X.commentBefore;X.commentBefore=z?`${U}
|
|
105
|
+
${z}`:U}}if(Z)Array.prototype.push.apply($.errors,this.errors),Array.prototype.push.apply($.warnings,this.warnings);else $.errors=this.errors,$.warnings=this.warnings;this.prelude=[],this.errors=[],this.warnings=[]}streamInfo(){return{comment:tZ(this.prelude).comment,directives:this.directives,errors:this.errors,warnings:this.warnings}}*compose($,Z=!1,U=-1){for(let q of $)yield*this.next(q);yield*this.end(Z,U)}*next($){if(zq.env.LOG_STREAM)console.dir($,{depth:null});switch($.type){case"directive":this.directives.add($.source,(Z,U,q)=>{let X=a0($);X[0]+=Z,this.onError(X,"BAD_DIRECTIVE",U,q)}),this.prelude.push($.source),this.atDirectives=!0;break;case"document":{let Z=Qq.composeDoc(this.options,this.directives,$,this.onError);if(this.atDirectives&&!Z.directives.docStart)this.onError($,"MISSING_CHAR","Missing directives-end/doc-start indicator line");if(this.decorate(Z,!1),this.doc)yield this.doc;this.doc=Z,this.atDirectives=!1;break}case"byte-order-mark":case"space":break;case"comment":case"newline":this.prelude.push($.source);break;case"error":{let Z=$.source?`${$.message}: ${JSON.stringify($.source)}`:$.message,U=new c0.YAMLParseError(a0($),"UNEXPECTED_TOKEN",Z);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 c0.YAMLParseError(a0($),"UNEXPECTED_TOKEN","Unexpected doc-end without preceding document"));break}this.doc.directives.docEnd=!0;let Z=Gq.resolveEnd($.end,$.offset+$.source.length,this.doc.options.strict,this.onError);if(this.decorate(this.doc,!0),Z.comment){let U=this.doc.comment;this.doc.comment=U?`${U}
|
|
106
|
+
${Z.comment}`:Z.comment}this.doc.range[2]=Z.offset;break}default:this.errors.push(new c0.YAMLParseError(a0($),"UNEXPECTED_TOKEN",`Unsupported token ${$.type}`))}}*end($=!1,Z=-1){if(this.doc)this.decorate(this.doc,!0),yield this.doc,this.doc=null;else if($){let U=Object.assign({_directives:this.directives},this.options),q=new Hq.Document(void 0,U);if(this.atDirectives)this.onError(Z,"MISSING_CHAR","Missing directives-end indicator line");q.range=[0,Z,Z],this.decorate(q,!1),yield q}}}Yq.Composer=eZ});var U4=O((_q)=>{var Vq=c2(),Wq=i2(),Dq=d0(),$4=S0();function Iq($,Z=!0,U){if($){let q=(X,z,J)=>{let H=typeof X==="number"?X:Array.isArray(X)?X[0]:X.offset;if(U)U(H,z,J);else throw new Dq.YAMLParseError([H,H+1],z,J)};switch($.type){case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return Wq.resolveFlowScalar($,Z,q);case"block-scalar":return Vq.resolveBlockScalar({options:{strict:Z}},$,q)}}return null}function Oq($,Z){let{implicitKey:U=!1,indent:q,inFlow:X=!1,offset:z=-1,type:J="PLAIN"}=Z,H=$4.stringifyString({type:J,value:$},{implicitKey:U,indent:q>0?" ".repeat(q):"",inFlow:X,options:{blockQuote:!0,lineWidth:-1}}),Q=Z.end??[{type:"newline",offset:-1,indent:q,source:`
|
|
107
|
+
`}];switch(H[0]){case"|":case">":{let G=H.indexOf(`
|
|
108
|
+
`),W=H.substring(0,G),Y=H.substring(G+1)+`
|
|
109
|
+
`,B=[{type:"block-scalar-header",offset:z,indent:q,source:W}];if(!Z4(B,Q))B.push({type:"newline",offset:-1,indent:q,source:`
|
|
110
|
+
`});return{type:"block-scalar",offset:z,indent:q,props:B,source:Y}}case'"':return{type:"double-quoted-scalar",offset:z,indent:q,source:H,end:Q};case"'":return{type:"single-quoted-scalar",offset:z,indent:q,source:H,end:Q};default:return{type:"scalar",offset:z,indent:q,source:H,end:Q}}}function Pq($,Z,U={}){let{afterKey:q=!1,implicitKey:X=!1,inFlow:z=!1,type:J}=U,H="indent"in $?$.indent:null;if(q&&typeof H==="number")H+=2;if(!J)switch($.type){case"single-quoted-scalar":J="QUOTE_SINGLE";break;case"double-quoted-scalar":J="QUOTE_DOUBLE";break;case"block-scalar":{let G=$.props[0];if(G.type!=="block-scalar-header")throw Error("Invalid block scalar header");J=G.source[0]===">"?"BLOCK_FOLDED":"BLOCK_LITERAL";break}default:J="PLAIN"}let Q=$4.stringifyString({type:J,value:Z},{implicitKey:X||H===null,indent:H!==null&&H>0?" ".repeat(H):"",inFlow:z,options:{blockQuote:!0,lineWidth:-1}});switch(Q[0]){case"|":case">":Rq($,Q);break;case'"':n2($,Q,"double-quoted-scalar");break;case"'":n2($,Q,"single-quoted-scalar");break;default:n2($,Q,"scalar")}}function Rq($,Z){let U=Z.indexOf(`
|
|
111
|
+
`),q=Z.substring(0,U),X=Z.substring(U+1)+`
|
|
112
|
+
`;if($.type==="block-scalar"){let z=$.props[0];if(z.type!=="block-scalar-header")throw Error("Invalid block scalar header");z.source=q,$.source=X}else{let{offset:z}=$,J="indent"in $?$.indent:-1,H=[{type:"block-scalar-header",offset:z,indent:J,source:q}];if(!Z4(H,"end"in $?$.end:void 0))H.push({type:"newline",offset:-1,indent:J,source:`
|
|
113
|
+
`});for(let Q of Object.keys($))if(Q!=="type"&&Q!=="offset")delete $[Q];Object.assign($,{type:"block-scalar",indent:J,props:H,source:X})}}function Z4($,Z){if(Z)for(let U of Z)switch(U.type){case"space":case"comment":$.push(U);break;case"newline":return $.push(U),!0}return!1}function n2($,Z,U){switch($.type){case"scalar":case"double-quoted-scalar":case"single-quoted-scalar":$.type=U,$.source=Z;break;case"block-scalar":{let q=$.props.slice(1),X=Z.length;if($.props[0].type==="block-scalar-header")X-=$.props[0].source.length;for(let z of q)z.offset+=X;delete $.props,Object.assign($,{type:U,source:Z,end:q});break}case"block-map":case"block-seq":{let X={type:"newline",offset:$.offset+Z.length,indent:$.indent,source:`
|
|
114
|
+
`};delete $.items,Object.assign($,{type:U,source:Z,end:[X]});break}default:{let q="indent"in $?$.indent:-1,X="end"in $&&Array.isArray($.end)?$.end.filter((z)=>z.type==="space"||z.type==="comment"||z.type==="newline"):[];for(let z of Object.keys($))if(z!=="type"&&z!=="offset")delete $[z];Object.assign($,{type:U,indent:q,source:Z,end:X})}}}_q.createScalarToken=Oq;_q.resolveAsScalar=Iq;_q.setScalarValue=Pq});var q4=O((Aq)=>{var Mq=($)=>("type"in $)?x$($):y$($);function x$($){switch($.type){case"block-scalar":{let Z="";for(let U of $.props)Z+=x$(U);return Z+$.source}case"block-map":case"block-seq":{let Z="";for(let U of $.items)Z+=y$(U);return Z}case"flow-collection":{let Z=$.start.source;for(let U of $.items)Z+=y$(U);for(let U of $.end)Z+=U.source;return Z}case"document":{let Z=y$($);if($.end)for(let U of $.end)Z+=U.source;return Z}default:{let Z=$.source;if("end"in $&&$.end)for(let U of $.end)Z+=U.source;return Z}}}function y$({start:$,key:Z,sep:U,value:q}){let X="";for(let z of $)X+=z.source;if(Z)X+=x$(Z);if(U)for(let z of U)X+=z.source;if(q)X+=x$(q);return X}Aq.stringify=Mq});var J4=O((Nq)=>{var o2=Symbol("break visit"),wq=Symbol("skip children"),X4=Symbol("remove item");function z0($,Z){if("type"in $&&$.type==="document")$={start:$.start,value:$.value};z4(Object.freeze([]),$,Z)}z0.BREAK=o2;z0.SKIP=wq;z0.REMOVE=X4;z0.itemAtPath=($,Z)=>{let U=$;for(let[q,X]of Z){let z=U?.[q];if(z&&"items"in z)U=z.items[X];else return}return U};z0.parentCollection=($,Z)=>{let U=z0.itemAtPath($,Z.slice(0,-1)),q=Z[Z.length-1][0],X=U?.[q];if(X&&"items"in X)return X;throw Error("Parent collection not found")};function z4($,Z,U){let q=U(Z,$);if(typeof q==="symbol")return q;for(let X of["key","value"]){let z=Z[X];if(z&&"items"in z){for(let J=0;J<z.items.length;++J){let H=z4(Object.freeze($.concat([[X,J]])),z.items[J],U);if(typeof H==="number")J=H-1;else if(H===o2)return o2;else if(H===X4)z.items.splice(J,1),J-=1}if(typeof q==="function"&&X==="key")q=q(Z,$)}}return typeof q==="function"?q(Z,$):q}Nq.visit=z0});var h$=O((yq)=>{var t2=U4(),Cq=q4(),jq=J4(),e2="\uFEFF",$9="\x02",Z9="\x18",U9="\x1F",Sq=($)=>!!$&&("items"in $),Eq=($)=>!!$&&($.type==="scalar"||$.type==="single-quoted-scalar"||$.type==="double-quoted-scalar"||$.type==="block-scalar");function gq($){switch($){case e2:return"<BOM>";case $9:return"<DOC>";case Z9:return"<FLOW_END>";case U9:return"<SCALAR>";default:return JSON.stringify($)}}function fq($){switch($){case e2:return"byte-order-mark";case $9:return"doc-mode";case Z9:return"flow-error-end";case U9:return"scalar";case"---":return"doc-start";case"...":return"doc-end";case"":case`
|
|
115
115
|
`:case`\r
|
|
116
|
-
`: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(
|
|
117
|
-
`:case"\r":case"\t":return!0;default:return!1}}var
|
|
118
|
-
\r `),
|
|
119
|
-
`)return!0;if(
|
|
120
|
-
`;return!1}charAt(
|
|
121
|
-
`||!
|
|
122
|
-
`||U>=this.indentNext
|
|
123
|
-
`,this.pos),this.lineEndPos
|
|
124
|
-
`,this.pos);if(
|
|
125
|
-
`,
|
|
126
|
-
|
|
127
|
-
`)break}default:break
|
|
128
|
-
`,
|
|
129
|
-
`)U=this.buffer[++
|
|
130
|
-
`&&
|
|
131
|
-
`)U+=1,
|
|
132
|
-
`,
|
|
133
|
-
`){let z=this.continueScalar(U+1);if(z===-1)break;U=Math.max(U,z-2)}}else{if(
|
|
134
|
-
`)return yield*this.pushCount(1);else if(
|
|
135
|
-
`)return yield*this.pushCount(2);else return 0}*pushSpaces(
|
|
136
|
-
`)+1;while(
|
|
137
|
-
|
|
138
|
-
`)+1;while(
|
|
139
|
-
|
|
116
|
+
`: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($[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}yq.createScalarToken=t2.createScalarToken;yq.resolveAsScalar=t2.resolveAsScalar;yq.setScalarValue=t2.setScalarValue;yq.stringify=Cq.stringify;yq.visit=jq.visit;yq.BOM=e2;yq.DOCUMENT=$9;yq.FLOW_END=Z9;yq.SCALAR=U9;yq.isCollection=Sq;yq.isScalar=Eq;yq.prettyToken=gq;yq.tokenType=fq});var X9=O((oq)=>{var i0=h$();function x($){switch($){case void 0:case" ":case`
|
|
117
|
+
`:case"\r":case"\t":return!0;default:return!1}}var H4=new Set("0123456789ABCDEFabcdef"),rq=new Set("0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-#;/?:@&=+$_.!~*'()"),k$=new Set(",[]{}"),nq=new Set(` ,[]{}
|
|
118
|
+
\r `),q9=($)=>!$||nq.has($);class Q4{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($,Z=!1){if($){if(typeof $!=="string")throw TypeError("source is not a string");this.buffer=this.buffer?this.buffer+$:$,this.lineEndPos=null}this.atEnd=!Z;let U=this.next??"stream";while(U&&(Z||this.hasChars(1)))U=yield*this.parseNext(U)}atLineEnd(){let $=this.pos,Z=this.buffer[$];while(Z===" "||Z==="\t")Z=this.buffer[++$];if(!Z||Z==="#"||Z===`
|
|
119
|
+
`)return!0;if(Z==="\r")return this.buffer[$+1]===`
|
|
120
|
+
`;return!1}charAt($){return this.buffer[this.pos+$]}continueScalar($){let Z=this.buffer[$];if(this.indentNext>0){let U=0;while(Z===" ")Z=this.buffer[++U+$];if(Z==="\r"){let q=this.buffer[U+$+1];if(q===`
|
|
121
|
+
`||!q&&!this.atEnd)return $+U+1}return Z===`
|
|
122
|
+
`||U>=this.indentNext||!Z&&!this.atEnd?$+U:-1}if(Z==="-"||Z==="."){let U=this.buffer.substr($,3);if((U==="---"||U==="...")&&x(this.buffer[$+3]))return-1}return $}getLine(){let $=this.lineEndPos;if(typeof $!=="number"||$!==-1&&$<this.pos)$=this.buffer.indexOf(`
|
|
123
|
+
`,this.pos),this.lineEndPos=$;if($===-1)return this.atEnd?this.buffer.substring(this.pos):null;if(this.buffer[$-1]==="\r")$-=1;return this.buffer.substring(this.pos,$)}hasChars($){return this.pos+$<=this.buffer.length}setNext($){return this.buffer=this.buffer.substring(this.pos),this.pos=0,this.lineEndPos=null,this.next=$,null}peek($){return this.buffer.substr(this.pos,$)}*parseNext($){switch($){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 $=this.getLine();if($===null)return this.setNext("stream");if($[0]===i0.BOM)yield*this.pushCount(1),$=$.substring(1);if($[0]==="%"){let Z=$.length,U=$.indexOf("#");while(U!==-1){let X=$[U-1];if(X===" "||X==="\t"){Z=U-1;break}else U=$.indexOf("#",U+1)}while(!0){let X=$[Z-1];if(X===" "||X==="\t")Z-=1;else break}let q=(yield*this.pushCount(Z))+(yield*this.pushSpaces(!0));return yield*this.pushCount($.length-q),this.pushNewline(),"stream"}if(this.atLineEnd()){let Z=yield*this.pushSpaces(!0);return yield*this.pushCount($.length-Z),yield*this.pushNewline(),"stream"}return yield i0.DOCUMENT,yield*this.parseLineStart()}*parseLineStart(){let $=this.charAt(0);if(!$&&!this.atEnd)return this.setNext("line-start");if($==="-"||$==="."){if(!this.atEnd&&!this.hasChars(4))return this.setNext("line-start");let Z=this.peek(3);if((Z==="---"||Z==="...")&&x(this.charAt(3)))return yield*this.pushCount(3),this.indentValue=0,this.indentNext=0,Z==="---"?"doc":"stream"}if(this.indentValue=yield*this.pushSpaces(!1),this.indentNext>this.indentValue&&!x(this.charAt(1)))this.indentNext=this.indentValue;return yield*this.parseBlockStart()}*parseBlockStart(){let[$,Z]=this.peek(2);if(!Z&&!this.atEnd)return this.setNext("block-start");if(($==="-"||$==="?"||$===":")&&x(Z)){let U=(yield*this.pushCount(1))+(yield*this.pushSpaces(!0));return this.indentNext=this.indentValue+1,this.indentValue+=U,yield*this.parseBlockStart()}return"doc"}*parseDocument(){yield*this.pushSpaces(!0);let $=this.getLine();if($===null)return this.setNext("doc");let Z=yield*this.pushIndicators();switch($[Z]){case"#":yield*this.pushCount($.length-Z);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(q9),"doc";case'"':case"'":return yield*this.parseQuotedScalar();case"|":case">":return Z+=yield*this.parseBlockScalarHeader(),Z+=yield*this.pushSpaces(!0),yield*this.pushCount($.length-Z),yield*this.pushNewline(),yield*this.parseBlockScalar();default:return yield*this.parsePlainScalar()}}*parseFlowCollection(){let $,Z,U=-1;do{if($=yield*this.pushNewline(),$>0)Z=yield*this.pushSpaces(!1),this.indentValue=U=Z;else Z=0;Z+=yield*this.pushSpaces(!0)}while($+Z>0);let q=this.getLine();if(q===null)return this.setNext("flow");if(U!==-1&&U<this.indentNext&&q[0]!=="#"||U===0&&(q.startsWith("---")||q.startsWith("..."))&&x(q[3])){if(!(U===this.indentNext-1&&this.flowLevel===1&&(q[0]==="]"||q[0]==="}")))return this.flowLevel=0,yield i0.FLOW_END,yield*this.parseLineStart()}let X=0;while(q[X]===",")X+=yield*this.pushCount(1),X+=yield*this.pushSpaces(!0),this.flowKey=!1;switch(X+=yield*this.pushIndicators(),q[X]){case void 0:return"flow";case"#":return yield*this.pushCount(q.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(q9),"flow";case'"':case"'":return this.flowKey=!0,yield*this.parseQuotedScalar();case":":{let z=this.charAt(1);if(this.flowKey||x(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 $=this.charAt(0),Z=this.buffer.indexOf($,this.pos+1);if($==="'")while(Z!==-1&&this.buffer[Z+1]==="'")Z=this.buffer.indexOf("'",Z+2);else while(Z!==-1){let X=0;while(this.buffer[Z-1-X]==="\\")X+=1;if(X%2===0)break;Z=this.buffer.indexOf('"',Z+1)}let U=this.buffer.substring(0,Z),q=U.indexOf(`
|
|
124
|
+
`,this.pos);if(q!==-1){while(q!==-1){let X=this.continueScalar(q+1);if(X===-1)break;q=U.indexOf(`
|
|
125
|
+
`,X)}if(q!==-1)Z=q-(U[q-1]==="\r"?2:1)}if(Z===-1){if(!this.atEnd)return this.setNext("quoted-scalar");Z=this.buffer.length}return yield*this.pushToIndex(Z+1,!1),this.flowLevel?"flow":"doc"}*parseBlockScalarHeader(){this.blockScalarIndent=-1,this.blockScalarKeep=!1;let $=this.pos;while(!0){let Z=this.buffer[++$];if(Z==="+")this.blockScalarKeep=!0;else if(Z>"0"&&Z<="9")this.blockScalarIndent=Number(Z)-1;else if(Z!=="-")break}return yield*this.pushUntil((Z)=>x(Z)||Z==="#")}*parseBlockScalar(){let $=this.pos-1,Z=0,U;$:for(let X=this.pos;U=this.buffer[X];++X)switch(U){case" ":Z+=1;break;case`
|
|
126
|
+
`:$=X,Z=0;break;case"\r":{let z=this.buffer[X+1];if(!z&&!this.atEnd)return this.setNext("block-scalar");if(z===`
|
|
127
|
+
`)break}default:break $}if(!U&&!this.atEnd)return this.setNext("block-scalar");if(Z>=this.indentNext){if(this.blockScalarIndent===-1)this.indentNext=Z;else this.indentNext=this.blockScalarIndent+(this.indentNext===0?1:this.indentNext);do{let X=this.continueScalar($+1);if(X===-1)break;$=this.buffer.indexOf(`
|
|
128
|
+
`,X)}while($!==-1);if($===-1){if(!this.atEnd)return this.setNext("block-scalar");$=this.buffer.length}}let q=$+1;U=this.buffer[q];while(U===" ")U=this.buffer[++q];if(U==="\t"){while(U==="\t"||U===" "||U==="\r"||U===`
|
|
129
|
+
`)U=this.buffer[++q];$=q-1}else if(!this.blockScalarKeep)do{let X=$-1,z=this.buffer[X];if(z==="\r")z=this.buffer[--X];let J=X;while(z===" ")z=this.buffer[--X];if(z===`
|
|
130
|
+
`&&X>=this.pos&&X+1+Z>J)$=X;else break}while(!0);return yield i0.SCALAR,yield*this.pushToIndex($+1,!0),yield*this.parseLineStart()}*parsePlainScalar(){let $=this.flowLevel>0,Z=this.pos-1,U=this.pos-1,q;while(q=this.buffer[++U])if(q===":"){let X=this.buffer[U+1];if(x(X)||$&&k$.has(X))break;Z=U}else if(x(q)){let X=this.buffer[U+1];if(q==="\r")if(X===`
|
|
131
|
+
`)U+=1,q=`
|
|
132
|
+
`,X=this.buffer[U+1];else Z=U;if(X==="#"||$&&k$.has(X))break;if(q===`
|
|
133
|
+
`){let z=this.continueScalar(U+1);if(z===-1)break;U=Math.max(U,z-2)}}else{if($&&k$.has(q))break;Z=U}if(!q&&!this.atEnd)return this.setNext("plain-scalar");return yield i0.SCALAR,yield*this.pushToIndex(Z+1,!0),$?"flow":"doc"}*pushCount($){if($>0)return yield this.buffer.substr(this.pos,$),this.pos+=$,$;return 0}*pushToIndex($,Z){let U=this.buffer.slice(this.pos,$);if(U)return yield U,this.pos+=U.length,U.length;else if(Z)yield"";return 0}*pushIndicators(){switch(this.charAt(0)){case"!":return(yield*this.pushTag())+(yield*this.pushSpaces(!0))+(yield*this.pushIndicators());case"&":return(yield*this.pushUntil(q9))+(yield*this.pushSpaces(!0))+(yield*this.pushIndicators());case"-":case"?":case":":{let $=this.flowLevel>0,Z=this.charAt(1);if(x(Z)||$&&k$.has(Z)){if(!$)this.indentNext=this.indentValue+1;else if(this.flowKey)this.flowKey=!1;return(yield*this.pushCount(1))+(yield*this.pushSpaces(!0))+(yield*this.pushIndicators())}}}return 0}*pushTag(){if(this.charAt(1)==="<"){let $=this.pos+2,Z=this.buffer[$];while(!x(Z)&&Z!==">")Z=this.buffer[++$];return yield*this.pushToIndex(Z===">"?$+1:$,!1)}else{let $=this.pos+1,Z=this.buffer[$];while(Z)if(rq.has(Z))Z=this.buffer[++$];else if(Z==="%"&&H4.has(this.buffer[$+1])&&H4.has(this.buffer[$+2]))Z=this.buffer[$+=3];else break;return yield*this.pushToIndex($,!1)}}*pushNewline(){let $=this.buffer[this.pos];if($===`
|
|
134
|
+
`)return yield*this.pushCount(1);else if($==="\r"&&this.charAt(1)===`
|
|
135
|
+
`)return yield*this.pushCount(2);else return 0}*pushSpaces($){let Z=this.pos-1,U;do U=this.buffer[++Z];while(U===" "||$&&U==="\t");let q=Z-this.pos;if(q>0)yield this.buffer.substr(this.pos,q),this.pos=Z;return q}*pushUntil($){let Z=this.pos,U=this.buffer[Z];while(!$(U))U=this.buffer[++Z];return yield*this.pushToIndex(Z,!1)}}oq.Lexer=Q4});var z9=O((eq)=>{class G4{constructor(){this.lineStarts=[],this.addNewLine=($)=>this.lineStarts.push($),this.linePos=($)=>{let Z=0,U=this.lineStarts.length;while(Z<U){let X=Z+U>>1;if(this.lineStarts[X]<$)Z=X+1;else U=X}if(this.lineStarts[Z]===$)return{line:Z+1,col:1};if(Z===0)return{line:0,col:$};let q=this.lineStarts[Z-1];return{line:Z,col:$-q+1}}}}eq.LineCounter=G4});var J9=O((qX)=>{var ZX=T0("process"),Y4=h$(),UX=X9();function o($,Z){for(let U=0;U<$.length;++U)if($[U].type===Z)return!0;return!1}function B4($){for(let Z=0;Z<$.length;++Z)switch($[Z].type){case"space":case"comment":case"newline":break;default:return Z}return-1}function W4($){switch($?.type){case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":case"flow-collection":return!0;default:return!1}}function u$($){switch($.type){case"document":return $.start;case"block-map":{let Z=$.items[$.items.length-1];return Z.sep??Z.start}case"block-seq":return $.items[$.items.length-1].start;default:return[]}}function R0($){if($.length===0)return[];let Z=$.length;$:while(--Z>=0)switch($[Z].type){case"doc-start":case"explicit-key-ind":case"map-value-ind":case"seq-item-ind":case"newline":break $}while($[++Z]?.type==="space");return $.splice(Z,$.length)}function V4($){if($.start.type==="flow-seq-start"){for(let Z of $.items)if(Z.sep&&!Z.value&&!o(Z.start,"explicit-key-ind")&&!o(Z.sep,"map-value-ind")){if(Z.key)Z.value=Z.key;if(delete Z.key,W4(Z.value))if(Z.value.end)Array.prototype.push.apply(Z.value.end,Z.sep);else Z.value.end=Z.sep;else Array.prototype.push.apply(Z.start,Z.sep);delete Z.sep}}}class D4{constructor($){this.atNewLine=!0,this.atScalar=!1,this.indent=0,this.offset=0,this.onKeyLine=!1,this.stack=[],this.source="",this.type="",this.lexer=new UX.Lexer,this.onNewLine=$}*parse($,Z=!1){if(this.onNewLine&&this.offset===0)this.onNewLine(0);for(let U of this.lexer.lex($,Z))yield*this.next(U);if(!Z)yield*this.end()}*next($){if(this.source=$,ZX.env.LOG_TOKENS)console.log("|",Y4.prettyToken($));if(this.atScalar){this.atScalar=!1,yield*this.step(),this.offset+=$.length;return}let Z=Y4.tokenType($);if(!Z){let U=`Not a YAML token: ${$}`;yield*this.pop({type:"error",offset:this.offset,message:U,source:$}),this.offset+=$.length}else if(Z==="scalar")this.atNewLine=!1,this.atScalar=!0,this.type="scalar";else{switch(this.type=Z,yield*this.step(),Z){case"newline":if(this.atNewLine=!0,this.indent=0,this.onNewLine)this.onNewLine(this.offset+$.length);break;case"space":if(this.atNewLine&&$[0]===" ")this.indent+=$.length;break;case"explicit-key-ind":case"map-value-ind":case"seq-item-ind":if(this.atNewLine)this.indent+=$.length;break;case"doc-mode":case"flow-error-end":return;default:this.atNewLine=!1}this.offset+=$.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 $=this.peek(1);if(this.type==="doc-end"&&$?.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(!$)return yield*this.stream();switch($.type){case"document":return yield*this.document($);case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return yield*this.scalar($);case"block-scalar":return yield*this.blockScalar($);case"block-map":return yield*this.blockMap($);case"block-seq":return yield*this.blockSequence($);case"flow-collection":return yield*this.flowCollection($);case"doc-end":return yield*this.documentEnd($)}yield*this.pop()}peek($){return this.stack[this.stack.length-$]}*pop($){let Z=$??this.stack.pop();if(!Z)yield{type:"error",offset:this.offset,source:"",message:"Tried to pop an empty stack"};else if(this.stack.length===0)yield Z;else{let U=this.peek(1);if(Z.type==="block-scalar")Z.indent="indent"in U?U.indent:0;else if(Z.type==="flow-collection"&&U.type==="document")Z.indent=0;if(Z.type==="flow-collection")V4(Z);switch(U.type){case"document":U.value=Z;break;case"block-scalar":U.props.push(Z);break;case"block-map":{let q=U.items[U.items.length-1];if(q.value){U.items.push({start:[],key:Z,sep:[]}),this.onKeyLine=!0;return}else if(q.sep)q.value=Z;else{Object.assign(q,{key:Z,sep:[]}),this.onKeyLine=!q.explicitKey;return}break}case"block-seq":{let q=U.items[U.items.length-1];if(q.value)U.items.push({start:[],value:Z});else q.value=Z;break}case"flow-collection":{let q=U.items[U.items.length-1];if(!q||q.value)U.items.push({start:[],key:Z,sep:[]});else if(q.sep)q.value=Z;else Object.assign(q,{key:Z,sep:[]});return}default:yield*this.pop(),yield*this.pop(Z)}if((U.type==="document"||U.type==="block-map"||U.type==="block-seq")&&(Z.type==="block-map"||Z.type==="block-seq")){let q=Z.items[Z.items.length-1];if(q&&!q.sep&&!q.value&&q.start.length>0&&B4(q.start)===-1&&(Z.indent===0||q.start.every((X)=>X.type!=="comment"||X.indent<Z.indent))){if(U.type==="document")U.end=q.start;else U.items.push({start:q.start});Z.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 $={type:"document",offset:this.offset,start:[]};if(this.type==="doc-start")$.start.push(this.sourceToken);this.stack.push($);return}}yield{type:"error",offset:this.offset,message:`Unexpected ${this.type} token in YAML stream`,source:this.source}}*document($){if($.value)return yield*this.lineEnd($);switch(this.type){case"doc-start":{if(B4($.start)!==-1)yield*this.pop(),yield*this.step();else $.start.push(this.sourceToken);return}case"anchor":case"tag":case"space":case"comment":case"newline":$.start.push(this.sourceToken);return}let Z=this.startBlockValue($);if(Z)this.stack.push(Z);else yield{type:"error",offset:this.offset,message:`Unexpected ${this.type} token in YAML document`,source:this.source}}*scalar($){if(this.type==="map-value-ind"){let Z=u$(this.peek(2)),U=R0(Z),q;if($.end)q=$.end,q.push(this.sourceToken),delete $.end;else q=[this.sourceToken];let X={type:"block-map",offset:$.offset,indent:$.indent,items:[{start:U,key:$,sep:q}]};this.onKeyLine=!0,this.stack[this.stack.length-1]=X}else yield*this.lineEnd($)}*blockScalar($){switch(this.type){case"space":case"comment":case"newline":$.props.push(this.sourceToken);return;case"scalar":if($.source=this.source,this.atNewLine=!0,this.indent=0,this.onNewLine){let Z=this.source.indexOf(`
|
|
136
|
+
`)+1;while(Z!==0)this.onNewLine(this.offset+Z),Z=this.source.indexOf(`
|
|
137
|
+
`,Z)+1}yield*this.pop();break;default:yield*this.pop(),yield*this.step()}}*blockMap($){let Z=$.items[$.items.length-1];switch(this.type){case"newline":if(this.onKeyLine=!1,Z.value){let U="end"in Z.value?Z.value.end:void 0;if((Array.isArray(U)?U[U.length-1]:void 0)?.type==="comment")U?.push(this.sourceToken);else $.items.push({start:[this.sourceToken]})}else if(Z.sep)Z.sep.push(this.sourceToken);else Z.start.push(this.sourceToken);return;case"space":case"comment":if(Z.value)$.items.push({start:[this.sourceToken]});else if(Z.sep)Z.sep.push(this.sourceToken);else{if(this.atIndentedComment(Z.start,$.indent)){let q=$.items[$.items.length-2]?.value?.end;if(Array.isArray(q)){Array.prototype.push.apply(q,Z.start),q.push(this.sourceToken),$.items.pop();return}}Z.start.push(this.sourceToken)}return}if(this.indent>=$.indent){let U=!this.onKeyLine&&this.indent===$.indent,q=U&&(Z.sep||Z.explicitKey)&&this.type!=="seq-item-ind",X=[];if(q&&Z.sep&&!Z.value){let z=[];for(let J=0;J<Z.sep.length;++J){let H=Z.sep[J];switch(H.type){case"newline":z.push(J);break;case"space":break;case"comment":if(H.indent>$.indent)z.length=0;break;default:z.length=0}}if(z.length>=2)X=Z.sep.splice(z[1])}switch(this.type){case"anchor":case"tag":if(q||Z.value)X.push(this.sourceToken),$.items.push({start:X}),this.onKeyLine=!0;else if(Z.sep)Z.sep.push(this.sourceToken);else Z.start.push(this.sourceToken);return;case"explicit-key-ind":if(!Z.sep&&!Z.explicitKey)Z.start.push(this.sourceToken),Z.explicitKey=!0;else if(q||Z.value)X.push(this.sourceToken),$.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(Z.explicitKey)if(!Z.sep)if(o(Z.start,"newline"))Object.assign(Z,{key:null,sep:[this.sourceToken]});else{let z=R0(Z.start);this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:z,key:null,sep:[this.sourceToken]}]})}else if(Z.value)$.items.push({start:[],key:null,sep:[this.sourceToken]});else if(o(Z.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(W4(Z.key)&&!o(Z.sep,"newline")){let z=R0(Z.start),J=Z.key,H=Z.sep;H.push(this.sourceToken),delete Z.key,delete Z.sep,this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:z,key:J,sep:H}]})}else if(X.length>0)Z.sep=Z.sep.concat(X,this.sourceToken);else Z.sep.push(this.sourceToken);else if(!Z.sep)Object.assign(Z,{key:null,sep:[this.sourceToken]});else if(Z.value||q)$.items.push({start:X,key:null,sep:[this.sourceToken]});else if(o(Z.sep,"map-value-ind"))this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:[],key:null,sep:[this.sourceToken]}]});else Z.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(q||Z.value)$.items.push({start:X,key:z,sep:[]}),this.onKeyLine=!0;else if(Z.sep)this.stack.push(z);else Object.assign(Z,{key:z,sep:[]}),this.onKeyLine=!0;return}default:{let z=this.startBlockValue($);if(z){if(z.type==="block-seq"){if(!Z.explicitKey&&Z.sep&&!o(Z.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)$.items.push({start:X});this.stack.push(z);return}}}}yield*this.pop(),yield*this.step()}*blockSequence($){let Z=$.items[$.items.length-1];switch(this.type){case"newline":if(Z.value){let U="end"in Z.value?Z.value.end:void 0;if((Array.isArray(U)?U[U.length-1]:void 0)?.type==="comment")U?.push(this.sourceToken);else $.items.push({start:[this.sourceToken]})}else Z.start.push(this.sourceToken);return;case"space":case"comment":if(Z.value)$.items.push({start:[this.sourceToken]});else{if(this.atIndentedComment(Z.start,$.indent)){let q=$.items[$.items.length-2]?.value?.end;if(Array.isArray(q)){Array.prototype.push.apply(q,Z.start),q.push(this.sourceToken),$.items.pop();return}}Z.start.push(this.sourceToken)}return;case"anchor":case"tag":if(Z.value||this.indent<=$.indent)break;Z.start.push(this.sourceToken);return;case"seq-item-ind":if(this.indent!==$.indent)break;if(Z.value||o(Z.start,"seq-item-ind"))$.items.push({start:[this.sourceToken]});else Z.start.push(this.sourceToken);return}if(this.indent>$.indent){let U=this.startBlockValue($);if(U){this.stack.push(U);return}}yield*this.pop(),yield*this.step()}*flowCollection($){let Z=$.items[$.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($.end.length===0){switch(this.type){case"comma":case"explicit-key-ind":if(!Z||Z.sep)$.items.push({start:[this.sourceToken]});else Z.start.push(this.sourceToken);return;case"map-value-ind":if(!Z||Z.value)$.items.push({start:[],key:null,sep:[this.sourceToken]});else if(Z.sep)Z.sep.push(this.sourceToken);else Object.assign(Z,{key:null,sep:[this.sourceToken]});return;case"space":case"comment":case"newline":case"anchor":case"tag":if(!Z||Z.value)$.items.push({start:[this.sourceToken]});else if(Z.sep)Z.sep.push(this.sourceToken);else Z.start.push(this.sourceToken);return;case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":{let q=this.flowScalar(this.type);if(!Z||Z.value)$.items.push({start:[],key:q,sep:[]});else if(Z.sep)this.stack.push(q);else Object.assign(Z,{key:q,sep:[]});return}case"flow-map-end":case"flow-seq-end":$.end.push(this.sourceToken);return}let U=this.startBlockValue($);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===$.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 q=u$(U),X=R0(q);V4($);let z=$.end.splice(1,$.end.length);z.push(this.sourceToken);let J={type:"block-map",offset:$.offset,indent:$.indent,items:[{start:X,key:$,sep:z}]};this.onKeyLine=!0,this.stack[this.stack.length-1]=J}else yield*this.lineEnd($)}}flowScalar($){if(this.onNewLine){let Z=this.source.indexOf(`
|
|
138
|
+
`)+1;while(Z!==0)this.onNewLine(this.offset+Z),Z=this.source.indexOf(`
|
|
139
|
+
`,Z)+1}return{type:$,offset:this.offset,indent:this.indent,source:this.source}}startBlockValue($){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 Z=u$($),U=R0(Z);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 Z=u$($),U=R0(Z);return{type:"block-map",offset:this.offset,indent:this.indent,items:[{start:U,key:null,sep:[this.sourceToken]}]}}}return null}atIndentedComment($,Z){if(this.type!=="comment")return!1;if(this.indent<=Z)return!1;return $.every((U)=>U.type==="newline"||U.type==="space")}*documentEnd($){if(this.type!=="doc-mode"){if($.end)$.end.push(this.sourceToken);else $.end=[this.sourceToken];if(this.type==="newline")yield*this.pop()}}*lineEnd($){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($.end)$.end.push(this.sourceToken);else $.end=[this.sourceToken];if(this.type==="newline")yield*this.pop()}}}qX.Parser=D4});var _4=O((VX)=>{var I4=r2(),zX=p0(),s0=d0(),JX=z2(),HX=K(),QX=z9(),O4=J9();function P4($){let Z=$.prettyErrors!==!1;return{lineCounter:$.lineCounter||Z&&new QX.LineCounter||null,prettyErrors:Z}}function GX($,Z={}){let{lineCounter:U,prettyErrors:q}=P4(Z),X=new O4.Parser(U?.addNewLine),z=new I4.Composer(Z),J=Array.from(z.compose(X.parse($)));if(q&&U)for(let H of J)H.errors.forEach(s0.prettifyError($,U)),H.warnings.forEach(s0.prettifyError($,U));if(J.length>0)return J;return Object.assign([],{empty:!0},z.streamInfo())}function R4($,Z={}){let{lineCounter:U,prettyErrors:q}=P4(Z),X=new O4.Parser(U?.addNewLine),z=new I4.Composer(Z),J=null;for(let H of z.compose(X.parse($),!0,$.length))if(!J)J=H;else if(J.options.logLevel!=="silent"){J.errors.push(new s0.YAMLParseError(H.range.slice(0,2),"MULTIPLE_DOCS","Source contains multiple documents; please use YAML.parseAllDocuments()"));break}if(q&&U)J.errors.forEach(s0.prettifyError($,U)),J.warnings.forEach(s0.prettifyError($,U));return J}function YX($,Z,U){let q=void 0;if(typeof Z==="function")q=Z;else if(U===void 0&&Z&&typeof Z==="object")U=Z;let X=R4($,U);if(!X)return null;if(X.warnings.forEach((z)=>JX.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:q},U))}function BX($,Z,U){let q=null;if(typeof Z==="function"||Array.isArray(Z))q=Z;else if(U===void 0&&Z)U=Z;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($===void 0){let{keepUndefined:X}=U??Z??{};if(!X)return}if(HX.isDocument($)&&!q)return $.toString(U);return new zX.Document($,q,U).toString(U)}VX.parse=YX;VX.parseAllDocuments=GX;VX.parseDocument=R4;VX.stringify=BX});var f=[{index:1,path:"project.name",description:"Project name",category:"project"},{index:2,path:"project.goal",description:"Goal (use case)",category:"project"},{index:3,path:"project.main_language",description:"Primary language",category:"project"},{index:4,path:"human_context.who",description:"Who is this for?",category:"human"},{index:5,path:"human_context.what",description:"What are they building",category:"human"},{index:6,path:"human_context.why",description:"Why does it exist",category:"human"},{index:7,path:"human_context.where",description:"Where does it run",category:"human"},{index:8,path:"human_context.when",description:"When was it started / timeline",category:"human"},{index:9,path:"human_context.how",description:"How is it built",category:"human"},{index:10,path:"stack.frontend",canonical:"stack.framework",description:"Framework (React, Svelte, etc.)",category:"frontend"},{index:11,path:"stack.css_framework",canonical:"stack.css",description:"CSS framework",category:"frontend"},{index:12,path:"stack.ui_library",description:"UI component library",category:"frontend"},{index:13,path:"stack.state_management",canonical:"stack.state",description:"State management",category:"frontend"},{index:14,path:"stack.backend",description:"Backend framework",category:"backend"},{index:15,path:"stack.api_type",canonical:"stack.api",description:"API style (REST, GraphQL, etc.)",category:"backend"},{index:16,path:"stack.runtime",description:"Runtime (Node, Bun, Python, etc.)",category:"backend"},{index:17,path:"stack.database",canonical:"stack.db",description:"Database",category:"backend"},{index:18,path:"stack.connection",description:"Connection method (Prisma, etc.)",category:"backend"},{index:19,path:"stack.hosting",description:"Hosting platform",category:"universal"},{index:20,path:"stack.build",description:"Build tool",category:"universal"},{index:21,path:"stack.cicd",description:"CI/CD",category:"universal"},{index:22,path:"stack.monorepo_tool",description:"Monorepo tool",category:"enterprise_infra"},{index:23,path:"stack.package_manager",canonical:"stack.pkg_manager",description:"Package manager",category:"enterprise_infra"},{index:24,path:"stack.workspaces",description:"Workspace configuration",category:"enterprise_infra"},{index:25,path:"monorepo.packages_count",description:"Number of packages",category:"enterprise_infra"},{index:26,path:"monorepo.build_orchestrator",description:"Build orchestration tool",category:"enterprise_infra"},{index:27,path:"stack.admin",description:"Admin panel",category:"enterprise_app"},{index:28,path:"stack.cache",description:"Caching layer",category:"enterprise_app"},{index:29,path:"stack.search",description:"Search engine",category:"enterprise_app"},{index:30,path:"stack.storage",description:"Object storage",category:"enterprise_app"},{index:31,path:"monorepo.versioning_strategy",description:"Version strategy",category:"enterprise_ops"},{index:32,path:"monorepo.shared_configs",description:"Shared configs",category:"enterprise_ops"},{index:33,path:"monorepo.remote_cache",description:"Remote build cache",category:"enterprise_ops"}],l$=new Map(f.flatMap(($)=>$.canonical?[[$.path,$],[$.canonical,$]]:[[$.path,$]])),xz=new Map(f.filter(($)=>$.canonical).map(($)=>[$.canonical,$.path])),hz=new Map(f.filter(($)=>$.canonical).map(($)=>[$.path,$.canonical]));function B9($,Z){let U=(X)=>{let z=X.split("."),J=$;for(let H of z)if(J&&typeof J==="object"&&H in J)J=J[H];else return;return J},q=U(Z.path);if(q!==void 0)return q;if(Z.canonical)return U(Z.canonical);return}function i4($){return f.filter((Z)=>Z.category===$)}var s4=f.filter(($)=>$.index<=21),r4=f,o0=new Set(["describe your project goal","development teams","cloud platform","null","none","unknown","n/a","not applicable"]);function n4($){if($===null||$===void 0||$==="")return!0;if(typeof $==="string")return o0.has($.toLowerCase().trim());if(Array.isArray($)&&$.length===0)return!0;if(typeof $==="object"&&Object.keys($).length===0)return!0;return!1}var c$=($)=>(Z)=>`\x1B[${$}m${Z}\x1B[0m`,t0=c$("1"),F0=c$("2"),uz=c$("3"),M0={cyan:"#00D4D4",cyanDeep:"#0E8C8C",orange:"#FF6B35"},e0=($)=>`\x1B[38;2;0;212;212m${$}\x1B[0m`,a$=($)=>`\x1B[38;2;14;140;140m${$}\x1B[0m`,H0=($)=>`\x1B[38;5;208m${$}\x1B[0m`;var u=[{name:"TROPHY",indicator:`${H0("\uD83C\uDFC6")} ${H0("TROPHY")}`,threshold:100},{name:"GOLD",indicator:`${H0(t0("★"))} ${H0("GOLD")}`,threshold:99},{name:"SILVER",indicator:`${e0("◆")} ${e0("SILVER")}`,threshold:95},{name:"BRONZE",indicator:`${a$("◇")} ${a$("BRONZE")}`,threshold:85},{name:"GREEN",indicator:`${t0("●")} GREEN`,threshold:70},{name:"YELLOW",indicator:`${F0("●")} YELLOW`,threshold:55},{name:"RED",indicator:`${F0("○")} RED`,threshold:1},{name:"WHITE",indicator:`${F0("♡")}`,threshold:0}];function A0($){for(let Z of u)if($>=Z.threshold)return Z;return u[u.length-1]}function o4($){let Z=A0($),U=u.indexOf(Z);return U>0?u[U-1]:null}var r$={};c4(r$,{validate:()=>e4,sdkVersion:()=>X8,scoreFafb:()=>q8,scoreEnterprise:()=>t4,score:()=>s$,fafbInfo:()=>U8,decompile:()=>Z8,compile:()=>$8});var i$=null;function d(){if(i$)return i$;try{let $=T0("faf-scoring-kernel");return i$=$,$}catch{throw Error(`faf-scoring-kernel not installed.
|
|
140
140
|
|
|
141
141
|
Run: npm install faf-scoring-kernel
|
|
142
|
-
`)}}function
|
|
143
|
-
`)}function
|
|
142
|
+
`)}}function s$($){return JSON.parse(d().score_faf($))}function t4($){return JSON.parse(d().score_faf_enterprise($))}function e4($){return d().validate_faf($)}function $8($){return d().compile_fafb($)}function Z8($){return JSON.parse(d().decompile_fafb($))}function U8($){return JSON.parse(d().fafb_info($))}function q8($){return JSON.parse(d().score_fafb($))}function X8(){return d().sdk_version()}function V9($){return{score:$.score,tier:A0($.score),populated:$.populated,empty:$.empty,ignored:$.ignored,active:$.active,total:$.total,slots:$.slots}}function n$($){if(/^\s*app_type:\s*about\s*$/m.test($)){let U=$.match(/^\s+source_score:\s*(\d+)\s*$/m),q=U?parseInt(U[1],10):-1,X=q>=0&&q<=100?q:-1,z=$.match(/^\s+represents:\s*(\S+)\s*$/m),J=z?z[1]:void 0;return{score:X,tier:X>=0?A0(X):u[u.length-1],populated:0,empty:0,ignored:0,active:0,total:0,slots:{},inherited:!0,represents:J}}return V9(s$($))}function z8($){let Z=[];if(!$||typeof $!=="object")return Z.push("File is not a valid YAML mapping"),{valid:!1,errors:Z};let U=$;if(!U.faf_version)Z.push("Missing required field: faf_version");if(!U.project?.name)Z.push("Missing required field: project.name");if(U.app_type==="about"){if(!U.about?.represents)Z.push("app_type 'about' requires about.represents (owner/repo of the source codebase)");else if(!/^[A-Za-z0-9_.-]+\/[A-Za-z0-9_.-]+$/.test(U.about.represents))Z.push(`about.represents must be "owner/repo" format (got: ${U.about.represents})`);if(U.about?.source_score!==void 0){let q=U.about.source_score;if(typeof q!=="number"||q<0||q>100)Z.push(`about.source_score must be a number 0-100 (got: ${q})`)}}return{valid:Z.length===0,errors:Z}}import{readFileSync as A4,writeFileSync as VH,existsSync as F4}from"fs";import{join as M4,dirname as $z}from"path";var PX=r2(),RX=p0(),_X=g2(),H9=d0(),LX=N0(),t=K(),TX=i(),FX=N(),MX=r(),AX=n(),GH=h$(),KX=X9(),wX=z9(),NX=J9(),v$=_4(),L4=K0();var bX=PX.Composer,CX=RX.Document,jX=_X.Schema,SX=H9.YAMLError,EX=H9.YAMLParseError,gX=H9.YAMLWarning,fX=LX.Alias,yX=t.isAlias,xX=t.isCollection,hX=t.isDocument,kX=t.isMap,uX=t.isNode,vX=t.isPair,mX=t.isScalar,pX=t.isSeq,dX=TX.Pair,lX=FX.Scalar,cX=MX.YAMLMap,aX=AX.YAMLSeq;var iX=KX.Lexer,sX=wX.LineCounter,rX=NX.Parser,r0=v$.parse,nX=v$.parseAllDocuments,oX=v$.parseDocument,T4=v$.stringify,tX=L4.visit,eX=L4.visitAsync;function Zz($){let Z=A4($,"utf-8");return r0(Z)}function K4($){return A4($,"utf-8")}function w4($=process.cwd()){let Z=["project.faf",".faf"];for(let q of Z){let X=M4($,q);if(F4(X))return X}let U=$z($);if(U!==$)for(let q of Z){let X=M4(U,q);if(F4(X))return X}return null}import{writeFileSync as Uz}from"fs";import{join as qz}from"path";var N4=M0.orange,Xz=M0.cyan,zz=M0.cyanDeep,Jz="#FF9500",Hz="#FF3B30",Qz="#E6EDF3",Gz="#6E7681",b4={TROPHY:{glyph:"\uD83C\uDFC6",color:N4},GOLD:{glyph:"★",color:N4},SILVER:{glyph:"◆",color:Xz},BRONZE:{glyph:"◇",color:zz},GREEN:{glyph:"●",color:Qz},YELLOW:{glyph:"●",color:Jz},RED:{glyph:"○",color:Hz},WHITE:{glyph:"♡",color:Gz}};function _0($){return String($??"").replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'")}var C4=["who","what","why","where","when","how"];function m$($){return $.filter(([,Z])=>Z!==void 0&&Z!==null&&String(Z).trim()!=="").map(([Z,U])=>`<div class="row"><div class="k">${_0(Z)}</div><div class="v">${_0(U)}</div></div>`).join(`
|
|
143
|
+
`)}function j4($,Z,U="project.faf"){let q=_0($.project?.name??"Project"),X=Z.tier?.name??"WHITE",z=b4[X]??b4.WHITE,J=Z.inherited?Z.represents?`inherited from ${_0(Z.represents)}`:"inherited":`${Z.score}%`,H=X==="TROPHY"&&!Z.inherited,Q=$.human_context??{},G=C4.map((V)=>[V,Q[V]]),W=Object.entries(Q).filter(([V])=>!C4.includes(V)),Y=[["goal",$.project?.goal],["main_language",$.project?.main_language],["type",$.project?.type],["framework",$.project?.framework],["faf_version",$.faf_version]],B=Object.entries($.stack??{}),I=B.filter(([,V])=>V&&V!=="slotignored"&&String(V).trim()!==""),P=B.filter(([,V])=>V==="slotignored").length;return`<!DOCTYPE html>
|
|
144
144
|
<html lang="en">
|
|
145
145
|
<head>
|
|
146
146
|
<meta charset="UTF-8">
|
|
147
147
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
148
|
-
<title>${
|
|
148
|
+
<title>${q} — project.faf</title>
|
|
149
149
|
<meta name="description" content="Visual render of project.faf. Generated by faf — humans like visuals, we gave them one.">
|
|
150
150
|
<meta name="robots" content="index,follow">
|
|
151
151
|
<style>
|
|
@@ -164,7 +164,7 @@ h2{font-size:12px;font-weight:700;letter-spacing:2px;text-transform:uppercase;co
|
|
|
164
164
|
.k{flex:0 0 150px;color:#8b949e;font-size:.9rem;text-transform:capitalize}
|
|
165
165
|
.v{flex:1;color:#e6edf3;font-size:.95rem;word-break:break-word}
|
|
166
166
|
.meter{height:8px;border-radius:4px;background:rgba(255,255,255,.06);overflow:hidden;margin:6px 0 10px}
|
|
167
|
-
.meter span{display:block;height:100%;background:${z.color};width:${Math.max(0,Math.min(100
|
|
167
|
+
.meter span{display:block;height:100%;background:${z.color};width:${Math.max(0,Math.min(100,Z.score))}%}
|
|
168
168
|
.award{font-size:.95rem}
|
|
169
169
|
.statline{margin-bottom:32px}
|
|
170
170
|
.awd-pre{color:#6E7681}
|
|
@@ -180,37 +180,37 @@ footer strong{color:#e6edf3}
|
|
|
180
180
|
<div class="bar"></div>
|
|
181
181
|
<div class="eyebrow">project.faf · visual render</div>
|
|
182
182
|
<header>
|
|
183
|
-
<h1>${
|
|
184
|
-
<span class="badge">${z.glyph} ${
|
|
185
|
-
<span class="score">${
|
|
183
|
+
<h1>${q}</h1>
|
|
184
|
+
<span class="badge">${z.glyph} ${_0(X)}</span>
|
|
185
|
+
<span class="score">${J}</span>
|
|
186
186
|
</header>
|
|
187
187
|
<div class="meter"><span></span></div>
|
|
188
|
-
${
|
|
188
|
+
${H?'<p class="award statline"><span class="awd-pre">✅ All Required slots filled.</span> <span class="awd-win">100% Trophy \uD83C\uDFC6 Awarded</span></p>':`<p class="muted statline">${Z.populated}/${Z.active} slots populated · ${Z.total} total${P?` · ${P} slotignored`:""}</p>`}
|
|
189
189
|
|
|
190
190
|
<section>
|
|
191
191
|
<h2>The 6 W's</h2>
|
|
192
|
-
${
|
|
193
|
-
${W.length?
|
|
192
|
+
${m$(G)||'<p class="muted">No human_context yet.</p>'}
|
|
193
|
+
${W.length?m$(W):""}
|
|
194
194
|
</section>
|
|
195
195
|
|
|
196
196
|
<section>
|
|
197
197
|
<h2>Project</h2>
|
|
198
|
-
${
|
|
198
|
+
${m$(Y)||'<p class="muted">—</p>'}
|
|
199
199
|
</section>
|
|
200
200
|
|
|
201
201
|
<section>
|
|
202
202
|
<h2>Stack</h2>
|
|
203
|
-
${
|
|
203
|
+
${I.length?m$(I):'<p class="muted">No active stack slots.</p>'}
|
|
204
204
|
</section>
|
|
205
205
|
|
|
206
206
|
<footer>
|
|
207
|
-
Rendered on-demand from your current <strong>${
|
|
207
|
+
Rendered on-demand from your current <strong>${_0(U)}</strong><br>
|
|
208
208
|
<strong>Humans like visuals. <span style="color:#00D4D4">We gave them one.</span></strong>
|
|
209
209
|
</footer>
|
|
210
210
|
</div>
|
|
211
211
|
</body>
|
|
212
212
|
</html>
|
|
213
|
-
`}function a7(q,$,U,Z="project.faf"){u7(k7(q,"project.html"),I9($,U,Z),"utf-8")}export{a7 as writeProjectHtml,k9 as validateFaf,K9 as slotsByCategory,u9 as scoreFafYaml,x7 as readFafRaw,y7 as readFaf,pq as kernel,S9 as isPlaceholder,F0 as getTier,j9 as getNextTier,I9 as generateProjectHtml,h7 as findFafFile,ZU as enrichScore,u as TIERS,w9 as SLOT_BY_PATH,t as SLOTS,UU as PLACEHOLDERS,R0 as FAF_HEX,b9 as ENTERPRISE_SLOTS,N9 as BASE_SLOTS};
|
|
213
|
+
`}function Yz($,Z,U,q="project.faf"){Uz(qz($,"project.html"),j4(Z,U,q),"utf-8")}var Bz="faf-interview/1",L0="(terse — 3-4 words)",S4=[{path:"project.name",question:"What is the name of this project?",header:"Name",type:"text",required:!0},{path:"project.goal",question:"What does this project do? (one sentence)",header:"Goal",type:"text",required:!0},{path:"human_context.who",question:`Who is this for? ${L0}`,header:"Who",type:"text",required:!0},{path:"human_context.what",question:`What are they building? ${L0}`,header:"What",type:"text",required:!0},{path:"human_context.why",question:`Why does it exist? ${L0}`,header:"Why",type:"text",required:!0},{path:"human_context.where",question:`Where does it run or ship? ${L0}`,header:"Where",type:"text",required:!0},{path:"human_context.when",question:`When — timeline or stage? ${L0}`,header:"When",type:"text",required:!0},{path:"human_context.how",question:`How is it built or used? ${L0}`,header:"How",type:"text",required:!0}],E4=[{path:"project.main_language",question:"What is the primary programming language?",header:"Language",type:"select",required:!0,options:[{label:"TypeScript",value:"TypeScript",description:"JavaScript with types"},{label:"JavaScript",value:"JavaScript",description:"Vanilla JS or Node.js"},{label:"Python",value:"Python",description:"Python 3.x"},{label:"Rust",value:"Rust",description:"Systems programming"},{label:"Go",value:"Go",description:"Golang"},{label:"Other",value:"Other",description:"Specify manually"}]},{path:"stack.frontend",question:"What frontend framework does it use?",header:"Frontend",type:"select",required:!1,options:[{label:"React",value:"React",description:"React.js"},{label:"Vue",value:"Vue",description:"Vue.js"},{label:"Svelte",value:"Svelte",description:"Svelte/SvelteKit"},{label:"Next.js",value:"Next.js",description:"React framework"},{label:"None",value:"None",description:"No frontend"},{label:"Other",value:"Other",description:"Specify manually"}]},{path:"stack.backend",question:"What backend framework does it use?",header:"Backend",type:"select",required:!1,options:[{label:"Express",value:"Express",description:"Node.js Express"},{label:"Fastify",value:"Fastify",description:"Node.js Fastify"},{label:"Django",value:"Django",description:"Python Django"},{label:"FastAPI",value:"FastAPI",description:"Python FastAPI"},{label:"None",value:"None",description:"No backend"},{label:"Other",value:"Other",description:"Specify manually"}]},{path:"stack.database",question:"What database does it use?",header:"Database",type:"select",required:!1,options:[{label:"PostgreSQL",value:"PostgreSQL",description:"Postgres"},{label:"MySQL",value:"MySQL",description:"MySQL/MariaDB"},{label:"SQLite",value:"SQLite",description:"Embedded SQL"},{label:"MongoDB",value:"MongoDB",description:"Document store"},{label:"None",value:"None",description:"No database"},{label:"Other",value:"Other",description:"Specify manually"}]},{path:"stack.runtime",question:"What runtime does it run on?",header:"Runtime",type:"text",required:!1},{path:"stack.hosting",question:"Where is it hosted or distributed?",header:"Hosting",type:"text",required:!1},{path:"stack.build",question:"What is the build tool?",header:"Build",type:"text",required:!1},{path:"stack.cicd",question:"What CI/CD does it use?",header:"CI/CD",type:"text",required:!1}],p$=[...S4,...E4],g4=new Map(p$.map(($)=>[$.path,$])),Vz=Object.fromEntries(p$.map(($)=>[$.path,$]));function Wz($){let Z=g4.get($);if(Z)return Z.question;let U=l$.get($)??f.find((q)=>q.canonical===$);return U?`${U.description}?`.replace(/\?\?$/,"?"):`${$}?`}function Dz($,Z){return p$.filter((U)=>{let q=U.path.split("."),X=$;for(let z of q)if(X&&typeof X==="object"&&z in X)X=X[z];else{X=void 0;break}if(X==="slotignored")return!1;return Z(X)})}import{createHash as y4}from"crypto";var Q9="faf-bench/1",Iz={"project.name":"What is the project's name?","project.goal":"What is the project's goal — what is it for?","project.main_language":"What is the primary programming language?","human_context.who":"Who is this project for?","human_context.what":"What are they building?","human_context.why":"Why does this project exist?","human_context.where":"Where does it run or get distributed?","human_context.when":"When — what is the project's timeline or stage?","human_context.how":"How is it built or used?"};function Oz($,Z){return Iz[$]??`What is the project's ${Z.replace(/\s*\(.*\)$/,"").toLowerCase()}?`}var x4=[["typescript","ts"],["javascript","js"],["python","py","python3"],["node","nodejs","node js","node.js"],["github actions","gh actions","actions"],["postgresql","postgres","pg"],["kubernetes","k8s"],["npm","npm registry"],["cloudflare workers","cf workers","workers"],["google cloud run","cloud run","gcp cloud run"]],n0=new Map;x4.forEach(($,Z)=>$.forEach((U)=>n0.set(U,Z)));var Pz=new Set(["a","an","the","and","or","of","for","to","in","on","with","is","it","its","their","your","via","by","using","use","used"]);function d$($){return $.toLowerCase().replace(/[^a-z0-9\s.+#-]/g," ").replace(/\.(?=\s|$)/g," ").replace(/\s+/g," ").trim()}function f4($){return d$($).split(" ").filter((Z)=>Z&&!Pz.has(Z))}function h4($,Z){let U=d$($),q=d$(Z);if(!U||!q)return!1;if(U===q)return!0;let X=n0.get(U);if(X!==void 0&&n0.get(q)===X)return!0;let z=f4($);if(z.length===0)return!1;let J=new Set(f4(Z));return z.every((H)=>{if(J.has(H))return!0;let Q=n0.get(H);return Q!==void 0&&[...J].some((G)=>n0.get(G)===Q)})}function Rz($){let Z=n$($),U=r0($),q=[],X={},z=0;for(let Q of f){if(Z.slots[Q.path]!=="populated")continue;let G=B9(U,Q);if(typeof G!=="string")continue;let W=G.trim();if(!W||o0.has(W.toLowerCase()))continue;z+=1,q.push({n:z,path:Q.path,question:Oz(Q.path,Q.description)}),X[z]=W}let J=JSON.stringify({v:Q9,q:q.map((Q)=>[Q.path,Q.question])}),H=y4("sha256").update(J).digest("hex").slice(0,12);return{version:Q9,qsetHash:H,questions:q,answers:X}}function _z($){return{version:$.version,qsetHash:$.qsetHash,questions:$.questions}}function Lz($,Z){let U=$.questions.map((X)=>{let z=Z[String(X.n)]??Z[X.path]??"";return{n:X.n,path:X.path,ok:typeof z==="string"&&z.trim()!==""&&h4($.answers[X.n],z)}}),q=$.questions.filter((X)=>!U[X.n-1].ok);return{correct:U.filter((X)=>X.ok).length,total:$.questions.length,misses:q,perQuestion:U}}function Tz($){let Z=JSON.stringify({v:$.version,qset:$.qsetHash,protocol:$.protocol,cold:$.cold??null,faf:$.faf??null});return{projection:Z,hash:y4("sha256").update(Z).digest("hex")}}import{existsSync as Fz,readdirSync as k4}from"fs";import{join as u4,dirname as Mz,extname as Az,resolve as Kz}from"path";var G9={"package.json":{frameworks:["Node.js","JavaScript","TypeScript"],slots:{packageManager:"npm/yarn/pnpm",mainLanguage:"JavaScript/TypeScript"},priority:35,intelligence:"ultra-high"},"README.md":{frameworks:[],slots:{targetUser:"developers",coreProblem:"understanding project",missionPurpose:"project documentation"},priority:25,intelligence:"high"},"requirements.txt":{frameworks:["Python"],slots:{packageManager:"pip",mainLanguage:"Python"},priority:35,intelligence:"ultra-high"},Pipfile:{frameworks:["Python"],slots:{packageManager:"pipenv",mainLanguage:"Python"},priority:35,intelligence:"ultra-high"},"pyproject.toml":{frameworks:["Python"],slots:{mainLanguage:"Python",runtime:"Python",backend:"Python"},priority:36,intelligence:"ultra-high"},Gemfile:{frameworks:["Ruby","Rails"],slots:{packageManager:"bundler",mainLanguage:"Ruby"},priority:35,intelligence:"ultra-high"},"composer.json":{frameworks:["PHP","Laravel","Symfony"],slots:{packageManager:"composer",mainLanguage:"PHP"},priority:35,intelligence:"ultra-high"},"Cargo.toml":{frameworks:["Rust"],slots:{packageManager:"cargo",mainLanguage:"Rust",buildTool:"cargo"},priority:36,intelligence:"ultra-high"},"go.mod":{frameworks:["Go"],slots:{packageManager:"go modules",mainLanguage:"Go",buildTool:"go build"},priority:36,intelligence:"ultra-high"},"pubspec.yaml":{frameworks:["Flutter","Dart"],slots:{packageManager:"pub",mainLanguage:"Dart",framework:"Flutter"},priority:35,intelligence:"ultra-high"},"pom.xml":{frameworks:["Java","Spring","Maven"],slots:{packageManager:"maven",mainLanguage:"Java",buildTool:"maven"},priority:35,intelligence:"ultra-high"},"build.gradle":{frameworks:["Java","Kotlin","Spring","Gradle"],slots:{packageManager:"gradle",mainLanguage:"Java/Kotlin",buildTool:"gradle"},priority:35,intelligence:"ultra-high"},"next.config.js":{frameworks:["Next.js"],slots:{framework:"Next.js",runtime:"Node.js",buildTool:"Next.js",mainLanguage:"JavaScript",server:"Node.js"},priority:30,intelligence:"high"},"next.config.mjs":{frameworks:["Next.js"],slots:{framework:"Next.js",runtime:"Node.js",buildTool:"Next.js",mainLanguage:"JavaScript",server:"Node.js"},priority:30,intelligence:"high"},"next.config.ts":{frameworks:["Next.js 13+"],slots:{framework:"Next.js 13+",runtime:"Node.js",buildTool:"Next.js",mainLanguage:"TypeScript",server:"Node.js"},priority:30,intelligence:"high"},"nuxt.config.js":{frameworks:["Nuxt 2"],slots:{framework:"Nuxt 2",runtime:"Node.js",buildTool:"Nuxt",mainLanguage:"JavaScript",server:"Node.js"},priority:30,intelligence:"high"},"nuxt.config.ts":{frameworks:["Nuxt 3"],slots:{framework:"Nuxt 3",runtime:"Node.js",buildTool:"Nuxt",mainLanguage:"TypeScript",server:"Node.js"},priority:30,intelligence:"high"},"svelte.config.js":{frameworks:["SvelteKit"],slots:{framework:"SvelteKit",buildTool:"Vite",mainLanguage:"JavaScript",server:"Node.js"},priority:30,intelligence:"high"},"angular.json":{frameworks:["Angular"],slots:{framework:"Angular",buildTool:"Angular CLI",mainLanguage:"TypeScript",server:"Node.js"},priority:30,intelligence:"high"},"manifest.json":{frameworks:["Chrome Extension","Browser Extension"],slots:{framework:"Chrome Extension",runtime:"Chrome/Browser",mainLanguage:"JavaScript",hosting:"Chrome Web Store",apiType:"Chrome APIs"},priority:35,intelligence:"ultra-high",confirmWith:["popup.html","background.js","content.js"]},"vue.config.js":{frameworks:["Vue"],slots:{framework:"Vue",buildTool:"Vue CLI",mainLanguage:"JavaScript"},priority:30,intelligence:"high"},"remix.config.js":{frameworks:["Remix"],slots:{framework:"Remix",runtime:"Node.js",mainLanguage:"JavaScript",server:"Node.js"},priority:30,intelligence:"high"},"gatsby-config.js":{frameworks:["Gatsby"],slots:{framework:"Gatsby",buildTool:"Gatsby",mainLanguage:"JavaScript",server:"Node.js"},priority:30,intelligence:"high"},"gatsby-config.ts":{frameworks:["Gatsby"],slots:{framework:"Gatsby",buildTool:"Gatsby",mainLanguage:"TypeScript",server:"Node.js"},priority:30,intelligence:"high"},"astro.config.mjs":{frameworks:["Astro"],slots:{framework:"Astro",buildTool:"Vite",mainLanguage:"JavaScript",server:"Node.js"},priority:30,intelligence:"high"},"redwood.toml":{frameworks:["RedwoodJS"],slots:{framework:"RedwoodJS",buildTool:"Webpack",mainLanguage:"JavaScript/TypeScript",server:"Node.js",database:"Prisma"},priority:30,intelligence:"high"},"blitz.config.ts":{frameworks:["Blitz.js"],slots:{framework:"Blitz.js",buildTool:"Next.js",mainLanguage:"TypeScript",server:"Node.js",database:"Prisma"},priority:30,intelligence:"high"},"qwik.config.ts":{frameworks:["Qwik"],slots:{framework:"Qwik",buildTool:"Vite",mainLanguage:"TypeScript",server:"Node.js"},priority:30,intelligence:"high"},"manage.py":{frameworks:["Django"],slots:{framework:"Django",backend:"Django",mainLanguage:"Python",server:"Django",apiType:"Django Views"},priority:30,intelligence:"high"},artisan:{frameworks:["Laravel"],slots:{framework:"Laravel",backend:"Laravel",mainLanguage:"PHP",server:"PHP",apiType:"Laravel Routes"},priority:30,intelligence:"high"},"mix.exs":{frameworks:["Phoenix","Elixir"],slots:{framework:"Phoenix",backend:"Phoenix",mainLanguage:"Elixir",server:"BEAM"},priority:30,intelligence:"high"},"nest-cli.json":{frameworks:["NestJS"],slots:{framework:"NestJS",backend:"NestJS",mainLanguage:"TypeScript",server:"Node.js",apiType:"REST API"},priority:30,intelligence:"high"},"strapi.config.js":{frameworks:["Strapi"],slots:{backend:"Strapi",apiType:"REST API",database:"Required",server:"Node.js"},priority:30,intelligence:"high"},Dockerfile:{frameworks:["Docker"],slots:{hosting:"Docker",connection:"Containerized"},priority:30,intelligence:"high"},"docker-compose.yml":{frameworks:["Docker Compose"],slots:{hosting:"Docker",connection:"Multi-container"},priority:30,intelligence:"high"},"docker-compose.yaml":{frameworks:["Docker Compose"],slots:{hosting:"Docker",connection:"Multi-container"},priority:30,intelligence:"high"},"kubernetes.yml":{frameworks:["Kubernetes"],slots:{hosting:"Kubernetes",connection:"Orchestrated"},priority:30,intelligence:"high"},"k8s.yaml":{frameworks:["Kubernetes"],slots:{hosting:"Kubernetes",connection:"Orchestrated"},priority:30,intelligence:"high"},"vercel.json":{frameworks:["Vercel"],slots:{hosting:"Vercel",cicd:"Vercel"},priority:30,intelligence:"high"},"netlify.toml":{frameworks:["Netlify"],slots:{hosting:"Netlify",cicd:"Netlify"},priority:30,intelligence:"high"},"render.yaml":{frameworks:["Render"],slots:{hosting:"Render",cicd:"Render"},priority:30,intelligence:"high"},"fly.toml":{frameworks:["Fly.io"],slots:{hosting:"Fly.io",cicd:"Fly.io"},priority:30,intelligence:"high"},"railway.json":{frameworks:["Railway"],slots:{hosting:"Railway",cicd:"Railway"},priority:30,intelligence:"high"},"railway.toml":{frameworks:["Railway"],slots:{hosting:"Railway",cicd:"Railway"},priority:30,intelligence:"high"},"app.yaml":{frameworks:["Google App Engine"],slots:{hosting:"Google Cloud",cicd:"Google Cloud"},priority:30,intelligence:"high"},Procfile:{frameworks:["Heroku"],slots:{hosting:"Heroku",cicd:"Heroku"},priority:30,intelligence:"high"},"vite.config.js":{frameworks:["Vite"],slots:{buildTool:"Vite"},priority:25,intelligence:"medium"},"vite.config.ts":{frameworks:["Vite"],slots:{buildTool:"Vite",mainLanguage:"TypeScript"},priority:25,intelligence:"medium"},"webpack.config.js":{frameworks:["Webpack"],slots:{buildTool:"Webpack"},priority:25,intelligence:"medium"},"rollup.config.js":{frameworks:["Rollup"],slots:{buildTool:"Rollup"},priority:25,intelligence:"medium"},"esbuild.config.js":{frameworks:["esbuild"],slots:{buildTool:"esbuild"},priority:25,intelligence:"medium"},"parcel.config.js":{frameworks:["Parcel"],slots:{buildTool:"Parcel"},priority:25,intelligence:"medium"},"snowpack.config.js":{frameworks:["Snowpack"],slots:{buildTool:"Snowpack"},priority:25,intelligence:"medium"},"tsconfig.json":{frameworks:["TypeScript"],slots:{mainLanguage:"TypeScript"},priority:25,intelligence:"medium"},"jsconfig.json":{frameworks:["JavaScript"],slots:{mainLanguage:"JavaScript"},priority:20,intelligence:"medium"},"babel.config.js":{frameworks:["Babel"],slots:{buildTool:"Babel"},priority:20,intelligence:"medium"},".babelrc":{frameworks:["Babel"],slots:{buildTool:"Babel"},priority:20,intelligence:"medium"},"jest.config.js":{frameworks:["Jest"],slots:{cicd:"Jest"},priority:25,intelligence:"medium"},"jest.config.ts":{frameworks:["Jest"],slots:{cicd:"Jest",mainLanguage:"TypeScript"},priority:25,intelligence:"medium"},"vitest.config.ts":{frameworks:["Vitest"],slots:{cicd:"Vitest",mainLanguage:"TypeScript"},priority:25,intelligence:"medium"},"cypress.config.js":{frameworks:["Cypress"],slots:{cicd:"Cypress"},priority:25,intelligence:"medium"},"playwright.config.ts":{frameworks:["Playwright"],slots:{cicd:"Playwright",mainLanguage:"TypeScript"},priority:25,intelligence:"medium"},"karma.conf.js":{frameworks:["Karma"],slots:{cicd:"Karma"},priority:20,intelligence:"medium"},"mocha.opts":{frameworks:["Mocha"],slots:{cicd:"Mocha"},priority:20,intelligence:"medium"},".rspec":{frameworks:["RSpec"],slots:{cicd:"RSpec",mainLanguage:"Ruby"},priority:25,intelligence:"medium"},"pytest.ini":{frameworks:["Pytest"],slots:{cicd:"Pytest",mainLanguage:"Python"},priority:25,intelligence:"medium"},"phpunit.xml":{frameworks:["PHPUnit"],slots:{cicd:"PHPUnit",mainLanguage:"PHP"},priority:25,intelligence:"medium"},"schema.prisma":{frameworks:["Prisma"],slots:{database:"Prisma ORM",connection:"Prisma"},priority:25,intelligence:"medium"},"drizzle.config.ts":{frameworks:["Drizzle"],slots:{database:"Drizzle ORM",connection:"Drizzle",mainLanguage:"TypeScript"},priority:25,intelligence:"medium"},"ormconfig.js":{frameworks:["TypeORM"],slots:{database:"TypeORM",connection:"TypeORM"},priority:25,intelligence:"medium"},"knexfile.js":{frameworks:["Knex.js"],slots:{database:"Knex.js",connection:"Knex.js"},priority:25,intelligence:"medium"},"sequelize.config.js":{frameworks:["Sequelize"],slots:{database:"Sequelize",connection:"Sequelize"},priority:25,intelligence:"medium"},"alembic.ini":{frameworks:["Alembic"],slots:{database:"Alembic",mainLanguage:"Python"},priority:25,intelligence:"medium"},".github/workflows":{frameworks:["GitHub Actions"],slots:{cicd:"GitHub Actions"},priority:25,intelligence:"medium"},".gitlab-ci.yml":{frameworks:["GitLab CI"],slots:{cicd:"GitLab CI"},priority:25,intelligence:"medium"},Jenkinsfile:{frameworks:["Jenkins"],slots:{cicd:"Jenkins"},priority:25,intelligence:"medium"},".circleci/config.yml":{frameworks:["CircleCI"],slots:{cicd:"CircleCI"},priority:25,intelligence:"medium"},".travis.yml":{frameworks:["Travis CI"],slots:{cicd:"Travis CI"},priority:25,intelligence:"medium"},"azure-pipelines.yml":{frameworks:["Azure DevOps"],slots:{cicd:"Azure DevOps"},priority:25,intelligence:"medium"},"bitbucket-pipelines.yml":{frameworks:["Bitbucket Pipelines"],slots:{cicd:"Bitbucket Pipelines"},priority:25,intelligence:"medium"},"tailwind.config.js":{frameworks:["Tailwind CSS"],slots:{cssFramework:"Tailwind CSS"},priority:20,intelligence:"medium"},"tailwind.config.ts":{frameworks:["Tailwind CSS"],slots:{cssFramework:"Tailwind CSS",mainLanguage:"TypeScript"},priority:20,intelligence:"medium"},"postcss.config.js":{frameworks:["PostCSS"],slots:{cssFramework:"PostCSS"},priority:20,intelligence:"medium"},"uno.config.ts":{frameworks:["UnoCSS"],slots:{cssFramework:"UnoCSS",mainLanguage:"TypeScript"},priority:20,intelligence:"medium"},"styled-components.config.js":{frameworks:["styled-components"],slots:{cssFramework:"styled-components",uiLibrary:"styled-components"},priority:20,intelligence:"medium"},"emotion.config.js":{frameworks:["Emotion"],slots:{cssFramework:"Emotion",uiLibrary:"Emotion"},priority:20,intelligence:"medium"},"metro.config.js":{frameworks:["React Native"],slots:{framework:"React Native",mainLanguage:"JavaScript"},priority:25,intelligence:"medium"},"expo.config.js":{frameworks:["Expo"],slots:{framework:"React Native",buildTool:"Expo"},priority:25,intelligence:"medium"},"app.json":{frameworks:["React Native","Expo"],slots:{framework:"React Native"},priority:20,intelligence:"medium",confirmWith:["expo"]},"capacitor.config.ts":{frameworks:["Capacitor"],slots:{framework:"Capacitor",mainLanguage:"TypeScript"},priority:25,intelligence:"medium"},"ionic.config.json":{frameworks:["Ionic"],slots:{framework:"Ionic",uiLibrary:"Ionic"},priority:25,intelligence:"medium"},"nx.json":{frameworks:["Nx"],slots:{buildTool:"Nx"},priority:25,intelligence:"medium"},"turbo.json":{frameworks:["Turborepo"],slots:{buildTool:"Turborepo"},priority:25,intelligence:"medium"},"lerna.json":{frameworks:["Lerna"],slots:{buildTool:"Lerna"},priority:25,intelligence:"medium"},"rush.json":{frameworks:["Rush"],slots:{buildTool:"Rush"},priority:25,intelligence:"medium"},"pnpm-workspace.yaml":{frameworks:["pnpm workspaces"],slots:{packageManager:"pnpm",buildTool:"pnpm workspaces"},priority:25,intelligence:"medium"},"*.svelte":{frameworks:["Svelte","SvelteKit"],slots:{framework:"Svelte"},priority:15,intelligence:"low"},"*.vue":{frameworks:["Vue"],slots:{framework:"Vue"},priority:15,intelligence:"low"},"*.jsx":{frameworks:["React"],slots:{framework:"React",mainLanguage:"JavaScript"},priority:15,intelligence:"low"},"*.ts":{frameworks:["TypeScript"],slots:{mainLanguage:"TypeScript"},priority:15,intelligence:"low"},"*.tsx":{frameworks:["React","TypeScript"],slots:{framework:"React",mainLanguage:"TypeScript"},priority:15,intelligence:"low"},"*.py":{frameworks:["Python"],slots:{mainLanguage:"Python"},priority:15,intelligence:"low"},"*.rb":{frameworks:["Ruby"],slots:{mainLanguage:"Ruby"},priority:15,intelligence:"low"},"*.php":{frameworks:["PHP"],slots:{mainLanguage:"PHP"},priority:15,intelligence:"low"},"*.java":{frameworks:["Java"],slots:{mainLanguage:"Java"},priority:15,intelligence:"low"},"*.kt":{frameworks:["Kotlin"],slots:{mainLanguage:"Kotlin"},priority:15,intelligence:"low"},"*.swift":{frameworks:["Swift"],slots:{mainLanguage:"Swift"},priority:15,intelligence:"low"},"*.go":{frameworks:["Go"],slots:{mainLanguage:"Go"},priority:15,intelligence:"low"},"*.rs":{frameworks:["Rust"],slots:{mainLanguage:"Rust"},priority:15,intelligence:"low"},"*.dart":{frameworks:["Flutter","Dart"],slots:{mainLanguage:"Dart"},priority:15,intelligence:"low"},"*.ex":{frameworks:["Elixir"],slots:{mainLanguage:"Elixir"},priority:15,intelligence:"low"},"*.exs":{frameworks:["Elixir"],slots:{mainLanguage:"Elixir"},priority:15,intelligence:"low"},"*.scala":{frameworks:["Scala"],slots:{mainLanguage:"Scala"},priority:15,intelligence:"low"},"*.clj":{frameworks:["Clojure"],slots:{mainLanguage:"Clojure"},priority:15,intelligence:"low"},"*.lua":{frameworks:["Lua"],slots:{mainLanguage:"Lua"},priority:15,intelligence:"low"},"*.r":{frameworks:["R"],slots:{mainLanguage:"R"},priority:15,intelligence:"low"},"*.R":{frameworks:["R"],slots:{mainLanguage:"R"},priority:15,intelligence:"low"},"*.jl":{frameworks:["Julia"],slots:{mainLanguage:"Julia"},priority:15,intelligence:"low"},"*.nim":{frameworks:["Nim"],slots:{mainLanguage:"Nim"},priority:15,intelligence:"low"},"*.zig":{frameworks:["Zig"],slots:{mainLanguage:"Zig"},priority:15,intelligence:"low"},"build.zig":{frameworks:["Zig"],slots:{packageManager:"Zig Package Manager",mainLanguage:"Zig",buildTool:"zig build",framework:"Zig",build:"zig build"},priority:35,intelligence:"ultra-high"},"openapi.json":{frameworks:["OpenAPI"],slots:{apiType:"REST API",backend:"API Server"},priority:30,intelligence:"high"},"openapi.yaml":{frameworks:["OpenAPI"],slots:{apiType:"REST API",backend:"API Server"},priority:30,intelligence:"high"},"swagger.json":{frameworks:["Swagger"],slots:{apiType:"REST API",backend:"API Server"},priority:30,intelligence:"high"},"graphql.schema":{frameworks:["GraphQL"],slots:{apiType:"GraphQL",backend:"GraphQL Server"},priority:30,intelligence:"high"},"schema.graphql":{frameworks:["GraphQL"],slots:{apiType:"GraphQL",backend:"GraphQL Server"},priority:30,intelligence:"high"},".graphqlconfig":{frameworks:["GraphQL"],slots:{apiType:"GraphQL"},priority:25,intelligence:"medium"},"redux.config.js":{frameworks:["Redux"],slots:{stateManagement:"Redux"},priority:20,intelligence:"medium"},"mobx.config.js":{frameworks:["MobX"],slots:{stateManagement:"MobX"},priority:20,intelligence:"medium"},"vuex.config.js":{frameworks:["Vuex"],slots:{stateManagement:"Vuex",framework:"Vue"},priority:20,intelligence:"medium"},"pinia.config.js":{frameworks:["Pinia"],slots:{stateManagement:"Pinia",framework:"Vue"},priority:20,intelligence:"medium"},"zustand.config.js":{frameworks:["Zustand"],slots:{stateManagement:"Zustand"},priority:20,intelligence:"medium"},".eslintrc.js":{frameworks:["ESLint"],slots:{},priority:15,intelligence:"low"},".eslintrc.json":{frameworks:["ESLint"],slots:{},priority:15,intelligence:"low"},".prettierrc":{frameworks:["Prettier"],slots:{},priority:15,intelligence:"low"},".prettierrc.json":{frameworks:["Prettier"],slots:{},priority:15,intelligence:"low"},"biome.json":{frameworks:["Biome"],slots:{},priority:15,intelligence:"low"},".editorconfig":{frameworks:["EditorConfig"],slots:{},priority:10,intelligence:"low"},"serverless.yml":{frameworks:["Serverless Framework"],slots:{hosting:"AWS Lambda/Azure/GCP",backend:"Serverless",apiType:"API Gateway"},priority:30,intelligence:"high"},"serverless.yaml":{frameworks:["Serverless Framework"],slots:{hosting:"AWS Lambda/Azure/GCP",backend:"Serverless",apiType:"API Gateway"},priority:30,intelligence:"high"},"sam.yaml":{frameworks:["AWS SAM"],slots:{hosting:"AWS Lambda",backend:"AWS SAM",cicd:"AWS SAM CLI"},priority:30,intelligence:"high"},"template.yaml":{frameworks:["AWS SAM","CloudFormation"],slots:{hosting:"AWS",backend:"AWS SAM/CloudFormation",cicd:"AWS"},priority:25,intelligence:"medium",confirmWith:["samconfig.toml"]},"amplify.yml":{frameworks:["AWS Amplify"],slots:{hosting:"AWS Amplify",backend:"AWS Amplify",cicd:"AWS Amplify"},priority:30,intelligence:"high"},Podfile:{frameworks:["CocoaPods","iOS"],slots:{packageManager:"CocoaPods",mainLanguage:"Swift/Objective-C",framework:"iOS Native"},priority:30,intelligence:"high"},"build.gradle.kts":{frameworks:["Gradle Kotlin DSL","Android","Kotlin"],slots:{packageManager:"Gradle",mainLanguage:"Kotlin",buildTool:"Gradle Kotlin DSL",framework:"Android"},priority:30,intelligence:"high"},"*.ipynb":{frameworks:["Jupyter","Python"],slots:{mainLanguage:"Python",framework:"Jupyter Notebook"},priority:30,intelligence:"high"},MLproject:{frameworks:["MLflow"],slots:{mainLanguage:"Python",framework:"MLflow",backend:"MLflow",cicd:"MLflow"},priority:30,intelligence:"high"},"dvc.yaml":{frameworks:["DVC","Data Version Control"],slots:{mainLanguage:"Python",framework:"DVC",cicd:"DVC Pipelines"},priority:30,intelligence:"high"},"dvc.lock":{frameworks:["DVC"],slots:{framework:"DVC"},priority:20,intelligence:"medium"},"wrangler.toml":{frameworks:["Cloudflare Workers","Cloudflare"],slots:{hosting:"Cloudflare Workers",backend:"Cloudflare Workers",runtime:"V8 Isolates"},priority:30,intelligence:"high"},"deno.json":{frameworks:["Deno"],slots:{runtime:"Deno",mainLanguage:"TypeScript",packageManager:"Deno"},priority:30,intelligence:"high"},"bun.lockb":{frameworks:["Bun"],slots:{runtime:"Bun",packageManager:"Bun",mainLanguage:"TypeScript/JavaScript"},priority:30,intelligence:"high"},"codecov.yml":{frameworks:["Codecov"],slots:{cicd:"Codecov"},priority:25,intelligence:"high"},"dependabot.yml":{frameworks:["Dependabot","GitHub"],slots:{cicd:"Dependabot"},priority:25,intelligence:"high"},"renovate.json":{frameworks:["Renovate"],slots:{cicd:"Renovate"},priority:25,intelligence:"high"},Makefile:{frameworks:["Make","GNU Make"],slots:{buildTool:"Make"},priority:30,intelligence:"high"},"CMakeLists.txt":{frameworks:["CMake","C","C++"],slots:{buildTool:"CMake",mainLanguage:"C/C++"},priority:30,intelligence:"high"},"meson.build":{frameworks:["Meson","C","C++"],slots:{buildTool:"Meson",mainLanguage:"C/C++"},priority:30,intelligence:"high"},"*.c":{frameworks:["C"],slots:{mainLanguage:"C"},priority:30,intelligence:"high"},"*.cpp":{frameworks:["C++"],slots:{mainLanguage:"C++"},priority:30,intelligence:"high"},"*.cc":{frameworks:["C++"],slots:{mainLanguage:"C++"},priority:30,intelligence:"high"},"*.cxx":{frameworks:["C++"],slots:{mainLanguage:"C++"},priority:25,intelligence:"high"},"*.h":{frameworks:["C","C++"],slots:{mainLanguage:"C/C++"},priority:25,intelligence:"high"},"*.hpp":{frameworks:["C++"],slots:{mainLanguage:"C++"},priority:25,intelligence:"high"},"*.hxx":{frameworks:["C++"],slots:{mainLanguage:"C++"},priority:20,intelligence:"medium"},".env":{frameworks:[],slots:{},priority:20,intelligence:"medium"},".env.example":{frameworks:[],slots:{},priority:25,intelligence:"high"},".env.local":{frameworks:[],slots:{},priority:20,intelligence:"medium"},".env.development":{frameworks:[],slots:{},priority:20,intelligence:"medium"},".env.production":{frameworks:[],slots:{},priority:20,intelligence:"medium"},"skaffold.yaml":{frameworks:["Skaffold","Kubernetes"],slots:{hosting:"Kubernetes",cicd:"Skaffold"},priority:30,intelligence:"high"},"Chart.yaml":{frameworks:["Helm","Kubernetes"],slots:{hosting:"Kubernetes",backend:"Helm"},priority:30,intelligence:"high"},"values.yaml":{frameworks:["Helm","Kubernetes"],slots:{hosting:"Kubernetes"},priority:25,intelligence:"high",confirmWith:["Chart.yaml"]},"pulumi.yaml":{frameworks:["Pulumi"],slots:{hosting:"Cloud",cicd:"Pulumi"},priority:30,intelligence:"high"},"Pulumi.yaml":{frameworks:["Pulumi"],slots:{hosting:"Cloud",cicd:"Pulumi"},priority:30,intelligence:"high"},"terragrunt.hcl":{frameworks:["Terragrunt","Terraform"],slots:{hosting:"Cloud",cicd:"Terragrunt"},priority:30,intelligence:"high"},"ansible.yml":{frameworks:["Ansible"],slots:{cicd:"Ansible"},priority:30,intelligence:"high"},"playbook.yml":{frameworks:["Ansible"],slots:{cicd:"Ansible"},priority:25,intelligence:"high"},"*.cs":{frameworks:["C#",".NET","Unity"],slots:{mainLanguage:"C#"},priority:30,intelligence:"high"},"*.m":{frameworks:["Objective-C","iOS"],slots:{mainLanguage:"Objective-C"},priority:25,intelligence:"high"},".nvmrc":{frameworks:["Node.js","nvm"],slots:{runtime:"Node.js"},priority:25,intelligence:"high"},".tool-versions":{frameworks:["asdf"],slots:{},priority:25,intelligence:"high"},".ruby-version":{frameworks:["Ruby","rbenv"],slots:{mainLanguage:"Ruby",runtime:"Ruby"},priority:25,intelligence:"high"},".python-version":{frameworks:["Python","pyenv"],slots:{mainLanguage:"Python",runtime:"Python"},priority:25,intelligence:"high"},".dockerignore":{frameworks:["Docker"],slots:{},priority:20,intelligence:"medium"},".gitattributes":{frameworks:["Git"],slots:{},priority:15,intelligence:"low"},".npmrc":{frameworks:["npm","Node.js"],slots:{packageManager:"npm"},priority:20,intelligence:"medium"},"sonar-project.properties":{frameworks:["SonarQube","SonarCloud"],slots:{cicd:"SonarQube"},priority:25,intelligence:"high"},"*.fs":{frameworks:["F#",".NET"],slots:{mainLanguage:"F#"},priority:25,intelligence:"high"},"*.mm":{frameworks:["Objective-C++","iOS","macOS"],slots:{mainLanguage:"Objective-C++"},priority:25,intelligence:"high"},"build.zig.zon":{frameworks:["Zig"],slots:{mainLanguage:"Zig",packageManager:"Zig Package Manager",buildTool:"zig build"},priority:35,intelligence:"ultra-high"},"gleam.toml":{frameworks:["Gleam","BEAM","Erlang"],slots:{mainLanguage:"Gleam",runtime:"BEAM",packageManager:"Gleam"},priority:30,intelligence:"high"},"bunfig.toml":{frameworks:["Bun"],slots:{runtime:"Bun",packageManager:"Bun",buildTool:"Bun"},priority:30,intelligence:"high"},"mise.toml":{frameworks:["mise"],slots:{},priority:25,intelligence:"high"},".mise.toml":{frameworks:["mise"],slots:{},priority:25,intelligence:"high"},"manifest.toml":{frameworks:["Flox","Nix"],slots:{},priority:25,intelligence:"high",confirmWith:[".flox"]},justfile:{frameworks:["Just"],slots:{buildTool:"Just"},priority:25,intelligence:"high"},".pre-commit-config.yaml":{frameworks:["pre-commit"],slots:{cicd:"pre-commit"},priority:25,intelligence:"high"},"CLAUDE.md":{frameworks:["Claude Code"],slots:{},priority:30,intelligence:"high",confirmWith:[".claude"]}};var wz=new Set(["node_modules",".git","dist","build","venv",".venv","__pycache__","target","coverage",".next",".svelte-kit","vendor"]),Nz=new Set([".py",".ts",".tsx",".js",".jsx",".svelte",".vue",".rb",".go",".rs",".php",".java",".kt",".swift"]),bz={mainLanguage:["project","main_language"],main_language:["project","main_language"],framework:["stack","frontend"],cssFramework:["stack","css_framework"],css:["stack","css_framework"],uiLibrary:["stack","ui_library"],ui_library:["stack","ui_library"],stateManagement:["stack","state_management"],state:["stack","state_management"],backend:["stack","backend"],apiType:["stack","api_type"],api:["stack","api_type"],runtime:["stack","runtime"],database:["stack","database"],db:["stack","database"],connection:["stack","connection"],hosting:["stack","hosting"],buildTool:["stack","build"],build_tool:["stack","build"],build:["stack","build"],packageManager:["stack","package_manager"],pkg_manager:["stack","package_manager"],cicd:["stack","cicd"]},Cz=[["packageManager","package-manager"],["pkg_manager","package-manager"],["mainLanguage","language"],["main_language","language"],["framework","framework"],["backend","backend"],["database","database"],["db","database"],["cicd","ci-cd"],["hosting","hosting"],["buildTool","build"],["build_tool","build"],["build","build"],["runtime","runtime"],["cssFramework","css"],["css","css"],["uiLibrary","ui-library"],["stateManagement","state-management"],["apiType","api"],["api","api"]];function jz($,Z){for(let[U,q]of Cz)if(U in $)return q;return Z.length>0?"framework":"config"}function Sz($){let Z=[],U=Kz($),q=Fz(u4($,".git"));for(let X=0;X<10;X++){let z;try{z=k4(U)}catch{break}for(let H of z){let Q=G9[H];if(Q)Z.push({slots:Q.slots||{},priority:Q.priority,frameworks:Q.frameworks,fileName:H})}if(q&&X===0)break;let J=Mz(U);if(J===U)break;U=J}return Z}function Ez($){let Z=[];for(let U of m4($,2,{count:0})){let q=G9[`*${U}`],X=q?.slots?.mainLanguage;if(X)Z.push({slots:{mainLanguage:X},priority:q.priority,frameworks:q.frameworks})}return Z}function v4($){let Z=[...Sz($),...Ez($)],U={},q={},X=new Set;for(let G of Z){G.frameworks.forEach((W)=>X.add(W));for(let[W,Y]of Object.entries(G.slots))if(Y&&!Y.includes("/")&&(!(W in U)||G.priority>q[W]))U[W]=Y,q[W]=G.priority}let z=new Map;for(let G of Z){if(!G.fileName)continue;if(!z.has(G.fileName))z.set(G.fileName,{fileName:G.fileName,category:jz(G.slots,G.frameworks),priority:G.priority})}let J=[...z.values()].sort((G,W)=>W.priority-G.priority||G.fileName.localeCompare(W.fileName)),H=[];if(U.mainLanguage)H.push(U.mainLanguage.toLowerCase());if(U.framework)H.push(U.framework.toLowerCase());let Q=H.length>0?H.join("-"):"unknown-stack";return{slotFills:U,frameworks:[...X],confirmedCount:Z.length,discoveredFormats:J,stackSignature:Q}}function gz($){let{slotFills:Z}=v4($),U={};for(let[q,X]of Object.entries(Z)){let z=bz[q];if(!z||!X)continue;let[J,H]=z;if(J==="project")(U.project??={})[H]=X;else(U.stack??={})[H]=X}return U}function m4($,Z,U){let q=new Set;if(Z<0||U.count>400)return q;let X;try{X=k4($,{withFileTypes:!0})}catch{return q}for(let z of X){if(U.count++>400)break;if(!z.isDirectory()){let J=Az(z.name);if(Nz.has(J))q.add(J);continue}if(wz.has(z.name)||z.name.startsWith("."))continue;for(let J of m4(u4($,z.name),Z-1,U))q.add(J)}return q}export{Yz as writeProjectHtml,z8 as validateFaf,gz as turboCatSlots,v4 as turboCatScan,i4 as slotsByCategory,n$ as scoreFafYaml,K4 as readFafRaw,Zz as readFaf,Wz as questionForSlot,_z as publicQuestions,d$ as normalizeAnswer,r$ as kernel,n4 as isPlaceholder,Dz as interviewForMissing,Lz as gradeAnswers,A0 as getTier,o4 as getNextTier,j4 as generateProjectHtml,w4 as findFafFile,V9 as enrichScore,Rz as deriveQuestionSet,Tz as buildReceipt,h4 as answersMatch,u as TIERS,E4 as STACK_INTERVIEW,l$ as SLOT_BY_PATH,f as SLOTS,S4 as SIX_WS_INTERVIEW,o0 as PLACEHOLDERS,Bz as INTERVIEW_VERSION,Vz as INTERVIEW_PATHS,g4 as INTERVIEW_BY_PATH,p$ as INTERVIEW,M0 as FAF_HEX,r4 as ENTERPRISE_SLOTS,Q9 as BENCH_VERSION,s4 as BASE_SLOTS,x4 as ALIAS_GROUPS};
|
|
214
214
|
|
|
215
|
-
//# debugId=
|
|
215
|
+
//# debugId=5F772E0C9030FDBE64756E2164756E21
|
|
216
216
|
//# sourceMappingURL=index.js.map
|