@codehourra/llm-iwiki 0.3.0 → 0.3.1

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.
Files changed (2) hide show
  1. package/dist/index.js +52 -52
  2. package/package.json +2 -1
package/dist/index.js CHANGED
@@ -1,75 +1,75 @@
1
1
  #!/usr/bin/env node
2
- import{createRequire as EH}from"node:module";var V=(_,$)=>()=>($||_(($={exports:{}}).exports,$),$.exports);var Q$=EH(import.meta.url);var S=V((hH)=>{var W0=Symbol.for("yaml.alias"),oq=Symbol.for("yaml.document"),W$=Symbol.for("yaml.map"),tq=Symbol.for("yaml.pair"),R0=Symbol.for("yaml.scalar"),R$=Symbol.for("yaml.seq"),n=Symbol.for("yaml.node.type"),jH=(_)=>!!_&&typeof _==="object"&&_[n]===W0,bH=(_)=>!!_&&typeof _==="object"&&_[n]===oq,gH=(_)=>!!_&&typeof _==="object"&&_[n]===W$,yH=(_)=>!!_&&typeof _==="object"&&_[n]===tq,eq=(_)=>!!_&&typeof _==="object"&&_[n]===R0,xH=(_)=>!!_&&typeof _==="object"&&_[n]===R$;function _T(_){if(_&&typeof _==="object")switch(_[n]){case W$:case R$:return!0}return!1}function kH(_){if(_&&typeof _==="object")switch(_[n]){case W0:case W$:case R0:case R$:return!0}return!1}var uH=(_)=>(eq(_)||_T(_))&&!!_.anchor;hH.ALIAS=W0;hH.DOC=oq;hH.MAP=W$;hH.NODE_TYPE=n;hH.PAIR=tq;hH.SCALAR=R0;hH.SEQ=R$;hH.hasAnchor=uH;hH.isAlias=jH;hH.isCollection=_T;hH.isDocument=bH;hH.isMap=gH;hH.isNode=kH;hH.isPair=yH;hH.isScalar=eq;hH.isSeq=xH});var g_=V((q2)=>{var b=S(),y=Symbol("break visit"),$T=Symbol("skip children"),p=Symbol("remove node");function Y$(_,$){let q=qT($);if(b.isDocument(_)){if(D_(null,_.contents,q,Object.freeze([_]))===p)_.contents=null}else D_(null,_,q,Object.freeze([]))}Y$.BREAK=y;Y$.SKIP=$T;Y$.REMOVE=p;function D_(_,$,q,T){let O=TT(_,$,q,T);if(b.isNode(O)||b.isPair(O))return OT(_,T,O),D_(_,O,q,T);if(typeof O!=="symbol"){if(b.isCollection($)){T=Object.freeze(T.concat($));for(let H=0;H<$.items.length;++H){let X=D_(H,$.items[H],q,T);if(typeof X==="number")H=X-1;else if(X===y)return y;else if(X===p)$.items.splice(H,1),H-=1}}else if(b.isPair($)){T=Object.freeze(T.concat($));let H=D_("key",$.key,q,T);if(H===y)return y;else if(H===p)$.key=null;let X=D_("value",$.value,q,T);if(X===y)return y;else if(X===p)$.value=null}}return O}async function L$(_,$){let q=qT($);if(b.isDocument(_)){if(await M_(null,_.contents,q,Object.freeze([_]))===p)_.contents=null}else await M_(null,_,q,Object.freeze([]))}L$.BREAK=y;L$.SKIP=$T;L$.REMOVE=p;async function M_(_,$,q,T){let O=await TT(_,$,q,T);if(b.isNode(O)||b.isPair(O))return OT(_,T,O),M_(_,O,q,T);if(typeof O!=="symbol"){if(b.isCollection($)){T=Object.freeze(T.concat($));for(let H=0;H<$.items.length;++H){let X=await M_(H,$.items[H],q,T);if(typeof X==="number")H=X-1;else if(X===y)return y;else if(X===p)$.items.splice(H,1),H-=1}}else if(b.isPair($)){T=Object.freeze(T.concat($));let H=await M_("key",$.key,q,T);if(H===y)return y;else if(H===p)$.key=null;let X=await M_("value",$.value,q,T);if(X===y)return y;else if(X===p)$.value=null}}return O}function qT(_){if(typeof _==="object"&&(_.Collection||_.Node||_.Value))return Object.assign({Alias:_.Node,Map:_.Node,Scalar:_.Node,Seq:_.Node},_.Value&&{Map:_.Value,Scalar:_.Value,Seq:_.Value},_.Collection&&{Map:_.Collection,Seq:_.Collection},_);return _}function TT(_,$,q,T){if(typeof q==="function")return q(_,$,T);if(b.isMap($))return q.Map?.(_,$,T);if(b.isSeq($))return q.Seq?.(_,$,T);if(b.isPair($))return q.Pair?.(_,$,T);if(b.isScalar($))return q.Scalar?.(_,$,T);if(b.isAlias($))return q.Alias?.(_,$,T);return}function OT(_,$,q){let T=$[$.length-1];if(b.isCollection(T))T.items[_]=q;else if(b.isPair(T))if(_==="key")T.key=q;else T.value=q;else if(b.isDocument(T))T.contents=q;else{let O=b.isAlias(T)?"alias":"scalar";throw Error(`Cannot replace node with ${O} parent`)}}q2.visit=Y$;q2.visitAsync=L$});var Y0=V((J2)=>{var HT=S(),H2=g_(),X2={"!":"%21",",":"%2C","[":"%5B","]":"%5D","{":"%7B","}":"%7D"},U2=(_)=>_.replace(/[!,[\]{}]/g,($)=>X2[$]);class k{constructor(_,$){this.docStart=null,this.docEnd=!1,this.yaml=Object.assign({},k.defaultYaml,_),this.tags=Object.assign({},k.defaultTags,$)}clone(){let _=new k(this.yaml,this.tags);return _.docStart=this.docStart,_}atDocument(){let _=new k(this.yaml,this.tags);switch(this.yaml.version){case"1.1":this.atNextDocument=!0;break;case"1.2":this.atNextDocument=!1,this.yaml={explicit:k.defaultYaml.explicit,version:"1.2"},this.tags=Object.assign({},k.defaultTags);break}return _}add(_,$){if(this.atNextDocument)this.yaml={explicit:k.defaultYaml.explicit,version:"1.1"},this.tags=Object.assign({},k.defaultTags),this.atNextDocument=!1;let q=_.trim().split(/[ \t]+/),T=q.shift();switch(T){case"%TAG":{if(q.length!==2){if($(0,"%TAG directive should contain exactly two parts"),q.length<2)return!1}let[O,H]=q;return this.tags[O]=H,!0}case"%YAML":{if(this.yaml.explicit=!0,q.length!==1)return $(0,"%YAML directive should contain exactly one part"),!1;let[O]=q;if(O==="1.1"||O==="1.2")return this.yaml.version=O,!0;else{let H=/^\d+\.\d+$/.test(O);return $(6,`Unsupported YAML version ${O}`,H),!1}}default:return $(0,`Unknown directive ${T}`,!0),!1}}tagName(_,$){if(_==="!")return"!";if(_[0]!=="!")return $(`Not a valid tag: ${_}`),null;if(_[1]==="<"){let H=_.slice(2,-1);if(H==="!"||H==="!!")return $(`Verbatim tags aren't resolved, so ${_} is invalid.`),null;if(_[_.length-1]!==">")$("Verbatim tags must end with a >");return H}let[,q,T]=_.match(/^(.*!)([^!]*)$/s);if(!T)$(`The ${_} tag has no suffix`);let O=this.tags[q];if(O)try{return O+decodeURIComponent(T)}catch(H){return $(String(H)),null}if(q==="!")return _;return $(`Could not resolve tag: ${_}`),null}tagString(_){for(let[$,q]of Object.entries(this.tags))if(_.startsWith(q))return $+U2(_.substring(q.length));return _[0]==="!"?_:`!<${_}>`}toString(_){let $=this.yaml.explicit?[`%YAML ${this.yaml.version||"1.2"}`]:[],q=Object.entries(this.tags),T;if(_&&q.length>0&&HT.isNode(_.contents)){let O={};H2.visit(_.contents,(H,X)=>{if(HT.isNode(X)&&X.tag)O[X.tag]=!0}),T=Object.keys(O)}else T=[];for(let[O,H]of q){if(O==="!!"&&H==="tag:yaml.org,2002:")continue;if(!_||T.some((X)=>X.startsWith(H)))$.push(`%TAG ${O} ${H}`)}return $.join(`
3
- `)}}k.defaultYaml={explicit:!1,version:"1.2"};k.defaultTags={"!!":"tag:yaml.org,2002:"};J2.Directives=k});var V$=V((W2)=>{var XT=S(),z2=g_();function G2(_){if(/[\x00-\x19\s,[\]{}]/.test(_)){let q=`Anchor must not contain whitespace or control characters: ${JSON.stringify(_)}`;throw Error(q)}return!0}function UT(_){let $=new Set;return z2.visit(_,{Value(q,T){if(T.anchor)$.add(T.anchor)}}),$}function JT(_,$){for(let q=1;;++q){let T=`${_}${q}`;if(!$.has(T))return T}}function Q2(_,$){let q=[],T=new Map,O=null;return{onAnchor:(H)=>{q.push(H),O??(O=UT(_));let X=JT($,O);return O.add(X),X},setAnchors:()=>{for(let H of q){let X=T.get(H);if(typeof X==="object"&&X.anchor&&(XT.isScalar(X.node)||XT.isCollection(X.node)))X.node.anchor=X.anchor;else{let U=Error("Failed to resolve repeated object (this should not happen)");throw U.source=H,U}}},sourceObjects:T}}W2.anchorIsValid=G2;W2.anchorNames=UT;W2.createNodeAnchors=Q2;W2.findNewAnchor=JT});var L0=V((B2)=>{function y_(_,$,q,T){if(T&&typeof T==="object")if(Array.isArray(T))for(let O=0,H=T.length;O<H;++O){let X=T[O],U=y_(_,T,String(O),X);if(U===void 0)delete T[O];else if(U!==X)T[O]=U}else if(T instanceof Map)for(let O of Array.from(T.keys())){let H=T.get(O),X=y_(_,T,O,H);if(X===void 0)T.delete(O);else if(X!==H)T.set(O,X)}else if(T instanceof Set)for(let O of Array.from(T)){let H=y_(_,T,O,O);if(H===void 0)T.delete(O);else if(H!==O)T.delete(O),T.add(H)}else for(let[O,H]of Object.entries(T)){let X=y_(_,T,O,H);if(X===void 0)delete T[O];else if(X!==H)T[O]=X}return _.call($,q,T)}B2.applyReviver=y_});var e=V((D2)=>{var A2=S();function ZT(_,$,q){if(Array.isArray(_))return _.map((T,O)=>ZT(T,String(O),q));if(_&&typeof _.toJSON==="function"){if(!q||!A2.hasAnchor(_))return _.toJSON($,q);let T={aliasCount:0,count:1,res:void 0};q.anchors.set(_,T),q.onCreate=(H)=>{T.res=H,delete q.onCreate};let O=_.toJSON($,q);if(q.onCreate)q.onCreate(O);return O}if(typeof _==="bigint"&&!q?.keep)return Number(_);return _}D2.toJS=ZT});var B$=V((S2)=>{var I2=L0(),zT=S(),F2=e();class GT{constructor(_){Object.defineProperty(this,zT.NODE_TYPE,{value:_})}clone(){let _=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));if(this.range)_.range=this.range.slice();return _}toJS(_,{mapAsMap:$,maxAliasCount:q,onAnchor:T,reviver:O}={}){if(!zT.isDocument(_))throw TypeError("A document argument is required");let H={anchors:new Map,doc:_,keep:!0,mapAsMap:$===!0,mapKeyWarned:!1,maxAliasCount:typeof q==="number"?q:100},X=F2.toJS(this,"",H);if(typeof T==="function")for(let{count:U,res:J}of H.anchors.values())T(J,U);return typeof O==="function"?I2.applyReviver(O,{"":X},"",X):X}}S2.NodeBase=GT});var x_=V((E2)=>{var N2=V$(),C2=g_(),I_=S(),P2=B$(),f2=e();class QT extends P2.NodeBase{constructor(_){super(I_.ALIAS);this.source=_,Object.defineProperty(this,"tag",{set(){throw Error("Alias nodes cannot have tags")}})}resolve(_,$){if($?.maxAliasCount===0)throw ReferenceError("Alias resolution is disabled");let q;if($?.aliasResolveCache)q=$.aliasResolveCache;else if(q=[],C2.visit(_,{Node:(O,H)=>{if(I_.isAlias(H)||I_.hasAnchor(H))q.push(H)}}),$)$.aliasResolveCache=q;let T=void 0;for(let O of q){if(O===this)break;if(O.anchor===this.source)T=O}return T}toJSON(_,$){if(!$)return{source:this.source};let{anchors:q,doc:T,maxAliasCount:O}=$,H=this.resolve(T,$);if(!H){let U=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw ReferenceError(U)}let X=q.get(H);if(!X)f2.toJS(H,null,$),X=q.get(H);if(X?.res===void 0)throw ReferenceError("This should not happen: Alias anchor was not resolved?");if(O>=0){if(X.count+=1,X.aliasCount===0)X.aliasCount=w$(T,H,q);if(X.count*X.aliasCount>O)throw ReferenceError("Excessive alias count indicates a resource exhaustion attack")}return X.res}toString(_,$,q){let T=`*${this.source}`;if(_){if(N2.anchorIsValid(this.source),_.options.verifyAliasOrder&&!_.anchors.has(this.source)){let O=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw Error(O)}if(_.implicitKey)return`${T} `}return T}}function w$(_,$,q){if(I_.isAlias($)){let T=$.resolve(_),O=q&&T&&q.get(T);return O?O.count*O.aliasCount:0}else if(I_.isCollection($)){let T=0;for(let O of $.items){let H=w$(_,O,q);if(H>T)T=H}return T}else if(I_.isPair($)){let T=w$(_,$.key,q),O=w$(_,$.value,q);return Math.max(T,O)}return 1}E2.Alias=QT});var f=V((k2)=>{var b2=S(),g2=B$(),y2=e(),x2=(_)=>!_||typeof _!=="function"&&typeof _!=="object";class G_ extends g2.NodeBase{constructor(_){super(b2.SCALAR);this.value=_}toJSON(_,$){return $?.keep?this.value:y2.toJS(this.value,_,$)}toString(){return String(this.value)}}G_.BLOCK_FOLDED="BLOCK_FOLDED";G_.BLOCK_LITERAL="BLOCK_LITERAL";G_.PLAIN="PLAIN";G_.QUOTE_DOUBLE="QUOTE_DOUBLE";G_.QUOTE_SINGLE="QUOTE_SINGLE";k2.Scalar=G_;k2.isScalarValue=x2});var k_=V((d2)=>{var v2=x_(),Q_=S(),WT=f(),m2="tag:yaml.org,2002:";function l2(_,$,q){if($){let T=q.filter((H)=>H.tag===$),O=T.find((H)=>!H.format)??T[0];if(!O)throw Error(`Tag ${$} not found`);return O}return q.find((T)=>T.identify?.(_)&&!T.format)}function p2(_,$,q){if(Q_.isDocument(_))_=_.contents;if(Q_.isNode(_))return _;if(Q_.isPair(_)){let G=q.schema[Q_.MAP].createNode?.(q.schema,null,q);return G.items.push(_),G}if(_ instanceof String||_ instanceof Number||_ instanceof Boolean||typeof BigInt<"u"&&_ instanceof BigInt)_=_.valueOf();let{aliasDuplicateObjects:T,onAnchor:O,onTagObj:H,schema:X,sourceObjects:U}=q,J=void 0;if(T&&_&&typeof _==="object")if(J=U.get(_),J)return J.anchor??(J.anchor=O(_)),new v2.Alias(J.anchor);else J={anchor:null,node:null},U.set(_,J);if($?.startsWith("!!"))$=m2+$.slice(2);let Z=l2(_,$,X.tags);if(!Z){if(_&&typeof _.toJSON==="function")_=_.toJSON();if(!_||typeof _!=="object"){let G=new WT.Scalar(_);if(J)J.node=G;return G}Z=_ instanceof Map?X[Q_.MAP]:(Symbol.iterator in Object(_))?X[Q_.SEQ]:X[Q_.MAP]}if(H)H(Z),delete q.onTagObj;let z=Z?.createNode?Z.createNode(q.schema,_,q):typeof Z?.nodeClass?.from==="function"?Z.nodeClass.from(q.schema,_,q):new WT.Scalar(_);if($)z.tag=$;else if(!Z.default)z.tag=Z.tag;if(J)J.node=z;return z}d2.createNode=p2});var A$=V((n2)=>{var s2=k_(),d=S(),i2=B$();function V0(_,$,q){let T=q;for(let O=$.length-1;O>=0;--O){let H=$[O];if(typeof H==="number"&&Number.isInteger(H)&&H>=0){let X=[];X[H]=T,T=X}else T=new Map([[H,T]])}return s2.createNode(T,void 0,{aliasDuplicateObjects:!1,keepUndefined:!1,onAnchor:()=>{throw Error("This should not happen, please report a bug.")},schema:_,sourceObjects:new Map})}var RT=(_)=>_==null||typeof _==="object"&&!!_[Symbol.iterator]().next().done;class YT extends i2.NodeBase{constructor(_,$){super(_);Object.defineProperty(this,"schema",{value:$,configurable:!0,enumerable:!1,writable:!0})}clone(_){let $=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));if(_)$.schema=_;if($.items=$.items.map((q)=>d.isNode(q)||d.isPair(q)?q.clone(_):q),this.range)$.range=this.range.slice();return $}addIn(_,$){if(RT(_))this.add($);else{let[q,...T]=_,O=this.get(q,!0);if(d.isCollection(O))O.addIn(T,$);else if(O===void 0&&this.schema)this.set(q,V0(this.schema,T,$));else throw Error(`Expected YAML collection at ${q}. Remaining path: ${T}`)}}deleteIn(_){let[$,...q]=_;if(q.length===0)return this.delete($);let T=this.get($,!0);if(d.isCollection(T))return T.deleteIn(q);else throw Error(`Expected YAML collection at ${$}. Remaining path: ${q}`)}getIn(_,$){let[q,...T]=_,O=this.get(q,!0);if(T.length===0)return!$&&d.isScalar(O)?O.value:O;else return d.isCollection(O)?O.getIn(T,$):void 0}hasAllNullValues(_){return this.items.every(($)=>{if(!d.isPair($))return!1;let q=$.value;return q==null||_&&d.isScalar(q)&&q.value==null&&!q.commentBefore&&!q.comment&&!q.tag})}hasIn(_){let[$,...q]=_;if(q.length===0)return this.has($);let T=this.get($,!0);return d.isCollection(T)?T.hasIn(q):!1}setIn(_,$){let[q,...T]=_;if(T.length===0)this.set(q,$);else{let O=this.get(q,!0);if(d.isCollection(O))O.setIn(T,$);else if(O===void 0&&this.schema)this.set(q,V0(this.schema,T,$));else throw Error(`Expected YAML collection at ${q}. Remaining path: ${T}`)}}}n2.Collection=YT;n2.collectionFromPath=V0;n2.isEmptyPath=RT});var u_=V((_9)=>{var t2=(_)=>_.replace(/^(?!$)(?: $)?/gm,"#");function B0(_,$){if(/^\n+$/.test(_))return _.substring(1);return $?_.replace(/^(?! *$)/gm,$):_}var e2=(_,$,q)=>_.endsWith(`
2
+ import{createRequire as EH}from"node:module";var V=(_,$)=>()=>($||_(($={exports:{}}).exports,$),$.exports);var Q$=EH(import.meta.url);var S=V((hH)=>{var W0=Symbol.for("yaml.alias"),oq=Symbol.for("yaml.document"),W$=Symbol.for("yaml.map"),tq=Symbol.for("yaml.pair"),R0=Symbol.for("yaml.scalar"),R$=Symbol.for("yaml.seq"),n=Symbol.for("yaml.node.type"),jH=(_)=>!!_&&typeof _==="object"&&_[n]===W0,bH=(_)=>!!_&&typeof _==="object"&&_[n]===oq,gH=(_)=>!!_&&typeof _==="object"&&_[n]===W$,yH=(_)=>!!_&&typeof _==="object"&&_[n]===tq,eq=(_)=>!!_&&typeof _==="object"&&_[n]===R0,xH=(_)=>!!_&&typeof _==="object"&&_[n]===R$;function _T(_){if(_&&typeof _==="object")switch(_[n]){case W$:case R$:return!0}return!1}function kH(_){if(_&&typeof _==="object")switch(_[n]){case W0:case W$:case R0:case R$:return!0}return!1}var uH=(_)=>(eq(_)||_T(_))&&!!_.anchor;hH.ALIAS=W0;hH.DOC=oq;hH.MAP=W$;hH.NODE_TYPE=n;hH.PAIR=tq;hH.SCALAR=R0;hH.SEQ=R$;hH.hasAnchor=uH;hH.isAlias=jH;hH.isCollection=_T;hH.isDocument=bH;hH.isMap=gH;hH.isNode=kH;hH.isPair=yH;hH.isScalar=eq;hH.isSeq=xH});var g_=V((q2)=>{var b=S(),y=Symbol("break visit"),$T=Symbol("skip children"),p=Symbol("remove node");function Y$(_,$){let q=qT($);if(b.isDocument(_)){if(A_(null,_.contents,q,Object.freeze([_]))===p)_.contents=null}else A_(null,_,q,Object.freeze([]))}Y$.BREAK=y;Y$.SKIP=$T;Y$.REMOVE=p;function A_(_,$,q,T){let O=TT(_,$,q,T);if(b.isNode(O)||b.isPair(O))return OT(_,T,O),A_(_,O,q,T);if(typeof O!=="symbol"){if(b.isCollection($)){T=Object.freeze(T.concat($));for(let H=0;H<$.items.length;++H){let X=A_(H,$.items[H],q,T);if(typeof X==="number")H=X-1;else if(X===y)return y;else if(X===p)$.items.splice(H,1),H-=1}}else if(b.isPair($)){T=Object.freeze(T.concat($));let H=A_("key",$.key,q,T);if(H===y)return y;else if(H===p)$.key=null;let X=A_("value",$.value,q,T);if(X===y)return y;else if(X===p)$.value=null}}return O}async function L$(_,$){let q=qT($);if(b.isDocument(_)){if(await M_(null,_.contents,q,Object.freeze([_]))===p)_.contents=null}else await M_(null,_,q,Object.freeze([]))}L$.BREAK=y;L$.SKIP=$T;L$.REMOVE=p;async function M_(_,$,q,T){let O=await TT(_,$,q,T);if(b.isNode(O)||b.isPair(O))return OT(_,T,O),M_(_,O,q,T);if(typeof O!=="symbol"){if(b.isCollection($)){T=Object.freeze(T.concat($));for(let H=0;H<$.items.length;++H){let X=await M_(H,$.items[H],q,T);if(typeof X==="number")H=X-1;else if(X===y)return y;else if(X===p)$.items.splice(H,1),H-=1}}else if(b.isPair($)){T=Object.freeze(T.concat($));let H=await M_("key",$.key,q,T);if(H===y)return y;else if(H===p)$.key=null;let X=await M_("value",$.value,q,T);if(X===y)return y;else if(X===p)$.value=null}}return O}function qT(_){if(typeof _==="object"&&(_.Collection||_.Node||_.Value))return Object.assign({Alias:_.Node,Map:_.Node,Scalar:_.Node,Seq:_.Node},_.Value&&{Map:_.Value,Scalar:_.Value,Seq:_.Value},_.Collection&&{Map:_.Collection,Seq:_.Collection},_);return _}function TT(_,$,q,T){if(typeof q==="function")return q(_,$,T);if(b.isMap($))return q.Map?.(_,$,T);if(b.isSeq($))return q.Seq?.(_,$,T);if(b.isPair($))return q.Pair?.(_,$,T);if(b.isScalar($))return q.Scalar?.(_,$,T);if(b.isAlias($))return q.Alias?.(_,$,T);return}function OT(_,$,q){let T=$[$.length-1];if(b.isCollection(T))T.items[_]=q;else if(b.isPair(T))if(_==="key")T.key=q;else T.value=q;else if(b.isDocument(T))T.contents=q;else{let O=b.isAlias(T)?"alias":"scalar";throw Error(`Cannot replace node with ${O} parent`)}}q2.visit=Y$;q2.visitAsync=L$});var Y0=V((J2)=>{var HT=S(),H2=g_(),X2={"!":"%21",",":"%2C","[":"%5B","]":"%5D","{":"%7B","}":"%7D"},U2=(_)=>_.replace(/[!,[\]{}]/g,($)=>X2[$]);class k{constructor(_,$){this.docStart=null,this.docEnd=!1,this.yaml=Object.assign({},k.defaultYaml,_),this.tags=Object.assign({},k.defaultTags,$)}clone(){let _=new k(this.yaml,this.tags);return _.docStart=this.docStart,_}atDocument(){let _=new k(this.yaml,this.tags);switch(this.yaml.version){case"1.1":this.atNextDocument=!0;break;case"1.2":this.atNextDocument=!1,this.yaml={explicit:k.defaultYaml.explicit,version:"1.2"},this.tags=Object.assign({},k.defaultTags);break}return _}add(_,$){if(this.atNextDocument)this.yaml={explicit:k.defaultYaml.explicit,version:"1.1"},this.tags=Object.assign({},k.defaultTags),this.atNextDocument=!1;let q=_.trim().split(/[ \t]+/),T=q.shift();switch(T){case"%TAG":{if(q.length!==2){if($(0,"%TAG directive should contain exactly two parts"),q.length<2)return!1}let[O,H]=q;return this.tags[O]=H,!0}case"%YAML":{if(this.yaml.explicit=!0,q.length!==1)return $(0,"%YAML directive should contain exactly one part"),!1;let[O]=q;if(O==="1.1"||O==="1.2")return this.yaml.version=O,!0;else{let H=/^\d+\.\d+$/.test(O);return $(6,`Unsupported YAML version ${O}`,H),!1}}default:return $(0,`Unknown directive ${T}`,!0),!1}}tagName(_,$){if(_==="!")return"!";if(_[0]!=="!")return $(`Not a valid tag: ${_}`),null;if(_[1]==="<"){let H=_.slice(2,-1);if(H==="!"||H==="!!")return $(`Verbatim tags aren't resolved, so ${_} is invalid.`),null;if(_[_.length-1]!==">")$("Verbatim tags must end with a >");return H}let[,q,T]=_.match(/^(.*!)([^!]*)$/s);if(!T)$(`The ${_} tag has no suffix`);let O=this.tags[q];if(O)try{return O+decodeURIComponent(T)}catch(H){return $(String(H)),null}if(q==="!")return _;return $(`Could not resolve tag: ${_}`),null}tagString(_){for(let[$,q]of Object.entries(this.tags))if(_.startsWith(q))return $+U2(_.substring(q.length));return _[0]==="!"?_:`!<${_}>`}toString(_){let $=this.yaml.explicit?[`%YAML ${this.yaml.version||"1.2"}`]:[],q=Object.entries(this.tags),T;if(_&&q.length>0&&HT.isNode(_.contents)){let O={};H2.visit(_.contents,(H,X)=>{if(HT.isNode(X)&&X.tag)O[X.tag]=!0}),T=Object.keys(O)}else T=[];for(let[O,H]of q){if(O==="!!"&&H==="tag:yaml.org,2002:")continue;if(!_||T.some((X)=>X.startsWith(H)))$.push(`%TAG ${O} ${H}`)}return $.join(`
3
+ `)}}k.defaultYaml={explicit:!1,version:"1.2"};k.defaultTags={"!!":"tag:yaml.org,2002:"};J2.Directives=k});var V$=V((W2)=>{var XT=S(),z2=g_();function G2(_){if(/[\x00-\x19\s,[\]{}]/.test(_)){let q=`Anchor must not contain whitespace or control characters: ${JSON.stringify(_)}`;throw Error(q)}return!0}function UT(_){let $=new Set;return z2.visit(_,{Value(q,T){if(T.anchor)$.add(T.anchor)}}),$}function JT(_,$){for(let q=1;;++q){let T=`${_}${q}`;if(!$.has(T))return T}}function Q2(_,$){let q=[],T=new Map,O=null;return{onAnchor:(H)=>{q.push(H),O??(O=UT(_));let X=JT($,O);return O.add(X),X},setAnchors:()=>{for(let H of q){let X=T.get(H);if(typeof X==="object"&&X.anchor&&(XT.isScalar(X.node)||XT.isCollection(X.node)))X.node.anchor=X.anchor;else{let U=Error("Failed to resolve repeated object (this should not happen)");throw U.source=H,U}}},sourceObjects:T}}W2.anchorIsValid=G2;W2.anchorNames=UT;W2.createNodeAnchors=Q2;W2.findNewAnchor=JT});var L0=V((B2)=>{function y_(_,$,q,T){if(T&&typeof T==="object")if(Array.isArray(T))for(let O=0,H=T.length;O<H;++O){let X=T[O],U=y_(_,T,String(O),X);if(U===void 0)delete T[O];else if(U!==X)T[O]=U}else if(T instanceof Map)for(let O of Array.from(T.keys())){let H=T.get(O),X=y_(_,T,O,H);if(X===void 0)T.delete(O);else if(X!==H)T.set(O,X)}else if(T instanceof Set)for(let O of Array.from(T)){let H=y_(_,T,O,O);if(H===void 0)T.delete(O);else if(H!==O)T.delete(O),T.add(H)}else for(let[O,H]of Object.entries(T)){let X=y_(_,T,O,H);if(X===void 0)delete T[O];else if(X!==H)T[O]=X}return _.call($,q,T)}B2.applyReviver=y_});var e=V((A2)=>{var D2=S();function ZT(_,$,q){if(Array.isArray(_))return _.map((T,O)=>ZT(T,String(O),q));if(_&&typeof _.toJSON==="function"){if(!q||!D2.hasAnchor(_))return _.toJSON($,q);let T={aliasCount:0,count:1,res:void 0};q.anchors.set(_,T),q.onCreate=(H)=>{T.res=H,delete q.onCreate};let O=_.toJSON($,q);if(q.onCreate)q.onCreate(O);return O}if(typeof _==="bigint"&&!q?.keep)return Number(_);return _}A2.toJS=ZT});var B$=V((S2)=>{var I2=L0(),zT=S(),F2=e();class GT{constructor(_){Object.defineProperty(this,zT.NODE_TYPE,{value:_})}clone(){let _=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));if(this.range)_.range=this.range.slice();return _}toJS(_,{mapAsMap:$,maxAliasCount:q,onAnchor:T,reviver:O}={}){if(!zT.isDocument(_))throw TypeError("A document argument is required");let H={anchors:new Map,doc:_,keep:!0,mapAsMap:$===!0,mapKeyWarned:!1,maxAliasCount:typeof q==="number"?q:100},X=F2.toJS(this,"",H);if(typeof T==="function")for(let{count:U,res:J}of H.anchors.values())T(J,U);return typeof O==="function"?I2.applyReviver(O,{"":X},"",X):X}}S2.NodeBase=GT});var x_=V((E2)=>{var N2=V$(),C2=g_(),I_=S(),P2=B$(),f2=e();class QT extends P2.NodeBase{constructor(_){super(I_.ALIAS);this.source=_,Object.defineProperty(this,"tag",{set(){throw Error("Alias nodes cannot have tags")}})}resolve(_,$){if($?.maxAliasCount===0)throw ReferenceError("Alias resolution is disabled");let q;if($?.aliasResolveCache)q=$.aliasResolveCache;else if(q=[],C2.visit(_,{Node:(O,H)=>{if(I_.isAlias(H)||I_.hasAnchor(H))q.push(H)}}),$)$.aliasResolveCache=q;let T=void 0;for(let O of q){if(O===this)break;if(O.anchor===this.source)T=O}return T}toJSON(_,$){if(!$)return{source:this.source};let{anchors:q,doc:T,maxAliasCount:O}=$,H=this.resolve(T,$);if(!H){let U=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw ReferenceError(U)}let X=q.get(H);if(!X)f2.toJS(H,null,$),X=q.get(H);if(X?.res===void 0)throw ReferenceError("This should not happen: Alias anchor was not resolved?");if(O>=0){if(X.count+=1,X.aliasCount===0)X.aliasCount=w$(T,H,q);if(X.count*X.aliasCount>O)throw ReferenceError("Excessive alias count indicates a resource exhaustion attack")}return X.res}toString(_,$,q){let T=`*${this.source}`;if(_){if(N2.anchorIsValid(this.source),_.options.verifyAliasOrder&&!_.anchors.has(this.source)){let O=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw Error(O)}if(_.implicitKey)return`${T} `}return T}}function w$(_,$,q){if(I_.isAlias($)){let T=$.resolve(_),O=q&&T&&q.get(T);return O?O.count*O.aliasCount:0}else if(I_.isCollection($)){let T=0;for(let O of $.items){let H=w$(_,O,q);if(H>T)T=H}return T}else if(I_.isPair($)){let T=w$(_,$.key,q),O=w$(_,$.value,q);return Math.max(T,O)}return 1}E2.Alias=QT});var f=V((k2)=>{var b2=S(),g2=B$(),y2=e(),x2=(_)=>!_||typeof _!=="function"&&typeof _!=="object";class G_ extends g2.NodeBase{constructor(_){super(b2.SCALAR);this.value=_}toJSON(_,$){return $?.keep?this.value:y2.toJS(this.value,_,$)}toString(){return String(this.value)}}G_.BLOCK_FOLDED="BLOCK_FOLDED";G_.BLOCK_LITERAL="BLOCK_LITERAL";G_.PLAIN="PLAIN";G_.QUOTE_DOUBLE="QUOTE_DOUBLE";G_.QUOTE_SINGLE="QUOTE_SINGLE";k2.Scalar=G_;k2.isScalarValue=x2});var k_=V((d2)=>{var v2=x_(),Q_=S(),WT=f(),m2="tag:yaml.org,2002:";function l2(_,$,q){if($){let T=q.filter((H)=>H.tag===$),O=T.find((H)=>!H.format)??T[0];if(!O)throw Error(`Tag ${$} not found`);return O}return q.find((T)=>T.identify?.(_)&&!T.format)}function p2(_,$,q){if(Q_.isDocument(_))_=_.contents;if(Q_.isNode(_))return _;if(Q_.isPair(_)){let G=q.schema[Q_.MAP].createNode?.(q.schema,null,q);return G.items.push(_),G}if(_ instanceof String||_ instanceof Number||_ instanceof Boolean||typeof BigInt<"u"&&_ instanceof BigInt)_=_.valueOf();let{aliasDuplicateObjects:T,onAnchor:O,onTagObj:H,schema:X,sourceObjects:U}=q,J=void 0;if(T&&_&&typeof _==="object")if(J=U.get(_),J)return J.anchor??(J.anchor=O(_)),new v2.Alias(J.anchor);else J={anchor:null,node:null},U.set(_,J);if($?.startsWith("!!"))$=m2+$.slice(2);let Z=l2(_,$,X.tags);if(!Z){if(_&&typeof _.toJSON==="function")_=_.toJSON();if(!_||typeof _!=="object"){let G=new WT.Scalar(_);if(J)J.node=G;return G}Z=_ instanceof Map?X[Q_.MAP]:(Symbol.iterator in Object(_))?X[Q_.SEQ]:X[Q_.MAP]}if(H)H(Z),delete q.onTagObj;let z=Z?.createNode?Z.createNode(q.schema,_,q):typeof Z?.nodeClass?.from==="function"?Z.nodeClass.from(q.schema,_,q):new WT.Scalar(_);if($)z.tag=$;else if(!Z.default)z.tag=Z.tag;if(J)J.node=z;return z}d2.createNode=p2});var D$=V((n2)=>{var s2=k_(),d=S(),i2=B$();function V0(_,$,q){let T=q;for(let O=$.length-1;O>=0;--O){let H=$[O];if(typeof H==="number"&&Number.isInteger(H)&&H>=0){let X=[];X[H]=T,T=X}else T=new Map([[H,T]])}return s2.createNode(T,void 0,{aliasDuplicateObjects:!1,keepUndefined:!1,onAnchor:()=>{throw Error("This should not happen, please report a bug.")},schema:_,sourceObjects:new Map})}var RT=(_)=>_==null||typeof _==="object"&&!!_[Symbol.iterator]().next().done;class YT extends i2.NodeBase{constructor(_,$){super(_);Object.defineProperty(this,"schema",{value:$,configurable:!0,enumerable:!1,writable:!0})}clone(_){let $=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));if(_)$.schema=_;if($.items=$.items.map((q)=>d.isNode(q)||d.isPair(q)?q.clone(_):q),this.range)$.range=this.range.slice();return $}addIn(_,$){if(RT(_))this.add($);else{let[q,...T]=_,O=this.get(q,!0);if(d.isCollection(O))O.addIn(T,$);else if(O===void 0&&this.schema)this.set(q,V0(this.schema,T,$));else throw Error(`Expected YAML collection at ${q}. Remaining path: ${T}`)}}deleteIn(_){let[$,...q]=_;if(q.length===0)return this.delete($);let T=this.get($,!0);if(d.isCollection(T))return T.deleteIn(q);else throw Error(`Expected YAML collection at ${$}. Remaining path: ${q}`)}getIn(_,$){let[q,...T]=_,O=this.get(q,!0);if(T.length===0)return!$&&d.isScalar(O)?O.value:O;else return d.isCollection(O)?O.getIn(T,$):void 0}hasAllNullValues(_){return this.items.every(($)=>{if(!d.isPair($))return!1;let q=$.value;return q==null||_&&d.isScalar(q)&&q.value==null&&!q.commentBefore&&!q.comment&&!q.tag})}hasIn(_){let[$,...q]=_;if(q.length===0)return this.has($);let T=this.get($,!0);return d.isCollection(T)?T.hasIn(q):!1}setIn(_,$){let[q,...T]=_;if(T.length===0)this.set(q,$);else{let O=this.get(q,!0);if(d.isCollection(O))O.setIn(T,$);else if(O===void 0&&this.schema)this.set(q,V0(this.schema,T,$));else throw Error(`Expected YAML collection at ${q}. Remaining path: ${T}`)}}}n2.Collection=YT;n2.collectionFromPath=V0;n2.isEmptyPath=RT});var u_=V((_9)=>{var t2=(_)=>_.replace(/^(?!$)(?: $)?/gm,"#");function B0(_,$){if(/^\n+$/.test(_))return _.substring(1);return $?_.replace(/^(?! *$)/gm,$):_}var e2=(_,$,q)=>_.endsWith(`
4
4
  `)?B0(q,$):q.includes(`
5
5
  `)?`
6
- `+B0(q,$):(_.endsWith(" ")?"":" ")+q;_9.indentComment=B0;_9.lineComment=e2;_9.stringifyComment=t2});var VT=V((H9)=>{function O9(_,$,q="flow",{indentAtStart:T,lineWidth:O=80,minContentWidth:H=20,onFold:X,onOverflow:U}={}){if(!O||O<0)return _;if(O<H)H=0;let J=Math.max(1+H,1+O-$.length);if(_.length<=J)return _;let Z=[],z={},G=O-$.length;if(typeof T==="number")if(T>O-Math.max(2,H))Z.push(0);else G=O-T;let Q=void 0,Y=void 0,R=!1,W=-1,L=-1,B=-1;if(q==="block"){if(W=LT(_,W,$.length),W!==-1)G=W+J}for(let D;D=_[W+=1];){if(q==="quoted"&&D==="\\"){switch(L=W,_[W+1]){case"x":W+=3;break;case"u":W+=5;break;case"U":W+=9;break;default:W+=1}B=W}if(D===`
7
- `){if(q==="block")W=LT(_,W,$.length);G=W+$.length+J,Q=void 0}else{if(D===" "&&Y&&Y!==" "&&Y!==`
6
+ `+B0(q,$):(_.endsWith(" ")?"":" ")+q;_9.indentComment=B0;_9.lineComment=e2;_9.stringifyComment=t2});var VT=V((H9)=>{function O9(_,$,q="flow",{indentAtStart:T,lineWidth:O=80,minContentWidth:H=20,onFold:X,onOverflow:U}={}){if(!O||O<0)return _;if(O<H)H=0;let J=Math.max(1+H,1+O-$.length);if(_.length<=J)return _;let Z=[],z={},G=O-$.length;if(typeof T==="number")if(T>O-Math.max(2,H))Z.push(0);else G=O-T;let Q=void 0,Y=void 0,R=!1,W=-1,L=-1,B=-1;if(q==="block"){if(W=LT(_,W,$.length),W!==-1)G=W+J}for(let A;A=_[W+=1];){if(q==="quoted"&&A==="\\"){switch(L=W,_[W+1]){case"x":W+=3;break;case"u":W+=5;break;case"U":W+=9;break;default:W+=1}B=W}if(A===`
7
+ `){if(q==="block")W=LT(_,W,$.length);G=W+$.length+J,Q=void 0}else{if(A===" "&&Y&&Y!==" "&&Y!==`
8
8
  `&&Y!=="\t"){let M=_[W+1];if(M&&M!==" "&&M!==`
9
- `&&M!=="\t")Q=W}if(W>=G)if(Q)Z.push(Q),G=Q+J,Q=void 0;else if(q==="quoted"){while(Y===" "||Y==="\t")Y=D,D=_[W+=1],R=!0;let M=W>B+1?W-2:L-1;if(z[M])return _;Z.push(M),z[M]=!0,G=M+J,Q=void 0}else R=!0}Y=D}if(R&&U)U();if(Z.length===0)return _;if(X)X();let A=_.slice(0,Z[0]);for(let D=0;D<Z.length;++D){let M=Z[D],I=Z[D+1]||_.length;if(M===0)A=`
10
- ${$}${_.slice(0,I)}`;else{if(q==="quoted"&&z[M])A+=`${_[M]}\\`;A+=`
11
- ${$}${_.slice(M+1,I)}`}}return A}function LT(_,$,q){let T=$,O=$+1,H=_[O];while(H===" "||H==="\t")if($<O+q)H=_[++$];else{do H=_[++$];while(H&&H!==`
9
+ `&&M!=="\t")Q=W}if(W>=G)if(Q)Z.push(Q),G=Q+J,Q=void 0;else if(q==="quoted"){while(Y===" "||Y==="\t")Y=A,A=_[W+=1],R=!0;let M=W>B+1?W-2:L-1;if(z[M])return _;Z.push(M),z[M]=!0,G=M+J,Q=void 0}else R=!0}Y=A}if(R&&U)U();if(Z.length===0)return _;if(X)X();let D=_.slice(0,Z[0]);for(let A=0;A<Z.length;++A){let M=Z[A],I=Z[A+1]||_.length;if(M===0)D=`
10
+ ${$}${_.slice(0,I)}`;else{if(q==="quoted"&&z[M])D+=`${_[M]}\\`;D+=`
11
+ ${$}${_.slice(M+1,I)}`}}return D}function LT(_,$,q){let T=$,O=$+1,H=_[O];while(H===" "||H==="\t")if($<O+q)H=_[++$];else{do H=_[++$];while(H&&H!==`
12
12
  `);T=$,O=$+1,H=_[O]}return T}H9.FOLD_BLOCK="block";H9.FOLD_FLOW="flow";H9.FOLD_QUOTED="quoted";H9.foldFlowLines=O9});var v_=V((W9)=>{var v=f(),__=VT(),M$=(_,$)=>({indentAtStart:$?_.indent.length:_.indentAtStart,lineWidth:_.options.lineWidth,minContentWidth:_.options.minContentWidth}),I$=(_)=>/^(%|---|\.\.\.)/m.test(_);function z9(_,$,q){if(!$||$<0)return!1;let T=$-q,O=_.length;if(O<=T)return!1;for(let H=0,X=0;H<O;++H)if(_[H]===`
13
13
  `){if(H-X>T)return!0;if(X=H+1,O-X<=T)return!1}return!0}function h_(_,$){let q=JSON.stringify(_);if($.options.doubleQuotedAsJSON)return q;let{implicitKey:T}=$,O=$.options.doubleQuotedMinMultiLineLength,H=$.indent||(I$(_)?" ":""),X="",U=0;for(let J=0,Z=q[J];Z;Z=q[++J]){if(Z===" "&&q[J+1]==="\\"&&q[J+2]==="n")X+=q.slice(U,J)+"\\ ",J+=1,U=J,Z="\\";if(Z==="\\")switch(q[J+1]){case"u":{X+=q.slice(U,J);let z=q.substr(J+2,4);switch(z){case"0000":X+="\\0";break;case"0007":X+="\\a";break;case"000b":X+="\\v";break;case"001b":X+="\\e";break;case"0085":X+="\\N";break;case"00a0":X+="\\_";break;case"2028":X+="\\L";break;case"2029":X+="\\P";break;default:if(z.substr(0,2)==="00")X+="\\x"+z.substr(2);else X+=q.substr(J,6)}J+=5,U=J+1}break;case"n":if(T||q[J+2]==='"'||q.length<O)J+=1;else{X+=q.slice(U,J)+`
14
14
 
15
15
  `;while(q[J+2]==="\\"&&q[J+3]==="n"&&q[J+4]!=='"')X+=`
16
16
  `,J+=2;if(X+=H,q[J+2]===" ")X+="\\";J+=1,U=J+1}break;default:J+=1}}return X=U?X+q.slice(U):q,T?X:__.foldFlowLines(X,H,__.FOLD_QUOTED,M$($,!1))}function w0(_,$){if($.options.singleQuote===!1||$.implicitKey&&_.includes(`
17
17
  `)||/[ \t]\n|\n[ \t]/.test(_))return h_(_,$);let q=$.indent||(I$(_)?" ":""),T="'"+_.replace(/'/g,"''").replace(/\n+/g,`$&
18
- ${q}`)+"'";return $.implicitKey?T:__.foldFlowLines(T,q,__.FOLD_FLOW,M$($,!1))}function F_(_,$){let{singleQuote:q}=$.options,T;if(q===!1)T=h_;else{let O=_.includes('"'),H=_.includes("'");if(O&&!H)T=w0;else if(H&&!O)T=h_;else T=q?w0:h_}return T(_,$)}var A0;try{A0=new RegExp(`(^|(?<!
18
+ ${q}`)+"'";return $.implicitKey?T:__.foldFlowLines(T,q,__.FOLD_FLOW,M$($,!1))}function F_(_,$){let{singleQuote:q}=$.options,T;if(q===!1)T=h_;else{let O=_.includes('"'),H=_.includes("'");if(O&&!H)T=w0;else if(H&&!O)T=h_;else T=q?w0:h_}return T(_,$)}var D0;try{D0=new RegExp(`(^|(?<!
19
19
  ))
20
20
  +(?!
21
- |$)`,"g")}catch{A0=/\n+(?!\n|$)/g}function D$({comment:_,type:$,value:q},T,O,H){let{blockQuote:X,commentString:U,lineWidth:J}=T.options;if(!X||/\n[\t ]+$/.test(q))return F_(q,T);let Z=T.indent||(T.forceBlockIndent||I$(q)?" ":""),z=X==="literal"?!0:X==="folded"||$===v.Scalar.BLOCK_FOLDED?!1:$===v.Scalar.BLOCK_LITERAL?!0:!z9(q,J,Z.length);if(!q)return z?`|
21
+ |$)`,"g")}catch{D0=/\n+(?!\n|$)/g}function A$({comment:_,type:$,value:q},T,O,H){let{blockQuote:X,commentString:U,lineWidth:J}=T.options;if(!X||/\n[\t ]+$/.test(q))return F_(q,T);let Z=T.indent||(T.forceBlockIndent||I$(q)?" ":""),z=X==="literal"?!0:X==="folded"||$===v.Scalar.BLOCK_FOLDED?!1:$===v.Scalar.BLOCK_LITERAL?!0:!z9(q,J,Z.length);if(!q)return z?`|
22
22
  `:`>
23
23
  `;let G,Q;for(Q=q.length;Q>0;--Q){let I=q[Q-1];if(I!==`
24
24
  `&&I!=="\t"&&I!==" ")break}let Y=q.substring(Q),R=Y.indexOf(`
25
25
  `);if(R===-1)G="-";else if(q===Y||R!==Y.length-1){if(G="+",H)H()}else G="";if(Y){if(q=q.slice(0,-Y.length),Y[Y.length-1]===`
26
- `)Y=Y.slice(0,-1);Y=Y.replace(A0,`$&${Z}`)}let W=!1,L,B=-1;for(L=0;L<q.length;++L){let I=q[L];if(I===" ")W=!0;else if(I===`
27
- `)B=L;else break}let A=q.substring(0,B<L?B+1:L);if(A)q=q.substring(A.length),A=A.replace(/\n+/g,`$&${Z}`);let M=(W?Z?"2":"1":"")+G;if(_){if(M+=" "+U(_.replace(/ ?[\r\n]+/g," ")),O)O()}if(!z){let I=q.replace(/\n+/g,`
28
- $&`).replace(/(?:^|\n)([\t ].*)(?:([\n\t ]*)\n(?![\n\t ]))?/g,"$1$2").replace(/\n+/g,`$&${Z}`),F=!1,K=M$(T,!0);if(X!=="folded"&&$!==v.Scalar.BLOCK_FOLDED)K.onOverflow=()=>{F=!0};let w=__.foldFlowLines(`${A}${I}${Y}`,Z,__.FOLD_BLOCK,K);if(!F)return`>${M}
26
+ `)Y=Y.slice(0,-1);Y=Y.replace(D0,`$&${Z}`)}let W=!1,L,B=-1;for(L=0;L<q.length;++L){let I=q[L];if(I===" ")W=!0;else if(I===`
27
+ `)B=L;else break}let D=q.substring(0,B<L?B+1:L);if(D)q=q.substring(D.length),D=D.replace(/\n+/g,`$&${Z}`);let M=(W?Z?"2":"1":"")+G;if(_){if(M+=" "+U(_.replace(/ ?[\r\n]+/g," ")),O)O()}if(!z){let I=q.replace(/\n+/g,`
28
+ $&`).replace(/(?:^|\n)([\t ].*)(?:([\n\t ]*)\n(?![\n\t ]))?/g,"$1$2").replace(/\n+/g,`$&${Z}`),F=!1,K=M$(T,!0);if(X!=="folded"&&$!==v.Scalar.BLOCK_FOLDED)K.onOverflow=()=>{F=!0};let w=__.foldFlowLines(`${D}${I}${Y}`,Z,__.FOLD_BLOCK,K);if(!F)return`>${M}
29
29
  ${Z}${w}`}return q=q.replace(/\n+/g,`$&${Z}`),`|${M}
30
- ${Z}${A}${q}${Y}`}function G9(_,$,q,T){let{type:O,value:H}=_,{actualString:X,implicitKey:U,indent:J,indentStep:Z,inFlow:z}=$;if(U&&H.includes(`
30
+ ${Z}${D}${q}${Y}`}function G9(_,$,q,T){let{type:O,value:H}=_,{actualString:X,implicitKey:U,indent:J,indentStep:Z,inFlow:z}=$;if(U&&H.includes(`
31
31
  `)||z&&/[[\]{},]/.test(H))return F_(H,$);if(/^[\n\t ,[\]{}#&*!|>'"%@`]|^[?-]$|^[?-][ \t]|[\n:][ \t]|[ \t]\n|[\n\t ]#|[\n\t :]$/.test(H))return U||z||!H.includes(`
32
- `)?F_(H,$):D$(_,$,q,T);if(!U&&!z&&O!==v.Scalar.PLAIN&&H.includes(`
33
- `))return D$(_,$,q,T);if(I$(H)){if(J==="")return $.forceBlockIndent=!0,D$(_,$,q,T);else if(U&&J===Z)return F_(H,$)}let G=H.replace(/\n+/g,`$&
34
- ${J}`);if(X){let Q=(W)=>W.default&&W.tag!=="tag:yaml.org,2002:str"&&W.test?.test(G),{compat:Y,tags:R}=$.doc.schema;if(R.some(Q)||Y?.some(Q))return F_(H,$)}return U?G:__.foldFlowLines(G,J,__.FOLD_FLOW,M$($,!1))}function Q9(_,$,q,T){let{implicitKey:O,inFlow:H}=$,X=typeof _.value==="string"?_:Object.assign({},_,{value:String(_.value)}),{type:U}=_;if(U!==v.Scalar.QUOTE_DOUBLE){if(/[\x00-\x08\x0b-\x1f\x7f-\x9f\u{D800}-\u{DFFF}]/u.test(X.value))U=v.Scalar.QUOTE_DOUBLE}let J=(z)=>{switch(z){case v.Scalar.BLOCK_FOLDED:case v.Scalar.BLOCK_LITERAL:return O||H?F_(X.value,$):D$(X,$,q,T);case v.Scalar.QUOTE_DOUBLE:return h_(X.value,$);case v.Scalar.QUOTE_SINGLE:return w0(X.value,$);case v.Scalar.PLAIN:return G9(X,$,q,T);default:return null}},Z=J(U);if(Z===null){let{defaultKeyType:z,defaultStringType:G}=$.options,Q=O&&z||G;if(Z=J(Q),Z===null)throw Error(`Unsupported default string type ${Q}`)}return Z}W9.stringifyString=Q9});var m_=V((M9)=>{var Y9=V$(),$_=S(),L9=u_(),V9=v_();function B9(_,$){let q=Object.assign({blockQuote:!0,commentString:L9.stringifyComment,defaultKeyType:null,defaultStringType:"PLAIN",directives:null,doubleQuotedAsJSON:!1,doubleQuotedMinMultiLineLength:40,falseStr:"false",flowCollectionPadding:!0,indentSeq:!0,lineWidth:80,minContentWidth:20,nullStr:"null",simpleKeys:!1,singleQuote:null,trailingComma:!1,trueStr:"true",verifyAliasOrder:!0},_.schema.toStringOptions,$),T;switch(q.collectionStyle){case"block":T=!1;break;case"flow":T=!0;break;default:T=null}return{anchors:new Set,doc:_,flowCollectionPadding:q.flowCollectionPadding?" ":"",indent:"",indentStep:typeof q.indent==="number"?" ".repeat(q.indent):" ",inFlow:T,options:q}}function w9(_,$){if($.tag){let O=_.filter((H)=>H.tag===$.tag);if(O.length>0)return O.find((H)=>H.format===$.format)??O[0]}let q=void 0,T;if($_.isScalar($)){T=$.value;let O=_.filter((H)=>H.identify?.(T));if(O.length>1){let H=O.filter((X)=>X.test);if(H.length>0)O=H}q=O.find((H)=>H.format===$.format)??O.find((H)=>!H.format)}else T=$,q=_.find((O)=>O.nodeClass&&T instanceof O.nodeClass);if(!q){let O=T?.constructor?.name??(T===null?"null":typeof T);throw Error(`Tag not resolved for ${O} value`)}return q}function A9(_,$,{anchors:q,doc:T}){if(!T.directives)return"";let O=[],H=($_.isScalar(_)||$_.isCollection(_))&&_.anchor;if(H&&Y9.anchorIsValid(H))q.add(H),O.push(`&${H}`);let X=_.tag??($.default?null:$.tag);if(X)O.push(T.directives.tagString(X));return O.join(" ")}function D9(_,$,q,T){if($_.isPair(_))return _.toString($,q,T);if($_.isAlias(_)){if($.doc.directives)return _.toString($);if($.resolvedAliases?.has(_))throw TypeError("Cannot stringify circular structure without alias nodes");else{if($.resolvedAliases)$.resolvedAliases.add(_);else $.resolvedAliases=new Set([_]);_=_.resolve($.doc)}}let O=void 0,H=$_.isNode(_)?_:$.doc.createNode(_,{onTagObj:(J)=>O=J});O??(O=w9($.doc.schema.tags,H));let X=A9(H,O,$);if(X.length>0)$.indentAtStart=($.indentAtStart??0)+X.length+1;let U=typeof O.stringify==="function"?O.stringify(H,$,q,T):$_.isScalar(H)?V9.stringifyString(H,$,q,T):H.toString($,q,T);if(!X)return U;return $_.isScalar(H)||U[0]==="{"||U[0]==="["?`${X} ${U}`:`${X}
35
- ${$.indent}${U}`}M9.createStringifyContext=B9;M9.stringify=D9});var AT=V((K9)=>{var a=S(),BT=f(),wT=m_(),l_=u_();function S9({key:_,value:$},q,T,O){let{allNullValues:H,doc:X,indent:U,indentStep:J,options:{commentString:Z,indentSeq:z,simpleKeys:G}}=q,Q=a.isNode(_)&&_.comment||null;if(G){if(Q)throw Error("With simple keys, key nodes cannot have comments");if(a.isCollection(_)||!a.isNode(_)&&typeof _==="object")throw Error("With simple keys, collection cannot be used as a key value")}let Y=!G&&(!_||Q&&$==null&&!q.inFlow||a.isCollection(_)||(a.isScalar(_)?_.type===BT.Scalar.BLOCK_FOLDED||_.type===BT.Scalar.BLOCK_LITERAL:typeof _==="object"));q=Object.assign({},q,{allNullValues:!1,implicitKey:!Y&&(G||!H),indent:U+J});let R=!1,W=!1,L=wT.stringify(_,q,()=>R=!0,()=>W=!0);if(!Y&&!q.inFlow&&L.length>1024){if(G)throw Error("With simple keys, single line scalar must not span more than 1024 characters");Y=!0}if(q.inFlow){if(H||$==null){if(R&&T)T();return L===""?"?":Y?`? ${L}`:L}}else if(H&&!G||$==null&&Y){if(L=`? ${L}`,Q&&!R)L+=l_.lineComment(L,q.indent,Z(Q));else if(W&&O)O();return L}if(R)Q=null;if(Y){if(Q)L+=l_.lineComment(L,q.indent,Z(Q));L=`? ${L}
36
- ${U}:`}else if(L=`${L}:`,Q)L+=l_.lineComment(L,q.indent,Z(Q));let B,A,D;if(a.isNode($))B=!!$.spaceBefore,A=$.commentBefore,D=$.comment;else if(B=!1,A=null,D=null,$&&typeof $==="object")$=X.createNode($);if(q.implicitKey=!1,!Y&&!Q&&a.isScalar($))q.indentAtStart=L.length+1;if(W=!1,!z&&J.length>=2&&!q.inFlow&&!Y&&a.isSeq($)&&!$.flow&&!$.tag&&!$.anchor)q.indent=q.indent.substring(2);let M=!1,I=wT.stringify($,q,()=>M=!0,()=>W=!0),F=" ";if(Q||B||A){if(F=B?`
37
- `:"",A){let K=Z(A);F+=`
32
+ `)?F_(H,$):A$(_,$,q,T);if(!U&&!z&&O!==v.Scalar.PLAIN&&H.includes(`
33
+ `))return A$(_,$,q,T);if(I$(H)){if(J==="")return $.forceBlockIndent=!0,A$(_,$,q,T);else if(U&&J===Z)return F_(H,$)}let G=H.replace(/\n+/g,`$&
34
+ ${J}`);if(X){let Q=(W)=>W.default&&W.tag!=="tag:yaml.org,2002:str"&&W.test?.test(G),{compat:Y,tags:R}=$.doc.schema;if(R.some(Q)||Y?.some(Q))return F_(H,$)}return U?G:__.foldFlowLines(G,J,__.FOLD_FLOW,M$($,!1))}function Q9(_,$,q,T){let{implicitKey:O,inFlow:H}=$,X=typeof _.value==="string"?_:Object.assign({},_,{value:String(_.value)}),{type:U}=_;if(U!==v.Scalar.QUOTE_DOUBLE){if(/[\x00-\x08\x0b-\x1f\x7f-\x9f\u{D800}-\u{DFFF}]/u.test(X.value))U=v.Scalar.QUOTE_DOUBLE}let J=(z)=>{switch(z){case v.Scalar.BLOCK_FOLDED:case v.Scalar.BLOCK_LITERAL:return O||H?F_(X.value,$):A$(X,$,q,T);case v.Scalar.QUOTE_DOUBLE:return h_(X.value,$);case v.Scalar.QUOTE_SINGLE:return w0(X.value,$);case v.Scalar.PLAIN:return G9(X,$,q,T);default:return null}},Z=J(U);if(Z===null){let{defaultKeyType:z,defaultStringType:G}=$.options,Q=O&&z||G;if(Z=J(Q),Z===null)throw Error(`Unsupported default string type ${Q}`)}return Z}W9.stringifyString=Q9});var m_=V((M9)=>{var Y9=V$(),$_=S(),L9=u_(),V9=v_();function B9(_,$){let q=Object.assign({blockQuote:!0,commentString:L9.stringifyComment,defaultKeyType:null,defaultStringType:"PLAIN",directives:null,doubleQuotedAsJSON:!1,doubleQuotedMinMultiLineLength:40,falseStr:"false",flowCollectionPadding:!0,indentSeq:!0,lineWidth:80,minContentWidth:20,nullStr:"null",simpleKeys:!1,singleQuote:null,trailingComma:!1,trueStr:"true",verifyAliasOrder:!0},_.schema.toStringOptions,$),T;switch(q.collectionStyle){case"block":T=!1;break;case"flow":T=!0;break;default:T=null}return{anchors:new Set,doc:_,flowCollectionPadding:q.flowCollectionPadding?" ":"",indent:"",indentStep:typeof q.indent==="number"?" ".repeat(q.indent):" ",inFlow:T,options:q}}function w9(_,$){if($.tag){let O=_.filter((H)=>H.tag===$.tag);if(O.length>0)return O.find((H)=>H.format===$.format)??O[0]}let q=void 0,T;if($_.isScalar($)){T=$.value;let O=_.filter((H)=>H.identify?.(T));if(O.length>1){let H=O.filter((X)=>X.test);if(H.length>0)O=H}q=O.find((H)=>H.format===$.format)??O.find((H)=>!H.format)}else T=$,q=_.find((O)=>O.nodeClass&&T instanceof O.nodeClass);if(!q){let O=T?.constructor?.name??(T===null?"null":typeof T);throw Error(`Tag not resolved for ${O} value`)}return q}function D9(_,$,{anchors:q,doc:T}){if(!T.directives)return"";let O=[],H=($_.isScalar(_)||$_.isCollection(_))&&_.anchor;if(H&&Y9.anchorIsValid(H))q.add(H),O.push(`&${H}`);let X=_.tag??($.default?null:$.tag);if(X)O.push(T.directives.tagString(X));return O.join(" ")}function A9(_,$,q,T){if($_.isPair(_))return _.toString($,q,T);if($_.isAlias(_)){if($.doc.directives)return _.toString($);if($.resolvedAliases?.has(_))throw TypeError("Cannot stringify circular structure without alias nodes");else{if($.resolvedAliases)$.resolvedAliases.add(_);else $.resolvedAliases=new Set([_]);_=_.resolve($.doc)}}let O=void 0,H=$_.isNode(_)?_:$.doc.createNode(_,{onTagObj:(J)=>O=J});O??(O=w9($.doc.schema.tags,H));let X=D9(H,O,$);if(X.length>0)$.indentAtStart=($.indentAtStart??0)+X.length+1;let U=typeof O.stringify==="function"?O.stringify(H,$,q,T):$_.isScalar(H)?V9.stringifyString(H,$,q,T):H.toString($,q,T);if(!X)return U;return $_.isScalar(H)||U[0]==="{"||U[0]==="["?`${X} ${U}`:`${X}
35
+ ${$.indent}${U}`}M9.createStringifyContext=B9;M9.stringify=A9});var DT=V((K9)=>{var a=S(),BT=f(),wT=m_(),l_=u_();function S9({key:_,value:$},q,T,O){let{allNullValues:H,doc:X,indent:U,indentStep:J,options:{commentString:Z,indentSeq:z,simpleKeys:G}}=q,Q=a.isNode(_)&&_.comment||null;if(G){if(Q)throw Error("With simple keys, key nodes cannot have comments");if(a.isCollection(_)||!a.isNode(_)&&typeof _==="object")throw Error("With simple keys, collection cannot be used as a key value")}let Y=!G&&(!_||Q&&$==null&&!q.inFlow||a.isCollection(_)||(a.isScalar(_)?_.type===BT.Scalar.BLOCK_FOLDED||_.type===BT.Scalar.BLOCK_LITERAL:typeof _==="object"));q=Object.assign({},q,{allNullValues:!1,implicitKey:!Y&&(G||!H),indent:U+J});let R=!1,W=!1,L=wT.stringify(_,q,()=>R=!0,()=>W=!0);if(!Y&&!q.inFlow&&L.length>1024){if(G)throw Error("With simple keys, single line scalar must not span more than 1024 characters");Y=!0}if(q.inFlow){if(H||$==null){if(R&&T)T();return L===""?"?":Y?`? ${L}`:L}}else if(H&&!G||$==null&&Y){if(L=`? ${L}`,Q&&!R)L+=l_.lineComment(L,q.indent,Z(Q));else if(W&&O)O();return L}if(R)Q=null;if(Y){if(Q)L+=l_.lineComment(L,q.indent,Z(Q));L=`? ${L}
36
+ ${U}:`}else if(L=`${L}:`,Q)L+=l_.lineComment(L,q.indent,Z(Q));let B,D,A;if(a.isNode($))B=!!$.spaceBefore,D=$.commentBefore,A=$.comment;else if(B=!1,D=null,A=null,$&&typeof $==="object")$=X.createNode($);if(q.implicitKey=!1,!Y&&!Q&&a.isScalar($))q.indentAtStart=L.length+1;if(W=!1,!z&&J.length>=2&&!q.inFlow&&!Y&&a.isSeq($)&&!$.flow&&!$.tag&&!$.anchor)q.indent=q.indent.substring(2);let M=!1,I=wT.stringify($,q,()=>M=!0,()=>W=!0),F=" ";if(Q||B||D){if(F=B?`
37
+ `:"",D){let K=Z(D);F+=`
38
38
  ${l_.indentComment(K,q.indent)}`}if(I===""&&!q.inFlow){if(F===`
39
- `&&D)F=`
39
+ `&&A)F=`
40
40
 
41
41
  `}else F+=`
42
42
  ${q.indent}`}else if(!Y&&a.isCollection($)){let K=I[0],w=I.indexOf(`
43
- `),E=w!==-1,t=q.inFlow??$.flow??$.items.length===0;if(E||!t){let A_=!1;if(E&&(K==="&"||K==="!")){let j=I.indexOf(" ");if(K==="&"&&j!==-1&&j<w&&I[j+1]==="!")j=I.indexOf(" ",j+1);if(j===-1||w<j)A_=!0}if(!A_)F=`
43
+ `),E=w!==-1,t=q.inFlow??$.flow??$.items.length===0;if(E||!t){let D_=!1;if(E&&(K==="&"||K==="!")){let j=I.indexOf(" ");if(K==="&"&&j!==-1&&j<w&&I[j+1]==="!")j=I.indexOf(" ",j+1);if(j===-1||w<j)D_=!0}if(!D_)F=`
44
44
  ${q.indent}`}}else if(I===""||I[0]===`
45
- `)F="";if(L+=F+I,q.inFlow){if(M&&T)T()}else if(D&&!M)L+=l_.lineComment(L,q.indent,Z(D));else if(W&&O)O();return L}K9.stringifyPair=S9});var D0=V((f9)=>{var DT=Q$("process");function C9(_,...$){if(_==="debug")console.log(...$)}function P9(_,$){if(_==="debug"||_==="warn")if(typeof DT.emitWarning==="function")DT.emitWarning($);else console.warn($)}f9.debug=C9;f9.warn=P9});var N$=V((g9)=>{var K$=S(),MT=f(),F$="<<",S$={identify:(_)=>_===F$||typeof _==="symbol"&&_.description===F$,default:"key",tag:"tag:yaml.org,2002:merge",test:/^<<$/,resolve:()=>Object.assign(new MT.Scalar(Symbol(F$)),{addToJSMap:IT}),stringify:()=>F$},b9=(_,$)=>(S$.identify($)||K$.isScalar($)&&(!$.type||$.type===MT.Scalar.PLAIN)&&S$.identify($.value))&&_?.doc.schema.tags.some((q)=>q.tag===S$.tag&&q.default);function IT(_,$,q){let T=FT(_,q);if(K$.isSeq(T))for(let O of T.items)M0(_,$,O);else if(Array.isArray(T))for(let O of T)M0(_,$,O);else M0(_,$,T)}function M0(_,$,q){let T=FT(_,q);if(!K$.isMap(T))throw Error("Merge sources must be maps or map aliases");let O=T.toJSON(null,_,Map);for(let[H,X]of O)if($ instanceof Map){if(!$.has(H))$.set(H,X)}else if($ instanceof Set)$.add(H);else if(!Object.prototype.hasOwnProperty.call($,H))Object.defineProperty($,H,{value:X,writable:!0,enumerable:!0,configurable:!0});return $}function FT(_,$){return _&&K$.isAlias($)?$.resolve(_.doc,_):$}g9.addMergeToJSMap=IT;g9.isMergeKey=b9;g9.merge=S$});var F0=V((l9)=>{var u9=D0(),ST=N$(),h9=m_(),KT=S(),I0=e();function v9(_,$,{key:q,value:T}){if(KT.isNode(q)&&q.addToJSMap)q.addToJSMap(_,$,T);else if(ST.isMergeKey(_,q))ST.addMergeToJSMap(_,$,T);else{let O=I0.toJS(q,"",_);if($ instanceof Map)$.set(O,I0.toJS(T,O,_));else if($ instanceof Set)$.add(O);else{let H=m9(q,O,_),X=I0.toJS(T,H,_);if(H in $)Object.defineProperty($,H,{value:X,writable:!0,enumerable:!0,configurable:!0});else $[H]=X}}return $}function m9(_,$,q){if($===null)return"";if(typeof $!=="object")return String($);if(KT.isNode(_)&&q?.doc){let T=h9.createStringifyContext(q.doc,{});T.anchors=new Set;for(let H of q.anchors.keys())T.anchors.add(H.anchor);T.inFlow=!0,T.inStringifyKey=!0;let O=_.toString(T);if(!q.mapKeyWarned){let H=JSON.stringify(O);if(H.length>40)H=H.substring(0,36)+'..."';u9.warn(q.doc.options.logLevel,`Keys with collection values will be stringified due to JS Object restrictions: ${H}. Set mapAsMap: true to use object keys.`),q.mapKeyWarned=!0}return O}return JSON.stringify($)}l9.addPairToJSMap=v9});var q_=V((i9)=>{var NT=k_(),d9=AT(),c9=F0(),C$=S();function s9(_,$,q){let T=NT.createNode(_,void 0,q),O=NT.createNode($,void 0,q);return new P$(T,O)}class P${constructor(_,$=null){Object.defineProperty(this,C$.NODE_TYPE,{value:C$.PAIR}),this.key=_,this.value=$}clone(_){let{key:$,value:q}=this;if(C$.isNode($))$=$.clone(_);if(C$.isNode(q))q=q.clone(_);return new P$($,q)}toJSON(_,$){let q=$?.mapAsMap?new Map:{};return c9.addPairToJSMap($,q,this)}toString(_,$,q){return _?.doc?d9.stringifyPair(this,_,$,q):JSON.stringify(this)}}i9.Pair=P$;i9.createPair=s9});var S0=V((e9)=>{var W_=S(),CT=m_(),f$=u_();function r9(_,$,q){return($.inFlow??_.flow?t9:o9)(_,$,q)}function o9({comment:_,items:$},q,{blockItemPrefix:T,flowChars:O,itemIndent:H,onChompKeep:X,onComment:U}){let{indent:J,options:{commentString:Z}}=q,z=Object.assign({},q,{indent:H,type:null}),G=!1,Q=[];for(let R=0;R<$.length;++R){let W=$[R],L=null;if(W_.isNode(W)){if(!G&&W.spaceBefore)Q.push("");if(E$(q,Q,W.commentBefore,G),W.comment)L=W.comment}else if(W_.isPair(W)){let A=W_.isNode(W.key)?W.key:null;if(A){if(!G&&A.spaceBefore)Q.push("");E$(q,Q,A.commentBefore,G)}}G=!1;let B=CT.stringify(W,z,()=>L=null,()=>G=!0);if(L)B+=f$.lineComment(B,H,Z(L));if(G&&L)G=!1;Q.push(T+B)}let Y;if(Q.length===0)Y=O.start+O.end;else{Y=Q[0];for(let R=1;R<Q.length;++R){let W=Q[R];Y+=W?`
45
+ `)F="";if(L+=F+I,q.inFlow){if(M&&T)T()}else if(A&&!M)L+=l_.lineComment(L,q.indent,Z(A));else if(W&&O)O();return L}K9.stringifyPair=S9});var A0=V((f9)=>{var AT=Q$("process");function C9(_,...$){if(_==="debug")console.log(...$)}function P9(_,$){if(_==="debug"||_==="warn")if(typeof AT.emitWarning==="function")AT.emitWarning($);else console.warn($)}f9.debug=C9;f9.warn=P9});var N$=V((g9)=>{var K$=S(),MT=f(),F$="<<",S$={identify:(_)=>_===F$||typeof _==="symbol"&&_.description===F$,default:"key",tag:"tag:yaml.org,2002:merge",test:/^<<$/,resolve:()=>Object.assign(new MT.Scalar(Symbol(F$)),{addToJSMap:IT}),stringify:()=>F$},b9=(_,$)=>(S$.identify($)||K$.isScalar($)&&(!$.type||$.type===MT.Scalar.PLAIN)&&S$.identify($.value))&&_?.doc.schema.tags.some((q)=>q.tag===S$.tag&&q.default);function IT(_,$,q){let T=FT(_,q);if(K$.isSeq(T))for(let O of T.items)M0(_,$,O);else if(Array.isArray(T))for(let O of T)M0(_,$,O);else M0(_,$,T)}function M0(_,$,q){let T=FT(_,q);if(!K$.isMap(T))throw Error("Merge sources must be maps or map aliases");let O=T.toJSON(null,_,Map);for(let[H,X]of O)if($ instanceof Map){if(!$.has(H))$.set(H,X)}else if($ instanceof Set)$.add(H);else if(!Object.prototype.hasOwnProperty.call($,H))Object.defineProperty($,H,{value:X,writable:!0,enumerable:!0,configurable:!0});return $}function FT(_,$){return _&&K$.isAlias($)?$.resolve(_.doc,_):$}g9.addMergeToJSMap=IT;g9.isMergeKey=b9;g9.merge=S$});var F0=V((l9)=>{var u9=A0(),ST=N$(),h9=m_(),KT=S(),I0=e();function v9(_,$,{key:q,value:T}){if(KT.isNode(q)&&q.addToJSMap)q.addToJSMap(_,$,T);else if(ST.isMergeKey(_,q))ST.addMergeToJSMap(_,$,T);else{let O=I0.toJS(q,"",_);if($ instanceof Map)$.set(O,I0.toJS(T,O,_));else if($ instanceof Set)$.add(O);else{let H=m9(q,O,_),X=I0.toJS(T,H,_);if(H in $)Object.defineProperty($,H,{value:X,writable:!0,enumerable:!0,configurable:!0});else $[H]=X}}return $}function m9(_,$,q){if($===null)return"";if(typeof $!=="object")return String($);if(KT.isNode(_)&&q?.doc){let T=h9.createStringifyContext(q.doc,{});T.anchors=new Set;for(let H of q.anchors.keys())T.anchors.add(H.anchor);T.inFlow=!0,T.inStringifyKey=!0;let O=_.toString(T);if(!q.mapKeyWarned){let H=JSON.stringify(O);if(H.length>40)H=H.substring(0,36)+'..."';u9.warn(q.doc.options.logLevel,`Keys with collection values will be stringified due to JS Object restrictions: ${H}. Set mapAsMap: true to use object keys.`),q.mapKeyWarned=!0}return O}return JSON.stringify($)}l9.addPairToJSMap=v9});var q_=V((i9)=>{var NT=k_(),d9=DT(),c9=F0(),C$=S();function s9(_,$,q){let T=NT.createNode(_,void 0,q),O=NT.createNode($,void 0,q);return new P$(T,O)}class P${constructor(_,$=null){Object.defineProperty(this,C$.NODE_TYPE,{value:C$.PAIR}),this.key=_,this.value=$}clone(_){let{key:$,value:q}=this;if(C$.isNode($))$=$.clone(_);if(C$.isNode(q))q=q.clone(_);return new P$($,q)}toJSON(_,$){let q=$?.mapAsMap?new Map:{};return c9.addPairToJSMap($,q,this)}toString(_,$,q){return _?.doc?d9.stringifyPair(this,_,$,q):JSON.stringify(this)}}i9.Pair=P$;i9.createPair=s9});var S0=V((e9)=>{var W_=S(),CT=m_(),f$=u_();function r9(_,$,q){return($.inFlow??_.flow?t9:o9)(_,$,q)}function o9({comment:_,items:$},q,{blockItemPrefix:T,flowChars:O,itemIndent:H,onChompKeep:X,onComment:U}){let{indent:J,options:{commentString:Z}}=q,z=Object.assign({},q,{indent:H,type:null}),G=!1,Q=[];for(let R=0;R<$.length;++R){let W=$[R],L=null;if(W_.isNode(W)){if(!G&&W.spaceBefore)Q.push("");if(E$(q,Q,W.commentBefore,G),W.comment)L=W.comment}else if(W_.isPair(W)){let D=W_.isNode(W.key)?W.key:null;if(D){if(!G&&D.spaceBefore)Q.push("");E$(q,Q,D.commentBefore,G)}}G=!1;let B=CT.stringify(W,z,()=>L=null,()=>G=!0);if(L)B+=f$.lineComment(B,H,Z(L));if(G&&L)G=!1;Q.push(T+B)}let Y;if(Q.length===0)Y=O.start+O.end;else{Y=Q[0];for(let R=1;R<Q.length;++R){let W=Q[R];Y+=W?`
46
46
  ${J}${W}`:`
47
47
  `}}if(_){if(Y+=`
48
- `+f$.indentComment(Z(_),J),U)U()}else if(G&&X)X();return Y}function t9({items:_},$,{flowChars:q,itemIndent:T}){let{indent:O,indentStep:H,flowCollectionPadding:X,options:{commentString:U}}=$;T+=H;let J=Object.assign({},$,{indent:T,inFlow:!0,type:null}),Z=!1,z=0,G=[];for(let R=0;R<_.length;++R){let W=_[R],L=null;if(W_.isNode(W)){if(W.spaceBefore)G.push("");if(E$($,G,W.commentBefore,!1),W.comment)L=W.comment}else if(W_.isPair(W)){let A=W_.isNode(W.key)?W.key:null;if(A){if(A.spaceBefore)G.push("");if(E$($,G,A.commentBefore,!1),A.comment)Z=!0}let D=W_.isNode(W.value)?W.value:null;if(D){if(D.comment)L=D.comment;if(D.commentBefore)Z=!0}else if(W.value==null&&A?.comment)L=A.comment}if(L)Z=!0;let B=CT.stringify(W,J,()=>L=null);if(Z||(Z=G.length>z||B.includes(`
49
- `)),R<_.length-1)B+=",";else if($.options.trailingComma){if($.options.lineWidth>0)Z||(Z=G.reduce((A,D)=>A+D.length+2,2)+(B.length+2)>$.options.lineWidth);if(Z)B+=","}if(L)B+=f$.lineComment(B,T,U(L));G.push(B),z=G.length}let{start:Q,end:Y}=q;if(G.length===0)return Q+Y;else{if(!Z){let R=G.reduce((W,L)=>W+L.length+2,2);Z=$.options.lineWidth>0&&R>$.options.lineWidth}if(Z){let R=Q;for(let W of G)R+=W?`
48
+ `+f$.indentComment(Z(_),J),U)U()}else if(G&&X)X();return Y}function t9({items:_},$,{flowChars:q,itemIndent:T}){let{indent:O,indentStep:H,flowCollectionPadding:X,options:{commentString:U}}=$;T+=H;let J=Object.assign({},$,{indent:T,inFlow:!0,type:null}),Z=!1,z=0,G=[];for(let R=0;R<_.length;++R){let W=_[R],L=null;if(W_.isNode(W)){if(W.spaceBefore)G.push("");if(E$($,G,W.commentBefore,!1),W.comment)L=W.comment}else if(W_.isPair(W)){let D=W_.isNode(W.key)?W.key:null;if(D){if(D.spaceBefore)G.push("");if(E$($,G,D.commentBefore,!1),D.comment)Z=!0}let A=W_.isNode(W.value)?W.value:null;if(A){if(A.comment)L=A.comment;if(A.commentBefore)Z=!0}else if(W.value==null&&D?.comment)L=D.comment}if(L)Z=!0;let B=CT.stringify(W,J,()=>L=null);if(Z||(Z=G.length>z||B.includes(`
49
+ `)),R<_.length-1)B+=",";else if($.options.trailingComma){if($.options.lineWidth>0)Z||(Z=G.reduce((D,A)=>D+A.length+2,2)+(B.length+2)>$.options.lineWidth);if(Z)B+=","}if(L)B+=f$.lineComment(B,T,U(L));G.push(B),z=G.length}let{start:Q,end:Y}=q;if(G.length===0)return Q+Y;else{if(!Z){let R=G.reduce((W,L)=>W+L.length+2,2);Z=$.options.lineWidth>0&&R>$.options.lineWidth}if(Z){let R=Q;for(let W of G)R+=W?`
50
50
  ${H}${O}${W}`:`
51
51
  `;return`${R}
52
- ${O}${Y}`}else return`${Q}${X}${G.join(" ")}${X}${Y}`}}function E$({indent:_,options:{commentString:$}},q,T,O){if(T&&O)T=T.replace(/^\n+/,"");if(T){let H=f$.indentComment($(T),_);q.push(H.trimStart())}}e9.stringifyCollection=r9});var O_=V((HX)=>{var $X=S0(),qX=F0(),TX=A$(),T_=S(),j$=q_(),OX=f();function p_(_,$){let q=T_.isScalar($)?$.value:$;for(let T of _)if(T_.isPair(T)){if(T.key===$||T.key===q)return T;if(T_.isScalar(T.key)&&T.key.value===q)return T}return}class PT extends TX.Collection{static get tagName(){return"tag:yaml.org,2002:map"}constructor(_){super(T_.MAP,_);this.items=[]}static from(_,$,q){let{keepUndefined:T,replacer:O}=q,H=new this(_),X=(U,J)=>{if(typeof O==="function")J=O.call($,U,J);else if(Array.isArray(O)&&!O.includes(U))return;if(J!==void 0||T)H.items.push(j$.createPair(U,J,q))};if($ instanceof Map)for(let[U,J]of $)X(U,J);else if($&&typeof $==="object")for(let U of Object.keys($))X(U,$[U]);if(typeof _.sortMapEntries==="function")H.items.sort(_.sortMapEntries);return H}add(_,$){let q;if(T_.isPair(_))q=_;else if(!_||typeof _!=="object"||!("key"in _))q=new j$.Pair(_,_?.value);else q=new j$.Pair(_.key,_.value);let T=p_(this.items,q.key),O=this.schema?.sortMapEntries;if(T){if(!$)throw Error(`Key ${q.key} already set`);if(T_.isScalar(T.value)&&OX.isScalarValue(q.value))T.value.value=q.value;else T.value=q.value}else if(O){let H=this.items.findIndex((X)=>O(q,X)<0);if(H===-1)this.items.push(q);else this.items.splice(H,0,q)}else this.items.push(q)}delete(_){let $=p_(this.items,_);if(!$)return!1;return this.items.splice(this.items.indexOf($),1).length>0}get(_,$){let T=p_(this.items,_)?.value;return(!$&&T_.isScalar(T)?T.value:T)??void 0}has(_){return!!p_(this.items,_)}set(_,$){this.add(new j$.Pair(_,$),!0)}toJSON(_,$,q){let T=q?new q:$?.mapAsMap?new Map:{};if($?.onCreate)$.onCreate(T);for(let O of this.items)qX.addPairToJSMap($,T,O);return T}toString(_,$,q){if(!_)return JSON.stringify(this);for(let T of this.items)if(!T_.isPair(T))throw Error(`Map items must all be pairs; found ${JSON.stringify(T)} instead`);if(!_.allNullValues&&this.hasAllNullValues(!1))_=Object.assign({},_,{allNullValues:!0});return $X.stringifyCollection(this,_,{blockItemPrefix:"",flowChars:{start:"{",end:"}"},itemIndent:_.indent||"",onChompKeep:q,onComment:$})}}HX.YAMLMap=PT;HX.findPair=p_});var S_=V((zX)=>{var JX=S(),fT=O_(),ZX={collection:"map",default:!0,nodeClass:fT.YAMLMap,tag:"tag:yaml.org,2002:map",resolve(_,$){if(!JX.isMap(_))$("Expected a mapping for this tag");return _},createNode:(_,$,q)=>fT.YAMLMap.from(_,$,q)};zX.map=ZX});var H_=V((VX)=>{var QX=k_(),WX=S0(),RX=A$(),g$=S(),YX=f(),LX=e();class ET extends RX.Collection{static get tagName(){return"tag:yaml.org,2002:seq"}constructor(_){super(g$.SEQ,_);this.items=[]}add(_){this.items.push(_)}delete(_){let $=b$(_);if(typeof $!=="number")return!1;return this.items.splice($,1).length>0}get(_,$){let q=b$(_);if(typeof q!=="number")return;let T=this.items[q];return!$&&g$.isScalar(T)?T.value:T}has(_){let $=b$(_);return typeof $==="number"&&$<this.items.length}set(_,$){let q=b$(_);if(typeof q!=="number")throw Error(`Expected a valid index, not ${_}.`);let T=this.items[q];if(g$.isScalar(T)&&YX.isScalarValue($))T.value=$;else this.items[q]=$}toJSON(_,$){let q=[];if($?.onCreate)$.onCreate(q);let T=0;for(let O of this.items)q.push(LX.toJS(O,String(T++),$));return q}toString(_,$,q){if(!_)return JSON.stringify(this);return WX.stringifyCollection(this,_,{blockItemPrefix:"- ",flowChars:{start:"[",end:"]"},itemIndent:(_.indent||"")+" ",onChompKeep:q,onComment:$})}static from(_,$,q){let{replacer:T}=q,O=new this(_);if($&&Symbol.iterator in Object($)){let H=0;for(let X of $){if(typeof T==="function"){let U=$ instanceof Set?X:String(H++);X=T.call($,U,X)}O.items.push(QX.createNode(X,void 0,q))}}return O}}function b$(_){let $=g$.isScalar(_)?_.value:_;if($&&typeof $==="string")$=Number($);return typeof $==="number"&&Number.isInteger($)&&$>=0?$:null}VX.YAMLSeq=ET});var K_=V((DX)=>{var wX=S(),jT=H_(),AX={collection:"seq",default:!0,nodeClass:jT.YAMLSeq,tag:"tag:yaml.org,2002:seq",resolve(_,$){if(!wX.isSeq(_))$("Expected a sequence for this tag");return _},createNode:(_,$,q)=>jT.YAMLSeq.from(_,$,q)};DX.seq=AX});var d_=V((SX)=>{var IX=v_(),FX={identify:(_)=>typeof _==="string",default:!0,tag:"tag:yaml.org,2002:str",resolve:(_)=>_,stringify(_,$,q,T){return $=Object.assign({actualString:!0},$),IX.stringifyString(_,$,q,T)}};SX.string=FX});var y$=V((NX)=>{var bT=f(),gT={identify:(_)=>_==null,createNode:()=>new bT.Scalar(null),default:!0,tag:"tag:yaml.org,2002:null",test:/^(?:~|[Nn]ull|NULL)?$/,resolve:()=>new bT.Scalar(null),stringify:({source:_},$)=>typeof _==="string"&&gT.test.test(_)?_:$.options.nullStr};NX.nullTag=gT});var K0=V((fX)=>{var PX=f(),yT={identify:(_)=>typeof _==="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:[Tt]rue|TRUE|[Ff]alse|FALSE)$/,resolve:(_)=>new PX.Scalar(_[0]==="t"||_[0]==="T"),stringify({source:_,value:$},q){if(_&&yT.test.test(_)){let T=_[0]==="t"||_[0]==="T";if($===T)return _}return $?q.options.trueStr:q.options.falseStr}};fX.boolTag=yT});var N_=V((bX)=>{function jX({format:_,minFractionDigits:$,tag:q,value:T}){if(typeof T==="bigint")return String(T);let O=typeof T==="number"?T:Number(T);if(!isFinite(O))return isNaN(O)?".nan":O<0?"-.inf":".inf";let H=Object.is(T,-0)?"-0":JSON.stringify(T);if(!_&&$&&(!q||q==="tag:yaml.org,2002:float")&&/^-?\d/.test(H)&&!H.includes("e")){let X=H.indexOf(".");if(X<0)X=H.length,H+=".";let U=$-(H.length-X-1);while(U-- >0)H+="0"}return H}bX.stringifyNumber=jX});var C0=V((hX)=>{var yX=f(),N0=N_(),xX={identify:(_)=>typeof _==="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^(?:[-+]?\.(?:inf|Inf|INF)|\.nan|\.NaN|\.NAN)$/,resolve:(_)=>_.slice(-3).toLowerCase()==="nan"?NaN:_[0]==="-"?Number.NEGATIVE_INFINITY:Number.POSITIVE_INFINITY,stringify:N0.stringifyNumber},kX={identify:(_)=>typeof _==="number",default:!0,tag:"tag:yaml.org,2002:float",format:"EXP",test:/^[-+]?(?:\.[0-9]+|[0-9]+(?:\.[0-9]*)?)[eE][-+]?[0-9]+$/,resolve:(_)=>parseFloat(_),stringify(_){let $=Number(_.value);return isFinite($)?$.toExponential():N0.stringifyNumber(_)}},uX={identify:(_)=>typeof _==="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:\.[0-9]+|[0-9]+\.[0-9]*)$/,resolve(_){let $=new yX.Scalar(parseFloat(_)),q=_.indexOf(".");if(q!==-1&&_[_.length-1]==="0")$.minFractionDigits=_.length-q-1;return $},stringify:N0.stringifyNumber};hX.float=uX;hX.floatExp=kX;hX.floatNaN=xX});var f0=V((sX)=>{var xT=N_(),x$=(_)=>typeof _==="bigint"||Number.isInteger(_),P0=(_,$,q,{intAsBigInt:T})=>T?BigInt(_):parseInt(_.substring($),q);function kT(_,$,q){let{value:T}=_;if(x$(T)&&T>=0)return q+T.toString($);return xT.stringifyNumber(_)}var pX={identify:(_)=>x$(_)&&_>=0,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^0o[0-7]+$/,resolve:(_,$,q)=>P0(_,2,8,q),stringify:(_)=>kT(_,8,"0o")},dX={identify:x$,default:!0,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9]+$/,resolve:(_,$,q)=>P0(_,0,10,q),stringify:xT.stringifyNumber},cX={identify:(_)=>x$(_)&&_>=0,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^0x[0-9a-fA-F]+$/,resolve:(_,$,q)=>P0(_,2,16,q),stringify:(_)=>kT(_,16,"0x")};sX.int=dX;sX.intHex=cX;sX.intOct=pX});var uT=V((q4)=>{var rX=S_(),oX=y$(),tX=K_(),eX=d_(),_4=K0(),E0=C0(),j0=f0(),$4=[rX.map,tX.seq,eX.string,oX.nullTag,_4.boolTag,j0.intOct,j0.int,j0.intHex,E0.floatNaN,E0.floatExp,E0.float];q4.schema=$4});var vT=V((z4)=>{var O4=f(),H4=S_(),X4=K_();function hT(_){return typeof _==="bigint"||Number.isInteger(_)}var k$=({value:_})=>JSON.stringify(_),U4=[{identify:(_)=>typeof _==="string",default:!0,tag:"tag:yaml.org,2002:str",resolve:(_)=>_,stringify:k$},{identify:(_)=>_==null,createNode:()=>new O4.Scalar(null),default:!0,tag:"tag:yaml.org,2002:null",test:/^null$/,resolve:()=>null,stringify:k$},{identify:(_)=>typeof _==="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^true$|^false$/,resolve:(_)=>_==="true",stringify:k$},{identify:hT,default:!0,tag:"tag:yaml.org,2002:int",test:/^-?(?:0|[1-9][0-9]*)$/,resolve:(_,$,{intAsBigInt:q})=>q?BigInt(_):parseInt(_,10),stringify:({value:_})=>hT(_)?_.toString():JSON.stringify(_)},{identify:(_)=>typeof _==="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^-?(?:0|[1-9][0-9]*)(?:\.[0-9]*)?(?:[eE][-+]?[0-9]+)?$/,resolve:(_)=>parseFloat(_),stringify:k$}],J4={default:!0,tag:"",test:/^/,resolve(_,$){return $(`Unresolved plain scalar ${JSON.stringify(_)}`),_}},Z4=[H4.map,X4.seq].concat(U4,J4);z4.schema=Z4});var g0=V((R4)=>{var c_=Q$("buffer"),b0=f(),Q4=v_(),W4={identify:(_)=>_ instanceof Uint8Array,default:!1,tag:"tag:yaml.org,2002:binary",resolve(_,$){if(typeof c_.Buffer==="function")return c_.Buffer.from(_,"base64");else if(typeof atob==="function"){let q=atob(_.replace(/[\n\r]/g,"")),T=new Uint8Array(q.length);for(let O=0;O<q.length;++O)T[O]=q.charCodeAt(O);return T}else return $("This environment does not support reading binary tags; either Buffer or atob is required"),_},stringify({comment:_,type:$,value:q},T,O,H){if(!q)return"";let X=q,U;if(typeof c_.Buffer==="function")U=X instanceof c_.Buffer?X.toString("base64"):c_.Buffer.from(X.buffer).toString("base64");else if(typeof btoa==="function"){let J="";for(let Z=0;Z<X.length;++Z)J+=String.fromCharCode(X[Z]);U=btoa(J)}else throw Error("This environment does not support writing binary tags; either Buffer or btoa is required");if($??($=b0.Scalar.BLOCK_LITERAL),$!==b0.Scalar.QUOTE_DOUBLE){let J=Math.max(T.options.lineWidth-T.indent.length,T.options.minContentWidth),Z=Math.ceil(U.length/J),z=Array(Z);for(let G=0,Q=0;G<Z;++G,Q+=J)z[G]=U.substr(Q,J);U=z.join($===b0.Scalar.BLOCK_LITERAL?`
52
+ ${O}${Y}`}else return`${Q}${X}${G.join(" ")}${X}${Y}`}}function E$({indent:_,options:{commentString:$}},q,T,O){if(T&&O)T=T.replace(/^\n+/,"");if(T){let H=f$.indentComment($(T),_);q.push(H.trimStart())}}e9.stringifyCollection=r9});var O_=V((HX)=>{var $X=S0(),qX=F0(),TX=D$(),T_=S(),j$=q_(),OX=f();function p_(_,$){let q=T_.isScalar($)?$.value:$;for(let T of _)if(T_.isPair(T)){if(T.key===$||T.key===q)return T;if(T_.isScalar(T.key)&&T.key.value===q)return T}return}class PT extends TX.Collection{static get tagName(){return"tag:yaml.org,2002:map"}constructor(_){super(T_.MAP,_);this.items=[]}static from(_,$,q){let{keepUndefined:T,replacer:O}=q,H=new this(_),X=(U,J)=>{if(typeof O==="function")J=O.call($,U,J);else if(Array.isArray(O)&&!O.includes(U))return;if(J!==void 0||T)H.items.push(j$.createPair(U,J,q))};if($ instanceof Map)for(let[U,J]of $)X(U,J);else if($&&typeof $==="object")for(let U of Object.keys($))X(U,$[U]);if(typeof _.sortMapEntries==="function")H.items.sort(_.sortMapEntries);return H}add(_,$){let q;if(T_.isPair(_))q=_;else if(!_||typeof _!=="object"||!("key"in _))q=new j$.Pair(_,_?.value);else q=new j$.Pair(_.key,_.value);let T=p_(this.items,q.key),O=this.schema?.sortMapEntries;if(T){if(!$)throw Error(`Key ${q.key} already set`);if(T_.isScalar(T.value)&&OX.isScalarValue(q.value))T.value.value=q.value;else T.value=q.value}else if(O){let H=this.items.findIndex((X)=>O(q,X)<0);if(H===-1)this.items.push(q);else this.items.splice(H,0,q)}else this.items.push(q)}delete(_){let $=p_(this.items,_);if(!$)return!1;return this.items.splice(this.items.indexOf($),1).length>0}get(_,$){let T=p_(this.items,_)?.value;return(!$&&T_.isScalar(T)?T.value:T)??void 0}has(_){return!!p_(this.items,_)}set(_,$){this.add(new j$.Pair(_,$),!0)}toJSON(_,$,q){let T=q?new q:$?.mapAsMap?new Map:{};if($?.onCreate)$.onCreate(T);for(let O of this.items)qX.addPairToJSMap($,T,O);return T}toString(_,$,q){if(!_)return JSON.stringify(this);for(let T of this.items)if(!T_.isPair(T))throw Error(`Map items must all be pairs; found ${JSON.stringify(T)} instead`);if(!_.allNullValues&&this.hasAllNullValues(!1))_=Object.assign({},_,{allNullValues:!0});return $X.stringifyCollection(this,_,{blockItemPrefix:"",flowChars:{start:"{",end:"}"},itemIndent:_.indent||"",onChompKeep:q,onComment:$})}}HX.YAMLMap=PT;HX.findPair=p_});var S_=V((zX)=>{var JX=S(),fT=O_(),ZX={collection:"map",default:!0,nodeClass:fT.YAMLMap,tag:"tag:yaml.org,2002:map",resolve(_,$){if(!JX.isMap(_))$("Expected a mapping for this tag");return _},createNode:(_,$,q)=>fT.YAMLMap.from(_,$,q)};zX.map=ZX});var H_=V((VX)=>{var QX=k_(),WX=S0(),RX=D$(),g$=S(),YX=f(),LX=e();class ET extends RX.Collection{static get tagName(){return"tag:yaml.org,2002:seq"}constructor(_){super(g$.SEQ,_);this.items=[]}add(_){this.items.push(_)}delete(_){let $=b$(_);if(typeof $!=="number")return!1;return this.items.splice($,1).length>0}get(_,$){let q=b$(_);if(typeof q!=="number")return;let T=this.items[q];return!$&&g$.isScalar(T)?T.value:T}has(_){let $=b$(_);return typeof $==="number"&&$<this.items.length}set(_,$){let q=b$(_);if(typeof q!=="number")throw Error(`Expected a valid index, not ${_}.`);let T=this.items[q];if(g$.isScalar(T)&&YX.isScalarValue($))T.value=$;else this.items[q]=$}toJSON(_,$){let q=[];if($?.onCreate)$.onCreate(q);let T=0;for(let O of this.items)q.push(LX.toJS(O,String(T++),$));return q}toString(_,$,q){if(!_)return JSON.stringify(this);return WX.stringifyCollection(this,_,{blockItemPrefix:"- ",flowChars:{start:"[",end:"]"},itemIndent:(_.indent||"")+" ",onChompKeep:q,onComment:$})}static from(_,$,q){let{replacer:T}=q,O=new this(_);if($&&Symbol.iterator in Object($)){let H=0;for(let X of $){if(typeof T==="function"){let U=$ instanceof Set?X:String(H++);X=T.call($,U,X)}O.items.push(QX.createNode(X,void 0,q))}}return O}}function b$(_){let $=g$.isScalar(_)?_.value:_;if($&&typeof $==="string")$=Number($);return typeof $==="number"&&Number.isInteger($)&&$>=0?$:null}VX.YAMLSeq=ET});var K_=V((AX)=>{var wX=S(),jT=H_(),DX={collection:"seq",default:!0,nodeClass:jT.YAMLSeq,tag:"tag:yaml.org,2002:seq",resolve(_,$){if(!wX.isSeq(_))$("Expected a sequence for this tag");return _},createNode:(_,$,q)=>jT.YAMLSeq.from(_,$,q)};AX.seq=DX});var d_=V((SX)=>{var IX=v_(),FX={identify:(_)=>typeof _==="string",default:!0,tag:"tag:yaml.org,2002:str",resolve:(_)=>_,stringify(_,$,q,T){return $=Object.assign({actualString:!0},$),IX.stringifyString(_,$,q,T)}};SX.string=FX});var y$=V((NX)=>{var bT=f(),gT={identify:(_)=>_==null,createNode:()=>new bT.Scalar(null),default:!0,tag:"tag:yaml.org,2002:null",test:/^(?:~|[Nn]ull|NULL)?$/,resolve:()=>new bT.Scalar(null),stringify:({source:_},$)=>typeof _==="string"&&gT.test.test(_)?_:$.options.nullStr};NX.nullTag=gT});var K0=V((fX)=>{var PX=f(),yT={identify:(_)=>typeof _==="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:[Tt]rue|TRUE|[Ff]alse|FALSE)$/,resolve:(_)=>new PX.Scalar(_[0]==="t"||_[0]==="T"),stringify({source:_,value:$},q){if(_&&yT.test.test(_)){let T=_[0]==="t"||_[0]==="T";if($===T)return _}return $?q.options.trueStr:q.options.falseStr}};fX.boolTag=yT});var N_=V((bX)=>{function jX({format:_,minFractionDigits:$,tag:q,value:T}){if(typeof T==="bigint")return String(T);let O=typeof T==="number"?T:Number(T);if(!isFinite(O))return isNaN(O)?".nan":O<0?"-.inf":".inf";let H=Object.is(T,-0)?"-0":JSON.stringify(T);if(!_&&$&&(!q||q==="tag:yaml.org,2002:float")&&/^-?\d/.test(H)&&!H.includes("e")){let X=H.indexOf(".");if(X<0)X=H.length,H+=".";let U=$-(H.length-X-1);while(U-- >0)H+="0"}return H}bX.stringifyNumber=jX});var C0=V((hX)=>{var yX=f(),N0=N_(),xX={identify:(_)=>typeof _==="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^(?:[-+]?\.(?:inf|Inf|INF)|\.nan|\.NaN|\.NAN)$/,resolve:(_)=>_.slice(-3).toLowerCase()==="nan"?NaN:_[0]==="-"?Number.NEGATIVE_INFINITY:Number.POSITIVE_INFINITY,stringify:N0.stringifyNumber},kX={identify:(_)=>typeof _==="number",default:!0,tag:"tag:yaml.org,2002:float",format:"EXP",test:/^[-+]?(?:\.[0-9]+|[0-9]+(?:\.[0-9]*)?)[eE][-+]?[0-9]+$/,resolve:(_)=>parseFloat(_),stringify(_){let $=Number(_.value);return isFinite($)?$.toExponential():N0.stringifyNumber(_)}},uX={identify:(_)=>typeof _==="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:\.[0-9]+|[0-9]+\.[0-9]*)$/,resolve(_){let $=new yX.Scalar(parseFloat(_)),q=_.indexOf(".");if(q!==-1&&_[_.length-1]==="0")$.minFractionDigits=_.length-q-1;return $},stringify:N0.stringifyNumber};hX.float=uX;hX.floatExp=kX;hX.floatNaN=xX});var f0=V((sX)=>{var xT=N_(),x$=(_)=>typeof _==="bigint"||Number.isInteger(_),P0=(_,$,q,{intAsBigInt:T})=>T?BigInt(_):parseInt(_.substring($),q);function kT(_,$,q){let{value:T}=_;if(x$(T)&&T>=0)return q+T.toString($);return xT.stringifyNumber(_)}var pX={identify:(_)=>x$(_)&&_>=0,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^0o[0-7]+$/,resolve:(_,$,q)=>P0(_,2,8,q),stringify:(_)=>kT(_,8,"0o")},dX={identify:x$,default:!0,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9]+$/,resolve:(_,$,q)=>P0(_,0,10,q),stringify:xT.stringifyNumber},cX={identify:(_)=>x$(_)&&_>=0,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^0x[0-9a-fA-F]+$/,resolve:(_,$,q)=>P0(_,2,16,q),stringify:(_)=>kT(_,16,"0x")};sX.int=dX;sX.intHex=cX;sX.intOct=pX});var uT=V((q4)=>{var rX=S_(),oX=y$(),tX=K_(),eX=d_(),_4=K0(),E0=C0(),j0=f0(),$4=[rX.map,tX.seq,eX.string,oX.nullTag,_4.boolTag,j0.intOct,j0.int,j0.intHex,E0.floatNaN,E0.floatExp,E0.float];q4.schema=$4});var vT=V((z4)=>{var O4=f(),H4=S_(),X4=K_();function hT(_){return typeof _==="bigint"||Number.isInteger(_)}var k$=({value:_})=>JSON.stringify(_),U4=[{identify:(_)=>typeof _==="string",default:!0,tag:"tag:yaml.org,2002:str",resolve:(_)=>_,stringify:k$},{identify:(_)=>_==null,createNode:()=>new O4.Scalar(null),default:!0,tag:"tag:yaml.org,2002:null",test:/^null$/,resolve:()=>null,stringify:k$},{identify:(_)=>typeof _==="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^true$|^false$/,resolve:(_)=>_==="true",stringify:k$},{identify:hT,default:!0,tag:"tag:yaml.org,2002:int",test:/^-?(?:0|[1-9][0-9]*)$/,resolve:(_,$,{intAsBigInt:q})=>q?BigInt(_):parseInt(_,10),stringify:({value:_})=>hT(_)?_.toString():JSON.stringify(_)},{identify:(_)=>typeof _==="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^-?(?:0|[1-9][0-9]*)(?:\.[0-9]*)?(?:[eE][-+]?[0-9]+)?$/,resolve:(_)=>parseFloat(_),stringify:k$}],J4={default:!0,tag:"",test:/^/,resolve(_,$){return $(`Unresolved plain scalar ${JSON.stringify(_)}`),_}},Z4=[H4.map,X4.seq].concat(U4,J4);z4.schema=Z4});var g0=V((R4)=>{var c_=Q$("buffer"),b0=f(),Q4=v_(),W4={identify:(_)=>_ instanceof Uint8Array,default:!1,tag:"tag:yaml.org,2002:binary",resolve(_,$){if(typeof c_.Buffer==="function")return c_.Buffer.from(_,"base64");else if(typeof atob==="function"){let q=atob(_.replace(/[\n\r]/g,"")),T=new Uint8Array(q.length);for(let O=0;O<q.length;++O)T[O]=q.charCodeAt(O);return T}else return $("This environment does not support reading binary tags; either Buffer or atob is required"),_},stringify({comment:_,type:$,value:q},T,O,H){if(!q)return"";let X=q,U;if(typeof c_.Buffer==="function")U=X instanceof c_.Buffer?X.toString("base64"):c_.Buffer.from(X.buffer).toString("base64");else if(typeof btoa==="function"){let J="";for(let Z=0;Z<X.length;++Z)J+=String.fromCharCode(X[Z]);U=btoa(J)}else throw Error("This environment does not support writing binary tags; either Buffer or btoa is required");if($??($=b0.Scalar.BLOCK_LITERAL),$!==b0.Scalar.QUOTE_DOUBLE){let J=Math.max(T.options.lineWidth-T.indent.length,T.options.minContentWidth),Z=Math.ceil(U.length/J),z=Array(Z);for(let G=0,Q=0;G<Z;++G,Q+=J)z[G]=U.substr(Q,J);U=z.join($===b0.Scalar.BLOCK_LITERAL?`
53
53
  `:" ")}return Q4.stringifyString({comment:_,type:$,value:U},T,O,H)}};R4.binary=W4});var h$=V((w4)=>{var u$=S(),y0=q_(),L4=f(),V4=H_();function mT(_,$){if(u$.isSeq(_))for(let q=0;q<_.items.length;++q){let T=_.items[q];if(u$.isPair(T))continue;else if(u$.isMap(T)){if(T.items.length>1)$("Each pair must have its own sequence indicator");let O=T.items[0]||new y0.Pair(new L4.Scalar(null));if(T.commentBefore)O.key.commentBefore=O.key.commentBefore?`${T.commentBefore}
54
54
  ${O.key.commentBefore}`:T.commentBefore;if(T.comment){let H=O.value??O.key;H.comment=H.comment?`${T.comment}
55
- ${H.comment}`:T.comment}T=O}_.items[q]=u$.isPair(T)?T:new y0.Pair(T)}else $("Expected a sequence for this tag");return _}function lT(_,$,q){let{replacer:T}=q,O=new V4.YAMLSeq(_);O.tag="tag:yaml.org,2002:pairs";let H=0;if($&&Symbol.iterator in Object($))for(let X of $){if(typeof T==="function")X=T.call($,String(H++),X);let U,J;if(Array.isArray(X))if(X.length===2)U=X[0],J=X[1];else throw TypeError(`Expected [key, value] tuple: ${X}`);else if(X&&X instanceof Object){let Z=Object.keys(X);if(Z.length===1)U=Z[0],J=X[U];else throw TypeError(`Expected tuple with one key, not ${Z.length} keys`)}else U=X;O.items.push(y0.createPair(U,J,q))}return O}var B4={collection:"seq",default:!1,tag:"tag:yaml.org,2002:pairs",resolve:mT,createNode:lT};w4.createPairs=lT;w4.pairs=B4;w4.resolvePairs=mT});var k0=V((S4)=>{var pT=S(),x0=e(),s_=O_(),I4=H_(),dT=h$();class R_ extends I4.YAMLSeq{constructor(){super();this.add=s_.YAMLMap.prototype.add.bind(this),this.delete=s_.YAMLMap.prototype.delete.bind(this),this.get=s_.YAMLMap.prototype.get.bind(this),this.has=s_.YAMLMap.prototype.has.bind(this),this.set=s_.YAMLMap.prototype.set.bind(this),this.tag=R_.tag}toJSON(_,$){if(!$)return super.toJSON(_);let q=new Map;if($?.onCreate)$.onCreate(q);for(let T of this.items){let O,H;if(pT.isPair(T))O=x0.toJS(T.key,"",$),H=x0.toJS(T.value,O,$);else O=x0.toJS(T,"",$);if(q.has(O))throw Error("Ordered maps must not include duplicate keys");q.set(O,H)}return q}static from(_,$,q){let T=dT.createPairs(_,$,q),O=new this;return O.items=T.items,O}}R_.tag="tag:yaml.org,2002:omap";var F4={collection:"seq",identify:(_)=>_ instanceof Map,nodeClass:R_,default:!1,tag:"tag:yaml.org,2002:omap",resolve(_,$){let q=dT.resolvePairs(_,$),T=[];for(let{key:O}of q.items)if(pT.isScalar(O))if(T.includes(O.value))$(`Ordered maps must not include duplicate keys: ${O.value}`);else T.push(O.value);return Object.assign(new R_,q)},createNode:(_,$,q)=>R_.from(_,$,q)};S4.YAMLOMap=R_;S4.omap=F4});var aT=V((C4)=>{var cT=f();function sT({value:_,source:$},q){if($&&(_?iT:nT).test.test($))return $;return _?q.options.trueStr:q.options.falseStr}var iT={identify:(_)=>_===!0,default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:Y|y|[Yy]es|YES|[Tt]rue|TRUE|[Oo]n|ON)$/,resolve:()=>new cT.Scalar(!0),stringify:sT},nT={identify:(_)=>_===!1,default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:N|n|[Nn]o|NO|[Ff]alse|FALSE|[Oo]ff|OFF)$/,resolve:()=>new cT.Scalar(!1),stringify:sT};C4.falseTag=nT;C4.trueTag=iT});var rT=V((y4)=>{var E4=f(),u0=N_(),j4={identify:(_)=>typeof _==="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^(?:[-+]?\.(?:inf|Inf|INF)|\.nan|\.NaN|\.NAN)$/,resolve:(_)=>_.slice(-3).toLowerCase()==="nan"?NaN:_[0]==="-"?Number.NEGATIVE_INFINITY:Number.POSITIVE_INFINITY,stringify:u0.stringifyNumber},b4={identify:(_)=>typeof _==="number",default:!0,tag:"tag:yaml.org,2002:float",format:"EXP",test:/^[-+]?(?:[0-9][0-9_]*)?(?:\.[0-9_]*)?[eE][-+]?[0-9]+$/,resolve:(_)=>parseFloat(_.replace(/_/g,"")),stringify(_){let $=Number(_.value);return isFinite($)?$.toExponential():u0.stringifyNumber(_)}},g4={identify:(_)=>typeof _==="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:[0-9][0-9_]*)?\.[0-9_]*$/,resolve(_){let $=new E4.Scalar(parseFloat(_.replace(/_/g,""))),q=_.indexOf(".");if(q!==-1){let T=_.substring(q+1).replace(/_/g,"");if(T[T.length-1]==="0")$.minFractionDigits=T.length}return $},stringify:u0.stringifyNumber};y4.float=g4;y4.floatExp=b4;y4.floatNaN=j4});var tT=V((p4)=>{var oT=N_(),i_=(_)=>typeof _==="bigint"||Number.isInteger(_);function v$(_,$,q,{intAsBigInt:T}){let O=_[0];if(O==="-"||O==="+")$+=1;if(_=_.substring($).replace(/_/g,""),T){switch(q){case 2:_=`0b${_}`;break;case 8:_=`0o${_}`;break;case 16:_=`0x${_}`;break}let X=BigInt(_);return O==="-"?BigInt(-1)*X:X}let H=parseInt(_,q);return O==="-"?-1*H:H}function h0(_,$,q){let{value:T}=_;if(i_(T)){let O=T.toString($);return T<0?"-"+q+O.substr(1):q+O}return oT.stringifyNumber(_)}var h4={identify:i_,default:!0,tag:"tag:yaml.org,2002:int",format:"BIN",test:/^[-+]?0b[0-1_]+$/,resolve:(_,$,q)=>v$(_,2,2,q),stringify:(_)=>h0(_,2,"0b")},v4={identify:i_,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^[-+]?0[0-7_]+$/,resolve:(_,$,q)=>v$(_,1,8,q),stringify:(_)=>h0(_,8,"0")},m4={identify:i_,default:!0,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9][0-9_]*$/,resolve:(_,$,q)=>v$(_,0,10,q),stringify:oT.stringifyNumber},l4={identify:i_,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^[-+]?0x[0-9a-fA-F_]+$/,resolve:(_,$,q)=>v$(_,2,16,q),stringify:(_)=>h0(_,16,"0x")};p4.int=m4;p4.intBin=h4;p4.intHex=l4;p4.intOct=v4});var v0=V((a4)=>{var p$=S(),m$=q_(),l$=O_();class Y_ extends l$.YAMLMap{constructor(_){super(_);this.tag=Y_.tag}add(_){let $;if(p$.isPair(_))$=_;else if(_&&typeof _==="object"&&"key"in _&&"value"in _&&_.value===null)$=new m$.Pair(_.key,null);else $=new m$.Pair(_,null);if(!l$.findPair(this.items,$.key))this.items.push($)}get(_,$){let q=l$.findPair(this.items,_);return!$&&p$.isPair(q)?p$.isScalar(q.key)?q.key.value:q.key:q}set(_,$){if(typeof $!=="boolean")throw Error(`Expected boolean value for set(key, value) in a YAML set, not ${typeof $}`);let q=l$.findPair(this.items,_);if(q&&!$)this.items.splice(this.items.indexOf(q),1);else if(!q&&$)this.items.push(new m$.Pair(_))}toJSON(_,$){return super.toJSON(_,$,Set)}toString(_,$,q){if(!_)return JSON.stringify(this);if(this.hasAllNullValues(!0))return super.toString(Object.assign({},_,{allNullValues:!0}),$,q);else throw Error("Set items must all have null values")}static from(_,$,q){let{replacer:T}=q,O=new this(_);if($&&Symbol.iterator in Object($))for(let H of $){if(typeof T==="function")H=T.call($,H,H);O.items.push(m$.createPair(H,null,q))}return O}}Y_.tag="tag:yaml.org,2002:set";var n4={collection:"map",identify:(_)=>_ instanceof Set,nodeClass:Y_,default:!1,tag:"tag:yaml.org,2002:set",createNode:(_,$,q)=>Y_.from(_,$,q),resolve(_,$){if(p$.isMap(_))if(_.hasAllNullValues(!0))return Object.assign(new Y_,_);else $("Set items must all have null values");else $("Expected a mapping for this tag");return _}};a4.YAMLSet=Y_;a4.set=n4});var l0=V(($8)=>{var t4=N_();function m0(_,$){let q=_[0],T=q==="-"||q==="+"?_.substring(1):_,O=(X)=>$?BigInt(X):Number(X),H=T.replace(/_/g,"").split(":").reduce((X,U)=>X*O(60)+O(U),O(0));return q==="-"?O(-1)*H:H}function eT(_){let{value:$}=_,q=(X)=>X;if(typeof $==="bigint")q=(X)=>BigInt(X);else if(isNaN($)||!isFinite($))return t4.stringifyNumber(_);let T="";if($<0)T="-",$*=q(-1);let O=q(60),H=[$%O];if($<60)H.unshift(0);else if($=($-H[0])/O,H.unshift($%O),$>=60)$=($-H[0])/O,H.unshift($);return T+H.map((X)=>String(X).padStart(2,"0")).join(":").replace(/000000\d*$/,"")}var e4={identify:(_)=>typeof _==="bigint"||Number.isInteger(_),default:!0,tag:"tag:yaml.org,2002:int",format:"TIME",test:/^[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+$/,resolve:(_,$,{intAsBigInt:q})=>m0(_,q),stringify:eT},_8={identify:(_)=>typeof _==="number",default:!0,tag:"tag:yaml.org,2002:float",format:"TIME",test:/^[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+\.[0-9_]*$/,resolve:(_)=>m0(_,!1),stringify:eT},_1={identify:(_)=>_ instanceof Date,default:!0,tag:"tag:yaml.org,2002:timestamp",test:RegExp("^([0-9]{4})-([0-9]{1,2})-([0-9]{1,2})(?:(?:t|T|[ \\t]+)([0-9]{1,2}):([0-9]{1,2}):([0-9]{1,2}(\\.[0-9]+)?)(?:[ \\t]*(Z|[-+][012]?[0-9](?::[0-9]{2})?))?)?$"),resolve(_){let $=_.match(_1.test);if(!$)throw Error("!!timestamp expects a date, starting with yyyy-mm-dd");let[,q,T,O,H,X,U]=$.map(Number),J=$[7]?Number(($[7]+"00").substr(1,3)):0,Z=Date.UTC(q,T-1,O,H||0,X||0,U||0,J),z=$[8];if(z&&z!=="Z"){let G=m0(z,!1);if(Math.abs(G)<30)G*=60;Z-=60000*G}return new Date(Z)},stringify:({value:_})=>_?.toISOString().replace(/(T00:00:00)?\.000Z$/,"")??""};$8.floatTime=_8;$8.intTime=e4;$8.timestamp=_1});var q1=V((Y8)=>{var H8=S_(),X8=y$(),U8=K_(),J8=d_(),Z8=g0(),$1=aT(),p0=rT(),d$=tT(),z8=N$(),G8=k0(),Q8=h$(),W8=v0(),d0=l0(),R8=[H8.map,U8.seq,J8.string,X8.nullTag,$1.trueTag,$1.falseTag,d$.intBin,d$.intOct,d$.int,d$.intHex,p0.floatNaN,p0.floatExp,p0.float,Z8.binary,z8.merge,G8.omap,Q8.pairs,W8.set,d0.intTime,d0.floatTime,d0.timestamp];Y8.schema=R8});var Q1=V((F8)=>{var X1=S_(),V8=y$(),U1=K_(),B8=d_(),w8=K0(),c0=C0(),s0=f0(),A8=uT(),D8=vT(),J1=g0(),n_=N$(),Z1=k0(),z1=h$(),T1=q1(),G1=v0(),c$=l0(),O1=new Map([["core",A8.schema],["failsafe",[X1.map,U1.seq,B8.string]],["json",D8.schema],["yaml11",T1.schema],["yaml-1.1",T1.schema]]),H1={binary:J1.binary,bool:w8.boolTag,float:c0.float,floatExp:c0.floatExp,floatNaN:c0.floatNaN,floatTime:c$.floatTime,int:s0.int,intHex:s0.intHex,intOct:s0.intOct,intTime:c$.intTime,map:X1.map,merge:n_.merge,null:V8.nullTag,omap:Z1.omap,pairs:z1.pairs,seq:U1.seq,set:G1.set,timestamp:c$.timestamp},M8={"tag:yaml.org,2002:binary":J1.binary,"tag:yaml.org,2002:merge":n_.merge,"tag:yaml.org,2002:omap":Z1.omap,"tag:yaml.org,2002:pairs":z1.pairs,"tag:yaml.org,2002:set":G1.set,"tag:yaml.org,2002:timestamp":c$.timestamp};function I8(_,$,q){let T=O1.get($);if(T&&!_)return q&&!T.includes(n_.merge)?T.concat(n_.merge):T.slice();let O=T;if(!O)if(Array.isArray(_))O=[];else{let H=Array.from(O1.keys()).filter((X)=>X!=="yaml11").map((X)=>JSON.stringify(X)).join(", ");throw Error(`Unknown schema "${$}"; use one of ${H} or define customTags array`)}if(Array.isArray(_))for(let H of _)O=O.concat(H);else if(typeof _==="function")O=_(O.slice());if(q)O=O.concat(n_.merge);return O.reduce((H,X)=>{let U=typeof X==="string"?H1[X]:X;if(!U){let J=JSON.stringify(X),Z=Object.keys(H1).map((z)=>JSON.stringify(z)).join(", ");throw Error(`Unknown custom tag ${J}; use one of ${Z}`)}if(!H.includes(U))H.push(U);return H},[])}F8.coreKnownTags=M8;F8.getTags=I8});var a0=V((E8)=>{var i0=S(),N8=S_(),C8=K_(),P8=d_(),s$=Q1(),f8=(_,$)=>_.key<$.key?-1:_.key>$.key?1:0;class n0{constructor({compat:_,customTags:$,merge:q,resolveKnownTags:T,schema:O,sortMapEntries:H,toStringDefaults:X}){this.compat=Array.isArray(_)?s$.getTags(_,"compat"):_?s$.getTags(null,_):null,this.name=typeof O==="string"&&O||"core",this.knownTags=T?s$.coreKnownTags:{},this.tags=s$.getTags($,this.name,q),this.toStringOptions=X??null,Object.defineProperty(this,i0.MAP,{value:N8.map}),Object.defineProperty(this,i0.SCALAR,{value:P8.string}),Object.defineProperty(this,i0.SEQ,{value:C8.seq}),this.sortMapEntries=typeof H==="function"?H:H===!0?f8:null}clone(){let _=Object.create(n0.prototype,Object.getOwnPropertyDescriptors(this));return _.tags=this.tags.slice(),_}}E8.Schema=n0});var W1=V((y8)=>{var b8=S(),r0=m_(),a_=u_();function g8(_,$){let q=[],T=$.directives===!0;if($.directives!==!1&&_.directives){let J=_.directives.toString(_);if(J)q.push(J),T=!0;else if(_.directives.docStart)T=!0}if(T)q.push("---");let O=r0.createStringifyContext(_,$),{commentString:H}=O.options;if(_.commentBefore){if(q.length!==1)q.unshift("");let J=H(_.commentBefore);q.unshift(a_.indentComment(J,""))}let X=!1,U=null;if(_.contents){if(b8.isNode(_.contents)){if(_.contents.spaceBefore&&T)q.push("");if(_.contents.commentBefore){let z=H(_.contents.commentBefore);q.push(a_.indentComment(z,""))}O.forceBlockIndent=!!_.comment,U=_.contents.comment}let J=U?void 0:()=>X=!0,Z=r0.stringify(_.contents,O,()=>U=null,J);if(U)Z+=a_.lineComment(Z,"",H(U));if((Z[0]==="|"||Z[0]===">")&&q[q.length-1]==="---")q[q.length-1]=`--- ${Z}`;else q.push(Z)}else q.push(r0.stringify(_.contents,O));if(_.directives?.docEnd)if(_.comment){let J=H(_.comment);if(J.includes(`
55
+ ${H.comment}`:T.comment}T=O}_.items[q]=u$.isPair(T)?T:new y0.Pair(T)}else $("Expected a sequence for this tag");return _}function lT(_,$,q){let{replacer:T}=q,O=new V4.YAMLSeq(_);O.tag="tag:yaml.org,2002:pairs";let H=0;if($&&Symbol.iterator in Object($))for(let X of $){if(typeof T==="function")X=T.call($,String(H++),X);let U,J;if(Array.isArray(X))if(X.length===2)U=X[0],J=X[1];else throw TypeError(`Expected [key, value] tuple: ${X}`);else if(X&&X instanceof Object){let Z=Object.keys(X);if(Z.length===1)U=Z[0],J=X[U];else throw TypeError(`Expected tuple with one key, not ${Z.length} keys`)}else U=X;O.items.push(y0.createPair(U,J,q))}return O}var B4={collection:"seq",default:!1,tag:"tag:yaml.org,2002:pairs",resolve:mT,createNode:lT};w4.createPairs=lT;w4.pairs=B4;w4.resolvePairs=mT});var k0=V((S4)=>{var pT=S(),x0=e(),s_=O_(),I4=H_(),dT=h$();class R_ extends I4.YAMLSeq{constructor(){super();this.add=s_.YAMLMap.prototype.add.bind(this),this.delete=s_.YAMLMap.prototype.delete.bind(this),this.get=s_.YAMLMap.prototype.get.bind(this),this.has=s_.YAMLMap.prototype.has.bind(this),this.set=s_.YAMLMap.prototype.set.bind(this),this.tag=R_.tag}toJSON(_,$){if(!$)return super.toJSON(_);let q=new Map;if($?.onCreate)$.onCreate(q);for(let T of this.items){let O,H;if(pT.isPair(T))O=x0.toJS(T.key,"",$),H=x0.toJS(T.value,O,$);else O=x0.toJS(T,"",$);if(q.has(O))throw Error("Ordered maps must not include duplicate keys");q.set(O,H)}return q}static from(_,$,q){let T=dT.createPairs(_,$,q),O=new this;return O.items=T.items,O}}R_.tag="tag:yaml.org,2002:omap";var F4={collection:"seq",identify:(_)=>_ instanceof Map,nodeClass:R_,default:!1,tag:"tag:yaml.org,2002:omap",resolve(_,$){let q=dT.resolvePairs(_,$),T=[];for(let{key:O}of q.items)if(pT.isScalar(O))if(T.includes(O.value))$(`Ordered maps must not include duplicate keys: ${O.value}`);else T.push(O.value);return Object.assign(new R_,q)},createNode:(_,$,q)=>R_.from(_,$,q)};S4.YAMLOMap=R_;S4.omap=F4});var aT=V((C4)=>{var cT=f();function sT({value:_,source:$},q){if($&&(_?iT:nT).test.test($))return $;return _?q.options.trueStr:q.options.falseStr}var iT={identify:(_)=>_===!0,default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:Y|y|[Yy]es|YES|[Tt]rue|TRUE|[Oo]n|ON)$/,resolve:()=>new cT.Scalar(!0),stringify:sT},nT={identify:(_)=>_===!1,default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:N|n|[Nn]o|NO|[Ff]alse|FALSE|[Oo]ff|OFF)$/,resolve:()=>new cT.Scalar(!1),stringify:sT};C4.falseTag=nT;C4.trueTag=iT});var rT=V((y4)=>{var E4=f(),u0=N_(),j4={identify:(_)=>typeof _==="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^(?:[-+]?\.(?:inf|Inf|INF)|\.nan|\.NaN|\.NAN)$/,resolve:(_)=>_.slice(-3).toLowerCase()==="nan"?NaN:_[0]==="-"?Number.NEGATIVE_INFINITY:Number.POSITIVE_INFINITY,stringify:u0.stringifyNumber},b4={identify:(_)=>typeof _==="number",default:!0,tag:"tag:yaml.org,2002:float",format:"EXP",test:/^[-+]?(?:[0-9][0-9_]*)?(?:\.[0-9_]*)?[eE][-+]?[0-9]+$/,resolve:(_)=>parseFloat(_.replace(/_/g,"")),stringify(_){let $=Number(_.value);return isFinite($)?$.toExponential():u0.stringifyNumber(_)}},g4={identify:(_)=>typeof _==="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:[0-9][0-9_]*)?\.[0-9_]*$/,resolve(_){let $=new E4.Scalar(parseFloat(_.replace(/_/g,""))),q=_.indexOf(".");if(q!==-1){let T=_.substring(q+1).replace(/_/g,"");if(T[T.length-1]==="0")$.minFractionDigits=T.length}return $},stringify:u0.stringifyNumber};y4.float=g4;y4.floatExp=b4;y4.floatNaN=j4});var tT=V((p4)=>{var oT=N_(),i_=(_)=>typeof _==="bigint"||Number.isInteger(_);function v$(_,$,q,{intAsBigInt:T}){let O=_[0];if(O==="-"||O==="+")$+=1;if(_=_.substring($).replace(/_/g,""),T){switch(q){case 2:_=`0b${_}`;break;case 8:_=`0o${_}`;break;case 16:_=`0x${_}`;break}let X=BigInt(_);return O==="-"?BigInt(-1)*X:X}let H=parseInt(_,q);return O==="-"?-1*H:H}function h0(_,$,q){let{value:T}=_;if(i_(T)){let O=T.toString($);return T<0?"-"+q+O.substr(1):q+O}return oT.stringifyNumber(_)}var h4={identify:i_,default:!0,tag:"tag:yaml.org,2002:int",format:"BIN",test:/^[-+]?0b[0-1_]+$/,resolve:(_,$,q)=>v$(_,2,2,q),stringify:(_)=>h0(_,2,"0b")},v4={identify:i_,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^[-+]?0[0-7_]+$/,resolve:(_,$,q)=>v$(_,1,8,q),stringify:(_)=>h0(_,8,"0")},m4={identify:i_,default:!0,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9][0-9_]*$/,resolve:(_,$,q)=>v$(_,0,10,q),stringify:oT.stringifyNumber},l4={identify:i_,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^[-+]?0x[0-9a-fA-F_]+$/,resolve:(_,$,q)=>v$(_,2,16,q),stringify:(_)=>h0(_,16,"0x")};p4.int=m4;p4.intBin=h4;p4.intHex=l4;p4.intOct=v4});var v0=V((a4)=>{var p$=S(),m$=q_(),l$=O_();class Y_ extends l$.YAMLMap{constructor(_){super(_);this.tag=Y_.tag}add(_){let $;if(p$.isPair(_))$=_;else if(_&&typeof _==="object"&&"key"in _&&"value"in _&&_.value===null)$=new m$.Pair(_.key,null);else $=new m$.Pair(_,null);if(!l$.findPair(this.items,$.key))this.items.push($)}get(_,$){let q=l$.findPair(this.items,_);return!$&&p$.isPair(q)?p$.isScalar(q.key)?q.key.value:q.key:q}set(_,$){if(typeof $!=="boolean")throw Error(`Expected boolean value for set(key, value) in a YAML set, not ${typeof $}`);let q=l$.findPair(this.items,_);if(q&&!$)this.items.splice(this.items.indexOf(q),1);else if(!q&&$)this.items.push(new m$.Pair(_))}toJSON(_,$){return super.toJSON(_,$,Set)}toString(_,$,q){if(!_)return JSON.stringify(this);if(this.hasAllNullValues(!0))return super.toString(Object.assign({},_,{allNullValues:!0}),$,q);else throw Error("Set items must all have null values")}static from(_,$,q){let{replacer:T}=q,O=new this(_);if($&&Symbol.iterator in Object($))for(let H of $){if(typeof T==="function")H=T.call($,H,H);O.items.push(m$.createPair(H,null,q))}return O}}Y_.tag="tag:yaml.org,2002:set";var n4={collection:"map",identify:(_)=>_ instanceof Set,nodeClass:Y_,default:!1,tag:"tag:yaml.org,2002:set",createNode:(_,$,q)=>Y_.from(_,$,q),resolve(_,$){if(p$.isMap(_))if(_.hasAllNullValues(!0))return Object.assign(new Y_,_);else $("Set items must all have null values");else $("Expected a mapping for this tag");return _}};a4.YAMLSet=Y_;a4.set=n4});var l0=V(($8)=>{var t4=N_();function m0(_,$){let q=_[0],T=q==="-"||q==="+"?_.substring(1):_,O=(X)=>$?BigInt(X):Number(X),H=T.replace(/_/g,"").split(":").reduce((X,U)=>X*O(60)+O(U),O(0));return q==="-"?O(-1)*H:H}function eT(_){let{value:$}=_,q=(X)=>X;if(typeof $==="bigint")q=(X)=>BigInt(X);else if(isNaN($)||!isFinite($))return t4.stringifyNumber(_);let T="";if($<0)T="-",$*=q(-1);let O=q(60),H=[$%O];if($<60)H.unshift(0);else if($=($-H[0])/O,H.unshift($%O),$>=60)$=($-H[0])/O,H.unshift($);return T+H.map((X)=>String(X).padStart(2,"0")).join(":").replace(/000000\d*$/,"")}var e4={identify:(_)=>typeof _==="bigint"||Number.isInteger(_),default:!0,tag:"tag:yaml.org,2002:int",format:"TIME",test:/^[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+$/,resolve:(_,$,{intAsBigInt:q})=>m0(_,q),stringify:eT},_8={identify:(_)=>typeof _==="number",default:!0,tag:"tag:yaml.org,2002:float",format:"TIME",test:/^[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+\.[0-9_]*$/,resolve:(_)=>m0(_,!1),stringify:eT},_1={identify:(_)=>_ instanceof Date,default:!0,tag:"tag:yaml.org,2002:timestamp",test:RegExp("^([0-9]{4})-([0-9]{1,2})-([0-9]{1,2})(?:(?:t|T|[ \\t]+)([0-9]{1,2}):([0-9]{1,2}):([0-9]{1,2}(\\.[0-9]+)?)(?:[ \\t]*(Z|[-+][012]?[0-9](?::[0-9]{2})?))?)?$"),resolve(_){let $=_.match(_1.test);if(!$)throw Error("!!timestamp expects a date, starting with yyyy-mm-dd");let[,q,T,O,H,X,U]=$.map(Number),J=$[7]?Number(($[7]+"00").substr(1,3)):0,Z=Date.UTC(q,T-1,O,H||0,X||0,U||0,J),z=$[8];if(z&&z!=="Z"){let G=m0(z,!1);if(Math.abs(G)<30)G*=60;Z-=60000*G}return new Date(Z)},stringify:({value:_})=>_?.toISOString().replace(/(T00:00:00)?\.000Z$/,"")??""};$8.floatTime=_8;$8.intTime=e4;$8.timestamp=_1});var q1=V((Y8)=>{var H8=S_(),X8=y$(),U8=K_(),J8=d_(),Z8=g0(),$1=aT(),p0=rT(),d$=tT(),z8=N$(),G8=k0(),Q8=h$(),W8=v0(),d0=l0(),R8=[H8.map,U8.seq,J8.string,X8.nullTag,$1.trueTag,$1.falseTag,d$.intBin,d$.intOct,d$.int,d$.intHex,p0.floatNaN,p0.floatExp,p0.float,Z8.binary,z8.merge,G8.omap,Q8.pairs,W8.set,d0.intTime,d0.floatTime,d0.timestamp];Y8.schema=R8});var Q1=V((F8)=>{var X1=S_(),V8=y$(),U1=K_(),B8=d_(),w8=K0(),c0=C0(),s0=f0(),D8=uT(),A8=vT(),J1=g0(),n_=N$(),Z1=k0(),z1=h$(),T1=q1(),G1=v0(),c$=l0(),O1=new Map([["core",D8.schema],["failsafe",[X1.map,U1.seq,B8.string]],["json",A8.schema],["yaml11",T1.schema],["yaml-1.1",T1.schema]]),H1={binary:J1.binary,bool:w8.boolTag,float:c0.float,floatExp:c0.floatExp,floatNaN:c0.floatNaN,floatTime:c$.floatTime,int:s0.int,intHex:s0.intHex,intOct:s0.intOct,intTime:c$.intTime,map:X1.map,merge:n_.merge,null:V8.nullTag,omap:Z1.omap,pairs:z1.pairs,seq:U1.seq,set:G1.set,timestamp:c$.timestamp},M8={"tag:yaml.org,2002:binary":J1.binary,"tag:yaml.org,2002:merge":n_.merge,"tag:yaml.org,2002:omap":Z1.omap,"tag:yaml.org,2002:pairs":z1.pairs,"tag:yaml.org,2002:set":G1.set,"tag:yaml.org,2002:timestamp":c$.timestamp};function I8(_,$,q){let T=O1.get($);if(T&&!_)return q&&!T.includes(n_.merge)?T.concat(n_.merge):T.slice();let O=T;if(!O)if(Array.isArray(_))O=[];else{let H=Array.from(O1.keys()).filter((X)=>X!=="yaml11").map((X)=>JSON.stringify(X)).join(", ");throw Error(`Unknown schema "${$}"; use one of ${H} or define customTags array`)}if(Array.isArray(_))for(let H of _)O=O.concat(H);else if(typeof _==="function")O=_(O.slice());if(q)O=O.concat(n_.merge);return O.reduce((H,X)=>{let U=typeof X==="string"?H1[X]:X;if(!U){let J=JSON.stringify(X),Z=Object.keys(H1).map((z)=>JSON.stringify(z)).join(", ");throw Error(`Unknown custom tag ${J}; use one of ${Z}`)}if(!H.includes(U))H.push(U);return H},[])}F8.coreKnownTags=M8;F8.getTags=I8});var a0=V((E8)=>{var i0=S(),N8=S_(),C8=K_(),P8=d_(),s$=Q1(),f8=(_,$)=>_.key<$.key?-1:_.key>$.key?1:0;class n0{constructor({compat:_,customTags:$,merge:q,resolveKnownTags:T,schema:O,sortMapEntries:H,toStringDefaults:X}){this.compat=Array.isArray(_)?s$.getTags(_,"compat"):_?s$.getTags(null,_):null,this.name=typeof O==="string"&&O||"core",this.knownTags=T?s$.coreKnownTags:{},this.tags=s$.getTags($,this.name,q),this.toStringOptions=X??null,Object.defineProperty(this,i0.MAP,{value:N8.map}),Object.defineProperty(this,i0.SCALAR,{value:P8.string}),Object.defineProperty(this,i0.SEQ,{value:C8.seq}),this.sortMapEntries=typeof H==="function"?H:H===!0?f8:null}clone(){let _=Object.create(n0.prototype,Object.getOwnPropertyDescriptors(this));return _.tags=this.tags.slice(),_}}E8.Schema=n0});var W1=V((y8)=>{var b8=S(),r0=m_(),a_=u_();function g8(_,$){let q=[],T=$.directives===!0;if($.directives!==!1&&_.directives){let J=_.directives.toString(_);if(J)q.push(J),T=!0;else if(_.directives.docStart)T=!0}if(T)q.push("---");let O=r0.createStringifyContext(_,$),{commentString:H}=O.options;if(_.commentBefore){if(q.length!==1)q.unshift("");let J=H(_.commentBefore);q.unshift(a_.indentComment(J,""))}let X=!1,U=null;if(_.contents){if(b8.isNode(_.contents)){if(_.contents.spaceBefore&&T)q.push("");if(_.contents.commentBefore){let z=H(_.contents.commentBefore);q.push(a_.indentComment(z,""))}O.forceBlockIndent=!!_.comment,U=_.contents.comment}let J=U?void 0:()=>X=!0,Z=r0.stringify(_.contents,O,()=>U=null,J);if(U)Z+=a_.lineComment(Z,"",H(U));if((Z[0]==="|"||Z[0]===">")&&q[q.length-1]==="---")q[q.length-1]=`--- ${Z}`;else q.push(Z)}else q.push(r0.stringify(_.contents,O));if(_.directives?.docEnd)if(_.comment){let J=H(_.comment);if(J.includes(`
56
56
  `))q.push("..."),q.push(a_.indentComment(J,""));else q.push(`... ${J}`)}else q.push("...");else{let J=_.comment;if(J&&X)J=J.replace(/^\n+/,"");if(J){if((!X||U)&&q[q.length-1]!=="")q.push("");q.push(a_.indentComment(H(J),""))}}return q.join(`
57
57
  `)+`
58
- `}y8.stringifyDocument=g8});var r_=V((d8)=>{var k8=x_(),C_=A$(),u=S(),u8=q_(),h8=e(),v8=a0(),m8=W1(),o0=V$(),l8=L0(),p8=k_(),t0=Y0();class e0{constructor(_,$,q){this.commentBefore=null,this.comment=null,this.errors=[],this.warnings=[],Object.defineProperty(this,u.NODE_TYPE,{value:u.DOC});let T=null;if(typeof $==="function"||Array.isArray($))T=$;else if(q===void 0&&$)q=$,$=void 0;let O=Object.assign({intAsBigInt:!1,keepSourceTokens:!1,logLevel:"warn",prettyErrors:!0,strict:!0,stringKeys:!1,uniqueKeys:!0,version:"1.2"},q);this.options=O;let{version:H}=O;if(q?._directives){if(this.directives=q._directives.atDocument(),this.directives.yaml.explicit)H=this.directives.yaml.version}else this.directives=new t0.Directives({version:H});this.setSchema(H,q),this.contents=_===void 0?null:this.createNode(_,T,q)}clone(){let _=Object.create(e0.prototype,{[u.NODE_TYPE]:{value:u.DOC}});if(_.commentBefore=this.commentBefore,_.comment=this.comment,_.errors=this.errors.slice(),_.warnings=this.warnings.slice(),_.options=Object.assign({},this.options),this.directives)_.directives=this.directives.clone();if(_.schema=this.schema.clone(),_.contents=u.isNode(this.contents)?this.contents.clone(_.schema):this.contents,this.range)_.range=this.range.slice();return _}add(_){if(P_(this.contents))this.contents.add(_)}addIn(_,$){if(P_(this.contents))this.contents.addIn(_,$)}createAlias(_,$){if(!_.anchor){let q=o0.anchorNames(this);_.anchor=!$||q.has($)?o0.findNewAnchor($||"a",q):$}return new k8.Alias(_.anchor)}createNode(_,$,q){let T=void 0;if(typeof $==="function")_=$.call({"":_},"",_),T=$;else if(Array.isArray($)){let W=(B)=>typeof B==="number"||B instanceof String||B instanceof Number,L=$.filter(W).map(String);if(L.length>0)$=$.concat(L);T=$}else if(q===void 0&&$)q=$,$=void 0;let{aliasDuplicateObjects:O,anchorPrefix:H,flow:X,keepUndefined:U,onTagObj:J,tag:Z}=q??{},{onAnchor:z,setAnchors:G,sourceObjects:Q}=o0.createNodeAnchors(this,H||"a"),Y={aliasDuplicateObjects:O??!0,keepUndefined:U??!1,onAnchor:z,onTagObj:J,replacer:T,schema:this.schema,sourceObjects:Q},R=p8.createNode(_,Z,Y);if(X&&u.isCollection(R))R.flow=!0;return G(),R}createPair(_,$,q={}){let T=this.createNode(_,null,q),O=this.createNode($,null,q);return new u8.Pair(T,O)}delete(_){return P_(this.contents)?this.contents.delete(_):!1}deleteIn(_){if(C_.isEmptyPath(_)){if(this.contents==null)return!1;return this.contents=null,!0}return P_(this.contents)?this.contents.deleteIn(_):!1}get(_,$){return u.isCollection(this.contents)?this.contents.get(_,$):void 0}getIn(_,$){if(C_.isEmptyPath(_))return!$&&u.isScalar(this.contents)?this.contents.value:this.contents;return u.isCollection(this.contents)?this.contents.getIn(_,$):void 0}has(_){return u.isCollection(this.contents)?this.contents.has(_):!1}hasIn(_){if(C_.isEmptyPath(_))return this.contents!==void 0;return u.isCollection(this.contents)?this.contents.hasIn(_):!1}set(_,$){if(this.contents==null)this.contents=C_.collectionFromPath(this.schema,[_],$);else if(P_(this.contents))this.contents.set(_,$)}setIn(_,$){if(C_.isEmptyPath(_))this.contents=$;else if(this.contents==null)this.contents=C_.collectionFromPath(this.schema,Array.from(_),$);else if(P_(this.contents))this.contents.setIn(_,$)}setSchema(_,$={}){if(typeof _==="number")_=String(_);let q;switch(_){case"1.1":if(this.directives)this.directives.yaml.version="1.1";else this.directives=new t0.Directives({version:"1.1"});q={resolveKnownTags:!1,schema:"yaml-1.1"};break;case"1.2":case"next":if(this.directives)this.directives.yaml.version=_;else this.directives=new t0.Directives({version:_});q={resolveKnownTags:!0,schema:"core"};break;case null:if(this.directives)delete this.directives;q=null;break;default:{let T=JSON.stringify(_);throw Error(`Expected '1.1', '1.2' or null as first argument, but found: ${T}`)}}if($.schema instanceof Object)this.schema=$.schema;else if(q)this.schema=new v8.Schema(Object.assign(q,$));else throw Error("With a null YAML version, the { schema: Schema } option is required")}toJS({json:_,jsonArg:$,mapAsMap:q,maxAliasCount:T,onAnchor:O,reviver:H}={}){let X={anchors:new Map,doc:this,keep:!_,mapAsMap:q===!0,mapKeyWarned:!1,maxAliasCount:typeof T==="number"?T:100},U=h8.toJS(this.contents,$??"",X);if(typeof O==="function")for(let{count:J,res:Z}of X.anchors.values())O(Z,J);return typeof H==="function"?l8.applyReviver(H,{"":U},"",U):U}toJSON(_,$){return this.toJS({json:!0,jsonArg:_,mapAsMap:!1,onAnchor:$})}toString(_={}){if(this.errors.length>0)throw Error("Document with errors cannot be stringified");if("indent"in _&&(!Number.isInteger(_.indent)||Number(_.indent)<=0)){let $=JSON.stringify(_.indent);throw Error(`"indent" option must be a positive integer, not ${$}`)}return m8.stringifyDocument(this,_)}}function P_(_){if(u.isCollection(_))return!0;throw Error("Expected a YAML collection as document contents")}d8.Document=e0});var o_=V((i8)=>{class i$ extends Error{constructor(_,$,q,T){super();this.name=_,this.code=q,this.message=T,this.pos=$}}class R1 extends i${constructor(_,$,q){super("YAMLParseError",_,$,q)}}class Y1 extends i${constructor(_,$,q){super("YAMLWarning",_,$,q)}}var s8=(_,$)=>(q)=>{if(q.pos[0]===-1)return;q.linePos=q.pos.map((U)=>$.linePos(U));let{line:T,col:O}=q.linePos[0];q.message+=` at line ${T}, column ${O}`;let H=O-1,X=_.substring($.lineStarts[T-1],$.lineStarts[T]).replace(/[\n\r]+$/,"");if(H>=60&&X.length>80){let U=Math.min(H-39,X.length-79);X="…"+X.substring(U),H-=U-1}if(X.length>80)X=X.substring(0,79)+"…";if(T>1&&/^ *$/.test(X.substring(0,H))){let U=_.substring($.lineStarts[T-2],$.lineStarts[T-1]);if(U.length>80)U=U.substring(0,79)+`…
58
+ `}y8.stringifyDocument=g8});var r_=V((d8)=>{var k8=x_(),C_=D$(),u=S(),u8=q_(),h8=e(),v8=a0(),m8=W1(),o0=V$(),l8=L0(),p8=k_(),t0=Y0();class e0{constructor(_,$,q){this.commentBefore=null,this.comment=null,this.errors=[],this.warnings=[],Object.defineProperty(this,u.NODE_TYPE,{value:u.DOC});let T=null;if(typeof $==="function"||Array.isArray($))T=$;else if(q===void 0&&$)q=$,$=void 0;let O=Object.assign({intAsBigInt:!1,keepSourceTokens:!1,logLevel:"warn",prettyErrors:!0,strict:!0,stringKeys:!1,uniqueKeys:!0,version:"1.2"},q);this.options=O;let{version:H}=O;if(q?._directives){if(this.directives=q._directives.atDocument(),this.directives.yaml.explicit)H=this.directives.yaml.version}else this.directives=new t0.Directives({version:H});this.setSchema(H,q),this.contents=_===void 0?null:this.createNode(_,T,q)}clone(){let _=Object.create(e0.prototype,{[u.NODE_TYPE]:{value:u.DOC}});if(_.commentBefore=this.commentBefore,_.comment=this.comment,_.errors=this.errors.slice(),_.warnings=this.warnings.slice(),_.options=Object.assign({},this.options),this.directives)_.directives=this.directives.clone();if(_.schema=this.schema.clone(),_.contents=u.isNode(this.contents)?this.contents.clone(_.schema):this.contents,this.range)_.range=this.range.slice();return _}add(_){if(P_(this.contents))this.contents.add(_)}addIn(_,$){if(P_(this.contents))this.contents.addIn(_,$)}createAlias(_,$){if(!_.anchor){let q=o0.anchorNames(this);_.anchor=!$||q.has($)?o0.findNewAnchor($||"a",q):$}return new k8.Alias(_.anchor)}createNode(_,$,q){let T=void 0;if(typeof $==="function")_=$.call({"":_},"",_),T=$;else if(Array.isArray($)){let W=(B)=>typeof B==="number"||B instanceof String||B instanceof Number,L=$.filter(W).map(String);if(L.length>0)$=$.concat(L);T=$}else if(q===void 0&&$)q=$,$=void 0;let{aliasDuplicateObjects:O,anchorPrefix:H,flow:X,keepUndefined:U,onTagObj:J,tag:Z}=q??{},{onAnchor:z,setAnchors:G,sourceObjects:Q}=o0.createNodeAnchors(this,H||"a"),Y={aliasDuplicateObjects:O??!0,keepUndefined:U??!1,onAnchor:z,onTagObj:J,replacer:T,schema:this.schema,sourceObjects:Q},R=p8.createNode(_,Z,Y);if(X&&u.isCollection(R))R.flow=!0;return G(),R}createPair(_,$,q={}){let T=this.createNode(_,null,q),O=this.createNode($,null,q);return new u8.Pair(T,O)}delete(_){return P_(this.contents)?this.contents.delete(_):!1}deleteIn(_){if(C_.isEmptyPath(_)){if(this.contents==null)return!1;return this.contents=null,!0}return P_(this.contents)?this.contents.deleteIn(_):!1}get(_,$){return u.isCollection(this.contents)?this.contents.get(_,$):void 0}getIn(_,$){if(C_.isEmptyPath(_))return!$&&u.isScalar(this.contents)?this.contents.value:this.contents;return u.isCollection(this.contents)?this.contents.getIn(_,$):void 0}has(_){return u.isCollection(this.contents)?this.contents.has(_):!1}hasIn(_){if(C_.isEmptyPath(_))return this.contents!==void 0;return u.isCollection(this.contents)?this.contents.hasIn(_):!1}set(_,$){if(this.contents==null)this.contents=C_.collectionFromPath(this.schema,[_],$);else if(P_(this.contents))this.contents.set(_,$)}setIn(_,$){if(C_.isEmptyPath(_))this.contents=$;else if(this.contents==null)this.contents=C_.collectionFromPath(this.schema,Array.from(_),$);else if(P_(this.contents))this.contents.setIn(_,$)}setSchema(_,$={}){if(typeof _==="number")_=String(_);let q;switch(_){case"1.1":if(this.directives)this.directives.yaml.version="1.1";else this.directives=new t0.Directives({version:"1.1"});q={resolveKnownTags:!1,schema:"yaml-1.1"};break;case"1.2":case"next":if(this.directives)this.directives.yaml.version=_;else this.directives=new t0.Directives({version:_});q={resolveKnownTags:!0,schema:"core"};break;case null:if(this.directives)delete this.directives;q=null;break;default:{let T=JSON.stringify(_);throw Error(`Expected '1.1', '1.2' or null as first argument, but found: ${T}`)}}if($.schema instanceof Object)this.schema=$.schema;else if(q)this.schema=new v8.Schema(Object.assign(q,$));else throw Error("With a null YAML version, the { schema: Schema } option is required")}toJS({json:_,jsonArg:$,mapAsMap:q,maxAliasCount:T,onAnchor:O,reviver:H}={}){let X={anchors:new Map,doc:this,keep:!_,mapAsMap:q===!0,mapKeyWarned:!1,maxAliasCount:typeof T==="number"?T:100},U=h8.toJS(this.contents,$??"",X);if(typeof O==="function")for(let{count:J,res:Z}of X.anchors.values())O(Z,J);return typeof H==="function"?l8.applyReviver(H,{"":U},"",U):U}toJSON(_,$){return this.toJS({json:!0,jsonArg:_,mapAsMap:!1,onAnchor:$})}toString(_={}){if(this.errors.length>0)throw Error("Document with errors cannot be stringified");if("indent"in _&&(!Number.isInteger(_.indent)||Number(_.indent)<=0)){let $=JSON.stringify(_.indent);throw Error(`"indent" option must be a positive integer, not ${$}`)}return m8.stringifyDocument(this,_)}}function P_(_){if(u.isCollection(_))return!0;throw Error("Expected a YAML collection as document contents")}d8.Document=e0});var o_=V((i8)=>{class i$ extends Error{constructor(_,$,q,T){super();this.name=_,this.code=q,this.message=T,this.pos=$}}class R1 extends i${constructor(_,$,q){super("YAMLParseError",_,$,q)}}class Y1 extends i${constructor(_,$,q){super("YAMLWarning",_,$,q)}}var s8=(_,$)=>(q)=>{if(q.pos[0]===-1)return;q.linePos=q.pos.map((U)=>$.linePos(U));let{line:T,col:O}=q.linePos[0];q.message+=` at line ${T}, column ${O}`;let H=O-1,X=_.substring($.lineStarts[T-1],$.lineStarts[T]).replace(/[\n\r]+$/,"");if(H>=60&&X.length>80){let U=Math.min(H-39,X.length-79);X="…"+X.substring(U),H-=U-1}if(X.length>80)X=X.substring(0,79)+"…";if(T>1&&/^ *$/.test(X.substring(0,H))){let U=_.substring($.lineStarts[T-2],$.lineStarts[T-1]);if(U.length>80)U=U.substring(0,79)+`…
59
59
  `;X=U+X}if(/[^ ]/.test(X)){let U=1,J=q.linePos[1];if(J?.line===T&&J.col>O)U=Math.max(1,Math.min(J.col-O,80-H));let Z=" ".repeat(H)+"^".repeat(U);q.message+=`:
60
60
 
61
61
  ${X}
62
62
  ${Z}
63
- `}};i8.YAMLError=i$;i8.YAMLParseError=R1;i8.YAMLWarning=Y1;i8.prettifyError=s8});var t_=V((e8)=>{function t8(_,{flow:$,indicator:q,next:T,offset:O,onError:H,parentIndent:X,startOnNewline:U}){let J=!1,Z=U,z=U,G="",Q="",Y=!1,R=!1,W=null,L=null,B=null,A=null,D=null,M=null,I=null;for(let w of _){if(R){if(w.type!=="space"&&w.type!=="newline"&&w.type!=="comma")H(w.offset,"MISSING_CHAR","Tags and anchors must be separated from the next token by white space");R=!1}if(W){if(Z&&w.type!=="comment"&&w.type!=="newline")H(W,"TAB_AS_INDENT","Tabs are not allowed as indentation");W=null}switch(w.type){case"space":if(!$&&(q!=="doc-start"||T?.type!=="flow-collection")&&w.source.includes("\t"))W=w;z=!0;break;case"comment":{if(!z)H(w,"MISSING_CHAR","Comments must be separated from other tokens by white space characters");let E=w.source.substring(1)||" ";if(!G)G=E;else G+=Q+E;Q="",Z=!1;break}case"newline":if(Z){if(G)G+=w.source;else if(!M||q!=="seq-item-ind")J=!0}else Q+=w.source;if(Z=!0,Y=!0,L||B)A=w;z=!0;break;case"anchor":if(L)H(w,"MULTIPLE_ANCHORS","A node can have at most one anchor");if(w.source.endsWith(":"))H(w.offset+w.source.length-1,"BAD_ALIAS","Anchor ending in : is ambiguous",!0);L=w,I??(I=w.offset),Z=!1,z=!1,R=!0;break;case"tag":{if(B)H(w,"MULTIPLE_TAGS","A node can have at most one tag");B=w,I??(I=w.offset),Z=!1,z=!1,R=!0;break}case q:if(L||B)H(w,"BAD_PROP_ORDER",`Anchors and tags must be after the ${w.source} indicator`);if(M)H(w,"UNEXPECTED_TOKEN",`Unexpected ${w.source} in ${$??"collection"}`);M=w,Z=q==="seq-item-ind"||q==="explicit-key-ind",z=!1;break;case"comma":if($){if(D)H(w,"UNEXPECTED_TOKEN",`Unexpected , in ${$}`);D=w,Z=!1,z=!1;break}default:H(w,"UNEXPECTED_TOKEN",`Unexpected ${w.type} token`),Z=!1,z=!1}}let F=_[_.length-1],K=F?F.offset+F.source.length:O;if(R&&T&&T.type!=="space"&&T.type!=="newline"&&T.type!=="comma"&&(T.type!=="scalar"||T.source!==""))H(T.offset,"MISSING_CHAR","Tags and anchors must be separated from the next token by white space");if(W&&(Z&&W.indent<=X||T?.type==="block-map"||T?.type==="block-seq"))H(W,"TAB_AS_INDENT","Tabs are not allowed as indentation");return{comma:D,found:M,spaceBefore:J,comment:G,hasNewline:Y,anchor:L,tag:B,newlineAfterProp:A,end:K,start:I??K}}e8.resolveProps=t8});var n$=V(($6)=>{function _q(_){if(!_)return null;switch(_.type){case"alias":case"scalar":case"double-quoted-scalar":case"single-quoted-scalar":if(_.source.includes(`
64
- `))return!0;if(_.end){for(let $ of _.end)if($.type==="newline")return!0}return!1;case"flow-collection":for(let $ of _.items){for(let q of $.start)if(q.type==="newline")return!0;if($.sep){for(let q of $.sep)if(q.type==="newline")return!0}if(_q($.key)||_q($.value))return!0}return!1;default:return!0}}$6.containsNewline=_q});var $q=V((H6)=>{var T6=n$();function O6(_,$,q){if($?.type==="flow-collection"){let T=$.end[0];if(T.indent===_&&(T.source==="]"||T.source==="}")&&T6.containsNewline($))q(T,"BAD_INDENT","Flow end indicator should be more indented than parent",!0)}}H6.flowIndentCheck=O6});var qq=V((J6)=>{var L1=S();function U6(_,$,q){let{uniqueKeys:T}=_.options;if(T===!1)return!1;let O=typeof T==="function"?T:(H,X)=>H===X||L1.isScalar(H)&&L1.isScalar(X)&&H.value===X.value;return $.some((H)=>O(H.key,q))}J6.mapIncludes=U6});var D1=V((R6)=>{var V1=q_(),z6=O_(),B1=t_(),G6=n$(),w1=$q(),Q6=qq(),A1="All mapping items must start at the same column";function W6({composeNode:_,composeEmptyNode:$},q,T,O,H){let U=new(H?.nodeClass??z6.YAMLMap)(q.schema);if(q.atRoot)q.atRoot=!1;let J=T.offset,Z=null;for(let z of T.items){let{start:G,key:Q,sep:Y,value:R}=z,W=B1.resolveProps(G,{indicator:"explicit-key-ind",next:Q??Y?.[0],offset:J,onError:O,parentIndent:T.indent,startOnNewline:!0}),L=!W.found;if(L){if(Q){if(Q.type==="block-seq")O(J,"BLOCK_AS_IMPLICIT_KEY","A block sequence may not be used as an implicit map key");else if("indent"in Q&&Q.indent!==T.indent)O(J,"BAD_INDENT",A1)}if(!W.anchor&&!W.tag&&!Y){if(Z=W.end,W.comment)if(U.comment)U.comment+=`
65
- `+W.comment;else U.comment=W.comment;continue}if(W.newlineAfterProp||G6.containsNewline(Q))O(Q??G[G.length-1],"MULTILINE_IMPLICIT_KEY","Implicit keys need to be on a single line")}else if(W.found?.indent!==T.indent)O(J,"BAD_INDENT",A1);q.atKey=!0;let B=W.end,A=Q?_(q,Q,W,O):$(q,B,G,null,W,O);if(q.schema.compat)w1.flowIndentCheck(T.indent,Q,O);if(q.atKey=!1,Q6.mapIncludes(q,U.items,A))O(B,"DUPLICATE_KEY","Map keys must be unique");let D=B1.resolveProps(Y??[],{indicator:"map-value-ind",next:R,offset:A.range[2],onError:O,parentIndent:T.indent,startOnNewline:!Q||Q.type==="block-scalar"});if(J=D.end,D.found){if(L){if(R?.type==="block-map"&&!D.hasNewline)O(J,"BLOCK_AS_IMPLICIT_KEY","Nested mappings are not allowed in compact mappings");if(q.options.strict&&W.start<D.found.offset-1024)O(A.range,"KEY_OVER_1024_CHARS","The : indicator must be at most 1024 chars after the start of an implicit block mapping key")}let M=R?_(q,R,D,O):$(q,J,Y,null,D,O);if(q.schema.compat)w1.flowIndentCheck(T.indent,R,O);J=M.range[2];let I=new V1.Pair(A,M);if(q.options.keepSourceTokens)I.srcToken=z;U.items.push(I)}else{if(L)O(A.range,"MISSING_CHAR","Implicit map keys need to be followed by map values");if(D.comment)if(A.comment)A.comment+=`
66
- `+D.comment;else A.comment=D.comment;let M=new V1.Pair(A);if(q.options.keepSourceTokens)M.srcToken=z;U.items.push(M)}}if(Z&&Z<J)O(Z,"IMPOSSIBLE","Map comment with trailing content");return U.range=[T.offset,J,Z??J],U}R6.resolveBlockMap=W6});var M1=V((A6)=>{var L6=H_(),V6=t_(),B6=$q();function w6({composeNode:_,composeEmptyNode:$},q,T,O,H){let U=new(H?.nodeClass??L6.YAMLSeq)(q.schema);if(q.atRoot)q.atRoot=!1;if(q.atKey)q.atKey=!1;let J=T.offset,Z=null;for(let{start:z,value:G}of T.items){let Q=V6.resolveProps(z,{indicator:"seq-item-ind",next:G,offset:J,onError:O,parentIndent:T.indent,startOnNewline:!0});if(!Q.found)if(Q.anchor||Q.tag||G)if(G?.type==="block-seq")O(Q.end,"BAD_INDENT","All sequence items must start at the same column");else O(J,"MISSING_CHAR","Sequence item without - indicator");else{if(Z=Q.end,Q.comment)U.comment=Q.comment;continue}let Y=G?_(q,G,Q,O):$(q,Q.end,z,null,Q,O);if(q.schema.compat)B6.flowIndentCheck(T.indent,G,O);J=Y.range[2],U.items.push(Y)}return U.range=[T.offset,J,Z??J],U}A6.resolveBlockSeq=w6});var f_=V((I6)=>{function M6(_,$,q,T){let O="";if(_){let H=!1,X="";for(let U of _){let{source:J,type:Z}=U;switch(Z){case"space":H=!0;break;case"comment":{if(q&&!H)T(U,"MISSING_CHAR","Comments must be separated from other tokens by white space characters");let z=J.substring(1)||" ";if(!O)O=z;else O+=X+z;X="";break}case"newline":if(O)X+=J;H=!0;break;default:T(U,"UNEXPECTED_TOKEN",`Unexpected ${Z} at node end`)}$+=J.length}}return{comment:O,offset:$}}I6.resolveEnd=M6});var S1=V((j6)=>{var S6=S(),K6=q_(),I1=O_(),N6=H_(),C6=f_(),F1=t_(),P6=n$(),f6=qq(),Tq="Block collections are not allowed within flow collections",Oq=(_)=>_&&(_.type==="block-map"||_.type==="block-seq");function E6({composeNode:_,composeEmptyNode:$},q,T,O,H){let X=T.start.source==="{",U=X?"flow map":"flow sequence",Z=new(H?.nodeClass??(X?I1.YAMLMap:N6.YAMLSeq))(q.schema);Z.flow=!0;let z=q.atRoot;if(z)q.atRoot=!1;if(q.atKey)q.atKey=!1;let G=T.offset+T.start.source.length;for(let L=0;L<T.items.length;++L){let B=T.items[L],{start:A,key:D,sep:M,value:I}=B,F=F1.resolveProps(A,{flow:U,indicator:"explicit-key-ind",next:D??M?.[0],offset:G,onError:O,parentIndent:T.indent,startOnNewline:!1});if(!F.found){if(!F.anchor&&!F.tag&&!M&&!I){if(L===0&&F.comma)O(F.comma,"UNEXPECTED_TOKEN",`Unexpected , in ${U}`);else if(L<T.items.length-1)O(F.start,"UNEXPECTED_TOKEN",`Unexpected empty item in ${U}`);if(F.comment)if(Z.comment)Z.comment+=`
67
- `+F.comment;else Z.comment=F.comment;G=F.end;continue}if(!X&&q.options.strict&&P6.containsNewline(D))O(D,"MULTILINE_IMPLICIT_KEY","Implicit keys of flow sequence pairs need to be on a single line")}if(L===0){if(F.comma)O(F.comma,"UNEXPECTED_TOKEN",`Unexpected , in ${U}`)}else{if(!F.comma)O(F.start,"MISSING_CHAR",`Missing , between ${U} items`);if(F.comment){let K="";_:for(let w of A)switch(w.type){case"comma":case"space":break;case"comment":K=w.source.substring(1);break _;default:break _}if(K){let w=Z.items[Z.items.length-1];if(S6.isPair(w))w=w.value??w.key;if(w.comment)w.comment+=`
68
- `+K;else w.comment=K;F.comment=F.comment.substring(K.length+1)}}}if(!X&&!M&&!F.found){let K=I?_(q,I,F,O):$(q,F.end,M,null,F,O);if(Z.items.push(K),G=K.range[2],Oq(I))O(K.range,"BLOCK_IN_FLOW",Tq)}else{q.atKey=!0;let K=F.end,w=D?_(q,D,F,O):$(q,K,A,null,F,O);if(Oq(D))O(w.range,"BLOCK_IN_FLOW",Tq);q.atKey=!1;let E=F1.resolveProps(M??[],{flow:U,indicator:"map-value-ind",next:I,offset:w.range[2],onError:O,parentIndent:T.indent,startOnNewline:!1});if(E.found){if(!X&&!F.found&&q.options.strict){if(M)for(let j of M){if(j===E.found)break;if(j.type==="newline"){O(j,"MULTILINE_IMPLICIT_KEY","Implicit keys of flow sequence pairs need to be on a single line");break}}if(F.start<E.found.offset-1024)O(E.found,"KEY_OVER_1024_CHARS","The : indicator must be at most 1024 chars after the start of an implicit flow sequence key")}}else if(I)if("source"in I&&I.source?.[0]===":")O(I,"MISSING_CHAR",`Missing space after : in ${U}`);else O(E.start,"MISSING_CHAR",`Missing , or : between ${U} items`);let t=I?_(q,I,E,O):E.found?$(q,E.end,M,null,E,O):null;if(t){if(Oq(I))O(t.range,"BLOCK_IN_FLOW",Tq)}else if(E.comment)if(w.comment)w.comment+=`
69
- `+E.comment;else w.comment=E.comment;let A_=new K6.Pair(w,t);if(q.options.keepSourceTokens)A_.srcToken=B;if(X){let j=Z;if(f6.mapIncludes(q,j.items,w))O(K,"DUPLICATE_KEY","Map keys must be unique");j.items.push(A_)}else{let j=new I1.YAMLMap(q.schema);j.flow=!0,j.items.push(A_);let rq=(t??w).range;j.range=[w.range[0],rq[1],rq[2]],Z.items.push(j)}G=t?t.range[2]:E.end}}let Q=X?"}":"]",[Y,...R]=T.end,W=G;if(Y?.source===Q)W=Y.offset+Y.source.length;else{let L=U[0].toUpperCase()+U.substring(1),B=z?`${L} must end with a ${Q}`:`${L} in block collection must be sufficiently indented and end with a ${Q}`;if(O(G,z?"MISSING_CHAR":"BAD_INDENT",B),Y&&Y.source.length!==1)R.unshift(Y)}if(R.length>0){let L=C6.resolveEnd(R,W,q.options.strict,O);if(L.comment)if(Z.comment)Z.comment+=`
70
- `+L.comment;else Z.comment=L.comment;Z.range=[T.offset,W,L.offset]}else Z.range=[T.offset,W,W];return Z}j6.resolveFlowCollection=E6});var K1=V((l6)=>{var g6=S(),y6=f(),x6=O_(),k6=H_(),u6=D1(),h6=M1(),v6=S1();function Hq(_,$,q,T,O,H){let X=q.type==="block-map"?u6.resolveBlockMap(_,$,q,T,H):q.type==="block-seq"?h6.resolveBlockSeq(_,$,q,T,H):v6.resolveFlowCollection(_,$,q,T,H),U=X.constructor;if(O==="!"||O===U.tagName)return X.tag=U.tagName,X;if(O)X.tag=O;return X}function m6(_,$,q,T,O){let H=T.tag,X=!H?null:$.directives.tagName(H.source,(Q)=>O(H,"TAG_RESOLVE_FAILED",Q));if(q.type==="block-seq"){let{anchor:Q,newlineAfterProp:Y}=T,R=Q&&H?Q.offset>H.offset?Q:H:Q??H;if(R&&(!Y||Y.offset<R.offset))O(R,"MISSING_CHAR","Missing newline after block sequence props")}let U=q.type==="block-map"?"map":q.type==="block-seq"?"seq":q.start.source==="{"?"map":"seq";if(!H||!X||X==="!"||X===x6.YAMLMap.tagName&&U==="map"||X===k6.YAMLSeq.tagName&&U==="seq")return Hq(_,$,q,O,X);let J=$.schema.tags.find((Q)=>Q.tag===X&&Q.collection===U);if(!J){let Q=$.schema.knownTags[X];if(Q?.collection===U)$.schema.tags.push(Object.assign({},Q,{default:!1})),J=Q;else{if(Q)O(H,"BAD_COLLECTION_TYPE",`${Q.tag} used for ${U} collection, but expects ${Q.collection??"scalar"}`,!0);else O(H,"TAG_RESOLVE_FAILED",`Unresolved tag: ${X}`,!0);return Hq(_,$,q,O,X)}}let Z=Hq(_,$,q,O,X,J),z=J.resolve?.(Z,(Q)=>O(H,"TAG_RESOLVE_FAILED",Q),$.options)??Z,G=g6.isNode(z)?z:new y6.Scalar(z);if(G.range=Z.range,G.tag=X,J?.format)G.format=J.format;return G}l6.composeCollection=m6});var Uq=V((i6)=>{var Xq=f();function d6(_,$,q){let T=$.offset,O=c6($,_.options.strict,q);if(!O)return{value:"",type:null,comment:"",range:[T,T,T]};let H=O.mode===">"?Xq.Scalar.BLOCK_FOLDED:Xq.Scalar.BLOCK_LITERAL,X=$.source?s6($.source):[],U=X.length;for(let W=X.length-1;W>=0;--W){let L=X[W][1];if(L===""||L==="\r")U=W;else break}if(U===0){let W=O.chomp==="+"&&X.length>0?`
63
+ `}};i8.YAMLError=i$;i8.YAMLParseError=R1;i8.YAMLWarning=Y1;i8.prettifyError=s8});var t_=V((e8)=>{function t8(_,{flow:$,indicator:q,next:T,offset:O,onError:H,parentIndent:X,startOnNewline:U}){let J=!1,Z=U,z=U,G="",Q="",Y=!1,R=!1,W=null,L=null,B=null,D=null,A=null,M=null,I=null;for(let w of _){if(R){if(w.type!=="space"&&w.type!=="newline"&&w.type!=="comma")H(w.offset,"MISSING_CHAR","Tags and anchors must be separated from the next token by white space");R=!1}if(W){if(Z&&w.type!=="comment"&&w.type!=="newline")H(W,"TAB_AS_INDENT","Tabs are not allowed as indentation");W=null}switch(w.type){case"space":if(!$&&(q!=="doc-start"||T?.type!=="flow-collection")&&w.source.includes("\t"))W=w;z=!0;break;case"comment":{if(!z)H(w,"MISSING_CHAR","Comments must be separated from other tokens by white space characters");let E=w.source.substring(1)||" ";if(!G)G=E;else G+=Q+E;Q="",Z=!1;break}case"newline":if(Z){if(G)G+=w.source;else if(!M||q!=="seq-item-ind")J=!0}else Q+=w.source;if(Z=!0,Y=!0,L||B)D=w;z=!0;break;case"anchor":if(L)H(w,"MULTIPLE_ANCHORS","A node can have at most one anchor");if(w.source.endsWith(":"))H(w.offset+w.source.length-1,"BAD_ALIAS","Anchor ending in : is ambiguous",!0);L=w,I??(I=w.offset),Z=!1,z=!1,R=!0;break;case"tag":{if(B)H(w,"MULTIPLE_TAGS","A node can have at most one tag");B=w,I??(I=w.offset),Z=!1,z=!1,R=!0;break}case q:if(L||B)H(w,"BAD_PROP_ORDER",`Anchors and tags must be after the ${w.source} indicator`);if(M)H(w,"UNEXPECTED_TOKEN",`Unexpected ${w.source} in ${$??"collection"}`);M=w,Z=q==="seq-item-ind"||q==="explicit-key-ind",z=!1;break;case"comma":if($){if(A)H(w,"UNEXPECTED_TOKEN",`Unexpected , in ${$}`);A=w,Z=!1,z=!1;break}default:H(w,"UNEXPECTED_TOKEN",`Unexpected ${w.type} token`),Z=!1,z=!1}}let F=_[_.length-1],K=F?F.offset+F.source.length:O;if(R&&T&&T.type!=="space"&&T.type!=="newline"&&T.type!=="comma"&&(T.type!=="scalar"||T.source!==""))H(T.offset,"MISSING_CHAR","Tags and anchors must be separated from the next token by white space");if(W&&(Z&&W.indent<=X||T?.type==="block-map"||T?.type==="block-seq"))H(W,"TAB_AS_INDENT","Tabs are not allowed as indentation");return{comma:A,found:M,spaceBefore:J,comment:G,hasNewline:Y,anchor:L,tag:B,newlineAfterProp:D,end:K,start:I??K}}e8.resolveProps=t8});var n$=V(($6)=>{function _q(_){if(!_)return null;switch(_.type){case"alias":case"scalar":case"double-quoted-scalar":case"single-quoted-scalar":if(_.source.includes(`
64
+ `))return!0;if(_.end){for(let $ of _.end)if($.type==="newline")return!0}return!1;case"flow-collection":for(let $ of _.items){for(let q of $.start)if(q.type==="newline")return!0;if($.sep){for(let q of $.sep)if(q.type==="newline")return!0}if(_q($.key)||_q($.value))return!0}return!1;default:return!0}}$6.containsNewline=_q});var $q=V((H6)=>{var T6=n$();function O6(_,$,q){if($?.type==="flow-collection"){let T=$.end[0];if(T.indent===_&&(T.source==="]"||T.source==="}")&&T6.containsNewline($))q(T,"BAD_INDENT","Flow end indicator should be more indented than parent",!0)}}H6.flowIndentCheck=O6});var qq=V((J6)=>{var L1=S();function U6(_,$,q){let{uniqueKeys:T}=_.options;if(T===!1)return!1;let O=typeof T==="function"?T:(H,X)=>H===X||L1.isScalar(H)&&L1.isScalar(X)&&H.value===X.value;return $.some((H)=>O(H.key,q))}J6.mapIncludes=U6});var A1=V((R6)=>{var V1=q_(),z6=O_(),B1=t_(),G6=n$(),w1=$q(),Q6=qq(),D1="All mapping items must start at the same column";function W6({composeNode:_,composeEmptyNode:$},q,T,O,H){let U=new(H?.nodeClass??z6.YAMLMap)(q.schema);if(q.atRoot)q.atRoot=!1;let J=T.offset,Z=null;for(let z of T.items){let{start:G,key:Q,sep:Y,value:R}=z,W=B1.resolveProps(G,{indicator:"explicit-key-ind",next:Q??Y?.[0],offset:J,onError:O,parentIndent:T.indent,startOnNewline:!0}),L=!W.found;if(L){if(Q){if(Q.type==="block-seq")O(J,"BLOCK_AS_IMPLICIT_KEY","A block sequence may not be used as an implicit map key");else if("indent"in Q&&Q.indent!==T.indent)O(J,"BAD_INDENT",D1)}if(!W.anchor&&!W.tag&&!Y){if(Z=W.end,W.comment)if(U.comment)U.comment+=`
65
+ `+W.comment;else U.comment=W.comment;continue}if(W.newlineAfterProp||G6.containsNewline(Q))O(Q??G[G.length-1],"MULTILINE_IMPLICIT_KEY","Implicit keys need to be on a single line")}else if(W.found?.indent!==T.indent)O(J,"BAD_INDENT",D1);q.atKey=!0;let B=W.end,D=Q?_(q,Q,W,O):$(q,B,G,null,W,O);if(q.schema.compat)w1.flowIndentCheck(T.indent,Q,O);if(q.atKey=!1,Q6.mapIncludes(q,U.items,D))O(B,"DUPLICATE_KEY","Map keys must be unique");let A=B1.resolveProps(Y??[],{indicator:"map-value-ind",next:R,offset:D.range[2],onError:O,parentIndent:T.indent,startOnNewline:!Q||Q.type==="block-scalar"});if(J=A.end,A.found){if(L){if(R?.type==="block-map"&&!A.hasNewline)O(J,"BLOCK_AS_IMPLICIT_KEY","Nested mappings are not allowed in compact mappings");if(q.options.strict&&W.start<A.found.offset-1024)O(D.range,"KEY_OVER_1024_CHARS","The : indicator must be at most 1024 chars after the start of an implicit block mapping key")}let M=R?_(q,R,A,O):$(q,J,Y,null,A,O);if(q.schema.compat)w1.flowIndentCheck(T.indent,R,O);J=M.range[2];let I=new V1.Pair(D,M);if(q.options.keepSourceTokens)I.srcToken=z;U.items.push(I)}else{if(L)O(D.range,"MISSING_CHAR","Implicit map keys need to be followed by map values");if(A.comment)if(D.comment)D.comment+=`
66
+ `+A.comment;else D.comment=A.comment;let M=new V1.Pair(D);if(q.options.keepSourceTokens)M.srcToken=z;U.items.push(M)}}if(Z&&Z<J)O(Z,"IMPOSSIBLE","Map comment with trailing content");return U.range=[T.offset,J,Z??J],U}R6.resolveBlockMap=W6});var M1=V((D6)=>{var L6=H_(),V6=t_(),B6=$q();function w6({composeNode:_,composeEmptyNode:$},q,T,O,H){let U=new(H?.nodeClass??L6.YAMLSeq)(q.schema);if(q.atRoot)q.atRoot=!1;if(q.atKey)q.atKey=!1;let J=T.offset,Z=null;for(let{start:z,value:G}of T.items){let Q=V6.resolveProps(z,{indicator:"seq-item-ind",next:G,offset:J,onError:O,parentIndent:T.indent,startOnNewline:!0});if(!Q.found)if(Q.anchor||Q.tag||G)if(G?.type==="block-seq")O(Q.end,"BAD_INDENT","All sequence items must start at the same column");else O(J,"MISSING_CHAR","Sequence item without - indicator");else{if(Z=Q.end,Q.comment)U.comment=Q.comment;continue}let Y=G?_(q,G,Q,O):$(q,Q.end,z,null,Q,O);if(q.schema.compat)B6.flowIndentCheck(T.indent,G,O);J=Y.range[2],U.items.push(Y)}return U.range=[T.offset,J,Z??J],U}D6.resolveBlockSeq=w6});var f_=V((I6)=>{function M6(_,$,q,T){let O="";if(_){let H=!1,X="";for(let U of _){let{source:J,type:Z}=U;switch(Z){case"space":H=!0;break;case"comment":{if(q&&!H)T(U,"MISSING_CHAR","Comments must be separated from other tokens by white space characters");let z=J.substring(1)||" ";if(!O)O=z;else O+=X+z;X="";break}case"newline":if(O)X+=J;H=!0;break;default:T(U,"UNEXPECTED_TOKEN",`Unexpected ${Z} at node end`)}$+=J.length}}return{comment:O,offset:$}}I6.resolveEnd=M6});var S1=V((j6)=>{var S6=S(),K6=q_(),I1=O_(),N6=H_(),C6=f_(),F1=t_(),P6=n$(),f6=qq(),Tq="Block collections are not allowed within flow collections",Oq=(_)=>_&&(_.type==="block-map"||_.type==="block-seq");function E6({composeNode:_,composeEmptyNode:$},q,T,O,H){let X=T.start.source==="{",U=X?"flow map":"flow sequence",Z=new(H?.nodeClass??(X?I1.YAMLMap:N6.YAMLSeq))(q.schema);Z.flow=!0;let z=q.atRoot;if(z)q.atRoot=!1;if(q.atKey)q.atKey=!1;let G=T.offset+T.start.source.length;for(let L=0;L<T.items.length;++L){let B=T.items[L],{start:D,key:A,sep:M,value:I}=B,F=F1.resolveProps(D,{flow:U,indicator:"explicit-key-ind",next:A??M?.[0],offset:G,onError:O,parentIndent:T.indent,startOnNewline:!1});if(!F.found){if(!F.anchor&&!F.tag&&!M&&!I){if(L===0&&F.comma)O(F.comma,"UNEXPECTED_TOKEN",`Unexpected , in ${U}`);else if(L<T.items.length-1)O(F.start,"UNEXPECTED_TOKEN",`Unexpected empty item in ${U}`);if(F.comment)if(Z.comment)Z.comment+=`
67
+ `+F.comment;else Z.comment=F.comment;G=F.end;continue}if(!X&&q.options.strict&&P6.containsNewline(A))O(A,"MULTILINE_IMPLICIT_KEY","Implicit keys of flow sequence pairs need to be on a single line")}if(L===0){if(F.comma)O(F.comma,"UNEXPECTED_TOKEN",`Unexpected , in ${U}`)}else{if(!F.comma)O(F.start,"MISSING_CHAR",`Missing , between ${U} items`);if(F.comment){let K="";_:for(let w of D)switch(w.type){case"comma":case"space":break;case"comment":K=w.source.substring(1);break _;default:break _}if(K){let w=Z.items[Z.items.length-1];if(S6.isPair(w))w=w.value??w.key;if(w.comment)w.comment+=`
68
+ `+K;else w.comment=K;F.comment=F.comment.substring(K.length+1)}}}if(!X&&!M&&!F.found){let K=I?_(q,I,F,O):$(q,F.end,M,null,F,O);if(Z.items.push(K),G=K.range[2],Oq(I))O(K.range,"BLOCK_IN_FLOW",Tq)}else{q.atKey=!0;let K=F.end,w=A?_(q,A,F,O):$(q,K,D,null,F,O);if(Oq(A))O(w.range,"BLOCK_IN_FLOW",Tq);q.atKey=!1;let E=F1.resolveProps(M??[],{flow:U,indicator:"map-value-ind",next:I,offset:w.range[2],onError:O,parentIndent:T.indent,startOnNewline:!1});if(E.found){if(!X&&!F.found&&q.options.strict){if(M)for(let j of M){if(j===E.found)break;if(j.type==="newline"){O(j,"MULTILINE_IMPLICIT_KEY","Implicit keys of flow sequence pairs need to be on a single line");break}}if(F.start<E.found.offset-1024)O(E.found,"KEY_OVER_1024_CHARS","The : indicator must be at most 1024 chars after the start of an implicit flow sequence key")}}else if(I)if("source"in I&&I.source?.[0]===":")O(I,"MISSING_CHAR",`Missing space after : in ${U}`);else O(E.start,"MISSING_CHAR",`Missing , or : between ${U} items`);let t=I?_(q,I,E,O):E.found?$(q,E.end,M,null,E,O):null;if(t){if(Oq(I))O(t.range,"BLOCK_IN_FLOW",Tq)}else if(E.comment)if(w.comment)w.comment+=`
69
+ `+E.comment;else w.comment=E.comment;let D_=new K6.Pair(w,t);if(q.options.keepSourceTokens)D_.srcToken=B;if(X){let j=Z;if(f6.mapIncludes(q,j.items,w))O(K,"DUPLICATE_KEY","Map keys must be unique");j.items.push(D_)}else{let j=new I1.YAMLMap(q.schema);j.flow=!0,j.items.push(D_);let rq=(t??w).range;j.range=[w.range[0],rq[1],rq[2]],Z.items.push(j)}G=t?t.range[2]:E.end}}let Q=X?"}":"]",[Y,...R]=T.end,W=G;if(Y?.source===Q)W=Y.offset+Y.source.length;else{let L=U[0].toUpperCase()+U.substring(1),B=z?`${L} must end with a ${Q}`:`${L} in block collection must be sufficiently indented and end with a ${Q}`;if(O(G,z?"MISSING_CHAR":"BAD_INDENT",B),Y&&Y.source.length!==1)R.unshift(Y)}if(R.length>0){let L=C6.resolveEnd(R,W,q.options.strict,O);if(L.comment)if(Z.comment)Z.comment+=`
70
+ `+L.comment;else Z.comment=L.comment;Z.range=[T.offset,W,L.offset]}else Z.range=[T.offset,W,W];return Z}j6.resolveFlowCollection=E6});var K1=V((l6)=>{var g6=S(),y6=f(),x6=O_(),k6=H_(),u6=A1(),h6=M1(),v6=S1();function Hq(_,$,q,T,O,H){let X=q.type==="block-map"?u6.resolveBlockMap(_,$,q,T,H):q.type==="block-seq"?h6.resolveBlockSeq(_,$,q,T,H):v6.resolveFlowCollection(_,$,q,T,H),U=X.constructor;if(O==="!"||O===U.tagName)return X.tag=U.tagName,X;if(O)X.tag=O;return X}function m6(_,$,q,T,O){let H=T.tag,X=!H?null:$.directives.tagName(H.source,(Q)=>O(H,"TAG_RESOLVE_FAILED",Q));if(q.type==="block-seq"){let{anchor:Q,newlineAfterProp:Y}=T,R=Q&&H?Q.offset>H.offset?Q:H:Q??H;if(R&&(!Y||Y.offset<R.offset))O(R,"MISSING_CHAR","Missing newline after block sequence props")}let U=q.type==="block-map"?"map":q.type==="block-seq"?"seq":q.start.source==="{"?"map":"seq";if(!H||!X||X==="!"||X===x6.YAMLMap.tagName&&U==="map"||X===k6.YAMLSeq.tagName&&U==="seq")return Hq(_,$,q,O,X);let J=$.schema.tags.find((Q)=>Q.tag===X&&Q.collection===U);if(!J){let Q=$.schema.knownTags[X];if(Q?.collection===U)$.schema.tags.push(Object.assign({},Q,{default:!1})),J=Q;else{if(Q)O(H,"BAD_COLLECTION_TYPE",`${Q.tag} used for ${U} collection, but expects ${Q.collection??"scalar"}`,!0);else O(H,"TAG_RESOLVE_FAILED",`Unresolved tag: ${X}`,!0);return Hq(_,$,q,O,X)}}let Z=Hq(_,$,q,O,X,J),z=J.resolve?.(Z,(Q)=>O(H,"TAG_RESOLVE_FAILED",Q),$.options)??Z,G=g6.isNode(z)?z:new y6.Scalar(z);if(G.range=Z.range,G.tag=X,J?.format)G.format=J.format;return G}l6.composeCollection=m6});var Uq=V((i6)=>{var Xq=f();function d6(_,$,q){let T=$.offset,O=c6($,_.options.strict,q);if(!O)return{value:"",type:null,comment:"",range:[T,T,T]};let H=O.mode===">"?Xq.Scalar.BLOCK_FOLDED:Xq.Scalar.BLOCK_LITERAL,X=$.source?s6($.source):[],U=X.length;for(let W=X.length-1;W>=0;--W){let L=X[W][1];if(L===""||L==="\r")U=W;else break}if(U===0){let W=O.chomp==="+"&&X.length>0?`
71
71
  `.repeat(Math.max(1,X.length-1)):"",L=T+O.length;if($.source)L+=$.source.length;return{value:W,type:H,comment:O.comment,range:[T,L,L]}}let J=$.indent+O.indent,Z=$.offset+O.length,z=0;for(let W=0;W<U;++W){let[L,B]=X[W];if(B===""||B==="\r"){if(O.indent===0&&L.length>J)J=L.length}else{if(L.length<J)q(Z+L.length,"MISSING_CHAR","Block scalars with more-indented leading empty lines must use an explicit indentation indicator");if(O.indent===0)J=L.length;if(z=W,J===0&&!_.atRoot)q(Z,"BAD_INDENT","Block scalar values in collections must be indented");break}Z+=L.length+B.length+1}for(let W=X.length-1;W>=U;--W)if(X[W][0].length>J)U=W+1;let G="",Q="",Y=!1;for(let W=0;W<z;++W)G+=X[W][0].slice(J)+`
72
- `;for(let W=z;W<U;++W){let[L,B]=X[W];Z+=L.length+B.length+1;let A=B[B.length-1]==="\r";if(A)B=B.slice(0,-1);if(B&&L.length<J){let M=`Block scalar lines must not be less indented than their ${O.indent?"explicit indentation indicator":"first line"}`;q(Z-B.length-(A?2:1),"BAD_INDENT",M),L=""}if(H===Xq.Scalar.BLOCK_LITERAL)G+=Q+L.slice(J)+B,Q=`
72
+ `;for(let W=z;W<U;++W){let[L,B]=X[W];Z+=L.length+B.length+1;let D=B[B.length-1]==="\r";if(D)B=B.slice(0,-1);if(B&&L.length<J){let M=`Block scalar lines must not be less indented than their ${O.indent?"explicit indentation indicator":"first line"}`;q(Z-B.length-(D?2:1),"BAD_INDENT",M),L=""}if(H===Xq.Scalar.BLOCK_LITERAL)G+=Q+L.slice(J)+B,Q=`
73
73
  `;else if(L.length>J||B[0]==="\t"){if(Q===" ")Q=`
74
74
  `;else if(!Y&&Q===`
75
75
  `)Q=`
@@ -97,7 +97,7 @@ ${Z}
97
97
  `)break;if(T===`
98
98
  `)q+=`
99
99
  `;$+=1,T=_[$+1]}if(!q)q=" ";return{fold:q,offset:$}}var $U={"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 qU(_,$,q,T){let O=_.substr($,q),X=O.length===q&&/^[0-9a-fA-F]+$/.test(O)?parseInt(O,16):NaN;try{return String.fromCodePoint(X)}catch{let U=_.substr($-2,q+2);return T($-2,"BAD_DQ_ESCAPE",`Invalid escape sequence ${U}`),U}}TU.resolveFlowScalar=r6});var P1=V((zU)=>{var L_=S(),C1=f(),HU=Uq(),XU=Zq();function UU(_,$,q,T){let{value:O,type:H,comment:X,range:U}=$.type==="block-scalar"?HU.resolveBlockScalar(_,$,T):XU.resolveFlowScalar($,_.options.strict,T),J=q?_.directives.tagName(q.source,(G)=>T(q,"TAG_RESOLVE_FAILED",G)):null,Z;if(_.options.stringKeys&&_.atKey)Z=_.schema[L_.SCALAR];else if(J)Z=JU(_.schema,O,J,q,T);else if($.type==="scalar")Z=ZU(_,O,$,T);else Z=_.schema[L_.SCALAR];let z;try{let G=Z.resolve(O,(Q)=>T(q??$,"TAG_RESOLVE_FAILED",Q),_.options);z=L_.isScalar(G)?G:new C1.Scalar(G)}catch(G){let Q=G instanceof Error?G.message:String(G);T(q??$,"TAG_RESOLVE_FAILED",Q),z=new C1.Scalar(O)}if(z.range=U,z.source=O,H)z.type=H;if(J)z.tag=J;if(Z.format)z.format=Z.format;if(X)z.comment=X;return z}function JU(_,$,q,T,O){if(q==="!")return _[L_.SCALAR];let H=[];for(let U of _.tags)if(!U.collection&&U.tag===q)if(U.default&&U.test)H.push(U);else return U;for(let U of H)if(U.test?.test($))return U;let X=_.knownTags[q];if(X&&!X.collection)return _.tags.push(Object.assign({},X,{default:!1,test:void 0})),X;return O(T,"TAG_RESOLVE_FAILED",`Unresolved tag: ${q}`,q!=="tag:yaml.org,2002:str"),_[L_.SCALAR]}function ZU({atKey:_,directives:$,schema:q},T,O,H){let X=q.tags.find((U)=>(U.default===!0||_&&U.default==="key")&&U.test?.test(T))||q[L_.SCALAR];if(q.compat){let U=q.compat.find((J)=>J.default&&J.test?.test(T))??q[L_.SCALAR];if(X.tag!==U.tag){let J=$.tagString(X.tag),Z=$.tagString(U.tag),z=`Value may be parsed as either ${J} or ${Z}`;H(O,"TAG_RESOLVE_FAILED",z,!0)}}return X}zU.composeScalar=UU});var f1=V((WU)=>{function QU(_,$,q){if($){q??(q=$.length);for(let T=q-1;T>=0;--T){let O=$[T];switch(O.type){case"space":case"comment":case"newline":_-=O.source.length;continue}O=$[++T];while(O?.type==="space")_+=O.source.length,O=$[++T];break}}return _}WU.emptyScalarPosition=QU});var b1=V((MU)=>{var YU=x_(),LU=S(),VU=K1(),E1=P1(),BU=f_(),wU=f1(),AU={composeNode:j1,composeEmptyNode:zq};function j1(_,$,q,T){let O=_.atKey,{spaceBefore:H,comment:X,anchor:U,tag:J}=q,Z,z=!0;switch($.type){case"alias":if(Z=DU(_,$,T),U||J)T($,"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(Z=E1.composeScalar(_,$,J,T),U)Z.anchor=U.source.substring(1);break;case"block-map":case"block-seq":case"flow-collection":try{if(Z=VU.composeCollection(AU,_,$,q,T),U)Z.anchor=U.source.substring(1)}catch(G){let Q=G instanceof Error?G.message:String(G);T($,"RESOURCE_EXHAUSTION",Q)}break;default:{let G=$.type==="error"?$.message:`Unsupported token (type: ${$.type})`;T($,"UNEXPECTED_TOKEN",G),z=!1}}if(Z??(Z=zq(_,$.offset,void 0,null,q,T)),U&&Z.anchor==="")T(U,"BAD_ALIAS","Anchor cannot be an empty string");if(O&&_.options.stringKeys&&(!LU.isScalar(Z)||typeof Z.value!=="string"||Z.tag&&Z.tag!=="tag:yaml.org,2002:str"))T(J??$,"NON_STRING_KEY","With stringKeys, all keys must be strings");if(H)Z.spaceBefore=!0;if(X)if($.type==="scalar"&&$.source==="")Z.comment=X;else Z.commentBefore=X;if(_.options.keepSourceTokens&&z)Z.srcToken=$;return Z}function zq(_,$,q,T,{spaceBefore:O,comment:H,anchor:X,tag:U,end:J},Z){let z={type:"scalar",offset:wU.emptyScalarPosition($,q,T),indent:-1,source:""},G=E1.composeScalar(_,z,U,Z);if(X){if(G.anchor=X.source.substring(1),G.anchor==="")Z(X,"BAD_ALIAS","Anchor cannot be an empty string")}if(O)G.spaceBefore=!0;if(H)G.comment=H,G.range[2]=J;return G}function DU({options:_},{offset:$,source:q,end:T},O){let H=new YU.Alias(q.substring(1));if(H.source==="")O($,"BAD_ALIAS","Alias cannot be an empty string");if(H.source.endsWith(":"))O($+q.length-1,"BAD_ALIAS","Alias ending in : is ambiguous",!0);let X=$+q.length,U=BU.resolveEnd(T,X,_.strict,O);if(H.range=[$,X,U.offset],U.comment)H.comment=U.comment;return H}MU.composeEmptyNode=zq;MU.composeNode=j1});var y1=V((PU)=>{var SU=r_(),g1=b1(),KU=f_(),NU=t_();function CU(_,$,{offset:q,start:T,value:O,end:H},X){let U=Object.assign({_directives:$},_),J=new SU.Document(void 0,U),Z={atKey:!1,atRoot:!0,directives:J.directives,options:J.options,schema:J.schema},z=NU.resolveProps(T,{indicator:"doc-start",next:O??H?.[0],offset:q,onError:X,parentIndent:0,startOnNewline:!0});if(z.found){if(J.directives.docStart=!0,O&&(O.type==="block-map"||O.type==="block-seq")&&!z.hasNewline)X(z.end,"MISSING_CHAR","Block collection cannot start on same line with directives-end marker")}J.contents=O?g1.composeNode(Z,O,z,X):g1.composeEmptyNode(Z,z.end,T,null,z,X);let G=J.contents.range[2],Q=KU.resolveEnd(H,G,!1,X);if(Q.comment)J.comment=Q.comment;return J.range=[q,G,Q.offset],J}PU.composeDoc=CU});var Gq=V((xU)=>{var EU=Q$("process"),jU=Y0(),bU=r_(),e_=o_(),x1=S(),gU=y1(),yU=f_();function _$(_){if(typeof _==="number")return[_,_+1];if(Array.isArray(_))return _.length===2?_:[_[0],_[1]];let{offset:$,source:q}=_;return[$,$+(typeof q==="string"?q.length:1)]}function k1(_){let $="",q=!1,T=!1;for(let O=0;O<_.length;++O){let H=_[O];switch(H[0]){case"#":$+=($===""?"":T?`
100
+ `,r:"\r",t:"\t",v:"\v",N:"…",_:" ",L:"\u2028",P:"\u2029"," ":" ",'"':'"',"/":"/","\\":"\\","\t":"\t"};function qU(_,$,q,T){let O=_.substr($,q),X=O.length===q&&/^[0-9a-fA-F]+$/.test(O)?parseInt(O,16):NaN;try{return String.fromCodePoint(X)}catch{let U=_.substr($-2,q+2);return T($-2,"BAD_DQ_ESCAPE",`Invalid escape sequence ${U}`),U}}TU.resolveFlowScalar=r6});var P1=V((zU)=>{var L_=S(),C1=f(),HU=Uq(),XU=Zq();function UU(_,$,q,T){let{value:O,type:H,comment:X,range:U}=$.type==="block-scalar"?HU.resolveBlockScalar(_,$,T):XU.resolveFlowScalar($,_.options.strict,T),J=q?_.directives.tagName(q.source,(G)=>T(q,"TAG_RESOLVE_FAILED",G)):null,Z;if(_.options.stringKeys&&_.atKey)Z=_.schema[L_.SCALAR];else if(J)Z=JU(_.schema,O,J,q,T);else if($.type==="scalar")Z=ZU(_,O,$,T);else Z=_.schema[L_.SCALAR];let z;try{let G=Z.resolve(O,(Q)=>T(q??$,"TAG_RESOLVE_FAILED",Q),_.options);z=L_.isScalar(G)?G:new C1.Scalar(G)}catch(G){let Q=G instanceof Error?G.message:String(G);T(q??$,"TAG_RESOLVE_FAILED",Q),z=new C1.Scalar(O)}if(z.range=U,z.source=O,H)z.type=H;if(J)z.tag=J;if(Z.format)z.format=Z.format;if(X)z.comment=X;return z}function JU(_,$,q,T,O){if(q==="!")return _[L_.SCALAR];let H=[];for(let U of _.tags)if(!U.collection&&U.tag===q)if(U.default&&U.test)H.push(U);else return U;for(let U of H)if(U.test?.test($))return U;let X=_.knownTags[q];if(X&&!X.collection)return _.tags.push(Object.assign({},X,{default:!1,test:void 0})),X;return O(T,"TAG_RESOLVE_FAILED",`Unresolved tag: ${q}`,q!=="tag:yaml.org,2002:str"),_[L_.SCALAR]}function ZU({atKey:_,directives:$,schema:q},T,O,H){let X=q.tags.find((U)=>(U.default===!0||_&&U.default==="key")&&U.test?.test(T))||q[L_.SCALAR];if(q.compat){let U=q.compat.find((J)=>J.default&&J.test?.test(T))??q[L_.SCALAR];if(X.tag!==U.tag){let J=$.tagString(X.tag),Z=$.tagString(U.tag),z=`Value may be parsed as either ${J} or ${Z}`;H(O,"TAG_RESOLVE_FAILED",z,!0)}}return X}zU.composeScalar=UU});var f1=V((WU)=>{function QU(_,$,q){if($){q??(q=$.length);for(let T=q-1;T>=0;--T){let O=$[T];switch(O.type){case"space":case"comment":case"newline":_-=O.source.length;continue}O=$[++T];while(O?.type==="space")_+=O.source.length,O=$[++T];break}}return _}WU.emptyScalarPosition=QU});var b1=V((MU)=>{var YU=x_(),LU=S(),VU=K1(),E1=P1(),BU=f_(),wU=f1(),DU={composeNode:j1,composeEmptyNode:zq};function j1(_,$,q,T){let O=_.atKey,{spaceBefore:H,comment:X,anchor:U,tag:J}=q,Z,z=!0;switch($.type){case"alias":if(Z=AU(_,$,T),U||J)T($,"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(Z=E1.composeScalar(_,$,J,T),U)Z.anchor=U.source.substring(1);break;case"block-map":case"block-seq":case"flow-collection":try{if(Z=VU.composeCollection(DU,_,$,q,T),U)Z.anchor=U.source.substring(1)}catch(G){let Q=G instanceof Error?G.message:String(G);T($,"RESOURCE_EXHAUSTION",Q)}break;default:{let G=$.type==="error"?$.message:`Unsupported token (type: ${$.type})`;T($,"UNEXPECTED_TOKEN",G),z=!1}}if(Z??(Z=zq(_,$.offset,void 0,null,q,T)),U&&Z.anchor==="")T(U,"BAD_ALIAS","Anchor cannot be an empty string");if(O&&_.options.stringKeys&&(!LU.isScalar(Z)||typeof Z.value!=="string"||Z.tag&&Z.tag!=="tag:yaml.org,2002:str"))T(J??$,"NON_STRING_KEY","With stringKeys, all keys must be strings");if(H)Z.spaceBefore=!0;if(X)if($.type==="scalar"&&$.source==="")Z.comment=X;else Z.commentBefore=X;if(_.options.keepSourceTokens&&z)Z.srcToken=$;return Z}function zq(_,$,q,T,{spaceBefore:O,comment:H,anchor:X,tag:U,end:J},Z){let z={type:"scalar",offset:wU.emptyScalarPosition($,q,T),indent:-1,source:""},G=E1.composeScalar(_,z,U,Z);if(X){if(G.anchor=X.source.substring(1),G.anchor==="")Z(X,"BAD_ALIAS","Anchor cannot be an empty string")}if(O)G.spaceBefore=!0;if(H)G.comment=H,G.range[2]=J;return G}function AU({options:_},{offset:$,source:q,end:T},O){let H=new YU.Alias(q.substring(1));if(H.source==="")O($,"BAD_ALIAS","Alias cannot be an empty string");if(H.source.endsWith(":"))O($+q.length-1,"BAD_ALIAS","Alias ending in : is ambiguous",!0);let X=$+q.length,U=BU.resolveEnd(T,X,_.strict,O);if(H.range=[$,X,U.offset],U.comment)H.comment=U.comment;return H}MU.composeEmptyNode=zq;MU.composeNode=j1});var y1=V((PU)=>{var SU=r_(),g1=b1(),KU=f_(),NU=t_();function CU(_,$,{offset:q,start:T,value:O,end:H},X){let U=Object.assign({_directives:$},_),J=new SU.Document(void 0,U),Z={atKey:!1,atRoot:!0,directives:J.directives,options:J.options,schema:J.schema},z=NU.resolveProps(T,{indicator:"doc-start",next:O??H?.[0],offset:q,onError:X,parentIndent:0,startOnNewline:!0});if(z.found){if(J.directives.docStart=!0,O&&(O.type==="block-map"||O.type==="block-seq")&&!z.hasNewline)X(z.end,"MISSING_CHAR","Block collection cannot start on same line with directives-end marker")}J.contents=O?g1.composeNode(Z,O,z,X):g1.composeEmptyNode(Z,z.end,T,null,z,X);let G=J.contents.range[2],Q=KU.resolveEnd(H,G,!1,X);if(Q.comment)J.comment=Q.comment;return J.range=[q,G,Q.offset],J}PU.composeDoc=CU});var Gq=V((xU)=>{var EU=Q$("process"),jU=Y0(),bU=r_(),e_=o_(),x1=S(),gU=y1(),yU=f_();function _$(_){if(typeof _==="number")return[_,_+1];if(Array.isArray(_))return _.length===2?_:[_[0],_[1]];let{offset:$,source:q}=_;return[$,$+(typeof q==="string"?q.length:1)]}function k1(_){let $="",q=!1,T=!1;for(let O=0;O<_.length;++O){let H=_[O];switch(H[0]){case"#":$+=($===""?"":T?`
101
101
 
102
102
  `:`
103
103
  `)+(H.substring(1)||" "),q=!0,T=!1;break;case"%":if(_[O+1]?.[0]!=="#")O+=1;q=!1;break;default:if(!q)T=!0;q=!1}}return{comment:$,afterEmptyLine:T}}class u1{constructor(_={}){this.doc=null,this.atDirectives=!1,this.prelude=[],this.errors=[],this.warnings=[],this.onError=($,q,T,O)=>{let H=_$($);if(O)this.warnings.push(new e_.YAMLWarning(H,q,T));else this.errors.push(new e_.YAMLParseError(H,q,T))},this.directives=new jU.Directives({version:_.version||"1.2"}),this.options=_}decorate(_,$){let{comment:q,afterEmptyLine:T}=k1(this.prelude);if(q){let O=_.contents;if($)_.comment=_.comment?`${_.comment}
@@ -114,8 +114,8 @@ ${$.comment}`:$.comment}this.doc.range[2]=$.offset;break}default:this.errors.pus
114
114
  `});for(let J of Object.keys(_))if(J!=="type"&&J!=="offset")delete _[J];Object.assign(_,{type:"block-scalar",indent:X,props:U,source:O})}}function v1(_,$){if($)for(let q of $)switch(q.type){case"space":case"comment":_.push(q);break;case"newline":return _.push(q),!0}return!1}function Qq(_,$,q){switch(_.type){case"scalar":case"double-quoted-scalar":case"single-quoted-scalar":_.type=q,_.source=$;break;case"block-scalar":{let T=_.props.slice(1),O=$.length;if(_.props[0].type==="block-scalar-header")O-=_.props[0].source.length;for(let H of T)H.offset+=O;delete _.props,Object.assign(_,{type:q,source:$,end:T});break}case"block-map":case"block-seq":{let O={type:"newline",offset:_.offset+$.length,indent:_.indent,source:`
115
115
  `};delete _.items,Object.assign(_,{type:q,source:$,end:[O]});break}default:{let T="indent"in _?_.indent:-1,O="end"in _&&Array.isArray(_.end)?_.end.filter((H)=>H.type==="space"||H.type==="comment"||H.type==="newline"):[];for(let H of Object.keys(_))if(H!=="type"&&H!=="offset")delete _[H];Object.assign(_,{type:q,indent:T,source:$,end:O})}}}cU.createScalarToken=lU;cU.resolveAsScalar=mU;cU.setScalarValue=pU});var l1=V((rU)=>{var aU=(_)=>("type"in _)?r$(_):a$(_);function r$(_){switch(_.type){case"block-scalar":{let $="";for(let q of _.props)$+=r$(q);return $+_.source}case"block-map":case"block-seq":{let $="";for(let q of _.items)$+=a$(q);return $}case"flow-collection":{let $=_.start.source;for(let q of _.items)$+=a$(q);for(let q of _.end)$+=q.source;return $}case"document":{let $=a$(_);if(_.end)for(let q of _.end)$+=q.source;return $}default:{let $=_.source;if("end"in _&&_.end)for(let q of _.end)$+=q.source;return $}}}function a$({start:_,key:$,sep:q,value:T}){let O="";for(let H of _)O+=H.source;if($)O+=r$($);if(q)for(let H of q)O+=H.source;if(T)O+=r$(T);return O}rU.stringify=aU});var c1=V((eU)=>{var Wq=Symbol("break visit"),tU=Symbol("skip children"),p1=Symbol("remove item");function V_(_,$){if("type"in _&&_.type==="document")_={start:_.start,value:_.value};d1(Object.freeze([]),_,$)}V_.BREAK=Wq;V_.SKIP=tU;V_.REMOVE=p1;V_.itemAtPath=(_,$)=>{let q=_;for(let[T,O]of $){let H=q?.[T];if(H&&"items"in H)q=H.items[O];else return}return q};V_.parentCollection=(_,$)=>{let q=V_.itemAtPath(_,$.slice(0,-1)),T=$[$.length-1][0],O=q?.[T];if(O&&"items"in O)return O;throw Error("Parent collection not found")};function d1(_,$,q){let T=q($,_);if(typeof T==="symbol")return T;for(let O of["key","value"]){let H=$[O];if(H&&"items"in H){for(let X=0;X<H.items.length;++X){let U=d1(Object.freeze(_.concat([[O,X]])),H.items[X],q);if(typeof U==="number")X=U-1;else if(U===Wq)return Wq;else if(U===p1)H.items.splice(X,1),X-=1}if(typeof T==="function"&&O==="key")T=T($,_)}}return typeof T==="function"?T($,_):T}eU.visit=V_});var o$=V((UJ)=>{var Rq=m1(),$J=l1(),qJ=c1(),Yq="\uFEFF",Lq="\x02",Vq="\x18",Bq="\x1F",TJ=(_)=>!!_&&("items"in _),OJ=(_)=>!!_&&(_.type==="scalar"||_.type==="single-quoted-scalar"||_.type==="double-quoted-scalar"||_.type==="block-scalar");function HJ(_){switch(_){case Yq:return"<BOM>";case Lq:return"<DOC>";case Vq:return"<FLOW_END>";case Bq:return"<SCALAR>";default:return JSON.stringify(_)}}function XJ(_){switch(_){case Yq:return"byte-order-mark";case Lq:return"doc-mode";case Vq:return"flow-error-end";case Bq: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(_[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}UJ.createScalarToken=Rq.createScalarToken;UJ.resolveAsScalar=Rq.resolveAsScalar;UJ.setScalarValue=Rq.setScalarValue;UJ.stringify=$J.stringify;UJ.visit=qJ.visit;UJ.BOM=Yq;UJ.DOCUMENT=Lq;UJ.FLOW_END=Vq;UJ.SCALAR=Bq;UJ.isCollection=TJ;UJ.isScalar=OJ;UJ.prettyToken=HJ;UJ.tokenType=XJ});var Aq=V((IJ)=>{var $$=o$();function m(_){switch(_){case void 0:case" ":case`
118
- `:case"\r":case"\t":return!0;default:return!1}}var s1=new Set("0123456789ABCDEFabcdef"),DJ=new Set("0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-#;/?:@&=+$_.!~*'()"),t$=new Set(",[]{}"),MJ=new Set(` ,[]{}
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(_[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}UJ.createScalarToken=Rq.createScalarToken;UJ.resolveAsScalar=Rq.resolveAsScalar;UJ.setScalarValue=Rq.setScalarValue;UJ.stringify=$J.stringify;UJ.visit=qJ.visit;UJ.BOM=Yq;UJ.DOCUMENT=Lq;UJ.FLOW_END=Vq;UJ.SCALAR=Bq;UJ.isCollection=TJ;UJ.isScalar=OJ;UJ.prettyToken=HJ;UJ.tokenType=XJ});var Dq=V((IJ)=>{var $$=o$();function m(_){switch(_){case void 0:case" ":case`
118
+ `:case"\r":case"\t":return!0;default:return!1}}var s1=new Set("0123456789ABCDEFabcdef"),AJ=new Set("0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-#;/?:@&=+$_.!~*'()"),t$=new Set(",[]{}"),MJ=new Set(` ,[]{}
119
119
  \r `),wq=(_)=>!_||MJ.has(_);class i1{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(_,$=!1){if(_){if(typeof _!=="string")throw TypeError("source is not a string");this.buffer=this.buffer?this.buffer+_:_,this.lineEndPos=null}this.atEnd=!$;let q=this.next??"stream";while(q&&($||this.hasChars(1)))q=yield*this.parseNext(q)}atLineEnd(){let _=this.pos,$=this.buffer[_];while($===" "||$==="\t")$=this.buffer[++_];if(!$||$==="#"||$===`
120
120
  `)return!0;if($==="\r")return this.buffer[_+1]===`
121
121
  `;return!1}charAt(_){return this.buffer[this.pos+_]}continueScalar(_){let $=this.buffer[_];if(this.indentNext>0){let q=0;while($===" ")$=this.buffer[++q+_];if($==="\r"){let T=this.buffer[q+_+1];if(T===`
@@ -131,13 +131,13 @@ ${$.comment}`:$.comment}this.doc.range[2]=$.offset;break}default:this.errors.pus
131
131
  `&&O>=this.pos&&O+1+$>X)_=O;else break}while(!0);return yield $$.SCALAR,yield*this.pushToIndex(_+1,!0),yield*this.parseLineStart()}*parsePlainScalar(){let _=this.flowLevel>0,$=this.pos-1,q=this.pos-1,T;while(T=this.buffer[++q])if(T===":"){let O=this.buffer[q+1];if(m(O)||_&&t$.has(O))break;$=q}else if(m(T)){let O=this.buffer[q+1];if(T==="\r")if(O===`
132
132
  `)q+=1,T=`
133
133
  `,O=this.buffer[q+1];else $=q;if(O==="#"||_&&t$.has(O))break;if(T===`
134
- `){let H=this.continueScalar(q+1);if(H===-1)break;q=Math.max(q,H-2)}}else{if(_&&t$.has(T))break;$=q}if(!T&&!this.atEnd)return this.setNext("plain-scalar");return yield $$.SCALAR,yield*this.pushToIndex($+1,!0),_?"flow":"doc"}*pushCount(_){if(_>0)return yield this.buffer.substr(this.pos,_),this.pos+=_,_;return 0}*pushToIndex(_,$){let q=this.buffer.slice(this.pos,_);if(q)return yield q,this.pos+=q.length,q.length;else if($)yield"";return 0}*pushIndicators(){let _=0;_:while(!0){switch(this.charAt(0)){case"!":_+=yield*this.pushTag(),_+=yield*this.pushSpaces(!0);continue _;case"&":_+=yield*this.pushUntil(wq),_+=yield*this.pushSpaces(!0);continue _;case"-":case"?":case":":{let $=this.flowLevel>0,q=this.charAt(1);if(m(q)||$&&t$.has(q)){if(!$)this.indentNext=this.indentValue+1;else if(this.flowKey)this.flowKey=!1;_+=yield*this.pushCount(1),_+=yield*this.pushSpaces(!0);continue _}}}break _}return _}*pushTag(){if(this.charAt(1)==="<"){let _=this.pos+2,$=this.buffer[_];while(!m($)&&$!==">")$=this.buffer[++_];return yield*this.pushToIndex($===">"?_+1:_,!1)}else{let _=this.pos+1,$=this.buffer[_];while($)if(DJ.has($))$=this.buffer[++_];else if($==="%"&&s1.has(this.buffer[_+1])&&s1.has(this.buffer[_+2]))$=this.buffer[_+=3];else break;return yield*this.pushToIndex(_,!1)}}*pushNewline(){let _=this.buffer[this.pos];if(_===`
134
+ `){let H=this.continueScalar(q+1);if(H===-1)break;q=Math.max(q,H-2)}}else{if(_&&t$.has(T))break;$=q}if(!T&&!this.atEnd)return this.setNext("plain-scalar");return yield $$.SCALAR,yield*this.pushToIndex($+1,!0),_?"flow":"doc"}*pushCount(_){if(_>0)return yield this.buffer.substr(this.pos,_),this.pos+=_,_;return 0}*pushToIndex(_,$){let q=this.buffer.slice(this.pos,_);if(q)return yield q,this.pos+=q.length,q.length;else if($)yield"";return 0}*pushIndicators(){let _=0;_:while(!0){switch(this.charAt(0)){case"!":_+=yield*this.pushTag(),_+=yield*this.pushSpaces(!0);continue _;case"&":_+=yield*this.pushUntil(wq),_+=yield*this.pushSpaces(!0);continue _;case"-":case"?":case":":{let $=this.flowLevel>0,q=this.charAt(1);if(m(q)||$&&t$.has(q)){if(!$)this.indentNext=this.indentValue+1;else if(this.flowKey)this.flowKey=!1;_+=yield*this.pushCount(1),_+=yield*this.pushSpaces(!0);continue _}}}break _}return _}*pushTag(){if(this.charAt(1)==="<"){let _=this.pos+2,$=this.buffer[_];while(!m($)&&$!==">")$=this.buffer[++_];return yield*this.pushToIndex($===">"?_+1:_,!1)}else{let _=this.pos+1,$=this.buffer[_];while($)if(AJ.has($))$=this.buffer[++_];else if($==="%"&&s1.has(this.buffer[_+1])&&s1.has(this.buffer[_+2]))$=this.buffer[_+=3];else break;return yield*this.pushToIndex(_,!1)}}*pushNewline(){let _=this.buffer[this.pos];if(_===`
135
135
  `)return yield*this.pushCount(1);else if(_==="\r"&&this.charAt(1)===`
136
- `)return yield*this.pushCount(2);else return 0}*pushSpaces(_){let $=this.pos-1,q;do q=this.buffer[++$];while(q===" "||_&&q==="\t");let T=$-this.pos;if(T>0)yield this.buffer.substr(this.pos,T),this.pos=$;return T}*pushUntil(_){let $=this.pos,q=this.buffer[$];while(!_(q))q=this.buffer[++$];return yield*this.pushToIndex($,!1)}}IJ.Lexer=i1});var Dq=V((SJ)=>{class n1{constructor(){this.lineStarts=[],this.addNewLine=(_)=>this.lineStarts.push(_),this.linePos=(_)=>{let $=0,q=this.lineStarts.length;while($<q){let O=$+q>>1;if(this.lineStarts[O]<_)$=O+1;else q=O}if(this.lineStarts[$]===_)return{line:$+1,col:1};if($===0)return{line:0,col:_};let T=this.lineStarts[$-1];return{line:$,col:_-T+1}}}}SJ.LineCounter=n1});var Mq=V((PJ)=>{var NJ=Q$("process"),a1=o$(),CJ=Aq();function X_(_,$){for(let q=0;q<_.length;++q)if(_[q].type===$)return!0;return!1}function r1(_){for(let $=0;$<_.length;++$)switch(_[$].type){case"space":case"comment":case"newline":break;default:return $}return-1}function t1(_){switch(_?.type){case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":case"flow-collection":return!0;default:return!1}}function e$(_){switch(_.type){case"document":return _.start;case"block-map":{let $=_.items[_.items.length-1];return $.sep??$.start}case"block-seq":return _.items[_.items.length-1].start;default:return[]}}function E_(_){if(_.length===0)return[];let $=_.length;_:while(--$>=0)switch(_[$].type){case"doc-start":case"explicit-key-ind":case"map-value-ind":case"seq-item-ind":case"newline":break _}while(_[++$]?.type==="space");return _.splice($,_.length)}function _0(_,$){if($.length<1e5)Array.prototype.push.apply(_,$);else for(let q=0;q<$.length;++q)_.push($[q])}function o1(_){if(_.start.type==="flow-seq-start"){for(let $ of _.items)if($.sep&&!$.value&&!X_($.start,"explicit-key-ind")&&!X_($.sep,"map-value-ind")){if($.key)$.value=$.key;if(delete $.key,t1($.value))if($.value.end)_0($.value.end,$.sep);else $.value.end=$.sep;else _0($.start,$.sep);delete $.sep}}}class e1{constructor(_){this.atNewLine=!0,this.atScalar=!1,this.indent=0,this.offset=0,this.onKeyLine=!1,this.stack=[],this.source="",this.type="",this.lexer=new CJ.Lexer,this.onNewLine=_}*parse(_,$=!1){if(this.onNewLine&&this.offset===0)this.onNewLine(0);for(let q of this.lexer.lex(_,$))yield*this.next(q);if(!$)yield*this.end()}*next(_){if(this.source=_,NJ.env.LOG_TOKENS)console.log("|",a1.prettyToken(_));if(this.atScalar){this.atScalar=!1,yield*this.step(),this.offset+=_.length;return}let $=a1.tokenType(_);if(!$){let q=`Not a YAML token: ${_}`;yield*this.pop({type:"error",offset:this.offset,message:q,source:_}),this.offset+=_.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+_.length);break;case"space":if(this.atNewLine&&_[0]===" ")this.indent+=_.length;break;case"explicit-key-ind":case"map-value-ind":case"seq-item-ind":if(this.atNewLine)this.indent+=_.length;break;case"doc-mode":case"flow-error-end":return;default:this.atNewLine=!1}this.offset+=_.length}}*end(){while(this.stack.length>0)yield*this.pop()}get sourceToken(){return{type:this.type,offset:this.offset,indent:this.indent,source:this.source}}*step(){let _=this.peek(1);if(this.type==="doc-end"&&_?.type!=="doc-end"){while(this.stack.length>0)yield*this.pop();this.stack.push({type:"doc-end",offset:this.offset,source:this.source});return}if(!_)return yield*this.stream();switch(_.type){case"document":return yield*this.document(_);case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return yield*this.scalar(_);case"block-scalar":return yield*this.blockScalar(_);case"block-map":return yield*this.blockMap(_);case"block-seq":return yield*this.blockSequence(_);case"flow-collection":return yield*this.flowCollection(_);case"doc-end":return yield*this.documentEnd(_)}yield*this.pop()}peek(_){return this.stack[this.stack.length-_]}*pop(_){let $=_??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 q=this.peek(1);if($.type==="block-scalar")$.indent="indent"in q?q.indent:0;else if($.type==="flow-collection"&&q.type==="document")$.indent=0;if($.type==="flow-collection")o1($);switch(q.type){case"document":q.value=$;break;case"block-scalar":q.props.push($);break;case"block-map":{let T=q.items[q.items.length-1];if(T.value){q.items.push({start:[],key:$,sep:[]}),this.onKeyLine=!0;return}else if(T.sep)T.value=$;else{Object.assign(T,{key:$,sep:[]}),this.onKeyLine=!T.explicitKey;return}break}case"block-seq":{let T=q.items[q.items.length-1];if(T.value)q.items.push({start:[],value:$});else T.value=$;break}case"flow-collection":{let T=q.items[q.items.length-1];if(!T||T.value)q.items.push({start:[],key:$,sep:[]});else if(T.sep)T.value=$;else Object.assign(T,{key:$,sep:[]});return}default:yield*this.pop(),yield*this.pop($)}if((q.type==="document"||q.type==="block-map"||q.type==="block-seq")&&($.type==="block-map"||$.type==="block-seq")){let T=$.items[$.items.length-1];if(T&&!T.sep&&!T.value&&T.start.length>0&&r1(T.start)===-1&&($.indent===0||T.start.every((O)=>O.type!=="comment"||O.indent<$.indent))){if(q.type==="document")q.end=T.start;else q.items.push({start:T.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 _={type:"document",offset:this.offset,start:[]};if(this.type==="doc-start")_.start.push(this.sourceToken);this.stack.push(_);return}}yield{type:"error",offset:this.offset,message:`Unexpected ${this.type} token in YAML stream`,source:this.source}}*document(_){if(_.value)return yield*this.lineEnd(_);switch(this.type){case"doc-start":{if(r1(_.start)!==-1)yield*this.pop(),yield*this.step();else _.start.push(this.sourceToken);return}case"anchor":case"tag":case"space":case"comment":case"newline":_.start.push(this.sourceToken);return}let $=this.startBlockValue(_);if($)this.stack.push($);else yield{type:"error",offset:this.offset,message:`Unexpected ${this.type} token in YAML document`,source:this.source}}*scalar(_){if(this.type==="map-value-ind"){let $=e$(this.peek(2)),q=E_($),T;if(_.end)T=_.end,T.push(this.sourceToken),delete _.end;else T=[this.sourceToken];let O={type:"block-map",offset:_.offset,indent:_.indent,items:[{start:q,key:_,sep:T}]};this.onKeyLine=!0,this.stack[this.stack.length-1]=O}else yield*this.lineEnd(_)}*blockScalar(_){switch(this.type){case"space":case"comment":case"newline":_.props.push(this.sourceToken);return;case"scalar":if(_.source=this.source,this.atNewLine=!0,this.indent=0,this.onNewLine){let $=this.source.indexOf(`
136
+ `)return yield*this.pushCount(2);else return 0}*pushSpaces(_){let $=this.pos-1,q;do q=this.buffer[++$];while(q===" "||_&&q==="\t");let T=$-this.pos;if(T>0)yield this.buffer.substr(this.pos,T),this.pos=$;return T}*pushUntil(_){let $=this.pos,q=this.buffer[$];while(!_(q))q=this.buffer[++$];return yield*this.pushToIndex($,!1)}}IJ.Lexer=i1});var Aq=V((SJ)=>{class n1{constructor(){this.lineStarts=[],this.addNewLine=(_)=>this.lineStarts.push(_),this.linePos=(_)=>{let $=0,q=this.lineStarts.length;while($<q){let O=$+q>>1;if(this.lineStarts[O]<_)$=O+1;else q=O}if(this.lineStarts[$]===_)return{line:$+1,col:1};if($===0)return{line:0,col:_};let T=this.lineStarts[$-1];return{line:$,col:_-T+1}}}}SJ.LineCounter=n1});var Mq=V((PJ)=>{var NJ=Q$("process"),a1=o$(),CJ=Dq();function X_(_,$){for(let q=0;q<_.length;++q)if(_[q].type===$)return!0;return!1}function r1(_){for(let $=0;$<_.length;++$)switch(_[$].type){case"space":case"comment":case"newline":break;default:return $}return-1}function t1(_){switch(_?.type){case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":case"flow-collection":return!0;default:return!1}}function e$(_){switch(_.type){case"document":return _.start;case"block-map":{let $=_.items[_.items.length-1];return $.sep??$.start}case"block-seq":return _.items[_.items.length-1].start;default:return[]}}function E_(_){if(_.length===0)return[];let $=_.length;_:while(--$>=0)switch(_[$].type){case"doc-start":case"explicit-key-ind":case"map-value-ind":case"seq-item-ind":case"newline":break _}while(_[++$]?.type==="space");return _.splice($,_.length)}function _0(_,$){if($.length<1e5)Array.prototype.push.apply(_,$);else for(let q=0;q<$.length;++q)_.push($[q])}function o1(_){if(_.start.type==="flow-seq-start"){for(let $ of _.items)if($.sep&&!$.value&&!X_($.start,"explicit-key-ind")&&!X_($.sep,"map-value-ind")){if($.key)$.value=$.key;if(delete $.key,t1($.value))if($.value.end)_0($.value.end,$.sep);else $.value.end=$.sep;else _0($.start,$.sep);delete $.sep}}}class e1{constructor(_){this.atNewLine=!0,this.atScalar=!1,this.indent=0,this.offset=0,this.onKeyLine=!1,this.stack=[],this.source="",this.type="",this.lexer=new CJ.Lexer,this.onNewLine=_}*parse(_,$=!1){if(this.onNewLine&&this.offset===0)this.onNewLine(0);for(let q of this.lexer.lex(_,$))yield*this.next(q);if(!$)yield*this.end()}*next(_){if(this.source=_,NJ.env.LOG_TOKENS)console.log("|",a1.prettyToken(_));if(this.atScalar){this.atScalar=!1,yield*this.step(),this.offset+=_.length;return}let $=a1.tokenType(_);if(!$){let q=`Not a YAML token: ${_}`;yield*this.pop({type:"error",offset:this.offset,message:q,source:_}),this.offset+=_.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+_.length);break;case"space":if(this.atNewLine&&_[0]===" ")this.indent+=_.length;break;case"explicit-key-ind":case"map-value-ind":case"seq-item-ind":if(this.atNewLine)this.indent+=_.length;break;case"doc-mode":case"flow-error-end":return;default:this.atNewLine=!1}this.offset+=_.length}}*end(){while(this.stack.length>0)yield*this.pop()}get sourceToken(){return{type:this.type,offset:this.offset,indent:this.indent,source:this.source}}*step(){let _=this.peek(1);if(this.type==="doc-end"&&_?.type!=="doc-end"){while(this.stack.length>0)yield*this.pop();this.stack.push({type:"doc-end",offset:this.offset,source:this.source});return}if(!_)return yield*this.stream();switch(_.type){case"document":return yield*this.document(_);case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return yield*this.scalar(_);case"block-scalar":return yield*this.blockScalar(_);case"block-map":return yield*this.blockMap(_);case"block-seq":return yield*this.blockSequence(_);case"flow-collection":return yield*this.flowCollection(_);case"doc-end":return yield*this.documentEnd(_)}yield*this.pop()}peek(_){return this.stack[this.stack.length-_]}*pop(_){let $=_??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 q=this.peek(1);if($.type==="block-scalar")$.indent="indent"in q?q.indent:0;else if($.type==="flow-collection"&&q.type==="document")$.indent=0;if($.type==="flow-collection")o1($);switch(q.type){case"document":q.value=$;break;case"block-scalar":q.props.push($);break;case"block-map":{let T=q.items[q.items.length-1];if(T.value){q.items.push({start:[],key:$,sep:[]}),this.onKeyLine=!0;return}else if(T.sep)T.value=$;else{Object.assign(T,{key:$,sep:[]}),this.onKeyLine=!T.explicitKey;return}break}case"block-seq":{let T=q.items[q.items.length-1];if(T.value)q.items.push({start:[],value:$});else T.value=$;break}case"flow-collection":{let T=q.items[q.items.length-1];if(!T||T.value)q.items.push({start:[],key:$,sep:[]});else if(T.sep)T.value=$;else Object.assign(T,{key:$,sep:[]});return}default:yield*this.pop(),yield*this.pop($)}if((q.type==="document"||q.type==="block-map"||q.type==="block-seq")&&($.type==="block-map"||$.type==="block-seq")){let T=$.items[$.items.length-1];if(T&&!T.sep&&!T.value&&T.start.length>0&&r1(T.start)===-1&&($.indent===0||T.start.every((O)=>O.type!=="comment"||O.indent<$.indent))){if(q.type==="document")q.end=T.start;else q.items.push({start:T.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 _={type:"document",offset:this.offset,start:[]};if(this.type==="doc-start")_.start.push(this.sourceToken);this.stack.push(_);return}}yield{type:"error",offset:this.offset,message:`Unexpected ${this.type} token in YAML stream`,source:this.source}}*document(_){if(_.value)return yield*this.lineEnd(_);switch(this.type){case"doc-start":{if(r1(_.start)!==-1)yield*this.pop(),yield*this.step();else _.start.push(this.sourceToken);return}case"anchor":case"tag":case"space":case"comment":case"newline":_.start.push(this.sourceToken);return}let $=this.startBlockValue(_);if($)this.stack.push($);else yield{type:"error",offset:this.offset,message:`Unexpected ${this.type} token in YAML document`,source:this.source}}*scalar(_){if(this.type==="map-value-ind"){let $=e$(this.peek(2)),q=E_($),T;if(_.end)T=_.end,T.push(this.sourceToken),delete _.end;else T=[this.sourceToken];let O={type:"block-map",offset:_.offset,indent:_.indent,items:[{start:q,key:_,sep:T}]};this.onKeyLine=!0,this.stack[this.stack.length-1]=O}else yield*this.lineEnd(_)}*blockScalar(_){switch(this.type){case"space":case"comment":case"newline":_.props.push(this.sourceToken);return;case"scalar":if(_.source=this.source,this.atNewLine=!0,this.indent=0,this.onNewLine){let $=this.source.indexOf(`
137
137
  `)+1;while($!==0)this.onNewLine(this.offset+$),$=this.source.indexOf(`
138
138
  `,$)+1}yield*this.pop();break;default:yield*this.pop(),yield*this.step()}}*blockMap(_){let $=_.items[_.items.length-1];switch(this.type){case"newline":if(this.onKeyLine=!1,$.value){let q="end"in $.value?$.value.end:void 0;if((Array.isArray(q)?q[q.length-1]:void 0)?.type==="comment")q?.push(this.sourceToken);else _.items.push({start:[this.sourceToken]})}else if($.sep)$.sep.push(this.sourceToken);else $.start.push(this.sourceToken);return;case"space":case"comment":if($.value)_.items.push({start:[this.sourceToken]});else if($.sep)$.sep.push(this.sourceToken);else{if(this.atIndentedComment($.start,_.indent)){let T=_.items[_.items.length-2]?.value?.end;if(Array.isArray(T)){_0(T,$.start),T.push(this.sourceToken),_.items.pop();return}}$.start.push(this.sourceToken)}return}if(this.indent>=_.indent){let q=!this.onKeyLine&&this.indent===_.indent,T=q&&($.sep||$.explicitKey)&&this.type!=="seq-item-ind",O=[];if(T&&$.sep&&!$.value){let H=[];for(let X=0;X<$.sep.length;++X){let U=$.sep[X];switch(U.type){case"newline":H.push(X);break;case"space":break;case"comment":if(U.indent>_.indent)H.length=0;break;default:H.length=0}}if(H.length>=2)O=$.sep.splice(H[1])}switch(this.type){case"anchor":case"tag":if(T||$.value)O.push(this.sourceToken),_.items.push({start:O}),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(T||$.value)O.push(this.sourceToken),_.items.push({start:O,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(X_($.start,"newline"))Object.assign($,{key:null,sep:[this.sourceToken]});else{let H=E_($.start);this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:H,key:null,sep:[this.sourceToken]}]})}else if($.value)_.items.push({start:[],key:null,sep:[this.sourceToken]});else if(X_($.sep,"map-value-ind"))this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:O,key:null,sep:[this.sourceToken]}]});else if(t1($.key)&&!X_($.sep,"newline")){let H=E_($.start),X=$.key,U=$.sep;U.push(this.sourceToken),delete $.key,delete $.sep,this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:H,key:X,sep:U}]})}else if(O.length>0)$.sep=$.sep.concat(O,this.sourceToken);else $.sep.push(this.sourceToken);else if(!$.sep)Object.assign($,{key:null,sep:[this.sourceToken]});else if($.value||T)_.items.push({start:O,key:null,sep:[this.sourceToken]});else if(X_($.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 H=this.flowScalar(this.type);if(T||$.value)_.items.push({start:O,key:H,sep:[]}),this.onKeyLine=!0;else if($.sep)this.stack.push(H);else Object.assign($,{key:H,sep:[]}),this.onKeyLine=!0;return}default:{let H=this.startBlockValue(_);if(H){if(H.type==="block-seq"){if(!$.explicitKey&&$.sep&&!X_($.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(q)_.items.push({start:O});this.stack.push(H);return}}}}yield*this.pop(),yield*this.step()}*blockSequence(_){let $=_.items[_.items.length-1];switch(this.type){case"newline":if($.value){let q="end"in $.value?$.value.end:void 0;if((Array.isArray(q)?q[q.length-1]:void 0)?.type==="comment")q?.push(this.sourceToken);else _.items.push({start:[this.sourceToken]})}else $.start.push(this.sourceToken);return;case"space":case"comment":if($.value)_.items.push({start:[this.sourceToken]});else{if(this.atIndentedComment($.start,_.indent)){let T=_.items[_.items.length-2]?.value?.end;if(Array.isArray(T)){_0(T,$.start),T.push(this.sourceToken),_.items.pop();return}}$.start.push(this.sourceToken)}return;case"anchor":case"tag":if($.value||this.indent<=_.indent)break;$.start.push(this.sourceToken);return;case"seq-item-ind":if(this.indent!==_.indent)break;if($.value||X_($.start,"seq-item-ind"))_.items.push({start:[this.sourceToken]});else $.start.push(this.sourceToken);return}if(this.indent>_.indent){let q=this.startBlockValue(_);if(q){this.stack.push(q);return}}yield*this.pop(),yield*this.step()}*flowCollection(_){let $=_.items[_.items.length-1];if(this.type==="flow-error-end"){let q;do yield*this.pop(),q=this.peek(1);while(q?.type==="flow-collection")}else if(_.end.length===0){switch(this.type){case"comma":case"explicit-key-ind":if(!$||$.sep)_.items.push({start:[this.sourceToken]});else $.start.push(this.sourceToken);return;case"map-value-ind":if(!$||$.value)_.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)_.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 T=this.flowScalar(this.type);if(!$||$.value)_.items.push({start:[],key:T,sep:[]});else if($.sep)this.stack.push(T);else Object.assign($,{key:T,sep:[]});return}case"flow-map-end":case"flow-seq-end":_.end.push(this.sourceToken);return}let q=this.startBlockValue(_);if(q)this.stack.push(q);else yield*this.pop(),yield*this.step()}else{let q=this.peek(2);if(q.type==="block-map"&&(this.type==="map-value-ind"&&q.indent===_.indent||this.type==="newline"&&!q.items[q.items.length-1].sep))yield*this.pop(),yield*this.step();else if(this.type==="map-value-ind"&&q.type!=="flow-collection"){let T=e$(q),O=E_(T);o1(_);let H=_.end.splice(1,_.end.length);H.push(this.sourceToken);let X={type:"block-map",offset:_.offset,indent:_.indent,items:[{start:O,key:_,sep:H}]};this.onKeyLine=!0,this.stack[this.stack.length-1]=X}else yield*this.lineEnd(_)}}flowScalar(_){if(this.onNewLine){let $=this.source.indexOf(`
139
139
  `)+1;while($!==0)this.onNewLine(this.offset+$),$=this.source.indexOf(`
140
- `,$)+1}return{type:_,offset:this.offset,indent:this.indent,source:this.source}}startBlockValue(_){switch(this.type){case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return this.flowScalar(this.type);case"block-scalar-header":return{type:"block-scalar",offset:this.offset,indent:this.indent,props:[this.sourceToken],source:""};case"flow-map-start":case"flow-seq-start":return{type:"flow-collection",offset:this.offset,indent:this.indent,start:this.sourceToken,items:[],end:[]};case"seq-item-ind":return{type:"block-seq",offset:this.offset,indent:this.indent,items:[{start:[this.sourceToken]}]};case"explicit-key-ind":{this.onKeyLine=!0;let $=e$(_),q=E_($);return q.push(this.sourceToken),{type:"block-map",offset:this.offset,indent:this.indent,items:[{start:q,explicitKey:!0}]}}case"map-value-ind":{this.onKeyLine=!0;let $=e$(_),q=E_($);return{type:"block-map",offset:this.offset,indent:this.indent,items:[{start:q,key:null,sep:[this.sourceToken]}]}}}return null}atIndentedComment(_,$){if(this.type!=="comment")return!1;if(this.indent<=$)return!1;return _.every((q)=>q.type==="newline"||q.type==="space")}*documentEnd(_){if(this.type!=="doc-mode"){if(_.end)_.end.push(this.sourceToken);else _.end=[this.sourceToken];if(this.type==="newline")yield*this.pop()}}*lineEnd(_){switch(this.type){case"comma":case"doc-start":case"doc-end":case"flow-seq-end":case"flow-map-end":case"map-value-ind":yield*this.pop(),yield*this.step();break;case"newline":this.onKeyLine=!1;case"space":case"comment":default:if(_.end)_.end.push(this.sourceToken);else _.end=[this.sourceToken];if(this.type==="newline")yield*this.pop()}}}PJ.Parser=e1});var OO=V((uJ)=>{var _O=Gq(),EJ=r_(),q$=o_(),jJ=D0(),bJ=S(),gJ=Dq(),$O=Mq();function qO(_){let $=_.prettyErrors!==!1;return{lineCounter:_.lineCounter||$&&new gJ.LineCounter||null,prettyErrors:$}}function yJ(_,$={}){let{lineCounter:q,prettyErrors:T}=qO($),O=new $O.Parser(q?.addNewLine),H=new _O.Composer($),X=Array.from(H.compose(O.parse(_)));if(T&&q)for(let U of X)U.errors.forEach(q$.prettifyError(_,q)),U.warnings.forEach(q$.prettifyError(_,q));if(X.length>0)return X;return Object.assign([],{empty:!0},H.streamInfo())}function TO(_,$={}){let{lineCounter:q,prettyErrors:T}=qO($),O=new $O.Parser(q?.addNewLine),H=new _O.Composer($),X=null;for(let U of H.compose(O.parse(_),!0,_.length))if(!X)X=U;else if(X.options.logLevel!=="silent"){X.errors.push(new q$.YAMLParseError(U.range.slice(0,2),"MULTIPLE_DOCS","Source contains multiple documents; please use YAML.parseAllDocuments()"));break}if(T&&q)X.errors.forEach(q$.prettifyError(_,q)),X.warnings.forEach(q$.prettifyError(_,q));return X}function xJ(_,$,q){let T=void 0;if(typeof $==="function")T=$;else if(q===void 0&&$&&typeof $==="object")q=$;let O=TO(_,q);if(!O)return null;if(O.warnings.forEach((H)=>jJ.warn(O.options.logLevel,H)),O.errors.length>0)if(O.options.logLevel!=="silent")throw O.errors[0];else O.errors=[];return O.toJS(Object.assign({reviver:T},q))}function kJ(_,$,q){let T=null;if(typeof $==="function"||Array.isArray($))T=$;else if(q===void 0&&$)q=$;if(typeof q==="string")q=q.length;if(typeof q==="number"){let O=Math.round(q);q=O<1?void 0:O>8?{indent:8}:{indent:O}}if(_===void 0){let{keepUndefined:O}=q??$??{};if(!O)return}if(bJ.isDocument(_)&&!T)return _.toString(q);return new EJ.Document(_,T,q).toString(q)}uJ.parse=xJ;uJ.parseAllDocuments=yJ;uJ.parseDocument=TO;uJ.stringify=kJ});import{existsSync as nq,mkdirSync as Q0,readFileSync as SH,writeFileSync as aq}from"node:fs";import{dirname as KH,isAbsolute as _5,join as NH,resolve as $5}from"node:path";var pJ=Gq(),dJ=r_(),cJ=a0(),Iq=o_(),sJ=x_(),U_=S(),iJ=q_(),nJ=f(),aJ=O_(),rJ=H_(),F3=o$(),oJ=Aq(),tJ=Dq(),eJ=Mq(),$0=OO(),HO=g_();var _7=pJ.Composer,$7=dJ.Document,q7=cJ.Schema,T7=Iq.YAMLError,O7=Iq.YAMLParseError,H7=Iq.YAMLWarning,X7=sJ.Alias,U7=U_.isAlias,J7=U_.isCollection,Z7=U_.isDocument,z7=U_.isMap,G7=U_.isNode,Q7=U_.isPair,W7=U_.isScalar,R7=U_.isSeq,Y7=iJ.Pair,L7=nJ.Scalar,V7=aJ.YAMLMap,B7=rJ.YAMLSeq;var w7=oJ.Lexer,A7=tJ.LineCounter,D7=eJ.Parser,q0=$0.parse,M7=$0.parseAllDocuments,I7=$0.parseDocument,Fq=$0.stringify,F7=HO.visit,S7=HO.visitAsync;var K7=new Set(["none","low","medium","high"]),N7=new Set(["low","medium","high"]);function T0(_,$){if(!_||typeof _!=="object"||Array.isArray(_))throw Error(`${$} must be an object`);return _}var C7=/<[^>\n]*[\s\u4e00-\u9fff…][^>\n]*>|(空)|\(空\)|占位符|proj_xxxx|cc_xxxxxxxx/;function P7(_,$){if(C7.test(_))throw Error(`${$} still contains a placeholder; replace it with real content`)}function r(_,$,q=$){let T=_[$];if(typeof T!=="string"||T.trim()==="")throw Error(`Missing required string: ${q}`);return P7(T,q),T}function XO(_,$){let q=_[$];if(typeof q!=="string"||q.trim()==="")return null;return q}function f7(_,$,q){let T=_[$];if(T==null)return[];if(!Array.isArray(T)||T.some((O)=>typeof O!=="string"))throw Error(`${q} must be a string array`);return T}function UO(_){if(!("confidence"in _))return null;let $=_.confidence;if(typeof $!=="string"||!N7.has($))throw Error(`Invalid confidence: ${String($)}`);return $}function JO(_){let $=T0(q0(_),"summaries.yaml"),q=r($,"project_id");if(!Array.isArray($.summaries))throw Error("summaries must be an array");return{projectId:q,summaries:$.summaries.map((T,O)=>{let H=`summaries[${O}]`,X=T0(T,`summaries[${O}]`),U=r(X,"value",`${H}.value`);if(!K7.has(U))throw Error(`Invalid summary value: ${U}`);return UO(X),{sessionId:r(X,"session_id",`${H}.session_id`),title:r(X,"title",`${H}.title`),value:U,summaryMarkdown:r(X,"summary_markdown",`${H}.summary_markdown`),metadata:X}})}}function ZO(_){let $=T0(q0(_),"experiences.yaml"),q=r($,"project_id");if(!Array.isArray($.experiences))throw Error("experiences must be an array");return{projectId:q,experiences:$.experiences.map((T,O)=>{let H=`experiences[${O}]`,X=T0(T,H),U=X.source_sessions;if(!Array.isArray(U)||U.some((Z)=>typeof Z!=="string"))throw Error(`experiences[${O}].source_sessions must be a string array`);let J=UO(X);return{title:r(X,"title",`${H}.title`),slug:typeof X.slug==="string"?X.slug:null,summary:r(X,"summary",`${H}.summary`),bodyMarkdown:r(X,"body_markdown",`${H}.body_markdown`),sourceSessions:U,confidence:J,topic:XO(X,"topic"),techStack:f7(X,"tech_stack",`${H}.tech_stack`),problemType:XO(X,"problem_type"),metadata:X}})}}import{existsSync as zO,readFileSync as GO,writeFileSync as E7}from"node:fs";var j7={"obsidian.vault":"obsidian_vault",obsidian_vault:"obsidian_vault"};function b7(_){let $={};for(let q of _.split(`
140
+ `,$)+1}return{type:_,offset:this.offset,indent:this.indent,source:this.source}}startBlockValue(_){switch(this.type){case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return this.flowScalar(this.type);case"block-scalar-header":return{type:"block-scalar",offset:this.offset,indent:this.indent,props:[this.sourceToken],source:""};case"flow-map-start":case"flow-seq-start":return{type:"flow-collection",offset:this.offset,indent:this.indent,start:this.sourceToken,items:[],end:[]};case"seq-item-ind":return{type:"block-seq",offset:this.offset,indent:this.indent,items:[{start:[this.sourceToken]}]};case"explicit-key-ind":{this.onKeyLine=!0;let $=e$(_),q=E_($);return q.push(this.sourceToken),{type:"block-map",offset:this.offset,indent:this.indent,items:[{start:q,explicitKey:!0}]}}case"map-value-ind":{this.onKeyLine=!0;let $=e$(_),q=E_($);return{type:"block-map",offset:this.offset,indent:this.indent,items:[{start:q,key:null,sep:[this.sourceToken]}]}}}return null}atIndentedComment(_,$){if(this.type!=="comment")return!1;if(this.indent<=$)return!1;return _.every((q)=>q.type==="newline"||q.type==="space")}*documentEnd(_){if(this.type!=="doc-mode"){if(_.end)_.end.push(this.sourceToken);else _.end=[this.sourceToken];if(this.type==="newline")yield*this.pop()}}*lineEnd(_){switch(this.type){case"comma":case"doc-start":case"doc-end":case"flow-seq-end":case"flow-map-end":case"map-value-ind":yield*this.pop(),yield*this.step();break;case"newline":this.onKeyLine=!1;case"space":case"comment":default:if(_.end)_.end.push(this.sourceToken);else _.end=[this.sourceToken];if(this.type==="newline")yield*this.pop()}}}PJ.Parser=e1});var OO=V((uJ)=>{var _O=Gq(),EJ=r_(),q$=o_(),jJ=A0(),bJ=S(),gJ=Aq(),$O=Mq();function qO(_){let $=_.prettyErrors!==!1;return{lineCounter:_.lineCounter||$&&new gJ.LineCounter||null,prettyErrors:$}}function yJ(_,$={}){let{lineCounter:q,prettyErrors:T}=qO($),O=new $O.Parser(q?.addNewLine),H=new _O.Composer($),X=Array.from(H.compose(O.parse(_)));if(T&&q)for(let U of X)U.errors.forEach(q$.prettifyError(_,q)),U.warnings.forEach(q$.prettifyError(_,q));if(X.length>0)return X;return Object.assign([],{empty:!0},H.streamInfo())}function TO(_,$={}){let{lineCounter:q,prettyErrors:T}=qO($),O=new $O.Parser(q?.addNewLine),H=new _O.Composer($),X=null;for(let U of H.compose(O.parse(_),!0,_.length))if(!X)X=U;else if(X.options.logLevel!=="silent"){X.errors.push(new q$.YAMLParseError(U.range.slice(0,2),"MULTIPLE_DOCS","Source contains multiple documents; please use YAML.parseAllDocuments()"));break}if(T&&q)X.errors.forEach(q$.prettifyError(_,q)),X.warnings.forEach(q$.prettifyError(_,q));return X}function xJ(_,$,q){let T=void 0;if(typeof $==="function")T=$;else if(q===void 0&&$&&typeof $==="object")q=$;let O=TO(_,q);if(!O)return null;if(O.warnings.forEach((H)=>jJ.warn(O.options.logLevel,H)),O.errors.length>0)if(O.options.logLevel!=="silent")throw O.errors[0];else O.errors=[];return O.toJS(Object.assign({reviver:T},q))}function kJ(_,$,q){let T=null;if(typeof $==="function"||Array.isArray($))T=$;else if(q===void 0&&$)q=$;if(typeof q==="string")q=q.length;if(typeof q==="number"){let O=Math.round(q);q=O<1?void 0:O>8?{indent:8}:{indent:O}}if(_===void 0){let{keepUndefined:O}=q??$??{};if(!O)return}if(bJ.isDocument(_)&&!T)return _.toString(q);return new EJ.Document(_,T,q).toString(q)}uJ.parse=xJ;uJ.parseAllDocuments=yJ;uJ.parseDocument=TO;uJ.stringify=kJ});import{existsSync as nq,mkdirSync as Q0,readFileSync as SH,writeFileSync as aq}from"node:fs";import{dirname as KH,isAbsolute as _5,join as NH,resolve as $5}from"node:path";var pJ=Gq(),dJ=r_(),cJ=a0(),Iq=o_(),sJ=x_(),U_=S(),iJ=q_(),nJ=f(),aJ=O_(),rJ=H_(),F3=o$(),oJ=Dq(),tJ=Aq(),eJ=Mq(),$0=OO(),HO=g_();var _7=pJ.Composer,$7=dJ.Document,q7=cJ.Schema,T7=Iq.YAMLError,O7=Iq.YAMLParseError,H7=Iq.YAMLWarning,X7=sJ.Alias,U7=U_.isAlias,J7=U_.isCollection,Z7=U_.isDocument,z7=U_.isMap,G7=U_.isNode,Q7=U_.isPair,W7=U_.isScalar,R7=U_.isSeq,Y7=iJ.Pair,L7=nJ.Scalar,V7=aJ.YAMLMap,B7=rJ.YAMLSeq;var w7=oJ.Lexer,D7=tJ.LineCounter,A7=eJ.Parser,q0=$0.parse,M7=$0.parseAllDocuments,I7=$0.parseDocument,Fq=$0.stringify,F7=HO.visit,S7=HO.visitAsync;var K7=new Set(["none","low","medium","high"]),N7=new Set(["low","medium","high"]);function T0(_,$){if(!_||typeof _!=="object"||Array.isArray(_))throw Error(`${$} must be an object`);return _}var C7=/<[^>\n]*[\s\u4e00-\u9fff…][^>\n]*>|(空)|\(空\)|占位符|proj_xxxx|cc_xxxxxxxx/;function P7(_,$){if(C7.test(_))throw Error(`${$} still contains a placeholder; replace it with real content`)}function r(_,$,q=$){let T=_[$];if(typeof T!=="string"||T.trim()==="")throw Error(`Missing required string: ${q}`);return P7(T,q),T}function XO(_,$){let q=_[$];if(typeof q!=="string"||q.trim()==="")return null;return q}function f7(_,$,q){let T=_[$];if(T==null)return[];if(!Array.isArray(T)||T.some((O)=>typeof O!=="string"))throw Error(`${q} must be a string array`);return T}function UO(_){if(!("confidence"in _))return null;let $=_.confidence;if(typeof $!=="string"||!N7.has($))throw Error(`Invalid confidence: ${String($)}`);return $}function JO(_){let $=T0(q0(_),"summaries.yaml"),q=r($,"project_id");if(!Array.isArray($.summaries))throw Error("summaries must be an array");return{projectId:q,summaries:$.summaries.map((T,O)=>{let H=`summaries[${O}]`,X=T0(T,`summaries[${O}]`),U=r(X,"value",`${H}.value`);if(!K7.has(U))throw Error(`Invalid summary value: ${U}`);return UO(X),{sessionId:r(X,"session_id",`${H}.session_id`),title:r(X,"title",`${H}.title`),value:U,summaryMarkdown:r(X,"summary_markdown",`${H}.summary_markdown`),metadata:X}})}}function ZO(_){let $=T0(q0(_),"experiences.yaml"),q=r($,"project_id");if(!Array.isArray($.experiences))throw Error("experiences must be an array");return{projectId:q,experiences:$.experiences.map((T,O)=>{let H=`experiences[${O}]`,X=T0(T,H),U=X.source_sessions;if(!Array.isArray(U)||U.some((Z)=>typeof Z!=="string"))throw Error(`experiences[${O}].source_sessions must be a string array`);let J=UO(X);return{title:r(X,"title",`${H}.title`),slug:typeof X.slug==="string"?X.slug:null,summary:r(X,"summary",`${H}.summary`),bodyMarkdown:r(X,"body_markdown",`${H}.body_markdown`),sourceSessions:U,confidence:J,topic:XO(X,"topic"),techStack:f7(X,"tech_stack",`${H}.tech_stack`),problemType:XO(X,"problem_type"),metadata:X}})}}import{existsSync as zO,readFileSync as GO,writeFileSync as E7}from"node:fs";var j7={"obsidian.vault":"obsidian_vault",obsidian_vault:"obsidian_vault"};function b7(_){let $={};for(let q of _.split(`
141
141
  `)){let T=q.trim();if(T===""||T.startsWith("#")||T.startsWith("["))continue;let O=T.match(/^([\w.]+)\s*=\s*(.*)$/);if(!O)continue;let H=O[1],X=O[2].trim();if(X.startsWith('"')&&X.endsWith('"')||X.startsWith("'")&&X.endsWith("'"))X=X.slice(1,-1);$[H]=X}return $}function O0(_){if(!zO(_))return{obsidianVault:null};let q=b7(GO(_,"utf8")).obsidian_vault;return{obsidianVault:q&&q.trim()!==""?q:null}}function QO(_,$,q){let T=j7[$];if(!T)throw Error(`Unknown config key: ${$}. Supported: obsidian.vault`);let H=(zO(_)?GO(_,"utf8"):"").split(`
142
142
  `),X=`${T} = "${q}"`,U=!1,J=H.map((Z)=>{if(Z.trim().startsWith(`${T} `)||Z.trim().startsWith(`${T}=`))return U=!0,X;return Z});if(!U)J.push(X);return E7(_,`${J.filter((Z,z)=>!(Z===""&&z===J.length-1)).join(`
143
143
  `)}
@@ -290,7 +290,7 @@ ${$.comment}`:$.comment}this.doc.range[2]=$.offset;break}default:this.errors.pus
290
290
  project_id = excluded.project_id,
291
291
  canonical_remote_url = excluded.canonical_remote_url,
292
292
  last_seen_at = excluded.last_seen_at
293
- `).run({$id:O,$projectId:$.id,$localPath:q,$canonicalRepoUrl:$.canonicalRepoUrl,$now:T})}function AO(_,$,q){let T=new Date().toISOString();if(_.query(`
293
+ `).run({$id:O,$projectId:$.id,$localPath:q,$canonicalRepoUrl:$.canonicalRepoUrl,$now:T})}function DO(_,$,q){let T=new Date().toISOString();if(_.query(`
294
294
  INSERT INTO projects (id, canonical_name, display_name, slug, canonical_repo_url, provider, identity_source, created_at, updated_at)
295
295
  VALUES ($id, $canonicalName, NULL, $slug, $canonicalRepoUrl, NULL, $identitySource, $now, $now)
296
296
  ON CONFLICT(id) DO UPDATE SET
@@ -299,7 +299,7 @@ ${$.comment}`:$.comment}this.doc.range[2]=$.offset;break}default:this.errors.pus
299
299
  canonical_repo_url = excluded.canonical_repo_url,
300
300
  identity_source = excluded.identity_source,
301
301
  updated_at = excluded.updated_at
302
- `).run({$id:$.id,$canonicalName:$.canonicalName,$slug:$.slug,$canonicalRepoUrl:$.canonicalRepoUrl,$identitySource:$.identitySource,$now:T}),q)l7(_,$,q);return J_(_,$.id)}function fq(_,$){let q=Cq($);if(!wO(q))throw Error(`Path does not exist: ${q}`);return AO(_,Pq(q),q)}function DO(_,$){let q=Cq($);return AO(_,Pq(q),q)}class O$ extends Error{ref;candidates;constructor(_,$){super($.length===0?`No project matched: ${_}`:`Ambiguous project reference: ${_} (${$.length} candidates)`);this.ref=_;this.candidates=$;this.name="ProjectResolutionError"}}function p7(_,$,q){let T=Z_(_),O=new Map(T.map((z)=>[z.id,z])),H=new Map,X=(z)=>{if(z)H.set(z.id,z)};if($.startsWith("proj_"))return X(O.get($)),[...H.values()];let U=Cq(q,$);if(wO(U)){let z=Pq(U);if(X(O.get(z.id)),z.canonicalRepoUrl){for(let Q of T)if(Q.canonicalRepoUrl===z.canonicalRepoUrl)X(Q)}let G=_.query("SELECT project_id FROM project_aliases WHERE alias_type = ? AND alias_value = ?").all("path",U);for(let Q of G)X(O.get(Q.project_id));if(H.size>0)return H0([...H.values()])}let J=$.trim().toLowerCase(),Z=X0($);for(let z of T){let G=[z.slug,z.canonicalName,z.displayName??""];if(z.slug===Z)X(z);else if(G.some((Q)=>Q.toLowerCase().includes(J)))X(z)}return H0([...H.values()])}function H0(_){return[..._].sort(($,q)=>q.sessionCount-$.sessionCount||$.canonicalName.localeCompare(q.canonicalName))}function c(_,$,q){let T=p7(_,$,q);if(T.length===0)throw new O$($,T);if(T.length===1)return J_(_,T[0].id);let[O,H]=T;if(O&&H&&O.sessionCount===H.sessionCount)throw new O$($,T);return J_(_,O.id)}function Eq(_,$,q){if($===q)throw Error("Cannot merge a project into itself");J_(_,$),J_(_,q);let T=0;return _.transaction(()=>{T=_.query("UPDATE sessions SET project_id = ? WHERE project_id = ?").run(q,$).changes,_.query("UPDATE session_summaries SET project_id = ? WHERE project_id = ?").run(q,$),_.query("UPDATE experience_candidates SET project_id = ? WHERE project_id = ?").run(q,$),_.query("UPDATE experiences SET project_id = ? WHERE project_id = ?").run(q,$),_.query("UPDATE project_aliases SET project_id = ? WHERE project_id = ?").run(q,$),_.query("UPDATE project_checkouts SET project_id = ? WHERE project_id = ?").run(q,$),_.query("UPDATE obsidian_notes SET entity_id = ? WHERE note_type = 'project-summary' AND entity_id = ?").run(q,$),_.query("DELETE FROM projects WHERE id = ?").run($)})(),{fromId:$,intoId:q,movedSessions:T}}function MO(_){let $=H0(Z_(_)),q=new Map;for(let O of $){let H=O.canonicalRepoUrl?`repo:${O.canonicalRepoUrl}`:`slug:${O.slug}`,X=q.get(H)??[];X.push(O),q.set(H,X)}let T=[];for(let O of q.values()){if(O.length<2)continue;let H=H0(O),X=H[0];for(let U of H.slice(1))T.push(Eq(_,U.id,X.id))}return{merges:T}}function jq(_,$,q){let T=new Date().toISOString();if(_.query("UPDATE projects SET display_name = $displayName, updated_at = $now WHERE id = $projectId").run({$displayName:q,$projectId:$,$now:T}).changes===0)throw Error(`Project not found: ${$}`);return J_(_,$)}function Z_(_){return _.query(`
302
+ `).run({$id:$.id,$canonicalName:$.canonicalName,$slug:$.slug,$canonicalRepoUrl:$.canonicalRepoUrl,$identitySource:$.identitySource,$now:T}),q)l7(_,$,q);return J_(_,$.id)}function fq(_,$){let q=Cq($);if(!wO(q))throw Error(`Path does not exist: ${q}`);return DO(_,Pq(q),q)}function AO(_,$){let q=Cq($);return DO(_,Pq(q),q)}class O$ extends Error{ref;candidates;constructor(_,$){super($.length===0?`No project matched: ${_}`:`Ambiguous project reference: ${_} (${$.length} candidates)`);this.ref=_;this.candidates=$;this.name="ProjectResolutionError"}}function p7(_,$,q){let T=Z_(_),O=new Map(T.map((z)=>[z.id,z])),H=new Map,X=(z)=>{if(z)H.set(z.id,z)};if($.startsWith("proj_"))return X(O.get($)),[...H.values()];let U=Cq(q,$);if(wO(U)){let z=Pq(U);if(X(O.get(z.id)),z.canonicalRepoUrl){for(let Q of T)if(Q.canonicalRepoUrl===z.canonicalRepoUrl)X(Q)}let G=_.query("SELECT project_id FROM project_aliases WHERE alias_type = ? AND alias_value = ?").all("path",U);for(let Q of G)X(O.get(Q.project_id));if(H.size>0)return H0([...H.values()])}let J=$.trim().toLowerCase(),Z=X0($);for(let z of T){let G=[z.slug,z.canonicalName,z.displayName??""];if(z.slug===Z)X(z);else if(G.some((Q)=>Q.toLowerCase().includes(J)))X(z)}return H0([...H.values()])}function H0(_){return[..._].sort(($,q)=>q.sessionCount-$.sessionCount||$.canonicalName.localeCompare(q.canonicalName))}function c(_,$,q){let T=p7(_,$,q);if(T.length===0)throw new O$($,T);if(T.length===1)return J_(_,T[0].id);let[O,H]=T;if(O&&H&&O.sessionCount===H.sessionCount)throw new O$($,T);return J_(_,O.id)}function Eq(_,$,q){if($===q)throw Error("Cannot merge a project into itself");J_(_,$),J_(_,q);let T=0;return _.transaction(()=>{T=_.query("UPDATE sessions SET project_id = ? WHERE project_id = ?").run(q,$).changes,_.query("UPDATE session_summaries SET project_id = ? WHERE project_id = ?").run(q,$),_.query("UPDATE experience_candidates SET project_id = ? WHERE project_id = ?").run(q,$),_.query("UPDATE experiences SET project_id = ? WHERE project_id = ?").run(q,$),_.query("UPDATE project_aliases SET project_id = ? WHERE project_id = ?").run(q,$),_.query("UPDATE project_checkouts SET project_id = ? WHERE project_id = ?").run(q,$),_.query("UPDATE obsidian_notes SET entity_id = ? WHERE note_type = 'project-summary' AND entity_id = ?").run(q,$),_.query("DELETE FROM projects WHERE id = ?").run($)})(),{fromId:$,intoId:q,movedSessions:T}}function MO(_){let $=H0(Z_(_)),q=new Map;for(let O of $){let H=O.canonicalRepoUrl?`repo:${O.canonicalRepoUrl}`:`slug:${O.slug}`,X=q.get(H)??[];X.push(O),q.set(H,X)}let T=[];for(let O of q.values()){if(O.length<2)continue;let H=H0(O),X=H[0];for(let U of H.slice(1))T.push(Eq(_,U.id,X.id))}return{merges:T}}function jq(_,$,q){let T=new Date().toISOString();if(_.query("UPDATE projects SET display_name = $displayName, updated_at = $now WHERE id = $projectId").run({$displayName:q,$projectId:$,$now:T}).changes===0)throw Error(`Project not found: ${$}`);return J_(_,$)}function Z_(_){return _.query(`
303
303
  SELECT
304
304
  p.id,
305
305
  p.canonical_name,
@@ -414,8 +414,8 @@ ${_.after}`}function a7(_,$,q){return _.query("SELECT managed_hash, file_path FR
414
414
  `).all(q.id);for(let R of z){let W=o(U,"sessions",`${U$(R.title)}.md`),L={noteType:"session-summary",entityId:R.id,relPath:W,title:R.title,managedBody:R.summary_markdown,frontmatter:{type:"session-summary",aiwiki_id:R.id,aiwiki_project_id:q.id,project:J,session_id:R.session_id,value:R.value,updated_at:R.updated_at??O}};Z(H$(_,$,L,T,O),W)}let G=_.query(`
415
415
  SELECT id, title, slug, summary, body_markdown, confidence, topic, tech_stack_json, status, updated_at
416
416
  FROM experiences WHERE project_id = ? AND status = 'accepted' ORDER BY updated_at DESC
417
- `).all(q.id);for(let R of G){let W=o(U,"experiences",`${U$(R.slug||R.title)}.md`),L=_.query("SELECT session_id FROM session_experience_links WHERE experience_id = ?").all(R.id).map((M)=>M.session_id),B=xO(R.tech_stack_json),A=[R.summary?`> ${R.summary.trim().replace(/\n+/g," ")}`:null,R.summary?"":null,`- 所属项目:${B_(q.slug||J)}`,R.topic?`- 主题:${B_(`Topic - ${R.topic}`)}`:null,B.length>0?`- 技术栈:${B.join(" / ")}`:null,"",R.body_markdown.trim()].filter((M)=>M!=null).join(`
418
- `),D={noteType:"experience",entityId:R.id,relPath:W,title:R.title,managedBody:A,frontmatter:{type:"experience",aiwiki_id:R.id,aiwiki_project_id:q.id,project:J,slug:R.slug,topic:R.topic,tech_stack:B,confidence:R.confidence,status:R.status,source_sessions:L,updated_at:R.updated_at}};Z(H$(_,$,D,T,O),W)}let Q=o(U,"Project Summary.md"),Y={noteType:"project-summary",entityId:q.id,relPath:Q,title:J,managedBody:r7(q,z,G),frontmatter:{type:"project-summary",aiwiki_project_id:q.id,project:J,slug:q.slug,canonical_repo_url:q.canonicalRepoUrl,updated_at:O}};return Z(H$(_,$,Y,T,O),Q),H}function fO(_,$){_.created+=$.created,_.updated+=$.updated,_.forced+=$.forced,_.conflicts.push(...$.conflicts)}function yq(_,$,q){let T=new Date().toISOString(),O={created:0,updated:0,forced:0,conflicts:[]},H=(z,G)=>{if(z==="created")O.created+=1;else if(z==="updated")O.updated+=1;else if(z==="forced")O.forced+=1;else O.conflicts.push(G)},X=Z_(_).filter((z)=>z.sessionCount>0||kO(_,z.id)),U=_.query(`
417
+ `).all(q.id);for(let R of G){let W=o(U,"experiences",`${U$(R.slug||R.title)}.md`),L=_.query("SELECT session_id FROM session_experience_links WHERE experience_id = ?").all(R.id).map((M)=>M.session_id),B=xO(R.tech_stack_json),D=[R.summary?`> ${R.summary.trim().replace(/\n+/g," ")}`:null,R.summary?"":null,`- 所属项目:${B_(q.slug||J)}`,R.topic?`- 主题:${B_(`Topic - ${R.topic}`)}`:null,B.length>0?`- 技术栈:${B.join(" / ")}`:null,"",R.body_markdown.trim()].filter((M)=>M!=null).join(`
418
+ `),A={noteType:"experience",entityId:R.id,relPath:W,title:R.title,managedBody:D,frontmatter:{type:"experience",aiwiki_id:R.id,aiwiki_project_id:q.id,project:J,slug:R.slug,topic:R.topic,tech_stack:B,confidence:R.confidence,status:R.status,source_sessions:L,updated_at:R.updated_at}};Z(H$(_,$,A,T,O),W)}let Q=o(U,"Project Summary.md"),Y={noteType:"project-summary",entityId:q.id,relPath:Q,title:J,managedBody:r7(q,z,G),frontmatter:{type:"project-summary",aiwiki_project_id:q.id,project:J,slug:q.slug,canonical_repo_url:q.canonicalRepoUrl,updated_at:O}};return Z(H$(_,$,Y,T,O),Q),H}function fO(_,$){_.created+=$.created,_.updated+=$.updated,_.forced+=$.forced,_.conflicts.push(...$.conflicts)}function yq(_,$,q){let T=new Date().toISOString(),O={created:0,updated:0,forced:0,conflicts:[]},H=(z,G)=>{if(z==="created")O.created+=1;else if(z==="updated")O.updated+=1;else if(z==="forced")O.forced+=1;else O.conflicts.push(G)},X=Z_(_).filter((z)=>z.sessionCount>0||kO(_,z.id)),U=_.query(`
419
419
  SELECT e.title, e.slug, e.summary, e.topic, p.slug AS project_slug,
420
420
  COALESCE(p.display_name, p.canonical_name) AS project_name
421
421
  FROM experiences e
@@ -638,15 +638,15 @@ summaries:
638
638
  `).run({$id:`sum_${ZZ(X.sessionId)}`,$sessionId:X.sessionId,$projectId:U.project_id??$.projectId,$title:X.title,$value:X.value,$summaryMarkdown:X.summaryMarkdown,$metadata:JSON.stringify(X.metadata),$now:q}),T+=1}})(),{written:T,skipped:O}}import{existsSync as qH,readdirSync as $H,readFileSync as WZ,realpathSync as RZ,statSync as YZ}from"node:fs";import{basename as LZ,join as G0}from"node:path";import{tmpdir as zZ}from"node:os";var _H=120,GZ=["/tmp/","/private/tmp/","/var/folders/","/private/var/folders/"];function s(_){if(!_)return!1;let $=zZ();if(_===$)return!0;let q=_.endsWith("/")?_:`${_}/`;return[...GZ,`${$}/`].some((O)=>q.startsWith(O))}function Z$(_){return _.length>_H?`${_.slice(0,_H)}…`:_}function QZ(_){for(let $ of _.split(`
639
639
  `)){let q=$.trim();if(q===""||/^[-=*#>`~]+$/.test(q))continue;return q}return null}function i(_){for(let $ of _){if($.role!=="user")continue;let q=QZ($.content);if(q)return Z$(q)}return null}function j_(_){if(typeof _==="string")return _;if(Array.isArray(_))return _.map(($)=>{if(typeof $==="string")return $;if($&&typeof $==="object"){let q=$;if(typeof q.text==="string")return q.text;return JSON.stringify(q)}return String($)}).join(`
640
640
  `).trim();if(_==null)return"";return JSON.stringify(_)}var TH=[".claude/projects",".claude-internal/projects"];function VZ(_){let q=WZ(_,"utf8").split(`
641
- `),T=[],O=null,H=null;for(let U of q){let J=U.trim();if(J==="")continue;let Z;try{Z=JSON.parse(J)}catch{continue}if(typeof Z.sessionId==="string"&&!H)H=Z.sessionId;if(typeof Z.cwd==="string"&&!O)O=Z.cwd;let z=Z.type;if(z!=="user"&&z!=="assistant")continue;if(Z.isSidechain===!0)continue;let G=Z.message;if(!G||typeof G!=="object")continue;let Q=G,Y=typeof Q.role==="string"?Q.role:z,R=j_(Q.content);if(R.trim()==="")continue;T.push({role:Y,content:R,timestamp:typeof Z.timestamp==="string"?Z.timestamp:null})}if(T.length===0)return null;if(s(O))return null;H??=LZ(_).replace(/\.jsonl$/,"");let X=T.map((U)=>U.timestamp).filter((U)=>U!=null);return{sourceSessionId:H,rawPath:_,rawProjectPath:O,title:i(T),createdAt:X[0]??null,updatedAt:X[X.length-1]??null,messages:T}}function BZ(_){let $=[],q=new Set;for(let T of TH){let O=G0(_,T);if(!qH(O))continue;let H;try{H=RZ(O)}catch{H=O}if(q.has(H))continue;q.add(H);for(let X of $H(O,{withFileTypes:!0})){if(!X.isDirectory())continue;let U=G0(O,X.name);for(let J of $H(U,{withFileTypes:!0}))if(J.isFile()&&J.name.endsWith(".jsonl"))$.push(G0(U,J.name))}}return $}var OH={id:"claude-code",name:"Claude Code",detect(_){return TH.some(($)=>qH(G0(_,$)))},collect(_){let $=[];for(let q of BZ(_))try{if(!YZ(q).isFile())continue;let T=VZ(q);if(T)$.push(T)}catch{continue}return $}};import{existsSync as XH,readdirSync as UH,readFileSync as wZ,statSync as AZ}from"node:fs";import{join as z_}from"node:path";var DZ="Library/Application Support",MZ=["CodeBuddyExtension","CodeBuddy CN"];function JH(_,$,q=0){if(q>6)return;let T;try{T=UH(_,{withFileTypes:!0})}catch{return}for(let O of T){if(!O.isDirectory())continue;let H=z_(_,O.name);if(O.name==="history")$.push(H);else if(O.name!=="messages")JH(H,$,q+1)}}function dq(_){try{return JSON.parse(wZ(_,"utf8"))}catch{return null}}function IZ(_){if(typeof _!=="string")return j_(_);let $=_.trim();if($.startsWith("{")||$.startsWith("["))try{let q=JSON.parse($);if(q&&typeof q==="object"&&"content"in q)return j_(q.content);return j_(q)}catch{return _}return _}function FZ(_){let $=_.match(/Workspace Folder:\s*(.+)/);if(!$)return null;let q=$[1].trim();return q===""?null:q}function SZ(_,$,q){let T=dq(z_(_,"index.json"));if(!T?.messages)return null;let O=[],H=null;for(let U of T.messages){let J=dq(z_(_,"messages",`${U.id}.json`));if(!J)continue;let Z=U.role??J.role??"user";if(Z!=="user"&&Z!=="assistant")continue;let z=IZ(J.message);if(z.trim()==="")continue;if(!H&&Z==="user")H=FZ(z);O.push({role:Z,content:z,timestamp:null})}if(O.length===0)return null;if(s(H))return null;let X=q.name&&q.name.trim()!==""?Z$(q.name.trim()):i(O);return{sourceSessionId:$,rawPath:_,rawProjectPath:H,title:X,createdAt:q.createdAt??null,updatedAt:q.lastMessageAt??null,messages:O}}function KZ(_,$){for(let q of UH(_,{withFileTypes:!0})){if(!q.isDirectory())continue;let T=z_(_,q.name),O=dq(z_(T,"index.json"));if(!O?.conversations?.length)continue;for(let H of O.conversations){if(!H.id)continue;let X=z_(T,H.id);if(!XH(X))continue;try{let U=SZ(X,H.id,H);if(U)$.push(U)}catch{continue}}}}function HH(_){return MZ.map(($)=>z_(_,DZ,$)).filter(($)=>XH($))}var ZH={id:"codebuddy",name:"CodeBuddy",detect(_){return HH(_).length>0},collect(_){let $=[],q=new Set;for(let T of HH(_)){let O=[];JH(z_(T,"Data"),O);for(let H of O){try{if(!AZ(H).isDirectory())continue}catch{continue}KZ(H,$)}}return $.filter((T)=>{if(q.has(T.sourceSessionId))return!1;return q.add(T.sourceSessionId),!0})}};import{existsSync as zH,readdirSync as NZ,readFileSync as CZ,realpathSync as PZ,statSync as fZ}from"node:fs";import{basename as EZ,join as cq}from"node:path";var GH=[".codex/sessions",".codex-internal/sessions"];function jZ(_){return _.replace(/\[REQ:[0-9a-f-]+\]/gi,"").replace(/\[AMP_DONE:[0-9a-f-]+\]/gi,"").trim()}function QH(_,$){for(let q of NZ(_,{withFileTypes:!0})){let T=cq(_,q.name);if(q.isDirectory())QH(T,$);else if(q.isFile()&&q.name.startsWith("rollout-")&&q.name.endsWith(".jsonl"))$.push(T)}}function bZ(_){let $=CZ(_,"utf8"),q=[],T=null,O=null,H=null;for(let U of $.split(`
642
- `)){let J=U.trim();if(J==="")continue;let Z;try{Z=JSON.parse(J)}catch{continue}let z=Z.payload;if(!z||typeof z!=="object")continue;let G=z,Q=typeof Z.timestamp==="string"?Z.timestamp:null;if(Z.type==="session_meta"){if(typeof G.id==="string")O=G.id;if(typeof G.cwd==="string")T=G.cwd;if(typeof G.timestamp==="string")H=G.timestamp;continue}if(Z.type!=="event_msg")continue;let Y=G.type;if(Y!=="user_message"&&Y!=="agent_message")continue;if(typeof G.message!=="string")continue;let R=jZ(G.message);if(R==="")continue;q.push({role:Y==="user_message"?"user":"assistant",content:R,timestamp:Q})}if(q.length===0)return null;if(s(T))return null;O??=EZ(_).replace(/\.jsonl$/,"");let X=q.map((U)=>U.timestamp).filter((U)=>U!=null);return{sourceSessionId:O,rawPath:_,rawProjectPath:T,title:i(q),createdAt:H??X[0]??null,updatedAt:X[X.length-1]??null,messages:q}}function gZ(_){let $=[],q=new Set;for(let T of GH){let O=cq(_,T);if(!zH(O))continue;let H;try{H=PZ(O)}catch{H=O}if(q.has(H))continue;q.add(H),QH(O,$)}return $}var WH={id:"codex",name:"Codex",detect(_){return GH.some(($)=>zH(cq(_,$)))},collect(_){let $=[];for(let q of gZ(_))try{if(!fZ(q).isFile())continue;let T=bZ(q);if(T)$.push(T)}catch{continue}return $}};import{existsSync as z$,readdirSync as yZ,readFileSync as xZ}from"node:fs";import{join as w_}from"node:path";var RH="Library/Application Support/Cursor/User";function sq(_){if(typeof _!=="number"||!Number.isFinite(_))return null;let $=new Date(_);return Number.isNaN($.getTime())?null:$.toISOString()}function kZ(_){if(!_.startsWith("file://"))return null;try{return decodeURIComponent(_.replace(/^file:\/\//,"")).replace(/\/+$/,"")}catch{return null}}function YH(_){return VO(_)}function uZ(_){let $=new Map,q=w_(_,"workspaceStorage");if(!z$(q))return $;for(let T of yZ(q,{withFileTypes:!0})){if(!T.isDirectory())continue;let O=w_(q,T.name),H=null,X=w_(O,"workspace.json");if(z$(X))try{let Z=JSON.parse(xZ(X,"utf8"));if(typeof Z.folder==="string")H=kZ(Z.folder)}catch{}let U=w_(O,"state.vscdb");if(!z$(U))continue;let J=YH(U);if(!J)continue;try{let Z=J.query("SELECT value FROM ItemTable WHERE key = ?").get("composer.composerData");if(!Z)continue;let z=JSON.parse(Z.value);for(let G of z.allComposers??[]){let Q=G.composerId;if(typeof Q!=="string")continue;if($.has(Q))continue;$.set(Q,{cwd:H,name:typeof G.name==="string"?G.name:null,createdAt:sq(G.createdAt),updatedAt:sq(G.lastUpdatedAt)})}}catch{}finally{J.close()}}return $}function hZ(_,$,q,T){let O=_.query("SELECT value FROM cursorDiskKV WHERE key = ?").get(`composerData:${q}`);if(!O)return null;let H;try{H=JSON.parse(O.value)}catch{return null}let X=H.fullConversationHeadersOnly??[];if(X.length===0)return null;let U=_.query("SELECT value FROM cursorDiskKV WHERE key = ?"),J=[];for(let G of X){if(G.type!==1&&G.type!==2)continue;let Q=U.get(`bubbleId:${q}:${G.bubbleId}`);if(!Q)continue;let Y;try{Y=JSON.parse(Q.value)}catch{continue}let R=typeof Y.text==="string"?Y.text.trim():"";if(R==="")continue;J.push({role:G.type===1?"user":"assistant",content:R,timestamp:null})}if(J.length===0)return null;if(s(T.cwd))return null;let Z=T.name??H.name??null,z=Z&&Z.trim()!==""?Z$(Z.trim()):i(J);return{sourceSessionId:q,rawPath:`${$}#${q}`,rawProjectPath:T.cwd,title:z,createdAt:T.createdAt??sq(H.createdAt),updatedAt:T.updatedAt,messages:J}}var LH={id:"cursor",name:"Cursor",detect(_){return z$(w_(_,RH,"globalStorage","state.vscdb"))},collect(_){let $=w_(_,RH),q=w_($,"globalStorage","state.vscdb");if(!z$(q))return[];let T=uZ($);if(T.size===0)return[];let O=YH(q);if(!O)return[];let H=[];try{for(let[X,U]of T)try{let J=hZ(O,q,X,U);if(J)H.push(J)}catch{continue}}finally{O.close()}return H}};import{existsSync as G$,readdirSync as VH,readFileSync as AH,realpathSync as vZ,statSync as mZ}from"node:fs";import{basename as DH,dirname as BH,join as b_}from"node:path";var lZ=[".gemini-internal",".gemini"];function pZ(_){let $=new Map,q=b_(_,"projects.json");if(!G$(q))return $;try{let T=JSON.parse(AH(q,"utf8"));for(let[O,H]of Object.entries(T.projects??{}))if(typeof H==="string"&&!$.has(H))$.set(H,O)}catch{}return $}function dZ(_){let $=_.trim();return $.startsWith("/")&&!$.includes(`
643
- `)&&$.length<256}function cZ(_,$,q){let T;try{T=JSON.parse(AH(_,"utf8"))}catch{return null}let O=[];for(let U of T.messages??[]){if(U.type!=="user"&&U.type!=="gemini")continue;let J=typeof U.content==="string"?U.content:"";if(J.trim()==="")continue;O.push({role:U.type==="user"?"user":"assistant",content:J,timestamp:typeof U.timestamp==="string"?U.timestamp:null})}if(O.length===0)return null;let H=q.get($)??null;if(!H){let U=O.find((J)=>J.role==="user");if(U&&dZ(U.content))H=U.content.trim().replace(/\/+$/,"")}if(s(H))return null;let X=O.map((U)=>U.timestamp).filter((U)=>U!=null);return{sourceSessionId:T.sessionId??DH(_).replace(/\.json$/,""),rawPath:_,rawProjectPath:H,title:i(O),createdAt:T.startTime??X[0]??null,updatedAt:T.lastUpdated??X[X.length-1]??null,messages:O}}function wH(_){let $=new Set;for(let q of lZ){let T=b_(_,q);if(!G$(T))continue;let O;try{O=vZ(T)}catch{O=T}if($.has(O))continue;return $.add(O),T}return null}function sZ(_){let $=b_(_,"tmp");if(!G$($))return[];let q=[];for(let T of VH($,{withFileTypes:!0})){if(!T.isDirectory())continue;let O=b_($,T.name,"chats");if(!G$(O))continue;for(let H of VH(O,{withFileTypes:!0}))if(H.isFile()&&H.name.startsWith("session-")&&H.name.endsWith(".json"))q.push(b_(O,H.name))}return q}var MH={id:"gemini",name:"Gemini",detect(_){let $=wH(_);return $!=null&&G$(b_($,"tmp"))},collect(_){let $=wH(_);if(!$)return[];let q=pZ($),T=[];for(let O of sZ($))try{if(!mZ(O).isFile())continue;let H=DH(BH(BH(O))),X=cZ(O,H,q);if(X)T.push(X)}catch{continue}return T}};var IH=[OH,WH,LH,MH,ZH];function iq(_){return h(_)}function iZ(_,$){return`ses_${iq(`${_}\x00${$.sourceSessionId}\x00${$.rawPath}`)}`}function nZ(_,$){return iq(`${_}\x00${$}`)}function aZ(_){return iq(`${_.length}\x00${_.join("\x00")}`)}function rZ(_,$,q){_.query(`
641
+ `),T=[],O=null,H=null;for(let U of q){let J=U.trim();if(J==="")continue;let Z;try{Z=JSON.parse(J)}catch{continue}if(typeof Z.sessionId==="string"&&!H)H=Z.sessionId;if(typeof Z.cwd==="string"&&!O)O=Z.cwd;let z=Z.type;if(z!=="user"&&z!=="assistant")continue;if(Z.isSidechain===!0)continue;let G=Z.message;if(!G||typeof G!=="object")continue;let Q=G,Y=typeof Q.role==="string"?Q.role:z,R=j_(Q.content);if(R.trim()==="")continue;T.push({role:Y,content:R,timestamp:typeof Z.timestamp==="string"?Z.timestamp:null})}if(T.length===0)return null;if(s(O))return null;H??=LZ(_).replace(/\.jsonl$/,"");let X=T.map((U)=>U.timestamp).filter((U)=>U!=null);return{sourceSessionId:H,rawPath:_,rawProjectPath:O,title:i(T),createdAt:X[0]??null,updatedAt:X[X.length-1]??null,messages:T}}function BZ(_){let $=[],q=new Set;for(let T of TH){let O=G0(_,T);if(!qH(O))continue;let H;try{H=RZ(O)}catch{H=O}if(q.has(H))continue;q.add(H);for(let X of $H(O,{withFileTypes:!0})){if(!X.isDirectory())continue;let U=G0(O,X.name);for(let J of $H(U,{withFileTypes:!0}))if(J.isFile()&&J.name.endsWith(".jsonl"))$.push(G0(U,J.name))}}return $}var OH={id:"claude-code",name:"Claude Code",detect(_){return TH.some(($)=>qH(G0(_,$)))},collect(_){let $=[];for(let q of BZ(_))try{if(!YZ(q).isFile())continue;let T=VZ(q);if(T)$.push(T)}catch{continue}return $}};import{existsSync as XH,readdirSync as UH,readFileSync as wZ,statSync as DZ}from"node:fs";import{join as z_}from"node:path";var AZ="Library/Application Support",MZ=["CodeBuddyExtension","CodeBuddy CN"];function JH(_,$,q=0){if(q>6)return;let T;try{T=UH(_,{withFileTypes:!0})}catch{return}for(let O of T){if(!O.isDirectory())continue;let H=z_(_,O.name);if(O.name==="history")$.push(H);else if(O.name!=="messages")JH(H,$,q+1)}}function dq(_){try{return JSON.parse(wZ(_,"utf8"))}catch{return null}}function IZ(_){if(typeof _!=="string")return j_(_);let $=_.trim();if($.startsWith("{")||$.startsWith("["))try{let q=JSON.parse($);if(q&&typeof q==="object"&&"content"in q)return j_(q.content);return j_(q)}catch{return _}return _}function FZ(_){let $=_.match(/Workspace Folder:\s*(.+)/);if(!$)return null;let q=$[1].trim();return q===""?null:q}function SZ(_,$,q){let T=dq(z_(_,"index.json"));if(!T?.messages)return null;let O=[],H=null;for(let U of T.messages){let J=dq(z_(_,"messages",`${U.id}.json`));if(!J)continue;let Z=U.role??J.role??"user";if(Z!=="user"&&Z!=="assistant")continue;let z=IZ(J.message);if(z.trim()==="")continue;if(!H&&Z==="user")H=FZ(z);O.push({role:Z,content:z,timestamp:null})}if(O.length===0)return null;if(s(H))return null;let X=q.name&&q.name.trim()!==""?Z$(q.name.trim()):i(O);return{sourceSessionId:$,rawPath:_,rawProjectPath:H,title:X,createdAt:q.createdAt??null,updatedAt:q.lastMessageAt??null,messages:O}}function KZ(_,$){for(let q of UH(_,{withFileTypes:!0})){if(!q.isDirectory())continue;let T=z_(_,q.name),O=dq(z_(T,"index.json"));if(!O?.conversations?.length)continue;for(let H of O.conversations){if(!H.id)continue;let X=z_(T,H.id);if(!XH(X))continue;try{let U=SZ(X,H.id,H);if(U)$.push(U)}catch{continue}}}}function HH(_){return MZ.map(($)=>z_(_,AZ,$)).filter(($)=>XH($))}var ZH={id:"codebuddy",name:"CodeBuddy",detect(_){return HH(_).length>0},collect(_){let $=[],q=new Set;for(let T of HH(_)){let O=[];JH(z_(T,"Data"),O);for(let H of O){try{if(!DZ(H).isDirectory())continue}catch{continue}KZ(H,$)}}return $.filter((T)=>{if(q.has(T.sourceSessionId))return!1;return q.add(T.sourceSessionId),!0})}};import{existsSync as zH,readdirSync as NZ,readFileSync as CZ,realpathSync as PZ,statSync as fZ}from"node:fs";import{basename as EZ,join as cq}from"node:path";var GH=[".codex/sessions",".codex-internal/sessions"];function jZ(_){return _.replace(/\[REQ:[0-9a-f-]+\]/gi,"").replace(/\[AMP_DONE:[0-9a-f-]+\]/gi,"").trim()}function QH(_,$){for(let q of NZ(_,{withFileTypes:!0})){let T=cq(_,q.name);if(q.isDirectory())QH(T,$);else if(q.isFile()&&q.name.startsWith("rollout-")&&q.name.endsWith(".jsonl"))$.push(T)}}function bZ(_){let $=CZ(_,"utf8"),q=[],T=null,O=null,H=null;for(let U of $.split(`
642
+ `)){let J=U.trim();if(J==="")continue;let Z;try{Z=JSON.parse(J)}catch{continue}let z=Z.payload;if(!z||typeof z!=="object")continue;let G=z,Q=typeof Z.timestamp==="string"?Z.timestamp:null;if(Z.type==="session_meta"){if(typeof G.id==="string")O=G.id;if(typeof G.cwd==="string")T=G.cwd;if(typeof G.timestamp==="string")H=G.timestamp;continue}if(Z.type!=="event_msg")continue;let Y=G.type;if(Y!=="user_message"&&Y!=="agent_message")continue;if(typeof G.message!=="string")continue;let R=jZ(G.message);if(R==="")continue;q.push({role:Y==="user_message"?"user":"assistant",content:R,timestamp:Q})}if(q.length===0)return null;if(s(T))return null;O??=EZ(_).replace(/\.jsonl$/,"");let X=q.map((U)=>U.timestamp).filter((U)=>U!=null);return{sourceSessionId:O,rawPath:_,rawProjectPath:T,title:i(q),createdAt:H??X[0]??null,updatedAt:X[X.length-1]??null,messages:q}}function gZ(_){let $=[],q=new Set;for(let T of GH){let O=cq(_,T);if(!zH(O))continue;let H;try{H=PZ(O)}catch{H=O}if(q.has(H))continue;q.add(H),QH(O,$)}return $}var WH={id:"codex",name:"Codex",detect(_){return GH.some(($)=>zH(cq(_,$)))},collect(_){let $=[];for(let q of gZ(_))try{if(!fZ(q).isFile())continue;let T=bZ(q);if(T)$.push(T)}catch{continue}return $}};import{existsSync as z$,readdirSync as yZ,readFileSync as xZ}from"node:fs";import{join as w_}from"node:path";var RH="Library/Application Support/Cursor/User";function sq(_){if(typeof _!=="number"||!Number.isFinite(_))return null;let $=new Date(_);return Number.isNaN($.getTime())?null:$.toISOString()}function kZ(_){if(!_.startsWith("file://"))return null;try{return decodeURIComponent(_.replace(/^file:\/\//,"")).replace(/\/+$/,"")}catch{return null}}function YH(_){return VO(_)}function uZ(_){let $=new Map,q=w_(_,"workspaceStorage");if(!z$(q))return $;for(let T of yZ(q,{withFileTypes:!0})){if(!T.isDirectory())continue;let O=w_(q,T.name),H=null,X=w_(O,"workspace.json");if(z$(X))try{let Z=JSON.parse(xZ(X,"utf8"));if(typeof Z.folder==="string")H=kZ(Z.folder)}catch{}let U=w_(O,"state.vscdb");if(!z$(U))continue;let J=YH(U);if(!J)continue;try{let Z=J.query("SELECT value FROM ItemTable WHERE key = ?").get("composer.composerData");if(!Z)continue;let z=JSON.parse(Z.value);for(let G of z.allComposers??[]){let Q=G.composerId;if(typeof Q!=="string")continue;if($.has(Q))continue;$.set(Q,{cwd:H,name:typeof G.name==="string"?G.name:null,createdAt:sq(G.createdAt),updatedAt:sq(G.lastUpdatedAt)})}}catch{}finally{J.close()}}return $}function hZ(_,$,q,T){let O=_.query("SELECT value FROM cursorDiskKV WHERE key = ?").get(`composerData:${q}`);if(!O)return null;let H;try{H=JSON.parse(O.value)}catch{return null}let X=H.fullConversationHeadersOnly??[];if(X.length===0)return null;let U=_.query("SELECT value FROM cursorDiskKV WHERE key = ?"),J=[];for(let G of X){if(G.type!==1&&G.type!==2)continue;let Q=U.get(`bubbleId:${q}:${G.bubbleId}`);if(!Q)continue;let Y;try{Y=JSON.parse(Q.value)}catch{continue}let R=typeof Y.text==="string"?Y.text.trim():"";if(R==="")continue;J.push({role:G.type===1?"user":"assistant",content:R,timestamp:null})}if(J.length===0)return null;if(s(T.cwd))return null;let Z=T.name??H.name??null,z=Z&&Z.trim()!==""?Z$(Z.trim()):i(J);return{sourceSessionId:q,rawPath:`${$}#${q}`,rawProjectPath:T.cwd,title:z,createdAt:T.createdAt??sq(H.createdAt),updatedAt:T.updatedAt,messages:J}}var LH={id:"cursor",name:"Cursor",detect(_){return z$(w_(_,RH,"globalStorage","state.vscdb"))},collect(_){let $=w_(_,RH),q=w_($,"globalStorage","state.vscdb");if(!z$(q))return[];let T=uZ($);if(T.size===0)return[];let O=YH(q);if(!O)return[];let H=[];try{for(let[X,U]of T)try{let J=hZ(O,q,X,U);if(J)H.push(J)}catch{continue}}finally{O.close()}return H}};import{existsSync as G$,readdirSync as VH,readFileSync as DH,realpathSync as vZ,statSync as mZ}from"node:fs";import{basename as AH,dirname as BH,join as b_}from"node:path";var lZ=[".gemini-internal",".gemini"];function pZ(_){let $=new Map,q=b_(_,"projects.json");if(!G$(q))return $;try{let T=JSON.parse(DH(q,"utf8"));for(let[O,H]of Object.entries(T.projects??{}))if(typeof H==="string"&&!$.has(H))$.set(H,O)}catch{}return $}function dZ(_){let $=_.trim();return $.startsWith("/")&&!$.includes(`
643
+ `)&&$.length<256}function cZ(_,$,q){let T;try{T=JSON.parse(DH(_,"utf8"))}catch{return null}let O=[];for(let U of T.messages??[]){if(U.type!=="user"&&U.type!=="gemini")continue;let J=typeof U.content==="string"?U.content:"";if(J.trim()==="")continue;O.push({role:U.type==="user"?"user":"assistant",content:J,timestamp:typeof U.timestamp==="string"?U.timestamp:null})}if(O.length===0)return null;let H=q.get($)??null;if(!H){let U=O.find((J)=>J.role==="user");if(U&&dZ(U.content))H=U.content.trim().replace(/\/+$/,"")}if(s(H))return null;let X=O.map((U)=>U.timestamp).filter((U)=>U!=null);return{sourceSessionId:T.sessionId??AH(_).replace(/\.json$/,""),rawPath:_,rawProjectPath:H,title:i(O),createdAt:T.startTime??X[0]??null,updatedAt:T.lastUpdated??X[X.length-1]??null,messages:O}}function wH(_){let $=new Set;for(let q of lZ){let T=b_(_,q);if(!G$(T))continue;let O;try{O=vZ(T)}catch{O=T}if($.has(O))continue;return $.add(O),T}return null}function sZ(_){let $=b_(_,"tmp");if(!G$($))return[];let q=[];for(let T of VH($,{withFileTypes:!0})){if(!T.isDirectory())continue;let O=b_($,T.name,"chats");if(!G$(O))continue;for(let H of VH(O,{withFileTypes:!0}))if(H.isFile()&&H.name.startsWith("session-")&&H.name.endsWith(".json"))q.push(b_(O,H.name))}return q}var MH={id:"gemini",name:"Gemini",detect(_){let $=wH(_);return $!=null&&G$(b_($,"tmp"))},collect(_){let $=wH(_);if(!$)return[];let q=pZ($),T=[];for(let O of sZ($))try{if(!mZ(O).isFile())continue;let H=AH(BH(BH(O))),X=cZ(O,H,q);if(X)T.push(X)}catch{continue}return T}};var IH=[OH,WH,LH,MH,ZH];function iq(_){return h(_)}function iZ(_,$){return`ses_${iq(`${_}\x00${$.sourceSessionId}\x00${$.rawPath}`)}`}function nZ(_,$){return iq(`${_}\x00${$}`)}function aZ(_){return iq(`${_.length}\x00${_.join("\x00")}`)}function rZ(_,$,q){_.query(`
644
644
  INSERT INTO sources (id, name, enabled, scan_paths, config_json, last_sync_at)
645
645
  VALUES ($id, $name, 1, NULL, NULL, $now)
646
646
  ON CONFLICT(id) DO UPDATE SET
647
647
  name = excluded.name,
648
648
  last_sync_at = excluded.last_sync_at
649
- `).run({$id:$.id,$name:$.name,$now:q})}function oZ(_,$){if(!$)return null;try{return DO(_,$).id}catch{return null}}function tZ(_,$,q,T,O){let H=iZ($.id,q),X=q.messages.map((Q)=>nZ(Q.role,Q.content)),U=aZ(X),J=oZ(_,q.rawProjectPath),Z=_.query("SELECT content_hash, first_seen_at FROM sessions WHERE id = ?").get(H);if(Z&&Z.content_hash===U)return _.query("UPDATE sessions SET project_id = $projectId, status = $status, last_seen_at = $now WHERE id = $id").run({$projectId:J,$status:"unchanged",$now:T,$id:H}),O.unchanged+=1,H;let z=Z?"changed":"new",G=Z?.first_seen_at??T;if(_.query(`
649
+ `).run({$id:$.id,$name:$.name,$now:q})}function oZ(_,$){if(!$)return null;try{return AO(_,$).id}catch{return null}}function tZ(_,$,q,T,O){let H=iZ($.id,q),X=q.messages.map((Q)=>nZ(Q.role,Q.content)),U=aZ(X),J=oZ(_,q.rawProjectPath),Z=_.query("SELECT content_hash, first_seen_at FROM sessions WHERE id = ?").get(H);if(Z&&Z.content_hash===U)return _.query("UPDATE sessions SET project_id = $projectId, status = $status, last_seen_at = $now WHERE id = $id").run({$projectId:J,$status:"unchanged",$now:T,$id:H}),O.unchanged+=1,H;let z=Z?"changed":"new",G=Z?.first_seen_at??T;if(_.query(`
650
650
  INSERT INTO sessions (
651
651
  id, source_id, source_session_id, project_id, checkout_id, raw_project_path, raw_path,
652
652
  title, message_count, content_hash, status, created_at, updated_at, first_seen_at, last_seen_at
@@ -667,7 +667,7 @@ summaries:
667
667
  `).run({$id:H,$sourceId:$.id,$sourceSessionId:q.sourceSessionId,$projectId:J,$rawProjectPath:q.rawProjectPath,$rawPath:q.rawPath,$title:q.title,$messageCount:q.messages.length,$contentHash:U,$status:z,$createdAt:q.createdAt,$updatedAt:q.updatedAt,$firstSeenAt:G,$now:T}),_.query("DELETE FROM messages WHERE session_id = ?").run(H),q.messages.forEach((Q,Y)=>{_.query(`
668
668
  INSERT INTO messages (id, session_id, role, content, timestamp, seq_order, content_hash)
669
669
  VALUES ($id, $sessionId, $role, $content, $timestamp, $seqOrder, $contentHash)
670
- `).run({$id:`msg_${H}_${Y}`,$sessionId:H,$role:Q.role,$content:Q.content,$timestamp:Q.timestamp,$seqOrder:Y,$contentHash:X[Y]})}),z==="new")O.new+=1;else O.changed+=1;return H}function eZ(_,$,q,T,O){let H=_.query("SELECT id FROM sessions WHERE source_id = ? AND status != 'source_missing'").all($);for(let X of H){if(q.has(X.id))continue;_.query("UPDATE sessions SET status = $status, last_seen_at = $now WHERE id = $id").run({$status:"source_missing",$now:T,$id:X.id}),O.sourceMissing+=1}}function FH(_,$){let q=new Date().toISOString(),T=[];for(let O of IH){if(!O.detect($.homeDir))continue;rZ(_,O,q);let H={source:O.id,new:0,changed:0,unchanged:0,sourceMissing:0,total:0},X=O.collect($.homeDir),U=new Set;_.transaction(()=>{for(let Z of X){if($.projectFilter&&Z.rawProjectPath!==$.projectFilter)continue;let z=tZ(_,O,Z,q,H);U.add(z),H.total+=1}if(!$.projectFilter)eZ(_,O.id,U,q,H)})(),T.push(H)}return{bySource:T}}var CH=`llm-iwiki
670
+ `).run({$id:`msg_${H}_${Y}`,$sessionId:H,$role:Q.role,$content:Q.content,$timestamp:Q.timestamp,$seqOrder:Y,$contentHash:X[Y]})}),z==="new")O.new+=1;else O.changed+=1;return H}function eZ(_,$,q,T,O){let H=_.query("SELECT id FROM sessions WHERE source_id = ? AND status != 'source_missing'").all($);for(let X of H){if(q.has(X.id))continue;_.query("UPDATE sessions SET status = $status, last_seen_at = $now WHERE id = $id").run({$status:"source_missing",$now:T,$id:X.id}),O.sourceMissing+=1}}function FH(_,$){let q=new Date().toISOString(),T=[],O=$.projectFilter??null;$.onProgress?.({type:"scan-start",homeDir:$.homeDir,projectFilter:O});for(let H of IH){if(!H.detect($.homeDir))continue;$.onProgress?.({type:"source-detected",source:H.id}),rZ(_,H,q);let X={source:H.id,new:0,changed:0,unchanged:0,sourceMissing:0,total:0},U=H.collect($.homeDir);$.onProgress?.({type:"source-collected",source:H.id,candidateSessions:U.length});let J=new Set;_.transaction(()=>{for(let z of U){if($.projectFilter&&z.rawProjectPath!==$.projectFilter)continue;let G=tZ(_,H,z,q,X);J.add(G),X.total+=1}if(!$.projectFilter)eZ(_,H.id,J,q,X)})(),T.push(X)}return{bySource:T}}var CH=`llm-iwiki
671
671
 
672
672
  提示:所有 --project 都接受「路径 / proj_xxx / 项目名或 slug」三种形式。
673
673
 
@@ -704,4 +704,4 @@ Global flags:
704
704
  `,PH=`用法:
705
705
  llm-iwiki skills list # 列出可用 target 与将写入的 skill
706
706
  llm-iwiki skills init [--target codex|claude-code|cursor] [--force] [--dry-run]`;function x(_,$){return _5($)?$:$5(_,$)}function g(_,$){let q=_.indexOf($);if(q===-1)return null;let T=_[q+1];if(!T||T.startsWith("--"))return null;return T}function l(_,$,q){if(_ instanceof O$){if($.stderr(`找不到唯一项目:${_.ref}`),_.candidates.length===0)$.stderr("可能原因:路径下尚无会话、或项目名写错。建议:"),$.stderr(" - 先运行 llm-iwiki sync 采集会话"),$.stderr(" - 用 llm-iwiki projects list 查看已有项目,再用 proj_xxx 精确指定");else{$.stderr("存在多个候选(按会话数排序):");for(let T of _.candidates){let O=T.displayName??T.canonicalName;$.stderr(` ${T.id} ${T.sessionCount} sessions ${O}`)}$.stderr("建议:用 --project <proj_xxx> 精确指定,或先 llm-iwiki projects dedupe 合并重复项目。")}if(q&&_.stack)$.stderr(_.stack);return}if($.stderr(_ instanceof Error?_.message:String(_)),q&&_ instanceof Error&&_.stack)$.stderr(_.stack)}function q5(_,$,q){let T=g($,"--project")??q.cwd;return c(_,T,q.cwd)}function T5(_){let $=_.match(/^(\d+)([dhw])$/);if(!$)throw Error(`Invalid --since: ${_}. Use forms like 30d, 12h, 2w.`);let q=Number($[1]),T=$[2]==="h"?3600000:$[2]==="w"?604800000:86400000;return new Date(Date.now()-q*T).toISOString()}async function fH(_,$){let q=_.includes("--debug");if(_.length===0||_[0]==="--help"||_[0]==="-h")return $.stdout(CH),0;if(_[0]==="init"){let T=N($.homeDir);if(Q0(T.configDir,{recursive:!0}),!nq(T.configFile))aq(T.configFile,`obsidian_vault = ""
707
- `);let O=C(T.databaseFile);try{P(O)}finally{O.close()}return $.stdout(`Initialized llm-iwiki at ${T.configDir}`),0}if(_[0]==="doctor"){let T=N($.homeDir);if(!nq(T.configFile))return $.stderr("llm-iwiki is not initialized. Run: llm-iwiki init"),1;if(!nq(T.databaseFile))return $.stderr("llm-iwiki database is missing. Run: llm-iwiki init"),1;let O=C(T.databaseFile);try{P(O)}finally{O.close()}return $.stdout(`config: ${T.configFile}`),$.stdout(`database: ${T.databaseFile}`),$.stdout("status: ok"),0}if(_[0]==="sync"){let T=g(_,"--project"),O=N($.homeDir),H=C(O.databaseFile);try{P(H);let X=FH(H,{homeDir:$.homeDir??O.homeDir,projectFilter:T?x($.cwd,T):null});if(X.bySource.length===0)return $.stdout("No collectors detected on this machine."),0;for(let U of X.bySource)$.stdout(`${U.source}: ${U.total} sessions (new ${U.new}, changed ${U.changed}, unchanged ${U.unchanged}, missing ${U.sourceMissing})`);return 0}catch(X){return $.stderr(X instanceof Error?X.message:String(X)),1}finally{H.close()}}if(_[0]==="projects"&&_[1]==="list"){let T=N($.homeDir),O=C(T.databaseFile);try{P(O);let H=Z_(O);if(H.length===0)return $.stdout("No projects yet. Run: llm-iwiki sync"),0;for(let X of H){let U=X.displayName??X.canonicalName;$.stdout(`${X.id} ${X.sessionCount} sessions ${U}`)}return 0}finally{O.close()}}if(_[0]==="projects"&&_[1]==="inspect"){let T=_[2];if(!T)return $.stderr("Usage: llm-iwiki projects inspect <project>"),1;let O=N($.homeDir),H=C(O.databaseFile);try{P(H);let X=c(H,T,$.cwd),U=cO(H,X.id);if($.stdout(`project: ${X.displayName??X.canonicalName}`),$.stdout(`id: ${X.id}`),X.canonicalRepoUrl)$.stdout(`repo: ${X.canonicalRepoUrl}`);$.stdout(`sources: ${U.sources.map((J)=>`${J.source}(${J.sessionCount})`).join(", ")||"none"}`),$.stdout(`sessions: ${U.sessions.length}`);for(let J of U.sessions)$.stdout(` ${J.id} [${J.sourceId}] ${J.title??J.sourceSessionId} (${J.messageCount} msgs, ${J.status})`);return 0}catch(X){return l(X,$,q),1}finally{H.close()}}if(_[0]==="projects"&&_[1]==="merge"){let T=_[2],O=_[3];if(!T||!O)return $.stderr("Usage: llm-iwiki projects merge <from-project-id> <into-project-id>"),1;let H=N($.homeDir),X=C(H.databaseFile);try{P(X);let U=Eq(X,T,O);return $.stdout(`merged ${U.fromId} -> ${U.intoId} (moved ${U.movedSessions} sessions)`),0}catch(U){return l(U,$,q),1}finally{X.close()}}if(_[0]==="projects"&&_[1]==="dedupe"){let T=_.includes("--dry-run"),O=N($.homeDir),H=C(O.databaseFile);try{if(P(H),T){let U=Z_(H),J=new Map;for(let z of U){let G=z.canonicalRepoUrl?`repo:${z.canonicalRepoUrl}`:`slug:${z.slug}`;J.set(G,[...J.get(G)??[],z])}let Z=0;for(let[,z]of J){if(z.length<2)continue;Z+=1,$.stdout(`would merge ${z.length} duplicates of ${z[0].canonicalName}`)}return $.stdout(`dry-run: ${Z} duplicate group(s)`),0}let X=MO(H);$.stdout(`deduped: merged ${X.merges.length} duplicate project(s)`);for(let U of X.merges)$.stdout(` ${U.fromId} -> ${U.intoId} (moved ${U.movedSessions} sessions)`);return 0}catch(X){return l(X,$,q),1}finally{H.close()}}if(_[0]==="sessions"&&_[1]==="list"){let T=g(_,"--project"),O=N($.homeDir),H=C(O.databaseFile);try{P(H);let X=T?c(H,T,$.cwd):q5(H,_,$),U=hq(H,X.id);$.stdout(`project: ${X.displayName??X.canonicalName} (${X.id})`),$.stdout(`sessions: ${U.length}`);for(let J of U)$.stdout(` ${J.id} [${J.sourceId}] ${J.title??J.sourceSessionId} (${J.messageCount} msgs, ${J.status})`);return 0}catch(X){return l(X,$,q),1}finally{H.close()}}if(_[0]==="sessions"&&_[1]==="read"){let T=_[2];if(!T||T.startsWith("--"))return $.stderr("Usage: llm-iwiki sessions read <session-id> [--full]"),1;let O=N($.homeDir),H=C(O.databaseFile);try{P(H);let{session:X,transcript:U,messageCount:J}=pO(H,T,{full:_.includes("--full")});return $.stdout(`# ${X.title??X.sourceSessionId}`),$.stdout(`session: ${X.id} source: ${X.sourceId} messages: ${J}`),$.stdout(""),$.stdout(U),0}catch(X){return l(X,$,q),1}finally{H.close()}}if(_[0]==="projects"&&_[1]==="resolve"){let T=_[2]??$.cwd,O=N($.homeDir),H=C(O.databaseFile);try{P(H);let X=fq(H,x($.cwd,T));return $.stdout(JSON.stringify(X,null,2)),0}catch(X){return $.stderr(X instanceof Error?X.message:String(X)),1}finally{H.close()}}if(_[0]==="projects"&&_[1]==="rename"){let T=_[2],O=_[3];if(!T||!O)return $.stderr("Usage: llm-iwiki projects rename <path-or-project-id> <display-name>"),1;let H=N($.homeDir),X=C(H.databaseFile);try{P(X);let U=T.startsWith("proj_")?jq(X,T,O):jq(X,fq(X,x($.cwd,T)).id,O);return $.stdout(JSON.stringify(U,null,2)),0}catch(U){return $.stderr(U instanceof Error?U.message:String(U)),1}finally{X.close()}}if(_[0]==="summarize"&&_[1]==="prepare"){let T=_[2]&&!_[2].startsWith("--")?_[2]:"changed";if(T!=="changed"&&T!=="all")return $.stderr("Usage: llm-iwiki summarize prepare [changed|all] --project <path> [--out <file>]"),1;let O=g(_,"--project")??$.cwd,H=O.startsWith("proj_")?$.cwd:x($.cwd,O),X=g(_,"--out")??NH(kq(H),"summaries-task.md"),U=N($.homeDir),J=C(U.databaseFile);try{P(J);let Z=c(J,O,$.cwd),z=tO(J,Z.id,T);return Q0(KH(x($.cwd,X)),{recursive:!0}),aq(x($.cwd,X),z.markdown),$.stdout(`prepared summaries task: ${z.sessionCount} sessions -> ${X}`),0}catch(Z){return l(Z,$,q),1}finally{J.close()}}if(_[0]==="summarize"&&_[1]==="apply"){let T=g(_,"--file");if(!T)return $.stderr("Usage: llm-iwiki summarize apply --project <path> --file <summaries.yaml>"),1;let O=N($.homeDir),H=C(O.databaseFile);try{P(H);let X=JO(SH(x($.cwd,T),"utf8")),U=eO(H,X);if($.stdout(`applied summaries: ${U.written}`),U.skipped.length>0)$.stdout(`skipped (unknown session): ${U.skipped.length}`);return 0}catch(X){return $.stderr(X instanceof Error?X.message:String(X)),1}finally{H.close()}}if(_[0]==="experiences"&&_[1]==="prepare"){let T=g(_,"--from")??"changed-summaries";if(T!=="changed-summaries"&&T!=="all-recent")return $.stderr("Invalid --from. Use changed-summaries or all-recent."),1;let O=g(_,"--project")??$.cwd,H=O.startsWith("proj_")?$.cwd:x($.cwd,O),X=g(_,"--out")??NH(kq(H),"experiences-task.md"),U=g(_,"--since"),J=N($.homeDir),Z=C(J.databaseFile);try{P(Z);let z=U?T5(U):null,G=c(Z,O,$.cwd),Q=IO(Z,G.id,T,z);return Q0(KH(x($.cwd,X)),{recursive:!0}),aq(x($.cwd,X),Q.markdown),$.stdout(`prepared experiences task: ${Q.summaryCount} summaries -> ${X}`),0}catch(z){return l(z,$,q),1}finally{Z.close()}}if(_[0]==="experiences"&&_[1]==="propose"){let T=g(_,"--file");if(!T)return $.stderr("Usage: llm-iwiki experiences propose --project <path> --file <experiences.yaml>"),1;let O=N($.homeDir),H=C(O.databaseFile);try{P(H);let X=ZO(SH(x($.cwd,T),"utf8")),U=SO(H,X);return $.stdout(`proposed experiences: ${U.written}`),0}catch(X){return $.stderr(X instanceof Error?X.message:String(X)),1}finally{H.close()}}if(_[0]==="experiences"&&_[1]==="candidates"){let T=g(_,"--project"),O=N($.homeDir),H=C(O.databaseFile);try{P(H);let X=T?c(H,T,$.cwd).id:null,U=KO(H,X);if(U.length===0)return $.stdout("No experience candidates. Run: llm-iwiki experiences propose"),0;for(let J of U)$.stdout(`${J.id} [${J.status}] ${J.confidence??"-"} ${J.proposed_title}`);return 0}catch(X){return l(X,$,q),1}finally{H.close()}}if(_[0]==="experiences"&&(_[1]==="accept"||_[1]==="reject")){let T=_[2];if(!T)return $.stderr(`Usage: llm-iwiki experiences ${_[1]} <candidate-id>`),1;let O=N($.homeDir),H=C(O.databaseFile);try{if(P(H),_[1]==="accept"){let X=NO(H,T);$.stdout(`accepted: ${X.experienceId} (${X.slug}), linked sessions: ${X.linkedSessions}`)}else CO(H,T),$.stdout(`rejected: ${T}`);return 0}catch(X){return $.stderr(X instanceof Error?X.message:String(X)),1}finally{H.close()}}if(_[0]==="config"&&_[1]==="show"){let T=N($.homeDir),O=O0(T.configFile);return $.stdout(`config: ${T.configFile}`),$.stdout(`obsidian.vault: ${O.obsidianVault??"(unset)"}`),0}if(_[0]==="config"&&_[1]==="set"){let T=_[2],O=_[3];if(!T||O===void 0)return $.stderr("Usage: llm-iwiki config set <key> <value>"),1;let H=N($.homeDir);Q0(H.configDir,{recursive:!0});try{let X=QO(H.configFile,T,O);return $.stdout(`set ${X} = ${O}`),0}catch(X){return $.stderr(X instanceof Error?X.message:String(X)),1}}if(_[0]==="obsidian"&&_[1]==="export"){let T=N($.homeDir),O=g(_,"--vault"),H=O?x($.cwd,O):O0(T.configFile).obsidianVault;if(!H)return $.stderr("No Obsidian vault configured. Run: llm-iwiki config set obsidian.vault <dir>"),1;let X=_.includes("--all"),U=g(_,"--project")??$.cwd,J=_.includes("--force"),Z=C(T.databaseFile);try{P(Z);let z;if(X)z=uO(Z,H,{force:J});else{let G=c(Z,U,$.cwd);z=gq(Z,H,G,{force:J});let Q=yq(Z,H,{force:J});z.created+=Q.created,z.updated+=Q.updated,z.forced+=Q.forced,z.conflicts.push(...Q.conflicts)}$.stdout(`vault: ${H}`),$.stdout(`exported: created ${z.created}, updated ${z.updated}, forced ${z.forced}, conflicts ${z.conflicts.length}`);for(let G of z.conflicts)$.stdout(` conflict (skipped): ${G}`);if(z.conflicts.length>0&&!J)$.stdout("Re-run with --force to overwrite managed blocks of conflicting notes.");return 0}catch(z){return l(z,$,q),1}finally{Z.close()}}if(_[0]==="obsidian"&&_[1]==="move-project"){let T=_[2];if(!T||T.startsWith("--"))return $.stderr("Usage: llm-iwiki obsidian move-project <project> [--vault <dir>]"),1;let O=N($.homeDir),H=g(_,"--vault"),X=H?x($.cwd,H):O0(O.configFile).obsidianVault;if(!X)return $.stderr("No Obsidian vault configured. Run: llm-iwiki config set obsidian.vault <dir>"),1;let U=C(O.databaseFile);try{P(U);let J=c(U,T,$.cwd),Z=hO(U,X,J);if(Z.moved===0)$.stdout("nothing to move (already at target or no exported notes).");else{$.stdout(`moved project notes to slug directory: ${J.slug}`);for(let z of Z.fromDirs)$.stdout(` from: ${z}`)}return 0}catch(J){return l(J,$,q),1}finally{U.close()}}if(_[0]==="search"){let T=_[1],O=_[2];if(T!=="sessions"&&T!=="experiences"||!O||O.startsWith("--"))return $.stderr("Usage: llm-iwiki search <sessions|experiences> <query> [--project <project>]"),1;let H=g(_,"--project"),X=N($.homeDir),U=C(X.databaseFile);try{P(U);let J=H?c(U,H,$.cwd).id:null,Z=lO(U,T,O,J);$.stdout(`matches: ${Z.length}`);for(let z of Z)$.stdout(` ${z.id} ${z.title}`),$.stdout(` ${z.snippet}`);return 0}catch(J){return l(J,$,q),1}finally{U.close()}}if(_[0]==="obsidian"&&_[1]==="check"){let T=N($.homeDir),O=C(T.databaseFile);try{P(O);let H=vO(O);$.stdout(`notes: ${H.total}, clean: ${H.clean}, needs attention: ${H.entries.length}`);for(let X of H.entries)$.stdout(` ${X.status}: ${X.filePath}`);return 0}finally{O.close()}}if(_[0]==="skills"&&_[1]==="init"){let T=g(_,"--target");if(_.includes("--target")&&!T)return $.stderr("Invalid --target. Use codex, claude-code, or cursor."),1;if(T&&!lq.includes(T))return $.stderr("Invalid --target. Use codex, claude-code, or cursor."),1;let O=T,H=oO({cwd:$.cwd,target:O,force:_.includes("--force"),dryRun:_.includes("--dry-run")});return $.stdout(`skills written: ${H.written.length}`),$.stdout(`skills skipped: ${H.skipped.length}`),0}if(_[0]==="skills"&&(_[1]===void 0||_[1]==="list")){$.stdout(PH),$.stdout(""),$.stdout("可用 target:");for(let T of aO())$.stdout(` ${T.id} (${T.name})`);$.stdout(""),$.stdout(`将写入的 skill (位于 ${pq}/):`);for(let T of rO())$.stdout(` ${T.directory} -> ${T.relPath}`);return 0}if(_[0]==="skills")return $.stderr(`Unknown skills subcommand: ${_[1]}`),$.stderr(PH),1;return $.stderr(`Unknown command: ${_.join(" ")}`),$.stderr(CH),1}var O5=await fH(process.argv.slice(2),{cwd:process.cwd(),stdout:console.log,stderr:console.error});process.exit(O5);
707
+ `);let O=C(T.databaseFile);try{P(O)}finally{O.close()}return $.stdout(`Initialized llm-iwiki at ${T.configDir}`),0}if(_[0]==="doctor"){let T=N($.homeDir);if(!nq(T.configFile))return $.stderr("llm-iwiki is not initialized. Run: llm-iwiki init"),1;if(!nq(T.databaseFile))return $.stderr("llm-iwiki database is missing. Run: llm-iwiki init"),1;let O=C(T.databaseFile);try{P(O)}finally{O.close()}return $.stdout(`config: ${T.configFile}`),$.stdout(`database: ${T.databaseFile}`),$.stdout("status: ok"),0}if(_[0]==="sync"){let T=g(_,"--project"),O=T?x($.cwd,T):null,H=N($.homeDir),X=C(H.databaseFile);try{if(P(X),$.stdout("Scanning local AI session stores..."),O)$.stdout(`Project filter: ${O}`);let U=FH(X,{homeDir:$.homeDir??H.homeDir,projectFilter:O,onProgress:(J)=>{if(J.type==="source-detected")$.stdout(`- ${J.source}: detected, scanning sessions...`);else if(J.type==="source-collected")$.stdout(`- ${J.source}: found ${J.candidateSessions} candidate sessions`)}});if(U.bySource.length===0)return $.stdout("No collectors detected on this machine."),0;$.stdout("Sync summary:");for(let J of U.bySource)$.stdout(`${J.source}: ${J.total} sessions (new ${J.new}, changed ${J.changed}, unchanged ${J.unchanged}, missing ${J.sourceMissing})`);return 0}catch(U){return $.stderr(U instanceof Error?U.message:String(U)),1}finally{X.close()}}if(_[0]==="projects"&&_[1]==="list"){let T=N($.homeDir),O=C(T.databaseFile);try{P(O);let H=Z_(O);if(H.length===0)return $.stdout("No projects yet. Run: llm-iwiki sync"),0;for(let X of H){let U=X.displayName??X.slug,J=X.canonicalRepoUrl?` repo: ${X.canonicalRepoUrl}`:"";$.stdout(`${X.id} ${X.sessionCount} sessions ${U}${J}`)}return 0}finally{O.close()}}if(_[0]==="projects"&&_[1]==="inspect"){let T=_[2];if(!T)return $.stderr("Usage: llm-iwiki projects inspect <project>"),1;let O=N($.homeDir),H=C(O.databaseFile);try{P(H);let X=c(H,T,$.cwd),U=cO(H,X.id);if($.stdout(`project: ${X.displayName??X.canonicalName}`),$.stdout(`id: ${X.id}`),X.canonicalRepoUrl)$.stdout(`repo: ${X.canonicalRepoUrl}`);$.stdout(`sources: ${U.sources.map((J)=>`${J.source}(${J.sessionCount})`).join(", ")||"none"}`),$.stdout(`sessions: ${U.sessions.length}`);for(let J of U.sessions)$.stdout(` ${J.id} [${J.sourceId}] ${J.title??J.sourceSessionId} (${J.messageCount} msgs, ${J.status})`);return 0}catch(X){return l(X,$,q),1}finally{H.close()}}if(_[0]==="projects"&&_[1]==="merge"){let T=_[2],O=_[3];if(!T||!O)return $.stderr("Usage: llm-iwiki projects merge <from-project-id> <into-project-id>"),1;let H=N($.homeDir),X=C(H.databaseFile);try{P(X);let U=Eq(X,T,O);return $.stdout(`merged ${U.fromId} -> ${U.intoId} (moved ${U.movedSessions} sessions)`),0}catch(U){return l(U,$,q),1}finally{X.close()}}if(_[0]==="projects"&&_[1]==="dedupe"){let T=_.includes("--dry-run"),O=N($.homeDir),H=C(O.databaseFile);try{if(P(H),T){let U=Z_(H),J=new Map;for(let z of U){let G=z.canonicalRepoUrl?`repo:${z.canonicalRepoUrl}`:`slug:${z.slug}`;J.set(G,[...J.get(G)??[],z])}let Z=0;for(let[,z]of J){if(z.length<2)continue;Z+=1,$.stdout(`would merge ${z.length} duplicates of ${z[0].canonicalName}`)}return $.stdout(`dry-run: ${Z} duplicate group(s)`),0}let X=MO(H);$.stdout(`deduped: merged ${X.merges.length} duplicate project(s)`);for(let U of X.merges)$.stdout(` ${U.fromId} -> ${U.intoId} (moved ${U.movedSessions} sessions)`);return 0}catch(X){return l(X,$,q),1}finally{H.close()}}if(_[0]==="sessions"&&_[1]==="list"){let T=g(_,"--project"),O=N($.homeDir),H=C(O.databaseFile);try{P(H);let X=T?c(H,T,$.cwd):q5(H,_,$),U=hq(H,X.id);$.stdout(`project: ${X.displayName??X.canonicalName} (${X.id})`),$.stdout(`sessions: ${U.length}`);for(let J of U)$.stdout(` ${J.id} [${J.sourceId}] ${J.title??J.sourceSessionId} (${J.messageCount} msgs, ${J.status})`);return 0}catch(X){return l(X,$,q),1}finally{H.close()}}if(_[0]==="sessions"&&_[1]==="read"){let T=_[2];if(!T||T.startsWith("--"))return $.stderr("Usage: llm-iwiki sessions read <session-id> [--full]"),1;let O=N($.homeDir),H=C(O.databaseFile);try{P(H);let{session:X,transcript:U,messageCount:J}=pO(H,T,{full:_.includes("--full")});return $.stdout(`# ${X.title??X.sourceSessionId}`),$.stdout(`session: ${X.id} source: ${X.sourceId} messages: ${J}`),$.stdout(""),$.stdout(U),0}catch(X){return l(X,$,q),1}finally{H.close()}}if(_[0]==="projects"&&_[1]==="resolve"){let T=_[2]??$.cwd,O=N($.homeDir),H=C(O.databaseFile);try{P(H);let X=fq(H,x($.cwd,T));return $.stdout(JSON.stringify(X,null,2)),0}catch(X){return $.stderr(X instanceof Error?X.message:String(X)),1}finally{H.close()}}if(_[0]==="projects"&&_[1]==="rename"){let T=_[2],O=_[3];if(!T||!O)return $.stderr("Usage: llm-iwiki projects rename <path-or-project-id> <display-name>"),1;let H=N($.homeDir),X=C(H.databaseFile);try{P(X);let U=T.startsWith("proj_")?jq(X,T,O):jq(X,fq(X,x($.cwd,T)).id,O);return $.stdout(JSON.stringify(U,null,2)),0}catch(U){return $.stderr(U instanceof Error?U.message:String(U)),1}finally{X.close()}}if(_[0]==="summarize"&&_[1]==="prepare"){let T=_[2]&&!_[2].startsWith("--")?_[2]:"changed";if(T!=="changed"&&T!=="all")return $.stderr("Usage: llm-iwiki summarize prepare [changed|all] --project <path> [--out <file>]"),1;let O=g(_,"--project")??$.cwd,H=O.startsWith("proj_")?$.cwd:x($.cwd,O),X=g(_,"--out")??NH(kq(H),"summaries-task.md"),U=N($.homeDir),J=C(U.databaseFile);try{P(J);let Z=c(J,O,$.cwd),z=tO(J,Z.id,T);return Q0(KH(x($.cwd,X)),{recursive:!0}),aq(x($.cwd,X),z.markdown),$.stdout(`prepared summaries task: ${z.sessionCount} sessions -> ${X}`),0}catch(Z){return l(Z,$,q),1}finally{J.close()}}if(_[0]==="summarize"&&_[1]==="apply"){let T=g(_,"--file");if(!T)return $.stderr("Usage: llm-iwiki summarize apply --project <path> --file <summaries.yaml>"),1;let O=N($.homeDir),H=C(O.databaseFile);try{P(H);let X=JO(SH(x($.cwd,T),"utf8")),U=eO(H,X);if($.stdout(`applied summaries: ${U.written}`),U.skipped.length>0)$.stdout(`skipped (unknown session): ${U.skipped.length}`);return 0}catch(X){return $.stderr(X instanceof Error?X.message:String(X)),1}finally{H.close()}}if(_[0]==="experiences"&&_[1]==="prepare"){let T=g(_,"--from")??"changed-summaries";if(T!=="changed-summaries"&&T!=="all-recent")return $.stderr("Invalid --from. Use changed-summaries or all-recent."),1;let O=g(_,"--project")??$.cwd,H=O.startsWith("proj_")?$.cwd:x($.cwd,O),X=g(_,"--out")??NH(kq(H),"experiences-task.md"),U=g(_,"--since"),J=N($.homeDir),Z=C(J.databaseFile);try{P(Z);let z=U?T5(U):null,G=c(Z,O,$.cwd),Q=IO(Z,G.id,T,z);return Q0(KH(x($.cwd,X)),{recursive:!0}),aq(x($.cwd,X),Q.markdown),$.stdout(`prepared experiences task: ${Q.summaryCount} summaries -> ${X}`),0}catch(z){return l(z,$,q),1}finally{Z.close()}}if(_[0]==="experiences"&&_[1]==="propose"){let T=g(_,"--file");if(!T)return $.stderr("Usage: llm-iwiki experiences propose --project <path> --file <experiences.yaml>"),1;let O=N($.homeDir),H=C(O.databaseFile);try{P(H);let X=ZO(SH(x($.cwd,T),"utf8")),U=SO(H,X);return $.stdout(`proposed experiences: ${U.written}`),0}catch(X){return $.stderr(X instanceof Error?X.message:String(X)),1}finally{H.close()}}if(_[0]==="experiences"&&_[1]==="candidates"){let T=g(_,"--project"),O=N($.homeDir),H=C(O.databaseFile);try{P(H);let X=T?c(H,T,$.cwd).id:null,U=KO(H,X);if(U.length===0)return $.stdout("No experience candidates. Run: llm-iwiki experiences propose"),0;for(let J of U)$.stdout(`${J.id} [${J.status}] ${J.confidence??"-"} ${J.proposed_title}`);return 0}catch(X){return l(X,$,q),1}finally{H.close()}}if(_[0]==="experiences"&&(_[1]==="accept"||_[1]==="reject")){let T=_[2];if(!T)return $.stderr(`Usage: llm-iwiki experiences ${_[1]} <candidate-id>`),1;let O=N($.homeDir),H=C(O.databaseFile);try{if(P(H),_[1]==="accept"){let X=NO(H,T);$.stdout(`accepted: ${X.experienceId} (${X.slug}), linked sessions: ${X.linkedSessions}`)}else CO(H,T),$.stdout(`rejected: ${T}`);return 0}catch(X){return $.stderr(X instanceof Error?X.message:String(X)),1}finally{H.close()}}if(_[0]==="config"&&_[1]==="show"){let T=N($.homeDir),O=O0(T.configFile);return $.stdout(`config: ${T.configFile}`),$.stdout(`obsidian.vault: ${O.obsidianVault??"(unset)"}`),0}if(_[0]==="config"&&_[1]==="set"){let T=_[2],O=_[3];if(!T||O===void 0)return $.stderr("Usage: llm-iwiki config set <key> <value>"),1;let H=N($.homeDir);Q0(H.configDir,{recursive:!0});try{let X=QO(H.configFile,T,O);return $.stdout(`set ${X} = ${O}`),0}catch(X){return $.stderr(X instanceof Error?X.message:String(X)),1}}if(_[0]==="obsidian"&&_[1]==="export"){let T=N($.homeDir),O=g(_,"--vault"),H=O?x($.cwd,O):O0(T.configFile).obsidianVault;if(!H)return $.stderr("No Obsidian vault configured. Run: llm-iwiki config set obsidian.vault <dir>"),1;let X=_.includes("--all"),U=g(_,"--project")??$.cwd,J=_.includes("--force"),Z=C(T.databaseFile);try{P(Z);let z;if(X)z=uO(Z,H,{force:J});else{let G=c(Z,U,$.cwd);z=gq(Z,H,G,{force:J});let Q=yq(Z,H,{force:J});z.created+=Q.created,z.updated+=Q.updated,z.forced+=Q.forced,z.conflicts.push(...Q.conflicts)}$.stdout(`vault: ${H}`),$.stdout(`exported: created ${z.created}, updated ${z.updated}, forced ${z.forced}, conflicts ${z.conflicts.length}`);for(let G of z.conflicts)$.stdout(` conflict (skipped): ${G}`);if(z.conflicts.length>0&&!J)$.stdout("Re-run with --force to overwrite managed blocks of conflicting notes.");return 0}catch(z){return l(z,$,q),1}finally{Z.close()}}if(_[0]==="obsidian"&&_[1]==="move-project"){let T=_[2];if(!T||T.startsWith("--"))return $.stderr("Usage: llm-iwiki obsidian move-project <project> [--vault <dir>]"),1;let O=N($.homeDir),H=g(_,"--vault"),X=H?x($.cwd,H):O0(O.configFile).obsidianVault;if(!X)return $.stderr("No Obsidian vault configured. Run: llm-iwiki config set obsidian.vault <dir>"),1;let U=C(O.databaseFile);try{P(U);let J=c(U,T,$.cwd),Z=hO(U,X,J);if(Z.moved===0)$.stdout("nothing to move (already at target or no exported notes).");else{$.stdout(`moved project notes to slug directory: ${J.slug}`);for(let z of Z.fromDirs)$.stdout(` from: ${z}`)}return 0}catch(J){return l(J,$,q),1}finally{U.close()}}if(_[0]==="search"){let T=_[1],O=_[2];if(T!=="sessions"&&T!=="experiences"||!O||O.startsWith("--"))return $.stderr("Usage: llm-iwiki search <sessions|experiences> <query> [--project <project>]"),1;let H=g(_,"--project"),X=N($.homeDir),U=C(X.databaseFile);try{P(U);let J=H?c(U,H,$.cwd).id:null,Z=lO(U,T,O,J);$.stdout(`matches: ${Z.length}`);for(let z of Z)$.stdout(` ${z.id} ${z.title}`),$.stdout(` ${z.snippet}`);return 0}catch(J){return l(J,$,q),1}finally{U.close()}}if(_[0]==="obsidian"&&_[1]==="check"){let T=N($.homeDir),O=C(T.databaseFile);try{P(O);let H=vO(O);$.stdout(`notes: ${H.total}, clean: ${H.clean}, needs attention: ${H.entries.length}`);for(let X of H.entries)$.stdout(` ${X.status}: ${X.filePath}`);return 0}finally{O.close()}}if(_[0]==="skills"&&_[1]==="init"){let T=g(_,"--target");if(_.includes("--target")&&!T)return $.stderr("Invalid --target. Use codex, claude-code, or cursor."),1;if(T&&!lq.includes(T))return $.stderr("Invalid --target. Use codex, claude-code, or cursor."),1;let O=T,H=oO({cwd:$.cwd,target:O,force:_.includes("--force"),dryRun:_.includes("--dry-run")});return $.stdout(`skills written: ${H.written.length}`),$.stdout(`skills skipped: ${H.skipped.length}`),0}if(_[0]==="skills"&&(_[1]===void 0||_[1]==="list")){$.stdout(PH),$.stdout(""),$.stdout("可用 target:");for(let T of aO())$.stdout(` ${T.id} (${T.name})`);$.stdout(""),$.stdout(`将写入的 skill (位于 ${pq}/):`);for(let T of rO())$.stdout(` ${T.directory} -> ${T.relPath}`);return 0}if(_[0]==="skills")return $.stderr(`Unknown skills subcommand: ${_[1]}`),$.stderr(PH),1;return $.stderr(`Unknown command: ${_.join(" ")}`),$.stderr(CH),1}var O5=await fH(process.argv.slice(2),{cwd:process.cwd(),stdout:console.log,stderr:console.error});process.exit(O5);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@codehourra/llm-iwiki",
3
- "version": "0.3.0",
3
+ "version": "0.3.1",
4
4
  "description": "面向 AI Agent 的本地知识库 CLI:采集 Claude Code / Cursor / Codex / CodeBuddy / Gemini 会话,按项目归一化,生成总结与经验并导出到 Obsidian。",
5
5
  "type": "module",
6
6
  "license": "MIT",
@@ -46,6 +46,7 @@
46
46
  "typecheck": "tsc --noEmit",
47
47
  "build": "bun build src/index.ts --target node --minify --external better-sqlite3 --external bun:sqlite --outfile dist/index.js",
48
48
  "changeset": "changeset",
49
+ "check:changeset": "bun run scripts/check-changeset-required.ts",
49
50
  "version-packages": "changeset version",
50
51
  "release": "bun run build && changeset publish",
51
52
  "prepublishOnly": "bun run build"