bwsr 0.3.0 → 0.3.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/bwsr.js +169 -134
- package/package.json +1 -1
package/dist/bwsr.js
CHANGED
|
@@ -1,173 +1,208 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
import{createRequire as
|
|
3
|
-
`)}}f.defaultYaml={explicit:!1,version:"1.2"};f.defaultTags={"!!":"tag:yaml.org,2002:"};
|
|
2
|
+
import{createRequire as sU}from"node:module";var lU=Object.create;var{getPrototypeOf:cU,defineProperty:mq,getOwnPropertyNames:aU}=Object;var iU=Object.prototype.hasOwnProperty;var M0=(q,$,U)=>{U=q!=null?lU(cU(q)):{};let X=$||!q||!q.__esModule?mq(U,"default",{value:q,enumerable:!0}):U;for(let H of aU(q))if(!iU.call(X,H))mq(X,H,{get:()=>q[H],enumerable:!0});return X};var L=(q,$)=>()=>($||q(($={exports:{}}).exports,$),$.exports);var pq=(q,$)=>{for(var U in $)mq(q,U,{get:$[U],enumerable:!0,configurable:!0,set:(X)=>$[U]=()=>X})};var dq=(q,$)=>()=>(q&&($=q(q=0)),$);var q0=sU(import.meta.url);var J9={};pq(J9,{getPaths:()=>N,ensureDirectories:()=>K0});import{homedir as rU}from"os";import{join as B0}from"path";import{mkdir as G9}from"fs/promises";function N(){let q=B0(rU(),".bwsr"),$=B0(q,"profiles"),U=B0(q,"sockets");return{root:q,profiles:$,sockets:U,watchdogSocket:B0(U,"watchdog.sock"),profile:(X)=>B0($,`${X}.yaml`),sessionSocket:(X)=>B0(U,`${X}.sock`)}}async function K0(){let q=N();await G9(q.profiles,{recursive:!0}),await G9(q.sockets,{recursive:!0})}var T0=()=>{};var K=L((X8)=>{var lq=Symbol.for("yaml.alias"),Q9=Symbol.for("yaml.document"),o0=Symbol.for("yaml.map"),Y9=Symbol.for("yaml.pair"),cq=Symbol.for("yaml.scalar"),t0=Symbol.for("yaml.seq"),v=Symbol.for("yaml.node.type"),nU=(q)=>!!q&&typeof q==="object"&&q[v]===lq,oU=(q)=>!!q&&typeof q==="object"&&q[v]===Q9,tU=(q)=>!!q&&typeof q==="object"&&q[v]===o0,eU=(q)=>!!q&&typeof q==="object"&&q[v]===Y9,B9=(q)=>!!q&&typeof q==="object"&&q[v]===cq,q8=(q)=>!!q&&typeof q==="object"&&q[v]===t0;function T9(q){if(q&&typeof q==="object")switch(q[v]){case o0:case t0:return!0}return!1}function $8(q){if(q&&typeof q==="object")switch(q[v]){case lq:case o0:case cq:case t0:return!0}return!1}var U8=(q)=>(B9(q)||T9(q))&&!!q.anchor;X8.ALIAS=lq;X8.DOC=Q9;X8.MAP=o0;X8.NODE_TYPE=v;X8.PAIR=Y9;X8.SCALAR=cq;X8.SEQ=t0;X8.hasAnchor=U8;X8.isAlias=nU;X8.isCollection=T9;X8.isDocument=oU;X8.isMap=tU;X8.isNode=$8;X8.isPair=eU;X8.isScalar=B9;X8.isSeq=q8});var w0=L((R8)=>{var C=K(),E=Symbol("break visit"),W9=Symbol("skip children"),h=Symbol("remove node");function e0(q,$){let U=O9($);if(C.isDocument(q)){if(W0(null,q.contents,U,Object.freeze([q]))===h)q.contents=null}else W0(null,q,U,Object.freeze([]))}e0.BREAK=E;e0.SKIP=W9;e0.REMOVE=h;function W0(q,$,U,X){let H=_9(q,$,U,X);if(C.isNode(H)||C.isPair(H))return L9(q,X,H),W0(q,H,U,X);if(typeof H!=="symbol"){if(C.isCollection($)){X=Object.freeze(X.concat($));for(let Z=0;Z<$.items.length;++Z){let z=W0(Z,$.items[Z],U,X);if(typeof z==="number")Z=z-1;else if(z===E)return E;else if(z===h)$.items.splice(Z,1),Z-=1}}else if(C.isPair($)){X=Object.freeze(X.concat($));let Z=W0("key",$.key,U,X);if(Z===E)return E;else if(Z===h)$.key=null;let z=W0("value",$.value,U,X);if(z===E)return E;else if(z===h)$.value=null}}return H}async function qq(q,$){let U=O9($);if(C.isDocument(q)){if(await O0(null,q.contents,U,Object.freeze([q]))===h)q.contents=null}else await O0(null,q,U,Object.freeze([]))}qq.BREAK=E;qq.SKIP=W9;qq.REMOVE=h;async function O0(q,$,U,X){let H=await _9(q,$,U,X);if(C.isNode(H)||C.isPair(H))return L9(q,X,H),O0(q,H,U,X);if(typeof H!=="symbol"){if(C.isCollection($)){X=Object.freeze(X.concat($));for(let Z=0;Z<$.items.length;++Z){let z=await O0(Z,$.items[Z],U,X);if(typeof z==="number")Z=z-1;else if(z===E)return E;else if(z===h)$.items.splice(Z,1),Z-=1}}else if(C.isPair($)){X=Object.freeze(X.concat($));let Z=await O0("key",$.key,U,X);if(Z===E)return E;else if(Z===h)$.key=null;let z=await O0("value",$.value,U,X);if(z===E)return E;else if(z===h)$.value=null}}return H}function O9(q){if(typeof q==="object"&&(q.Collection||q.Node||q.Value))return Object.assign({Alias:q.Node,Map:q.Node,Scalar:q.Node,Seq:q.Node},q.Value&&{Map:q.Value,Scalar:q.Value,Seq:q.Value},q.Collection&&{Map:q.Collection,Seq:q.Collection},q);return q}function _9(q,$,U,X){if(typeof U==="function")return U(q,$,X);if(C.isMap($))return U.Map?.(q,$,X);if(C.isSeq($))return U.Seq?.(q,$,X);if(C.isPair($))return U.Pair?.(q,$,X);if(C.isScalar($))return U.Scalar?.(q,$,X);if(C.isAlias($))return U.Alias?.(q,$,X);return}function L9(q,$,U){let X=$[$.length-1];if(C.isCollection(X))X.items[q]=U;else if(C.isPair(X))if(q==="key")X.key=U;else X.value=U;else if(C.isDocument(X))X.contents=U;else{let H=C.isAlias(X)?"alias":"scalar";throw Error(`Cannot replace node with ${H} parent`)}}R8.visit=e0;R8.visitAsync=qq});var aq=L((w8)=>{var D9=K(),P8=w0(),M8={"!":"%21",",":"%2C","[":"%5B","]":"%5D","{":"%7B","}":"%7D"},K8=(q)=>q.replace(/[!,[\]{}]/g,($)=>M8[$]);class f{constructor(q,$){this.docStart=null,this.docEnd=!1,this.yaml=Object.assign({},f.defaultYaml,q),this.tags=Object.assign({},f.defaultTags,$)}clone(){let q=new f(this.yaml,this.tags);return q.docStart=this.docStart,q}atDocument(){let q=new f(this.yaml,this.tags);switch(this.yaml.version){case"1.1":this.atNextDocument=!0;break;case"1.2":this.atNextDocument=!1,this.yaml={explicit:f.defaultYaml.explicit,version:"1.2"},this.tags=Object.assign({},f.defaultTags);break}return q}add(q,$){if(this.atNextDocument)this.yaml={explicit:f.defaultYaml.explicit,version:"1.1"},this.tags=Object.assign({},f.defaultTags),this.atNextDocument=!1;let U=q.trim().split(/[ \t]+/),X=U.shift();switch(X){case"%TAG":{if(U.length!==2){if($(0,"%TAG directive should contain exactly two parts"),U.length<2)return!1}let[H,Z]=U;return this.tags[H]=Z,!0}case"%YAML":{if(this.yaml.explicit=!0,U.length!==1)return $(0,"%YAML directive should contain exactly one part"),!1;let[H]=U;if(H==="1.1"||H==="1.2")return this.yaml.version=H,!0;else{let Z=/^\d+\.\d+$/.test(H);return $(6,`Unsupported YAML version ${H}`,Z),!1}}default:return $(0,`Unknown directive ${X}`,!0),!1}}tagName(q,$){if(q==="!")return"!";if(q[0]!=="!")return $(`Not a valid tag: ${q}`),null;if(q[1]==="<"){let Z=q.slice(2,-1);if(Z==="!"||Z==="!!")return $(`Verbatim tags aren't resolved, so ${q} is invalid.`),null;if(q[q.length-1]!==">")$("Verbatim tags must end with a >");return Z}let[,U,X]=q.match(/^(.*!)([^!]*)$/s);if(!X)$(`The ${q} tag has no suffix`);let H=this.tags[U];if(H)try{return H+decodeURIComponent(X)}catch(Z){return $(String(Z)),null}if(U==="!")return q;return $(`Could not resolve tag: ${q}`),null}tagString(q){for(let[$,U]of Object.entries(this.tags))if(q.startsWith(U))return $+K8(q.substring(U.length));return q[0]==="!"?q:`!<${q}>`}toString(q){let $=this.yaml.explicit?[`%YAML ${this.yaml.version||"1.2"}`]:[],U=Object.entries(this.tags),X;if(q&&U.length>0&&D9.isNode(q.contents)){let H={};P8.visit(q.contents,(Z,z)=>{if(D9.isNode(z)&&z.tag)H[z.tag]=!0}),X=Object.keys(H)}else X=[];for(let[H,Z]of U){if(H==="!!"&&Z==="tag:yaml.org,2002:")continue;if(!q||X.some((z)=>z.startsWith(Z)))$.push(`%TAG ${H} ${Z}`)}return $.join(`
|
|
3
|
+
`)}}f.defaultYaml={explicit:!1,version:"1.2"};f.defaultTags={"!!":"tag:yaml.org,2002:"};w8.Directives=f});var $q=L((C8)=>{var I9=K(),b8=w0();function S8(q){if(/[\x00-\x19\s,[\]{}]/.test(q)){let U=`Anchor must not contain whitespace or control characters: ${JSON.stringify(q)}`;throw Error(U)}return!0}function V9(q){let $=new Set;return b8.visit(q,{Value(U,X){if(X.anchor)$.add(X.anchor)}}),$}function R9(q,$){for(let U=1;;++U){let X=`${q}${U}`;if(!$.has(X))return X}}function j8(q,$){let U=[],X=new Map,H=null;return{onAnchor:(Z)=>{U.push(Z),H??(H=V9(q));let z=R9($,H);return H.add(z),z},setAnchors:()=>{for(let Z of U){let z=X.get(Z);if(typeof z==="object"&&z.anchor&&(I9.isScalar(z.node)||I9.isCollection(z.node)))z.node.anchor=z.anchor;else{let G=Error("Failed to resolve repeated object (this should not happen)");throw G.source=Z,G}}},sourceObjects:X}}C8.anchorIsValid=S8;C8.anchorNames=V9;C8.createNodeAnchors=j8;C8.findNewAnchor=R9});var iq=L((x8)=>{function N0(q,$,U,X){if(X&&typeof X==="object")if(Array.isArray(X))for(let H=0,Z=X.length;H<Z;++H){let z=X[H],G=N0(q,X,String(H),z);if(G===void 0)delete X[H];else if(G!==z)X[H]=G}else if(X instanceof Map)for(let H of Array.from(X.keys())){let Z=X.get(H),z=N0(q,X,H,Z);if(z===void 0)X.delete(H);else if(z!==Z)X.set(H,z)}else if(X instanceof Set)for(let H of Array.from(X)){let Z=N0(q,X,H,H);if(Z===void 0)X.delete(H);else if(Z!==H)X.delete(H),X.add(Z)}else for(let[H,Z]of Object.entries(X)){let z=N0(q,X,H,Z);if(z===void 0)delete X[H];else if(z!==Z)X[H]=z}return q.call($,U,X)}x8.applyReviver=N0});var l=L((k8)=>{var h8=K();function F9(q,$,U){if(Array.isArray(q))return q.map((X,H)=>F9(X,String(H),U));if(q&&typeof q.toJSON==="function"){if(!U||!h8.hasAnchor(q))return q.toJSON($,U);let X={aliasCount:0,count:1,res:void 0};U.anchors.set(q,X),U.onCreate=(Z)=>{X.res=Z,delete U.onCreate};let H=q.toJSON($,U);if(U.onCreate)U.onCreate(H);return H}if(typeof q==="bigint"&&!U?.keep)return Number(q);return q}k8.toJS=F9});var Uq=L((d8)=>{var m8=iq(),A9=K(),p8=l();class P9{constructor(q){Object.defineProperty(this,A9.NODE_TYPE,{value:q})}clone(){let q=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));if(this.range)q.range=this.range.slice();return q}toJS(q,{mapAsMap:$,maxAliasCount:U,onAnchor:X,reviver:H}={}){if(!A9.isDocument(q))throw TypeError("A document argument is required");let Z={anchors:new Map,doc:q,keep:!0,mapAsMap:$===!0,mapKeyWarned:!1,maxAliasCount:typeof U==="number"?U:100},z=p8.toJS(this,"",Z);if(typeof X==="function")for(let{count:G,res:J}of Z.anchors.values())X(J,G);return typeof H==="function"?m8.applyReviver(H,{"":z},"",z):z}}d8.NodeBase=P9});var b0=L((r8)=>{var c8=$q(),a8=w0(),_0=K(),i8=Uq(),s8=l();class M9 extends i8.NodeBase{constructor(q){super(_0.ALIAS);this.source=q,Object.defineProperty(this,"tag",{set(){throw Error("Alias nodes cannot have tags")}})}resolve(q,$){let U;if($?.aliasResolveCache)U=$.aliasResolveCache;else if(U=[],a8.visit(q,{Node:(H,Z)=>{if(_0.isAlias(Z)||_0.hasAnchor(Z))U.push(Z)}}),$)$.aliasResolveCache=U;let X=void 0;for(let H of U){if(H===this)break;if(H.anchor===this.source)X=H}return X}toJSON(q,$){if(!$)return{source:this.source};let{anchors:U,doc:X,maxAliasCount:H}=$,Z=this.resolve(X,$);if(!Z){let G=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw ReferenceError(G)}let z=U.get(Z);if(!z)s8.toJS(Z,null,$),z=U.get(Z);if(z?.res===void 0)throw ReferenceError("This should not happen: Alias anchor was not resolved?");if(H>=0){if(z.count+=1,z.aliasCount===0)z.aliasCount=Xq(X,Z,U);if(z.count*z.aliasCount>H)throw ReferenceError("Excessive alias count indicates a resource exhaustion attack")}return z.res}toString(q,$,U){let X=`*${this.source}`;if(q){if(c8.anchorIsValid(this.source),q.options.verifyAliasOrder&&!q.anchors.has(this.source)){let H=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw Error(H)}if(q.implicitKey)return`${X} `}return X}}function Xq(q,$,U){if(_0.isAlias($)){let X=$.resolve(q),H=U&&X&&U.get(X);return H?H.count*H.aliasCount:0}else if(_0.isCollection($)){let X=0;for(let H of $.items){let Z=Xq(q,H,U);if(Z>X)X=Z}return X}else if(_0.isPair($)){let X=Xq(q,$.key,U),H=Xq(q,$.value,U);return Math.max(X,H)}return 1}r8.Alias=M9});var b=L(($4)=>{var o8=K(),t8=Uq(),e8=l(),q4=(q)=>!q||typeof q!=="function"&&typeof q!=="object";class $0 extends t8.NodeBase{constructor(q){super(o8.SCALAR);this.value=q}toJSON(q,$){return $?.keep?this.value:e8.toJS(this.value,q,$)}toString(){return String(this.value)}}$0.BLOCK_FOLDED="BLOCK_FOLDED";$0.BLOCK_LITERAL="BLOCK_LITERAL";$0.PLAIN="PLAIN";$0.QUOTE_DOUBLE="QUOTE_DOUBLE";$0.QUOTE_SINGLE="QUOTE_SINGLE";$4.Scalar=$0;$4.isScalarValue=q4});var S0=L((J4)=>{var H4=b0(),U0=K(),K9=b(),Z4="tag:yaml.org,2002:";function z4(q,$,U){if($){let X=U.filter((Z)=>Z.tag===$),H=X.find((Z)=>!Z.format)??X[0];if(!H)throw Error(`Tag ${$} not found`);return H}return U.find((X)=>X.identify?.(q)&&!X.format)}function G4(q,$,U){if(U0.isDocument(q))q=q.contents;if(U0.isNode(q))return q;if(U0.isPair(q)){let Y=U.schema[U0.MAP].createNode?.(U.schema,null,U);return Y.items.push(q),Y}if(q instanceof String||q instanceof Number||q instanceof Boolean||typeof BigInt<"u"&&q instanceof BigInt)q=q.valueOf();let{aliasDuplicateObjects:X,onAnchor:H,onTagObj:Z,schema:z,sourceObjects:G}=U,J=void 0;if(X&&q&&typeof q==="object")if(J=G.get(q),J)return J.anchor??(J.anchor=H(q)),new H4.Alias(J.anchor);else J={anchor:null,node:null},G.set(q,J);if($?.startsWith("!!"))$=Z4+$.slice(2);let Q=z4(q,$,z.tags);if(!Q){if(q&&typeof q.toJSON==="function")q=q.toJSON();if(!q||typeof q!=="object"){let Y=new K9.Scalar(q);if(J)J.node=Y;return Y}Q=q instanceof Map?z[U0.MAP]:(Symbol.iterator in Object(q))?z[U0.SEQ]:z[U0.MAP]}if(Z)Z(Q),delete U.onTagObj;let W=Q?.createNode?Q.createNode(U.schema,q,U):typeof Q?.nodeClass?.from==="function"?Q.nodeClass.from(U.schema,q,U):new K9.Scalar(q);if($)W.tag=$;else if(!Q.default)W.tag=Q.tag;if(J)J.node=W;return W}J4.createNode=G4});var Hq=L((T4)=>{var Y4=S0(),k=K(),B4=Uq();function sq(q,$,U){let X=U;for(let H=$.length-1;H>=0;--H){let Z=$[H];if(typeof Z==="number"&&Number.isInteger(Z)&&Z>=0){let z=[];z[Z]=X,X=z}else X=new Map([[Z,X]])}return Y4.createNode(X,void 0,{aliasDuplicateObjects:!1,keepUndefined:!1,onAnchor:()=>{throw Error("This should not happen, please report a bug.")},schema:q,sourceObjects:new Map})}var w9=(q)=>q==null||typeof q==="object"&&!!q[Symbol.iterator]().next().done;class N9 extends B4.NodeBase{constructor(q,$){super(q);Object.defineProperty(this,"schema",{value:$,configurable:!0,enumerable:!1,writable:!0})}clone(q){let $=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));if(q)$.schema=q;if($.items=$.items.map((U)=>k.isNode(U)||k.isPair(U)?U.clone(q):U),this.range)$.range=this.range.slice();return $}addIn(q,$){if(w9(q))this.add($);else{let[U,...X]=q,H=this.get(U,!0);if(k.isCollection(H))H.addIn(X,$);else if(H===void 0&&this.schema)this.set(U,sq(this.schema,X,$));else throw Error(`Expected YAML collection at ${U}. Remaining path: ${X}`)}}deleteIn(q){let[$,...U]=q;if(U.length===0)return this.delete($);let X=this.get($,!0);if(k.isCollection(X))return X.deleteIn(U);else throw Error(`Expected YAML collection at ${$}. Remaining path: ${U}`)}getIn(q,$){let[U,...X]=q,H=this.get(U,!0);if(X.length===0)return!$&&k.isScalar(H)?H.value:H;else return k.isCollection(H)?H.getIn(X,$):void 0}hasAllNullValues(q){return this.items.every(($)=>{if(!k.isPair($))return!1;let U=$.value;return U==null||q&&k.isScalar(U)&&U.value==null&&!U.commentBefore&&!U.comment&&!U.tag})}hasIn(q){let[$,...U]=q;if(U.length===0)return this.has($);let X=this.get($,!0);return k.isCollection(X)?X.hasIn(U):!1}setIn(q,$){let[U,...X]=q;if(X.length===0)this.set(U,$);else{let H=this.get(U,!0);if(k.isCollection(H))H.setIn(X,$);else if(H===void 0&&this.schema)this.set(U,sq(this.schema,X,$));else throw Error(`Expected YAML collection at ${U}. Remaining path: ${X}`)}}}T4.Collection=N9;T4.collectionFromPath=sq;T4.isEmptyPath=w9});var j0=L((I4)=>{var L4=(q)=>q.replace(/^(?!$)(?: $)?/gm,"#");function rq(q,$){if(/^\n+$/.test(q))return q.substring(1);return $?q.replace(/^(?! *$)/gm,$):q}var D4=(q,$,U)=>q.endsWith(`
|
|
4
4
|
`)?rq(U,$):U.includes(`
|
|
5
5
|
`)?`
|
|
6
|
-
`+rq(U,$):(q.endsWith(" ")?"":" ")+U;
|
|
7
|
-
`){if(U==="block")T=
|
|
8
|
-
`&&
|
|
9
|
-
`&&
|
|
10
|
-
${$}${q.slice(0,P)}`;else{if(U==="quoted"&&
|
|
11
|
-
${$}${q.slice(
|
|
12
|
-
`);H
|
|
13
|
-
`){if(
|
|
6
|
+
`+rq(U,$):(q.endsWith(" ")?"":" ")+U;I4.indentComment=rq;I4.lineComment=D4;I4.stringifyComment=L4});var S9=L((P4)=>{function A4(q,$,U="flow",{indentAtStart:X,lineWidth:H=80,minContentWidth:Z=20,onFold:z,onOverflow:G}={}){if(!H||H<0)return q;if(H<Z)Z=0;let J=Math.max(1+Z,1+H-$.length);if(q.length<=J)return q;let Q=[],W={},Y=H-$.length;if(typeof X==="number")if(X>H-Math.max(2,Z))Q.push(0);else Y=H-X;let B=void 0,_=void 0,D=!1,T=-1,O=-1,V=-1;if(U==="block"){if(T=b9(q,T,$.length),T!==-1)Y=T+J}for(let F;F=q[T+=1];){if(U==="quoted"&&F==="\\"){switch(O=T,q[T+1]){case"x":T+=3;break;case"u":T+=5;break;case"U":T+=9;break;default:T+=1}V=T}if(F===`
|
|
7
|
+
`){if(U==="block")T=b9(q,T,$.length);Y=T+$.length+J,B=void 0}else{if(F===" "&&_&&_!==" "&&_!==`
|
|
8
|
+
`&&_!=="\t"){let A=q[T+1];if(A&&A!==" "&&A!==`
|
|
9
|
+
`&&A!=="\t")B=T}if(T>=Y)if(B)Q.push(B),Y=B+J,B=void 0;else if(U==="quoted"){while(_===" "||_==="\t")_=F,F=q[T+=1],D=!0;let A=T>V+1?T-2:O-1;if(W[A])return q;Q.push(A),W[A]=!0,Y=A+J,B=void 0}else D=!0}_=F}if(D&&G)G();if(Q.length===0)return q;if(z)z();let R=q.slice(0,Q[0]);for(let F=0;F<Q.length;++F){let A=Q[F],P=Q[F+1]||q.length;if(A===0)R=`
|
|
10
|
+
${$}${q.slice(0,P)}`;else{if(U==="quoted"&&W[A])R+=`${q[A]}\\`;R+=`
|
|
11
|
+
${$}${q.slice(A+1,P)}`}}return R}function b9(q,$,U){let X=$,H=$+1,Z=q[H];while(Z===" "||Z==="\t")if($<H+U)Z=q[++$];else{do Z=q[++$];while(Z&&Z!==`
|
|
12
|
+
`);X=$,H=$+1,Z=q[H]}return X}P4.FOLD_BLOCK="block";P4.FOLD_FLOW="flow";P4.FOLD_QUOTED="quoted";P4.foldFlowLines=A4});var E0=L((C4)=>{var x=b(),c=S9(),zq=(q,$)=>({indentAtStart:$?q.indent.length:q.indentAtStart,lineWidth:q.options.lineWidth,minContentWidth:q.options.minContentWidth}),Gq=(q)=>/^(%|---|\.\.\.)/m.test(q);function b4(q,$,U){if(!$||$<0)return!1;let X=$-U,H=q.length;if(H<=X)return!1;for(let Z=0,z=0;Z<H;++Z)if(q[Z]===`
|
|
13
|
+
`){if(Z-z>X)return!0;if(z=Z+1,H-z<=X)return!1}return!0}function C0(q,$){let U=JSON.stringify(q);if($.options.doubleQuotedAsJSON)return U;let{implicitKey:X}=$,H=$.options.doubleQuotedMinMultiLineLength,Z=$.indent||(Gq(q)?" ":""),z="",G=0;for(let J=0,Q=U[J];Q;Q=U[++J]){if(Q===" "&&U[J+1]==="\\"&&U[J+2]==="n")z+=U.slice(G,J)+"\\ ",J+=1,G=J,Q="\\";if(Q==="\\")switch(U[J+1]){case"u":{z+=U.slice(G,J);let W=U.substr(J+2,4);switch(W){case"0000":z+="\\0";break;case"0007":z+="\\a";break;case"000b":z+="\\v";break;case"001b":z+="\\e";break;case"0085":z+="\\N";break;case"00a0":z+="\\_";break;case"2028":z+="\\L";break;case"2029":z+="\\P";break;default:if(W.substr(0,2)==="00")z+="\\x"+W.substr(2);else z+=U.substr(J,6)}J+=5,G=J+1}break;case"n":if(X||U[J+2]==='"'||U.length<H)J+=1;else{z+=U.slice(G,J)+`
|
|
14
14
|
|
|
15
|
-
`;while(U[
|
|
16
|
-
`,
|
|
17
|
-
`)||/[ \t]\n|\n[ \t]/.test(q))return C0(q,$);let U=$.indent||(
|
|
18
|
-
${U}`)+"'";return $.implicitKey?
|
|
15
|
+
`;while(U[J+2]==="\\"&&U[J+3]==="n"&&U[J+4]!=='"')z+=`
|
|
16
|
+
`,J+=2;if(z+=Z,U[J+2]===" ")z+="\\";J+=1,G=J+1}break;default:J+=1}}return z=G?z+U.slice(G):U,X?z:c.foldFlowLines(z,Z,c.FOLD_QUOTED,zq($,!1))}function nq(q,$){if($.options.singleQuote===!1||$.implicitKey&&q.includes(`
|
|
17
|
+
`)||/[ \t]\n|\n[ \t]/.test(q))return C0(q,$);let U=$.indent||(Gq(q)?" ":""),X="'"+q.replace(/'/g,"''").replace(/\n+/g,`$&
|
|
18
|
+
${U}`)+"'";return $.implicitKey?X:c.foldFlowLines(X,U,c.FOLD_FLOW,zq($,!1))}function L0(q,$){let{singleQuote:U}=$.options,X;if(U===!1)X=C0;else{let H=q.includes('"'),Z=q.includes("'");if(H&&!Z)X=nq;else if(Z&&!H)X=C0;else X=U?nq:C0}return X(q,$)}var oq;try{oq=new RegExp(`(^|(?<!
|
|
19
19
|
))
|
|
20
20
|
+(?!
|
|
21
|
-
|$)`,"g")}catch{oq=/\n+(?!\n|$)/g}function
|
|
21
|
+
|$)`,"g")}catch{oq=/\n+(?!\n|$)/g}function Zq({comment:q,type:$,value:U},X,H,Z){let{blockQuote:z,commentString:G,lineWidth:J}=X.options;if(!z||/\n[\t ]+$/.test(U))return L0(U,X);let Q=X.indent||(X.forceBlockIndent||Gq(U)?" ":""),W=z==="literal"?!0:z==="folded"||$===x.Scalar.BLOCK_FOLDED?!1:$===x.Scalar.BLOCK_LITERAL?!0:!b4(U,J,Q.length);if(!U)return W?`|
|
|
22
22
|
`:`>
|
|
23
|
-
`;let B
|
|
24
|
-
`&&P!=="\t"&&P!==" ")break}let
|
|
25
|
-
`);if(D===-1)
|
|
26
|
-
`)
|
|
27
|
-
`)
|
|
28
|
-
$&`).replace(/(?:^|\n)([\t ].*)(?:([\n\t ]*)\n(?![\n\t ]))?/g,"$1$2").replace(/\n+/g,`$&${
|
|
29
|
-
${
|
|
30
|
-
${
|
|
31
|
-
`)||
|
|
32
|
-
`)?
|
|
33
|
-
`))return
|
|
34
|
-
${
|
|
35
|
-
${$.indent}${
|
|
36
|
-
${
|
|
37
|
-
`:"",
|
|
38
|
-
${g0.indentComment(
|
|
39
|
-
`&&F)
|
|
23
|
+
`;let Y,B;for(B=U.length;B>0;--B){let P=U[B-1];if(P!==`
|
|
24
|
+
`&&P!=="\t"&&P!==" ")break}let _=U.substring(B),D=_.indexOf(`
|
|
25
|
+
`);if(D===-1)Y="-";else if(U===_||D!==_.length-1){if(Y="+",Z)Z()}else Y="";if(_){if(U=U.slice(0,-_.length),_[_.length-1]===`
|
|
26
|
+
`)_=_.slice(0,-1);_=_.replace(oq,`$&${Q}`)}let T=!1,O,V=-1;for(O=0;O<U.length;++O){let P=U[O];if(P===" ")T=!0;else if(P===`
|
|
27
|
+
`)V=O;else break}let R=U.substring(0,V<O?V+1:O);if(R)U=U.substring(R.length),R=R.replace(/\n+/g,`$&${Q}`);let A=(T?Q?"2":"1":"")+Y;if(q){if(A+=" "+G(q.replace(/ ?[\r\n]+/g," ")),H)H()}if(!W){let P=U.replace(/\n+/g,`
|
|
28
|
+
$&`).replace(/(?:^|\n)([\t ].*)(?:([\n\t ]*)\n(?![\n\t ]))?/g,"$1$2").replace(/\n+/g,`$&${Q}`),M=!1,w=zq(X,!0);if(z!=="folded"&&$!==x.Scalar.BLOCK_FOLDED)w.onOverflow=()=>{M=!0};let I=c.foldFlowLines(`${R}${P}${_}`,Q,c.FOLD_BLOCK,w);if(!M)return`>${A}
|
|
29
|
+
${Q}${I}`}return U=U.replace(/\n+/g,`$&${Q}`),`|${A}
|
|
30
|
+
${Q}${R}${U}${_}`}function S4(q,$,U,X){let{type:H,value:Z}=q,{actualString:z,implicitKey:G,indent:J,indentStep:Q,inFlow:W}=$;if(G&&Z.includes(`
|
|
31
|
+
`)||W&&/[[\]{},]/.test(Z))return L0(Z,$);if(/^[\n\t ,[\]{}#&*!|>'"%@`]|^[?-]$|^[?-][ \t]|[\n:][ \t]|[ \t]\n|[\n\t ]#|[\n\t :]$/.test(Z))return G||W||!Z.includes(`
|
|
32
|
+
`)?L0(Z,$):Zq(q,$,U,X);if(!G&&!W&&H!==x.Scalar.PLAIN&&Z.includes(`
|
|
33
|
+
`))return Zq(q,$,U,X);if(Gq(Z)){if(J==="")return $.forceBlockIndent=!0,Zq(q,$,U,X);else if(G&&J===Q)return L0(Z,$)}let Y=Z.replace(/\n+/g,`$&
|
|
34
|
+
${J}`);if(z){let B=(T)=>T.default&&T.tag!=="tag:yaml.org,2002:str"&&T.test?.test(Y),{compat:_,tags:D}=$.doc.schema;if(D.some(B)||_?.some(B))return L0(Z,$)}return G?Y:c.foldFlowLines(Y,J,c.FOLD_FLOW,zq($,!1))}function j4(q,$,U,X){let{implicitKey:H,inFlow:Z}=$,z=typeof q.value==="string"?q:Object.assign({},q,{value:String(q.value)}),{type:G}=q;if(G!==x.Scalar.QUOTE_DOUBLE){if(/[\x00-\x08\x0b-\x1f\x7f-\x9f\u{D800}-\u{DFFF}]/u.test(z.value))G=x.Scalar.QUOTE_DOUBLE}let J=(W)=>{switch(W){case x.Scalar.BLOCK_FOLDED:case x.Scalar.BLOCK_LITERAL:return H||Z?L0(z.value,$):Zq(z,$,U,X);case x.Scalar.QUOTE_DOUBLE:return C0(z.value,$);case x.Scalar.QUOTE_SINGLE:return nq(z.value,$);case x.Scalar.PLAIN:return S4(z,$,U,X);default:return null}},Q=J(G);if(Q===null){let{defaultKeyType:W,defaultStringType:Y}=$.options,B=H&&W||Y;if(Q=J(B),Q===null)throw Error(`Unsupported default string type ${B}`)}return Q}C4.stringifyString=j4});var f0=L((v4)=>{var f4=$q(),a=K(),g4=j0(),y4=E0();function x4(q,$){let U=Object.assign({blockQuote:!0,commentString:g4.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},q.schema.toStringOptions,$),X;switch(U.collectionStyle){case"block":X=!1;break;case"flow":X=!0;break;default:X=null}return{anchors:new Set,doc:q,flowCollectionPadding:U.flowCollectionPadding?" ":"",indent:"",indentStep:typeof U.indent==="number"?" ".repeat(U.indent):" ",inFlow:X,options:U}}function u4(q,$){if($.tag){let H=q.filter((Z)=>Z.tag===$.tag);if(H.length>0)return H.find((Z)=>Z.format===$.format)??H[0]}let U=void 0,X;if(a.isScalar($)){X=$.value;let H=q.filter((Z)=>Z.identify?.(X));if(H.length>1){let Z=H.filter((z)=>z.test);if(Z.length>0)H=Z}U=H.find((Z)=>Z.format===$.format)??H.find((Z)=>!Z.format)}else X=$,U=q.find((H)=>H.nodeClass&&X instanceof H.nodeClass);if(!U){let H=X?.constructor?.name??(X===null?"null":typeof X);throw Error(`Tag not resolved for ${H} value`)}return U}function h4(q,$,{anchors:U,doc:X}){if(!X.directives)return"";let H=[],Z=(a.isScalar(q)||a.isCollection(q))&&q.anchor;if(Z&&f4.anchorIsValid(Z))U.add(Z),H.push(`&${Z}`);let z=q.tag??($.default?null:$.tag);if(z)H.push(X.directives.tagString(z));return H.join(" ")}function k4(q,$,U,X){if(a.isPair(q))return q.toString($,U,X);if(a.isAlias(q)){if($.doc.directives)return q.toString($);if($.resolvedAliases?.has(q))throw TypeError("Cannot stringify circular structure without alias nodes");else{if($.resolvedAliases)$.resolvedAliases.add(q);else $.resolvedAliases=new Set([q]);q=q.resolve($.doc)}}let H=void 0,Z=a.isNode(q)?q:$.doc.createNode(q,{onTagObj:(J)=>H=J});H??(H=u4($.doc.schema.tags,Z));let z=h4(Z,H,$);if(z.length>0)$.indentAtStart=($.indentAtStart??0)+z.length+1;let G=typeof H.stringify==="function"?H.stringify(Z,$,U,X):a.isScalar(Z)?y4.stringifyString(Z,$,U,X):Z.toString($,U,X);if(!z)return G;return a.isScalar(Z)||G[0]==="{"||G[0]==="["?`${z} ${G}`:`${z}
|
|
35
|
+
${$.indent}${G}`}v4.createStringifyContext=x4;v4.stringify=k4});var E9=L((l4)=>{var m=K(),j9=b(),C9=f0(),g0=j0();function d4({key:q,value:$},U,X,H){let{allNullValues:Z,doc:z,indent:G,indentStep:J,options:{commentString:Q,indentSeq:W,simpleKeys:Y}}=U,B=m.isNode(q)&&q.comment||null;if(Y){if(B)throw Error("With simple keys, key nodes cannot have comments");if(m.isCollection(q)||!m.isNode(q)&&typeof q==="object")throw Error("With simple keys, collection cannot be used as a key value")}let _=!Y&&(!q||B&&$==null&&!U.inFlow||m.isCollection(q)||(m.isScalar(q)?q.type===j9.Scalar.BLOCK_FOLDED||q.type===j9.Scalar.BLOCK_LITERAL:typeof q==="object"));U=Object.assign({},U,{allNullValues:!1,implicitKey:!_&&(Y||!Z),indent:G+J});let D=!1,T=!1,O=C9.stringify(q,U,()=>D=!0,()=>T=!0);if(!_&&!U.inFlow&&O.length>1024){if(Y)throw Error("With simple keys, single line scalar must not span more than 1024 characters");_=!0}if(U.inFlow){if(Z||$==null){if(D&&X)X();return O===""?"?":_?`? ${O}`:O}}else if(Z&&!Y||$==null&&_){if(O=`? ${O}`,B&&!D)O+=g0.lineComment(O,U.indent,Q(B));else if(T&&H)H();return O}if(D)B=null;if(_){if(B)O+=g0.lineComment(O,U.indent,Q(B));O=`? ${O}
|
|
36
|
+
${G}:`}else if(O=`${O}:`,B)O+=g0.lineComment(O,U.indent,Q(B));let V,R,F;if(m.isNode($))V=!!$.spaceBefore,R=$.commentBefore,F=$.comment;else if(V=!1,R=null,F=null,$&&typeof $==="object")$=z.createNode($);if(U.implicitKey=!1,!_&&!B&&m.isScalar($))U.indentAtStart=O.length+1;if(T=!1,!W&&J.length>=2&&!U.inFlow&&!_&&m.isSeq($)&&!$.flow&&!$.tag&&!$.anchor)U.indent=U.indent.substring(2);let A=!1,P=C9.stringify($,U,()=>A=!0,()=>T=!0),M=" ";if(B||V||R){if(M=V?`
|
|
37
|
+
`:"",R){let w=Q(R);M+=`
|
|
38
|
+
${g0.indentComment(w,U.indent)}`}if(P===""&&!U.inFlow){if(M===`
|
|
39
|
+
`&&F)M=`
|
|
40
40
|
|
|
41
|
-
`}else
|
|
42
|
-
${U.indent}`}else if(!
|
|
43
|
-
`),S=
|
|
41
|
+
`}else M+=`
|
|
42
|
+
${U.indent}`}else if(!_&&m.isCollection($)){let w=P[0],I=P.indexOf(`
|
|
43
|
+
`),S=I!==-1,d=U.inFlow??$.flow??$.items.length===0;if(S||!d){let Y0=!1;if(S&&(w==="&"||w==="!")){let j=P.indexOf(" ");if(w==="&"&&j!==-1&&j<I&&P[j+1]==="!")j=P.indexOf(" ",j+1);if(j===-1||I<j)Y0=!0}if(!Y0)M=`
|
|
44
44
|
${U.indent}`}}else if(P===""||P[0]===`
|
|
45
|
-
`)
|
|
46
|
-
${
|
|
47
|
-
`}}if(q){if(
|
|
48
|
-
`+
|
|
49
|
-
`)))
|
|
50
|
-
${
|
|
45
|
+
`)M="";if(O+=M+P,U.inFlow){if(A&&X)X()}else if(F&&!A)O+=g0.lineComment(O,U.indent,Q(F));else if(T&&H)H();return O}l4.stringifyPair=d4});var tq=L((s4)=>{var f9=q0("process");function a4(q,...$){if(q==="debug")console.log(...$)}function i4(q,$){if(q==="debug"||q==="warn")if(typeof f9.emitWarning==="function")f9.emitWarning($);else console.warn($)}s4.debug=a4;s4.warn=i4});var Yq=L((t4)=>{var y0=K(),g9=b(),Jq="<<",Qq={identify:(q)=>q===Jq||typeof q==="symbol"&&q.description===Jq,default:"key",tag:"tag:yaml.org,2002:merge",test:/^<<$/,resolve:()=>Object.assign(new g9.Scalar(Symbol(Jq)),{addToJSMap:y9}),stringify:()=>Jq},o4=(q,$)=>(Qq.identify($)||y0.isScalar($)&&(!$.type||$.type===g9.Scalar.PLAIN)&&Qq.identify($.value))&&q?.doc.schema.tags.some((U)=>U.tag===Qq.tag&&U.default);function y9(q,$,U){if(U=q&&y0.isAlias(U)?U.resolve(q.doc):U,y0.isSeq(U))for(let X of U.items)eq(q,$,X);else if(Array.isArray(U))for(let X of U)eq(q,$,X);else eq(q,$,U)}function eq(q,$,U){let X=q&&y0.isAlias(U)?U.resolve(q.doc):U;if(!y0.isMap(X))throw Error("Merge sources must be maps or map aliases");let H=X.toJSON(null,q,Map);for(let[Z,z]of H)if($ instanceof Map){if(!$.has(Z))$.set(Z,z)}else if($ instanceof Set)$.add(Z);else if(!Object.prototype.hasOwnProperty.call($,Z))Object.defineProperty($,Z,{value:z,writable:!0,enumerable:!0,configurable:!0});return $}t4.addMergeToJSMap=y9;t4.isMergeKey=o4;t4.merge=Qq});var $$=L((z1)=>{var U1=tq(),x9=Yq(),X1=f0(),u9=K(),q$=l();function H1(q,$,{key:U,value:X}){if(u9.isNode(U)&&U.addToJSMap)U.addToJSMap(q,$,X);else if(x9.isMergeKey(q,U))x9.addMergeToJSMap(q,$,X);else{let H=q$.toJS(U,"",q);if($ instanceof Map)$.set(H,q$.toJS(X,H,q));else if($ instanceof Set)$.add(H);else{let Z=Z1(U,H,q),z=q$.toJS(X,Z,q);if(Z in $)Object.defineProperty($,Z,{value:z,writable:!0,enumerable:!0,configurable:!0});else $[Z]=z}}return $}function Z1(q,$,U){if($===null)return"";if(typeof $!=="object")return String($);if(u9.isNode(q)&&U?.doc){let X=X1.createStringifyContext(U.doc,{});X.anchors=new Set;for(let Z of U.anchors.keys())X.anchors.add(Z.anchor);X.inFlow=!0,X.inStringifyKey=!0;let H=q.toString(X);if(!U.mapKeyWarned){let Z=JSON.stringify(H);if(Z.length>40)Z=Z.substring(0,36)+'..."';U1.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 H}return JSON.stringify($)}z1.addPairToJSMap=H1});var i=L((B1)=>{var h9=S0(),J1=E9(),Q1=$$(),Bq=K();function Y1(q,$,U){let X=h9.createNode(q,void 0,U),H=h9.createNode($,void 0,U);return new Tq(X,H)}class Tq{constructor(q,$=null){Object.defineProperty(this,Bq.NODE_TYPE,{value:Bq.PAIR}),this.key=q,this.value=$}clone(q){let{key:$,value:U}=this;if(Bq.isNode($))$=$.clone(q);if(Bq.isNode(U))U=U.clone(q);return new Tq($,U)}toJSON(q,$){let U=$?.mapAsMap?new Map:{};return Q1.addPairToJSMap($,U,this)}toString(q,$,U){return q?.doc?J1.stringifyPair(this,q,$,U):JSON.stringify(this)}}B1.Pair=Tq;B1.createPair=Y1});var U$=L((D1)=>{var X0=K(),k9=f0(),Wq=j0();function O1(q,$,U){return($.inFlow??q.flow?L1:_1)(q,$,U)}function _1({comment:q,items:$},U,{blockItemPrefix:X,flowChars:H,itemIndent:Z,onChompKeep:z,onComment:G}){let{indent:J,options:{commentString:Q}}=U,W=Object.assign({},U,{indent:Z,type:null}),Y=!1,B=[];for(let D=0;D<$.length;++D){let T=$[D],O=null;if(X0.isNode(T)){if(!Y&&T.spaceBefore)B.push("");if(Oq(U,B,T.commentBefore,Y),T.comment)O=T.comment}else if(X0.isPair(T)){let R=X0.isNode(T.key)?T.key:null;if(R){if(!Y&&R.spaceBefore)B.push("");Oq(U,B,R.commentBefore,Y)}}Y=!1;let V=k9.stringify(T,W,()=>O=null,()=>Y=!0);if(O)V+=Wq.lineComment(V,Z,Q(O));if(Y&&O)Y=!1;B.push(X+V)}let _;if(B.length===0)_=H.start+H.end;else{_=B[0];for(let D=1;D<B.length;++D){let T=B[D];_+=T?`
|
|
46
|
+
${J}${T}`:`
|
|
47
|
+
`}}if(q){if(_+=`
|
|
48
|
+
`+Wq.indentComment(Q(q),J),G)G()}else if(Y&&z)z();return _}function L1({items:q},$,{flowChars:U,itemIndent:X}){let{indent:H,indentStep:Z,flowCollectionPadding:z,options:{commentString:G}}=$;X+=Z;let J=Object.assign({},$,{indent:X,inFlow:!0,type:null}),Q=!1,W=0,Y=[];for(let D=0;D<q.length;++D){let T=q[D],O=null;if(X0.isNode(T)){if(T.spaceBefore)Y.push("");if(Oq($,Y,T.commentBefore,!1),T.comment)O=T.comment}else if(X0.isPair(T)){let R=X0.isNode(T.key)?T.key:null;if(R){if(R.spaceBefore)Y.push("");if(Oq($,Y,R.commentBefore,!1),R.comment)Q=!0}let F=X0.isNode(T.value)?T.value:null;if(F){if(F.comment)O=F.comment;if(F.commentBefore)Q=!0}else if(T.value==null&&R?.comment)O=R.comment}if(O)Q=!0;let V=k9.stringify(T,J,()=>O=null);if(D<q.length-1)V+=",";if(O)V+=Wq.lineComment(V,X,G(O));if(!Q&&(Y.length>W||V.includes(`
|
|
49
|
+
`)))Q=!0;Y.push(V),W=Y.length}let{start:B,end:_}=U;if(Y.length===0)return B+_;else{if(!Q){let D=Y.reduce((T,O)=>T+O.length+2,2);Q=$.options.lineWidth>0&&D>$.options.lineWidth}if(Q){let D=B;for(let T of Y)D+=T?`
|
|
50
|
+
${Z}${H}${T}`:`
|
|
51
51
|
`;return`${D}
|
|
52
|
-
${
|
|
53
|
-
`:" ")}return
|
|
54
|
-
${
|
|
55
|
-
${G.comment}`:H.comment}H=z}q.items[U]=Fq.isPair(H)?H:new T$.Pair(H)}else $("Expected a sequence for this tag");return q}function e1(q,$,U){let{replacer:H}=U,z=new g4.YAMLSeq(q);z.tag="tag:yaml.org,2002:pairs";let G=0;if($&&Symbol.iterator in Object($))for(let X of $){if(typeof H==="function")X=H.call($,String(G++),X);let Z,Q;if(Array.isArray(X))if(X.length===2)Z=X[0],Q=X[1];else throw TypeError(`Expected [key, value] tuple: ${X}`);else if(X&&X instanceof Object){let J=Object.keys(X);if(J.length===1)Z=J[0],Q=X[Z];else throw TypeError(`Expected tuple with one key, not ${J.length} keys`)}else Z=X;z.items.push(T$.createPair(Z,Q,U))}return z}var y4={collection:"seq",default:!1,tag:"tag:yaml.org,2002:pairs",resolve:t1,createNode:e1};u4.createPairs=e1;u4.pairs=y4;u4.resolvePairs=t1});var L$=O((p4)=>{var qU=M(),R$=l(),k0=r(),v4=n(),$U=wq();class H0 extends v4.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=H0.tag}toJSON(q,$){if(!$)return super.toJSON(q);let U=new Map;if($?.onCreate)$.onCreate(U);for(let H of this.items){let z,G;if(qU.isPair(H))z=R$.toJS(H.key,"",$),G=R$.toJS(H.value,z,$);else z=R$.toJS(H,"",$);if(U.has(z))throw Error("Ordered maps must not include duplicate keys");U.set(z,G)}return U}static from(q,$,U){let H=$U.createPairs(q,$,U),z=new this;return z.items=H.items,z}}H0.tag="tag:yaml.org,2002:omap";var m4={collection:"seq",identify:(q)=>q instanceof Map,nodeClass:H0,default:!1,tag:"tag:yaml.org,2002:omap",resolve(q,$){let U=$U.resolvePairs(q,$),H=[];for(let{key:z}of U.items)if(qU.isScalar(z))if(H.includes(z.value))$(`Ordered maps must not include duplicate keys: ${z.value}`);else H.push(z.value);return Object.assign(new H0,U)},createNode:(q,$,U)=>H0.from(q,$,U)};p4.YAMLOMap=H0;p4.omap=m4});var XU=O((a4)=>{var UU=b();function HU({value:q,source:$},U){if($&&(q?zU:GU).test.test($))return $;return q?U.options.trueStr:U.options.falseStr}var zU={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 UU.Scalar(!0),stringify:HU},GU={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 UU.Scalar(!1),stringify:HU};a4.falseTag=GU;a4.trueTag=zU});var ZU=O((t4)=>{var s4=b(),W$=_0(),r4={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:W$.stringifyNumber},n4={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():W$.stringifyNumber(q)}},o4={identify:(q)=>typeof q==="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:[0-9][0-9_]*)?\.[0-9_]*$/,resolve(q){let $=new s4.Scalar(parseFloat(q.replace(/_/g,""))),U=q.indexOf(".");if(U!==-1){let H=q.substring(U+1).replace(/_/g,"");if(H[H.length-1]==="0")$.minFractionDigits=H.length}return $},stringify:W$.stringifyNumber};t4.float=o4;t4.floatExp=n4;t4.floatNaN=r4});var JU=O((Xz)=>{var QU=_0(),v0=(q)=>typeof q==="bigint"||Number.isInteger(q);function Pq(q,$,U,{intAsBigInt:H}){let z=q[0];if(z==="-"||z==="+")$+=1;if(q=q.substring($).replace(/_/g,""),H){switch(U){case 2:q=`0b${q}`;break;case 8:q=`0o${q}`;break;case 16:q=`0x${q}`;break}let X=BigInt(q);return z==="-"?BigInt(-1)*X:X}let G=parseInt(q,U);return z==="-"?-1*G:G}function O$(q,$,U){let{value:H}=q;if(v0(H)){let z=H.toString($);return H<0?"-"+U+z.substr(1):U+z}return QU.stringifyNumber(q)}var Uz={identify:v0,default:!0,tag:"tag:yaml.org,2002:int",format:"BIN",test:/^[-+]?0b[0-1_]+$/,resolve:(q,$,U)=>Pq(q,2,2,U),stringify:(q)=>O$(q,2,"0b")},Hz={identify:v0,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^[-+]?0[0-7_]+$/,resolve:(q,$,U)=>Pq(q,1,8,U),stringify:(q)=>O$(q,8,"0")},zz={identify:v0,default:!0,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9][0-9_]*$/,resolve:(q,$,U)=>Pq(q,0,10,U),stringify:QU.stringifyNumber},Gz={identify:v0,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^[-+]?0x[0-9a-fA-F_]+$/,resolve:(q,$,U)=>Pq(q,2,16,U),stringify:(q)=>O$(q,16,"0x")};Xz.int=zz;Xz.intBin=Uz;Xz.intHex=Gz;Xz.intOct=Hz});var D$=O((Tz)=>{var Kq=M(),Aq=i(),Mq=r();class z0 extends Mq.YAMLMap{constructor(q){super(q);this.tag=z0.tag}add(q){let $;if(Kq.isPair(q))$=q;else if(q&&typeof q==="object"&&"key"in q&&"value"in q&&q.value===null)$=new Aq.Pair(q.key,null);else $=new Aq.Pair(q,null);if(!Mq.findPair(this.items,$.key))this.items.push($)}get(q,$){let U=Mq.findPair(this.items,q);return!$&&Kq.isPair(U)?Kq.isScalar(U.key)?U.key.value:U.key:U}set(q,$){if(typeof $!=="boolean")throw Error(`Expected boolean value for set(key, value) in a YAML set, not ${typeof $}`);let U=Mq.findPair(this.items,q);if(U&&!$)this.items.splice(this.items.indexOf(U),1);else if(!U&&$)this.items.push(new Aq.Pair(q))}toJSON(q,$){return super.toJSON(q,$,Set)}toString(q,$,U){if(!q)return JSON.stringify(this);if(this.hasAllNullValues(!0))return super.toString(Object.assign({},q,{allNullValues:!0}),$,U);else throw Error("Set items must all have null values")}static from(q,$,U){let{replacer:H}=U,z=new this(q);if($&&Symbol.iterator in Object($))for(let G of $){if(typeof H==="function")G=H.call($,G,G);z.items.push(Aq.createPair(G,null,U))}return z}}z0.tag="tag:yaml.org,2002:set";var Yz={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(Kq.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}};Tz.YAMLSet=z0;Tz.set=Yz});var I$=O((_z)=>{var Wz=_0();function _$(q,$){let U=q[0],H=U==="-"||U==="+"?q.substring(1):q,z=(X)=>$?BigInt(X):Number(X),G=H.replace(/_/g,"").split(":").reduce((X,Z)=>X*z(60)+z(Z),z(0));return U==="-"?z(-1)*G:G}function BU(q){let{value:$}=q,U=(X)=>X;if(typeof $==="bigint")U=(X)=>BigInt(X);else if(isNaN($)||!isFinite($))return Wz.stringifyNumber(q);let H="";if($<0)H="-",$*=U(-1);let z=U(60),G=[$%z];if($<60)G.unshift(0);else if($=($-G[0])/z,G.unshift($%z),$>=60)$=($-G[0])/z,G.unshift($);return H+G.map((X)=>String(X).padStart(2,"0")).join(":").replace(/000000\d*$/,"")}var Oz={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:BU},Dz={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:BU},YU={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(YU.test);if(!$)throw Error("!!timestamp expects a date, starting with yyyy-mm-dd");let[,U,H,z,G,X,Z]=$.map(Number),Q=$[7]?Number(($[7]+"00").substr(1,3)):0,J=Date.UTC(U,H-1,z,G||0,X||0,Z||0,Q),R=$[8];if(R&&R!=="Z"){let B=_$(R,!1);if(Math.abs(B)<30)B*=60;J-=60000*B}return new Date(J)},stringify:({value:q})=>q?.toISOString().replace(/(T00:00:00)?\.000Z$/,"")??""};_z.floatTime=Dz;_z.intTime=Oz;_z.timestamp=YU});var RU=O((Ez)=>{var wz=O0(),Pz=_q(),Az=D0(),Mz=x0(),Kz=Y$(),TU=XU(),V$=ZU(),Nq=JU(),Nz=Bq(),bz=L$(),Sz=wq(),jz=D$(),F$=I$(),Cz=[wz.map,Az.seq,Mz.string,Pz.nullTag,TU.trueTag,TU.falseTag,Nq.intBin,Nq.intOct,Nq.int,Nq.intHex,V$.floatNaN,V$.floatExp,V$.float,Kz.binary,Nz.merge,bz.omap,Sz.pairs,jz.set,F$.intTime,F$.floatTime,F$.timestamp];Ez.schema=Cz});var PU=O((mz)=>{var DU=O0(),gz=_q(),_U=D0(),yz=x0(),uz=H$(),w$=G$(),P$=Z$(),xz=r1(),hz=o1(),IU=Y$(),m0=Bq(),VU=L$(),FU=wq(),LU=RU(),wU=D$(),bq=I$(),WU=new Map([["core",xz.schema],["failsafe",[DU.map,_U.seq,yz.string]],["json",hz.schema],["yaml11",LU.schema],["yaml-1.1",LU.schema]]),OU={binary:IU.binary,bool:uz.boolTag,float:w$.float,floatExp:w$.floatExp,floatNaN:w$.floatNaN,floatTime:bq.floatTime,int:P$.int,intHex:P$.intHex,intOct:P$.intOct,intTime:bq.intTime,map:DU.map,merge:m0.merge,null:gz.nullTag,omap:VU.omap,pairs:FU.pairs,seq:_U.seq,set:wU.set,timestamp:bq.timestamp},kz={"tag:yaml.org,2002:binary":IU.binary,"tag:yaml.org,2002:merge":m0.merge,"tag:yaml.org,2002:omap":VU.omap,"tag:yaml.org,2002:pairs":FU.pairs,"tag:yaml.org,2002:set":wU.set,"tag:yaml.org,2002:timestamp":bq.timestamp};function vz(q,$,U){let H=WU.get($);if(H&&!q)return U&&!H.includes(m0.merge)?H.concat(m0.merge):H.slice();let z=H;if(!z)if(Array.isArray(q))z=[];else{let G=Array.from(WU.keys()).filter((X)=>X!=="yaml11").map((X)=>JSON.stringify(X)).join(", ");throw Error(`Unknown schema "${$}"; use one of ${G} or define customTags array`)}if(Array.isArray(q))for(let G of q)z=z.concat(G);else if(typeof q==="function")z=q(z.slice());if(U)z=z.concat(m0.merge);return z.reduce((G,X)=>{let Z=typeof X==="string"?OU[X]:X;if(!Z){let Q=JSON.stringify(X),J=Object.keys(OU).map((R)=>JSON.stringify(R)).join(", ");throw Error(`Unknown custom tag ${Q}; use one of ${J}`)}if(!G.includes(Z))G.push(Z);return G},[])}mz.coreKnownTags=kz;mz.getTags=vz});var K$=O((sz)=>{var A$=M(),lz=O0(),az=D0(),cz=x0(),Sq=PU(),iz=(q,$)=>q.key<$.key?-1:q.key>$.key?1:0;class M${constructor({compat:q,customTags:$,merge:U,resolveKnownTags:H,schema:z,sortMapEntries:G,toStringDefaults:X}){this.compat=Array.isArray(q)?Sq.getTags(q,"compat"):q?Sq.getTags(null,q):null,this.name=typeof z==="string"&&z||"core",this.knownTags=H?Sq.coreKnownTags:{},this.tags=Sq.getTags($,this.name,U),this.toStringOptions=X??null,Object.defineProperty(this,A$.MAP,{value:lz.map}),Object.defineProperty(this,A$.SCALAR,{value:cz.string}),Object.defineProperty(this,A$.SEQ,{value:az.seq}),this.sortMapEntries=typeof G==="function"?G:G===!0?iz:null}clone(){let q=Object.create(M$.prototype,Object.getOwnPropertyDescriptors(this));return q.tags=this.tags.slice(),q}}sz.Schema=M$});var AU=O((tz)=>{var nz=M(),N$=f0(),p0=j0();function oz(q,$){let U=[],H=$.directives===!0;if($.directives!==!1&&q.directives){let Q=q.directives.toString(q);if(Q)U.push(Q),H=!0;else if(q.directives.docStart)H=!0}if(H)U.push("---");let z=N$.createStringifyContext(q,$),{commentString:G}=z.options;if(q.commentBefore){if(U.length!==1)U.unshift("");let Q=G(q.commentBefore);U.unshift(p0.indentComment(Q,""))}let X=!1,Z=null;if(q.contents){if(nz.isNode(q.contents)){if(q.contents.spaceBefore&&H)U.push("");if(q.contents.commentBefore){let R=G(q.contents.commentBefore);U.push(p0.indentComment(R,""))}z.forceBlockIndent=!!q.comment,Z=q.contents.comment}let Q=Z?void 0:()=>X=!0,J=N$.stringify(q.contents,z,()=>Z=null,Q);if(Z)J+=p0.lineComment(J,"",G(Z));if((J[0]==="|"||J[0]===">")&&U[U.length-1]==="---")U[U.length-1]=`--- ${J}`;else U.push(J)}else U.push(N$.stringify(q.contents,z));if(q.directives?.docEnd)if(q.comment){let Q=G(q.comment);if(Q.includes(`
|
|
56
|
-
`))U.push("..."),U.push(p0.indentComment(
|
|
52
|
+
${H}${_}`}else return`${B}${z}${Y.join(" ")}${z}${_}`}}function Oq({indent:q,options:{commentString:$}},U,X,H){if(X&&H)X=X.replace(/^\n+/,"");if(X){let Z=Wq.indentComment($(X),q);U.push(Z.trimStart())}}D1.stringifyCollection=O1});var r=L((P1)=>{var V1=U$(),R1=$$(),F1=Hq(),s=K(),_q=i(),A1=b();function x0(q,$){let U=s.isScalar($)?$.value:$;for(let X of q)if(s.isPair(X)){if(X.key===$||X.key===U)return X;if(s.isScalar(X.key)&&X.key.value===U)return X}return}class v9 extends F1.Collection{static get tagName(){return"tag:yaml.org,2002:map"}constructor(q){super(s.MAP,q);this.items=[]}static from(q,$,U){let{keepUndefined:X,replacer:H}=U,Z=new this(q),z=(G,J)=>{if(typeof H==="function")J=H.call($,G,J);else if(Array.isArray(H)&&!H.includes(G))return;if(J!==void 0||X)Z.items.push(_q.createPair(G,J,U))};if($ instanceof Map)for(let[G,J]of $)z(G,J);else if($&&typeof $==="object")for(let G of Object.keys($))z(G,$[G]);if(typeof q.sortMapEntries==="function")Z.items.sort(q.sortMapEntries);return Z}add(q,$){let U;if(s.isPair(q))U=q;else if(!q||typeof q!=="object"||!("key"in q))U=new _q.Pair(q,q?.value);else U=new _q.Pair(q.key,q.value);let X=x0(this.items,U.key),H=this.schema?.sortMapEntries;if(X){if(!$)throw Error(`Key ${U.key} already set`);if(s.isScalar(X.value)&&A1.isScalarValue(U.value))X.value.value=U.value;else X.value=U.value}else if(H){let Z=this.items.findIndex((z)=>H(U,z)<0);if(Z===-1)this.items.push(U);else this.items.splice(Z,0,U)}else this.items.push(U)}delete(q){let $=x0(this.items,q);if(!$)return!1;return this.items.splice(this.items.indexOf($),1).length>0}get(q,$){let X=x0(this.items,q)?.value;return(!$&&s.isScalar(X)?X.value:X)??void 0}has(q){return!!x0(this.items,q)}set(q,$){this.add(new _q.Pair(q,$),!0)}toJSON(q,$,U){let X=U?new U:$?.mapAsMap?new Map:{};if($?.onCreate)$.onCreate(X);for(let H of this.items)R1.addPairToJSMap($,X,H);return X}toString(q,$,U){if(!q)return JSON.stringify(this);for(let X of this.items)if(!s.isPair(X))throw Error(`Map items must all be pairs; found ${JSON.stringify(X)} instead`);if(!q.allNullValues&&this.hasAllNullValues(!1))q=Object.assign({},q,{allNullValues:!0});return V1.stringifyCollection(this,q,{blockItemPrefix:"",flowChars:{start:"{",end:"}"},itemIndent:q.indent||"",onChompKeep:U,onComment:$})}}P1.YAMLMap=v9;P1.findPair=x0});var D0=L((b1)=>{var w1=K(),m9=r(),N1={collection:"map",default:!0,nodeClass:m9.YAMLMap,tag:"tag:yaml.org,2002:map",resolve(q,$){if(!w1.isMap(q))$("Expected a mapping for this tag");return q},createNode:(q,$,U)=>m9.YAMLMap.from(q,$,U)};b1.map=N1});var n=L((y1)=>{var j1=S0(),C1=U$(),E1=Hq(),Dq=K(),f1=b(),g1=l();class p9 extends E1.Collection{static get tagName(){return"tag:yaml.org,2002:seq"}constructor(q){super(Dq.SEQ,q);this.items=[]}add(q){this.items.push(q)}delete(q){let $=Lq(q);if(typeof $!=="number")return!1;return this.items.splice($,1).length>0}get(q,$){let U=Lq(q);if(typeof U!=="number")return;let X=this.items[U];return!$&&Dq.isScalar(X)?X.value:X}has(q){let $=Lq(q);return typeof $==="number"&&$<this.items.length}set(q,$){let U=Lq(q);if(typeof U!=="number")throw Error(`Expected a valid index, not ${q}.`);let X=this.items[U];if(Dq.isScalar(X)&&f1.isScalarValue($))X.value=$;else this.items[U]=$}toJSON(q,$){let U=[];if($?.onCreate)$.onCreate(U);let X=0;for(let H of this.items)U.push(g1.toJS(H,String(X++),$));return U}toString(q,$,U){if(!q)return JSON.stringify(this);return C1.stringifyCollection(this,q,{blockItemPrefix:"- ",flowChars:{start:"[",end:"]"},itemIndent:(q.indent||"")+" ",onChompKeep:U,onComment:$})}static from(q,$,U){let{replacer:X}=U,H=new this(q);if($&&Symbol.iterator in Object($)){let Z=0;for(let z of $){if(typeof X==="function"){let G=$ instanceof Set?z:String(Z++);z=X.call($,G,z)}H.items.push(j1.createNode(z,void 0,U))}}return H}}function Lq(q){let $=Dq.isScalar(q)?q.value:q;if($&&typeof $==="string")$=Number($);return typeof $==="number"&&Number.isInteger($)&&$>=0?$:null}y1.YAMLSeq=p9});var I0=L((k1)=>{var u1=K(),d9=n(),h1={collection:"seq",default:!0,nodeClass:d9.YAMLSeq,tag:"tag:yaml.org,2002:seq",resolve(q,$){if(!u1.isSeq(q))$("Expected a sequence for this tag");return q},createNode:(q,$,U)=>d9.YAMLSeq.from(q,$,U)};k1.seq=h1});var u0=L((d1)=>{var m1=E0(),p1={identify:(q)=>typeof q==="string",default:!0,tag:"tag:yaml.org,2002:str",resolve:(q)=>q,stringify(q,$,U,X){return $=Object.assign({actualString:!0},$),m1.stringifyString(q,$,U,X)}};d1.string=p1});var Iq=L((c1)=>{var l9=b(),c9={identify:(q)=>q==null,createNode:()=>new l9.Scalar(null),default:!0,tag:"tag:yaml.org,2002:null",test:/^(?:~|[Nn]ull|NULL)?$/,resolve:()=>new l9.Scalar(null),stringify:({source:q},$)=>typeof q==="string"&&c9.test.test(q)?q:$.options.nullStr};c1.nullTag=c9});var X$=L((s1)=>{var i1=b(),a9={identify:(q)=>typeof q==="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:[Tt]rue|TRUE|[Ff]alse|FALSE)$/,resolve:(q)=>new i1.Scalar(q[0]==="t"||q[0]==="T"),stringify({source:q,value:$},U){if(q&&a9.test.test(q)){let X=q[0]==="t"||q[0]==="T";if($===X)return q}return $?U.options.trueStr:U.options.falseStr}};s1.boolTag=a9});var V0=L((o1)=>{function n1({format:q,minFractionDigits:$,tag:U,value:X}){if(typeof X==="bigint")return String(X);let H=typeof X==="number"?X:Number(X);if(!isFinite(H))return isNaN(H)?".nan":H<0?"-.inf":".inf";let Z=Object.is(X,-0)?"-0":JSON.stringify(X);if(!q&&$&&(!U||U==="tag:yaml.org,2002:float")&&/^\d/.test(Z)){let z=Z.indexOf(".");if(z<0)z=Z.length,Z+=".";let G=$-(Z.length-z-1);while(G-- >0)Z+="0"}return Z}o1.stringifyNumber=n1});var Z$=L((XX)=>{var e1=b(),H$=V0(),qX={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:H$.stringifyNumber},$X={identify:(q)=>typeof q==="number",default:!0,tag:"tag:yaml.org,2002:float",format:"EXP",test:/^[-+]?(?:\.[0-9]+|[0-9]+(?:\.[0-9]*)?)[eE][-+]?[0-9]+$/,resolve:(q)=>parseFloat(q),stringify(q){let $=Number(q.value);return isFinite($)?$.toExponential():H$.stringifyNumber(q)}},UX={identify:(q)=>typeof q==="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:\.[0-9]+|[0-9]+\.[0-9]*)$/,resolve(q){let $=new e1.Scalar(parseFloat(q)),U=q.indexOf(".");if(U!==-1&&q[q.length-1]==="0")$.minFractionDigits=q.length-U-1;return $},stringify:H$.stringifyNumber};XX.float=UX;XX.floatExp=$X;XX.floatNaN=qX});var G$=L((YX)=>{var i9=V0(),Vq=(q)=>typeof q==="bigint"||Number.isInteger(q),z$=(q,$,U,{intAsBigInt:X})=>X?BigInt(q):parseInt(q.substring($),U);function s9(q,$,U){let{value:X}=q;if(Vq(X)&&X>=0)return U+X.toString($);return i9.stringifyNumber(q)}var GX={identify:(q)=>Vq(q)&&q>=0,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^0o[0-7]+$/,resolve:(q,$,U)=>z$(q,2,8,U),stringify:(q)=>s9(q,8,"0o")},JX={identify:Vq,default:!0,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9]+$/,resolve:(q,$,U)=>z$(q,0,10,U),stringify:i9.stringifyNumber},QX={identify:(q)=>Vq(q)&&q>=0,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^0x[0-9a-fA-F]+$/,resolve:(q,$,U)=>z$(q,2,16,U),stringify:(q)=>s9(q,16,"0x")};YX.int=JX;YX.intHex=QX;YX.intOct=GX});var r9=L((RX)=>{var OX=D0(),_X=Iq(),LX=I0(),DX=u0(),IX=X$(),J$=Z$(),Q$=G$(),VX=[OX.map,LX.seq,DX.string,_X.nullTag,IX.boolTag,Q$.intOct,Q$.int,Q$.intHex,J$.floatNaN,J$.floatExp,J$.float];RX.schema=VX});var o9=L((bX)=>{var AX=b(),PX=D0(),MX=I0();function n9(q){return typeof q==="bigint"||Number.isInteger(q)}var Rq=({value:q})=>JSON.stringify(q),KX=[{identify:(q)=>typeof q==="string",default:!0,tag:"tag:yaml.org,2002:str",resolve:(q)=>q,stringify:Rq},{identify:(q)=>q==null,createNode:()=>new AX.Scalar(null),default:!0,tag:"tag:yaml.org,2002:null",test:/^null$/,resolve:()=>null,stringify:Rq},{identify:(q)=>typeof q==="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^true$|^false$/,resolve:(q)=>q==="true",stringify:Rq},{identify:n9,default:!0,tag:"tag:yaml.org,2002:int",test:/^-?(?:0|[1-9][0-9]*)$/,resolve:(q,$,{intAsBigInt:U})=>U?BigInt(q):parseInt(q,10),stringify:({value:q})=>n9(q)?q.toString():JSON.stringify(q)},{identify:(q)=>typeof q==="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^-?(?:0|[1-9][0-9]*)(?:\.[0-9]*)?(?:[eE][-+]?[0-9]+)?$/,resolve:(q)=>parseFloat(q),stringify:Rq}],wX={default:!0,tag:"",test:/^/,resolve(q,$){return $(`Unresolved plain scalar ${JSON.stringify(q)}`),q}},NX=[PX.map,MX.seq].concat(KX,wX);bX.schema=NX});var B$=L((EX)=>{var h0=q0("buffer"),Y$=b(),jX=E0(),CX={identify:(q)=>q instanceof Uint8Array,default:!1,tag:"tag:yaml.org,2002:binary",resolve(q,$){if(typeof h0.Buffer==="function")return h0.Buffer.from(q,"base64");else if(typeof atob==="function"){let U=atob(q.replace(/[\n\r]/g,"")),X=new Uint8Array(U.length);for(let H=0;H<U.length;++H)X[H]=U.charCodeAt(H);return X}else return $("This environment does not support reading binary tags; either Buffer or atob is required"),q},stringify({comment:q,type:$,value:U},X,H,Z){if(!U)return"";let z=U,G;if(typeof h0.Buffer==="function")G=z instanceof h0.Buffer?z.toString("base64"):h0.Buffer.from(z.buffer).toString("base64");else if(typeof btoa==="function"){let J="";for(let Q=0;Q<z.length;++Q)J+=String.fromCharCode(z[Q]);G=btoa(J)}else throw Error("This environment does not support writing binary tags; either Buffer or btoa is required");if($??($=Y$.Scalar.BLOCK_LITERAL),$!==Y$.Scalar.QUOTE_DOUBLE){let J=Math.max(X.options.lineWidth-X.indent.length,X.options.minContentWidth),Q=Math.ceil(G.length/J),W=Array(Q);for(let Y=0,B=0;Y<Q;++Y,B+=J)W[Y]=G.substr(B,J);G=W.join($===Y$.Scalar.BLOCK_LITERAL?`
|
|
53
|
+
`:" ")}return jX.stringifyString({comment:q,type:$,value:G},X,H,Z)}};EX.binary=CX});var Aq=L((uX)=>{var Fq=K(),T$=i(),gX=b(),yX=n();function t9(q,$){if(Fq.isSeq(q))for(let U=0;U<q.items.length;++U){let X=q.items[U];if(Fq.isPair(X))continue;else if(Fq.isMap(X)){if(X.items.length>1)$("Each pair must have its own sequence indicator");let H=X.items[0]||new T$.Pair(new gX.Scalar(null));if(X.commentBefore)H.key.commentBefore=H.key.commentBefore?`${X.commentBefore}
|
|
54
|
+
${H.key.commentBefore}`:X.commentBefore;if(X.comment){let Z=H.value??H.key;Z.comment=Z.comment?`${X.comment}
|
|
55
|
+
${Z.comment}`:X.comment}X=H}q.items[U]=Fq.isPair(X)?X:new T$.Pair(X)}else $("Expected a sequence for this tag");return q}function e9(q,$,U){let{replacer:X}=U,H=new yX.YAMLSeq(q);H.tag="tag:yaml.org,2002:pairs";let Z=0;if($&&Symbol.iterator in Object($))for(let z of $){if(typeof X==="function")z=X.call($,String(Z++),z);let G,J;if(Array.isArray(z))if(z.length===2)G=z[0],J=z[1];else throw TypeError(`Expected [key, value] tuple: ${z}`);else if(z&&z instanceof Object){let Q=Object.keys(z);if(Q.length===1)G=Q[0],J=z[G];else throw TypeError(`Expected tuple with one key, not ${Q.length} keys`)}else G=z;H.items.push(T$.createPair(G,J,U))}return H}var xX={collection:"seq",default:!1,tag:"tag:yaml.org,2002:pairs",resolve:t9,createNode:e9};uX.createPairs=e9;uX.pairs=xX;uX.resolvePairs=t9});var O$=L((dX)=>{var q2=K(),W$=l(),k0=r(),mX=n(),$2=Aq();class H0 extends mX.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=H0.tag}toJSON(q,$){if(!$)return super.toJSON(q);let U=new Map;if($?.onCreate)$.onCreate(U);for(let X of this.items){let H,Z;if(q2.isPair(X))H=W$.toJS(X.key,"",$),Z=W$.toJS(X.value,H,$);else H=W$.toJS(X,"",$);if(U.has(H))throw Error("Ordered maps must not include duplicate keys");U.set(H,Z)}return U}static from(q,$,U){let X=$2.createPairs(q,$,U),H=new this;return H.items=X.items,H}}H0.tag="tag:yaml.org,2002:omap";var pX={collection:"seq",identify:(q)=>q instanceof Map,nodeClass:H0,default:!1,tag:"tag:yaml.org,2002:omap",resolve(q,$){let U=$2.resolvePairs(q,$),X=[];for(let{key:H}of U.items)if(q2.isScalar(H))if(X.includes(H.value))$(`Ordered maps must not include duplicate keys: ${H.value}`);else X.push(H.value);return Object.assign(new H0,U)},createNode:(q,$,U)=>H0.from(q,$,U)};dX.YAMLOMap=H0;dX.omap=pX});var z2=L((aX)=>{var U2=b();function X2({value:q,source:$},U){if($&&(q?H2:Z2).test.test($))return $;return q?U.options.trueStr:U.options.falseStr}var H2={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 U2.Scalar(!0),stringify:X2},Z2={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 U2.Scalar(!1),stringify:X2};aX.falseTag=Z2;aX.trueTag=H2});var G2=L((eX)=>{var rX=b(),_$=V0(),nX={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:_$.stringifyNumber},oX={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():_$.stringifyNumber(q)}},tX={identify:(q)=>typeof q==="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:[0-9][0-9_]*)?\.[0-9_]*$/,resolve(q){let $=new rX.Scalar(parseFloat(q.replace(/_/g,""))),U=q.indexOf(".");if(U!==-1){let X=q.substring(U+1).replace(/_/g,"");if(X[X.length-1]==="0")$.minFractionDigits=X.length}return $},stringify:_$.stringifyNumber};eX.float=tX;eX.floatExp=oX;eX.floatNaN=nX});var Q2=L((GH)=>{var J2=V0(),v0=(q)=>typeof q==="bigint"||Number.isInteger(q);function Pq(q,$,U,{intAsBigInt:X}){let H=q[0];if(H==="-"||H==="+")$+=1;if(q=q.substring($).replace(/_/g,""),X){switch(U){case 2:q=`0b${q}`;break;case 8:q=`0o${q}`;break;case 16:q=`0x${q}`;break}let z=BigInt(q);return H==="-"?BigInt(-1)*z:z}let Z=parseInt(q,U);return H==="-"?-1*Z:Z}function L$(q,$,U){let{value:X}=q;if(v0(X)){let H=X.toString($);return X<0?"-"+U+H.substr(1):U+H}return J2.stringifyNumber(q)}var XH={identify:v0,default:!0,tag:"tag:yaml.org,2002:int",format:"BIN",test:/^[-+]?0b[0-1_]+$/,resolve:(q,$,U)=>Pq(q,2,2,U),stringify:(q)=>L$(q,2,"0b")},HH={identify:v0,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^[-+]?0[0-7_]+$/,resolve:(q,$,U)=>Pq(q,1,8,U),stringify:(q)=>L$(q,8,"0")},ZH={identify:v0,default:!0,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9][0-9_]*$/,resolve:(q,$,U)=>Pq(q,0,10,U),stringify:J2.stringifyNumber},zH={identify:v0,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^[-+]?0x[0-9a-fA-F_]+$/,resolve:(q,$,U)=>Pq(q,2,16,U),stringify:(q)=>L$(q,16,"0x")};GH.int=ZH;GH.intBin=XH;GH.intHex=zH;GH.intOct=HH});var D$=L((WH)=>{var wq=K(),Mq=i(),Kq=r();class Z0 extends Kq.YAMLMap{constructor(q){super(q);this.tag=Z0.tag}add(q){let $;if(wq.isPair(q))$=q;else if(q&&typeof q==="object"&&"key"in q&&"value"in q&&q.value===null)$=new Mq.Pair(q.key,null);else $=new Mq.Pair(q,null);if(!Kq.findPair(this.items,$.key))this.items.push($)}get(q,$){let U=Kq.findPair(this.items,q);return!$&&wq.isPair(U)?wq.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=Kq.findPair(this.items,q);if(U&&!$)this.items.splice(this.items.indexOf(U),1);else if(!U&&$)this.items.push(new Mq.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:X}=U,H=new this(q);if($&&Symbol.iterator in Object($))for(let Z of $){if(typeof X==="function")Z=X.call($,Z,Z);H.items.push(Mq.createPair(Z,null,U))}return H}}Z0.tag="tag:yaml.org,2002:set";var TH={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(wq.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}};WH.YAMLSet=Z0;WH.set=TH});var V$=L((VH)=>{var LH=V0();function I$(q,$){let U=q[0],X=U==="-"||U==="+"?q.substring(1):q,H=(z)=>$?BigInt(z):Number(z),Z=X.replace(/_/g,"").split(":").reduce((z,G)=>z*H(60)+H(G),H(0));return U==="-"?H(-1)*Z:Z}function Y2(q){let{value:$}=q,U=(z)=>z;if(typeof $==="bigint")U=(z)=>BigInt(z);else if(isNaN($)||!isFinite($))return LH.stringifyNumber(q);let X="";if($<0)X="-",$*=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 X+Z.map((z)=>String(z).padStart(2,"0")).join(":").replace(/000000\d*$/,"")}var DH={identify:(q)=>typeof q==="bigint"||Number.isInteger(q),default:!0,tag:"tag:yaml.org,2002:int",format:"TIME",test:/^[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+$/,resolve:(q,$,{intAsBigInt:U})=>I$(q,U),stringify:Y2},IH={identify:(q)=>typeof q==="number",default:!0,tag:"tag:yaml.org,2002:float",format:"TIME",test:/^[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+\.[0-9_]*$/,resolve:(q)=>I$(q,!1),stringify:Y2},B2={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(B2.test);if(!$)throw Error("!!timestamp expects a date, starting with yyyy-mm-dd");let[,U,X,H,Z,z,G]=$.map(Number),J=$[7]?Number(($[7]+"00").substr(1,3)):0,Q=Date.UTC(U,X-1,H,Z||0,z||0,G||0,J),W=$[8];if(W&&W!=="Z"){let Y=I$(W,!1);if(Math.abs(Y)<30)Y*=60;Q-=60000*Y}return new Date(Q)},stringify:({value:q})=>q?.toISOString().replace(/(T00:00:00)?\.000Z$/,"")??""};VH.floatTime=IH;VH.intTime=DH;VH.timestamp=B2});var W2=L((fH)=>{var PH=D0(),MH=Iq(),KH=I0(),wH=u0(),NH=B$(),T2=z2(),R$=G2(),Nq=Q2(),bH=Yq(),SH=O$(),jH=Aq(),CH=D$(),F$=V$(),EH=[PH.map,KH.seq,wH.string,MH.nullTag,T2.trueTag,T2.falseTag,Nq.intBin,Nq.intOct,Nq.int,Nq.intHex,R$.floatNaN,R$.floatExp,R$.float,NH.binary,bH.merge,SH.omap,jH.pairs,CH.set,F$.intTime,F$.floatTime,F$.timestamp];fH.schema=EH});var P2=L((pH)=>{var D2=D0(),yH=Iq(),I2=I0(),xH=u0(),uH=X$(),A$=Z$(),P$=G$(),hH=r9(),kH=o9(),V2=B$(),m0=Yq(),R2=O$(),F2=Aq(),O2=W2(),A2=D$(),bq=V$(),_2=new Map([["core",hH.schema],["failsafe",[D2.map,I2.seq,xH.string]],["json",kH.schema],["yaml11",O2.schema],["yaml-1.1",O2.schema]]),L2={binary:V2.binary,bool:uH.boolTag,float:A$.float,floatExp:A$.floatExp,floatNaN:A$.floatNaN,floatTime:bq.floatTime,int:P$.int,intHex:P$.intHex,intOct:P$.intOct,intTime:bq.intTime,map:D2.map,merge:m0.merge,null:yH.nullTag,omap:R2.omap,pairs:F2.pairs,seq:I2.seq,set:A2.set,timestamp:bq.timestamp},vH={"tag:yaml.org,2002:binary":V2.binary,"tag:yaml.org,2002:merge":m0.merge,"tag:yaml.org,2002:omap":R2.omap,"tag:yaml.org,2002:pairs":F2.pairs,"tag:yaml.org,2002:set":A2.set,"tag:yaml.org,2002:timestamp":bq.timestamp};function mH(q,$,U){let X=_2.get($);if(X&&!q)return U&&!X.includes(m0.merge)?X.concat(m0.merge):X.slice();let H=X;if(!H)if(Array.isArray(q))H=[];else{let Z=Array.from(_2.keys()).filter((z)=>z!=="yaml11").map((z)=>JSON.stringify(z)).join(", ");throw Error(`Unknown schema "${$}"; use one of ${Z} or define customTags array`)}if(Array.isArray(q))for(let Z of q)H=H.concat(Z);else if(typeof q==="function")H=q(H.slice());if(U)H=H.concat(m0.merge);return H.reduce((Z,z)=>{let G=typeof z==="string"?L2[z]:z;if(!G){let J=JSON.stringify(z),Q=Object.keys(L2).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},[])}pH.coreKnownTags=vH;pH.getTags=mH});var w$=L((rH)=>{var M$=K(),cH=D0(),aH=I0(),iH=u0(),Sq=P2(),sH=(q,$)=>q.key<$.key?-1:q.key>$.key?1:0;class K${constructor({compat:q,customTags:$,merge:U,resolveKnownTags:X,schema:H,sortMapEntries:Z,toStringDefaults:z}){this.compat=Array.isArray(q)?Sq.getTags(q,"compat"):q?Sq.getTags(null,q):null,this.name=typeof H==="string"&&H||"core",this.knownTags=X?Sq.coreKnownTags:{},this.tags=Sq.getTags($,this.name,U),this.toStringOptions=z??null,Object.defineProperty(this,M$.MAP,{value:cH.map}),Object.defineProperty(this,M$.SCALAR,{value:iH.string}),Object.defineProperty(this,M$.SEQ,{value:aH.seq}),this.sortMapEntries=typeof Z==="function"?Z:Z===!0?sH:null}clone(){let q=Object.create(K$.prototype,Object.getOwnPropertyDescriptors(this));return q.tags=this.tags.slice(),q}}rH.Schema=K$});var M2=L((eH)=>{var oH=K(),N$=f0(),p0=j0();function tH(q,$){let U=[],X=$.directives===!0;if($.directives!==!1&&q.directives){let J=q.directives.toString(q);if(J)U.push(J),X=!0;else if(q.directives.docStart)X=!0}if(X)U.push("---");let H=N$.createStringifyContext(q,$),{commentString:Z}=H.options;if(q.commentBefore){if(U.length!==1)U.unshift("");let J=Z(q.commentBefore);U.unshift(p0.indentComment(J,""))}let z=!1,G=null;if(q.contents){if(oH.isNode(q.contents)){if(q.contents.spaceBefore&&X)U.push("");if(q.contents.commentBefore){let W=Z(q.contents.commentBefore);U.push(p0.indentComment(W,""))}H.forceBlockIndent=!!q.comment,G=q.contents.comment}let J=G?void 0:()=>z=!0,Q=N$.stringify(q.contents,H,()=>G=null,J);if(G)Q+=p0.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(N$.stringify(q.contents,H));if(q.directives?.docEnd)if(q.comment){let J=Z(q.comment);if(J.includes(`
|
|
56
|
+
`))U.push("..."),U.push(p0.indentComment(J,""));else U.push(`... ${J}`)}else U.push("...");else{let J=q.comment;if(J&&z)J=J.replace(/^\n+/,"");if(J){if((!z||G)&&U[U.length-1]!=="")U.push("");U.push(p0.indentComment(Z(J),""))}}return U.join(`
|
|
57
57
|
`)+`
|
|
58
|
-
`}
|
|
59
|
-
`;
|
|
58
|
+
`}eH.stringifyDocument=tH});var d0=L((JZ)=>{var $Z=b0(),R0=Hq(),g=K(),UZ=i(),XZ=l(),HZ=w$(),ZZ=M2(),b$=$q(),zZ=iq(),GZ=S0(),S$=aq();class j${constructor(q,$,U){this.commentBefore=null,this.comment=null,this.errors=[],this.warnings=[],Object.defineProperty(this,g.NODE_TYPE,{value:g.DOC});let X=null;if(typeof $==="function"||Array.isArray($))X=$;else if(U===void 0&&$)U=$,$=void 0;let H=Object.assign({intAsBigInt:!1,keepSourceTokens:!1,logLevel:"warn",prettyErrors:!0,strict:!0,stringKeys:!1,uniqueKeys:!0,version:"1.2"},U);this.options=H;let{version:Z}=H;if(U?._directives){if(this.directives=U._directives.atDocument(),this.directives.yaml.explicit)Z=this.directives.yaml.version}else this.directives=new S$.Directives({version:Z});this.setSchema(Z,U),this.contents=q===void 0?null:this.createNode(q,X,U)}clone(){let q=Object.create(j$.prototype,{[g.NODE_TYPE]:{value:g.DOC}});if(q.commentBefore=this.commentBefore,q.comment=this.comment,q.errors=this.errors.slice(),q.warnings=this.warnings.slice(),q.options=Object.assign({},this.options),this.directives)q.directives=this.directives.clone();if(q.schema=this.schema.clone(),q.contents=g.isNode(this.contents)?this.contents.clone(q.schema):this.contents,this.range)q.range=this.range.slice();return q}add(q){if(F0(this.contents))this.contents.add(q)}addIn(q,$){if(F0(this.contents))this.contents.addIn(q,$)}createAlias(q,$){if(!q.anchor){let U=b$.anchorNames(this);q.anchor=!$||U.has($)?b$.findNewAnchor($||"a",U):$}return new $Z.Alias(q.anchor)}createNode(q,$,U){let X=void 0;if(typeof $==="function")q=$.call({"":q},"",q),X=$;else if(Array.isArray($)){let T=(V)=>typeof V==="number"||V instanceof String||V instanceof Number,O=$.filter(T).map(String);if(O.length>0)$=$.concat(O);X=$}else if(U===void 0&&$)U=$,$=void 0;let{aliasDuplicateObjects:H,anchorPrefix:Z,flow:z,keepUndefined:G,onTagObj:J,tag:Q}=U??{},{onAnchor:W,setAnchors:Y,sourceObjects:B}=b$.createNodeAnchors(this,Z||"a"),_={aliasDuplicateObjects:H??!0,keepUndefined:G??!1,onAnchor:W,onTagObj:J,replacer:X,schema:this.schema,sourceObjects:B},D=GZ.createNode(q,Q,_);if(z&&g.isCollection(D))D.flow=!0;return Y(),D}createPair(q,$,U={}){let X=this.createNode(q,null,U),H=this.createNode($,null,U);return new UZ.Pair(X,H)}delete(q){return F0(this.contents)?this.contents.delete(q):!1}deleteIn(q){if(R0.isEmptyPath(q)){if(this.contents==null)return!1;return this.contents=null,!0}return F0(this.contents)?this.contents.deleteIn(q):!1}get(q,$){return g.isCollection(this.contents)?this.contents.get(q,$):void 0}getIn(q,$){if(R0.isEmptyPath(q))return!$&&g.isScalar(this.contents)?this.contents.value:this.contents;return g.isCollection(this.contents)?this.contents.getIn(q,$):void 0}has(q){return g.isCollection(this.contents)?this.contents.has(q):!1}hasIn(q){if(R0.isEmptyPath(q))return this.contents!==void 0;return g.isCollection(this.contents)?this.contents.hasIn(q):!1}set(q,$){if(this.contents==null)this.contents=R0.collectionFromPath(this.schema,[q],$);else if(F0(this.contents))this.contents.set(q,$)}setIn(q,$){if(R0.isEmptyPath(q))this.contents=$;else if(this.contents==null)this.contents=R0.collectionFromPath(this.schema,Array.from(q),$);else if(F0(this.contents))this.contents.setIn(q,$)}setSchema(q,$={}){if(typeof q==="number")q=String(q);let U;switch(q){case"1.1":if(this.directives)this.directives.yaml.version="1.1";else this.directives=new S$.Directives({version:"1.1"});U={resolveKnownTags:!1,schema:"yaml-1.1"};break;case"1.2":case"next":if(this.directives)this.directives.yaml.version=q;else this.directives=new S$.Directives({version:q});U={resolveKnownTags:!0,schema:"core"};break;case null:if(this.directives)delete this.directives;U=null;break;default:{let X=JSON.stringify(q);throw Error(`Expected '1.1', '1.2' or null as first argument, but found: ${X}`)}}if($.schema instanceof Object)this.schema=$.schema;else if(U)this.schema=new HZ.Schema(Object.assign(U,$));else throw Error("With a null YAML version, the { schema: Schema } option is required")}toJS({json:q,jsonArg:$,mapAsMap:U,maxAliasCount:X,onAnchor:H,reviver:Z}={}){let z={anchors:new Map,doc:this,keep:!q,mapAsMap:U===!0,mapKeyWarned:!1,maxAliasCount:typeof X==="number"?X:100},G=XZ.toJS(this.contents,$??"",z);if(typeof H==="function")for(let{count:J,res:Q}of z.anchors.values())H(Q,J);return typeof Z==="function"?zZ.applyReviver(Z,{"":G},"",G):G}toJSON(q,$){return this.toJS({json:!0,jsonArg:q,mapAsMap:!1,onAnchor:$})}toString(q={}){if(this.errors.length>0)throw Error("Document with errors cannot be stringified");if("indent"in q&&(!Number.isInteger(q.indent)||Number(q.indent)<=0)){let $=JSON.stringify(q.indent);throw Error(`"indent" option must be a positive integer, not ${$}`)}return ZZ.stringifyDocument(this,q)}}function F0(q){if(g.isCollection(q))return!0;throw Error("Expected a YAML collection as document contents")}JZ.Document=j$});var l0=L((BZ)=>{class jq extends Error{constructor(q,$,U,X){super();this.name=q,this.code=U,this.message=X,this.pos=$}}class K2 extends jq{constructor(q,$,U){super("YAMLParseError",q,$,U)}}class w2 extends jq{constructor(q,$,U){super("YAMLWarning",q,$,U)}}var YZ=(q,$)=>(U)=>{if(U.pos[0]===-1)return;U.linePos=U.pos.map((G)=>$.linePos(G));let{line:X,col:H}=U.linePos[0];U.message+=` at line ${X}, column ${H}`;let Z=H-1,z=q.substring($.lineStarts[X-1],$.lineStarts[X]).replace(/[\n\r]+$/,"");if(Z>=60&&z.length>80){let G=Math.min(Z-39,z.length-79);z="…"+z.substring(G),Z-=G-1}if(z.length>80)z=z.substring(0,79)+"…";if(X>1&&/^ *$/.test(z.substring(0,Z))){let G=q.substring($.lineStarts[X-2],$.lineStarts[X-1]);if(G.length>80)G=G.substring(0,79)+`…
|
|
59
|
+
`;z=G+z}if(/[^ ]/.test(z)){let G=1,J=U.linePos[1];if(J?.line===X&&J.col>H)G=Math.max(1,Math.min(J.col-H,80-Z));let Q=" ".repeat(Z)+"^".repeat(G);U.message+=`:
|
|
60
60
|
|
|
61
|
-
${
|
|
62
|
-
${
|
|
63
|
-
`}};
|
|
64
|
-
`))return!0;if(q.end){for(let $ of q.end)if($.type==="newline")return!0}return!1;case"flow-collection":for(let $ of q.items){for(let U of $.start)if(U.type==="newline")return!0;if($.sep){for(let U of $.sep)if(U.type==="newline")return!0}if(C$($.key)||C$($.value))return!0}return!1;default:return!0}}
|
|
65
|
-
`+T.comment;else
|
|
66
|
-
`+F.comment;else
|
|
67
|
-
`+
|
|
68
|
-
`+
|
|
69
|
-
`+S.comment;else
|
|
70
|
-
`+
|
|
71
|
-
`.repeat(Math.max(1,
|
|
72
|
-
`;for(let T=
|
|
73
|
-
`;else if(
|
|
74
|
-
`;else if(!
|
|
75
|
-
`)
|
|
61
|
+
${z}
|
|
62
|
+
${Q}
|
|
63
|
+
`}};BZ.YAMLError=jq;BZ.YAMLParseError=K2;BZ.YAMLWarning=w2;BZ.prettifyError=YZ});var c0=L((DZ)=>{function LZ(q,{flow:$,indicator:U,next:X,offset:H,onError:Z,parentIndent:z,startOnNewline:G}){let J=!1,Q=G,W=G,Y="",B="",_=!1,D=!1,T=null,O=null,V=null,R=null,F=null,A=null,P=null;for(let I of q){if(D){if(I.type!=="space"&&I.type!=="newline"&&I.type!=="comma")Z(I.offset,"MISSING_CHAR","Tags and anchors must be separated from the next token by white space");D=!1}if(T){if(Q&&I.type!=="comment"&&I.type!=="newline")Z(T,"TAB_AS_INDENT","Tabs are not allowed as indentation");T=null}switch(I.type){case"space":if(!$&&(U!=="doc-start"||X?.type!=="flow-collection")&&I.source.includes("\t"))T=I;W=!0;break;case"comment":{if(!W)Z(I,"MISSING_CHAR","Comments must be separated from other tokens by white space characters");let S=I.source.substring(1)||" ";if(!Y)Y=S;else Y+=B+S;B="",Q=!1;break}case"newline":if(Q){if(Y)Y+=I.source;else if(!A||U!=="seq-item-ind")J=!0}else B+=I.source;if(Q=!0,_=!0,O||V)R=I;W=!0;break;case"anchor":if(O)Z(I,"MULTIPLE_ANCHORS","A node can have at most one anchor");if(I.source.endsWith(":"))Z(I.offset+I.source.length-1,"BAD_ALIAS","Anchor ending in : is ambiguous",!0);O=I,P??(P=I.offset),Q=!1,W=!1,D=!0;break;case"tag":{if(V)Z(I,"MULTIPLE_TAGS","A node can have at most one tag");V=I,P??(P=I.offset),Q=!1,W=!1,D=!0;break}case U:if(O||V)Z(I,"BAD_PROP_ORDER",`Anchors and tags must be after the ${I.source} indicator`);if(A)Z(I,"UNEXPECTED_TOKEN",`Unexpected ${I.source} in ${$??"collection"}`);A=I,Q=U==="seq-item-ind"||U==="explicit-key-ind",W=!1;break;case"comma":if($){if(F)Z(I,"UNEXPECTED_TOKEN",`Unexpected , in ${$}`);F=I,Q=!1,W=!1;break}default:Z(I,"UNEXPECTED_TOKEN",`Unexpected ${I.type} token`),Q=!1,W=!1}}let M=q[q.length-1],w=M?M.offset+M.source.length:H;if(D&&X&&X.type!=="space"&&X.type!=="newline"&&X.type!=="comma"&&(X.type!=="scalar"||X.source!==""))Z(X.offset,"MISSING_CHAR","Tags and anchors must be separated from the next token by white space");if(T&&(Q&&T.indent<=z||X?.type==="block-map"||X?.type==="block-seq"))Z(T,"TAB_AS_INDENT","Tabs are not allowed as indentation");return{comma:F,found:A,spaceBefore:J,comment:Y,hasNewline:_,anchor:O,tag:V,newlineAfterProp:R,end:w,start:P??w}}DZ.resolveProps=LZ});var Cq=L((VZ)=>{function C$(q){if(!q)return null;switch(q.type){case"alias":case"scalar":case"double-quoted-scalar":case"single-quoted-scalar":if(q.source.includes(`
|
|
64
|
+
`))return!0;if(q.end){for(let $ of q.end)if($.type==="newline")return!0}return!1;case"flow-collection":for(let $ of q.items){for(let U of $.start)if(U.type==="newline")return!0;if($.sep){for(let U of $.sep)if(U.type==="newline")return!0}if(C$($.key)||C$($.value))return!0}return!1;default:return!0}}VZ.containsNewline=C$});var E$=L((PZ)=>{var FZ=Cq();function AZ(q,$,U){if($?.type==="flow-collection"){let X=$.end[0];if(X.indent===q&&(X.source==="]"||X.source==="}")&&FZ.containsNewline($))U(X,"BAD_INDENT","Flow end indicator should be more indented than parent",!0)}}PZ.flowIndentCheck=AZ});var f$=L((wZ)=>{var N2=K();function KZ(q,$,U){let{uniqueKeys:X}=q.options;if(X===!1)return!1;let H=typeof X==="function"?X:(Z,z)=>Z===z||N2.isScalar(Z)&&N2.isScalar(z)&&Z.value===z.value;return $.some((Z)=>H(Z.key,U))}wZ.mapIncludes=KZ});var E2=L((EZ)=>{var b2=i(),bZ=r(),S2=c0(),SZ=Cq(),j2=E$(),jZ=f$(),C2="All mapping items must start at the same column";function CZ({composeNode:q,composeEmptyNode:$},U,X,H,Z){let G=new(Z?.nodeClass??bZ.YAMLMap)(U.schema);if(U.atRoot)U.atRoot=!1;let J=X.offset,Q=null;for(let W of X.items){let{start:Y,key:B,sep:_,value:D}=W,T=S2.resolveProps(Y,{indicator:"explicit-key-ind",next:B??_?.[0],offset:J,onError:H,parentIndent:X.indent,startOnNewline:!0}),O=!T.found;if(O){if(B){if(B.type==="block-seq")H(J,"BLOCK_AS_IMPLICIT_KEY","A block sequence may not be used as an implicit map key");else if("indent"in B&&B.indent!==X.indent)H(J,"BAD_INDENT",C2)}if(!T.anchor&&!T.tag&&!_){if(Q=T.end,T.comment)if(G.comment)G.comment+=`
|
|
65
|
+
`+T.comment;else G.comment=T.comment;continue}if(T.newlineAfterProp||SZ.containsNewline(B))H(B??Y[Y.length-1],"MULTILINE_IMPLICIT_KEY","Implicit keys need to be on a single line")}else if(T.found?.indent!==X.indent)H(J,"BAD_INDENT",C2);U.atKey=!0;let V=T.end,R=B?q(U,B,T,H):$(U,V,Y,null,T,H);if(U.schema.compat)j2.flowIndentCheck(X.indent,B,H);if(U.atKey=!1,jZ.mapIncludes(U,G.items,R))H(V,"DUPLICATE_KEY","Map keys must be unique");let F=S2.resolveProps(_??[],{indicator:"map-value-ind",next:D,offset:R.range[2],onError:H,parentIndent:X.indent,startOnNewline:!B||B.type==="block-scalar"});if(J=F.end,F.found){if(O){if(D?.type==="block-map"&&!F.hasNewline)H(J,"BLOCK_AS_IMPLICIT_KEY","Nested mappings are not allowed in compact mappings");if(U.options.strict&&T.start<F.found.offset-1024)H(R.range,"KEY_OVER_1024_CHARS","The : indicator must be at most 1024 chars after the start of an implicit block mapping key")}let A=D?q(U,D,F,H):$(U,J,_,null,F,H);if(U.schema.compat)j2.flowIndentCheck(X.indent,D,H);J=A.range[2];let P=new b2.Pair(R,A);if(U.options.keepSourceTokens)P.srcToken=W;G.items.push(P)}else{if(O)H(R.range,"MISSING_CHAR","Implicit map keys need to be followed by map values");if(F.comment)if(R.comment)R.comment+=`
|
|
66
|
+
`+F.comment;else R.comment=F.comment;let A=new b2.Pair(R);if(U.options.keepSourceTokens)A.srcToken=W;G.items.push(A)}}if(Q&&Q<J)H(Q,"IMPOSSIBLE","Map comment with trailing content");return G.range=[X.offset,J,Q??J],G}EZ.resolveBlockMap=CZ});var f2=L((hZ)=>{var gZ=n(),yZ=c0(),xZ=E$();function uZ({composeNode:q,composeEmptyNode:$},U,X,H,Z){let G=new(Z?.nodeClass??gZ.YAMLSeq)(U.schema);if(U.atRoot)U.atRoot=!1;if(U.atKey)U.atKey=!1;let J=X.offset,Q=null;for(let{start:W,value:Y}of X.items){let B=yZ.resolveProps(W,{indicator:"seq-item-ind",next:Y,offset:J,onError:H,parentIndent:X.indent,startOnNewline:!0});if(!B.found)if(B.anchor||B.tag||Y)if(Y?.type==="block-seq")H(B.end,"BAD_INDENT","All sequence items must start at the same column");else H(J,"MISSING_CHAR","Sequence item without - indicator");else{if(Q=B.end,B.comment)G.comment=B.comment;continue}let _=Y?q(U,Y,B,H):$(U,B.end,W,null,B,H);if(U.schema.compat)xZ.flowIndentCheck(X.indent,Y,H);J=_.range[2],G.items.push(_)}return G.range=[X.offset,J,Q??J],G}hZ.resolveBlockSeq=uZ});var A0=L((mZ)=>{function vZ(q,$,U,X){let H="";if(q){let Z=!1,z="";for(let G of q){let{source:J,type:Q}=G;switch(Q){case"space":Z=!0;break;case"comment":{if(U&&!Z)X(G,"MISSING_CHAR","Comments must be separated from other tokens by white space characters");let W=J.substring(1)||" ";if(!H)H=W;else H+=z+W;z="";break}case"newline":if(H)z+=J;Z=!0;break;default:X(G,"UNEXPECTED_TOKEN",`Unexpected ${Q} at node end`)}$+=J.length}}return{comment:H,offset:$}}mZ.resolveEnd=vZ});var x2=L((nZ)=>{var dZ=K(),lZ=i(),g2=r(),cZ=n(),aZ=A0(),y2=c0(),iZ=Cq(),sZ=f$(),g$="Block collections are not allowed within flow collections",y$=(q)=>q&&(q.type==="block-map"||q.type==="block-seq");function rZ({composeNode:q,composeEmptyNode:$},U,X,H,Z){let z=X.start.source==="{",G=z?"flow map":"flow sequence",Q=new(Z?.nodeClass??(z?g2.YAMLMap:cZ.YAMLSeq))(U.schema);Q.flow=!0;let W=U.atRoot;if(W)U.atRoot=!1;if(U.atKey)U.atKey=!1;let Y=X.offset+X.start.source.length;for(let O=0;O<X.items.length;++O){let V=X.items[O],{start:R,key:F,sep:A,value:P}=V,M=y2.resolveProps(R,{flow:G,indicator:"explicit-key-ind",next:F??A?.[0],offset:Y,onError:H,parentIndent:X.indent,startOnNewline:!1});if(!M.found){if(!M.anchor&&!M.tag&&!A&&!P){if(O===0&&M.comma)H(M.comma,"UNEXPECTED_TOKEN",`Unexpected , in ${G}`);else if(O<X.items.length-1)H(M.start,"UNEXPECTED_TOKEN",`Unexpected empty item in ${G}`);if(M.comment)if(Q.comment)Q.comment+=`
|
|
67
|
+
`+M.comment;else Q.comment=M.comment;Y=M.end;continue}if(!z&&U.options.strict&&iZ.containsNewline(F))H(F,"MULTILINE_IMPLICIT_KEY","Implicit keys of flow sequence pairs need to be on a single line")}if(O===0){if(M.comma)H(M.comma,"UNEXPECTED_TOKEN",`Unexpected , in ${G}`)}else{if(!M.comma)H(M.start,"MISSING_CHAR",`Missing , between ${G} items`);if(M.comment){let w="";q:for(let I of R)switch(I.type){case"comma":case"space":break;case"comment":w=I.source.substring(1);break q;default:break q}if(w){let I=Q.items[Q.items.length-1];if(dZ.isPair(I))I=I.value??I.key;if(I.comment)I.comment+=`
|
|
68
|
+
`+w;else I.comment=w;M.comment=M.comment.substring(w.length+1)}}}if(!z&&!A&&!M.found){let w=P?q(U,P,M,H):$(U,M.end,A,null,M,H);if(Q.items.push(w),Y=w.range[2],y$(P))H(w.range,"BLOCK_IN_FLOW",g$)}else{U.atKey=!0;let w=M.end,I=F?q(U,F,M,H):$(U,w,R,null,M,H);if(y$(F))H(I.range,"BLOCK_IN_FLOW",g$);U.atKey=!1;let S=y2.resolveProps(A??[],{flow:G,indicator:"map-value-ind",next:P,offset:I.range[2],onError:H,parentIndent:X.indent,startOnNewline:!1});if(S.found){if(!z&&!M.found&&U.options.strict){if(A)for(let j of A){if(j===S.found)break;if(j.type==="newline"){H(j,"MULTILINE_IMPLICIT_KEY","Implicit keys of flow sequence pairs need to be on a single line");break}}if(M.start<S.found.offset-1024)H(S.found,"KEY_OVER_1024_CHARS","The : indicator must be at most 1024 chars after the start of an implicit flow sequence key")}}else if(P)if("source"in P&&P.source?.[0]===":")H(P,"MISSING_CHAR",`Missing space after : in ${G}`);else H(S.start,"MISSING_CHAR",`Missing , or : between ${G} items`);let d=P?q(U,P,S,H):S.found?$(U,S.end,A,null,S,H):null;if(d){if(y$(P))H(d.range,"BLOCK_IN_FLOW",g$)}else if(S.comment)if(I.comment)I.comment+=`
|
|
69
|
+
`+S.comment;else I.comment=S.comment;let Y0=new lZ.Pair(I,d);if(U.options.keepSourceTokens)Y0.srcToken=V;if(z){let j=Q;if(sZ.mapIncludes(U,j.items,I))H(w,"DUPLICATE_KEY","Map keys must be unique");j.items.push(Y0)}else{let j=new g2.YAMLMap(U.schema);j.flow=!0,j.items.push(Y0);let z9=(d??I).range;j.range=[I.range[0],z9[1],z9[2]],Q.items.push(j)}Y=d?d.range[2]:S.end}}let B=z?"}":"]",[_,...D]=X.end,T=Y;if(_?.source===B)T=_.offset+_.source.length;else{let O=G[0].toUpperCase()+G.substring(1),V=W?`${O} must end with a ${B}`:`${O} in block collection must be sufficiently indented and end with a ${B}`;if(H(Y,W?"MISSING_CHAR":"BAD_INDENT",V),_&&_.source.length!==1)D.unshift(_)}if(D.length>0){let O=aZ.resolveEnd(D,T,U.options.strict,H);if(O.comment)if(Q.comment)Q.comment+=`
|
|
70
|
+
`+O.comment;else Q.comment=O.comment;Q.range=[X.offset,T,O.offset]}else Q.range=[X.offset,T,T];return Q}nZ.resolveFlowCollection=rZ});var u2=L((z5)=>{var tZ=K(),eZ=b(),q5=r(),$5=n(),U5=E2(),X5=f2(),H5=x2();function x$(q,$,U,X,H,Z){let z=U.type==="block-map"?U5.resolveBlockMap(q,$,U,X,Z):U.type==="block-seq"?X5.resolveBlockSeq(q,$,U,X,Z):H5.resolveFlowCollection(q,$,U,X,Z),G=z.constructor;if(H==="!"||H===G.tagName)return z.tag=G.tagName,z;if(H)z.tag=H;return z}function Z5(q,$,U,X,H){let Z=X.tag,z=!Z?null:$.directives.tagName(Z.source,(B)=>H(Z,"TAG_RESOLVE_FAILED",B));if(U.type==="block-seq"){let{anchor:B,newlineAfterProp:_}=X,D=B&&Z?B.offset>Z.offset?B:Z:B??Z;if(D&&(!_||_.offset<D.offset))H(D,"MISSING_CHAR","Missing newline after block sequence props")}let G=U.type==="block-map"?"map":U.type==="block-seq"?"seq":U.start.source==="{"?"map":"seq";if(!Z||!z||z==="!"||z===q5.YAMLMap.tagName&&G==="map"||z===$5.YAMLSeq.tagName&&G==="seq")return x$(q,$,U,H,z);let J=$.schema.tags.find((B)=>B.tag===z&&B.collection===G);if(!J){let B=$.schema.knownTags[z];if(B?.collection===G)$.schema.tags.push(Object.assign({},B,{default:!1})),J=B;else{if(B)H(Z,"BAD_COLLECTION_TYPE",`${B.tag} used for ${G} collection, but expects ${B.collection??"scalar"}`,!0);else H(Z,"TAG_RESOLVE_FAILED",`Unresolved tag: ${z}`,!0);return x$(q,$,U,H,z)}}let Q=x$(q,$,U,H,z,J),W=J.resolve?.(Q,(B)=>H(Z,"TAG_RESOLVE_FAILED",B),$.options)??Q,Y=tZ.isNode(W)?W:new eZ.Scalar(W);if(Y.range=Q.range,Y.tag=z,J?.format)Y.format=J.format;return Y}z5.composeCollection=Z5});var h$=L((B5)=>{var u$=b();function J5(q,$,U){let X=$.offset,H=Q5($,q.options.strict,U);if(!H)return{value:"",type:null,comment:"",range:[X,X,X]};let Z=H.mode===">"?u$.Scalar.BLOCK_FOLDED:u$.Scalar.BLOCK_LITERAL,z=$.source?Y5($.source):[],G=z.length;for(let T=z.length-1;T>=0;--T){let O=z[T][1];if(O===""||O==="\r")G=T;else break}if(G===0){let T=H.chomp==="+"&&z.length>0?`
|
|
71
|
+
`.repeat(Math.max(1,z.length-1)):"",O=X+H.length;if($.source)O+=$.source.length;return{value:T,type:Z,comment:H.comment,range:[X,O,O]}}let J=$.indent+H.indent,Q=$.offset+H.length,W=0;for(let T=0;T<G;++T){let[O,V]=z[T];if(V===""||V==="\r"){if(H.indent===0&&O.length>J)J=O.length}else{if(O.length<J)U(Q+O.length,"MISSING_CHAR","Block scalars with more-indented leading empty lines must use an explicit indentation indicator");if(H.indent===0)J=O.length;if(W=T,J===0&&!q.atRoot)U(Q,"BAD_INDENT","Block scalar values in collections must be indented");break}Q+=O.length+V.length+1}for(let T=z.length-1;T>=G;--T)if(z[T][0].length>J)G=T+1;let Y="",B="",_=!1;for(let T=0;T<W;++T)Y+=z[T][0].slice(J)+`
|
|
72
|
+
`;for(let T=W;T<G;++T){let[O,V]=z[T];Q+=O.length+V.length+1;let R=V[V.length-1]==="\r";if(R)V=V.slice(0,-1);if(V&&O.length<J){let A=`Block scalar lines must not be less indented than their ${H.indent?"explicit indentation indicator":"first line"}`;U(Q-V.length-(R?2:1),"BAD_INDENT",A),O=""}if(Z===u$.Scalar.BLOCK_LITERAL)Y+=B+O.slice(J)+V,B=`
|
|
73
|
+
`;else if(O.length>J||V[0]==="\t"){if(B===" ")B=`
|
|
74
|
+
`;else if(!_&&B===`
|
|
75
|
+
`)B=`
|
|
76
76
|
|
|
77
|
-
`;B
|
|
78
|
-
`,
|
|
79
|
-
`)
|
|
80
|
-
`;else
|
|
81
|
-
`;else B
|
|
82
|
-
`+
|
|
83
|
-
`)
|
|
84
|
-
`;break;default:
|
|
85
|
-
`}let D=H
|
|
77
|
+
`;Y+=B+O.slice(J)+V,B=`
|
|
78
|
+
`,_=!0}else if(V==="")if(B===`
|
|
79
|
+
`)Y+=`
|
|
80
|
+
`;else B=`
|
|
81
|
+
`;else Y+=B+V,B=" ",_=!1}switch(H.chomp){case"-":break;case"+":for(let T=G;T<z.length;++T)Y+=`
|
|
82
|
+
`+z[T][0].slice(J);if(Y[Y.length-1]!==`
|
|
83
|
+
`)Y+=`
|
|
84
|
+
`;break;default:Y+=`
|
|
85
|
+
`}let D=X+H.length+$.source.length;return{value:Y,type:Z,comment:H.comment,range:[X,D,D]}}function Q5({offset:q,props:$},U,X){if($[0].type!=="block-scalar-header")return X($[0],"IMPOSSIBLE","Block scalar header not found"),null;let{source:H}=$[0],Z=H[0],z=0,G="",J=-1;for(let B=1;B<H.length;++B){let _=H[B];if(!G&&(_==="-"||_==="+"))G=_;else{let D=Number(_);if(!z&&D)z=D;else if(J===-1)J=q+B}}if(J!==-1)X(J,"UNEXPECTED_TOKEN",`Block scalar header includes extra characters: ${H}`);let Q=!1,W="",Y=H.length;for(let B=1;B<$.length;++B){let _=$[B];switch(_.type){case"space":Q=!0;case"newline":Y+=_.source.length;break;case"comment":if(U&&!Q)X(_,"MISSING_CHAR","Comments must be separated from other tokens by white space characters");Y+=_.source.length,W=_.source.substring(1);break;case"error":X(_,"UNEXPECTED_TOKEN",_.message),Y+=_.source.length;break;default:{let D=`Unexpected token in block scalar header: ${_.type}`;X(_,"UNEXPECTED_TOKEN",D);let T=_.source;if(T&&typeof T==="string")Y+=T.length}}}return{mode:Z,indent:z,chomp:G,comment:W,length:Y}}function Y5(q){let $=q.split(/\n( *)/),U=$[0],X=U.match(/^( *)/),Z=[X?.[1]?[X[1],U.slice(X[1].length)]:["",U]];for(let z=1;z<$.length;z+=2)Z.push([$[z],$[z+1]]);return Z}B5.resolveBlockScalar=J5});var v$=L((F5)=>{var k$=b(),W5=A0();function O5(q,$,U){let{offset:X,type:H,source:Z,end:z}=q,G,J,Q=(B,_,D)=>U(X+B,_,D);switch(H){case"scalar":G=k$.Scalar.PLAIN,J=_5(Z,Q);break;case"single-quoted-scalar":G=k$.Scalar.QUOTE_SINGLE,J=L5(Z,Q);break;case"double-quoted-scalar":G=k$.Scalar.QUOTE_DOUBLE,J=D5(Z,Q);break;default:return U(q,"UNEXPECTED_TOKEN",`Expected a flow scalar value, but found: ${H}`),{value:"",type:null,comment:"",range:[X,X+Z.length,X+Z.length]}}let W=X+Z.length,Y=W5.resolveEnd(z,W,$,U);return{value:J,type:G,comment:Y.comment,range:[X,W,Y.offset]}}function _5(q,$){let U="";switch(q[0]){case"\t":U="a tab character";break;case",":U="flow indicator character ,";break;case"%":U="directive indicator character %";break;case"|":case">":{U=`block scalar indicator ${q[0]}`;break}case"@":case"`":{U=`reserved character ${q[0]}`;break}}if(U)$(0,"BAD_SCALAR_START",`Plain value cannot start with ${U}`);return h2(q)}function L5(q,$){if(q[q.length-1]!=="'"||q.length===1)$(q.length,"MISSING_CHAR","Missing closing 'quote");return h2(q.slice(1,-1)).replace(/''/g,"'")}function h2(q){let $,U;try{$=new RegExp(`(.*?)(?<![ ])[ ]*\r?
|
|
86
86
|
`,"sy"),U=new RegExp(`[ ]*(.*?)(?:(?<![ ])[ ]*)?\r?
|
|
87
|
-
`,"sy")}catch{$=/(.*?)[ \t]*\r?\n/sy,U=/[ \t]*(.*?)[ \t]*\r?\n/sy}let
|
|
88
|
-
`)
|
|
89
|
-
`;else
|
|
90
|
-
`)continue;if(
|
|
91
|
-
`){let{fold:
|
|
92
|
-
`){
|
|
93
|
-
`){
|
|
94
|
-
`&&!(
|
|
95
|
-
`))U+=
|
|
96
|
-
`||
|
|
97
|
-
`)break;if(
|
|
87
|
+
`,"sy")}catch{$=/(.*?)[ \t]*\r?\n/sy,U=/[ \t]*(.*?)[ \t]*\r?\n/sy}let X=$.exec(q);if(!X)return q;let H=X[1],Z=" ",z=$.lastIndex;U.lastIndex=z;while(X=U.exec(q)){if(X[1]==="")if(Z===`
|
|
88
|
+
`)H+=Z;else Z=`
|
|
89
|
+
`;else H+=Z+X[1],Z=" ";z=U.lastIndex}let G=/[ \t]*(.*)/sy;return G.lastIndex=z,X=G.exec(q),H+Z+(X?.[1]??"")}function D5(q,$){let U="";for(let X=1;X<q.length-1;++X){let H=q[X];if(H==="\r"&&q[X+1]===`
|
|
90
|
+
`)continue;if(H===`
|
|
91
|
+
`){let{fold:Z,offset:z}=I5(q,X);U+=Z,X=z}else if(H==="\\"){let Z=q[++X],z=V5[Z];if(z)U+=z;else if(Z===`
|
|
92
|
+
`){Z=q[X+1];while(Z===" "||Z==="\t")Z=q[++X+1]}else if(Z==="\r"&&q[X+1]===`
|
|
93
|
+
`){Z=q[++X+1];while(Z===" "||Z==="\t")Z=q[++X+1]}else if(Z==="x"||Z==="u"||Z==="U"){let G={x:2,u:4,U:8}[Z];U+=R5(q,X+1,G,$),X+=G}else{let G=q.substr(X-1,2);$(X-1,"BAD_DQ_ESCAPE",`Invalid escape sequence ${G}`),U+=G}}else if(H===" "||H==="\t"){let Z=X,z=q[X+1];while(z===" "||z==="\t")z=q[++X+1];if(z!==`
|
|
94
|
+
`&&!(z==="\r"&&q[X+2]===`
|
|
95
|
+
`))U+=X>Z?q.slice(Z,X+1):H}else U+=H}if(q[q.length-1]!=='"'||q.length===1)$(q.length,"MISSING_CHAR",'Missing closing "quote');return U}function I5(q,$){let U="",X=q[$+1];while(X===" "||X==="\t"||X===`
|
|
96
|
+
`||X==="\r"){if(X==="\r"&&q[$+2]!==`
|
|
97
|
+
`)break;if(X===`
|
|
98
98
|
`)U+=`
|
|
99
|
-
`;$+=1,
|
|
100
|
-
`,r:"\r",t:"\t",v:"\v",N:"
",_:" ",L:"\u2028",P:"\u2029"," ":" ",'"':'"',"/":"/","\\":"\\","\t":"\t"};function
|
|
99
|
+
`;$+=1,X=q[$+1]}if(!U)U=" ";return{fold:U,offset:$}}var V5={"0":"\x00",a:"\x07",b:"\b",e:"\x1B",f:"\f",n:`
|
|
100
|
+
`,r:"\r",t:"\t",v:"\v",N:"
",_:" ",L:"\u2028",P:"\u2029"," ":" ",'"':'"',"/":"/","\\":"\\","\t":"\t"};function R5(q,$,U,X){let H=q.substr($,U),z=H.length===U&&/^[0-9a-fA-F]+$/.test(H)?parseInt(H,16):NaN;if(isNaN(z)){let G=q.substr($-2,U+2);return X($-2,"BAD_DQ_ESCAPE",`Invalid escape sequence ${G}`),G}return String.fromCodePoint(z)}F5.resolveFlowScalar=O5});var v2=L((b5)=>{var z0=K(),k2=b(),P5=h$(),M5=v$();function K5(q,$,U,X){let{value:H,type:Z,comment:z,range:G}=$.type==="block-scalar"?P5.resolveBlockScalar(q,$,X):M5.resolveFlowScalar($,q.options.strict,X),J=U?q.directives.tagName(U.source,(Y)=>X(U,"TAG_RESOLVE_FAILED",Y)):null,Q;if(q.options.stringKeys&&q.atKey)Q=q.schema[z0.SCALAR];else if(J)Q=w5(q.schema,H,J,U,X);else if($.type==="scalar")Q=N5(q,H,$,X);else Q=q.schema[z0.SCALAR];let W;try{let Y=Q.resolve(H,(B)=>X(U??$,"TAG_RESOLVE_FAILED",B),q.options);W=z0.isScalar(Y)?Y:new k2.Scalar(Y)}catch(Y){let B=Y instanceof Error?Y.message:String(Y);X(U??$,"TAG_RESOLVE_FAILED",B),W=new k2.Scalar(H)}if(W.range=G,W.source=H,Z)W.type=Z;if(J)W.tag=J;if(Q.format)W.format=Q.format;if(z)W.comment=z;return W}function w5(q,$,U,X,H){if(U==="!")return q[z0.SCALAR];let Z=[];for(let G of q.tags)if(!G.collection&&G.tag===U)if(G.default&&G.test)Z.push(G);else return G;for(let G of Z)if(G.test?.test($))return G;let z=q.knownTags[U];if(z&&!z.collection)return q.tags.push(Object.assign({},z,{default:!1,test:void 0})),z;return H(X,"TAG_RESOLVE_FAILED",`Unresolved tag: ${U}`,U!=="tag:yaml.org,2002:str"),q[z0.SCALAR]}function N5({atKey:q,directives:$,schema:U},X,H,Z){let z=U.tags.find((G)=>(G.default===!0||q&&G.default==="key")&&G.test?.test(X))||U[z0.SCALAR];if(U.compat){let G=U.compat.find((J)=>J.default&&J.test?.test(X))??U[z0.SCALAR];if(z.tag!==G.tag){let J=$.tagString(z.tag),Q=$.tagString(G.tag),W=`Value may be parsed as either ${J} or ${Q}`;Z(H,"TAG_RESOLVE_FAILED",W,!0)}}return z}b5.composeScalar=K5});var m2=L((C5)=>{function j5(q,$,U){if($){U??(U=$.length);for(let X=U-1;X>=0;--X){let H=$[X];switch(H.type){case"space":case"comment":case"newline":q-=H.source.length;continue}H=$[++X];while(H?.type==="space")q+=H.source.length,H=$[++X];break}}return q}C5.emptyScalarPosition=j5});var l2=L((v5)=>{var f5=b0(),g5=K(),y5=u2(),p2=v2(),x5=A0(),u5=m2(),h5={composeNode:d2,composeEmptyNode:m$};function d2(q,$,U,X){let H=q.atKey,{spaceBefore:Z,comment:z,anchor:G,tag:J}=U,Q,W=!0;switch($.type){case"alias":if(Q=k5(q,$,X),G||J)X($,"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(Q=p2.composeScalar(q,$,J,X),G)Q.anchor=G.source.substring(1);break;case"block-map":case"block-seq":case"flow-collection":if(Q=y5.composeCollection(h5,q,$,U,X),G)Q.anchor=G.source.substring(1);break;default:{let Y=$.type==="error"?$.message:`Unsupported token (type: ${$.type})`;X($,"UNEXPECTED_TOKEN",Y),Q=m$(q,$.offset,void 0,null,U,X),W=!1}}if(G&&Q.anchor==="")X(G,"BAD_ALIAS","Anchor cannot be an empty string");if(H&&q.options.stringKeys&&(!g5.isScalar(Q)||typeof Q.value!=="string"||Q.tag&&Q.tag!=="tag:yaml.org,2002:str"))X(J??$,"NON_STRING_KEY","With stringKeys, all keys must be strings");if(Z)Q.spaceBefore=!0;if(z)if($.type==="scalar"&&$.source==="")Q.comment=z;else Q.commentBefore=z;if(q.options.keepSourceTokens&&W)Q.srcToken=$;return Q}function m$(q,$,U,X,{spaceBefore:H,comment:Z,anchor:z,tag:G,end:J},Q){let W={type:"scalar",offset:u5.emptyScalarPosition($,U,X),indent:-1,source:""},Y=p2.composeScalar(q,W,G,Q);if(z){if(Y.anchor=z.source.substring(1),Y.anchor==="")Q(z,"BAD_ALIAS","Anchor cannot be an empty string")}if(H)Y.spaceBefore=!0;if(Z)Y.comment=Z,Y.range[2]=J;return Y}function k5({options:q},{offset:$,source:U,end:X},H){let Z=new f5.Alias(U.substring(1));if(Z.source==="")H($,"BAD_ALIAS","Alias cannot be an empty string");if(Z.source.endsWith(":"))H($+U.length-1,"BAD_ALIAS","Alias ending in : is ambiguous",!0);let z=$+U.length,G=x5.resolveEnd(X,z,q.strict,H);if(Z.range=[$,z,G.offset],G.comment)Z.comment=G.comment;return Z}v5.composeEmptyNode=m$;v5.composeNode=d2});var a2=L((i5)=>{var d5=d0(),c2=l2(),l5=A0(),c5=c0();function a5(q,$,{offset:U,start:X,value:H,end:Z},z){let G=Object.assign({_directives:$},q),J=new d5.Document(void 0,G),Q={atKey:!1,atRoot:!0,directives:J.directives,options:J.options,schema:J.schema},W=c5.resolveProps(X,{indicator:"doc-start",next:H??Z?.[0],offset:U,onError:z,parentIndent:0,startOnNewline:!0});if(W.found){if(J.directives.docStart=!0,H&&(H.type==="block-map"||H.type==="block-seq")&&!W.hasNewline)z(W.end,"MISSING_CHAR","Block collection cannot start on same line with directives-end marker")}J.contents=H?c2.composeNode(Q,H,W,z):c2.composeEmptyNode(Q,W.end,X,null,W,z);let Y=J.contents.range[2],B=l5.resolveEnd(Z,Y,!1,z);if(B.comment)J.comment=B.comment;return J.range=[U,Y,B.offset],J}i5.composeDoc=a5});var p$=L((q6)=>{var r5=q0("process"),n5=aq(),o5=d0(),a0=l0(),i2=K(),t5=a2(),e5=A0();function i0(q){if(typeof q==="number")return[q,q+1];if(Array.isArray(q))return q.length===2?q:[q[0],q[1]];let{offset:$,source:U}=q;return[$,$+(typeof U==="string"?U.length:1)]}function s2(q){let $="",U=!1,X=!1;for(let H=0;H<q.length;++H){let Z=q[H];switch(Z[0]){case"#":$+=($===""?"":X?`
|
|
101
101
|
|
|
102
102
|
`:`
|
|
103
|
-
`)+(
|
|
104
|
-
${U}`:U;else if(
|
|
105
|
-
${
|
|
106
|
-
${
|
|
107
|
-
${$.comment}`:$.comment}this.doc.range[2]=$.offset;break}default:this.errors.push(new
|
|
108
|
-
`}];switch(
|
|
109
|
-
`),
|
|
110
|
-
`,
|
|
111
|
-
`});return{type:"block-scalar",offset:
|
|
112
|
-
`),
|
|
113
|
-
`;if(q.type==="block-scalar"){let
|
|
114
|
-
`});for(let
|
|
115
|
-
`};delete q.items,Object.assign(q,{type:U,source:$,end:[
|
|
103
|
+
`)+(Z.substring(1)||" "),U=!0,X=!1;break;case"%":if(q[H+1]?.[0]!=="#")H+=1;U=!1;break;default:if(!U)X=!0;U=!1}}return{comment:$,afterEmptyLine:X}}class r2{constructor(q={}){this.doc=null,this.atDirectives=!1,this.prelude=[],this.errors=[],this.warnings=[],this.onError=($,U,X,H)=>{let Z=i0($);if(H)this.warnings.push(new a0.YAMLWarning(Z,U,X));else this.errors.push(new a0.YAMLParseError(Z,U,X))},this.directives=new n5.Directives({version:q.version||"1.2"}),this.options=q}decorate(q,$){let{comment:U,afterEmptyLine:X}=s2(this.prelude);if(U){let H=q.contents;if($)q.comment=q.comment?`${q.comment}
|
|
104
|
+
${U}`:U;else if(X||q.directives.docStart||!H)q.commentBefore=U;else if(i2.isCollection(H)&&!H.flow&&H.items.length>0){let Z=H.items[0];if(i2.isPair(Z))Z=Z.key;let z=Z.commentBefore;Z.commentBefore=z?`${U}
|
|
105
|
+
${z}`:U}else{let Z=H.commentBefore;H.commentBefore=Z?`${U}
|
|
106
|
+
${Z}`:U}}if($)Array.prototype.push.apply(q.errors,this.errors),Array.prototype.push.apply(q.warnings,this.warnings);else q.errors=this.errors,q.warnings=this.warnings;this.prelude=[],this.errors=[],this.warnings=[]}streamInfo(){return{comment:s2(this.prelude).comment,directives:this.directives,errors:this.errors,warnings:this.warnings}}*compose(q,$=!1,U=-1){for(let X of q)yield*this.next(X);yield*this.end($,U)}*next(q){if(r5.env.LOG_STREAM)console.dir(q,{depth:null});switch(q.type){case"directive":this.directives.add(q.source,($,U,X)=>{let H=i0(q);H[0]+=$,this.onError(H,"BAD_DIRECTIVE",U,X)}),this.prelude.push(q.source),this.atDirectives=!0;break;case"document":{let $=t5.composeDoc(this.options,this.directives,q,this.onError);if(this.atDirectives&&!$.directives.docStart)this.onError(q,"MISSING_CHAR","Missing directives-end/doc-start indicator line");if(this.decorate($,!1),this.doc)yield this.doc;this.doc=$,this.atDirectives=!1;break}case"byte-order-mark":case"space":break;case"comment":case"newline":this.prelude.push(q.source);break;case"error":{let $=q.source?`${q.message}: ${JSON.stringify(q.source)}`:q.message,U=new a0.YAMLParseError(i0(q),"UNEXPECTED_TOKEN",$);if(this.atDirectives||!this.doc)this.errors.push(U);else this.doc.errors.push(U);break}case"doc-end":{if(!this.doc){this.errors.push(new a0.YAMLParseError(i0(q),"UNEXPECTED_TOKEN","Unexpected doc-end without preceding document"));break}this.doc.directives.docEnd=!0;let $=e5.resolveEnd(q.end,q.offset+q.source.length,this.doc.options.strict,this.onError);if(this.decorate(this.doc,!0),$.comment){let U=this.doc.comment;this.doc.comment=U?`${U}
|
|
107
|
+
${$.comment}`:$.comment}this.doc.range[2]=$.offset;break}default:this.errors.push(new a0.YAMLParseError(i0(q),"UNEXPECTED_TOKEN",`Unsupported token ${q.type}`))}}*end(q=!1,$=-1){if(this.doc)this.decorate(this.doc,!0),yield this.doc,this.doc=null;else if(q){let U=Object.assign({_directives:this.directives},this.options),X=new o5.Document(void 0,U);if(this.atDirectives)this.onError($,"MISSING_CHAR","Missing directives-end indicator line");X.range=[0,$,$],this.decorate(X,!1),yield X}}}q6.Composer=r2});var t2=L((Q6)=>{var U6=h$(),X6=v$(),H6=l0(),n2=E0();function Z6(q,$=!0,U){if(q){let X=(H,Z,z)=>{let G=typeof H==="number"?H:Array.isArray(H)?H[0]:H.offset;if(U)U(G,Z,z);else throw new H6.YAMLParseError([G,G+1],Z,z)};switch(q.type){case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return X6.resolveFlowScalar(q,$,X);case"block-scalar":return U6.resolveBlockScalar({options:{strict:$}},q,X)}}return null}function z6(q,$){let{implicitKey:U=!1,indent:X,inFlow:H=!1,offset:Z=-1,type:z="PLAIN"}=$,G=n2.stringifyString({type:z,value:q},{implicitKey:U,indent:X>0?" ".repeat(X):"",inFlow:H,options:{blockQuote:!0,lineWidth:-1}}),J=$.end??[{type:"newline",offset:-1,indent:X,source:`
|
|
108
|
+
`}];switch(G[0]){case"|":case">":{let Q=G.indexOf(`
|
|
109
|
+
`),W=G.substring(0,Q),Y=G.substring(Q+1)+`
|
|
110
|
+
`,B=[{type:"block-scalar-header",offset:Z,indent:X,source:W}];if(!o2(B,J))B.push({type:"newline",offset:-1,indent:X,source:`
|
|
111
|
+
`});return{type:"block-scalar",offset:Z,indent:X,props:B,source:Y}}case'"':return{type:"double-quoted-scalar",offset:Z,indent:X,source:G,end:J};case"'":return{type:"single-quoted-scalar",offset:Z,indent:X,source:G,end:J};default:return{type:"scalar",offset:Z,indent:X,source:G,end:J}}}function G6(q,$,U={}){let{afterKey:X=!1,implicitKey:H=!1,inFlow:Z=!1,type:z}=U,G="indent"in q?q.indent:null;if(X&&typeof G==="number")G+=2;if(!z)switch(q.type){case"single-quoted-scalar":z="QUOTE_SINGLE";break;case"double-quoted-scalar":z="QUOTE_DOUBLE";break;case"block-scalar":{let Q=q.props[0];if(Q.type!=="block-scalar-header")throw Error("Invalid block scalar header");z=Q.source[0]===">"?"BLOCK_FOLDED":"BLOCK_LITERAL";break}default:z="PLAIN"}let J=n2.stringifyString({type:z,value:$},{implicitKey:H||G===null,indent:G!==null&&G>0?" ".repeat(G):"",inFlow:Z,options:{blockQuote:!0,lineWidth:-1}});switch(J[0]){case"|":case">":J6(q,J);break;case'"':d$(q,J,"double-quoted-scalar");break;case"'":d$(q,J,"single-quoted-scalar");break;default:d$(q,J,"scalar")}}function J6(q,$){let U=$.indexOf(`
|
|
112
|
+
`),X=$.substring(0,U),H=$.substring(U+1)+`
|
|
113
|
+
`;if(q.type==="block-scalar"){let Z=q.props[0];if(Z.type!=="block-scalar-header")throw Error("Invalid block scalar header");Z.source=X,q.source=H}else{let{offset:Z}=q,z="indent"in q?q.indent:-1,G=[{type:"block-scalar-header",offset:Z,indent:z,source:X}];if(!o2(G,"end"in q?q.end:void 0))G.push({type:"newline",offset:-1,indent:z,source:`
|
|
114
|
+
`});for(let J of Object.keys(q))if(J!=="type"&&J!=="offset")delete q[J];Object.assign(q,{type:"block-scalar",indent:z,props:G,source:H})}}function o2(q,$){if($)for(let U of $)switch(U.type){case"space":case"comment":q.push(U);break;case"newline":return q.push(U),!0}return!1}function d$(q,$,U){switch(q.type){case"scalar":case"double-quoted-scalar":case"single-quoted-scalar":q.type=U,q.source=$;break;case"block-scalar":{let X=q.props.slice(1),H=$.length;if(q.props[0].type==="block-scalar-header")H-=q.props[0].source.length;for(let Z of X)Z.offset+=H;delete q.props,Object.assign(q,{type:U,source:$,end:X});break}case"block-map":case"block-seq":{let H={type:"newline",offset:q.offset+$.length,indent:q.indent,source:`
|
|
115
|
+
`};delete q.items,Object.assign(q,{type:U,source:$,end:[H]});break}default:{let X="indent"in q?q.indent:-1,H="end"in q&&Array.isArray(q.end)?q.end.filter((Z)=>Z.type==="space"||Z.type==="comment"||Z.type==="newline"):[];for(let Z of Object.keys(q))if(Z!=="type"&&Z!=="offset")delete q[Z];Object.assign(q,{type:U,indent:X,source:$,end:H})}}}Q6.createScalarToken=z6;Q6.resolveAsScalar=Z6;Q6.setScalarValue=G6});var e2=L((O6)=>{var W6=(q)=>("type"in q)?fq(q):Eq(q);function fq(q){switch(q.type){case"block-scalar":{let $="";for(let U of q.props)$+=fq(U);return $+q.source}case"block-map":case"block-seq":{let $="";for(let U of q.items)$+=Eq(U);return $}case"flow-collection":{let $=q.start.source;for(let U of q.items)$+=Eq(U);for(let U of q.end)$+=U.source;return $}case"document":{let $=Eq(q);if(q.end)for(let U of q.end)$+=U.source;return $}default:{let $=q.source;if("end"in q&&q.end)for(let U of q.end)$+=U.source;return $}}}function Eq({start:q,key:$,sep:U,value:X}){let H="";for(let Z of q)H+=Z.source;if($)H+=fq($);if(U)for(let Z of U)H+=Z.source;if(X)H+=fq(X);return H}O6.stringify=W6});var UU=L((D6)=>{var l$=Symbol("break visit"),L6=Symbol("skip children"),qU=Symbol("remove item");function G0(q,$){if("type"in q&&q.type==="document")q={start:q.start,value:q.value};$U(Object.freeze([]),q,$)}G0.BREAK=l$;G0.SKIP=L6;G0.REMOVE=qU;G0.itemAtPath=(q,$)=>{let U=q;for(let[X,H]of $){let Z=U?.[X];if(Z&&"items"in Z)U=Z.items[H];else return}return U};G0.parentCollection=(q,$)=>{let U=G0.itemAtPath(q,$.slice(0,-1)),X=$[$.length-1][0],H=U?.[X];if(H&&"items"in H)return H;throw Error("Parent collection not found")};function $U(q,$,U){let X=U($,q);if(typeof X==="symbol")return X;for(let H of["key","value"]){let Z=$[H];if(Z&&"items"in Z){for(let z=0;z<Z.items.length;++z){let G=$U(Object.freeze(q.concat([[H,z]])),Z.items[z],U);if(typeof G==="number")z=G-1;else if(G===l$)return l$;else if(G===qU)Z.items.splice(z,1),z-=1}if(typeof X==="function"&&H==="key")X=X($,q)}}return typeof X==="function"?X($,q):X}D6.visit=G0});var gq=L((K6)=>{var c$=t2(),V6=e2(),R6=UU(),a$="\uFEFF",i$="\x02",s$="\x18",r$="\x1F",F6=(q)=>!!q&&("items"in q),A6=(q)=>!!q&&(q.type==="scalar"||q.type==="single-quoted-scalar"||q.type==="double-quoted-scalar"||q.type==="block-scalar");function P6(q){switch(q){case a$:return"<BOM>";case i$:return"<DOC>";case s$:return"<FLOW_END>";case r$:return"<SCALAR>";default:return JSON.stringify(q)}}function M6(q){switch(q){case a$:return"byte-order-mark";case i$:return"doc-mode";case s$:return"flow-error-end";case r$:return"scalar";case"---":return"doc-start";case"...":return"doc-end";case"":case`
|
|
116
116
|
`:case`\r
|
|
117
|
-
`:return"newline";case"-":return"seq-item-ind";case"?":return"explicit-key-ind";case":":return"map-value-ind";case"{":return"flow-map-start";case"}":return"flow-map-end";case"[":return"flow-seq-start";case"]":return"flow-seq-end";case",":return"comma"}switch(q[0]){case" ":case"\t":return"space";case"#":return"comment";case"%":return"directive-line";case"*":return"alias";case"&":return"anchor";case"!":return"tag";case"'":return"single-quoted-scalar";case'"':return"double-quoted-scalar";case"|":case">":return"block-scalar-header"}return null}
|
|
118
|
-
`:case"\r":case"\t":return!0;default:return!1}}var
|
|
119
|
-
\r `),n$=(q)=>!q||
|
|
117
|
+
`:return"newline";case"-":return"seq-item-ind";case"?":return"explicit-key-ind";case":":return"map-value-ind";case"{":return"flow-map-start";case"}":return"flow-map-end";case"[":return"flow-seq-start";case"]":return"flow-seq-end";case",":return"comma"}switch(q[0]){case" ":case"\t":return"space";case"#":return"comment";case"%":return"directive-line";case"*":return"alias";case"&":return"anchor";case"!":return"tag";case"'":return"single-quoted-scalar";case'"':return"double-quoted-scalar";case"|":case">":return"block-scalar-header"}return null}K6.createScalarToken=c$.createScalarToken;K6.resolveAsScalar=c$.resolveAsScalar;K6.setScalarValue=c$.setScalarValue;K6.stringify=V6.stringify;K6.visit=R6.visit;K6.BOM=a$;K6.DOCUMENT=i$;K6.FLOW_END=s$;K6.SCALAR=r$;K6.isCollection=F6;K6.isScalar=A6;K6.prettyToken=P6;K6.tokenType=M6});var o$=L((m6)=>{var s0=gq();function u(q){switch(q){case void 0:case" ":case`
|
|
118
|
+
`:case"\r":case"\t":return!0;default:return!1}}var XU=new Set("0123456789ABCDEFabcdef"),k6=new Set("0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-#;/?:@&=+$_.!~*'()"),yq=new Set(",[]{}"),v6=new Set(` ,[]{}
|
|
119
|
+
\r `),n$=(q)=>!q||v6.has(q);class HU{constructor(){this.atEnd=!1,this.blockScalarIndent=-1,this.blockScalarKeep=!1,this.buffer="",this.flowKey=!1,this.flowLevel=0,this.indentNext=0,this.indentValue=0,this.lineEndPos=null,this.next=null,this.pos=0}*lex(q,$=!1){if(q){if(typeof q!=="string")throw TypeError("source is not a string");this.buffer=this.buffer?this.buffer+q:q,this.lineEndPos=null}this.atEnd=!$;let U=this.next??"stream";while(U&&($||this.hasChars(1)))U=yield*this.parseNext(U)}atLineEnd(){let q=this.pos,$=this.buffer[q];while($===" "||$==="\t")$=this.buffer[++q];if(!$||$==="#"||$===`
|
|
120
120
|
`)return!0;if($==="\r")return this.buffer[q+1]===`
|
|
121
|
-
`;return!1}charAt(q){return this.buffer[this.pos+q]}continueScalar(q){let $=this.buffer[q];if(this.indentNext>0){let U=0;while($===" ")$=this.buffer[++U+q];if($==="\r"){let
|
|
122
|
-
`||!
|
|
123
|
-
`||U>=this.indentNext||!$&&!this.atEnd?q+U:-1}if($==="-"||$==="."){let U=this.buffer.substr(q,3);if((U==="---"||U==="...")&&
|
|
124
|
-
`,this.pos),this.lineEndPos=q;if(q===-1)return this.atEnd?this.buffer.substring(this.pos):null;if(this.buffer[q-1]==="\r")q-=1;return this.buffer.substring(this.pos,q)}hasChars(q){return this.pos+q<=this.buffer.length}setNext(q){return this.buffer=this.buffer.substring(this.pos),this.pos=0,this.lineEndPos=null,this.next=q,null}peek(q){return this.buffer.substr(this.pos,q)}*parseNext(q){switch(q){case"stream":return yield*this.parseStream();case"line-start":return yield*this.parseLineStart();case"block-start":return yield*this.parseBlockStart();case"doc":return yield*this.parseDocument();case"flow":return yield*this.parseFlowCollection();case"quoted-scalar":return yield*this.parseQuotedScalar();case"block-scalar":return yield*this.parseBlockScalar();case"plain-scalar":return yield*this.parsePlainScalar()}}*parseStream(){let q=this.getLine();if(q===null)return this.setNext("stream");if(q[0]===s0.BOM)yield*this.pushCount(1),q=q.substring(1);if(q[0]==="%"){let $=q.length,U=q.indexOf("#");while(U!==-1){let
|
|
125
|
-
`,this.pos);if(
|
|
126
|
-
`,
|
|
127
|
-
`:q=
|
|
128
|
-
`)break}default:break q}if(!U&&!this.atEnd)return this.setNext("block-scalar");if($>=this.indentNext){if(this.blockScalarIndent===-1)this.indentNext=$;else this.indentNext=this.blockScalarIndent+(this.indentNext===0?1:this.indentNext);do{let
|
|
129
|
-
`,
|
|
130
|
-
`)U=this.buffer[++
|
|
131
|
-
`&&
|
|
132
|
-
`)U+=1,
|
|
133
|
-
`,
|
|
134
|
-
`){let
|
|
121
|
+
`;return!1}charAt(q){return this.buffer[this.pos+q]}continueScalar(q){let $=this.buffer[q];if(this.indentNext>0){let U=0;while($===" ")$=this.buffer[++U+q];if($==="\r"){let X=this.buffer[U+q+1];if(X===`
|
|
122
|
+
`||!X&&!this.atEnd)return q+U+1}return $===`
|
|
123
|
+
`||U>=this.indentNext||!$&&!this.atEnd?q+U:-1}if($==="-"||$==="."){let U=this.buffer.substr(q,3);if((U==="---"||U==="...")&&u(this.buffer[q+3]))return-1}return q}getLine(){let q=this.lineEndPos;if(typeof q!=="number"||q!==-1&&q<this.pos)q=this.buffer.indexOf(`
|
|
124
|
+
`,this.pos),this.lineEndPos=q;if(q===-1)return this.atEnd?this.buffer.substring(this.pos):null;if(this.buffer[q-1]==="\r")q-=1;return this.buffer.substring(this.pos,q)}hasChars(q){return this.pos+q<=this.buffer.length}setNext(q){return this.buffer=this.buffer.substring(this.pos),this.pos=0,this.lineEndPos=null,this.next=q,null}peek(q){return this.buffer.substr(this.pos,q)}*parseNext(q){switch(q){case"stream":return yield*this.parseStream();case"line-start":return yield*this.parseLineStart();case"block-start":return yield*this.parseBlockStart();case"doc":return yield*this.parseDocument();case"flow":return yield*this.parseFlowCollection();case"quoted-scalar":return yield*this.parseQuotedScalar();case"block-scalar":return yield*this.parseBlockScalar();case"plain-scalar":return yield*this.parsePlainScalar()}}*parseStream(){let q=this.getLine();if(q===null)return this.setNext("stream");if(q[0]===s0.BOM)yield*this.pushCount(1),q=q.substring(1);if(q[0]==="%"){let $=q.length,U=q.indexOf("#");while(U!==-1){let H=q[U-1];if(H===" "||H==="\t"){$=U-1;break}else U=q.indexOf("#",U+1)}while(!0){let H=q[$-1];if(H===" "||H==="\t")$-=1;else break}let X=(yield*this.pushCount($))+(yield*this.pushSpaces(!0));return yield*this.pushCount(q.length-X),this.pushNewline(),"stream"}if(this.atLineEnd()){let $=yield*this.pushSpaces(!0);return yield*this.pushCount(q.length-$),yield*this.pushNewline(),"stream"}return yield s0.DOCUMENT,yield*this.parseLineStart()}*parseLineStart(){let q=this.charAt(0);if(!q&&!this.atEnd)return this.setNext("line-start");if(q==="-"||q==="."){if(!this.atEnd&&!this.hasChars(4))return this.setNext("line-start");let $=this.peek(3);if(($==="---"||$==="...")&&u(this.charAt(3)))return yield*this.pushCount(3),this.indentValue=0,this.indentNext=0,$==="---"?"doc":"stream"}if(this.indentValue=yield*this.pushSpaces(!1),this.indentNext>this.indentValue&&!u(this.charAt(1)))this.indentNext=this.indentValue;return yield*this.parseBlockStart()}*parseBlockStart(){let[q,$]=this.peek(2);if(!$&&!this.atEnd)return this.setNext("block-start");if((q==="-"||q==="?"||q===":")&&u($)){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 q=this.getLine();if(q===null)return this.setNext("doc");let $=yield*this.pushIndicators();switch(q[$]){case"#":yield*this.pushCount(q.length-$);case void 0:return yield*this.pushNewline(),yield*this.parseLineStart();case"{":case"[":return yield*this.pushCount(1),this.flowKey=!1,this.flowLevel=1,"flow";case"}":case"]":return yield*this.pushCount(1),"doc";case"*":return yield*this.pushUntil(n$),"doc";case'"':case"'":return yield*this.parseQuotedScalar();case"|":case">":return $+=yield*this.parseBlockScalarHeader(),$+=yield*this.pushSpaces(!0),yield*this.pushCount(q.length-$),yield*this.pushNewline(),yield*this.parseBlockScalar();default:return yield*this.parsePlainScalar()}}*parseFlowCollection(){let q,$,U=-1;do{if(q=yield*this.pushNewline(),q>0)$=yield*this.pushSpaces(!1),this.indentValue=U=$;else $=0;$+=yield*this.pushSpaces(!0)}while(q+$>0);let X=this.getLine();if(X===null)return this.setNext("flow");if(U!==-1&&U<this.indentNext&&X[0]!=="#"||U===0&&(X.startsWith("---")||X.startsWith("..."))&&u(X[3])){if(!(U===this.indentNext-1&&this.flowLevel===1&&(X[0]==="]"||X[0]==="}")))return this.flowLevel=0,yield s0.FLOW_END,yield*this.parseLineStart()}let H=0;while(X[H]===",")H+=yield*this.pushCount(1),H+=yield*this.pushSpaces(!0),this.flowKey=!1;switch(H+=yield*this.pushIndicators(),X[H]){case void 0:return"flow";case"#":return yield*this.pushCount(X.length-H),"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(n$),"flow";case'"':case"'":return this.flowKey=!0,yield*this.parseQuotedScalar();case":":{let Z=this.charAt(1);if(this.flowKey||u(Z)||Z===",")return this.flowKey=!1,yield*this.pushCount(1),yield*this.pushSpaces(!0),"flow"}default:return this.flowKey=!1,yield*this.parsePlainScalar()}}*parseQuotedScalar(){let q=this.charAt(0),$=this.buffer.indexOf(q,this.pos+1);if(q==="'")while($!==-1&&this.buffer[$+1]==="'")$=this.buffer.indexOf("'",$+2);else while($!==-1){let H=0;while(this.buffer[$-1-H]==="\\")H+=1;if(H%2===0)break;$=this.buffer.indexOf('"',$+1)}let U=this.buffer.substring(0,$),X=U.indexOf(`
|
|
125
|
+
`,this.pos);if(X!==-1){while(X!==-1){let H=this.continueScalar(X+1);if(H===-1)break;X=U.indexOf(`
|
|
126
|
+
`,H)}if(X!==-1)$=X-(U[X-1]==="\r"?2:1)}if($===-1){if(!this.atEnd)return this.setNext("quoted-scalar");$=this.buffer.length}return yield*this.pushToIndex($+1,!1),this.flowLevel?"flow":"doc"}*parseBlockScalarHeader(){this.blockScalarIndent=-1,this.blockScalarKeep=!1;let q=this.pos;while(!0){let $=this.buffer[++q];if($==="+")this.blockScalarKeep=!0;else if($>"0"&&$<="9")this.blockScalarIndent=Number($)-1;else if($!=="-")break}return yield*this.pushUntil(($)=>u($)||$==="#")}*parseBlockScalar(){let q=this.pos-1,$=0,U;q:for(let H=this.pos;U=this.buffer[H];++H)switch(U){case" ":$+=1;break;case`
|
|
127
|
+
`:q=H,$=0;break;case"\r":{let Z=this.buffer[H+1];if(!Z&&!this.atEnd)return this.setNext("block-scalar");if(Z===`
|
|
128
|
+
`)break}default:break q}if(!U&&!this.atEnd)return this.setNext("block-scalar");if($>=this.indentNext){if(this.blockScalarIndent===-1)this.indentNext=$;else this.indentNext=this.blockScalarIndent+(this.indentNext===0?1:this.indentNext);do{let H=this.continueScalar(q+1);if(H===-1)break;q=this.buffer.indexOf(`
|
|
129
|
+
`,H)}while(q!==-1);if(q===-1){if(!this.atEnd)return this.setNext("block-scalar");q=this.buffer.length}}let X=q+1;U=this.buffer[X];while(U===" ")U=this.buffer[++X];if(U==="\t"){while(U==="\t"||U===" "||U==="\r"||U===`
|
|
130
|
+
`)U=this.buffer[++X];q=X-1}else if(!this.blockScalarKeep)do{let H=q-1,Z=this.buffer[H];if(Z==="\r")Z=this.buffer[--H];let z=H;while(Z===" ")Z=this.buffer[--H];if(Z===`
|
|
131
|
+
`&&H>=this.pos&&H+1+$>z)q=H;else break}while(!0);return yield s0.SCALAR,yield*this.pushToIndex(q+1,!0),yield*this.parseLineStart()}*parsePlainScalar(){let q=this.flowLevel>0,$=this.pos-1,U=this.pos-1,X;while(X=this.buffer[++U])if(X===":"){let H=this.buffer[U+1];if(u(H)||q&&yq.has(H))break;$=U}else if(u(X)){let H=this.buffer[U+1];if(X==="\r")if(H===`
|
|
132
|
+
`)U+=1,X=`
|
|
133
|
+
`,H=this.buffer[U+1];else $=U;if(H==="#"||q&&yq.has(H))break;if(X===`
|
|
134
|
+
`){let Z=this.continueScalar(U+1);if(Z===-1)break;U=Math.max(U,Z-2)}}else{if(q&&yq.has(X))break;$=U}if(!X&&!this.atEnd)return this.setNext("plain-scalar");return yield s0.SCALAR,yield*this.pushToIndex($+1,!0),q?"flow":"doc"}*pushCount(q){if(q>0)return yield this.buffer.substr(this.pos,q),this.pos+=q,q;return 0}*pushToIndex(q,$){let U=this.buffer.slice(this.pos,q);if(U)return yield U,this.pos+=U.length,U.length;else if($)yield"";return 0}*pushIndicators(){switch(this.charAt(0)){case"!":return(yield*this.pushTag())+(yield*this.pushSpaces(!0))+(yield*this.pushIndicators());case"&":return(yield*this.pushUntil(n$))+(yield*this.pushSpaces(!0))+(yield*this.pushIndicators());case"-":case"?":case":":{let q=this.flowLevel>0,$=this.charAt(1);if(u($)||q&&yq.has($)){if(!q)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 q=this.pos+2,$=this.buffer[q];while(!u($)&&$!==">")$=this.buffer[++q];return yield*this.pushToIndex($===">"?q+1:q,!1)}else{let q=this.pos+1,$=this.buffer[q];while($)if(k6.has($))$=this.buffer[++q];else if($==="%"&&XU.has(this.buffer[q+1])&&XU.has(this.buffer[q+2]))$=this.buffer[q+=3];else break;return yield*this.pushToIndex(q,!1)}}*pushNewline(){let q=this.buffer[this.pos];if(q===`
|
|
135
135
|
`)return yield*this.pushCount(1);else if(q==="\r"&&this.charAt(1)===`
|
|
136
|
-
`)return yield*this.pushCount(2);else return 0}*pushSpaces(q){let $=this.pos-1,U;do U=this.buffer[++$];while(U===" "||q&&U==="\t");let
|
|
136
|
+
`)return yield*this.pushCount(2);else return 0}*pushSpaces(q){let $=this.pos-1,U;do U=this.buffer[++$];while(U===" "||q&&U==="\t");let X=$-this.pos;if(X>0)yield this.buffer.substr(this.pos,X),this.pos=$;return X}*pushUntil(q){let $=this.pos,U=this.buffer[$];while(!q(U))U=this.buffer[++$];return yield*this.pushToIndex($,!1)}}m6.Lexer=HU});var t$=L((d6)=>{class ZU{constructor(){this.lineStarts=[],this.addNewLine=(q)=>this.lineStarts.push(q),this.linePos=(q)=>{let $=0,U=this.lineStarts.length;while($<U){let H=$+U>>1;if(this.lineStarts[H]<q)$=H+1;else U=H}if(this.lineStarts[$]===q)return{line:$+1,col:1};if($===0)return{line:0,col:q};let X=this.lineStarts[$-1];return{line:$,col:q-X+1}}}}d6.LineCounter=ZU});var e$=L((i6)=>{var c6=q0("process"),zU=gq(),a6=o$();function o(q,$){for(let U=0;U<q.length;++U)if(q[U].type===$)return!0;return!1}function GU(q){for(let $=0;$<q.length;++$)switch(q[$].type){case"space":case"comment":case"newline":break;default:return $}return-1}function QU(q){switch(q?.type){case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":case"flow-collection":return!0;default:return!1}}function xq(q){switch(q.type){case"document":return q.start;case"block-map":{let $=q.items[q.items.length-1];return $.sep??$.start}case"block-seq":return q.items[q.items.length-1].start;default:return[]}}function P0(q){if(q.length===0)return[];let $=q.length;q:while(--$>=0)switch(q[$].type){case"doc-start":case"explicit-key-ind":case"map-value-ind":case"seq-item-ind":case"newline":break q}while(q[++$]?.type==="space");return q.splice($,q.length)}function JU(q){if(q.start.type==="flow-seq-start"){for(let $ of q.items)if($.sep&&!$.value&&!o($.start,"explicit-key-ind")&&!o($.sep,"map-value-ind")){if($.key)$.value=$.key;if(delete $.key,QU($.value))if($.value.end)Array.prototype.push.apply($.value.end,$.sep);else $.value.end=$.sep;else Array.prototype.push.apply($.start,$.sep);delete $.sep}}}class YU{constructor(q){this.atNewLine=!0,this.atScalar=!1,this.indent=0,this.offset=0,this.onKeyLine=!1,this.stack=[],this.source="",this.type="",this.lexer=new a6.Lexer,this.onNewLine=q}*parse(q,$=!1){if(this.onNewLine&&this.offset===0)this.onNewLine(0);for(let U of this.lexer.lex(q,$))yield*this.next(U);if(!$)yield*this.end()}*next(q){if(this.source=q,c6.env.LOG_TOKENS)console.log("|",zU.prettyToken(q));if(this.atScalar){this.atScalar=!1,yield*this.step(),this.offset+=q.length;return}let $=zU.tokenType(q);if(!$){let U=`Not a YAML token: ${q}`;yield*this.pop({type:"error",offset:this.offset,message:U,source:q}),this.offset+=q.length}else if($==="scalar")this.atNewLine=!1,this.atScalar=!0,this.type="scalar";else{switch(this.type=$,yield*this.step(),$){case"newline":if(this.atNewLine=!0,this.indent=0,this.onNewLine)this.onNewLine(this.offset+q.length);break;case"space":if(this.atNewLine&&q[0]===" ")this.indent+=q.length;break;case"explicit-key-ind":case"map-value-ind":case"seq-item-ind":if(this.atNewLine)this.indent+=q.length;break;case"doc-mode":case"flow-error-end":return;default:this.atNewLine=!1}this.offset+=q.length}}*end(){while(this.stack.length>0)yield*this.pop()}get sourceToken(){return{type:this.type,offset:this.offset,indent:this.indent,source:this.source}}*step(){let q=this.peek(1);if(this.type==="doc-end"&&q?.type!=="doc-end"){while(this.stack.length>0)yield*this.pop();this.stack.push({type:"doc-end",offset:this.offset,source:this.source});return}if(!q)return yield*this.stream();switch(q.type){case"document":return yield*this.document(q);case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return yield*this.scalar(q);case"block-scalar":return yield*this.blockScalar(q);case"block-map":return yield*this.blockMap(q);case"block-seq":return yield*this.blockSequence(q);case"flow-collection":return yield*this.flowCollection(q);case"doc-end":return yield*this.documentEnd(q)}yield*this.pop()}peek(q){return this.stack[this.stack.length-q]}*pop(q){let $=q??this.stack.pop();if(!$)yield{type:"error",offset:this.offset,source:"",message:"Tried to pop an empty stack"};else if(this.stack.length===0)yield $;else{let U=this.peek(1);if($.type==="block-scalar")$.indent="indent"in U?U.indent:0;else if($.type==="flow-collection"&&U.type==="document")$.indent=0;if($.type==="flow-collection")JU($);switch(U.type){case"document":U.value=$;break;case"block-scalar":U.props.push($);break;case"block-map":{let X=U.items[U.items.length-1];if(X.value){U.items.push({start:[],key:$,sep:[]}),this.onKeyLine=!0;return}else if(X.sep)X.value=$;else{Object.assign(X,{key:$,sep:[]}),this.onKeyLine=!X.explicitKey;return}break}case"block-seq":{let X=U.items[U.items.length-1];if(X.value)U.items.push({start:[],value:$});else X.value=$;break}case"flow-collection":{let X=U.items[U.items.length-1];if(!X||X.value)U.items.push({start:[],key:$,sep:[]});else if(X.sep)X.value=$;else Object.assign(X,{key:$,sep:[]});return}default:yield*this.pop(),yield*this.pop($)}if((U.type==="document"||U.type==="block-map"||U.type==="block-seq")&&($.type==="block-map"||$.type==="block-seq")){let X=$.items[$.items.length-1];if(X&&!X.sep&&!X.value&&X.start.length>0&&GU(X.start)===-1&&($.indent===0||X.start.every((H)=>H.type!=="comment"||H.indent<$.indent))){if(U.type==="document")U.end=X.start;else U.items.push({start:X.start});$.items.splice(-1,1)}}}}*stream(){switch(this.type){case"directive-line":yield{type:"directive",offset:this.offset,source:this.source};return;case"byte-order-mark":case"space":case"comment":case"newline":yield this.sourceToken;return;case"doc-mode":case"doc-start":{let q={type:"document",offset:this.offset,start:[]};if(this.type==="doc-start")q.start.push(this.sourceToken);this.stack.push(q);return}}yield{type:"error",offset:this.offset,message:`Unexpected ${this.type} token in YAML stream`,source:this.source}}*document(q){if(q.value)return yield*this.lineEnd(q);switch(this.type){case"doc-start":{if(GU(q.start)!==-1)yield*this.pop(),yield*this.step();else q.start.push(this.sourceToken);return}case"anchor":case"tag":case"space":case"comment":case"newline":q.start.push(this.sourceToken);return}let $=this.startBlockValue(q);if($)this.stack.push($);else yield{type:"error",offset:this.offset,message:`Unexpected ${this.type} token in YAML document`,source:this.source}}*scalar(q){if(this.type==="map-value-ind"){let $=xq(this.peek(2)),U=P0($),X;if(q.end)X=q.end,X.push(this.sourceToken),delete q.end;else X=[this.sourceToken];let H={type:"block-map",offset:q.offset,indent:q.indent,items:[{start:U,key:q,sep:X}]};this.onKeyLine=!0,this.stack[this.stack.length-1]=H}else yield*this.lineEnd(q)}*blockScalar(q){switch(this.type){case"space":case"comment":case"newline":q.props.push(this.sourceToken);return;case"scalar":if(q.source=this.source,this.atNewLine=!0,this.indent=0,this.onNewLine){let $=this.source.indexOf(`
|
|
137
137
|
`)+1;while($!==0)this.onNewLine(this.offset+$),$=this.source.indexOf(`
|
|
138
|
-
`,$)+1}yield*this.pop();break;default:yield*this.pop(),yield*this.step()}}*blockMap(q){let $=q.items[q.items.length-1];switch(this.type){case"newline":if(this.onKeyLine=!1,$.value){let U="end"in $.value?$.value.end:void 0;if((Array.isArray(U)?U[U.length-1]:void 0)?.type==="comment")U?.push(this.sourceToken);else q.items.push({start:[this.sourceToken]})}else if($.sep)$.sep.push(this.sourceToken);else $.start.push(this.sourceToken);return;case"space":case"comment":if($.value)q.items.push({start:[this.sourceToken]});else if($.sep)$.sep.push(this.sourceToken);else{if(this.atIndentedComment($.start,q.indent)){let
|
|
138
|
+
`,$)+1}yield*this.pop();break;default:yield*this.pop(),yield*this.step()}}*blockMap(q){let $=q.items[q.items.length-1];switch(this.type){case"newline":if(this.onKeyLine=!1,$.value){let U="end"in $.value?$.value.end:void 0;if((Array.isArray(U)?U[U.length-1]:void 0)?.type==="comment")U?.push(this.sourceToken);else q.items.push({start:[this.sourceToken]})}else if($.sep)$.sep.push(this.sourceToken);else $.start.push(this.sourceToken);return;case"space":case"comment":if($.value)q.items.push({start:[this.sourceToken]});else if($.sep)$.sep.push(this.sourceToken);else{if(this.atIndentedComment($.start,q.indent)){let X=q.items[q.items.length-2]?.value?.end;if(Array.isArray(X)){Array.prototype.push.apply(X,$.start),X.push(this.sourceToken),q.items.pop();return}}$.start.push(this.sourceToken)}return}if(this.indent>=q.indent){let U=!this.onKeyLine&&this.indent===q.indent,X=U&&($.sep||$.explicitKey)&&this.type!=="seq-item-ind",H=[];if(X&&$.sep&&!$.value){let Z=[];for(let z=0;z<$.sep.length;++z){let G=$.sep[z];switch(G.type){case"newline":Z.push(z);break;case"space":break;case"comment":if(G.indent>q.indent)Z.length=0;break;default:Z.length=0}}if(Z.length>=2)H=$.sep.splice(Z[1])}switch(this.type){case"anchor":case"tag":if(X||$.value)H.push(this.sourceToken),q.items.push({start:H}),this.onKeyLine=!0;else if($.sep)$.sep.push(this.sourceToken);else $.start.push(this.sourceToken);return;case"explicit-key-ind":if(!$.sep&&!$.explicitKey)$.start.push(this.sourceToken),$.explicitKey=!0;else if(X||$.value)H.push(this.sourceToken),q.items.push({start:H,explicitKey:!0});else this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:[this.sourceToken],explicitKey:!0}]});this.onKeyLine=!0;return;case"map-value-ind":if($.explicitKey)if(!$.sep)if(o($.start,"newline"))Object.assign($,{key:null,sep:[this.sourceToken]});else{let Z=P0($.start);this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:Z,key:null,sep:[this.sourceToken]}]})}else if($.value)q.items.push({start:[],key:null,sep:[this.sourceToken]});else if(o($.sep,"map-value-ind"))this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:H,key:null,sep:[this.sourceToken]}]});else if(QU($.key)&&!o($.sep,"newline")){let Z=P0($.start),z=$.key,G=$.sep;G.push(this.sourceToken),delete $.key,delete $.sep,this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:Z,key:z,sep:G}]})}else if(H.length>0)$.sep=$.sep.concat(H,this.sourceToken);else $.sep.push(this.sourceToken);else if(!$.sep)Object.assign($,{key:null,sep:[this.sourceToken]});else if($.value||X)q.items.push({start:H,key:null,sep:[this.sourceToken]});else if(o($.sep,"map-value-ind"))this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:[],key:null,sep:[this.sourceToken]}]});else $.sep.push(this.sourceToken);this.onKeyLine=!0;return;case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":{let Z=this.flowScalar(this.type);if(X||$.value)q.items.push({start:H,key:Z,sep:[]}),this.onKeyLine=!0;else if($.sep)this.stack.push(Z);else Object.assign($,{key:Z,sep:[]}),this.onKeyLine=!0;return}default:{let Z=this.startBlockValue(q);if(Z){if(Z.type==="block-seq"){if(!$.explicitKey&&$.sep&&!o($.sep,"newline")){yield*this.pop({type:"error",offset:this.offset,message:"Unexpected block-seq-ind on same line with key",source:this.source});return}}else if(U)q.items.push({start:H});this.stack.push(Z);return}}}}yield*this.pop(),yield*this.step()}*blockSequence(q){let $=q.items[q.items.length-1];switch(this.type){case"newline":if($.value){let U="end"in $.value?$.value.end:void 0;if((Array.isArray(U)?U[U.length-1]:void 0)?.type==="comment")U?.push(this.sourceToken);else q.items.push({start:[this.sourceToken]})}else $.start.push(this.sourceToken);return;case"space":case"comment":if($.value)q.items.push({start:[this.sourceToken]});else{if(this.atIndentedComment($.start,q.indent)){let X=q.items[q.items.length-2]?.value?.end;if(Array.isArray(X)){Array.prototype.push.apply(X,$.start),X.push(this.sourceToken),q.items.pop();return}}$.start.push(this.sourceToken)}return;case"anchor":case"tag":if($.value||this.indent<=q.indent)break;$.start.push(this.sourceToken);return;case"seq-item-ind":if(this.indent!==q.indent)break;if($.value||o($.start,"seq-item-ind"))q.items.push({start:[this.sourceToken]});else $.start.push(this.sourceToken);return}if(this.indent>q.indent){let U=this.startBlockValue(q);if(U){this.stack.push(U);return}}yield*this.pop(),yield*this.step()}*flowCollection(q){let $=q.items[q.items.length-1];if(this.type==="flow-error-end"){let U;do yield*this.pop(),U=this.peek(1);while(U?.type==="flow-collection")}else if(q.end.length===0){switch(this.type){case"comma":case"explicit-key-ind":if(!$||$.sep)q.items.push({start:[this.sourceToken]});else $.start.push(this.sourceToken);return;case"map-value-ind":if(!$||$.value)q.items.push({start:[],key:null,sep:[this.sourceToken]});else if($.sep)$.sep.push(this.sourceToken);else Object.assign($,{key:null,sep:[this.sourceToken]});return;case"space":case"comment":case"newline":case"anchor":case"tag":if(!$||$.value)q.items.push({start:[this.sourceToken]});else if($.sep)$.sep.push(this.sourceToken);else $.start.push(this.sourceToken);return;case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":{let X=this.flowScalar(this.type);if(!$||$.value)q.items.push({start:[],key:X,sep:[]});else if($.sep)this.stack.push(X);else Object.assign($,{key:X,sep:[]});return}case"flow-map-end":case"flow-seq-end":q.end.push(this.sourceToken);return}let U=this.startBlockValue(q);if(U)this.stack.push(U);else yield*this.pop(),yield*this.step()}else{let U=this.peek(2);if(U.type==="block-map"&&(this.type==="map-value-ind"&&U.indent===q.indent||this.type==="newline"&&!U.items[U.items.length-1].sep))yield*this.pop(),yield*this.step();else if(this.type==="map-value-ind"&&U.type!=="flow-collection"){let X=xq(U),H=P0(X);JU(q);let Z=q.end.splice(1,q.end.length);Z.push(this.sourceToken);let z={type:"block-map",offset:q.offset,indent:q.indent,items:[{start:H,key:q,sep:Z}]};this.onKeyLine=!0,this.stack[this.stack.length-1]=z}else yield*this.lineEnd(q)}}flowScalar(q){if(this.onNewLine){let $=this.source.indexOf(`
|
|
139
139
|
`)+1;while($!==0)this.onNewLine(this.offset+$),$=this.source.indexOf(`
|
|
140
|
-
`,$)+1}return{type:q,offset:this.offset,indent:this.indent,source:this.source}}startBlockValue(q){switch(this.type){case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return this.flowScalar(this.type);case"block-scalar-header":return{type:"block-scalar",offset:this.offset,indent:this.indent,props:[this.sourceToken],source:""};case"flow-map-start":case"flow-seq-start":return{type:"flow-collection",offset:this.offset,indent:this.indent,start:this.sourceToken,items:[],end:[]};case"seq-item-ind":return{type:"block-seq",offset:this.offset,indent:this.indent,items:[{start:[this.sourceToken]}]};case"explicit-key-ind":{this.onKeyLine=!0;let $=
|
|
141
|
-
`)}function Q0(q){return JSON.parse(q.toString().trim())}Y0();H1();async function J6(){return new Promise((q,$)=>{let U=A2();U.listen(0,()=>{let H=U.address(),z=typeof H==="object"&&H?H.port:0;U.close(()=>q(z))}),U.on("error",$)})}class z1{session;profile;browser=null;context=null;cdpPort=0;server=null;lastUsed=new Date;constructor(q,$){this.session=q,this.profile=$}async start(){let q=this.profile.browser||"chromium",$={chromium:X6,firefox:Z6,webkit:Q6}[q];if(!$)throw Error(`Unknown browser type: ${q}`);let U=this.profile.executable||await U1(q);if(!U)throw Error(`Could not find ${q} browser. Install via: npx playwright install ${q}`);return this.cdpPort=await J6(),this.browser=await $.launch({headless:this.profile.headless??!0,executablePath:U,args:[...this.profile.args||[],`--remote-debugging-port=${this.cdpPort}`]}),this.context=await this.browser.newContext({viewport:this.profile.viewport,locale:this.profile.locale,timezoneId:this.profile.timezone,colorScheme:this.profile.colorScheme,userAgent:this.profile.userAgent,ignoreHTTPSErrors:this.profile.ignoreHTTPSErrors,offline:this.profile.offline}),await this.context.newPage(),await this.startIpcServer(),this.cdpPort}async startIpcServer(){let q=N().sessionSocket(this.session);try{P2(q)}catch{}return this.server=A2(($)=>{$.on("data",async(U)=>{try{let H=Buffer.isBuffer(U)?U:Buffer.from(U),z=Q0(H),G=await this.handleRequest(z);$.write(p(G))}catch(H){$.write(p({type:"error",message:String(H)}))}})}),new Promise(($)=>{this.server.listen(q,()=>$())})}async handleRequest(q){switch(q.type){case"ping":return this.lastUsed=new Date,{type:"pong",cdpPort:this.cdpPort,status:this.browser?.isConnected()?"healthy":"unhealthy",lastUsed:this.lastUsed.toISOString()};case"shutdown":return await this.stop(),{type:"shutdownAck"};default:throw Error("Unknown request type")}}async stop(){if(this.context)await this.context.close(),this.context=null;if(this.browser)await this.browser.close(),this.browser=null;if(this.server){this.server.close();let q=N().sessionSocket(this.session);try{P2(q)}catch{}}}isHealthy(){return this.browser?.isConnected()??!1}}var M2=["happy","calm","swift","bright","quiet","bold","keen","warm","cool","fair","kind","wise","brave","quick","sharp","clear","fresh","light","soft","pure","neat","prime","true","fine"],K2=["fox","bear","owl","wolf","deer","hawk","lynx","crow","dove","hare","seal","wren","moth","swan","toad","wasp","crab","goat","lamb","newt","puma","ram","yak","elk"];function N2(){let q=M2[Math.floor(Math.random()*M2.length)],$=K2[Math.floor(Math.random()*K2.length)];return`${q}-${$}`}class b2{server=null;wrappers=new Map;profileManager;pollInterval=null;constructor(){let q=N();this.profileManager=new y(q.profiles)}async start(){let q=N();try{vq(q.watchdogSocket)}catch{}await this.discoverExistingWrappers(),this.server=B6(($)=>{this.handleConnection($)}),await new Promise(($)=>{this.server.listen(q.watchdogSocket,()=>$())}),this.startPolling()}async discoverExistingWrappers(){let q=N();try{let $=T6(q.sockets);for(let U of $){if(U==="watchdog.sock"||!U.endsWith(".sock"))continue;let H=U.replace(".sock",""),z=q.sessionSocket(H);try{if(await this.pingWrapper(z))console.error(`Recovered session: ${H}`)}catch{try{vq(z)}catch{}}}}catch{}}async pingWrapper(q){return new Promise(($)=>{let U=Y6(q),H=setTimeout(()=>{U.destroy(),$(null)},1000);U.on("connect",()=>{U.write(p({type:"ping"}))}),U.on("data",(z)=>{clearTimeout(H),U.end();let G=Buffer.isBuffer(z)?z:Buffer.from(z);$(Q0(G))}),U.on("error",()=>{clearTimeout(H),$(null)})})}startPolling(){this.pollInterval=setInterval(()=>this.pollWrappers(),5000)}async pollWrappers(){let q=N();for(let[$,U]of this.wrappers)if(!U.isHealthy()){console.error(`Session ${$} unhealthy, removing`),this.wrappers.delete($);try{vq(q.sessionSocket($))}catch{}}if(this.wrappers.size===0)setTimeout(()=>{if(this.wrappers.size===0)this.stop(),process.exit(0)},5000)}handleConnection(q){q.on("data",async($)=>{try{let U=Buffer.isBuffer($)?$:Buffer.from($),H=Q0(U),z=await this.handleRequest(H);q.write(p(z))}catch(U){q.write(p({ok:!1,error:String(U)}))}})}async handleRequest(q){switch(q.type){case"start":return this.handleStart(q.profile,q.session);case"stop":return this.handleStop(q.session);case"stopAll":return this.handleStopAll();case"list":return this.handleList();case"cdp":return this.handleCdp(q.session);default:return{ok:!1,error:"Unknown request type"}}}async handleStart(q,$){let U=await this.profileManager.get(q);if(!U)return{ok:!1,error:`Profile '${q}' not found`};let H=$||N2();if(this.wrappers.has(H))return{ok:!1,error:`Session '${H}' already exists`};let z=new z1(H,U);try{let G=await z.start();return this.wrappers.set(H,z),{ok:!0,session:H,cdpPort:G}}catch(G){return{ok:!1,error:String(G)}}}async handleStop(q){let $=this.wrappers.get(q);if(!$)return{ok:!1,error:`Session '${q}' not found`};return await $.stop(),this.wrappers.delete(q),{ok:!0}}async handleStopAll(){for(let[q,$]of this.wrappers)await $.stop(),this.wrappers.delete(q);return{ok:!0}}async handleList(){let q=[],$=N();for(let[U]of this.wrappers){let H=$.sessionSocket(U),z=await this.pingWrapper(H);if(z&&z.type==="pong")q.push({session:U,profile:"default",cdpPort:z.cdpPort,lastUsed:z.lastUsed,lastPulse:new Date().toISOString(),status:z.status})}return{ok:!0,instances:q}}async handleCdp(q){let $=q||this.wrappers.keys().next().value;if(!$)return{ok:!1,error:"No running sessions"};let H=N().sessionSocket($),z=await this.pingWrapper(H);if(z&&z.type==="pong")return{ok:!0,cdpPort:z.cdpPort};return{ok:!1,error:`Session '${$}' not responding`}}async stop(){if(this.pollInterval)clearInterval(this.pollInterval);for(let[,q]of this.wrappers)await q.stop();if(this.server){this.server.close();let q=N();try{vq(q.watchdogSocket)}catch{}}}}async function S2(){let q=new b2;process.on("SIGINT",async()=>{await q.stop(),process.exit(0)}),process.on("SIGTERM",async()=>{await q.stop(),process.exit(0)}),await q.start()}Y0();import{createConnection as R6}from"net";import{spawn as L6}from"child_process";import{existsSync as W6}from"fs";class G1{async ensureWatchdog(){let q=N();if(W6(q.watchdogSocket))try{await this.send({type:"list"});return}catch{}L6(process.execPath,[process.argv[1],"--watchdog"],{detached:!0,stdio:"ignore"}).unref();for(let U=0;U<50;U++){await new Promise((H)=>setTimeout(H,100));try{await this.send({type:"list"});return}catch{}}throw Error("Failed to start watchdog")}send(q){return new Promise(($,U)=>{let H=N(),z=R6(H.watchdogSocket),G=setTimeout(()=>{z.destroy(),U(Error("Request timeout"))},1e4);z.on("connect",()=>{z.write(p(q))}),z.on("data",(X)=>{clearTimeout(G),z.end();let Z=Buffer.isBuffer(X)?X:Buffer.from(X);$(Q0(Z))}),z.on("error",(X)=>{clearTimeout(G),U(X)})})}async start(q,$){return await this.ensureWatchdog(),this.send({type:"start",profile:q,session:$})}async stop(q){return this.send({type:"stop",session:q})}async stopAll(){return this.send({type:"stopAll"})}async list(){try{return await this.send({type:"list"})}catch{return{ok:!0,instances:[]}}}async cdp(q){return this.send({type:"cdp",session:q})}}kq();Y0();var P0=new G1;async function j2(q){await M0();let $=q.profile||"default",U=q.session||"",H=N(),z=new y(H.profiles);if(!await z.get($))if($==="default")await z.create("default",{browser:"chromium",headless:!0}),console.log("Created default profile (chromium, headless)");else console.error(`Profile '${$}' not found. Create it with: bwsr profile create ${$}`),process.exit(1);let X=await P0.start($,U);if(!X.ok)console.error(X.error),process.exit(1);if(q.verbose&&"session"in X)console.log(`Session: ${X.session}`),console.log(`CDP: ${X.cdpPort}`),console.log(`Profile: ${$}`);else if("session"in X)console.log(X.session)}async function C2(q){let $=await P0.stop(q);if(!$.ok)console.error($.error),process.exit(1)}async function E2(){let q=await P0.stopAll();if(!q.ok)console.error(q.error),process.exit(1)}async function f2(){let q=await P0.list();if(!q.ok)console.error(q.error),process.exit(1);if("instances"in q&&q.instances.length===0)return;if("instances"in q)for(let $ of q.instances)console.log(`${$.session} ${$.profile} ${$.cdpPort} ${$.status}`)}async function g2(q){let $=await P0.cdp(q);if(!$.ok)console.error($.error),process.exit(1);if("cdpPort"in $)console.log($.cdpPort)}async function y2(q){await M0();let $=N(),U=new y($.profiles);if(await U.get(q))console.error(`Profile '${q}' already exists`),process.exit(1);await U.create(q,{browser:"chromium",headless:!0})}async function u2(q,$){let U=N(),H=new y(U.profiles);try{await H.set(q,$)}catch(z){console.error(String(z)),process.exit(1)}}async function x2(q){let $=N();await new y($.profiles).remove(q)}async function h2(){let q=N(),U=await new y(q.profiles).list();for(let H of U)console.log(H)}async function k2(q){let $=N(),H=await new y($.profiles).get(q);if(!H)console.error(`Profile '${q}' not found`),process.exit(1);let{stringify:z}=await Promise.resolve().then(() => A0($1(),1));console.log(z(H))}var O6=["1.40","1.41","1.42","1.43","1.44","1.45","1.46","1.47","1.48","1.49","1.50","1.51","1.52","1.53","1.54","1.55","1.56","1.57"];function D6(q){let $=q.match(/^(\d+)\.(\d+)/);if(!$)return{supported:!1,message:"unknown version format"};let U=`${$[1]}.${$[2]}`,H=parseInt($[1]);if(H<1)return{supported:!1,message:"version too old"};if(O6.includes(U))return{supported:!0,message:"supported"};if(H>=1&&parseInt($[2])>57)return{supported:!0,message:"newer than tested, should work"};return{supported:!1,message:"version not in supported range (1.40+)"}}async function v2(){await M0();let q=N(),$=!1,U=[];console.log(`bwsr doctor
|
|
140
|
+
`,$)+1}return{type:q,offset:this.offset,indent:this.indent,source:this.source}}startBlockValue(q){switch(this.type){case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return this.flowScalar(this.type);case"block-scalar-header":return{type:"block-scalar",offset:this.offset,indent:this.indent,props:[this.sourceToken],source:""};case"flow-map-start":case"flow-seq-start":return{type:"flow-collection",offset:this.offset,indent:this.indent,start:this.sourceToken,items:[],end:[]};case"seq-item-ind":return{type:"block-seq",offset:this.offset,indent:this.indent,items:[{start:[this.sourceToken]}]};case"explicit-key-ind":{this.onKeyLine=!0;let $=xq(q),U=P0($);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 $=xq(q),U=P0($);return{type:"block-map",offset:this.offset,indent:this.indent,items:[{start:U,key:null,sep:[this.sourceToken]}]}}}return null}atIndentedComment(q,$){if(this.type!=="comment")return!1;if(this.indent<=$)return!1;return q.every((U)=>U.type==="newline"||U.type==="space")}*documentEnd(q){if(this.type!=="doc-mode"){if(q.end)q.end.push(this.sourceToken);else q.end=[this.sourceToken];if(this.type==="newline")yield*this.pop()}}*lineEnd(q){switch(this.type){case"comma":case"doc-start":case"doc-end":case"flow-seq-end":case"flow-map-end":case"map-value-ind":yield*this.pop(),yield*this.step();break;case"newline":this.onKeyLine=!1;case"space":case"comment":default:if(q.end)q.end.push(this.sourceToken);else q.end=[this.sourceToken];if(this.type==="newline")yield*this.pop()}}}i6.Parser=YU});var _U=L((Uz)=>{var BU=p$(),r6=d0(),r0=l0(),n6=tq(),o6=K(),t6=t$(),TU=e$();function WU(q){let $=q.prettyErrors!==!1;return{lineCounter:q.lineCounter||$&&new t6.LineCounter||null,prettyErrors:$}}function e6(q,$={}){let{lineCounter:U,prettyErrors:X}=WU($),H=new TU.Parser(U?.addNewLine),Z=new BU.Composer($),z=Array.from(Z.compose(H.parse(q)));if(X&&U)for(let G of z)G.errors.forEach(r0.prettifyError(q,U)),G.warnings.forEach(r0.prettifyError(q,U));if(z.length>0)return z;return Object.assign([],{empty:!0},Z.streamInfo())}function OU(q,$={}){let{lineCounter:U,prettyErrors:X}=WU($),H=new TU.Parser(U?.addNewLine),Z=new BU.Composer($),z=null;for(let G of Z.compose(H.parse(q),!0,q.length))if(!z)z=G;else if(z.options.logLevel!=="silent"){z.errors.push(new r0.YAMLParseError(G.range.slice(0,2),"MULTIPLE_DOCS","Source contains multiple documents; please use YAML.parseAllDocuments()"));break}if(X&&U)z.errors.forEach(r0.prettifyError(q,U)),z.warnings.forEach(r0.prettifyError(q,U));return z}function qz(q,$,U){let X=void 0;if(typeof $==="function")X=$;else if(U===void 0&&$&&typeof $==="object")U=$;let H=OU(q,U);if(!H)return null;if(H.warnings.forEach((Z)=>n6.warn(H.options.logLevel,Z)),H.errors.length>0)if(H.options.logLevel!=="silent")throw H.errors[0];else H.errors=[];return H.toJS(Object.assign({reviver:X},U))}function $z(q,$,U){let X=null;if(typeof $==="function"||Array.isArray($))X=$;else if(U===void 0&&$)U=$;if(typeof U==="string")U=U.length;if(typeof U==="number"){let H=Math.round(U);U=H<1?void 0:H>8?{indent:8}:{indent:H}}if(q===void 0){let{keepUndefined:H}=U??$??{};if(!H)return}if(o6.isDocument(q)&&!X)return q.toString(U);return new r6.Document(q,X,U).toString(U)}Uz.parse=qz;Uz.parseAllDocuments=e6;Uz.parseDocument=OU;Uz.stringify=$z});var $9=L((Vz)=>{var Gz=p$(),Jz=d0(),Qz=w$(),q9=l0(),Yz=b0(),t=K(),Bz=i(),Tz=b(),Wz=r(),Oz=n(),_z=gq(),Lz=o$(),Dz=t$(),Iz=e$(),uq=_U(),LU=w0();Vz.Composer=Gz.Composer;Vz.Document=Jz.Document;Vz.Schema=Qz.Schema;Vz.YAMLError=q9.YAMLError;Vz.YAMLParseError=q9.YAMLParseError;Vz.YAMLWarning=q9.YAMLWarning;Vz.Alias=Yz.Alias;Vz.isAlias=t.isAlias;Vz.isCollection=t.isCollection;Vz.isDocument=t.isDocument;Vz.isMap=t.isMap;Vz.isNode=t.isNode;Vz.isPair=t.isPair;Vz.isScalar=t.isScalar;Vz.isSeq=t.isSeq;Vz.Pair=Bz.Pair;Vz.Scalar=Tz.Scalar;Vz.YAMLMap=Wz.YAMLMap;Vz.YAMLSeq=Oz.YAMLSeq;Vz.CST=_z;Vz.Lexer=Lz.Lexer;Vz.LineCounter=Dz.LineCounter;Vz.Parser=Iz.Parser;Vz.parse=uq.parse;Vz.parseAllDocuments=uq.parseAllDocuments;Vz.parseDocument=uq.parseDocument;Vz.stringify=uq.stringify;Vz.visit=LU.visit;Vz.visitAsync=LU.visitAsync});var IU={};pq(IU,{ProfileManager:()=>y});import{join as rz}from"path";import{readFile as nz,writeFile as hq,unlink as oz,readdir as tz,access as ez}from"fs/promises";async function DU(q){try{return await ez(q),!0}catch{return!1}}class y{profilesDir;constructor(q){this.profilesDir=q}async create(q,$){let U=this.path(q);await hq(U,J0.stringify($),"utf-8")}async get(q){let $=this.path(q);if(!await DU($))return null;let U=await nz($,"utf-8");return J0.parse(U)}async set(q,$){let U=await this.get(q);if(!U)throw Error(`Profile '${q}' not found`);let X={...U,...$};await hq(this.path(q),J0.stringify(X),"utf-8")}async append(q,$,U){let X=await this.get(q);if(!X)throw Error(`Profile '${q}' not found`);let H=X[$]||[];X[$]=[...H,...U],await hq(this.path(q),J0.stringify(X),"utf-8")}async unset(q,$){let U=await this.get(q);if(!U)throw Error(`Profile '${q}' not found`);for(let X of $)delete U[X];await hq(this.path(q),J0.stringify(U),"utf-8")}async remove(q){let $=this.path(q);if(await DU($))await oz($)}async list(){try{return(await tz(this.profilesDir)).filter(($)=>$.endsWith(".yaml")).map(($)=>$.replace(".yaml",""))}catch{return[]}}path(q){return rz(this.profilesDir,`${q}.yaml`)}}var J0;var kq=dq(()=>{J0=M0($9(),1)});var AU={};pq(AU,{discoverBrowser:()=>U9});import{homedir as qG}from"os";import{join as RU}from"path";import{readdir as $G,stat as UG}from"fs/promises";async function FU(q){try{return await UG(q),!0}catch{return!1}}async function ZG(q){try{let U=(await $G(VU)).filter((X)=>X.startsWith(q+"-")).sort().reverse();for(let X of U){let H=RU(VU,X,HG[q]);if(await FU(H))return H}}catch{}return null}async function zG(q){for(let $ of XG[q])if(await FU($))return $;return null}async function U9(q){if(!["chromium","firefox","webkit"].includes(q))return null;let $=await ZG(q);if($)return $;let U=await zG(q);if(U)return U;return null}var VU,XG,HG;var X9=dq(()=>{VU=RU(qG(),".cache","ms-playwright"),XG={chromium:["/usr/bin/chromium","/usr/bin/chromium-browser","/usr/bin/google-chrome","/usr/bin/google-chrome-stable","/Applications/Google Chrome.app/Contents/MacOS/Google Chrome","/Applications/Chromium.app/Contents/MacOS/Chromium"],firefox:["/usr/bin/firefox","/Applications/Firefox.app/Contents/MacOS/firefox"],webkit:[]},HG={chromium:process.platform==="darwin"?"chrome-mac/Chromium.app/Contents/MacOS/Chromium":"chrome-linux/chrome",firefox:process.platform==="darwin"?"firefox/Nightly.app/Contents/MacOS/firefox":"firefox/firefox",webkit:process.platform==="darwin"?"pw_run.app/Contents/MacOS/pw_run":"playwright-webkit/pw_run.sh"}});T0();kq();import{createServer as BG,createConnection as TG}from"net";import{unlinkSync as vq,readdirSync as WG}from"fs";import{chromium as GG,firefox as JG,webkit as QG}from"playwright-core";import{createServer as MU}from"net";import{unlinkSync as PU}from"fs";function p(q){return Buffer.from(JSON.stringify(q)+`
|
|
141
|
+
`)}function Q0(q){return JSON.parse(q.toString().trim())}T0();X9();async function YG(){return new Promise((q,$)=>{let U=MU();U.listen(0,()=>{let X=U.address(),H=typeof X==="object"&&X?X.port:0;U.close(()=>q(H))}),U.on("error",$)})}class H9{session;profile;browser=null;context=null;cdpPort=0;server=null;lastUsed=new Date;constructor(q,$){this.session=q,this.profile=$}async start(){let q=this.profile.browser||"chromium",$={chromium:GG,firefox:JG,webkit:QG}[q];if(!$)throw Error(`Unknown browser type: ${q}`);let U=this.profile.executable||await U9(q);if(!U)throw Error(`Could not find ${q} browser. Install via: npx playwright install ${q}`);return this.cdpPort=await YG(),this.browser=await $.launch({headless:this.profile.headless??!0,executablePath:U,args:[...this.profile.args||[],`--remote-debugging-port=${this.cdpPort}`]}),this.context=await this.browser.newContext({viewport:this.profile.viewport,locale:this.profile.locale,timezoneId:this.profile.timezone,colorScheme:this.profile.colorScheme,userAgent:this.profile.userAgent,ignoreHTTPSErrors:this.profile.ignoreHTTPSErrors,offline:this.profile.offline}),await this.context.newPage(),await this.startIpcServer(),this.cdpPort}async startIpcServer(){let q=N().sessionSocket(this.session);try{PU(q)}catch{}return this.server=MU(($)=>{$.on("data",async(U)=>{try{let X=Buffer.isBuffer(U)?U:Buffer.from(U),H=Q0(X),Z=await this.handleRequest(H);$.write(p(Z))}catch(X){$.write(p({type:"error",message:String(X)}))}})}),new Promise(($)=>{this.server.listen(q,()=>$())})}async handleRequest(q){switch(q.type){case"ping":return this.lastUsed=new Date,{type:"pong",cdpPort:this.cdpPort,status:this.browser?.isConnected()?"healthy":"unhealthy",lastUsed:this.lastUsed.toISOString()};case"shutdown":return await this.stop(),{type:"shutdownAck"};default:throw Error("Unknown request type")}}async stop(){if(this.context)await this.context.close(),this.context=null;if(this.browser)await this.browser.close(),this.browser=null;if(this.server){this.server.close();let q=N().sessionSocket(this.session);try{PU(q)}catch{}}}isHealthy(){return this.browser?.isConnected()??!1}}var KU=["happy","calm","swift","bright","quiet","bold","keen","warm","cool","fair","kind","wise","brave","quick","sharp","clear","fresh","light","soft","pure","neat","prime","true","fine"],wU=["fox","bear","owl","wolf","deer","hawk","lynx","crow","dove","hare","seal","wren","moth","swan","toad","wasp","crab","goat","lamb","newt","puma","ram","yak","elk"];function NU(){let q=KU[Math.floor(Math.random()*KU.length)],$=wU[Math.floor(Math.random()*wU.length)];return`${q}-${$}`}class bU{server=null;wrappers=new Map;profileManager;pollInterval=null;constructor(){let q=N();this.profileManager=new y(q.profiles)}async start(){let q=N();try{vq(q.watchdogSocket)}catch{}await this.discoverExistingWrappers(),this.server=BG(($)=>{this.handleConnection($)}),await new Promise(($)=>{this.server.listen(q.watchdogSocket,()=>$())}),this.startPolling()}async discoverExistingWrappers(){let q=N();try{let $=WG(q.sockets);for(let U of $){if(U==="watchdog.sock"||!U.endsWith(".sock"))continue;let X=U.replace(".sock",""),H=q.sessionSocket(X);try{if(await this.pingWrapper(H))console.error(`Recovered session: ${X}`)}catch{try{vq(H)}catch{}}}}catch{}}async pingWrapper(q){return new Promise(($)=>{let U=TG(q),X=setTimeout(()=>{U.destroy(),$(null)},1000);U.on("connect",()=>{U.write(p({type:"ping"}))}),U.on("data",(H)=>{clearTimeout(X),U.end();let Z=Buffer.isBuffer(H)?H:Buffer.from(H);$(Q0(Z))}),U.on("error",()=>{clearTimeout(X),$(null)})})}startPolling(){this.pollInterval=setInterval(()=>this.pollWrappers(),5000)}async pollWrappers(){let q=N();for(let[$,U]of this.wrappers)if(!U.isHealthy()){console.error(`Session ${$} unhealthy, removing`),this.wrappers.delete($);try{vq(q.sessionSocket($))}catch{}}if(this.wrappers.size===0)setTimeout(()=>{if(this.wrappers.size===0)this.stop(),process.exit(0)},5000)}handleConnection(q){q.on("data",async($)=>{try{let U=Buffer.isBuffer($)?$:Buffer.from($),X=Q0(U),H=await this.handleRequest(X);q.write(p(H))}catch(U){q.write(p({ok:!1,error:String(U)}))}})}async handleRequest(q){switch(q.type){case"start":return this.handleStart(q.profile,q.session);case"stop":return this.handleStop(q.session);case"stopAll":return this.handleStopAll();case"list":return this.handleList();case"cdp":return this.handleCdp(q.session);default:return{ok:!1,error:"Unknown request type"}}}async handleStart(q,$){let U=await this.profileManager.get(q);if(!U)return{ok:!1,error:`Profile '${q}' not found`};let X=$||NU();if(this.wrappers.has(X))return{ok:!1,error:`Session '${X}' already exists`};let H=new H9(X,U);try{let Z=await H.start();return this.wrappers.set(X,H),{ok:!0,session:X,cdpPort:Z}}catch(Z){return{ok:!1,error:String(Z)}}}async handleStop(q){let $=this.wrappers.get(q);if(!$)return{ok:!1,error:`Session '${q}' not found`};return await $.stop(),this.wrappers.delete(q),{ok:!0}}async handleStopAll(){for(let[q,$]of this.wrappers)await $.stop(),this.wrappers.delete(q);return{ok:!0}}async handleList(){let q=[],$=N();for(let[U]of this.wrappers){let X=$.sessionSocket(U),H=await this.pingWrapper(X);if(H&&H.type==="pong")q.push({session:U,profile:"default",cdpPort:H.cdpPort,lastUsed:H.lastUsed,lastPulse:new Date().toISOString(),status:H.status})}return{ok:!0,instances:q}}async handleCdp(q){let $=q||this.wrappers.keys().next().value;if(!$)return{ok:!1,error:"No running sessions"};let X=N().sessionSocket($),H=await this.pingWrapper(X);if(H&&H.type==="pong")return{ok:!0,cdpPort:H.cdpPort};return{ok:!1,error:`Session '${$}' not responding`}}async stop(){if(this.pollInterval)clearInterval(this.pollInterval);for(let[,q]of this.wrappers)await q.stop();if(this.server){this.server.close();let q=N();try{vq(q.watchdogSocket)}catch{}}}}async function SU(){let q=new bU;process.on("SIGINT",async()=>{await q.stop(),process.exit(0)}),process.on("SIGTERM",async()=>{await q.stop(),process.exit(0)}),await q.start()}T0();import{createConnection as OG}from"net";import{spawn as _G}from"child_process";import{existsSync as LG}from"fs";class Z9{async ensureWatchdog(){let q=N();if(LG(q.watchdogSocket))try{await this.send({type:"list"});return}catch{}_G(process.execPath,[process.argv[1],"--watchdog"],{detached:!0,stdio:"ignore"}).unref();for(let U=0;U<50;U++){await new Promise((X)=>setTimeout(X,100));try{await this.send({type:"list"});return}catch{}}throw Error("Failed to start watchdog")}send(q){return new Promise(($,U)=>{let X=N(),H=OG(X.watchdogSocket),Z=setTimeout(()=>{H.destroy(),U(Error("Request timeout"))},1e4);H.on("connect",()=>{H.write(p(q))}),H.on("data",(z)=>{clearTimeout(Z),H.end();let G=Buffer.isBuffer(z)?z:Buffer.from(z);$(Q0(G))}),H.on("error",(z)=>{clearTimeout(Z),U(z)})})}async start(q,$){return await this.ensureWatchdog(),this.send({type:"start",profile:q,session:$})}async stop(q){return this.send({type:"stop",session:q})}async stopAll(){return this.send({type:"stopAll"})}async list(){try{return await this.send({type:"list"})}catch{return{ok:!0,instances:[]}}}async cdp(q){return this.send({type:"cdp",session:q})}}kq();T0();var e=new Z9;async function jU(q){await K0();let $=q.profile||"default",U=q.session||"";if(!U&&!q.force){let G=await e.list();if(G.ok&&"instances"in G&&G.instances.length>0){let J=G.instances[0];if(q.verbose)console.log(`Session: ${J.session}`),console.log(`CDP: ${J.cdpPort}`),console.log(`Profile: ${J.profile}`),console.log("(already running, use --force to start another)");else console.log(J.session);return}}let X=N(),H=new y(X.profiles);if(!await H.get($))if($==="default")await H.create("default",{browser:"chromium",headless:!0}),console.log("Created default profile (chromium, headless)");else console.error(`Profile '${$}' not found. Create it with: bwsr profile create ${$}`),process.exit(1);let z=await e.start($,U);if(!z.ok)console.error(z.error),process.exit(1);if(q.verbose&&"session"in z)console.log(`Session: ${z.session}`),console.log(`CDP: ${z.cdpPort}`),console.log(`Profile: ${$}`);else if("session"in z)console.log(z.session)}async function CU(q){if(!q){let U=await e.list();if(!U.ok||!("instances"in U))console.error("No sessions running"),process.exit(1);let X=U.instances;if(X.length===0)console.error("No sessions running"),process.exit(1);if(X.length===1)q=X[0].session;else{console.error("Multiple sessions running. Specify which to stop:");for(let H of X)console.error(` bwsr stop ${H.session}`);console.error(" bwsr stop --all"),process.exit(1)}}let $=await e.stop(q);if(!$.ok)console.error($.error),process.exit(1)}async function EU(){let q=await e.stopAll();if(!q.ok)console.error(q.error),process.exit(1)}async function fU(){let q=await e.list();if(!q.ok)console.error(q.error),process.exit(1);if("instances"in q&&q.instances.length===0)return;if("instances"in q)for(let $ of q.instances)console.log(`${$.session} ${$.profile} ${$.cdpPort} ${$.status}`)}async function gU(q){let $=await e.cdp(q);if(!$.ok)console.error($.error),process.exit(1);if("cdpPort"in $)console.log($.cdpPort)}async function yU(q){await K0();let $=N(),U=new y($.profiles);if(await U.get(q))console.error(`Profile '${q}' already exists`),process.exit(1);await U.create(q,{browser:"chromium",headless:!0})}async function xU(q,$){let U=N(),X=new y(U.profiles);try{await X.set(q,$)}catch(H){console.error(String(H)),process.exit(1)}}async function uU(q){let $=N();await new y($.profiles).remove(q)}async function hU(){let q=N(),U=await new y(q.profiles).list();for(let X of U)console.log(X)}async function kU(q){let $=N(),X=await new y($.profiles).get(q);if(!X)console.error(`Profile '${q}' not found`),process.exit(1);let{stringify:H}=await Promise.resolve().then(() => M0($9(),1));console.log(H(X))}var DG=["1.40","1.41","1.42","1.43","1.44","1.45","1.46","1.47","1.48","1.49","1.50","1.51","1.52","1.53","1.54","1.55","1.56","1.57"];function IG(q){let $=q.match(/^(\d+)\.(\d+)/);if(!$)return{supported:!1,message:"unknown version format"};let U=`${$[1]}.${$[2]}`,X=parseInt($[1]);if(X<1)return{supported:!1,message:"version too old"};if(DG.includes(U))return{supported:!0,message:"supported"};if(X>=1&&parseInt($[2])>57)return{supported:!0,message:"newer than tested, should work"};return{supported:!1,message:"version not in supported range (1.40+)"}}async function vU(){await K0();let q=N(),$=!1,U=[];console.log(`bwsr doctor
|
|
142
142
|
`),console.log("=".repeat(50)),console.log(`
|
|
143
|
-
[Runtime]`);let
|
|
143
|
+
[Runtime]`);let X=process.version;if(parseInt(X.slice(1).split(".")[0])>=18)console.log(` ✓ Node.js: ${X}`);else console.log(` ✗ Node.js: ${X} (requires >=18.0.0)`),$=!0,U.push("Upgrade Node.js to version 18 or later");let Z=null;try{await import("playwright-core");try{let{createRequire:W}=await import("module"),B=W(import.meta.url).resolve("playwright-core/package.json"),{readFile:_}=await import("fs/promises");Z=JSON.parse(await _(B,"utf-8")).version}catch{Z="installed (version unknown)"}}catch{Z=null}if(Z){let W=typeof Z==="string"&&Z.match(/^\d/)?IG(Z):{supported:!0,message:""},Y=W.supported?"✓":"✗",B=W.message&&W.message!=="supported"?` (${W.message})`:"";if(console.log(` ${Y} playwright-core: ${Z}${B}`),!W.supported)$=!0}else console.log(" ✗ playwright-core: not found"),$=!0,U.push(`Install playwright-core:
|
|
144
144
|
npm install -g playwright-core
|
|
145
145
|
# or add to your project:
|
|
146
146
|
npm install playwright-core`);console.log(`
|
|
147
|
-
[Configuration]`),console.log(` Config dir: ${q.root}`);let
|
|
148
|
-
[Browsers]`);let{discoverBrowser:
|
|
147
|
+
[Configuration]`),console.log(` Config dir: ${q.root}`);let z=new y(q.profiles),G=await z.list();if(G.length===0)await z.create("default",{browser:"chromium",headless:!0}),G=["default"],console.log(" ✓ Profiles: default (created)");else console.log(` ✓ Profiles: ${G.join(", ")}`);console.log(`
|
|
148
|
+
[Browsers]`);let{discoverBrowser:J}=await Promise.resolve().then(() => (X9(),AU)),Q=0;for(let W of["chromium","firefox","webkit"]){let Y=await J(W);if(Y)console.log(` ✓ ${W}: ${Y}`),Q++;else console.log(` - ${W}: not found`)}if(Q===0)$=!0,U.push(`Install browsers:
|
|
149
149
|
npx playwright install chromium
|
|
150
150
|
# or for all browsers:
|
|
151
151
|
npx playwright install`);console.log(`
|
|
152
|
-
[Status]`);try{let
|
|
152
|
+
[Status]`);try{let W=await e.list();if("instances"in W)console.log(` Running instances: ${W.instances.length}`)}catch{console.log(" Watchdog: not running (starts automatically on 'bwsr start')")}if(console.log(`
|
|
153
153
|
`+"=".repeat(50)),$&&U.length>0){console.log(`
|
|
154
154
|
[Setup Required]
|
|
155
|
-
`);for(let
|
|
155
|
+
`);for(let W of U)console.log(` ${W}
|
|
156
156
|
`)}else if($)console.log(`
|
|
157
157
|
Some checks failed. Review the output above.
|
|
158
158
|
`);else console.log(`
|
|
159
159
|
✓ All checks passed. Ready to use bwsr.
|
|
160
160
|
`),console.log("Quick start:"),console.log(" bwsr start # Start browser daemon"),console.log(" bwsr cdp # Get CDP endpoint"),console.log(` bwsr stop --all # Stop all sessions
|
|
161
|
-
`)}var
|
|
161
|
+
`)}var dU="0.3.0",n0=process.argv.slice(2);function VG(q){let $={};for(let U=0;U<q.length;U++){let X=q[U];if(X.startsWith("--")){let H=X.slice(2),Z=q[U+1];if(Z&&!Z.startsWith("--"))$[H]=Z,U++;else $[H]=!0}}return $}async function RG(){let q=n0[0],$=VG(n0);if($.watchdog){await SU();return}switch(q){case"start":await jU({profile:$.profile,session:$.session,verbose:Boolean($.verbose),force:Boolean($.force)});break;case"stop":if($.all)await EU();else await CU(n0[1]);break;case"list":await fU();break;case"cdp":await gU(n0[1]);break;case"profile":await FG(n0.slice(1),$);break;case"doctor":await vU();break;case"--version":case"-v":case"version":console.log(`bwsr v${dU}`);break;case"--help":case"-h":case"help":await pU();break;default:await pU();break}}async function FG(q,$){let U=q[0];switch(U){case"create":await yU(q[1]);break;case"set":{let X={};if($.browser)X.browser=$.browser;if($.executable)X.executable=$.executable;if($.headless!==void 0)X.headless=$.headless===!0||$.headless==="true";if($.headed!==void 0)X.headless=!1;if($.locale)X.locale=$.locale;if($.timezone)X.timezone=$.timezone;if($.viewport){let[H,Z]=$.viewport.split("x").map(Number);X.viewport={width:H,height:Z}}if($.colorScheme)X.colorScheme=$.colorScheme;if($.userAgent)X.userAgent=$.userAgent;if($.proxy)X.proxy=$.proxy;if($.ignoreHTTPSErrors!==void 0)X.ignoreHTTPSErrors=$.ignoreHTTPSErrors===!0||$.ignoreHTTPSErrors==="true";if($.offline!==void 0)X.offline=$.offline===!0||$.offline==="true";if($.args)X.args=$.args.split(",");await xU(q[1],X);break}case"remove":await uU(q[1]);break;case"list":await hU();break;case"show":await kU(q[1]);break;case"help":case void 0:mU();break;default:console.error(`Unknown subcommand: ${U}`),mU(),process.exit(1)}}function mU(){console.log(`bwsr profile - Manage browser profiles
|
|
162
|
+
|
|
163
|
+
Usage: bwsr profile <command> [name] [options]
|
|
164
|
+
|
|
165
|
+
Commands:
|
|
166
|
+
create <name> Create a new profile
|
|
167
|
+
set <name> Update profile settings
|
|
168
|
+
remove <name> Delete a profile
|
|
169
|
+
list List all profiles
|
|
170
|
+
show <name> Show profile details
|
|
171
|
+
help Show this help
|
|
172
|
+
|
|
173
|
+
Profile Settings (use with 'set'):
|
|
174
|
+
--browser <type> Browser engine: chromium, firefox, webkit
|
|
175
|
+
Default: chromium
|
|
176
|
+
--headless Run in headless mode (no visible window)
|
|
177
|
+
Default: true
|
|
178
|
+
--headed Run in headed mode (visible window)
|
|
179
|
+
--executable <path> Custom browser executable path
|
|
180
|
+
--viewport <WxH> Viewport size, e.g., 1920x1080
|
|
181
|
+
--locale <code> Browser locale, e.g., en-US, ja-JP
|
|
182
|
+
--timezone <tz> Timezone, e.g., America/New_York
|
|
183
|
+
--colorScheme <mode> Color scheme: light, dark, no-preference
|
|
184
|
+
--userAgent <string> Custom user agent string
|
|
185
|
+
--proxy <url> Proxy server URL
|
|
186
|
+
--ignoreHTTPSErrors Ignore HTTPS certificate errors
|
|
187
|
+
--offline Simulate offline mode
|
|
188
|
+
--args <arg1,arg2,...> Additional browser args (comma-separated)
|
|
189
|
+
|
|
190
|
+
Examples:
|
|
191
|
+
bwsr profile create mobile
|
|
192
|
+
bwsr profile set mobile --viewport 375x812 --userAgent "Mobile Safari"
|
|
193
|
+
bwsr profile set default --headed --colorScheme dark
|
|
194
|
+
bwsr profile set default --proxy http://localhost:8080
|
|
195
|
+
bwsr profile show default`)}async function pU(){let{getPaths:q}=await Promise.resolve().then(() => (T0(),J9)),{ProfileManager:$}=await Promise.resolve().then(() => (kq(),IU)),U=q(),Z=(await new $(U.profiles).list()).length===0;if(console.log(`bwsr v${dU} - Browser daemon manager
|
|
162
196
|
|
|
163
197
|
Usage: bwsr <command> [options]
|
|
164
198
|
|
|
165
199
|
Commands:
|
|
166
|
-
start Start
|
|
200
|
+
start Start or reuse existing session
|
|
167
201
|
--profile <name> Use specific profile (default: "default")
|
|
168
|
-
--session <name>
|
|
202
|
+
--session <name> Named session (starts new)
|
|
203
|
+
--force Start new session even if one exists
|
|
169
204
|
--verbose Show connection details
|
|
170
|
-
stop
|
|
205
|
+
stop [session] Stop session (auto-selects if only one)
|
|
171
206
|
stop --all Stop all sessions
|
|
172
207
|
list List running sessions
|
|
173
208
|
cdp [session] Get CDP endpoint URL
|
|
@@ -178,7 +213,7 @@ Commands:
|
|
|
178
213
|
list List all profiles
|
|
179
214
|
show <name> Show profile details
|
|
180
215
|
doctor Check system health and dependencies
|
|
181
|
-
version Show version`),
|
|
216
|
+
version Show version`),Z)console.log(`
|
|
182
217
|
${"=".repeat(50)}
|
|
183
218
|
Quick Start:
|
|
184
219
|
|
|
@@ -189,12 +224,12 @@ Quick Start:
|
|
|
189
224
|
$ bwsr cdp
|
|
190
225
|
|
|
191
226
|
3. Stop when done:
|
|
192
|
-
$ bwsr stop
|
|
227
|
+
$ bwsr stop
|
|
193
228
|
|
|
194
229
|
Run 'bwsr doctor' to verify dependencies are installed.
|
|
195
230
|
${"=".repeat(50)}`);else console.log(`
|
|
196
231
|
Examples:
|
|
197
|
-
bwsr start
|
|
198
|
-
bwsr cdp # Get CDP URL
|
|
199
|
-
bwsr
|
|
200
|
-
bwsr
|
|
232
|
+
bwsr start # Start or reuse existing session
|
|
233
|
+
bwsr cdp # Get CDP URL
|
|
234
|
+
bwsr stop # Stop the session
|
|
235
|
+
bwsr profile set default --headed # Switch to headed mode`)}RG().catch((q)=>{console.error(q.message),process.exit(1)});
|