trigger_system 1.0.7 → 1.1.5

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.
@@ -1,126 +1,126 @@
1
- import{createRequire as iQ}from"node:module";var lQ=Object.create;var{getPrototypeOf:dQ,defineProperty:U2,getOwnPropertyNames:WX,getOwnPropertyDescriptor:cQ}=Object,_X=Object.prototype.hasOwnProperty;var CU=(U,X,q)=>{q=U!=null?lQ(dQ(U)):{};let Z=X||!U||!U.__esModule?U2(q,"default",{value:U,enumerable:!0}):q;for(let Q of WX(U))if(!_X.call(Z,Q))U2(Z,Q,{get:()=>U[Q],enumerable:!0});return Z},HX=new WeakMap,$X=(U)=>{var X=HX.get(U),q;if(X)return X;if(X=U2({},"__esModule",{value:!0}),U&&typeof U==="object"||typeof U==="function")WX(U).map((Z)=>!_X.call(X,Z)&&U2(X,Z,{get:()=>U[Z],enumerable:!(q=cQ(U,Z))||q.enumerable}));return HX.set(U,X),X},D=(U,X)=>()=>(X||U((X={exports:{}}).exports,X),X.exports);var LX=(U,X)=>{for(var q in X)U2(U,q,{get:X[q],enumerable:!0,configurable:!0,set:(Z)=>X[q]=()=>Z})};var zX=(U,X)=>()=>(U&&(X=U(U=0)),X);var M1=iQ(import.meta.url);var EU={};LX(EU,{ExpressionEngine:()=>e});class e{static evaluate(U,X){try{if(U.includes("${")){let q=this.interpolate(U,X);if(!isNaN(Number(q))&&q.trim()!=="")return Number(q);return q}return this.evaluateExpression(U,X)}catch(q){return console.error(`Error evaluating expression: ${U}`,q),null}}static interpolate(U,X){return U.replace(/\$\{([^}]+)\}/g,(q,Z)=>{try{let Q=this.evaluateExpression(Z,X);if(Q===void 0||Q===null)return"undefined";return String(Q)}catch(Q){return console.error(`Error en interpolación: ${q}`,Q),q}})}static evaluateMathExpression(U){try{return Function("Math",`return ${U}`)(Math)}catch(X){throw Error(`Error evaluando expresión matemática: ${U}`)}}static evaluateExpression(U,X){if(/^(data|globals|request|computed)(\.[a-zA-Z0-9_]+)+$/.test(U))return this.getNestedValue(U,X);try{return Function("context","with(context) { return "+U+" }")(X)}catch(q){return console.error(`ERROR evaluating expression '${U}':`,q),U}}static getNestedValue(U,X){let q=U.split("."),Z=X;for(let Q of q){if(Z===null||Z===void 0||typeof Z!=="object"||!(Q in Z))return;Z=Z[Q]}return Z}static evaluateMath(U,X){let q=U;q=q.replace(/\b[a-zA-Z_][a-zA-Z0-9_]*\b/g,(Z)=>{if(["Math","random","floor","ceil","round","sqrt","abs","pow","min","max","sin","cos","tan"].includes(Z))return Z;let Q=this.getNestedValue(Z,X);if(Q!==void 0)return typeof Q==="string"?`"${Q}"`:String(Q);return Z});try{return this.evaluateMathExpression(q)}catch(Z){return console.error(`Error en evaluación matemática: ${U}`,Z),NaN}}}class jU{store=new Map;async loadState(){return new Map(this.store)}async saveState(U,X){this.store.set(U,X)}async deleteState(U){this.store.delete(U)}async clearState(){this.store.clear()}}class D0{static instance;state;persistence;constructor(){this.state=new Map,this.persistence=new jU}static getInstance(){if(!D0.instance)D0.instance=new D0;return D0.instance}setPersistence(U){this.persistence=U}async initialize(){let U=await this.persistence.loadState();this.state=U,console.log(`[StateManager] Initialized with ${this.state.size} keys.`)}get(U){return this.state.get(U)}async set(U,X){this.state.set(U,X),await this.persistence.saveState(U,X)}async increment(U,X=1){let q=this.get(U)||0,Z=Number(q)+X;return await this.set(U,Z),Z}async decrement(U,X=1){return this.increment(U,-X)}async delete(U){let X=this.state.delete(U);if(X)await this.persistence.deleteState(U);return X}async clear(){this.state.clear(),await this.persistence.clearState()}getAll(){return Object.fromEntries(this.state)}}var X2=()=>{};var AX={};LX(AX,{ActionRegistry:()=>P1});class P1{static instance;handlers=new Map;constructor(){this.registerDefaults()}static getInstance(){if(!this.instance)this.instance=new P1;return this.instance}register(U,X){this.handlers.set(U.toUpperCase(),X)}get(U){return this.handlers.get(U.toUpperCase())}registerDefaults(){this.register("log",(U,X)=>{let q=U.params?.message||U.params?.content||"Log Trigger",Z=typeof q==="string"?e.interpolate(q,X):String(q);return console.log(`[TriggerLog] ${Z}`),{message:Z}}),this.register("math",(U,X)=>{let q=String(U.params?.expression||"0");return e.evaluate(q,X)}),this.register("response",(U,X)=>{let q=U.params?.content||U.params?.body||"",Z=typeof q==="string"?e.interpolate(q,X):String(q);return{statusCode:U.params?.statusCode||200,headers:U.params?.headers||{"Content-Type":"application/json"},body:Z}}),this.register("execute",async(U,X)=>{let q=U.params?.command||U.params?.content||"",Z=typeof q==="string"?e.interpolate(q,X):String(q);if(!U.params?.safe)console.warn(`[Trigger] Ejecutando comando no seguro: ${Z}`);try{let Q=Bun.spawn(Z.split(" "),{stdout:"pipe",stderr:"pipe"}),[G,Y]=await Promise.all([new Response(Q.stdout).text(),new Response(Q.stderr).text()]);return{command:Z,stdout:G,stderr:Y,exitCode:await Q.exited}}catch(Q){return{command:Z,error:String(Q)}}}),this.register("forward",async(U,X)=>{let q=U.params?.url||"",Z=typeof q==="string"?e.interpolate(q,X):String(q),Q=String(U.params?.method||"POST");try{let G=await fetch(Z,{method:Q,headers:{"Content-Type":"application/json",...typeof U.params?.headers==="object"&&U.params.headers!==null&&!Array.isArray(U.params.headers)?U.params.headers:{}},body:JSON.stringify(X.data)});return{url:Z,method:Q,status:G.status,headers:(()=>{let Y={};return G.headers.forEach((J,H)=>Y[H]=J),Y})(),body:await G.text()}}catch(G){return{url:Z,method:Q,error:String(G)}}}),this.register("STATE_SET",async(U,X)=>{let q=String(U.params?.key||""),Z=U.params?.value;if(!q)return{error:"Missing key for STATE_SET"};let Q=Z;if(typeof Z==="string"&&Z.includes("${"))Q=e.interpolate(Z,X);return await D0.getInstance().set(q,Q),{key:q,value:Q}}),this.register("STATE_INCREMENT",async(U,X)=>{let q=String(U.params?.key||""),Z=Number(U.params?.amount)||1;if(!q)return{error:"Missing key for STATE_INCREMENT"};let Q=await D0.getInstance().increment(q,Z);return{key:q,newValue:Q}}),this.register("EMIT_EVENT",(U,X)=>{return{event:U.params?.event,payload:U.params?.data||{}}})}}var q2=zX(()=>{X2()});var k=D((GJ)=>{var a4=Symbol.for("yaml.alias"),f8=Symbol.for("yaml.document"),m6=Symbol.for("yaml.map"),g8=Symbol.for("yaml.pair"),n4=Symbol.for("yaml.scalar"),p6=Symbol.for("yaml.seq"),u0=Symbol.for("yaml.node.type"),t7=(U)=>!!U&&typeof U==="object"&&U[u0]===a4,e7=(U)=>!!U&&typeof U==="object"&&U[u0]===f8,UJ=(U)=>!!U&&typeof U==="object"&&U[u0]===m6,XJ=(U)=>!!U&&typeof U==="object"&&U[u0]===g8,y8=(U)=>!!U&&typeof U==="object"&&U[u0]===n4,qJ=(U)=>!!U&&typeof U==="object"&&U[u0]===p6;function k8(U){if(U&&typeof U==="object")switch(U[u0]){case m6:case p6:return!0}return!1}function ZJ(U){if(U&&typeof U==="object")switch(U[u0]){case a4:case m6:case n4:case p6:return!0}return!1}var QJ=(U)=>(y8(U)||k8(U))&&!!U.anchor;GJ.ALIAS=a4;GJ.DOC=f8;GJ.MAP=m6;GJ.NODE_TYPE=u0;GJ.PAIR=g8;GJ.SCALAR=n4;GJ.SEQ=p6;GJ.hasAnchor=QJ;GJ.isAlias=t7;GJ.isCollection=k8;GJ.isDocument=e7;GJ.isMap=UJ;GJ.isNode=ZJ;GJ.isPair=XJ;GJ.isScalar=y8;GJ.isSeq=qJ});var g2=D((MJ)=>{var t=k(),$0=Symbol("break visit"),v8=Symbol("skip children"),b0=Symbol("remove node");function l6(U,X){let q=x8(X);if(t.isDocument(U)){if(l1(null,U.contents,q,Object.freeze([U]))===b0)U.contents=null}else l1(null,U,q,Object.freeze([]))}l6.BREAK=$0;l6.SKIP=v8;l6.REMOVE=b0;function l1(U,X,q,Z){let Q=h8(U,X,q,Z);if(t.isNode(Q)||t.isPair(Q))return u8(U,Z,Q),l1(U,Q,q,Z);if(typeof Q!=="symbol"){if(t.isCollection(X)){Z=Object.freeze(Z.concat(X));for(let G=0;G<X.items.length;++G){let Y=l1(G,X.items[G],q,Z);if(typeof Y==="number")G=Y-1;else if(Y===$0)return $0;else if(Y===b0)X.items.splice(G,1),G-=1}}else if(t.isPair(X)){Z=Object.freeze(Z.concat(X));let G=l1("key",X.key,q,Z);if(G===$0)return $0;else if(G===b0)X.key=null;let Y=l1("value",X.value,q,Z);if(Y===$0)return $0;else if(Y===b0)X.value=null}}return Q}async function d6(U,X){let q=x8(X);if(t.isDocument(U)){if(await d1(null,U.contents,q,Object.freeze([U]))===b0)U.contents=null}else await d1(null,U,q,Object.freeze([]))}d6.BREAK=$0;d6.SKIP=v8;d6.REMOVE=b0;async function d1(U,X,q,Z){let Q=await h8(U,X,q,Z);if(t.isNode(Q)||t.isPair(Q))return u8(U,Z,Q),d1(U,Q,q,Z);if(typeof Q!=="symbol"){if(t.isCollection(X)){Z=Object.freeze(Z.concat(X));for(let G=0;G<X.items.length;++G){let Y=await d1(G,X.items[G],q,Z);if(typeof Y==="number")G=Y-1;else if(Y===$0)return $0;else if(Y===b0)X.items.splice(G,1),G-=1}}else if(t.isPair(X)){Z=Object.freeze(Z.concat(X));let G=await d1("key",X.key,q,Z);if(G===$0)return $0;else if(G===b0)X.key=null;let Y=await d1("value",X.value,q,Z);if(Y===$0)return $0;else if(Y===b0)X.value=null}}return Q}function x8(U){if(typeof U==="object"&&(U.Collection||U.Node||U.Value))return Object.assign({Alias:U.Node,Map:U.Node,Scalar:U.Node,Seq:U.Node},U.Value&&{Map:U.Value,Scalar:U.Value,Seq:U.Value},U.Collection&&{Map:U.Collection,Seq:U.Collection},U);return U}function h8(U,X,q,Z){if(typeof q==="function")return q(U,X,Z);if(t.isMap(X))return q.Map?.(U,X,Z);if(t.isSeq(X))return q.Seq?.(U,X,Z);if(t.isPair(X))return q.Pair?.(U,X,Z);if(t.isScalar(X))return q.Scalar?.(U,X,Z);if(t.isAlias(X))return q.Alias?.(U,X,Z);return}function u8(U,X,q){let Z=X[X.length-1];if(t.isCollection(Z))Z.items[U]=q;else if(t.isPair(Z))if(U==="key")Z.key=q;else Z.value=q;else if(t.isDocument(Z))Z.contents=q;else{let Q=t.isAlias(Z)?"alias":"scalar";throw Error(`Cannot replace node with ${Q} parent`)}}MJ.visit=l6;MJ.visitAsync=d6});var t4=D((CJ)=>{var m8=k(),IJ=g2(),KJ={"!":"%21",",":"%2C","[":"%5B","]":"%5D","{":"%7B","}":"%7D"},NJ=(U)=>U.replace(/[!,[\]{}]/g,(X)=>KJ[X]);class B0{constructor(U,X){this.docStart=null,this.docEnd=!1,this.yaml=Object.assign({},B0.defaultYaml,U),this.tags=Object.assign({},B0.defaultTags,X)}clone(){let U=new B0(this.yaml,this.tags);return U.docStart=this.docStart,U}atDocument(){let U=new B0(this.yaml,this.tags);switch(this.yaml.version){case"1.1":this.atNextDocument=!0;break;case"1.2":this.atNextDocument=!1,this.yaml={explicit:B0.defaultYaml.explicit,version:"1.2"},this.tags=Object.assign({},B0.defaultTags);break}return U}add(U,X){if(this.atNextDocument)this.yaml={explicit:B0.defaultYaml.explicit,version:"1.1"},this.tags=Object.assign({},B0.defaultTags),this.atNextDocument=!1;let q=U.trim().split(/[ \t]+/),Z=q.shift();switch(Z){case"%TAG":{if(q.length!==2){if(X(0,"%TAG directive should contain exactly two parts"),q.length<2)return!1}let[Q,G]=q;return this.tags[Q]=G,!0}case"%YAML":{if(this.yaml.explicit=!0,q.length!==1)return X(0,"%YAML directive should contain exactly one part"),!1;let[Q]=q;if(Q==="1.1"||Q==="1.2")return this.yaml.version=Q,!0;else{let G=/^\d+\.\d+$/.test(Q);return X(6,`Unsupported YAML version ${Q}`,G),!1}}default:return X(0,`Unknown directive ${Z}`,!0),!1}}tagName(U,X){if(U==="!")return"!";if(U[0]!=="!")return X(`Not a valid tag: ${U}`),null;if(U[1]==="<"){let G=U.slice(2,-1);if(G==="!"||G==="!!")return X(`Verbatim tags aren't resolved, so ${U} is invalid.`),null;if(U[U.length-1]!==">")X("Verbatim tags must end with a >");return G}let[,q,Z]=U.match(/^(.*!)([^!]*)$/s);if(!Z)X(`The ${U} tag has no suffix`);let Q=this.tags[q];if(Q)try{return Q+decodeURIComponent(Z)}catch(G){return X(String(G)),null}if(q==="!")return U;return X(`Could not resolve tag: ${U}`),null}tagString(U){for(let[X,q]of Object.entries(this.tags))if(U.startsWith(q))return X+NJ(U.substring(q.length));return U[0]==="!"?U:`!<${U}>`}toString(U){let X=this.yaml.explicit?[`%YAML ${this.yaml.version||"1.2"}`]:[],q=Object.entries(this.tags),Z;if(U&&q.length>0&&m8.isNode(U.contents)){let Q={};IJ.visit(U.contents,(G,Y)=>{if(m8.isNode(Y)&&Y.tag)Q[Y.tag]=!0}),Z=Object.keys(Q)}else Z=[];for(let[Q,G]of q){if(Q==="!!"&&G==="tag:yaml.org,2002:")continue;if(!U||Z.some((Y)=>Y.startsWith(G)))X.push(`%TAG ${Q} ${G}`)}return X.join(`
2
- `)}}B0.defaultYaml={explicit:!1,version:"1.2"};B0.defaultTags={"!!":"tag:yaml.org,2002:"};CJ.Directives=B0});var c6=D((fJ)=>{var p8=k(),EJ=g2();function jJ(U){if(/[\x00-\x19\s,[\]{}]/.test(U)){let q=`Anchor must not contain whitespace or control characters: ${JSON.stringify(U)}`;throw Error(q)}return!0}function l8(U){let X=new Set;return EJ.visit(U,{Value(q,Z){if(Z.anchor)X.add(Z.anchor)}}),X}function d8(U,X){for(let q=1;;++q){let Z=`${U}${q}`;if(!X.has(Z))return Z}}function bJ(U,X){let q=[],Z=new Map,Q=null;return{onAnchor:(G)=>{q.push(G),Q??(Q=l8(U));let Y=d8(X,Q);return Q.add(Y),Y},setAnchors:()=>{for(let G of q){let Y=Z.get(G);if(typeof Y==="object"&&Y.anchor&&(p8.isScalar(Y.node)||p8.isCollection(Y.node)))Y.node.anchor=Y.anchor;else{let J=Error("Failed to resolve repeated object (this should not happen)");throw J.source=G,J}}},sourceObjects:Z}}fJ.anchorIsValid=jJ;fJ.anchorNames=l8;fJ.createNodeAnchors=bJ;fJ.findNewAnchor=d8});var e4=D((xJ)=>{function y2(U,X,q,Z){if(Z&&typeof Z==="object")if(Array.isArray(Z))for(let Q=0,G=Z.length;Q<G;++Q){let Y=Z[Q],J=y2(U,Z,String(Q),Y);if(J===void 0)delete Z[Q];else if(J!==Y)Z[Q]=J}else if(Z instanceof Map)for(let Q of Array.from(Z.keys())){let G=Z.get(Q),Y=y2(U,Z,Q,G);if(Y===void 0)Z.delete(Q);else if(Y!==G)Z.set(Q,Y)}else if(Z instanceof Set)for(let Q of Array.from(Z)){let G=y2(U,Z,Q,Q);if(G===void 0)Z.delete(Q);else if(G!==Q)Z.delete(Q),Z.add(G)}else for(let[Q,G]of Object.entries(Z)){let Y=y2(U,Z,Q,G);if(Y===void 0)delete Z[Q];else if(Y!==G)Z[Q]=Y}return U.call(X,q,Z)}xJ.applyReviver=y2});var n0=D((mJ)=>{var uJ=k();function c8(U,X,q){if(Array.isArray(U))return U.map((Z,Q)=>c8(Z,String(Q),q));if(U&&typeof U.toJSON==="function"){if(!q||!uJ.hasAnchor(U))return U.toJSON(X,q);let Z={aliasCount:0,count:1,res:void 0};q.anchors.set(U,Z),q.onCreate=(G)=>{Z.res=G,delete q.onCreate};let Q=U.toJSON(X,q);if(q.onCreate)q.onCreate(Q);return Q}if(typeof U==="bigint"&&!q?.keep)return Number(U);return U}mJ.toJS=c8});var i6=D((cJ)=>{var lJ=e4(),i8=k(),dJ=n0();class s8{constructor(U){Object.defineProperty(this,i8.NODE_TYPE,{value:U})}clone(){let U=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));if(this.range)U.range=this.range.slice();return U}toJS(U,{mapAsMap:X,maxAliasCount:q,onAnchor:Z,reviver:Q}={}){if(!i8.isDocument(U))throw TypeError("A document argument is required");let G={anchors:new Map,doc:U,keep:!0,mapAsMap:X===!0,mapKeyWarned:!1,maxAliasCount:typeof q==="number"?q:100},Y=dJ.toJS(this,"",G);if(typeof Z==="function")for(let{count:J,res:H}of G.anchors.values())Z(H,J);return typeof Q==="function"?lJ.applyReviver(Q,{"":Y},"",Y):Y}}cJ.NodeBase=s8});var k2=D((nJ)=>{var sJ=c6(),oJ=g2(),c1=k(),rJ=i6(),aJ=n0();class o8 extends rJ.NodeBase{constructor(U){super(c1.ALIAS);this.source=U,Object.defineProperty(this,"tag",{set(){throw Error("Alias nodes cannot have tags")}})}resolve(U,X){let q;if(X?.aliasResolveCache)q=X.aliasResolveCache;else if(q=[],oJ.visit(U,{Node:(Q,G)=>{if(c1.isAlias(G)||c1.hasAnchor(G))q.push(G)}}),X)X.aliasResolveCache=q;let Z=void 0;for(let Q of q){if(Q===this)break;if(Q.anchor===this.source)Z=Q}return Z}toJSON(U,X){if(!X)return{source:this.source};let{anchors:q,doc:Z,maxAliasCount:Q}=X,G=this.resolve(Z,X);if(!G){let J=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw ReferenceError(J)}let Y=q.get(G);if(!Y)aJ.toJS(G,null,X),Y=q.get(G);if(Y?.res===void 0)throw ReferenceError("This should not happen: Alias anchor was not resolved?");if(Q>=0){if(Y.count+=1,Y.aliasCount===0)Y.aliasCount=s6(Z,G,q);if(Y.count*Y.aliasCount>Q)throw ReferenceError("Excessive alias count indicates a resource exhaustion attack")}return Y.res}toString(U,X,q){let Z=`*${this.source}`;if(U){if(sJ.anchorIsValid(this.source),U.options.verifyAliasOrder&&!U.anchors.has(this.source)){let Q=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw Error(Q)}if(U.implicitKey)return`${Z} `}return Z}}function s6(U,X,q){if(c1.isAlias(X)){let Z=X.resolve(U),Q=q&&Z&&q.get(Z);return Q?Q.count*Q.aliasCount:0}else if(c1.isCollection(X)){let Z=0;for(let Q of X.items){let G=s6(U,Q,q);if(G>Z)Z=G}return Z}else if(c1.isPair(X)){let Z=s6(U,X.key,q),Q=s6(U,X.value,q);return Math.max(Z,Q)}return 1}nJ.Alias=o8});var i=D((ZH)=>{var eJ=k(),UH=i6(),XH=n0(),qH=(U)=>!U||typeof U!=="function"&&typeof U!=="object";class F1 extends UH.NodeBase{constructor(U){super(eJ.SCALAR);this.value=U}toJSON(U,X){return X?.keep?this.value:XH.toJS(this.value,U,X)}toString(){return String(this.value)}}F1.BLOCK_FOLDED="BLOCK_FOLDED";F1.BLOCK_LITERAL="BLOCK_LITERAL";F1.PLAIN="PLAIN";F1.QUOTE_DOUBLE="QUOTE_DOUBLE";F1.QUOTE_SINGLE="QUOTE_SINGLE";ZH.Scalar=F1;ZH.isScalarValue=qH});var v2=D((_H)=>{var YH=k2(),A1=k(),r8=i(),JH="tag:yaml.org,2002:";function HH(U,X,q){if(X){let Z=q.filter((G)=>G.tag===X),Q=Z.find((G)=>!G.format)??Z[0];if(!Q)throw Error(`Tag ${X} not found`);return Q}return q.find((Z)=>Z.identify?.(U)&&!Z.format)}function WH(U,X,q){if(A1.isDocument(U))U=U.contents;if(A1.isNode(U))return U;if(A1.isPair(U)){let _=q.schema[A1.MAP].createNode?.(q.schema,null,q);return _.items.push(U),_}if(U instanceof String||U instanceof Number||U instanceof Boolean||typeof BigInt<"u"&&U instanceof BigInt)U=U.valueOf();let{aliasDuplicateObjects:Z,onAnchor:Q,onTagObj:G,schema:Y,sourceObjects:J}=q,H=void 0;if(Z&&U&&typeof U==="object")if(H=J.get(U),H)return H.anchor??(H.anchor=Q(U)),new YH.Alias(H.anchor);else H={anchor:null,node:null},J.set(U,H);if(X?.startsWith("!!"))X=JH+X.slice(2);let W=HH(U,X,Y.tags);if(!W){if(U&&typeof U.toJSON==="function")U=U.toJSON();if(!U||typeof U!=="object"){let _=new r8.Scalar(U);if(H)H.node=_;return _}W=U instanceof Map?Y[A1.MAP]:(Symbol.iterator in Object(U))?Y[A1.SEQ]:Y[A1.MAP]}if(G)G(W),delete q.onTagObj;let $=W?.createNode?W.createNode(q.schema,U,q):typeof W?.nodeClass?.from==="function"?W.nodeClass.from(q.schema,U,q):new r8.Scalar(U);if(X)$.tag=X;else if(!W.default)$.tag=W.tag;if(H)H.node=$;return $}_H.createNode=WH});var o6=D((FH)=>{var LH=v2(),f0=k(),zH=i6();function U9(U,X,q){let Z=q;for(let Q=X.length-1;Q>=0;--Q){let G=X[Q];if(typeof G==="number"&&Number.isInteger(G)&&G>=0){let Y=[];Y[G]=Z,Z=Y}else Z=new Map([[G,Z]])}return LH.createNode(Z,void 0,{aliasDuplicateObjects:!1,keepUndefined:!1,onAnchor:()=>{throw Error("This should not happen, please report a bug.")},schema:U,sourceObjects:new Map})}var a8=(U)=>U==null||typeof U==="object"&&!!U[Symbol.iterator]().next().done;class n8 extends zH.NodeBase{constructor(U,X){super(U);Object.defineProperty(this,"schema",{value:X,configurable:!0,enumerable:!1,writable:!0})}clone(U){let X=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));if(U)X.schema=U;if(X.items=X.items.map((q)=>f0.isNode(q)||f0.isPair(q)?q.clone(U):q),this.range)X.range=this.range.slice();return X}addIn(U,X){if(a8(U))this.add(X);else{let[q,...Z]=U,Q=this.get(q,!0);if(f0.isCollection(Q))Q.addIn(Z,X);else if(Q===void 0&&this.schema)this.set(q,U9(this.schema,Z,X));else throw Error(`Expected YAML collection at ${q}. Remaining path: ${Z}`)}}deleteIn(U){let[X,...q]=U;if(q.length===0)return this.delete(X);let Z=this.get(X,!0);if(f0.isCollection(Z))return Z.deleteIn(q);else throw Error(`Expected YAML collection at ${X}. Remaining path: ${q}`)}getIn(U,X){let[q,...Z]=U,Q=this.get(q,!0);if(Z.length===0)return!X&&f0.isScalar(Q)?Q.value:Q;else return f0.isCollection(Q)?Q.getIn(Z,X):void 0}hasAllNullValues(U){return this.items.every((X)=>{if(!f0.isPair(X))return!1;let q=X.value;return q==null||U&&f0.isScalar(q)&&q.value==null&&!q.commentBefore&&!q.comment&&!q.tag})}hasIn(U){let[X,...q]=U;if(q.length===0)return this.has(X);let Z=this.get(X,!0);return f0.isCollection(Z)?Z.hasIn(q):!1}setIn(U,X){let[q,...Z]=U;if(Z.length===0)this.set(q,X);else{let Q=this.get(q,!0);if(f0.isCollection(Q))Q.setIn(Z,X);else if(Q===void 0&&this.schema)this.set(q,U9(this.schema,Z,X));else throw Error(`Expected YAML collection at ${q}. Remaining path: ${Z}`)}}}FH.Collection=n8;FH.collectionFromPath=U9;FH.isEmptyPath=a8});var x2=D((DH)=>{var BH=(U)=>U.replace(/^(?!$)(?: $)?/gm,"#");function X9(U,X){if(/^\n+$/.test(U))return U.substring(1);return X?U.replace(/^(?! *$)/gm,X):U}var TH=(U,X,q)=>U.endsWith(`
3
- `)?X9(q,X):q.includes(`
1
+ import{createRequire as iQ}from"node:module";var pQ=Object.create;var{getPrototypeOf:lQ,defineProperty:X2,getOwnPropertyNames:HX,getOwnPropertyDescriptor:dQ}=Object,WX=Object.prototype.hasOwnProperty;var cQ=(U,X,q)=>{q=U!=null?pQ(lQ(U)):{};let Z=X||!U||!U.__esModule?X2(q,"default",{value:U,enumerable:!0}):q;for(let Q of HX(U))if(!WX.call(Z,Q))X2(Z,Q,{get:()=>U[Q],enumerable:!0});return Z},JX=new WeakMap,_X=(U)=>{var X=JX.get(U),q;if(X)return X;if(X=X2({},"__esModule",{value:!0}),U&&typeof U==="object"||typeof U==="function")HX(U).map((Z)=>!WX.call(X,Z)&&X2(X,Z,{get:()=>U[Z],enumerable:!(q=dQ(U,Z))||q.enumerable}));return JX.set(U,X),X},R=(U,X)=>()=>(X||U((X={exports:{}}).exports,X),X.exports);var $X=(U,X)=>{for(var q in X)X2(U,q,{get:X[q],enumerable:!0,configurable:!0,set:(Z)=>X[q]=()=>Z})};var LX=(U,X)=>()=>(U&&(X=U(U=0)),X);var M1=iQ(import.meta.url);var SU={};$X(SU,{ExpressionEngine:()=>e});class e{static evaluate(U,X){try{if(U.includes("${")){let q=this.interpolate(U,X);if(!isNaN(Number(q))&&q.trim()!=="")return Number(q);return q}return this.evaluateExpression(U,X)}catch(q){return console.error(`Error evaluating expression: ${U}`,q),null}}static interpolate(U,X){return U.replace(/\$\{([^}]+)\}/g,(q,Z)=>{try{let Q=this.evaluateExpression(Z,X);if(Q===void 0||Q===null)return"undefined";return String(Q)}catch(Q){return console.error(`Error en interpolación: ${q}`,Q),q}})}static evaluateMathExpression(U){try{return Function("Math",`return ${U}`)(Math)}catch(X){throw Error(`Error evaluando expresión matemática: ${U}`)}}static evaluateExpression(U,X){if(/^(data|vars|request|computed|env|state)(\.[a-zA-Z0-9_]+)+$/.test(U))return this.getNestedValue(U,X);if(/^(vars|env|state)(\.[a-zA-Z0-9_]+)$/.test(U))return this.getNestedValue(U,X);try{return Function("context","with(context) { return "+U+" }")(X)}catch(q){return console.error(`ERROR evaluating expression '${U}':`,q),U}}static getNestedValue(U,X){let q=U.split("."),Z=X;for(let Q of q){if(Z===null||Z===void 0||typeof Z!=="object"||!(Q in Z))return;Z=Z[Q]}return Z}static evaluateMath(U,X){let q=U;q=q.replace(/\b[a-zA-Z_][a-zA-Z0-9_]*\b/g,(Z)=>{if(["Math","random","floor","ceil","round","sqrt","abs","pow","min","max","sin","cos","tan"].includes(Z))return Z;let Q=this.getNestedValue(Z,X);if(Q!==void 0)return typeof Q==="string"?`"${Q}"`:String(Q);return Z});try{return this.evaluateMathExpression(q)}catch(Z){return console.error(`Error en evaluación matemática: ${U}`,Z),NaN}}}class EU{store=new Map;async loadState(){return new Map(this.store)}async saveState(U,X){this.store.set(U,X)}async deleteState(U){this.store.delete(U)}async clearState(){this.store.clear()}}class U0{static instance;state;persistence;constructor(){this.state={},this.persistence=new EU}static getInstance(){if(!U0.instance)U0.instance=new U0;return U0.instance}setPersistence(U){this.persistence=U}async initialize(){let U=await this.persistence.loadState();if(U instanceof Map)this.state=Object.fromEntries(U);else this.state=U||{};console.log(`[StateManager] Initialized with ${Object.keys(this.state).length} root keys.`)}get(U){return this.state[U]}async set(U,X){this.state[U]=X,await this.persistence.saveState(U,X)}async increment(U,X=1){let q=this.state[U]||0,Z=Number(q)+X;return this.state[U]=Z,await this.persistence.saveState(U,Z),Z}async decrement(U,X=1){return this.increment(U,-X)}async delete(U){if(U in this.state)return delete this.state[U],await this.persistence.deleteState(U),!0;return!1}async clear(){this.state={},await this.persistence.clearState()}async applyConfig(U){if(!U.state)return;for(let[X,q]of Object.entries(U.state))if(typeof q!=="object"||q===null||!("value"in q)){if(this.state[X]===void 0)await this.set(X,q)}else{let Z=q;if(this.state[X]===void 0)await this.set(X,Z.value);if(Z.lifecycle?.ttl)this.setupTTL(X,Z.lifecycle.ttl)}}setupTTL(U,X){let q=0;if(typeof X==="number")q=X;else{let Z=X.match(/^(\d+)([smhd])$/);if(Z&&Z[1]&&Z[2]){let Q=parseInt(Z[1]),G=Z[2];q=Q*({s:1000,m:60000,h:3600000,d:86400000}[G]||0)}}if(q>0)setTimeout(()=>{this.delete(U).catch(console.error)},q)}getAll(){return{...this.state}}getLiveProxy(){let U=this;function X(q,Z=[]){return new Proxy(q,{get(Q,G){let Y=Q[G];if(Y&&typeof Y==="object"&&!Array.isArray(Y))return X(Y,[...Z,G]);return Y},set(Q,G,Y){if(typeof G!=="string")return!1;Q[G]=Y;let J=Z.length>0?Z[0]:G;if(J)U.persistence.saveState(J,U.state[J]);return!0}})}return X(this.state)}}var P1=()=>{};var FX={};$X(FX,{ActionRegistry:()=>w1});class w1{static instance;handlers=new Map;constructor(){this.registerDefaults()}static getInstance(){if(!this.instance)this.instance=new w1;return this.instance}register(U,X){this.handlers.set(U.toUpperCase(),X)}get(U){return this.handlers.get(U.toUpperCase())}registerDefaults(){this.register("log",(U,X)=>{let q=U.params?.message||U.params?.content||"Log Trigger",Z=typeof q==="string"?e.interpolate(q,X):String(q);return console.log(`[TriggerLog] ${Z}`),{message:Z}}),this.register("math",(U,X)=>{let q=String(U.params?.expression||"0");return e.evaluate(q,X)}),this.register("response",(U,X)=>{let q=U.params?.content||U.params?.body||"",Z=typeof q==="string"?e.interpolate(q,X):String(q);return{statusCode:U.params?.statusCode||200,headers:U.params?.headers||{"Content-Type":"application/json"},body:Z}}),this.register("execute",async(U,X)=>{let q=U.params?.command||U.params?.content||"",Z=typeof q==="string"?e.interpolate(q,X):String(q);if(!U.params?.safe)console.warn(`[Trigger] Ejecutando comando no seguro: ${Z}`);try{let Q=Bun.spawn(Z.split(" "),{stdout:"pipe",stderr:"pipe"}),[G,Y]=await Promise.all([new Response(Q.stdout).text(),new Response(Q.stderr).text()]);return{command:Z,stdout:G,stderr:Y,exitCode:await Q.exited}}catch(Q){return{command:Z,error:String(Q)}}}),this.register("forward",async(U,X)=>{let q=U.params?.url||"",Z=typeof q==="string"?e.interpolate(q,X):String(q),Q=String(U.params?.method||"POST").toUpperCase(),Y=["POST","PUT","PATCH"].includes(Q);try{let J=await fetch(Z,{method:Q,headers:{"Content-Type":"application/json",...typeof U.params?.headers==="object"&&U.params.headers!==null&&!Array.isArray(U.params.headers)?U.params.headers:{}},...Y?{body:JSON.stringify(X.data)}:{}});return{url:Z,method:Q,status:J.status,headers:(()=>{let H={};return J.headers.forEach((W,$)=>H[$]=W),H})(),body:await J.text()}}catch(J){return{url:Z,method:Q,error:String(J)}}}),this.register("STATE_SET",async(U,X)=>{let q=String(U.params?.key||""),Z=U.params?.value;if(!q)return{error:"Missing key for STATE_SET"};let Q=Z;if(typeof Z==="string"&&Z.includes("${"))Q=e.interpolate(Z,X);return await U0.getInstance().set(q,Q),{key:q,value:Q}}),this.register("STATE_INCREMENT",async(U,X)=>{let q=String(U.params?.key||""),Z=Number(U.params?.amount)||1;if(!q)return{error:"Missing key for STATE_INCREMENT"};let Q=await U0.getInstance().increment(q,Z);return{key:q,newValue:Q}}),this.register("STATE_GET",async(U,X)=>{let q=String(U.params?.key||""),Z=String(U.params?.as||q);if(!q)return{error:"Missing key for STATE_GET"};let Q=await U0.getInstance().get(q);if(!X.env)X.env={};return X.env[Z]=Q,{key:q,value:Q,storedAs:Z}}),this.register("STATE_DELETE",async(U,X)=>{let q=String(U.params?.key||"");if(!q)return{error:"Missing key for STATE_DELETE"};let Z=await U0.getInstance().delete(q);return{key:q,deleted:Z}}),this.register("EMIT_EVENT",(U,X)=>{return{event:U.params?.event,payload:U.params?.data||{}}}),this.register("notify",(U,X)=>{let q=U.params?.message||U.params?.content||"Notification",Z=U.params?.target||"default";return console.log(`[Notification] To: ${Z}, Msg: ${q}`),{target:Z,message:q}}),this.register("STATE_OP",(U,X)=>{if(U.params?.run)return Function("context","state","data","vars","env","helpers",`with(context) { ${U.params.run} }`)(X,X.state,X.data,X.vars,X.env,X.helpers);return{warning:"Missing 'run' param for STATE_OP"}})}}var q2=LX(()=>{P1()});var k=R((GJ)=>{var r4=Symbol.for("yaml.alias"),b8=Symbol.for("yaml.document"),m6=Symbol.for("yaml.map"),f8=Symbol.for("yaml.pair"),a4=Symbol.for("yaml.scalar"),p6=Symbol.for("yaml.seq"),u0=Symbol.for("yaml.node.type"),t7=(U)=>!!U&&typeof U==="object"&&U[u0]===r4,e7=(U)=>!!U&&typeof U==="object"&&U[u0]===b8,UJ=(U)=>!!U&&typeof U==="object"&&U[u0]===m6,XJ=(U)=>!!U&&typeof U==="object"&&U[u0]===f8,g8=(U)=>!!U&&typeof U==="object"&&U[u0]===a4,qJ=(U)=>!!U&&typeof U==="object"&&U[u0]===p6;function y8(U){if(U&&typeof U==="object")switch(U[u0]){case m6:case p6:return!0}return!1}function ZJ(U){if(U&&typeof U==="object")switch(U[u0]){case r4:case m6:case a4:case p6:return!0}return!1}var QJ=(U)=>(g8(U)||y8(U))&&!!U.anchor;GJ.ALIAS=r4;GJ.DOC=b8;GJ.MAP=m6;GJ.NODE_TYPE=u0;GJ.PAIR=f8;GJ.SCALAR=a4;GJ.SEQ=p6;GJ.hasAnchor=QJ;GJ.isAlias=t7;GJ.isCollection=y8;GJ.isDocument=e7;GJ.isMap=UJ;GJ.isNode=ZJ;GJ.isPair=XJ;GJ.isScalar=g8;GJ.isSeq=qJ});var g2=R((MJ)=>{var t=k(),L0=Symbol("break visit"),k8=Symbol("skip children"),b0=Symbol("remove node");function l6(U,X){let q=v8(X);if(t.isDocument(U)){if(d1(null,U.contents,q,Object.freeze([U]))===b0)U.contents=null}else d1(null,U,q,Object.freeze([]))}l6.BREAK=L0;l6.SKIP=k8;l6.REMOVE=b0;function d1(U,X,q,Z){let Q=h8(U,X,q,Z);if(t.isNode(Q)||t.isPair(Q))return x8(U,Z,Q),d1(U,Q,q,Z);if(typeof Q!=="symbol"){if(t.isCollection(X)){Z=Object.freeze(Z.concat(X));for(let G=0;G<X.items.length;++G){let Y=d1(G,X.items[G],q,Z);if(typeof Y==="number")G=Y-1;else if(Y===L0)return L0;else if(Y===b0)X.items.splice(G,1),G-=1}}else if(t.isPair(X)){Z=Object.freeze(Z.concat(X));let G=d1("key",X.key,q,Z);if(G===L0)return L0;else if(G===b0)X.key=null;let Y=d1("value",X.value,q,Z);if(Y===L0)return L0;else if(Y===b0)X.value=null}}return Q}async function d6(U,X){let q=v8(X);if(t.isDocument(U)){if(await c1(null,U.contents,q,Object.freeze([U]))===b0)U.contents=null}else await c1(null,U,q,Object.freeze([]))}d6.BREAK=L0;d6.SKIP=k8;d6.REMOVE=b0;async function c1(U,X,q,Z){let Q=await h8(U,X,q,Z);if(t.isNode(Q)||t.isPair(Q))return x8(U,Z,Q),c1(U,Q,q,Z);if(typeof Q!=="symbol"){if(t.isCollection(X)){Z=Object.freeze(Z.concat(X));for(let G=0;G<X.items.length;++G){let Y=await c1(G,X.items[G],q,Z);if(typeof Y==="number")G=Y-1;else if(Y===L0)return L0;else if(Y===b0)X.items.splice(G,1),G-=1}}else if(t.isPair(X)){Z=Object.freeze(Z.concat(X));let G=await c1("key",X.key,q,Z);if(G===L0)return L0;else if(G===b0)X.key=null;let Y=await c1("value",X.value,q,Z);if(Y===L0)return L0;else if(Y===b0)X.value=null}}return Q}function v8(U){if(typeof U==="object"&&(U.Collection||U.Node||U.Value))return Object.assign({Alias:U.Node,Map:U.Node,Scalar:U.Node,Seq:U.Node},U.Value&&{Map:U.Value,Scalar:U.Value,Seq:U.Value},U.Collection&&{Map:U.Collection,Seq:U.Collection},U);return U}function h8(U,X,q,Z){if(typeof q==="function")return q(U,X,Z);if(t.isMap(X))return q.Map?.(U,X,Z);if(t.isSeq(X))return q.Seq?.(U,X,Z);if(t.isPair(X))return q.Pair?.(U,X,Z);if(t.isScalar(X))return q.Scalar?.(U,X,Z);if(t.isAlias(X))return q.Alias?.(U,X,Z);return}function x8(U,X,q){let Z=X[X.length-1];if(t.isCollection(Z))Z.items[U]=q;else if(t.isPair(Z))if(U==="key")Z.key=q;else Z.value=q;else if(t.isDocument(Z))Z.contents=q;else{let Q=t.isAlias(Z)?"alias":"scalar";throw Error(`Cannot replace node with ${Q} parent`)}}MJ.visit=l6;MJ.visitAsync=d6});var n4=R((CJ)=>{var u8=k(),IJ=g2(),KJ={"!":"%21",",":"%2C","[":"%5B","]":"%5D","{":"%7B","}":"%7D"},NJ=(U)=>U.replace(/[!,[\]{}]/g,(X)=>KJ[X]);class T0{constructor(U,X){this.docStart=null,this.docEnd=!1,this.yaml=Object.assign({},T0.defaultYaml,U),this.tags=Object.assign({},T0.defaultTags,X)}clone(){let U=new T0(this.yaml,this.tags);return U.docStart=this.docStart,U}atDocument(){let U=new T0(this.yaml,this.tags);switch(this.yaml.version){case"1.1":this.atNextDocument=!0;break;case"1.2":this.atNextDocument=!1,this.yaml={explicit:T0.defaultYaml.explicit,version:"1.2"},this.tags=Object.assign({},T0.defaultTags);break}return U}add(U,X){if(this.atNextDocument)this.yaml={explicit:T0.defaultYaml.explicit,version:"1.1"},this.tags=Object.assign({},T0.defaultTags),this.atNextDocument=!1;let q=U.trim().split(/[ \t]+/),Z=q.shift();switch(Z){case"%TAG":{if(q.length!==2){if(X(0,"%TAG directive should contain exactly two parts"),q.length<2)return!1}let[Q,G]=q;return this.tags[Q]=G,!0}case"%YAML":{if(this.yaml.explicit=!0,q.length!==1)return X(0,"%YAML directive should contain exactly one part"),!1;let[Q]=q;if(Q==="1.1"||Q==="1.2")return this.yaml.version=Q,!0;else{let G=/^\d+\.\d+$/.test(Q);return X(6,`Unsupported YAML version ${Q}`,G),!1}}default:return X(0,`Unknown directive ${Z}`,!0),!1}}tagName(U,X){if(U==="!")return"!";if(U[0]!=="!")return X(`Not a valid tag: ${U}`),null;if(U[1]==="<"){let G=U.slice(2,-1);if(G==="!"||G==="!!")return X(`Verbatim tags aren't resolved, so ${U} is invalid.`),null;if(U[U.length-1]!==">")X("Verbatim tags must end with a >");return G}let[,q,Z]=U.match(/^(.*!)([^!]*)$/s);if(!Z)X(`The ${U} tag has no suffix`);let Q=this.tags[q];if(Q)try{return Q+decodeURIComponent(Z)}catch(G){return X(String(G)),null}if(q==="!")return U;return X(`Could not resolve tag: ${U}`),null}tagString(U){for(let[X,q]of Object.entries(this.tags))if(U.startsWith(q))return X+NJ(U.substring(q.length));return U[0]==="!"?U:`!<${U}>`}toString(U){let X=this.yaml.explicit?[`%YAML ${this.yaml.version||"1.2"}`]:[],q=Object.entries(this.tags),Z;if(U&&q.length>0&&u8.isNode(U.contents)){let Q={};IJ.visit(U.contents,(G,Y)=>{if(u8.isNode(Y)&&Y.tag)Q[Y.tag]=!0}),Z=Object.keys(Q)}else Z=[];for(let[Q,G]of q){if(Q==="!!"&&G==="tag:yaml.org,2002:")continue;if(!U||Z.some((Y)=>Y.startsWith(G)))X.push(`%TAG ${Q} ${G}`)}return X.join(`
2
+ `)}}T0.defaultYaml={explicit:!1,version:"1.2"};T0.defaultTags={"!!":"tag:yaml.org,2002:"};CJ.Directives=T0});var c6=R((fJ)=>{var m8=k(),EJ=g2();function jJ(U){if(/[\x00-\x19\s,[\]{}]/.test(U)){let q=`Anchor must not contain whitespace or control characters: ${JSON.stringify(U)}`;throw Error(q)}return!0}function p8(U){let X=new Set;return EJ.visit(U,{Value(q,Z){if(Z.anchor)X.add(Z.anchor)}}),X}function l8(U,X){for(let q=1;;++q){let Z=`${U}${q}`;if(!X.has(Z))return Z}}function bJ(U,X){let q=[],Z=new Map,Q=null;return{onAnchor:(G)=>{q.push(G),Q??(Q=p8(U));let Y=l8(X,Q);return Q.add(Y),Y},setAnchors:()=>{for(let G of q){let Y=Z.get(G);if(typeof Y==="object"&&Y.anchor&&(m8.isScalar(Y.node)||m8.isCollection(Y.node)))Y.node.anchor=Y.anchor;else{let J=Error("Failed to resolve repeated object (this should not happen)");throw J.source=G,J}}},sourceObjects:Z}}fJ.anchorIsValid=jJ;fJ.anchorNames=p8;fJ.createNodeAnchors=bJ;fJ.findNewAnchor=l8});var t4=R((hJ)=>{function y2(U,X,q,Z){if(Z&&typeof Z==="object")if(Array.isArray(Z))for(let Q=0,G=Z.length;Q<G;++Q){let Y=Z[Q],J=y2(U,Z,String(Q),Y);if(J===void 0)delete Z[Q];else if(J!==Y)Z[Q]=J}else if(Z instanceof Map)for(let Q of Array.from(Z.keys())){let G=Z.get(Q),Y=y2(U,Z,Q,G);if(Y===void 0)Z.delete(Q);else if(Y!==G)Z.set(Q,Y)}else if(Z instanceof Set)for(let Q of Array.from(Z)){let G=y2(U,Z,Q,Q);if(G===void 0)Z.delete(Q);else if(G!==Q)Z.delete(Q),Z.add(G)}else for(let[Q,G]of Object.entries(Z)){let Y=y2(U,Z,Q,G);if(Y===void 0)delete Z[Q];else if(Y!==G)Z[Q]=Y}return U.call(X,q,Z)}hJ.applyReviver=y2});var n0=R((mJ)=>{var uJ=k();function d8(U,X,q){if(Array.isArray(U))return U.map((Z,Q)=>d8(Z,String(Q),q));if(U&&typeof U.toJSON==="function"){if(!q||!uJ.hasAnchor(U))return U.toJSON(X,q);let Z={aliasCount:0,count:1,res:void 0};q.anchors.set(U,Z),q.onCreate=(G)=>{Z.res=G,delete q.onCreate};let Q=U.toJSON(X,q);if(q.onCreate)q.onCreate(Q);return Q}if(typeof U==="bigint"&&!q?.keep)return Number(U);return U}mJ.toJS=d8});var i6=R((cJ)=>{var lJ=t4(),c8=k(),dJ=n0();class i8{constructor(U){Object.defineProperty(this,c8.NODE_TYPE,{value:U})}clone(){let U=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));if(this.range)U.range=this.range.slice();return U}toJS(U,{mapAsMap:X,maxAliasCount:q,onAnchor:Z,reviver:Q}={}){if(!c8.isDocument(U))throw TypeError("A document argument is required");let G={anchors:new Map,doc:U,keep:!0,mapAsMap:X===!0,mapKeyWarned:!1,maxAliasCount:typeof q==="number"?q:100},Y=dJ.toJS(this,"",G);if(typeof Z==="function")for(let{count:J,res:H}of G.anchors.values())Z(H,J);return typeof Q==="function"?lJ.applyReviver(Q,{"":Y},"",Y):Y}}cJ.NodeBase=i8});var k2=R((nJ)=>{var sJ=c6(),oJ=g2(),i1=k(),rJ=i6(),aJ=n0();class s8 extends rJ.NodeBase{constructor(U){super(i1.ALIAS);this.source=U,Object.defineProperty(this,"tag",{set(){throw Error("Alias nodes cannot have tags")}})}resolve(U,X){let q;if(X?.aliasResolveCache)q=X.aliasResolveCache;else if(q=[],oJ.visit(U,{Node:(Q,G)=>{if(i1.isAlias(G)||i1.hasAnchor(G))q.push(G)}}),X)X.aliasResolveCache=q;let Z=void 0;for(let Q of q){if(Q===this)break;if(Q.anchor===this.source)Z=Q}return Z}toJSON(U,X){if(!X)return{source:this.source};let{anchors:q,doc:Z,maxAliasCount:Q}=X,G=this.resolve(Z,X);if(!G){let J=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw ReferenceError(J)}let Y=q.get(G);if(!Y)aJ.toJS(G,null,X),Y=q.get(G);if(Y?.res===void 0)throw ReferenceError("This should not happen: Alias anchor was not resolved?");if(Q>=0){if(Y.count+=1,Y.aliasCount===0)Y.aliasCount=s6(Z,G,q);if(Y.count*Y.aliasCount>Q)throw ReferenceError("Excessive alias count indicates a resource exhaustion attack")}return Y.res}toString(U,X,q){let Z=`*${this.source}`;if(U){if(sJ.anchorIsValid(this.source),U.options.verifyAliasOrder&&!U.anchors.has(this.source)){let Q=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw Error(Q)}if(U.implicitKey)return`${Z} `}return Z}}function s6(U,X,q){if(i1.isAlias(X)){let Z=X.resolve(U),Q=q&&Z&&q.get(Z);return Q?Q.count*Q.aliasCount:0}else if(i1.isCollection(X)){let Z=0;for(let Q of X.items){let G=s6(U,Q,q);if(G>Z)Z=G}return Z}else if(i1.isPair(X)){let Z=s6(U,X.key,q),Q=s6(U,X.value,q);return Math.max(Z,Q)}return 1}nJ.Alias=s8});var i=R((ZH)=>{var eJ=k(),UH=i6(),XH=n0(),qH=(U)=>!U||typeof U!=="function"&&typeof U!=="object";class F1 extends UH.NodeBase{constructor(U){super(eJ.SCALAR);this.value=U}toJSON(U,X){return X?.keep?this.value:XH.toJS(this.value,U,X)}toString(){return String(this.value)}}F1.BLOCK_FOLDED="BLOCK_FOLDED";F1.BLOCK_LITERAL="BLOCK_LITERAL";F1.PLAIN="PLAIN";F1.QUOTE_DOUBLE="QUOTE_DOUBLE";F1.QUOTE_SINGLE="QUOTE_SINGLE";ZH.Scalar=F1;ZH.isScalarValue=qH});var v2=R((_H)=>{var YH=k2(),A1=k(),o8=i(),JH="tag:yaml.org,2002:";function HH(U,X,q){if(X){let Z=q.filter((G)=>G.tag===X),Q=Z.find((G)=>!G.format)??Z[0];if(!Q)throw Error(`Tag ${X} not found`);return Q}return q.find((Z)=>Z.identify?.(U)&&!Z.format)}function WH(U,X,q){if(A1.isDocument(U))U=U.contents;if(A1.isNode(U))return U;if(A1.isPair(U)){let _=q.schema[A1.MAP].createNode?.(q.schema,null,q);return _.items.push(U),_}if(U instanceof String||U instanceof Number||U instanceof Boolean||typeof BigInt<"u"&&U instanceof BigInt)U=U.valueOf();let{aliasDuplicateObjects:Z,onAnchor:Q,onTagObj:G,schema:Y,sourceObjects:J}=q,H=void 0;if(Z&&U&&typeof U==="object")if(H=J.get(U),H)return H.anchor??(H.anchor=Q(U)),new YH.Alias(H.anchor);else H={anchor:null,node:null},J.set(U,H);if(X?.startsWith("!!"))X=JH+X.slice(2);let W=HH(U,X,Y.tags);if(!W){if(U&&typeof U.toJSON==="function")U=U.toJSON();if(!U||typeof U!=="object"){let _=new o8.Scalar(U);if(H)H.node=_;return _}W=U instanceof Map?Y[A1.MAP]:(Symbol.iterator in Object(U))?Y[A1.SEQ]:Y[A1.MAP]}if(G)G(W),delete q.onTagObj;let $=W?.createNode?W.createNode(q.schema,U,q):typeof W?.nodeClass?.from==="function"?W.nodeClass.from(q.schema,U,q):new o8.Scalar(U);if(X)$.tag=X;else if(!W.default)$.tag=W.tag;if(H)H.node=$;return $}_H.createNode=WH});var o6=R((FH)=>{var LH=v2(),f0=k(),zH=i6();function e4(U,X,q){let Z=q;for(let Q=X.length-1;Q>=0;--Q){let G=X[Q];if(typeof G==="number"&&Number.isInteger(G)&&G>=0){let Y=[];Y[G]=Z,Z=Y}else Z=new Map([[G,Z]])}return LH.createNode(Z,void 0,{aliasDuplicateObjects:!1,keepUndefined:!1,onAnchor:()=>{throw Error("This should not happen, please report a bug.")},schema:U,sourceObjects:new Map})}var r8=(U)=>U==null||typeof U==="object"&&!!U[Symbol.iterator]().next().done;class a8 extends zH.NodeBase{constructor(U,X){super(U);Object.defineProperty(this,"schema",{value:X,configurable:!0,enumerable:!1,writable:!0})}clone(U){let X=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));if(U)X.schema=U;if(X.items=X.items.map((q)=>f0.isNode(q)||f0.isPair(q)?q.clone(U):q),this.range)X.range=this.range.slice();return X}addIn(U,X){if(r8(U))this.add(X);else{let[q,...Z]=U,Q=this.get(q,!0);if(f0.isCollection(Q))Q.addIn(Z,X);else if(Q===void 0&&this.schema)this.set(q,e4(this.schema,Z,X));else throw Error(`Expected YAML collection at ${q}. Remaining path: ${Z}`)}}deleteIn(U){let[X,...q]=U;if(q.length===0)return this.delete(X);let Z=this.get(X,!0);if(f0.isCollection(Z))return Z.deleteIn(q);else throw Error(`Expected YAML collection at ${X}. Remaining path: ${q}`)}getIn(U,X){let[q,...Z]=U,Q=this.get(q,!0);if(Z.length===0)return!X&&f0.isScalar(Q)?Q.value:Q;else return f0.isCollection(Q)?Q.getIn(Z,X):void 0}hasAllNullValues(U){return this.items.every((X)=>{if(!f0.isPair(X))return!1;let q=X.value;return q==null||U&&f0.isScalar(q)&&q.value==null&&!q.commentBefore&&!q.comment&&!q.tag})}hasIn(U){let[X,...q]=U;if(q.length===0)return this.has(X);let Z=this.get(X,!0);return f0.isCollection(Z)?Z.hasIn(q):!1}setIn(U,X){let[q,...Z]=U;if(Z.length===0)this.set(q,X);else{let Q=this.get(q,!0);if(f0.isCollection(Q))Q.setIn(Z,X);else if(Q===void 0&&this.schema)this.set(q,e4(this.schema,Z,X));else throw Error(`Expected YAML collection at ${q}. Remaining path: ${Z}`)}}}FH.Collection=a8;FH.collectionFromPath=e4;FH.isEmptyPath=r8});var h2=R((RH)=>{var BH=(U)=>U.replace(/^(?!$)(?: $)?/gm,"#");function U9(U,X){if(/^\n+$/.test(U))return U.substring(1);return X?U.replace(/^(?! *$)/gm,X):U}var TH=(U,X,q)=>U.endsWith(`
3
+ `)?U9(q,X):q.includes(`
4
4
  `)?`
5
- `+X9(q,X):(U.endsWith(" ")?"":" ")+q;DH.indentComment=X9;DH.lineComment=TH;DH.stringifyComment=BH});var e8=D((IH)=>{function wH(U,X,q="flow",{indentAtStart:Z,lineWidth:Q=80,minContentWidth:G=20,onFold:Y,onOverflow:J}={}){if(!Q||Q<0)return U;if(Q<G)G=0;let H=Math.max(1+G,1+Q-X.length);if(U.length<=H)return U;let W=[],$={},_=Q-X.length;if(typeof Z==="number")if(Z>Q-Math.max(2,G))W.push(0);else _=Q-Z;let L=void 0,A=void 0,T=!1,z=-1,O=-1,R=-1;if(q==="block"){if(z=t8(U,z,X.length),z!==-1)_=z+H}for(let K;K=U[z+=1];){if(q==="quoted"&&K==="\\"){switch(O=z,U[z+1]){case"x":z+=3;break;case"u":z+=5;break;case"U":z+=9;break;default:z+=1}R=z}if(K===`
6
- `){if(q==="block")z=t8(U,z,X.length);_=z+X.length+H,L=void 0}else{if(K===" "&&A&&A!==" "&&A!==`
5
+ `+U9(q,X):(U.endsWith(" ")?"":" ")+q;RH.indentComment=U9;RH.lineComment=TH;RH.stringifyComment=BH});var t8=R((IH)=>{function wH(U,X,q="flow",{indentAtStart:Z,lineWidth:Q=80,minContentWidth:G=20,onFold:Y,onOverflow:J}={}){if(!Q||Q<0)return U;if(Q<G)G=0;let H=Math.max(1+G,1+Q-X.length);if(U.length<=H)return U;let W=[],$={},_=Q-X.length;if(typeof Z==="number")if(Z>Q-Math.max(2,G))W.push(0);else _=Q-Z;let L=void 0,A=void 0,T=!1,z=-1,V=-1,D=-1;if(q==="block"){if(z=n8(U,z,X.length),z!==-1)_=z+H}for(let K;K=U[z+=1];){if(q==="quoted"&&K==="\\"){switch(V=z,U[z+1]){case"x":z+=3;break;case"u":z+=5;break;case"U":z+=9;break;default:z+=1}D=z}if(K===`
6
+ `){if(q==="block")z=n8(U,z,X.length);_=z+X.length+H,L=void 0}else{if(K===" "&&A&&A!==" "&&A!==`
7
7
  `&&A!=="\t"){let C=U[z+1];if(C&&C!==" "&&C!==`
8
- `&&C!=="\t")L=z}if(z>=_)if(L)W.push(L),_=L+H,L=void 0;else if(q==="quoted"){while(A===" "||A==="\t")A=K,K=U[z+=1],T=!0;let C=z>R+1?z-2:O-1;if($[C])return U;W.push(C),$[C]=!0,_=C+H,L=void 0}else T=!0}A=K}if(T&&J)J();if(W.length===0)return U;if(Y)Y();let w=U.slice(0,W[0]);for(let K=0;K<W.length;++K){let C=W[K],N=W[K+1]||U.length;if(C===0)w=`
8
+ `&&C!=="\t")L=z}if(z>=_)if(L)W.push(L),_=L+H,L=void 0;else if(q==="quoted"){while(A===" "||A==="\t")A=K,K=U[z+=1],T=!0;let C=z>D+1?z-2:V-1;if($[C])return U;W.push(C),$[C]=!0,_=C+H,L=void 0}else T=!0}A=K}if(T&&J)J();if(W.length===0)return U;if(Y)Y();let w=U.slice(0,W[0]);for(let K=0;K<W.length;++K){let C=W[K],N=W[K+1]||U.length;if(C===0)w=`
9
9
  ${X}${U.slice(0,N)}`;else{if(q==="quoted"&&$[C])w+=`${U[C]}\\`;w+=`
10
- ${X}${U.slice(C+1,N)}`}}return w}function t8(U,X,q){let Z=X,Q=X+1,G=U[Q];while(G===" "||G==="\t")if(X<Q+q)G=U[++X];else{do G=U[++X];while(G&&G!==`
11
- `);Z=X,Q=X+1,G=U[Q]}return Z}IH.FOLD_BLOCK="block";IH.FOLD_FLOW="flow";IH.FOLD_QUOTED="quoted";IH.foldFlowLines=wH});var u2=D((fH)=>{var I0=i(),t0=e8(),a6=(U,X)=>({indentAtStart:X?U.indent.length:U.indentAtStart,lineWidth:U.options.lineWidth,minContentWidth:U.options.minContentWidth}),n6=(U)=>/^(%|---|\.\.\.)/m.test(U);function EH(U,X,q){if(!X||X<0)return!1;let Z=X-q,Q=U.length;if(Q<=Z)return!1;for(let G=0,Y=0;G<Q;++G)if(U[G]===`
12
- `){if(G-Y>Z)return!0;if(Y=G+1,Q-Y<=Z)return!1}return!0}function h2(U,X){let q=JSON.stringify(U);if(X.options.doubleQuotedAsJSON)return q;let{implicitKey:Z}=X,Q=X.options.doubleQuotedMinMultiLineLength,G=X.indent||(n6(U)?" ":""),Y="",J=0;for(let H=0,W=q[H];W;W=q[++H]){if(W===" "&&q[H+1]==="\\"&&q[H+2]==="n")Y+=q.slice(J,H)+"\\ ",H+=1,J=H,W="\\";if(W==="\\")switch(q[H+1]){case"u":{Y+=q.slice(J,H);let $=q.substr(H+2,4);switch($){case"0000":Y+="\\0";break;case"0007":Y+="\\a";break;case"000b":Y+="\\v";break;case"001b":Y+="\\e";break;case"0085":Y+="\\N";break;case"00a0":Y+="\\_";break;case"2028":Y+="\\L";break;case"2029":Y+="\\P";break;default:if($.substr(0,2)==="00")Y+="\\x"+$.substr(2);else Y+=q.substr(H,6)}H+=5,J=H+1}break;case"n":if(Z||q[H+2]==='"'||q.length<Q)H+=1;else{Y+=q.slice(J,H)+`
10
+ ${X}${U.slice(C+1,N)}`}}return w}function n8(U,X,q){let Z=X,Q=X+1,G=U[Q];while(G===" "||G==="\t")if(X<Q+q)G=U[++X];else{do G=U[++X];while(G&&G!==`
11
+ `);Z=X,Q=X+1,G=U[Q]}return Z}IH.FOLD_BLOCK="block";IH.FOLD_FLOW="flow";IH.FOLD_QUOTED="quoted";IH.foldFlowLines=wH});var u2=R((fH)=>{var I0=i(),t0=t8(),a6=(U,X)=>({indentAtStart:X?U.indent.length:U.indentAtStart,lineWidth:U.options.lineWidth,minContentWidth:U.options.minContentWidth}),n6=(U)=>/^(%|---|\.\.\.)/m.test(U);function EH(U,X,q){if(!X||X<0)return!1;let Z=X-q,Q=U.length;if(Q<=Z)return!1;for(let G=0,Y=0;G<Q;++G)if(U[G]===`
12
+ `){if(G-Y>Z)return!0;if(Y=G+1,Q-Y<=Z)return!1}return!0}function x2(U,X){let q=JSON.stringify(U);if(X.options.doubleQuotedAsJSON)return q;let{implicitKey:Z}=X,Q=X.options.doubleQuotedMinMultiLineLength,G=X.indent||(n6(U)?" ":""),Y="",J=0;for(let H=0,W=q[H];W;W=q[++H]){if(W===" "&&q[H+1]==="\\"&&q[H+2]==="n")Y+=q.slice(J,H)+"\\ ",H+=1,J=H,W="\\";if(W==="\\")switch(q[H+1]){case"u":{Y+=q.slice(J,H);let $=q.substr(H+2,4);switch($){case"0000":Y+="\\0";break;case"0007":Y+="\\a";break;case"000b":Y+="\\v";break;case"001b":Y+="\\e";break;case"0085":Y+="\\N";break;case"00a0":Y+="\\_";break;case"2028":Y+="\\L";break;case"2029":Y+="\\P";break;default:if($.substr(0,2)==="00")Y+="\\x"+$.substr(2);else Y+=q.substr(H,6)}H+=5,J=H+1}break;case"n":if(Z||q[H+2]==='"'||q.length<Q)H+=1;else{Y+=q.slice(J,H)+`
13
13
 
14
14
  `;while(q[H+2]==="\\"&&q[H+3]==="n"&&q[H+4]!=='"')Y+=`
15
- `,H+=2;if(Y+=G,q[H+2]===" ")Y+="\\";H+=1,J=H+1}break;default:H+=1}}return Y=J?Y+q.slice(J):q,Z?Y:t0.foldFlowLines(Y,G,t0.FOLD_QUOTED,a6(X,!1))}function q9(U,X){if(X.options.singleQuote===!1||X.implicitKey&&U.includes(`
16
- `)||/[ \t]\n|\n[ \t]/.test(U))return h2(U,X);let q=X.indent||(n6(U)?" ":""),Z="'"+U.replace(/'/g,"''").replace(/\n+/g,`$&
17
- ${q}`)+"'";return X.implicitKey?Z:t0.foldFlowLines(Z,q,t0.FOLD_FLOW,a6(X,!1))}function i1(U,X){let{singleQuote:q}=X.options,Z;if(q===!1)Z=h2;else{let Q=U.includes('"'),G=U.includes("'");if(Q&&!G)Z=q9;else if(G&&!Q)Z=h2;else Z=q?q9:h2}return Z(U,X)}var Z9;try{Z9=new RegExp(`(^|(?<!
15
+ `,H+=2;if(Y+=G,q[H+2]===" ")Y+="\\";H+=1,J=H+1}break;default:H+=1}}return Y=J?Y+q.slice(J):q,Z?Y:t0.foldFlowLines(Y,G,t0.FOLD_QUOTED,a6(X,!1))}function X9(U,X){if(X.options.singleQuote===!1||X.implicitKey&&U.includes(`
16
+ `)||/[ \t]\n|\n[ \t]/.test(U))return x2(U,X);let q=X.indent||(n6(U)?" ":""),Z="'"+U.replace(/'/g,"''").replace(/\n+/g,`$&
17
+ ${q}`)+"'";return X.implicitKey?Z:t0.foldFlowLines(Z,q,t0.FOLD_FLOW,a6(X,!1))}function s1(U,X){let{singleQuote:q}=X.options,Z;if(q===!1)Z=x2;else{let Q=U.includes('"'),G=U.includes("'");if(Q&&!G)Z=X9;else if(G&&!Q)Z=x2;else Z=q?X9:x2}return Z(U,X)}var q9;try{q9=new RegExp(`(^|(?<!
18
18
  ))
19
19
  +(?!
20
- |$)`,"g")}catch{Z9=/\n+(?!\n|$)/g}function r6({comment:U,type:X,value:q},Z,Q,G){let{blockQuote:Y,commentString:J,lineWidth:H}=Z.options;if(!Y||/\n[\t ]+$/.test(q))return i1(q,Z);let W=Z.indent||(Z.forceBlockIndent||n6(q)?" ":""),$=Y==="literal"?!0:Y==="folded"||X===I0.Scalar.BLOCK_FOLDED?!1:X===I0.Scalar.BLOCK_LITERAL?!0:!EH(q,H,W.length);if(!q)return $?`|
20
+ |$)`,"g")}catch{q9=/\n+(?!\n|$)/g}function r6({comment:U,type:X,value:q},Z,Q,G){let{blockQuote:Y,commentString:J,lineWidth:H}=Z.options;if(!Y||/\n[\t ]+$/.test(q))return s1(q,Z);let W=Z.indent||(Z.forceBlockIndent||n6(q)?" ":""),$=Y==="literal"?!0:Y==="folded"||X===I0.Scalar.BLOCK_FOLDED?!1:X===I0.Scalar.BLOCK_LITERAL?!0:!EH(q,H,W.length);if(!q)return $?`|
21
21
  `:`>
22
22
  `;let _,L;for(L=q.length;L>0;--L){let N=q[L-1];if(N!==`
23
23
  `&&N!=="\t"&&N!==" ")break}let A=q.substring(L),T=A.indexOf(`
24
24
  `);if(T===-1)_="-";else if(q===A||T!==A.length-1){if(_="+",G)G()}else _="";if(A){if(q=q.slice(0,-A.length),A[A.length-1]===`
25
- `)A=A.slice(0,-1);A=A.replace(Z9,`$&${W}`)}let z=!1,O,R=-1;for(O=0;O<q.length;++O){let N=q[O];if(N===" ")z=!0;else if(N===`
26
- `)R=O;else break}let w=q.substring(0,R<O?R+1:O);if(w)q=q.substring(w.length),w=w.replace(/\n+/g,`$&${W}`);let C=(z?W?"2":"1":"")+_;if(U){if(C+=" "+J(U.replace(/ ?[\r\n]+/g," ")),Q)Q()}if(!$){let N=q.replace(/\n+/g,`
25
+ `)A=A.slice(0,-1);A=A.replace(q9,`$&${W}`)}let z=!1,V,D=-1;for(V=0;V<q.length;++V){let N=q[V];if(N===" ")z=!0;else if(N===`
26
+ `)D=V;else break}let w=q.substring(0,D<V?D+1:V);if(w)q=q.substring(w.length),w=w.replace(/\n+/g,`$&${W}`);let C=(z?W?"2":"1":"")+_;if(U){if(C+=" "+J(U.replace(/ ?[\r\n]+/g," ")),Q)Q()}if(!$){let N=q.replace(/\n+/g,`
27
27
  $&`).replace(/(?:^|\n)([\t ].*)(?:([\n\t ]*)\n(?![\n\t ]))?/g,"$1$2").replace(/\n+/g,`$&${W}`),b=!1,m=a6(Z,!0);if(Y!=="folded"&&X!==I0.Scalar.BLOCK_FOLDED)m.onOverflow=()=>{b=!0};let P=t0.foldFlowLines(`${w}${N}${A}`,W,t0.FOLD_BLOCK,m);if(!b)return`>${C}
28
28
  ${W}${P}`}return q=q.replace(/\n+/g,`$&${W}`),`|${C}
29
29
  ${W}${w}${q}${A}`}function jH(U,X,q,Z){let{type:Q,value:G}=U,{actualString:Y,implicitKey:J,indent:H,indentStep:W,inFlow:$}=X;if(J&&G.includes(`
30
- `)||$&&/[[\]{},]/.test(G))return i1(G,X);if(/^[\n\t ,[\]{}#&*!|>'"%@`]|^[?-]$|^[?-][ \t]|[\n:][ \t]|[ \t]\n|[\n\t ]#|[\n\t :]$/.test(G))return J||$||!G.includes(`
31
- `)?i1(G,X):r6(U,X,q,Z);if(!J&&!$&&Q!==I0.Scalar.PLAIN&&G.includes(`
32
- `))return r6(U,X,q,Z);if(n6(G)){if(H==="")return X.forceBlockIndent=!0,r6(U,X,q,Z);else if(J&&H===W)return i1(G,X)}let _=G.replace(/\n+/g,`$&
33
- ${H}`);if(Y){let L=(z)=>z.default&&z.tag!=="tag:yaml.org,2002:str"&&z.test?.test(_),{compat:A,tags:T}=X.doc.schema;if(T.some(L)||A?.some(L))return i1(G,X)}return J?_:t0.foldFlowLines(_,H,t0.FOLD_FLOW,a6(X,!1))}function bH(U,X,q,Z){let{implicitKey:Q,inFlow:G}=X,Y=typeof U.value==="string"?U:Object.assign({},U,{value:String(U.value)}),{type:J}=U;if(J!==I0.Scalar.QUOTE_DOUBLE){if(/[\x00-\x08\x0b-\x1f\x7f-\x9f\u{D800}-\u{DFFF}]/u.test(Y.value))J=I0.Scalar.QUOTE_DOUBLE}let H=($)=>{switch($){case I0.Scalar.BLOCK_FOLDED:case I0.Scalar.BLOCK_LITERAL:return Q||G?i1(Y.value,X):r6(Y,X,q,Z);case I0.Scalar.QUOTE_DOUBLE:return h2(Y.value,X);case I0.Scalar.QUOTE_SINGLE:return q9(Y.value,X);case I0.Scalar.PLAIN:return jH(Y,X,q,Z);default:return null}},W=H(J);if(W===null){let{defaultKeyType:$,defaultStringType:_}=X.options,L=Q&&$||_;if(W=H(L),W===null)throw Error(`Unsupported default string type ${L}`)}return W}fH.stringifyString=bH});var m2=D((pH)=>{var yH=c6(),e0=k(),kH=x2(),vH=u2();function xH(U,X){let q=Object.assign({blockQuote:!0,commentString:kH.stringifyComment,defaultKeyType:null,defaultStringType:"PLAIN",directives:null,doubleQuotedAsJSON:!1,doubleQuotedMinMultiLineLength:40,falseStr:"false",flowCollectionPadding:!0,indentSeq:!0,lineWidth:80,minContentWidth:20,nullStr:"null",simpleKeys:!1,singleQuote:null,trueStr:"true",verifyAliasOrder:!0},U.schema.toStringOptions,X),Z;switch(q.collectionStyle){case"block":Z=!1;break;case"flow":Z=!0;break;default:Z=null}return{anchors:new Set,doc:U,flowCollectionPadding:q.flowCollectionPadding?" ":"",indent:"",indentStep:typeof q.indent==="number"?" ".repeat(q.indent):" ",inFlow:Z,options:q}}function hH(U,X){if(X.tag){let Q=U.filter((G)=>G.tag===X.tag);if(Q.length>0)return Q.find((G)=>G.format===X.format)??Q[0]}let q=void 0,Z;if(e0.isScalar(X)){Z=X.value;let Q=U.filter((G)=>G.identify?.(Z));if(Q.length>1){let G=Q.filter((Y)=>Y.test);if(G.length>0)Q=G}q=Q.find((G)=>G.format===X.format)??Q.find((G)=>!G.format)}else Z=X,q=U.find((Q)=>Q.nodeClass&&Z instanceof Q.nodeClass);if(!q){let Q=Z?.constructor?.name??(Z===null?"null":typeof Z);throw Error(`Tag not resolved for ${Q} value`)}return q}function uH(U,X,{anchors:q,doc:Z}){if(!Z.directives)return"";let Q=[],G=(e0.isScalar(U)||e0.isCollection(U))&&U.anchor;if(G&&yH.anchorIsValid(G))q.add(G),Q.push(`&${G}`);let Y=U.tag??(X.default?null:X.tag);if(Y)Q.push(Z.directives.tagString(Y));return Q.join(" ")}function mH(U,X,q,Z){if(e0.isPair(U))return U.toString(X,q,Z);if(e0.isAlias(U)){if(X.doc.directives)return U.toString(X);if(X.resolvedAliases?.has(U))throw TypeError("Cannot stringify circular structure without alias nodes");else{if(X.resolvedAliases)X.resolvedAliases.add(U);else X.resolvedAliases=new Set([U]);U=U.resolve(X.doc)}}let Q=void 0,G=e0.isNode(U)?U:X.doc.createNode(U,{onTagObj:(H)=>Q=H});Q??(Q=hH(X.doc.schema.tags,G));let Y=uH(G,Q,X);if(Y.length>0)X.indentAtStart=(X.indentAtStart??0)+Y.length+1;let J=typeof Q.stringify==="function"?Q.stringify(G,X,q,Z):e0.isScalar(G)?vH.stringifyString(G,X,q,Z):G.toString(X,q,Z);if(!Y)return J;return e0.isScalar(G)||J[0]==="{"||J[0]==="["?`${Y} ${J}`:`${Y}
34
- ${X.indent}${J}`}pH.createStringifyContext=xH;pH.stringify=mH});var q3=D((iH)=>{var m0=k(),U3=i(),X3=m2(),p2=x2();function cH({key:U,value:X},q,Z,Q){let{allNullValues:G,doc:Y,indent:J,indentStep:H,options:{commentString:W,indentSeq:$,simpleKeys:_}}=q,L=m0.isNode(U)&&U.comment||null;if(_){if(L)throw Error("With simple keys, key nodes cannot have comments");if(m0.isCollection(U)||!m0.isNode(U)&&typeof U==="object")throw Error("With simple keys, collection cannot be used as a key value")}let A=!_&&(!U||L&&X==null&&!q.inFlow||m0.isCollection(U)||(m0.isScalar(U)?U.type===U3.Scalar.BLOCK_FOLDED||U.type===U3.Scalar.BLOCK_LITERAL:typeof U==="object"));q=Object.assign({},q,{allNullValues:!1,implicitKey:!A&&(_||!G),indent:J+H});let T=!1,z=!1,O=X3.stringify(U,q,()=>T=!0,()=>z=!0);if(!A&&!q.inFlow&&O.length>1024){if(_)throw Error("With simple keys, single line scalar must not span more than 1024 characters");A=!0}if(q.inFlow){if(G||X==null){if(T&&Z)Z();return O===""?"?":A?`? ${O}`:O}}else if(G&&!_||X==null&&A){if(O=`? ${O}`,L&&!T)O+=p2.lineComment(O,q.indent,W(L));else if(z&&Q)Q();return O}if(T)L=null;if(A){if(L)O+=p2.lineComment(O,q.indent,W(L));O=`? ${O}
35
- ${J}:`}else if(O=`${O}:`,L)O+=p2.lineComment(O,q.indent,W(L));let R,w,K;if(m0.isNode(X))R=!!X.spaceBefore,w=X.commentBefore,K=X.comment;else if(R=!1,w=null,K=null,X&&typeof X==="object")X=Y.createNode(X);if(q.implicitKey=!1,!A&&!L&&m0.isScalar(X))q.indentAtStart=O.length+1;if(z=!1,!$&&H.length>=2&&!q.inFlow&&!A&&m0.isSeq(X)&&!X.flow&&!X.tag&&!X.anchor)q.indent=q.indent.substring(2);let C=!1,N=X3.stringify(X,q,()=>C=!0,()=>z=!0),b=" ";if(L||R||w){if(b=R?`
30
+ `)||$&&/[[\]{},]/.test(G))return s1(G,X);if(/^[\n\t ,[\]{}#&*!|>'"%@`]|^[?-]$|^[?-][ \t]|[\n:][ \t]|[ \t]\n|[\n\t ]#|[\n\t :]$/.test(G))return J||$||!G.includes(`
31
+ `)?s1(G,X):r6(U,X,q,Z);if(!J&&!$&&Q!==I0.Scalar.PLAIN&&G.includes(`
32
+ `))return r6(U,X,q,Z);if(n6(G)){if(H==="")return X.forceBlockIndent=!0,r6(U,X,q,Z);else if(J&&H===W)return s1(G,X)}let _=G.replace(/\n+/g,`$&
33
+ ${H}`);if(Y){let L=(z)=>z.default&&z.tag!=="tag:yaml.org,2002:str"&&z.test?.test(_),{compat:A,tags:T}=X.doc.schema;if(T.some(L)||A?.some(L))return s1(G,X)}return J?_:t0.foldFlowLines(_,H,t0.FOLD_FLOW,a6(X,!1))}function bH(U,X,q,Z){let{implicitKey:Q,inFlow:G}=X,Y=typeof U.value==="string"?U:Object.assign({},U,{value:String(U.value)}),{type:J}=U;if(J!==I0.Scalar.QUOTE_DOUBLE){if(/[\x00-\x08\x0b-\x1f\x7f-\x9f\u{D800}-\u{DFFF}]/u.test(Y.value))J=I0.Scalar.QUOTE_DOUBLE}let H=($)=>{switch($){case I0.Scalar.BLOCK_FOLDED:case I0.Scalar.BLOCK_LITERAL:return Q||G?s1(Y.value,X):r6(Y,X,q,Z);case I0.Scalar.QUOTE_DOUBLE:return x2(Y.value,X);case I0.Scalar.QUOTE_SINGLE:return X9(Y.value,X);case I0.Scalar.PLAIN:return jH(Y,X,q,Z);default:return null}},W=H(J);if(W===null){let{defaultKeyType:$,defaultStringType:_}=X.options,L=Q&&$||_;if(W=H(L),W===null)throw Error(`Unsupported default string type ${L}`)}return W}fH.stringifyString=bH});var m2=R((pH)=>{var yH=c6(),e0=k(),kH=h2(),vH=u2();function hH(U,X){let q=Object.assign({blockQuote:!0,commentString:kH.stringifyComment,defaultKeyType:null,defaultStringType:"PLAIN",directives:null,doubleQuotedAsJSON:!1,doubleQuotedMinMultiLineLength:40,falseStr:"false",flowCollectionPadding:!0,indentSeq:!0,lineWidth:80,minContentWidth:20,nullStr:"null",simpleKeys:!1,singleQuote:null,trueStr:"true",verifyAliasOrder:!0},U.schema.toStringOptions,X),Z;switch(q.collectionStyle){case"block":Z=!1;break;case"flow":Z=!0;break;default:Z=null}return{anchors:new Set,doc:U,flowCollectionPadding:q.flowCollectionPadding?" ":"",indent:"",indentStep:typeof q.indent==="number"?" ".repeat(q.indent):" ",inFlow:Z,options:q}}function xH(U,X){if(X.tag){let Q=U.filter((G)=>G.tag===X.tag);if(Q.length>0)return Q.find((G)=>G.format===X.format)??Q[0]}let q=void 0,Z;if(e0.isScalar(X)){Z=X.value;let Q=U.filter((G)=>G.identify?.(Z));if(Q.length>1){let G=Q.filter((Y)=>Y.test);if(G.length>0)Q=G}q=Q.find((G)=>G.format===X.format)??Q.find((G)=>!G.format)}else Z=X,q=U.find((Q)=>Q.nodeClass&&Z instanceof Q.nodeClass);if(!q){let Q=Z?.constructor?.name??(Z===null?"null":typeof Z);throw Error(`Tag not resolved for ${Q} value`)}return q}function uH(U,X,{anchors:q,doc:Z}){if(!Z.directives)return"";let Q=[],G=(e0.isScalar(U)||e0.isCollection(U))&&U.anchor;if(G&&yH.anchorIsValid(G))q.add(G),Q.push(`&${G}`);let Y=U.tag??(X.default?null:X.tag);if(Y)Q.push(Z.directives.tagString(Y));return Q.join(" ")}function mH(U,X,q,Z){if(e0.isPair(U))return U.toString(X,q,Z);if(e0.isAlias(U)){if(X.doc.directives)return U.toString(X);if(X.resolvedAliases?.has(U))throw TypeError("Cannot stringify circular structure without alias nodes");else{if(X.resolvedAliases)X.resolvedAliases.add(U);else X.resolvedAliases=new Set([U]);U=U.resolve(X.doc)}}let Q=void 0,G=e0.isNode(U)?U:X.doc.createNode(U,{onTagObj:(H)=>Q=H});Q??(Q=xH(X.doc.schema.tags,G));let Y=uH(G,Q,X);if(Y.length>0)X.indentAtStart=(X.indentAtStart??0)+Y.length+1;let J=typeof Q.stringify==="function"?Q.stringify(G,X,q,Z):e0.isScalar(G)?vH.stringifyString(G,X,q,Z):G.toString(X,q,Z);if(!Y)return J;return e0.isScalar(G)||J[0]==="{"||J[0]==="["?`${Y} ${J}`:`${Y}
34
+ ${X.indent}${J}`}pH.createStringifyContext=hH;pH.stringify=mH});var X3=R((iH)=>{var m0=k(),e8=i(),U3=m2(),p2=h2();function cH({key:U,value:X},q,Z,Q){let{allNullValues:G,doc:Y,indent:J,indentStep:H,options:{commentString:W,indentSeq:$,simpleKeys:_}}=q,L=m0.isNode(U)&&U.comment||null;if(_){if(L)throw Error("With simple keys, key nodes cannot have comments");if(m0.isCollection(U)||!m0.isNode(U)&&typeof U==="object")throw Error("With simple keys, collection cannot be used as a key value")}let A=!_&&(!U||L&&X==null&&!q.inFlow||m0.isCollection(U)||(m0.isScalar(U)?U.type===e8.Scalar.BLOCK_FOLDED||U.type===e8.Scalar.BLOCK_LITERAL:typeof U==="object"));q=Object.assign({},q,{allNullValues:!1,implicitKey:!A&&(_||!G),indent:J+H});let T=!1,z=!1,V=U3.stringify(U,q,()=>T=!0,()=>z=!0);if(!A&&!q.inFlow&&V.length>1024){if(_)throw Error("With simple keys, single line scalar must not span more than 1024 characters");A=!0}if(q.inFlow){if(G||X==null){if(T&&Z)Z();return V===""?"?":A?`? ${V}`:V}}else if(G&&!_||X==null&&A){if(V=`? ${V}`,L&&!T)V+=p2.lineComment(V,q.indent,W(L));else if(z&&Q)Q();return V}if(T)L=null;if(A){if(L)V+=p2.lineComment(V,q.indent,W(L));V=`? ${V}
35
+ ${J}:`}else if(V=`${V}:`,L)V+=p2.lineComment(V,q.indent,W(L));let D,w,K;if(m0.isNode(X))D=!!X.spaceBefore,w=X.commentBefore,K=X.comment;else if(D=!1,w=null,K=null,X&&typeof X==="object")X=Y.createNode(X);if(q.implicitKey=!1,!A&&!L&&m0.isScalar(X))q.indentAtStart=V.length+1;if(z=!1,!$&&H.length>=2&&!q.inFlow&&!A&&m0.isSeq(X)&&!X.flow&&!X.tag&&!X.anchor)q.indent=q.indent.substring(2);let C=!1,N=U3.stringify(X,q,()=>C=!0,()=>z=!0),b=" ";if(L||D||w){if(b=D?`
36
36
  `:"",w){let m=W(w);b+=`
37
37
  ${p2.indentComment(m,q.indent)}`}if(N===""&&!q.inFlow){if(b===`
38
38
  `&&K)b=`
39
39
 
40
40
  `}else b+=`
41
41
  ${q.indent}`}else if(!A&&m0.isCollection(X)){let m=N[0],P=N.indexOf(`
42
- `),s=P!==-1,p0=q.inFlow??X.flow??X.items.length===0;if(s||!p0){let R1=!1;if(s&&(m==="&"||m==="!")){let o=N.indexOf(" ");if(m==="&"&&o!==-1&&o<P&&N[o+1]==="!")o=N.indexOf(" ",o+1);if(o===-1||P<o)R1=!0}if(!R1)b=`
42
+ `),s=P!==-1,p0=q.inFlow??X.flow??X.items.length===0;if(s||!p0){let D1=!1;if(s&&(m==="&"||m==="!")){let o=N.indexOf(" ");if(m==="&"&&o!==-1&&o<P&&N[o+1]==="!")o=N.indexOf(" ",o+1);if(o===-1||P<o)D1=!0}if(!D1)b=`
43
43
  ${q.indent}`}}else if(N===""||N[0]===`
44
- `)b="";if(O+=b+N,q.inFlow){if(C&&Z)Z()}else if(K&&!C)O+=p2.lineComment(O,q.indent,W(K));else if(z&&Q)Q();return O}iH.stringifyPair=cH});var Q9=D((aH)=>{var Z3=M1("process");function oH(U,...X){if(U==="debug")console.log(...X)}function rH(U,X){if(U==="debug"||U==="warn")if(typeof Z3.emitWarning==="function")Z3.emitWarning(X);else console.warn(X)}aH.debug=oH;aH.warn=rH});var UU=D((UW)=>{var l2=k(),Q3=i(),t6="<<",e6={identify:(U)=>U===t6||typeof U==="symbol"&&U.description===t6,default:"key",tag:"tag:yaml.org,2002:merge",test:/^<<$/,resolve:()=>Object.assign(new Q3.Scalar(Symbol(t6)),{addToJSMap:G3}),stringify:()=>t6},eH=(U,X)=>(e6.identify(X)||l2.isScalar(X)&&(!X.type||X.type===Q3.Scalar.PLAIN)&&e6.identify(X.value))&&U?.doc.schema.tags.some((q)=>q.tag===e6.tag&&q.default);function G3(U,X,q){if(q=U&&l2.isAlias(q)?q.resolve(U.doc):q,l2.isSeq(q))for(let Z of q.items)G9(U,X,Z);else if(Array.isArray(q))for(let Z of q)G9(U,X,Z);else G9(U,X,q)}function G9(U,X,q){let Z=U&&l2.isAlias(q)?q.resolve(U.doc):q;if(!l2.isMap(Z))throw Error("Merge sources must be maps or map aliases");let Q=Z.toJSON(null,U,Map);for(let[G,Y]of Q)if(X instanceof Map){if(!X.has(G))X.set(G,Y)}else if(X instanceof Set)X.add(G);else if(!Object.prototype.hasOwnProperty.call(X,G))Object.defineProperty(X,G,{value:Y,writable:!0,enumerable:!0,configurable:!0});return X}UW.addMergeToJSMap=G3;UW.isMergeKey=eH;UW.merge=e6});var J9=D((HW)=>{var QW=Q9(),Y3=UU(),GW=m2(),J3=k(),Y9=n0();function YW(U,X,{key:q,value:Z}){if(J3.isNode(q)&&q.addToJSMap)q.addToJSMap(U,X,Z);else if(Y3.isMergeKey(U,q))Y3.addMergeToJSMap(U,X,Z);else{let Q=Y9.toJS(q,"",U);if(X instanceof Map)X.set(Q,Y9.toJS(Z,Q,U));else if(X instanceof Set)X.add(Q);else{let G=JW(q,Q,U),Y=Y9.toJS(Z,G,U);if(G in X)Object.defineProperty(X,G,{value:Y,writable:!0,enumerable:!0,configurable:!0});else X[G]=Y}}return X}function JW(U,X,q){if(X===null)return"";if(typeof X!=="object")return String(X);if(J3.isNode(U)&&q?.doc){let Z=GW.createStringifyContext(q.doc,{});Z.anchors=new Set;for(let G of q.anchors.keys())Z.anchors.add(G.anchor);Z.inFlow=!0,Z.inStringifyKey=!0;let Q=U.toString(Z);if(!q.mapKeyWarned){let G=JSON.stringify(Q);if(G.length>40)G=G.substring(0,36)+'..."';QW.warn(q.doc.options.logLevel,`Keys with collection values will be stringified due to JS Object restrictions: ${G}. Set mapAsMap: true to use object keys.`),q.mapKeyWarned=!0}return Q}return JSON.stringify(X)}HW.addPairToJSMap=YW});var U1=D((zW)=>{var H3=v2(),_W=q3(),$W=J9(),XU=k();function LW(U,X,q){let Z=H3.createNode(U,void 0,q),Q=H3.createNode(X,void 0,q);return new qU(Z,Q)}class qU{constructor(U,X=null){Object.defineProperty(this,XU.NODE_TYPE,{value:XU.PAIR}),this.key=U,this.value=X}clone(U){let{key:X,value:q}=this;if(XU.isNode(X))X=X.clone(U);if(XU.isNode(q))q=q.clone(U);return new qU(X,q)}toJSON(U,X){let q=X?.mapAsMap?new Map:{};return $W.addPairToJSMap(X,q,this)}toString(U,X,q){return U?.doc?_W.stringifyPair(this,U,X,q):JSON.stringify(this)}}zW.Pair=qU;zW.createPair=LW});var H9=D((TW)=>{var V1=k(),W3=m2(),ZU=x2();function VW(U,X,q){return(X.inFlow??U.flow?BW:OW)(U,X,q)}function OW({comment:U,items:X},q,{blockItemPrefix:Z,flowChars:Q,itemIndent:G,onChompKeep:Y,onComment:J}){let{indent:H,options:{commentString:W}}=q,$=Object.assign({},q,{indent:G,type:null}),_=!1,L=[];for(let T=0;T<X.length;++T){let z=X[T],O=null;if(V1.isNode(z)){if(!_&&z.spaceBefore)L.push("");if(QU(q,L,z.commentBefore,_),z.comment)O=z.comment}else if(V1.isPair(z)){let w=V1.isNode(z.key)?z.key:null;if(w){if(!_&&w.spaceBefore)L.push("");QU(q,L,w.commentBefore,_)}}_=!1;let R=W3.stringify(z,$,()=>O=null,()=>_=!0);if(O)R+=ZU.lineComment(R,G,W(O));if(_&&O)_=!1;L.push(Z+R)}let A;if(L.length===0)A=Q.start+Q.end;else{A=L[0];for(let T=1;T<L.length;++T){let z=L[T];A+=z?`
44
+ `)b="";if(V+=b+N,q.inFlow){if(C&&Z)Z()}else if(K&&!C)V+=p2.lineComment(V,q.indent,W(K));else if(z&&Q)Q();return V}iH.stringifyPair=cH});var Z9=R((aH)=>{var q3=M1("process");function oH(U,...X){if(U==="debug")console.log(...X)}function rH(U,X){if(U==="debug"||U==="warn")if(typeof q3.emitWarning==="function")q3.emitWarning(X);else console.warn(X)}aH.debug=oH;aH.warn=rH});var UU=R((UW)=>{var l2=k(),Z3=i(),t6="<<",e6={identify:(U)=>U===t6||typeof U==="symbol"&&U.description===t6,default:"key",tag:"tag:yaml.org,2002:merge",test:/^<<$/,resolve:()=>Object.assign(new Z3.Scalar(Symbol(t6)),{addToJSMap:Q3}),stringify:()=>t6},eH=(U,X)=>(e6.identify(X)||l2.isScalar(X)&&(!X.type||X.type===Z3.Scalar.PLAIN)&&e6.identify(X.value))&&U?.doc.schema.tags.some((q)=>q.tag===e6.tag&&q.default);function Q3(U,X,q){if(q=U&&l2.isAlias(q)?q.resolve(U.doc):q,l2.isSeq(q))for(let Z of q.items)Q9(U,X,Z);else if(Array.isArray(q))for(let Z of q)Q9(U,X,Z);else Q9(U,X,q)}function Q9(U,X,q){let Z=U&&l2.isAlias(q)?q.resolve(U.doc):q;if(!l2.isMap(Z))throw Error("Merge sources must be maps or map aliases");let Q=Z.toJSON(null,U,Map);for(let[G,Y]of Q)if(X instanceof Map){if(!X.has(G))X.set(G,Y)}else if(X instanceof Set)X.add(G);else if(!Object.prototype.hasOwnProperty.call(X,G))Object.defineProperty(X,G,{value:Y,writable:!0,enumerable:!0,configurable:!0});return X}UW.addMergeToJSMap=Q3;UW.isMergeKey=eH;UW.merge=e6});var Y9=R((HW)=>{var QW=Z9(),G3=UU(),GW=m2(),Y3=k(),G9=n0();function YW(U,X,{key:q,value:Z}){if(Y3.isNode(q)&&q.addToJSMap)q.addToJSMap(U,X,Z);else if(G3.isMergeKey(U,q))G3.addMergeToJSMap(U,X,Z);else{let Q=G9.toJS(q,"",U);if(X instanceof Map)X.set(Q,G9.toJS(Z,Q,U));else if(X instanceof Set)X.add(Q);else{let G=JW(q,Q,U),Y=G9.toJS(Z,G,U);if(G in X)Object.defineProperty(X,G,{value:Y,writable:!0,enumerable:!0,configurable:!0});else X[G]=Y}}return X}function JW(U,X,q){if(X===null)return"";if(typeof X!=="object")return String(X);if(Y3.isNode(U)&&q?.doc){let Z=GW.createStringifyContext(q.doc,{});Z.anchors=new Set;for(let G of q.anchors.keys())Z.anchors.add(G.anchor);Z.inFlow=!0,Z.inStringifyKey=!0;let Q=U.toString(Z);if(!q.mapKeyWarned){let G=JSON.stringify(Q);if(G.length>40)G=G.substring(0,36)+'..."';QW.warn(q.doc.options.logLevel,`Keys with collection values will be stringified due to JS Object restrictions: ${G}. Set mapAsMap: true to use object keys.`),q.mapKeyWarned=!0}return Q}return JSON.stringify(X)}HW.addPairToJSMap=YW});var U1=R((zW)=>{var J3=v2(),_W=X3(),$W=Y9(),XU=k();function LW(U,X,q){let Z=J3.createNode(U,void 0,q),Q=J3.createNode(X,void 0,q);return new qU(Z,Q)}class qU{constructor(U,X=null){Object.defineProperty(this,XU.NODE_TYPE,{value:XU.PAIR}),this.key=U,this.value=X}clone(U){let{key:X,value:q}=this;if(XU.isNode(X))X=X.clone(U);if(XU.isNode(q))q=q.clone(U);return new qU(X,q)}toJSON(U,X){let q=X?.mapAsMap?new Map:{};return $W.addPairToJSMap(X,q,this)}toString(U,X,q){return U?.doc?_W.stringifyPair(this,U,X,q):JSON.stringify(this)}}zW.Pair=qU;zW.createPair=LW});var J9=R((TW)=>{var O1=k(),H3=m2(),ZU=h2();function OW(U,X,q){return(X.inFlow??U.flow?BW:VW)(U,X,q)}function VW({comment:U,items:X},q,{blockItemPrefix:Z,flowChars:Q,itemIndent:G,onChompKeep:Y,onComment:J}){let{indent:H,options:{commentString:W}}=q,$=Object.assign({},q,{indent:G,type:null}),_=!1,L=[];for(let T=0;T<X.length;++T){let z=X[T],V=null;if(O1.isNode(z)){if(!_&&z.spaceBefore)L.push("");if(QU(q,L,z.commentBefore,_),z.comment)V=z.comment}else if(O1.isPair(z)){let w=O1.isNode(z.key)?z.key:null;if(w){if(!_&&w.spaceBefore)L.push("");QU(q,L,w.commentBefore,_)}}_=!1;let D=H3.stringify(z,$,()=>V=null,()=>_=!0);if(V)D+=ZU.lineComment(D,G,W(V));if(_&&V)_=!1;L.push(Z+D)}let A;if(L.length===0)A=Q.start+Q.end;else{A=L[0];for(let T=1;T<L.length;++T){let z=L[T];A+=z?`
45
45
  ${H}${z}`:`
46
46
  `}}if(U){if(A+=`
47
- `+ZU.indentComment(W(U),H),J)J()}else if(_&&Y)Y();return A}function BW({items:U},X,{flowChars:q,itemIndent:Z}){let{indent:Q,indentStep:G,flowCollectionPadding:Y,options:{commentString:J}}=X;Z+=G;let H=Object.assign({},X,{indent:Z,inFlow:!0,type:null}),W=!1,$=0,_=[];for(let T=0;T<U.length;++T){let z=U[T],O=null;if(V1.isNode(z)){if(z.spaceBefore)_.push("");if(QU(X,_,z.commentBefore,!1),z.comment)O=z.comment}else if(V1.isPair(z)){let w=V1.isNode(z.key)?z.key:null;if(w){if(w.spaceBefore)_.push("");if(QU(X,_,w.commentBefore,!1),w.comment)W=!0}let K=V1.isNode(z.value)?z.value:null;if(K){if(K.comment)O=K.comment;if(K.commentBefore)W=!0}else if(z.value==null&&w?.comment)O=w.comment}if(O)W=!0;let R=W3.stringify(z,H,()=>O=null);if(T<U.length-1)R+=",";if(O)R+=ZU.lineComment(R,Z,J(O));if(!W&&(_.length>$||R.includes(`
48
- `)))W=!0;_.push(R),$=_.length}let{start:L,end:A}=q;if(_.length===0)return L+A;else{if(!W){let T=_.reduce((z,O)=>z+O.length+2,2);W=X.options.lineWidth>0&&T>X.options.lineWidth}if(W){let T=L;for(let z of _)T+=z?`
47
+ `+ZU.indentComment(W(U),H),J)J()}else if(_&&Y)Y();return A}function BW({items:U},X,{flowChars:q,itemIndent:Z}){let{indent:Q,indentStep:G,flowCollectionPadding:Y,options:{commentString:J}}=X;Z+=G;let H=Object.assign({},X,{indent:Z,inFlow:!0,type:null}),W=!1,$=0,_=[];for(let T=0;T<U.length;++T){let z=U[T],V=null;if(O1.isNode(z)){if(z.spaceBefore)_.push("");if(QU(X,_,z.commentBefore,!1),z.comment)V=z.comment}else if(O1.isPair(z)){let w=O1.isNode(z.key)?z.key:null;if(w){if(w.spaceBefore)_.push("");if(QU(X,_,w.commentBefore,!1),w.comment)W=!0}let K=O1.isNode(z.value)?z.value:null;if(K){if(K.comment)V=K.comment;if(K.commentBefore)W=!0}else if(z.value==null&&w?.comment)V=w.comment}if(V)W=!0;let D=H3.stringify(z,H,()=>V=null);if(T<U.length-1)D+=",";if(V)D+=ZU.lineComment(D,Z,J(V));if(!W&&(_.length>$||D.includes(`
48
+ `)))W=!0;_.push(D),$=_.length}let{start:L,end:A}=q;if(_.length===0)return L+A;else{if(!W){let T=_.reduce((z,V)=>z+V.length+2,2);W=X.options.lineWidth>0&&T>X.options.lineWidth}if(W){let T=L;for(let z of _)T+=z?`
49
49
  ${G}${Q}${z}`:`
50
50
  `;return`${T}
51
- ${Q}${A}`}else return`${L}${Y}${_.join(" ")}${Y}${A}`}}function QU({indent:U,options:{commentString:X}},q,Z,Q){if(Z&&Q)Z=Z.replace(/^\n+/,"");if(Z){let G=ZU.indentComment(X(Z),U);q.push(G.trimStart())}}TW.stringifyCollection=VW});var q1=D((IW)=>{var RW=H9(),MW=J9(),PW=o6(),X1=k(),GU=U1(),wW=i();function d2(U,X){let q=X1.isScalar(X)?X.value:X;for(let Z of U)if(X1.isPair(Z)){if(Z.key===X||Z.key===q)return Z;if(X1.isScalar(Z.key)&&Z.key.value===q)return Z}return}class _3 extends PW.Collection{static get tagName(){return"tag:yaml.org,2002:map"}constructor(U){super(X1.MAP,U);this.items=[]}static from(U,X,q){let{keepUndefined:Z,replacer:Q}=q,G=new this(U),Y=(J,H)=>{if(typeof Q==="function")H=Q.call(X,J,H);else if(Array.isArray(Q)&&!Q.includes(J))return;if(H!==void 0||Z)G.items.push(GU.createPair(J,H,q))};if(X instanceof Map)for(let[J,H]of X)Y(J,H);else if(X&&typeof X==="object")for(let J of Object.keys(X))Y(J,X[J]);if(typeof U.sortMapEntries==="function")G.items.sort(U.sortMapEntries);return G}add(U,X){let q;if(X1.isPair(U))q=U;else if(!U||typeof U!=="object"||!("key"in U))q=new GU.Pair(U,U?.value);else q=new GU.Pair(U.key,U.value);let Z=d2(this.items,q.key),Q=this.schema?.sortMapEntries;if(Z){if(!X)throw Error(`Key ${q.key} already set`);if(X1.isScalar(Z.value)&&wW.isScalarValue(q.value))Z.value.value=q.value;else Z.value=q.value}else if(Q){let G=this.items.findIndex((Y)=>Q(q,Y)<0);if(G===-1)this.items.push(q);else this.items.splice(G,0,q)}else this.items.push(q)}delete(U){let X=d2(this.items,U);if(!X)return!1;return this.items.splice(this.items.indexOf(X),1).length>0}get(U,X){let Z=d2(this.items,U)?.value;return(!X&&X1.isScalar(Z)?Z.value:Z)??void 0}has(U){return!!d2(this.items,U)}set(U,X){this.add(new GU.Pair(U,X),!0)}toJSON(U,X,q){let Z=q?new q:X?.mapAsMap?new Map:{};if(X?.onCreate)X.onCreate(Z);for(let Q of this.items)MW.addPairToJSMap(X,Z,Q);return Z}toString(U,X,q){if(!U)return JSON.stringify(this);for(let Z of this.items)if(!X1.isPair(Z))throw Error(`Map items must all be pairs; found ${JSON.stringify(Z)} instead`);if(!U.allNullValues&&this.hasAllNullValues(!1))U=Object.assign({},U,{allNullValues:!0});return RW.stringifyCollection(this,U,{blockItemPrefix:"",flowChars:{start:"{",end:"}"},itemIndent:U.indent||"",onChompKeep:q,onComment:X})}}IW.YAMLMap=_3;IW.findPair=d2});var s1=D((EW)=>{var CW=k(),$3=q1(),SW={collection:"map",default:!0,nodeClass:$3.YAMLMap,tag:"tag:yaml.org,2002:map",resolve(U,X){if(!CW.isMap(U))X("Expected a mapping for this tag");return U},createNode:(U,X,q)=>$3.YAMLMap.from(U,X,q)};EW.map=SW});var Z1=D((vW)=>{var bW=v2(),fW=H9(),gW=o6(),JU=k(),yW=i(),kW=n0();class L3 extends gW.Collection{static get tagName(){return"tag:yaml.org,2002:seq"}constructor(U){super(JU.SEQ,U);this.items=[]}add(U){this.items.push(U)}delete(U){let X=YU(U);if(typeof X!=="number")return!1;return this.items.splice(X,1).length>0}get(U,X){let q=YU(U);if(typeof q!=="number")return;let Z=this.items[q];return!X&&JU.isScalar(Z)?Z.value:Z}has(U){let X=YU(U);return typeof X==="number"&&X<this.items.length}set(U,X){let q=YU(U);if(typeof q!=="number")throw Error(`Expected a valid index, not ${U}.`);let Z=this.items[q];if(JU.isScalar(Z)&&yW.isScalarValue(X))Z.value=X;else this.items[q]=X}toJSON(U,X){let q=[];if(X?.onCreate)X.onCreate(q);let Z=0;for(let Q of this.items)q.push(kW.toJS(Q,String(Z++),X));return q}toString(U,X,q){if(!U)return JSON.stringify(this);return fW.stringifyCollection(this,U,{blockItemPrefix:"- ",flowChars:{start:"[",end:"]"},itemIndent:(U.indent||"")+" ",onChompKeep:q,onComment:X})}static from(U,X,q){let{replacer:Z}=q,Q=new this(U);if(X&&Symbol.iterator in Object(X)){let G=0;for(let Y of X){if(typeof Z==="function"){let J=X instanceof Set?Y:String(G++);Y=Z.call(X,J,Y)}Q.items.push(bW.createNode(Y,void 0,q))}}return Q}}function YU(U){let X=JU.isScalar(U)?U.value:U;if(X&&typeof X==="string")X=Number(X);return typeof X==="number"&&Number.isInteger(X)&&X>=0?X:null}vW.YAMLSeq=L3});var o1=D((mW)=>{var hW=k(),z3=Z1(),uW={collection:"seq",default:!0,nodeClass:z3.YAMLSeq,tag:"tag:yaml.org,2002:seq",resolve(U,X){if(!hW.isSeq(U))X("Expected a sequence for this tag");return U},createNode:(U,X,q)=>z3.YAMLSeq.from(U,X,q)};mW.seq=uW});var c2=D((cW)=>{var lW=u2(),dW={identify:(U)=>typeof U==="string",default:!0,tag:"tag:yaml.org,2002:str",resolve:(U)=>U,stringify(U,X,q,Z){return X=Object.assign({actualString:!0},X),lW.stringifyString(U,X,q,Z)}};cW.string=dW});var HU=D((sW)=>{var F3=i(),A3={identify:(U)=>U==null,createNode:()=>new F3.Scalar(null),default:!0,tag:"tag:yaml.org,2002:null",test:/^(?:~|[Nn]ull|NULL)?$/,resolve:()=>new F3.Scalar(null),stringify:({source:U},X)=>typeof U==="string"&&A3.test.test(U)?U:X.options.nullStr};sW.nullTag=A3});var W9=D((aW)=>{var rW=i(),V3={identify:(U)=>typeof U==="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:[Tt]rue|TRUE|[Ff]alse|FALSE)$/,resolve:(U)=>new rW.Scalar(U[0]==="t"||U[0]==="T"),stringify({source:U,value:X},q){if(U&&V3.test.test(U)){let Z=U[0]==="t"||U[0]==="T";if(X===Z)return U}return X?q.options.trueStr:q.options.falseStr}};aW.boolTag=V3});var r1=D((eW)=>{function tW({format:U,minFractionDigits:X,tag:q,value:Z}){if(typeof Z==="bigint")return String(Z);let Q=typeof Z==="number"?Z:Number(Z);if(!isFinite(Q))return isNaN(Q)?".nan":Q<0?"-.inf":".inf";let G=Object.is(Z,-0)?"-0":JSON.stringify(Z);if(!U&&X&&(!q||q==="tag:yaml.org,2002:float")&&/^\d/.test(G)){let Y=G.indexOf(".");if(Y<0)Y=G.length,G+=".";let J=X-(G.length-Y-1);while(J-- >0)G+="0"}return G}eW.stringifyNumber=tW});var $9=D((G_)=>{var X_=i(),_9=r1(),q_={identify:(U)=>typeof U==="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^(?:[-+]?\.(?:inf|Inf|INF)|\.nan|\.NaN|\.NAN)$/,resolve:(U)=>U.slice(-3).toLowerCase()==="nan"?NaN:U[0]==="-"?Number.NEGATIVE_INFINITY:Number.POSITIVE_INFINITY,stringify:_9.stringifyNumber},Z_={identify:(U)=>typeof U==="number",default:!0,tag:"tag:yaml.org,2002:float",format:"EXP",test:/^[-+]?(?:\.[0-9]+|[0-9]+(?:\.[0-9]*)?)[eE][-+]?[0-9]+$/,resolve:(U)=>parseFloat(U),stringify(U){let X=Number(U.value);return isFinite(X)?X.toExponential():_9.stringifyNumber(U)}},Q_={identify:(U)=>typeof U==="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:\.[0-9]+|[0-9]+\.[0-9]*)$/,resolve(U){let X=new X_.Scalar(parseFloat(U)),q=U.indexOf(".");if(q!==-1&&U[U.length-1]==="0")X.minFractionDigits=U.length-q-1;return X},stringify:_9.stringifyNumber};G_.float=Q_;G_.floatExp=Z_;G_.floatNaN=q_});var z9=D((L_)=>{var O3=r1(),WU=(U)=>typeof U==="bigint"||Number.isInteger(U),L9=(U,X,q,{intAsBigInt:Z})=>Z?BigInt(U):parseInt(U.substring(X),q);function B3(U,X,q){let{value:Z}=U;if(WU(Z)&&Z>=0)return q+Z.toString(X);return O3.stringifyNumber(U)}var W_={identify:(U)=>WU(U)&&U>=0,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^0o[0-7]+$/,resolve:(U,X,q)=>L9(U,2,8,q),stringify:(U)=>B3(U,8,"0o")},__={identify:WU,default:!0,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9]+$/,resolve:(U,X,q)=>L9(U,0,10,q),stringify:O3.stringifyNumber},$_={identify:(U)=>WU(U)&&U>=0,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^0x[0-9a-fA-F]+$/,resolve:(U,X,q)=>L9(U,2,16,q),stringify:(U)=>B3(U,16,"0x")};L_.int=__;L_.intHex=$_;L_.intOct=W_});var T3=D((M_)=>{var V_=s1(),O_=HU(),B_=o1(),T_=c2(),D_=W9(),F9=$9(),A9=z9(),R_=[V_.map,B_.seq,T_.string,O_.nullTag,D_.boolTag,A9.intOct,A9.int,A9.intHex,F9.floatNaN,F9.floatExp,F9.float];M_.schema=R_});var R3=D((E_)=>{var w_=i(),I_=s1(),K_=o1();function D3(U){return typeof U==="bigint"||Number.isInteger(U)}var _U=({value:U})=>JSON.stringify(U),N_=[{identify:(U)=>typeof U==="string",default:!0,tag:"tag:yaml.org,2002:str",resolve:(U)=>U,stringify:_U},{identify:(U)=>U==null,createNode:()=>new w_.Scalar(null),default:!0,tag:"tag:yaml.org,2002:null",test:/^null$/,resolve:()=>null,stringify:_U},{identify:(U)=>typeof U==="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^true$|^false$/,resolve:(U)=>U==="true",stringify:_U},{identify:D3,default:!0,tag:"tag:yaml.org,2002:int",test:/^-?(?:0|[1-9][0-9]*)$/,resolve:(U,X,{intAsBigInt:q})=>q?BigInt(U):parseInt(U,10),stringify:({value:U})=>D3(U)?U.toString():JSON.stringify(U)},{identify:(U)=>typeof U==="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^-?(?:0|[1-9][0-9]*)(?:\.[0-9]*)?(?:[eE][-+]?[0-9]+)?$/,resolve:(U)=>parseFloat(U),stringify:_U}],C_={default:!0,tag:"",test:/^/,resolve(U,X){return X(`Unresolved plain scalar ${JSON.stringify(U)}`),U}},S_=[I_.map,K_.seq].concat(N_,C_);E_.schema=S_});var O9=D((g_)=>{var i2=M1("buffer"),V9=i(),b_=u2(),f_={identify:(U)=>U instanceof Uint8Array,default:!1,tag:"tag:yaml.org,2002:binary",resolve(U,X){if(typeof i2.Buffer==="function")return i2.Buffer.from(U,"base64");else if(typeof atob==="function"){let q=atob(U.replace(/[\n\r]/g,"")),Z=new Uint8Array(q.length);for(let Q=0;Q<q.length;++Q)Z[Q]=q.charCodeAt(Q);return Z}else return X("This environment does not support reading binary tags; either Buffer or atob is required"),U},stringify({comment:U,type:X,value:q},Z,Q,G){if(!q)return"";let Y=q,J;if(typeof i2.Buffer==="function")J=Y instanceof i2.Buffer?Y.toString("base64"):i2.Buffer.from(Y.buffer).toString("base64");else if(typeof btoa==="function"){let H="";for(let W=0;W<Y.length;++W)H+=String.fromCharCode(Y[W]);J=btoa(H)}else throw Error("This environment does not support writing binary tags; either Buffer or btoa is required");if(X??(X=V9.Scalar.BLOCK_LITERAL),X!==V9.Scalar.QUOTE_DOUBLE){let H=Math.max(Z.options.lineWidth-Z.indent.length,Z.options.minContentWidth),W=Math.ceil(J.length/H),$=Array(W);for(let _=0,L=0;_<W;++_,L+=H)$[_]=J.substr(L,H);J=$.join(X===V9.Scalar.BLOCK_LITERAL?`
52
- `:" ")}return b_.stringifyString({comment:U,type:X,value:J},Z,Q,G)}};g_.binary=f_});var LU=D((h_)=>{var $U=k(),B9=U1(),k_=i(),v_=Z1();function M3(U,X){if($U.isSeq(U))for(let q=0;q<U.items.length;++q){let Z=U.items[q];if($U.isPair(Z))continue;else if($U.isMap(Z)){if(Z.items.length>1)X("Each pair must have its own sequence indicator");let Q=Z.items[0]||new B9.Pair(new k_.Scalar(null));if(Z.commentBefore)Q.key.commentBefore=Q.key.commentBefore?`${Z.commentBefore}
51
+ ${Q}${A}`}else return`${L}${Y}${_.join(" ")}${Y}${A}`}}function QU({indent:U,options:{commentString:X}},q,Z,Q){if(Z&&Q)Z=Z.replace(/^\n+/,"");if(Z){let G=ZU.indentComment(X(Z),U);q.push(G.trimStart())}}TW.stringifyCollection=OW});var q1=R((IW)=>{var DW=J9(),MW=Y9(),PW=o6(),X1=k(),GU=U1(),wW=i();function d2(U,X){let q=X1.isScalar(X)?X.value:X;for(let Z of U)if(X1.isPair(Z)){if(Z.key===X||Z.key===q)return Z;if(X1.isScalar(Z.key)&&Z.key.value===q)return Z}return}class W3 extends PW.Collection{static get tagName(){return"tag:yaml.org,2002:map"}constructor(U){super(X1.MAP,U);this.items=[]}static from(U,X,q){let{keepUndefined:Z,replacer:Q}=q,G=new this(U),Y=(J,H)=>{if(typeof Q==="function")H=Q.call(X,J,H);else if(Array.isArray(Q)&&!Q.includes(J))return;if(H!==void 0||Z)G.items.push(GU.createPair(J,H,q))};if(X instanceof Map)for(let[J,H]of X)Y(J,H);else if(X&&typeof X==="object")for(let J of Object.keys(X))Y(J,X[J]);if(typeof U.sortMapEntries==="function")G.items.sort(U.sortMapEntries);return G}add(U,X){let q;if(X1.isPair(U))q=U;else if(!U||typeof U!=="object"||!("key"in U))q=new GU.Pair(U,U?.value);else q=new GU.Pair(U.key,U.value);let Z=d2(this.items,q.key),Q=this.schema?.sortMapEntries;if(Z){if(!X)throw Error(`Key ${q.key} already set`);if(X1.isScalar(Z.value)&&wW.isScalarValue(q.value))Z.value.value=q.value;else Z.value=q.value}else if(Q){let G=this.items.findIndex((Y)=>Q(q,Y)<0);if(G===-1)this.items.push(q);else this.items.splice(G,0,q)}else this.items.push(q)}delete(U){let X=d2(this.items,U);if(!X)return!1;return this.items.splice(this.items.indexOf(X),1).length>0}get(U,X){let Z=d2(this.items,U)?.value;return(!X&&X1.isScalar(Z)?Z.value:Z)??void 0}has(U){return!!d2(this.items,U)}set(U,X){this.add(new GU.Pair(U,X),!0)}toJSON(U,X,q){let Z=q?new q:X?.mapAsMap?new Map:{};if(X?.onCreate)X.onCreate(Z);for(let Q of this.items)MW.addPairToJSMap(X,Z,Q);return Z}toString(U,X,q){if(!U)return JSON.stringify(this);for(let Z of this.items)if(!X1.isPair(Z))throw Error(`Map items must all be pairs; found ${JSON.stringify(Z)} instead`);if(!U.allNullValues&&this.hasAllNullValues(!1))U=Object.assign({},U,{allNullValues:!0});return DW.stringifyCollection(this,U,{blockItemPrefix:"",flowChars:{start:"{",end:"}"},itemIndent:U.indent||"",onChompKeep:q,onComment:X})}}IW.YAMLMap=W3;IW.findPair=d2});var o1=R((EW)=>{var CW=k(),_3=q1(),SW={collection:"map",default:!0,nodeClass:_3.YAMLMap,tag:"tag:yaml.org,2002:map",resolve(U,X){if(!CW.isMap(U))X("Expected a mapping for this tag");return U},createNode:(U,X,q)=>_3.YAMLMap.from(U,X,q)};EW.map=SW});var Z1=R((vW)=>{var bW=v2(),fW=J9(),gW=o6(),JU=k(),yW=i(),kW=n0();class $3 extends gW.Collection{static get tagName(){return"tag:yaml.org,2002:seq"}constructor(U){super(JU.SEQ,U);this.items=[]}add(U){this.items.push(U)}delete(U){let X=YU(U);if(typeof X!=="number")return!1;return this.items.splice(X,1).length>0}get(U,X){let q=YU(U);if(typeof q!=="number")return;let Z=this.items[q];return!X&&JU.isScalar(Z)?Z.value:Z}has(U){let X=YU(U);return typeof X==="number"&&X<this.items.length}set(U,X){let q=YU(U);if(typeof q!=="number")throw Error(`Expected a valid index, not ${U}.`);let Z=this.items[q];if(JU.isScalar(Z)&&yW.isScalarValue(X))Z.value=X;else this.items[q]=X}toJSON(U,X){let q=[];if(X?.onCreate)X.onCreate(q);let Z=0;for(let Q of this.items)q.push(kW.toJS(Q,String(Z++),X));return q}toString(U,X,q){if(!U)return JSON.stringify(this);return fW.stringifyCollection(this,U,{blockItemPrefix:"- ",flowChars:{start:"[",end:"]"},itemIndent:(U.indent||"")+" ",onChompKeep:q,onComment:X})}static from(U,X,q){let{replacer:Z}=q,Q=new this(U);if(X&&Symbol.iterator in Object(X)){let G=0;for(let Y of X){if(typeof Z==="function"){let J=X instanceof Set?Y:String(G++);Y=Z.call(X,J,Y)}Q.items.push(bW.createNode(Y,void 0,q))}}return Q}}function YU(U){let X=JU.isScalar(U)?U.value:U;if(X&&typeof X==="string")X=Number(X);return typeof X==="number"&&Number.isInteger(X)&&X>=0?X:null}vW.YAMLSeq=$3});var r1=R((mW)=>{var xW=k(),L3=Z1(),uW={collection:"seq",default:!0,nodeClass:L3.YAMLSeq,tag:"tag:yaml.org,2002:seq",resolve(U,X){if(!xW.isSeq(U))X("Expected a sequence for this tag");return U},createNode:(U,X,q)=>L3.YAMLSeq.from(U,X,q)};mW.seq=uW});var c2=R((cW)=>{var lW=u2(),dW={identify:(U)=>typeof U==="string",default:!0,tag:"tag:yaml.org,2002:str",resolve:(U)=>U,stringify(U,X,q,Z){return X=Object.assign({actualString:!0},X),lW.stringifyString(U,X,q,Z)}};cW.string=dW});var HU=R((sW)=>{var z3=i(),F3={identify:(U)=>U==null,createNode:()=>new z3.Scalar(null),default:!0,tag:"tag:yaml.org,2002:null",test:/^(?:~|[Nn]ull|NULL)?$/,resolve:()=>new z3.Scalar(null),stringify:({source:U},X)=>typeof U==="string"&&F3.test.test(U)?U:X.options.nullStr};sW.nullTag=F3});var H9=R((aW)=>{var rW=i(),A3={identify:(U)=>typeof U==="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:[Tt]rue|TRUE|[Ff]alse|FALSE)$/,resolve:(U)=>new rW.Scalar(U[0]==="t"||U[0]==="T"),stringify({source:U,value:X},q){if(U&&A3.test.test(U)){let Z=U[0]==="t"||U[0]==="T";if(X===Z)return U}return X?q.options.trueStr:q.options.falseStr}};aW.boolTag=A3});var a1=R((eW)=>{function tW({format:U,minFractionDigits:X,tag:q,value:Z}){if(typeof Z==="bigint")return String(Z);let Q=typeof Z==="number"?Z:Number(Z);if(!isFinite(Q))return isNaN(Q)?".nan":Q<0?"-.inf":".inf";let G=Object.is(Z,-0)?"-0":JSON.stringify(Z);if(!U&&X&&(!q||q==="tag:yaml.org,2002:float")&&/^\d/.test(G)){let Y=G.indexOf(".");if(Y<0)Y=G.length,G+=".";let J=X-(G.length-Y-1);while(J-- >0)G+="0"}return G}eW.stringifyNumber=tW});var _9=R((G_)=>{var X_=i(),W9=a1(),q_={identify:(U)=>typeof U==="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^(?:[-+]?\.(?:inf|Inf|INF)|\.nan|\.NaN|\.NAN)$/,resolve:(U)=>U.slice(-3).toLowerCase()==="nan"?NaN:U[0]==="-"?Number.NEGATIVE_INFINITY:Number.POSITIVE_INFINITY,stringify:W9.stringifyNumber},Z_={identify:(U)=>typeof U==="number",default:!0,tag:"tag:yaml.org,2002:float",format:"EXP",test:/^[-+]?(?:\.[0-9]+|[0-9]+(?:\.[0-9]*)?)[eE][-+]?[0-9]+$/,resolve:(U)=>parseFloat(U),stringify(U){let X=Number(U.value);return isFinite(X)?X.toExponential():W9.stringifyNumber(U)}},Q_={identify:(U)=>typeof U==="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:\.[0-9]+|[0-9]+\.[0-9]*)$/,resolve(U){let X=new X_.Scalar(parseFloat(U)),q=U.indexOf(".");if(q!==-1&&U[U.length-1]==="0")X.minFractionDigits=U.length-q-1;return X},stringify:W9.stringifyNumber};G_.float=Q_;G_.floatExp=Z_;G_.floatNaN=q_});var L9=R((L_)=>{var O3=a1(),WU=(U)=>typeof U==="bigint"||Number.isInteger(U),$9=(U,X,q,{intAsBigInt:Z})=>Z?BigInt(U):parseInt(U.substring(X),q);function V3(U,X,q){let{value:Z}=U;if(WU(Z)&&Z>=0)return q+Z.toString(X);return O3.stringifyNumber(U)}var W_={identify:(U)=>WU(U)&&U>=0,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^0o[0-7]+$/,resolve:(U,X,q)=>$9(U,2,8,q),stringify:(U)=>V3(U,8,"0o")},__={identify:WU,default:!0,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9]+$/,resolve:(U,X,q)=>$9(U,0,10,q),stringify:O3.stringifyNumber},$_={identify:(U)=>WU(U)&&U>=0,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^0x[0-9a-fA-F]+$/,resolve:(U,X,q)=>$9(U,2,16,q),stringify:(U)=>V3(U,16,"0x")};L_.int=__;L_.intHex=$_;L_.intOct=W_});var B3=R((M_)=>{var O_=o1(),V_=HU(),B_=r1(),T_=c2(),R_=H9(),z9=_9(),F9=L9(),D_=[O_.map,B_.seq,T_.string,V_.nullTag,R_.boolTag,F9.intOct,F9.int,F9.intHex,z9.floatNaN,z9.floatExp,z9.float];M_.schema=D_});var R3=R((E_)=>{var w_=i(),I_=o1(),K_=r1();function T3(U){return typeof U==="bigint"||Number.isInteger(U)}var _U=({value:U})=>JSON.stringify(U),N_=[{identify:(U)=>typeof U==="string",default:!0,tag:"tag:yaml.org,2002:str",resolve:(U)=>U,stringify:_U},{identify:(U)=>U==null,createNode:()=>new w_.Scalar(null),default:!0,tag:"tag:yaml.org,2002:null",test:/^null$/,resolve:()=>null,stringify:_U},{identify:(U)=>typeof U==="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^true$|^false$/,resolve:(U)=>U==="true",stringify:_U},{identify:T3,default:!0,tag:"tag:yaml.org,2002:int",test:/^-?(?:0|[1-9][0-9]*)$/,resolve:(U,X,{intAsBigInt:q})=>q?BigInt(U):parseInt(U,10),stringify:({value:U})=>T3(U)?U.toString():JSON.stringify(U)},{identify:(U)=>typeof U==="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^-?(?:0|[1-9][0-9]*)(?:\.[0-9]*)?(?:[eE][-+]?[0-9]+)?$/,resolve:(U)=>parseFloat(U),stringify:_U}],C_={default:!0,tag:"",test:/^/,resolve(U,X){return X(`Unresolved plain scalar ${JSON.stringify(U)}`),U}},S_=[I_.map,K_.seq].concat(N_,C_);E_.schema=S_});var O9=R((g_)=>{var i2=M1("buffer"),A9=i(),b_=u2(),f_={identify:(U)=>U instanceof Uint8Array,default:!1,tag:"tag:yaml.org,2002:binary",resolve(U,X){if(typeof i2.Buffer==="function")return i2.Buffer.from(U,"base64");else if(typeof atob==="function"){let q=atob(U.replace(/[\n\r]/g,"")),Z=new Uint8Array(q.length);for(let Q=0;Q<q.length;++Q)Z[Q]=q.charCodeAt(Q);return Z}else return X("This environment does not support reading binary tags; either Buffer or atob is required"),U},stringify({comment:U,type:X,value:q},Z,Q,G){if(!q)return"";let Y=q,J;if(typeof i2.Buffer==="function")J=Y instanceof i2.Buffer?Y.toString("base64"):i2.Buffer.from(Y.buffer).toString("base64");else if(typeof btoa==="function"){let H="";for(let W=0;W<Y.length;++W)H+=String.fromCharCode(Y[W]);J=btoa(H)}else throw Error("This environment does not support writing binary tags; either Buffer or btoa is required");if(X??(X=A9.Scalar.BLOCK_LITERAL),X!==A9.Scalar.QUOTE_DOUBLE){let H=Math.max(Z.options.lineWidth-Z.indent.length,Z.options.minContentWidth),W=Math.ceil(J.length/H),$=Array(W);for(let _=0,L=0;_<W;++_,L+=H)$[_]=J.substr(L,H);J=$.join(X===A9.Scalar.BLOCK_LITERAL?`
52
+ `:" ")}return b_.stringifyString({comment:U,type:X,value:J},Z,Q,G)}};g_.binary=f_});var LU=R((x_)=>{var $U=k(),V9=U1(),k_=i(),v_=Z1();function D3(U,X){if($U.isSeq(U))for(let q=0;q<U.items.length;++q){let Z=U.items[q];if($U.isPair(Z))continue;else if($U.isMap(Z)){if(Z.items.length>1)X("Each pair must have its own sequence indicator");let Q=Z.items[0]||new V9.Pair(new k_.Scalar(null));if(Z.commentBefore)Q.key.commentBefore=Q.key.commentBefore?`${Z.commentBefore}
53
53
  ${Q.key.commentBefore}`:Z.commentBefore;if(Z.comment){let G=Q.value??Q.key;G.comment=G.comment?`${Z.comment}
54
- ${G.comment}`:Z.comment}Z=Q}U.items[q]=$U.isPair(Z)?Z:new B9.Pair(Z)}else X("Expected a sequence for this tag");return U}function P3(U,X,q){let{replacer:Z}=q,Q=new v_.YAMLSeq(U);Q.tag="tag:yaml.org,2002:pairs";let G=0;if(X&&Symbol.iterator in Object(X))for(let Y of X){if(typeof Z==="function")Y=Z.call(X,String(G++),Y);let J,H;if(Array.isArray(Y))if(Y.length===2)J=Y[0],H=Y[1];else throw TypeError(`Expected [key, value] tuple: ${Y}`);else if(Y&&Y instanceof Object){let W=Object.keys(Y);if(W.length===1)J=W[0],H=Y[J];else throw TypeError(`Expected tuple with one key, not ${W.length} keys`)}else J=Y;Q.items.push(B9.createPair(J,H,q))}return Q}var x_={collection:"seq",default:!1,tag:"tag:yaml.org,2002:pairs",resolve:M3,createNode:P3};h_.createPairs=P3;h_.pairs=x_;h_.resolvePairs=M3});var D9=D((c_)=>{var w3=k(),T9=n0(),s2=q1(),l_=Z1(),I3=LU();class O1 extends l_.YAMLSeq{constructor(){super();this.add=s2.YAMLMap.prototype.add.bind(this),this.delete=s2.YAMLMap.prototype.delete.bind(this),this.get=s2.YAMLMap.prototype.get.bind(this),this.has=s2.YAMLMap.prototype.has.bind(this),this.set=s2.YAMLMap.prototype.set.bind(this),this.tag=O1.tag}toJSON(U,X){if(!X)return super.toJSON(U);let q=new Map;if(X?.onCreate)X.onCreate(q);for(let Z of this.items){let Q,G;if(w3.isPair(Z))Q=T9.toJS(Z.key,"",X),G=T9.toJS(Z.value,Q,X);else Q=T9.toJS(Z,"",X);if(q.has(Q))throw Error("Ordered maps must not include duplicate keys");q.set(Q,G)}return q}static from(U,X,q){let Z=I3.createPairs(U,X,q),Q=new this;return Q.items=Z.items,Q}}O1.tag="tag:yaml.org,2002:omap";var d_={collection:"seq",identify:(U)=>U instanceof Map,nodeClass:O1,default:!1,tag:"tag:yaml.org,2002:omap",resolve(U,X){let q=I3.resolvePairs(U,X),Z=[];for(let{key:Q}of q.items)if(w3.isScalar(Q))if(Z.includes(Q.value))X(`Ordered maps must not include duplicate keys: ${Q.value}`);else Z.push(Q.value);return Object.assign(new O1,q)},createNode:(U,X,q)=>O1.from(U,X,q)};c_.YAMLOMap=O1;c_.omap=d_});var E3=D((o_)=>{var K3=i();function N3({value:U,source:X},q){if(X&&(U?C3:S3).test.test(X))return X;return U?q.options.trueStr:q.options.falseStr}var C3={identify:(U)=>U===!0,default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:Y|y|[Yy]es|YES|[Tt]rue|TRUE|[Oo]n|ON)$/,resolve:()=>new K3.Scalar(!0),stringify:N3},S3={identify:(U)=>U===!1,default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:N|n|[Nn]o|NO|[Ff]alse|FALSE|[Oo]ff|OFF)$/,resolve:()=>new K3.Scalar(!1),stringify:N3};o_.falseTag=S3;o_.trueTag=C3});var j3=D((X$)=>{var n_=i(),R9=r1(),t_={identify:(U)=>typeof U==="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^(?:[-+]?\.(?:inf|Inf|INF)|\.nan|\.NaN|\.NAN)$/,resolve:(U)=>U.slice(-3).toLowerCase()==="nan"?NaN:U[0]==="-"?Number.NEGATIVE_INFINITY:Number.POSITIVE_INFINITY,stringify:R9.stringifyNumber},e_={identify:(U)=>typeof U==="number",default:!0,tag:"tag:yaml.org,2002:float",format:"EXP",test:/^[-+]?(?:[0-9][0-9_]*)?(?:\.[0-9_]*)?[eE][-+]?[0-9]+$/,resolve:(U)=>parseFloat(U.replace(/_/g,"")),stringify(U){let X=Number(U.value);return isFinite(X)?X.toExponential():R9.stringifyNumber(U)}},U$={identify:(U)=>typeof U==="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:[0-9][0-9_]*)?\.[0-9_]*$/,resolve(U){let X=new n_.Scalar(parseFloat(U.replace(/_/g,""))),q=U.indexOf(".");if(q!==-1){let Z=U.substring(q+1).replace(/_/g,"");if(Z[Z.length-1]==="0")X.minFractionDigits=Z.length}return X},stringify:R9.stringifyNumber};X$.float=U$;X$.floatExp=e_;X$.floatNaN=t_});var f3=D((W$)=>{var b3=r1(),o2=(U)=>typeof U==="bigint"||Number.isInteger(U);function zU(U,X,q,{intAsBigInt:Z}){let Q=U[0];if(Q==="-"||Q==="+")X+=1;if(U=U.substring(X).replace(/_/g,""),Z){switch(q){case 2:U=`0b${U}`;break;case 8:U=`0o${U}`;break;case 16:U=`0x${U}`;break}let Y=BigInt(U);return Q==="-"?BigInt(-1)*Y:Y}let G=parseInt(U,q);return Q==="-"?-1*G:G}function M9(U,X,q){let{value:Z}=U;if(o2(Z)){let Q=Z.toString(X);return Z<0?"-"+q+Q.substr(1):q+Q}return b3.stringifyNumber(U)}var G$={identify:o2,default:!0,tag:"tag:yaml.org,2002:int",format:"BIN",test:/^[-+]?0b[0-1_]+$/,resolve:(U,X,q)=>zU(U,2,2,q),stringify:(U)=>M9(U,2,"0b")},Y$={identify:o2,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^[-+]?0[0-7_]+$/,resolve:(U,X,q)=>zU(U,1,8,q),stringify:(U)=>M9(U,8,"0")},J$={identify:o2,default:!0,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9][0-9_]*$/,resolve:(U,X,q)=>zU(U,0,10,q),stringify:b3.stringifyNumber},H$={identify:o2,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^[-+]?0x[0-9a-fA-F_]+$/,resolve:(U,X,q)=>zU(U,2,16,q),stringify:(U)=>M9(U,16,"0x")};W$.int=J$;W$.intBin=G$;W$.intHex=H$;W$.intOct=Y$});var P9=D((A$)=>{var VU=k(),FU=U1(),AU=q1();class B1 extends AU.YAMLMap{constructor(U){super(U);this.tag=B1.tag}add(U){let X;if(VU.isPair(U))X=U;else if(U&&typeof U==="object"&&"key"in U&&"value"in U&&U.value===null)X=new FU.Pair(U.key,null);else X=new FU.Pair(U,null);if(!AU.findPair(this.items,X.key))this.items.push(X)}get(U,X){let q=AU.findPair(this.items,U);return!X&&VU.isPair(q)?VU.isScalar(q.key)?q.key.value:q.key:q}set(U,X){if(typeof X!=="boolean")throw Error(`Expected boolean value for set(key, value) in a YAML set, not ${typeof X}`);let q=AU.findPair(this.items,U);if(q&&!X)this.items.splice(this.items.indexOf(q),1);else if(!q&&X)this.items.push(new FU.Pair(U))}toJSON(U,X){return super.toJSON(U,X,Set)}toString(U,X,q){if(!U)return JSON.stringify(this);if(this.hasAllNullValues(!0))return super.toString(Object.assign({},U,{allNullValues:!0}),X,q);else throw Error("Set items must all have null values")}static from(U,X,q){let{replacer:Z}=q,Q=new this(U);if(X&&Symbol.iterator in Object(X))for(let G of X){if(typeof Z==="function")G=Z.call(X,G,G);Q.items.push(FU.createPair(G,null,q))}return Q}}B1.tag="tag:yaml.org,2002:set";var F$={collection:"map",identify:(U)=>U instanceof Set,nodeClass:B1,default:!1,tag:"tag:yaml.org,2002:set",createNode:(U,X,q)=>B1.from(U,X,q),resolve(U,X){if(VU.isMap(U))if(U.hasAllNullValues(!0))return Object.assign(new B1,U);else X("Set items must all have null values");else X("Expected a mapping for this tag");return U}};A$.YAMLSet=B1;A$.set=F$});var I9=D((R$)=>{var B$=r1();function w9(U,X){let q=U[0],Z=q==="-"||q==="+"?U.substring(1):U,Q=(Y)=>X?BigInt(Y):Number(Y),G=Z.replace(/_/g,"").split(":").reduce((Y,J)=>Y*Q(60)+Q(J),Q(0));return q==="-"?Q(-1)*G:G}function g3(U){let{value:X}=U,q=(Y)=>Y;if(typeof X==="bigint")q=(Y)=>BigInt(Y);else if(isNaN(X)||!isFinite(X))return B$.stringifyNumber(U);let Z="";if(X<0)Z="-",X*=q(-1);let Q=q(60),G=[X%Q];if(X<60)G.unshift(0);else if(X=(X-G[0])/Q,G.unshift(X%Q),X>=60)X=(X-G[0])/Q,G.unshift(X);return Z+G.map((Y)=>String(Y).padStart(2,"0")).join(":").replace(/000000\d*$/,"")}var T$={identify:(U)=>typeof U==="bigint"||Number.isInteger(U),default:!0,tag:"tag:yaml.org,2002:int",format:"TIME",test:/^[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+$/,resolve:(U,X,{intAsBigInt:q})=>w9(U,q),stringify:g3},D$={identify:(U)=>typeof U==="number",default:!0,tag:"tag:yaml.org,2002:float",format:"TIME",test:/^[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+\.[0-9_]*$/,resolve:(U)=>w9(U,!1),stringify:g3},y3={identify:(U)=>U 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(U){let X=U.match(y3.test);if(!X)throw Error("!!timestamp expects a date, starting with yyyy-mm-dd");let[,q,Z,Q,G,Y,J]=X.map(Number),H=X[7]?Number((X[7]+"00").substr(1,3)):0,W=Date.UTC(q,Z-1,Q,G||0,Y||0,J||0,H),$=X[8];if($&&$!=="Z"){let _=w9($,!1);if(Math.abs(_)<30)_*=60;W-=60000*_}return new Date(W)},stringify:({value:U})=>U?.toISOString().replace(/(T00:00:00)?\.000Z$/,"")??""};R$.floatTime=D$;R$.intTime=T$;R$.timestamp=y3});var v3=D((y$)=>{var I$=s1(),K$=HU(),N$=o1(),C$=c2(),S$=O9(),k3=E3(),K9=j3(),OU=f3(),E$=UU(),j$=D9(),b$=LU(),f$=P9(),N9=I9(),g$=[I$.map,N$.seq,C$.string,K$.nullTag,k3.trueTag,k3.falseTag,OU.intBin,OU.intOct,OU.int,OU.intHex,K9.floatNaN,K9.floatExp,K9.float,S$.binary,E$.merge,j$.omap,b$.pairs,f$.set,N9.intTime,N9.floatTime,N9.timestamp];y$.schema=g$});var s3=D((d$)=>{var m3=s1(),v$=HU(),p3=o1(),x$=c2(),h$=W9(),C9=$9(),S9=z9(),u$=T3(),m$=R3(),l3=O9(),r2=UU(),d3=D9(),c3=LU(),x3=v3(),i3=P9(),BU=I9(),h3=new Map([["core",u$.schema],["failsafe",[m3.map,p3.seq,x$.string]],["json",m$.schema],["yaml11",x3.schema],["yaml-1.1",x3.schema]]),u3={binary:l3.binary,bool:h$.boolTag,float:C9.float,floatExp:C9.floatExp,floatNaN:C9.floatNaN,floatTime:BU.floatTime,int:S9.int,intHex:S9.intHex,intOct:S9.intOct,intTime:BU.intTime,map:m3.map,merge:r2.merge,null:v$.nullTag,omap:d3.omap,pairs:c3.pairs,seq:p3.seq,set:i3.set,timestamp:BU.timestamp},p$={"tag:yaml.org,2002:binary":l3.binary,"tag:yaml.org,2002:merge":r2.merge,"tag:yaml.org,2002:omap":d3.omap,"tag:yaml.org,2002:pairs":c3.pairs,"tag:yaml.org,2002:set":i3.set,"tag:yaml.org,2002:timestamp":BU.timestamp};function l$(U,X,q){let Z=h3.get(X);if(Z&&!U)return q&&!Z.includes(r2.merge)?Z.concat(r2.merge):Z.slice();let Q=Z;if(!Q)if(Array.isArray(U))Q=[];else{let G=Array.from(h3.keys()).filter((Y)=>Y!=="yaml11").map((Y)=>JSON.stringify(Y)).join(", ");throw Error(`Unknown schema "${X}"; use one of ${G} or define customTags array`)}if(Array.isArray(U))for(let G of U)Q=Q.concat(G);else if(typeof U==="function")Q=U(Q.slice());if(q)Q=Q.concat(r2.merge);return Q.reduce((G,Y)=>{let J=typeof Y==="string"?u3[Y]:Y;if(!J){let H=JSON.stringify(Y),W=Object.keys(u3).map(($)=>JSON.stringify($)).join(", ");throw Error(`Unknown custom tag ${H}; use one of ${W}`)}if(!G.includes(J))G.push(J);return G},[])}d$.coreKnownTags=p$;d$.getTags=l$});var b9=D((n$)=>{var E9=k(),s$=s1(),o$=o1(),r$=c2(),TU=s3(),a$=(U,X)=>U.key<X.key?-1:U.key>X.key?1:0;class j9{constructor({compat:U,customTags:X,merge:q,resolveKnownTags:Z,schema:Q,sortMapEntries:G,toStringDefaults:Y}){this.compat=Array.isArray(U)?TU.getTags(U,"compat"):U?TU.getTags(null,U):null,this.name=typeof Q==="string"&&Q||"core",this.knownTags=Z?TU.coreKnownTags:{},this.tags=TU.getTags(X,this.name,q),this.toStringOptions=Y??null,Object.defineProperty(this,E9.MAP,{value:s$.map}),Object.defineProperty(this,E9.SCALAR,{value:r$.string}),Object.defineProperty(this,E9.SEQ,{value:o$.seq}),this.sortMapEntries=typeof G==="function"?G:G===!0?a$:null}clone(){let U=Object.create(j9.prototype,Object.getOwnPropertyDescriptors(this));return U.tags=this.tags.slice(),U}}n$.Schema=j9});var o3=D((XL)=>{var e$=k(),f9=m2(),a2=x2();function UL(U,X){let q=[],Z=X.directives===!0;if(X.directives!==!1&&U.directives){let H=U.directives.toString(U);if(H)q.push(H),Z=!0;else if(U.directives.docStart)Z=!0}if(Z)q.push("---");let Q=f9.createStringifyContext(U,X),{commentString:G}=Q.options;if(U.commentBefore){if(q.length!==1)q.unshift("");let H=G(U.commentBefore);q.unshift(a2.indentComment(H,""))}let Y=!1,J=null;if(U.contents){if(e$.isNode(U.contents)){if(U.contents.spaceBefore&&Z)q.push("");if(U.contents.commentBefore){let $=G(U.contents.commentBefore);q.push(a2.indentComment($,""))}Q.forceBlockIndent=!!U.comment,J=U.contents.comment}let H=J?void 0:()=>Y=!0,W=f9.stringify(U.contents,Q,()=>J=null,H);if(J)W+=a2.lineComment(W,"",G(J));if((W[0]==="|"||W[0]===">")&&q[q.length-1]==="---")q[q.length-1]=`--- ${W}`;else q.push(W)}else q.push(f9.stringify(U.contents,Q));if(U.directives?.docEnd)if(U.comment){let H=G(U.comment);if(H.includes(`
54
+ ${G.comment}`:Z.comment}Z=Q}U.items[q]=$U.isPair(Z)?Z:new V9.Pair(Z)}else X("Expected a sequence for this tag");return U}function M3(U,X,q){let{replacer:Z}=q,Q=new v_.YAMLSeq(U);Q.tag="tag:yaml.org,2002:pairs";let G=0;if(X&&Symbol.iterator in Object(X))for(let Y of X){if(typeof Z==="function")Y=Z.call(X,String(G++),Y);let J,H;if(Array.isArray(Y))if(Y.length===2)J=Y[0],H=Y[1];else throw TypeError(`Expected [key, value] tuple: ${Y}`);else if(Y&&Y instanceof Object){let W=Object.keys(Y);if(W.length===1)J=W[0],H=Y[J];else throw TypeError(`Expected tuple with one key, not ${W.length} keys`)}else J=Y;Q.items.push(V9.createPair(J,H,q))}return Q}var h_={collection:"seq",default:!1,tag:"tag:yaml.org,2002:pairs",resolve:D3,createNode:M3};x_.createPairs=M3;x_.pairs=h_;x_.resolvePairs=D3});var T9=R((c_)=>{var P3=k(),B9=n0(),s2=q1(),l_=Z1(),w3=LU();class V1 extends l_.YAMLSeq{constructor(){super();this.add=s2.YAMLMap.prototype.add.bind(this),this.delete=s2.YAMLMap.prototype.delete.bind(this),this.get=s2.YAMLMap.prototype.get.bind(this),this.has=s2.YAMLMap.prototype.has.bind(this),this.set=s2.YAMLMap.prototype.set.bind(this),this.tag=V1.tag}toJSON(U,X){if(!X)return super.toJSON(U);let q=new Map;if(X?.onCreate)X.onCreate(q);for(let Z of this.items){let Q,G;if(P3.isPair(Z))Q=B9.toJS(Z.key,"",X),G=B9.toJS(Z.value,Q,X);else Q=B9.toJS(Z,"",X);if(q.has(Q))throw Error("Ordered maps must not include duplicate keys");q.set(Q,G)}return q}static from(U,X,q){let Z=w3.createPairs(U,X,q),Q=new this;return Q.items=Z.items,Q}}V1.tag="tag:yaml.org,2002:omap";var d_={collection:"seq",identify:(U)=>U instanceof Map,nodeClass:V1,default:!1,tag:"tag:yaml.org,2002:omap",resolve(U,X){let q=w3.resolvePairs(U,X),Z=[];for(let{key:Q}of q.items)if(P3.isScalar(Q))if(Z.includes(Q.value))X(`Ordered maps must not include duplicate keys: ${Q.value}`);else Z.push(Q.value);return Object.assign(new V1,q)},createNode:(U,X,q)=>V1.from(U,X,q)};c_.YAMLOMap=V1;c_.omap=d_});var S3=R((o_)=>{var I3=i();function K3({value:U,source:X},q){if(X&&(U?N3:C3).test.test(X))return X;return U?q.options.trueStr:q.options.falseStr}var N3={identify:(U)=>U===!0,default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:Y|y|[Yy]es|YES|[Tt]rue|TRUE|[Oo]n|ON)$/,resolve:()=>new I3.Scalar(!0),stringify:K3},C3={identify:(U)=>U===!1,default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:N|n|[Nn]o|NO|[Ff]alse|FALSE|[Oo]ff|OFF)$/,resolve:()=>new I3.Scalar(!1),stringify:K3};o_.falseTag=C3;o_.trueTag=N3});var E3=R((X$)=>{var n_=i(),R9=a1(),t_={identify:(U)=>typeof U==="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^(?:[-+]?\.(?:inf|Inf|INF)|\.nan|\.NaN|\.NAN)$/,resolve:(U)=>U.slice(-3).toLowerCase()==="nan"?NaN:U[0]==="-"?Number.NEGATIVE_INFINITY:Number.POSITIVE_INFINITY,stringify:R9.stringifyNumber},e_={identify:(U)=>typeof U==="number",default:!0,tag:"tag:yaml.org,2002:float",format:"EXP",test:/^[-+]?(?:[0-9][0-9_]*)?(?:\.[0-9_]*)?[eE][-+]?[0-9]+$/,resolve:(U)=>parseFloat(U.replace(/_/g,"")),stringify(U){let X=Number(U.value);return isFinite(X)?X.toExponential():R9.stringifyNumber(U)}},U$={identify:(U)=>typeof U==="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:[0-9][0-9_]*)?\.[0-9_]*$/,resolve(U){let X=new n_.Scalar(parseFloat(U.replace(/_/g,""))),q=U.indexOf(".");if(q!==-1){let Z=U.substring(q+1).replace(/_/g,"");if(Z[Z.length-1]==="0")X.minFractionDigits=Z.length}return X},stringify:R9.stringifyNumber};X$.float=U$;X$.floatExp=e_;X$.floatNaN=t_});var b3=R((W$)=>{var j3=a1(),o2=(U)=>typeof U==="bigint"||Number.isInteger(U);function zU(U,X,q,{intAsBigInt:Z}){let Q=U[0];if(Q==="-"||Q==="+")X+=1;if(U=U.substring(X).replace(/_/g,""),Z){switch(q){case 2:U=`0b${U}`;break;case 8:U=`0o${U}`;break;case 16:U=`0x${U}`;break}let Y=BigInt(U);return Q==="-"?BigInt(-1)*Y:Y}let G=parseInt(U,q);return Q==="-"?-1*G:G}function D9(U,X,q){let{value:Z}=U;if(o2(Z)){let Q=Z.toString(X);return Z<0?"-"+q+Q.substr(1):q+Q}return j3.stringifyNumber(U)}var G$={identify:o2,default:!0,tag:"tag:yaml.org,2002:int",format:"BIN",test:/^[-+]?0b[0-1_]+$/,resolve:(U,X,q)=>zU(U,2,2,q),stringify:(U)=>D9(U,2,"0b")},Y$={identify:o2,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^[-+]?0[0-7_]+$/,resolve:(U,X,q)=>zU(U,1,8,q),stringify:(U)=>D9(U,8,"0")},J$={identify:o2,default:!0,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9][0-9_]*$/,resolve:(U,X,q)=>zU(U,0,10,q),stringify:j3.stringifyNumber},H$={identify:o2,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^[-+]?0x[0-9a-fA-F_]+$/,resolve:(U,X,q)=>zU(U,2,16,q),stringify:(U)=>D9(U,16,"0x")};W$.int=J$;W$.intBin=G$;W$.intHex=H$;W$.intOct=Y$});var M9=R((A$)=>{var OU=k(),FU=U1(),AU=q1();class B1 extends AU.YAMLMap{constructor(U){super(U);this.tag=B1.tag}add(U){let X;if(OU.isPair(U))X=U;else if(U&&typeof U==="object"&&"key"in U&&"value"in U&&U.value===null)X=new FU.Pair(U.key,null);else X=new FU.Pair(U,null);if(!AU.findPair(this.items,X.key))this.items.push(X)}get(U,X){let q=AU.findPair(this.items,U);return!X&&OU.isPair(q)?OU.isScalar(q.key)?q.key.value:q.key:q}set(U,X){if(typeof X!=="boolean")throw Error(`Expected boolean value for set(key, value) in a YAML set, not ${typeof X}`);let q=AU.findPair(this.items,U);if(q&&!X)this.items.splice(this.items.indexOf(q),1);else if(!q&&X)this.items.push(new FU.Pair(U))}toJSON(U,X){return super.toJSON(U,X,Set)}toString(U,X,q){if(!U)return JSON.stringify(this);if(this.hasAllNullValues(!0))return super.toString(Object.assign({},U,{allNullValues:!0}),X,q);else throw Error("Set items must all have null values")}static from(U,X,q){let{replacer:Z}=q,Q=new this(U);if(X&&Symbol.iterator in Object(X))for(let G of X){if(typeof Z==="function")G=Z.call(X,G,G);Q.items.push(FU.createPair(G,null,q))}return Q}}B1.tag="tag:yaml.org,2002:set";var F$={collection:"map",identify:(U)=>U instanceof Set,nodeClass:B1,default:!1,tag:"tag:yaml.org,2002:set",createNode:(U,X,q)=>B1.from(U,X,q),resolve(U,X){if(OU.isMap(U))if(U.hasAllNullValues(!0))return Object.assign(new B1,U);else X("Set items must all have null values");else X("Expected a mapping for this tag");return U}};A$.YAMLSet=B1;A$.set=F$});var w9=R((D$)=>{var B$=a1();function P9(U,X){let q=U[0],Z=q==="-"||q==="+"?U.substring(1):U,Q=(Y)=>X?BigInt(Y):Number(Y),G=Z.replace(/_/g,"").split(":").reduce((Y,J)=>Y*Q(60)+Q(J),Q(0));return q==="-"?Q(-1)*G:G}function f3(U){let{value:X}=U,q=(Y)=>Y;if(typeof X==="bigint")q=(Y)=>BigInt(Y);else if(isNaN(X)||!isFinite(X))return B$.stringifyNumber(U);let Z="";if(X<0)Z="-",X*=q(-1);let Q=q(60),G=[X%Q];if(X<60)G.unshift(0);else if(X=(X-G[0])/Q,G.unshift(X%Q),X>=60)X=(X-G[0])/Q,G.unshift(X);return Z+G.map((Y)=>String(Y).padStart(2,"0")).join(":").replace(/000000\d*$/,"")}var T$={identify:(U)=>typeof U==="bigint"||Number.isInteger(U),default:!0,tag:"tag:yaml.org,2002:int",format:"TIME",test:/^[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+$/,resolve:(U,X,{intAsBigInt:q})=>P9(U,q),stringify:f3},R$={identify:(U)=>typeof U==="number",default:!0,tag:"tag:yaml.org,2002:float",format:"TIME",test:/^[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+\.[0-9_]*$/,resolve:(U)=>P9(U,!1),stringify:f3},g3={identify:(U)=>U 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(U){let X=U.match(g3.test);if(!X)throw Error("!!timestamp expects a date, starting with yyyy-mm-dd");let[,q,Z,Q,G,Y,J]=X.map(Number),H=X[7]?Number((X[7]+"00").substr(1,3)):0,W=Date.UTC(q,Z-1,Q,G||0,Y||0,J||0,H),$=X[8];if($&&$!=="Z"){let _=P9($,!1);if(Math.abs(_)<30)_*=60;W-=60000*_}return new Date(W)},stringify:({value:U})=>U?.toISOString().replace(/(T00:00:00)?\.000Z$/,"")??""};D$.floatTime=R$;D$.intTime=T$;D$.timestamp=g3});var k3=R((y$)=>{var I$=o1(),K$=HU(),N$=r1(),C$=c2(),S$=O9(),y3=S3(),I9=E3(),VU=b3(),E$=UU(),j$=T9(),b$=LU(),f$=M9(),K9=w9(),g$=[I$.map,N$.seq,C$.string,K$.nullTag,y3.trueTag,y3.falseTag,VU.intBin,VU.intOct,VU.int,VU.intHex,I9.floatNaN,I9.floatExp,I9.float,S$.binary,E$.merge,j$.omap,b$.pairs,f$.set,K9.intTime,K9.floatTime,K9.timestamp];y$.schema=g$});var i3=R((d$)=>{var u3=o1(),v$=HU(),m3=r1(),h$=c2(),x$=H9(),N9=_9(),C9=L9(),u$=B3(),m$=R3(),p3=O9(),r2=UU(),l3=T9(),d3=LU(),v3=k3(),c3=M9(),BU=w9(),h3=new Map([["core",u$.schema],["failsafe",[u3.map,m3.seq,h$.string]],["json",m$.schema],["yaml11",v3.schema],["yaml-1.1",v3.schema]]),x3={binary:p3.binary,bool:x$.boolTag,float:N9.float,floatExp:N9.floatExp,floatNaN:N9.floatNaN,floatTime:BU.floatTime,int:C9.int,intHex:C9.intHex,intOct:C9.intOct,intTime:BU.intTime,map:u3.map,merge:r2.merge,null:v$.nullTag,omap:l3.omap,pairs:d3.pairs,seq:m3.seq,set:c3.set,timestamp:BU.timestamp},p$={"tag:yaml.org,2002:binary":p3.binary,"tag:yaml.org,2002:merge":r2.merge,"tag:yaml.org,2002:omap":l3.omap,"tag:yaml.org,2002:pairs":d3.pairs,"tag:yaml.org,2002:set":c3.set,"tag:yaml.org,2002:timestamp":BU.timestamp};function l$(U,X,q){let Z=h3.get(X);if(Z&&!U)return q&&!Z.includes(r2.merge)?Z.concat(r2.merge):Z.slice();let Q=Z;if(!Q)if(Array.isArray(U))Q=[];else{let G=Array.from(h3.keys()).filter((Y)=>Y!=="yaml11").map((Y)=>JSON.stringify(Y)).join(", ");throw Error(`Unknown schema "${X}"; use one of ${G} or define customTags array`)}if(Array.isArray(U))for(let G of U)Q=Q.concat(G);else if(typeof U==="function")Q=U(Q.slice());if(q)Q=Q.concat(r2.merge);return Q.reduce((G,Y)=>{let J=typeof Y==="string"?x3[Y]:Y;if(!J){let H=JSON.stringify(Y),W=Object.keys(x3).map(($)=>JSON.stringify($)).join(", ");throw Error(`Unknown custom tag ${H}; use one of ${W}`)}if(!G.includes(J))G.push(J);return G},[])}d$.coreKnownTags=p$;d$.getTags=l$});var j9=R((n$)=>{var S9=k(),s$=o1(),o$=r1(),r$=c2(),TU=i3(),a$=(U,X)=>U.key<X.key?-1:U.key>X.key?1:0;class E9{constructor({compat:U,customTags:X,merge:q,resolveKnownTags:Z,schema:Q,sortMapEntries:G,toStringDefaults:Y}){this.compat=Array.isArray(U)?TU.getTags(U,"compat"):U?TU.getTags(null,U):null,this.name=typeof Q==="string"&&Q||"core",this.knownTags=Z?TU.coreKnownTags:{},this.tags=TU.getTags(X,this.name,q),this.toStringOptions=Y??null,Object.defineProperty(this,S9.MAP,{value:s$.map}),Object.defineProperty(this,S9.SCALAR,{value:r$.string}),Object.defineProperty(this,S9.SEQ,{value:o$.seq}),this.sortMapEntries=typeof G==="function"?G:G===!0?a$:null}clone(){let U=Object.create(E9.prototype,Object.getOwnPropertyDescriptors(this));return U.tags=this.tags.slice(),U}}n$.Schema=E9});var s3=R((XL)=>{var e$=k(),b9=m2(),a2=h2();function UL(U,X){let q=[],Z=X.directives===!0;if(X.directives!==!1&&U.directives){let H=U.directives.toString(U);if(H)q.push(H),Z=!0;else if(U.directives.docStart)Z=!0}if(Z)q.push("---");let Q=b9.createStringifyContext(U,X),{commentString:G}=Q.options;if(U.commentBefore){if(q.length!==1)q.unshift("");let H=G(U.commentBefore);q.unshift(a2.indentComment(H,""))}let Y=!1,J=null;if(U.contents){if(e$.isNode(U.contents)){if(U.contents.spaceBefore&&Z)q.push("");if(U.contents.commentBefore){let $=G(U.contents.commentBefore);q.push(a2.indentComment($,""))}Q.forceBlockIndent=!!U.comment,J=U.contents.comment}let H=J?void 0:()=>Y=!0,W=b9.stringify(U.contents,Q,()=>J=null,H);if(J)W+=a2.lineComment(W,"",G(J));if((W[0]==="|"||W[0]===">")&&q[q.length-1]==="---")q[q.length-1]=`--- ${W}`;else q.push(W)}else q.push(b9.stringify(U.contents,Q));if(U.directives?.docEnd)if(U.comment){let H=G(U.comment);if(H.includes(`
55
55
  `))q.push("..."),q.push(a2.indentComment(H,""));else q.push(`... ${H}`)}else q.push("...");else{let H=U.comment;if(H&&Y)H=H.replace(/^\n+/,"");if(H){if((!Y||J)&&q[q.length-1]!=="")q.push("");q.push(a2.indentComment(G(H),""))}}return q.join(`
56
56
  `)+`
57
- `}XL.stringifyDocument=UL});var n2=D((_L)=>{var ZL=k2(),a1=o6(),T0=k(),QL=U1(),GL=n0(),YL=b9(),JL=o3(),g9=c6(),HL=e4(),WL=v2(),y9=t4();class k9{constructor(U,X,q){this.commentBefore=null,this.comment=null,this.errors=[],this.warnings=[],Object.defineProperty(this,T0.NODE_TYPE,{value:T0.DOC});let Z=null;if(typeof X==="function"||Array.isArray(X))Z=X;else if(q===void 0&&X)q=X,X=void 0;let Q=Object.assign({intAsBigInt:!1,keepSourceTokens:!1,logLevel:"warn",prettyErrors:!0,strict:!0,stringKeys:!1,uniqueKeys:!0,version:"1.2"},q);this.options=Q;let{version:G}=Q;if(q?._directives){if(this.directives=q._directives.atDocument(),this.directives.yaml.explicit)G=this.directives.yaml.version}else this.directives=new y9.Directives({version:G});this.setSchema(G,q),this.contents=U===void 0?null:this.createNode(U,Z,q)}clone(){let U=Object.create(k9.prototype,{[T0.NODE_TYPE]:{value:T0.DOC}});if(U.commentBefore=this.commentBefore,U.comment=this.comment,U.errors=this.errors.slice(),U.warnings=this.warnings.slice(),U.options=Object.assign({},this.options),this.directives)U.directives=this.directives.clone();if(U.schema=this.schema.clone(),U.contents=T0.isNode(this.contents)?this.contents.clone(U.schema):this.contents,this.range)U.range=this.range.slice();return U}add(U){if(n1(this.contents))this.contents.add(U)}addIn(U,X){if(n1(this.contents))this.contents.addIn(U,X)}createAlias(U,X){if(!U.anchor){let q=g9.anchorNames(this);U.anchor=!X||q.has(X)?g9.findNewAnchor(X||"a",q):X}return new ZL.Alias(U.anchor)}createNode(U,X,q){let Z=void 0;if(typeof X==="function")U=X.call({"":U},"",U),Z=X;else if(Array.isArray(X)){let z=(R)=>typeof R==="number"||R instanceof String||R instanceof Number,O=X.filter(z).map(String);if(O.length>0)X=X.concat(O);Z=X}else if(q===void 0&&X)q=X,X=void 0;let{aliasDuplicateObjects:Q,anchorPrefix:G,flow:Y,keepUndefined:J,onTagObj:H,tag:W}=q??{},{onAnchor:$,setAnchors:_,sourceObjects:L}=g9.createNodeAnchors(this,G||"a"),A={aliasDuplicateObjects:Q??!0,keepUndefined:J??!1,onAnchor:$,onTagObj:H,replacer:Z,schema:this.schema,sourceObjects:L},T=WL.createNode(U,W,A);if(Y&&T0.isCollection(T))T.flow=!0;return _(),T}createPair(U,X,q={}){let Z=this.createNode(U,null,q),Q=this.createNode(X,null,q);return new QL.Pair(Z,Q)}delete(U){return n1(this.contents)?this.contents.delete(U):!1}deleteIn(U){if(a1.isEmptyPath(U)){if(this.contents==null)return!1;return this.contents=null,!0}return n1(this.contents)?this.contents.deleteIn(U):!1}get(U,X){return T0.isCollection(this.contents)?this.contents.get(U,X):void 0}getIn(U,X){if(a1.isEmptyPath(U))return!X&&T0.isScalar(this.contents)?this.contents.value:this.contents;return T0.isCollection(this.contents)?this.contents.getIn(U,X):void 0}has(U){return T0.isCollection(this.contents)?this.contents.has(U):!1}hasIn(U){if(a1.isEmptyPath(U))return this.contents!==void 0;return T0.isCollection(this.contents)?this.contents.hasIn(U):!1}set(U,X){if(this.contents==null)this.contents=a1.collectionFromPath(this.schema,[U],X);else if(n1(this.contents))this.contents.set(U,X)}setIn(U,X){if(a1.isEmptyPath(U))this.contents=X;else if(this.contents==null)this.contents=a1.collectionFromPath(this.schema,Array.from(U),X);else if(n1(this.contents))this.contents.setIn(U,X)}setSchema(U,X={}){if(typeof U==="number")U=String(U);let q;switch(U){case"1.1":if(this.directives)this.directives.yaml.version="1.1";else this.directives=new y9.Directives({version:"1.1"});q={resolveKnownTags:!1,schema:"yaml-1.1"};break;case"1.2":case"next":if(this.directives)this.directives.yaml.version=U;else this.directives=new y9.Directives({version:U});q={resolveKnownTags:!0,schema:"core"};break;case null:if(this.directives)delete this.directives;q=null;break;default:{let Z=JSON.stringify(U);throw Error(`Expected '1.1', '1.2' or null as first argument, but found: ${Z}`)}}if(X.schema instanceof Object)this.schema=X.schema;else if(q)this.schema=new YL.Schema(Object.assign(q,X));else throw Error("With a null YAML version, the { schema: Schema } option is required")}toJS({json:U,jsonArg:X,mapAsMap:q,maxAliasCount:Z,onAnchor:Q,reviver:G}={}){let Y={anchors:new Map,doc:this,keep:!U,mapAsMap:q===!0,mapKeyWarned:!1,maxAliasCount:typeof Z==="number"?Z:100},J=GL.toJS(this.contents,X??"",Y);if(typeof Q==="function")for(let{count:H,res:W}of Y.anchors.values())Q(W,H);return typeof G==="function"?HL.applyReviver(G,{"":J},"",J):J}toJSON(U,X){return this.toJS({json:!0,jsonArg:U,mapAsMap:!1,onAnchor:X})}toString(U={}){if(this.errors.length>0)throw Error("Document with errors cannot be stringified");if("indent"in U&&(!Number.isInteger(U.indent)||Number(U.indent)<=0)){let X=JSON.stringify(U.indent);throw Error(`"indent" option must be a positive integer, not ${X}`)}return JL.stringifyDocument(this,U)}}function n1(U){if(T0.isCollection(U))return!0;throw Error("Expected a YAML collection as document contents")}_L.Document=k9});var t2=D((zL)=>{class DU extends Error{constructor(U,X,q,Z){super();this.name=U,this.code=q,this.message=Z,this.pos=X}}class r3 extends DU{constructor(U,X,q){super("YAMLParseError",U,X,q)}}class a3 extends DU{constructor(U,X,q){super("YAMLWarning",U,X,q)}}var LL=(U,X)=>(q)=>{if(q.pos[0]===-1)return;q.linePos=q.pos.map((J)=>X.linePos(J));let{line:Z,col:Q}=q.linePos[0];q.message+=` at line ${Z}, column ${Q}`;let G=Q-1,Y=U.substring(X.lineStarts[Z-1],X.lineStarts[Z]).replace(/[\n\r]+$/,"");if(G>=60&&Y.length>80){let J=Math.min(G-39,Y.length-79);Y="…"+Y.substring(J),G-=J-1}if(Y.length>80)Y=Y.substring(0,79)+"…";if(Z>1&&/^ *$/.test(Y.substring(0,G))){let J=U.substring(X.lineStarts[Z-2],X.lineStarts[Z-1]);if(J.length>80)J=J.substring(0,79)+`…
57
+ `}XL.stringifyDocument=UL});var n2=R((_L)=>{var ZL=k2(),n1=o6(),R0=k(),QL=U1(),GL=n0(),YL=j9(),JL=s3(),f9=c6(),HL=t4(),WL=v2(),g9=n4();class y9{constructor(U,X,q){this.commentBefore=null,this.comment=null,this.errors=[],this.warnings=[],Object.defineProperty(this,R0.NODE_TYPE,{value:R0.DOC});let Z=null;if(typeof X==="function"||Array.isArray(X))Z=X;else if(q===void 0&&X)q=X,X=void 0;let Q=Object.assign({intAsBigInt:!1,keepSourceTokens:!1,logLevel:"warn",prettyErrors:!0,strict:!0,stringKeys:!1,uniqueKeys:!0,version:"1.2"},q);this.options=Q;let{version:G}=Q;if(q?._directives){if(this.directives=q._directives.atDocument(),this.directives.yaml.explicit)G=this.directives.yaml.version}else this.directives=new g9.Directives({version:G});this.setSchema(G,q),this.contents=U===void 0?null:this.createNode(U,Z,q)}clone(){let U=Object.create(y9.prototype,{[R0.NODE_TYPE]:{value:R0.DOC}});if(U.commentBefore=this.commentBefore,U.comment=this.comment,U.errors=this.errors.slice(),U.warnings=this.warnings.slice(),U.options=Object.assign({},this.options),this.directives)U.directives=this.directives.clone();if(U.schema=this.schema.clone(),U.contents=R0.isNode(this.contents)?this.contents.clone(U.schema):this.contents,this.range)U.range=this.range.slice();return U}add(U){if(t1(this.contents))this.contents.add(U)}addIn(U,X){if(t1(this.contents))this.contents.addIn(U,X)}createAlias(U,X){if(!U.anchor){let q=f9.anchorNames(this);U.anchor=!X||q.has(X)?f9.findNewAnchor(X||"a",q):X}return new ZL.Alias(U.anchor)}createNode(U,X,q){let Z=void 0;if(typeof X==="function")U=X.call({"":U},"",U),Z=X;else if(Array.isArray(X)){let z=(D)=>typeof D==="number"||D instanceof String||D instanceof Number,V=X.filter(z).map(String);if(V.length>0)X=X.concat(V);Z=X}else if(q===void 0&&X)q=X,X=void 0;let{aliasDuplicateObjects:Q,anchorPrefix:G,flow:Y,keepUndefined:J,onTagObj:H,tag:W}=q??{},{onAnchor:$,setAnchors:_,sourceObjects:L}=f9.createNodeAnchors(this,G||"a"),A={aliasDuplicateObjects:Q??!0,keepUndefined:J??!1,onAnchor:$,onTagObj:H,replacer:Z,schema:this.schema,sourceObjects:L},T=WL.createNode(U,W,A);if(Y&&R0.isCollection(T))T.flow=!0;return _(),T}createPair(U,X,q={}){let Z=this.createNode(U,null,q),Q=this.createNode(X,null,q);return new QL.Pair(Z,Q)}delete(U){return t1(this.contents)?this.contents.delete(U):!1}deleteIn(U){if(n1.isEmptyPath(U)){if(this.contents==null)return!1;return this.contents=null,!0}return t1(this.contents)?this.contents.deleteIn(U):!1}get(U,X){return R0.isCollection(this.contents)?this.contents.get(U,X):void 0}getIn(U,X){if(n1.isEmptyPath(U))return!X&&R0.isScalar(this.contents)?this.contents.value:this.contents;return R0.isCollection(this.contents)?this.contents.getIn(U,X):void 0}has(U){return R0.isCollection(this.contents)?this.contents.has(U):!1}hasIn(U){if(n1.isEmptyPath(U))return this.contents!==void 0;return R0.isCollection(this.contents)?this.contents.hasIn(U):!1}set(U,X){if(this.contents==null)this.contents=n1.collectionFromPath(this.schema,[U],X);else if(t1(this.contents))this.contents.set(U,X)}setIn(U,X){if(n1.isEmptyPath(U))this.contents=X;else if(this.contents==null)this.contents=n1.collectionFromPath(this.schema,Array.from(U),X);else if(t1(this.contents))this.contents.setIn(U,X)}setSchema(U,X={}){if(typeof U==="number")U=String(U);let q;switch(U){case"1.1":if(this.directives)this.directives.yaml.version="1.1";else this.directives=new g9.Directives({version:"1.1"});q={resolveKnownTags:!1,schema:"yaml-1.1"};break;case"1.2":case"next":if(this.directives)this.directives.yaml.version=U;else this.directives=new g9.Directives({version:U});q={resolveKnownTags:!0,schema:"core"};break;case null:if(this.directives)delete this.directives;q=null;break;default:{let Z=JSON.stringify(U);throw Error(`Expected '1.1', '1.2' or null as first argument, but found: ${Z}`)}}if(X.schema instanceof Object)this.schema=X.schema;else if(q)this.schema=new YL.Schema(Object.assign(q,X));else throw Error("With a null YAML version, the { schema: Schema } option is required")}toJS({json:U,jsonArg:X,mapAsMap:q,maxAliasCount:Z,onAnchor:Q,reviver:G}={}){let Y={anchors:new Map,doc:this,keep:!U,mapAsMap:q===!0,mapKeyWarned:!1,maxAliasCount:typeof Z==="number"?Z:100},J=GL.toJS(this.contents,X??"",Y);if(typeof Q==="function")for(let{count:H,res:W}of Y.anchors.values())Q(W,H);return typeof G==="function"?HL.applyReviver(G,{"":J},"",J):J}toJSON(U,X){return this.toJS({json:!0,jsonArg:U,mapAsMap:!1,onAnchor:X})}toString(U={}){if(this.errors.length>0)throw Error("Document with errors cannot be stringified");if("indent"in U&&(!Number.isInteger(U.indent)||Number(U.indent)<=0)){let X=JSON.stringify(U.indent);throw Error(`"indent" option must be a positive integer, not ${X}`)}return JL.stringifyDocument(this,U)}}function t1(U){if(R0.isCollection(U))return!0;throw Error("Expected a YAML collection as document contents")}_L.Document=y9});var t2=R((zL)=>{class RU extends Error{constructor(U,X,q,Z){super();this.name=U,this.code=q,this.message=Z,this.pos=X}}class o3 extends RU{constructor(U,X,q){super("YAMLParseError",U,X,q)}}class r3 extends RU{constructor(U,X,q){super("YAMLWarning",U,X,q)}}var LL=(U,X)=>(q)=>{if(q.pos[0]===-1)return;q.linePos=q.pos.map((J)=>X.linePos(J));let{line:Z,col:Q}=q.linePos[0];q.message+=` at line ${Z}, column ${Q}`;let G=Q-1,Y=U.substring(X.lineStarts[Z-1],X.lineStarts[Z]).replace(/[\n\r]+$/,"");if(G>=60&&Y.length>80){let J=Math.min(G-39,Y.length-79);Y="…"+Y.substring(J),G-=J-1}if(Y.length>80)Y=Y.substring(0,79)+"…";if(Z>1&&/^ *$/.test(Y.substring(0,G))){let J=U.substring(X.lineStarts[Z-2],X.lineStarts[Z-1]);if(J.length>80)J=J.substring(0,79)+`…
58
58
  `;Y=J+Y}if(/[^ ]/.test(Y)){let J=1,H=q.linePos[1];if(H?.line===Z&&H.col>Q)J=Math.max(1,Math.min(H.col-Q,80-G));let W=" ".repeat(G)+"^".repeat(J);q.message+=`:
59
59
 
60
60
  ${Y}
61
61
  ${W}
62
- `}};zL.YAMLError=DU;zL.YAMLParseError=r3;zL.YAMLWarning=a3;zL.prettifyError=LL});var e2=D((TL)=>{function BL(U,{flow:X,indicator:q,next:Z,offset:Q,onError:G,parentIndent:Y,startOnNewline:J}){let H=!1,W=J,$=J,_="",L="",A=!1,T=!1,z=null,O=null,R=null,w=null,K=null,C=null,N=null;for(let P of U){if(T){if(P.type!=="space"&&P.type!=="newline"&&P.type!=="comma")G(P.offset,"MISSING_CHAR","Tags and anchors must be separated from the next token by white space");T=!1}if(z){if(W&&P.type!=="comment"&&P.type!=="newline")G(z,"TAB_AS_INDENT","Tabs are not allowed as indentation");z=null}switch(P.type){case"space":if(!X&&(q!=="doc-start"||Z?.type!=="flow-collection")&&P.source.includes("\t"))z=P;$=!0;break;case"comment":{if(!$)G(P,"MISSING_CHAR","Comments must be separated from other tokens by white space characters");let s=P.source.substring(1)||" ";if(!_)_=s;else _+=L+s;L="",W=!1;break}case"newline":if(W){if(_)_+=P.source;else if(!C||q!=="seq-item-ind")H=!0}else L+=P.source;if(W=!0,A=!0,O||R)w=P;$=!0;break;case"anchor":if(O)G(P,"MULTIPLE_ANCHORS","A node can have at most one anchor");if(P.source.endsWith(":"))G(P.offset+P.source.length-1,"BAD_ALIAS","Anchor ending in : is ambiguous",!0);O=P,N??(N=P.offset),W=!1,$=!1,T=!0;break;case"tag":{if(R)G(P,"MULTIPLE_TAGS","A node can have at most one tag");R=P,N??(N=P.offset),W=!1,$=!1,T=!0;break}case q:if(O||R)G(P,"BAD_PROP_ORDER",`Anchors and tags must be after the ${P.source} indicator`);if(C)G(P,"UNEXPECTED_TOKEN",`Unexpected ${P.source} in ${X??"collection"}`);C=P,W=q==="seq-item-ind"||q==="explicit-key-ind",$=!1;break;case"comma":if(X){if(K)G(P,"UNEXPECTED_TOKEN",`Unexpected , in ${X}`);K=P,W=!1,$=!1;break}default:G(P,"UNEXPECTED_TOKEN",`Unexpected ${P.type} token`),W=!1,$=!1}}let b=U[U.length-1],m=b?b.offset+b.source.length:Q;if(T&&Z&&Z.type!=="space"&&Z.type!=="newline"&&Z.type!=="comma"&&(Z.type!=="scalar"||Z.source!==""))G(Z.offset,"MISSING_CHAR","Tags and anchors must be separated from the next token by white space");if(z&&(W&&z.indent<=Y||Z?.type==="block-map"||Z?.type==="block-seq"))G(z,"TAB_AS_INDENT","Tabs are not allowed as indentation");return{comma:K,found:C,spaceBefore:H,comment:_,hasNewline:A,anchor:O,tag:R,newlineAfterProp:w,end:m,start:N??m}}TL.resolveProps=BL});var RU=D((RL)=>{function v9(U){if(!U)return null;switch(U.type){case"alias":case"scalar":case"double-quoted-scalar":case"single-quoted-scalar":if(U.source.includes(`
63
- `))return!0;if(U.end){for(let X of U.end)if(X.type==="newline")return!0}return!1;case"flow-collection":for(let X of U.items){for(let q of X.start)if(q.type==="newline")return!0;if(X.sep){for(let q of X.sep)if(q.type==="newline")return!0}if(v9(X.key)||v9(X.value))return!0}return!1;default:return!0}}RL.containsNewline=v9});var x9=D((IL)=>{var PL=RU();function wL(U,X,q){if(X?.type==="flow-collection"){let Z=X.end[0];if(Z.indent===U&&(Z.source==="]"||Z.source==="}")&&PL.containsNewline(X))q(Z,"BAD_INDENT","Flow end indicator should be more indented than parent",!0)}}IL.flowIndentCheck=wL});var h9=D((CL)=>{var n3=k();function NL(U,X,q){let{uniqueKeys:Z}=U.options;if(Z===!1)return!1;let Q=typeof Z==="function"?Z:(G,Y)=>G===Y||n3.isScalar(G)&&n3.isScalar(Y)&&G.value===Y.value;return X.some((G)=>Q(G.key,q))}CL.mapIncludes=NL});var qQ=D((gL)=>{var t3=U1(),EL=q1(),e3=e2(),jL=RU(),UQ=x9(),bL=h9(),XQ="All mapping items must start at the same column";function fL({composeNode:U,composeEmptyNode:X},q,Z,Q,G){let J=new(G?.nodeClass??EL.YAMLMap)(q.schema);if(q.atRoot)q.atRoot=!1;let H=Z.offset,W=null;for(let $ of Z.items){let{start:_,key:L,sep:A,value:T}=$,z=e3.resolveProps(_,{indicator:"explicit-key-ind",next:L??A?.[0],offset:H,onError:Q,parentIndent:Z.indent,startOnNewline:!0}),O=!z.found;if(O){if(L){if(L.type==="block-seq")Q(H,"BLOCK_AS_IMPLICIT_KEY","A block sequence may not be used as an implicit map key");else if("indent"in L&&L.indent!==Z.indent)Q(H,"BAD_INDENT",XQ)}if(!z.anchor&&!z.tag&&!A){if(W=z.end,z.comment)if(J.comment)J.comment+=`
64
- `+z.comment;else J.comment=z.comment;continue}if(z.newlineAfterProp||jL.containsNewline(L))Q(L??_[_.length-1],"MULTILINE_IMPLICIT_KEY","Implicit keys need to be on a single line")}else if(z.found?.indent!==Z.indent)Q(H,"BAD_INDENT",XQ);q.atKey=!0;let R=z.end,w=L?U(q,L,z,Q):X(q,R,_,null,z,Q);if(q.schema.compat)UQ.flowIndentCheck(Z.indent,L,Q);if(q.atKey=!1,bL.mapIncludes(q,J.items,w))Q(R,"DUPLICATE_KEY","Map keys must be unique");let K=e3.resolveProps(A??[],{indicator:"map-value-ind",next:T,offset:w.range[2],onError:Q,parentIndent:Z.indent,startOnNewline:!L||L.type==="block-scalar"});if(H=K.end,K.found){if(O){if(T?.type==="block-map"&&!K.hasNewline)Q(H,"BLOCK_AS_IMPLICIT_KEY","Nested mappings are not allowed in compact mappings");if(q.options.strict&&z.start<K.found.offset-1024)Q(w.range,"KEY_OVER_1024_CHARS","The : indicator must be at most 1024 chars after the start of an implicit block mapping key")}let C=T?U(q,T,K,Q):X(q,H,A,null,K,Q);if(q.schema.compat)UQ.flowIndentCheck(Z.indent,T,Q);H=C.range[2];let N=new t3.Pair(w,C);if(q.options.keepSourceTokens)N.srcToken=$;J.items.push(N)}else{if(O)Q(w.range,"MISSING_CHAR","Implicit map keys need to be followed by map values");if(K.comment)if(w.comment)w.comment+=`
65
- `+K.comment;else w.comment=K.comment;let C=new t3.Pair(w);if(q.options.keepSourceTokens)C.srcToken=$;J.items.push(C)}}if(W&&W<H)Q(W,"IMPOSSIBLE","Map comment with trailing content");return J.range=[Z.offset,H,W??H],J}gL.resolveBlockMap=fL});var ZQ=D((uL)=>{var kL=Z1(),vL=e2(),xL=x9();function hL({composeNode:U,composeEmptyNode:X},q,Z,Q,G){let J=new(G?.nodeClass??kL.YAMLSeq)(q.schema);if(q.atRoot)q.atRoot=!1;if(q.atKey)q.atKey=!1;let H=Z.offset,W=null;for(let{start:$,value:_}of Z.items){let L=vL.resolveProps($,{indicator:"seq-item-ind",next:_,offset:H,onError:Q,parentIndent:Z.indent,startOnNewline:!0});if(!L.found)if(L.anchor||L.tag||_)if(_?.type==="block-seq")Q(L.end,"BAD_INDENT","All sequence items must start at the same column");else Q(H,"MISSING_CHAR","Sequence item without - indicator");else{if(W=L.end,L.comment)J.comment=L.comment;continue}let A=_?U(q,_,L,Q):X(q,L.end,$,null,L,Q);if(q.schema.compat)xL.flowIndentCheck(Z.indent,_,Q);H=A.range[2],J.items.push(A)}return J.range=[Z.offset,H,W??H],J}uL.resolveBlockSeq=hL});var t1=D((lL)=>{function pL(U,X,q,Z){let Q="";if(U){let G=!1,Y="";for(let J of U){let{source:H,type:W}=J;switch(W){case"space":G=!0;break;case"comment":{if(q&&!G)Z(J,"MISSING_CHAR","Comments must be separated from other tokens by white space characters");let $=H.substring(1)||" ";if(!Q)Q=$;else Q+=Y+$;Y="";break}case"newline":if(Q)Y+=H;G=!0;break;default:Z(J,"UNEXPECTED_TOKEN",`Unexpected ${W} at node end`)}X+=H.length}}return{comment:Q,offset:X}}lL.resolveEnd=pL});var YQ=D((tL)=>{var cL=k(),iL=U1(),QQ=q1(),sL=Z1(),oL=t1(),GQ=e2(),rL=RU(),aL=h9(),u9="Block collections are not allowed within flow collections",m9=(U)=>U&&(U.type==="block-map"||U.type==="block-seq");function nL({composeNode:U,composeEmptyNode:X},q,Z,Q,G){let Y=Z.start.source==="{",J=Y?"flow map":"flow sequence",W=new(G?.nodeClass??(Y?QQ.YAMLMap:sL.YAMLSeq))(q.schema);W.flow=!0;let $=q.atRoot;if($)q.atRoot=!1;if(q.atKey)q.atKey=!1;let _=Z.offset+Z.start.source.length;for(let O=0;O<Z.items.length;++O){let R=Z.items[O],{start:w,key:K,sep:C,value:N}=R,b=GQ.resolveProps(w,{flow:J,indicator:"explicit-key-ind",next:K??C?.[0],offset:_,onError:Q,parentIndent:Z.indent,startOnNewline:!1});if(!b.found){if(!b.anchor&&!b.tag&&!C&&!N){if(O===0&&b.comma)Q(b.comma,"UNEXPECTED_TOKEN",`Unexpected , in ${J}`);else if(O<Z.items.length-1)Q(b.start,"UNEXPECTED_TOKEN",`Unexpected empty item in ${J}`);if(b.comment)if(W.comment)W.comment+=`
66
- `+b.comment;else W.comment=b.comment;_=b.end;continue}if(!Y&&q.options.strict&&rL.containsNewline(K))Q(K,"MULTILINE_IMPLICIT_KEY","Implicit keys of flow sequence pairs need to be on a single line")}if(O===0){if(b.comma)Q(b.comma,"UNEXPECTED_TOKEN",`Unexpected , in ${J}`)}else{if(!b.comma)Q(b.start,"MISSING_CHAR",`Missing , between ${J} items`);if(b.comment){let m="";U:for(let P of w)switch(P.type){case"comma":case"space":break;case"comment":m=P.source.substring(1);break U;default:break U}if(m){let P=W.items[W.items.length-1];if(cL.isPair(P))P=P.value??P.key;if(P.comment)P.comment+=`
67
- `+m;else P.comment=m;b.comment=b.comment.substring(m.length+1)}}}if(!Y&&!C&&!b.found){let m=N?U(q,N,b,Q):X(q,b.end,C,null,b,Q);if(W.items.push(m),_=m.range[2],m9(N))Q(m.range,"BLOCK_IN_FLOW",u9)}else{q.atKey=!0;let m=b.end,P=K?U(q,K,b,Q):X(q,m,w,null,b,Q);if(m9(K))Q(P.range,"BLOCK_IN_FLOW",u9);q.atKey=!1;let s=GQ.resolveProps(C??[],{flow:J,indicator:"map-value-ind",next:N,offset:P.range[2],onError:Q,parentIndent:Z.indent,startOnNewline:!1});if(s.found){if(!Y&&!b.found&&q.options.strict){if(C)for(let o of C){if(o===s.found)break;if(o.type==="newline"){Q(o,"MULTILINE_IMPLICIT_KEY","Implicit keys of flow sequence pairs need to be on a single line");break}}if(b.start<s.found.offset-1024)Q(s.found,"KEY_OVER_1024_CHARS","The : indicator must be at most 1024 chars after the start of an implicit flow sequence key")}}else if(N)if("source"in N&&N.source?.[0]===":")Q(N,"MISSING_CHAR",`Missing space after : in ${J}`);else Q(s.start,"MISSING_CHAR",`Missing , or : between ${J} items`);let p0=N?U(q,N,s,Q):s.found?X(q,s.end,C,null,s,Q):null;if(p0){if(m9(N))Q(p0.range,"BLOCK_IN_FLOW",u9)}else if(s.comment)if(P.comment)P.comment+=`
68
- `+s.comment;else P.comment=s.comment;let R1=new iL.Pair(P,p0);if(q.options.keepSourceTokens)R1.srcToken=R;if(Y){let o=W;if(aL.mapIncludes(q,o.items,P))Q(m,"DUPLICATE_KEY","Map keys must be unique");o.items.push(R1)}else{let o=new QQ.YAMLMap(q.schema);o.flow=!0,o.items.push(R1);let JX=(p0??P).range;o.range=[P.range[0],JX[1],JX[2]],W.items.push(o)}_=p0?p0.range[2]:s.end}}let L=Y?"}":"]",[A,...T]=Z.end,z=_;if(A?.source===L)z=A.offset+A.source.length;else{let O=J[0].toUpperCase()+J.substring(1),R=$?`${O} must end with a ${L}`:`${O} in block collection must be sufficiently indented and end with a ${L}`;if(Q(_,$?"MISSING_CHAR":"BAD_INDENT",R),A&&A.source.length!==1)T.unshift(A)}if(T.length>0){let O=oL.resolveEnd(T,z,q.options.strict,Q);if(O.comment)if(W.comment)W.comment+=`
69
- `+O.comment;else W.comment=O.comment;W.range=[Z.offset,z,O.offset]}else W.range=[Z.offset,z,z];return W}tL.resolveFlowCollection=nL});var JQ=D((Hz)=>{var Uz=k(),Xz=i(),qz=q1(),Zz=Z1(),Qz=qQ(),Gz=ZQ(),Yz=YQ();function p9(U,X,q,Z,Q,G){let Y=q.type==="block-map"?Qz.resolveBlockMap(U,X,q,Z,G):q.type==="block-seq"?Gz.resolveBlockSeq(U,X,q,Z,G):Yz.resolveFlowCollection(U,X,q,Z,G),J=Y.constructor;if(Q==="!"||Q===J.tagName)return Y.tag=J.tagName,Y;if(Q)Y.tag=Q;return Y}function Jz(U,X,q,Z,Q){let G=Z.tag,Y=!G?null:X.directives.tagName(G.source,(L)=>Q(G,"TAG_RESOLVE_FAILED",L));if(q.type==="block-seq"){let{anchor:L,newlineAfterProp:A}=Z,T=L&&G?L.offset>G.offset?L:G:L??G;if(T&&(!A||A.offset<T.offset))Q(T,"MISSING_CHAR","Missing newline after block sequence props")}let J=q.type==="block-map"?"map":q.type==="block-seq"?"seq":q.start.source==="{"?"map":"seq";if(!G||!Y||Y==="!"||Y===qz.YAMLMap.tagName&&J==="map"||Y===Zz.YAMLSeq.tagName&&J==="seq")return p9(U,X,q,Q,Y);let H=X.schema.tags.find((L)=>L.tag===Y&&L.collection===J);if(!H){let L=X.schema.knownTags[Y];if(L?.collection===J)X.schema.tags.push(Object.assign({},L,{default:!1})),H=L;else{if(L)Q(G,"BAD_COLLECTION_TYPE",`${L.tag} used for ${J} collection, but expects ${L.collection??"scalar"}`,!0);else Q(G,"TAG_RESOLVE_FAILED",`Unresolved tag: ${Y}`,!0);return p9(U,X,q,Q,Y)}}let W=p9(U,X,q,Q,Y,H),$=H.resolve?.(W,(L)=>Q(G,"TAG_RESOLVE_FAILED",L),X.options)??W,_=Uz.isNode($)?$:new Xz.Scalar($);if(_.range=W.range,_.tag=Y,H?.format)_.format=H.format;return _}Hz.composeCollection=Jz});var d9=D((zz)=>{var l9=i();function _z(U,X,q){let Z=X.offset,Q=$z(X,U.options.strict,q);if(!Q)return{value:"",type:null,comment:"",range:[Z,Z,Z]};let G=Q.mode===">"?l9.Scalar.BLOCK_FOLDED:l9.Scalar.BLOCK_LITERAL,Y=X.source?Lz(X.source):[],J=Y.length;for(let z=Y.length-1;z>=0;--z){let O=Y[z][1];if(O===""||O==="\r")J=z;else break}if(J===0){let z=Q.chomp==="+"&&Y.length>0?`
70
- `.repeat(Math.max(1,Y.length-1)):"",O=Z+Q.length;if(X.source)O+=X.source.length;return{value:z,type:G,comment:Q.comment,range:[Z,O,O]}}let H=X.indent+Q.indent,W=X.offset+Q.length,$=0;for(let z=0;z<J;++z){let[O,R]=Y[z];if(R===""||R==="\r"){if(Q.indent===0&&O.length>H)H=O.length}else{if(O.length<H)q(W+O.length,"MISSING_CHAR","Block scalars with more-indented leading empty lines must use an explicit indentation indicator");if(Q.indent===0)H=O.length;if($=z,H===0&&!U.atRoot)q(W,"BAD_INDENT","Block scalar values in collections must be indented");break}W+=O.length+R.length+1}for(let z=Y.length-1;z>=J;--z)if(Y[z][0].length>H)J=z+1;let _="",L="",A=!1;for(let z=0;z<$;++z)_+=Y[z][0].slice(H)+`
71
- `;for(let z=$;z<J;++z){let[O,R]=Y[z];W+=O.length+R.length+1;let w=R[R.length-1]==="\r";if(w)R=R.slice(0,-1);if(R&&O.length<H){let C=`Block scalar lines must not be less indented than their ${Q.indent?"explicit indentation indicator":"first line"}`;q(W-R.length-(w?2:1),"BAD_INDENT",C),O=""}if(G===l9.Scalar.BLOCK_LITERAL)_+=L+O.slice(H)+R,L=`
72
- `;else if(O.length>H||R[0]==="\t"){if(L===" ")L=`
62
+ `}};zL.YAMLError=RU;zL.YAMLParseError=o3;zL.YAMLWarning=r3;zL.prettifyError=LL});var e2=R((TL)=>{function BL(U,{flow:X,indicator:q,next:Z,offset:Q,onError:G,parentIndent:Y,startOnNewline:J}){let H=!1,W=J,$=J,_="",L="",A=!1,T=!1,z=null,V=null,D=null,w=null,K=null,C=null,N=null;for(let P of U){if(T){if(P.type!=="space"&&P.type!=="newline"&&P.type!=="comma")G(P.offset,"MISSING_CHAR","Tags and anchors must be separated from the next token by white space");T=!1}if(z){if(W&&P.type!=="comment"&&P.type!=="newline")G(z,"TAB_AS_INDENT","Tabs are not allowed as indentation");z=null}switch(P.type){case"space":if(!X&&(q!=="doc-start"||Z?.type!=="flow-collection")&&P.source.includes("\t"))z=P;$=!0;break;case"comment":{if(!$)G(P,"MISSING_CHAR","Comments must be separated from other tokens by white space characters");let s=P.source.substring(1)||" ";if(!_)_=s;else _+=L+s;L="",W=!1;break}case"newline":if(W){if(_)_+=P.source;else if(!C||q!=="seq-item-ind")H=!0}else L+=P.source;if(W=!0,A=!0,V||D)w=P;$=!0;break;case"anchor":if(V)G(P,"MULTIPLE_ANCHORS","A node can have at most one anchor");if(P.source.endsWith(":"))G(P.offset+P.source.length-1,"BAD_ALIAS","Anchor ending in : is ambiguous",!0);V=P,N??(N=P.offset),W=!1,$=!1,T=!0;break;case"tag":{if(D)G(P,"MULTIPLE_TAGS","A node can have at most one tag");D=P,N??(N=P.offset),W=!1,$=!1,T=!0;break}case q:if(V||D)G(P,"BAD_PROP_ORDER",`Anchors and tags must be after the ${P.source} indicator`);if(C)G(P,"UNEXPECTED_TOKEN",`Unexpected ${P.source} in ${X??"collection"}`);C=P,W=q==="seq-item-ind"||q==="explicit-key-ind",$=!1;break;case"comma":if(X){if(K)G(P,"UNEXPECTED_TOKEN",`Unexpected , in ${X}`);K=P,W=!1,$=!1;break}default:G(P,"UNEXPECTED_TOKEN",`Unexpected ${P.type} token`),W=!1,$=!1}}let b=U[U.length-1],m=b?b.offset+b.source.length:Q;if(T&&Z&&Z.type!=="space"&&Z.type!=="newline"&&Z.type!=="comma"&&(Z.type!=="scalar"||Z.source!==""))G(Z.offset,"MISSING_CHAR","Tags and anchors must be separated from the next token by white space");if(z&&(W&&z.indent<=Y||Z?.type==="block-map"||Z?.type==="block-seq"))G(z,"TAB_AS_INDENT","Tabs are not allowed as indentation");return{comma:K,found:C,spaceBefore:H,comment:_,hasNewline:A,anchor:V,tag:D,newlineAfterProp:w,end:m,start:N??m}}TL.resolveProps=BL});var DU=R((DL)=>{function k9(U){if(!U)return null;switch(U.type){case"alias":case"scalar":case"double-quoted-scalar":case"single-quoted-scalar":if(U.source.includes(`
63
+ `))return!0;if(U.end){for(let X of U.end)if(X.type==="newline")return!0}return!1;case"flow-collection":for(let X of U.items){for(let q of X.start)if(q.type==="newline")return!0;if(X.sep){for(let q of X.sep)if(q.type==="newline")return!0}if(k9(X.key)||k9(X.value))return!0}return!1;default:return!0}}DL.containsNewline=k9});var v9=R((IL)=>{var PL=DU();function wL(U,X,q){if(X?.type==="flow-collection"){let Z=X.end[0];if(Z.indent===U&&(Z.source==="]"||Z.source==="}")&&PL.containsNewline(X))q(Z,"BAD_INDENT","Flow end indicator should be more indented than parent",!0)}}IL.flowIndentCheck=wL});var h9=R((CL)=>{var a3=k();function NL(U,X,q){let{uniqueKeys:Z}=U.options;if(Z===!1)return!1;let Q=typeof Z==="function"?Z:(G,Y)=>G===Y||a3.isScalar(G)&&a3.isScalar(Y)&&G.value===Y.value;return X.some((G)=>Q(G.key,q))}CL.mapIncludes=NL});var XQ=R((gL)=>{var n3=U1(),EL=q1(),t3=e2(),jL=DU(),e3=v9(),bL=h9(),UQ="All mapping items must start at the same column";function fL({composeNode:U,composeEmptyNode:X},q,Z,Q,G){let J=new(G?.nodeClass??EL.YAMLMap)(q.schema);if(q.atRoot)q.atRoot=!1;let H=Z.offset,W=null;for(let $ of Z.items){let{start:_,key:L,sep:A,value:T}=$,z=t3.resolveProps(_,{indicator:"explicit-key-ind",next:L??A?.[0],offset:H,onError:Q,parentIndent:Z.indent,startOnNewline:!0}),V=!z.found;if(V){if(L){if(L.type==="block-seq")Q(H,"BLOCK_AS_IMPLICIT_KEY","A block sequence may not be used as an implicit map key");else if("indent"in L&&L.indent!==Z.indent)Q(H,"BAD_INDENT",UQ)}if(!z.anchor&&!z.tag&&!A){if(W=z.end,z.comment)if(J.comment)J.comment+=`
64
+ `+z.comment;else J.comment=z.comment;continue}if(z.newlineAfterProp||jL.containsNewline(L))Q(L??_[_.length-1],"MULTILINE_IMPLICIT_KEY","Implicit keys need to be on a single line")}else if(z.found?.indent!==Z.indent)Q(H,"BAD_INDENT",UQ);q.atKey=!0;let D=z.end,w=L?U(q,L,z,Q):X(q,D,_,null,z,Q);if(q.schema.compat)e3.flowIndentCheck(Z.indent,L,Q);if(q.atKey=!1,bL.mapIncludes(q,J.items,w))Q(D,"DUPLICATE_KEY","Map keys must be unique");let K=t3.resolveProps(A??[],{indicator:"map-value-ind",next:T,offset:w.range[2],onError:Q,parentIndent:Z.indent,startOnNewline:!L||L.type==="block-scalar"});if(H=K.end,K.found){if(V){if(T?.type==="block-map"&&!K.hasNewline)Q(H,"BLOCK_AS_IMPLICIT_KEY","Nested mappings are not allowed in compact mappings");if(q.options.strict&&z.start<K.found.offset-1024)Q(w.range,"KEY_OVER_1024_CHARS","The : indicator must be at most 1024 chars after the start of an implicit block mapping key")}let C=T?U(q,T,K,Q):X(q,H,A,null,K,Q);if(q.schema.compat)e3.flowIndentCheck(Z.indent,T,Q);H=C.range[2];let N=new n3.Pair(w,C);if(q.options.keepSourceTokens)N.srcToken=$;J.items.push(N)}else{if(V)Q(w.range,"MISSING_CHAR","Implicit map keys need to be followed by map values");if(K.comment)if(w.comment)w.comment+=`
65
+ `+K.comment;else w.comment=K.comment;let C=new n3.Pair(w);if(q.options.keepSourceTokens)C.srcToken=$;J.items.push(C)}}if(W&&W<H)Q(W,"IMPOSSIBLE","Map comment with trailing content");return J.range=[Z.offset,H,W??H],J}gL.resolveBlockMap=fL});var qQ=R((uL)=>{var kL=Z1(),vL=e2(),hL=v9();function xL({composeNode:U,composeEmptyNode:X},q,Z,Q,G){let J=new(G?.nodeClass??kL.YAMLSeq)(q.schema);if(q.atRoot)q.atRoot=!1;if(q.atKey)q.atKey=!1;let H=Z.offset,W=null;for(let{start:$,value:_}of Z.items){let L=vL.resolveProps($,{indicator:"seq-item-ind",next:_,offset:H,onError:Q,parentIndent:Z.indent,startOnNewline:!0});if(!L.found)if(L.anchor||L.tag||_)if(_?.type==="block-seq")Q(L.end,"BAD_INDENT","All sequence items must start at the same column");else Q(H,"MISSING_CHAR","Sequence item without - indicator");else{if(W=L.end,L.comment)J.comment=L.comment;continue}let A=_?U(q,_,L,Q):X(q,L.end,$,null,L,Q);if(q.schema.compat)hL.flowIndentCheck(Z.indent,_,Q);H=A.range[2],J.items.push(A)}return J.range=[Z.offset,H,W??H],J}uL.resolveBlockSeq=xL});var e1=R((lL)=>{function pL(U,X,q,Z){let Q="";if(U){let G=!1,Y="";for(let J of U){let{source:H,type:W}=J;switch(W){case"space":G=!0;break;case"comment":{if(q&&!G)Z(J,"MISSING_CHAR","Comments must be separated from other tokens by white space characters");let $=H.substring(1)||" ";if(!Q)Q=$;else Q+=Y+$;Y="";break}case"newline":if(Q)Y+=H;G=!0;break;default:Z(J,"UNEXPECTED_TOKEN",`Unexpected ${W} at node end`)}X+=H.length}}return{comment:Q,offset:X}}lL.resolveEnd=pL});var GQ=R((tL)=>{var cL=k(),iL=U1(),ZQ=q1(),sL=Z1(),oL=e1(),QQ=e2(),rL=DU(),aL=h9(),x9="Block collections are not allowed within flow collections",u9=(U)=>U&&(U.type==="block-map"||U.type==="block-seq");function nL({composeNode:U,composeEmptyNode:X},q,Z,Q,G){let Y=Z.start.source==="{",J=Y?"flow map":"flow sequence",W=new(G?.nodeClass??(Y?ZQ.YAMLMap:sL.YAMLSeq))(q.schema);W.flow=!0;let $=q.atRoot;if($)q.atRoot=!1;if(q.atKey)q.atKey=!1;let _=Z.offset+Z.start.source.length;for(let V=0;V<Z.items.length;++V){let D=Z.items[V],{start:w,key:K,sep:C,value:N}=D,b=QQ.resolveProps(w,{flow:J,indicator:"explicit-key-ind",next:K??C?.[0],offset:_,onError:Q,parentIndent:Z.indent,startOnNewline:!1});if(!b.found){if(!b.anchor&&!b.tag&&!C&&!N){if(V===0&&b.comma)Q(b.comma,"UNEXPECTED_TOKEN",`Unexpected , in ${J}`);else if(V<Z.items.length-1)Q(b.start,"UNEXPECTED_TOKEN",`Unexpected empty item in ${J}`);if(b.comment)if(W.comment)W.comment+=`
66
+ `+b.comment;else W.comment=b.comment;_=b.end;continue}if(!Y&&q.options.strict&&rL.containsNewline(K))Q(K,"MULTILINE_IMPLICIT_KEY","Implicit keys of flow sequence pairs need to be on a single line")}if(V===0){if(b.comma)Q(b.comma,"UNEXPECTED_TOKEN",`Unexpected , in ${J}`)}else{if(!b.comma)Q(b.start,"MISSING_CHAR",`Missing , between ${J} items`);if(b.comment){let m="";U:for(let P of w)switch(P.type){case"comma":case"space":break;case"comment":m=P.source.substring(1);break U;default:break U}if(m){let P=W.items[W.items.length-1];if(cL.isPair(P))P=P.value??P.key;if(P.comment)P.comment+=`
67
+ `+m;else P.comment=m;b.comment=b.comment.substring(m.length+1)}}}if(!Y&&!C&&!b.found){let m=N?U(q,N,b,Q):X(q,b.end,C,null,b,Q);if(W.items.push(m),_=m.range[2],u9(N))Q(m.range,"BLOCK_IN_FLOW",x9)}else{q.atKey=!0;let m=b.end,P=K?U(q,K,b,Q):X(q,m,w,null,b,Q);if(u9(K))Q(P.range,"BLOCK_IN_FLOW",x9);q.atKey=!1;let s=QQ.resolveProps(C??[],{flow:J,indicator:"map-value-ind",next:N,offset:P.range[2],onError:Q,parentIndent:Z.indent,startOnNewline:!1});if(s.found){if(!Y&&!b.found&&q.options.strict){if(C)for(let o of C){if(o===s.found)break;if(o.type==="newline"){Q(o,"MULTILINE_IMPLICIT_KEY","Implicit keys of flow sequence pairs need to be on a single line");break}}if(b.start<s.found.offset-1024)Q(s.found,"KEY_OVER_1024_CHARS","The : indicator must be at most 1024 chars after the start of an implicit flow sequence key")}}else if(N)if("source"in N&&N.source?.[0]===":")Q(N,"MISSING_CHAR",`Missing space after : in ${J}`);else Q(s.start,"MISSING_CHAR",`Missing , or : between ${J} items`);let p0=N?U(q,N,s,Q):s.found?X(q,s.end,C,null,s,Q):null;if(p0){if(u9(N))Q(p0.range,"BLOCK_IN_FLOW",x9)}else if(s.comment)if(P.comment)P.comment+=`
68
+ `+s.comment;else P.comment=s.comment;let D1=new iL.Pair(P,p0);if(q.options.keepSourceTokens)D1.srcToken=D;if(Y){let o=W;if(aL.mapIncludes(q,o.items,P))Q(m,"DUPLICATE_KEY","Map keys must be unique");o.items.push(D1)}else{let o=new ZQ.YAMLMap(q.schema);o.flow=!0,o.items.push(D1);let YX=(p0??P).range;o.range=[P.range[0],YX[1],YX[2]],W.items.push(o)}_=p0?p0.range[2]:s.end}}let L=Y?"}":"]",[A,...T]=Z.end,z=_;if(A?.source===L)z=A.offset+A.source.length;else{let V=J[0].toUpperCase()+J.substring(1),D=$?`${V} must end with a ${L}`:`${V} in block collection must be sufficiently indented and end with a ${L}`;if(Q(_,$?"MISSING_CHAR":"BAD_INDENT",D),A&&A.source.length!==1)T.unshift(A)}if(T.length>0){let V=oL.resolveEnd(T,z,q.options.strict,Q);if(V.comment)if(W.comment)W.comment+=`
69
+ `+V.comment;else W.comment=V.comment;W.range=[Z.offset,z,V.offset]}else W.range=[Z.offset,z,z];return W}tL.resolveFlowCollection=nL});var YQ=R((Hz)=>{var Uz=k(),Xz=i(),qz=q1(),Zz=Z1(),Qz=XQ(),Gz=qQ(),Yz=GQ();function m9(U,X,q,Z,Q,G){let Y=q.type==="block-map"?Qz.resolveBlockMap(U,X,q,Z,G):q.type==="block-seq"?Gz.resolveBlockSeq(U,X,q,Z,G):Yz.resolveFlowCollection(U,X,q,Z,G),J=Y.constructor;if(Q==="!"||Q===J.tagName)return Y.tag=J.tagName,Y;if(Q)Y.tag=Q;return Y}function Jz(U,X,q,Z,Q){let G=Z.tag,Y=!G?null:X.directives.tagName(G.source,(L)=>Q(G,"TAG_RESOLVE_FAILED",L));if(q.type==="block-seq"){let{anchor:L,newlineAfterProp:A}=Z,T=L&&G?L.offset>G.offset?L:G:L??G;if(T&&(!A||A.offset<T.offset))Q(T,"MISSING_CHAR","Missing newline after block sequence props")}let J=q.type==="block-map"?"map":q.type==="block-seq"?"seq":q.start.source==="{"?"map":"seq";if(!G||!Y||Y==="!"||Y===qz.YAMLMap.tagName&&J==="map"||Y===Zz.YAMLSeq.tagName&&J==="seq")return m9(U,X,q,Q,Y);let H=X.schema.tags.find((L)=>L.tag===Y&&L.collection===J);if(!H){let L=X.schema.knownTags[Y];if(L?.collection===J)X.schema.tags.push(Object.assign({},L,{default:!1})),H=L;else{if(L)Q(G,"BAD_COLLECTION_TYPE",`${L.tag} used for ${J} collection, but expects ${L.collection??"scalar"}`,!0);else Q(G,"TAG_RESOLVE_FAILED",`Unresolved tag: ${Y}`,!0);return m9(U,X,q,Q,Y)}}let W=m9(U,X,q,Q,Y,H),$=H.resolve?.(W,(L)=>Q(G,"TAG_RESOLVE_FAILED",L),X.options)??W,_=Uz.isNode($)?$:new Xz.Scalar($);if(_.range=W.range,_.tag=Y,H?.format)_.format=H.format;return _}Hz.composeCollection=Jz});var l9=R((zz)=>{var p9=i();function _z(U,X,q){let Z=X.offset,Q=$z(X,U.options.strict,q);if(!Q)return{value:"",type:null,comment:"",range:[Z,Z,Z]};let G=Q.mode===">"?p9.Scalar.BLOCK_FOLDED:p9.Scalar.BLOCK_LITERAL,Y=X.source?Lz(X.source):[],J=Y.length;for(let z=Y.length-1;z>=0;--z){let V=Y[z][1];if(V===""||V==="\r")J=z;else break}if(J===0){let z=Q.chomp==="+"&&Y.length>0?`
70
+ `.repeat(Math.max(1,Y.length-1)):"",V=Z+Q.length;if(X.source)V+=X.source.length;return{value:z,type:G,comment:Q.comment,range:[Z,V,V]}}let H=X.indent+Q.indent,W=X.offset+Q.length,$=0;for(let z=0;z<J;++z){let[V,D]=Y[z];if(D===""||D==="\r"){if(Q.indent===0&&V.length>H)H=V.length}else{if(V.length<H)q(W+V.length,"MISSING_CHAR","Block scalars with more-indented leading empty lines must use an explicit indentation indicator");if(Q.indent===0)H=V.length;if($=z,H===0&&!U.atRoot)q(W,"BAD_INDENT","Block scalar values in collections must be indented");break}W+=V.length+D.length+1}for(let z=Y.length-1;z>=J;--z)if(Y[z][0].length>H)J=z+1;let _="",L="",A=!1;for(let z=0;z<$;++z)_+=Y[z][0].slice(H)+`
71
+ `;for(let z=$;z<J;++z){let[V,D]=Y[z];W+=V.length+D.length+1;let w=D[D.length-1]==="\r";if(w)D=D.slice(0,-1);if(D&&V.length<H){let C=`Block scalar lines must not be less indented than their ${Q.indent?"explicit indentation indicator":"first line"}`;q(W-D.length-(w?2:1),"BAD_INDENT",C),V=""}if(G===p9.Scalar.BLOCK_LITERAL)_+=L+V.slice(H)+D,L=`
72
+ `;else if(V.length>H||D[0]==="\t"){if(L===" ")L=`
73
73
  `;else if(!A&&L===`
74
74
  `)L=`
75
75
 
76
- `;_+=L+O.slice(H)+R,L=`
77
- `,A=!0}else if(R==="")if(L===`
76
+ `;_+=L+V.slice(H)+D,L=`
77
+ `,A=!0}else if(D==="")if(L===`
78
78
  `)_+=`
79
79
  `;else L=`
80
- `;else _+=L+R,L=" ",A=!1}switch(Q.chomp){case"-":break;case"+":for(let z=J;z<Y.length;++z)_+=`
80
+ `;else _+=L+D,L=" ",A=!1}switch(Q.chomp){case"-":break;case"+":for(let z=J;z<Y.length;++z)_+=`
81
81
  `+Y[z][0].slice(H);if(_[_.length-1]!==`
82
82
  `)_+=`
83
83
  `;break;default:_+=`
84
- `}let T=Z+Q.length+X.source.length;return{value:_,type:G,comment:Q.comment,range:[Z,T,T]}}function $z({offset:U,props:X},q,Z){if(X[0].type!=="block-scalar-header")return Z(X[0],"IMPOSSIBLE","Block scalar header not found"),null;let{source:Q}=X[0],G=Q[0],Y=0,J="",H=-1;for(let L=1;L<Q.length;++L){let A=Q[L];if(!J&&(A==="-"||A==="+"))J=A;else{let T=Number(A);if(!Y&&T)Y=T;else if(H===-1)H=U+L}}if(H!==-1)Z(H,"UNEXPECTED_TOKEN",`Block scalar header includes extra characters: ${Q}`);let W=!1,$="",_=Q.length;for(let L=1;L<X.length;++L){let A=X[L];switch(A.type){case"space":W=!0;case"newline":_+=A.source.length;break;case"comment":if(q&&!W)Z(A,"MISSING_CHAR","Comments must be separated from other tokens by white space characters");_+=A.source.length,$=A.source.substring(1);break;case"error":Z(A,"UNEXPECTED_TOKEN",A.message),_+=A.source.length;break;default:{let T=`Unexpected token in block scalar header: ${A.type}`;Z(A,"UNEXPECTED_TOKEN",T);let z=A.source;if(z&&typeof z==="string")_+=z.length}}}return{mode:G,indent:Y,chomp:J,comment:$,length:_}}function Lz(U){let X=U.split(/\n( *)/),q=X[0],Z=q.match(/^( *)/),G=[Z?.[1]?[Z[1],q.slice(Z[1].length)]:["",q]];for(let Y=1;Y<X.length;Y+=2)G.push([X[Y],X[Y+1]]);return G}zz.resolveBlockScalar=_z});var i9=D((Pz)=>{var c9=i(),Az=t1();function Vz(U,X,q){let{offset:Z,type:Q,source:G,end:Y}=U,J,H,W=(L,A,T)=>q(Z+L,A,T);switch(Q){case"scalar":J=c9.Scalar.PLAIN,H=Oz(G,W);break;case"single-quoted-scalar":J=c9.Scalar.QUOTE_SINGLE,H=Bz(G,W);break;case"double-quoted-scalar":J=c9.Scalar.QUOTE_DOUBLE,H=Tz(G,W);break;default:return q(U,"UNEXPECTED_TOKEN",`Expected a flow scalar value, but found: ${Q}`),{value:"",type:null,comment:"",range:[Z,Z+G.length,Z+G.length]}}let $=Z+G.length,_=Az.resolveEnd(Y,$,X,q);return{value:H,type:J,comment:_.comment,range:[Z,$,_.offset]}}function Oz(U,X){let q="";switch(U[0]){case"\t":q="a tab character";break;case",":q="flow indicator character ,";break;case"%":q="directive indicator character %";break;case"|":case">":{q=`block scalar indicator ${U[0]}`;break}case"@":case"`":{q=`reserved character ${U[0]}`;break}}if(q)X(0,"BAD_SCALAR_START",`Plain value cannot start with ${q}`);return HQ(U)}function Bz(U,X){if(U[U.length-1]!=="'"||U.length===1)X(U.length,"MISSING_CHAR","Missing closing 'quote");return HQ(U.slice(1,-1)).replace(/''/g,"'")}function HQ(U){let X,q;try{X=new RegExp(`(.*?)(?<![ ])[ ]*\r?
84
+ `}let T=Z+Q.length+X.source.length;return{value:_,type:G,comment:Q.comment,range:[Z,T,T]}}function $z({offset:U,props:X},q,Z){if(X[0].type!=="block-scalar-header")return Z(X[0],"IMPOSSIBLE","Block scalar header not found"),null;let{source:Q}=X[0],G=Q[0],Y=0,J="",H=-1;for(let L=1;L<Q.length;++L){let A=Q[L];if(!J&&(A==="-"||A==="+"))J=A;else{let T=Number(A);if(!Y&&T)Y=T;else if(H===-1)H=U+L}}if(H!==-1)Z(H,"UNEXPECTED_TOKEN",`Block scalar header includes extra characters: ${Q}`);let W=!1,$="",_=Q.length;for(let L=1;L<X.length;++L){let A=X[L];switch(A.type){case"space":W=!0;case"newline":_+=A.source.length;break;case"comment":if(q&&!W)Z(A,"MISSING_CHAR","Comments must be separated from other tokens by white space characters");_+=A.source.length,$=A.source.substring(1);break;case"error":Z(A,"UNEXPECTED_TOKEN",A.message),_+=A.source.length;break;default:{let T=`Unexpected token in block scalar header: ${A.type}`;Z(A,"UNEXPECTED_TOKEN",T);let z=A.source;if(z&&typeof z==="string")_+=z.length}}}return{mode:G,indent:Y,chomp:J,comment:$,length:_}}function Lz(U){let X=U.split(/\n( *)/),q=X[0],Z=q.match(/^( *)/),G=[Z?.[1]?[Z[1],q.slice(Z[1].length)]:["",q]];for(let Y=1;Y<X.length;Y+=2)G.push([X[Y],X[Y+1]]);return G}zz.resolveBlockScalar=_z});var c9=R((Pz)=>{var d9=i(),Az=e1();function Oz(U,X,q){let{offset:Z,type:Q,source:G,end:Y}=U,J,H,W=(L,A,T)=>q(Z+L,A,T);switch(Q){case"scalar":J=d9.Scalar.PLAIN,H=Vz(G,W);break;case"single-quoted-scalar":J=d9.Scalar.QUOTE_SINGLE,H=Bz(G,W);break;case"double-quoted-scalar":J=d9.Scalar.QUOTE_DOUBLE,H=Tz(G,W);break;default:return q(U,"UNEXPECTED_TOKEN",`Expected a flow scalar value, but found: ${Q}`),{value:"",type:null,comment:"",range:[Z,Z+G.length,Z+G.length]}}let $=Z+G.length,_=Az.resolveEnd(Y,$,X,q);return{value:H,type:J,comment:_.comment,range:[Z,$,_.offset]}}function Vz(U,X){let q="";switch(U[0]){case"\t":q="a tab character";break;case",":q="flow indicator character ,";break;case"%":q="directive indicator character %";break;case"|":case">":{q=`block scalar indicator ${U[0]}`;break}case"@":case"`":{q=`reserved character ${U[0]}`;break}}if(q)X(0,"BAD_SCALAR_START",`Plain value cannot start with ${q}`);return JQ(U)}function Bz(U,X){if(U[U.length-1]!=="'"||U.length===1)X(U.length,"MISSING_CHAR","Missing closing 'quote");return JQ(U.slice(1,-1)).replace(/''/g,"'")}function JQ(U){let X,q;try{X=new RegExp(`(.*?)(?<![ ])[ ]*\r?
85
85
  `,"sy"),q=new RegExp(`[ ]*(.*?)(?:(?<![ ])[ ]*)?\r?
86
86
  `,"sy")}catch{X=/(.*?)[ \t]*\r?\n/sy,q=/[ \t]*(.*?)[ \t]*\r?\n/sy}let Z=X.exec(U);if(!Z)return U;let Q=Z[1],G=" ",Y=X.lastIndex;q.lastIndex=Y;while(Z=q.exec(U)){if(Z[1]==="")if(G===`
87
87
  `)Q+=G;else G=`
88
88
  `;else Q+=G+Z[1],G=" ";Y=q.lastIndex}let J=/[ \t]*(.*)/sy;return J.lastIndex=Y,Z=J.exec(U),Q+G+(Z?.[1]??"")}function Tz(U,X){let q="";for(let Z=1;Z<U.length-1;++Z){let Q=U[Z];if(Q==="\r"&&U[Z+1]===`
89
89
  `)continue;if(Q===`
90
- `){let{fold:G,offset:Y}=Dz(U,Z);q+=G,Z=Y}else if(Q==="\\"){let G=U[++Z],Y=Rz[G];if(Y)q+=Y;else if(G===`
90
+ `){let{fold:G,offset:Y}=Rz(U,Z);q+=G,Z=Y}else if(Q==="\\"){let G=U[++Z],Y=Dz[G];if(Y)q+=Y;else if(G===`
91
91
  `){G=U[Z+1];while(G===" "||G==="\t")G=U[++Z+1]}else if(G==="\r"&&U[Z+1]===`
92
92
  `){G=U[++Z+1];while(G===" "||G==="\t")G=U[++Z+1]}else if(G==="x"||G==="u"||G==="U"){let J={x:2,u:4,U:8}[G];q+=Mz(U,Z+1,J,X),Z+=J}else{let J=U.substr(Z-1,2);X(Z-1,"BAD_DQ_ESCAPE",`Invalid escape sequence ${J}`),q+=J}}else if(Q===" "||Q==="\t"){let G=Z,Y=U[Z+1];while(Y===" "||Y==="\t")Y=U[++Z+1];if(Y!==`
93
93
  `&&!(Y==="\r"&&U[Z+2]===`
94
- `))q+=Z>G?U.slice(G,Z+1):Q}else q+=Q}if(U[U.length-1]!=='"'||U.length===1)X(U.length,"MISSING_CHAR",'Missing closing "quote');return q}function Dz(U,X){let q="",Z=U[X+1];while(Z===" "||Z==="\t"||Z===`
94
+ `))q+=Z>G?U.slice(G,Z+1):Q}else q+=Q}if(U[U.length-1]!=='"'||U.length===1)X(U.length,"MISSING_CHAR",'Missing closing "quote');return q}function Rz(U,X){let q="",Z=U[X+1];while(Z===" "||Z==="\t"||Z===`
95
95
  `||Z==="\r"){if(Z==="\r"&&U[X+2]!==`
96
96
  `)break;if(Z===`
97
97
  `)q+=`
98
- `;X+=1,Z=U[X+1]}if(!q)q=" ";return{fold:q,offset:X}}var Rz={"0":"\x00",a:"\x07",b:"\b",e:"\x1B",f:"\f",n:`
99
- `,r:"\r",t:"\t",v:"\v",N:"…",_:" ",L:"\u2028",P:"\u2029"," ":" ",'"':'"',"/":"/","\\":"\\","\t":"\t"};function Mz(U,X,q,Z){let Q=U.substr(X,q),Y=Q.length===q&&/^[0-9a-fA-F]+$/.test(Q)?parseInt(Q,16):NaN;if(isNaN(Y)){let J=U.substr(X-2,q+2);return Z(X-2,"BAD_DQ_ESCAPE",`Invalid escape sequence ${J}`),J}return String.fromCodePoint(Y)}Pz.resolveFlowScalar=Vz});var _Q=D((Ez)=>{var T1=k(),WQ=i(),Iz=d9(),Kz=i9();function Nz(U,X,q,Z){let{value:Q,type:G,comment:Y,range:J}=X.type==="block-scalar"?Iz.resolveBlockScalar(U,X,Z):Kz.resolveFlowScalar(X,U.options.strict,Z),H=q?U.directives.tagName(q.source,(_)=>Z(q,"TAG_RESOLVE_FAILED",_)):null,W;if(U.options.stringKeys&&U.atKey)W=U.schema[T1.SCALAR];else if(H)W=Cz(U.schema,Q,H,q,Z);else if(X.type==="scalar")W=Sz(U,Q,X,Z);else W=U.schema[T1.SCALAR];let $;try{let _=W.resolve(Q,(L)=>Z(q??X,"TAG_RESOLVE_FAILED",L),U.options);$=T1.isScalar(_)?_:new WQ.Scalar(_)}catch(_){let L=_ instanceof Error?_.message:String(_);Z(q??X,"TAG_RESOLVE_FAILED",L),$=new WQ.Scalar(Q)}if($.range=J,$.source=Q,G)$.type=G;if(H)$.tag=H;if(W.format)$.format=W.format;if(Y)$.comment=Y;return $}function Cz(U,X,q,Z,Q){if(q==="!")return U[T1.SCALAR];let G=[];for(let J of U.tags)if(!J.collection&&J.tag===q)if(J.default&&J.test)G.push(J);else return J;for(let J of G)if(J.test?.test(X))return J;let Y=U.knownTags[q];if(Y&&!Y.collection)return U.tags.push(Object.assign({},Y,{default:!1,test:void 0})),Y;return Q(Z,"TAG_RESOLVE_FAILED",`Unresolved tag: ${q}`,q!=="tag:yaml.org,2002:str"),U[T1.SCALAR]}function Sz({atKey:U,directives:X,schema:q},Z,Q,G){let Y=q.tags.find((J)=>(J.default===!0||U&&J.default==="key")&&J.test?.test(Z))||q[T1.SCALAR];if(q.compat){let J=q.compat.find((H)=>H.default&&H.test?.test(Z))??q[T1.SCALAR];if(Y.tag!==J.tag){let H=X.tagString(Y.tag),W=X.tagString(J.tag),$=`Value may be parsed as either ${H} or ${W}`;G(Q,"TAG_RESOLVE_FAILED",$,!0)}}return Y}Ez.composeScalar=Nz});var $Q=D((fz)=>{function bz(U,X,q){if(X){q??(q=X.length);for(let Z=q-1;Z>=0;--Z){let Q=X[Z];switch(Q.type){case"space":case"comment":case"newline":U-=Q.source.length;continue}Q=X[++Z];while(Q?.type==="space")U+=Q.source.length,Q=X[++Z];break}}return U}fz.emptyScalarPosition=bz});var FQ=D((pz)=>{var yz=k2(),kz=k(),vz=JQ(),LQ=_Q(),xz=t1(),hz=$Q(),uz={composeNode:zQ,composeEmptyNode:s9};function zQ(U,X,q,Z){let Q=U.atKey,{spaceBefore:G,comment:Y,anchor:J,tag:H}=q,W,$=!0;switch(X.type){case"alias":if(W=mz(U,X,Z),J||H)Z(X,"ALIAS_PROPS","An alias node must not specify any properties");break;case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":case"block-scalar":if(W=LQ.composeScalar(U,X,H,Z),J)W.anchor=J.source.substring(1);break;case"block-map":case"block-seq":case"flow-collection":if(W=vz.composeCollection(uz,U,X,q,Z),J)W.anchor=J.source.substring(1);break;default:{let _=X.type==="error"?X.message:`Unsupported token (type: ${X.type})`;Z(X,"UNEXPECTED_TOKEN",_),W=s9(U,X.offset,void 0,null,q,Z),$=!1}}if(J&&W.anchor==="")Z(J,"BAD_ALIAS","Anchor cannot be an empty string");if(Q&&U.options.stringKeys&&(!kz.isScalar(W)||typeof W.value!=="string"||W.tag&&W.tag!=="tag:yaml.org,2002:str"))Z(H??X,"NON_STRING_KEY","With stringKeys, all keys must be strings");if(G)W.spaceBefore=!0;if(Y)if(X.type==="scalar"&&X.source==="")W.comment=Y;else W.commentBefore=Y;if(U.options.keepSourceTokens&&$)W.srcToken=X;return W}function s9(U,X,q,Z,{spaceBefore:Q,comment:G,anchor:Y,tag:J,end:H},W){let $={type:"scalar",offset:hz.emptyScalarPosition(X,q,Z),indent:-1,source:""},_=LQ.composeScalar(U,$,J,W);if(Y){if(_.anchor=Y.source.substring(1),_.anchor==="")W(Y,"BAD_ALIAS","Anchor cannot be an empty string")}if(Q)_.spaceBefore=!0;if(G)_.comment=G,_.range[2]=H;return _}function mz({options:U},{offset:X,source:q,end:Z},Q){let G=new yz.Alias(q.substring(1));if(G.source==="")Q(X,"BAD_ALIAS","Alias cannot be an empty string");if(G.source.endsWith(":"))Q(X+q.length-1,"BAD_ALIAS","Alias ending in : is ambiguous",!0);let Y=X+q.length,J=xz.resolveEnd(Z,Y,U.strict,Q);if(G.range=[X,Y,J.offset],J.comment)G.comment=J.comment;return G}pz.composeEmptyNode=s9;pz.composeNode=zQ});var VQ=D((rz)=>{var cz=n2(),AQ=FQ(),iz=t1(),sz=e2();function oz(U,X,{offset:q,start:Z,value:Q,end:G},Y){let J=Object.assign({_directives:X},U),H=new cz.Document(void 0,J),W={atKey:!1,atRoot:!0,directives:H.directives,options:H.options,schema:H.schema},$=sz.resolveProps(Z,{indicator:"doc-start",next:Q??G?.[0],offset:q,onError:Y,parentIndent:0,startOnNewline:!0});if($.found){if(H.directives.docStart=!0,Q&&(Q.type==="block-map"||Q.type==="block-seq")&&!$.hasNewline)Y($.end,"MISSING_CHAR","Block collection cannot start on same line with directives-end marker")}H.contents=Q?AQ.composeNode(W,Q,$,Y):AQ.composeEmptyNode(W,$.end,Z,null,$,Y);let _=H.contents.range[2],L=iz.resolveEnd(G,_,!1,Y);if(L.comment)H.comment=L.comment;return H.range=[q,_,L.offset],H}rz.composeDoc=oz});var o9=D((qF)=>{var nz=M1("process"),tz=t4(),ez=n2(),U6=t2(),OQ=k(),UF=VQ(),XF=t1();function X6(U){if(typeof U==="number")return[U,U+1];if(Array.isArray(U))return U.length===2?U:[U[0],U[1]];let{offset:X,source:q}=U;return[X,X+(typeof q==="string"?q.length:1)]}function BQ(U){let X="",q=!1,Z=!1;for(let Q=0;Q<U.length;++Q){let G=U[Q];switch(G[0]){case"#":X+=(X===""?"":Z?`
98
+ `;X+=1,Z=U[X+1]}if(!q)q=" ";return{fold:q,offset:X}}var Dz={"0":"\x00",a:"\x07",b:"\b",e:"\x1B",f:"\f",n:`
99
+ `,r:"\r",t:"\t",v:"\v",N:"…",_:" ",L:"\u2028",P:"\u2029"," ":" ",'"':'"',"/":"/","\\":"\\","\t":"\t"};function Mz(U,X,q,Z){let Q=U.substr(X,q),Y=Q.length===q&&/^[0-9a-fA-F]+$/.test(Q)?parseInt(Q,16):NaN;if(isNaN(Y)){let J=U.substr(X-2,q+2);return Z(X-2,"BAD_DQ_ESCAPE",`Invalid escape sequence ${J}`),J}return String.fromCodePoint(Y)}Pz.resolveFlowScalar=Oz});var WQ=R((Ez)=>{var T1=k(),HQ=i(),Iz=l9(),Kz=c9();function Nz(U,X,q,Z){let{value:Q,type:G,comment:Y,range:J}=X.type==="block-scalar"?Iz.resolveBlockScalar(U,X,Z):Kz.resolveFlowScalar(X,U.options.strict,Z),H=q?U.directives.tagName(q.source,(_)=>Z(q,"TAG_RESOLVE_FAILED",_)):null,W;if(U.options.stringKeys&&U.atKey)W=U.schema[T1.SCALAR];else if(H)W=Cz(U.schema,Q,H,q,Z);else if(X.type==="scalar")W=Sz(U,Q,X,Z);else W=U.schema[T1.SCALAR];let $;try{let _=W.resolve(Q,(L)=>Z(q??X,"TAG_RESOLVE_FAILED",L),U.options);$=T1.isScalar(_)?_:new HQ.Scalar(_)}catch(_){let L=_ instanceof Error?_.message:String(_);Z(q??X,"TAG_RESOLVE_FAILED",L),$=new HQ.Scalar(Q)}if($.range=J,$.source=Q,G)$.type=G;if(H)$.tag=H;if(W.format)$.format=W.format;if(Y)$.comment=Y;return $}function Cz(U,X,q,Z,Q){if(q==="!")return U[T1.SCALAR];let G=[];for(let J of U.tags)if(!J.collection&&J.tag===q)if(J.default&&J.test)G.push(J);else return J;for(let J of G)if(J.test?.test(X))return J;let Y=U.knownTags[q];if(Y&&!Y.collection)return U.tags.push(Object.assign({},Y,{default:!1,test:void 0})),Y;return Q(Z,"TAG_RESOLVE_FAILED",`Unresolved tag: ${q}`,q!=="tag:yaml.org,2002:str"),U[T1.SCALAR]}function Sz({atKey:U,directives:X,schema:q},Z,Q,G){let Y=q.tags.find((J)=>(J.default===!0||U&&J.default==="key")&&J.test?.test(Z))||q[T1.SCALAR];if(q.compat){let J=q.compat.find((H)=>H.default&&H.test?.test(Z))??q[T1.SCALAR];if(Y.tag!==J.tag){let H=X.tagString(Y.tag),W=X.tagString(J.tag),$=`Value may be parsed as either ${H} or ${W}`;G(Q,"TAG_RESOLVE_FAILED",$,!0)}}return Y}Ez.composeScalar=Nz});var _Q=R((fz)=>{function bz(U,X,q){if(X){q??(q=X.length);for(let Z=q-1;Z>=0;--Z){let Q=X[Z];switch(Q.type){case"space":case"comment":case"newline":U-=Q.source.length;continue}Q=X[++Z];while(Q?.type==="space")U+=Q.source.length,Q=X[++Z];break}}return U}fz.emptyScalarPosition=bz});var zQ=R((pz)=>{var yz=k2(),kz=k(),vz=YQ(),$Q=WQ(),hz=e1(),xz=_Q(),uz={composeNode:LQ,composeEmptyNode:i9};function LQ(U,X,q,Z){let Q=U.atKey,{spaceBefore:G,comment:Y,anchor:J,tag:H}=q,W,$=!0;switch(X.type){case"alias":if(W=mz(U,X,Z),J||H)Z(X,"ALIAS_PROPS","An alias node must not specify any properties");break;case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":case"block-scalar":if(W=$Q.composeScalar(U,X,H,Z),J)W.anchor=J.source.substring(1);break;case"block-map":case"block-seq":case"flow-collection":if(W=vz.composeCollection(uz,U,X,q,Z),J)W.anchor=J.source.substring(1);break;default:{let _=X.type==="error"?X.message:`Unsupported token (type: ${X.type})`;Z(X,"UNEXPECTED_TOKEN",_),W=i9(U,X.offset,void 0,null,q,Z),$=!1}}if(J&&W.anchor==="")Z(J,"BAD_ALIAS","Anchor cannot be an empty string");if(Q&&U.options.stringKeys&&(!kz.isScalar(W)||typeof W.value!=="string"||W.tag&&W.tag!=="tag:yaml.org,2002:str"))Z(H??X,"NON_STRING_KEY","With stringKeys, all keys must be strings");if(G)W.spaceBefore=!0;if(Y)if(X.type==="scalar"&&X.source==="")W.comment=Y;else W.commentBefore=Y;if(U.options.keepSourceTokens&&$)W.srcToken=X;return W}function i9(U,X,q,Z,{spaceBefore:Q,comment:G,anchor:Y,tag:J,end:H},W){let $={type:"scalar",offset:xz.emptyScalarPosition(X,q,Z),indent:-1,source:""},_=$Q.composeScalar(U,$,J,W);if(Y){if(_.anchor=Y.source.substring(1),_.anchor==="")W(Y,"BAD_ALIAS","Anchor cannot be an empty string")}if(Q)_.spaceBefore=!0;if(G)_.comment=G,_.range[2]=H;return _}function mz({options:U},{offset:X,source:q,end:Z},Q){let G=new yz.Alias(q.substring(1));if(G.source==="")Q(X,"BAD_ALIAS","Alias cannot be an empty string");if(G.source.endsWith(":"))Q(X+q.length-1,"BAD_ALIAS","Alias ending in : is ambiguous",!0);let Y=X+q.length,J=hz.resolveEnd(Z,Y,U.strict,Q);if(G.range=[X,Y,J.offset],J.comment)G.comment=J.comment;return G}pz.composeEmptyNode=i9;pz.composeNode=LQ});var AQ=R((rz)=>{var cz=n2(),FQ=zQ(),iz=e1(),sz=e2();function oz(U,X,{offset:q,start:Z,value:Q,end:G},Y){let J=Object.assign({_directives:X},U),H=new cz.Document(void 0,J),W={atKey:!1,atRoot:!0,directives:H.directives,options:H.options,schema:H.schema},$=sz.resolveProps(Z,{indicator:"doc-start",next:Q??G?.[0],offset:q,onError:Y,parentIndent:0,startOnNewline:!0});if($.found){if(H.directives.docStart=!0,Q&&(Q.type==="block-map"||Q.type==="block-seq")&&!$.hasNewline)Y($.end,"MISSING_CHAR","Block collection cannot start on same line with directives-end marker")}H.contents=Q?FQ.composeNode(W,Q,$,Y):FQ.composeEmptyNode(W,$.end,Z,null,$,Y);let _=H.contents.range[2],L=iz.resolveEnd(G,_,!1,Y);if(L.comment)H.comment=L.comment;return H.range=[q,_,L.offset],H}rz.composeDoc=oz});var s9=R((qF)=>{var nz=M1("process"),tz=n4(),ez=n2(),U6=t2(),OQ=k(),UF=AQ(),XF=e1();function X6(U){if(typeof U==="number")return[U,U+1];if(Array.isArray(U))return U.length===2?U:[U[0],U[1]];let{offset:X,source:q}=U;return[X,X+(typeof q==="string"?q.length:1)]}function VQ(U){let X="",q=!1,Z=!1;for(let Q=0;Q<U.length;++Q){let G=U[Q];switch(G[0]){case"#":X+=(X===""?"":Z?`
100
100
 
101
101
  `:`
102
- `)+(G.substring(1)||" "),q=!0,Z=!1;break;case"%":if(U[Q+1]?.[0]!=="#")Q+=1;q=!1;break;default:if(!q)Z=!0;q=!1}}return{comment:X,afterEmptyLine:Z}}class TQ{constructor(U={}){this.doc=null,this.atDirectives=!1,this.prelude=[],this.errors=[],this.warnings=[],this.onError=(X,q,Z,Q)=>{let G=X6(X);if(Q)this.warnings.push(new U6.YAMLWarning(G,q,Z));else this.errors.push(new U6.YAMLParseError(G,q,Z))},this.directives=new tz.Directives({version:U.version||"1.2"}),this.options=U}decorate(U,X){let{comment:q,afterEmptyLine:Z}=BQ(this.prelude);if(q){let Q=U.contents;if(X)U.comment=U.comment?`${U.comment}
102
+ `)+(G.substring(1)||" "),q=!0,Z=!1;break;case"%":if(U[Q+1]?.[0]!=="#")Q+=1;q=!1;break;default:if(!q)Z=!0;q=!1}}return{comment:X,afterEmptyLine:Z}}class BQ{constructor(U={}){this.doc=null,this.atDirectives=!1,this.prelude=[],this.errors=[],this.warnings=[],this.onError=(X,q,Z,Q)=>{let G=X6(X);if(Q)this.warnings.push(new U6.YAMLWarning(G,q,Z));else this.errors.push(new U6.YAMLParseError(G,q,Z))},this.directives=new tz.Directives({version:U.version||"1.2"}),this.options=U}decorate(U,X){let{comment:q,afterEmptyLine:Z}=VQ(this.prelude);if(q){let Q=U.contents;if(X)U.comment=U.comment?`${U.comment}
103
103
  ${q}`:q;else if(Z||U.directives.docStart||!Q)U.commentBefore=q;else if(OQ.isCollection(Q)&&!Q.flow&&Q.items.length>0){let G=Q.items[0];if(OQ.isPair(G))G=G.key;let Y=G.commentBefore;G.commentBefore=Y?`${q}
104
104
  ${Y}`:q}else{let G=Q.commentBefore;Q.commentBefore=G?`${q}
105
- ${G}`:q}}if(X)Array.prototype.push.apply(U.errors,this.errors),Array.prototype.push.apply(U.warnings,this.warnings);else U.errors=this.errors,U.warnings=this.warnings;this.prelude=[],this.errors=[],this.warnings=[]}streamInfo(){return{comment:BQ(this.prelude).comment,directives:this.directives,errors:this.errors,warnings:this.warnings}}*compose(U,X=!1,q=-1){for(let Z of U)yield*this.next(Z);yield*this.end(X,q)}*next(U){if(nz.env.LOG_STREAM)console.dir(U,{depth:null});switch(U.type){case"directive":this.directives.add(U.source,(X,q,Z)=>{let Q=X6(U);Q[0]+=X,this.onError(Q,"BAD_DIRECTIVE",q,Z)}),this.prelude.push(U.source),this.atDirectives=!0;break;case"document":{let X=UF.composeDoc(this.options,this.directives,U,this.onError);if(this.atDirectives&&!X.directives.docStart)this.onError(U,"MISSING_CHAR","Missing directives-end/doc-start indicator line");if(this.decorate(X,!1),this.doc)yield this.doc;this.doc=X,this.atDirectives=!1;break}case"byte-order-mark":case"space":break;case"comment":case"newline":this.prelude.push(U.source);break;case"error":{let X=U.source?`${U.message}: ${JSON.stringify(U.source)}`:U.message,q=new U6.YAMLParseError(X6(U),"UNEXPECTED_TOKEN",X);if(this.atDirectives||!this.doc)this.errors.push(q);else this.doc.errors.push(q);break}case"doc-end":{if(!this.doc){this.errors.push(new U6.YAMLParseError(X6(U),"UNEXPECTED_TOKEN","Unexpected doc-end without preceding document"));break}this.doc.directives.docEnd=!0;let X=XF.resolveEnd(U.end,U.offset+U.source.length,this.doc.options.strict,this.onError);if(this.decorate(this.doc,!0),X.comment){let q=this.doc.comment;this.doc.comment=q?`${q}
106
- ${X.comment}`:X.comment}this.doc.range[2]=X.offset;break}default:this.errors.push(new U6.YAMLParseError(X6(U),"UNEXPECTED_TOKEN",`Unsupported token ${U.type}`))}}*end(U=!1,X=-1){if(this.doc)this.decorate(this.doc,!0),yield this.doc,this.doc=null;else if(U){let q=Object.assign({_directives:this.directives},this.options),Z=new ez.Document(void 0,q);if(this.atDirectives)this.onError(X,"MISSING_CHAR","Missing directives-end indicator line");Z.range=[0,X,X],this.decorate(Z,!1),yield Z}}}qF.Composer=TQ});var MQ=D(($F)=>{var QF=d9(),GF=i9(),YF=t2(),DQ=u2();function JF(U,X=!0,q){if(U){let Z=(Q,G,Y)=>{let J=typeof Q==="number"?Q:Array.isArray(Q)?Q[0]:Q.offset;if(q)q(J,G,Y);else throw new YF.YAMLParseError([J,J+1],G,Y)};switch(U.type){case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return GF.resolveFlowScalar(U,X,Z);case"block-scalar":return QF.resolveBlockScalar({options:{strict:X}},U,Z)}}return null}function HF(U,X){let{implicitKey:q=!1,indent:Z,inFlow:Q=!1,offset:G=-1,type:Y="PLAIN"}=X,J=DQ.stringifyString({type:Y,value:U},{implicitKey:q,indent:Z>0?" ".repeat(Z):"",inFlow:Q,options:{blockQuote:!0,lineWidth:-1}}),H=X.end??[{type:"newline",offset:-1,indent:Z,source:`
105
+ ${G}`:q}}if(X)Array.prototype.push.apply(U.errors,this.errors),Array.prototype.push.apply(U.warnings,this.warnings);else U.errors=this.errors,U.warnings=this.warnings;this.prelude=[],this.errors=[],this.warnings=[]}streamInfo(){return{comment:VQ(this.prelude).comment,directives:this.directives,errors:this.errors,warnings:this.warnings}}*compose(U,X=!1,q=-1){for(let Z of U)yield*this.next(Z);yield*this.end(X,q)}*next(U){if(nz.env.LOG_STREAM)console.dir(U,{depth:null});switch(U.type){case"directive":this.directives.add(U.source,(X,q,Z)=>{let Q=X6(U);Q[0]+=X,this.onError(Q,"BAD_DIRECTIVE",q,Z)}),this.prelude.push(U.source),this.atDirectives=!0;break;case"document":{let X=UF.composeDoc(this.options,this.directives,U,this.onError);if(this.atDirectives&&!X.directives.docStart)this.onError(U,"MISSING_CHAR","Missing directives-end/doc-start indicator line");if(this.decorate(X,!1),this.doc)yield this.doc;this.doc=X,this.atDirectives=!1;break}case"byte-order-mark":case"space":break;case"comment":case"newline":this.prelude.push(U.source);break;case"error":{let X=U.source?`${U.message}: ${JSON.stringify(U.source)}`:U.message,q=new U6.YAMLParseError(X6(U),"UNEXPECTED_TOKEN",X);if(this.atDirectives||!this.doc)this.errors.push(q);else this.doc.errors.push(q);break}case"doc-end":{if(!this.doc){this.errors.push(new U6.YAMLParseError(X6(U),"UNEXPECTED_TOKEN","Unexpected doc-end without preceding document"));break}this.doc.directives.docEnd=!0;let X=XF.resolveEnd(U.end,U.offset+U.source.length,this.doc.options.strict,this.onError);if(this.decorate(this.doc,!0),X.comment){let q=this.doc.comment;this.doc.comment=q?`${q}
106
+ ${X.comment}`:X.comment}this.doc.range[2]=X.offset;break}default:this.errors.push(new U6.YAMLParseError(X6(U),"UNEXPECTED_TOKEN",`Unsupported token ${U.type}`))}}*end(U=!1,X=-1){if(this.doc)this.decorate(this.doc,!0),yield this.doc,this.doc=null;else if(U){let q=Object.assign({_directives:this.directives},this.options),Z=new ez.Document(void 0,q);if(this.atDirectives)this.onError(X,"MISSING_CHAR","Missing directives-end indicator line");Z.range=[0,X,X],this.decorate(Z,!1),yield Z}}}qF.Composer=BQ});var DQ=R(($F)=>{var QF=l9(),GF=c9(),YF=t2(),TQ=u2();function JF(U,X=!0,q){if(U){let Z=(Q,G,Y)=>{let J=typeof Q==="number"?Q:Array.isArray(Q)?Q[0]:Q.offset;if(q)q(J,G,Y);else throw new YF.YAMLParseError([J,J+1],G,Y)};switch(U.type){case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return GF.resolveFlowScalar(U,X,Z);case"block-scalar":return QF.resolveBlockScalar({options:{strict:X}},U,Z)}}return null}function HF(U,X){let{implicitKey:q=!1,indent:Z,inFlow:Q=!1,offset:G=-1,type:Y="PLAIN"}=X,J=TQ.stringifyString({type:Y,value:U},{implicitKey:q,indent:Z>0?" ".repeat(Z):"",inFlow:Q,options:{blockQuote:!0,lineWidth:-1}}),H=X.end??[{type:"newline",offset:-1,indent:Z,source:`
107
107
  `}];switch(J[0]){case"|":case">":{let W=J.indexOf(`
108
108
  `),$=J.substring(0,W),_=J.substring(W+1)+`
109
109
  `,L=[{type:"block-scalar-header",offset:G,indent:Z,source:$}];if(!RQ(L,H))L.push({type:"newline",offset:-1,indent:Z,source:`
110
- `});return{type:"block-scalar",offset:G,indent:Z,props:L,source:_}}case'"':return{type:"double-quoted-scalar",offset:G,indent:Z,source:J,end:H};case"'":return{type:"single-quoted-scalar",offset:G,indent:Z,source:J,end:H};default:return{type:"scalar",offset:G,indent:Z,source:J,end:H}}}function WF(U,X,q={}){let{afterKey:Z=!1,implicitKey:Q=!1,inFlow:G=!1,type:Y}=q,J="indent"in U?U.indent:null;if(Z&&typeof J==="number")J+=2;if(!Y)switch(U.type){case"single-quoted-scalar":Y="QUOTE_SINGLE";break;case"double-quoted-scalar":Y="QUOTE_DOUBLE";break;case"block-scalar":{let W=U.props[0];if(W.type!=="block-scalar-header")throw Error("Invalid block scalar header");Y=W.source[0]===">"?"BLOCK_FOLDED":"BLOCK_LITERAL";break}default:Y="PLAIN"}let H=DQ.stringifyString({type:Y,value:X},{implicitKey:Q||J===null,indent:J!==null&&J>0?" ".repeat(J):"",inFlow:G,options:{blockQuote:!0,lineWidth:-1}});switch(H[0]){case"|":case">":_F(U,H);break;case'"':r9(U,H,"double-quoted-scalar");break;case"'":r9(U,H,"single-quoted-scalar");break;default:r9(U,H,"scalar")}}function _F(U,X){let q=X.indexOf(`
110
+ `});return{type:"block-scalar",offset:G,indent:Z,props:L,source:_}}case'"':return{type:"double-quoted-scalar",offset:G,indent:Z,source:J,end:H};case"'":return{type:"single-quoted-scalar",offset:G,indent:Z,source:J,end:H};default:return{type:"scalar",offset:G,indent:Z,source:J,end:H}}}function WF(U,X,q={}){let{afterKey:Z=!1,implicitKey:Q=!1,inFlow:G=!1,type:Y}=q,J="indent"in U?U.indent:null;if(Z&&typeof J==="number")J+=2;if(!Y)switch(U.type){case"single-quoted-scalar":Y="QUOTE_SINGLE";break;case"double-quoted-scalar":Y="QUOTE_DOUBLE";break;case"block-scalar":{let W=U.props[0];if(W.type!=="block-scalar-header")throw Error("Invalid block scalar header");Y=W.source[0]===">"?"BLOCK_FOLDED":"BLOCK_LITERAL";break}default:Y="PLAIN"}let H=TQ.stringifyString({type:Y,value:X},{implicitKey:Q||J===null,indent:J!==null&&J>0?" ".repeat(J):"",inFlow:G,options:{blockQuote:!0,lineWidth:-1}});switch(H[0]){case"|":case">":_F(U,H);break;case'"':o9(U,H,"double-quoted-scalar");break;case"'":o9(U,H,"single-quoted-scalar");break;default:o9(U,H,"scalar")}}function _F(U,X){let q=X.indexOf(`
111
111
  `),Z=X.substring(0,q),Q=X.substring(q+1)+`
112
112
  `;if(U.type==="block-scalar"){let G=U.props[0];if(G.type!=="block-scalar-header")throw Error("Invalid block scalar header");G.source=Z,U.source=Q}else{let{offset:G}=U,Y="indent"in U?U.indent:-1,J=[{type:"block-scalar-header",offset:G,indent:Y,source:Z}];if(!RQ(J,"end"in U?U.end:void 0))J.push({type:"newline",offset:-1,indent:Y,source:`
113
- `});for(let H of Object.keys(U))if(H!=="type"&&H!=="offset")delete U[H];Object.assign(U,{type:"block-scalar",indent:Y,props:J,source:Q})}}function RQ(U,X){if(X)for(let q of X)switch(q.type){case"space":case"comment":U.push(q);break;case"newline":return U.push(q),!0}return!1}function r9(U,X,q){switch(U.type){case"scalar":case"double-quoted-scalar":case"single-quoted-scalar":U.type=q,U.source=X;break;case"block-scalar":{let Z=U.props.slice(1),Q=X.length;if(U.props[0].type==="block-scalar-header")Q-=U.props[0].source.length;for(let G of Z)G.offset+=Q;delete U.props,Object.assign(U,{type:q,source:X,end:Z});break}case"block-map":case"block-seq":{let Q={type:"newline",offset:U.offset+X.length,indent:U.indent,source:`
114
- `};delete U.items,Object.assign(U,{type:q,source:X,end:[Q]});break}default:{let Z="indent"in U?U.indent:-1,Q="end"in U&&Array.isArray(U.end)?U.end.filter((G)=>G.type==="space"||G.type==="comment"||G.type==="newline"):[];for(let G of Object.keys(U))if(G!=="type"&&G!=="offset")delete U[G];Object.assign(U,{type:q,indent:Z,source:X,end:Q})}}}$F.createScalarToken=HF;$F.resolveAsScalar=JF;$F.setScalarValue=WF});var PQ=D((VF)=>{var AF=(U)=>("type"in U)?PU(U):MU(U);function PU(U){switch(U.type){case"block-scalar":{let X="";for(let q of U.props)X+=PU(q);return X+U.source}case"block-map":case"block-seq":{let X="";for(let q of U.items)X+=MU(q);return X}case"flow-collection":{let X=U.start.source;for(let q of U.items)X+=MU(q);for(let q of U.end)X+=q.source;return X}case"document":{let X=MU(U);if(U.end)for(let q of U.end)X+=q.source;return X}default:{let X=U.source;if("end"in U&&U.end)for(let q of U.end)X+=q.source;return X}}}function MU({start:U,key:X,sep:q,value:Z}){let Q="";for(let G of U)Q+=G.source;if(X)Q+=PU(X);if(q)for(let G of q)Q+=G.source;if(Z)Q+=PU(Z);return Q}VF.stringify=AF});var KQ=D((TF)=>{var a9=Symbol("break visit"),BF=Symbol("skip children"),wQ=Symbol("remove item");function D1(U,X){if("type"in U&&U.type==="document")U={start:U.start,value:U.value};IQ(Object.freeze([]),U,X)}D1.BREAK=a9;D1.SKIP=BF;D1.REMOVE=wQ;D1.itemAtPath=(U,X)=>{let q=U;for(let[Z,Q]of X){let G=q?.[Z];if(G&&"items"in G)q=G.items[Q];else return}return q};D1.parentCollection=(U,X)=>{let q=D1.itemAtPath(U,X.slice(0,-1)),Z=X[X.length-1][0],Q=q?.[Z];if(Q&&"items"in Q)return Q;throw Error("Parent collection not found")};function IQ(U,X,q){let Z=q(X,U);if(typeof Z==="symbol")return Z;for(let Q of["key","value"]){let G=X[Q];if(G&&"items"in G){for(let Y=0;Y<G.items.length;++Y){let J=IQ(Object.freeze(U.concat([[Q,Y]])),G.items[Y],q);if(typeof J==="number")Y=J-1;else if(J===a9)return a9;else if(J===wQ)G.items.splice(Y,1),Y-=1}if(typeof Z==="function"&&Q==="key")Z=Z(X,U)}}return typeof Z==="function"?Z(X,U):Z}TF.visit=D1});var wU=D((NF)=>{var n9=MQ(),RF=PQ(),MF=KQ(),t9="\uFEFF",e9="\x02",UX="\x18",XX="\x1F",PF=(U)=>!!U&&("items"in U),wF=(U)=>!!U&&(U.type==="scalar"||U.type==="single-quoted-scalar"||U.type==="double-quoted-scalar"||U.type==="block-scalar");function IF(U){switch(U){case t9:return"<BOM>";case e9:return"<DOC>";case UX:return"<FLOW_END>";case XX:return"<SCALAR>";default:return JSON.stringify(U)}}function KF(U){switch(U){case t9:return"byte-order-mark";case e9:return"doc-mode";case UX:return"flow-error-end";case XX:return"scalar";case"---":return"doc-start";case"...":return"doc-end";case"":case`
113
+ `});for(let H of Object.keys(U))if(H!=="type"&&H!=="offset")delete U[H];Object.assign(U,{type:"block-scalar",indent:Y,props:J,source:Q})}}function RQ(U,X){if(X)for(let q of X)switch(q.type){case"space":case"comment":U.push(q);break;case"newline":return U.push(q),!0}return!1}function o9(U,X,q){switch(U.type){case"scalar":case"double-quoted-scalar":case"single-quoted-scalar":U.type=q,U.source=X;break;case"block-scalar":{let Z=U.props.slice(1),Q=X.length;if(U.props[0].type==="block-scalar-header")Q-=U.props[0].source.length;for(let G of Z)G.offset+=Q;delete U.props,Object.assign(U,{type:q,source:X,end:Z});break}case"block-map":case"block-seq":{let Q={type:"newline",offset:U.offset+X.length,indent:U.indent,source:`
114
+ `};delete U.items,Object.assign(U,{type:q,source:X,end:[Q]});break}default:{let Z="indent"in U?U.indent:-1,Q="end"in U&&Array.isArray(U.end)?U.end.filter((G)=>G.type==="space"||G.type==="comment"||G.type==="newline"):[];for(let G of Object.keys(U))if(G!=="type"&&G!=="offset")delete U[G];Object.assign(U,{type:q,indent:Z,source:X,end:Q})}}}$F.createScalarToken=HF;$F.resolveAsScalar=JF;$F.setScalarValue=WF});var MQ=R((OF)=>{var AF=(U)=>("type"in U)?PU(U):MU(U);function PU(U){switch(U.type){case"block-scalar":{let X="";for(let q of U.props)X+=PU(q);return X+U.source}case"block-map":case"block-seq":{let X="";for(let q of U.items)X+=MU(q);return X}case"flow-collection":{let X=U.start.source;for(let q of U.items)X+=MU(q);for(let q of U.end)X+=q.source;return X}case"document":{let X=MU(U);if(U.end)for(let q of U.end)X+=q.source;return X}default:{let X=U.source;if("end"in U&&U.end)for(let q of U.end)X+=q.source;return X}}}function MU({start:U,key:X,sep:q,value:Z}){let Q="";for(let G of U)Q+=G.source;if(X)Q+=PU(X);if(q)for(let G of q)Q+=G.source;if(Z)Q+=PU(Z);return Q}OF.stringify=AF});var IQ=R((TF)=>{var r9=Symbol("break visit"),BF=Symbol("skip children"),PQ=Symbol("remove item");function R1(U,X){if("type"in U&&U.type==="document")U={start:U.start,value:U.value};wQ(Object.freeze([]),U,X)}R1.BREAK=r9;R1.SKIP=BF;R1.REMOVE=PQ;R1.itemAtPath=(U,X)=>{let q=U;for(let[Z,Q]of X){let G=q?.[Z];if(G&&"items"in G)q=G.items[Q];else return}return q};R1.parentCollection=(U,X)=>{let q=R1.itemAtPath(U,X.slice(0,-1)),Z=X[X.length-1][0],Q=q?.[Z];if(Q&&"items"in Q)return Q;throw Error("Parent collection not found")};function wQ(U,X,q){let Z=q(X,U);if(typeof Z==="symbol")return Z;for(let Q of["key","value"]){let G=X[Q];if(G&&"items"in G){for(let Y=0;Y<G.items.length;++Y){let J=wQ(Object.freeze(U.concat([[Q,Y]])),G.items[Y],q);if(typeof J==="number")Y=J-1;else if(J===r9)return r9;else if(J===PQ)G.items.splice(Y,1),Y-=1}if(typeof Z==="function"&&Q==="key")Z=Z(X,U)}}return typeof Z==="function"?Z(X,U):Z}TF.visit=R1});var wU=R((NF)=>{var a9=DQ(),DF=MQ(),MF=IQ(),n9="\uFEFF",t9="\x02",e9="\x18",UX="\x1F",PF=(U)=>!!U&&("items"in U),wF=(U)=>!!U&&(U.type==="scalar"||U.type==="single-quoted-scalar"||U.type==="double-quoted-scalar"||U.type==="block-scalar");function IF(U){switch(U){case n9:return"<BOM>";case t9:return"<DOC>";case e9:return"<FLOW_END>";case UX:return"<SCALAR>";default:return JSON.stringify(U)}}function KF(U){switch(U){case n9:return"byte-order-mark";case t9:return"doc-mode";case e9:return"flow-error-end";case UX:return"scalar";case"---":return"doc-start";case"...":return"doc-end";case"":case`
115
115
  `:case`\r
116
- `:return"newline";case"-":return"seq-item-ind";case"?":return"explicit-key-ind";case":":return"map-value-ind";case"{":return"flow-map-start";case"}":return"flow-map-end";case"[":return"flow-seq-start";case"]":return"flow-seq-end";case",":return"comma"}switch(U[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}NF.createScalarToken=n9.createScalarToken;NF.resolveAsScalar=n9.resolveAsScalar;NF.setScalarValue=n9.setScalarValue;NF.stringify=RF.stringify;NF.visit=MF.visit;NF.BOM=t9;NF.DOCUMENT=e9;NF.FLOW_END=UX;NF.SCALAR=XX;NF.isCollection=PF;NF.isScalar=wF;NF.prettyToken=IF;NF.tokenType=KF});var ZX=D((lF)=>{var q6=wU();function K0(U){switch(U){case void 0:case" ":case`
117
- `:case"\r":case"\t":return!0;default:return!1}}var NQ=new Set("0123456789ABCDEFabcdef"),mF=new Set("0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-#;/?:@&=+$_.!~*'()"),IU=new Set(",[]{}"),pF=new Set(` ,[]{}
118
- \r `),qX=(U)=>!U||pF.has(U);class CQ{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(U,X=!1){if(U){if(typeof U!=="string")throw TypeError("source is not a string");this.buffer=this.buffer?this.buffer+U:U,this.lineEndPos=null}this.atEnd=!X;let q=this.next??"stream";while(q&&(X||this.hasChars(1)))q=yield*this.parseNext(q)}atLineEnd(){let U=this.pos,X=this.buffer[U];while(X===" "||X==="\t")X=this.buffer[++U];if(!X||X==="#"||X===`
116
+ `:return"newline";case"-":return"seq-item-ind";case"?":return"explicit-key-ind";case":":return"map-value-ind";case"{":return"flow-map-start";case"}":return"flow-map-end";case"[":return"flow-seq-start";case"]":return"flow-seq-end";case",":return"comma"}switch(U[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}NF.createScalarToken=a9.createScalarToken;NF.resolveAsScalar=a9.resolveAsScalar;NF.setScalarValue=a9.setScalarValue;NF.stringify=DF.stringify;NF.visit=MF.visit;NF.BOM=n9;NF.DOCUMENT=t9;NF.FLOW_END=e9;NF.SCALAR=UX;NF.isCollection=PF;NF.isScalar=wF;NF.prettyToken=IF;NF.tokenType=KF});var qX=R((lF)=>{var q6=wU();function K0(U){switch(U){case void 0:case" ":case`
117
+ `:case"\r":case"\t":return!0;default:return!1}}var KQ=new Set("0123456789ABCDEFabcdef"),mF=new Set("0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-#;/?:@&=+$_.!~*'()"),IU=new Set(",[]{}"),pF=new Set(` ,[]{}
118
+ \r `),XX=(U)=>!U||pF.has(U);class NQ{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(U,X=!1){if(U){if(typeof U!=="string")throw TypeError("source is not a string");this.buffer=this.buffer?this.buffer+U:U,this.lineEndPos=null}this.atEnd=!X;let q=this.next??"stream";while(q&&(X||this.hasChars(1)))q=yield*this.parseNext(q)}atLineEnd(){let U=this.pos,X=this.buffer[U];while(X===" "||X==="\t")X=this.buffer[++U];if(!X||X==="#"||X===`
119
119
  `)return!0;if(X==="\r")return this.buffer[U+1]===`
120
120
  `;return!1}charAt(U){return this.buffer[this.pos+U]}continueScalar(U){let X=this.buffer[U];if(this.indentNext>0){let q=0;while(X===" ")X=this.buffer[++q+U];if(X==="\r"){let Z=this.buffer[q+U+1];if(Z===`
121
121
  `||!Z&&!this.atEnd)return U+q+1}return X===`
122
122
  `||q>=this.indentNext||!X&&!this.atEnd?U+q:-1}if(X==="-"||X==="."){let q=this.buffer.substr(U,3);if((q==="---"||q==="...")&&K0(this.buffer[U+3]))return-1}return U}getLine(){let U=this.lineEndPos;if(typeof U!=="number"||U!==-1&&U<this.pos)U=this.buffer.indexOf(`
123
- `,this.pos),this.lineEndPos=U;if(U===-1)return this.atEnd?this.buffer.substring(this.pos):null;if(this.buffer[U-1]==="\r")U-=1;return this.buffer.substring(this.pos,U)}hasChars(U){return this.pos+U<=this.buffer.length}setNext(U){return this.buffer=this.buffer.substring(this.pos),this.pos=0,this.lineEndPos=null,this.next=U,null}peek(U){return this.buffer.substr(this.pos,U)}*parseNext(U){switch(U){case"stream":return yield*this.parseStream();case"line-start":return yield*this.parseLineStart();case"block-start":return yield*this.parseBlockStart();case"doc":return yield*this.parseDocument();case"flow":return yield*this.parseFlowCollection();case"quoted-scalar":return yield*this.parseQuotedScalar();case"block-scalar":return yield*this.parseBlockScalar();case"plain-scalar":return yield*this.parsePlainScalar()}}*parseStream(){let U=this.getLine();if(U===null)return this.setNext("stream");if(U[0]===q6.BOM)yield*this.pushCount(1),U=U.substring(1);if(U[0]==="%"){let X=U.length,q=U.indexOf("#");while(q!==-1){let Q=U[q-1];if(Q===" "||Q==="\t"){X=q-1;break}else q=U.indexOf("#",q+1)}while(!0){let Q=U[X-1];if(Q===" "||Q==="\t")X-=1;else break}let Z=(yield*this.pushCount(X))+(yield*this.pushSpaces(!0));return yield*this.pushCount(U.length-Z),this.pushNewline(),"stream"}if(this.atLineEnd()){let X=yield*this.pushSpaces(!0);return yield*this.pushCount(U.length-X),yield*this.pushNewline(),"stream"}return yield q6.DOCUMENT,yield*this.parseLineStart()}*parseLineStart(){let U=this.charAt(0);if(!U&&!this.atEnd)return this.setNext("line-start");if(U==="-"||U==="."){if(!this.atEnd&&!this.hasChars(4))return this.setNext("line-start");let X=this.peek(3);if((X==="---"||X==="...")&&K0(this.charAt(3)))return yield*this.pushCount(3),this.indentValue=0,this.indentNext=0,X==="---"?"doc":"stream"}if(this.indentValue=yield*this.pushSpaces(!1),this.indentNext>this.indentValue&&!K0(this.charAt(1)))this.indentNext=this.indentValue;return yield*this.parseBlockStart()}*parseBlockStart(){let[U,X]=this.peek(2);if(!X&&!this.atEnd)return this.setNext("block-start");if((U==="-"||U==="?"||U===":")&&K0(X)){let q=(yield*this.pushCount(1))+(yield*this.pushSpaces(!0));return this.indentNext=this.indentValue+1,this.indentValue+=q,yield*this.parseBlockStart()}return"doc"}*parseDocument(){yield*this.pushSpaces(!0);let U=this.getLine();if(U===null)return this.setNext("doc");let X=yield*this.pushIndicators();switch(U[X]){case"#":yield*this.pushCount(U.length-X);case void 0:return yield*this.pushNewline(),yield*this.parseLineStart();case"{":case"[":return yield*this.pushCount(1),this.flowKey=!1,this.flowLevel=1,"flow";case"}":case"]":return yield*this.pushCount(1),"doc";case"*":return yield*this.pushUntil(qX),"doc";case'"':case"'":return yield*this.parseQuotedScalar();case"|":case">":return X+=yield*this.parseBlockScalarHeader(),X+=yield*this.pushSpaces(!0),yield*this.pushCount(U.length-X),yield*this.pushNewline(),yield*this.parseBlockScalar();default:return yield*this.parsePlainScalar()}}*parseFlowCollection(){let U,X,q=-1;do{if(U=yield*this.pushNewline(),U>0)X=yield*this.pushSpaces(!1),this.indentValue=q=X;else X=0;X+=yield*this.pushSpaces(!0)}while(U+X>0);let Z=this.getLine();if(Z===null)return this.setNext("flow");if(q!==-1&&q<this.indentNext&&Z[0]!=="#"||q===0&&(Z.startsWith("---")||Z.startsWith("..."))&&K0(Z[3])){if(!(q===this.indentNext-1&&this.flowLevel===1&&(Z[0]==="]"||Z[0]==="}")))return this.flowLevel=0,yield q6.FLOW_END,yield*this.parseLineStart()}let Q=0;while(Z[Q]===",")Q+=yield*this.pushCount(1),Q+=yield*this.pushSpaces(!0),this.flowKey=!1;switch(Q+=yield*this.pushIndicators(),Z[Q]){case void 0:return"flow";case"#":return yield*this.pushCount(Z.length-Q),"flow";case"{":case"[":return yield*this.pushCount(1),this.flowKey=!1,this.flowLevel+=1,"flow";case"}":case"]":return yield*this.pushCount(1),this.flowKey=!0,this.flowLevel-=1,this.flowLevel?"flow":"doc";case"*":return yield*this.pushUntil(qX),"flow";case'"':case"'":return this.flowKey=!0,yield*this.parseQuotedScalar();case":":{let G=this.charAt(1);if(this.flowKey||K0(G)||G===",")return this.flowKey=!1,yield*this.pushCount(1),yield*this.pushSpaces(!0),"flow"}default:return this.flowKey=!1,yield*this.parsePlainScalar()}}*parseQuotedScalar(){let U=this.charAt(0),X=this.buffer.indexOf(U,this.pos+1);if(U==="'")while(X!==-1&&this.buffer[X+1]==="'")X=this.buffer.indexOf("'",X+2);else while(X!==-1){let Q=0;while(this.buffer[X-1-Q]==="\\")Q+=1;if(Q%2===0)break;X=this.buffer.indexOf('"',X+1)}let q=this.buffer.substring(0,X),Z=q.indexOf(`
123
+ `,this.pos),this.lineEndPos=U;if(U===-1)return this.atEnd?this.buffer.substring(this.pos):null;if(this.buffer[U-1]==="\r")U-=1;return this.buffer.substring(this.pos,U)}hasChars(U){return this.pos+U<=this.buffer.length}setNext(U){return this.buffer=this.buffer.substring(this.pos),this.pos=0,this.lineEndPos=null,this.next=U,null}peek(U){return this.buffer.substr(this.pos,U)}*parseNext(U){switch(U){case"stream":return yield*this.parseStream();case"line-start":return yield*this.parseLineStart();case"block-start":return yield*this.parseBlockStart();case"doc":return yield*this.parseDocument();case"flow":return yield*this.parseFlowCollection();case"quoted-scalar":return yield*this.parseQuotedScalar();case"block-scalar":return yield*this.parseBlockScalar();case"plain-scalar":return yield*this.parsePlainScalar()}}*parseStream(){let U=this.getLine();if(U===null)return this.setNext("stream");if(U[0]===q6.BOM)yield*this.pushCount(1),U=U.substring(1);if(U[0]==="%"){let X=U.length,q=U.indexOf("#");while(q!==-1){let Q=U[q-1];if(Q===" "||Q==="\t"){X=q-1;break}else q=U.indexOf("#",q+1)}while(!0){let Q=U[X-1];if(Q===" "||Q==="\t")X-=1;else break}let Z=(yield*this.pushCount(X))+(yield*this.pushSpaces(!0));return yield*this.pushCount(U.length-Z),this.pushNewline(),"stream"}if(this.atLineEnd()){let X=yield*this.pushSpaces(!0);return yield*this.pushCount(U.length-X),yield*this.pushNewline(),"stream"}return yield q6.DOCUMENT,yield*this.parseLineStart()}*parseLineStart(){let U=this.charAt(0);if(!U&&!this.atEnd)return this.setNext("line-start");if(U==="-"||U==="."){if(!this.atEnd&&!this.hasChars(4))return this.setNext("line-start");let X=this.peek(3);if((X==="---"||X==="...")&&K0(this.charAt(3)))return yield*this.pushCount(3),this.indentValue=0,this.indentNext=0,X==="---"?"doc":"stream"}if(this.indentValue=yield*this.pushSpaces(!1),this.indentNext>this.indentValue&&!K0(this.charAt(1)))this.indentNext=this.indentValue;return yield*this.parseBlockStart()}*parseBlockStart(){let[U,X]=this.peek(2);if(!X&&!this.atEnd)return this.setNext("block-start");if((U==="-"||U==="?"||U===":")&&K0(X)){let q=(yield*this.pushCount(1))+(yield*this.pushSpaces(!0));return this.indentNext=this.indentValue+1,this.indentValue+=q,yield*this.parseBlockStart()}return"doc"}*parseDocument(){yield*this.pushSpaces(!0);let U=this.getLine();if(U===null)return this.setNext("doc");let X=yield*this.pushIndicators();switch(U[X]){case"#":yield*this.pushCount(U.length-X);case void 0:return yield*this.pushNewline(),yield*this.parseLineStart();case"{":case"[":return yield*this.pushCount(1),this.flowKey=!1,this.flowLevel=1,"flow";case"}":case"]":return yield*this.pushCount(1),"doc";case"*":return yield*this.pushUntil(XX),"doc";case'"':case"'":return yield*this.parseQuotedScalar();case"|":case">":return X+=yield*this.parseBlockScalarHeader(),X+=yield*this.pushSpaces(!0),yield*this.pushCount(U.length-X),yield*this.pushNewline(),yield*this.parseBlockScalar();default:return yield*this.parsePlainScalar()}}*parseFlowCollection(){let U,X,q=-1;do{if(U=yield*this.pushNewline(),U>0)X=yield*this.pushSpaces(!1),this.indentValue=q=X;else X=0;X+=yield*this.pushSpaces(!0)}while(U+X>0);let Z=this.getLine();if(Z===null)return this.setNext("flow");if(q!==-1&&q<this.indentNext&&Z[0]!=="#"||q===0&&(Z.startsWith("---")||Z.startsWith("..."))&&K0(Z[3])){if(!(q===this.indentNext-1&&this.flowLevel===1&&(Z[0]==="]"||Z[0]==="}")))return this.flowLevel=0,yield q6.FLOW_END,yield*this.parseLineStart()}let Q=0;while(Z[Q]===",")Q+=yield*this.pushCount(1),Q+=yield*this.pushSpaces(!0),this.flowKey=!1;switch(Q+=yield*this.pushIndicators(),Z[Q]){case void 0:return"flow";case"#":return yield*this.pushCount(Z.length-Q),"flow";case"{":case"[":return yield*this.pushCount(1),this.flowKey=!1,this.flowLevel+=1,"flow";case"}":case"]":return yield*this.pushCount(1),this.flowKey=!0,this.flowLevel-=1,this.flowLevel?"flow":"doc";case"*":return yield*this.pushUntil(XX),"flow";case'"':case"'":return this.flowKey=!0,yield*this.parseQuotedScalar();case":":{let G=this.charAt(1);if(this.flowKey||K0(G)||G===",")return this.flowKey=!1,yield*this.pushCount(1),yield*this.pushSpaces(!0),"flow"}default:return this.flowKey=!1,yield*this.parsePlainScalar()}}*parseQuotedScalar(){let U=this.charAt(0),X=this.buffer.indexOf(U,this.pos+1);if(U==="'")while(X!==-1&&this.buffer[X+1]==="'")X=this.buffer.indexOf("'",X+2);else while(X!==-1){let Q=0;while(this.buffer[X-1-Q]==="\\")Q+=1;if(Q%2===0)break;X=this.buffer.indexOf('"',X+1)}let q=this.buffer.substring(0,X),Z=q.indexOf(`
124
124
  `,this.pos);if(Z!==-1){while(Z!==-1){let Q=this.continueScalar(Z+1);if(Q===-1)break;Z=q.indexOf(`
125
125
  `,Q)}if(Z!==-1)X=Z-(q[Z-1]==="\r"?2:1)}if(X===-1){if(!this.atEnd)return this.setNext("quoted-scalar");X=this.buffer.length}return yield*this.pushToIndex(X+1,!1),this.flowLevel?"flow":"doc"}*parseBlockScalarHeader(){this.blockScalarIndent=-1,this.blockScalarKeep=!1;let U=this.pos;while(!0){let X=this.buffer[++U];if(X==="+")this.blockScalarKeep=!0;else if(X>"0"&&X<="9")this.blockScalarIndent=Number(X)-1;else if(X!=="-")break}return yield*this.pushUntil((X)=>K0(X)||X==="#")}*parseBlockScalar(){let U=this.pos-1,X=0,q;U:for(let Q=this.pos;q=this.buffer[Q];++Q)switch(q){case" ":X+=1;break;case`
126
126
  `:U=Q,X=0;break;case"\r":{let G=this.buffer[Q+1];if(!G&&!this.atEnd)return this.setNext("block-scalar");if(G===`
@@ -130,57 +130,57 @@ ${X.comment}`:X.comment}this.doc.range[2]=X.offset;break}default:this.errors.pus
130
130
  `&&Q>=this.pos&&Q+1+X>Y)U=Q;else break}while(!0);return yield q6.SCALAR,yield*this.pushToIndex(U+1,!0),yield*this.parseLineStart()}*parsePlainScalar(){let U=this.flowLevel>0,X=this.pos-1,q=this.pos-1,Z;while(Z=this.buffer[++q])if(Z===":"){let Q=this.buffer[q+1];if(K0(Q)||U&&IU.has(Q))break;X=q}else if(K0(Z)){let Q=this.buffer[q+1];if(Z==="\r")if(Q===`
131
131
  `)q+=1,Z=`
132
132
  `,Q=this.buffer[q+1];else X=q;if(Q==="#"||U&&IU.has(Q))break;if(Z===`
133
- `){let G=this.continueScalar(q+1);if(G===-1)break;q=Math.max(q,G-2)}}else{if(U&&IU.has(Z))break;X=q}if(!Z&&!this.atEnd)return this.setNext("plain-scalar");return yield q6.SCALAR,yield*this.pushToIndex(X+1,!0),U?"flow":"doc"}*pushCount(U){if(U>0)return yield this.buffer.substr(this.pos,U),this.pos+=U,U;return 0}*pushToIndex(U,X){let q=this.buffer.slice(this.pos,U);if(q)return yield q,this.pos+=q.length,q.length;else if(X)yield"";return 0}*pushIndicators(){switch(this.charAt(0)){case"!":return(yield*this.pushTag())+(yield*this.pushSpaces(!0))+(yield*this.pushIndicators());case"&":return(yield*this.pushUntil(qX))+(yield*this.pushSpaces(!0))+(yield*this.pushIndicators());case"-":case"?":case":":{let U=this.flowLevel>0,X=this.charAt(1);if(K0(X)||U&&IU.has(X)){if(!U)this.indentNext=this.indentValue+1;else if(this.flowKey)this.flowKey=!1;return(yield*this.pushCount(1))+(yield*this.pushSpaces(!0))+(yield*this.pushIndicators())}}}return 0}*pushTag(){if(this.charAt(1)==="<"){let U=this.pos+2,X=this.buffer[U];while(!K0(X)&&X!==">")X=this.buffer[++U];return yield*this.pushToIndex(X===">"?U+1:U,!1)}else{let U=this.pos+1,X=this.buffer[U];while(X)if(mF.has(X))X=this.buffer[++U];else if(X==="%"&&NQ.has(this.buffer[U+1])&&NQ.has(this.buffer[U+2]))X=this.buffer[U+=3];else break;return yield*this.pushToIndex(U,!1)}}*pushNewline(){let U=this.buffer[this.pos];if(U===`
133
+ `){let G=this.continueScalar(q+1);if(G===-1)break;q=Math.max(q,G-2)}}else{if(U&&IU.has(Z))break;X=q}if(!Z&&!this.atEnd)return this.setNext("plain-scalar");return yield q6.SCALAR,yield*this.pushToIndex(X+1,!0),U?"flow":"doc"}*pushCount(U){if(U>0)return yield this.buffer.substr(this.pos,U),this.pos+=U,U;return 0}*pushToIndex(U,X){let q=this.buffer.slice(this.pos,U);if(q)return yield q,this.pos+=q.length,q.length;else if(X)yield"";return 0}*pushIndicators(){switch(this.charAt(0)){case"!":return(yield*this.pushTag())+(yield*this.pushSpaces(!0))+(yield*this.pushIndicators());case"&":return(yield*this.pushUntil(XX))+(yield*this.pushSpaces(!0))+(yield*this.pushIndicators());case"-":case"?":case":":{let U=this.flowLevel>0,X=this.charAt(1);if(K0(X)||U&&IU.has(X)){if(!U)this.indentNext=this.indentValue+1;else if(this.flowKey)this.flowKey=!1;return(yield*this.pushCount(1))+(yield*this.pushSpaces(!0))+(yield*this.pushIndicators())}}}return 0}*pushTag(){if(this.charAt(1)==="<"){let U=this.pos+2,X=this.buffer[U];while(!K0(X)&&X!==">")X=this.buffer[++U];return yield*this.pushToIndex(X===">"?U+1:U,!1)}else{let U=this.pos+1,X=this.buffer[U];while(X)if(mF.has(X))X=this.buffer[++U];else if(X==="%"&&KQ.has(this.buffer[U+1])&&KQ.has(this.buffer[U+2]))X=this.buffer[U+=3];else break;return yield*this.pushToIndex(U,!1)}}*pushNewline(){let U=this.buffer[this.pos];if(U===`
134
134
  `)return yield*this.pushCount(1);else if(U==="\r"&&this.charAt(1)===`
135
- `)return yield*this.pushCount(2);else return 0}*pushSpaces(U){let X=this.pos-1,q;do q=this.buffer[++X];while(q===" "||U&&q==="\t");let Z=X-this.pos;if(Z>0)yield this.buffer.substr(this.pos,Z),this.pos=X;return Z}*pushUntil(U){let X=this.pos,q=this.buffer[X];while(!U(q))q=this.buffer[++X];return yield*this.pushToIndex(X,!1)}}lF.Lexer=CQ});var QX=D((cF)=>{class SQ{constructor(){this.lineStarts=[],this.addNewLine=(U)=>this.lineStarts.push(U),this.linePos=(U)=>{let X=0,q=this.lineStarts.length;while(X<q){let Q=X+q>>1;if(this.lineStarts[Q]<U)X=Q+1;else q=Q}if(this.lineStarts[X]===U)return{line:X+1,col:1};if(X===0)return{line:0,col:U};let Z=this.lineStarts[X-1];return{line:X,col:U-Z+1}}}}cF.LineCounter=SQ});var GX=D((rF)=>{var sF=M1("process"),EQ=wU(),oF=ZX();function Q1(U,X){for(let q=0;q<U.length;++q)if(U[q].type===X)return!0;return!1}function jQ(U){for(let X=0;X<U.length;++X)switch(U[X].type){case"space":case"comment":case"newline":break;default:return X}return-1}function fQ(U){switch(U?.type){case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":case"flow-collection":return!0;default:return!1}}function KU(U){switch(U.type){case"document":return U.start;case"block-map":{let X=U.items[U.items.length-1];return X.sep??X.start}case"block-seq":return U.items[U.items.length-1].start;default:return[]}}function e1(U){if(U.length===0)return[];let X=U.length;U:while(--X>=0)switch(U[X].type){case"doc-start":case"explicit-key-ind":case"map-value-ind":case"seq-item-ind":case"newline":break U}while(U[++X]?.type==="space");return U.splice(X,U.length)}function bQ(U){if(U.start.type==="flow-seq-start"){for(let X of U.items)if(X.sep&&!X.value&&!Q1(X.start,"explicit-key-ind")&&!Q1(X.sep,"map-value-ind")){if(X.key)X.value=X.key;if(delete X.key,fQ(X.value))if(X.value.end)Array.prototype.push.apply(X.value.end,X.sep);else X.value.end=X.sep;else Array.prototype.push.apply(X.start,X.sep);delete X.sep}}}class gQ{constructor(U){this.atNewLine=!0,this.atScalar=!1,this.indent=0,this.offset=0,this.onKeyLine=!1,this.stack=[],this.source="",this.type="",this.lexer=new oF.Lexer,this.onNewLine=U}*parse(U,X=!1){if(this.onNewLine&&this.offset===0)this.onNewLine(0);for(let q of this.lexer.lex(U,X))yield*this.next(q);if(!X)yield*this.end()}*next(U){if(this.source=U,sF.env.LOG_TOKENS)console.log("|",EQ.prettyToken(U));if(this.atScalar){this.atScalar=!1,yield*this.step(),this.offset+=U.length;return}let X=EQ.tokenType(U);if(!X){let q=`Not a YAML token: ${U}`;yield*this.pop({type:"error",offset:this.offset,message:q,source:U}),this.offset+=U.length}else if(X==="scalar")this.atNewLine=!1,this.atScalar=!0,this.type="scalar";else{switch(this.type=X,yield*this.step(),X){case"newline":if(this.atNewLine=!0,this.indent=0,this.onNewLine)this.onNewLine(this.offset+U.length);break;case"space":if(this.atNewLine&&U[0]===" ")this.indent+=U.length;break;case"explicit-key-ind":case"map-value-ind":case"seq-item-ind":if(this.atNewLine)this.indent+=U.length;break;case"doc-mode":case"flow-error-end":return;default:this.atNewLine=!1}this.offset+=U.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 U=this.peek(1);if(this.type==="doc-end"&&U?.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(!U)return yield*this.stream();switch(U.type){case"document":return yield*this.document(U);case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return yield*this.scalar(U);case"block-scalar":return yield*this.blockScalar(U);case"block-map":return yield*this.blockMap(U);case"block-seq":return yield*this.blockSequence(U);case"flow-collection":return yield*this.flowCollection(U);case"doc-end":return yield*this.documentEnd(U)}yield*this.pop()}peek(U){return this.stack[this.stack.length-U]}*pop(U){let X=U??this.stack.pop();if(!X)yield{type:"error",offset:this.offset,source:"",message:"Tried to pop an empty stack"};else if(this.stack.length===0)yield X;else{let q=this.peek(1);if(X.type==="block-scalar")X.indent="indent"in q?q.indent:0;else if(X.type==="flow-collection"&&q.type==="document")X.indent=0;if(X.type==="flow-collection")bQ(X);switch(q.type){case"document":q.value=X;break;case"block-scalar":q.props.push(X);break;case"block-map":{let Z=q.items[q.items.length-1];if(Z.value){q.items.push({start:[],key:X,sep:[]}),this.onKeyLine=!0;return}else if(Z.sep)Z.value=X;else{Object.assign(Z,{key:X,sep:[]}),this.onKeyLine=!Z.explicitKey;return}break}case"block-seq":{let Z=q.items[q.items.length-1];if(Z.value)q.items.push({start:[],value:X});else Z.value=X;break}case"flow-collection":{let Z=q.items[q.items.length-1];if(!Z||Z.value)q.items.push({start:[],key:X,sep:[]});else if(Z.sep)Z.value=X;else Object.assign(Z,{key:X,sep:[]});return}default:yield*this.pop(),yield*this.pop(X)}if((q.type==="document"||q.type==="block-map"||q.type==="block-seq")&&(X.type==="block-map"||X.type==="block-seq")){let Z=X.items[X.items.length-1];if(Z&&!Z.sep&&!Z.value&&Z.start.length>0&&jQ(Z.start)===-1&&(X.indent===0||Z.start.every((Q)=>Q.type!=="comment"||Q.indent<X.indent))){if(q.type==="document")q.end=Z.start;else q.items.push({start:Z.start});X.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 U={type:"document",offset:this.offset,start:[]};if(this.type==="doc-start")U.start.push(this.sourceToken);this.stack.push(U);return}}yield{type:"error",offset:this.offset,message:`Unexpected ${this.type} token in YAML stream`,source:this.source}}*document(U){if(U.value)return yield*this.lineEnd(U);switch(this.type){case"doc-start":{if(jQ(U.start)!==-1)yield*this.pop(),yield*this.step();else U.start.push(this.sourceToken);return}case"anchor":case"tag":case"space":case"comment":case"newline":U.start.push(this.sourceToken);return}let X=this.startBlockValue(U);if(X)this.stack.push(X);else yield{type:"error",offset:this.offset,message:`Unexpected ${this.type} token in YAML document`,source:this.source}}*scalar(U){if(this.type==="map-value-ind"){let X=KU(this.peek(2)),q=e1(X),Z;if(U.end)Z=U.end,Z.push(this.sourceToken),delete U.end;else Z=[this.sourceToken];let Q={type:"block-map",offset:U.offset,indent:U.indent,items:[{start:q,key:U,sep:Z}]};this.onKeyLine=!0,this.stack[this.stack.length-1]=Q}else yield*this.lineEnd(U)}*blockScalar(U){switch(this.type){case"space":case"comment":case"newline":U.props.push(this.sourceToken);return;case"scalar":if(U.source=this.source,this.atNewLine=!0,this.indent=0,this.onNewLine){let X=this.source.indexOf(`
135
+ `)return yield*this.pushCount(2);else return 0}*pushSpaces(U){let X=this.pos-1,q;do q=this.buffer[++X];while(q===" "||U&&q==="\t");let Z=X-this.pos;if(Z>0)yield this.buffer.substr(this.pos,Z),this.pos=X;return Z}*pushUntil(U){let X=this.pos,q=this.buffer[X];while(!U(q))q=this.buffer[++X];return yield*this.pushToIndex(X,!1)}}lF.Lexer=NQ});var ZX=R((cF)=>{class CQ{constructor(){this.lineStarts=[],this.addNewLine=(U)=>this.lineStarts.push(U),this.linePos=(U)=>{let X=0,q=this.lineStarts.length;while(X<q){let Q=X+q>>1;if(this.lineStarts[Q]<U)X=Q+1;else q=Q}if(this.lineStarts[X]===U)return{line:X+1,col:1};if(X===0)return{line:0,col:U};let Z=this.lineStarts[X-1];return{line:X,col:U-Z+1}}}}cF.LineCounter=CQ});var QX=R((rF)=>{var sF=M1("process"),SQ=wU(),oF=qX();function Q1(U,X){for(let q=0;q<U.length;++q)if(U[q].type===X)return!0;return!1}function EQ(U){for(let X=0;X<U.length;++X)switch(U[X].type){case"space":case"comment":case"newline":break;default:return X}return-1}function bQ(U){switch(U?.type){case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":case"flow-collection":return!0;default:return!1}}function KU(U){switch(U.type){case"document":return U.start;case"block-map":{let X=U.items[U.items.length-1];return X.sep??X.start}case"block-seq":return U.items[U.items.length-1].start;default:return[]}}function U2(U){if(U.length===0)return[];let X=U.length;U:while(--X>=0)switch(U[X].type){case"doc-start":case"explicit-key-ind":case"map-value-ind":case"seq-item-ind":case"newline":break U}while(U[++X]?.type==="space");return U.splice(X,U.length)}function jQ(U){if(U.start.type==="flow-seq-start"){for(let X of U.items)if(X.sep&&!X.value&&!Q1(X.start,"explicit-key-ind")&&!Q1(X.sep,"map-value-ind")){if(X.key)X.value=X.key;if(delete X.key,bQ(X.value))if(X.value.end)Array.prototype.push.apply(X.value.end,X.sep);else X.value.end=X.sep;else Array.prototype.push.apply(X.start,X.sep);delete X.sep}}}class fQ{constructor(U){this.atNewLine=!0,this.atScalar=!1,this.indent=0,this.offset=0,this.onKeyLine=!1,this.stack=[],this.source="",this.type="",this.lexer=new oF.Lexer,this.onNewLine=U}*parse(U,X=!1){if(this.onNewLine&&this.offset===0)this.onNewLine(0);for(let q of this.lexer.lex(U,X))yield*this.next(q);if(!X)yield*this.end()}*next(U){if(this.source=U,sF.env.LOG_TOKENS)console.log("|",SQ.prettyToken(U));if(this.atScalar){this.atScalar=!1,yield*this.step(),this.offset+=U.length;return}let X=SQ.tokenType(U);if(!X){let q=`Not a YAML token: ${U}`;yield*this.pop({type:"error",offset:this.offset,message:q,source:U}),this.offset+=U.length}else if(X==="scalar")this.atNewLine=!1,this.atScalar=!0,this.type="scalar";else{switch(this.type=X,yield*this.step(),X){case"newline":if(this.atNewLine=!0,this.indent=0,this.onNewLine)this.onNewLine(this.offset+U.length);break;case"space":if(this.atNewLine&&U[0]===" ")this.indent+=U.length;break;case"explicit-key-ind":case"map-value-ind":case"seq-item-ind":if(this.atNewLine)this.indent+=U.length;break;case"doc-mode":case"flow-error-end":return;default:this.atNewLine=!1}this.offset+=U.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 U=this.peek(1);if(this.type==="doc-end"&&U?.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(!U)return yield*this.stream();switch(U.type){case"document":return yield*this.document(U);case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return yield*this.scalar(U);case"block-scalar":return yield*this.blockScalar(U);case"block-map":return yield*this.blockMap(U);case"block-seq":return yield*this.blockSequence(U);case"flow-collection":return yield*this.flowCollection(U);case"doc-end":return yield*this.documentEnd(U)}yield*this.pop()}peek(U){return this.stack[this.stack.length-U]}*pop(U){let X=U??this.stack.pop();if(!X)yield{type:"error",offset:this.offset,source:"",message:"Tried to pop an empty stack"};else if(this.stack.length===0)yield X;else{let q=this.peek(1);if(X.type==="block-scalar")X.indent="indent"in q?q.indent:0;else if(X.type==="flow-collection"&&q.type==="document")X.indent=0;if(X.type==="flow-collection")jQ(X);switch(q.type){case"document":q.value=X;break;case"block-scalar":q.props.push(X);break;case"block-map":{let Z=q.items[q.items.length-1];if(Z.value){q.items.push({start:[],key:X,sep:[]}),this.onKeyLine=!0;return}else if(Z.sep)Z.value=X;else{Object.assign(Z,{key:X,sep:[]}),this.onKeyLine=!Z.explicitKey;return}break}case"block-seq":{let Z=q.items[q.items.length-1];if(Z.value)q.items.push({start:[],value:X});else Z.value=X;break}case"flow-collection":{let Z=q.items[q.items.length-1];if(!Z||Z.value)q.items.push({start:[],key:X,sep:[]});else if(Z.sep)Z.value=X;else Object.assign(Z,{key:X,sep:[]});return}default:yield*this.pop(),yield*this.pop(X)}if((q.type==="document"||q.type==="block-map"||q.type==="block-seq")&&(X.type==="block-map"||X.type==="block-seq")){let Z=X.items[X.items.length-1];if(Z&&!Z.sep&&!Z.value&&Z.start.length>0&&EQ(Z.start)===-1&&(X.indent===0||Z.start.every((Q)=>Q.type!=="comment"||Q.indent<X.indent))){if(q.type==="document")q.end=Z.start;else q.items.push({start:Z.start});X.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 U={type:"document",offset:this.offset,start:[]};if(this.type==="doc-start")U.start.push(this.sourceToken);this.stack.push(U);return}}yield{type:"error",offset:this.offset,message:`Unexpected ${this.type} token in YAML stream`,source:this.source}}*document(U){if(U.value)return yield*this.lineEnd(U);switch(this.type){case"doc-start":{if(EQ(U.start)!==-1)yield*this.pop(),yield*this.step();else U.start.push(this.sourceToken);return}case"anchor":case"tag":case"space":case"comment":case"newline":U.start.push(this.sourceToken);return}let X=this.startBlockValue(U);if(X)this.stack.push(X);else yield{type:"error",offset:this.offset,message:`Unexpected ${this.type} token in YAML document`,source:this.source}}*scalar(U){if(this.type==="map-value-ind"){let X=KU(this.peek(2)),q=U2(X),Z;if(U.end)Z=U.end,Z.push(this.sourceToken),delete U.end;else Z=[this.sourceToken];let Q={type:"block-map",offset:U.offset,indent:U.indent,items:[{start:q,key:U,sep:Z}]};this.onKeyLine=!0,this.stack[this.stack.length-1]=Q}else yield*this.lineEnd(U)}*blockScalar(U){switch(this.type){case"space":case"comment":case"newline":U.props.push(this.sourceToken);return;case"scalar":if(U.source=this.source,this.atNewLine=!0,this.indent=0,this.onNewLine){let X=this.source.indexOf(`
136
136
  `)+1;while(X!==0)this.onNewLine(this.offset+X),X=this.source.indexOf(`
137
- `,X)+1}yield*this.pop();break;default:yield*this.pop(),yield*this.step()}}*blockMap(U){let X=U.items[U.items.length-1];switch(this.type){case"newline":if(this.onKeyLine=!1,X.value){let q="end"in X.value?X.value.end:void 0;if((Array.isArray(q)?q[q.length-1]:void 0)?.type==="comment")q?.push(this.sourceToken);else U.items.push({start:[this.sourceToken]})}else if(X.sep)X.sep.push(this.sourceToken);else X.start.push(this.sourceToken);return;case"space":case"comment":if(X.value)U.items.push({start:[this.sourceToken]});else if(X.sep)X.sep.push(this.sourceToken);else{if(this.atIndentedComment(X.start,U.indent)){let Z=U.items[U.items.length-2]?.value?.end;if(Array.isArray(Z)){Array.prototype.push.apply(Z,X.start),Z.push(this.sourceToken),U.items.pop();return}}X.start.push(this.sourceToken)}return}if(this.indent>=U.indent){let q=!this.onKeyLine&&this.indent===U.indent,Z=q&&(X.sep||X.explicitKey)&&this.type!=="seq-item-ind",Q=[];if(Z&&X.sep&&!X.value){let G=[];for(let Y=0;Y<X.sep.length;++Y){let J=X.sep[Y];switch(J.type){case"newline":G.push(Y);break;case"space":break;case"comment":if(J.indent>U.indent)G.length=0;break;default:G.length=0}}if(G.length>=2)Q=X.sep.splice(G[1])}switch(this.type){case"anchor":case"tag":if(Z||X.value)Q.push(this.sourceToken),U.items.push({start:Q}),this.onKeyLine=!0;else if(X.sep)X.sep.push(this.sourceToken);else X.start.push(this.sourceToken);return;case"explicit-key-ind":if(!X.sep&&!X.explicitKey)X.start.push(this.sourceToken),X.explicitKey=!0;else if(Z||X.value)Q.push(this.sourceToken),U.items.push({start:Q,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(X.explicitKey)if(!X.sep)if(Q1(X.start,"newline"))Object.assign(X,{key:null,sep:[this.sourceToken]});else{let G=e1(X.start);this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:G,key:null,sep:[this.sourceToken]}]})}else if(X.value)U.items.push({start:[],key:null,sep:[this.sourceToken]});else if(Q1(X.sep,"map-value-ind"))this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:Q,key:null,sep:[this.sourceToken]}]});else if(fQ(X.key)&&!Q1(X.sep,"newline")){let G=e1(X.start),Y=X.key,J=X.sep;J.push(this.sourceToken),delete X.key,delete X.sep,this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:G,key:Y,sep:J}]})}else if(Q.length>0)X.sep=X.sep.concat(Q,this.sourceToken);else X.sep.push(this.sourceToken);else if(!X.sep)Object.assign(X,{key:null,sep:[this.sourceToken]});else if(X.value||Z)U.items.push({start:Q,key:null,sep:[this.sourceToken]});else if(Q1(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 X.sep.push(this.sourceToken);this.onKeyLine=!0;return;case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":{let G=this.flowScalar(this.type);if(Z||X.value)U.items.push({start:Q,key:G,sep:[]}),this.onKeyLine=!0;else if(X.sep)this.stack.push(G);else Object.assign(X,{key:G,sep:[]}),this.onKeyLine=!0;return}default:{let G=this.startBlockValue(U);if(G){if(G.type==="block-seq"){if(!X.explicitKey&&X.sep&&!Q1(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)U.items.push({start:Q});this.stack.push(G);return}}}}yield*this.pop(),yield*this.step()}*blockSequence(U){let X=U.items[U.items.length-1];switch(this.type){case"newline":if(X.value){let q="end"in X.value?X.value.end:void 0;if((Array.isArray(q)?q[q.length-1]:void 0)?.type==="comment")q?.push(this.sourceToken);else U.items.push({start:[this.sourceToken]})}else X.start.push(this.sourceToken);return;case"space":case"comment":if(X.value)U.items.push({start:[this.sourceToken]});else{if(this.atIndentedComment(X.start,U.indent)){let Z=U.items[U.items.length-2]?.value?.end;if(Array.isArray(Z)){Array.prototype.push.apply(Z,X.start),Z.push(this.sourceToken),U.items.pop();return}}X.start.push(this.sourceToken)}return;case"anchor":case"tag":if(X.value||this.indent<=U.indent)break;X.start.push(this.sourceToken);return;case"seq-item-ind":if(this.indent!==U.indent)break;if(X.value||Q1(X.start,"seq-item-ind"))U.items.push({start:[this.sourceToken]});else X.start.push(this.sourceToken);return}if(this.indent>U.indent){let q=this.startBlockValue(U);if(q){this.stack.push(q);return}}yield*this.pop(),yield*this.step()}*flowCollection(U){let X=U.items[U.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(U.end.length===0){switch(this.type){case"comma":case"explicit-key-ind":if(!X||X.sep)U.items.push({start:[this.sourceToken]});else X.start.push(this.sourceToken);return;case"map-value-ind":if(!X||X.value)U.items.push({start:[],key:null,sep:[this.sourceToken]});else if(X.sep)X.sep.push(this.sourceToken);else Object.assign(X,{key:null,sep:[this.sourceToken]});return;case"space":case"comment":case"newline":case"anchor":case"tag":if(!X||X.value)U.items.push({start:[this.sourceToken]});else if(X.sep)X.sep.push(this.sourceToken);else X.start.push(this.sourceToken);return;case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":{let Z=this.flowScalar(this.type);if(!X||X.value)U.items.push({start:[],key:Z,sep:[]});else if(X.sep)this.stack.push(Z);else Object.assign(X,{key:Z,sep:[]});return}case"flow-map-end":case"flow-seq-end":U.end.push(this.sourceToken);return}let q=this.startBlockValue(U);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===U.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 Z=KU(q),Q=e1(Z);bQ(U);let G=U.end.splice(1,U.end.length);G.push(this.sourceToken);let Y={type:"block-map",offset:U.offset,indent:U.indent,items:[{start:Q,key:U,sep:G}]};this.onKeyLine=!0,this.stack[this.stack.length-1]=Y}else yield*this.lineEnd(U)}}flowScalar(U){if(this.onNewLine){let X=this.source.indexOf(`
137
+ `,X)+1}yield*this.pop();break;default:yield*this.pop(),yield*this.step()}}*blockMap(U){let X=U.items[U.items.length-1];switch(this.type){case"newline":if(this.onKeyLine=!1,X.value){let q="end"in X.value?X.value.end:void 0;if((Array.isArray(q)?q[q.length-1]:void 0)?.type==="comment")q?.push(this.sourceToken);else U.items.push({start:[this.sourceToken]})}else if(X.sep)X.sep.push(this.sourceToken);else X.start.push(this.sourceToken);return;case"space":case"comment":if(X.value)U.items.push({start:[this.sourceToken]});else if(X.sep)X.sep.push(this.sourceToken);else{if(this.atIndentedComment(X.start,U.indent)){let Z=U.items[U.items.length-2]?.value?.end;if(Array.isArray(Z)){Array.prototype.push.apply(Z,X.start),Z.push(this.sourceToken),U.items.pop();return}}X.start.push(this.sourceToken)}return}if(this.indent>=U.indent){let q=!this.onKeyLine&&this.indent===U.indent,Z=q&&(X.sep||X.explicitKey)&&this.type!=="seq-item-ind",Q=[];if(Z&&X.sep&&!X.value){let G=[];for(let Y=0;Y<X.sep.length;++Y){let J=X.sep[Y];switch(J.type){case"newline":G.push(Y);break;case"space":break;case"comment":if(J.indent>U.indent)G.length=0;break;default:G.length=0}}if(G.length>=2)Q=X.sep.splice(G[1])}switch(this.type){case"anchor":case"tag":if(Z||X.value)Q.push(this.sourceToken),U.items.push({start:Q}),this.onKeyLine=!0;else if(X.sep)X.sep.push(this.sourceToken);else X.start.push(this.sourceToken);return;case"explicit-key-ind":if(!X.sep&&!X.explicitKey)X.start.push(this.sourceToken),X.explicitKey=!0;else if(Z||X.value)Q.push(this.sourceToken),U.items.push({start:Q,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(X.explicitKey)if(!X.sep)if(Q1(X.start,"newline"))Object.assign(X,{key:null,sep:[this.sourceToken]});else{let G=U2(X.start);this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:G,key:null,sep:[this.sourceToken]}]})}else if(X.value)U.items.push({start:[],key:null,sep:[this.sourceToken]});else if(Q1(X.sep,"map-value-ind"))this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:Q,key:null,sep:[this.sourceToken]}]});else if(bQ(X.key)&&!Q1(X.sep,"newline")){let G=U2(X.start),Y=X.key,J=X.sep;J.push(this.sourceToken),delete X.key,delete X.sep,this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:G,key:Y,sep:J}]})}else if(Q.length>0)X.sep=X.sep.concat(Q,this.sourceToken);else X.sep.push(this.sourceToken);else if(!X.sep)Object.assign(X,{key:null,sep:[this.sourceToken]});else if(X.value||Z)U.items.push({start:Q,key:null,sep:[this.sourceToken]});else if(Q1(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 X.sep.push(this.sourceToken);this.onKeyLine=!0;return;case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":{let G=this.flowScalar(this.type);if(Z||X.value)U.items.push({start:Q,key:G,sep:[]}),this.onKeyLine=!0;else if(X.sep)this.stack.push(G);else Object.assign(X,{key:G,sep:[]}),this.onKeyLine=!0;return}default:{let G=this.startBlockValue(U);if(G){if(G.type==="block-seq"){if(!X.explicitKey&&X.sep&&!Q1(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)U.items.push({start:Q});this.stack.push(G);return}}}}yield*this.pop(),yield*this.step()}*blockSequence(U){let X=U.items[U.items.length-1];switch(this.type){case"newline":if(X.value){let q="end"in X.value?X.value.end:void 0;if((Array.isArray(q)?q[q.length-1]:void 0)?.type==="comment")q?.push(this.sourceToken);else U.items.push({start:[this.sourceToken]})}else X.start.push(this.sourceToken);return;case"space":case"comment":if(X.value)U.items.push({start:[this.sourceToken]});else{if(this.atIndentedComment(X.start,U.indent)){let Z=U.items[U.items.length-2]?.value?.end;if(Array.isArray(Z)){Array.prototype.push.apply(Z,X.start),Z.push(this.sourceToken),U.items.pop();return}}X.start.push(this.sourceToken)}return;case"anchor":case"tag":if(X.value||this.indent<=U.indent)break;X.start.push(this.sourceToken);return;case"seq-item-ind":if(this.indent!==U.indent)break;if(X.value||Q1(X.start,"seq-item-ind"))U.items.push({start:[this.sourceToken]});else X.start.push(this.sourceToken);return}if(this.indent>U.indent){let q=this.startBlockValue(U);if(q){this.stack.push(q);return}}yield*this.pop(),yield*this.step()}*flowCollection(U){let X=U.items[U.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(U.end.length===0){switch(this.type){case"comma":case"explicit-key-ind":if(!X||X.sep)U.items.push({start:[this.sourceToken]});else X.start.push(this.sourceToken);return;case"map-value-ind":if(!X||X.value)U.items.push({start:[],key:null,sep:[this.sourceToken]});else if(X.sep)X.sep.push(this.sourceToken);else Object.assign(X,{key:null,sep:[this.sourceToken]});return;case"space":case"comment":case"newline":case"anchor":case"tag":if(!X||X.value)U.items.push({start:[this.sourceToken]});else if(X.sep)X.sep.push(this.sourceToken);else X.start.push(this.sourceToken);return;case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":{let Z=this.flowScalar(this.type);if(!X||X.value)U.items.push({start:[],key:Z,sep:[]});else if(X.sep)this.stack.push(Z);else Object.assign(X,{key:Z,sep:[]});return}case"flow-map-end":case"flow-seq-end":U.end.push(this.sourceToken);return}let q=this.startBlockValue(U);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===U.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 Z=KU(q),Q=U2(Z);jQ(U);let G=U.end.splice(1,U.end.length);G.push(this.sourceToken);let Y={type:"block-map",offset:U.offset,indent:U.indent,items:[{start:Q,key:U,sep:G}]};this.onKeyLine=!0,this.stack[this.stack.length-1]=Y}else yield*this.lineEnd(U)}}flowScalar(U){if(this.onNewLine){let X=this.source.indexOf(`
138
138
  `)+1;while(X!==0)this.onNewLine(this.offset+X),X=this.source.indexOf(`
139
- `,X)+1}return{type:U,offset:this.offset,indent:this.indent,source:this.source}}startBlockValue(U){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 X=KU(U),q=e1(X);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 X=KU(U),q=e1(X);return{type:"block-map",offset:this.offset,indent:this.indent,items:[{start:q,key:null,sep:[this.sourceToken]}]}}}return null}atIndentedComment(U,X){if(this.type!=="comment")return!1;if(this.indent<=X)return!1;return U.every((q)=>q.type==="newline"||q.type==="space")}*documentEnd(U){if(this.type!=="doc-mode"){if(U.end)U.end.push(this.sourceToken);else U.end=[this.sourceToken];if(this.type==="newline")yield*this.pop()}}*lineEnd(U){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(U.end)U.end.push(this.sourceToken);else U.end=[this.sourceToken];if(this.type==="newline")yield*this.pop()}}}rF.Parser=gQ});var hQ=D((QA)=>{var yQ=o9(),nF=n2(),Z6=t2(),tF=Q9(),eF=k(),UA=QX(),kQ=GX();function vQ(U){let X=U.prettyErrors!==!1;return{lineCounter:U.lineCounter||X&&new UA.LineCounter||null,prettyErrors:X}}function XA(U,X={}){let{lineCounter:q,prettyErrors:Z}=vQ(X),Q=new kQ.Parser(q?.addNewLine),G=new yQ.Composer(X),Y=Array.from(G.compose(Q.parse(U)));if(Z&&q)for(let J of Y)J.errors.forEach(Z6.prettifyError(U,q)),J.warnings.forEach(Z6.prettifyError(U,q));if(Y.length>0)return Y;return Object.assign([],{empty:!0},G.streamInfo())}function xQ(U,X={}){let{lineCounter:q,prettyErrors:Z}=vQ(X),Q=new kQ.Parser(q?.addNewLine),G=new yQ.Composer(X),Y=null;for(let J of G.compose(Q.parse(U),!0,U.length))if(!Y)Y=J;else if(Y.options.logLevel!=="silent"){Y.errors.push(new Z6.YAMLParseError(J.range.slice(0,2),"MULTIPLE_DOCS","Source contains multiple documents; please use YAML.parseAllDocuments()"));break}if(Z&&q)Y.errors.forEach(Z6.prettifyError(U,q)),Y.warnings.forEach(Z6.prettifyError(U,q));return Y}function qA(U,X,q){let Z=void 0;if(typeof X==="function")Z=X;else if(q===void 0&&X&&typeof X==="object")q=X;let Q=xQ(U,q);if(!Q)return null;if(Q.warnings.forEach((G)=>tF.warn(Q.options.logLevel,G)),Q.errors.length>0)if(Q.options.logLevel!=="silent")throw Q.errors[0];else Q.errors=[];return Q.toJS(Object.assign({reviver:Z},q))}function ZA(U,X,q){let Z=null;if(typeof X==="function"||Array.isArray(X))Z=X;else if(q===void 0&&X)q=X;if(typeof q==="string")q=q.length;if(typeof q==="number"){let Q=Math.round(q);q=Q<1?void 0:Q>8?{indent:8}:{indent:Q}}if(U===void 0){let{keepUndefined:Q}=q??X??{};if(!Q)return}if(eF.isDocument(U)&&!Z)return U.toString(q);return new nF.Document(U,Z,q).toString(q)}QA.parse=qA;QA.parseAllDocuments=XA;QA.parseDocument=xQ;QA.stringify=ZA});var mQ=D((RA)=>{var WA=o9(),_A=n2(),$A=b9(),YX=t2(),LA=k2(),G1=k(),zA=U1(),FA=i(),AA=q1(),VA=Z1(),OA=wU(),BA=ZX(),TA=QX(),DA=GX(),NU=hQ(),uQ=g2();RA.Composer=WA.Composer;RA.Document=_A.Document;RA.Schema=$A.Schema;RA.YAMLError=YX.YAMLError;RA.YAMLParseError=YX.YAMLParseError;RA.YAMLWarning=YX.YAMLWarning;RA.Alias=LA.Alias;RA.isAlias=G1.isAlias;RA.isCollection=G1.isCollection;RA.isDocument=G1.isDocument;RA.isMap=G1.isMap;RA.isNode=G1.isNode;RA.isPair=G1.isPair;RA.isScalar=G1.isScalar;RA.isSeq=G1.isSeq;RA.Pair=zA.Pair;RA.Scalar=FA.Scalar;RA.YAMLMap=AA.YAMLMap;RA.YAMLSeq=VA.YAMLSeq;RA.CST=OA;RA.Lexer=BA.Lexer;RA.LineCounter=TA.LineCounter;RA.Parser=DA.Parser;RA.parse=NU.parse;RA.parseAllDocuments=NU.parseAllDocuments;RA.parseDocument=NU.parseDocument;RA.stringify=NU.stringify;RA.visit=uQ.visit;RA.visitAsync=uQ.visitAsync});class sQ{queue=[];engine;config;timer=null;isProcessing=!1;constructor(U,X={maxBatchSize:10,flushIntervalMs:100}){this.engine=U,this.config=X}push(U){if(this.queue.push(U),this.queue.length>=this.config.maxBatchSize)this.processQueue();else if(!this.timer)this.timer=setTimeout(()=>this.processQueue(),this.config.flushIntervalMs)}async processQueue(){if(this.isProcessing)return;if(this.isProcessing=!0,this.timer)clearTimeout(this.timer),this.timer=null;let U=this.queue.splice(0,this.config.maxBatchSize);if(U.length===0){this.isProcessing=!1;return}console.debug(`[EventQueue] Processing batch of ${U.length} events.`);for(let X of U)try{await this.engine.evaluateContext(X)}catch(q){console.error(`[EventQueue] Error processing event ${X.event}:`,q)}if(this.queue.length>0)setTimeout(()=>this.processQueue(),0);this.isProcessing=!1}getQueueLength(){return this.queue.length}}class oQ{keyPrefix;cache=new Map;isLoaded=!1;constructor(U="trigger_system:"){this.keyPrefix=U}isAvailable(){return typeof window<"u"&&typeof window.localStorage<"u"}ensureLoaded(){if(this.isLoaded)return;if(this.isAvailable())try{let U=window.localStorage.getItem(this.keyPrefix+"state");if(U){let X=JSON.parse(U);this.cache=new Map(Object.entries(X))}}catch(U){console.error("[BrowserPersistence] Failed to load from localStorage:",U)}this.isLoaded=!0}persist(){if(this.isAvailable())try{let U=Object.fromEntries(this.cache);window.localStorage.setItem(this.keyPrefix+"state",JSON.stringify(U))}catch(U){console.error("[BrowserPersistence] Failed to save to localStorage:",U)}}async loadState(){return this.ensureLoaded(),new Map(this.cache)}async saveState(U,X){this.ensureLoaded(),this.cache.set(U,X),this.persist()}async deleteState(U){this.ensureLoaded(),this.cache.delete(U),this.persist()}async clearState(){this.cache.clear(),this.persist()}}class Q6{static getNestedValue(U,X){let q=U.split("."),Z=X;for(let Q of q){if(Z===null||Z===void 0)return;if(typeof Z==="object"&&Z!==null&&Q in Z)Z=Z[Q];else return}return Z}static interpolate(U,X){if(typeof U!=="string")return U;return U.replace(/\$\{([^}]+)\}/g,(q,Z)=>{let Q=this.getNestedValue(Z,X);if(Q!==void 0)return String(Q);return q})}static compare(U,X,q){switch(X){case"EQ":case"==":return U==q;case"NEQ":case"!=":return U!=q;case"GT":case">":return Number(U)>Number(q);case"GTE":case">=":return Number(U)>=Number(q);case"LT":case"<":return Number(U)<Number(q);case"LTE":case"<=":return Number(U)<=Number(q);case"IN":return Array.isArray(q)&&q.some((Z)=>Z===U);case"NOT_IN":return Array.isArray(q)&&!q.some((Z)=>Z===U);case"CONTAINS":if(Array.isArray(U)||typeof U==="string")return U.includes(q);return!1;case"MATCHES":if(typeof q==="string")return new RegExp(q).test(String(U));return!1;case"RANGE":if(Array.isArray(q)&&q.length===2){let Z=Number(U),Q=Number(q[0]),G=Number(q[1]);return!isNaN(Z)&&!isNaN(Q)&&!isNaN(G)&&Z>=Q&&Z<=G}return!1;default:return console.warn(`Unknown operator: ${X}`),!1}}}var G6;((G)=>{G.ENGINE_START="engine:start";G.ENGINE_DONE="engine:done";G.RULE_MATCH="rule:match";G.ACTION_SUCCESS="action:success";G.ACTION_ERROR="action:error"})(G6||={});var FX;((Z)=>{Z.RULE_ADDED="rule:added";Z.RULE_REMOVED="rule:removed";Z.RULE_UPDATED="rule:updated"})(FX||={});var QV=G6,Y6=FX;class bU{static instance;handlers=new Map;constructor(){}static getInstance(){if(!this.instance)this.instance=new bU;return this.instance}on(U,X){let q=U;if(!this.handlers.has(q))this.handlers.set(q,new Set);return this.handlers.get(q).add(X),()=>this.off(q,X)}off(U,X){let q=U,Z=this.handlers.get(q);if(Z)Z.delete(X)}emit(U,X){let q=U,Z=this.handlers.get(q);if(Z)Z.forEach((Q)=>{try{Q(X)}catch(G){console.error(`Error in event handler for ${q}:`,G)}})}}var N0=bU.getInstance();class Z2{_rules=[];actionHandlers=new Map;lastExecution=new Map;_config;constructor(U=[]){if(Array.isArray(U))this._rules=U;else this._config=U,this._rules=[...U.rules];this.sortRules()}sortRules(){this._rules.sort((U,X)=>(X.priority||0)-(U.priority||0))}registerAction(U,X){this.actionHandlers.set(U,X)}async processEvent(U){let X=[],q=this._rules.filter((Z)=>Z.enabled!==!1&&Z.on===U.event);for(let Z of q){if(Z.cooldown&&this.checkCooldown(Z.id,Z.cooldown))continue;if(this.evaluateConditions(Z.if,U)){let Q=await this.executeRuleActions(Z.do,U);if(this.lastExecution.set(Z.id,Date.now()),X.push({ruleId:Z.id,success:!0,executedActions:Q}),!this.shouldEvaluateAll())break}}return X}async processEventSimple(U,X={},q={}){let Z={event:U,data:X,globals:q,timestamp:Date.now(),state:this.getStateContext?this.getStateContext():{}};return this.processEvent(Z)}updateRules(U){let X=this.getRules(),q=new Set(X.map((Y)=>Y.id)),Z=new Set(U.map((Y)=>Y.id)),Q=U.filter((Y)=>!q.has(Y.id)),G=X.filter((Y)=>!Z.has(Y.id));this.rules=[...U],this.sortRules(),Q.forEach((Y)=>{this.emitRuleEvent(Y6.RULE_ADDED,{ruleId:Y.id,timestamp:Date.now()})}),G.forEach((Y)=>{this.emitRuleEvent(Y6.RULE_REMOVED,{ruleId:Y.id,timestamp:Date.now()})}),this.emitRuleEvent(Y6.RULE_UPDATED,{count:U.length,added:Q.length,removed:G.length,unchanged:U.length-Q.length,timestamp:Date.now()})}emitRuleEvent(U,X){try{if(N0)N0.emit(U,{...X,timestamp:Date.now()})}catch(q){console.warn(`Could not emit event ${U}:`,q)}}getRules(){return[...this.rules]}checkCooldown(U,X){let q=this.lastExecution.get(U);if(!q)return!1;return Date.now()-q<X}shouldEvaluateAll(){return this.config?.globalSettings?.evaluateAll??!0}getStateContext(){return{}}evaluateConditions(U,X){if(!U)return!0;if(Array.isArray(U))return U.every((q)=>this.evaluateSingleCondition(q,X));return this.evaluateSingleCondition(U,X)}evaluateSingleCondition(U,X){if("operator"in U&&"conditions"in U){let G=U;if(G.operator==="OR")return G.conditions.some((Y)=>this.evaluateSingleCondition(Y,X));else return G.conditions.every((Y)=>this.evaluateSingleCondition(Y,X))}let q=U,Z=e.evaluate(q.field,X),Q=q.value;if(typeof Q==="string"&&Q.includes("${"))Q=e.interpolate(Q,X);return Q6.compare(Z,q.operator,Q)}async executeRuleActions(U,X){let q=[],Z=[],Q="ALL";if(Array.isArray(U))Z=U;else if("mode"in U&&"actions"in U){let Y=U;Q=Y.mode,Z=Y.actions}else Z=[U];if(Q==="EITHER"&&Z.length>0){let Y=Z.reduce((W,$)=>W+($.probability||1),0),J=Math.random()*Y,H;for(let W of Z){let $=W.probability||1;if(J-=$,J<=0){H=W;break}}if(!H&&Z.length>0)H=Z[Z.length-1];if(H)Z=[H];else Z=[]}let G=X.lastResult;for(let Y of Z){let J={...X,lastResult:G},H=await this.executeSingleAction(Y,J);if(q.push(H),Q==="SEQUENCE")G=H.result}return q}async executeSingleAction(U,X){let q=U.probability;if(typeof q==="string"){let G=e.evaluate(q,X);q=typeof G==="number"?G:Number(G)}if(q!==void 0&&Math.random()>q)return{type:U.type,timestamp:Date.now(),result:{skipped:"probability check failed"}};let Z=U.delay;if(typeof Z==="string"){let G=e.evaluate(Z,X);Z=typeof G==="number"?G:Number(G)}if(Z&&Z>0)await new Promise((G)=>setTimeout(G,Z));let Q=this.interpolateParams(U.params||{},X);try{let G;try{let{ActionRegistry:J}=await Promise.resolve().then(() => (q2(),AX)),H=J.getInstance().get(U.type);if(H)G=(W)=>H({...U,params:W},X)}catch{G=this.actionHandlers.get(U.type)}let Y;if(G)Y=await G(Q,X);else{let J=`No handler registered for action type: ${U.type}`;console.warn(J),Y={warning:J}}return{type:U.type,result:Y,timestamp:Date.now()}}catch(G){return console.error(`Error executing action ${U.type}:`,G),{type:U.type,error:String(G),timestamp:Date.now()}}}interpolateParams(U,X){let q={};for(let[Z,Q]of Object.entries(U))if(typeof Q==="string")q[Z]=e.interpolate(Q,X);else if(typeof Q==="object"&&Q!==null&&!Array.isArray(Q))q[Z]=this.interpolateDeep(Q,X);else q[Z]=Q;return q}interpolateDeep(U,X){if(typeof U==="string")return e.interpolate(U,X);if(Array.isArray(U))return U.map((q)=>this.interpolateDeep(q,X));if(typeof U==="object"&&U!==null){let q={};for(let Z in U)q[Z]=this.interpolateDeep(U[Z],X);return q}return U}get rules(){return[...this._rules]}get config(){return this._config}set rules(U){this._rules=[...U],this.sortRules()}}q2();X2();class fU extends Z2{actionRegistry;stateManager;constructor(U){super(U);this.actionRegistry=P1.getInstance(),this.stateManager=D0.getInstance()}async processEvent(U){let X=[];if(U.state=this.stateManager.getAll(),N0.emit("engine:start",{context:U,rulesCount:this.rules.length}),this.config?.globalSettings?.debugMode)console.log(`[RuleEngine] Evaluating context with ${this.rules.length} rules for event: ${U.event}`);let q=this.rules.filter((Z)=>Z.enabled!==!1&&Z.on===U.event);for(let Z of q){if(Z.cooldown&&this.checkCooldown(Z.id,Z.cooldown)){if(this.config?.globalSettings?.debugMode)console.log(`[RuleEngine] Rule ${Z.id} in cooldown`);continue}if(this.evaluateConditions(Z.if,U)){if(this.config?.globalSettings?.debugMode)console.log(`[RuleEngine] Executing rule: ${Z.name||Z.id}`);N0.emit("rule:match",{rule:Z,context:U});let G=await this.executeRuleActionsWithRegistry(Z.do,U);if(X.push({ruleId:Z.id,executedActions:G,success:!0}),this.updateLastExecution(Z.id),!this.shouldEvaluateAll())break}}return N0.emit("engine:done",{results:X,context:U}),X}async processEventSimple(U,X={},q={}){let Z={event:U,data:X,globals:q,timestamp:Date.now(),state:this.stateManager.getAll()};return this.processEvent(Z)}async executeRuleActionsWithRegistry(U,X){let q=[],Z=[],Q="ALL";if(Array.isArray(U))Z=U;else if(this.isActionGroup(U)){let Y=U;Q=Y.mode,Z=Y.actions}else Z=[U];if(Q==="EITHER"&&Z.length>0){let Y=Z.reduce((W,$)=>W+($.probability||1),0),J=Math.random()*Y,H;for(let W of Z){let $=W.probability||1;if(J-=$,J<=0){H=W;break}}if(H)Z=[H]}let G=X.lastResult;for(let Y of Z){let J={...X,lastResult:G},H=await this.executeSingleActionWithRegistry(Y,J);if(q.push(H),Q==="SEQUENCE")G=H.result}return q}isActionGroup(U){return typeof U==="object"&&U!==null&&"mode"in U&&"actions"in U}async executeSingleActionWithRegistry(U,X){let q=U.probability;if(typeof q==="string"){let{ExpressionEngine:G}=$X(EU),Y=G.evaluate(q,X);q=typeof Y==="number"?Y:Number(Y)}if(q!==void 0&&Math.random()>q)return{type:U.type,timestamp:Date.now(),result:{skipped:"probability check failed"}};let Z=U.delay;if(typeof Z==="string"){let{ExpressionEngine:G}=$X(EU),Y=G.evaluate(Z,X);Z=typeof Y==="number"?Y:Number(Y)}if(Z&&Z>0)await new Promise((G)=>setTimeout(G,Z));let Q=this.interpolateParams(U.params||{},X);try{let G=this.actionRegistry.get(U.type),Y;if(G)Y=await G({...U,params:Q},X);else{let J=`Generic or unknown action type: ${U.type}`;if(this.config?.globalSettings?.strictActions)throw Error(J);console.warn(J),Y={warning:`Generic action executed: ${U.type}`}}return N0.emit("action:success",{action:{...U,params:Q},context:X,result:Y}),{type:U.type,result:Y,timestamp:Date.now()}}catch(G){return console.error("Error executing action:",U,G),N0.emit("action:error",{action:U,context:X,error:String(G)}),{type:U.type,error:String(G),timestamp:Date.now()}}}updateLastExecution(U){this.lastExecution.set(U,Date.now())}getStateContext(){return this.stateManager.getAll()}shouldEvaluateAll(){return this.config?.globalSettings?.evaluateAll??!0}async executeRuleActions(U,X){return this.executeRuleActionsWithRegistry(U,X)}async executeSingleAction(U,X){return this.executeSingleActionWithRegistry(U,X)}}q2();class rQ{static create(U,X,q={}){return{event:U,timestamp:Date.now(),data:typeof X==="object"&&X!==null?X:{value:X},globals:q,helpers:this.getDefaultHelpers()}}static fromRequest(U,X,q={}){let Z=new URL(U.url);return{event:"HTTP_REQUEST",timestamp:Date.now(),data:{method:U.method,path:Z.pathname,query:Object.fromEntries(Z.searchParams),headers:(()=>{let Q={};return U.headers.forEach((G,Y)=>Q[Y]=G),Q})(),body:X||{}},globals:{...q,ip:U.headers.get("x-forwarded-for")||"unknown"},helpers:this.getDefaultHelpers()}}static fromWebhook(U,X,q,Z={}){return{event:`WEBHOOK_${U.toUpperCase()}_${X.toUpperCase()}`,timestamp:Date.now(),data:q,globals:{...Z,provider:U},helpers:this.getDefaultHelpers()}}static getDefaultHelpers(){return{now:()=>Date.now(),uuid:()=>crypto.randomUUID(),jsonParse:(U)=>typeof U==="string"?JSON.parse(U):null,jsonStringify:(U)=>JSON.stringify(U)}}}X2();q2();X2();var l0=(U)=>Array.isArray(U)?U:[U],VX=(U,X)=>{let q=[[],[]];for(let Z of U)if(X(Z))q[0].push(Z);else q[1].push(Z);return q},J6=Array,z0=(U,X)=>U.includes(X),OX=(U,X=0)=>[...Array(U)].map((q,Z)=>Z+X),g=(U,X,q)=>{if(U===void 0)return X===void 0?[]:Array.isArray(X)?X:[X];if(q?.prepend)if(Array.isArray(X))U.unshift(...X);else U.unshift(X);else if(Array.isArray(X))U.push(...X);else U.push(X);return U},g0=(U,X)=>{if(X===void 0||X===null)return U??[];if(U===void 0||U===null)return l0(X);return U.concat(X)},BX=(...U)=>U.reduce(g0,[]),C0=(U,X,q)=>{if(U===void 0)return Array.isArray(X)?X:[X];let Z=q?.isEqual??((Q,G)=>Q===G);for(let Q of l0(X))if(!U.some((G)=>Z(G,Q)))U.push(Q);return U},TX=(U,X)=>U.reduce((q,Z)=>{let Q=Z[X];return q[Q]=g(q[Q],Z),q},{}),y0=(U,X,q)=>U.length===X.length&&U.every(q?.isEqual?(Z,Q)=>q.isEqual(Z,X[Q]):(Z,Q)=>Z===X[Q]);var Q0=(U,X)=>r(U)===X,r=(U)=>{let X=typeof U;return X==="object"?U===null?"null":"object":X==="function"?"object":X},G0={boolean:"boolean",null:"null",undefined:"undefined",bigint:"a bigint",number:"a number",object:"an object",string:"a string",symbol:"a symbol"},DX={...G0,function:"a function"};class RX extends Error{}var y=(U)=>Y1(U,RX),Y1=(U,X=Error)=>{throw new X(U)};class Q2 extends Error{name="ParseError"}var F=(U)=>Y1(U,Q2),R0=(U)=>` ${U}`,MX="​";var S=(U,X)=>{let q={},Z=Array.isArray(U),Q=!1;for(let[G,Y]of Object.entries(U).entries()){let J=Z?X(G,Y[1]):X(...Y,G);Q||=typeof J[0]==="number";let H=Array.isArray(J[0])||J.length===0?J:[J];for(let[W,$]of H)if(typeof W==="object")q[W.group]=g(q[W.group],$);else q[W]=$}return Q?Object.values(q):q};var gU=Object.entries;var a=(U,X)=>(U in X),w1=(U,X)=>(X in U);class yU{constructor(U){Object.assign(this,U)}}var PX=class{};class G2 extends PX{}var aQ=(U,X)=>{let q={},Z={},Q;for(Q in U)if(Q in X)q[Q]=U[Q];else Z[Q]=U[Q];return[q,Z]};var H6=(U,X)=>aQ(U,X)[1],S0=(U)=>Object.keys(U).length===0,J1=(U)=>[...Object.entries(U),...Object.getOwnPropertySymbols(U).map((X)=>[X,U[X]])],wX=(U,X)=>Object.defineProperties(U,Object.getOwnPropertyDescriptors(X)),IX=(U)=>{let X=Object.keys(U).sort(),q={};for(let Z=0;Z<X.length;Z++)q[X[Z]]=U[X[Z]];return q};var Y0=R0(`unset${MX}`),KX=(U)=>Object.values(U).filter((X)=>{if(typeof X==="number")return!0;return typeof U[X]!=="number"});var kU={Array,Boolean,Date,Error,Function,Map,Number,Promise,RegExp,Set,String,WeakMap,WeakSet},vU=globalThis.File??Blob,xU={ArrayBuffer,Blob,File:vU,FormData,Headers,Request,Response,URL},nQ={Int8Array,Uint8Array,Uint8ClampedArray,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array,BigInt64Array,BigUint64Array},H1={...kU,...xU,...nQ,String,Number,Boolean},Y2=(U)=>{let X=Object.getPrototypeOf(U);while(X?.constructor&&(!a(X.constructor.name,H1)||!(U instanceof H1[X.constructor.name])))X=Object.getPrototypeOf(X);let q=X?.constructor?.name;if(q===void 0||q==="Object")return;return q},J2=(U)=>typeof U==="object"&&U!==null?Y2(U)??"object":r(U);var x=Array.isArray,tQ={Array:"an array",Function:"a function",Date:"a Date",RegExp:"a RegExp",Error:"an Error",Map:"a Map",Set:"a Set",String:"a String object",Number:"a Number object",Boolean:"a Boolean object",Promise:"a Promise",WeakMap:"a WeakMap",WeakSet:"a WeakSet"},eQ={ArrayBuffer:"an ArrayBuffer instance",Blob:"a Blob instance",File:"a File instance",FormData:"a FormData instance",Headers:"a Headers instance",Request:"a Request instance",Response:"a Response instance",URL:"a URL instance"},UG={Int8Array:"an Int8Array",Uint8Array:"a Uint8Array",Uint8ClampedArray:"a Uint8ClampedArray",Int16Array:"an Int16Array",Uint16Array:"a Uint16Array",Int32Array:"an Int32Array",Uint32Array:"a Uint32Array",Float32Array:"a Float32Array",Float64Array:"a Float64Array",BigInt64Array:"a BigInt64Array",BigUint64Array:"a BigUint64Array"},NX={...tQ,...eQ,...UG},H2=(U)=>{let X=Object(U).name??null;return X&&a(X,H1)&&H1[X]===U?X:null};var hU=(U,X)=>{let q=U.prototype;while(q!==null){if(q===X.prototype)return!0;q=Object.getPrototypeOf(q)}return!1};var CX=(U)=>SX(U,new Map),SX=(U,X)=>{if(typeof U!=="object"||U===null)return U;if(X?.has(U))return X.get(U);let q=H2(U.constructor);if(q==="Date")return new Date(U.getTime());if(q&&q!=="Array")return U;let Z=Array.isArray(U)?U.slice():Object.create(Object.getPrototypeOf(U)),Q=Object.getOwnPropertyDescriptors(U);if(X){X.set(U,Z);for(let G in Q){let Y=Q[G];if("get"in Y||"set"in Y)continue;Y.value=SX(Y.value,X)}}return Object.defineProperties(Z,Q),Z};var XG=(U)=>{let X=Y0;return()=>X===Y0?X=U():X},d0=(U)=>typeof U==="function"&&U.length===0;var EX=class extends Function{constructor(...U){let X=U.slice(0,-1),q=U[U.length-1];try{super(...X,q)}catch(Z){return y(`Encountered an unexpected error while compiling your definition:
139
+ `,X)+1}return{type:U,offset:this.offset,indent:this.indent,source:this.source}}startBlockValue(U){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 X=KU(U),q=U2(X);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 X=KU(U),q=U2(X);return{type:"block-map",offset:this.offset,indent:this.indent,items:[{start:q,key:null,sep:[this.sourceToken]}]}}}return null}atIndentedComment(U,X){if(this.type!=="comment")return!1;if(this.indent<=X)return!1;return U.every((q)=>q.type==="newline"||q.type==="space")}*documentEnd(U){if(this.type!=="doc-mode"){if(U.end)U.end.push(this.sourceToken);else U.end=[this.sourceToken];if(this.type==="newline")yield*this.pop()}}*lineEnd(U){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(U.end)U.end.push(this.sourceToken);else U.end=[this.sourceToken];if(this.type==="newline")yield*this.pop()}}}rF.Parser=fQ});var hQ=R((QA)=>{var gQ=s9(),nF=n2(),Z6=t2(),tF=Z9(),eF=k(),UA=ZX(),yQ=QX();function kQ(U){let X=U.prettyErrors!==!1;return{lineCounter:U.lineCounter||X&&new UA.LineCounter||null,prettyErrors:X}}function XA(U,X={}){let{lineCounter:q,prettyErrors:Z}=kQ(X),Q=new yQ.Parser(q?.addNewLine),G=new gQ.Composer(X),Y=Array.from(G.compose(Q.parse(U)));if(Z&&q)for(let J of Y)J.errors.forEach(Z6.prettifyError(U,q)),J.warnings.forEach(Z6.prettifyError(U,q));if(Y.length>0)return Y;return Object.assign([],{empty:!0},G.streamInfo())}function vQ(U,X={}){let{lineCounter:q,prettyErrors:Z}=kQ(X),Q=new yQ.Parser(q?.addNewLine),G=new gQ.Composer(X),Y=null;for(let J of G.compose(Q.parse(U),!0,U.length))if(!Y)Y=J;else if(Y.options.logLevel!=="silent"){Y.errors.push(new Z6.YAMLParseError(J.range.slice(0,2),"MULTIPLE_DOCS","Source contains multiple documents; please use YAML.parseAllDocuments()"));break}if(Z&&q)Y.errors.forEach(Z6.prettifyError(U,q)),Y.warnings.forEach(Z6.prettifyError(U,q));return Y}function qA(U,X,q){let Z=void 0;if(typeof X==="function")Z=X;else if(q===void 0&&X&&typeof X==="object")q=X;let Q=vQ(U,q);if(!Q)return null;if(Q.warnings.forEach((G)=>tF.warn(Q.options.logLevel,G)),Q.errors.length>0)if(Q.options.logLevel!=="silent")throw Q.errors[0];else Q.errors=[];return Q.toJS(Object.assign({reviver:Z},q))}function ZA(U,X,q){let Z=null;if(typeof X==="function"||Array.isArray(X))Z=X;else if(q===void 0&&X)q=X;if(typeof q==="string")q=q.length;if(typeof q==="number"){let Q=Math.round(q);q=Q<1?void 0:Q>8?{indent:8}:{indent:Q}}if(U===void 0){let{keepUndefined:Q}=q??X??{};if(!Q)return}if(eF.isDocument(U)&&!Z)return U.toString(q);return new nF.Document(U,Z,q).toString(q)}QA.parse=qA;QA.parseAllDocuments=XA;QA.parseDocument=vQ;QA.stringify=ZA});var uQ=R((DA)=>{var WA=s9(),_A=n2(),$A=j9(),GX=t2(),LA=k2(),G1=k(),zA=U1(),FA=i(),AA=q1(),OA=Z1(),VA=wU(),BA=qX(),TA=ZX(),RA=QX(),NU=hQ(),xQ=g2();DA.Composer=WA.Composer;DA.Document=_A.Document;DA.Schema=$A.Schema;DA.YAMLError=GX.YAMLError;DA.YAMLParseError=GX.YAMLParseError;DA.YAMLWarning=GX.YAMLWarning;DA.Alias=LA.Alias;DA.isAlias=G1.isAlias;DA.isCollection=G1.isCollection;DA.isDocument=G1.isDocument;DA.isMap=G1.isMap;DA.isNode=G1.isNode;DA.isPair=G1.isPair;DA.isScalar=G1.isScalar;DA.isSeq=G1.isSeq;DA.Pair=zA.Pair;DA.Scalar=FA.Scalar;DA.YAMLMap=AA.YAMLMap;DA.YAMLSeq=OA.YAMLSeq;DA.CST=VA;DA.Lexer=BA.Lexer;DA.LineCounter=TA.LineCounter;DA.Parser=RA.Parser;DA.parse=NU.parse;DA.parseAllDocuments=NU.parseAllDocuments;DA.parseDocument=NU.parseDocument;DA.stringify=NU.stringify;DA.visit=xQ.visit;DA.visitAsync=xQ.visitAsync});class sQ{queue=[];engine;config;timer=null;isProcessing=!1;constructor(U,X={maxBatchSize:10,flushIntervalMs:100}){this.engine=U,this.config=X}push(U){if(this.queue.push(U),this.queue.length>=this.config.maxBatchSize)this.processQueue();else if(!this.timer)this.timer=setTimeout(()=>this.processQueue(),this.config.flushIntervalMs)}async processQueue(){if(this.isProcessing)return;if(this.isProcessing=!0,this.timer)clearTimeout(this.timer),this.timer=null;let U=this.queue.splice(0,this.config.maxBatchSize);if(U.length===0){this.isProcessing=!1;return}console.debug(`[EventQueue] Processing batch of ${U.length} events.`);for(let X of U)try{await this.engine.evaluateContext(X)}catch(q){console.error(`[EventQueue] Error processing event ${X.event}:`,q)}if(this.queue.length>0)setTimeout(()=>this.processQueue(),0);this.isProcessing=!1}getQueueLength(){return this.queue.length}}class oQ{keyPrefix;cache=new Map;isLoaded=!1;constructor(U="trigger_system:"){this.keyPrefix=U}isAvailable(){return typeof window<"u"&&typeof window.localStorage<"u"}ensureLoaded(){if(this.isLoaded)return;if(this.isAvailable())try{let U=window.localStorage.getItem(this.keyPrefix+"state");if(U){let X=JSON.parse(U);this.cache=new Map(Object.entries(X))}}catch(U){console.error("[BrowserPersistence] Failed to load from localStorage:",U)}this.isLoaded=!0}persist(){if(this.isAvailable())try{let U=Object.fromEntries(this.cache);window.localStorage.setItem(this.keyPrefix+"state",JSON.stringify(U))}catch(U){console.error("[BrowserPersistence] Failed to save to localStorage:",U)}}async loadState(){return this.ensureLoaded(),new Map(this.cache)}async saveState(U,X){this.ensureLoaded(),this.cache.set(U,X),this.persist()}async deleteState(U){this.ensureLoaded(),this.cache.delete(U),this.persist()}async clearState(){this.cache.clear(),this.persist()}}class Q6{static getNestedValue(U,X){let q=U.split("."),Z=X;for(let Q of q){if(Z===null||Z===void 0)return;if(typeof Z==="object"&&Z!==null&&Q in Z)Z=Z[Q];else return}return Z}static interpolate(U,X){if(typeof U!=="string")return U;return U.replace(/\$\{([^}]+)\}/g,(q,Z)=>{let Q=this.getNestedValue(Z,X);if(Q!==void 0)return String(Q);return q})}static compare(U,X,q){switch(X){case"EQ":case"==":return U==q;case"NEQ":case"!=":return U!=q;case"GT":case">":return Number(U)>Number(q);case"GTE":case">=":return Number(U)>=Number(q);case"LT":case"<":return Number(U)<Number(q);case"LTE":case"<=":return Number(U)<=Number(q);case"IN":return Array.isArray(q)&&q.some((Z)=>Z===U);case"NOT_IN":return Array.isArray(q)&&!q.some((Z)=>Z===U);case"CONTAINS":if(Array.isArray(U)||typeof U==="string")return U.includes(q);return!1;case"MATCHES":if(typeof q==="string")return new RegExp(q).test(String(U));return!1;case"RANGE":if(Array.isArray(q)&&q.length===2){let Z=Number(U),Q=Number(q[0]),G=Number(q[1]);return!isNaN(Z)&&!isNaN(Q)&&!isNaN(G)&&Z>=Q&&Z<=G}return!1;default:return console.warn(`Unknown operator: ${X}`),!1}}}var G6;((G)=>{G.ENGINE_START="engine:start";G.ENGINE_DONE="engine:done";G.RULE_MATCH="rule:match";G.ACTION_SUCCESS="action:success";G.ACTION_ERROR="action:error"})(G6||={});var zX;((Z)=>{Z.RULE_ADDED="rule:added";Z.RULE_REMOVED="rule:removed";Z.RULE_UPDATED="rule:updated"})(zX||={});var QO=G6,Y6=zX;class jU{static instance;handlers=new Map;constructor(){}static getInstance(){if(!this.instance)this.instance=new jU;return this.instance}on(U,X){let q=U;if(!this.handlers.has(q))this.handlers.set(q,new Set);return this.handlers.get(q).add(X),()=>this.off(q,X)}off(U,X){let q=U,Z=this.handlers.get(q);if(Z)Z.delete(X)}emit(U,X){let q=U,Z=this.handlers.get(q);if(Z)Z.forEach((Q)=>{try{Q(X)}catch(G){console.error(`Error in event handler for ${q}:`,G)}})}}var N0=jU.getInstance();class Z2{_rules=[];actionHandlers=new Map;lastExecution=new Map;_config;constructor(U=[]){if(Array.isArray(U))this._rules=U;else this._config=U,this._rules=[...U.rules];this.sortRules()}sortRules(){this._rules.sort((U,X)=>(X.priority||0)-(U.priority||0))}registerAction(U,X){this.actionHandlers.set(U,X)}async processEvent(U){let X=[];if(!U.state)U.state={};let q=this._rules.filter((Z)=>Z.enabled!==!1&&Z.on===U.event);for(let Z of q){if(Z.cooldown&&this.checkCooldown(Z.id,Z.cooldown))continue;if(this.evaluateConditions(Z.if,U)){let Q=await this.executeRuleActions(Z.do,U);if(this.lastExecution.set(Z.id,Date.now()),X.push({ruleId:Z.id,success:!0,executedActions:Q}),!this.shouldEvaluateAll())break}}return X}async processEventSimple(U,X={},q={}){let Z={event:U,data:X,vars:q,timestamp:Date.now(),state:this.getStateContext?this.getStateContext():{}};return this.processEvent(Z)}updateRules(U){let X=this.getRules(),q=new Set(X.map((Y)=>Y.id)),Z=new Set(U.map((Y)=>Y.id)),Q=U.filter((Y)=>!q.has(Y.id)),G=X.filter((Y)=>!Z.has(Y.id));this.rules=[...U],this.sortRules(),Q.forEach((Y)=>{this.emitRuleEvent(Y6.RULE_ADDED,{ruleId:Y.id,timestamp:Date.now()})}),G.forEach((Y)=>{this.emitRuleEvent(Y6.RULE_REMOVED,{ruleId:Y.id,timestamp:Date.now()})}),this.emitRuleEvent(Y6.RULE_UPDATED,{count:U.length,added:Q.length,removed:G.length,unchanged:U.length-Q.length,timestamp:Date.now()})}emitRuleEvent(U,X){try{if(N0)N0.emit(U,{...X,timestamp:Date.now()})}catch(q){console.warn(`Could not emit event ${U}:`,q)}}getRules(){return[...this.rules]}checkCooldown(U,X){let q=this.lastExecution.get(U);if(!q)return!1;return Date.now()-q<X}shouldEvaluateAll(){return this.config?.globalSettings?.evaluateAll??!0}getStateContext(){return{}}evaluateConditions(U,X){if(!U)return!0;if(Array.isArray(U))return U.every((q)=>this.evaluateSingleCondition(q,X));return this.evaluateSingleCondition(U,X)}evaluateSingleCondition(U,X){if("operator"in U&&"conditions"in U){let G=U;if(G.operator==="OR")return G.conditions.some((Y)=>this.evaluateSingleCondition(Y,X));else return G.conditions.every((Y)=>this.evaluateSingleCondition(Y,X))}let q=U,Z=e.evaluate(q.field,X),Q=q.value;if(typeof Q==="string"&&Q.includes("${"))Q=e.interpolate(Q,X);return Q6.compare(Z,q.operator,Q)}async executeRuleActions(U,X){let q=[],Z=[],Q="ALL";if(Array.isArray(U))Z=U;else if(U&&typeof U==="object"&&"mode"in U&&"actions"in U){let G=U;Q=G.mode,Z=G.actions}else Z=[U];if(Q==="EITHER"&&Z.length>0){let G=Z.reduce((H,W)=>H+(W.probability||1),0),Y=Math.random()*G,J;for(let H of Z){let W=H.probability||1;if(Y-=W,Y<=0){J=H;break}}if(!J&&Z.length>0)J=Z[Z.length-1];if(J)Z=[J];else Z=[]}for(let G of Z){let Y=await this.executeSingleAction(G,X);q.push(Y)}return q}async executeSingleAction(U,X){if(!U.type&&!U.run&&!U.break&&!U.continue){let G=["params","run","delay","probability","if","then","else","break","continue","mode","actions"],Y=Object.keys(U).filter((J)=>!G.includes(J));for(let J of Y){if(U.type=J,typeof U[J]==="string")U.params={...U.params,message:U[J],content:U[J]};else if(typeof U[J]==="object"&&U[J]!==null)U.params={...U.params,...U[J]};break}}if(U.run)try{return{type:"RUN",result:Function("context","state","data","vars","env","helpers",`with(context) { ${U.run} }`)(X,X.state,X.data,X.vars,X.env,X.helpers),timestamp:Date.now()}}catch(G){return{type:"RUN",error:String(G),timestamp:Date.now()}}let q=U.probability;if(typeof q==="string"){let G=e.evaluate(q,X);q=typeof G==="number"?G:Number(G)}if(q!==void 0&&Math.random()>q)return{type:U.type||"skipped",timestamp:Date.now(),result:{skipped:"probability check failed"}};let Z=U.delay;if(typeof Z==="string"){let G=e.evaluate(Z,X);Z=typeof G==="number"?G:Number(G)}if(Z&&Z>0)await new Promise((G)=>setTimeout(G,Z));let Q=this.interpolateParams(U.params||{},X);try{let G;try{let{ActionRegistry:J}=await Promise.resolve().then(() => (q2(),FX)),H=J.getInstance().get(U.type);if(H)G=(W)=>H({...U,params:W},X)}catch{G=this.actionHandlers.get(U.type)}let Y;if(G)Y=await G(Q,X);else{let J=`No handler registered for action type: ${U.type}`;console.warn(J),Y={warning:J}}return{type:U.type,result:Y,timestamp:Date.now()}}catch(G){return console.error(`Error executing action ${U.type}:`,G),{type:U.type,error:String(G),timestamp:Date.now()}}}interpolateParams(U,X){let q={};for(let[Z,Q]of Object.entries(U))if(typeof Q==="string")q[Z]=e.interpolate(Q,X);else if(typeof Q==="object"&&Q!==null&&!Array.isArray(Q))q[Z]=this.interpolateDeep(Q,X);else q[Z]=Q;return q}interpolateDeep(U,X){if(typeof U==="string")return e.interpolate(U,X);if(Array.isArray(U))return U.map((q)=>this.interpolateDeep(q,X));if(typeof U==="object"&&U!==null){let q={};for(let Z in U)q[Z]=this.interpolateDeep(U[Z],X);return q}return U}get rules(){return[...this._rules]}get config(){return this._config}set rules(U){this._rules=[...U],this.sortRules()}}q2();P1();class bU extends Z2{actionRegistry;stateManager;constructor(U){super(U);this.actionRegistry=w1.getInstance(),this.stateManager=U0.getInstance()}async processEvent(U){let X=[];if(U.state=this.stateManager.getLiveProxy(),this.config?.stateConfig)await this.stateManager.applyConfig(this.config.stateConfig);if(N0.emit("engine:start",{context:U,rulesCount:this.rules.length}),this.config?.globalSettings?.debugMode)console.log(`[RuleEngine] Evaluating context with ${this.rules.length} rules for event: ${U.event}`);let q=this.rules.filter((Z)=>Z.enabled!==!1&&Z.on===U.event);for(let Z of q){if(Z.cooldown&&this.checkCooldown(Z.id,Z.cooldown)){if(this.config?.globalSettings?.debugMode)console.log(`[RuleEngine] Rule ${Z.id} in cooldown`);continue}if(this.evaluateConditions(Z.if,U)){if(this.config?.globalSettings?.debugMode)console.log(`[RuleEngine] Executing rule: ${Z.name||Z.id}`);N0.emit("rule:match",{rule:Z,context:U});let G=await this.executeRuleActionsWithRegistry(Z.do,U);if(X.push({ruleId:Z.id,executedActions:G,success:!0}),this.updateLastExecution(Z.id),!this.shouldEvaluateAll())break}}return N0.emit("engine:done",{results:X,context:U}),X}async processEventSimple(U,X={},q={}){let Z={event:U,data:X,vars:q,timestamp:Date.now(),state:this.stateManager.getLiveProxy()};return this.processEvent(Z)}async executeRuleActionsWithRegistry(U,X){let q=[],Z=[],Q="ALL";if(Array.isArray(U))Z=U;else if(this.isActionGroup(U)){let G=U;Q=G.mode,Z=G.actions}else Z=[U];if(Q==="EITHER"&&Z.length>0){let G=Z.reduce((H,W)=>H+(W.probability||1),0),Y=Math.random()*G,J;for(let H of Z){let W=H.probability||1;if(Y-=W,Y<=0){J=H;break}}if(J)Z=[J]}for(let G of Z){let Y=await this.executeSingleActionWithRegistry(G,X);q.push(Y)}return q}isActionGroup(U){return typeof U==="object"&&U!==null&&"mode"in U&&"actions"in U}async executeSingleActionWithRegistry(U,X){if(!U.type&&!U.run&&!U.break&&!U.continue){let G=Object.keys(U);for(let Y of G)if(this.actionRegistry.get(Y)){if(U.type=Y,typeof U[Y]==="string")U.params={...U.params,message:U[Y],content:U[Y]};else if(typeof U[Y]==="object"&&U[Y]!==null)U.params={...U.params,...U[Y]};break}}if(U.run)try{return{type:"RUN",result:Function("context","state","data","vars","env","helpers",`with(context) { ${U.run} }`)(X,X.state,X.data,X.vars,X.env,X.helpers),timestamp:Date.now()}}catch(G){return{type:"RUN",error:String(G),timestamp:Date.now()}}let q=U.probability;if(typeof q==="string"){let{ExpressionEngine:G}=_X(SU),Y=G.evaluate(q,X);q=typeof Y==="number"?Y:Number(Y)}if(q!==void 0&&Math.random()>q)return{type:U.type||"unknown",timestamp:Date.now(),result:{skipped:"probability check failed"}};if(U.break)return{type:"BREAK",result:"Break action",timestamp:Date.now()};if(U.continue)return{type:"CONTINUE",result:"Continue action",timestamp:Date.now()};let Z=U.delay;if(typeof Z==="string"){let{ExpressionEngine:G}=_X(SU),Y=G.evaluate(Z,X);Z=typeof Y==="number"?Y:Number(Y)}if(Z&&Z>0)await new Promise((G)=>setTimeout(G,Z));let Q=this.interpolateParams(U.params||{},X);try{let G=this.actionRegistry.get(U.type),Y;if(G)Y=await G({...U,params:Q},X);else{let J=`Generic or unknown action type: ${U.type}`;if(this.config?.globalSettings?.strictActions)throw Error(J);console.warn(J),Y={warning:`Generic action executed: ${U.type}`}}return N0.emit("action:success",{action:{...U,params:Q},context:X,result:Y}),{type:U.type,result:Y,timestamp:Date.now()}}catch(G){return console.error("Error executing action:",U,G),N0.emit("action:error",{action:U,context:X,error:String(G)}),{type:U.type,error:String(G),timestamp:Date.now()}}}updateLastExecution(U){this.lastExecution.set(U,Date.now())}getStateContext(){return this.stateManager.getAll()}shouldEvaluateAll(){return this.config?.globalSettings?.evaluateAll??!0}async executeRuleActions(U,X){return this.executeRuleActionsWithRegistry(U,X)}async executeSingleAction(U,X){return this.executeSingleActionWithRegistry(U,X)}}q2();P1();class rQ{static create(U,X,q={}){return{event:U,timestamp:Date.now(),data:typeof X==="object"&&X!==null?X:{value:X},vars:q,state:U0.getInstance().getLiveProxy(),helpers:this.getDefaultHelpers()}}static fromRequest(U,X,q={}){let Z=new URL(U.url);return{event:"HTTP_REQUEST",timestamp:Date.now(),data:{method:U.method,path:Z.pathname,query:Object.fromEntries(Z.searchParams),headers:(()=>{let Q={};return U.headers.forEach((G,Y)=>Q[Y]=G),Q})(),body:X||{}},vars:{...q,ip:U.headers.get("x-forwarded-for")||"unknown"},state:U0.getInstance().getLiveProxy(),helpers:this.getDefaultHelpers()}}static fromWebhook(U,X,q,Z={}){return{event:`WEBHOOK_${U.toUpperCase()}_${X.toUpperCase()}`,timestamp:Date.now(),data:q,vars:{...Z,provider:U},state:U0.getInstance().getLiveProxy(),helpers:this.getDefaultHelpers()}}static getDefaultHelpers(){return{now:()=>Date.now(),uuid:()=>crypto.randomUUID(),jsonParse:(U)=>typeof U==="string"?JSON.parse(U):null,jsonStringify:(U)=>JSON.stringify(U)}}}P1();q2();P1();var l0=(U)=>Array.isArray(U)?U:[U],AX=(U,X)=>{let q=[[],[]];for(let Z of U)if(X(Z))q[0].push(Z);else q[1].push(Z);return q},J6=Array,F0=(U,X)=>U.includes(X),OX=(U,X=0)=>[...Array(U)].map((q,Z)=>Z+X),g=(U,X,q)=>{if(U===void 0)return X===void 0?[]:Array.isArray(X)?X:[X];if(q?.prepend)if(Array.isArray(X))U.unshift(...X);else U.unshift(X);else if(Array.isArray(X))U.push(...X);else U.push(X);return U},g0=(U,X)=>{if(X===void 0||X===null)return U??[];if(U===void 0||U===null)return l0(X);return U.concat(X)},VX=(...U)=>U.reduce(g0,[]),C0=(U,X,q)=>{if(U===void 0)return Array.isArray(X)?X:[X];let Z=q?.isEqual??((Q,G)=>Q===G);for(let Q of l0(X))if(!U.some((G)=>Z(G,Q)))U.push(Q);return U},BX=(U,X)=>U.reduce((q,Z)=>{let Q=Z[X];return q[Q]=g(q[Q],Z),q},{}),y0=(U,X,q)=>U.length===X.length&&U.every(q?.isEqual?(Z,Q)=>q.isEqual(Z,X[Q]):(Z,Q)=>Z===X[Q]);var G0=(U,X)=>r(U)===X,r=(U)=>{let X=typeof U;return X==="object"?U===null?"null":"object":X==="function"?"object":X},Y0={boolean:"boolean",null:"null",undefined:"undefined",bigint:"a bigint",number:"a number",object:"an object",string:"a string",symbol:"a symbol"},TX={...Y0,function:"a function"};class RX extends Error{}var y=(U)=>Y1(U,RX),Y1=(U,X=Error)=>{throw new X(U)};class Q2 extends Error{name="ParseError"}var F=(U)=>Y1(U,Q2),D0=(U)=>` ${U}`,DX="​";var S=(U,X)=>{let q={},Z=Array.isArray(U),Q=!1;for(let[G,Y]of Object.entries(U).entries()){let J=Z?X(G,Y[1]):X(...Y,G);Q||=typeof J[0]==="number";let H=Array.isArray(J[0])||J.length===0?J:[J];for(let[W,$]of H)if(typeof W==="object")q[W.group]=g(q[W.group],$);else q[W]=$}return Q?Object.values(q):q};var fU=Object.entries;var a=(U,X)=>(U in X),I1=(U,X)=>(X in U);class gU{constructor(U){Object.assign(this,U)}}var MX=class{};class G2 extends MX{}var aQ=(U,X)=>{let q={},Z={},Q;for(Q in U)if(Q in X)q[Q]=U[Q];else Z[Q]=U[Q];return[q,Z]};var H6=(U,X)=>aQ(U,X)[1],S0=(U)=>Object.keys(U).length===0,J1=(U)=>[...Object.entries(U),...Object.getOwnPropertySymbols(U).map((X)=>[X,U[X]])],PX=(U,X)=>Object.defineProperties(U,Object.getOwnPropertyDescriptors(X)),wX=(U)=>{let X=Object.keys(U).sort(),q={};for(let Z=0;Z<X.length;Z++)q[X[Z]]=U[X[Z]];return q};var J0=D0(`unset${DX}`),IX=(U)=>Object.values(U).filter((X)=>{if(typeof X==="number")return!0;return typeof U[X]!=="number"});var yU={Array,Boolean,Date,Error,Function,Map,Number,Promise,RegExp,Set,String,WeakMap,WeakSet},kU=globalThis.File??Blob,vU={ArrayBuffer,Blob,File:kU,FormData,Headers,Request,Response,URL},nQ={Int8Array,Uint8Array,Uint8ClampedArray,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array,BigInt64Array,BigUint64Array},H1={...yU,...vU,...nQ,String,Number,Boolean},Y2=(U)=>{let X=Object.getPrototypeOf(U);while(X?.constructor&&(!a(X.constructor.name,H1)||!(U instanceof H1[X.constructor.name])))X=Object.getPrototypeOf(X);let q=X?.constructor?.name;if(q===void 0||q==="Object")return;return q},J2=(U)=>typeof U==="object"&&U!==null?Y2(U)??"object":r(U);var h=Array.isArray,tQ={Array:"an array",Function:"a function",Date:"a Date",RegExp:"a RegExp",Error:"an Error",Map:"a Map",Set:"a Set",String:"a String object",Number:"a Number object",Boolean:"a Boolean object",Promise:"a Promise",WeakMap:"a WeakMap",WeakSet:"a WeakSet"},eQ={ArrayBuffer:"an ArrayBuffer instance",Blob:"a Blob instance",File:"a File instance",FormData:"a FormData instance",Headers:"a Headers instance",Request:"a Request instance",Response:"a Response instance",URL:"a URL instance"},UG={Int8Array:"an Int8Array",Uint8Array:"a Uint8Array",Uint8ClampedArray:"a Uint8ClampedArray",Int16Array:"an Int16Array",Uint16Array:"a Uint16Array",Int32Array:"an Int32Array",Uint32Array:"a Uint32Array",Float32Array:"a Float32Array",Float64Array:"a Float64Array",BigInt64Array:"a BigInt64Array",BigUint64Array:"a BigUint64Array"},KX={...tQ,...eQ,...UG},H2=(U)=>{let X=Object(U).name??null;return X&&a(X,H1)&&H1[X]===U?X:null};var hU=(U,X)=>{let q=U.prototype;while(q!==null){if(q===X.prototype)return!0;q=Object.getPrototypeOf(q)}return!1};var NX=(U)=>CX(U,new Map),CX=(U,X)=>{if(typeof U!=="object"||U===null)return U;if(X?.has(U))return X.get(U);let q=H2(U.constructor);if(q==="Date")return new Date(U.getTime());if(q&&q!=="Array")return U;let Z=Array.isArray(U)?U.slice():Object.create(Object.getPrototypeOf(U)),Q=Object.getOwnPropertyDescriptors(U);if(X){X.set(U,Z);for(let G in Q){let Y=Q[G];if("get"in Y||"set"in Y)continue;Y.value=CX(Y.value,X)}}return Object.defineProperties(Z,Q),Z};var XG=(U)=>{let X=J0;return()=>X===J0?X=U():X},d0=(U)=>typeof U==="function"&&U.length===0;var SX=class extends Function{constructor(...U){let X=U.slice(0,-1),q=U[U.length-1];try{super(...X,q)}catch(Z){return y(`Encountered an unexpected error while compiling your definition:
140
140
  Message: ${Z}
141
141
  Source: (${U.slice(0,-1)}) => {
142
142
  ${U[U.length-1]}
143
- }`)}}};class J0{constructor(U,...[X]){return Object.assign(Object.setPrototypeOf(U.bind(X?.bind??this),this.constructor.prototype),X?.attach)}}var jX=XG(()=>{try{return Function("return false")()}catch{return!0}});var HO=R0("brand");var bX=R0("arkInferred");var $O=R0("args");class U0{constructor(){}}var qG=()=>{try{return((Error().stack?.split(`
144
- `)[2]?.trim()||"").match(/\(?(.+?)(?::\d+:\d+)?\)?$/)?.[1]||"unknown").replace(/^file:\/\//,"")}catch{return"unknown"}},ZG=globalThis.process?.env??{},fX={fileName:qG,env:ZG};var gX=(U)=>U[0].toUpperCase()+U.slice(1),yX=(U)=>U[0].toLowerCase()+U.slice(1),uU=(U)=>new RegExp(QG(U),typeof U==="string"?"":U.flags);var QG=(U)=>{return`^(?:${typeof U==="string"?U:U.source})$`};var k0={negativeLookahead:(U)=>`(?!${U})`,nonCapturingGroup:(U)=>`(?:${U})`},W1="\\",c0={" ":1,"\n":1,"\t":1};var GG=/^-0\.?0*$/.source,vX=/[1-9]\d*/.source,YG=/\.\d+/.source,JG=/\.\d*[1-9]/.source,xX=(U)=>uU(k0.negativeLookahead(GG)+k0.nonCapturingGroup("-?"+k0.nonCapturingGroup(k0.nonCapturingGroup("0|"+vX)+k0.nonCapturingGroup(U.decimalPattern)+"?")+(U.allowDecimalOnly?"|"+U.decimalPattern:"")+"?")),kX=xX({decimalPattern:JG,allowDecimalOnly:!1}),HG=kX.test.bind(kX),W6=xX({decimalPattern:YG,allowDecimalOnly:!0}),BO=W6.test.bind(W6),WG=/^-?\d*\.?\d*$/,_G=(U)=>U.length!==0&&WG.test(U),W2=uU(k0.negativeLookahead("^-0$")+"-?"+k0.nonCapturingGroup(k0.nonCapturingGroup("0|"+vX))),$G=W2.test.bind(W2),mU=/^-?\d+$/,LG=mU.test.bind(mU),hX={number:"a number",bigint:"a bigint",integer:"an integer"},uX=(U,X)=>`'${U}' was parsed as ${hX[X]} but could not be narrowed to a literal value. Avoid unnecessary leading or trailing zeros and other abnormal notation`,zG=(U,X)=>X==="number"?HG(U):$G(U),FG=(U,X)=>X==="number"?Number(U):Number.parseInt(U),AG=(U,X)=>X==="number"?_G(U):LG(U),mX=(U,X)=>pU(U,"number",X),pX=(U,X)=>pU(U,"number",{...X,strict:!0}),lX=(U,X)=>pU(U,"integer",X),pU=(U,X,q)=>{let Z=FG(U,X);if(!Number.isNaN(Z)){if(AG(U,X)){if(q?.strict)return zG(U,X)?Z:F(uX(U,X));return Z}}return q?.errorOnFail?F(q?.errorOnFail===!0?`Failed to parse ${hX[X]} from '${U}'`:q?.errorOnFail):void 0},dX=(U)=>{if(U[U.length-1]!=="n")return;let X=U.slice(0,-1),q;try{q=BigInt(X)}catch{return}if(W2.test(X))return q;if(mU.test(X))return F(uX(U,"bigint"))};var VG="0.56.0",OG={version:VG,filename:fX.fileName(),FileConstructor:vU},_1=OG,cX=new Map,lU=Object.create(null),_2=(U)=>{let X=cX.get(U);if(X)return X;let q=BG(U);if(lU[q])q=`${q}${lU[q]++}`;else lU[q]=1;return _1[q]=U,cX.set(U,q),q},i0=(U)=>/^[$A-Z_a-z][\w$]*$/.test(U),BG=(U)=>{switch(typeof U){case"object":{if(U===null)break;let X=Y2(U)??"object";return X[0].toLowerCase()+X.slice(1)}case"function":return i0(U.name)?U.name:"fn";case"symbol":return U.description&&i0(U.description)?U.description:"symbol"}return y(`Unexpected attempt to register serializable value of type ${r(U)}`)};var $2=(U)=>typeof U==="string"?JSON.stringify(U):typeof U==="bigint"?`${U}n`:`${U}`;var iX=(U,X={})=>L2(U,{onUndefined:"$ark.undefined",onBigInt:(q)=>`$ark.bigint-${q}`,...X},[]);var E=(U,X)=>{switch(r(U)){case"object":let q=U,Z=q.constructor?.name??"Object";return Z==="Object"||Z==="Array"?X?.quoteKeys===!1?_6(q,X?.indent??0,""):JSON.stringify(L2(q,I1,[]),null,X?.indent):_6(q,X?.indent??0,"");case"symbol":return I1.onSymbol(U);default:return $2(U)}},_6=(U,X,q)=>{if(typeof U==="function")return I1.onFunction(U);if(typeof U!=="object"||U===null)return $2(U);let Z=q+" ".repeat(X);if(Array.isArray(U)){if(U.length===0)return"[]";let G=U.map((Y)=>_6(Y,X,Z)).join(`,
143
+ }`)}}};class H0{constructor(U,...[X]){return Object.assign(Object.setPrototypeOf(U.bind(X?.bind??this),this.constructor.prototype),X?.attach)}}var EX=XG(()=>{try{return Function("return false")()}catch{return!0}});var WV=D0("brand");var jX=D0("arkInferred");var LV=D0("args");class X0{constructor(){}}var qG=()=>{try{return((Error().stack?.split(`
144
+ `)[2]?.trim()||"").match(/\(?(.+?)(?::\d+:\d+)?\)?$/)?.[1]||"unknown").replace(/^file:\/\//,"")}catch{return"unknown"}},ZG=globalThis.process?.env??{},bX={fileName:qG,env:ZG};var fX=(U)=>U[0].toUpperCase()+U.slice(1),gX=(U)=>U[0].toLowerCase()+U.slice(1),xU=(U)=>new RegExp(QG(U),typeof U==="string"?"":U.flags);var QG=(U)=>{return`^(?:${typeof U==="string"?U:U.source})$`};var k0={negativeLookahead:(U)=>`(?!${U})`,nonCapturingGroup:(U)=>`(?:${U})`},W1="\\",c0={" ":1,"\n":1,"\t":1};var GG=/^-0\.?0*$/.source,kX=/[1-9]\d*/.source,YG=/\.\d+/.source,JG=/\.\d*[1-9]/.source,vX=(U)=>xU(k0.negativeLookahead(GG)+k0.nonCapturingGroup("-?"+k0.nonCapturingGroup(k0.nonCapturingGroup("0|"+kX)+k0.nonCapturingGroup(U.decimalPattern)+"?")+(U.allowDecimalOnly?"|"+U.decimalPattern:"")+"?")),yX=vX({decimalPattern:JG,allowDecimalOnly:!1}),HG=yX.test.bind(yX),W6=vX({decimalPattern:YG,allowDecimalOnly:!0}),TV=W6.test.bind(W6),WG=/^-?\d*\.?\d*$/,_G=(U)=>U.length!==0&&WG.test(U),W2=xU(k0.negativeLookahead("^-0$")+"-?"+k0.nonCapturingGroup(k0.nonCapturingGroup("0|"+kX))),$G=W2.test.bind(W2),uU=/^-?\d+$/,LG=uU.test.bind(uU),hX={number:"a number",bigint:"a bigint",integer:"an integer"},xX=(U,X)=>`'${U}' was parsed as ${hX[X]} but could not be narrowed to a literal value. Avoid unnecessary leading or trailing zeros and other abnormal notation`,zG=(U,X)=>X==="number"?HG(U):$G(U),FG=(U,X)=>X==="number"?Number(U):Number.parseInt(U),AG=(U,X)=>X==="number"?_G(U):LG(U),uX=(U,X)=>mU(U,"number",X),mX=(U,X)=>mU(U,"number",{...X,strict:!0}),pX=(U,X)=>mU(U,"integer",X),mU=(U,X,q)=>{let Z=FG(U,X);if(!Number.isNaN(Z)){if(AG(U,X)){if(q?.strict)return zG(U,X)?Z:F(xX(U,X));return Z}}return q?.errorOnFail?F(q?.errorOnFail===!0?`Failed to parse ${hX[X]} from '${U}'`:q?.errorOnFail):void 0},lX=(U)=>{if(U[U.length-1]!=="n")return;let X=U.slice(0,-1),q;try{q=BigInt(X)}catch{return}if(W2.test(X))return q;if(uU.test(X))return F(xX(U,"bigint"))};var OG="0.56.0",VG={version:OG,filename:bX.fileName(),FileConstructor:kU},_1=VG,dX=new Map,pU=Object.create(null),_2=(U)=>{let X=dX.get(U);if(X)return X;let q=BG(U);if(pU[q])q=`${q}${pU[q]++}`;else pU[q]=1;return _1[q]=U,dX.set(U,q),q},i0=(U)=>/^[$A-Z_a-z][\w$]*$/.test(U),BG=(U)=>{switch(typeof U){case"object":{if(U===null)break;let X=Y2(U)??"object";return X[0].toLowerCase()+X.slice(1)}case"function":return i0(U.name)?U.name:"fn";case"symbol":return U.description&&i0(U.description)?U.description:"symbol"}return y(`Unexpected attempt to register serializable value of type ${r(U)}`)};var $2=(U)=>typeof U==="string"?JSON.stringify(U):typeof U==="bigint"?`${U}n`:`${U}`;var cX=(U,X={})=>L2(U,{onUndefined:"$ark.undefined",onBigInt:(q)=>`$ark.bigint-${q}`,...X},[]);var E=(U,X)=>{switch(r(U)){case"object":let q=U,Z=q.constructor?.name??"Object";return Z==="Object"||Z==="Array"?X?.quoteKeys===!1?_6(q,X?.indent??0,""):JSON.stringify(L2(q,K1,[]),null,X?.indent):_6(q,X?.indent??0,"");case"symbol":return K1.onSymbol(U);default:return $2(U)}},_6=(U,X,q)=>{if(typeof U==="function")return K1.onFunction(U);if(typeof U!=="object"||U===null)return $2(U);let Z=q+" ".repeat(X);if(Array.isArray(U)){if(U.length===0)return"[]";let G=U.map((Y)=>_6(Y,X,Z)).join(`,
145
145
  `+Z);return X?`[
146
146
  ${Z}${G}
147
- ${q}]`:`[${G}]`}let Q=U.constructor?.name??"Object";if(Q==="Object"){let G=J1(U).map(([Y,J])=>{let H=typeof Y==="symbol"?I1.onSymbol(Y):i0(Y)?Y:JSON.stringify(Y),W=_6(J,X,Z);return`${Z}${H}: ${W}`});if(G.length===0)return"{}";return X?`{
147
+ ${q}]`:`[${G}]`}let Q=U.constructor?.name??"Object";if(Q==="Object"){let G=J1(U).map(([Y,J])=>{let H=typeof Y==="symbol"?K1.onSymbol(Y):i0(Y)?Y:JSON.stringify(Y),W=_6(J,X,Z);return`${Z}${H}: ${W}`});if(G.length===0)return"{}";return X?`{
148
148
  ${G.join(`,
149
149
  `)}
150
- ${q}}`:`{${G.join(", ")}}`}if(U instanceof Date)return $1(U);if("expression"in U&&typeof U.expression==="string")return U.expression;return Q},I1={onCycle:()=>"(cycle)",onSymbol:(U)=>`Symbol(${_2(U)})`,onFunction:(U)=>`Function(${_2(U)})`},L2=(U,X,q)=>{switch(r(U)){case"object":{let Z=U;if("toJSON"in Z&&typeof Z.toJSON==="function")return Z.toJSON();if(typeof Z==="function")return I1.onFunction(Z);if(q.includes(Z))return"(cycle)";let Q=[...q,Z];if(Array.isArray(Z))return Z.map((Y)=>L2(Y,X,Q));if(Z instanceof Date)return Z.toDateString();let G={};for(let Y in Z)G[Y]=L2(Z[Y],X,Q);for(let Y of Object.getOwnPropertySymbols(Z))G[X.onSymbol?.(Y)??Y.toString()]=L2(Z[Y],X,Q);return G}case"symbol":return I1.onSymbol(U);case"bigint":return X.onBigInt?.(U)??`${U}n`;case"undefined":return X.onUndefined??"undefined";case"string":return U.replace(/\\/g,"\\\\");default:return U}},$1=(U)=>{let X=U.getFullYear(),q=U.getMonth(),Z=U.getDate(),Q=U.getHours(),G=U.getMinutes(),Y=U.getSeconds(),J=U.getMilliseconds();if(q===0&&Z===1&&Q===0&&G===0&&Y===0&&J===0)return`${X}`;let H=`${TG[q]} ${Z}, ${X}`;if(Q===0&&G===0&&Y===0&&J===0)return H;let W=U.toLocaleTimeString(),$=W.endsWith(" AM")||W.endsWith(" PM")?W.slice(-3):"";if($)W=W.slice(0,-$.length);if(J)W+=`.${RG(J,3)}`;else if(DG.test(W))W=W.slice(0,-3);return`${W+$}, ${H}`},TG=["January","February","March","April","May","June","July","August","September","October","November","December"],DG=/:\d\d:00$/,RG=(U,X)=>String(U).padStart(X,"0");var sX=(U,X,...[q])=>{let Z=q?.stringifySymbol??E,Q=U;switch(typeof X){case"string":Q=i0(X)?U===""?X:`${U}.${X}`:`${U}[${JSON.stringify(X)}]`;break;case"number":Q=`${U}[${X}]`;break;case"symbol":Q=`${U}[${Z(X)}]`;break;default:if(q?.stringifyNonKey)Q=`${U}[${q.stringifyNonKey(X)}]`;else F(`${E(X)} must be a PropertyKey or stringifyNonKey must be passed to options`)}return Q},v0=(U,...X)=>U.reduce((q,Z)=>sX(q,Z,...X),"");class z2 extends J6{cache={};constructor(...U){super();this.push(...U)}toJSON(){if(this.cache.json)return this.cache.json;this.cache.json=[];for(let U=0;U<this.length;U++)this.cache.json.push(typeof this[U]==="symbol"?E(this[U]):this[U]);return this.cache.json}stringify(){if(this.cache.stringify)return this.cache.stringify;return this.cache.stringify=v0(this)}stringifyAncestors(){if(this.cache.stringifyAncestors)return this.cache.stringifyAncestors;let U="",X=[U];for(let q of this)U=sX(U,q),X.push(U);return this.cache.stringifyAncestors=X}}class F2{chars;i;def;constructor(U){this.def=U,this.chars=[...U],this.i=0}shift(){return this.chars[this.i++]??""}get lookahead(){return this.chars[this.i]??""}get nextLookahead(){return this.chars[this.i+1]??""}get length(){return this.chars.length}shiftUntil(U){let X="";while(this.lookahead)if(U(this,X))break;else X+=this.shift();return X}shiftUntilEscapable(U){let X="";while(this.lookahead)if(this.lookahead===W1)if(this.shift(),U(this,X))X+=this.shift();else if(this.lookahead===W1)X+=this.shift();else X+=`${W1}${this.shift()}`;else if(U(this,X))break;else X+=this.shift();return X}shiftUntilLookahead(U){return typeof U==="string"?this.shiftUntil((X)=>X.lookahead===U):this.shiftUntil((X)=>(X.lookahead in U))}shiftUntilNonWhitespace(){return this.shiftUntil(()=>!(this.lookahead in c0))}jumpToIndex(U){this.i=U<0?this.length+U:U}jumpForward(U){this.i+=U}get location(){return this.i}get unscanned(){return this.chars.slice(this.i,this.length).join("")}get scanned(){return this.chars.slice(0,this.i).join("")}sliceChars(U,X){return this.chars.slice(U,X).join("")}lookaheadIs(U){return this.lookahead===U}lookaheadIsIn(U){return this.lookahead in U}}var oX=(U,X)=>`Unmatched ${U}${X===""?"":` before ${X}`}`,$6=(U)=>`Missing ${U}`;var lO=R0("implementedTraits");var dU="$ark",MG=2;while(dU in globalThis)dU=`$ark${MG++}`;var rX=dU;globalThis[rX]=_1;var V=_1,PG=(U)=>`${rX}.${U}`,d=(U)=>PG(_2(U));class L6 extends G2{argNames;body="";constructor(...U){super();this.argNames=U;for(let X of U){if(X in this)throw Error(`Arg name '${X}' would overwrite an existing property on FunctionBody`);this[X]=X}}indentation=0;indent(){return this.indentation+=4,this}dedent(){return this.indentation-=4,this}prop(U,X=!1){return cU(U,X)}index(U,X=!1){return aX(`${U}`,X)}line(U){return this.body+=`${" ".repeat(this.indentation)}${U}
150
+ ${q}}`:`{${G.join(", ")}}`}if(U instanceof Date)return $1(U);if("expression"in U&&typeof U.expression==="string")return U.expression;return Q},K1={onCycle:()=>"(cycle)",onSymbol:(U)=>`Symbol(${_2(U)})`,onFunction:(U)=>`Function(${_2(U)})`},L2=(U,X,q)=>{switch(r(U)){case"object":{let Z=U;if("toJSON"in Z&&typeof Z.toJSON==="function")return Z.toJSON();if(typeof Z==="function")return K1.onFunction(Z);if(q.includes(Z))return"(cycle)";let Q=[...q,Z];if(Array.isArray(Z))return Z.map((Y)=>L2(Y,X,Q));if(Z instanceof Date)return Z.toDateString();let G={};for(let Y in Z)G[Y]=L2(Z[Y],X,Q);for(let Y of Object.getOwnPropertySymbols(Z))G[X.onSymbol?.(Y)??Y.toString()]=L2(Z[Y],X,Q);return G}case"symbol":return K1.onSymbol(U);case"bigint":return X.onBigInt?.(U)??`${U}n`;case"undefined":return X.onUndefined??"undefined";case"string":return U.replace(/\\/g,"\\\\");default:return U}},$1=(U)=>{let X=U.getFullYear(),q=U.getMonth(),Z=U.getDate(),Q=U.getHours(),G=U.getMinutes(),Y=U.getSeconds(),J=U.getMilliseconds();if(q===0&&Z===1&&Q===0&&G===0&&Y===0&&J===0)return`${X}`;let H=`${TG[q]} ${Z}, ${X}`;if(Q===0&&G===0&&Y===0&&J===0)return H;let W=U.toLocaleTimeString(),$=W.endsWith(" AM")||W.endsWith(" PM")?W.slice(-3):"";if($)W=W.slice(0,-$.length);if(J)W+=`.${DG(J,3)}`;else if(RG.test(W))W=W.slice(0,-3);return`${W+$}, ${H}`},TG=["January","February","March","April","May","June","July","August","September","October","November","December"],RG=/:\d\d:00$/,DG=(U,X)=>String(U).padStart(X,"0");var iX=(U,X,...[q])=>{let Z=q?.stringifySymbol??E,Q=U;switch(typeof X){case"string":Q=i0(X)?U===""?X:`${U}.${X}`:`${U}[${JSON.stringify(X)}]`;break;case"number":Q=`${U}[${X}]`;break;case"symbol":Q=`${U}[${Z(X)}]`;break;default:if(q?.stringifyNonKey)Q=`${U}[${q.stringifyNonKey(X)}]`;else F(`${E(X)} must be a PropertyKey or stringifyNonKey must be passed to options`)}return Q},v0=(U,...X)=>U.reduce((q,Z)=>iX(q,Z,...X),"");class z2 extends J6{cache={};constructor(...U){super();this.push(...U)}toJSON(){if(this.cache.json)return this.cache.json;this.cache.json=[];for(let U=0;U<this.length;U++)this.cache.json.push(typeof this[U]==="symbol"?E(this[U]):this[U]);return this.cache.json}stringify(){if(this.cache.stringify)return this.cache.stringify;return this.cache.stringify=v0(this)}stringifyAncestors(){if(this.cache.stringifyAncestors)return this.cache.stringifyAncestors;let U="",X=[U];for(let q of this)U=iX(U,q),X.push(U);return this.cache.stringifyAncestors=X}}class F2{chars;i;def;constructor(U){this.def=U,this.chars=[...U],this.i=0}shift(){return this.chars[this.i++]??""}get lookahead(){return this.chars[this.i]??""}get nextLookahead(){return this.chars[this.i+1]??""}get length(){return this.chars.length}shiftUntil(U){let X="";while(this.lookahead)if(U(this,X))break;else X+=this.shift();return X}shiftUntilEscapable(U){let X="";while(this.lookahead)if(this.lookahead===W1)if(this.shift(),U(this,X))X+=this.shift();else if(this.lookahead===W1)X+=this.shift();else X+=`${W1}${this.shift()}`;else if(U(this,X))break;else X+=this.shift();return X}shiftUntilLookahead(U){return typeof U==="string"?this.shiftUntil((X)=>X.lookahead===U):this.shiftUntil((X)=>(X.lookahead in U))}shiftUntilNonWhitespace(){return this.shiftUntil(()=>!(this.lookahead in c0))}jumpToIndex(U){this.i=U<0?this.length+U:U}jumpForward(U){this.i+=U}get location(){return this.i}get unscanned(){return this.chars.slice(this.i,this.length).join("")}get scanned(){return this.chars.slice(0,this.i).join("")}sliceChars(U,X){return this.chars.slice(U,X).join("")}lookaheadIs(U){return this.lookahead===U}lookaheadIsIn(U){return this.lookahead in U}}var sX=(U,X)=>`Unmatched ${U}${X===""?"":` before ${X}`}`,$6=(U)=>`Missing ${U}`;var dV=D0("implementedTraits");var lU="$ark",MG=2;while(lU in globalThis)lU=`$ark${MG++}`;var oX=lU;globalThis[oX]=_1;var O=_1,PG=(U)=>`${oX}.${U}`,d=(U)=>PG(_2(U));class L6 extends G2{argNames;body="";constructor(...U){super();this.argNames=U;for(let X of U){if(X in this)throw Error(`Arg name '${X}' would overwrite an existing property on FunctionBody`);this[X]=X}}indentation=0;indent(){return this.indentation+=4,this}dedent(){return this.indentation-=4,this}prop(U,X=!1){return dU(U,X)}index(U,X=!1){return rX(`${U}`,X)}line(U){return this.body+=`${" ".repeat(this.indentation)}${U}
151
151
  `,this}const(U,X){return this.line(`const ${U} = ${X}`),this}let(U,X){return this.line(`let ${U} = ${X}`)}set(U,X){return this.line(`${U} = ${X}`)}if(U,X){return this.block(`if (${U})`,X)}elseIf(U,X){return this.block(`else if (${U})`,X)}else(U){return this.block("else",U)}for(U,X,q=0){return this.block(`for (let i = ${q}; ${U}; i++)`,X)}forIn(U,X){return this.block(`for (const k in ${U})`,X)}block(U,X,q=""){return this.line(`${U} {`),this.indent(),X(this),this.dedent(),this.line(`}${q}`)}return(U=""){return this.line(`return ${U}`)}write(U="anonymous",X=0){return`${U}(${this.argNames.join(", ")}) { ${X?this.body.split(`
152
152
  `).map((q)=>" ".repeat(X)+`${q}`).join(`
153
- `):this.body} }`}compile(){return new EX(...this.argNames,this.body)}}var M0=(U)=>Q0(U,"object")||typeof U==="symbol"?d(U):$2(U),cU=(U,X=!1)=>{if(typeof U==="string"&&i0(U))return`${X?"?":""}.${U}`;return aX(wG(U),X)},wG=(U)=>typeof U==="symbol"?d(U):JSON.stringify(U),aX=(U,X=!1)=>`${X?"?.":""}[${U}]`;class A2 extends L6{traversalKind;optimistic;constructor(U){super("data","ctx");this.traversalKind=U.kind,this.optimistic=U.optimistic===!0}invoke(U,X){let q=X?.arg??this.data,Z=typeof U==="string"?!0:this.requiresContextFor(U),Q=typeof U==="string"?U:U.id;if(Z)return`${this.referenceToId(Q,X)}(${q}, ${this.ctx})`;return`${this.referenceToId(Q,X)}(${q})`}referenceToId(U,X){let q=X?.kind??this.traversalKind,Z=`this.${U}${q}`;return X?.bind?`${Z}.bind(${X?.bind})`:Z}requiresContextFor(U){return this.traversalKind==="Apply"||U.allowsRequiresContext}initializeErrorCount(){return this.const("errorCount","ctx.currentErrorCount")}returnIfFail(){return this.if("ctx.currentErrorCount > errorCount",()=>this.return())}returnIfFailFast(){return this.if("ctx.failFast && ctx.currentErrorCount > errorCount",()=>this.return())}traverseKey(U,X,q){let Z=this.requiresContextFor(q);if(Z)this.line(`${this.ctx}.path.push(${U})`);if(this.check(q,{arg:X}),Z)this.line(`${this.ctx}.path.pop()`);return this}check(U,X){return this.traversalKind==="Allows"?this.if(`!${this.invoke(U,X)}`,()=>this.return(!1)):this.line(this.invoke(U,X))}}var z6=(U)=>S(U,(X,q)=>[X,x(q)?[...q]:q]),q0=R0("arkKind"),M=(U,X)=>U?.[q0]===X,h=(U)=>M(U,"root")||M(U,"constraint");var nX=["unit","proto","domain"],K1=["required","optional","index","sequence"],iU=["pattern","divisor","exactLength","max","min","maxLength","minLength","before","after"],sU=[...iU,"structure","predicate"],F6=[...sU,...K1],N1=["alias","union","morph","unit","intersection","proto","domain"],IG=[...N1,...F6],A6=S(F6,(U,X)=>[X,1]),tX=S([...K1,"undeclared"],(U,X)=>[X,1]),eX=S(IG,(U,X)=>[X,U]),C1=(U)=>typeof U==="string"&&(U in eX);var S1=(U)=>eX[U],V6=(U)=>N1.slice(S1(U)+1),KB=[...V6("union"),"alias"],NB=[...V6("morph"),"alias"],F0=(U)=>{if(typeof U==="string"||typeof U==="boolean"||U===null)return U;if(typeof U==="number"){if(Number.isNaN(U))return"NaN";if(U===Number.POSITIVE_INFINITY)return"Infinity";if(U===Number.NEGATIVE_INFINITY)return"-Infinity";return U}return M0(U)},s0=(U)=>{let X="{ ";for(let[q,Z]of Object.entries(U))X+=`${q}: ${M0(Z)}, `;return X+" }"},j=(U)=>{let X=U;if(X.hasAssociatedError)X.defaults.expected??=(q)=>("description"in q)?q.description:X.defaults.description(q),X.defaults.actual??=(q)=>E(q),X.defaults.problem??=(q)=>`must be ${q.expected}${q.actual?` (was ${q.actual})`:""}`,X.defaults.message??=(q)=>{if(q.path.length===0)return q.problem;let Z=`${q.propString} ${q.problem}`;if(Z[0]==="[")return`value at ${Z}`;return Z};return X};class Uq extends Error{name="ToJsonSchemaError";code;context;constructor(U,X){super(E(X,{quoteKeys:!1,indent:4}));this.code=U,this.context=X}hasCode(U){return this.code===U}}var KG={target:"draft-2020-12",dialect:"https://json-schema.org/draft/2020-12/schema",useRefs:!1,fallback:{arrayObject:(U)=>p.throw("arrayObject",U),arrayPostfix:(U)=>p.throw("arrayPostfix",U),defaultValue:(U)=>p.throw("defaultValue",U),domain:(U)=>p.throw("domain",U),morph:(U)=>p.throw("morph",U),patternIntersection:(U)=>p.throw("patternIntersection",U),predicate:(U)=>p.throw("predicate",U),proto:(U)=>p.throw("proto",U),symbolKey:(U)=>p.throw("symbolKey",U),unit:(U)=>p.throw("unit",U),date:(U)=>p.throw("date",U)}},p={Error:Uq,throw:(...U)=>{throw new p.Error(...U)},throwInternalOperandError:(U,X)=>y(`Unexpected JSON Schema input for ${U}: ${E(X)}`),defaultConfig:KG};V.config??={};var V2=(U,X)=>{if(!X)return U;let q={...U},Z;for(Z in X){let Q={...U.keywords};if(Z==="keywords"){for(let G in X[Z]){let Y=X.keywords[G];if(Y===void 0)continue;Q[G]=typeof Y==="string"?{description:Y}:Y}q.keywords=Q}else if(Z==="toJsonSchema")q[Z]=oU(U.toJsonSchema,X.toJsonSchema);else if(C1(Z))q[Z]={...U[Z],...X[Z]};else q[Z]=X[Z]}return q},NG={"draft-2020-12":"https://json-schema.org/draft/2020-12/schema","draft-07":"http://json-schema.org/draft-07/schema#"},oU=(U,X)=>{if(!U)return Xq(X??{},void 0);if(!X)return U;let q={...U},Z;for(Z in X)if(Z==="fallback")q.fallback=CG(U.fallback,X.fallback);else q[Z]=X[Z];return Xq(q,X)},Xq=(U,X)=>{if(X?.dialect!==void 0)return U;if(X?.target!==void 0)return{...U,dialect:NG[X.target]};return U},CG=(U,X)=>{U=qq(U),X=qq(X);let q={},Z;for(Z in p.defaultConfig.fallback)q[Z]=X[Z]??X.default??U[Z]??U.default??p.defaultConfig.fallback[Z];return q},qq=(U)=>typeof U==="function"?{default:U}:U??{};class o0 extends G2{[q0]="error";path;data;nodeConfig;input;ctx;constructor({prefixPath:U,relativePath:X,...q},Z){super();this.input=q,this.ctx=Z,wX(this,q);let Q=Z.data;if(q.code==="union")q.errors=q.errors.flatMap((Y)=>{let J=Y.hasCode("union")?Y.errors:[Y];if(!U&&!X)return J;return J.map((H)=>H.transform((W)=>({...W,path:BX(U,W.path,X)})))});this.nodeConfig=Z.config[this.code];let G=[...q.path??Z.path];if(X)G.push(...X);if(U)G.unshift(...U);this.path=new z2(...G),this.data="data"in q?q.data:Q}transform(U){return new o0(U({data:this.data,path:this.path,...this.input}),this.ctx)}hasCode(U){return this.code===U}get propString(){return v0(this.path)}get expected(){if(this.input.expected)return this.input.expected;let U=this.meta?.expected??this.nodeConfig.expected;return typeof U==="function"?U(this.input):U}get actual(){if(this.input.actual)return this.input.actual;let U=this.meta?.actual??this.nodeConfig.actual;return typeof U==="function"?U(this.data):U}get problem(){if(this.input.problem)return this.input.problem;let U=this.meta?.problem??this.nodeConfig.problem;return typeof U==="function"?U(this):U}get message(){if(this.input.message)return this.input.message;let U=this.meta?.message??this.nodeConfig.message;return typeof U==="function"?U(this):U}get flat(){return this.hasCode("intersection")?[...this.errors]:[this]}toJSON(){return{data:this.data,path:this.path,...this.input,expected:this.expected,actual:this.actual,problem:this.problem,message:this.message}}toString(){return this.message}throw(){throw this}}class H0 extends J6{[q0]="errors";ctx;constructor(U){super();this.ctx=U}byPath=Object.create(null);get flatByPath(){return S(this.byPath,(U,X)=>[U,X.flat])}get flatProblemsByPath(){return S(this.byPath,(U,X)=>[U,X.flat.map((q)=>q.problem)])}byAncestorPath=Object.create(null);count=0;mutable=this;throw(){throw this.toTraversalError()}toTraversalError(){return new rU(this)}add(U){let X=this.byPath[U.propString];if(X){if(U===X)return;if(X.hasCode("union")&&X.errors.length===0)return;let q=U.hasCode("union")&&U.errors.length===0?U:new o0({code:"intersection",errors:X.hasCode("intersection")?[...X.errors,U]:[X,U]},this.ctx),Z=this.indexOf(X);this.mutable[Z===-1?this.length:Z]=q,this.byPath[U.propString]=q,this.addAncestorPaths(U)}else this.byPath[U.propString]=U,this.addAncestorPaths(U),this.mutable.push(U);this.count++}transform(U){let X=new H0(this.ctx);for(let q of this)X.add(U(q));return X}merge(U){for(let X of U)this.add(new o0({...X,path:[...this.ctx.path,...X.path]},this.ctx))}affectsPath(U){if(this.length===0)return!1;return U.stringifyAncestors().some((X)=>(X in this.byPath))||U.stringify()in this.byAncestorPath}get summary(){return this.toString()}get issues(){return this}toJSON(){return[...this.map((U)=>U.toJSON())]}toString(){return this.join(`
154
- `)}addAncestorPaths(U){for(let X of U.path.stringifyAncestors())this.byAncestorPath[X]=g(this.byAncestorPath[X],U)}}class rU extends Error{name="TraversalError";constructor(U){if(U.length===1)super(U.summary);else super(`
153
+ `):this.body} }`}compile(){return new SX(...this.argNames,this.body)}}var M0=(U)=>G0(U,"object")||typeof U==="symbol"?d(U):$2(U),dU=(U,X=!1)=>{if(typeof U==="string"&&i0(U))return`${X?"?":""}.${U}`;return rX(wG(U),X)},wG=(U)=>typeof U==="symbol"?d(U):JSON.stringify(U),rX=(U,X=!1)=>`${X?"?.":""}[${U}]`;class A2 extends L6{traversalKind;optimistic;constructor(U){super("data","ctx");this.traversalKind=U.kind,this.optimistic=U.optimistic===!0}invoke(U,X){let q=X?.arg??this.data,Z=typeof U==="string"?!0:this.requiresContextFor(U),Q=typeof U==="string"?U:U.id;if(Z)return`${this.referenceToId(Q,X)}(${q}, ${this.ctx})`;return`${this.referenceToId(Q,X)}(${q})`}referenceToId(U,X){let q=X?.kind??this.traversalKind,Z=`this.${U}${q}`;return X?.bind?`${Z}.bind(${X?.bind})`:Z}requiresContextFor(U){return this.traversalKind==="Apply"||U.allowsRequiresContext}initializeErrorCount(){return this.const("errorCount","ctx.currentErrorCount")}returnIfFail(){return this.if("ctx.currentErrorCount > errorCount",()=>this.return())}returnIfFailFast(){return this.if("ctx.failFast && ctx.currentErrorCount > errorCount",()=>this.return())}traverseKey(U,X,q){let Z=this.requiresContextFor(q);if(Z)this.line(`${this.ctx}.path.push(${U})`);if(this.check(q,{arg:X}),Z)this.line(`${this.ctx}.path.pop()`);return this}check(U,X){return this.traversalKind==="Allows"?this.if(`!${this.invoke(U,X)}`,()=>this.return(!1)):this.line(this.invoke(U,X))}}var z6=(U)=>S(U,(X,q)=>[X,h(q)?[...q]:q]),Z0=D0("arkKind"),M=(U,X)=>U?.[Z0]===X,x=(U)=>M(U,"root")||M(U,"constraint");var aX=["unit","proto","domain"],N1=["required","optional","index","sequence"],cU=["pattern","divisor","exactLength","max","min","maxLength","minLength","before","after"],iU=[...cU,"structure","predicate"],F6=[...iU,...N1],C1=["alias","union","morph","unit","intersection","proto","domain"],IG=[...C1,...F6],A6=S(F6,(U,X)=>[X,1]),nX=S([...N1,"undeclared"],(U,X)=>[X,1]),tX=S(IG,(U,X)=>[X,U]),S1=(U)=>typeof U==="string"&&(U in tX);var E1=(U)=>tX[U],O6=(U)=>C1.slice(E1(U)+1),NB=[...O6("union"),"alias"],CB=[...O6("morph"),"alias"],A0=(U)=>{if(typeof U==="string"||typeof U==="boolean"||U===null)return U;if(typeof U==="number"){if(Number.isNaN(U))return"NaN";if(U===Number.POSITIVE_INFINITY)return"Infinity";if(U===Number.NEGATIVE_INFINITY)return"-Infinity";return U}return M0(U)},s0=(U)=>{let X="{ ";for(let[q,Z]of Object.entries(U))X+=`${q}: ${M0(Z)}, `;return X+" }"},j=(U)=>{let X=U;if(X.hasAssociatedError)X.defaults.expected??=(q)=>("description"in q)?q.description:X.defaults.description(q),X.defaults.actual??=(q)=>E(q),X.defaults.problem??=(q)=>`must be ${q.expected}${q.actual?` (was ${q.actual})`:""}`,X.defaults.message??=(q)=>{if(q.path.length===0)return q.problem;let Z=`${q.propString} ${q.problem}`;if(Z[0]==="[")return`value at ${Z}`;return Z};return X};class eX extends Error{name="ToJsonSchemaError";code;context;constructor(U,X){super(E(X,{quoteKeys:!1,indent:4}));this.code=U,this.context=X}hasCode(U){return this.code===U}}var KG={target:"draft-2020-12",dialect:"https://json-schema.org/draft/2020-12/schema",useRefs:!1,fallback:{arrayObject:(U)=>p.throw("arrayObject",U),arrayPostfix:(U)=>p.throw("arrayPostfix",U),defaultValue:(U)=>p.throw("defaultValue",U),domain:(U)=>p.throw("domain",U),morph:(U)=>p.throw("morph",U),patternIntersection:(U)=>p.throw("patternIntersection",U),predicate:(U)=>p.throw("predicate",U),proto:(U)=>p.throw("proto",U),symbolKey:(U)=>p.throw("symbolKey",U),unit:(U)=>p.throw("unit",U),date:(U)=>p.throw("date",U)}},p={Error:eX,throw:(...U)=>{throw new p.Error(...U)},throwInternalOperandError:(U,X)=>y(`Unexpected JSON Schema input for ${U}: ${E(X)}`),defaultConfig:KG};O.config??={};var O2=(U,X)=>{if(!X)return U;let q={...U},Z;for(Z in X){let Q={...U.keywords};if(Z==="keywords"){for(let G in X[Z]){let Y=X.keywords[G];if(Y===void 0)continue;Q[G]=typeof Y==="string"?{description:Y}:Y}q.keywords=Q}else if(Z==="toJsonSchema")q[Z]=sU(U.toJsonSchema,X.toJsonSchema);else if(S1(Z))q[Z]={...U[Z],...X[Z]};else q[Z]=X[Z]}return q},NG={"draft-2020-12":"https://json-schema.org/draft/2020-12/schema","draft-07":"http://json-schema.org/draft-07/schema#"},sU=(U,X)=>{if(!U)return Uq(X??{},void 0);if(!X)return U;let q={...U},Z;for(Z in X)if(Z==="fallback")q.fallback=CG(U.fallback,X.fallback);else q[Z]=X[Z];return Uq(q,X)},Uq=(U,X)=>{if(X?.dialect!==void 0)return U;if(X?.target!==void 0)return{...U,dialect:NG[X.target]};return U},CG=(U,X)=>{U=Xq(U),X=Xq(X);let q={},Z;for(Z in p.defaultConfig.fallback)q[Z]=X[Z]??X.default??U[Z]??U.default??p.defaultConfig.fallback[Z];return q},Xq=(U)=>typeof U==="function"?{default:U}:U??{};class o0 extends G2{[Z0]="error";path;data;nodeConfig;input;ctx;constructor({prefixPath:U,relativePath:X,...q},Z){super();this.input=q,this.ctx=Z,PX(this,q);let Q=Z.data;if(q.code==="union")q.errors=q.errors.flatMap((Y)=>{let J=Y.hasCode("union")?Y.errors:[Y];if(!U&&!X)return J;return J.map((H)=>H.transform((W)=>({...W,path:VX(U,W.path,X)})))});this.nodeConfig=Z.config[this.code];let G=[...q.path??Z.path];if(X)G.push(...X);if(U)G.unshift(...U);this.path=new z2(...G),this.data="data"in q?q.data:Q}transform(U){return new o0(U({data:this.data,path:this.path,...this.input}),this.ctx)}hasCode(U){return this.code===U}get propString(){return v0(this.path)}get expected(){if(this.input.expected)return this.input.expected;let U=this.meta?.expected??this.nodeConfig.expected;return typeof U==="function"?U(this.input):U}get actual(){if(this.input.actual)return this.input.actual;let U=this.meta?.actual??this.nodeConfig.actual;return typeof U==="function"?U(this.data):U}get problem(){if(this.input.problem)return this.input.problem;let U=this.meta?.problem??this.nodeConfig.problem;return typeof U==="function"?U(this):U}get message(){if(this.input.message)return this.input.message;let U=this.meta?.message??this.nodeConfig.message;return typeof U==="function"?U(this):U}get flat(){return this.hasCode("intersection")?[...this.errors]:[this]}toJSON(){return{data:this.data,path:this.path,...this.input,expected:this.expected,actual:this.actual,problem:this.problem,message:this.message}}toString(){return this.message}throw(){throw this}}class W0 extends J6{[Z0]="errors";ctx;constructor(U){super();this.ctx=U}byPath=Object.create(null);get flatByPath(){return S(this.byPath,(U,X)=>[U,X.flat])}get flatProblemsByPath(){return S(this.byPath,(U,X)=>[U,X.flat.map((q)=>q.problem)])}byAncestorPath=Object.create(null);count=0;mutable=this;throw(){throw this.toTraversalError()}toTraversalError(){return new oU(this)}add(U){let X=this.byPath[U.propString];if(X){if(U===X)return;if(X.hasCode("union")&&X.errors.length===0)return;let q=U.hasCode("union")&&U.errors.length===0?U:new o0({code:"intersection",errors:X.hasCode("intersection")?[...X.errors,U]:[X,U]},this.ctx),Z=this.indexOf(X);this.mutable[Z===-1?this.length:Z]=q,this.byPath[U.propString]=q,this.addAncestorPaths(U)}else this.byPath[U.propString]=U,this.addAncestorPaths(U),this.mutable.push(U);this.count++}transform(U){let X=new W0(this.ctx);for(let q of this)X.add(U(q));return X}merge(U){for(let X of U)this.add(new o0({...X,path:[...this.ctx.path,...X.path]},this.ctx))}affectsPath(U){if(this.length===0)return!1;return U.stringifyAncestors().some((X)=>(X in this.byPath))||U.stringify()in this.byAncestorPath}get summary(){return this.toString()}get issues(){return this}toJSON(){return[...this.map((U)=>U.toJSON())]}toString(){return this.join(`
154
+ `)}addAncestorPaths(U){for(let X of U.path.stringifyAncestors())this.byAncestorPath[X]=g(this.byAncestorPath[X],U)}}class oU extends Error{name="TraversalError";constructor(U){if(U.length===1)super(U.summary);else super(`
155
155
  `+U.map((X)=>` • ${SG(X)}`).join(`
156
156
  `));Object.defineProperty(this,"arkErrors",{value:U,enumerable:!1})}}var SG=(U)=>U.toString().split(`
157
157
  `).join(`
158
- `);class P0{path=[];errors=new H0(this);root;config;queuedMorphs=[];branches=[];seen={};constructor(U,X){this.root=U,this.config=X}get data(){let U=this.root;for(let X of this.path)U=U?.[X];return U}get propString(){return v0(this.path)}reject(U){return this.error(U),!1}mustBe(U){return this.error(U),!1}error(U){let X=typeof U==="object"?U.code?U:{...U,code:"predicate"}:{code:"predicate",expected:U};return this.errorFromContext(X)}hasError(){return this.currentErrorCount!==0}get currentBranch(){return this.branches[this.branches.length-1]}queueMorphs(U){let X={path:new z2(...this.path),morphs:U};if(this.currentBranch)this.currentBranch.queuedMorphs.push(X);else this.queuedMorphs.push(X)}finalize(U){if(this.queuedMorphs.length){if(typeof this.root==="object"&&this.root!==null&&this.config.clone)this.root=this.config.clone(this.root);this.applyQueuedMorphs()}if(this.hasError())return U?U(this.errors):this.errors;return this.root}get currentErrorCount(){return this.currentBranch?this.currentBranch.error?1:0:this.errors.count}get failFast(){return this.branches.length!==0}pushBranch(){this.branches.push({error:void 0,queuedMorphs:[]})}popBranch(){return this.branches.pop()}get external(){return this}errorFromNodeContext(U){return this.errorFromContext(U)}errorFromContext(U){let X=new o0(U,this);if(this.currentBranch)this.currentBranch.error=X;else this.errors.add(X);return X}applyQueuedMorphs(){while(this.queuedMorphs.length){let U=this.queuedMorphs;this.queuedMorphs=[];for(let{path:X,morphs:q}of U){if(this.errors.affectsPath(X))continue;this.applyMorphsAtPath(X,q)}}}applyMorphsAtPath(U,X){let q=U[U.length-1],Z;if(q!==void 0){Z=this.root;for(let Q=0;Q<U.length-1;Q++)Z=Z[U[Q]]}for(let Q of X){this.path=[...U];let G=h(Q),Y=Q(Z===void 0?this.root:Z[q],this);if(Y instanceof o0){if(!this.errors.includes(Y))this.errors.add(Y);break}if(Y instanceof H0){if(!G)this.errors.merge(Y);this.queuedMorphs=[];break}if(Z===void 0)this.root=Y;else Z[q]=Y;this.applyQueuedMorphs()}}}var W0=(U,X,q)=>{if(!q)return X();q.path.push(U);let Z=X();return q.path.pop(),Z};class B2 extends J0{attachments;$;onFail;includesTransform;includesContextualPredicate;isCyclic;allowsRequiresContext;rootApplyStrategy;contextFreeMorph;rootApply;referencesById;shallowReferences;flatRefs;flatMorphs;allows;get shallowMorphs(){return[]}constructor(U,X){super((Z,Q,G=this.onFail)=>{if(Q)return this.traverseApply(Z,Q),Q.hasError()?Q.errors:Q.data;return this.rootApply(Z,G)},{attach:U});this.attachments=U,this.$=X,this.onFail=this.meta.onFail??this.$.resolvedConfig.onFail,this.includesTransform=this.hasKind("morph")||this.hasKind("structure")&&this.structuralMorph!==void 0||this.hasKind("sequence")&&this.inner.defaultables!==void 0,this.includesContextualPredicate=this.hasKind("predicate")&&this.inner.predicate.length!==1,this.isCyclic=this.kind==="alias",this.referencesById={[this.id]:this},this.shallowReferences=this.hasKind("structure")?[this,...this.children]:this.children.reduce((Z,Q)=>fG(Z,Q.shallowReferences),[this]);let q=this.isStructural();this.flatRefs=[],this.flatMorphs=[];for(let Z=0;Z<this.children.length;Z++){if(this.includesTransform||=this.children[Z].includesTransform,this.includesContextualPredicate||=this.children[Z].includesContextualPredicate,this.isCyclic||=this.children[Z].isCyclic,!q){let Q=this.children[Z].flatRefs;for(let G=0;G<Q.length;G++){let Y=Q[G];if(!this.flatRefs.some((J)=>Qq(J,Y))){this.flatRefs.push(Y);for(let J of Y.node.branches)if(J.hasKind("morph")||J.hasKind("intersection")&&J.structure?.structuralMorph!==void 0)this.flatMorphs.push({path:Y.path,propString:Y.propString,node:J})}}}Object.assign(this.referencesById,this.children[Z].referencesById)}this.flatRefs.sort((Z,Q)=>Z.path.length>Q.path.length?1:Z.path.length<Q.path.length?-1:Z.propString>Q.propString?1:Z.propString<Q.propString?-1:Z.node.expression<Q.node.expression?-1:1),this.allowsRequiresContext=this.includesContextualPredicate||this.isCyclic,this.rootApplyStrategy=!this.allowsRequiresContext&&this.flatMorphs.length===0?this.shallowMorphs.length===0?"allows":this.shallowMorphs.every((Z)=>Z.length===1||Z.name==="$arkStructuralMorph")?this.hasKind("union")?this.branches.some((Z)=>Z.shallowMorphs.length>1)?"contextual":"branchedOptimistic":this.shallowMorphs.length>1?"contextual":"optimistic":"contextual":"contextual",this.rootApply=this.createRootApply(),this.allows=this.allowsRequiresContext?(Z)=>this.traverseAllows(Z,new P0(Z,this.$.resolvedConfig)):(Z)=>this.traverseAllows(Z)}createRootApply(){switch(this.rootApplyStrategy){case"allows":return(X,q)=>{if(this.allows(X))return X;let Z=new P0(X,this.$.resolvedConfig);return this.traverseApply(X,Z),Z.finalize(q)};case"contextual":return(X,q)=>{let Z=new P0(X,this.$.resolvedConfig);return this.traverseApply(X,Z),Z.finalize(q)};case"optimistic":this.contextFreeMorph=this.shallowMorphs[0];let U=this.$.resolvedConfig.clone;return(X,q)=>{if(this.allows(X))return this.contextFreeMorph(U&&(typeof X==="object"&&X!==null||typeof X==="function")?U(X):X);let Z=new P0(X,this.$.resolvedConfig);return this.traverseApply(X,Z),Z.finalize(q)};case"branchedOptimistic":return this.createBranchedOptimisticRootApply();default:return this.rootApplyStrategy,y(`Unexpected rootApplyStrategy ${this.rootApplyStrategy}`)}}compiledMeta=bG(this.metaJson);cacheGetter(U,X){return Object.defineProperty(this,U,{value:X}),X}get description(){return this.cacheGetter("description",this.meta?.description??this.$.resolvedConfig[this.kind].description(this))}get references(){return Object.values(this.referencesById)}precedence=S1(this.kind);precompilation;assert=(U,X)=>this(U,X,(q)=>q.throw());traverse(U,X){return this(U,X,null)}get in(){return this.cacheGetter("in",this.rawIn.isRoot()?this.$.finalize(this.rawIn):this.rawIn)}get rawIn(){return this.cacheGetter("rawIn",this.getIo("in"))}get out(){return this.cacheGetter("out",this.rawOut.isRoot()?this.$.finalize(this.rawOut):this.rawOut)}get rawOut(){return this.cacheGetter("rawOut",this.getIo("out"))}getIo(U){if(!this.includesTransform)return this;let X={};for(let[q,Z]of this.innerEntries){let Q=this.impl.keys[q];if(Q.reduceIo)Q.reduceIo(U,X,Z);else if(Q.child){let G=Z;X[q]=x(G)?G.map((Y)=>U==="in"?Y.rawIn:Y.rawOut):U==="in"?G.rawIn:G.rawOut}else X[q]=Z}return this.$.node(this.kind,X)}toJSON(){return this.json}toString(){return`Type<${this.expression}>`}equals(U){let X=h(U)?U:this.$.parseDefinition(U);return this.innerHash===X.innerHash}ifEquals(U){return this.equals(U)?this:void 0}hasKind(U){return this.kind===U}assertHasKind(U){if(this.kind!==U)Y1(`${this.kind} node was not of asserted kind ${U}`);return this}hasKindIn(...U){return U.includes(this.kind)}assertHasKindIn(...U){if(!z0(U,this.kind))Y1(`${this.kind} node was not one of asserted kinds ${U}`);return this}isBasis(){return z0(nX,this.kind)}isConstraint(){return z0(F6,this.kind)}isStructural(){return z0(K1,this.kind)}isRefinement(){return z0(sU,this.kind)}isRoot(){return z0(N1,this.kind)}isUnknown(){return this.hasKind("intersection")&&this.children.length===0}isNever(){return this.hasKind("union")&&this.children.length===0}hasUnit(U){return this.hasKind("unit")&&this.allows(U)}hasOpenIntersection(){return this.impl.intersectionIsOpen}get nestableExpression(){return this.expression}select(U){let X=O2.normalize(U);return this._select(X)}_select(U){let X=O2.applyBoundary[U.boundary??"references"](this);if(U.kind)X=X.filter((q)=>q.kind===U.kind);if(U.where)X=X.filter(U.where);return O2.applyMethod[U.method??"filter"](X,this,U)}transform(U,X){return this._transform(U,this._createTransformContext(X))}_createTransformContext(U){return{root:this,selected:void 0,seen:{},path:[],parseOptions:{prereduced:U?.prereduced??!1},undeclaredKeyHandling:void 0,...U}}_transform(U,X){let q=X.bindScope??this.$;if(X.seen[this.id])return this.$.lazilyResolve(X.seen[this.id]);if(X.shouldTransform?.(this,X)===!1)return this;let Z;if(X.seen[this.id]=()=>Z,this.hasKind("structure")&&this.undeclared!==X.undeclaredKeyHandling)X={...X,undeclaredKeyHandling:this.undeclared};let Q=S(this.inner,(W,$)=>{if(!this.impl.keys[W].child)return[W,$];let _=$;if(!x(_)){let A=_._transform(U,X);return A?[W,A]:[]}if(_.length===0)return[W,$];let L=_.flatMap((A)=>{return A._transform(U,X)??[]});return L.length?[W,L]:[]});delete X.seen[this.id];let G=Object.assign(Q,{meta:this.meta}),Y=X.selected&&!X.selected.includes(this)?G:U(this.kind,G,X);if(Y===null)return null;if(h(Y))return Z=Y;let J=Object.keys(Y);if((J.length===0||J.length===1&&J[0]==="meta")&&!S0(this.inner))return null;if((this.kind==="required"||this.kind==="optional"||this.kind==="index")&&!("value"in Y))return X.undeclaredKeyHandling?{...Y,value:V.intrinsic.unknown}:null;if(this.kind==="morph")Y.in??=V.intrinsic.unknown;return Z=q.node(this.kind,Y,X.parseOptions)}configureReferences(U,X="references"){let q=O2.normalize(X),Z=typeof U==="string"?(J,H)=>({...H,meta:{...H.meta,description:U}}):typeof U==="function"?(J,H)=>({...H,meta:U(H.meta)}):(J,H)=>({...H,meta:{...H.meta,...U}});if(q.boundary==="self")return this.$.node(this.kind,Z(this.kind,{...this.inner,meta:this.meta}));let Q=this._select(q),G=Q&&l0(Q),Y=q.boundary==="child"?(J,H)=>H.root.children.includes(J):q.boundary==="shallow"?(J)=>J.kind!=="structure":()=>!0;return this.$.finalize(this.transform(Z,{shouldTransform:Y,selected:G}))}}var O2={applyBoundary:{self:(U)=>[U],child:(U)=>[...U.children],shallow:(U)=>[...U.shallowReferences],references:(U)=>[...U.references]},applyMethod:{filter:(U)=>U,assertFilter:(U,X,q)=>{if(U.length===0)Y1(Zq(X,q));return U},find:(U)=>U[0],assertFind:(U,X,q)=>{if(U.length===0)Y1(Zq(X,q));return U[0]}},normalize:(U)=>typeof U==="function"?{boundary:"references",method:"filter",where:U}:typeof U==="string"?a(U,O2.applyBoundary)?{method:"filter",boundary:U}:{boundary:"references",method:"filter",kind:U}:{boundary:"references",method:"filter",...U}},Zq=(U,X)=>`${U} had no references matching ${E(X)}.`,EG=(U)=>v0(U,{stringifyNonKey:(X)=>X.expression}),jG=/"(\$ark\.[^"]+)"/g,bG=(U)=>JSON.stringify(U).replace(jG,"$1"),w0=(U,X)=>({path:U,node:X,propString:EG(U)}),Qq=(U,X)=>U.propString===X.propString&&U.node.equals(X.node),aU=(U,X)=>C0(U,X,{isEqual:Qq}),fG=(U,X)=>C0(U,X,{isEqual:(q,Z)=>q.equals(Z)});class B extends Array{static init(U,X,q,Z){return new B({kind:U,l:X,r:q,path:Z?.path??[],optional:Z?.optional??!1})}add(U,X,q,Z){return this.push({kind:U,l:X,r:q,path:Z?.path??[],optional:Z?.optional??!1}),this}get summary(){return this.describeReasons()}describeReasons(){if(this.length===1){let{path:U,l:X,r:q}=this[0],Z=v0(U);return tU(`Intersection${Z&&` at ${Z}`} of ${Gq(X,q)}`)}return`The following intersections result in unsatisfiable types:
159
- • ${this.map(({path:U,l:X,r:q})=>`${U}: ${Gq(X,q)}`).join(`
160
- • `)}`}throw(){return F(this.describeReasons())}invert(){let U=this.map((X)=>({...X,l:X.r,r:X.l}));if(!(U instanceof B))return new B(...U);return U}withPrefixKey(U,X){return this.map((q)=>({...q,path:[U,...q.path],optional:q.optional||X==="optional"}))}toNeverIfDisjoint(){return V.intrinsic.never}}var Gq=(U,X)=>`${nU(U)} and ${nU(X)}`,nU=(U)=>h(U)?U.expression:x(U)?U.map(nU).join(" | ")||"never":String(U),tU=(U)=>`${U} results in an unsatisfiable type`;var E1={},_0=(U,X,q)=>u(U,X,{$:q,invert:!1,pipe:!1}),T2=(U,X,q)=>u(U,X,{$:q,invert:!1,pipe:!0}),u=(U,X,q)=>{let Z=q.pipe?"|>":"&",Q=`${U.hash}${Z}${X.hash}`;if(E1[Q]!==void 0)return E1[Q];if(!q.pipe){let J=`${X.hash}${Z}${U.hash}`;if(E1[J]!==void 0){let H=E1[J],W=H instanceof B?H.invert():H;return E1[Q]=W,W}}let G=!q.pipe||!U.includesTransform&&!X.includesTransform;if(G&&U.equals(X))return U;let Y=G?eU(U,X,q):U.hasKindIn(...N1)?gG(U,X,q):eU(U,X,q);if(h(Y)){if(U.equals(Y))Y=U;else if(X.equals(Y))Y=X}return E1[Q]=Y,Y},eU=(U,X,q)=>{let Z=U.precedence<X.precedence?U.kind:X.kind,Q=U.impl.intersections[X.kind]??X.impl.intersections[U.kind];if(Q===void 0)return null;else if(Z===U.kind)return Q(U,X,q);else{let G=Q(X,U,{...q,invert:!q.invert});if(G instanceof B)G=G.invert();return G}},gG=(U,X,q)=>U.includesTransform||X.includesTransform?q.invert?Yq(X,U,q):Yq(U,X,q):eU(U,X,q),Yq=(U,X,q)=>U.distribute((Z)=>yG(Z,X,q),(Z)=>{let Q=Z.filter(h);if(Q.length===0)return B.init("union",U.branches,X.branches);if(Q.length<U.branches.length||!U.branches.every((J,H)=>J.rawIn.equals(Q[H].rawIn)))return q.$.parseSchema(Q);let G;if(Q.length===1){let J=Q[0];if(!G)return J;return q.$.node("morph",{...J.inner,in:J.rawIn.configure(G,"self")})}let Y={branches:Q};if(G)Y.meta=G;return q.$.parseSchema(Y)}),yG=(U,X,q)=>{if(U.hasKind("morph")){let Q=[...U.morphs];if(U.lastMorphIfNode){let G=u(U.lastMorphIfNode,X,q);if(G instanceof B)return G;Q[Q.length-1]=G}else Q.push(X);return q.$.node("morph",{morphs:Q,in:U.inner.in})}if(X.hasKind("morph")){let Q=u(U,X.rawIn,q);if(Q instanceof B)return Q;return q.$.node("morph",{morphs:[X],in:Q})}return q.$.node("morph",{morphs:[X],in:U})};class A0 extends B2{constructor(U,X){super(U,X);Object.defineProperty(this,q0,{value:"constraint",enumerable:!1})}impliedSiblings;intersect(U){return _0(this,U,this.$)}}class x0 extends A0{traverseApply=(U,X)=>{if(!this.traverseAllows(U,X))X.errorFromNodeContext(this.errorContext)};compile(U){if(U.traversalKind==="Allows")U.return(this.compiledCondition);else U.if(this.compiledNegation,()=>U.line(`ctx.errorFromNodeContext(${this.compiledErrorContext})`))}get errorContext(){return{code:this.kind,description:this.description,meta:this.meta,...this.inner}}get compiledErrorContext(){return s0(this.errorContext)}}var X0=(U)=>(X,q)=>{if(x(X)){if(X.length===0)return;let Q=X.map((G)=>q.$.node(U,G));if(U==="predicate")return Q;return Q.sort((G,Y)=>G.hash<Y.hash?-1:1)}let Z=q.$.node(U,X);return Z.hasOpenIntersection()?[Z]:Z},j1=(U)=>{let X=U.r.shift();if(!X){let Z=U.l.length===0&&U.kind==="structure"?V.intrinsic.unknown.internal:U.ctx.$.node(U.kind,Object.assign(U.baseInner,kG(U.l)),{prereduced:!0});for(let Q of U.roots){if(Z instanceof B)return Z;Z=u(Q,Z,U.ctx)}return Z}let q=!1;for(let Z=0;Z<U.l.length;Z++){let Q=u(U.l[Z],X,U.ctx);if(Q===null)continue;if(Q instanceof B)return Q;if(Q.isRoot())return U.roots.push(Q),U.l.splice(Z),j1(U);if(!q)U.l[Z]=Q,q=!0;else if(!U.l.includes(Q))return y(`Unexpectedly encountered multiple distinct intersection results for refinement ${X}`)}if(!q)U.l.push(X);if(U.kind==="intersection"){if(X.impliedSiblings)for(let Z of X.impliedSiblings)C0(U.r,Z)}return j1(U)},b1=(U)=>{return Object.entries(U).flatMap(([q,Z])=>(q in A6)?Z:[]).sort((q,Z)=>q.precedence<Z.precedence?-1:q.precedence>Z.precedence?1:q.kind==="predicate"&&Z.kind==="predicate"?0:q.hash<Z.hash?-1:1)},kG=(U)=>{let X={};for(let q of U)if(q.hasOpenIntersection())X[q.kind]=g(X[q.kind],q);else{if(X[q.kind])return y(`Unexpected intersection of closed refinements of kind ${q.kind}`);X[q.kind]=q}return X},Jq=(...U)=>F(Hq(...U)),Hq=(U,X,q)=>{let Z=q.hasKind("morph")?"a morph":q.isUnknown()?"unknown":q.exclude(X).defaultShortDescription;return`${gX(U)} operand must be ${X.description} (was ${Z})`};var Wq=(U,X,q)=>new r0(U,X,q,q,null);class O6 extends J0{}class r0 extends J0{[q0]="generic";paramDefs;bodyDef;$;arg$;baseInstantiation;hkt;description;constructor(U,X,q,Z,Q){super((...G)=>{let Y=S(this.names,(J,H)=>{let W=this.arg$.parse(G[J]);if(!W.extends(this.constraints[J]))F(vG(H,this.constraints[J].expression,W.expression));return[H,W]});if(this.defIsLazy()){let J=this.bodyDef(Y);return this.$.parse(J)}return this.$.parse(X,{args:Y})});this.paramDefs=U,this.bodyDef=X,this.$=q,this.arg$=Z,this.hkt=Q,this.description=Q?new Q().description??`a generic type for ${Q.constructor.name}`:"a generic type",this.baseInstantiation=this(...this.constraints)}defIsLazy(){return this.bodyDef instanceof O6}cacheGetter(U,X){return Object.defineProperty(this,U,{value:X}),X}get json(){return this.cacheGetter("json",{params:this.params.map((U)=>U[1].isUnknown()?U[0]:[U[0],U[1].json]),body:iX(this.bodyDef)})}get params(){return this.cacheGetter("params",this.paramDefs.map((U)=>typeof U==="string"?[U,V.intrinsic.unknown]:[U[0],this.$.parse(U[1])]))}get names(){return this.cacheGetter("names",this.params.map((U)=>U[0]))}get constraints(){return this.cacheGetter("constraints",this.params.map((U)=>U[1]))}get internal(){return this}get referencesById(){return this.baseInstantiation.internal.referencesById}get references(){return this.baseInstantiation.internal.references}}var vG=(U,X,q)=>`${U} must be assignable to ${X} (was ${q})`;var xG=j({kind:"predicate",hasAssociatedError:!0,collapsibleKey:"predicate",keys:{predicate:{}},normalize:(U)=>typeof U==="function"?{predicate:U}:U,defaults:{description:(U)=>`valid according to ${U.predicate.name||"an anonymous predicate"}`},intersectionIsOpen:!0,intersections:{predicate:()=>null}});class _q extends A0{serializedPredicate=d(this.predicate);compiledCondition=`${this.serializedPredicate}(data, ctx)`;compiledNegation=`!${this.compiledCondition}`;impliedBasis=null;expression=this.serializedPredicate;traverseAllows=this.predicate;errorContext={code:"predicate",description:this.description,meta:this.meta};compiledErrorContext=s0(this.errorContext);traverseApply=(U,X)=>{let q=X.currentErrorCount;if(!this.predicate(U,X.external)&&X.currentErrorCount===q)X.errorFromNodeContext(this.errorContext)};compile(U){if(U.traversalKind==="Allows"){U.return(this.compiledCondition);return}U.initializeErrorCount(),U.if(`${this.compiledNegation} && ctx.currentErrorCount === errorCount`,()=>U.line(`ctx.errorFromNodeContext(${this.compiledErrorContext})`))}reduceJsonSchema(U,X){return X.fallback.predicate({code:"predicate",base:U,predicate:this.predicate})}}var U4={implementation:xG,Node:_q};var hG=j({kind:"divisor",collapsibleKey:"rule",keys:{rule:{parse:(U)=>Number.isInteger(U)?U:F(uG(U))}},normalize:(U)=>typeof U==="number"?{rule:U}:U,hasAssociatedError:!0,defaults:{description:(U)=>U.rule===1?"an integer":U.rule===2?"even":`a multiple of ${U.rule}`},intersections:{divisor:(U,X,q)=>q.$.node("divisor",{rule:Math.abs(U.rule*X.rule/mG(U.rule,X.rule))})},obviatesBasisDescription:!0});class $q extends x0{traverseAllows=(U)=>U%this.rule===0;compiledCondition=`data % ${this.rule} === 0`;compiledNegation=`data % ${this.rule} !== 0`;impliedBasis=V.intrinsic.number.internal;expression=`% ${this.rule}`;reduceJsonSchema(U){if(U.type="integer",this.rule===1)return U;return U.multipleOf=this.rule,U}}var X4={implementation:hG,Node:$q};var uG=(U)=>`divisor must be an integer (was ${U})`,mG=(U,X)=>{let q,Z=U,Q=X;while(Q!==0)q=Q,Q=Z%Q,Z=q;return Z};class L0 extends x0{boundOperandKind=cG[this.kind];compiledActual=this.boundOperandKind==="value"?"data":this.boundOperandKind==="length"?"data.length":"data.valueOf()";comparator=iG(this.kind,this.exclusive);numericLimit=this.rule.valueOf();expression=`${this.comparator} ${this.rule}`;compiledCondition=`${this.compiledActual} ${this.comparator} ${this.numericLimit}`;compiledNegation=`${this.compiledActual} ${pG[this.comparator]} ${this.numericLimit}`;stringLimit=this.boundOperandKind==="date"?sG(this.numericLimit):`${this.numericLimit}`;limitKind=this.comparator["0"]==="<"?"upper":"lower";isStricterThan(U){return(this.limitKind==="upper"?this.numericLimit<U.numericLimit:this.numericLimit>U.numericLimit)||this.numericLimit===U.numericLimit&&this.exclusive===!0&&!U.exclusive}overlapsRange(U){if(this.isStricterThan(U))return!1;if(this.numericLimit===U.numericLimit&&(this.exclusive||U.exclusive))return!1;return!0}overlapIsUnit(U){return this.numericLimit===U.numericLimit&&!this.exclusive&&!U.exclusive}}var pG={"<":">=","<=":">",">":"<=",">=":"<"},lG={min:"max",minLength:"maxLength",after:"before"},B6={parse:(U)=>U||void 0},T6=(U)=>(X)=>{if(typeof X==="number")return{rule:X};let{exclusive:q,...Z}=X;return q?{...Z,rule:U==="minLength"?Z.rule+1:Z.rule-1}:Z},D6=(U)=>(X)=>{if(typeof X==="number"||typeof X==="string"||X instanceof Date)return{rule:X};let{exclusive:q,...Z}=X;if(!q)return Z;let Q=typeof Z.rule==="number"?Z.rule:typeof Z.rule==="string"?new Date(Z.rule).valueOf():Z.rule.valueOf();return q?{...Z,rule:U==="after"?Q+1:Q-1}:Z},R6=(U)=>typeof U==="string"||typeof U==="number"?new Date(U):U,dG=(U,X)=>`${U} bound must be a positive integer (was ${X})`,f1=(U)=>(X)=>{if(!Number.isInteger(X)||X<0)F(dG(U,X));return X},cG={min:"value",max:"value",minLength:"length",maxLength:"length",after:"date",before:"date"},iG=(U,X)=>`${a(U,lG)?">":"<"}${X?"":"="}`,sG=(U)=>typeof U==="string"?U:new Date(U).toLocaleString(),Lq=(U)=>`Bounded expression ${U} must be exactly one of number, string, Array, or Date`;var oG=j({kind:"after",collapsibleKey:"rule",hasAssociatedError:!0,keys:{rule:{parse:R6,serialize:(U)=>U.toISOString()}},normalize:D6("after"),defaults:{description:(U)=>`${U.collapsibleLimitString} or later`,actual:$1},intersections:{after:(U,X)=>U.isStricterThan(X)?U:X}});class zq extends L0{impliedBasis=V.intrinsic.Date.internal;collapsibleLimitString=$1(this.rule);traverseAllows=(U)=>U>=this.rule;reduceJsonSchema(U,X){return X.fallback.date({code:"date",base:U,after:this.rule})}}var q4={implementation:oG,Node:zq};var rG=j({kind:"before",collapsibleKey:"rule",hasAssociatedError:!0,keys:{rule:{parse:R6,serialize:(U)=>U.toISOString()}},normalize:D6("before"),defaults:{description:(U)=>`${U.collapsibleLimitString} or earlier`,actual:$1},intersections:{before:(U,X)=>U.isStricterThan(X)?U:X,after:(U,X,q)=>U.overlapsRange(X)?U.overlapIsUnit(X)?q.$.node("unit",{unit:U.rule}):null:B.init("range",U,X)}});class Fq extends L0{collapsibleLimitString=$1(this.rule);traverseAllows=(U)=>U<=this.rule;impliedBasis=V.intrinsic.Date.internal;reduceJsonSchema(U,X){return X.fallback.date({code:"date",base:U,before:this.rule})}}var Z4={implementation:rG,Node:Fq};var aG=j({kind:"exactLength",collapsibleKey:"rule",keys:{rule:{parse:f1("exactLength")}},normalize:(U)=>typeof U==="number"?{rule:U}:U,hasAssociatedError:!0,defaults:{description:(U)=>`exactly length ${U.rule}`,actual:(U)=>`${U.length}`},intersections:{exactLength:(U,X,q)=>B.init("unit",q.$.node("unit",{unit:U.rule}),q.$.node("unit",{unit:X.rule}),{path:["length"]}),minLength:(U,X)=>U.rule>=X.rule?U:B.init("range",U,X),maxLength:(U,X)=>U.rule<=X.rule?U:B.init("range",U,X)}});class Aq extends x0{traverseAllows=(U)=>U.length===this.rule;compiledCondition=`data.length === ${this.rule}`;compiledNegation=`data.length !== ${this.rule}`;impliedBasis=V.intrinsic.lengthBoundable.internal;expression=`== ${this.rule}`;reduceJsonSchema(U){switch(U.type){case"string":return U.minLength=this.rule,U.maxLength=this.rule,U;case"array":return U.minItems=this.rule,U.maxItems=this.rule,U;default:return p.throwInternalOperandError("exactLength",U)}}}var Q4={implementation:aG,Node:Aq};var nG=j({kind:"max",collapsibleKey:"rule",hasAssociatedError:!0,keys:{rule:{},exclusive:B6},normalize:(U)=>typeof U==="number"?{rule:U}:U,defaults:{description:(U)=>{if(U.rule===0)return U.exclusive?"negative":"non-positive";return`${U.exclusive?"less than":"at most"} ${U.rule}`}},intersections:{max:(U,X)=>U.isStricterThan(X)?U:X,min:(U,X,q)=>U.overlapsRange(X)?U.overlapIsUnit(X)?q.$.node("unit",{unit:U.rule}):null:B.init("range",U,X)},obviatesBasisDescription:!0});class Vq extends L0{impliedBasis=V.intrinsic.number.internal;traverseAllows=this.exclusive?(U)=>U<this.rule:(U)=>U<=this.rule;reduceJsonSchema(U){if(this.exclusive)U.exclusiveMaximum=this.rule;else U.maximum=this.rule;return U}}var G4={implementation:nG,Node:Vq};var tG=j({kind:"maxLength",collapsibleKey:"rule",hasAssociatedError:!0,keys:{rule:{parse:f1("maxLength")}},reduce:(U,X)=>U.rule===0?X.node("exactLength",U):void 0,normalize:T6("maxLength"),defaults:{description:(U)=>`at most length ${U.rule}`,actual:(U)=>`${U.length}`},intersections:{maxLength:(U,X)=>U.isStricterThan(X)?U:X,minLength:(U,X,q)=>U.overlapsRange(X)?U.overlapIsUnit(X)?q.$.node("exactLength",{rule:U.rule}):null:B.init("range",U,X)}});class Oq extends L0{impliedBasis=V.intrinsic.lengthBoundable.internal;traverseAllows=(U)=>U.length<=this.rule;reduceJsonSchema(U){switch(U.type){case"string":return U.maxLength=this.rule,U;case"array":return U.maxItems=this.rule,U;default:return p.throwInternalOperandError("maxLength",U)}}}var Y4={implementation:tG,Node:Oq};var eG=j({kind:"min",collapsibleKey:"rule",hasAssociatedError:!0,keys:{rule:{},exclusive:B6},normalize:(U)=>typeof U==="number"?{rule:U}:U,defaults:{description:(U)=>{if(U.rule===0)return U.exclusive?"positive":"non-negative";return`${U.exclusive?"more than":"at least"} ${U.rule}`}},intersections:{min:(U,X)=>U.isStricterThan(X)?U:X},obviatesBasisDescription:!0});class Bq extends L0{impliedBasis=V.intrinsic.number.internal;traverseAllows=this.exclusive?(U)=>U>this.rule:(U)=>U>=this.rule;reduceJsonSchema(U){if(this.exclusive)U.exclusiveMinimum=this.rule;else U.minimum=this.rule;return U}}var J4={implementation:eG,Node:Bq};var U5=j({kind:"minLength",collapsibleKey:"rule",hasAssociatedError:!0,keys:{rule:{parse:f1("minLength")}},reduce:(U)=>U.rule===0?V.intrinsic.unknown:void 0,normalize:T6("minLength"),defaults:{description:(U)=>U.rule===1?"non-empty":`at least length ${U.rule}`,actual:(U)=>U.length===0?"":`${U.length}`},intersections:{minLength:(U,X)=>U.isStricterThan(X)?U:X}});class Tq extends L0{impliedBasis=V.intrinsic.lengthBoundable.internal;traverseAllows=(U)=>U.length>=this.rule;reduceJsonSchema(U){switch(U.type){case"string":return U.minLength=this.rule,U;case"array":return U.minItems=this.rule,U;default:return p.throwInternalOperandError("minLength",U)}}}var H4={implementation:U5,Node:Tq};var Dq={min:J4.implementation,max:G4.implementation,minLength:H4.implementation,maxLength:Y4.implementation,exactLength:Q4.implementation,after:q4.implementation,before:Z4.implementation},Rq={min:J4.Node,max:G4.Node,minLength:H4.Node,maxLength:Y4.Node,exactLength:Q4.Node,after:q4.Node,before:Z4.Node};var X5=j({kind:"pattern",collapsibleKey:"rule",keys:{rule:{},flags:{}},normalize:(U)=>typeof U==="string"?{rule:U}:U instanceof RegExp?U.flags?{rule:U.source,flags:U.flags}:{rule:U.source}:U,obviatesBasisDescription:!0,obviatesBasisExpression:!0,hasAssociatedError:!0,intersectionIsOpen:!0,defaults:{description:(U)=>`matched by ${U.rule}`},intersections:{pattern:()=>null}});class Mq extends x0{instance=new RegExp(this.rule,this.flags);expression=`${this.instance}`;traverseAllows=this.instance.test.bind(this.instance);compiledCondition=`${this.expression}.test(data)`;compiledNegation=`!${this.compiledCondition}`;impliedBasis=V.intrinsic.string.internal;reduceJsonSchema(U,X){if(U.pattern)return X.fallback.patternIntersection({code:"patternIntersection",base:U,pattern:this.rule});return U.pattern=this.rule,U}}var W4={implementation:X5,Node:Mq};var D2=(U,X)=>{let q=q5(U);if(X&&!X.includes(q))return F(`Root of kind ${q} should be one of ${X}`);return q},q5=(U)=>{if(M(U,"root"))return U.kind;if(typeof U==="string")return U[0]==="$"?"alias":(U in G0)?"domain":"proto";if(typeof U==="function")return"proto";if(typeof U!=="object"||U===null)return F(Pq(U));if("morphs"in U)return"morph";if("branches"in U||x(U))return"union";if("unit"in U)return"unit";if("reference"in U)return"alias";let X=Object.keys(U);if(X.length===0||X.some((q)=>(q in A6)))return"intersection";if("proto"in U)return"proto";if("domain"in U)return"domain";return F(Pq(U))},Pq=(U)=>`${E(U)} is not a valid type schema`,wq={},Z5=(U)=>x(U)?U.map((X)=>X.collapsibleJson):U.collapsibleJson,Z0={};V.nodesByRegisteredId=Z0;var _4=(U)=>{return wq[U]??=0,`${U}${++wq[U]}`},$4=(U)=>{let X=g1[U.kind],q=X.applyConfig?.(U.def,U.$.resolvedConfig)??U.def,Z={},{meta:Q,...G}=q,Y=Q===void 0?{}:typeof Q==="string"?{description:Q}:Q,J=gU(G).sort(([W],[$])=>C1(W)?C1($)?S1(W)-S1($):1:C1($)?-1:W<$?-1:1).filter(([W,$])=>{if(W.startsWith("meta.")){let _=W.slice(5);return Y[_]=$,!1}return!0});for(let W of J){let $=W[0],_=X.keys[$];if(!_)return F(`Key ${$} is not valid on ${U.kind} schema`);let L=_.parse?_.parse(W[1],U):W[1];if(L!==Y0&&(L!==void 0||_.preserveUndefined))Z[$]=L}if(X.reduce&&!U.prereduced){let W=X.reduce(Z,U.$);if(W){if(W instanceof B)return W.throw();return Q5(W,Y)}}return L4({id:U.id,kind:U.kind,inner:Z,meta:Y,$:U.$})},L4=({id:U,kind:X,inner:q,meta:Z,$:Q,ignoreCache:G})=>{let Y=g1[X],J=gU(q),H=[],W={};for(let[R,w]of J){let K=Y.keys[R],C=K.serialize??(K.child?Z5:F0);if(W[R]=C(w),K.child===!0){let N=w;if(x(N))H.push(...N);else H.push(N)}else if(typeof K.child==="function")H.push(...K.child(w))}if(Y.finalizeInnerJson)W=Y.finalizeInnerJson(W);let $={...W},_={};if(!S0(Z))_=S(Z,(R,w)=>[R,R==="examples"?w:F0(w)]),$.meta=M6(_,"description",!0);W=M6(W,Y.collapsibleKey,!1);let L=JSON.stringify({kind:X,...W});$=M6($,Y.collapsibleKey,!1);let A=M6($,Y.collapsibleKey,!0),T=JSON.stringify({kind:X,...$});if(Q.nodesByHash[T]&&!G)return Q.nodesByHash[T];let z={id:U,kind:X,impl:Y,inner:q,innerEntries:J,innerJson:W,innerHash:L,meta:Z,metaJson:_,json:$,hash:T,collapsibleJson:A,children:H};if(X!=="intersection"){for(let R in q)if(R!=="in"&&R!=="out")z[R]=q[R]}let O=new Kq[X](z,Q);return Q.nodesByHash[T]=O},Iq=(U,X)=>{if(U.id===X)return U;if(h(Z0[X]))y(`Unexpected attempt to overwrite node id ${X}`);return L4({id:X,kind:U.kind,inner:U.inner,meta:U.meta,$:U.$,ignoreCache:!0})},Q5=(U,X,q)=>{if(q&&h(Z0[q]))y(`Unexpected attempt to overwrite node id ${q}`);return L4({id:q??_4(X.alias??U.kind),kind:U.kind,inner:U.inner,meta:X,$:U.$})},M6=(U,X,q)=>{let Z=Object.keys(U);if(Z.length===1&&Z[0]===X){let Q=U[X];if(q)return Q;if(Q0(Q,"object")&&(Object.keys(Q).length===1||Array.isArray(Q)))return Q}return U};var R2=(U,X,q)=>{if(U.key!==X.key)return null;let Z=U.key,Q=u(U.value,X.value,q),G=U.required||X.required?"required":"optional";if(Q instanceof B)if(G==="optional")Q=V.intrinsic.never.internal;else return Q.withPrefixKey(U.key,U.required&&X.required?"required":"optional");if(G==="required")return q.$.node("required",{key:Z,value:Q});let Y=U.hasDefault()?X.hasDefault()?U.default===X.default?U.default:F(z4(U.default,X.default)):U.default:X.hasDefault()?X.default:Y0;return q.$.node("optional",{key:Z,value:Q,default:Y})};class M2 extends A0{required=this.kind==="required";optional=this.kind==="optional";impliedBasis=V.intrinsic.object.internal;serializedKey=M0(this.key);compiledKey=typeof this.key==="string"?this.key:this.serializedKey;flatRefs=g(this.value.flatRefs.map((U)=>w0([this.key,...U.path],U.node)),w0([this.key],this.value));_transform(U,X){X.path.push(this.key);let q=super._transform(U,X);return X.path.pop(),q}hasDefault(){return"default"in this.inner}traverseAllows=(U,X)=>{if(this.key in U)return W0(this.key,()=>this.value.traverseAllows(U[this.key],X),X);return this.optional};traverseApply=(U,X)=>{if(this.key in U)W0(this.key,()=>this.value.traverseApply(U[this.key],X),X);else if(this.hasKind("required"))X.errorFromNodeContext(this.errorContext)};compile(U){if(U.if(`${this.serializedKey} in data`,()=>U.traverseKey(this.serializedKey,`data${U.prop(this.key)}`,this.value)),this.hasKind("required"))U.else(()=>U.traversalKind==="Apply"?U.line(`ctx.errorFromNodeContext(${this.compiledErrorContext})`):U.return(!1));if(U.traversalKind==="Allows")U.return(!0)}}var z4=(U,X)=>`Invalid intersection of default values ${E(U)} & ${E(X)}`;var G5=j({kind:"optional",hasAssociatedError:!1,intersectionIsOpen:!0,keys:{key:{},value:{child:!0,parse:(U,X)=>X.$.parseSchema(U)},default:{preserveUndefined:!0}},normalize:(U)=>U,reduce:(U,X)=>{if(X.resolvedConfig.exactOptionalPropertyTypes===!1){if(!U.value.allows(void 0))return X.node("optional",{...U,value:U.value.or(I.undefined)},{prereduced:!0})}},defaults:{description:(U)=>`${U.compiledKey}?: ${U.value.description}`},intersections:{optional:R2}});class Nq extends M2{constructor(...U){super(...U);if("default"in this.inner)w2(this.value,this.inner.default,this.key)}get rawIn(){let U=super.rawIn;if(!this.hasDefault())return U;return this.$.node("optional",H6(U.inner,{default:!0}),{prereduced:!0})}get outProp(){if(!this.hasDefault())return this;let{default:U,...X}=this.inner;return this.cacheGetter("outProp",this.$.node("required",X,{prereduced:!0}))}expression=this.hasDefault()?`${this.compiledKey}: ${this.value.expression} = ${E(this.inner.default)}`:`${this.compiledKey}?: ${this.value.expression}`;defaultValueMorph=J5(this);defaultValueMorphRef=this.defaultValueMorph&&d(this.defaultValueMorph)}var P2={implementation:G5,Node:Nq},Y5={},J5=(U)=>{if(!U.hasDefault())return;let X=`{${U.compiledKey}: ${U.value.id} = ${F0(U.default)}}`;return Y5[X]??=F4(U.key,U.value,U.default)},F4=(U,X,q)=>{if(typeof q==="function")return X.includesTransform?(Q,G)=>{return W0(U,()=>X(Q[U]=q(),G),G),Q}:(Q)=>{return Q[U]=q(),Q};let Z=X.includesTransform?X.assert(q):q;return Q0(Z,"object")?(Q,G)=>{return W0(U,()=>X(Q[U]=q,G),G),Q}:(Q)=>{return Q[U]=Z,Q}},w2=(U,X,q)=>{let Z=d0(X);if(Q0(X,"object")&&!Z)F(H5(q));let Q=U.in(Z?X():X);if(Q instanceof H0){if(q===null)F(`Default ${Q.summary}`);let G=Q.transform((Y)=>Y.transform((J)=>({...J,prefixPath:[q]})));F(`Default for ${G.summary}`)}return X},H5=(U)=>{return`Non-primitive default ${U===null?"":typeof U==="number"?`for value at [${U}] `:`for ${M0(U)} `}must be specified as a function like () => ({my: 'object'})`};class V0 extends B2{constructor(U,X){super(U,X);Object.defineProperty(this,q0,{value:"root",enumerable:!1})}get rawIn(){return super.rawIn}get rawOut(){return super.rawOut}get internal(){return this}get "~standard"(){return{vendor:"arktype",version:1,validate:(U)=>{let X=this(U);if(X instanceof H0)return X;return{value:X}},jsonSchema:{input:(U)=>this.rawIn.toJsonSchema({target:Cq(U.target),...U.libraryOptions}),output:(U)=>this.rawOut.toJsonSchema({target:Cq(U.target),...U.libraryOptions})}}}as(){return this}brand(U){if(U==="")return F(W5);return this}readonly(){return this}branches=this.hasKind("union")?this.inner.branches:[this];distribute(U,X){let q=this.branches.map(U);return X?.(q)??q}get shortDescription(){return this.meta.description??this.defaultShortDescription}toJsonSchema(U={}){let X=oU(this.$.resolvedConfig.toJsonSchema,U);X.useRefs||=this.isCyclic;let q=typeof X.dialect==="string"?{$schema:X.dialect}:{};if(Object.assign(q,this.toJsonSchemaRecurse(X)),X.useRefs){let Z=S(this.references,(Q,G)=>G.isRoot()&&!G.alwaysExpandJsonSchema?[G.id,G.toResolvedJsonSchema(X)]:[]);if(X.target==="draft-07")Object.assign(q,{definitions:Z});else q.$defs=Z}return q}toJsonSchemaRecurse(U){if(U.useRefs&&!this.alwaysExpandJsonSchema)return{$ref:`#/${U.target==="draft-07"?"definitions":"$defs"}/${this.id}`};return this.toResolvedJsonSchema(U)}get alwaysExpandJsonSchema(){return this.isBasis()||this.kind==="alias"||this.hasKind("union")&&this.isBoolean}toResolvedJsonSchema(U){let X=this.innerToJsonSchema(U);return Object.assign(X,this.metaJson)}intersect(U){let X=this.$.parseDefinition(U),q=this.rawIntersect(X);if(q instanceof B)return q;return this.$.finalize(q)}rawIntersect(U){return _0(this,U,this.$)}toNeverIfDisjoint(){return this}and(U){let X=this.intersect(U);return X instanceof B?X.throw():X}rawAnd(U){let X=this.rawIntersect(U);return X instanceof B?X.throw():X}or(U){let X=this.$.parseDefinition(U);return this.$.finalize(this.rawOr(X))}rawOr(U){let X=[...this.branches,...U.branches];return this.$.node("union",X)}map(U){return this.$.schema(this.applyStructuralOperation("map",[U]))}pick(...U){return this.$.schema(this.applyStructuralOperation("pick",U))}omit(...U){return this.$.schema(this.applyStructuralOperation("omit",U))}required(){return this.$.schema(this.applyStructuralOperation("required",[]))}partial(){return this.$.schema(this.applyStructuralOperation("partial",[]))}_keyof;keyof(){if(this._keyof)return this._keyof;let U=this.applyStructuralOperation("keyof",[]).reduce((X,q)=>X.intersect(q).toNeverIfDisjoint(),V.intrinsic.unknown.internal);if(U.branches.length===0)F(tU(`keyof ${this.expression}`));return this._keyof=this.$.finalize(U)}get props(){if(this.branches.length!==1)return F($5(this.expression));return[...this.applyStructuralOperation("props",[])[0]]}merge(U){let X=this.$.parseDefinition(U);return this.$.schema(X.distribute((q)=>this.applyStructuralOperation("merge",[Sq(q)??F(Eq("merge",q.expression))])))}applyStructuralOperation(U,X){return this.distribute((q)=>{if(q.equals(V.intrinsic.object)&&U!=="merge")return q;let Z=Sq(q);if(!Z)F(Eq(U,q.expression));if(U==="keyof")return Z.keyof();if(U==="get")return Z.get(...X);if(U==="props")return Z.props;let Q=U==="required"?"require":U==="partial"?"optionalize":U;return this.$.node("intersection",{domain:"object",structure:Z[Q](...X)})})}get(...U){if(U[0]===void 0)return this;return this.$.schema(this.applyStructuralOperation("get",U))}extract(U){let X=this.$.parseDefinition(U);return this.$.schema(this.branches.filter((q)=>q.extends(X)))}exclude(U){let X=this.$.parseDefinition(U);return this.$.schema(this.branches.filter((q)=>!q.extends(X)))}array(){return this.$.schema(this.isUnknown()?{proto:Array}:{proto:Array,sequence:this},{prereduced:!0})}overlaps(U){return!(this.intersect(U)instanceof B)}extends(U){if(this.isNever())return!0;let X=this.intersect(U);return!(X instanceof B)&&this.equals(X)}ifExtends(U){return this.extends(U)?this:void 0}subsumes(U){return this.$.parseDefinition(U).extends(this)}configure(U,X="shallow"){return this.configureReferences(U,X)}describe(U,X="shallow"){return this.configure({description:U},X)}optional(){return[this,"?"]}default(U){return w2(this,U,null),[this,"=",U]}from(U){return this.assert(U)}_pipe(...U){let X=U.reduce((q,Z)=>q.rawPipeOnce(Z),this);return this.$.finalize(X)}tryPipe(...U){let X=U.reduce((q,Z)=>q.rawPipeOnce(M(Z,"root")?Z:(Q,G)=>{try{return Z(Q,G)}catch(Y){return G.error({code:"predicate",predicate:Z,actual:`aborted due to error:
158
+ `);class P0{path=[];errors=new W0(this);root;config;queuedMorphs=[];branches=[];seen={};constructor(U,X){this.root=U,this.config=X}get data(){let U=this.root;for(let X of this.path)U=U?.[X];return U}get propString(){return v0(this.path)}reject(U){return this.error(U),!1}mustBe(U){return this.error(U),!1}error(U){let X=typeof U==="object"?U.code?U:{...U,code:"predicate"}:{code:"predicate",expected:U};return this.errorFromContext(X)}hasError(){return this.currentErrorCount!==0}get currentBranch(){return this.branches[this.branches.length-1]}queueMorphs(U){let X={path:new z2(...this.path),morphs:U};if(this.currentBranch)this.currentBranch.queuedMorphs.push(X);else this.queuedMorphs.push(X)}finalize(U){if(this.queuedMorphs.length){if(typeof this.root==="object"&&this.root!==null&&this.config.clone)this.root=this.config.clone(this.root);this.applyQueuedMorphs()}if(this.hasError())return U?U(this.errors):this.errors;return this.root}get currentErrorCount(){return this.currentBranch?this.currentBranch.error?1:0:this.errors.count}get failFast(){return this.branches.length!==0}pushBranch(){this.branches.push({error:void 0,queuedMorphs:[]})}popBranch(){return this.branches.pop()}get external(){return this}errorFromNodeContext(U){return this.errorFromContext(U)}errorFromContext(U){let X=new o0(U,this);if(this.currentBranch)this.currentBranch.error=X;else this.errors.add(X);return X}applyQueuedMorphs(){while(this.queuedMorphs.length){let U=this.queuedMorphs;this.queuedMorphs=[];for(let{path:X,morphs:q}of U){if(this.errors.affectsPath(X))continue;this.applyMorphsAtPath(X,q)}}}applyMorphsAtPath(U,X){let q=U[U.length-1],Z;if(q!==void 0){Z=this.root;for(let Q=0;Q<U.length-1;Q++)Z=Z[U[Q]]}for(let Q of X){this.path=[...U];let G=x(Q),Y=Q(Z===void 0?this.root:Z[q],this);if(Y instanceof o0){if(!this.errors.includes(Y))this.errors.add(Y);break}if(Y instanceof W0){if(!G)this.errors.merge(Y);this.queuedMorphs=[];break}if(Z===void 0)this.root=Y;else Z[q]=Y;this.applyQueuedMorphs()}}}var _0=(U,X,q)=>{if(!q)return X();q.path.push(U);let Z=X();return q.path.pop(),Z};class B2 extends H0{attachments;$;onFail;includesTransform;includesContextualPredicate;isCyclic;allowsRequiresContext;rootApplyStrategy;contextFreeMorph;rootApply;referencesById;shallowReferences;flatRefs;flatMorphs;allows;get shallowMorphs(){return[]}constructor(U,X){super((Z,Q,G=this.onFail)=>{if(Q)return this.traverseApply(Z,Q),Q.hasError()?Q.errors:Q.data;return this.rootApply(Z,G)},{attach:U});this.attachments=U,this.$=X,this.onFail=this.meta.onFail??this.$.resolvedConfig.onFail,this.includesTransform=this.hasKind("morph")||this.hasKind("structure")&&this.structuralMorph!==void 0||this.hasKind("sequence")&&this.inner.defaultables!==void 0,this.includesContextualPredicate=this.hasKind("predicate")&&this.inner.predicate.length!==1,this.isCyclic=this.kind==="alias",this.referencesById={[this.id]:this},this.shallowReferences=this.hasKind("structure")?[this,...this.children]:this.children.reduce((Z,Q)=>fG(Z,Q.shallowReferences),[this]);let q=this.isStructural();this.flatRefs=[],this.flatMorphs=[];for(let Z=0;Z<this.children.length;Z++){if(this.includesTransform||=this.children[Z].includesTransform,this.includesContextualPredicate||=this.children[Z].includesContextualPredicate,this.isCyclic||=this.children[Z].isCyclic,!q){let Q=this.children[Z].flatRefs;for(let G=0;G<Q.length;G++){let Y=Q[G];if(!this.flatRefs.some((J)=>Zq(J,Y))){this.flatRefs.push(Y);for(let J of Y.node.branches)if(J.hasKind("morph")||J.hasKind("intersection")&&J.structure?.structuralMorph!==void 0)this.flatMorphs.push({path:Y.path,propString:Y.propString,node:J})}}}Object.assign(this.referencesById,this.children[Z].referencesById)}this.flatRefs.sort((Z,Q)=>Z.path.length>Q.path.length?1:Z.path.length<Q.path.length?-1:Z.propString>Q.propString?1:Z.propString<Q.propString?-1:Z.node.expression<Q.node.expression?-1:1),this.allowsRequiresContext=this.includesContextualPredicate||this.isCyclic,this.rootApplyStrategy=!this.allowsRequiresContext&&this.flatMorphs.length===0?this.shallowMorphs.length===0?"allows":this.shallowMorphs.every((Z)=>Z.length===1||Z.name==="$arkStructuralMorph")?this.hasKind("union")?this.branches.some((Z)=>Z.shallowMorphs.length>1)?"contextual":"branchedOptimistic":this.shallowMorphs.length>1?"contextual":"optimistic":"contextual":"contextual",this.rootApply=this.createRootApply(),this.allows=this.allowsRequiresContext?(Z)=>this.traverseAllows(Z,new P0(Z,this.$.resolvedConfig)):(Z)=>this.traverseAllows(Z)}createRootApply(){switch(this.rootApplyStrategy){case"allows":return(X,q)=>{if(this.allows(X))return X;let Z=new P0(X,this.$.resolvedConfig);return this.traverseApply(X,Z),Z.finalize(q)};case"contextual":return(X,q)=>{let Z=new P0(X,this.$.resolvedConfig);return this.traverseApply(X,Z),Z.finalize(q)};case"optimistic":this.contextFreeMorph=this.shallowMorphs[0];let U=this.$.resolvedConfig.clone;return(X,q)=>{if(this.allows(X))return this.contextFreeMorph(U&&(typeof X==="object"&&X!==null||typeof X==="function")?U(X):X);let Z=new P0(X,this.$.resolvedConfig);return this.traverseApply(X,Z),Z.finalize(q)};case"branchedOptimistic":return this.createBranchedOptimisticRootApply();default:return this.rootApplyStrategy,y(`Unexpected rootApplyStrategy ${this.rootApplyStrategy}`)}}compiledMeta=bG(this.metaJson);cacheGetter(U,X){return Object.defineProperty(this,U,{value:X}),X}get description(){return this.cacheGetter("description",this.meta?.description??this.$.resolvedConfig[this.kind].description(this))}get references(){return Object.values(this.referencesById)}precedence=E1(this.kind);precompilation;assert=(U,X)=>this(U,X,(q)=>q.throw());traverse(U,X){return this(U,X,null)}get in(){return this.cacheGetter("in",this.rawIn.isRoot()?this.$.finalize(this.rawIn):this.rawIn)}get rawIn(){return this.cacheGetter("rawIn",this.getIo("in"))}get out(){return this.cacheGetter("out",this.rawOut.isRoot()?this.$.finalize(this.rawOut):this.rawOut)}get rawOut(){return this.cacheGetter("rawOut",this.getIo("out"))}getIo(U){if(!this.includesTransform)return this;let X={};for(let[q,Z]of this.innerEntries){let Q=this.impl.keys[q];if(Q.reduceIo)Q.reduceIo(U,X,Z);else if(Q.child){let G=Z;X[q]=h(G)?G.map((Y)=>U==="in"?Y.rawIn:Y.rawOut):U==="in"?G.rawIn:G.rawOut}else X[q]=Z}return this.$.node(this.kind,X)}toJSON(){return this.json}toString(){return`Type<${this.expression}>`}equals(U){let X=x(U)?U:this.$.parseDefinition(U);return this.innerHash===X.innerHash}ifEquals(U){return this.equals(U)?this:void 0}hasKind(U){return this.kind===U}assertHasKind(U){if(this.kind!==U)Y1(`${this.kind} node was not of asserted kind ${U}`);return this}hasKindIn(...U){return U.includes(this.kind)}assertHasKindIn(...U){if(!F0(U,this.kind))Y1(`${this.kind} node was not one of asserted kinds ${U}`);return this}isBasis(){return F0(aX,this.kind)}isConstraint(){return F0(F6,this.kind)}isStructural(){return F0(N1,this.kind)}isRefinement(){return F0(iU,this.kind)}isRoot(){return F0(C1,this.kind)}isUnknown(){return this.hasKind("intersection")&&this.children.length===0}isNever(){return this.hasKind("union")&&this.children.length===0}hasUnit(U){return this.hasKind("unit")&&this.allows(U)}hasOpenIntersection(){return this.impl.intersectionIsOpen}get nestableExpression(){return this.expression}select(U){let X=V2.normalize(U);return this._select(X)}_select(U){let X=V2.applyBoundary[U.boundary??"references"](this);if(U.kind)X=X.filter((q)=>q.kind===U.kind);if(U.where)X=X.filter(U.where);return V2.applyMethod[U.method??"filter"](X,this,U)}transform(U,X){return this._transform(U,this._createTransformContext(X))}_createTransformContext(U){return{root:this,selected:void 0,seen:{},path:[],parseOptions:{prereduced:U?.prereduced??!1},undeclaredKeyHandling:void 0,...U}}_transform(U,X){let q=X.bindScope??this.$;if(X.seen[this.id])return this.$.lazilyResolve(X.seen[this.id]);if(X.shouldTransform?.(this,X)===!1)return this;let Z;if(X.seen[this.id]=()=>Z,this.hasKind("structure")&&this.undeclared!==X.undeclaredKeyHandling)X={...X,undeclaredKeyHandling:this.undeclared};let Q=S(this.inner,(W,$)=>{if(!this.impl.keys[W].child)return[W,$];let _=$;if(!h(_)){let A=_._transform(U,X);return A?[W,A]:[]}if(_.length===0)return[W,$];let L=_.flatMap((A)=>{return A._transform(U,X)??[]});return L.length?[W,L]:[]});delete X.seen[this.id];let G=Object.assign(Q,{meta:this.meta}),Y=X.selected&&!X.selected.includes(this)?G:U(this.kind,G,X);if(Y===null)return null;if(x(Y))return Z=Y;let J=Object.keys(Y);if((J.length===0||J.length===1&&J[0]==="meta")&&!S0(this.inner))return null;if((this.kind==="required"||this.kind==="optional"||this.kind==="index")&&!("value"in Y))return X.undeclaredKeyHandling?{...Y,value:O.intrinsic.unknown}:null;if(this.kind==="morph")Y.in??=O.intrinsic.unknown;return Z=q.node(this.kind,Y,X.parseOptions)}configureReferences(U,X="references"){let q=V2.normalize(X),Z=typeof U==="string"?(J,H)=>({...H,meta:{...H.meta,description:U}}):typeof U==="function"?(J,H)=>({...H,meta:U(H.meta)}):(J,H)=>({...H,meta:{...H.meta,...U}});if(q.boundary==="self")return this.$.node(this.kind,Z(this.kind,{...this.inner,meta:this.meta}));let Q=this._select(q),G=Q&&l0(Q),Y=q.boundary==="child"?(J,H)=>H.root.children.includes(J):q.boundary==="shallow"?(J)=>J.kind!=="structure":()=>!0;return this.$.finalize(this.transform(Z,{shouldTransform:Y,selected:G}))}}var V2={applyBoundary:{self:(U)=>[U],child:(U)=>[...U.children],shallow:(U)=>[...U.shallowReferences],references:(U)=>[...U.references]},applyMethod:{filter:(U)=>U,assertFilter:(U,X,q)=>{if(U.length===0)Y1(qq(X,q));return U},find:(U)=>U[0],assertFind:(U,X,q)=>{if(U.length===0)Y1(qq(X,q));return U[0]}},normalize:(U)=>typeof U==="function"?{boundary:"references",method:"filter",where:U}:typeof U==="string"?a(U,V2.applyBoundary)?{method:"filter",boundary:U}:{boundary:"references",method:"filter",kind:U}:{boundary:"references",method:"filter",...U}},qq=(U,X)=>`${U} had no references matching ${E(X)}.`,EG=(U)=>v0(U,{stringifyNonKey:(X)=>X.expression}),jG=/"(\$ark\.[^"]+)"/g,bG=(U)=>JSON.stringify(U).replace(jG,"$1"),w0=(U,X)=>({path:U,node:X,propString:EG(U)}),Zq=(U,X)=>U.propString===X.propString&&U.node.equals(X.node),rU=(U,X)=>C0(U,X,{isEqual:Zq}),fG=(U,X)=>C0(U,X,{isEqual:(q,Z)=>q.equals(Z)});class B extends Array{static init(U,X,q,Z){return new B({kind:U,l:X,r:q,path:Z?.path??[],optional:Z?.optional??!1})}add(U,X,q,Z){return this.push({kind:U,l:X,r:q,path:Z?.path??[],optional:Z?.optional??!1}),this}get summary(){return this.describeReasons()}describeReasons(){if(this.length===1){let{path:U,l:X,r:q}=this[0],Z=v0(U);return nU(`Intersection${Z&&` at ${Z}`} of ${Qq(X,q)}`)}return`The following intersections result in unsatisfiable types:
159
+ • ${this.map(({path:U,l:X,r:q})=>`${U}: ${Qq(X,q)}`).join(`
160
+ • `)}`}throw(){return F(this.describeReasons())}invert(){let U=this.map((X)=>({...X,l:X.r,r:X.l}));if(!(U instanceof B))return new B(...U);return U}withPrefixKey(U,X){return this.map((q)=>({...q,path:[U,...q.path],optional:q.optional||X==="optional"}))}toNeverIfDisjoint(){return O.intrinsic.never}}var Qq=(U,X)=>`${aU(U)} and ${aU(X)}`,aU=(U)=>x(U)?U.expression:h(U)?U.map(aU).join(" | ")||"never":String(U),nU=(U)=>`${U} results in an unsatisfiable type`;var j1={},$0=(U,X,q)=>u(U,X,{$:q,invert:!1,pipe:!1}),T2=(U,X,q)=>u(U,X,{$:q,invert:!1,pipe:!0}),u=(U,X,q)=>{let Z=q.pipe?"|>":"&",Q=`${U.hash}${Z}${X.hash}`;if(j1[Q]!==void 0)return j1[Q];if(!q.pipe){let J=`${X.hash}${Z}${U.hash}`;if(j1[J]!==void 0){let H=j1[J],W=H instanceof B?H.invert():H;return j1[Q]=W,W}}let G=!q.pipe||!U.includesTransform&&!X.includesTransform;if(G&&U.equals(X))return U;let Y=G?tU(U,X,q):U.hasKindIn(...C1)?gG(U,X,q):tU(U,X,q);if(x(Y)){if(U.equals(Y))Y=U;else if(X.equals(Y))Y=X}return j1[Q]=Y,Y},tU=(U,X,q)=>{let Z=U.precedence<X.precedence?U.kind:X.kind,Q=U.impl.intersections[X.kind]??X.impl.intersections[U.kind];if(Q===void 0)return null;else if(Z===U.kind)return Q(U,X,q);else{let G=Q(X,U,{...q,invert:!q.invert});if(G instanceof B)G=G.invert();return G}},gG=(U,X,q)=>U.includesTransform||X.includesTransform?q.invert?Gq(X,U,q):Gq(U,X,q):tU(U,X,q),Gq=(U,X,q)=>U.distribute((Z)=>yG(Z,X,q),(Z)=>{let Q=Z.filter(x);if(Q.length===0)return B.init("union",U.branches,X.branches);if(Q.length<U.branches.length||!U.branches.every((J,H)=>J.rawIn.equals(Q[H].rawIn)))return q.$.parseSchema(Q);let G;if(Q.length===1){let J=Q[0];if(!G)return J;return q.$.node("morph",{...J.inner,in:J.rawIn.configure(G,"self")})}let Y={branches:Q};if(G)Y.meta=G;return q.$.parseSchema(Y)}),yG=(U,X,q)=>{if(U.hasKind("morph")){let Q=[...U.morphs];if(U.lastMorphIfNode){let G=u(U.lastMorphIfNode,X,q);if(G instanceof B)return G;Q[Q.length-1]=G}else Q.push(X);return q.$.node("morph",{morphs:Q,in:U.inner.in})}if(X.hasKind("morph")){let Q=u(U,X.rawIn,q);if(Q instanceof B)return Q;return q.$.node("morph",{morphs:[X],in:Q})}return q.$.node("morph",{morphs:[X],in:U})};class O0 extends B2{constructor(U,X){super(U,X);Object.defineProperty(this,Z0,{value:"constraint",enumerable:!1})}impliedSiblings;intersect(U){return $0(this,U,this.$)}}class h0 extends O0{traverseApply=(U,X)=>{if(!this.traverseAllows(U,X))X.errorFromNodeContext(this.errorContext)};compile(U){if(U.traversalKind==="Allows")U.return(this.compiledCondition);else U.if(this.compiledNegation,()=>U.line(`ctx.errorFromNodeContext(${this.compiledErrorContext})`))}get errorContext(){return{code:this.kind,description:this.description,meta:this.meta,...this.inner}}get compiledErrorContext(){return s0(this.errorContext)}}var q0=(U)=>(X,q)=>{if(h(X)){if(X.length===0)return;let Q=X.map((G)=>q.$.node(U,G));if(U==="predicate")return Q;return Q.sort((G,Y)=>G.hash<Y.hash?-1:1)}let Z=q.$.node(U,X);return Z.hasOpenIntersection()?[Z]:Z},b1=(U)=>{let X=U.r.shift();if(!X){let Z=U.l.length===0&&U.kind==="structure"?O.intrinsic.unknown.internal:U.ctx.$.node(U.kind,Object.assign(U.baseInner,kG(U.l)),{prereduced:!0});for(let Q of U.roots){if(Z instanceof B)return Z;Z=u(Q,Z,U.ctx)}return Z}let q=!1;for(let Z=0;Z<U.l.length;Z++){let Q=u(U.l[Z],X,U.ctx);if(Q===null)continue;if(Q instanceof B)return Q;if(Q.isRoot())return U.roots.push(Q),U.l.splice(Z),b1(U);if(!q)U.l[Z]=Q,q=!0;else if(!U.l.includes(Q))return y(`Unexpectedly encountered multiple distinct intersection results for refinement ${X}`)}if(!q)U.l.push(X);if(U.kind==="intersection"){if(X.impliedSiblings)for(let Z of X.impliedSiblings)C0(U.r,Z)}return b1(U)},f1=(U)=>{return Object.entries(U).flatMap(([q,Z])=>(q in A6)?Z:[]).sort((q,Z)=>q.precedence<Z.precedence?-1:q.precedence>Z.precedence?1:q.kind==="predicate"&&Z.kind==="predicate"?0:q.hash<Z.hash?-1:1)},kG=(U)=>{let X={};for(let q of U)if(q.hasOpenIntersection())X[q.kind]=g(X[q.kind],q);else{if(X[q.kind])return y(`Unexpected intersection of closed refinements of kind ${q.kind}`);X[q.kind]=q}return X},Yq=(...U)=>F(Jq(...U)),Jq=(U,X,q)=>{let Z=q.hasKind("morph")?"a morph":q.isUnknown()?"unknown":q.exclude(X).defaultShortDescription;return`${fX(U)} operand must be ${X.description} (was ${Z})`};var Hq=(U,X,q)=>new r0(U,X,q,q,null);class V6 extends H0{}class r0 extends H0{[Z0]="generic";paramDefs;bodyDef;$;arg$;baseInstantiation;hkt;description;constructor(U,X,q,Z,Q){super((...G)=>{let Y=S(this.names,(J,H)=>{let W=this.arg$.parse(G[J]);if(!W.extends(this.constraints[J]))F(vG(H,this.constraints[J].expression,W.expression));return[H,W]});if(this.defIsLazy()){let J=this.bodyDef(Y);return this.$.parse(J)}return this.$.parse(X,{args:Y})});this.paramDefs=U,this.bodyDef=X,this.$=q,this.arg$=Z,this.hkt=Q,this.description=Q?new Q().description??`a generic type for ${Q.constructor.name}`:"a generic type",this.baseInstantiation=this(...this.constraints)}defIsLazy(){return this.bodyDef instanceof V6}cacheGetter(U,X){return Object.defineProperty(this,U,{value:X}),X}get json(){return this.cacheGetter("json",{params:this.params.map((U)=>U[1].isUnknown()?U[0]:[U[0],U[1].json]),body:cX(this.bodyDef)})}get params(){return this.cacheGetter("params",this.paramDefs.map((U)=>typeof U==="string"?[U,O.intrinsic.unknown]:[U[0],this.$.parse(U[1])]))}get names(){return this.cacheGetter("names",this.params.map((U)=>U[0]))}get constraints(){return this.cacheGetter("constraints",this.params.map((U)=>U[1]))}get internal(){return this}get referencesById(){return this.baseInstantiation.internal.referencesById}get references(){return this.baseInstantiation.internal.references}}var vG=(U,X,q)=>`${U} must be assignable to ${X} (was ${q})`;var hG=j({kind:"predicate",hasAssociatedError:!0,collapsibleKey:"predicate",keys:{predicate:{}},normalize:(U)=>typeof U==="function"?{predicate:U}:U,defaults:{description:(U)=>`valid according to ${U.predicate.name||"an anonymous predicate"}`},intersectionIsOpen:!0,intersections:{predicate:()=>null}});class Wq extends O0{serializedPredicate=d(this.predicate);compiledCondition=`${this.serializedPredicate}(data, ctx)`;compiledNegation=`!${this.compiledCondition}`;impliedBasis=null;expression=this.serializedPredicate;traverseAllows=this.predicate;errorContext={code:"predicate",description:this.description,meta:this.meta};compiledErrorContext=s0(this.errorContext);traverseApply=(U,X)=>{let q=X.currentErrorCount;if(!this.predicate(U,X.external)&&X.currentErrorCount===q)X.errorFromNodeContext(this.errorContext)};compile(U){if(U.traversalKind==="Allows"){U.return(this.compiledCondition);return}U.initializeErrorCount(),U.if(`${this.compiledNegation} && ctx.currentErrorCount === errorCount`,()=>U.line(`ctx.errorFromNodeContext(${this.compiledErrorContext})`))}reduceJsonSchema(U,X){return X.fallback.predicate({code:"predicate",base:U,predicate:this.predicate})}}var eU={implementation:hG,Node:Wq};var xG=j({kind:"divisor",collapsibleKey:"rule",keys:{rule:{parse:(U)=>Number.isInteger(U)?U:F(uG(U))}},normalize:(U)=>typeof U==="number"?{rule:U}:U,hasAssociatedError:!0,defaults:{description:(U)=>U.rule===1?"an integer":U.rule===2?"even":`a multiple of ${U.rule}`},intersections:{divisor:(U,X,q)=>q.$.node("divisor",{rule:Math.abs(U.rule*X.rule/mG(U.rule,X.rule))})},obviatesBasisDescription:!0});class _q extends h0{traverseAllows=(U)=>U%this.rule===0;compiledCondition=`data % ${this.rule} === 0`;compiledNegation=`data % ${this.rule} !== 0`;impliedBasis=O.intrinsic.number.internal;expression=`% ${this.rule}`;reduceJsonSchema(U){if(U.type="integer",this.rule===1)return U;return U.multipleOf=this.rule,U}}var U4={implementation:xG,Node:_q};var uG=(U)=>`divisor must be an integer (was ${U})`,mG=(U,X)=>{let q,Z=U,Q=X;while(Q!==0)q=Q,Q=Z%Q,Z=q;return Z};class z0 extends h0{boundOperandKind=cG[this.kind];compiledActual=this.boundOperandKind==="value"?"data":this.boundOperandKind==="length"?"data.length":"data.valueOf()";comparator=iG(this.kind,this.exclusive);numericLimit=this.rule.valueOf();expression=`${this.comparator} ${this.rule}`;compiledCondition=`${this.compiledActual} ${this.comparator} ${this.numericLimit}`;compiledNegation=`${this.compiledActual} ${pG[this.comparator]} ${this.numericLimit}`;stringLimit=this.boundOperandKind==="date"?sG(this.numericLimit):`${this.numericLimit}`;limitKind=this.comparator["0"]==="<"?"upper":"lower";isStricterThan(U){return(this.limitKind==="upper"?this.numericLimit<U.numericLimit:this.numericLimit>U.numericLimit)||this.numericLimit===U.numericLimit&&this.exclusive===!0&&!U.exclusive}overlapsRange(U){if(this.isStricterThan(U))return!1;if(this.numericLimit===U.numericLimit&&(this.exclusive||U.exclusive))return!1;return!0}overlapIsUnit(U){return this.numericLimit===U.numericLimit&&!this.exclusive&&!U.exclusive}}var pG={"<":">=","<=":">",">":"<=",">=":"<"},lG={min:"max",minLength:"maxLength",after:"before"},B6={parse:(U)=>U||void 0},T6=(U)=>(X)=>{if(typeof X==="number")return{rule:X};let{exclusive:q,...Z}=X;return q?{...Z,rule:U==="minLength"?Z.rule+1:Z.rule-1}:Z},R6=(U)=>(X)=>{if(typeof X==="number"||typeof X==="string"||X instanceof Date)return{rule:X};let{exclusive:q,...Z}=X;if(!q)return Z;let Q=typeof Z.rule==="number"?Z.rule:typeof Z.rule==="string"?new Date(Z.rule).valueOf():Z.rule.valueOf();return q?{...Z,rule:U==="after"?Q+1:Q-1}:Z},D6=(U)=>typeof U==="string"||typeof U==="number"?new Date(U):U,dG=(U,X)=>`${U} bound must be a positive integer (was ${X})`,g1=(U)=>(X)=>{if(!Number.isInteger(X)||X<0)F(dG(U,X));return X},cG={min:"value",max:"value",minLength:"length",maxLength:"length",after:"date",before:"date"},iG=(U,X)=>`${a(U,lG)?">":"<"}${X?"":"="}`,sG=(U)=>typeof U==="string"?U:new Date(U).toLocaleString(),$q=(U)=>`Bounded expression ${U} must be exactly one of number, string, Array, or Date`;var oG=j({kind:"after",collapsibleKey:"rule",hasAssociatedError:!0,keys:{rule:{parse:D6,serialize:(U)=>U.toISOString()}},normalize:R6("after"),defaults:{description:(U)=>`${U.collapsibleLimitString} or later`,actual:$1},intersections:{after:(U,X)=>U.isStricterThan(X)?U:X}});class Lq extends z0{impliedBasis=O.intrinsic.Date.internal;collapsibleLimitString=$1(this.rule);traverseAllows=(U)=>U>=this.rule;reduceJsonSchema(U,X){return X.fallback.date({code:"date",base:U,after:this.rule})}}var X4={implementation:oG,Node:Lq};var rG=j({kind:"before",collapsibleKey:"rule",hasAssociatedError:!0,keys:{rule:{parse:D6,serialize:(U)=>U.toISOString()}},normalize:R6("before"),defaults:{description:(U)=>`${U.collapsibleLimitString} or earlier`,actual:$1},intersections:{before:(U,X)=>U.isStricterThan(X)?U:X,after:(U,X,q)=>U.overlapsRange(X)?U.overlapIsUnit(X)?q.$.node("unit",{unit:U.rule}):null:B.init("range",U,X)}});class zq extends z0{collapsibleLimitString=$1(this.rule);traverseAllows=(U)=>U<=this.rule;impliedBasis=O.intrinsic.Date.internal;reduceJsonSchema(U,X){return X.fallback.date({code:"date",base:U,before:this.rule})}}var q4={implementation:rG,Node:zq};var aG=j({kind:"exactLength",collapsibleKey:"rule",keys:{rule:{parse:g1("exactLength")}},normalize:(U)=>typeof U==="number"?{rule:U}:U,hasAssociatedError:!0,defaults:{description:(U)=>`exactly length ${U.rule}`,actual:(U)=>`${U.length}`},intersections:{exactLength:(U,X,q)=>B.init("unit",q.$.node("unit",{unit:U.rule}),q.$.node("unit",{unit:X.rule}),{path:["length"]}),minLength:(U,X)=>U.rule>=X.rule?U:B.init("range",U,X),maxLength:(U,X)=>U.rule<=X.rule?U:B.init("range",U,X)}});class Fq extends h0{traverseAllows=(U)=>U.length===this.rule;compiledCondition=`data.length === ${this.rule}`;compiledNegation=`data.length !== ${this.rule}`;impliedBasis=O.intrinsic.lengthBoundable.internal;expression=`== ${this.rule}`;reduceJsonSchema(U){switch(U.type){case"string":return U.minLength=this.rule,U.maxLength=this.rule,U;case"array":return U.minItems=this.rule,U.maxItems=this.rule,U;default:return p.throwInternalOperandError("exactLength",U)}}}var Z4={implementation:aG,Node:Fq};var nG=j({kind:"max",collapsibleKey:"rule",hasAssociatedError:!0,keys:{rule:{},exclusive:B6},normalize:(U)=>typeof U==="number"?{rule:U}:U,defaults:{description:(U)=>{if(U.rule===0)return U.exclusive?"negative":"non-positive";return`${U.exclusive?"less than":"at most"} ${U.rule}`}},intersections:{max:(U,X)=>U.isStricterThan(X)?U:X,min:(U,X,q)=>U.overlapsRange(X)?U.overlapIsUnit(X)?q.$.node("unit",{unit:U.rule}):null:B.init("range",U,X)},obviatesBasisDescription:!0});class Aq extends z0{impliedBasis=O.intrinsic.number.internal;traverseAllows=this.exclusive?(U)=>U<this.rule:(U)=>U<=this.rule;reduceJsonSchema(U){if(this.exclusive)U.exclusiveMaximum=this.rule;else U.maximum=this.rule;return U}}var Q4={implementation:nG,Node:Aq};var tG=j({kind:"maxLength",collapsibleKey:"rule",hasAssociatedError:!0,keys:{rule:{parse:g1("maxLength")}},reduce:(U,X)=>U.rule===0?X.node("exactLength",U):void 0,normalize:T6("maxLength"),defaults:{description:(U)=>`at most length ${U.rule}`,actual:(U)=>`${U.length}`},intersections:{maxLength:(U,X)=>U.isStricterThan(X)?U:X,minLength:(U,X,q)=>U.overlapsRange(X)?U.overlapIsUnit(X)?q.$.node("exactLength",{rule:U.rule}):null:B.init("range",U,X)}});class Oq extends z0{impliedBasis=O.intrinsic.lengthBoundable.internal;traverseAllows=(U)=>U.length<=this.rule;reduceJsonSchema(U){switch(U.type){case"string":return U.maxLength=this.rule,U;case"array":return U.maxItems=this.rule,U;default:return p.throwInternalOperandError("maxLength",U)}}}var G4={implementation:tG,Node:Oq};var eG=j({kind:"min",collapsibleKey:"rule",hasAssociatedError:!0,keys:{rule:{},exclusive:B6},normalize:(U)=>typeof U==="number"?{rule:U}:U,defaults:{description:(U)=>{if(U.rule===0)return U.exclusive?"positive":"non-negative";return`${U.exclusive?"more than":"at least"} ${U.rule}`}},intersections:{min:(U,X)=>U.isStricterThan(X)?U:X},obviatesBasisDescription:!0});class Vq extends z0{impliedBasis=O.intrinsic.number.internal;traverseAllows=this.exclusive?(U)=>U>this.rule:(U)=>U>=this.rule;reduceJsonSchema(U){if(this.exclusive)U.exclusiveMinimum=this.rule;else U.minimum=this.rule;return U}}var Y4={implementation:eG,Node:Vq};var U5=j({kind:"minLength",collapsibleKey:"rule",hasAssociatedError:!0,keys:{rule:{parse:g1("minLength")}},reduce:(U)=>U.rule===0?O.intrinsic.unknown:void 0,normalize:T6("minLength"),defaults:{description:(U)=>U.rule===1?"non-empty":`at least length ${U.rule}`,actual:(U)=>U.length===0?"":`${U.length}`},intersections:{minLength:(U,X)=>U.isStricterThan(X)?U:X}});class Bq extends z0{impliedBasis=O.intrinsic.lengthBoundable.internal;traverseAllows=(U)=>U.length>=this.rule;reduceJsonSchema(U){switch(U.type){case"string":return U.minLength=this.rule,U;case"array":return U.minItems=this.rule,U;default:return p.throwInternalOperandError("minLength",U)}}}var J4={implementation:U5,Node:Bq};var Tq={min:Y4.implementation,max:Q4.implementation,minLength:J4.implementation,maxLength:G4.implementation,exactLength:Z4.implementation,after:X4.implementation,before:q4.implementation},Rq={min:Y4.Node,max:Q4.Node,minLength:J4.Node,maxLength:G4.Node,exactLength:Z4.Node,after:X4.Node,before:q4.Node};var X5=j({kind:"pattern",collapsibleKey:"rule",keys:{rule:{},flags:{}},normalize:(U)=>typeof U==="string"?{rule:U}:U instanceof RegExp?U.flags?{rule:U.source,flags:U.flags}:{rule:U.source}:U,obviatesBasisDescription:!0,obviatesBasisExpression:!0,hasAssociatedError:!0,intersectionIsOpen:!0,defaults:{description:(U)=>`matched by ${U.rule}`},intersections:{pattern:()=>null}});class Dq extends h0{instance=new RegExp(this.rule,this.flags);expression=`${this.instance}`;traverseAllows=this.instance.test.bind(this.instance);compiledCondition=`${this.expression}.test(data)`;compiledNegation=`!${this.compiledCondition}`;impliedBasis=O.intrinsic.string.internal;reduceJsonSchema(U,X){if(U.pattern)return X.fallback.patternIntersection({code:"patternIntersection",base:U,pattern:this.rule});return U.pattern=this.rule,U}}var H4={implementation:X5,Node:Dq};var R2=(U,X)=>{let q=q5(U);if(X&&!X.includes(q))return F(`Root of kind ${q} should be one of ${X}`);return q},q5=(U)=>{if(M(U,"root"))return U.kind;if(typeof U==="string")return U[0]==="$"?"alias":(U in Y0)?"domain":"proto";if(typeof U==="function")return"proto";if(typeof U!=="object"||U===null)return F(Mq(U));if("morphs"in U)return"morph";if("branches"in U||h(U))return"union";if("unit"in U)return"unit";if("reference"in U)return"alias";let X=Object.keys(U);if(X.length===0||X.some((q)=>(q in A6)))return"intersection";if("proto"in U)return"proto";if("domain"in U)return"domain";return F(Mq(U))},Mq=(U)=>`${E(U)} is not a valid type schema`,Pq={},Z5=(U)=>h(U)?U.map((X)=>X.collapsibleJson):U.collapsibleJson,Q0={};O.nodesByRegisteredId=Q0;var W4=(U)=>{return Pq[U]??=0,`${U}${++Pq[U]}`},_4=(U)=>{let X=y1[U.kind],q=X.applyConfig?.(U.def,U.$.resolvedConfig)??U.def,Z={},{meta:Q,...G}=q,Y=Q===void 0?{}:typeof Q==="string"?{description:Q}:Q,J=fU(G).sort(([W],[$])=>S1(W)?S1($)?E1(W)-E1($):1:S1($)?-1:W<$?-1:1).filter(([W,$])=>{if(W.startsWith("meta.")){let _=W.slice(5);return Y[_]=$,!1}return!0});for(let W of J){let $=W[0],_=X.keys[$];if(!_)return F(`Key ${$} is not valid on ${U.kind} schema`);let L=_.parse?_.parse(W[1],U):W[1];if(L!==J0&&(L!==void 0||_.preserveUndefined))Z[$]=L}if(X.reduce&&!U.prereduced){let W=X.reduce(Z,U.$);if(W){if(W instanceof B)return W.throw();return Q5(W,Y)}}return $4({id:U.id,kind:U.kind,inner:Z,meta:Y,$:U.$})},$4=({id:U,kind:X,inner:q,meta:Z,$:Q,ignoreCache:G})=>{let Y=y1[X],J=fU(q),H=[],W={};for(let[D,w]of J){let K=Y.keys[D],C=K.serialize??(K.child?Z5:A0);if(W[D]=C(w),K.child===!0){let N=w;if(h(N))H.push(...N);else H.push(N)}else if(typeof K.child==="function")H.push(...K.child(w))}if(Y.finalizeInnerJson)W=Y.finalizeInnerJson(W);let $={...W},_={};if(!S0(Z))_=S(Z,(D,w)=>[D,D==="examples"?w:A0(w)]),$.meta=M6(_,"description",!0);W=M6(W,Y.collapsibleKey,!1);let L=JSON.stringify({kind:X,...W});$=M6($,Y.collapsibleKey,!1);let A=M6($,Y.collapsibleKey,!0),T=JSON.stringify({kind:X,...$});if(Q.nodesByHash[T]&&!G)return Q.nodesByHash[T];let z={id:U,kind:X,impl:Y,inner:q,innerEntries:J,innerJson:W,innerHash:L,meta:Z,metaJson:_,json:$,hash:T,collapsibleJson:A,children:H};if(X!=="intersection"){for(let D in q)if(D!=="in"&&D!=="out")z[D]=q[D]}let V=new Iq[X](z,Q);return Q.nodesByHash[T]=V},wq=(U,X)=>{if(U.id===X)return U;if(x(Q0[X]))y(`Unexpected attempt to overwrite node id ${X}`);return $4({id:X,kind:U.kind,inner:U.inner,meta:U.meta,$:U.$,ignoreCache:!0})},Q5=(U,X,q)=>{if(q&&x(Q0[q]))y(`Unexpected attempt to overwrite node id ${q}`);return $4({id:q??W4(X.alias??U.kind),kind:U.kind,inner:U.inner,meta:X,$:U.$})},M6=(U,X,q)=>{let Z=Object.keys(U);if(Z.length===1&&Z[0]===X){let Q=U[X];if(q)return Q;if(G0(Q,"object")&&(Object.keys(Q).length===1||Array.isArray(Q)))return Q}return U};var D2=(U,X,q)=>{if(U.key!==X.key)return null;let Z=U.key,Q=u(U.value,X.value,q),G=U.required||X.required?"required":"optional";if(Q instanceof B)if(G==="optional")Q=O.intrinsic.never.internal;else return Q.withPrefixKey(U.key,U.required&&X.required?"required":"optional");if(G==="required")return q.$.node("required",{key:Z,value:Q});let Y=U.hasDefault()?X.hasDefault()?U.default===X.default?U.default:F(L4(U.default,X.default)):U.default:X.hasDefault()?X.default:J0;return q.$.node("optional",{key:Z,value:Q,default:Y})};class M2 extends O0{required=this.kind==="required";optional=this.kind==="optional";impliedBasis=O.intrinsic.object.internal;serializedKey=M0(this.key);compiledKey=typeof this.key==="string"?this.key:this.serializedKey;flatRefs=g(this.value.flatRefs.map((U)=>w0([this.key,...U.path],U.node)),w0([this.key],this.value));_transform(U,X){X.path.push(this.key);let q=super._transform(U,X);return X.path.pop(),q}hasDefault(){return"default"in this.inner}traverseAllows=(U,X)=>{if(this.key in U)return _0(this.key,()=>this.value.traverseAllows(U[this.key],X),X);return this.optional};traverseApply=(U,X)=>{if(this.key in U)_0(this.key,()=>this.value.traverseApply(U[this.key],X),X);else if(this.hasKind("required"))X.errorFromNodeContext(this.errorContext)};compile(U){if(U.if(`${this.serializedKey} in data`,()=>U.traverseKey(this.serializedKey,`data${U.prop(this.key)}`,this.value)),this.hasKind("required"))U.else(()=>U.traversalKind==="Apply"?U.line(`ctx.errorFromNodeContext(${this.compiledErrorContext})`):U.return(!1));if(U.traversalKind==="Allows")U.return(!0)}}var L4=(U,X)=>`Invalid intersection of default values ${E(U)} & ${E(X)}`;var G5=j({kind:"optional",hasAssociatedError:!1,intersectionIsOpen:!0,keys:{key:{},value:{child:!0,parse:(U,X)=>X.$.parseSchema(U)},default:{preserveUndefined:!0}},normalize:(U)=>U,reduce:(U,X)=>{if(X.resolvedConfig.exactOptionalPropertyTypes===!1){if(!U.value.allows(void 0))return X.node("optional",{...U,value:U.value.or(I.undefined)},{prereduced:!0})}},defaults:{description:(U)=>`${U.compiledKey}?: ${U.value.description}`},intersections:{optional:D2}});class Kq extends M2{constructor(...U){super(...U);if("default"in this.inner)w2(this.value,this.inner.default,this.key)}get rawIn(){let U=super.rawIn;if(!this.hasDefault())return U;return this.$.node("optional",H6(U.inner,{default:!0}),{prereduced:!0})}get outProp(){if(!this.hasDefault())return this;let{default:U,...X}=this.inner;return this.cacheGetter("outProp",this.$.node("required",X,{prereduced:!0}))}expression=this.hasDefault()?`${this.compiledKey}: ${this.value.expression} = ${E(this.inner.default)}`:`${this.compiledKey}?: ${this.value.expression}`;defaultValueMorph=J5(this);defaultValueMorphRef=this.defaultValueMorph&&d(this.defaultValueMorph)}var P2={implementation:G5,Node:Kq},Y5={},J5=(U)=>{if(!U.hasDefault())return;let X=`{${U.compiledKey}: ${U.value.id} = ${A0(U.default)}}`;return Y5[X]??=z4(U.key,U.value,U.default)},z4=(U,X,q)=>{if(typeof q==="function")return X.includesTransform?(Q,G)=>{return _0(U,()=>X(Q[U]=q(),G),G),Q}:(Q)=>{return Q[U]=q(),Q};let Z=X.includesTransform?X.assert(q):q;return G0(Z,"object")?(Q,G)=>{return _0(U,()=>X(Q[U]=q,G),G),Q}:(Q)=>{return Q[U]=Z,Q}},w2=(U,X,q)=>{let Z=d0(X);if(G0(X,"object")&&!Z)F(H5(q));let Q=U.in(Z?X():X);if(Q instanceof W0){if(q===null)F(`Default ${Q.summary}`);let G=Q.transform((Y)=>Y.transform((J)=>({...J,prefixPath:[q]})));F(`Default for ${G.summary}`)}return X},H5=(U)=>{return`Non-primitive default ${U===null?"":typeof U==="number"?`for value at [${U}] `:`for ${M0(U)} `}must be specified as a function like () => ({my: 'object'})`};class V0 extends B2{constructor(U,X){super(U,X);Object.defineProperty(this,Z0,{value:"root",enumerable:!1})}get rawIn(){return super.rawIn}get rawOut(){return super.rawOut}get internal(){return this}get "~standard"(){return{vendor:"arktype",version:1,validate:(U)=>{let X=this(U);if(X instanceof W0)return X;return{value:X}},jsonSchema:{input:(U)=>this.rawIn.toJsonSchema({target:Nq(U.target),...U.libraryOptions}),output:(U)=>this.rawOut.toJsonSchema({target:Nq(U.target),...U.libraryOptions})}}}as(){return this}brand(U){if(U==="")return F(W5);return this}readonly(){return this}branches=this.hasKind("union")?this.inner.branches:[this];distribute(U,X){let q=this.branches.map(U);return X?.(q)??q}get shortDescription(){return this.meta.description??this.defaultShortDescription}toJsonSchema(U={}){let X=sU(this.$.resolvedConfig.toJsonSchema,U);X.useRefs||=this.isCyclic;let q=typeof X.dialect==="string"?{$schema:X.dialect}:{};if(Object.assign(q,this.toJsonSchemaRecurse(X)),X.useRefs){let Z=S(this.references,(Q,G)=>G.isRoot()&&!G.alwaysExpandJsonSchema?[G.id,G.toResolvedJsonSchema(X)]:[]);if(X.target==="draft-07")Object.assign(q,{definitions:Z});else q.$defs=Z}return q}toJsonSchemaRecurse(U){if(U.useRefs&&!this.alwaysExpandJsonSchema)return{$ref:`#/${U.target==="draft-07"?"definitions":"$defs"}/${this.id}`};return this.toResolvedJsonSchema(U)}get alwaysExpandJsonSchema(){return this.isBasis()||this.kind==="alias"||this.hasKind("union")&&this.isBoolean}toResolvedJsonSchema(U){let X=this.innerToJsonSchema(U);return Object.assign(X,this.metaJson)}intersect(U){let X=this.$.parseDefinition(U),q=this.rawIntersect(X);if(q instanceof B)return q;return this.$.finalize(q)}rawIntersect(U){return $0(this,U,this.$)}toNeverIfDisjoint(){return this}and(U){let X=this.intersect(U);return X instanceof B?X.throw():X}rawAnd(U){let X=this.rawIntersect(U);return X instanceof B?X.throw():X}or(U){let X=this.$.parseDefinition(U);return this.$.finalize(this.rawOr(X))}rawOr(U){let X=[...this.branches,...U.branches];return this.$.node("union",X)}map(U){return this.$.schema(this.applyStructuralOperation("map",[U]))}pick(...U){return this.$.schema(this.applyStructuralOperation("pick",U))}omit(...U){return this.$.schema(this.applyStructuralOperation("omit",U))}required(){return this.$.schema(this.applyStructuralOperation("required",[]))}partial(){return this.$.schema(this.applyStructuralOperation("partial",[]))}_keyof;keyof(){if(this._keyof)return this._keyof;let U=this.applyStructuralOperation("keyof",[]).reduce((X,q)=>X.intersect(q).toNeverIfDisjoint(),O.intrinsic.unknown.internal);if(U.branches.length===0)F(nU(`keyof ${this.expression}`));return this._keyof=this.$.finalize(U)}get props(){if(this.branches.length!==1)return F($5(this.expression));return[...this.applyStructuralOperation("props",[])[0]]}merge(U){let X=this.$.parseDefinition(U);return this.$.schema(X.distribute((q)=>this.applyStructuralOperation("merge",[Cq(q)??F(Sq("merge",q.expression))])))}applyStructuralOperation(U,X){return this.distribute((q)=>{if(q.equals(O.intrinsic.object)&&U!=="merge")return q;let Z=Cq(q);if(!Z)F(Sq(U,q.expression));if(U==="keyof")return Z.keyof();if(U==="get")return Z.get(...X);if(U==="props")return Z.props;let Q=U==="required"?"require":U==="partial"?"optionalize":U;return this.$.node("intersection",{domain:"object",structure:Z[Q](...X)})})}get(...U){if(U[0]===void 0)return this;return this.$.schema(this.applyStructuralOperation("get",U))}extract(U){let X=this.$.parseDefinition(U);return this.$.schema(this.branches.filter((q)=>q.extends(X)))}exclude(U){let X=this.$.parseDefinition(U);return this.$.schema(this.branches.filter((q)=>!q.extends(X)))}array(){return this.$.schema(this.isUnknown()?{proto:Array}:{proto:Array,sequence:this},{prereduced:!0})}overlaps(U){return!(this.intersect(U)instanceof B)}extends(U){if(this.isNever())return!0;let X=this.intersect(U);return!(X instanceof B)&&this.equals(X)}ifExtends(U){return this.extends(U)?this:void 0}subsumes(U){return this.$.parseDefinition(U).extends(this)}configure(U,X="shallow"){return this.configureReferences(U,X)}describe(U,X="shallow"){return this.configure({description:U},X)}optional(){return[this,"?"]}default(U){return w2(this,U,null),[this,"=",U]}from(U){return this.assert(U)}_pipe(...U){let X=U.reduce((q,Z)=>q.rawPipeOnce(Z),this);return this.$.finalize(X)}tryPipe(...U){let X=U.reduce((q,Z)=>q.rawPipeOnce(M(Z,"root")?Z:(Q,G)=>{try{return Z(Q,G)}catch(Y){return G.error({code:"predicate",predicate:Z,actual:`aborted due to error:
161
161
  ${Y}
162
- `})}}),this);return this.$.finalize(X)}pipe=Object.assign(this._pipe.bind(this),{try:this.tryPipe.bind(this)});to(U){return this.$.finalize(this.toNode(this.$.parseDefinition(U)))}toNode(U){let X=T2(this,U,this.$);if(X instanceof B)return X.throw();return X}rawPipeOnce(U){if(M(U,"root"))return this.toNode(U);return this.distribute((X)=>X.hasKind("morph")?this.$.node("morph",{in:X.inner.in,morphs:[...X.morphs,U]}):this.$.node("morph",{in:X,morphs:[U]}),this.$.parseSchema)}narrow(U){return this.constrainOut("predicate",U)}constrain(U,X){return this._constrain("root",U,X)}constrainIn(U,X){return this._constrain("in",U,X)}constrainOut(U,X){return this._constrain("out",U,X)}_constrain(U,X,q){let Z=this.$.node(X,q);if(Z.isRoot())return Z.isUnknown()?this:y(`Unexpected constraint node ${Z}`);let Q=U==="root"?this:U==="in"?this.rawIn:this.rawOut;if(Q.hasKind("morph")||Z.impliedBasis&&!Q.extends(Z.impliedBasis))return Jq(X,Z.impliedBasis,this);let G=this.$.node("intersection",{[Z.kind]:Z}),Y=U==="out"?T2(this,G,this.$):_0(this,G,this.$);if(Y instanceof B)Y.throw();return this.$.finalize(Y)}onUndeclaredKey(U){let X=typeof U==="string"?U:U.rule,q=typeof U==="string"?!1:U.deep;return this.$.finalize(this.transform((Z,Q)=>Z==="structure"?X==="ignore"?H6(Q,{undeclared:1}):{...Q,undeclared:X}:Q,q?void 0:{shouldTransform:(Z)=>!z0(K1,Z.kind)}))}hasEqualMorphs(U){if(!this.includesTransform&&!U.includesTransform)return!0;if(!y0(this.shallowMorphs,U.shallowMorphs))return!1;if(!y0(this.flatMorphs,U.flatMorphs,{isEqual:(X,q)=>X.propString===q.propString&&(X.node.hasKind("morph")&&q.node.hasKind("morph")?X.node.hasEqualMorphs(q.node):X.node.hasKind("intersection")&&q.node.hasKind("intersection")?X.node.structure?.structuralMorphRef===q.node.structure?.structuralMorphRef:!1)}))return!1;return!0}onDeepUndeclaredKey(U){return this.onUndeclaredKey({rule:U,deep:!0})}filter(U){return this.constrainIn("predicate",U)}divisibleBy(U){return this.constrain("divisor",U)}matching(U){return this.constrain("pattern",U)}atLeast(U){return this.constrain("min",U)}atMost(U){return this.constrain("max",U)}moreThan(U){return this.constrain("min",y1(U))}lessThan(U){return this.constrain("max",y1(U))}atLeastLength(U){return this.constrain("minLength",U)}atMostLength(U){return this.constrain("maxLength",U)}moreThanLength(U){return this.constrain("minLength",y1(U))}lessThanLength(U){return this.constrain("maxLength",y1(U))}exactlyLength(U){return this.constrain("exactLength",U)}atOrAfter(U){return this.constrain("after",U)}atOrBefore(U){return this.constrain("before",U)}laterThan(U){return this.constrain("after",y1(U))}earlierThan(U){return this.constrain("before",y1(U))}}var W5="Expected a non-empty brand name after #",jq=["draft-2020-12","draft-07"],_5=(U)=>`JSONSchema target '${U}' is not supported (must be ${jq.map((X)=>`"${X}"`).join(" or ")})`,Cq=(U)=>{if(!z0(jq,U))F(_5(U));return U},y1=(U)=>typeof U==="object"&&!(U instanceof Date)?{...U,exclusive:!0}:{rule:U,exclusive:!0},I2=(U,X)=>M(X,"root")?M(U,"root")?U.extends(X):X.allows(U):M(U,"root")?U.hasUnit(X):X===U,Sq=(U)=>{if(U.hasKind("morph"))return null;if(U.hasKind("intersection"))return U.inner.structure??(U.basis?.domain==="object"?U.$.bindReference(V.intrinsic.emptyStructure):null);if(U.isBasis()&&U.domain==="object")return U.$.bindReference(V.intrinsic.emptyStructure);return null},$5=(U)=>`Props cannot be extracted from a union. Use .distribute to extract props from each branch instead. Received:
163
- ${U}`,Eq=(U,X)=>`${U} operand must be an object (was ${X})`;var E0=(U,X)=>S(V6(U),(q,Z)=>[Z,X]);var L5=(U)=>typeof U==="string"?{reference:U}:U,bq=(U)=>U instanceof B?V.intrinsic.never.internal:U,z5=j({kind:"alias",hasAssociatedError:!1,collapsibleKey:"reference",keys:{reference:{serialize:(U)=>U.startsWith("$")?U:`$ark.${U}`},resolve:{}},normalize:L5,defaults:{description:(U)=>U.reference},intersections:{alias:(U,X,q)=>q.$.lazilyResolve(()=>bq(u(U.resolution,X.resolution,q)),`${U.reference}${q.pipe?"=>":"&"}${X.reference}`),...E0("alias",(U,X,q)=>{if(X.isUnknown())return U;if(X.isNever())return X;if(X.isBasis()&&!X.overlaps(V.intrinsic.object))return B.init("assignability",V.intrinsic.object,X);return q.$.lazilyResolve(()=>bq(u(U.resolution,X,q)),`${U.reference}${q.pipe?"=>":"&"}${X.id}`)})}});class fq extends V0{expression=this.reference;structure=void 0;get resolution(){let U=this._resolve();return Z0[this.id]=U}_resolve(){if(this.resolve)return this.resolve();if(this.reference[0]==="$")return this.$.resolveRoot(this.reference.slice(1));let U=this.reference,X=Z0[U],q=[];while(M(X,"context")){if(q.includes(X.id))return F(F5(X.id,q));q.push(X.id),X=Z0[X.id]}if(!M(X,"root"))return y(`Unexpected resolution for reference ${this.reference}
162
+ `})}}),this);return this.$.finalize(X)}pipe=Object.assign(this._pipe.bind(this),{try:this.tryPipe.bind(this)});to(U){return this.$.finalize(this.toNode(this.$.parseDefinition(U)))}toNode(U){let X=T2(this,U,this.$);if(X instanceof B)return X.throw();return X}rawPipeOnce(U){if(M(U,"root"))return this.toNode(U);return this.distribute((X)=>X.hasKind("morph")?this.$.node("morph",{in:X.inner.in,morphs:[...X.morphs,U]}):this.$.node("morph",{in:X,morphs:[U]}),this.$.parseSchema)}narrow(U){return this.constrainOut("predicate",U)}constrain(U,X){return this._constrain("root",U,X)}constrainIn(U,X){return this._constrain("in",U,X)}constrainOut(U,X){return this._constrain("out",U,X)}_constrain(U,X,q){let Z=this.$.node(X,q);if(Z.isRoot())return Z.isUnknown()?this:y(`Unexpected constraint node ${Z}`);let Q=U==="root"?this:U==="in"?this.rawIn:this.rawOut;if(Q.hasKind("morph")||Z.impliedBasis&&!Q.extends(Z.impliedBasis))return Yq(X,Z.impliedBasis,this);let G=this.$.node("intersection",{[Z.kind]:Z}),Y=U==="out"?T2(this,G,this.$):$0(this,G,this.$);if(Y instanceof B)Y.throw();return this.$.finalize(Y)}onUndeclaredKey(U){let X=typeof U==="string"?U:U.rule,q=typeof U==="string"?!1:U.deep;return this.$.finalize(this.transform((Z,Q)=>Z==="structure"?X==="ignore"?H6(Q,{undeclared:1}):{...Q,undeclared:X}:Q,q?void 0:{shouldTransform:(Z)=>!F0(N1,Z.kind)}))}hasEqualMorphs(U){if(!this.includesTransform&&!U.includesTransform)return!0;if(!y0(this.shallowMorphs,U.shallowMorphs))return!1;if(!y0(this.flatMorphs,U.flatMorphs,{isEqual:(X,q)=>X.propString===q.propString&&(X.node.hasKind("morph")&&q.node.hasKind("morph")?X.node.hasEqualMorphs(q.node):X.node.hasKind("intersection")&&q.node.hasKind("intersection")?X.node.structure?.structuralMorphRef===q.node.structure?.structuralMorphRef:!1)}))return!1;return!0}onDeepUndeclaredKey(U){return this.onUndeclaredKey({rule:U,deep:!0})}filter(U){return this.constrainIn("predicate",U)}divisibleBy(U){return this.constrain("divisor",U)}matching(U){return this.constrain("pattern",U)}atLeast(U){return this.constrain("min",U)}atMost(U){return this.constrain("max",U)}moreThan(U){return this.constrain("min",k1(U))}lessThan(U){return this.constrain("max",k1(U))}atLeastLength(U){return this.constrain("minLength",U)}atMostLength(U){return this.constrain("maxLength",U)}moreThanLength(U){return this.constrain("minLength",k1(U))}lessThanLength(U){return this.constrain("maxLength",k1(U))}exactlyLength(U){return this.constrain("exactLength",U)}atOrAfter(U){return this.constrain("after",U)}atOrBefore(U){return this.constrain("before",U)}laterThan(U){return this.constrain("after",k1(U))}earlierThan(U){return this.constrain("before",k1(U))}}var W5="Expected a non-empty brand name after #",Eq=["draft-2020-12","draft-07"],_5=(U)=>`JSONSchema target '${U}' is not supported (must be ${Eq.map((X)=>`"${X}"`).join(" or ")})`,Nq=(U)=>{if(!F0(Eq,U))F(_5(U));return U},k1=(U)=>typeof U==="object"&&!(U instanceof Date)?{...U,exclusive:!0}:{rule:U,exclusive:!0},I2=(U,X)=>M(X,"root")?M(U,"root")?U.extends(X):X.allows(U):M(U,"root")?U.hasUnit(X):X===U,Cq=(U)=>{if(U.hasKind("morph"))return null;if(U.hasKind("intersection"))return U.inner.structure??(U.basis?.domain==="object"?U.$.bindReference(O.intrinsic.emptyStructure):null);if(U.isBasis()&&U.domain==="object")return U.$.bindReference(O.intrinsic.emptyStructure);return null},$5=(U)=>`Props cannot be extracted from a union. Use .distribute to extract props from each branch instead. Received:
163
+ ${U}`,Sq=(U,X)=>`${U} operand must be an object (was ${X})`;var E0=(U,X)=>S(O6(U),(q,Z)=>[Z,X]);var L5=(U)=>typeof U==="string"?{reference:U}:U,jq=(U)=>U instanceof B?O.intrinsic.never.internal:U,z5=j({kind:"alias",hasAssociatedError:!1,collapsibleKey:"reference",keys:{reference:{serialize:(U)=>U.startsWith("$")?U:`$ark.${U}`},resolve:{}},normalize:L5,defaults:{description:(U)=>U.reference},intersections:{alias:(U,X,q)=>q.$.lazilyResolve(()=>jq(u(U.resolution,X.resolution,q)),`${U.reference}${q.pipe?"=>":"&"}${X.reference}`),...E0("alias",(U,X,q)=>{if(X.isUnknown())return U;if(X.isNever())return X;if(X.isBasis()&&!X.overlaps(O.intrinsic.object))return B.init("assignability",O.intrinsic.object,X);return q.$.lazilyResolve(()=>jq(u(U.resolution,X,q)),`${U.reference}${q.pipe?"=>":"&"}${X.id}`)})}});class bq extends V0{expression=this.reference;structure=void 0;get resolution(){let U=this._resolve();return Q0[this.id]=U}_resolve(){if(this.resolve)return this.resolve();if(this.reference[0]==="$")return this.$.resolveRoot(this.reference.slice(1));let U=this.reference,X=Q0[U],q=[];while(M(X,"context")){if(q.includes(X.id))return F(F5(X.id,q));q.push(X.id),X=Q0[X.id]}if(!M(X,"root"))return y(`Unexpected resolution for reference ${this.reference}
164
164
  Seen: [${q.join("->")}]
165
- Resolution: ${E(X)}`);return X}get resolutionId(){if(this.reference.includes("&")||this.reference.includes("=>"))return this.resolution.id;if(this.reference[0]!=="$")return this.reference;let U=this.reference.slice(1),X=this.$.resolutions[U];if(typeof X==="string")return X;if(M(X,"root"))return X.id;return y(`Unexpected resolution for reference ${this.reference}: ${E(X)}`)}get defaultShortDescription(){return G0.object}innerToJsonSchema(U){return this.resolution.toJsonSchemaRecurse(U)}traverseAllows=(U,X)=>{let q=X.seen[this.reference];if(q?.includes(U))return!0;return X.seen[this.reference]=g(q,U),this.resolution.traverseAllows(U,X)};traverseApply=(U,X)=>{let q=X.seen[this.reference];if(q?.includes(U))return;X.seen[this.reference]=g(q,U),this.resolution.traverseApply(U,X)};compile(U){let X=this.resolutionId;U.if(`ctx.seen.${X} && ctx.seen.${X}.includes(data)`,()=>U.return(!0)),U.if(`!ctx.seen.${X}`,()=>U.line(`ctx.seen.${X} = []`)),U.line(`ctx.seen.${X}.push(data)`),U.return(U.invoke(X))}}var F5=(U,X)=>`Alias '${U}' has a shallow resolution cycle: ${[...X,U].join("->")}`,K2={implementation:z5,Node:fq};class L1 extends V0{traverseApply=(U,X)=>{if(!this.traverseAllows(U,X))X.errorFromNodeContext(this.errorContext)};get errorContext(){return{code:this.kind,description:this.description,meta:this.meta,...this.inner}}get compiledErrorContext(){return s0(this.errorContext)}compile(U){if(U.traversalKind==="Allows")U.return(this.compiledCondition);else U.if(this.compiledNegation,()=>U.line(`ctx.errorFromNodeContext(${this.compiledErrorContext})`))}}var A5=j({kind:"domain",hasAssociatedError:!0,collapsibleKey:"domain",keys:{domain:{},numberAllowsNaN:{}},normalize:(U)=>typeof U==="string"?{domain:U}:w1(U,"numberAllowsNaN")&&U.domain!=="number"?F(P6.writeBadAllowNanMessage(U.domain)):U,applyConfig:(U,X)=>U.numberAllowsNaN===void 0&&U.domain==="number"&&X.numberAllowsNaN?{...U,numberAllowsNaN:!0}:U,defaults:{description:(U)=>G0[U.domain],actual:(U)=>Number.isNaN(U)?"NaN":G0[r(U)]},intersections:{domain:(U,X)=>U.domain==="number"&&X.domain==="number"?U.numberAllowsNaN?X:U:B.init("domain",U,X)}});class gq extends L1{requiresNaNCheck=this.domain==="number"&&!this.numberAllowsNaN;traverseAllows=this.requiresNaNCheck?(U)=>typeof U==="number"&&!Number.isNaN(U):(U)=>r(U)===this.domain;compiledCondition=this.domain==="object"?'((typeof data === "object" && data !== null) || typeof data === "function")':`typeof data === "${this.domain}"${this.requiresNaNCheck?" && !Number.isNaN(data)":""}`;compiledNegation=this.domain==="object"?'((typeof data !== "object" || data === null) && typeof data !== "function")':`typeof data !== "${this.domain}"${this.requiresNaNCheck?" || Number.isNaN(data)":""}`;expression=this.numberAllowsNaN?"number | NaN":this.domain;get nestableExpression(){return this.numberAllowsNaN?`(${this.expression})`:this.expression}get defaultShortDescription(){return G0[this.domain]}innerToJsonSchema(U){if(this.domain==="bigint"||this.domain==="symbol")return U.fallback.domain({code:"domain",base:{},domain:this.domain});return{type:this.domain}}}var P6={implementation:A5,Node:gq,writeBadAllowNanMessage:(U)=>`numberAllowsNaN may only be specified with domain "number" (was ${U})`};var V5=j({kind:"intersection",hasAssociatedError:!0,normalize:(U)=>{if(h(U))return U;let{structure:X,...q}=U,Z=!!X,Q=X??{},G=S(q,(Y,J)=>{if(a(Y,tX)){if(Z)F(`Flattened structure key ${Y} cannot be specified alongside a root 'structure' key.`);return Q[Y]=J,[]}return[Y,J]});if(M(Q,"constraint")||!S0(Q))G.structure=Q;return G},finalizeInnerJson:({structure:U,...X})=>Q0(U,"object")?{...U,...X}:X,keys:{domain:{child:!0,parse:(U,X)=>X.$.node("domain",U)},proto:{child:!0,parse:(U,X)=>X.$.node("proto",U)},structure:{child:!0,parse:(U,X)=>X.$.node("structure",U),serialize:(U)=>{if(!U.sequence?.minLength)return U.collapsibleJson;let{sequence:X,...q}=U.collapsibleJson,{minVariadicLength:Z,...Q}=X,G=Q.variadic&&Object.keys(Q).length===1?Q.variadic:Q;return{...q,sequence:G}}},divisor:{child:!0,parse:X0("divisor")},max:{child:!0,parse:X0("max")},min:{child:!0,parse:X0("min")},maxLength:{child:!0,parse:X0("maxLength")},minLength:{child:!0,parse:X0("minLength")},exactLength:{child:!0,parse:X0("exactLength")},before:{child:!0,parse:X0("before")},after:{child:!0,parse:X0("after")},pattern:{child:!0,parse:X0("pattern")},predicate:{child:!0,parse:X0("predicate")}},reduce:(U,X)=>yq({},U,{$:X,invert:!1,pipe:!1}),defaults:{description:(U)=>{if(U.children.length===0)return"unknown";if(U.structure)return U.structure.description;let X=[];if(U.basis&&!U.prestructurals.some((q)=>q.impl.obviatesBasisDescription))X.push(U.basis.description);if(U.prestructurals.length){let q=U.prestructurals.slice().sort((Z,Q)=>Z.kind==="min"&&Q.kind==="max"?-1:0).map((Z)=>Z.description);X.push(...q)}if(U.inner.predicate)X.push(...U.inner.predicate.map((q)=>q.description));return X.join(" and ")},expected:(U)=>` ◦ ${U.errors.map((X)=>X.expected).join(`
165
+ Resolution: ${E(X)}`);return X}get resolutionId(){if(this.reference.includes("&")||this.reference.includes("=>"))return this.resolution.id;if(this.reference[0]!=="$")return this.reference;let U=this.reference.slice(1),X=this.$.resolutions[U];if(typeof X==="string")return X;if(M(X,"root"))return X.id;return y(`Unexpected resolution for reference ${this.reference}: ${E(X)}`)}get defaultShortDescription(){return Y0.object}innerToJsonSchema(U){return this.resolution.toJsonSchemaRecurse(U)}traverseAllows=(U,X)=>{let q=X.seen[this.reference];if(q?.includes(U))return!0;return X.seen[this.reference]=g(q,U),this.resolution.traverseAllows(U,X)};traverseApply=(U,X)=>{let q=X.seen[this.reference];if(q?.includes(U))return;X.seen[this.reference]=g(q,U),this.resolution.traverseApply(U,X)};compile(U){let X=this.resolutionId;U.if(`ctx.seen.${X} && ctx.seen.${X}.includes(data)`,()=>U.return(!0)),U.if(`!ctx.seen.${X}`,()=>U.line(`ctx.seen.${X} = []`)),U.line(`ctx.seen.${X}.push(data)`),U.return(U.invoke(X))}}var F5=(U,X)=>`Alias '${U}' has a shallow resolution cycle: ${[...X,U].join("->")}`,K2={implementation:z5,Node:bq};class L1 extends V0{traverseApply=(U,X)=>{if(!this.traverseAllows(U,X))X.errorFromNodeContext(this.errorContext)};get errorContext(){return{code:this.kind,description:this.description,meta:this.meta,...this.inner}}get compiledErrorContext(){return s0(this.errorContext)}compile(U){if(U.traversalKind==="Allows")U.return(this.compiledCondition);else U.if(this.compiledNegation,()=>U.line(`ctx.errorFromNodeContext(${this.compiledErrorContext})`))}}var A5=j({kind:"domain",hasAssociatedError:!0,collapsibleKey:"domain",keys:{domain:{},numberAllowsNaN:{}},normalize:(U)=>typeof U==="string"?{domain:U}:I1(U,"numberAllowsNaN")&&U.domain!=="number"?F(P6.writeBadAllowNanMessage(U.domain)):U,applyConfig:(U,X)=>U.numberAllowsNaN===void 0&&U.domain==="number"&&X.numberAllowsNaN?{...U,numberAllowsNaN:!0}:U,defaults:{description:(U)=>Y0[U.domain],actual:(U)=>Number.isNaN(U)?"NaN":Y0[r(U)]},intersections:{domain:(U,X)=>U.domain==="number"&&X.domain==="number"?U.numberAllowsNaN?X:U:B.init("domain",U,X)}});class fq extends L1{requiresNaNCheck=this.domain==="number"&&!this.numberAllowsNaN;traverseAllows=this.requiresNaNCheck?(U)=>typeof U==="number"&&!Number.isNaN(U):(U)=>r(U)===this.domain;compiledCondition=this.domain==="object"?'((typeof data === "object" && data !== null) || typeof data === "function")':`typeof data === "${this.domain}"${this.requiresNaNCheck?" && !Number.isNaN(data)":""}`;compiledNegation=this.domain==="object"?'((typeof data !== "object" || data === null) && typeof data !== "function")':`typeof data !== "${this.domain}"${this.requiresNaNCheck?" || Number.isNaN(data)":""}`;expression=this.numberAllowsNaN?"number | NaN":this.domain;get nestableExpression(){return this.numberAllowsNaN?`(${this.expression})`:this.expression}get defaultShortDescription(){return Y0[this.domain]}innerToJsonSchema(U){if(this.domain==="bigint"||this.domain==="symbol")return U.fallback.domain({code:"domain",base:{},domain:this.domain});return{type:this.domain}}}var P6={implementation:A5,Node:fq,writeBadAllowNanMessage:(U)=>`numberAllowsNaN may only be specified with domain "number" (was ${U})`};var O5=j({kind:"intersection",hasAssociatedError:!0,normalize:(U)=>{if(x(U))return U;let{structure:X,...q}=U,Z=!!X,Q=X??{},G=S(q,(Y,J)=>{if(a(Y,nX)){if(Z)F(`Flattened structure key ${Y} cannot be specified alongside a root 'structure' key.`);return Q[Y]=J,[]}return[Y,J]});if(M(Q,"constraint")||!S0(Q))G.structure=Q;return G},finalizeInnerJson:({structure:U,...X})=>G0(U,"object")?{...U,...X}:X,keys:{domain:{child:!0,parse:(U,X)=>X.$.node("domain",U)},proto:{child:!0,parse:(U,X)=>X.$.node("proto",U)},structure:{child:!0,parse:(U,X)=>X.$.node("structure",U),serialize:(U)=>{if(!U.sequence?.minLength)return U.collapsibleJson;let{sequence:X,...q}=U.collapsibleJson,{minVariadicLength:Z,...Q}=X,G=Q.variadic&&Object.keys(Q).length===1?Q.variadic:Q;return{...q,sequence:G}}},divisor:{child:!0,parse:q0("divisor")},max:{child:!0,parse:q0("max")},min:{child:!0,parse:q0("min")},maxLength:{child:!0,parse:q0("maxLength")},minLength:{child:!0,parse:q0("minLength")},exactLength:{child:!0,parse:q0("exactLength")},before:{child:!0,parse:q0("before")},after:{child:!0,parse:q0("after")},pattern:{child:!0,parse:q0("pattern")},predicate:{child:!0,parse:q0("predicate")}},reduce:(U,X)=>gq({},U,{$:X,invert:!1,pipe:!1}),defaults:{description:(U)=>{if(U.children.length===0)return"unknown";if(U.structure)return U.structure.description;let X=[];if(U.basis&&!U.prestructurals.some((q)=>q.impl.obviatesBasisDescription))X.push(U.basis.description);if(U.prestructurals.length){let q=U.prestructurals.slice().sort((Z,Q)=>Z.kind==="min"&&Q.kind==="max"?-1:0).map((Z)=>Z.description);X.push(...q)}if(U.inner.predicate)X.push(...U.inner.predicate.map((q)=>q.description));return X.join(" and ")},expected:(U)=>` ◦ ${U.errors.map((X)=>X.expected).join(`
166
166
  ◦ `)}`,problem:(U)=>`(${U.actual}) must be...
167
- ${U.expected}`},intersections:{intersection:(U,X,q)=>yq(U.inner,X.inner,q),...E0("intersection",(U,X,q)=>{if(U.children.length===0)return X;let{domain:Z,proto:Q,...G}=U.inner,Y=Q??Z,J=Y?u(Y,X,q):X;return J instanceof B?J:U?.basis?.equals(J)?U:U.$.node("intersection",{...G,[J.kind]:J},{prereduced:!0})})}});class kq extends V0{basis=this.inner.domain??this.inner.proto??null;prestructurals=[];refinements=this.children.filter((U)=>{if(!U.isRefinement())return!1;if(z0(iU,U.kind))this.prestructurals.push(U);return!0});structure=this.inner.structure;expression=O5(this);get shallowMorphs(){return this.inner.structure?.structuralMorph?[this.inner.structure.structuralMorph]:[]}get defaultShortDescription(){return this.basis?.defaultShortDescription??"present"}innerToJsonSchema(U){return this.children.reduce((X,q)=>q.isBasis()?q.toJsonSchemaRecurse(U):q.reduceJsonSchema(X,U),{})}traverseAllows=(U,X)=>this.children.every((q)=>q.traverseAllows(U,X));traverseApply=(U,X)=>{let q=X.currentErrorCount;if(this.basis){if(this.basis.traverseApply(U,X),X.currentErrorCount>q)return}if(this.prestructurals.length){for(let Z=0;Z<this.prestructurals.length-1;Z++)if(this.prestructurals[Z].traverseApply(U,X),X.failFast&&X.currentErrorCount>q)return;if(this.prestructurals[this.prestructurals.length-1].traverseApply(U,X),X.currentErrorCount>q)return}if(this.structure){if(this.structure.traverseApply(U,X),X.currentErrorCount>q)return}if(this.inner.predicate){for(let Z=0;Z<this.inner.predicate.length-1;Z++)if(this.inner.predicate[Z].traverseApply(U,X),X.failFast&&X.currentErrorCount>q)return;this.inner.predicate[this.inner.predicate.length-1].traverseApply(U,X)}};compile(U){if(U.traversalKind==="Allows"){for(let X of this.children)U.check(X);U.return(!0);return}if(U.initializeErrorCount(),this.basis){if(U.check(this.basis),this.children.length>1)U.returnIfFail()}if(this.prestructurals.length){for(let X=0;X<this.prestructurals.length-1;X++)U.check(this.prestructurals[X]),U.returnIfFailFast();if(U.check(this.prestructurals[this.prestructurals.length-1]),this.structure||this.inner.predicate)U.returnIfFail()}if(this.structure){if(U.check(this.structure),this.inner.predicate)U.returnIfFail()}if(this.inner.predicate){for(let X=0;X<this.inner.predicate.length-1;X++)U.check(this.inner.predicate[X]),U.returnIfFail();U.check(this.inner.predicate[this.inner.predicate.length-1])}}}var A4={implementation:V5,Node:kq},O5=(U)=>{if(U.structure?.expression)return U.structure.expression;let X=U.basis&&!U.prestructurals.some((Q)=>Q.impl.obviatesBasisExpression)?U.basis.nestableExpression:"",q=U.prestructurals.map((Q)=>Q.expression).join(" & "),Z=`${X}${X?" ":""}${q}`;if(Z==="Array == 0")return"[]";return Z||"unknown"},yq=(U,X,q)=>{let Z={},Q=U.proto??U.domain,G=X.proto??X.domain,Y=Q?G?u(Q,G,q):Q:G;if(Y instanceof B)return Y;if(Y)Z[Y.kind]=Y;return j1({kind:"intersection",baseInner:Z,l:b1(U),r:b1(X),roots:[],ctx:q})};var B5=j({kind:"morph",hasAssociatedError:!1,keys:{in:{child:!0,parse:(U,X)=>X.$.parseSchema(U)},morphs:{parse:l0,serialize:(U)=>U.map((X)=>M(X,"root")?X.json:d(X))},declaredIn:{child:!1,serialize:(U)=>U.json},declaredOut:{child:!1,serialize:(U)=>U.json}},normalize:(U)=>U,defaults:{description:(U)=>`a morph from ${U.rawIn.description} to ${U.rawOut?.description??"unknown"}`},intersections:{morph:(U,X,q)=>{if(!U.hasEqualMorphs(X))return F(T5(U.expression,X.expression));let Z=u(U.rawIn,X.rawIn,q);if(Z instanceof B)return Z;let Q={morphs:U.morphs};if(U.declaredIn||X.declaredIn){let G=u(U.rawIn,X.rawIn,q);if(G instanceof B)return G.throw();else Q.declaredIn=G}if(U.declaredOut||X.declaredOut){let G=u(U.rawOut,X.rawOut,q);if(G instanceof B)return G.throw();else Q.declaredOut=G}return Z.distribute((G)=>q.$.node("morph",{...Q,in:G}),q.$.parseSchema)},...E0("morph",(U,X,q)=>{let Z=U.inner.in?u(U.inner.in,X,q):X;return Z instanceof B?Z:Z.equals(U.inner.in)?U:q.$.node("morph",{...U.inner,in:Z})})}});class vq extends V0{serializedMorphs=this.morphs.map(d);compiledMorphs=`[${this.serializedMorphs}]`;lastMorph=this.inner.morphs[this.inner.morphs.length-1];lastMorphIfNode=M(this.lastMorph,"root")?this.lastMorph:void 0;introspectableIn=this.inner.in;introspectableOut=this.lastMorphIfNode?Object.assign(this.referencesById,this.lastMorphIfNode.referencesById)&&this.lastMorphIfNode.rawOut:void 0;get shallowMorphs(){return Array.isArray(this.inner.in?.shallowMorphs)?[...this.inner.in.shallowMorphs,...this.morphs]:this.morphs}get rawIn(){return this.declaredIn??this.inner.in?.rawIn??V.intrinsic.unknown.internal}get rawOut(){return this.declaredOut??this.introspectableOut??V.intrinsic.unknown.internal}declareIn(U){return this.$.node("morph",{...this.inner,declaredIn:U})}declareOut(U){return this.$.node("morph",{...this.inner,declaredOut:U})}expression=`(In: ${this.rawIn.expression}) => ${this.lastMorphIfNode?"To":"Out"}<${this.rawOut.expression}>`;get defaultShortDescription(){return this.rawIn.meta.description??this.rawIn.defaultShortDescription}innerToJsonSchema(U){return U.fallback.morph({code:"morph",base:this.rawIn.toJsonSchemaRecurse(U),out:this.introspectableOut?.toJsonSchemaRecurse(U)??null})}compile(U){if(U.traversalKind==="Allows"){if(!this.introspectableIn)return;U.return(U.invoke(this.introspectableIn));return}if(this.introspectableIn)U.line(U.invoke(this.introspectableIn));U.line(`ctx.queueMorphs(${this.compiledMorphs})`)}traverseAllows=(U,X)=>!this.introspectableIn||this.introspectableIn.traverseAllows(U,X);traverseApply=(U,X)=>{if(this.introspectableIn)this.introspectableIn.traverseApply(U,X);X.queueMorphs(this.morphs)};hasEqualMorphs(U){return y0(this.morphs,U.morphs,{isEqual:(X,q)=>X===q||M(X,"root")&&M(q,"root")&&X.equals(q)})}}var V4={implementation:B5,Node:vq},T5=(U,X)=>`The intersection of distinct morphs at a single path is indeterminate:
167
+ ${U.expected}`},intersections:{intersection:(U,X,q)=>gq(U.inner,X.inner,q),...E0("intersection",(U,X,q)=>{if(U.children.length===0)return X;let{domain:Z,proto:Q,...G}=U.inner,Y=Q??Z,J=Y?u(Y,X,q):X;return J instanceof B?J:U?.basis?.equals(J)?U:U.$.node("intersection",{...G,[J.kind]:J},{prereduced:!0})})}});class yq extends V0{basis=this.inner.domain??this.inner.proto??null;prestructurals=[];refinements=this.children.filter((U)=>{if(!U.isRefinement())return!1;if(F0(cU,U.kind))this.prestructurals.push(U);return!0});structure=this.inner.structure;expression=V5(this);get shallowMorphs(){return this.inner.structure?.structuralMorph?[this.inner.structure.structuralMorph]:[]}get defaultShortDescription(){return this.basis?.defaultShortDescription??"present"}innerToJsonSchema(U){return this.children.reduce((X,q)=>q.isBasis()?q.toJsonSchemaRecurse(U):q.reduceJsonSchema(X,U),{})}traverseAllows=(U,X)=>this.children.every((q)=>q.traverseAllows(U,X));traverseApply=(U,X)=>{let q=X.currentErrorCount;if(this.basis){if(this.basis.traverseApply(U,X),X.currentErrorCount>q)return}if(this.prestructurals.length){for(let Z=0;Z<this.prestructurals.length-1;Z++)if(this.prestructurals[Z].traverseApply(U,X),X.failFast&&X.currentErrorCount>q)return;if(this.prestructurals[this.prestructurals.length-1].traverseApply(U,X),X.currentErrorCount>q)return}if(this.structure){if(this.structure.traverseApply(U,X),X.currentErrorCount>q)return}if(this.inner.predicate){for(let Z=0;Z<this.inner.predicate.length-1;Z++)if(this.inner.predicate[Z].traverseApply(U,X),X.failFast&&X.currentErrorCount>q)return;this.inner.predicate[this.inner.predicate.length-1].traverseApply(U,X)}};compile(U){if(U.traversalKind==="Allows"){for(let X of this.children)U.check(X);U.return(!0);return}if(U.initializeErrorCount(),this.basis){if(U.check(this.basis),this.children.length>1)U.returnIfFail()}if(this.prestructurals.length){for(let X=0;X<this.prestructurals.length-1;X++)U.check(this.prestructurals[X]),U.returnIfFailFast();if(U.check(this.prestructurals[this.prestructurals.length-1]),this.structure||this.inner.predicate)U.returnIfFail()}if(this.structure){if(U.check(this.structure),this.inner.predicate)U.returnIfFail()}if(this.inner.predicate){for(let X=0;X<this.inner.predicate.length-1;X++)U.check(this.inner.predicate[X]),U.returnIfFail();U.check(this.inner.predicate[this.inner.predicate.length-1])}}}var F4={implementation:O5,Node:yq},V5=(U)=>{if(U.structure?.expression)return U.structure.expression;let X=U.basis&&!U.prestructurals.some((Q)=>Q.impl.obviatesBasisExpression)?U.basis.nestableExpression:"",q=U.prestructurals.map((Q)=>Q.expression).join(" & "),Z=`${X}${X?" ":""}${q}`;if(Z==="Array == 0")return"[]";return Z||"unknown"},gq=(U,X,q)=>{let Z={},Q=U.proto??U.domain,G=X.proto??X.domain,Y=Q?G?u(Q,G,q):Q:G;if(Y instanceof B)return Y;if(Y)Z[Y.kind]=Y;return b1({kind:"intersection",baseInner:Z,l:f1(U),r:f1(X),roots:[],ctx:q})};var B5=j({kind:"morph",hasAssociatedError:!1,keys:{in:{child:!0,parse:(U,X)=>X.$.parseSchema(U)},morphs:{parse:l0,serialize:(U)=>U.map((X)=>M(X,"root")?X.json:d(X))},declaredIn:{child:!1,serialize:(U)=>U.json},declaredOut:{child:!1,serialize:(U)=>U.json}},normalize:(U)=>U,defaults:{description:(U)=>`a morph from ${U.rawIn.description} to ${U.rawOut?.description??"unknown"}`},intersections:{morph:(U,X,q)=>{if(!U.hasEqualMorphs(X))return F(T5(U.expression,X.expression));let Z=u(U.rawIn,X.rawIn,q);if(Z instanceof B)return Z;let Q={morphs:U.morphs};if(U.declaredIn||X.declaredIn){let G=u(U.rawIn,X.rawIn,q);if(G instanceof B)return G.throw();else Q.declaredIn=G}if(U.declaredOut||X.declaredOut){let G=u(U.rawOut,X.rawOut,q);if(G instanceof B)return G.throw();else Q.declaredOut=G}return Z.distribute((G)=>q.$.node("morph",{...Q,in:G}),q.$.parseSchema)},...E0("morph",(U,X,q)=>{let Z=U.inner.in?u(U.inner.in,X,q):X;return Z instanceof B?Z:Z.equals(U.inner.in)?U:q.$.node("morph",{...U.inner,in:Z})})}});class kq extends V0{serializedMorphs=this.morphs.map(d);compiledMorphs=`[${this.serializedMorphs}]`;lastMorph=this.inner.morphs[this.inner.morphs.length-1];lastMorphIfNode=M(this.lastMorph,"root")?this.lastMorph:void 0;introspectableIn=this.inner.in;introspectableOut=this.lastMorphIfNode?Object.assign(this.referencesById,this.lastMorphIfNode.referencesById)&&this.lastMorphIfNode.rawOut:void 0;get shallowMorphs(){return Array.isArray(this.inner.in?.shallowMorphs)?[...this.inner.in.shallowMorphs,...this.morphs]:this.morphs}get rawIn(){return this.declaredIn??this.inner.in?.rawIn??O.intrinsic.unknown.internal}get rawOut(){return this.declaredOut??this.introspectableOut??O.intrinsic.unknown.internal}declareIn(U){return this.$.node("morph",{...this.inner,declaredIn:U})}declareOut(U){return this.$.node("morph",{...this.inner,declaredOut:U})}expression=`(In: ${this.rawIn.expression}) => ${this.lastMorphIfNode?"To":"Out"}<${this.rawOut.expression}>`;get defaultShortDescription(){return this.rawIn.meta.description??this.rawIn.defaultShortDescription}innerToJsonSchema(U){return U.fallback.morph({code:"morph",base:this.rawIn.toJsonSchemaRecurse(U),out:this.introspectableOut?.toJsonSchemaRecurse(U)??null})}compile(U){if(U.traversalKind==="Allows"){if(!this.introspectableIn)return;U.return(U.invoke(this.introspectableIn));return}if(this.introspectableIn)U.line(U.invoke(this.introspectableIn));U.line(`ctx.queueMorphs(${this.compiledMorphs})`)}traverseAllows=(U,X)=>!this.introspectableIn||this.introspectableIn.traverseAllows(U,X);traverseApply=(U,X)=>{if(this.introspectableIn)this.introspectableIn.traverseApply(U,X);X.queueMorphs(this.morphs)};hasEqualMorphs(U){return y0(this.morphs,U.morphs,{isEqual:(X,q)=>X===q||M(X,"root")&&M(q,"root")&&X.equals(q)})}}var A4={implementation:B5,Node:kq},T5=(U,X)=>`The intersection of distinct morphs at a single path is indeterminate:
168
168
  Left: ${U}
169
- Right: ${X}`;var D5=j({kind:"proto",hasAssociatedError:!0,collapsibleKey:"proto",keys:{proto:{serialize:(U)=>H2(U)??F0(U)},dateAllowsInvalid:{}},normalize:(U)=>{let X=typeof U==="string"?{proto:H1[U]}:typeof U==="function"?h(U)?U:{proto:U}:typeof U.proto==="string"?{...U,proto:H1[U.proto]}:U;if(typeof X.proto!=="function")F(N2.writeInvalidSchemaMessage(X.proto));if(w1(X,"dateAllowsInvalid")&&X.proto!==Date)F(N2.writeBadInvalidDateMessage(X.proto));return X},applyConfig:(U,X)=>{if(U.dateAllowsInvalid===void 0&&U.proto===Date&&X.dateAllowsInvalid)return{...U,dateAllowsInvalid:!0};return U},defaults:{description:(U)=>U.builtinName?NX[U.builtinName]:`an instance of ${U.proto.name}`,actual:(U)=>U instanceof Date&&U.toString()==="Invalid Date"?"an invalid Date":J2(U)},intersections:{proto:(U,X)=>U.proto===Date&&X.proto===Date?U.dateAllowsInvalid?X:U:hU(U.proto,X.proto)?U:hU(X.proto,U.proto)?X:B.init("proto",U,X),domain:(U,X)=>X.domain==="object"?U:B.init("domain",V.intrinsic.object.internal,X)}});class xq extends L1{builtinName=H2(this.proto);serializedConstructor=this.json.proto;requiresInvalidDateCheck=this.proto===Date&&!this.dateAllowsInvalid;traverseAllows=this.requiresInvalidDateCheck?(U)=>U instanceof Date&&U.toString()!=="Invalid Date":(U)=>U instanceof this.proto;compiledCondition=`data instanceof ${this.serializedConstructor}${this.requiresInvalidDateCheck?' && data.toString() !== "Invalid Date"':""}`;compiledNegation=`!(${this.compiledCondition})`;innerToJsonSchema(U){switch(this.builtinName){case"Array":return{type:"array"};case"Date":return U.fallback.date?.({code:"date",base:{}})??U.fallback.proto({code:"proto",base:{},proto:this.proto});default:return U.fallback.proto({code:"proto",base:{},proto:this.proto})}}expression=this.dateAllowsInvalid?"Date | InvalidDate":this.proto.name;get nestableExpression(){return this.dateAllowsInvalid?`(${this.expression})`:this.expression}domain="object";get defaultShortDescription(){return this.description}}var N2={implementation:D5,Node:xq,writeBadInvalidDateMessage:(U)=>`dateAllowsInvalid may only be specified with constructor Date (was ${U.name})`,writeInvalidSchemaMessage:(U)=>`instanceOf operand must be a function (was ${r(U)})`};var R5=j({kind:"union",hasAssociatedError:!0,collapsibleKey:"branches",keys:{ordered:{},branches:{child:!0,parse:(U,X)=>{let q=[];for(let Z of U){let Q=M(Z,"root")?Z.branches:X.$.parseSchema(Z).branches;for(let G of Q)if(G.hasKind("morph")){let Y=q.findIndex((J)=>J.hasKind("morph")&&J.hasEqualMorphs(G));if(Y===-1)q.push(G);else{let J=q[Y];q[Y]=X.$.node("morph",{...J.inner,in:J.rawIn.rawOr(G.rawIn)})}}else q.push(G)}if(!X.def.ordered)q.sort((Z,Q)=>Z.hash<Q.hash?-1:1);return q}}},normalize:(U)=>x(U)?{branches:U}:U,reduce:(U,X)=>{let q=j5(U);if(q.length===1)return q[0];if(q.length===U.branches.length)return;return X.node("union",{...U,branches:q},{prereduced:!0})},defaults:{description:(U)=>U.distribute((X)=>X.description,k1),expected:(U)=>{let X=TX(U.errors,"propString"),q=Object.entries(X).map(([Z,Q])=>{let G=[];for(let H of Q)C0(G,H.expected);let Y=k1(G),J=Q.every((H)=>H.actual===Q[0].actual)?Q[0].actual:E(Q[0].data);return`${Z&&`${Z} `}must be ${Y}${J&&` (was ${J})`}`});return k1(q)},problem:(U)=>U.expected,message:(U)=>{if(U.problem[0]==="[")return`value at ${U.problem}`;return U.problem}},intersections:{union:(U,X,q)=>{if(U.isNever!==X.isNever)return B.init("presence",U,X);let Z;if(U.ordered){if(X.ordered)F(f5(U.expression,X.expression));if(Z=O4(X.branches,U.branches,q),Z instanceof B)Z.invert()}else Z=O4(U.branches,X.branches,q);if(Z instanceof B)return Z;return q.$.parseSchema(U.ordered||X.ordered?{branches:Z,ordered:!0}:{branches:Z})},...E0("union",(U,X,q)=>{let Z=O4(U.branches,[X],q);if(Z instanceof B)return Z;if(Z.length===1)return Z[0];return q.$.parseSchema(U.ordered?{branches:Z,ordered:!0}:{branches:Z})})}});class mq extends V0{isBoolean=this.branches.length===2&&this.branches[0].hasUnit(!1)&&this.branches[1].hasUnit(!0);get branchGroups(){let U=[],X=-1;for(let q of this.branches){if(q.hasKind("unit")&&q.domain==="boolean"){if(X===-1)X=U.length,U.push(q);else U[X]=V.intrinsic.boolean;continue}U.push(q)}return U}unitBranches=this.branches.filter((U)=>U.rawIn.hasKind("unit"));discriminant=this.discriminate();discriminantJson=this.discriminant?C5(this.discriminant):null;expression=this.distribute((U)=>U.nestableExpression,E5);createBranchedOptimisticRootApply(){return(U,X)=>{let q=this.traverseOptimistic(U);if(q!==Y0)return q;let Z=new P0(U,this.$.resolvedConfig);return this.traverseApply(U,Z),Z.finalize(X)}}get shallowMorphs(){return this.branches.reduce((U,X)=>C0(U,X.shallowMorphs),[])}get defaultShortDescription(){return this.distribute((U)=>U.defaultShortDescription,k1)}innerToJsonSchema(U){if(this.branchGroups.length===1&&this.branchGroups[0].equals(V.intrinsic.boolean))return{type:"boolean"};let X=this.branchGroups.map((q)=>q.toJsonSchemaRecurse(U));if(X.every((q)=>Object.keys(q).length===1&&w1(q,"const")))return{enum:X.map((q)=>q.const)};return{anyOf:X}}traverseAllows=(U,X)=>this.branches.some((q)=>q.traverseAllows(U,X));traverseApply=(U,X)=>{let q=[];for(let Z=0;Z<this.branches.length;Z++){if(X.pushBranch(),this.branches[Z].traverseApply(U,X),!X.hasError()){if(this.branches[Z].includesTransform)return X.queuedMorphs.push(...X.popBranch().queuedMorphs);return X.popBranch()}q.push(X.popBranch().error)}X.errorFromNodeContext({code:"union",errors:q,meta:this.meta})};traverseOptimistic=(U)=>{for(let X=0;X<this.branches.length;X++){let q=this.branches[X];if(q.traverseAllows(U)){if(q.contextFreeMorph)return q.contextFreeMorph(U);return U}}return Y0};compile(U){if(!this.discriminant||this.unitBranches.length===this.branches.length&&this.branches.length===2)return this.compileIndiscriminable(U);let X=this.discriminant.optionallyChainedPropString;if(this.discriminant.kind==="domain")X=`typeof ${X} === "object" ? ${X} === null ? "null" : "object" : typeof ${X} === "function" ? "object" : typeof ${X}`;let q=this.discriminant.cases,Z=Object.keys(q),{optimistic:Q}=U;if(U.optimistic=!1,U.block(`switch(${X})`,()=>{for(let W in q){let $=q[W],_=W==="default"?W:`case ${W}`,L;if($===!0)L=Q?"data":"true";else if(Q)if($.rootApplyStrategy==="branchedOptimistic")L=U.invoke($,{kind:"Optimistic"});else if($.contextFreeMorph)L=`${U.invoke($)} ? ${d($.contextFreeMorph)}(data) : "${Y0}"`;else L=`${U.invoke($)} ? data : "${Y0}"`;else L=U.invoke($);U.line(`${_}: return ${L}`)}return U}),U.traversalKind==="Allows"){U.return(Q?`"${Y0}"`:!1);return}let G=k1(this.discriminant.kind==="domain"?Z.map((W)=>{let $=W.slice(1,-1);return $==="function"?G0.object:G0[$]}):Z),Y=this.discriminant.path.map((W)=>typeof W==="symbol"?d(W):JSON.stringify(W)),J=JSON.stringify(G),H=this.discriminant.kind==="domain"?`${K5}[${X}]`:`${N5}(${X})`;U.line(`ctx.errorFromNodeContext({
169
+ Right: ${X}`;var R5=j({kind:"proto",hasAssociatedError:!0,collapsibleKey:"proto",keys:{proto:{serialize:(U)=>H2(U)??A0(U)},dateAllowsInvalid:{}},normalize:(U)=>{let X=typeof U==="string"?{proto:H1[U]}:typeof U==="function"?x(U)?U:{proto:U}:typeof U.proto==="string"?{...U,proto:H1[U.proto]}:U;if(typeof X.proto!=="function")F(N2.writeInvalidSchemaMessage(X.proto));if(I1(X,"dateAllowsInvalid")&&X.proto!==Date)F(N2.writeBadInvalidDateMessage(X.proto));return X},applyConfig:(U,X)=>{if(U.dateAllowsInvalid===void 0&&U.proto===Date&&X.dateAllowsInvalid)return{...U,dateAllowsInvalid:!0};return U},defaults:{description:(U)=>U.builtinName?KX[U.builtinName]:`an instance of ${U.proto.name}`,actual:(U)=>U instanceof Date&&U.toString()==="Invalid Date"?"an invalid Date":J2(U)},intersections:{proto:(U,X)=>U.proto===Date&&X.proto===Date?U.dateAllowsInvalid?X:U:hU(U.proto,X.proto)?U:hU(X.proto,U.proto)?X:B.init("proto",U,X),domain:(U,X)=>X.domain==="object"?U:B.init("domain",O.intrinsic.object.internal,X)}});class vq extends L1{builtinName=H2(this.proto);serializedConstructor=this.json.proto;requiresInvalidDateCheck=this.proto===Date&&!this.dateAllowsInvalid;traverseAllows=this.requiresInvalidDateCheck?(U)=>U instanceof Date&&U.toString()!=="Invalid Date":(U)=>U instanceof this.proto;compiledCondition=`data instanceof ${this.serializedConstructor}${this.requiresInvalidDateCheck?' && data.toString() !== "Invalid Date"':""}`;compiledNegation=`!(${this.compiledCondition})`;innerToJsonSchema(U){switch(this.builtinName){case"Array":return{type:"array"};case"Date":return U.fallback.date?.({code:"date",base:{}})??U.fallback.proto({code:"proto",base:{},proto:this.proto});default:return U.fallback.proto({code:"proto",base:{},proto:this.proto})}}expression=this.dateAllowsInvalid?"Date | InvalidDate":this.proto.name;get nestableExpression(){return this.dateAllowsInvalid?`(${this.expression})`:this.expression}domain="object";get defaultShortDescription(){return this.description}}var N2={implementation:R5,Node:vq,writeBadInvalidDateMessage:(U)=>`dateAllowsInvalid may only be specified with constructor Date (was ${U.name})`,writeInvalidSchemaMessage:(U)=>`instanceOf operand must be a function (was ${r(U)})`};var D5=j({kind:"union",hasAssociatedError:!0,collapsibleKey:"branches",keys:{ordered:{},branches:{child:!0,parse:(U,X)=>{let q=[];for(let Z of U){let Q=M(Z,"root")?Z.branches:X.$.parseSchema(Z).branches;for(let G of Q)if(G.hasKind("morph")){let Y=q.findIndex((J)=>J.hasKind("morph")&&J.hasEqualMorphs(G));if(Y===-1)q.push(G);else{let J=q[Y];q[Y]=X.$.node("morph",{...J.inner,in:J.rawIn.rawOr(G.rawIn)})}}else q.push(G)}if(!X.def.ordered)q.sort((Z,Q)=>Z.hash<Q.hash?-1:1);return q}}},normalize:(U)=>h(U)?{branches:U}:U,reduce:(U,X)=>{let q=j5(U);if(q.length===1)return q[0];if(q.length===U.branches.length)return;return X.node("union",{...U,branches:q},{prereduced:!0})},defaults:{description:(U)=>U.distribute((X)=>X.description,v1),expected:(U)=>{let X=BX(U.errors,"propString"),q=Object.entries(X).map(([Z,Q])=>{let G=[];for(let H of Q)C0(G,H.expected);let Y=v1(G),J=Q.every((H)=>H.actual===Q[0].actual)?Q[0].actual:E(Q[0].data);return`${Z&&`${Z} `}must be ${Y}${J&&` (was ${J})`}`});return v1(q)},problem:(U)=>U.expected,message:(U)=>{if(U.problem[0]==="[")return`value at ${U.problem}`;return U.problem}},intersections:{union:(U,X,q)=>{if(U.isNever!==X.isNever)return B.init("presence",U,X);let Z;if(U.ordered){if(X.ordered)F(f5(U.expression,X.expression));if(Z=O4(X.branches,U.branches,q),Z instanceof B)Z.invert()}else Z=O4(U.branches,X.branches,q);if(Z instanceof B)return Z;return q.$.parseSchema(U.ordered||X.ordered?{branches:Z,ordered:!0}:{branches:Z})},...E0("union",(U,X,q)=>{let Z=O4(U.branches,[X],q);if(Z instanceof B)return Z;if(Z.length===1)return Z[0];return q.$.parseSchema(U.ordered?{branches:Z,ordered:!0}:{branches:Z})})}});class uq extends V0{isBoolean=this.branches.length===2&&this.branches[0].hasUnit(!1)&&this.branches[1].hasUnit(!0);get branchGroups(){let U=[],X=-1;for(let q of this.branches){if(q.hasKind("unit")&&q.domain==="boolean"){if(X===-1)X=U.length,U.push(q);else U[X]=O.intrinsic.boolean;continue}U.push(q)}return U}unitBranches=this.branches.filter((U)=>U.rawIn.hasKind("unit"));discriminant=this.discriminate();discriminantJson=this.discriminant?C5(this.discriminant):null;expression=this.distribute((U)=>U.nestableExpression,E5);createBranchedOptimisticRootApply(){return(U,X)=>{let q=this.traverseOptimistic(U);if(q!==J0)return q;let Z=new P0(U,this.$.resolvedConfig);return this.traverseApply(U,Z),Z.finalize(X)}}get shallowMorphs(){return this.branches.reduce((U,X)=>C0(U,X.shallowMorphs),[])}get defaultShortDescription(){return this.distribute((U)=>U.defaultShortDescription,v1)}innerToJsonSchema(U){if(this.branchGroups.length===1&&this.branchGroups[0].equals(O.intrinsic.boolean))return{type:"boolean"};let X=this.branchGroups.map((q)=>q.toJsonSchemaRecurse(U));if(X.every((q)=>Object.keys(q).length===1&&I1(q,"const")))return{enum:X.map((q)=>q.const)};return{anyOf:X}}traverseAllows=(U,X)=>this.branches.some((q)=>q.traverseAllows(U,X));traverseApply=(U,X)=>{let q=[];for(let Z=0;Z<this.branches.length;Z++){if(X.pushBranch(),this.branches[Z].traverseApply(U,X),!X.hasError()){if(this.branches[Z].includesTransform)return X.queuedMorphs.push(...X.popBranch().queuedMorphs);return X.popBranch()}q.push(X.popBranch().error)}X.errorFromNodeContext({code:"union",errors:q,meta:this.meta})};traverseOptimistic=(U)=>{for(let X=0;X<this.branches.length;X++){let q=this.branches[X];if(q.traverseAllows(U)){if(q.contextFreeMorph)return q.contextFreeMorph(U);return U}}return J0};compile(U){if(!this.discriminant||this.unitBranches.length===this.branches.length&&this.branches.length===2)return this.compileIndiscriminable(U);let X=this.discriminant.optionallyChainedPropString;if(this.discriminant.kind==="domain")X=`typeof ${X} === "object" ? ${X} === null ? "null" : "object" : typeof ${X} === "function" ? "object" : typeof ${X}`;let q=this.discriminant.cases,Z=Object.keys(q),{optimistic:Q}=U;if(U.optimistic=!1,U.block(`switch(${X})`,()=>{for(let W in q){let $=q[W],_=W==="default"?W:`case ${W}`,L;if($===!0)L=Q?"data":"true";else if(Q)if($.rootApplyStrategy==="branchedOptimistic")L=U.invoke($,{kind:"Optimistic"});else if($.contextFreeMorph)L=`${U.invoke($)} ? ${d($.contextFreeMorph)}(data) : "${J0}"`;else L=`${U.invoke($)} ? data : "${J0}"`;else L=U.invoke($);U.line(`${_}: return ${L}`)}return U}),U.traversalKind==="Allows"){U.return(Q?`"${J0}"`:!1);return}let G=v1(this.discriminant.kind==="domain"?Z.map((W)=>{let $=W.slice(1,-1);return $==="function"?Y0.object:Y0[$]}):Z),Y=this.discriminant.path.map((W)=>typeof W==="symbol"?d(W):JSON.stringify(W)),J=JSON.stringify(G),H=this.discriminant.kind==="domain"?`${K5}[${X}]`:`${N5}(${X})`;U.line(`ctx.errorFromNodeContext({
170
170
  code: "predicate",
171
171
  expected: ${J},
172
172
  actual: ${H},
173
173
  relativePath: [${Y}],
174
174
  meta: ${this.compiledMeta}
175
- })`)}compileIndiscriminable(U){if(U.traversalKind==="Apply"){U.const("errors","[]");for(let X of this.branches)U.line("ctx.pushBranch()").line(U.invoke(X)).if("!ctx.hasError()",()=>U.return(X.includesTransform?"ctx.queuedMorphs.push(...ctx.popBranch().queuedMorphs)":"ctx.popBranch()")).line("errors.push(ctx.popBranch().error)");U.line(`ctx.errorFromNodeContext({ code: "union", errors, meta: ${this.compiledMeta} })`)}else{let{optimistic:X}=U;U.optimistic=!1;for(let q of this.branches)U.if(`${U.invoke(q)}`,()=>U.return(X?q.contextFreeMorph?`${d(q.contextFreeMorph)}(data)`:"data":!0));U.return(X?`"${Y0}"`:!1)}}get nestableExpression(){return this.isBoolean?"boolean":`(${this.expression})`}discriminate(){if(this.branches.length<2||this.isCyclic)return null;if(this.unitBranches.length===this.branches.length){let Q=S(this.unitBranches,(G,Y)=>[`${Y.rawIn.serializedValue}`,Y.hasKind("morph")?Y:!0]);return{kind:"unit",path:[],optionallyChainedPropString:"data",cases:Q}}let U=[];for(let Q=0;Q<this.branches.length-1;Q++){let G=this.branches[Q];for(let Y=Q+1;Y<this.branches.length;Y++){let J=this.branches[Y],H=_0(G.rawIn,J.rawIn,G.$);if(!(H instanceof B))continue;for(let W of H){if(!W.kind||W.optional)continue;let $,_;if(W.kind==="domain"){let{l:A,r:T}=W;$=`"${typeof A==="string"?A:A.domain}"`,_=`"${typeof T==="string"?T:T.domain}"`}else if(W.kind==="unit")$=W.l.serializedValue,_=W.r.serializedValue;else continue;let L=U.find((A)=>y0(A.path,W.path)&&A.kind===W.kind);if(!L)U.push({kind:W.kind,cases:{[$]:{branchIndices:[Q],condition:W.l},[_]:{branchIndices:[Y],condition:W.r}},path:W.path});else{if(L.cases[$])L.cases[$].branchIndices=C0(L.cases[$].branchIndices,Q);else L.cases[$]??={branchIndices:[Q],condition:W.l};if(L.cases[_])L.cases[_].branchIndices=C0(L.cases[_].branchIndices,Y);else L.cases[_]??={branchIndices:[Y],condition:W.r}}}}}let X=this.ordered?w5(U,this.branches):U;if(!X.length)return null;let q=M5(X,this),Z={};for(let Q in q.best.cases){let G=P5(q,Q);if(G===null){Z[Q]=!0;continue}if(G.length===this.branches.length)return null;if(this.ordered)G.sort((H,W)=>H.originalIndex-W.originalIndex);let Y=G.map((H)=>H.branch),J=Y.length===1?Y[0]:this.$.node("union",this.ordered?{branches:Y,ordered:!0}:Y);Object.assign(this.referencesById,J.referencesById),Z[Q]=J}if(q.defaultEntries.length){let Q=q.defaultEntries.map((G)=>G.branch);Z.default=this.$.node("union",this.ordered?{branches:Q,ordered:!0}:Q,{prereduced:!0}),Object.assign(this.referencesById,Z.default.referencesById)}return Object.assign(q.location,{cases:Z})}}var M5=(U,X)=>{let Z=U.sort((Y,J)=>Y.path.length===J.path.length?Object.keys(J.cases).length-Object.keys(Y.cases).length:Y.path.length-J.path.length)[0],Q={kind:Z.kind,path:Z.path,optionallyChainedPropString:pq(Z.path)},G=X.branches.map((Y,J)=>({originalIndex:J,branch:Y}));return{best:Z,location:Q,defaultEntries:G,node:X}},P5=(U,X)=>{let q=U.best.cases[X],Z=I5(q.condition,U.location.path,U.node.$),Q=[],G=[];for(let Y=0;Y<U.defaultEntries.length;Y++){let J=U.defaultEntries[Y];if(q.branchIndices.includes(J.originalIndex)){let H=hq(U.node.branches[J.originalIndex],U.location);if(H===null)Q=null;else Q?.push({originalIndex:J.originalIndex,branch:H})}else if(J.branch.hasKind("alias")&&Z.hasKind("domain")&&Z.domain==="object")Q?.push(J);else{if(J.branch.rawIn.overlaps(Z)){let H=hq(J.branch,U.location);Q?.push({originalIndex:J.originalIndex,branch:H})}G.push(J)}}return U.defaultEntries=G,Q},w5=(U,X)=>{return U.filter((Z)=>{let Q=Object.values(Z.cases).map((G)=>G.branchIndices);for(let G=0;G<Q.length-1;G++){let Y=Q[G];for(let J=G+1;J<Q.length;J++){let H=Q[J];for(let W of Y)for(let $ of H)if(W>$){if(X[W].overlaps(X[$]))return!1}}}return!0})},I5=(U,X,q)=>{let Z=U==="undefined"?q.node("unit",{unit:void 0}):U==="null"?q.node("unit",{unit:null}):U==="boolean"?q.units([!0,!1]):U;for(let Q=X.length-1;Q>=0;Q--){let G=X[Q];Z=q.node("intersection",typeof G==="number"?{proto:"Array",sequence:[...OX(G).map((Y)=>({})),Z]}:{domain:"object",required:[{key:G,value:Z}]})}return Z},pq=(U)=>U.reduce((X,q)=>X+cU(q,!0),"data"),K5=d(DX),N5=d(E),B4={implementation:R5,Node:mq},C5=(U)=>({kind:U.kind,path:U.path.map((X)=>typeof X==="string"?X:M0(X)),cases:S(U.cases,(X,q)=>[X,q===!0?q:q.hasKind("union")&&q.discriminantJson?q.discriminantJson:q.json])}),S5={delimiter:" | ",finalDelimiter:" | "},E5=(U)=>k1(U,S5),k1=(U,X)=>{let q=X?.delimiter??", ",Z=X?.finalDelimiter??" or ";if(U.length===0)return"never";if(U.length===1)return U[0];if(U.length===2&&U[0]==="false"&&U[1]==="true"||U[0]==="true"&&U[1]==="false")return"boolean";let Q={},G=U.filter((J)=>Q[J]?!1:Q[J]=!0),Y=G.pop();return`${G.join(q)}${G.length?Z:""}${Y}`},O4=(U,X,q)=>{let Z=X.map(()=>[]);for(let G=0;G<U.length;G++){let Y={};for(let J=0;J<X.length;J++){if(Z[J]===null)continue;if(U[G].equals(X[J])){Z[J]=null,Y={};break}let H=u(U[G],X[J],q);if(H instanceof B)continue;if(H.equals(U[G])){Z[J].push(U[G]),Y={};break}if(H.equals(X[J]))Z[J]=null;else Y[J]=H}for(let J in Y)Z[J][G]=Y[J]}let Q=Z.flatMap((G,Y)=>G?.flatMap((J)=>J.branches)??X[Y]);return Q.length===0?B.init("union",U,X):Q},j5=({branches:U,ordered:X})=>{if(U.length<2)return U;let q=U.map(()=>!0);for(let Z=0;Z<U.length;Z++)for(let Q=Z+1;Q<U.length&&q[Z]&&q[Q];Q++){if(U[Z].equals(U[Q])){q[Q]=!1;continue}let G=_0(U[Z].rawIn,U[Q].rawIn,U[0].$);if(G instanceof B)continue;if(!X)b5(U[Z],U[Q]);if(G.equals(U[Z].rawIn))q[Z]=!!X;else if(G.equals(U[Q].rawIn))q[Q]=!1}return U.filter((Z,Q)=>q[Q])},b5=(U,X)=>{if(!U.includesTransform&&!X.includesTransform)return;if(!y0(U.shallowMorphs,X.shallowMorphs))F(uq(U.expression,X.expression));if(!y0(U.flatMorphs,X.flatMorphs,{isEqual:(q,Z)=>q.propString===Z.propString&&(q.node.hasKind("morph")&&Z.node.hasKind("morph")?q.node.hasEqualMorphs(Z.node):q.node.hasKind("intersection")&&Z.node.hasKind("intersection")?q.node.structure?.structuralMorphRef===Z.node.structure?.structuralMorphRef:!1)}))F(uq(U.expression,X.expression))},hq=(U,X)=>U.transform((q,Z)=>{if(q==="domain"||q==="unit")return null;return Z},{shouldTransform:(q,Z)=>{let Q=pq(Z.path);if(!X.optionallyChainedPropString.startsWith(Q))return!1;if(q.hasKind("domain")&&q.domain==="object")return!0;if((q.hasKind("domain")||X.kind==="unit")&&Q===X.optionallyChainedPropString)return!0;return q.children.length!==0&&q.kind!=="index"}}),uq=(U,X)=>`An unordered union of a type including a morph and a type with overlapping input is indeterminate:
175
+ })`)}compileIndiscriminable(U){if(U.traversalKind==="Apply"){U.const("errors","[]");for(let X of this.branches)U.line("ctx.pushBranch()").line(U.invoke(X)).if("!ctx.hasError()",()=>U.return(X.includesTransform?"ctx.queuedMorphs.push(...ctx.popBranch().queuedMorphs)":"ctx.popBranch()")).line("errors.push(ctx.popBranch().error)");U.line(`ctx.errorFromNodeContext({ code: "union", errors, meta: ${this.compiledMeta} })`)}else{let{optimistic:X}=U;U.optimistic=!1;for(let q of this.branches)U.if(`${U.invoke(q)}`,()=>U.return(X?q.contextFreeMorph?`${d(q.contextFreeMorph)}(data)`:"data":!0));U.return(X?`"${J0}"`:!1)}}get nestableExpression(){return this.isBoolean?"boolean":`(${this.expression})`}discriminate(){if(this.branches.length<2||this.isCyclic)return null;if(this.unitBranches.length===this.branches.length){let Q=S(this.unitBranches,(G,Y)=>[`${Y.rawIn.serializedValue}`,Y.hasKind("morph")?Y:!0]);return{kind:"unit",path:[],optionallyChainedPropString:"data",cases:Q}}let U=[];for(let Q=0;Q<this.branches.length-1;Q++){let G=this.branches[Q];for(let Y=Q+1;Y<this.branches.length;Y++){let J=this.branches[Y],H=$0(G.rawIn,J.rawIn,G.$);if(!(H instanceof B))continue;for(let W of H){if(!W.kind||W.optional)continue;let $,_;if(W.kind==="domain"){let{l:A,r:T}=W;$=`"${typeof A==="string"?A:A.domain}"`,_=`"${typeof T==="string"?T:T.domain}"`}else if(W.kind==="unit")$=W.l.serializedValue,_=W.r.serializedValue;else continue;let L=U.find((A)=>y0(A.path,W.path)&&A.kind===W.kind);if(!L)U.push({kind:W.kind,cases:{[$]:{branchIndices:[Q],condition:W.l},[_]:{branchIndices:[Y],condition:W.r}},path:W.path});else{if(L.cases[$])L.cases[$].branchIndices=C0(L.cases[$].branchIndices,Q);else L.cases[$]??={branchIndices:[Q],condition:W.l};if(L.cases[_])L.cases[_].branchIndices=C0(L.cases[_].branchIndices,Y);else L.cases[_]??={branchIndices:[Y],condition:W.r}}}}}let X=this.ordered?w5(U,this.branches):U;if(!X.length)return null;let q=M5(X,this),Z={};for(let Q in q.best.cases){let G=P5(q,Q);if(G===null){Z[Q]=!0;continue}if(G.length===this.branches.length)return null;if(this.ordered)G.sort((H,W)=>H.originalIndex-W.originalIndex);let Y=G.map((H)=>H.branch),J=Y.length===1?Y[0]:this.$.node("union",this.ordered?{branches:Y,ordered:!0}:Y);Object.assign(this.referencesById,J.referencesById),Z[Q]=J}if(q.defaultEntries.length){let Q=q.defaultEntries.map((G)=>G.branch);Z.default=this.$.node("union",this.ordered?{branches:Q,ordered:!0}:Q,{prereduced:!0}),Object.assign(this.referencesById,Z.default.referencesById)}return Object.assign(q.location,{cases:Z})}}var M5=(U,X)=>{let Z=U.sort((Y,J)=>Y.path.length===J.path.length?Object.keys(J.cases).length-Object.keys(Y.cases).length:Y.path.length-J.path.length)[0],Q={kind:Z.kind,path:Z.path,optionallyChainedPropString:mq(Z.path)},G=X.branches.map((Y,J)=>({originalIndex:J,branch:Y}));return{best:Z,location:Q,defaultEntries:G,node:X}},P5=(U,X)=>{let q=U.best.cases[X],Z=I5(q.condition,U.location.path,U.node.$),Q=[],G=[];for(let Y=0;Y<U.defaultEntries.length;Y++){let J=U.defaultEntries[Y];if(q.branchIndices.includes(J.originalIndex)){let H=hq(U.node.branches[J.originalIndex],U.location);if(H===null)Q=null;else Q?.push({originalIndex:J.originalIndex,branch:H})}else if(J.branch.hasKind("alias")&&Z.hasKind("domain")&&Z.domain==="object")Q?.push(J);else{if(J.branch.rawIn.overlaps(Z)){let H=hq(J.branch,U.location);Q?.push({originalIndex:J.originalIndex,branch:H})}G.push(J)}}return U.defaultEntries=G,Q},w5=(U,X)=>{return U.filter((Z)=>{let Q=Object.values(Z.cases).map((G)=>G.branchIndices);for(let G=0;G<Q.length-1;G++){let Y=Q[G];for(let J=G+1;J<Q.length;J++){let H=Q[J];for(let W of Y)for(let $ of H)if(W>$){if(X[W].overlaps(X[$]))return!1}}}return!0})},I5=(U,X,q)=>{let Z=U==="undefined"?q.node("unit",{unit:void 0}):U==="null"?q.node("unit",{unit:null}):U==="boolean"?q.units([!0,!1]):U;for(let Q=X.length-1;Q>=0;Q--){let G=X[Q];Z=q.node("intersection",typeof G==="number"?{proto:"Array",sequence:[...OX(G).map((Y)=>({})),Z]}:{domain:"object",required:[{key:G,value:Z}]})}return Z},mq=(U)=>U.reduce((X,q)=>X+dU(q,!0),"data"),K5=d(TX),N5=d(E),V4={implementation:D5,Node:uq},C5=(U)=>({kind:U.kind,path:U.path.map((X)=>typeof X==="string"?X:M0(X)),cases:S(U.cases,(X,q)=>[X,q===!0?q:q.hasKind("union")&&q.discriminantJson?q.discriminantJson:q.json])}),S5={delimiter:" | ",finalDelimiter:" | "},E5=(U)=>v1(U,S5),v1=(U,X)=>{let q=X?.delimiter??", ",Z=X?.finalDelimiter??" or ";if(U.length===0)return"never";if(U.length===1)return U[0];if(U.length===2&&U[0]==="false"&&U[1]==="true"||U[0]==="true"&&U[1]==="false")return"boolean";let Q={},G=U.filter((J)=>Q[J]?!1:Q[J]=!0),Y=G.pop();return`${G.join(q)}${G.length?Z:""}${Y}`},O4=(U,X,q)=>{let Z=X.map(()=>[]);for(let G=0;G<U.length;G++){let Y={};for(let J=0;J<X.length;J++){if(Z[J]===null)continue;if(U[G].equals(X[J])){Z[J]=null,Y={};break}let H=u(U[G],X[J],q);if(H instanceof B)continue;if(H.equals(U[G])){Z[J].push(U[G]),Y={};break}if(H.equals(X[J]))Z[J]=null;else Y[J]=H}for(let J in Y)Z[J][G]=Y[J]}let Q=Z.flatMap((G,Y)=>G?.flatMap((J)=>J.branches)??X[Y]);return Q.length===0?B.init("union",U,X):Q},j5=({branches:U,ordered:X})=>{if(U.length<2)return U;let q=U.map(()=>!0);for(let Z=0;Z<U.length;Z++)for(let Q=Z+1;Q<U.length&&q[Z]&&q[Q];Q++){if(U[Z].equals(U[Q])){q[Q]=!1;continue}let G=$0(U[Z].rawIn,U[Q].rawIn,U[0].$);if(G instanceof B)continue;if(!X)b5(U[Z],U[Q]);if(G.equals(U[Z].rawIn))q[Z]=!!X;else if(G.equals(U[Q].rawIn))q[Q]=!1}return U.filter((Z,Q)=>q[Q])},b5=(U,X)=>{if(!U.includesTransform&&!X.includesTransform)return;if(!y0(U.shallowMorphs,X.shallowMorphs))F(xq(U.expression,X.expression));if(!y0(U.flatMorphs,X.flatMorphs,{isEqual:(q,Z)=>q.propString===Z.propString&&(q.node.hasKind("morph")&&Z.node.hasKind("morph")?q.node.hasEqualMorphs(Z.node):q.node.hasKind("intersection")&&Z.node.hasKind("intersection")?q.node.structure?.structuralMorphRef===Z.node.structure?.structuralMorphRef:!1)}))F(xq(U.expression,X.expression))},hq=(U,X)=>U.transform((q,Z)=>{if(q==="domain"||q==="unit")return null;return Z},{shouldTransform:(q,Z)=>{let Q=mq(Z.path);if(!X.optionallyChainedPropString.startsWith(Q))return!1;if(q.hasKind("domain")&&q.domain==="object")return!0;if((q.hasKind("domain")||X.kind==="unit")&&Q===X.optionallyChainedPropString)return!0;return q.children.length!==0&&q.kind!=="index"}}),xq=(U,X)=>`An unordered union of a type including a morph and a type with overlapping input is indeterminate:
176
176
  Left: ${U}
177
177
  Right: ${X}`,f5=(U,X)=>`The intersection of two ordered unions is indeterminate:
178
178
  Left: ${U}
179
- Right: ${X}`;var g5=j({kind:"unit",hasAssociatedError:!0,keys:{unit:{preserveUndefined:!0,serialize:(U)=>U instanceof Date?U.toISOString():F0(U)}},normalize:(U)=>U,defaults:{description:(U)=>E(U.unit),problem:({expected:U,actual:X})=>`${U===X?`must be reference equal to ${U} (serialized to the same value)`:`must be ${U} (was ${X})`}`},intersections:{unit:(U,X)=>B.init("unit",U,X),...E0("unit",(U,X)=>{if(X.allows(U.unit))return U;let q=X.hasKind("intersection")?X.basis:X;if(q){let Z=q.hasKind("domain")?q:V.intrinsic.object;if(U.domain!==Z.domain){let Q=U.domain==="undefined"||U.domain==="null"||U.domain==="boolean"?U.domain:V.intrinsic[U.domain];return B.init("domain",Q,Z)}}return B.init("assignability",U,X.hasKind("intersection")?X.children.find((Z)=>!Z.allows(U.unit)):X)})}});class dq extends L1{compiledValue=this.json.unit;serializedValue=typeof this.unit==="string"||this.unit instanceof Date?JSON.stringify(this.compiledValue):`${this.compiledValue}`;compiledCondition=lq(this.unit,this.serializedValue);compiledNegation=lq(this.unit,this.serializedValue,"negated");expression=E(this.unit);domain=r(this.unit);get defaultShortDescription(){return this.domain==="object"?G0.object:this.description}innerToJsonSchema(U){return this.unit===null?{type:"null"}:V.intrinsic.jsonPrimitive.allows(this.unit)?{const:this.unit}:U.fallback.unit({code:"unit",base:{},unit:this.unit})}traverseAllows=this.unit instanceof Date?(U)=>U instanceof Date&&U.toISOString()===this.compiledValue:Number.isNaN(this.unit)?(U)=>Number.isNaN(U):(U)=>U===this.unit}var T4={implementation:g5,Node:dq},lq=(U,X,q)=>{if(U instanceof Date){let Z=`data instanceof Date && data.toISOString() === ${X}`;return q?`!(${Z})`:Z}if(Number.isNaN(U))return`${q?"!":""}Number.isNaN(data)`;return`data ${q?"!":"="}== ${X}`};var y5=j({kind:"index",hasAssociatedError:!1,intersectionIsOpen:!0,keys:{signature:{child:!0,parse:(U,X)=>{let q=X.$.parseSchema(U);if(!q.extends(V.intrinsic.key))return F(v5(q.expression));let Z=q.branches.filter((Q)=>Q.hasKind("unit"));if(Z.length)return F(k5(Z.map((Q)=>E(Q.unit))));return q}},value:{child:!0,parse:(U,X)=>X.$.parseSchema(U)}},normalize:(U)=>U,defaults:{description:(U)=>`[${U.signature.expression}]: ${U.value.description}`},intersections:{index:(U,X,q)=>{if(U.signature.equals(X.signature)){let Z=u(U.value,X.value,q),Q=Z instanceof B?V.intrinsic.never.internal:Z;return q.$.node("index",{signature:U.signature,value:Q})}if(U.signature.extends(X.signature)&&U.value.subsumes(X.value))return X;if(X.signature.extends(U.signature)&&X.value.subsumes(U.value))return U;return null}}});class cq extends A0{impliedBasis=V.intrinsic.object.internal;expression=`[${this.signature.expression}]: ${this.value.expression}`;flatRefs=g(this.value.flatRefs.map((U)=>w0([this.signature,...U.path],U.node)),w0([this.signature],this.value));traverseAllows=(U,X)=>J1(U).every((q)=>{if(this.signature.traverseAllows(q[0],X))return W0(q[0],()=>this.value.traverseAllows(q[1],X),X);return!0});traverseApply=(U,X)=>{for(let q of J1(U))if(this.signature.traverseAllows(q[0],X))W0(q[0],()=>this.value.traverseApply(q[1],X),X)};_transform(U,X){X.path.push(this.signature);let q=super._transform(U,X);return X.path.pop(),q}compile(){}}var D4={implementation:y5,Node:cq},k5=(U)=>`Index keys ${U.join(", ")} should be specified as named props.`,v5=(U)=>`Indexed key definition '${U}' must be a string or symbol`;var x5=j({kind:"required",hasAssociatedError:!0,intersectionIsOpen:!0,keys:{key:{},value:{child:!0,parse:(U,X)=>X.$.parseSchema(U)}},normalize:(U)=>U,defaults:{description:(U)=>`${U.compiledKey}: ${U.value.description}`,expected:(U)=>U.missingValueDescription,actual:()=>"missing"},intersections:{required:R2,optional:R2}});class iq extends M2{expression=`${this.compiledKey}: ${this.value.expression}`;errorContext=Object.freeze({code:"required",missingValueDescription:this.value.defaultShortDescription,relativePath:[this.key],meta:this.meta});compiledErrorContext=s0(this.errorContext)}var R4={implementation:x5,Node:iq};var h5=j({kind:"sequence",hasAssociatedError:!1,collapsibleKey:"variadic",keys:{prefix:{child:!0,parse:(U,X)=>{if(U.length===0)return;return U.map((q)=>X.$.parseSchema(q))}},optionals:{child:!0,parse:(U,X)=>{if(U.length===0)return;return U.map((q)=>X.$.parseSchema(q))}},defaultables:{child:(U)=>U.map((X)=>X[0]),parse:(U,X)=>{if(U.length===0)return;return U.map((q)=>{let Z=X.$.parseSchema(q[0]);return w2(Z,q[1],null),[Z,q[1]]})},serialize:(U)=>U.map((X)=>[X[0].collapsibleJson,F0(X[1])]),reduceIo:(U,X,q)=>{if(U==="in"){X.optionals=q.map((Z)=>Z[0].rawIn);return}X.prefix=q.map((Z)=>Z[0].rawOut);return}},variadic:{child:!0,parse:(U,X)=>X.$.parseSchema(U,X)},minVariadicLength:{parse:(U)=>U===0?void 0:U},postfix:{child:!0,parse:(U,X)=>{if(U.length===0)return;return U.map((q)=>X.$.parseSchema(q))}}},normalize:(U)=>{if(typeof U==="string")return{variadic:U};if("variadic"in U||"prefix"in U||"defaultables"in U||"optionals"in U||"postfix"in U||"minVariadicLength"in U){if(U.postfix?.length){if(!U.variadic)return F(l5);if(U.optionals?.length||U.defaultables?.length)return F(P4)}if(U.minVariadicLength&&!U.variadic)return F("minVariadicLength may not be specified without a variadic element");return U}return{variadic:U}},reduce:(U,X)=>{let q=U.minVariadicLength??0,Z=U.prefix?.slice()??[],Q=U.defaultables?.slice()??[],G=U.optionals?.slice()??[],Y=U.postfix?.slice()??[];if(U.variadic){while(G[G.length-1]?.equals(U.variadic))G.pop();if(G.length===0&&Q.length===0)while(Z[Z.length-1]?.equals(U.variadic))Z.pop(),q++;while(Y[0]?.equals(U.variadic))Y.shift(),q++}else if(G.length===0&&Q.length===0)Z.push(...Y.splice(0));if(q!==U.minVariadicLength||U.prefix&&U.prefix.length!==Z.length)return X.node("sequence",{...U,prefix:Z,defaultables:Q,optionals:G,postfix:Y,minVariadicLength:q},{prereduced:!0})},defaults:{description:(U)=>{if(U.isVariadicOnly)return`${U.variadic.nestableExpression}[]`;return`[${U.tuple.map((q)=>q.kind==="defaultables"?`${q.node.nestableExpression} = ${E(q.default)}`:q.kind==="optionals"?`${q.node.nestableExpression}?`:q.kind==="variadic"?`...${q.node.nestableExpression}[]`:q.node.expression).join(", ")}]`}},intersections:{sequence:(U,X,q)=>{let Z=C2({l:U.tuple,r:X.tuple,disjoint:new B,result:[],fixedVariants:[],ctx:q}),Q=Z.disjoint.length===0?[Z,...Z.fixedVariants]:Z.fixedVariants;return Q.length===0?Z.disjoint:Q.length===1?q.$.node("sequence",sq(Q[0].result)):q.$.node("union",Q.map((G)=>({proto:Array,sequence:sq(G.result)})))}}});class rq extends A0{impliedBasis=V.intrinsic.Array.internal;tuple=p5(this.inner);prefixLength=this.prefix?.length??0;defaultablesLength=this.defaultables?.length??0;optionalsLength=this.optionals?.length??0;postfixLength=this.postfix?.length??0;defaultablesAndOptionals=[];prevariadic=this.tuple.filter((U)=>{if(U.kind==="defaultables"||U.kind==="optionals")return this.defaultablesAndOptionals.push(U.node),!0;return U.kind==="prefix"});variadicOrPostfix=g0(this.variadic&&[this.variadic],this.postfix);flatRefs=this.addFlatRefs();addFlatRefs(){return aU(this.flatRefs,this.prevariadic.flatMap((U,X)=>g(U.node.flatRefs.map((q)=>w0([`${X}`,...q.path],q.node)),w0([`${X}`],U.node)))),aU(this.flatRefs,this.variadicOrPostfix.flatMap((U)=>g(U.flatRefs.map((X)=>w0([V.intrinsic.nonNegativeIntegerString.internal,...X.path],X.node)),w0([V.intrinsic.nonNegativeIntegerString.internal],U)))),this.flatRefs}isVariadicOnly=this.prevariadic.length+this.postfixLength===0;minVariadicLength=this.inner.minVariadicLength??0;minLength=this.prefixLength+this.minVariadicLength+this.postfixLength;minLengthNode=this.minLength===0?null:this.$.node("minLength",this.minLength);maxLength=this.variadic?null:this.tuple.length;maxLengthNode=this.maxLength===null?null:this.$.node("maxLength",this.maxLength);impliedSiblings=this.minLengthNode?this.maxLengthNode?[this.minLengthNode,this.maxLengthNode]:[this.minLengthNode]:this.maxLengthNode?[this.maxLengthNode]:[];defaultValueMorphs=m5(this);defaultValueMorphsReference=this.defaultValueMorphs.length?d(this.defaultValueMorphs):void 0;elementAtIndex(U,X){if(X<this.prevariadic.length)return this.tuple[X];let q=U.length-this.postfixLength;if(X>=q)return{kind:"postfix",node:this.postfix[X-q]};return{kind:"variadic",node:this.variadic??y(`Unexpected attempt to access index ${X} on ${this}`)}}traverseAllows=(U,X)=>{for(let q=0;q<U.length;q++)if(!this.elementAtIndex(U,q).node.traverseAllows(U[q],X))return!1;return!0};traverseApply=(U,X)=>{let q=0;for(;q<U.length;q++)W0(q,()=>this.elementAtIndex(U,q).node.traverseApply(U[q],X),X)};get element(){return this.cacheGetter("element",this.$.node("union",this.children))}compile(U){if(this.prefix)for(let[X,q]of this.prefix.entries())U.traverseKey(`${X}`,`data[${X}]`,q);for(let[X,q]of this.defaultablesAndOptionals.entries()){let Z=`${X+this.prefixLength}`;U.if(`${Z} >= data.length`,()=>U.traversalKind==="Allows"?U.return(!0):U.return()),U.traverseKey(Z,`data[${Z}]`,q)}if(this.variadic){if(this.postfix)U.const("firstPostfixIndex",`data.length${this.postfix?`- ${this.postfix.length}`:""}`);if(U.for(`i < ${this.postfix?"firstPostfixIndex":"data.length"}`,()=>U.traverseKey("i","data[i]",this.variadic),this.prevariadic.length),this.postfix)for(let[X,q]of this.postfix.entries()){let Z=`firstPostfixIndex + ${X}`;U.traverseKey(Z,`data[${Z}]`,q)}}if(U.traversalKind==="Allows")U.return(!0)}_transform(U,X){X.path.push(V.intrinsic.nonNegativeIntegerString.internal);let q=super._transform(U,X);return X.path.pop(),q}expression=this.description;reduceJsonSchema(U,X){let q=X.target==="draft-07";if(this.prevariadic.length){let Z=this.prevariadic.map((Q)=>{let G=Q.node.toJsonSchemaRecurse(X);if(Q.kind==="defaultables"){let Y=typeof Q.default==="function"?Q.default():Q.default;G.default=V.intrinsic.jsonData.allows(Y)?Y:X.fallback.defaultValue({code:"defaultValue",base:G,value:Y})}return G});if(q)U.items=Z;else U.prefixItems=Z}if(this.minLength)U.minItems=this.minLength;if(this.variadic){let Z=this.variadic.toJsonSchemaRecurse(X);if(q&&this.prevariadic.length)U.additionalItems=Z;else U.items=Z;if(this.maxLength)U.maxItems=this.maxLength;if(this.postfix){let Q=this.postfix.map((G)=>G.toJsonSchemaRecurse(X));U=X.fallback.arrayPostfix({code:"arrayPostfix",base:U,elements:Q})}}else{if(q)U.additionalItems=!1;else U.items=!1;delete U.maxItems}return U}}var u5={},m5=(U)=>{if(!U.defaultables)return[];let X=[],q="[",Z=U.prefixLength+U.defaultablesLength-1;for(let Q=U.prefixLength;Q<=Z;Q++){let[G,Y]=U.defaultables[Q-U.prefixLength];X.push(F4(Q,G,Y)),q+=`${Q}: ${G.id} = ${F0(Y)}, `}return q+="]",u5[q]??=X},M4={implementation:h5,Node:rq},p5=(U)=>{let X=[];if(U.prefix)for(let q of U.prefix)X.push({kind:"prefix",node:q});if(U.defaultables)for(let[q,Z]of U.defaultables)X.push({kind:"defaultables",node:q,default:Z});if(U.optionals)for(let q of U.optionals)X.push({kind:"optionals",node:q});if(U.variadic)X.push({kind:"variadic",node:U.variadic});if(U.postfix)for(let q of U.postfix)X.push({kind:"postfix",node:q});return X},sq=(U)=>U.reduce((X,q)=>{if(q.kind==="variadic")X.variadic=q.node;else if(q.kind==="defaultables")X.defaultables=g(X.defaultables,[[q.node,q.default]]);else X[q.kind]=g(X[q.kind],q.node);return X},{}),P4="A postfix required element cannot follow an optional or defaultable element",l5="A postfix element requires a variadic element",C2=(U)=>{let[X,...q]=U.l,[Z,...Q]=U.r;if(!X||!Z)return U;let G=q[q.length-1]?.kind==="postfix",Y=Q[Q.length-1]?.kind==="postfix",J=X.kind==="prefix"||Z.kind==="prefix"?"prefix":X.kind==="postfix"||Z.kind==="postfix"?"postfix":X.kind==="variadic"&&Z.kind==="variadic"?"variadic":G||Y?"prefix":X.kind==="defaultables"||Z.kind==="defaultables"?"defaultables":"optionals";if(X.kind==="prefix"&&Z.kind==="variadic"&&Y){let _=C2({...U,fixedVariants:[],r:Q.map((L)=>({...L,kind:"prefix"}))});if(_.disjoint.length===0)U.fixedVariants.push(_)}else if(Z.kind==="prefix"&&X.kind==="variadic"&&G){let _=C2({...U,fixedVariants:[],l:q.map((L)=>({...L,kind:"prefix"}))});if(_.disjoint.length===0)U.fixedVariants.push(_)}let H=u(X.node,Z.node,U.ctx);if(H instanceof B)if(J==="prefix"||J==="postfix")U.disjoint.push(...H.withPrefixKey(J==="prefix"?U.result.length:`-${q.length+1}`,oq(X)&&oq(Z)?"required":"optional")),U.result=[...U.result,{kind:J,node:V.intrinsic.never.internal}];else if(J==="optionals"||J==="defaultables")return U;else return C2({...U,fixedVariants:[],l:q.map((_)=>({..._,kind:"prefix"})),r:q.map((_)=>({..._,kind:"prefix"}))});else if(J==="defaultables"){if(X.kind==="defaultables"&&Z.kind==="defaultables"&&X.default!==Z.default)F(z4(X.default,Z.default));U.result=[...U.result,{kind:J,node:H,default:X.kind==="defaultables"?X.default:Z.kind==="defaultables"?Z.default:y(`Unexpected defaultable intersection from ${X.kind} and ${Z.kind} elements.`)}]}else U.result=[...U.result,{kind:J,node:H}];let W=U.l.length,$=U.r.length;if(X.kind!=="variadic"||W>=$&&(Z.kind==="variadic"||$===1))U.l=q;if(Z.kind!=="variadic"||$>=W&&(X.kind==="variadic"||W===1))U.r=Q;return C2(U)},oq=(U)=>U.kind==="prefix"||U.kind==="postfix";var eq=(U)=>(X)=>{if(X.props.length||X.index){let q=X.index?.map((Q)=>Q[U])??[];for(let Q of X.props)q.push(Q[U]);if(X.undeclared)q.push(`+ (undeclared): ${X.undeclared}`);let Z=`{ ${q.join(", ")} }`;return X.sequence?`${Z} & ${X.sequence.description}`:Z}return X.sequence?.description??"{}"},d5=eq("description"),c5=eq("expression"),aq=(U,X,q)=>{let Z=U.required?"required":"optional";if(!X.signature.allows(U.key))return null;let Q=_0(U.value,X.value,q);if(Q instanceof B)return Z==="optional"?q.node("optional",{key:U.key,value:V.intrinsic.never.internal}):Q.withPrefixKey(U.key,U.kind);return null},i5=j({kind:"structure",hasAssociatedError:!1,normalize:(U)=>U,applyConfig:(U,X)=>{if(!U.undeclared&&X.onUndeclaredKey!=="ignore")return{...U,undeclared:X.onUndeclaredKey};return U},keys:{required:{child:!0,parse:X0("required"),reduceIo:(U,X,q)=>{X.required=g(X.required,q.map((Z)=>U==="in"?Z.rawIn:Z.rawOut));return}},optional:{child:!0,parse:X0("optional"),reduceIo:(U,X,q)=>{if(U==="in"){X.optional=q.map((Z)=>Z.rawIn);return}for(let Z of q)X[Z.outProp.kind]=g(X[Z.outProp.kind],Z.outProp.rawOut)}},index:{child:!0,parse:X0("index")},sequence:{child:!0,parse:X0("sequence")},undeclared:{parse:(U)=>U==="ignore"?void 0:U,reduceIo:(U,X,q)=>{if(q==="reject"){X.undeclared="reject";return}if(U==="in")delete X.undeclared;else X.undeclared="reject"}}},defaults:{description:d5},intersections:{structure:(U,X,q)=>{let Z={...U.inner},Q={...X.inner},G=new B;if(U.undeclared){let H=U.keyof();for(let W of X.requiredKeys)if(!H.allows(W))G.add("presence",V.intrinsic.never.internal,X.propsByKey[W].value,{path:[W]});if(Q.optional)Q.optional=Q.optional.filter((W)=>H.allows(W.key));if(Q.index)Q.index=Q.index.flatMap((W)=>{if(W.signature.extends(H))return W;let $=_0(H,W.signature,q.$);if($ instanceof B)return[];let _=w6($,W.value,q.$);if(_.required)Q.required=g0(Q.required,_.required);if(_.optional)Q.optional=g0(Q.optional,_.optional);return _.index??[]})}if(X.undeclared){let H=X.keyof();for(let W of U.requiredKeys)if(!H.allows(W))G.add("presence",U.propsByKey[W].value,V.intrinsic.never.internal,{path:[W]});if(Z.optional)Z.optional=Z.optional.filter((W)=>H.allows(W.key));if(Z.index)Z.index=Z.index.flatMap((W)=>{if(W.signature.extends(H))return W;let $=_0(H,W.signature,q.$);if($ instanceof B)return[];let _=w6($,W.value,q.$);if(_.required)Z.required=g0(Z.required,_.required);if(_.optional)Z.optional=g0(Z.optional,_.optional);return _.index??[]})}let Y={};if(U.undeclared||X.undeclared)Y.undeclared=U.undeclared==="reject"||X.undeclared==="reject"?"reject":"delete";let J=j1({kind:"structure",baseInner:Y,l:b1(Z),r:b1(Q),roots:[],ctx:q});if(J instanceof B)G.push(...J);if(G.length)return G;return J}},reduce:(U,X)=>{if(!U.required&&!U.optional)return;let q={},Z=!1,Q=U.optional?[...U.optional]:[];if(U.required)for(let G=0;G<U.required.length;G++){let Y=U.required[G];if(Y.key in q)F(tq(Y.key));if(q[Y.key]=!0,U.index)for(let J of U.index){let H=aq(Y,J,X);if(H instanceof B)return H}}if(U.optional)for(let G=0;G<U.optional.length;G++){let Y=U.optional[G];if(Y.key in q)F(tq(Y.key));if(q[Y.key]=!0,U.index)for(let J of U.index){let H=aq(Y,J,X);if(H instanceof B)return H;if(H!==null)Q[G]=H,Z=!0}}if(Z)return X.node("structure",{...U,optional:Q},{prereduced:!0})}});class UZ extends A0{impliedBasis=V.intrinsic.object.internal;impliedSiblings=this.children.flatMap((U)=>U.impliedSiblings??[]);props=g0(this.required,this.optional);propsByKey=S(this.props,(U,X)=>[X.key,X]);propsByKeyReference=d(this.propsByKey);expression=c5(this);requiredKeys=this.required?.map((U)=>U.key)??[];optionalKeys=this.optional?.map((U)=>U.key)??[];literalKeys=[...this.requiredKeys,...this.optionalKeys];_keyof;keyof(){if(this._keyof)return this._keyof;let U=this.$.units(this.literalKeys).branches;if(this.index)for(let{signature:X}of this.index)U=U.concat(X.branches);return this._keyof=this.$.node("union",U)}map(U){return this.$.node("structure",this.props.flatMap(U).reduce((X,q)=>{let Z=this.propsByKey[q.key];if(h(q)){if(q.kind!=="required"&&q.kind!=="optional")return F(`Map result must have kind "required" or "optional" (was ${q.kind})`);return X[q.kind]=g(X[q.kind],q),X}let Q=q.kind??Z?.kind??"required",G=S(q,(Y,J)=>(Y in P2.implementation.keys)?[Y,J]:[]);return X[Q]=g(X[Q],this.$.node(Q,G)),X},{}))}assertHasKeys(U){let X=U.filter((q)=>!I2(q,this.keyof()));if(X.length)return F(nq(this.expression,X))}get(U,...X){let q,Z=!1,Q=a5(U);if((typeof Q==="string"||typeof Q==="symbol")&&this.propsByKey[Q])q=this.propsByKey[Q].value,Z=this.propsByKey[Q].required;if(this.index){for(let Y of this.index)if(I2(Q,Y.signature))q=q?.and(Y.value)??Y.value}if(this.sequence&&I2(Q,V.intrinsic.nonNegativeIntegerString))if(M(Q,"root")){if(this.sequence.variadic)q=q?.and(this.sequence.element)??this.sequence.element}else{let Y=Number.parseInt(Q);if(Y<this.sequence.prevariadic.length){let J=this.sequence.prevariadic[Y].node;q=q?.and(J)??J,Z||=Y<this.sequence.prefixLength}else if(this.sequence.variadic){let J=this.$.node("union",this.sequence.variadicOrPostfix);q=q?.and(J)??J}}if(!q){if(this.sequence?.variadic&&M(Q,"root")&&Q.extends(V.intrinsic.number))return F(n5(Q.expression,this.sequence.expression));return F(nq(this.expression,[Q]))}let G=q.get(...X);return Z?G:G.or(V.intrinsic.undefined)}pick(...U){return this.assertHasKeys(U),this.$.node("structure",this.filterKeys("pick",U))}omit(...U){return this.assertHasKeys(U),this.$.node("structure",this.filterKeys("omit",U))}optionalize(){let{required:U,...X}=this.inner;return this.$.node("structure",{...X,optional:this.props.map((q)=>q.hasKind("required")?this.$.node("optional",q.inner):q)})}require(){let{optional:U,...X}=this.inner;return this.$.node("structure",{...X,required:this.props.map((q)=>q.hasKind("optional")?{key:q.key,value:q.value}:q)})}merge(U){let X=this.filterKeys("omit",[U.keyof()]);if(U.required)X.required=g(X.required,U.required);if(U.optional)X.optional=g(X.optional,U.optional);if(U.index)X.index=g(X.index,U.index);if(U.sequence)X.sequence=U.sequence;if(U.undeclared)X.undeclared=U.undeclared;else delete X.undeclared;return this.$.node("structure",X)}filterKeys(U,X){let q=z6(this.inner),Z=(Q)=>{let G=X.some((Y)=>I2(Q,Y));return U==="pick"?G:!G};if(q.required)q.required=q.required.filter((Q)=>Z(Q.key));if(q.optional)q.optional=q.optional.filter((Q)=>Z(Q.key));if(q.index)q.index=q.index.filter((Q)=>Z(Q.signature));return q}traverseAllows=(U,X)=>this._traverse("Allows",U,X);traverseApply=(U,X)=>this._traverse("Apply",U,X);_traverse=(U,X,q)=>{let Z=q?.currentErrorCount??0;for(let Q=0;Q<this.props.length;Q++)if(U==="Allows"){if(!this.props[Q].traverseAllows(X,q))return!1}else if(this.props[Q].traverseApply(X,q),q.failFast&&q.currentErrorCount>Z)return!1;if(this.sequence){if(U==="Allows"){if(!this.sequence.traverseAllows(X,q))return!1}else if(this.sequence.traverseApply(X,q),q.failFast&&q.currentErrorCount>Z)return!1}if(this.index||this.undeclared==="reject"){let Q=Object.keys(X);Q.push(...Object.getOwnPropertySymbols(X));for(let G=0;G<Q.length;G++){let Y=Q[G];if(this.index){for(let J of this.index)if(J.signature.traverseAllows(Y,q)){if(U==="Allows"){if(!W0(Y,()=>J.value.traverseAllows(X[Y],q),q))return!1}else if(W0(Y,()=>J.value.traverseApply(X[Y],q),q),q.failFast&&q.currentErrorCount>Z)return!1}}if(this.undeclared==="reject"&&!this.declaresKey(Y)){if(U==="Allows")return!1;if(q.errorFromNodeContext({code:"predicate",expected:"removed",actual:"",relativePath:[Y],meta:this.meta}),q.failFast)return!1}}}if(this.structuralMorph&&q&&!q.hasError())q.queueMorphs([this.structuralMorph]);return!0};get defaultable(){return this.cacheGetter("defaultable",this.optional?.filter((U)=>U.hasDefault())??[])}declaresKey=(U)=>(U in this.propsByKey)||this.index?.some((X)=>X.signature.allows(U))||this.sequence!==void 0&&V.intrinsic.nonNegativeIntegerString.allows(U);_compileDeclaresKey(U){let X=[];if(this.props.length)X.push(`k in ${this.propsByKeyReference}`);if(this.index)for(let q of this.index)X.push(U.invoke(q.signature,{kind:"Allows",arg:"k"}));if(this.sequence)X.push("$ark.intrinsic.nonNegativeIntegerString.allows(k)");return X.join(" || ")||"false"}get structuralMorph(){return this.cacheGetter("structuralMorph",o5(this))}structuralMorphRef=this.structuralMorph&&d(this.structuralMorph);compile(U){if(U.traversalKind==="Apply")U.initializeErrorCount();for(let X of this.props)if(U.check(X),U.traversalKind==="Apply")U.returnIfFailFast();if(this.sequence){if(U.check(this.sequence),U.traversalKind==="Apply")U.returnIfFailFast()}if(this.index||this.undeclared==="reject")U.const("keys","Object.keys(data)"),U.line("keys.push(...Object.getOwnPropertySymbols(data))"),U.for("i < keys.length",()=>this.compileExhaustiveEntry(U));if(U.traversalKind==="Allows")return U.return(!0);if(this.structuralMorphRef)U.if("ctx && !ctx.hasError()",()=>{return U.line("ctx.queueMorphs(["),r5(U,this),U.line("])")})}compileExhaustiveEntry(U){if(U.const("k","keys[i]"),this.index)for(let X of this.index)U.if(`${U.invoke(X.signature,{arg:"k",kind:"Allows"})}`,()=>U.traverseKey("k","data[k]",X.value));if(this.undeclared==="reject")U.if(`!(${this._compileDeclaresKey(U)})`,()=>{if(U.traversalKind==="Allows")return U.return(!1);return U.line(`ctx.errorFromNodeContext({ code: "predicate", expected: "removed", actual: "", relativePath: [k], meta: ${this.compiledMeta} })`).if("ctx.failFast",()=>U.return())});return U}reduceJsonSchema(U,X){switch(U.type){case"object":return this.reduceObjectJsonSchema(U,X);case"array":let q=this.sequence?.reduceJsonSchema(U,X)??U;if(this.props.length||this.index)return X.fallback.arrayObject({code:"arrayObject",base:q,object:this.reduceObjectJsonSchema({type:"object"},X)});return q;default:return p.throwInternalOperandError("structure",U)}}reduceObjectJsonSchema(U,X){if(this.props.length){U.properties={};for(let q of this.props){let Z=q.value.toJsonSchemaRecurse(X);if(typeof q.key==="symbol"){X.fallback.symbolKey({code:"symbolKey",base:U,key:q.key,value:Z,optional:q.optional});continue}if(q.hasDefault()){let Q=typeof q.default==="function"?q.default():q.default;Z.default=V.intrinsic.jsonData.allows(Q)?Q:X.fallback.defaultValue({code:"defaultValue",base:Z,value:Q})}U.properties[q.key]=Z}if(this.requiredKeys.length&&U.properties)U.required=this.requiredKeys.filter((q)=>typeof q==="string"&&(q in U.properties))}if(this.index)for(let q of this.index){let Z=q.value.toJsonSchemaRecurse(X);if(q.signature.equals(V.intrinsic.string)){U.additionalProperties=Z;continue}for(let Q of q.signature.branches){if(!Q.extends(V.intrinsic.string)){U=X.fallback.symbolKey({code:"symbolKey",base:U,key:null,value:Z,optional:!1});continue}let G={type:"string"};if(Q.hasKind("morph"))G=X.fallback.morph({code:"morph",base:Q.rawIn.toJsonSchemaRecurse(X),out:Q.rawOut.toJsonSchemaRecurse(X)});if(!Q.hasKind("intersection"))return y(`Unexpected index branch kind ${Q.kind}.`);let{pattern:Y}=Q.inner;if(Y){let J=Object.assign(G,{pattern:Y[0].rule});for(let H=1;H<Y.length;H++)G=X.fallback.patternIntersection({code:"patternIntersection",base:J,pattern:Y[H].rule});U.patternProperties??={},U.patternProperties[J.pattern]=Z}}}if(this.undeclared&&!U.additionalProperties)U.additionalProperties=!1;return U}}var w4={},s5=(U)=>{let X="";for(let q=0;q<U.defaultable.length;q++)X+=U.defaultable[q].defaultValueMorphRef;if(U.sequence?.defaultValueMorphsReference)X+=U.sequence?.defaultValueMorphsReference;if(U.undeclared==="delete"){if(X+="delete !(",U.required)for(let q of U.required)X+=q.compiledKey+" | ";if(U.optional)for(let q of U.optional)X+=q.compiledKey+" | ";if(U.index)for(let q of U.index)X+=q.signature.id+" | ";if(U.sequence)if(U.sequence.maxLength===null)X+=I.nonNegativeIntegerString.id;else for(let q=0;q<U.sequence.tuple.length;q++)X+=q+" | ";X+=")"}return X},o5=(U)=>{let X=s5(U);if(!X)return;if(w4[X])return w4[X];let q=(Z,Q)=>{for(let G=0;G<U.defaultable.length;G++)if(!(U.defaultable[G].key in Z))U.defaultable[G].defaultValueMorph(Z,Q);if(U.sequence?.defaultables)for(let G=Z.length-U.sequence.prefixLength;G<U.sequence.defaultables.length;G++)U.sequence.defaultValueMorphs[G](Z,Q);if(U.undeclared==="delete"){for(let G in Z)if(!U.declaresKey(G))delete Z[G]}return Z};return w4[X]=q},r5=(U,X)=>{let Z=`(data${X.defaultable.some((Q)=>Q.defaultValueMorph.length===2)||X.sequence?.defaultValueMorphs.some((Q)=>Q.length===2)?", ctx":""})`;return U.block(`${Z} => `,(Q)=>{for(let G=0;G<X.defaultable.length;G++){let{serializedKey:Y,defaultValueMorphRef:J}=X.defaultable[G];Q.if(`!(${Y} in data)`,(H)=>H.line(`${J}${Z}`))}if(X.sequence?.defaultables)Q.for(`i < ${X.sequence.defaultables.length}`,(G)=>G.set("data[i]",5),`data.length - ${X.sequence.prefixLength}`);if(X.undeclared==="delete")Q.forIn("data",(G)=>G.if(`!(${X._compileDeclaresKey(G)})`,(Y)=>Y.line("delete data[k]")));return Q.return("data")})},I4={implementation:i5,Node:UZ},a5=(U)=>{if(M(U,"root")&&U.hasKind("unit"))U=U.unit;if(typeof U==="number")U=`${U}`;return U},n5=(U,X)=>`${U} is not allowed as an array index on ${X}. Use the 'nonNegativeIntegerString' keyword instead.`,w6=(U,X,q)=>{let[Z,Q]=VX(U.branches,(Y)=>Y.hasKind("unit"));if(!Z.length)return{index:q.node("index",{signature:U,value:X})};let G={};for(let Y of Z){let J=q.node("required",{key:Y.unit,value:X});G[J.kind]=g(G[J.kind],J)}if(Q.length)G.index=q.node("index",{signature:Q,value:X});return G},t5=(U)=>M(U,"root")?U.expression:E(U),nq=(U,X)=>`Key${X.length===1?"":"s"} ${X.map(t5).join(", ")} ${X.length===1?"does":"do"} not exist on ${U}`,tq=(U)=>`Duplicate key ${M0(U)}`;var g1={...Dq,alias:K2.implementation,domain:P6.implementation,unit:T4.implementation,proto:N2.implementation,union:B4.implementation,morph:V4.implementation,intersection:A4.implementation,divisor:X4.implementation,pattern:W4.implementation,predicate:U4.implementation,required:R4.implementation,optional:P2.implementation,index:D4.implementation,sequence:M4.implementation,structure:I4.implementation};V.defaultConfig=IX(Object.assign(S(g1,(U,X)=>[U,X.defaults]),{jitless:jX(),clone:CX,onUndeclaredKey:"ignore",exactOptionalPropertyTypes:!0,numberAllowsNaN:!1,dateAllowsInvalid:!1,onFail:null,keywords:{},toJsonSchema:p.defaultConfig}));V.resolvedConfig=V2(V.defaultConfig,V.config);var Kq={...Rq,alias:K2.Node,domain:P6.Node,unit:T4.Node,proto:N2.Node,union:B4.Node,morph:V4.Node,intersection:A4.Node,divisor:X4.Node,pattern:W4.Node,predicate:U4.Node,required:R4.Node,optional:P2.Node,index:D4.Node,sequence:M4.Node,structure:I4.Node};class v1 extends yU{get[q0](){return"module"}}var K4=(U,X)=>new v1(S(U,(q,Z)=>[q,M(Z,"module")?K4(Z,X):X.bindReference(Z)]));var e5=(U)=>x(U)?U:("branches"in U)&&x(U.branches)?U.branches:void 0,UY=(U,X)=>F(`Node of kind ${X} is not valid as a ${U} definition`),XZ=(U)=>`#${U} duplicates public alias ${U}`,N4={};V.ambient??={};var qZ,QZ="function $",XY=(U)=>GZ(U,YZ(U)),GZ=(U,X)=>{let q=X.write(QZ,4),Z=X.compile()();for(let Q of U){if(Q.precompilation)continue;if(Q.traverseAllows=Z[`${Q.id}Allows`].bind(Z),Q.isRoot()&&!Q.allowsRequiresContext)Q.allows=Q.traverseAllows;if(Q.traverseApply=Z[`${Q.id}Apply`].bind(Z),Z[`${Q.id}Optimistic`])Q.traverseOptimistic=Z[`${Q.id}Optimistic`].bind(Z);Q.precompilation=q}},YZ=(U)=>new L6().return(U.reduce((X,q)=>{let Z=new A2({kind:"Allows"}).indent();q.compile(Z);let Q=Z.write(`${q.id}Allows`),G=new A2({kind:"Apply"}).indent();q.compile(G);let Y=G.write(`${q.id}Apply`),J=`${X}${Q},
179
+ Right: ${X}`;var g5=j({kind:"unit",hasAssociatedError:!0,keys:{unit:{preserveUndefined:!0,serialize:(U)=>U instanceof Date?U.toISOString():A0(U)}},normalize:(U)=>U,defaults:{description:(U)=>E(U.unit),problem:({expected:U,actual:X})=>`${U===X?`must be reference equal to ${U} (serialized to the same value)`:`must be ${U} (was ${X})`}`},intersections:{unit:(U,X)=>B.init("unit",U,X),...E0("unit",(U,X)=>{if(X.allows(U.unit))return U;let q=X.hasKind("intersection")?X.basis:X;if(q){let Z=q.hasKind("domain")?q:O.intrinsic.object;if(U.domain!==Z.domain){let Q=U.domain==="undefined"||U.domain==="null"||U.domain==="boolean"?U.domain:O.intrinsic[U.domain];return B.init("domain",Q,Z)}}return B.init("assignability",U,X.hasKind("intersection")?X.children.find((Z)=>!Z.allows(U.unit)):X)})}});class lq extends L1{compiledValue=this.json.unit;serializedValue=typeof this.unit==="string"||this.unit instanceof Date?JSON.stringify(this.compiledValue):`${this.compiledValue}`;compiledCondition=pq(this.unit,this.serializedValue);compiledNegation=pq(this.unit,this.serializedValue,"negated");expression=E(this.unit);domain=r(this.unit);get defaultShortDescription(){return this.domain==="object"?Y0.object:this.description}innerToJsonSchema(U){return this.unit===null?{type:"null"}:O.intrinsic.jsonPrimitive.allows(this.unit)?{const:this.unit}:U.fallback.unit({code:"unit",base:{},unit:this.unit})}traverseAllows=this.unit instanceof Date?(U)=>U instanceof Date&&U.toISOString()===this.compiledValue:Number.isNaN(this.unit)?(U)=>Number.isNaN(U):(U)=>U===this.unit}var B4={implementation:g5,Node:lq},pq=(U,X,q)=>{if(U instanceof Date){let Z=`data instanceof Date && data.toISOString() === ${X}`;return q?`!(${Z})`:Z}if(Number.isNaN(U))return`${q?"!":""}Number.isNaN(data)`;return`data ${q?"!":"="}== ${X}`};var y5=j({kind:"index",hasAssociatedError:!1,intersectionIsOpen:!0,keys:{signature:{child:!0,parse:(U,X)=>{let q=X.$.parseSchema(U);if(!q.extends(O.intrinsic.key))return F(v5(q.expression));let Z=q.branches.filter((Q)=>Q.hasKind("unit"));if(Z.length)return F(k5(Z.map((Q)=>E(Q.unit))));return q}},value:{child:!0,parse:(U,X)=>X.$.parseSchema(U)}},normalize:(U)=>U,defaults:{description:(U)=>`[${U.signature.expression}]: ${U.value.description}`},intersections:{index:(U,X,q)=>{if(U.signature.equals(X.signature)){let Z=u(U.value,X.value,q),Q=Z instanceof B?O.intrinsic.never.internal:Z;return q.$.node("index",{signature:U.signature,value:Q})}if(U.signature.extends(X.signature)&&U.value.subsumes(X.value))return X;if(X.signature.extends(U.signature)&&X.value.subsumes(U.value))return U;return null}}});class dq extends O0{impliedBasis=O.intrinsic.object.internal;expression=`[${this.signature.expression}]: ${this.value.expression}`;flatRefs=g(this.value.flatRefs.map((U)=>w0([this.signature,...U.path],U.node)),w0([this.signature],this.value));traverseAllows=(U,X)=>J1(U).every((q)=>{if(this.signature.traverseAllows(q[0],X))return _0(q[0],()=>this.value.traverseAllows(q[1],X),X);return!0});traverseApply=(U,X)=>{for(let q of J1(U))if(this.signature.traverseAllows(q[0],X))_0(q[0],()=>this.value.traverseApply(q[1],X),X)};_transform(U,X){X.path.push(this.signature);let q=super._transform(U,X);return X.path.pop(),q}compile(){}}var T4={implementation:y5,Node:dq},k5=(U)=>`Index keys ${U.join(", ")} should be specified as named props.`,v5=(U)=>`Indexed key definition '${U}' must be a string or symbol`;var h5=j({kind:"required",hasAssociatedError:!0,intersectionIsOpen:!0,keys:{key:{},value:{child:!0,parse:(U,X)=>X.$.parseSchema(U)}},normalize:(U)=>U,defaults:{description:(U)=>`${U.compiledKey}: ${U.value.description}`,expected:(U)=>U.missingValueDescription,actual:()=>"missing"},intersections:{required:D2,optional:D2}});class cq extends M2{expression=`${this.compiledKey}: ${this.value.expression}`;errorContext=Object.freeze({code:"required",missingValueDescription:this.value.defaultShortDescription,relativePath:[this.key],meta:this.meta});compiledErrorContext=s0(this.errorContext)}var R4={implementation:h5,Node:cq};var x5=j({kind:"sequence",hasAssociatedError:!1,collapsibleKey:"variadic",keys:{prefix:{child:!0,parse:(U,X)=>{if(U.length===0)return;return U.map((q)=>X.$.parseSchema(q))}},optionals:{child:!0,parse:(U,X)=>{if(U.length===0)return;return U.map((q)=>X.$.parseSchema(q))}},defaultables:{child:(U)=>U.map((X)=>X[0]),parse:(U,X)=>{if(U.length===0)return;return U.map((q)=>{let Z=X.$.parseSchema(q[0]);return w2(Z,q[1],null),[Z,q[1]]})},serialize:(U)=>U.map((X)=>[X[0].collapsibleJson,A0(X[1])]),reduceIo:(U,X,q)=>{if(U==="in"){X.optionals=q.map((Z)=>Z[0].rawIn);return}X.prefix=q.map((Z)=>Z[0].rawOut);return}},variadic:{child:!0,parse:(U,X)=>X.$.parseSchema(U,X)},minVariadicLength:{parse:(U)=>U===0?void 0:U},postfix:{child:!0,parse:(U,X)=>{if(U.length===0)return;return U.map((q)=>X.$.parseSchema(q))}}},normalize:(U)=>{if(typeof U==="string")return{variadic:U};if("variadic"in U||"prefix"in U||"defaultables"in U||"optionals"in U||"postfix"in U||"minVariadicLength"in U){if(U.postfix?.length){if(!U.variadic)return F(l5);if(U.optionals?.length||U.defaultables?.length)return F(M4)}if(U.minVariadicLength&&!U.variadic)return F("minVariadicLength may not be specified without a variadic element");return U}return{variadic:U}},reduce:(U,X)=>{let q=U.minVariadicLength??0,Z=U.prefix?.slice()??[],Q=U.defaultables?.slice()??[],G=U.optionals?.slice()??[],Y=U.postfix?.slice()??[];if(U.variadic){while(G[G.length-1]?.equals(U.variadic))G.pop();if(G.length===0&&Q.length===0)while(Z[Z.length-1]?.equals(U.variadic))Z.pop(),q++;while(Y[0]?.equals(U.variadic))Y.shift(),q++}else if(G.length===0&&Q.length===0)Z.push(...Y.splice(0));if(q!==U.minVariadicLength||U.prefix&&U.prefix.length!==Z.length)return X.node("sequence",{...U,prefix:Z,defaultables:Q,optionals:G,postfix:Y,minVariadicLength:q},{prereduced:!0})},defaults:{description:(U)=>{if(U.isVariadicOnly)return`${U.variadic.nestableExpression}[]`;return`[${U.tuple.map((q)=>q.kind==="defaultables"?`${q.node.nestableExpression} = ${E(q.default)}`:q.kind==="optionals"?`${q.node.nestableExpression}?`:q.kind==="variadic"?`...${q.node.nestableExpression}[]`:q.node.expression).join(", ")}]`}},intersections:{sequence:(U,X,q)=>{let Z=C2({l:U.tuple,r:X.tuple,disjoint:new B,result:[],fixedVariants:[],ctx:q}),Q=Z.disjoint.length===0?[Z,...Z.fixedVariants]:Z.fixedVariants;return Q.length===0?Z.disjoint:Q.length===1?q.$.node("sequence",iq(Q[0].result)):q.$.node("union",Q.map((G)=>({proto:Array,sequence:iq(G.result)})))}}});class oq extends O0{impliedBasis=O.intrinsic.Array.internal;tuple=p5(this.inner);prefixLength=this.prefix?.length??0;defaultablesLength=this.defaultables?.length??0;optionalsLength=this.optionals?.length??0;postfixLength=this.postfix?.length??0;defaultablesAndOptionals=[];prevariadic=this.tuple.filter((U)=>{if(U.kind==="defaultables"||U.kind==="optionals")return this.defaultablesAndOptionals.push(U.node),!0;return U.kind==="prefix"});variadicOrPostfix=g0(this.variadic&&[this.variadic],this.postfix);flatRefs=this.addFlatRefs();addFlatRefs(){return rU(this.flatRefs,this.prevariadic.flatMap((U,X)=>g(U.node.flatRefs.map((q)=>w0([`${X}`,...q.path],q.node)),w0([`${X}`],U.node)))),rU(this.flatRefs,this.variadicOrPostfix.flatMap((U)=>g(U.flatRefs.map((X)=>w0([O.intrinsic.nonNegativeIntegerString.internal,...X.path],X.node)),w0([O.intrinsic.nonNegativeIntegerString.internal],U)))),this.flatRefs}isVariadicOnly=this.prevariadic.length+this.postfixLength===0;minVariadicLength=this.inner.minVariadicLength??0;minLength=this.prefixLength+this.minVariadicLength+this.postfixLength;minLengthNode=this.minLength===0?null:this.$.node("minLength",this.minLength);maxLength=this.variadic?null:this.tuple.length;maxLengthNode=this.maxLength===null?null:this.$.node("maxLength",this.maxLength);impliedSiblings=this.minLengthNode?this.maxLengthNode?[this.minLengthNode,this.maxLengthNode]:[this.minLengthNode]:this.maxLengthNode?[this.maxLengthNode]:[];defaultValueMorphs=m5(this);defaultValueMorphsReference=this.defaultValueMorphs.length?d(this.defaultValueMorphs):void 0;elementAtIndex(U,X){if(X<this.prevariadic.length)return this.tuple[X];let q=U.length-this.postfixLength;if(X>=q)return{kind:"postfix",node:this.postfix[X-q]};return{kind:"variadic",node:this.variadic??y(`Unexpected attempt to access index ${X} on ${this}`)}}traverseAllows=(U,X)=>{for(let q=0;q<U.length;q++)if(!this.elementAtIndex(U,q).node.traverseAllows(U[q],X))return!1;return!0};traverseApply=(U,X)=>{let q=0;for(;q<U.length;q++)_0(q,()=>this.elementAtIndex(U,q).node.traverseApply(U[q],X),X)};get element(){return this.cacheGetter("element",this.$.node("union",this.children))}compile(U){if(this.prefix)for(let[X,q]of this.prefix.entries())U.traverseKey(`${X}`,`data[${X}]`,q);for(let[X,q]of this.defaultablesAndOptionals.entries()){let Z=`${X+this.prefixLength}`;U.if(`${Z} >= data.length`,()=>U.traversalKind==="Allows"?U.return(!0):U.return()),U.traverseKey(Z,`data[${Z}]`,q)}if(this.variadic){if(this.postfix)U.const("firstPostfixIndex",`data.length${this.postfix?`- ${this.postfix.length}`:""}`);if(U.for(`i < ${this.postfix?"firstPostfixIndex":"data.length"}`,()=>U.traverseKey("i","data[i]",this.variadic),this.prevariadic.length),this.postfix)for(let[X,q]of this.postfix.entries()){let Z=`firstPostfixIndex + ${X}`;U.traverseKey(Z,`data[${Z}]`,q)}}if(U.traversalKind==="Allows")U.return(!0)}_transform(U,X){X.path.push(O.intrinsic.nonNegativeIntegerString.internal);let q=super._transform(U,X);return X.path.pop(),q}expression=this.description;reduceJsonSchema(U,X){let q=X.target==="draft-07";if(this.prevariadic.length){let Z=this.prevariadic.map((Q)=>{let G=Q.node.toJsonSchemaRecurse(X);if(Q.kind==="defaultables"){let Y=typeof Q.default==="function"?Q.default():Q.default;G.default=O.intrinsic.jsonData.allows(Y)?Y:X.fallback.defaultValue({code:"defaultValue",base:G,value:Y})}return G});if(q)U.items=Z;else U.prefixItems=Z}if(this.minLength)U.minItems=this.minLength;if(this.variadic){let Z=this.variadic.toJsonSchemaRecurse(X);if(q&&this.prevariadic.length)U.additionalItems=Z;else U.items=Z;if(this.maxLength)U.maxItems=this.maxLength;if(this.postfix){let Q=this.postfix.map((G)=>G.toJsonSchemaRecurse(X));U=X.fallback.arrayPostfix({code:"arrayPostfix",base:U,elements:Q})}}else{if(q)U.additionalItems=!1;else U.items=!1;delete U.maxItems}return U}}var u5={},m5=(U)=>{if(!U.defaultables)return[];let X=[],q="[",Z=U.prefixLength+U.defaultablesLength-1;for(let Q=U.prefixLength;Q<=Z;Q++){let[G,Y]=U.defaultables[Q-U.prefixLength];X.push(z4(Q,G,Y)),q+=`${Q}: ${G.id} = ${A0(Y)}, `}return q+="]",u5[q]??=X},D4={implementation:x5,Node:oq},p5=(U)=>{let X=[];if(U.prefix)for(let q of U.prefix)X.push({kind:"prefix",node:q});if(U.defaultables)for(let[q,Z]of U.defaultables)X.push({kind:"defaultables",node:q,default:Z});if(U.optionals)for(let q of U.optionals)X.push({kind:"optionals",node:q});if(U.variadic)X.push({kind:"variadic",node:U.variadic});if(U.postfix)for(let q of U.postfix)X.push({kind:"postfix",node:q});return X},iq=(U)=>U.reduce((X,q)=>{if(q.kind==="variadic")X.variadic=q.node;else if(q.kind==="defaultables")X.defaultables=g(X.defaultables,[[q.node,q.default]]);else X[q.kind]=g(X[q.kind],q.node);return X},{}),M4="A postfix required element cannot follow an optional or defaultable element",l5="A postfix element requires a variadic element",C2=(U)=>{let[X,...q]=U.l,[Z,...Q]=U.r;if(!X||!Z)return U;let G=q[q.length-1]?.kind==="postfix",Y=Q[Q.length-1]?.kind==="postfix",J=X.kind==="prefix"||Z.kind==="prefix"?"prefix":X.kind==="postfix"||Z.kind==="postfix"?"postfix":X.kind==="variadic"&&Z.kind==="variadic"?"variadic":G||Y?"prefix":X.kind==="defaultables"||Z.kind==="defaultables"?"defaultables":"optionals";if(X.kind==="prefix"&&Z.kind==="variadic"&&Y){let _=C2({...U,fixedVariants:[],r:Q.map((L)=>({...L,kind:"prefix"}))});if(_.disjoint.length===0)U.fixedVariants.push(_)}else if(Z.kind==="prefix"&&X.kind==="variadic"&&G){let _=C2({...U,fixedVariants:[],l:q.map((L)=>({...L,kind:"prefix"}))});if(_.disjoint.length===0)U.fixedVariants.push(_)}let H=u(X.node,Z.node,U.ctx);if(H instanceof B)if(J==="prefix"||J==="postfix")U.disjoint.push(...H.withPrefixKey(J==="prefix"?U.result.length:`-${q.length+1}`,sq(X)&&sq(Z)?"required":"optional")),U.result=[...U.result,{kind:J,node:O.intrinsic.never.internal}];else if(J==="optionals"||J==="defaultables")return U;else return C2({...U,fixedVariants:[],l:q.map((_)=>({..._,kind:"prefix"})),r:q.map((_)=>({..._,kind:"prefix"}))});else if(J==="defaultables"){if(X.kind==="defaultables"&&Z.kind==="defaultables"&&X.default!==Z.default)F(L4(X.default,Z.default));U.result=[...U.result,{kind:J,node:H,default:X.kind==="defaultables"?X.default:Z.kind==="defaultables"?Z.default:y(`Unexpected defaultable intersection from ${X.kind} and ${Z.kind} elements.`)}]}else U.result=[...U.result,{kind:J,node:H}];let W=U.l.length,$=U.r.length;if(X.kind!=="variadic"||W>=$&&(Z.kind==="variadic"||$===1))U.l=q;if(Z.kind!=="variadic"||$>=W&&(X.kind==="variadic"||W===1))U.r=Q;return C2(U)},sq=(U)=>U.kind==="prefix"||U.kind==="postfix";var tq=(U)=>(X)=>{if(X.props.length||X.index){let q=X.index?.map((Q)=>Q[U])??[];for(let Q of X.props)q.push(Q[U]);if(X.undeclared)q.push(`+ (undeclared): ${X.undeclared}`);let Z=`{ ${q.join(", ")} }`;return X.sequence?`${Z} & ${X.sequence.description}`:Z}return X.sequence?.description??"{}"},d5=tq("description"),c5=tq("expression"),rq=(U,X,q)=>{let Z=U.required?"required":"optional";if(!X.signature.allows(U.key))return null;let Q=$0(U.value,X.value,q);if(Q instanceof B)return Z==="optional"?q.node("optional",{key:U.key,value:O.intrinsic.never.internal}):Q.withPrefixKey(U.key,U.kind);return null},i5=j({kind:"structure",hasAssociatedError:!1,normalize:(U)=>U,applyConfig:(U,X)=>{if(!U.undeclared&&X.onUndeclaredKey!=="ignore")return{...U,undeclared:X.onUndeclaredKey};return U},keys:{required:{child:!0,parse:q0("required"),reduceIo:(U,X,q)=>{X.required=g(X.required,q.map((Z)=>U==="in"?Z.rawIn:Z.rawOut));return}},optional:{child:!0,parse:q0("optional"),reduceIo:(U,X,q)=>{if(U==="in"){X.optional=q.map((Z)=>Z.rawIn);return}for(let Z of q)X[Z.outProp.kind]=g(X[Z.outProp.kind],Z.outProp.rawOut)}},index:{child:!0,parse:q0("index")},sequence:{child:!0,parse:q0("sequence")},undeclared:{parse:(U)=>U==="ignore"?void 0:U,reduceIo:(U,X,q)=>{if(q==="reject"){X.undeclared="reject";return}if(U==="in")delete X.undeclared;else X.undeclared="reject"}}},defaults:{description:d5},intersections:{structure:(U,X,q)=>{let Z={...U.inner},Q={...X.inner},G=new B;if(U.undeclared){let H=U.keyof();for(let W of X.requiredKeys)if(!H.allows(W))G.add("presence",O.intrinsic.never.internal,X.propsByKey[W].value,{path:[W]});if(Q.optional)Q.optional=Q.optional.filter((W)=>H.allows(W.key));if(Q.index)Q.index=Q.index.flatMap((W)=>{if(W.signature.extends(H))return W;let $=$0(H,W.signature,q.$);if($ instanceof B)return[];let _=w6($,W.value,q.$);if(_.required)Q.required=g0(Q.required,_.required);if(_.optional)Q.optional=g0(Q.optional,_.optional);return _.index??[]})}if(X.undeclared){let H=X.keyof();for(let W of U.requiredKeys)if(!H.allows(W))G.add("presence",U.propsByKey[W].value,O.intrinsic.never.internal,{path:[W]});if(Z.optional)Z.optional=Z.optional.filter((W)=>H.allows(W.key));if(Z.index)Z.index=Z.index.flatMap((W)=>{if(W.signature.extends(H))return W;let $=$0(H,W.signature,q.$);if($ instanceof B)return[];let _=w6($,W.value,q.$);if(_.required)Z.required=g0(Z.required,_.required);if(_.optional)Z.optional=g0(Z.optional,_.optional);return _.index??[]})}let Y={};if(U.undeclared||X.undeclared)Y.undeclared=U.undeclared==="reject"||X.undeclared==="reject"?"reject":"delete";let J=b1({kind:"structure",baseInner:Y,l:f1(Z),r:f1(Q),roots:[],ctx:q});if(J instanceof B)G.push(...J);if(G.length)return G;return J}},reduce:(U,X)=>{if(!U.required&&!U.optional)return;let q={},Z=!1,Q=U.optional?[...U.optional]:[];if(U.required)for(let G=0;G<U.required.length;G++){let Y=U.required[G];if(Y.key in q)F(nq(Y.key));if(q[Y.key]=!0,U.index)for(let J of U.index){let H=rq(Y,J,X);if(H instanceof B)return H}}if(U.optional)for(let G=0;G<U.optional.length;G++){let Y=U.optional[G];if(Y.key in q)F(nq(Y.key));if(q[Y.key]=!0,U.index)for(let J of U.index){let H=rq(Y,J,X);if(H instanceof B)return H;if(H!==null)Q[G]=H,Z=!0}}if(Z)return X.node("structure",{...U,optional:Q},{prereduced:!0})}});class eq extends O0{impliedBasis=O.intrinsic.object.internal;impliedSiblings=this.children.flatMap((U)=>U.impliedSiblings??[]);props=g0(this.required,this.optional);propsByKey=S(this.props,(U,X)=>[X.key,X]);propsByKeyReference=d(this.propsByKey);expression=c5(this);requiredKeys=this.required?.map((U)=>U.key)??[];optionalKeys=this.optional?.map((U)=>U.key)??[];literalKeys=[...this.requiredKeys,...this.optionalKeys];_keyof;keyof(){if(this._keyof)return this._keyof;let U=this.$.units(this.literalKeys).branches;if(this.index)for(let{signature:X}of this.index)U=U.concat(X.branches);return this._keyof=this.$.node("union",U)}map(U){return this.$.node("structure",this.props.flatMap(U).reduce((X,q)=>{let Z=this.propsByKey[q.key];if(x(q)){if(q.kind!=="required"&&q.kind!=="optional")return F(`Map result must have kind "required" or "optional" (was ${q.kind})`);return X[q.kind]=g(X[q.kind],q),X}let Q=q.kind??Z?.kind??"required",G=S(q,(Y,J)=>(Y in P2.implementation.keys)?[Y,J]:[]);return X[Q]=g(X[Q],this.$.node(Q,G)),X},{}))}assertHasKeys(U){let X=U.filter((q)=>!I2(q,this.keyof()));if(X.length)return F(aq(this.expression,X))}get(U,...X){let q,Z=!1,Q=a5(U);if((typeof Q==="string"||typeof Q==="symbol")&&this.propsByKey[Q])q=this.propsByKey[Q].value,Z=this.propsByKey[Q].required;if(this.index){for(let Y of this.index)if(I2(Q,Y.signature))q=q?.and(Y.value)??Y.value}if(this.sequence&&I2(Q,O.intrinsic.nonNegativeIntegerString))if(M(Q,"root")){if(this.sequence.variadic)q=q?.and(this.sequence.element)??this.sequence.element}else{let Y=Number.parseInt(Q);if(Y<this.sequence.prevariadic.length){let J=this.sequence.prevariadic[Y].node;q=q?.and(J)??J,Z||=Y<this.sequence.prefixLength}else if(this.sequence.variadic){let J=this.$.node("union",this.sequence.variadicOrPostfix);q=q?.and(J)??J}}if(!q){if(this.sequence?.variadic&&M(Q,"root")&&Q.extends(O.intrinsic.number))return F(n5(Q.expression,this.sequence.expression));return F(aq(this.expression,[Q]))}let G=q.get(...X);return Z?G:G.or(O.intrinsic.undefined)}pick(...U){return this.assertHasKeys(U),this.$.node("structure",this.filterKeys("pick",U))}omit(...U){return this.assertHasKeys(U),this.$.node("structure",this.filterKeys("omit",U))}optionalize(){let{required:U,...X}=this.inner;return this.$.node("structure",{...X,optional:this.props.map((q)=>q.hasKind("required")?this.$.node("optional",q.inner):q)})}require(){let{optional:U,...X}=this.inner;return this.$.node("structure",{...X,required:this.props.map((q)=>q.hasKind("optional")?{key:q.key,value:q.value}:q)})}merge(U){let X=this.filterKeys("omit",[U.keyof()]);if(U.required)X.required=g(X.required,U.required);if(U.optional)X.optional=g(X.optional,U.optional);if(U.index)X.index=g(X.index,U.index);if(U.sequence)X.sequence=U.sequence;if(U.undeclared)X.undeclared=U.undeclared;else delete X.undeclared;return this.$.node("structure",X)}filterKeys(U,X){let q=z6(this.inner),Z=(Q)=>{let G=X.some((Y)=>I2(Q,Y));return U==="pick"?G:!G};if(q.required)q.required=q.required.filter((Q)=>Z(Q.key));if(q.optional)q.optional=q.optional.filter((Q)=>Z(Q.key));if(q.index)q.index=q.index.filter((Q)=>Z(Q.signature));return q}traverseAllows=(U,X)=>this._traverse("Allows",U,X);traverseApply=(U,X)=>this._traverse("Apply",U,X);_traverse=(U,X,q)=>{let Z=q?.currentErrorCount??0;for(let Q=0;Q<this.props.length;Q++)if(U==="Allows"){if(!this.props[Q].traverseAllows(X,q))return!1}else if(this.props[Q].traverseApply(X,q),q.failFast&&q.currentErrorCount>Z)return!1;if(this.sequence){if(U==="Allows"){if(!this.sequence.traverseAllows(X,q))return!1}else if(this.sequence.traverseApply(X,q),q.failFast&&q.currentErrorCount>Z)return!1}if(this.index||this.undeclared==="reject"){let Q=Object.keys(X);Q.push(...Object.getOwnPropertySymbols(X));for(let G=0;G<Q.length;G++){let Y=Q[G];if(this.index){for(let J of this.index)if(J.signature.traverseAllows(Y,q)){if(U==="Allows"){if(!_0(Y,()=>J.value.traverseAllows(X[Y],q),q))return!1}else if(_0(Y,()=>J.value.traverseApply(X[Y],q),q),q.failFast&&q.currentErrorCount>Z)return!1}}if(this.undeclared==="reject"&&!this.declaresKey(Y)){if(U==="Allows")return!1;if(q.errorFromNodeContext({code:"predicate",expected:"removed",actual:"",relativePath:[Y],meta:this.meta}),q.failFast)return!1}}}if(this.structuralMorph&&q&&!q.hasError())q.queueMorphs([this.structuralMorph]);return!0};get defaultable(){return this.cacheGetter("defaultable",this.optional?.filter((U)=>U.hasDefault())??[])}declaresKey=(U)=>(U in this.propsByKey)||this.index?.some((X)=>X.signature.allows(U))||this.sequence!==void 0&&O.intrinsic.nonNegativeIntegerString.allows(U);_compileDeclaresKey(U){let X=[];if(this.props.length)X.push(`k in ${this.propsByKeyReference}`);if(this.index)for(let q of this.index)X.push(U.invoke(q.signature,{kind:"Allows",arg:"k"}));if(this.sequence)X.push("$ark.intrinsic.nonNegativeIntegerString.allows(k)");return X.join(" || ")||"false"}get structuralMorph(){return this.cacheGetter("structuralMorph",o5(this))}structuralMorphRef=this.structuralMorph&&d(this.structuralMorph);compile(U){if(U.traversalKind==="Apply")U.initializeErrorCount();for(let X of this.props)if(U.check(X),U.traversalKind==="Apply")U.returnIfFailFast();if(this.sequence){if(U.check(this.sequence),U.traversalKind==="Apply")U.returnIfFailFast()}if(this.index||this.undeclared==="reject")U.const("keys","Object.keys(data)"),U.line("keys.push(...Object.getOwnPropertySymbols(data))"),U.for("i < keys.length",()=>this.compileExhaustiveEntry(U));if(U.traversalKind==="Allows")return U.return(!0);if(this.structuralMorphRef)U.if("ctx && !ctx.hasError()",()=>{return U.line("ctx.queueMorphs(["),r5(U,this),U.line("])")})}compileExhaustiveEntry(U){if(U.const("k","keys[i]"),this.index)for(let X of this.index)U.if(`${U.invoke(X.signature,{arg:"k",kind:"Allows"})}`,()=>U.traverseKey("k","data[k]",X.value));if(this.undeclared==="reject")U.if(`!(${this._compileDeclaresKey(U)})`,()=>{if(U.traversalKind==="Allows")return U.return(!1);return U.line(`ctx.errorFromNodeContext({ code: "predicate", expected: "removed", actual: "", relativePath: [k], meta: ${this.compiledMeta} })`).if("ctx.failFast",()=>U.return())});return U}reduceJsonSchema(U,X){switch(U.type){case"object":return this.reduceObjectJsonSchema(U,X);case"array":let q=this.sequence?.reduceJsonSchema(U,X)??U;if(this.props.length||this.index)return X.fallback.arrayObject({code:"arrayObject",base:q,object:this.reduceObjectJsonSchema({type:"object"},X)});return q;default:return p.throwInternalOperandError("structure",U)}}reduceObjectJsonSchema(U,X){if(this.props.length){U.properties={};for(let q of this.props){let Z=q.value.toJsonSchemaRecurse(X);if(typeof q.key==="symbol"){X.fallback.symbolKey({code:"symbolKey",base:U,key:q.key,value:Z,optional:q.optional});continue}if(q.hasDefault()){let Q=typeof q.default==="function"?q.default():q.default;Z.default=O.intrinsic.jsonData.allows(Q)?Q:X.fallback.defaultValue({code:"defaultValue",base:Z,value:Q})}U.properties[q.key]=Z}if(this.requiredKeys.length&&U.properties)U.required=this.requiredKeys.filter((q)=>typeof q==="string"&&(q in U.properties))}if(this.index)for(let q of this.index){let Z=q.value.toJsonSchemaRecurse(X);if(q.signature.equals(O.intrinsic.string)){U.additionalProperties=Z;continue}for(let Q of q.signature.branches){if(!Q.extends(O.intrinsic.string)){U=X.fallback.symbolKey({code:"symbolKey",base:U,key:null,value:Z,optional:!1});continue}let G={type:"string"};if(Q.hasKind("morph"))G=X.fallback.morph({code:"morph",base:Q.rawIn.toJsonSchemaRecurse(X),out:Q.rawOut.toJsonSchemaRecurse(X)});if(!Q.hasKind("intersection"))return y(`Unexpected index branch kind ${Q.kind}.`);let{pattern:Y}=Q.inner;if(Y){let J=Object.assign(G,{pattern:Y[0].rule});for(let H=1;H<Y.length;H++)G=X.fallback.patternIntersection({code:"patternIntersection",base:J,pattern:Y[H].rule});U.patternProperties??={},U.patternProperties[J.pattern]=Z}}}if(this.undeclared&&!U.additionalProperties)U.additionalProperties=!1;return U}}var P4={},s5=(U)=>{let X="";for(let q=0;q<U.defaultable.length;q++)X+=U.defaultable[q].defaultValueMorphRef;if(U.sequence?.defaultValueMorphsReference)X+=U.sequence?.defaultValueMorphsReference;if(U.undeclared==="delete"){if(X+="delete !(",U.required)for(let q of U.required)X+=q.compiledKey+" | ";if(U.optional)for(let q of U.optional)X+=q.compiledKey+" | ";if(U.index)for(let q of U.index)X+=q.signature.id+" | ";if(U.sequence)if(U.sequence.maxLength===null)X+=I.nonNegativeIntegerString.id;else for(let q=0;q<U.sequence.tuple.length;q++)X+=q+" | ";X+=")"}return X},o5=(U)=>{let X=s5(U);if(!X)return;if(P4[X])return P4[X];let q=(Z,Q)=>{for(let G=0;G<U.defaultable.length;G++)if(!(U.defaultable[G].key in Z))U.defaultable[G].defaultValueMorph(Z,Q);if(U.sequence?.defaultables)for(let G=Z.length-U.sequence.prefixLength;G<U.sequence.defaultables.length;G++)U.sequence.defaultValueMorphs[G](Z,Q);if(U.undeclared==="delete"){for(let G in Z)if(!U.declaresKey(G))delete Z[G]}return Z};return P4[X]=q},r5=(U,X)=>{let Z=`(data${X.defaultable.some((Q)=>Q.defaultValueMorph.length===2)||X.sequence?.defaultValueMorphs.some((Q)=>Q.length===2)?", ctx":""})`;return U.block(`${Z} => `,(Q)=>{for(let G=0;G<X.defaultable.length;G++){let{serializedKey:Y,defaultValueMorphRef:J}=X.defaultable[G];Q.if(`!(${Y} in data)`,(H)=>H.line(`${J}${Z}`))}if(X.sequence?.defaultables)Q.for(`i < ${X.sequence.defaultables.length}`,(G)=>G.set("data[i]",5),`data.length - ${X.sequence.prefixLength}`);if(X.undeclared==="delete")Q.forIn("data",(G)=>G.if(`!(${X._compileDeclaresKey(G)})`,(Y)=>Y.line("delete data[k]")));return Q.return("data")})},w4={implementation:i5,Node:eq},a5=(U)=>{if(M(U,"root")&&U.hasKind("unit"))U=U.unit;if(typeof U==="number")U=`${U}`;return U},n5=(U,X)=>`${U} is not allowed as an array index on ${X}. Use the 'nonNegativeIntegerString' keyword instead.`,w6=(U,X,q)=>{let[Z,Q]=AX(U.branches,(Y)=>Y.hasKind("unit"));if(!Z.length)return{index:q.node("index",{signature:U,value:X})};let G={};for(let Y of Z){let J=q.node("required",{key:Y.unit,value:X});G[J.kind]=g(G[J.kind],J)}if(Q.length)G.index=q.node("index",{signature:Q,value:X});return G},t5=(U)=>M(U,"root")?U.expression:E(U),aq=(U,X)=>`Key${X.length===1?"":"s"} ${X.map(t5).join(", ")} ${X.length===1?"does":"do"} not exist on ${U}`,nq=(U)=>`Duplicate key ${M0(U)}`;var y1={...Tq,alias:K2.implementation,domain:P6.implementation,unit:B4.implementation,proto:N2.implementation,union:V4.implementation,morph:A4.implementation,intersection:F4.implementation,divisor:U4.implementation,pattern:H4.implementation,predicate:eU.implementation,required:R4.implementation,optional:P2.implementation,index:T4.implementation,sequence:D4.implementation,structure:w4.implementation};O.defaultConfig=wX(Object.assign(S(y1,(U,X)=>[U,X.defaults]),{jitless:EX(),clone:NX,onUndeclaredKey:"ignore",exactOptionalPropertyTypes:!0,numberAllowsNaN:!1,dateAllowsInvalid:!1,onFail:null,keywords:{},toJsonSchema:p.defaultConfig}));O.resolvedConfig=O2(O.defaultConfig,O.config);var Iq={...Rq,alias:K2.Node,domain:P6.Node,unit:B4.Node,proto:N2.Node,union:V4.Node,morph:A4.Node,intersection:F4.Node,divisor:U4.Node,pattern:H4.Node,predicate:eU.Node,required:R4.Node,optional:P2.Node,index:T4.Node,sequence:D4.Node,structure:w4.Node};class h1 extends gU{get[Z0](){return"module"}}var I4=(U,X)=>new h1(S(U,(q,Z)=>[q,M(Z,"module")?I4(Z,X):X.bindReference(Z)]));var e5=(U)=>h(U)?U:("branches"in U)&&h(U.branches)?U.branches:void 0,UY=(U,X)=>F(`Node of kind ${X} is not valid as a ${U} definition`),UZ=(U)=>`#${U} duplicates public alias ${U}`,K4={};O.ambient??={};var XZ,ZZ="function $",XY=(U)=>QZ(U,GZ(U)),QZ=(U,X)=>{let q=X.write(ZZ,4),Z=X.compile()();for(let Q of U){if(Q.precompilation)continue;if(Q.traverseAllows=Z[`${Q.id}Allows`].bind(Z),Q.isRoot()&&!Q.allowsRequiresContext)Q.allows=Q.traverseAllows;if(Q.traverseApply=Z[`${Q.id}Apply`].bind(Z),Z[`${Q.id}Optimistic`])Q.traverseOptimistic=Z[`${Q.id}Optimistic`].bind(Z);Q.precompilation=q}},GZ=(U)=>new L6().return(U.reduce((X,q)=>{let Z=new A2({kind:"Allows"}).indent();q.compile(Z);let Q=Z.write(`${q.id}Allows`),G=new A2({kind:"Apply"}).indent();q.compile(G);let Y=G.write(`${q.id}Apply`),J=`${X}${Q},
180
180
  ${Y},
181
181
  `;if(!q.hasKind("union"))return J;let H=new A2({kind:"Allows",optimistic:!0}).indent();q.compile(H);let W=H.write(`${q.id}Optimistic`);return`${J}${W},
182
182
  `},`{
183
- `)+"}");class I6{config;resolvedConfig;name;get[q0](){return"scope"}referencesById={};references=[];resolutions={};exportedNames=[];aliases={};resolved=!1;nodesByHash={};intrinsic;constructor(U,X){if(this.config=V2(V.config,X),this.resolvedConfig=V2(V.resolvedConfig,X),this.name=this.resolvedConfig.name??`anonymousScope${Object.keys(N4).length}`,this.name in N4)F(`A Scope already named ${this.name} already exists`);N4[this.name]=this;let q=Object.entries(U).map((Z)=>this.preparseOwnAliasEntry(...Z));for(let[Z,Q]of q){let G=Z;if(Z[0]==="#"){if(G=Z.slice(1),G in this.aliases)F(XZ(G));this.aliases[G]=Q}else{if(G in this.aliases)F(XZ(Z));this.aliases[G]=Q,this.exportedNames.push(G)}if(!M(Q,"module")&&!M(Q,"generic")&&!d0(Q)){let Y=this.preparseOwnDefinitionFormat(Q,{alias:G});this.resolutions[G]=M(Y,"root")?this.bindReference(Y):this.createParseContext(Y).id}}qZ??=this.node("union",{branches:["string","number","object","bigint","symbol",{unit:!0},{unit:!1},{unit:void 0},{unit:null}]},{prereduced:!0}),this.nodesByHash[qZ.hash]=this.node("intersection",{},{prereduced:!0}),this.intrinsic=V.intrinsic?S(V.intrinsic,(Z,Q)=>Z.startsWith("json")?[]:[Z,this.bindReference(Q)]):{}}cacheGetter(U,X){return Object.defineProperty(this,U,{value:X}),X}get internal(){return this}_json;get json(){if(!this._json)this.export();return this._json}defineSchema(U){return U}generic=(...U)=>{let X=this;return(q,Z)=>new r0(U,Z?new O6(q):q,X,X,Z??null)};units=(U,X)=>{let q=[];for(let Q of U)if(!q.includes(Q))q.push(Q);let Z=q.map((Q)=>this.node("unit",{unit:Q},X));return this.node("union",Z,{...X,prereduced:!0})};lazyResolutions=[];lazilyResolve(U,X){let q=this.node("alias",{reference:X??"synthetic",resolve:U},{prereduced:!0});if(!this.resolved)this.lazyResolutions.push(q);return q}schema=(U,X)=>this.finalize(this.parseSchema(U,X));parseSchema=(U,X)=>this.node(D2(U),U,X);preparseNode(U,X,q){let Z=typeof U==="string"?U:D2(X,U);if(h(X)&&X.kind===Z)return X;if(Z==="alias"&&!q?.prereduced){let{reference:Y}=K2.implementation.normalize(X,this);if(Y.startsWith("$")){let J=this.resolveRoot(Y.slice(1));X=J,Z=J.kind}}else if(Z==="union"&&Q0(X,"object")){let Y=e5(X);if(Y?.length===1)X=Y[0],Z=D2(X)}if(h(X)&&X.kind===Z)return X;let G=g1[Z].normalize?.(X,this)??X;if(h(G))return G.kind===Z?G:UY(Z,G.kind);return{...q,$:this,kind:Z,def:G,prefix:q.alias??Z}}bindReference(U){let X;if(h(U))X=U.$===this?U:new U.constructor(U.attachments,this);else X=U.$===this?U:new r0(U.params,U.bodyDef,U.$,this,U.hkt);if(!this.resolved)Object.assign(this.referencesById,X.referencesById);return X}resolveRoot(U){return this.maybeResolveRoot(U)??F(E4(U))}maybeResolveRoot(U){let X=this.maybeResolve(U);if(M(X,"generic"))return;return X}maybeResolveSubalias(U){return C4(this.aliases,U)??C4(this.ambient,U)}get ambient(){return V.ambient}maybeResolve(U){let X=this.resolutions[U];if(X){if(typeof X!=="string")return this.bindReference(X);let Z=Z0[X];if(M(Z,"root"))return this.resolutions[U]=Z;if(M(Z,"context")){if(Z.phase==="resolving")return this.node("alias",{reference:`$${U}`},{prereduced:!0});if(Z.phase==="resolved")return y(`Unexpected resolved context for was uncached by its scope: ${E(Z)}`);Z.phase="resolving";let Q=this.bindReference(this.parseOwnDefinitionFormat(Z.def,Z));return Z.phase="resolved",Z0[Q.id]=Q,Z0[Z.id]=Q,this.resolutions[U]=Q}return y(`Unexpected nodesById entry for ${X}: ${E(Z)}`)}let q=this.aliases[U]??this.ambient?.[U];if(!q)return this.maybeResolveSubalias(U);if(q=this.normalizeRootScopeValue(q),M(q,"generic"))return this.resolutions[U]=this.bindReference(q);if(M(q,"module")){if(!q.root)F(WZ(U));return this.resolutions[U]=this.bindReference(q.root)}return this.resolutions[U]=this.parse(q,{alias:U})}createParseContext(U){let X=U.id??_4(U.prefix);return Z0[X]=Object.assign(U,{[q0]:"context",$:this,id:X,phase:"unresolved"})}traversal(U){return new P0(U,this.resolvedConfig)}import(...U){return new v1(S(this.export(...U),(X,q)=>[`#${X}`,q]))}precompilation;_exportedResolutions;_exports;export(...U){if(!this._exports){this._exports={};for(let q of this.exportedNames){let Z=this.aliases[q];this._exports[q]=M(Z,"module")?K4(Z,this):ZZ(this.maybeResolve(q))}for(let q of this.lazyResolutions)q.resolution;if(this._exportedResolutions=HZ(this,this._exports),this._json=JZ(this._exportedResolutions),Object.assign(this.resolutions,this._exportedResolutions),this.references=Object.values(this.referencesById),!this.resolvedConfig.jitless){let q=YZ(this.references);this.precompilation=q.write(QZ,4),GZ(this.references,q)}this.resolved=!0}let X=U.length?U:this.exportedNames;return new v1(S(X,(q,Z)=>[Z,this._exports[Z]]))}resolve(U){return this.export()[U]}node=(U,X,q={})=>{let Z=this.preparseNode(U,X,q);if(h(Z))return this.bindReference(Z);let Q=this.createParseContext(Z),G=$4(Q),Y=this.bindReference(G);return Z0[Q.id]=Y};parse=(U,X={})=>this.finalize(this.parseDefinition(U,X));parseDefinition(U,X={}){if(M(U,"root"))return this.bindReference(U);let q=this.preparseOwnDefinitionFormat(U,X);if(M(q,"root"))return this.bindReference(q);let Z=this.createParseContext(q);Z0[Z.id]=Z;let Q=this.bindReference(this.parseOwnDefinitionFormat(U,Z));if(Q.isCyclic)Q=Iq(Q,Z.id);return Z0[Z.id]=Q,Q}finalize(U){if(ZZ(U),!U.precompilation&&!this.resolvedConfig.jitless)XY(U.references);return U}}class S4 extends I6{parseOwnDefinitionFormat(U,X){return $4(X)}preparseOwnDefinitionFormat(U,X){return this.preparseNode(D2(U),U,X)}preparseOwnAliasEntry(U,X){return[U,X]}normalizeRootScopeValue(U){return U}}var ZZ=(U)=>{let X=U.references.filter((q)=>q.hasKind("alias"));for(let q of X){Object.assign(q.referencesById,q.resolution.referencesById);for(let Z of U.references)if(q.id in Z.referencesById)Object.assign(Z.referencesById,q.referencesById)}return U},JZ=(U)=>S(U,(X,q)=>[X,M(q,"root")||M(q,"generic")?q.json:M(q,"module")?JZ(q):y(`Unexpected resolution ${E(q)}`)]),C4=(U,X)=>{let q=X.indexOf(".");if(q===-1)return;let Z=X.slice(0,q),Q=U[Z];if(Q===void 0)return;if(!M(Q,"module"))return F(qY(Z));let G=X.slice(q+1),Y=Q[G];if(Y===void 0)return C4(Q,G);if(M(Y,"root")||M(Y,"generic"))return Y;if(M(Y,"module"))return Y.root??F(WZ(X));y(`Unexpected resolution for alias '${X}': ${E(Y)}`)},K6=(U,X)=>new S4(U,X),S2=new S4({});var HZ=(U,X)=>{let q={};for(let Z in X){let Q=X[Z];if(M(Q,"module")){let G=HZ(U,Q),Y=S(G,(J,H)=>[`${Z}.${J}`,H]);Object.assign(q,Y)}else if(M(Q,"root")||M(Q,"generic"))q[Z]=Q;else y(`Unexpected scope resolution ${E(Q)}`)}return q},E4=(U)=>`'${U}' is unresolvable`,qY=(U)=>`'${U}' must reference a module to be accessed using dot syntax`,WZ=(U)=>`Reference to submodule '${U}' must specify an alias`;S2.export();var{schema:v,node:x1,defineSchema:fP,generic:O0}=S2;var j4="^(?:0|[1-9]\\d*)$",ZY=new RegExp(j4),kP=d(ZY);var _Z=K6({bigint:"bigint",boolean:[{unit:!1},{unit:!0}],false:{unit:!1},never:[],null:{unit:null},number:"number",object:"object",string:"string",symbol:"symbol",true:{unit:!0},unknown:{},undefined:{unit:void 0},Array,Date},{prereducedAliases:!0}).export();V.intrinsic={..._Z};var $Z=K6({integer:{domain:"number",divisor:1},lengthBoundable:["string",Array],key:["string","symbol"],nonNegativeIntegerString:{domain:"string",pattern:j4}},{prereducedAliases:!0}).export();Object.assign(V.intrinsic,$Z);var QY=K6({jsonPrimitive:["string","number",{unit:!0},{unit:!1},{unit:null}],jsonObject:{domain:"object",index:{signature:"string",value:"$jsonData"}},jsonData:["$jsonPrimitive","$jsonObject"]},{prereducedAliases:!0}).export(),I={..._Z,...$Z,...QY,emptyStructure:x1("structure",{},{prereduced:!0})};V.intrinsic={...I};var N6=(U,X)=>new RegExp(U,X);Object.assign(N6,{as:N6});var zZ=(U)=>typeof U==="string"&&U[0]==="d"&&(U[1]==="'"||U[1]==='"')&&U[U.length-1]===U[1],LZ=(U)=>U.toString()!=="Invalid Date",FZ=(U)=>U.slice(2,-1),b4=(U)=>`'${U}' could not be parsed by the Date constructor`,AZ=(U,X)=>GY(U,X),GY=(U,X)=>{let q=new Date(U);if(LZ(q))return q;let Z=mX(U);if(Z!==void 0){let Q=new Date(Z);if(LZ(Q))return Q}return X?F(X===!0?b4(U):X):void 0};var YY=v({proto:"Array",sequence:"string",required:{key:"groups",value:["object",{unit:void 0}]}}),C6=(U,X)=>{let q=U.scanner.shiftUntilEscapable(HY[BZ[X]]);if(U.scanner.lookahead==="")return U.error(_Y(q,X));if(U.scanner.shift(),X in OZ){let Z;try{Z=new RegExp(q)}catch(Q){F(String(Q))}if(U.root=U.ctx.$.node("intersection",{domain:"string",pattern:q},{prereduced:!0}),X==="x/")U.root=U.ctx.$.node("morph",{in:U.root,morphs:(Q)=>Z.exec(Q),declaredOut:YY})}else if(a(X,f4))U.root=U.ctx.$.node("unit",{unit:q});else{let Z=AZ(q,b4(q));U.root=U.ctx.$.node("unit",{meta:q,unit:Z})}},f4={"'":1,'"':1},VZ={"/":1,"'":1,'"':1},JY={"d'":"'",'d"':'"',"'":"'",'"':'"'},OZ={"/":"/","x/":"/"},BZ={...JY,...OZ},HY={"'":(U)=>U.lookahead==="'",'"':(U)=>U.lookahead==='"',"/":(U)=>U.lookahead==="/"},WY={'"':"double-quote","'":"single-quote","/":"forward slash"},_Y=(U,X)=>`${X}${U} requires a closing ${WY[BZ[X]]}`;var TZ=(U)=>`Private type references should not include '#'. Use '${U}' instead.`,S6="Optional definitions like 'string?' are only valid as properties in an object or tuple",E6="Defaultable definitions like 'number = 0' are only valid as properties in an object or tuple";var j0={"<":1,">":1,"=":1,"|":1,"&":1,")":1,"[":1,"%":1,",":1,":":1,"?":1,"#":1,...c0};var DZ=(U,X)=>U===">"?X[0]==="="?X[1]==="=":X.trimStart()===""||a(X.trimStart()[0],j0):U==="="?X[0]!=="=":U===","||U==="?";var RZ=(U,X,q)=>MZ(U,X,q,[]),MZ=(U,X,q,Z)=>{let Q=q.parseUntilFinalizer();if(Z.push(Q.root),Q.finalizer===">"){if(Z.length!==X.params.length)return q.error(g4(U,X.names,Z.map((G)=>G.expression)));return Z}if(Q.finalizer===",")return MZ(U,X,q,Z);return Q.error($6(">"))},g4=(U,X,q)=>`${U}<${X.join(", ")}> requires exactly ${X.length} args (got ${q.length}${q.length===0?"":`: ${q.join(", ")}`})`;var j6=(U)=>{let X=U.scanner.shiftUntilLookahead(j0);if(X==="keyof")U.addPrefix("keyof");else U.root=LY(U,X)},$Y=(U,X,q)=>{if(q.scanner.shiftUntilNonWhitespace(),q.scanner.shift()!=="<")return q.error(g4(U,X.names,[]));let Q=RZ(U,X,q);return X(...Q)},LY=(U,X)=>zY(U,X)??FY(U,X)??U.error(X===""?U.scanner.lookahead==="#"?TZ(U.shiftedBy(1).scanner.shiftUntilLookahead(j0)):y4(U):E4(X)),zY=(U,X)=>{if(U.ctx.args?.[X]){let Z=U.ctx.args[X];if(typeof Z!=="string")return Z;return U.ctx.$.node("alias",{reference:Z},{prereduced:!0})}let q=U.ctx.$.maybeResolve(X);if(M(q,"root"))return q;if(q===void 0)return;if(M(q,"generic"))return $Y(X,q,U);return F(`Unexpected resolution ${E(q)}`)},FY=(U,X)=>{let q=pX(X);if(q!==void 0)return U.ctx.$.node("unit",{unit:q});let Z=dX(X);if(Z!==void 0)return U.ctx.$.node("unit",{unit:Z})},y4=(U)=>{let X=U.previousOperator();return X?k4(X,U.scanner.unscanned):AY(U.scanner.unscanned)},k4=(U,X="")=>`Token '${U}' requires a right operand${X?` before '${X}'`:""}`,AY=(U)=>`Expected an expression${U?` before '${U}'`:""}`;var v4=(U)=>U.scanner.lookahead===""?U.error(y4(U)):U.scanner.lookahead==="("?U.shiftedBy(1).reduceGroupOpen():U.scanner.lookaheadIsIn(VZ)?C6(U,U.scanner.shift()):U.scanner.lookaheadIsIn(c0)?v4(U.shiftedBy(1)):U.scanner.lookahead==="d"?U.scanner.nextLookahead in f4?C6(U,`${U.scanner.shift()}${U.scanner.shift()}`):j6(U):U.scanner.lookahead==="x"?U.scanner.nextLookahead==="/"?U.shiftedBy(2)&&C6(U,"x/"):j6(U):j6(U);var PZ={">":!0,">=":!0},wZ={"<":!0,"<=":!0};var h1={"<":">",">":"<","<=":">=",">=":"<=","==":"=="},IZ=(U,X)=>`Left bounds are only valid when paired with right bounds (try ...${X}${U})`,b6=(U)=>`Left-bounded expressions must specify their limits using < or <= (was ${U})`,KZ=(U,X,q,Z)=>`An expression may have at most one left bound (parsed ${U}${h1[X]}, ${q}${h1[Z]})`;var CZ=(U,X)=>{let q=VY(U,X);if(U.root.hasKind("unit")){if(typeof U.root.unit==="number"){U.reduceLeftBound(U.root.unit,q),U.unsetRoot();return}if(U.root.unit instanceof Date){let Z=`d'${U.root.description??U.root.unit.toISOString()}'`;U.unsetRoot(),U.reduceLeftBound(Z,q);return}}return BY(U,q)},SZ={"<":1,">":1,"=":1},VY=(U,X)=>U.scanner.lookaheadIs("=")?`${X}${U.scanner.shift()}`:X;var NZ=(U,X,q,Z)=>{if(q.extends(V.intrinsic.number)){if(typeof X!=="number")return F(x4(U,X,Z));return U==="=="?["min","max"]:U[0]===">"?["min"]:["max"]}if(q.extends(V.intrinsic.lengthBoundable)){if(typeof X!=="number")return F(x4(U,X,Z));return U==="=="?["exactLength"]:U[0]===">"?["minLength"]:["maxLength"]}if(q.extends(V.intrinsic.Date))return U==="=="?["after","before"]:U[0]===">"?["after"]:["before"];return F(Lq(q.expression))},OY=(U)=>({rule:zZ(U.limit)?FZ(U.limit):U.limit,exclusive:U.comparator.length===1}),BY=(U,X)=>{let q=U.unsetRoot(),Z=U.scanner.location;U.parseOperand();let Q=U.unsetRoot(),G=U.scanner.sliceChars(Z,U.scanner.location);if(U.root=q,!Q.hasKind("unit")||typeof Q.unit!=="number"&&!(Q.unit instanceof Date))return U.error(x4(X,G,"right"));let Y=Q.unit,J=X.length===1,H=NZ(X,typeof Y==="number"?Y:G,q,"right");for(let $ of H)U.constrainRoot($,X==="=="?{rule:Y}:{rule:Y,exclusive:J});if(!U.branches.leftBound)return;if(!a(X,wZ))return U.error(b6(X));let W=NZ(U.branches.leftBound.comparator,U.branches.leftBound.limit,q,"left");U.constrainRoot(W[0],OY(U.branches.leftBound)),U.branches.leftBound=null},x4=(U,X,q)=>`Comparator ${q==="left"?h1[U]:U} must be ${q==="left"?"preceded":"followed"} by a corresponding literal (was ${X})`;var EZ=(U)=>{U.scanner.shiftUntilNonWhitespace();let X=U.scanner.shiftUntilLookahead(j0);U.root=U.root.brand(X)};var bZ=(U)=>{U.scanner.shiftUntilNonWhitespace();let X=U.scanner.shiftUntilLookahead(j0),q=lX(X,{errorOnFail:jZ(X)});if(q===0)U.error(jZ(0));U.root=U.root.constrain("divisor",q)},jZ=(U)=>`% operator must be followed by a non-zero integer literal (was ${U})`;var h4=(U)=>{let X=U.scanner.shift();return X===""?U.finalize(""):X==="["?U.scanner.shift()==="]"?U.setRoot(U.root.array()):U.error(TY):X==="|"?U.scanner.lookahead===">"?U.shiftedBy(1).pushRootToBranch("|>"):U.pushRootToBranch(X):X==="&"?U.pushRootToBranch(X):X===")"?U.finalizeGroup():DZ(X,U.scanner.unscanned)?U.finalize(X):a(X,SZ)?CZ(U,X):X==="%"?bZ(U):X==="#"?EZ(U):(X in c0)?h4(U):U.error(f6(X))},f6=(U,X="")=>`'${U}' is not allowed here${X&&` (should be ${X})`}`,TY="Missing expected ']'";var fZ=(U)=>{let X=U.unsetRoot();U.parseOperand();let q=U.unsetRoot();if(!q.hasKind("unit"))return U.error(DY(q.expression));let Z=q.unit instanceof Date?()=>new Date(q.unit):q.unit;return[X,"=",Z]},DY=(U)=>`Default value '${U}' must be a literal value`;var u4=(U,X)=>{let q=X.$.maybeResolveRoot(U);if(q)return q;if(U.endsWith("[]")){let G=X.$.maybeResolveRoot(U.slice(0,-2));if(G)return G.array()}let Z=new u1(new F2(U),X),Q=RY(Z);if(Z.finalizer===">")F(f6(">"));return Q},RY=(U)=>{U.parseOperand();let X=E2(U).root;if(!X)return y(`Root was unexpectedly unset after parsing string '${U.scanner.scanned}'`);if(U.finalizer==="=")X=fZ(U);else if(U.finalizer==="?")X=[X,"?"];if(U.scanner.shiftUntilNonWhitespace(),U.scanner.lookahead)F(f6(U.scanner.lookahead));return X},E2=(U)=>{while(U.finalizer===void 0)MY(U);return U},MY=(U)=>U.hasRoot()?U.parseOperator():U.parseOperand();class u1{root;branches={prefixes:[],leftBound:null,intersection:null,union:null,pipe:null};finalizer;groups=[];scanner;ctx;constructor(U,X){this.scanner=U,this.ctx=X}error(U){return F(U)}hasRoot(){return this.root!==void 0}setRoot(U){this.root=U}unsetRoot(){let U=this.root;return this.root=void 0,U}constrainRoot(...U){this.root=this.root.constrain(U[0],U[1])}finalize(U){if(this.groups.length)return this.error($6(")"));this.finalizeBranches(),this.finalizer=U}reduceLeftBound(U,X){let q=h1[X];if(!a(q,PZ))return this.error(b6(X));if(this.branches.leftBound)return this.error(KZ(this.branches.leftBound.limit,this.branches.leftBound.comparator,U,q));this.branches.leftBound={comparator:q,limit:U}}finalizeBranches(){if(this.assertRangeUnset(),this.branches.pipe){this.pushRootToBranch("|>"),this.root=this.branches.pipe;return}if(this.branches.union){this.pushRootToBranch("|"),this.root=this.branches.union;return}if(this.branches.intersection){this.pushRootToBranch("&"),this.root=this.branches.intersection;return}this.applyPrefixes()}finalizeGroup(){this.finalizeBranches();let U=this.groups.pop();if(!U)return this.error(oX(")",this.scanner.unscanned));this.branches=U}addPrefix(U){this.branches.prefixes.push(U)}applyPrefixes(){while(this.branches.prefixes.length){let U=this.branches.prefixes.pop();this.root=U==="keyof"?this.root.keyof():y(`Unexpected prefix '${U}'`)}}pushRootToBranch(U){this.assertRangeUnset(),this.applyPrefixes();let X=this.root;if(this.root=void 0,this.branches.intersection=this.branches.intersection?.rawAnd(X)??X,U==="&")return;if(this.branches.union=this.branches.union?.rawOr(this.branches.intersection)??this.branches.intersection,this.branches.intersection=null,U==="|")return;this.branches.pipe=this.branches.pipe?.rawPipeOnce(this.branches.union)??this.branches.union,this.branches.union=null}parseUntilFinalizer(){return E2(new u1(this.scanner,this.ctx))}parseOperator(){return h4(this)}parseOperand(){return v4(this)}assertRangeUnset(){if(this.branches.leftBound)return this.error(IZ(this.branches.leftBound.limit,this.branches.leftBound.comparator))}reduceGroupOpen(){this.groups.push(this.branches),this.branches={prefixes:[],leftBound:null,union:null,intersection:null,pipe:null}}previousOperator(){return this.branches.leftBound?.comparator??this.branches.prefixes[this.branches.prefixes.length-1]??(this.branches.intersection?"&":this.branches.union?"|":this.branches.pipe?"|>":void 0)}shiftedBy(U){return this.scanner.jumpForward(U),this}}var PY="An empty string is not a valid generic parameter name",g6=(U,X,q)=>{U.shiftUntilNonWhitespace();let Z=U.shiftUntilLookahead(j0);if(Z===""){if(U.lookahead===""&&X.length)return X;return F(PY)}return U.shiftUntilNonWhitespace(),wY(U,Z,X,q)},gZ="extends ",wY=(U,X,q,Z)=>{if(U.shiftUntilNonWhitespace(),U.unscanned.startsWith(gZ))U.jumpForward(gZ.length);else{if(U.lookahead===",")U.shift();return q.push(X),g6(U,q,Z)}let Q=E2(new u1(U,Z));return q.push([X,Q.root]),g6(U,q,Z)};class m4 extends J0{constructor(U){let X={$:U,raw:U.fn};super((...q)=>{let Z=q.indexOf(":"),Q=Z===-1?q.length-1:Z-1,G=q.slice(0,Q+1),Y=U.parse(G).assertHasKind("intersection"),J=U.intrinsic.unknown;if(Z!==-1){if(Z!==q.length-2)return F(IY);J=U.parse(q[Z+1])}return(H)=>new yZ(H,Y,J)},{attach:X})}}class yZ extends J0{raw;params;returns;expression;constructor(U,X,q){let Z=`typed ${U.name}`,Q={[Z]:(...Y)=>{let J=X.assert(Y),H=U(...J);return q.assert(H)}}[Z];super(Q);this.raw=U,this.params=X,this.returns=q;let G=X.expression;if(G[0]==="["&&G[G.length-1]==="]")G=G.slice(1,-1);else if(G.endsWith("[]"))G=`...${G}`;this.expression=`(${G}) => ${q?.expression??"unknown"}`}}var IY=`":" must be followed by exactly one return type e.g:
184
- fn("string", ":", "number")(s => s.length)`;class p4 extends J0{$;constructor(U){super((...X)=>new j2(U)(...X),{bind:U});this.$=U}in(U){return new j2(this.$,U===void 0?void 0:this.$.parse(U))}at(U,X){return new j2(this.$).at(U,X)}case(U,X){return new j2(this.$).case(U,X)}}class j2 extends J0{$;in;key;branches=[];constructor(U,X){super((q)=>this.caseEntries(Object.entries(q).map(([Z,Q])=>Z==="default"?[Z,Q]:[this.$.parse(Z),Q])));this.$=U,this.in=X}at(U,X){if(this.key)F(NY);if(this.branches.length)F(KY);return this.key=U,X?this.match(X):this}case(U,X){return this.caseEntry(this.$.parse(U),X)}caseEntry(U,X){let Z=(this.key?this.$.parse({[this.key]:U}):U).pipe(X);return this.branches.push(Z),this}match(U){return this(U)}strings(U){return this.caseEntries(Object.entries(U).map(([X,q])=>X==="default"?[X,q]:[this.$.node("unit",{unit:X}),q]))}caseEntries(U){for(let X=0;X<U.length;X++){let[q,Z]=U[X];if(q==="default"){if(X!==U.length-1)F("default may only be specified as the last key of a switch definition");return this.default(Z)}if(typeof Z!=="function")return F(`Value for case "${q}" must be a function (was ${r(Z)})`);this.caseEntry(q,Z)}return this}default(U){if(typeof U==="function")this.case(I.unknown,U);let X={branches:this.branches,ordered:!0};if(U==="never"||U==="assert")X.meta={onFail:kZ};let q=this.$.node("union",X);if(!this.in)return this.$.finalize(q);let Z=this.in.pipe(q);if(U==="never"||U==="assert")Z=Z.configureReferences({onFail:kZ},"self");return this.$.finalize(Z)}}var kZ=(U)=>U.throw(),KY="A key matcher must be specified before the first case i.e. match.at('foo') or match.in<object>().at('bar')",NY="At most one key matcher may be specified per expression";var y6=(U,X)=>{if(x(U)){if(U[1]==="=")return[X.$.parseOwnDefinitionFormat(U[0],X),"=",U[2]];if(U[1]==="?")return[X.$.parseOwnDefinitionFormat(U[0],X),"?"]}return k6(U,X)},vZ="Only required keys may make their values optional, e.g. { [mySymbol]: ['number', '?'] }",xZ="Only required keys may specify default values, e.g. { value: 'number = 0' }";var hZ=(U,X)=>{let q,Z={},Q=J1(U);for(let[Y,J]of Q){let H=EY(Y);if(H.kind==="spread"){if(!S0(Z))return F(SY);let A=X.$.parseOwnDefinitionFormat(J,X);if(A.equals(I.object))continue;if(!A.hasKind("intersection")||!A.basis?.equals(I.object))return F(jY(A.expression));q=A.structure;continue}if(H.kind==="undeclared"){if(J!=="reject"&&J!=="delete"&&J!=="ignore")F(CY(J));Z.undeclared=J;continue}let W=y6(J,X),$=H;if(H.kind==="required"){if(!x(W))l4(Z,"required",{key:H.normalized,value:W},X);else l4(Z,"optional",W[1]==="="?{key:H.normalized,value:W[0],default:W[2]}:{key:H.normalized,value:W[0]},X);continue}if(x(W)){if(W[1]==="?")F(vZ);if(W[1]==="=")F(xZ)}if(H.kind==="optional"){l4(Z,"optional",{key:H.normalized,value:W},X);continue}let _=X.$.parseOwnDefinitionFormat($.normalized,X),L=w6(_,W,X.$);if(L.index)Z.index=g(Z.index,L.index);if(L.required)Z.required=g(Z.required,L.required)}let G=X.$.node("structure",Z);return X.$.parseSchema({domain:"object",structure:q?.merge(G)??G})},l4=(U,X,q,Z)=>{U[X]=g(U[X],Z.$.node(X,q))},CY=(U)=>`Value of '+' key must be 'reject', 'delete', or 'ignore' (was ${E(U)})`,SY="Spread operator may only be used as the first key in an object",EY=(U)=>typeof U==="symbol"?{kind:"required",normalized:U}:U[U.length-1]==="?"?U[U.length-2]===W1?{kind:"required",normalized:`${U.slice(0,-2)}?`}:{kind:"optional",normalized:U.slice(0,-1)}:U[0]==="["&&U[U.length-1]==="]"?{kind:"index",normalized:U.slice(1,-1)}:U[0]===W1&&U[1]==="["&&U[U.length-1]==="]"?{kind:"required",normalized:U.slice(1)}:U==="..."?{kind:"spread"}:U==="+"?{kind:"undeclared"}:{kind:"required",normalized:U==="\\..."?"...":U==="\\+"?"+":U},jY=(U)=>`Spread operand must resolve to an object literal type (was ${U})`;var mZ=(U,X)=>mY(U)?cZ[U[0]](U,X):hY(U)?dZ[U[1]](U,X):null,bY=(U,X)=>X.$.parseOwnDefinitionFormat(U[1],X).keyof(),d4=(U,X)=>{if(U[2]===void 0)return F(k4(U[1],""));let q=X.$.parseOwnDefinitionFormat(U[0],X),Z=X.$.parseOwnDefinitionFormat(U[2],X);if(U[1]==="|")return X.$.node("union",{branches:[q,Z]});let Q=U[1]==="&"?_0(q,Z,X.$):T2(q,Z,X.$);if(Q instanceof B)return Q.throw();return Q},fY=(U,X)=>X.$.parseOwnDefinitionFormat(U[0],X).array(),gY=(U,X)=>{if(typeof U[2]!=="function")return F(pZ("=>",U[2]));return X.$.parseOwnDefinitionFormat(U[0],X).pipe(U[2])},pZ=(U,X)=>`${U===":"?"Narrow":"Morph"} expression requires a function following '${U}' (was ${typeof X})`,yY=(U,X)=>{if(typeof U[2]!=="function")return F(pZ(":",U[2]));return X.$.parseOwnDefinitionFormat(U[0],X).constrain("predicate",U[2])},kY=(U,X)=>X.$.parseOwnDefinitionFormat(U[0],X).configure(U[2],U[3]),lZ=(U)=>U,vY=lZ({"[]":fY,"?":()=>F(S6)}),xY=lZ({"|":d4,"&":d4,":":yY,"=>":gY,"|>":d4,"@":kY,"=":()=>F(E6)}),dZ={...vY,...xY},hY=(U)=>dZ[U[1]]!==void 0,uY=(U)=>U,cZ=uY({keyof:bY,instanceof:(U,X)=>{if(typeof U[1]!=="function")return F(uZ(J2(U[1])));let q=U.slice(1).map((Z)=>typeof Z==="function"?X.$.node("proto",{proto:Z}):F(uZ(J2(Z))));return q.length===1?q[0]:X.$.node("union",{branches:q})},"===":(U,X)=>X.$.units(U.slice(1))}),mY=(U)=>cZ[U[0]]!==void 0,uZ=(U)=>`Expected a constructor following 'instanceof' operator (was ${U})`;var oZ=(U,X)=>{let q=[{}],Z=0;while(Z<U.length){let Q=!1;if(U[Z]==="..."&&Z<U.length-1)Q=!0,Z++;let G=y6(U[Z],X),[Y,J,H]=!x(G)?[G]:G;if(Z++,Q){if(!Y.extends(V.intrinsic.Array))return F(dY(Y.expression));q=q.flatMap((W)=>Y.distribute(($)=>lY(z6(W),$)))}else q=q.map((W)=>{if(J==="?")return rZ(W,Y);if(J==="=")return pY(W,Y,H);return c4(W,Y)})}return X.$.parseSchema(q.map((Q)=>S0(Q)?{proto:Array,exactLength:0}:{proto:Array,sequence:Q}))},c4=(U,X)=>{if(U.defaultables||U.optionals)return F(U.variadic?P4:cY);if(U.variadic)U.postfix=g(U.postfix,X);else U.prefix=g(U.prefix,X);return U},rZ=(U,X)=>{if(U.variadic)return F(aZ);return U.optionals=g(U.optionals,X),U},pY=(U,X,q)=>{if(U.variadic)return F(aZ);if(U.optionals)return F(iY);return U.defaultables=g(U.defaultables,[[X,q]]),U},iZ=(U,X)=>{if(U.postfix)F(sZ);if(U.variadic){if(!U.variadic.equals(X))F(sZ)}else U.variadic=X.internal;return U},lY=(U,X)=>{let q=X.select({method:"find",kind:"sequence"});if(!q)return iZ(U,V.intrinsic.unknown);if(q.prefix)for(let Z of q.prefix)c4(U,Z);if(q.optionals)for(let Z of q.optionals)rZ(U,Z);if(q.variadic)iZ(U,q.variadic);if(q.postfix)for(let Z of q.postfix)c4(U,Z);return U},dY=(U)=>`Spread element must be an array (was ${U})`,sZ="A tuple may have at most one variadic element",cY="A required element may not follow an optional element",aZ="An optional element may not follow a variadic element";var iY="A defaultable element may not follow an optional element without a default";var sY={},k6=(U,X)=>{if(typeof U==="string"){if(X.args&&Object.keys(X.args).some((Z)=>U.includes(Z)))return u4(U,X);let q=sY[X.$.name]??={};return q[U]??=u4(U,X)}return Q0(U,"object")?oY(U,X):F(i4(r(U)))},oY=(U,X)=>{let q=Y2(U);switch(q){case void 0:if(M(U,"root"))return U;if("~standard"in U)return rY(U,X);return hZ(U,X);case"Array":return aY(U,X);case"RegExp":return X.$.node("intersection",{domain:"string",pattern:U},{prereduced:!0});case"Function":{let Z=d0(U)?U():U;if(M(Z,"root"))return Z;return F(i4("Function"))}default:return F(i4(q??E(U)))}},rY=(U,X)=>X.$.intrinsic.unknown.pipe((q,Z)=>{let Q=U["~standard"].validate(q);if(!Q.issues)return Q.value;for(let{message:G,path:Y}of Q.issues)if(Y)if(Y.length)Z.error({problem:yX(G),relativePath:Y.map((J)=>typeof J==="object"?J.key:J)});else Z.error({message:G});else Z.error({message:G})}),aY=(U,X)=>mZ(U,X)??oZ(U,X),i4=(U)=>`Type definitions must be strings or objects (was ${U})`;class s4 extends J0{constructor(U){let X=Object.assign({errors:H0,hkt:U0,$:U,raw:U.parse,module:U.constructor.module,scope:U.constructor.scope,declare:U.declare,define:U.define,match:U.match,generic:U.generic,schema:U.schema,keywords:U.ambient,unit:U.unit,enumerated:U.enumerated,instanceOf:U.instanceOf,valueOf:U.valueOf,or:U.or,and:U.and,merge:U.merge,pipe:U.pipe,fn:U.fn},U.ambientAttachments);super((...q)=>{if(q.length===1)return U.parse(q[0]);if(q.length===2&&typeof q[0]==="string"&&q[0][0]==="<"&&q[0][q[0].length-1]===">"){let Z=q[0].slice(1,-1),Q=U.parseGenericParams(Z,{});return new r0(Q,q[1],U,U,null)}return U.parse(q)},{attach:X})}}var m1=V;class v6 extends I6{get ambientAttachments(){if(!m1.typeAttachments)return;return this.cacheGetter("ambientAttachments",S(m1.typeAttachments,(U,X)=>[U,this.bindReference(X)]))}preparseOwnAliasEntry(U,X){let q=U.indexOf("<");if(q===-1){if(M(X,"module")||M(X,"generic"))return[U,X];let G=this.name==="ark"?U:U==="root"?this.name:`${this.name}.${U}`,Y=this.resolvedConfig.keywords?.[G];if(Y)X=[X,"@",Y];return[U,X]}if(U[U.length-1]!==">")F("'>' must be the last character of a generic declaration in a scope");let Z=U.slice(0,q),Q=U.slice(q+1,-1);return[Z,()=>{let G=this.parseGenericParams(Q,{alias:Z});return Wq(G,X,this)}]}parseGenericParams(U,X){return g6(new F2(U),[],this.createParseContext({...X,def:U,prefix:"generic"}))}normalizeRootScopeValue(U){if(d0(U)&&!M(U,"generic"))return U();return U}preparseOwnDefinitionFormat(U,X){return{...X,def:U,prefix:X.alias??"type"}}parseOwnDefinitionFormat(U,X){if(!(X.alias&&(X.alias in this.aliases))&&!X.args)X.args={this:X.id};let Z=k6(U,X);if(x(Z)){if(Z[1]==="=")return F(E6);if(Z[1]==="?")return F(S6)}return Z}unit=(U)=>this.units([U]);valueOf=(U)=>this.units(KX(U));enumerated=(...U)=>this.units(U);instanceOf=(U)=>this.node("proto",{proto:U},{prereduced:!0});or=(...U)=>this.schema(U.map((X)=>this.parse(X)));and=(...U)=>U.reduce((X,q)=>X.and(this.parse(q)),this.intrinsic.unknown);merge=(...U)=>U.reduce((X,q)=>X.merge(this.parse(q)),this.intrinsic.object);pipe=(...U)=>this.intrinsic.unknown.pipe(...U);fn=new m4(this);match=new p4(this);declare=()=>({type:this.type});define(U){return U}type=new s4(this);static scope=(U,X={})=>new v6(U,X);static module=(U,X={})=>this.scope(U,X).export()}var b2=Object.assign(v6.scope,{define:(U)=>U}),f=v6;class nZ extends U0{description='merge an object\'s properties onto another like `Merge(User, { isAdmin: "true" })`'}var nY=O0(["base",I.object],["props",I.object])((U)=>U.base.merge(U.props),nZ),tZ=f.module({Key:I.key,Merge:nY});class eZ extends U0{}var tY=O0("element")((U)=>{let X=U.element.exclude(I.Array),q=X.array();return X.rawOr(q).pipe(l0).distribute((Z)=>Z.assertHasKind("morph").declareOut(q),v)},eZ),U8=f.module({root:I.Array,readonly:"root",index:I.nonNegativeIntegerString,liftFrom:tY},{name:"Array"});var o4=v(["string",_1.FileConstructor]),eY=o4.rawOr(o4.array()),X8=v({meta:"an object representing parsed form data",domain:"object",index:{signature:"string",value:eY}}),q8=f.module({root:["instanceof",FormData],value:o4,parsed:X8,parse:v({in:FormData,morphs:(U)=>{let X={};for(let[q,Z]of U)if(q in X){let Q=X[q];if(typeof Q==="string"||Q instanceof _1.FileConstructor)X[q]=[Q,Z];else Q.push(Z)}else X[q]=Z;return X},declaredOut:X8})},{name:"FormData"});var Z8=f.module({Int8:["instanceof",Int8Array],Uint8:["instanceof",Uint8Array],Uint8Clamped:["instanceof",Uint8ClampedArray],Int16:["instanceof",Int16Array],Uint16:["instanceof",Uint16Array],Int32:["instanceof",Int32Array],Uint32:["instanceof",Uint32Array],Float32:["instanceof",Float32Array],Float64:["instanceof",Float64Array],BigInt64:["instanceof",BigInt64Array],BigUint64:["instanceof",BigUint64Array]},{name:"TypedArray"});var U7={Boolean:1,Number:1,String:1},Q8=f.module({...S({...kU,...xU},(U,X)=>(U in U7)?[]:[U,["instanceof",X]]),Array:U8,TypedArray:Z8,FormData:q8});var X7=v({domain:{domain:"number",meta:"a number representing a Unix timestamp"},divisor:{rule:1,meta:"an integer representing a Unix timestamp"},min:{rule:-8640000000000000,meta:"a Unix timestamp after -8640000000000000"},max:{rule:8640000000000000,meta:"a Unix timestamp before 8640000000000000"},meta:"an integer representing a safe Unix timestamp"}),q7=v({domain:"number",divisor:1}),x6=f.module({root:I.number,integer:q7,epoch:X7,safe:v({domain:{domain:"number",numberAllowsNaN:!1},min:Number.MIN_SAFE_INTEGER,max:Number.MAX_SAFE_INTEGER}),NaN:["===",Number.NaN],Infinity:["===",Number.POSITIVE_INFINITY],NegativeInfinity:["===",Number.NEGATIVE_INFINITY]},{name:"number"});var l=(U,X,q)=>{let Z={domain:"string",pattern:{rule:U.source,flags:U.flags,meta:X}};if(q)Z.meta={format:q};return x1("intersection",Z)},G8=l(W2,"a well-formed integer string"),O8=f.module({root:G8,parse:v({in:G8,morphs:(U,X)=>{let q=Number.parseInt(U);return Number.isSafeInteger(q)?q:X.error("an integer in the range Number.MIN_SAFE_INTEGER to Number.MAX_SAFE_INTEGER")},declaredOut:I.integer})},{name:"string.integer"}),Z7=l(/^[\dA-Fa-f]+$/,"hex characters only"),Q7=f.module({root:l(/^(?:[\d+/A-Za-z]{4})*(?:[\d+/A-Za-z]{2}==|[\d+/A-Za-z]{3}=)?$/,"base64-encoded"),url:l(/^(?:[\w-]{4})*(?:[\w-]{2}(?:==|%3D%3D)?|[\w-]{3}(?:=|%3D)?)?$/,"base64url-encoded")},{name:"string.base64"}),Y8=l(/^[A-Z].*$/,"capitalized"),G7=f.module({root:v({in:"string",morphs:(U)=>U.charAt(0).toUpperCase()+U.slice(1),declaredOut:Y8}),preformatted:Y8},{name:"string.capitalize"}),Y7=(U)=>{let X=U.replace(/[ -]+/g,""),q=0,Z,Q,G=!1;for(let Y=X.length-1;Y>=0;Y--){if(Z=X.substring(Y,Y+1),Q=Number.parseInt(Z,10),G)Q*=2,q+=Q>=10?Q%10+1:Q;else q+=Q;G=!G}return!!(q%10===0?X:!1)},J7=/^(?:4\d{12}(?:\d{3,6})?|5[1-5]\d{14}|(222[1-9]|22[3-9]\d|2[3-6]\d{2}|27[01]\d|2720)\d{12}|6(?:011|5\d\d)\d{12,15}|3[47]\d{13}|3(?:0[0-5]|[68]\d)\d{11}|(?:2131|1800|35\d{3})\d{11}|6[27]\d{14}|^(81\d{14,17}))$/,H7=v({domain:"string",pattern:{meta:"a credit card number",rule:J7.source},predicate:{meta:"a credit card number",predicate:Y7}});var W7=/^([+-]?\d{4}(?!\d{2}\b))((-?)((0[1-9]|1[0-2])(\3([12]\d|0[1-9]|3[01]))?|W([0-4]\d|5[0-3])(-?[1-7])?|(00[1-9]|0[1-9]\d|[12]\d{2}|3([0-5]\d|6[1-6])))(T((([01]\d|2[0-3])((:?)[0-5]\d)?|24:?00)([,.]\d+(?!:))?)?(\17[0-5]\d([,.]\d+)?)?([Zz]|([+-])([01]\d|2[0-3]):?([0-5]\d)?)?)?)?$/;var _7=(U)=>!Number.isNaN(new Date(U).valueOf()),J8=v({domain:"string",predicate:{meta:"a parsable date",predicate:_7}}).assertHasKind("intersection"),H8=O8.root.internal.narrow((U,X)=>{let q=Number.parseInt(U),Z=x6.epoch(q);if(Z instanceof H0)return X.errors.merge(Z),!1;return!0}).configure({description:"an integer string representing a safe Unix timestamp"},"self").assertHasKind("intersection"),$7=f.module({root:H8,parse:v({in:H8,morphs:(U)=>new Date(U),declaredOut:I.Date})},{name:"string.date.epoch"}),W8=l(W7,"an ISO 8601 (YYYY-MM-DDTHH:mm:ss.sssZ) date").internal.assertHasKind("intersection"),L7=f.module({root:W8,parse:v({in:W8,morphs:(U)=>new Date(U),declaredOut:I.Date})},{name:"string.date.iso"}),z7=f.module({root:J8,parse:v({declaredIn:J8,in:"string",morphs:(U,X)=>{let q=new Date(U);if(Number.isNaN(q.valueOf()))return X.error("a parsable date");return q},declaredOut:I.Date}),iso:L7,epoch:$7},{name:"string.date"}),F7=l(/^[\w%+.-]+@[\d.A-Za-z-]+\.[A-Za-z]{2,}$/,"an email address","email"),_8="(?:[0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])",a0=`(${_8}[.]){3}${_8}`,A7=new RegExp(`^${a0}$`),c="(?:[0-9a-fA-F]{1,4})",V7=new RegExp(`^((?:${c}:){7}(?:${c}|:)|(?:${c}:){6}(?:${a0}|:${c}|:)|(?:${c}:){5}(?::${a0}|(:${c}){1,2}|:)|(?:${c}:){4}(?:(:${c}){0,1}:${a0}|(:${c}){1,3}|:)|(?:${c}:){3}(?:(:${c}){0,2}:${a0}|(:${c}){1,4}|:)|(?:${c}:){2}(?:(:${c}){0,3}:${a0}|(:${c}){1,5}|:)|(?:${c}:){1}(?:(:${c}){0,4}:${a0}|(:${c}){1,6}|:)|(?::((?::${c}){0,5}:${a0}|(?::${c}){1,7}|:)))(%[0-9a-zA-Z.]{1,})?$`),O7=f.module({root:["v4 | v6","@","an IP address"],v4:l(A7,"an IPv4 address","ipv4"),v6:l(V7,"an IPv6 address","ipv6")},{name:"string.ip"}),p1="a JSON string",B8=(U)=>{if(!(U instanceof SyntaxError))throw U;return`must be ${p1} (${U})`},B7=v({meta:p1,domain:"string",predicate:{meta:p1,predicate:(U,X)=>{try{return JSON.parse(U),!0}catch(q){return X.reject({code:"predicate",expected:p1,problem:B8(q)})}}}}),T7=(U,X)=>{if(U.length===0)return X.error({code:"predicate",expected:p1,actual:"empty"});try{return JSON.parse(U)}catch(q){return X.error({code:"predicate",expected:p1,problem:B8(q)})}},D7=f.module({root:B7,parse:v({meta:"safe JSON string parser",in:"string",morphs:T7,declaredOut:I.jsonObject})},{name:"string.json"}),$8=l(/^[a-z]*$/,"only lowercase letters"),R7=f.module({root:v({in:"string",morphs:(U)=>U.toLowerCase(),declaredOut:$8}),preformatted:$8},{name:"string.lower"}),T8=["NFC","NFD","NFKC","NFKD"],f2=S(T8,(U,X)=>[X,v({domain:"string",predicate:(q)=>q.normalize(X)===q,meta:`${X}-normalized unicode`})]),h6=S(T8,(U,X)=>[X,v({in:"string",morphs:(q)=>q.normalize(X),declaredOut:f2[X]})]),M7=f.module({root:h6.NFC,preformatted:f2.NFC},{name:"string.normalize.NFC"}),P7=f.module({root:h6.NFD,preformatted:f2.NFD},{name:"string.normalize.NFD"}),w7=f.module({root:h6.NFKC,preformatted:f2.NFKC},{name:"string.normalize.NFKC"}),I7=f.module({root:h6.NFKD,preformatted:f2.NFKD},{name:"string.normalize.NFKD"}),K7=f.module({root:"NFC",NFC:M7,NFD:P7,NFKC:w7,NFKD:I7},{name:"string.normalize"}),L8=l(W6,"a well-formed numeric string"),N7=f.module({root:L8,parse:v({in:L8,morphs:(U)=>Number.parseFloat(U),declaredOut:I.number})},{name:"string.numeric"}),z8="a regex pattern",C7=v({domain:"string",predicate:{meta:z8,predicate:(U,X)=>{try{return new RegExp(U),!0}catch(q){return X.reject({code:"predicate",expected:z8,problem:String(q)})}}},meta:{format:"regex"}}),S7=/^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[A-Za-z-][\dA-Za-z-]*)(?:\.(?:0|[1-9]\d*|\d*[A-Za-z-][\dA-Za-z-]*))*))?(?:\+([\dA-Za-z-]+(?:\.[\dA-Za-z-]+)*))?$/,E7=l(S7,"a semantic version (see https://semver.org/)"),F8=l(/^\S.*\S$|^\S?$/,"trimmed"),j7=f.module({root:v({in:"string",morphs:(U)=>U.trim(),declaredOut:F8}),preformatted:F8},{name:"string.trim"}),A8=l(/^[A-Z]*$/,"only uppercase letters"),b7=f.module({root:v({in:"string",morphs:(U)=>U.toUpperCase(),declaredOut:A8}),preformatted:A8},{name:"string.upper"}),f7=(U)=>URL.canParse(U),V8=v({domain:"string",predicate:{meta:"a URL string",predicate:f7},meta:{format:"uri"}}),g7=f.module({root:V8,parse:v({declaredIn:V8,in:"string",morphs:(U,X)=>{try{return new URL(U)}catch{return X.error("a URL string")}},declaredOut:v(URL)})},{name:"string.url"}),y7=f.module({root:["versioned | nil | max","@",{description:"a UUID",format:"uuid"}],"#nil":"'00000000-0000-0000-0000-000000000000'","#max":"'ffffffff-ffff-ffff-ffff-ffffffffffff'","#versioned":/[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}/i,v1:l(/^[\da-f]{8}-[\da-f]{4}-1[\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}$/i,"a UUIDv1"),v2:l(/^[\da-f]{8}-[\da-f]{4}-2[\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}$/i,"a UUIDv2"),v3:l(/^[\da-f]{8}-[\da-f]{4}-3[\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}$/i,"a UUIDv3"),v4:l(/^[\da-f]{8}-[\da-f]{4}-4[\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}$/i,"a UUIDv4"),v5:l(/^[\da-f]{8}-[\da-f]{4}-5[\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}$/i,"a UUIDv5"),v6:l(/^[\da-f]{8}-[\da-f]{4}-6[\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}$/i,"a UUIDv6"),v7:l(/^[\da-f]{8}-[\da-f]{4}-7[\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}$/i,"a UUIDv7"),v8:l(/^[\da-f]{8}-[\da-f]{4}-8[\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}$/i,"a UUIDv8")},{name:"string.uuid"}),D8=f.module({root:I.string,alpha:l(/^[A-Za-z]*$/,"only letters"),alphanumeric:l(/^[\dA-Za-z]*$/,"only letters and digits 0-9"),hex:Z7,base64:Q7,capitalize:G7,creditCard:H7,date:z7,digits:l(/^\d*$/,"only digits 0-9"),email:F7,integer:O8,ip:O7,json:D7,lower:R7,normalize:K7,numeric:N7,regex:C7,semver:E7,trim:j7,upper:b7,url:g7,uuid:y7},{name:"string"});var R8=f.module({bigint:I.bigint,boolean:I.boolean,false:I.false,never:I.never,null:I.null,number:I.number,object:I.object,string:I.string,symbol:I.symbol,true:I.true,unknown:I.unknown,undefined:I.undefined}),M8=f.module({root:I.unknown,any:I.unknown},{name:"unknown"}),k7=f.module({root:I.jsonObject,stringify:x1("morph",{in:I.jsonObject,morphs:(U)=>JSON.stringify(U),declaredOut:I.string})},{name:"object.json"}),P8=f.module({root:I.object,json:k7},{name:"object"});class w8 extends U0{description='instantiate an object from an index signature and corresponding value type like `Record("string", "number")`'}var v7=O0(["K",I.key],"V")((U)=>({domain:"object",index:{signature:U.K,value:U.V}}),w8);class I8 extends U0{description='pick a set of properties from an object like `Pick(User, "name | age")`'}var x7=O0(["T",I.object],["K",I.key])((U)=>U.T.pick(U.K),I8);class K8 extends U0{description='omit a set of properties from an object like `Omit(User, "age")`'}var h7=O0(["T",I.object],["K",I.key])((U)=>U.T.omit(U.K),K8);class N8 extends U0{description="make all named properties of an object optional like `Partial(User)`"}var u7=O0(["T",I.object])((U)=>U.T.partial(),N8);class C8 extends U0{description="make all named properties of an object required like `Required(User)`"}var m7=O0(["T",I.object])((U)=>U.T.required(),C8);class S8 extends U0{description='exclude branches of a union like `Exclude("boolean", "true")`'}var p7=O0("T","U")((U)=>U.T.exclude(U.U),S8);class E8 extends U0{description='extract branches of a union like `Extract("0 | false | 1", "number")`'}var l7=O0("T","U")((U)=>U.T.extract(U.U),E8),j8=f.module({Exclude:p7,Extract:l7,Omit:h7,Partial:u7,Pick:x7,Record:v7,Required:m7});var h0=b2({...R8,...j8,...Q8,...tZ,string:D8,number:x6,object:P8,unknown:M8},{prereducedAliases:!0,name:"ark"}),n=h0.export();Object.assign(m1.ambient,n);m1.typeAttachments={string:n.string.root,number:n.number.root,bigint:n.bigint,boolean:n.boolean,symbol:n.symbol,undefined:n.undefined,null:n.null,object:n.object.root,unknown:n.unknown.root,false:n.false,true:n.true,never:n.never,arrayIndex:n.Array.index,Key:n.Key,Record:n.Record,Array:n.Array.root,Date:n.Date};var r4=Object.assign(h0.type,m1.typeAttachments),d7=h0.match,c7=h0.fn,i7=h0.generic,FN=h0.schema,s7=h0.define,o7=h0.declare;var z1=b2({Operator:"'EQ' | '==' | 'NEQ' | '!=' | 'GT' | '>' | 'GTE' | '>=' | 'LT' | '<' | 'LTE' | '<=' | 'IN' | 'NOT_IN' | 'CONTAINS' | 'MATCHES' | 'RANGE' | 'SINCE' | 'AFTER' | 'BEFORE' | 'UNTIL'",Condition:"RangeCondition | ListCondition | ContainsCondition | NumericCondition | RegexCondition | BasicCondition",RangeCondition:{field:"string > 0",operator:"'RANGE'",value:"unknown[] == 2"},ListCondition:{field:"string > 0",operator:"'IN' | 'NOT_IN'",value:"unknown[]"},ContainsCondition:{field:"string > 0",operator:"'CONTAINS'",value:"string | unknown[]"},NumericCondition:{field:"string > 0",operator:"'>' | '>=' | '<' | '<=' | 'GT' | 'GTE' | 'LT' | 'LTE'",value:"number | string"},RegexCondition:{field:"string > 0",operator:"'MATCHES'",value:"string"},BasicCondition:{field:"string > 0",operator:"Operator",value:"unknown"},ConditionGroup:{operator:"'AND' | 'OR'",conditions:"(Condition | ConditionGroup)[] >= 1"},RuleCondition:"Condition | ConditionGroup",Action:{type:"string > 0","params?":"object","delay?":"number.integer >= 0 | string","probability?":"0 <= number <= 1 | string"},ActionGroup:{"mode?":"'ALL' | 'EITHER' | 'SEQUENCE'",actions:"(Action | ActionGroup)[] >= 1"},RuleAction:"Action | ActionGroup",TriggerRule:{id:"string > 0","name?":"string","description?":"string","priority?":"number.integer","enabled?":"boolean","cooldown?":"number.integer >= 0","tags?":"string[]",on:"string > 0","if?":"RuleCondition | RuleCondition[]",do:"RuleAction | RuleAction[]","comment?":"string"}}).export(),bN=z1.Operator,fN=z1.Condition,gN=z1.ConditionGroup,yN=z1.RuleCondition,kN=z1.Action,vN=z1.ActionGroup,r7=z1.TriggerRule;class a7{static validate(U){let X=r7(U);if(X instanceof r4.errors){let Q=[];for(let G of X){let Y=G.path.join("."),J=G.message,H=void 0;if(Y.endsWith("on")&&(J.includes("string")||J.includes("must be")))if(typeof U==="object"&&U!==null&&"on"in U&&U.on===!0)J="The 'on' field is incorrect (boolean true found).",H=`In YAML, 'on' is a boolean keyword (true). Quote it: "on": "EventName"`;else H="Ensure 'on' is a string event name.";Q.push({path:Y,message:J,suggestion:H,severity:"error"})}return{valid:!1,issues:Q}}let q=X,Z=[];if(this.validateConditionsRecursive(q.if,Z,"if"),Z.length>0)return{valid:!1,issues:Z};return{valid:!0,rule:q}}static validateConditionsRecursive(U,X,q){if(!U)return;if(Array.isArray(U)){U.forEach((Z,Q)=>{this.validateConditionsRecursive(Z,X,`${q}.${Q}`)});return}if(typeof U==="object"&&U!==null&&"conditions"in U&&Array.isArray(U.conditions)){U.conditions.forEach((Z,Q)=>{this.validateConditionsRecursive(Z,X,`${q}.conditions.${Q}`)});return}if(typeof U==="object"&&U!==null&&"operator"in U&&"value"in U)this.validateConditionValue(U,X,q)}static validateConditionValue(U,X,q){let{operator:Z,value:Q}=U;if(typeof Z==="string"&&["IN","NOT_IN","RANGE","CONTAINS"].includes(Z)){if(Z==="CONTAINS"){if(typeof Q!=="string"&&!Array.isArray(Q))X.push({path:`${q}.value`,message:`Incorrect value type: Operator 'CONTAINS' expects a String or List (Array), but received ${typeof Q}.`,suggestion:"Use a substring or a list of items.",severity:"error"});return}if(!Array.isArray(Q)){X.push({path:`${q}.value`,message:`Incorrect value type: Operator '${Z}' expects a List (Array), but received ${typeof Q}.`,suggestion:Z==="RANGE"?"Use format [min, max]":"Use format [item1, item2]",severity:"error"});return}if(Z==="RANGE"){if(Q.length!==2)X.push({path:`${q}.value`,message:"Invalid Range: Operator 'RANGE' requires exactly 2 values (min and max).",suggestion:"Use format [min, max], e.g. [1, 10]",severity:"error"});else if(typeof Q[0]!=="number"&&typeof Q[0]!=="string")X.push({path:`${q}.value`,message:"Incorrect range type: Range values must be numbers or expression strings.",severity:"error"})}}else if(Z==="MATCHES")if(typeof Q!=="string")X.push({path:`${q}.value`,message:`Incorrect value type: Operator 'MATCHES' expects a string (regex pattern), but received ${typeof Q}.`,severity:"error"});else try{new RegExp(Q)}catch(G){X.push({path:`${q}.value`,message:`Invalid Regex pattern: ${G.message}`,severity:"error"})}else if(typeof Z==="string"&&["GT","GTE","LT","LTE",">",">=","<","<="].includes(Z)){if(typeof Q!=="number"&&typeof Q!=="string")X.push({path:`${q}.value`,message:`Incorrect value type: Operator '${Z}' expects a number or expression string, but received ${typeof Q}.`,severity:"error"})}}}class u6{conditions=[];op="AND";constructor(U="AND"){this.op=U}where(U,X,q){return this.conditions.push({field:U,operator:X,value:q}),this}and(U){let X=new u6("AND");return this.conditions.push(U(X).build()),this}or(U){let X=new u6("OR");return this.conditions.push(U(X).build()),this}build(){if(this.conditions.length===0)throw Error("Condition group must have at least one condition");if(this.conditions.length===1&&this.op==="AND")return this.conditions[0];return{operator:this.op,conditions:this.conditions}}}class b8{actions=[];mode="ALL";setMode(U){return this.mode=U,this}add(U,X,q){return this.actions.push({type:U,params:X,...q}),this}build(){if(this.actions.length===0)throw Error("Action group must have at least one action");if(this.actions.length===1&&this.mode==="ALL")return this.actions[0];if(this.mode==="ALL")return this.actions;return{mode:this.mode,actions:this.actions}}}class n7{rule={enabled:!0,priority:0};withId(U){return this.rule.id=U,this}withName(U){return this.rule.name=U,this}withDescription(U){return this.rule.description=U,this}withPriority(U){return this.rule.priority=U,this}withCooldown(U){return this.rule.cooldown=U,this}withTags(U){return this.rule.tags=U,this}on(U){return this.rule.on=U,this}if(U,X,q){if(!this.rule.if)this.rule.if={field:U,operator:X,value:q};else if(Array.isArray(this.rule.if))this.rule.if.push({field:U,operator:X,value:q});else this.rule.if=[this.rule.if,{field:U,operator:X,value:q}];return this}ifComplex(U){let X=new u6,q=U(X).build();return this.rule.if=q,this}do(U,X,q){let Z={type:U,params:X,...q};if(!this.rule.do)this.rule.do=Z;else if(Array.isArray(this.rule.do))this.rule.do.push(Z);else if(this.rule.do&&typeof this.rule.do==="object"&&"actions"in this.rule.do)this.rule.do.actions.push(Z);else this.rule.do=[this.rule.do,Z];return this}doComplex(U){let X=new b8,q=U(X).build();return this.rule.do=q,this}build(){if(!this.rule.id)throw Error("Rule ID is required");if(!this.rule.on)throw Error("Rule 'on' event is required");if(!this.rule.do)throw Error("Rule 'do' action is required");return this.rule}}var pQ=CU(mQ(),1);class nA{static toYaml(U){let X=Array.isArray(U)?U:[U];return pQ.default.stringify(X)}static async saveToFile(U,X){let q=this.toYaml(U);if(typeof process<"u"&&process.versions&&process.versions.node){let Z=await import("fs/promises"),G=(await import("path")).dirname(X);await Z.mkdir(G,{recursive:!0}),await Z.writeFile(X,q,"utf8")}else throw Error("saveToFile is only supported in Node.js/Bun environments")}}export{N0 as triggerEmitter,Y6 as ruleEvents,QV as engineEvents,a7 as TriggerValidator,Q6 as TriggerUtils,r7 as TriggerRuleSchema,Z2 as TriggerEngine,bU as TriggerEmitter,D0 as StateManager,nA as RuleExporter,FX as RuleEvent,fU as RuleEngine,yN as RuleConditionSchema,n7 as RuleBuilder,jU as InMemoryPersistence,e as ExpressionEngine,sQ as EventQueue,G6 as EngineEvent,Z2 as Engine,rQ as ContextAdapter,fN as ConditionSchema,gN as ConditionGroupSchema,u6 as ConditionBuilder,bN as ComparisonOperatorSchema,oQ as BrowserPersistence,fU as AdvancedRuleEngine,kN as ActionSchema,P1 as ActionRegistry,vN as ActionGroupSchema,b8 as ActionBuilder};
183
+ `)+"}");class I6{config;resolvedConfig;name;get[Z0](){return"scope"}referencesById={};references=[];resolutions={};exportedNames=[];aliases={};resolved=!1;nodesByHash={};intrinsic;constructor(U,X){if(this.config=O2(O.config,X),this.resolvedConfig=O2(O.resolvedConfig,X),this.name=this.resolvedConfig.name??`anonymousScope${Object.keys(K4).length}`,this.name in K4)F(`A Scope already named ${this.name} already exists`);K4[this.name]=this;let q=Object.entries(U).map((Z)=>this.preparseOwnAliasEntry(...Z));for(let[Z,Q]of q){let G=Z;if(Z[0]==="#"){if(G=Z.slice(1),G in this.aliases)F(UZ(G));this.aliases[G]=Q}else{if(G in this.aliases)F(UZ(Z));this.aliases[G]=Q,this.exportedNames.push(G)}if(!M(Q,"module")&&!M(Q,"generic")&&!d0(Q)){let Y=this.preparseOwnDefinitionFormat(Q,{alias:G});this.resolutions[G]=M(Y,"root")?this.bindReference(Y):this.createParseContext(Y).id}}XZ??=this.node("union",{branches:["string","number","object","bigint","symbol",{unit:!0},{unit:!1},{unit:void 0},{unit:null}]},{prereduced:!0}),this.nodesByHash[XZ.hash]=this.node("intersection",{},{prereduced:!0}),this.intrinsic=O.intrinsic?S(O.intrinsic,(Z,Q)=>Z.startsWith("json")?[]:[Z,this.bindReference(Q)]):{}}cacheGetter(U,X){return Object.defineProperty(this,U,{value:X}),X}get internal(){return this}_json;get json(){if(!this._json)this.export();return this._json}defineSchema(U){return U}generic=(...U)=>{let X=this;return(q,Z)=>new r0(U,Z?new V6(q):q,X,X,Z??null)};units=(U,X)=>{let q=[];for(let Q of U)if(!q.includes(Q))q.push(Q);let Z=q.map((Q)=>this.node("unit",{unit:Q},X));return this.node("union",Z,{...X,prereduced:!0})};lazyResolutions=[];lazilyResolve(U,X){let q=this.node("alias",{reference:X??"synthetic",resolve:U},{prereduced:!0});if(!this.resolved)this.lazyResolutions.push(q);return q}schema=(U,X)=>this.finalize(this.parseSchema(U,X));parseSchema=(U,X)=>this.node(R2(U),U,X);preparseNode(U,X,q){let Z=typeof U==="string"?U:R2(X,U);if(x(X)&&X.kind===Z)return X;if(Z==="alias"&&!q?.prereduced){let{reference:Y}=K2.implementation.normalize(X,this);if(Y.startsWith("$")){let J=this.resolveRoot(Y.slice(1));X=J,Z=J.kind}}else if(Z==="union"&&G0(X,"object")){let Y=e5(X);if(Y?.length===1)X=Y[0],Z=R2(X)}if(x(X)&&X.kind===Z)return X;let G=y1[Z].normalize?.(X,this)??X;if(x(G))return G.kind===Z?G:UY(Z,G.kind);return{...q,$:this,kind:Z,def:G,prefix:q.alias??Z}}bindReference(U){let X;if(x(U))X=U.$===this?U:new U.constructor(U.attachments,this);else X=U.$===this?U:new r0(U.params,U.bodyDef,U.$,this,U.hkt);if(!this.resolved)Object.assign(this.referencesById,X.referencesById);return X}resolveRoot(U){return this.maybeResolveRoot(U)??F(S4(U))}maybeResolveRoot(U){let X=this.maybeResolve(U);if(M(X,"generic"))return;return X}maybeResolveSubalias(U){return N4(this.aliases,U)??N4(this.ambient,U)}get ambient(){return O.ambient}maybeResolve(U){let X=this.resolutions[U];if(X){if(typeof X!=="string")return this.bindReference(X);let Z=Q0[X];if(M(Z,"root"))return this.resolutions[U]=Z;if(M(Z,"context")){if(Z.phase==="resolving")return this.node("alias",{reference:`$${U}`},{prereduced:!0});if(Z.phase==="resolved")return y(`Unexpected resolved context for was uncached by its scope: ${E(Z)}`);Z.phase="resolving";let Q=this.bindReference(this.parseOwnDefinitionFormat(Z.def,Z));return Z.phase="resolved",Q0[Q.id]=Q,Q0[Z.id]=Q,this.resolutions[U]=Q}return y(`Unexpected nodesById entry for ${X}: ${E(Z)}`)}let q=this.aliases[U]??this.ambient?.[U];if(!q)return this.maybeResolveSubalias(U);if(q=this.normalizeRootScopeValue(q),M(q,"generic"))return this.resolutions[U]=this.bindReference(q);if(M(q,"module")){if(!q.root)F(HZ(U));return this.resolutions[U]=this.bindReference(q.root)}return this.resolutions[U]=this.parse(q,{alias:U})}createParseContext(U){let X=U.id??W4(U.prefix);return Q0[X]=Object.assign(U,{[Z0]:"context",$:this,id:X,phase:"unresolved"})}traversal(U){return new P0(U,this.resolvedConfig)}import(...U){return new h1(S(this.export(...U),(X,q)=>[`#${X}`,q]))}precompilation;_exportedResolutions;_exports;export(...U){if(!this._exports){this._exports={};for(let q of this.exportedNames){let Z=this.aliases[q];this._exports[q]=M(Z,"module")?I4(Z,this):qZ(this.maybeResolve(q))}for(let q of this.lazyResolutions)q.resolution;if(this._exportedResolutions=JZ(this,this._exports),this._json=YZ(this._exportedResolutions),Object.assign(this.resolutions,this._exportedResolutions),this.references=Object.values(this.referencesById),!this.resolvedConfig.jitless){let q=GZ(this.references);this.precompilation=q.write(ZZ,4),QZ(this.references,q)}this.resolved=!0}let X=U.length?U:this.exportedNames;return new h1(S(X,(q,Z)=>[Z,this._exports[Z]]))}resolve(U){return this.export()[U]}node=(U,X,q={})=>{let Z=this.preparseNode(U,X,q);if(x(Z))return this.bindReference(Z);let Q=this.createParseContext(Z),G=_4(Q),Y=this.bindReference(G);return Q0[Q.id]=Y};parse=(U,X={})=>this.finalize(this.parseDefinition(U,X));parseDefinition(U,X={}){if(M(U,"root"))return this.bindReference(U);let q=this.preparseOwnDefinitionFormat(U,X);if(M(q,"root"))return this.bindReference(q);let Z=this.createParseContext(q);Q0[Z.id]=Z;let Q=this.bindReference(this.parseOwnDefinitionFormat(U,Z));if(Q.isCyclic)Q=wq(Q,Z.id);return Q0[Z.id]=Q,Q}finalize(U){if(qZ(U),!U.precompilation&&!this.resolvedConfig.jitless)XY(U.references);return U}}class C4 extends I6{parseOwnDefinitionFormat(U,X){return _4(X)}preparseOwnDefinitionFormat(U,X){return this.preparseNode(R2(U),U,X)}preparseOwnAliasEntry(U,X){return[U,X]}normalizeRootScopeValue(U){return U}}var qZ=(U)=>{let X=U.references.filter((q)=>q.hasKind("alias"));for(let q of X){Object.assign(q.referencesById,q.resolution.referencesById);for(let Z of U.references)if(q.id in Z.referencesById)Object.assign(Z.referencesById,q.referencesById)}return U},YZ=(U)=>S(U,(X,q)=>[X,M(q,"root")||M(q,"generic")?q.json:M(q,"module")?YZ(q):y(`Unexpected resolution ${E(q)}`)]),N4=(U,X)=>{let q=X.indexOf(".");if(q===-1)return;let Z=X.slice(0,q),Q=U[Z];if(Q===void 0)return;if(!M(Q,"module"))return F(qY(Z));let G=X.slice(q+1),Y=Q[G];if(Y===void 0)return N4(Q,G);if(M(Y,"root")||M(Y,"generic"))return Y;if(M(Y,"module"))return Y.root??F(HZ(X));y(`Unexpected resolution for alias '${X}': ${E(Y)}`)},K6=(U,X)=>new C4(U,X),S2=new C4({});var JZ=(U,X)=>{let q={};for(let Z in X){let Q=X[Z];if(M(Q,"module")){let G=JZ(U,Q),Y=S(G,(J,H)=>[`${Z}.${J}`,H]);Object.assign(q,Y)}else if(M(Q,"root")||M(Q,"generic"))q[Z]=Q;else y(`Unexpected scope resolution ${E(Q)}`)}return q},S4=(U)=>`'${U}' is unresolvable`,qY=(U)=>`'${U}' must reference a module to be accessed using dot syntax`,HZ=(U)=>`Reference to submodule '${U}' must specify an alias`;S2.export();var{schema:v,node:x1,defineSchema:gP,generic:B0}=S2;var E4="^(?:0|[1-9]\\d*)$",ZY=new RegExp(E4),vP=d(ZY);var WZ=K6({bigint:"bigint",boolean:[{unit:!1},{unit:!0}],false:{unit:!1},never:[],null:{unit:null},number:"number",object:"object",string:"string",symbol:"symbol",true:{unit:!0},unknown:{},undefined:{unit:void 0},Array,Date},{prereducedAliases:!0}).export();O.intrinsic={...WZ};var _Z=K6({integer:{domain:"number",divisor:1},lengthBoundable:["string",Array],key:["string","symbol"],nonNegativeIntegerString:{domain:"string",pattern:E4}},{prereducedAliases:!0}).export();Object.assign(O.intrinsic,_Z);var QY=K6({jsonPrimitive:["string","number",{unit:!0},{unit:!1},{unit:null}],jsonObject:{domain:"object",index:{signature:"string",value:"$jsonData"}},jsonData:["$jsonPrimitive","$jsonObject"]},{prereducedAliases:!0}).export(),I={...WZ,..._Z,...QY,emptyStructure:x1("structure",{},{prereduced:!0})};O.intrinsic={...I};var N6=(U,X)=>new RegExp(U,X);Object.assign(N6,{as:N6});var LZ=(U)=>typeof U==="string"&&U[0]==="d"&&(U[1]==="'"||U[1]==='"')&&U[U.length-1]===U[1],$Z=(U)=>U.toString()!=="Invalid Date",zZ=(U)=>U.slice(2,-1),j4=(U)=>`'${U}' could not be parsed by the Date constructor`,FZ=(U,X)=>GY(U,X),GY=(U,X)=>{let q=new Date(U);if($Z(q))return q;let Z=uX(U);if(Z!==void 0){let Q=new Date(Z);if($Z(Q))return Q}return X?F(X===!0?j4(U):X):void 0};var YY=v({proto:"Array",sequence:"string",required:{key:"groups",value:["object",{unit:void 0}]}}),C6=(U,X)=>{let q=U.scanner.shiftUntilEscapable(HY[VZ[X]]);if(U.scanner.lookahead==="")return U.error(_Y(q,X));if(U.scanner.shift(),X in OZ){let Z;try{Z=new RegExp(q)}catch(Q){F(String(Q))}if(U.root=U.ctx.$.node("intersection",{domain:"string",pattern:q},{prereduced:!0}),X==="x/")U.root=U.ctx.$.node("morph",{in:U.root,morphs:(Q)=>Z.exec(Q),declaredOut:YY})}else if(a(X,b4))U.root=U.ctx.$.node("unit",{unit:q});else{let Z=FZ(q,j4(q));U.root=U.ctx.$.node("unit",{meta:q,unit:Z})}},b4={"'":1,'"':1},AZ={"/":1,"'":1,'"':1},JY={"d'":"'",'d"':'"',"'":"'",'"':'"'},OZ={"/":"/","x/":"/"},VZ={...JY,...OZ},HY={"'":(U)=>U.lookahead==="'",'"':(U)=>U.lookahead==='"',"/":(U)=>U.lookahead==="/"},WY={'"':"double-quote","'":"single-quote","/":"forward slash"},_Y=(U,X)=>`${X}${U} requires a closing ${WY[VZ[X]]}`;var BZ=(U)=>`Private type references should not include '#'. Use '${U}' instead.`,S6="Optional definitions like 'string?' are only valid as properties in an object or tuple",E6="Defaultable definitions like 'number = 0' are only valid as properties in an object or tuple";var j0={"<":1,">":1,"=":1,"|":1,"&":1,")":1,"[":1,"%":1,",":1,":":1,"?":1,"#":1,...c0};var TZ=(U,X)=>U===">"?X[0]==="="?X[1]==="=":X.trimStart()===""||a(X.trimStart()[0],j0):U==="="?X[0]!=="=":U===","||U==="?";var RZ=(U,X,q)=>DZ(U,X,q,[]),DZ=(U,X,q,Z)=>{let Q=q.parseUntilFinalizer();if(Z.push(Q.root),Q.finalizer===">"){if(Z.length!==X.params.length)return q.error(f4(U,X.names,Z.map((G)=>G.expression)));return Z}if(Q.finalizer===",")return DZ(U,X,q,Z);return Q.error($6(">"))},f4=(U,X,q)=>`${U}<${X.join(", ")}> requires exactly ${X.length} args (got ${q.length}${q.length===0?"":`: ${q.join(", ")}`})`;var j6=(U)=>{let X=U.scanner.shiftUntilLookahead(j0);if(X==="keyof")U.addPrefix("keyof");else U.root=LY(U,X)},$Y=(U,X,q)=>{if(q.scanner.shiftUntilNonWhitespace(),q.scanner.shift()!=="<")return q.error(f4(U,X.names,[]));let Q=RZ(U,X,q);return X(...Q)},LY=(U,X)=>zY(U,X)??FY(U,X)??U.error(X===""?U.scanner.lookahead==="#"?BZ(U.shiftedBy(1).scanner.shiftUntilLookahead(j0)):g4(U):S4(X)),zY=(U,X)=>{if(U.ctx.args?.[X]){let Z=U.ctx.args[X];if(typeof Z!=="string")return Z;return U.ctx.$.node("alias",{reference:Z},{prereduced:!0})}let q=U.ctx.$.maybeResolve(X);if(M(q,"root"))return q;if(q===void 0)return;if(M(q,"generic"))return $Y(X,q,U);return F(`Unexpected resolution ${E(q)}`)},FY=(U,X)=>{let q=mX(X);if(q!==void 0)return U.ctx.$.node("unit",{unit:q});let Z=lX(X);if(Z!==void 0)return U.ctx.$.node("unit",{unit:Z})},g4=(U)=>{let X=U.previousOperator();return X?y4(X,U.scanner.unscanned):AY(U.scanner.unscanned)},y4=(U,X="")=>`Token '${U}' requires a right operand${X?` before '${X}'`:""}`,AY=(U)=>`Expected an expression${U?` before '${U}'`:""}`;var k4=(U)=>U.scanner.lookahead===""?U.error(g4(U)):U.scanner.lookahead==="("?U.shiftedBy(1).reduceGroupOpen():U.scanner.lookaheadIsIn(AZ)?C6(U,U.scanner.shift()):U.scanner.lookaheadIsIn(c0)?k4(U.shiftedBy(1)):U.scanner.lookahead==="d"?U.scanner.nextLookahead in b4?C6(U,`${U.scanner.shift()}${U.scanner.shift()}`):j6(U):U.scanner.lookahead==="x"?U.scanner.nextLookahead==="/"?U.shiftedBy(2)&&C6(U,"x/"):j6(U):j6(U);var MZ={">":!0,">=":!0},PZ={"<":!0,"<=":!0};var u1={"<":">",">":"<","<=":">=",">=":"<=","==":"=="},wZ=(U,X)=>`Left bounds are only valid when paired with right bounds (try ...${X}${U})`,b6=(U)=>`Left-bounded expressions must specify their limits using < or <= (was ${U})`,IZ=(U,X,q,Z)=>`An expression may have at most one left bound (parsed ${U}${u1[X]}, ${q}${u1[Z]})`;var NZ=(U,X)=>{let q=OY(U,X);if(U.root.hasKind("unit")){if(typeof U.root.unit==="number"){U.reduceLeftBound(U.root.unit,q),U.unsetRoot();return}if(U.root.unit instanceof Date){let Z=`d'${U.root.description??U.root.unit.toISOString()}'`;U.unsetRoot(),U.reduceLeftBound(Z,q);return}}return BY(U,q)},CZ={"<":1,">":1,"=":1},OY=(U,X)=>U.scanner.lookaheadIs("=")?`${X}${U.scanner.shift()}`:X;var KZ=(U,X,q,Z)=>{if(q.extends(O.intrinsic.number)){if(typeof X!=="number")return F(v4(U,X,Z));return U==="=="?["min","max"]:U[0]===">"?["min"]:["max"]}if(q.extends(O.intrinsic.lengthBoundable)){if(typeof X!=="number")return F(v4(U,X,Z));return U==="=="?["exactLength"]:U[0]===">"?["minLength"]:["maxLength"]}if(q.extends(O.intrinsic.Date))return U==="=="?["after","before"]:U[0]===">"?["after"]:["before"];return F($q(q.expression))},VY=(U)=>({rule:LZ(U.limit)?zZ(U.limit):U.limit,exclusive:U.comparator.length===1}),BY=(U,X)=>{let q=U.unsetRoot(),Z=U.scanner.location;U.parseOperand();let Q=U.unsetRoot(),G=U.scanner.sliceChars(Z,U.scanner.location);if(U.root=q,!Q.hasKind("unit")||typeof Q.unit!=="number"&&!(Q.unit instanceof Date))return U.error(v4(X,G,"right"));let Y=Q.unit,J=X.length===1,H=KZ(X,typeof Y==="number"?Y:G,q,"right");for(let $ of H)U.constrainRoot($,X==="=="?{rule:Y}:{rule:Y,exclusive:J});if(!U.branches.leftBound)return;if(!a(X,PZ))return U.error(b6(X));let W=KZ(U.branches.leftBound.comparator,U.branches.leftBound.limit,q,"left");U.constrainRoot(W[0],VY(U.branches.leftBound)),U.branches.leftBound=null},v4=(U,X,q)=>`Comparator ${q==="left"?u1[U]:U} must be ${q==="left"?"preceded":"followed"} by a corresponding literal (was ${X})`;var SZ=(U)=>{U.scanner.shiftUntilNonWhitespace();let X=U.scanner.shiftUntilLookahead(j0);U.root=U.root.brand(X)};var jZ=(U)=>{U.scanner.shiftUntilNonWhitespace();let X=U.scanner.shiftUntilLookahead(j0),q=pX(X,{errorOnFail:EZ(X)});if(q===0)U.error(EZ(0));U.root=U.root.constrain("divisor",q)},EZ=(U)=>`% operator must be followed by a non-zero integer literal (was ${U})`;var h4=(U)=>{let X=U.scanner.shift();return X===""?U.finalize(""):X==="["?U.scanner.shift()==="]"?U.setRoot(U.root.array()):U.error(TY):X==="|"?U.scanner.lookahead===">"?U.shiftedBy(1).pushRootToBranch("|>"):U.pushRootToBranch(X):X==="&"?U.pushRootToBranch(X):X===")"?U.finalizeGroup():TZ(X,U.scanner.unscanned)?U.finalize(X):a(X,CZ)?NZ(U,X):X==="%"?jZ(U):X==="#"?SZ(U):(X in c0)?h4(U):U.error(f6(X))},f6=(U,X="")=>`'${U}' is not allowed here${X&&` (should be ${X})`}`,TY="Missing expected ']'";var bZ=(U)=>{let X=U.unsetRoot();U.parseOperand();let q=U.unsetRoot();if(!q.hasKind("unit"))return U.error(RY(q.expression));let Z=q.unit instanceof Date?()=>new Date(q.unit):q.unit;return[X,"=",Z]},RY=(U)=>`Default value '${U}' must be a literal value`;var x4=(U,X)=>{let q=X.$.maybeResolveRoot(U);if(q)return q;if(U.endsWith("[]")){let G=X.$.maybeResolveRoot(U.slice(0,-2));if(G)return G.array()}let Z=new m1(new F2(U),X),Q=DY(Z);if(Z.finalizer===">")F(f6(">"));return Q},DY=(U)=>{U.parseOperand();let X=E2(U).root;if(!X)return y(`Root was unexpectedly unset after parsing string '${U.scanner.scanned}'`);if(U.finalizer==="=")X=bZ(U);else if(U.finalizer==="?")X=[X,"?"];if(U.scanner.shiftUntilNonWhitespace(),U.scanner.lookahead)F(f6(U.scanner.lookahead));return X},E2=(U)=>{while(U.finalizer===void 0)MY(U);return U},MY=(U)=>U.hasRoot()?U.parseOperator():U.parseOperand();class m1{root;branches={prefixes:[],leftBound:null,intersection:null,union:null,pipe:null};finalizer;groups=[];scanner;ctx;constructor(U,X){this.scanner=U,this.ctx=X}error(U){return F(U)}hasRoot(){return this.root!==void 0}setRoot(U){this.root=U}unsetRoot(){let U=this.root;return this.root=void 0,U}constrainRoot(...U){this.root=this.root.constrain(U[0],U[1])}finalize(U){if(this.groups.length)return this.error($6(")"));this.finalizeBranches(),this.finalizer=U}reduceLeftBound(U,X){let q=u1[X];if(!a(q,MZ))return this.error(b6(X));if(this.branches.leftBound)return this.error(IZ(this.branches.leftBound.limit,this.branches.leftBound.comparator,U,q));this.branches.leftBound={comparator:q,limit:U}}finalizeBranches(){if(this.assertRangeUnset(),this.branches.pipe){this.pushRootToBranch("|>"),this.root=this.branches.pipe;return}if(this.branches.union){this.pushRootToBranch("|"),this.root=this.branches.union;return}if(this.branches.intersection){this.pushRootToBranch("&"),this.root=this.branches.intersection;return}this.applyPrefixes()}finalizeGroup(){this.finalizeBranches();let U=this.groups.pop();if(!U)return this.error(sX(")",this.scanner.unscanned));this.branches=U}addPrefix(U){this.branches.prefixes.push(U)}applyPrefixes(){while(this.branches.prefixes.length){let U=this.branches.prefixes.pop();this.root=U==="keyof"?this.root.keyof():y(`Unexpected prefix '${U}'`)}}pushRootToBranch(U){this.assertRangeUnset(),this.applyPrefixes();let X=this.root;if(this.root=void 0,this.branches.intersection=this.branches.intersection?.rawAnd(X)??X,U==="&")return;if(this.branches.union=this.branches.union?.rawOr(this.branches.intersection)??this.branches.intersection,this.branches.intersection=null,U==="|")return;this.branches.pipe=this.branches.pipe?.rawPipeOnce(this.branches.union)??this.branches.union,this.branches.union=null}parseUntilFinalizer(){return E2(new m1(this.scanner,this.ctx))}parseOperator(){return h4(this)}parseOperand(){return k4(this)}assertRangeUnset(){if(this.branches.leftBound)return this.error(wZ(this.branches.leftBound.limit,this.branches.leftBound.comparator))}reduceGroupOpen(){this.groups.push(this.branches),this.branches={prefixes:[],leftBound:null,union:null,intersection:null,pipe:null}}previousOperator(){return this.branches.leftBound?.comparator??this.branches.prefixes[this.branches.prefixes.length-1]??(this.branches.intersection?"&":this.branches.union?"|":this.branches.pipe?"|>":void 0)}shiftedBy(U){return this.scanner.jumpForward(U),this}}var PY="An empty string is not a valid generic parameter name",g6=(U,X,q)=>{U.shiftUntilNonWhitespace();let Z=U.shiftUntilLookahead(j0);if(Z===""){if(U.lookahead===""&&X.length)return X;return F(PY)}return U.shiftUntilNonWhitespace(),wY(U,Z,X,q)},fZ="extends ",wY=(U,X,q,Z)=>{if(U.shiftUntilNonWhitespace(),U.unscanned.startsWith(fZ))U.jumpForward(fZ.length);else{if(U.lookahead===",")U.shift();return q.push(X),g6(U,q,Z)}let Q=E2(new m1(U,Z));return q.push([X,Q.root]),g6(U,q,Z)};class u4 extends H0{constructor(U){let X={$:U,raw:U.fn};super((...q)=>{let Z=q.indexOf(":"),Q=Z===-1?q.length-1:Z-1,G=q.slice(0,Q+1),Y=U.parse(G).assertHasKind("intersection"),J=U.intrinsic.unknown;if(Z!==-1){if(Z!==q.length-2)return F(IY);J=U.parse(q[Z+1])}return(H)=>new gZ(H,Y,J)},{attach:X})}}class gZ extends H0{raw;params;returns;expression;constructor(U,X,q){let Z=`typed ${U.name}`,Q={[Z]:(...Y)=>{let J=X.assert(Y),H=U(...J);return q.assert(H)}}[Z];super(Q);this.raw=U,this.params=X,this.returns=q;let G=X.expression;if(G[0]==="["&&G[G.length-1]==="]")G=G.slice(1,-1);else if(G.endsWith("[]"))G=`...${G}`;this.expression=`(${G}) => ${q?.expression??"unknown"}`}}var IY=`":" must be followed by exactly one return type e.g:
184
+ fn("string", ":", "number")(s => s.length)`;class m4 extends H0{$;constructor(U){super((...X)=>new j2(U)(...X),{bind:U});this.$=U}in(U){return new j2(this.$,U===void 0?void 0:this.$.parse(U))}at(U,X){return new j2(this.$).at(U,X)}case(U,X){return new j2(this.$).case(U,X)}}class j2 extends H0{$;in;key;branches=[];constructor(U,X){super((q)=>this.caseEntries(Object.entries(q).map(([Z,Q])=>Z==="default"?[Z,Q]:[this.$.parse(Z),Q])));this.$=U,this.in=X}at(U,X){if(this.key)F(NY);if(this.branches.length)F(KY);return this.key=U,X?this.match(X):this}case(U,X){return this.caseEntry(this.$.parse(U),X)}caseEntry(U,X){let Z=(this.key?this.$.parse({[this.key]:U}):U).pipe(X);return this.branches.push(Z),this}match(U){return this(U)}strings(U){return this.caseEntries(Object.entries(U).map(([X,q])=>X==="default"?[X,q]:[this.$.node("unit",{unit:X}),q]))}caseEntries(U){for(let X=0;X<U.length;X++){let[q,Z]=U[X];if(q==="default"){if(X!==U.length-1)F("default may only be specified as the last key of a switch definition");return this.default(Z)}if(typeof Z!=="function")return F(`Value for case "${q}" must be a function (was ${r(Z)})`);this.caseEntry(q,Z)}return this}default(U){if(typeof U==="function")this.case(I.unknown,U);let X={branches:this.branches,ordered:!0};if(U==="never"||U==="assert")X.meta={onFail:yZ};let q=this.$.node("union",X);if(!this.in)return this.$.finalize(q);let Z=this.in.pipe(q);if(U==="never"||U==="assert")Z=Z.configureReferences({onFail:yZ},"self");return this.$.finalize(Z)}}var yZ=(U)=>U.throw(),KY="A key matcher must be specified before the first case i.e. match.at('foo') or match.in<object>().at('bar')",NY="At most one key matcher may be specified per expression";var y6=(U,X)=>{if(h(U)){if(U[1]==="=")return[X.$.parseOwnDefinitionFormat(U[0],X),"=",U[2]];if(U[1]==="?")return[X.$.parseOwnDefinitionFormat(U[0],X),"?"]}return k6(U,X)},kZ="Only required keys may make their values optional, e.g. { [mySymbol]: ['number', '?'] }",vZ="Only required keys may specify default values, e.g. { value: 'number = 0' }";var hZ=(U,X)=>{let q,Z={},Q=J1(U);for(let[Y,J]of Q){let H=EY(Y);if(H.kind==="spread"){if(!S0(Z))return F(SY);let A=X.$.parseOwnDefinitionFormat(J,X);if(A.equals(I.object))continue;if(!A.hasKind("intersection")||!A.basis?.equals(I.object))return F(jY(A.expression));q=A.structure;continue}if(H.kind==="undeclared"){if(J!=="reject"&&J!=="delete"&&J!=="ignore")F(CY(J));Z.undeclared=J;continue}let W=y6(J,X),$=H;if(H.kind==="required"){if(!h(W))p4(Z,"required",{key:H.normalized,value:W},X);else p4(Z,"optional",W[1]==="="?{key:H.normalized,value:W[0],default:W[2]}:{key:H.normalized,value:W[0]},X);continue}if(h(W)){if(W[1]==="?")F(kZ);if(W[1]==="=")F(vZ)}if(H.kind==="optional"){p4(Z,"optional",{key:H.normalized,value:W},X);continue}let _=X.$.parseOwnDefinitionFormat($.normalized,X),L=w6(_,W,X.$);if(L.index)Z.index=g(Z.index,L.index);if(L.required)Z.required=g(Z.required,L.required)}let G=X.$.node("structure",Z);return X.$.parseSchema({domain:"object",structure:q?.merge(G)??G})},p4=(U,X,q,Z)=>{U[X]=g(U[X],Z.$.node(X,q))},CY=(U)=>`Value of '+' key must be 'reject', 'delete', or 'ignore' (was ${E(U)})`,SY="Spread operator may only be used as the first key in an object",EY=(U)=>typeof U==="symbol"?{kind:"required",normalized:U}:U[U.length-1]==="?"?U[U.length-2]===W1?{kind:"required",normalized:`${U.slice(0,-2)}?`}:{kind:"optional",normalized:U.slice(0,-1)}:U[0]==="["&&U[U.length-1]==="]"?{kind:"index",normalized:U.slice(1,-1)}:U[0]===W1&&U[1]==="["&&U[U.length-1]==="]"?{kind:"required",normalized:U.slice(1)}:U==="..."?{kind:"spread"}:U==="+"?{kind:"undeclared"}:{kind:"required",normalized:U==="\\..."?"...":U==="\\+"?"+":U},jY=(U)=>`Spread operand must resolve to an object literal type (was ${U})`;var uZ=(U,X)=>mY(U)?dZ[U[0]](U,X):xY(U)?lZ[U[1]](U,X):null,bY=(U,X)=>X.$.parseOwnDefinitionFormat(U[1],X).keyof(),l4=(U,X)=>{if(U[2]===void 0)return F(y4(U[1],""));let q=X.$.parseOwnDefinitionFormat(U[0],X),Z=X.$.parseOwnDefinitionFormat(U[2],X);if(U[1]==="|")return X.$.node("union",{branches:[q,Z]});let Q=U[1]==="&"?$0(q,Z,X.$):T2(q,Z,X.$);if(Q instanceof B)return Q.throw();return Q},fY=(U,X)=>X.$.parseOwnDefinitionFormat(U[0],X).array(),gY=(U,X)=>{if(typeof U[2]!=="function")return F(mZ("=>",U[2]));return X.$.parseOwnDefinitionFormat(U[0],X).pipe(U[2])},mZ=(U,X)=>`${U===":"?"Narrow":"Morph"} expression requires a function following '${U}' (was ${typeof X})`,yY=(U,X)=>{if(typeof U[2]!=="function")return F(mZ(":",U[2]));return X.$.parseOwnDefinitionFormat(U[0],X).constrain("predicate",U[2])},kY=(U,X)=>X.$.parseOwnDefinitionFormat(U[0],X).configure(U[2],U[3]),pZ=(U)=>U,vY=pZ({"[]":fY,"?":()=>F(S6)}),hY=pZ({"|":l4,"&":l4,":":yY,"=>":gY,"|>":l4,"@":kY,"=":()=>F(E6)}),lZ={...vY,...hY},xY=(U)=>lZ[U[1]]!==void 0,uY=(U)=>U,dZ=uY({keyof:bY,instanceof:(U,X)=>{if(typeof U[1]!=="function")return F(xZ(J2(U[1])));let q=U.slice(1).map((Z)=>typeof Z==="function"?X.$.node("proto",{proto:Z}):F(xZ(J2(Z))));return q.length===1?q[0]:X.$.node("union",{branches:q})},"===":(U,X)=>X.$.units(U.slice(1))}),mY=(U)=>dZ[U[0]]!==void 0,xZ=(U)=>`Expected a constructor following 'instanceof' operator (was ${U})`;var sZ=(U,X)=>{let q=[{}],Z=0;while(Z<U.length){let Q=!1;if(U[Z]==="..."&&Z<U.length-1)Q=!0,Z++;let G=y6(U[Z],X),[Y,J,H]=!h(G)?[G]:G;if(Z++,Q){if(!Y.extends(O.intrinsic.Array))return F(dY(Y.expression));q=q.flatMap((W)=>Y.distribute(($)=>lY(z6(W),$)))}else q=q.map((W)=>{if(J==="?")return oZ(W,Y);if(J==="=")return pY(W,Y,H);return d4(W,Y)})}return X.$.parseSchema(q.map((Q)=>S0(Q)?{proto:Array,exactLength:0}:{proto:Array,sequence:Q}))},d4=(U,X)=>{if(U.defaultables||U.optionals)return F(U.variadic?M4:cY);if(U.variadic)U.postfix=g(U.postfix,X);else U.prefix=g(U.prefix,X);return U},oZ=(U,X)=>{if(U.variadic)return F(rZ);return U.optionals=g(U.optionals,X),U},pY=(U,X,q)=>{if(U.variadic)return F(rZ);if(U.optionals)return F(iY);return U.defaultables=g(U.defaultables,[[X,q]]),U},cZ=(U,X)=>{if(U.postfix)F(iZ);if(U.variadic){if(!U.variadic.equals(X))F(iZ)}else U.variadic=X.internal;return U},lY=(U,X)=>{let q=X.select({method:"find",kind:"sequence"});if(!q)return cZ(U,O.intrinsic.unknown);if(q.prefix)for(let Z of q.prefix)d4(U,Z);if(q.optionals)for(let Z of q.optionals)oZ(U,Z);if(q.variadic)cZ(U,q.variadic);if(q.postfix)for(let Z of q.postfix)d4(U,Z);return U},dY=(U)=>`Spread element must be an array (was ${U})`,iZ="A tuple may have at most one variadic element",cY="A required element may not follow an optional element",rZ="An optional element may not follow a variadic element";var iY="A defaultable element may not follow an optional element without a default";var sY={},k6=(U,X)=>{if(typeof U==="string"){if(X.args&&Object.keys(X.args).some((Z)=>U.includes(Z)))return x4(U,X);let q=sY[X.$.name]??={};return q[U]??=x4(U,X)}return G0(U,"object")?oY(U,X):F(c4(r(U)))},oY=(U,X)=>{let q=Y2(U);switch(q){case void 0:if(M(U,"root"))return U;if("~standard"in U)return rY(U,X);return hZ(U,X);case"Array":return aY(U,X);case"RegExp":return X.$.node("intersection",{domain:"string",pattern:U},{prereduced:!0});case"Function":{let Z=d0(U)?U():U;if(M(Z,"root"))return Z;return F(c4("Function"))}default:return F(c4(q??E(U)))}},rY=(U,X)=>X.$.intrinsic.unknown.pipe((q,Z)=>{let Q=U["~standard"].validate(q);if(!Q.issues)return Q.value;for(let{message:G,path:Y}of Q.issues)if(Y)if(Y.length)Z.error({problem:gX(G),relativePath:Y.map((J)=>typeof J==="object"?J.key:J)});else Z.error({message:G});else Z.error({message:G})}),aY=(U,X)=>uZ(U,X)??sZ(U,X),c4=(U)=>`Type definitions must be strings or objects (was ${U})`;class i4 extends H0{constructor(U){let X=Object.assign({errors:W0,hkt:X0,$:U,raw:U.parse,module:U.constructor.module,scope:U.constructor.scope,declare:U.declare,define:U.define,match:U.match,generic:U.generic,schema:U.schema,keywords:U.ambient,unit:U.unit,enumerated:U.enumerated,instanceOf:U.instanceOf,valueOf:U.valueOf,or:U.or,and:U.and,merge:U.merge,pipe:U.pipe,fn:U.fn},U.ambientAttachments);super((...q)=>{if(q.length===1)return U.parse(q[0]);if(q.length===2&&typeof q[0]==="string"&&q[0][0]==="<"&&q[0][q[0].length-1]===">"){let Z=q[0].slice(1,-1),Q=U.parseGenericParams(Z,{});return new r0(Q,q[1],U,U,null)}return U.parse(q)},{attach:X})}}var p1=O;class v6 extends I6{get ambientAttachments(){if(!p1.typeAttachments)return;return this.cacheGetter("ambientAttachments",S(p1.typeAttachments,(U,X)=>[U,this.bindReference(X)]))}preparseOwnAliasEntry(U,X){let q=U.indexOf("<");if(q===-1){if(M(X,"module")||M(X,"generic"))return[U,X];let G=this.name==="ark"?U:U==="root"?this.name:`${this.name}.${U}`,Y=this.resolvedConfig.keywords?.[G];if(Y)X=[X,"@",Y];return[U,X]}if(U[U.length-1]!==">")F("'>' must be the last character of a generic declaration in a scope");let Z=U.slice(0,q),Q=U.slice(q+1,-1);return[Z,()=>{let G=this.parseGenericParams(Q,{alias:Z});return Hq(G,X,this)}]}parseGenericParams(U,X){return g6(new F2(U),[],this.createParseContext({...X,def:U,prefix:"generic"}))}normalizeRootScopeValue(U){if(d0(U)&&!M(U,"generic"))return U();return U}preparseOwnDefinitionFormat(U,X){return{...X,def:U,prefix:X.alias??"type"}}parseOwnDefinitionFormat(U,X){if(!(X.alias&&(X.alias in this.aliases))&&!X.args)X.args={this:X.id};let Z=k6(U,X);if(h(Z)){if(Z[1]==="=")return F(E6);if(Z[1]==="?")return F(S6)}return Z}unit=(U)=>this.units([U]);valueOf=(U)=>this.units(IX(U));enumerated=(...U)=>this.units(U);instanceOf=(U)=>this.node("proto",{proto:U},{prereduced:!0});or=(...U)=>this.schema(U.map((X)=>this.parse(X)));and=(...U)=>U.reduce((X,q)=>X.and(this.parse(q)),this.intrinsic.unknown);merge=(...U)=>U.reduce((X,q)=>X.merge(this.parse(q)),this.intrinsic.object);pipe=(...U)=>this.intrinsic.unknown.pipe(...U);fn=new u4(this);match=new m4(this);declare=()=>({type:this.type});define(U){return U}type=new i4(this);static scope=(U,X={})=>new v6(U,X);static module=(U,X={})=>this.scope(U,X).export()}var b2=Object.assign(v6.scope,{define:(U)=>U}),f=v6;class aZ extends X0{description='merge an object\'s properties onto another like `Merge(User, { isAdmin: "true" })`'}var nY=B0(["base",I.object],["props",I.object])((U)=>U.base.merge(U.props),aZ),nZ=f.module({Key:I.key,Merge:nY});class tZ extends X0{}var tY=B0("element")((U)=>{let X=U.element.exclude(I.Array),q=X.array();return X.rawOr(q).pipe(l0).distribute((Z)=>Z.assertHasKind("morph").declareOut(q),v)},tZ),eZ=f.module({root:I.Array,readonly:"root",index:I.nonNegativeIntegerString,liftFrom:tY},{name:"Array"});var s4=v(["string",_1.FileConstructor]),eY=s4.rawOr(s4.array()),U8=v({meta:"an object representing parsed form data",domain:"object",index:{signature:"string",value:eY}}),X8=f.module({root:["instanceof",FormData],value:s4,parsed:U8,parse:v({in:FormData,morphs:(U)=>{let X={};for(let[q,Z]of U)if(q in X){let Q=X[q];if(typeof Q==="string"||Q instanceof _1.FileConstructor)X[q]=[Q,Z];else Q.push(Z)}else X[q]=Z;return X},declaredOut:U8})},{name:"FormData"});var q8=f.module({Int8:["instanceof",Int8Array],Uint8:["instanceof",Uint8Array],Uint8Clamped:["instanceof",Uint8ClampedArray],Int16:["instanceof",Int16Array],Uint16:["instanceof",Uint16Array],Int32:["instanceof",Int32Array],Uint32:["instanceof",Uint32Array],Float32:["instanceof",Float32Array],Float64:["instanceof",Float64Array],BigInt64:["instanceof",BigInt64Array],BigUint64:["instanceof",BigUint64Array]},{name:"TypedArray"});var U7={Boolean:1,Number:1,String:1},Z8=f.module({...S({...yU,...vU},(U,X)=>(U in U7)?[]:[U,["instanceof",X]]),Array:eZ,TypedArray:q8,FormData:X8});var X7=v({domain:{domain:"number",meta:"a number representing a Unix timestamp"},divisor:{rule:1,meta:"an integer representing a Unix timestamp"},min:{rule:-8640000000000000,meta:"a Unix timestamp after -8640000000000000"},max:{rule:8640000000000000,meta:"a Unix timestamp before 8640000000000000"},meta:"an integer representing a safe Unix timestamp"}),q7=v({domain:"number",divisor:1}),h6=f.module({root:I.number,integer:q7,epoch:X7,safe:v({domain:{domain:"number",numberAllowsNaN:!1},min:Number.MIN_SAFE_INTEGER,max:Number.MAX_SAFE_INTEGER}),NaN:["===",Number.NaN],Infinity:["===",Number.POSITIVE_INFINITY],NegativeInfinity:["===",Number.NEGATIVE_INFINITY]},{name:"number"});var l=(U,X,q)=>{let Z={domain:"string",pattern:{rule:U.source,flags:U.flags,meta:X}};if(q)Z.meta={format:q};return x1("intersection",Z)},Q8=l(W2,"a well-formed integer string"),O8=f.module({root:Q8,parse:v({in:Q8,morphs:(U,X)=>{let q=Number.parseInt(U);return Number.isSafeInteger(q)?q:X.error("an integer in the range Number.MIN_SAFE_INTEGER to Number.MAX_SAFE_INTEGER")},declaredOut:I.integer})},{name:"string.integer"}),Z7=l(/^[\dA-Fa-f]+$/,"hex characters only"),Q7=f.module({root:l(/^(?:[\d+/A-Za-z]{4})*(?:[\d+/A-Za-z]{2}==|[\d+/A-Za-z]{3}=)?$/,"base64-encoded"),url:l(/^(?:[\w-]{4})*(?:[\w-]{2}(?:==|%3D%3D)?|[\w-]{3}(?:=|%3D)?)?$/,"base64url-encoded")},{name:"string.base64"}),G8=l(/^[A-Z].*$/,"capitalized"),G7=f.module({root:v({in:"string",morphs:(U)=>U.charAt(0).toUpperCase()+U.slice(1),declaredOut:G8}),preformatted:G8},{name:"string.capitalize"}),Y7=(U)=>{let X=U.replace(/[ -]+/g,""),q=0,Z,Q,G=!1;for(let Y=X.length-1;Y>=0;Y--){if(Z=X.substring(Y,Y+1),Q=Number.parseInt(Z,10),G)Q*=2,q+=Q>=10?Q%10+1:Q;else q+=Q;G=!G}return!!(q%10===0?X:!1)},J7=/^(?:4\d{12}(?:\d{3,6})?|5[1-5]\d{14}|(222[1-9]|22[3-9]\d|2[3-6]\d{2}|27[01]\d|2720)\d{12}|6(?:011|5\d\d)\d{12,15}|3[47]\d{13}|3(?:0[0-5]|[68]\d)\d{11}|(?:2131|1800|35\d{3})\d{11}|6[27]\d{14}|^(81\d{14,17}))$/,H7=v({domain:"string",pattern:{meta:"a credit card number",rule:J7.source},predicate:{meta:"a credit card number",predicate:Y7}});var W7=/^([+-]?\d{4}(?!\d{2}\b))((-?)((0[1-9]|1[0-2])(\3([12]\d|0[1-9]|3[01]))?|W([0-4]\d|5[0-3])(-?[1-7])?|(00[1-9]|0[1-9]\d|[12]\d{2}|3([0-5]\d|6[1-6])))(T((([01]\d|2[0-3])((:?)[0-5]\d)?|24:?00)([,.]\d+(?!:))?)?(\17[0-5]\d([,.]\d+)?)?([Zz]|([+-])([01]\d|2[0-3]):?([0-5]\d)?)?)?)?$/;var _7=(U)=>!Number.isNaN(new Date(U).valueOf()),Y8=v({domain:"string",predicate:{meta:"a parsable date",predicate:_7}}).assertHasKind("intersection"),J8=O8.root.internal.narrow((U,X)=>{let q=Number.parseInt(U),Z=h6.epoch(q);if(Z instanceof W0)return X.errors.merge(Z),!1;return!0}).configure({description:"an integer string representing a safe Unix timestamp"},"self").assertHasKind("intersection"),$7=f.module({root:J8,parse:v({in:J8,morphs:(U)=>new Date(U),declaredOut:I.Date})},{name:"string.date.epoch"}),H8=l(W7,"an ISO 8601 (YYYY-MM-DDTHH:mm:ss.sssZ) date").internal.assertHasKind("intersection"),L7=f.module({root:H8,parse:v({in:H8,morphs:(U)=>new Date(U),declaredOut:I.Date})},{name:"string.date.iso"}),z7=f.module({root:Y8,parse:v({declaredIn:Y8,in:"string",morphs:(U,X)=>{let q=new Date(U);if(Number.isNaN(q.valueOf()))return X.error("a parsable date");return q},declaredOut:I.Date}),iso:L7,epoch:$7},{name:"string.date"}),F7=l(/^[\w%+.-]+@[\d.A-Za-z-]+\.[A-Za-z]{2,}$/,"an email address","email"),W8="(?:[0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])",a0=`(${W8}[.]){3}${W8}`,A7=new RegExp(`^${a0}$`),c="(?:[0-9a-fA-F]{1,4})",O7=new RegExp(`^((?:${c}:){7}(?:${c}|:)|(?:${c}:){6}(?:${a0}|:${c}|:)|(?:${c}:){5}(?::${a0}|(:${c}){1,2}|:)|(?:${c}:){4}(?:(:${c}){0,1}:${a0}|(:${c}){1,3}|:)|(?:${c}:){3}(?:(:${c}){0,2}:${a0}|(:${c}){1,4}|:)|(?:${c}:){2}(?:(:${c}){0,3}:${a0}|(:${c}){1,5}|:)|(?:${c}:){1}(?:(:${c}){0,4}:${a0}|(:${c}){1,6}|:)|(?::((?::${c}){0,5}:${a0}|(?::${c}){1,7}|:)))(%[0-9a-zA-Z.]{1,})?$`),V7=f.module({root:["v4 | v6","@","an IP address"],v4:l(A7,"an IPv4 address","ipv4"),v6:l(O7,"an IPv6 address","ipv6")},{name:"string.ip"}),l1="a JSON string",V8=(U)=>{if(!(U instanceof SyntaxError))throw U;return`must be ${l1} (${U})`},B7=v({meta:l1,domain:"string",predicate:{meta:l1,predicate:(U,X)=>{try{return JSON.parse(U),!0}catch(q){return X.reject({code:"predicate",expected:l1,problem:V8(q)})}}}}),T7=(U,X)=>{if(U.length===0)return X.error({code:"predicate",expected:l1,actual:"empty"});try{return JSON.parse(U)}catch(q){return X.error({code:"predicate",expected:l1,problem:V8(q)})}},R7=f.module({root:B7,parse:v({meta:"safe JSON string parser",in:"string",morphs:T7,declaredOut:I.jsonObject})},{name:"string.json"}),_8=l(/^[a-z]*$/,"only lowercase letters"),D7=f.module({root:v({in:"string",morphs:(U)=>U.toLowerCase(),declaredOut:_8}),preformatted:_8},{name:"string.lower"}),B8=["NFC","NFD","NFKC","NFKD"],f2=S(B8,(U,X)=>[X,v({domain:"string",predicate:(q)=>q.normalize(X)===q,meta:`${X}-normalized unicode`})]),x6=S(B8,(U,X)=>[X,v({in:"string",morphs:(q)=>q.normalize(X),declaredOut:f2[X]})]),M7=f.module({root:x6.NFC,preformatted:f2.NFC},{name:"string.normalize.NFC"}),P7=f.module({root:x6.NFD,preformatted:f2.NFD},{name:"string.normalize.NFD"}),w7=f.module({root:x6.NFKC,preformatted:f2.NFKC},{name:"string.normalize.NFKC"}),I7=f.module({root:x6.NFKD,preformatted:f2.NFKD},{name:"string.normalize.NFKD"}),K7=f.module({root:"NFC",NFC:M7,NFD:P7,NFKC:w7,NFKD:I7},{name:"string.normalize"}),$8=l(W6,"a well-formed numeric string"),N7=f.module({root:$8,parse:v({in:$8,morphs:(U)=>Number.parseFloat(U),declaredOut:I.number})},{name:"string.numeric"}),L8="a regex pattern",C7=v({domain:"string",predicate:{meta:L8,predicate:(U,X)=>{try{return new RegExp(U),!0}catch(q){return X.reject({code:"predicate",expected:L8,problem:String(q)})}}},meta:{format:"regex"}}),S7=/^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[A-Za-z-][\dA-Za-z-]*)(?:\.(?:0|[1-9]\d*|\d*[A-Za-z-][\dA-Za-z-]*))*))?(?:\+([\dA-Za-z-]+(?:\.[\dA-Za-z-]+)*))?$/,E7=l(S7,"a semantic version (see https://semver.org/)"),z8=l(/^\S.*\S$|^\S?$/,"trimmed"),j7=f.module({root:v({in:"string",morphs:(U)=>U.trim(),declaredOut:z8}),preformatted:z8},{name:"string.trim"}),F8=l(/^[A-Z]*$/,"only uppercase letters"),b7=f.module({root:v({in:"string",morphs:(U)=>U.toUpperCase(),declaredOut:F8}),preformatted:F8},{name:"string.upper"}),f7=(U)=>URL.canParse(U),A8=v({domain:"string",predicate:{meta:"a URL string",predicate:f7},meta:{format:"uri"}}),g7=f.module({root:A8,parse:v({declaredIn:A8,in:"string",morphs:(U,X)=>{try{return new URL(U)}catch{return X.error("a URL string")}},declaredOut:v(URL)})},{name:"string.url"}),y7=f.module({root:["versioned | nil | max","@",{description:"a UUID",format:"uuid"}],"#nil":"'00000000-0000-0000-0000-000000000000'","#max":"'ffffffff-ffff-ffff-ffff-ffffffffffff'","#versioned":/[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}/i,v1:l(/^[\da-f]{8}-[\da-f]{4}-1[\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}$/i,"a UUIDv1"),v2:l(/^[\da-f]{8}-[\da-f]{4}-2[\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}$/i,"a UUIDv2"),v3:l(/^[\da-f]{8}-[\da-f]{4}-3[\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}$/i,"a UUIDv3"),v4:l(/^[\da-f]{8}-[\da-f]{4}-4[\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}$/i,"a UUIDv4"),v5:l(/^[\da-f]{8}-[\da-f]{4}-5[\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}$/i,"a UUIDv5"),v6:l(/^[\da-f]{8}-[\da-f]{4}-6[\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}$/i,"a UUIDv6"),v7:l(/^[\da-f]{8}-[\da-f]{4}-7[\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}$/i,"a UUIDv7"),v8:l(/^[\da-f]{8}-[\da-f]{4}-8[\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}$/i,"a UUIDv8")},{name:"string.uuid"}),T8=f.module({root:I.string,alpha:l(/^[A-Za-z]*$/,"only letters"),alphanumeric:l(/^[\dA-Za-z]*$/,"only letters and digits 0-9"),hex:Z7,base64:Q7,capitalize:G7,creditCard:H7,date:z7,digits:l(/^\d*$/,"only digits 0-9"),email:F7,integer:O8,ip:V7,json:R7,lower:D7,normalize:K7,numeric:N7,regex:C7,semver:E7,trim:j7,upper:b7,url:g7,uuid:y7},{name:"string"});var R8=f.module({bigint:I.bigint,boolean:I.boolean,false:I.false,never:I.never,null:I.null,number:I.number,object:I.object,string:I.string,symbol:I.symbol,true:I.true,unknown:I.unknown,undefined:I.undefined}),D8=f.module({root:I.unknown,any:I.unknown},{name:"unknown"}),k7=f.module({root:I.jsonObject,stringify:x1("morph",{in:I.jsonObject,morphs:(U)=>JSON.stringify(U),declaredOut:I.string})},{name:"object.json"}),M8=f.module({root:I.object,json:k7},{name:"object"});class P8 extends X0{description='instantiate an object from an index signature and corresponding value type like `Record("string", "number")`'}var v7=B0(["K",I.key],"V")((U)=>({domain:"object",index:{signature:U.K,value:U.V}}),P8);class w8 extends X0{description='pick a set of properties from an object like `Pick(User, "name | age")`'}var h7=B0(["T",I.object],["K",I.key])((U)=>U.T.pick(U.K),w8);class I8 extends X0{description='omit a set of properties from an object like `Omit(User, "age")`'}var x7=B0(["T",I.object],["K",I.key])((U)=>U.T.omit(U.K),I8);class K8 extends X0{description="make all named properties of an object optional like `Partial(User)`"}var u7=B0(["T",I.object])((U)=>U.T.partial(),K8);class N8 extends X0{description="make all named properties of an object required like `Required(User)`"}var m7=B0(["T",I.object])((U)=>U.T.required(),N8);class C8 extends X0{description='exclude branches of a union like `Exclude("boolean", "true")`'}var p7=B0("T","U")((U)=>U.T.exclude(U.U),C8);class S8 extends X0{description='extract branches of a union like `Extract("0 | false | 1", "number")`'}var l7=B0("T","U")((U)=>U.T.extract(U.U),S8),E8=f.module({Exclude:p7,Extract:l7,Omit:x7,Partial:u7,Pick:h7,Record:v7,Required:m7});var x0=b2({...R8,...E8,...Z8,...nZ,string:T8,number:h6,object:M8,unknown:D8},{prereducedAliases:!0,name:"ark"}),n=x0.export();Object.assign(p1.ambient,n);p1.typeAttachments={string:n.string.root,number:n.number.root,bigint:n.bigint,boolean:n.boolean,symbol:n.symbol,undefined:n.undefined,null:n.null,object:n.object.root,unknown:n.unknown.root,false:n.false,true:n.true,never:n.never,arrayIndex:n.Array.index,Key:n.Key,Record:n.Record,Array:n.Array.root,Date:n.Date};var o4=Object.assign(x0.type,p1.typeAttachments),d7=x0.match,c7=x0.fn,i7=x0.generic,AN=x0.schema,s7=x0.define,o7=x0.declare;var z1=b2({Operator:"'EQ' | '==' | 'NEQ' | '!=' | 'GT' | '>' | 'GTE' | '>=' | 'LT' | '<' | 'LTE' | '<=' | 'IN' | 'NOT_IN' | 'CONTAINS' | 'MATCHES' | 'RANGE' | 'SINCE' | 'AFTER' | 'BEFORE' | 'UNTIL'",Condition:"RangeCondition | ListCondition | ContainsCondition | NumericCondition | RegexCondition | BasicCondition",RangeCondition:{field:"string > 0",operator:"'RANGE'",value:"unknown[] == 2"},ListCondition:{field:"string > 0",operator:"'IN' | 'NOT_IN'",value:"unknown[]"},ContainsCondition:{field:"string > 0",operator:"'CONTAINS'",value:"string | unknown[]"},NumericCondition:{field:"string > 0",operator:"'>' | '>=' | '<' | '<=' | 'GT' | 'GTE' | 'LT' | 'LTE'",value:"number | string"},RegexCondition:{field:"string > 0",operator:"'MATCHES'",value:"string"},BasicCondition:{field:"string > 0",operator:"Operator",value:"unknown"},ConditionGroup:{operator:"'AND' | 'OR'",conditions:"(Condition | ConditionGroup)[] >= 1"},RuleCondition:"Condition | ConditionGroup",Action:{"type?":"string > 0","params?":"object","delay?":"number.integer >= 0 | string","probability?":"0 <= number <= 1 | string","if?":"RuleCondition | RuleCondition[]","then?":"Action | ActionGroup","else?":"Action | ActionGroup","break?":"boolean","continue?":"boolean"},ActionGroup:{"mode?":"'ALL' | 'EITHER' | 'SEQUENCE'",actions:"(Action | ActionGroup)[] >= 1"},RuleAction:"Action | ActionGroup",TriggerRule:{id:"string > 0","name?":"string","description?":"string","priority?":"number.integer","enabled?":"boolean","cooldown?":"number.integer >= 0","tags?":"string[]",on:"string > 0","if?":"RuleCondition | RuleCondition[]",do:"RuleAction | RuleAction[]","comment?":"string"}}).export(),fN=z1.Operator,gN=z1.Condition,yN=z1.ConditionGroup,kN=z1.RuleCondition,vN=z1.Action,hN=z1.ActionGroup,r7=z1.TriggerRule;class a7{static validate(U){let X=r7(U);if(X instanceof o4.errors){let Q=[];for(let G of X){let Y=G.path.join("."),J=G.message,H=void 0;if(Y.endsWith("on")&&(J.includes("string")||J.includes("must be")))if(typeof U==="object"&&U!==null&&"on"in U&&U.on===!0)J="The 'on' field is incorrect (boolean true found).",H=`In YAML, 'on' is a boolean keyword (true). Quote it: "on": "EventName"`;else H="Ensure 'on' is a string event name.";Q.push({path:Y,message:J,suggestion:H,severity:"error"})}return{valid:!1,issues:Q}}let q=X,Z=[];if(this.validateConditionsRecursive(q.if,Z,"if"),Z.length>0)return{valid:!1,issues:Z};return{valid:!0,rule:q}}static validateConditionsRecursive(U,X,q){if(!U)return;if(Array.isArray(U)){U.forEach((Z,Q)=>{this.validateConditionsRecursive(Z,X,`${q}.${Q}`)});return}if(typeof U==="object"&&U!==null&&"conditions"in U&&Array.isArray(U.conditions)){U.conditions.forEach((Z,Q)=>{this.validateConditionsRecursive(Z,X,`${q}.conditions.${Q}`)});return}if(typeof U==="object"&&U!==null&&"operator"in U&&"value"in U)this.validateConditionValue(U,X,q)}static validateConditionValue(U,X,q){let{operator:Z,value:Q}=U;if(typeof Z==="string"&&["IN","NOT_IN","RANGE","CONTAINS"].includes(Z)){if(Z==="CONTAINS"){if(typeof Q!=="string"&&!Array.isArray(Q))X.push({path:`${q}.value`,message:`Incorrect value type: Operator 'CONTAINS' expects a String or List (Array), but received ${typeof Q}.`,suggestion:"Use a substring or a list of items.",severity:"error"});return}if(!Array.isArray(Q)){X.push({path:`${q}.value`,message:`Incorrect value type: Operator '${Z}' expects a List (Array), but received ${typeof Q}.`,suggestion:Z==="RANGE"?"Use format [min, max]":"Use format [item1, item2]",severity:"error"});return}if(Z==="RANGE"){if(Q.length!==2)X.push({path:`${q}.value`,message:"Invalid Range: Operator 'RANGE' requires exactly 2 values (min and max).",suggestion:"Use format [min, max], e.g. [1, 10]",severity:"error"});else if(typeof Q[0]!=="number"&&typeof Q[0]!=="string")X.push({path:`${q}.value`,message:"Incorrect range type: Range values must be numbers or expression strings.",severity:"error"})}}else if(Z==="MATCHES")if(typeof Q!=="string")X.push({path:`${q}.value`,message:`Incorrect value type: Operator 'MATCHES' expects a string (regex pattern), but received ${typeof Q}.`,severity:"error"});else try{new RegExp(Q)}catch(G){X.push({path:`${q}.value`,message:`Invalid Regex pattern: ${G.message}`,severity:"error"})}else if(typeof Z==="string"&&["GT","GTE","LT","LTE",">",">=","<","<="].includes(Z)){if(typeof Q!=="number"&&typeof Q!=="string")X.push({path:`${q}.value`,message:`Incorrect value type: Operator '${Z}' expects a number or expression string, but received ${typeof Q}.`,severity:"error"})}}}class u6{conditions=[];op="AND";constructor(U="AND"){this.op=U}where(U,X,q){return this.conditions.push({field:U,operator:X,value:q}),this}and(U){let X=new u6("AND");return this.conditions.push(U(X).build()),this}or(U){let X=new u6("OR");return this.conditions.push(U(X).build()),this}build(){if(this.conditions.length===0)throw Error("Condition group must have at least one condition");if(this.conditions.length===1&&this.op==="AND")return this.conditions[0];return{operator:this.op,conditions:this.conditions}}}class j8{actions=[];mode="ALL";setMode(U){return this.mode=U,this}add(U,X,q){return this.actions.push({type:U,params:X,...q}),this}build(){if(this.actions.length===0)throw Error("Action group must have at least one action");if(this.actions.length===1&&this.mode==="ALL")return this.actions[0];if(this.mode==="ALL")return this.actions;return{mode:this.mode,actions:this.actions}}}class n7{rule={enabled:!0,priority:0};withId(U){return this.rule.id=U,this}withName(U){return this.rule.name=U,this}withDescription(U){return this.rule.description=U,this}withPriority(U){return this.rule.priority=U,this}withCooldown(U){return this.rule.cooldown=U,this}withTags(U){return this.rule.tags=U,this}on(U){return this.rule.on=U,this}if(U,X,q){if(!this.rule.if)this.rule.if={field:U,operator:X,value:q};else if(Array.isArray(this.rule.if))this.rule.if.push({field:U,operator:X,value:q});else this.rule.if=[this.rule.if,{field:U,operator:X,value:q}];return this}ifComplex(U){let X=new u6,q=U(X).build();return this.rule.if=q,this}do(U,X,q){let Z={type:U,params:X,...q};if(!this.rule.do)this.rule.do=Z;else if(Array.isArray(this.rule.do))this.rule.do.push(Z);else if(this.rule.do&&typeof this.rule.do==="object"&&"actions"in this.rule.do)this.rule.do.actions.push(Z);else this.rule.do=[this.rule.do,Z];return this}doComplex(U){let X=new j8,q=U(X).build();return this.rule.do=q,this}build(){if(!this.rule.id)throw Error("Rule ID is required");if(!this.rule.on)throw Error("Rule 'on' event is required");if(!this.rule.do)throw Error("Rule 'do' action is required");return this.rule}}var mQ=cQ(uQ(),1);class nA{static toYaml(U){let X=Array.isArray(U)?U:[U];return mQ.default.stringify(X)}static async saveToFile(U,X){let q=this.toYaml(U);if(typeof process<"u"&&process.versions&&process.versions.node){let Z=await import("fs/promises"),G=(await import("path")).dirname(X);await Z.mkdir(G,{recursive:!0}),await Z.writeFile(X,q,"utf8")}else throw Error("saveToFile is only supported in Node.js/Bun environments")}}export{N0 as triggerEmitter,Y6 as ruleEvents,QO as engineEvents,a7 as TriggerValidator,Q6 as TriggerUtils,r7 as TriggerRuleSchema,Z2 as TriggerEngine,jU as TriggerEmitter,U0 as StateManager,nA as RuleExporter,zX as RuleEvent,bU as RuleEngine,kN as RuleConditionSchema,n7 as RuleBuilder,EU as InMemoryPersistence,e as ExpressionEngine,sQ as EventQueue,G6 as EngineEvent,Z2 as Engine,rQ as ContextAdapter,gN as ConditionSchema,yN as ConditionGroupSchema,u6 as ConditionBuilder,fN as ComparisonOperatorSchema,oQ as BrowserPersistence,bU as AdvancedRuleEngine,vN as ActionSchema,w1 as ActionRegistry,hN as ActionGroupSchema,j8 as ActionBuilder};
185
185
 
186
- //# debugId=1B1342C60EAAB77E64756E2164756E21
186
+ //# debugId=C925F81C1FE8689164756E2164756E21